5. Les axes

Dans les chemins précédents, nous avons utilisé l'axe par défaut, child, qui peut être omis. Si on ne l'omet pas, voici ce que donne /html/body: /child::html/child::body. Nous avons vu aussi l'axe opposé, parent, dans sa forme abrégée: ... Il en existe 13 en tout, que vous retrouvez dans le tableau suivant:

Tableau 1. Les axes

Axe Forme abrégée Explication
self . Noeud courant (. et self::node() sont similaires)
parent .. Noeud parent (.. et parent::node() sont similaires)
ancestor n/a Tout noeud contenant le noeud courant, parent et racine inclus
ancestor-or-self n/a Comme ancestor, mais avec le noeud courant inclus
child   Noeud fils (nom et child::nom sont similaires)
descendant n/a Noeuds fils et tous les noeuds dont le noeud courant est le père
descendant-or-self // Comme descendant, mais avec le noeud courant inclus (//nom et descendant-or-self::nom()/ sont similaires
preceding-sibling n/a Les noeuds frères précédent le noeud courant, ou plus précisément tous les noeuds pécédent le noeud courant qui ont le même noeud parent
preceding n/a Comme preceding-sibling, mais sans les noeuds d'attributs et d'espace de noms
following-sibling n/a Les noeuds frères suivant le noeud courant, ou plus précisément tous les noeuds suivant le noeud courant qui ont le même noeud parent
following n/a Comme following-sibling, mais sans les noeuds d'attributs et d'espace de noms
attribute @ Tous les noeuds d'attributs du noeud courant (@nom et attribute::nom sont similaires)
namespace n/a Tous les espaces de noms du noeud courant

Vous pouvez remarquer ainsi que sur les 13 axes possibles, seuls 5 ont une forme abrégée. Pour les 8 autres, c'est la forme complète qu'il faut prendre! Mais cela n'est pas génant, car à l'image des autres articles, l'utilisation des 8 axes qui n'ont pas de forme abrégée est plus rare.

création est mise à disposition sous un contrat Creative Commons