Structure d'un document XML

Décembre 2016

Qu'est-ce que le XML?

La norme XML en tant que telle doit être vue comme un outil permettant de définir un langage (on dit alors qu'il s'agit d'un métalangage), permettant de créer des documents structurés à l'aide de balises.

Une balise est une chaîne de caractère du type :

<balise>


Ainsi, un document XML, c'est-à-dire le fichier créé en suivant les
spécifications de la norme XML pourra par exemple ressembler à ceci :

<annuaire>
<personne class = "etudiant">
<nom>Pillou</nom>
<prenom>Jean-Francois</prenom>
<telephone>555-123456</telephone>
<email>webmaster@commentcamarche.net</email>
</personne>
<personne>
...
</personne>
</annuaire>


Enfin il est possible d'ajouter des commentaires dans le document XML de la manière suivante :

<!-- Voici des commentaires XML -->

Structure d'un document XML

En réalité un document XML est structuré en 3 parties :
La première partie, appelée prologue permet d'indiquer
la version de la norme XML utilisée pour créer le document (cette indication
est obligatoire) ainsi que le jeu de caractères (en anglais encoding)
utilisé dans le document (attribut facultatif, ici on spécifie qu'il s'agit du
jeu ISO-8859-1, jeu LATIN, pour permettre de prendre en compte les accents français). Ainsi le prologue est une ligne du type

<?xml version="1.0" encoding="ISO-8859-1"?>


Le prologue se poursuit avec des informations facultatives sur des instructions
de traitement à destination d'applications particulières. Leur syntaxe est la suivante :

<?instruction de traitement?>


Le second élément est une déclaration de type de document (à l'aide
d'un fichier annexe appelé DTD - Document Type Definition)

Et enfin la dernière composante d'un fichier XML est l'arbre des éléments
(comme celui ci-dessus).

La syntaxe des éléments en XML

L'arbre des éléments, c'est-à-dire le véritable contenu du document XML, est constitué d'une hiérarchie de balises comportant éventuellement des attributs.

Un attribut est une paire clé valeur écrit sous la forme Cle="Valeur",
ainsi une balise affectée d'un attribut aura la syntaxe suivante :

<balise cle="valeur">


Toute donnée est ainsi encapsulée entre une balise ouvrante <balise> et une balise fermante </balise> (Sachant qu'une donnée peut éventuellement
être un ensemble d'éléments XML). Ainsi un élément vide est uniquement constitué d'une balise spécifique dont la syntaxe est la suivante : <balise/>.

D'autre part, il est interdit en XML de faire chevaucher des balises, c'est-à-dire d'avoir une succession de balises du type :

<balise1>
<balise2>
</balise1>
</balise2>


D'autre part, il est possible entre les balises (donc pas à l'intérieur d'une balise)
d'ajouter :

  • des espaces
  • des tabulations
  • des retours chariots


Cela est très utile pour définir une indentation des balises (ce qui est possible puisqu'elles ne se chevauchent pas).

<annuaire>
<personne class = "etudiant">
<nom>Pillou</nom>
<prenom>Jean-Francois</prenom>
<telephone>555-123456</telephone>
<email>webmaster@commentcamarche.net</email>
</personne>
</annuaire>

A voir également :

Ce document intitulé «  Structure d'un document XML  » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.