Chapitre 4 Syntaxe XML
contour:
1. Règles de syntaxe XML 2. Syntaxe des éléments 3. Syntaxe des commentaires 4. Syntaxe CDATA 5. Syntaxe des espaces de noms 6. Syntaxe des entités 7. Syntaxe DTD
En étudiant les trois chapitres précédents, nous comprenons déjà ce qu'est XML, ses principes de mise en œuvre et la terminologie associée. Ensuite, nous commencerons à apprendre les spécifications syntaxiques de XML et à écrire nos propres documents XML.
1.Règles de syntaxe XML
Les documents XML sont similaires aux codes HTML originaux et utilisent également des balises pour identifier le contenu. Les règles importantes suivantes doivent être respectées lors de la création de documents XML :
Règle 1 : Il doit y avoir une instruction de déclaration XML Nous l'avons déjà mentionné dans le chapitre précédent. La déclaration est la première phrase du document XML et son format est le suivant :
<?xml version="1.0" standalone="yes/no" encoding="UTF-8"?>
Le but de la déclaration est d'indiquer au navigateur ou autre programme de traitement que ce document est un document XML. La version dans l'instruction de déclaration indique la version de la spécification XML à laquelle le document est conforme ; autonome indique si le document est livré avec un fichier DTD, si c'est le cas, le paramètre encoding indique le codage de langue utilisé dans le document, et le paramètre encoding est non ; la valeur par défaut est UTF-8.
Règle 2 : Existe-t-il un fichier DTD ? Si le document est un « document XML valide » (voir chapitre précédent), alors le document doit avoir un fichier DTD correspondant et respecter strictement les spécifications fixées par le fichier DTD. L'instruction de déclaration du fichier DTD suit l'instruction de déclaration XML au format suivant :
<!DOCTYPE type-of-doc SYSTEM/PUBLIC "nom-dtd">
dans:
"!DOCTYPE" signifie que vous souhaitez définir un DOCTYPE ;
"type-of-doc" est le nom du type de document, défini par vous, généralement identique au nom du fichier DTD ;
N'utilisez qu'un des deux paramètres "SYSTEM/PUBLIC". SYSTEM fait référence à l'URL du fichier DTD privé utilisé par le document, tandis que PUBLIC fait référence à l'URL du fichier DTD public utilisé par le document.
"nom-dtd" est l'URL et le nom du fichier DTD. Tous les fichiers DTD portent le suffixe « .dtd ».
Nous utilisons toujours l'exemple ci-dessus, il doit s'écrire ainsi :
<?xml version="1.0" standalone="no" encode="UTF-8"?>
<!DOCTYPE filelist SYSTEM "filelist.dtd">
Règle 3 : Faites attention à vos majuscules Dans les documents XML, il existe une différence entre les majuscules et les minuscules. <P> et <p> sont des identifiants différents. Notez que lors de l'écriture des éléments, la casse des identifiants avant et arrière doit rester la même. Par exemple : <Author>ajie</Author>, il est faux d'écrire <Author>ajie</author>.
Vous feriez mieux de prendre l'habitude d'utiliser soit des majuscules, soit des minuscules, soit de mettre la première lettre en majuscule. Cela réduit les erreurs de documentation causées par des incohérences de cas.
Règle 4 : Ajouter des guillemets aux valeurs d'attribut. Dans le code HTML, les valeurs d'attribut peuvent être citées ou non. Par exemple : <font color=red>word</font> et <font color="red">word</font> peuvent tous deux être interprétés correctement par le navigateur.
Cependant, en XML, il est stipulé que toutes les valeurs d'attribut doivent être entre guillemets (peuvent être des guillemets simples ou des guillemets doubles), sinon cela sera considéré comme une erreur.
Règle 5 : Toutes les balises doivent avoir une balise de fermeture correspondante. En HTML, les balises ne peuvent pas apparaître par paires, comme ?lt;br>. En XML, il est stipulé que toutes les balises doivent apparaître par paires. S'il existe une balise de début, il doit y avoir une balise de fin. Sinon, cela sera considéré comme une erreur.
Règle 6 : Toutes les balises vides doivent également être fermées. Une balise vide est une balise sans contenu entre les paires de balises. Par exemple, <br>, <img> et d'autres balises. En XML, il est stipulé que toutes les balises doivent avoir une balise de fin. Pour de telles balises vides, la méthode de traitement en XML consiste à ajouter / à la fin de la balise d'origine, et c'est tout. Par exemple:
<br> doit être écrit comme <br /> ;
<META name="keywords" content="XML, SGML, HTML"> doit être écrit sous la forme <META name="keywords" content="XML, SGML, HTML" /> ;
<IMG src= "cool.gif"> doit être écrit sous la forme <IMG src= "cool.gif" />
Chapitre 4 Syntaxe XML
2. Syntaxe des éléments
Un élément est constitué d'une paire d'identifiants et de leur contenu. Comme ça : ajie. Le nom de l'élément et le nom de l'identifiant sont identiques. Les identités peuvent être décrites plus en détail à l'aide d'attributs.
En XML, il n'y a pas de mots réservés, vous pouvez donc utiliser n'importe quel mot comme nom d'élément. Toutefois, les réglementations suivantes doivent également être respectées :
1. Le nom peut contenir des lettres, des chiffres et d’autres lettres ;
2. Le nom ne peut pas commencer par un chiffre ou par « _ » (trait de soulignement) ;
3. Le nom ne peut pas commencer par les lettres xml (ou XML ou Xml ..)
4. Le nom ne peut pas contenir d'espaces.
5. Le nom ne peut pas contenir ":" (deux-points)
Pour rendre les éléments plus faciles à lire, à comprendre et à manipuler, nous avons quelques suggestions supplémentaires :
1. N'utilisez pas "." dans le nom. Parce que dans de nombreux langages de programmation, "." est utilisé comme attribut d'un objet, par exemple : font.color. Pour la même raison, il est préférable de ne pas utiliser le "-". S'il doit être utilisé, remplacez-le par "_" ;
2. Gardez le nom aussi court que possible.
3. Essayez d'utiliser la même norme pour la capitalisation et la capitalisation des noms.
4. Le nom peut utiliser des caractères non anglais, tels que le chinois. Mais certains logiciels peuvent ne pas le prendre en charge. (IE5 prend actuellement en charge les éléments chinois.)
De plus, ajoutez une petite explication sur les propriétés. En HTML, les attributs peuvent être utilisés pour définir le format d'affichage des éléments. Par exemple : <font color="red">mot</font> affichera le mot en rouge. En XML, les attributs ne sont que des descriptions d'identifiants et n'ont rien à voir avec l'affichage du contenu des éléments. Par exemple, la même phrase : <font color="red">mot</font> n'affichera pas le mot en rouge. (Ainsi, certains internautes se demanderont : Comment afficher du texte en rouge en XML ? Cela nécessite l'utilisation de CSS ou XSL, que nous décrirons en détail ci-dessous.)
3. Syntaxe des commentaires
Des commentaires sont ajoutés au document XML pour faciliter la lecture et la compréhension, et ne seront pas interprétés par le programme ni affichés par le navigateur.
La syntaxe des commentaires est la suivante :
<!-- Voici les informations du commentaire-->
Comme vous pouvez le voir, c'est la même chose que la syntaxe des commentaires en HTML, qui est très simple. Développer de bonnes habitudes de commentaire rendra vos documents plus faciles à conserver, à partager et à paraître plus professionnels.
4. Syntaxe de CDATA
Le nom complet de CDATA est constitué de données de caractères, qui sont traduites par données de caractères. Lorsque nous écrivons des documents XML, nous devons parfois afficher eux-mêmes des lettres, des chiffres et d'autres symboles, tels que "<". En XML, ces caractères ont déjà des significations particulières. Cela nécessite l'utilisation de la syntaxe CDATA. Le format de syntaxe est le suivant :
<![CDATA[Placez ici les caractères à afficher]]>
Par exemple:
<![CDATA[<AUTHOR sex="female">ajie</AUTHOR>]]>
Le contenu affiché sur la page sera "<AUTHOR sex="female">ajie</AUTHOR>"
Chapitre 4 Syntaxe XML
5. Syntaxe des espaces de noms
Les espaces de noms se traduisent par espace de noms. À quoi sert l'espace de noms ? Lorsque nous utilisons des fichiers DTD d'autres personnes ou plusieurs fichiers DTD dans un document XML, il y aura une telle contradiction : comme les identifiants en XML sont créés par nous-mêmes, dans différents fichiers DTD, les noms d'identifiant peuvent être les mêmes mais avoir des significations différentes. provoquer une confusion dans les données.
Par exemple, dans un document <table>table en bois</table>, <table> représente une table.
Dans un autre document <table>namelist</table>, <table> représente un tableau. Si je dois travailler sur les deux documents en même temps, un conflit de nom se produira.
Pour résoudre ce problème, nous avons introduit le concept d'espaces de noms. Les espaces de noms distinguent ces identifiants portant le même nom en ajoutant une URL au nom de l'identifiant.
Les espaces de noms doivent également être déclarés au début du document XML. La syntaxe de la déclaration est la suivante :
<document xmlns:votrenom='URL'>
Où yourname est le nom des espaces de noms définis par vous et URL est l'URL de l'espace de noms.
En supposant que le document "table <table>" ci-dessus provienne de http://www.zhuozi.com, nous pouvons le déclarer comme
<document xmlns:zhuozi='http://www.zhuozi.com'>
Utilisez ensuite l'espace de noms défini dans les balises suivantes :
<zhuozi:table>table en bois</table>
Cela distingue les deux <table>. Remarque : Définir l'URL ne signifie pas que ce logo doit réellement être lu à partir de cette URL, c'est simplement un signe de distinction.
6. Syntaxe de l'entité
L'entité est traduite par « entité ». Sa fonction est similaire à la « macro » dans Word et peut également être comprise comme un modèle dans DW. Vous pouvez prédéfinir une entité puis l'appeler plusieurs fois dans un document, ou appeler la même entité dans plusieurs documents.
L'entité peut contenir des caractères, du texte, etc. Les avantages de l'utilisation de l'entité sont les suivants : 1. Elle peut réduire les erreurs. Plusieurs parties identiques dans le document ne doivent être saisies qu'une seule fois. 2. Il améliore l’efficacité de la maintenance. Par exemple, si vous avez 40 documents contenant tous des entités de droit d'auteur, si vous devez modifier ce droit d'auteur, vous n'avez pas besoin de modifier tous les fichiers. Il vous suffit de modifier l'instruction d'entité définie à l'origine.
XML définit deux types d'entités. L'une est l'entité ordinaire dont nous parlons ici, utilisée dans les documents XML ; l'autre est l'entité paramètre, utilisée dans les fichiers DTD.
La syntaxe de définition de l'entité est :
<!DOCTYPE nom de fichier [
<!ENTITY nom-entité "contenu-entité"
]
>
Par exemple, je souhaite définir une information de droit d'auteur :
<!DOCTYPE droit d'auteur [
<!ENTITY copyright "Copyright 2001, Ajie. Tous droits réservés"
]
>
Si mon contenu d'informations de droits d'auteur est partagé avec d'autres personnes dans un fichier XML, je peux également utiliser la méthode d'appel externe. La syntaxe est la suivante :
<!DOCTYPE droit d'auteur [
<!ENTITY copyright SYSTEM "http://www.sample.com/copyright.xml">
]
>
La syntaxe de référence de l'entité définie dans le document est : &entity-name;
Par exemple, les informations de copyright définies ci-dessus sont écrites sous la forme ?copyright lorsqu'elles sont appelées.
L'exemple complet est le suivant, vous pouvez le copier et l'enregistrer sous copyright.xml pour afficher l'exemple :
<?xml version="1.0" encoding="GB2312"?>
<!DOCTYPE droit d'auteur [
<!ENTITY copyright "Copyright 2001, Ajie. Tous droits réservés">
]>
<monfichier>
<titre>XML</titre>
<auteur>ajie</auteur>
<email>[email protected]</email>
<date>20010115</date>
©droit ;
</monfichier>
Chapitre 4 Syntaxe XML
7. Syntaxe DTD
La DTD est un fichier nécessaire pour "un document XML valide". Nous utilisons les fichiers DTD pour définir les règles et les relations mutuelles des éléments et des identifiants dans le document. Comment créer un fichier DTD ? Apprenons ensemble :
1. Définir les éléments
Les éléments sont les éléments de base des documents XML. Vous devez définir un élément dans la DTD puis l'utiliser dans le document XML. La syntaxe de définition d'un élément est : <!ELEMENT DESCRIPTION (#PCDATA, DEFINITION)*>
illustrer:
"<!ELEMENT" est une déclaration d'un élément, indiquant que ce que vous souhaitez définir est un élément ;
« DESCRIPTION » après l'instruction est le nom de l'élément ;
"(#PCDATA, DEFINITION)*>" est la règle d'utilisation de cet élément. Les règles définissent ce que les éléments peuvent contenir et comment ils sont liés les uns aux autres. Le tableau suivant présente les règles pour les éléments :
2. Tableau des règles des éléments :