Maison  >  Article  >  développement back-end  >  Déclaration de type de document XML

Déclaration de type de document XML

PHPz
PHPzoriginal
2017-04-02 11:52:092177parcourir

Étant donné que XML peut être personnalisé avec des balises, l'ensemble des balises définies par chaque personne sera différent. S'il n'existe pas d'ensemble de normes pour stipuler les principes de définition des balises, l'application ne peut pas traiter les documents XML. . La solution à ce problème est d'utiliser la DTD, DTD (Document Type Definition, définition de type de document), qui sert à définir les règles d'écriture des documents XML. Par exemple, quels éléments peuvent apparaître dans le document, ainsi que les exigences en matière de contenu et d'attributs des éléments, etc. L'application utilisera cette DTD pour vérifier le document. Le document XML conforme aux règles de contrainte DTD est appelé document valide et peut être traité à l'étape suivante. Sinon, l'application peut capturer l'erreur et. effectuer la gestion des exceptions correspondante. Le processus de vérification est facultatif et dépend de l'application spécifique.

Déclaration de type de document
Pour utiliser une DTD pour vérifier la validité, vous devez utiliser une déclaration de définition de type de document pour spécifier la DTD. Par exemple :

<?xml version="1.0" standalone="no"?>
<!DOCTYPE portal SYSTEM >
<portal> 
<name>Jims</name> 
<email>Jims@163.com</email> 
<email>Jims@21cn.com</email>
</portal>

La déclaration du type de document se situe après la déclaration XML et avant l'élément racine. Si le fichier dtd se trouve sur la machine locale, le nom du chemin peut être utilisé pour indiquer directement l'emplacement du fichier dtd. Le contenu de portal.dtd est le suivant :

<!ELEMENT portal (name,email*)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT email (#PCDATA)>

Le contenu ci-dessus peut également être écrit directement dans le document XML. Cette méthode de déclaration dtd est appelée dtd interne. sous-ensemble, tel que :

<?xml version="1.0" standalone="no"?>
<!DOCTYPE portal [<!ELEMENT portal (name,email*)><!ELEMENT name (#PCDATA)><!ELEMENT email (#PCDATA)>]>
<portal> 
<name>Jims</name> 
<email>Jims@163.com</email> 
<email>Jims@21cn.com</email>
</portal>

Si le dtd est situé en dehors du document XML, il est appelé sous-ensemble dtd externe. Nous pouvons combiner des DTD internes et externes pour former une DTD permettant de vérifier les documents XML. Par exemple :

<!DOCTYPE portal SYSTEM "external.dtd" [<!ELEMENT portal (name,email*)><!ELEMENT name (#PCDATA)><!ELEMENT email (#PCDATA)>]>

Notez que lors de l'utilisation de dtd internes et externes, les deux dtd doivent être compatibles entre elles et ne peuvent pas entrer en conflit.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn