Cet article explique comment écrire correctement XML en montrant un exemple. Le bulletin d'information Web Writer est rédigé à l'aide d'une forme XML; nous l'appelons AML ou About Markup Language. Bien qu'il s'agisse d'un document de travail, ce n'est pas un document XML bien formé ou valide.
Bien formé
Il existe des règles spécifiques pour créer un document XML bien formé:
- La déclaration XML doit figurer en premier dans chaque document.
- Les commentaires ne sont pas valides dans une balise. Les commentaires ne doivent pas contenir deux tirets à la suite, autres que le début et la fin du commentaire.
- Les balises doivent avoir une balise de fin ou être fermées dans la balise singleton elle-même, par exemple.
- Tous les attributs des balises doivent être entre guillemets, de préférence des guillemets doubles, sauf si l'attribut lui-même contient un guillemet double.
- Chaque document XML doit contenir un élément qui contient complètement tous les autres éléments.
Il n'y a que deux problèmes avec le document qui le rendent mal formé:
- La première chose dont le document AML a besoin est une déclaration de déclaration XML.
- L'autre problème est qu'aucun élément n'enferme complètement tous les autres éléments. Pour résoudre ce problème, nous allons ajouter un élément conteneur externe :
Faire ces deux changements simples (et s'assurer que tous les éléments ne contiennent que des CDATA) transformera le document mal formé en un document bien formé.
Un document XML valide est validé par rapport à une définition de type de document (DTD) ou à un schéma XML. Il s'agit d'un ensemble de règles créées par le développeur ou une organisation de normalisation qui définissent la sémantique du document XML. Ceux-ci indiquent à l'ordinateur quoi faire avec le balisage.
Dans le cas de l'A propos Langage de balisage, puisqu'il ne s'agit pas d'un langage XML standard, comme XHTML ou SMIL, la DTD serait créée par le développeur. Cette DTD serait très probablement sur le même serveur que le document XML et référencée en haut du document.
Avant de commencer à développer une DTD ou un schéma pour vos documents, vous devez réaliser que, simplement parce qu'il est bien formé, un document XML est autodescriptif et n'a donc pas besoin de DTD.
Par exemple, avec notre document AML bien formé, il y a les balises suivantes:
Si vous connaissez la newsletter Web Writer, vous reconnaîtrez peut-être les différentes sections de la newsletter. Cela rend très facile la création de nouveaux documents XML en utilisant le même format standard. Nous mettrons toujours le titre complet dans la balise et l'URL de la première section dans la balise.
DTD
Si vous devez rédiger un document XML valide, que ce soit pour utiliser les données ou pour les traiter, vous l'incluriez dans votre document avec la balise. Dans cette balise, vous définissez la balise XML de base dans le document et l'emplacement de la DTD (généralement un URI Web).
Par example:
Une bonne chose à propos des déclarations DTD est que vous pouvez déclarer qu'un DTD est local au système où le Le document XML est avec le "SYSTEM". Vous pouvez également pointer vers une DTD publique, comme un document HTML 4.0:
Lorsque vous utilisez les deux, vous indiquez au document d'utiliser une DTD spécifique (l'identifiant public) et où le trouver (l'identifiant système).
Enfin, vous pouvez inclure une DTD interne directement dans le document, au sein de la balise DOCTYPE. Par exemple (ce n'est pas une DTD complète pour le document AML):
Schéma XML
Pour créer un document XML valide, vous pouvez également utiliser un document XML Schema pour définir votre XML. XML Schema est un document XML qui décrit des documents XML. Apprenez à écrire un schéma.
Noter
Il ne suffit pas de pointer vers une DTD ou un schéma XML. Le XML qui se trouve dans le document doit suivre les règles de la DTD ou du schéma. L'utilisation d'un analyseur de validation est un moyen simple de vérifier que votre XML respecte les règles DTD. Vous pouvez trouver de nombreux analyseurs de ce type en ligne.