xpath                
            Ścieżki i osie lokalizacji
        
        
            
    Szukaj…
Uwagi
 Ścieżka lokalizacji XPath to seria kroków lokalizacji oddzielonych znakiem / : 
step1/step2/step3
  Krok lokalizacji zawiera oś , test węzła i opcjonalną listę predykatów . Test osi i węzła są oddzielone dwoma znakami dwukropka :: Predykaty są ujęte w nawiasy kwadratowe: 
axis::nodeTest[predicate1][predicate2]
  Ocena ścieżki lokalizacji rozpoczyna się od zestawu węzłów zawierającego węzeł kontekstu podany przez kontekst wyrażenia lub węzeł główny , jeśli ścieżka lokalizacji zaczyna się od znaku / . Na każdym etapie każdy węzeł N w oryginalnym zestawie węzłów jest zastępowany zestawem węzłów, które 
- można dotrzeć z N wzdłuż danej osi ,
 - dopasowuje test węzła i
 - pasuje do wszystkich predykatów .
 
Wynikiem wyrażenia ścieżki lokalizacji jest końcowy zestaw węzłów uzyskany po przetworzeniu wszystkich kroków lokalizacji .
Przemieszczanie elementów potomnych
 Przechodzenie z węzła głównego do elementu child za pomocą osi potomnej: 
/child::html/child::body/child::div/child::span
  Ponieważ oś child jest osią domyślną, można ją skrócić do: 
/html/body/div/span
        Przemierzam wszystkich potomków
 Osie descendant i osie descendant-or-self mogą być używane do znajdowania wszystkich elementów potomnych węzła na dowolnej głębokości. Natomiast oś child przecina tylko bezpośrednie dzieci. 
/child::html/descendant::span
/child::html/descendant-or-self::*
  Podwójny ukośnik // jest skrótem do /descendant-or-self::node()/ . Zatem następujące wyrażenia są równoważne: 
table//td
child::table/descendant-or-self::node()/child::td
child::table/descendant::td
table/descendant::td
        Przemierzający przodkowie
 Oś parent zawiera tylko element nadrzędny węzła. Poniższe wyrażenie wybiera element html objeżdżając element body : 
/child::html/child::body/parent::html
  .. to skrót do parent::node() 
 Osie ancestor i osie przodek ancestor-or-self przemierzają wszystkich przodków węzła. Poniższe wyrażenie zwraca wszystkie elementy div , które są przodkami węzła kontekstu: 
ancestor::div
        Oś „ja”
 Oś self zawiera tylko sam węzeł kontekstowy. Wyrażenie . jest skrótem do self::node() i zawsze pasuje do węzła kontekstu. The . Skrót jest przydatny do wyliczania potomków węzła kontekstu. Następujące wyrażenia są równoważne: 
.//span
self::node()/descendant-or-self::node()/child::span
descendant::span
  Oś self może być pomocna w predykatach XPath 1.0. Na przykład, aby wybrać wszystkie potomne h1 , h2 i h3 węzła kontekstu: 
*[self::h1 or self::h2 or self::h3]
        Przechodzenie przez następujące i poprzednie węzły
 Osie following-sibling i preceding-sibling zawierają rodzeństwo przed lub za węzłem kontekstu, a following i preceding osie zawierają wszystkie węzły w dokumencie przed lub za węzłem kontekstu, ale: 
- Żadna z tych osi nie zawiera węzłów atrybutów ani przestrzeni nazw.
 -  
followingoś nie zawiera potomków. -  
precedingoś nie zawiera żadnych przodków. 
Przykłady:
following::span[1]
following-sibling::*[last()]
        Przechodzenie przez atrybuty i węzły przestrzeni nazw
 Osie attribute i namespace zawierają wszystkie węzły atrybutu i przestrzeni nazw elementu. Skrót @ oznacza attribute:: , więc następujące są równoważne: 
child::div/attribute::class
div/@class