Maison  >  Article  >  développement back-end  >  Une introduction détaillée au traitement XML des espaces dans le code

Une introduction détaillée au traitement XML des espaces dans le code

黄舟
黄舟original
2017-03-10 19:40:332066parcourir

Cet article présente principalement le traitement des espaces par XML dans le code. L'article introduit la distinction entre les espaces valides et les espaces non valides dans l'écriture XML.Les amis dans le besoin peuvent s'y référer

1. comprend des espaces, des tabulations et des lignes vides. Lors de l'édition de documents XML, nous utilisons souvent des espaces pour séparer les balises afin d'obtenir une meilleure lisibilité. Cependant, dans les documents vierges interactifs, ces espaces ne sont pas nécessaires, mais ils doivent parfois être conservés. Par exemple, des espaces dans la poésie et le code de programme,
2. Le processeur XML transmet toujours tous les caractères du document qui ne sont pas des balises à l'application. Un processeur XML qui effectue la validation informera l'application que l'un de ces caractères est lequel. les éléments constituent l'espace qui apparaît dans le contenu de l'élément.
3. Dans les documents XML, vous pouvez utiliser un attribut spécial xml:space dans un élément pour indiquer à l'application de conserver l'espace vide dans cet élément.
4. Dans un document valide, cet attribut, comme tout autre attribut, doit être déclaré lors de son utilisation. Xml : l'attribut space doit être déclaré comme type Enumerated et sa valeur doit être l'une des valeurs "default" et "preserve", ou les deux.
Par exemple :

<!ATTLIST poem xml:space (default preserve)’preserve’>

signifie déclarer l'attribut xml:space sur l'élément poème Son type est un type énumération et peut prendre les valeurs "default" et "preserve". ". Et la valeur par défaut de cet attribut est verify'

<!ATTLIST pre xml:space (preserve)#FIXED ‘preserve’>

, ce qui signifie que l'attribut xml:space est déclaré sur l'élément pre. Le type est aussi un type énumération, mais il n'a qu'une seule valeur "preserve" », et cet attribut est déclaré par défaut à l'aide du mot-clé FIXED. Déclarer qu'il a une valeur par défaut implicite de "default" indique d'utiliser le mode de gestion des espaces par défaut de l'application pour cet élément, et "preserve" demande à l'application de conserver tous les espaces.
5. Si un élément utilise l'attribut xml:space, il s'appliquera à tous les éléments du contenu de l'élément à moins qu'il ne soit remplacé par une autre instance de l'attribut xml:space.

Les documents XML contiennent deux types d'espaces (a) des espaces valides et (b) des espaces non valides. Les exemples suivants expliquent ces deux types d'espaces.

Espaces valides
Des espaces valides se produisent généralement lorsqu'un élément contient à la fois du texte et du balisage. Par exemple :

<name>TanmayPatil</name>

et

<name>Tanmay Patil</name>

Les deux éléments ci-dessus sont différents car l'espace blanc entre Tanmay et Patil est différent. Tout programme qui lit de tels éléments dans un fichier XML doit conserver leur distinction.

Espaces non valides
Les espaces non valides signifient qu'ils ne sont autorisés que dans le contenu de l'élément. Par exemple :

<address.categoryaddress.category="residence">

ou

<address....categoryaddress....category="..residence">

Les deux exemples ci-dessus sont identiques. Ici, nous utilisons un point (.) pour indiquer un espace blanc. Dans l'exemple ci-dessus, l'espace entre l'adresse et la catégorie n'est pas valide.

Nous attachons également un attribut spécial xml:space à l'élément. Cela signifie que les espaces de l'élément ne doivent pas être supprimés par l'application. Nous pouvons définir cet attribut par défaut ou le conserver. Comme le montre l'exemple suivant :

<!ATTLIST address xml:space (default|preserve) &#39;preserve&#39;>

Ici :

La valeur par défaut indique que cet élément peut accepter le mode de gestion des espaces par défaut de l'application.
La valeur préservée signifie que l'application protégera tous les espaces.

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