Nœuds XPath
Terminologie XPath
Nœuds
Dans XPath, il existe sept types de nœuds : nœuds d'élément, d'attribut, de texte, d'espace de noms, d'instruction de traitement, de commentaire et de document.
Les documents XML sont traités comme des arbres de nœuds. L'élément le plus haut de l'arbre est appelé l'élément racine.
Regardez le document XML suivant :
<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
<book>
<title lang="en">Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>
Exemple de nœuds dans le document XML ci-dessus :
<bookstore> (root element node)
<author>J K. Rowling</author> (element node)
lang="en" (attribute node)
Valeurs atomiques
Les valeurs atomiques sont des nœuds sans enfant ni parent.
Exemple de valeurs atomiques :
J K. Rowling
"en"
Articles
Les éléments sont des valeurs atomiques ou des nœuds.
Relation des nœuds
Parent
Chaque élément et attribut a un parent.
Dans l'exemple suivant; l'élément livre est le parent du titre, de l'auteur, de l'année et du prix :
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
Enfants
Les nœuds d'élément peuvent avoir zéro, un ou plusieurs enfants.
Dans l'exemple suivant; les éléments titre, auteur, année et prix sont tous des enfants de l'élément livre :
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
Frères et sœurs
Nœuds qui ont le même parent.
Dans l'exemple suivant; les éléments titre, auteur, année et prix sont tous frères :
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
Les ancêtres
Le parent d'un nœud, le parent du parent, etc.
Dans l'exemple suivant; les ancêtres de l'élément title sont l'élément book et l'élément bookstore :
<bookstore>
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>
Descendance
Les enfants d'un nœud, les enfants des enfants, etc.
Dans l'exemple suivant; les descendants de l'élément librairie sont les éléments livre, titre, auteur, année et prix :
<bookstore>
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>