XPath

De Linuxmemo.

Version du 8 avril 2013 à 09:43 par Linuxmemo (discuter | contributions)
(diff) ← Version précédente | Voir la version courante (diff) | Version suivante → (diff)

XPath est un langage pour adresser des parties de documents XML, conçu pour être utilisé à la fois par XSLT et XPointer.

refs: http://xmlfr.org/w3c/TR/xpath/

Chemins de localisation

child::para sélectionne l'élément para enfant du noeud contextuel
child::* sélectionne tous les éléments enfant du noeud contextuel
child::text() sélectionne tous les noeuds textuels du noeud contextuel
child::node() sélectionne tous les enfants du noeud contextuel, quelque soit leur type
attribute::name sélectionne l'attribut name du noeud contextuel
attribute::* sélectionne tous les attributs du noeud contextuel
descendant::para sélectionne tous les descendants para du noeud contextuel
ancestor::div sélectionne tous les ancêtres div du noeud contextuel
ancestor-or-self::div sélectionne tous les ancêtres div du noeud contextuel et le noeud contextuel lui-même si c'est un div
descendant-or-self::para sélectionne tous les descendants para du noeud contextuel et le noeud contextuel lui-même si c'est un para
self::para sélectionne le noeud contextuel si c'est un élément para, et rien dans le cas contraire
child::chapter/descendant::para sélectionne les descendants para de l'element chapitre enfant du noeud contextuel
child::*/child::para sélectionne tous les petits enfants para du noeud contextuel
/ sélectionne la racine du document (qui est toujours le parent de l'élément document)
/descendant::para sélectionne tous les éléments para descendants du document contenant le noeud contextuel
/descendant::olist/child::item sélectionne tous les éléments item qui ont un parent olist et qui sont dans le même document que le noeud contextuel
child::para[position()=1] sélectionne le premier enfant para du noeud contextuel
child::para[position()=last()] sélectionne le dernier enfant para du noeud contextuel
child::para[position()=last()-1] sélectionne l'avant dernier para enfant du noeud contextuel
child::para[position()>1] sélectionne tous les enfants para du noeud contextuel autres que le premier
following-sibling::chapter[position()=1] sélectionne le prochain chapter cible du noeud contextuel
preceding-sibling::chapter[position()=1] sélectionne le précédent chapter cible du noeud contextuel
/descendant::figure[position()=42] sélectionne le 42ième élément figure du document
/child::doc/child::chapter[position()=5]/child::section[position()=2] sélectionne la 2ième section du 5ième élément chapter de l'élément doc du document
child::para[attribute::type="warning"] sélectionne tous les enfants para du noeud contextuel qui ont un attribut type dont la valeur est warning
child::para[attribute::type='warning'][position()=5] sélectionne le 5ième enfant para du noeud contextuel qui a un attribut type dont la valeur est warning
child::para[position()=5][attribute::type="warning"] sélectionne le 5ième enfant para du noeud contextuel si celui-là a un attribut type de valeur warning
child::chapter[child::title='Introduction'] sélectionne l'enfant chapter du noeud contextuel qui a un ou plus enfant title avec un contenu textuel égal à 'Introduction'
child::chapter[child::title] sélectionne l'enfant chapter du noeud contextuel qui a un ou plus enfant title
child::*[self::chapter or self::appendix] sélectionne tous les enfants chapter et appendix du noeud contextuel
child::*[self::chapter or self::appendix][position()=last()] sélectionne le dernier enfant chapter ou appendix du noeud contextuel
Outils personnels