Axes XPath (axes)
- Page précédente Syntaxe XPath
- Page suivante Opérateurs XPath
Document d'instance XML
Nous allons utiliser ce document XML dans les exemples suivants :
<?xml version="1.0" encoding="ISO-8859-1"?> <bookstore> <book> <title lang="eng">Harry Potter</title> <price>29.99</price> </book> <book> <title lang="eng">Learning XML</title> <price>39.95</price> </book> </bookstore>
Axe XPath
L'axe peut définir un ensemble de noeuds par rapport au noeud courant.
Nom de l'axe | Résultat |
---|---|
ancestor | Sélectionner tous les ancêtres du noeud courant (parent, grand-père, etc.). |
ancestor-or-self | Sélectionner tous les ancêtres du noeud courant (parent, grand-père, etc.) ainsi que le noeud courant lui-même. |
attribute | Sélectionnez toutes les propriétés du nœud courant. |
child | Sélectionnez tous les éléments enfants du nœud courant. |
descendant | Sélectionner tous les éléments descendants du noeud courant (fils, petits-enfants, etc.). |
descendant-or-self | Sélectionner tous les éléments descendants du noeud courant (fils, petits-enfants, etc.) ainsi que le noeud courant lui-même. |
following | Sélectionner tous les noeuds après la balise de fin du noeud courant dans le document. |
namespace | Sélectionner tous les noeuds de l'espace de noms du noeud courant. |
parent | Sélectionner le noeud parent du noeud courant. |
preceding | Sélectionner tous les noeuds avant la balise de début du noeud courant dans le document. |
preceding-sibling | Sélectionner tous les noeuds de même niveau avant le noeud courant. |
self | Sélectionner le noeud courant. |
Expression du chemin d'emplacement
Le chemin d'emplacement peut être absolu ou relatif.
L'chemin absolu commence par une barre oblique (/), tandis que le chemin relatif ne le fait pas. Dans les deux cas, le chemin d'emplacement comprend un ou plusieurs étapes, chaque étape étant séparée par une barre oblique :
Chemin de position absolu :
/step/step/...
Chemin de position relatif :
step/step/...
Chaque étape est calculée en fonction des nœuds du jeu de nœuds courant.
Étape (step) inclut :
- Axe (axis)
- Définir la relation d'arbre entre le nœud sélectionné et le nœud courant
- Test de nœud (node-test)
- Identifier les nœuds à l'intérieur d'un axe
- Zéro ou plusieurs prédicats (predicate)
- Affiner davantage le jeu de nœuds sélectionnés
Syntaxe des étapes :
Nom d'axe::test de nœud [prédicat]
Instance
Exemple | Résultat |
---|---|
child::book | Sélectionnez tous les nœuds book appartenant à tous les éléments enfants du nœud courant. |
attribute::lang | Sélectionnez la propriété lang du nœud courant. |
child::* | Sélectionnez tous les éléments enfants du nœud courant. |
attribute::* | Sélectionnez toutes les propriétés du nœud courant. |
child::text() | Sélectionnez tous les nœuds enfants textuels du nœud courant. |
child::node() | Sélectionnez tous les nœuds enfants du nœud courant. |
descendant::book | Sélectionnez tous les descendants book du nœud courant. |
ancestor::book | Sélectionnez tous les ancêtres book du nœud courant. |
ancestor-or-self::book | Sélectionnez tous les ancêtres book du nœud courant ainsi que le nœud courant (si ce nœud est un nœud book) |
child::*/child::price | Sélectionnez tous les descendants price du nœud courant. |
- Page précédente Syntaxe XPath
- Page suivante Opérateurs XPath