Najlepsze pytania
Chronologia
Czat
Perspektywa

XPath

język programowania Z Wikipedii, wolnej encyklopedii

Remove ads

XPath (ang. XML Path Language, w wolnym tłumaczeniu Język ścieżek XML, Język ścieżek rozszerzalnego języka znaczników) – język służący do adresowania części dokumentu XML.

XPath został oryginalnie zaprojektowany dla XSLT i XPointer, ale znajduje zastosowanie także w DOM oraz językach bazujących na XML, np. XQuery, XUL.

Budowa wyrażeń

Do wskazania w XPath węzła lub zbioru węzłów używa się ścieżki lokalizacji. Ścieżka ta z kolei składa się z jednego lub więcej kroków lokalizacji oddzielanych od siebie znakami / lub //. Jeśli ścieżka zaczyna się od „/”, nazywamy ją ścieżką bezwzględną, gdyż całą ścieżkę podaje się względem węzła głównego. W przeciwnym wypadku ścieżkę nazywamy względną, zaczyna się ona od bieżącego węzła nazywanego węzłem kontekstowym.

Krok lokalizacji składa się z osi, badania węzła oraz zera lub więcej predykatów. Jeśli np. wyrażenie ma postać

child::n:Kontakt[position()=2]

nazwą osi jest child, badanie węzła to wyrażenie:

n:Kontakt

natomiast zapis:

[position()=2]

to predykat. Ścieżki lokalizacji składać się mogą z jednego lub więcej kroków lokalizacji, np.

/descendant::n:Adresy/child::n:Adres

wybiera elementy n:Adres mające rodzica n:Adresy.

Remove ads

Osie XPath

Podsumowanie
Perspektywa

to kolekcja węzłów lub atrybutów o określonym pokrewieństwie wobec węzła kontekstowego.

Więcej informacji Oś, Znaczenie ...
Remove ads

Badanie węzłów w XPath

Jako testów węzłów można użyć nazw węzłów, można też uzyć znaku „*” do wybrania wszystkich elementów. Np. wyrażenie:

child::*/child::n:Email

powoduje wybranie elementów n:Email będących „wnukami” węzła kontekstu. Można też użyć innych testów:

Więcej informacji Test węzła, Znaczenie ...

Predykaty XPath

Predykaty zawierają wyrażenia XPath. Aby otoczyć predykat i przetestować to, czy występuje określony warunek, można użyć operatora „[]”. Można na przykład przestować:

  • wartość atrybutu w danym łańcuchu
  • wartość elementu
  • to czy element zawiera określone „dziecko”, atrybut lub inny element
  • pozycję węzła w drzewie

W predykatach można użyć dowolnego rodzaju typu wyrażeń:

  • zbiory węzłów
  • logiczne
  • liczbowe
  • tekstowe
  • wynikowe fragmenty drzew
Remove ads

Zbiory węzłów XPath

Zbiór węzłów – jak wskazuje sama nazwa – to po prostu zbiór węzłów. Wyrażenie takie jak

n:Zainteresowania

zwraca zbiór węzłów elementów n:Zainteresowania.

Wyrażenie:

child::n:Zainteresowania/child::n:Zainteresowanie

zwraca listę węzłów elementów n:Zainteresowanie będących dziećmi elementów n:Zainteresowania. Do wybrania ze zbioru węzła lub węzłów można użyć różnych funkcji używanych w predykatach.

Remove ads

Funkcje XPath

Więcej informacji Funkcja, Znaczenie ...
Remove ads

Wyrażenia logiczne XPath

W wyrażeniach XPath można używać także wyrażeń logicznych. Liczba uważana jest za fałsz, jeśli jest równa zeru i uważana za prawdę w każdym innym przypadku. Napis pusty () uważany jest za fałsz, wszystkie inne napisy odpowiadają prawdzie.

Operatory logiczne XPath umożliwiają wyliczenie wartości typu prawda-fałsz:

Więcej informacji Operator, Znaczenie ...

Poszczególne elementy wyrażenia logicznego łączyć można spójnikami and i or, podobnie jak w JavaScripcie i Javie.

Istnieją też funkcje true() i false() zwracające zawsze wartości odpowiednio prawdy i fałszu, a funkcji not() można użyć do odwrócenia logicznej wartości wyrażenia.

Remove ads

Liczby w XPath

Liczby w XPath zapisywane są jako zmiennoprzecinkowe liczby podwójnej precyzji. W takiej postaci przechowywane są wszystkie liczby, nawet liczby całkowite jak np. 2.

Więcej informacji Operator, Znaczenie ...

XPath obsługuje także kilka funkcji działających na liczbach:

Więcej informacji Funkcja, Znaczenie ...
Remove ads

Napisy w XPath

Napisy XPath składają się ze znaków Unicode. Poniżej zestawiono funkcje operujące na napisach:

Więcej informacji Funkcja, Znaczenie ...

Składnia skrócona XPath

Więcej informacji Wyrażenie, Skrót ...

Zobacz też

Linki zewnętrzne

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads