Un document XML possède sept types de noeuds différents.
Ces noeuds permettent de naviguer dans l'arborescence d'un document et surtout de sélectionner des éléments, attributs, ou tout autre constituant.
Suite à la sélection de ces derniers, des valeurs, en l'occurrence toujours des chaînes de caractères, peuvent être extraites de ces noeuds.
| Type de noeuds | Description |
|---|---|
| Racine | représente la valeur de l'instruction de traitement <xml-stylesheet> et l'élément racine. |
| Elément | représente la valeur de la concaténation de toutes les données caractères analysables trouvées dans l'élément lui-même et tous ces descendants. |
| Texte | représente le texte contenu dans le noeud courant. |
| Attribut | représente la valeur de l'attribut du noeud courant. |
| Espace de noms | représente l'URI (Uniform Resource Identifier) désignant l'espace de noms. |
| Instruction de traitement | représente la valeur des attributs contenue dans l'instruction. |
| Commentaire | représente le texte contenu dans le commentaire. |
La déclaration XML <?xml version...> ainsi que la Définition de Type de Document ne sont pas traitées par le processeur XSL, ainsi elles ne font pas parties de l'arborescence d'un document XML.
Exemple :<xml version="1.0"> <!-- Déclaration ignorée -->
<!-- Déclaration également ignorée -->
<!DOCTYPE element_racine SYSTEM "definition.dtd">
<!-- Le noeud racine comprend les deux premiers noeuds -->
<!-- Noeud instruction de traitement -->
<xml-stylesheet type="text/xsl" href="style.xsl">
<!-- Premier noeud élément -->
<element_racine>
<!-- Second noeud élément -->
<!-- L'élément contient un noeud attribut -->
<element_fils attribut="valeur">
<!-- Troisième noeud élément -->
<!-- L'élément contient un noeud espace de noms
ainsi qu'un noeud attribut -->
<prefixe:element_petit_fils
xmlns:prefixe="http://www.site.com/namespace/1.0"
prefixe:attribut="valeur>
Ce texte contenu dans le troisième noeud élément
est considéré comme un noeud textuel.
<!-- Fin du troisième noeud élément -->
</prefixe:element_petit_fils>
<!-- Fin du second noeud élément -->
</element_fils>
<!-- Fin du premier noeud élément -->
</element_racine> |