Příklady XPath výrazů

katalog

Vybere všechny elementy katalog, které jsou dětmi aktuálního uzlu.

./katalog

Vybere všechny elementy katalog, které jsou dětmi aktuálního uzlu.

/katalog

Vybere všechny elementy katalog, které jsou dětmi kořenového uzlu. Takový element může být v dokumentu maximálně jeden a je to kořenový element.

*

Vybere všechny elementy, které jsou dětmi aktuálního uzlu.

katalog/*

Vybere všechny elementy, které jsou dětmi elementu katalog, který je dítětem aktuálního uzlu.

text()

Vybere všechny textové uzly, které jsou dětmi aktuálního uzlu.

//text()

Vybere všechny textové uzly v celém dokumentu.

@href

Vybere atribut href aktuálního uzlu.

foto/@href

Vybere atribut href elementu foto, který je dítětem aktuálního uzlu.

@*

Vybere všechny atributy aktuálního uzlu.

//*[@*]

Vybere všechny elementy dokumentu, které mají alespoň jeden atribut.

polozka[1]

Vybere první element polozka, který je dítětem aktuálního uzlu.

/katalog/polozka[1]

Vybere první element polozka, který je dítětem elementu katalog, který je kořenovým elementem dokumentu.

polozka[last()]

Vybere poslední element polozka, který je dítětem aktuálního uzlu.

*/nazev

Vybere všechny elementy nazev, které jsou vnoučaty (dětmi dětí) aktuálního uzlu.

katalog//cena

Vybere všechny elementy cena, které jsou potomky elementu katalog, který je dítětem aktuálního uzlu.

//cena

Vybere všechny elementy cena, které jsou potomky kořenového uzlu. To v praxi znamená, že jsou vybrány všechny elementy cena, které se nacházejí ve stejném dokumentu jako aktuální uzel.

.

Vybere aktuální uzel.

.//b

Vybere všechny elementy b, které jsou potomky aktuálního uzlu.

..

Vybere rodiče aktuálního uzlu.

//polozka[cena > 10000]/popis

Vybere všechny elementy popis, které jsou dětmi elementu polozka, v případě, že jeho podelement cena je větší než 10000.

Lidsky řečeno vybere popis všech položek faktury, které jsou dražší než 10000.

/katalog/polozka[kategorie='MiniDisc']

Vybere element polozka, který je dítětem kořenového elementu katalog, pokud obsahuje jako dítě element kategorie s textem MiniDisc.

self::polozka

Vybere aktuální uzel, pokud je to element se jménem polozka.

preceding::*[1]

Vybere poslední element, který se nachází před aktuálním uzlem.

preceding-sibling::*[1]

Vybere poslední element, který se nachází před aktuálním uzlem a je na stejné úrovni (je to sourozenec).

following::*[1]

Vybere první element, který se nachází za aktuálním uzlem.