Article publié le mardi 16 mars 2004 par ALL HTML.
Cet article est classé dans les catégories « XML »
Structure XML
La mise en place d'une structure XML, sur un ensemble de données, suit quelques règles (déterminées et standardisées par le W3). Vous pouvez trouver la documentation de la spécification officielle du XML à l'intérieur de la rubrique documentation sur ALL HTML.
Face aux réticences que certains peuvent ressentir devant les White Paper du consortium W3 (!), vous trouverez ci-dessous les principales règles de construction d'un fichier XML.
Les informations doivent être :
- Soit encadrées par des balises ouvrantes(ex. <texte>) et fermantes (ex. </texte>). Cette structure est définie sous le nom d'élément
- Soit incluses à l'intérieur des balises : <texte type= "gras"> : ici "type" est un attribut, qui a pour valeur Gras
- Soit définies sous forme d'entités. Les entités sont des constantes, des variables de stockages. Ainsi, si "texte" est déclaré comme une entité associée à la variable "txt", dans tout le document XML, l'usage de la notation &txt équivaut à utiliser la chaîne de caractères "texte". Mais une entité peut représenter également un fichier XML en entier. Ainsi, un fichier XML peut contenir des fichiers XML externes
Un ensemble assez restreint d'entités est défini par XML : ces entités sont une réponse aux ambiguïtés qui pourraient apparaître lors du traitement d'un élément, dont le texte serait par exemple :
<a href="">.Nous aurions alors <balise><a href=""></balise> ce qui porte à confusion lors du traitement du document XML qui ne peut déterminer si <texte> est un élément non fermé ou le texte d'un élément.
<br><br><table border="1" bordercolor="#330033" cellpadding="3" cellspacing="1" width="489"><tbody><tr><td><span class="texte"><b>&lt;</b></span></td><td><span class="texte"><b> ----> </b></span></td><td><span class="texte"><b><</b></span></td> </tr><tr><td><span class="texte"><b>&gt;</b></span></td><td><span class="texte"><b> ----> </b></span></td><td><span class="texte"><b>></b></span></td> </tr><tr><td><span class="texte"><b>&amp;</b></span></td><td><span class="texte"><b> ----> </b></span></td><td><span class="texte"><b>&</b></span></td></tr><tr><td><span class="texte"><b>&quot;</b></span></td><td><span class="texte"><b> ----> </b></span></td><td><span class="texte"><b>"</b></span></td></tr><tr><td><span class="texte"><b>&apos;</b></span></td><td><span class="texte"><b> ----> </b></span></td><td><span class="texte"><b>'</b></span></td></tr></tbody></table><br><b>
Note : les éléments vides sont permis, <texte></texte> est équivalent à <texte/>.
Les éléments (définis précédemment) doivent suivre des règles déjà connues par les utilisateurs de Well-formed HTML (HTML bien formé) :
- Les balises ne doivent pas se recouvrir : le XML impose une hiérarchie stricte
- Les valeurs des entités ou des attributs doivent toujours être encadrées par des guillemets (simples " ' " ou doubles " " ")
Un document XML peut être associé à une DTD (Définition de Type de Document). La structure du document XML (intitulé des balises, imbrications des balises, …) peut être déclarée formellement dans le corps du document XML ou dans un fichier à part. Cette déclaration s'appelle une Définition de Type de Document (DTD). Elle s'effectue selon un formalisme particulier, défini lui aussi dans la spécification XML.Cette déclaration est facultative
Lorsqu'un document XML possède une DTD associée et la respecte, on dit qu'il est valide. Lorsqu'il respecte seulement les règles de la grammaire XML (balises fermées, correctement imbriquées…), on dit qu'il est bien formé.
Note : un document XML admet une racine unique. La structure ci-dessous n'est pas acceptée :
<couleur type= "teinte">rouge</couleurl>
<couleur type= "teinte">verte</couleurl>
<couleur type= "teinte">bleue</couleurl>
<couleur type= "teinte">noire</couleurl>
Il faut définir une racine unique comme ci-dessous :
<root sujet="palette">
<couleur type= "teinte">rouge</couleurl>
<couleur type= "teinte">verte</couleurl>
<couleur type= "teinte">bleue</couleurl>
<couleur type= "teinte">noire</couleurl>
</root>
Note : Il va de soi que la représentation, à travers une structure XML d'un ensemble de données, n'est pas unique : c'est aux utilisateurs de choisir celle qui leur convient le mieux (les deux exemples ci-dessous sont identiques).
Quelques exemples
Exemple 1 :
<site sujet="Portail dédié aux Webmasters">
<titre nom="ALL HTML">
<url>www.allhtml.com</url>
</titre>
<titre nom="W3C">
<url>www.w3.org</url>
</titre>
</site>
Exemple 2 :
<site>Guide HTML
<titre url="www.allhtml.com">ALL HTML</titre>
<titre url="www.w3.org">W3C</titre>
</site>
Commenter cette publication
-
Commentaire publié le lundi 26 juin 2006 à 14 h 04 par m3dt3c
-
C'est tres interessant mais comment faire pour comprendre si il y a des erreurs de construction ;) si vous ne respecter pas se que vous donner comme indication sa risque d'etre dur dur par la suite, merci pour votre publication sa m'aide et devellope mon sens de l'annalise car je doit chercher pourquoi sa ne passe pas .
-
Commentaire publié le lundi 26 juin 2006 à 14 h 09 par m3dt3c
-
Je n'ai pas dit ou etais le probleme les balises "couleur" ne correspondent pas au balises "couleur1" sela cause une erreur d'interpretation
Commenter cette publication
Vous devez obligatoirement vous identifier en tant que membre pour participer à cette discussion.