XML i XPath
Co to jest XPath?
XPath Jest głównym elementem standardu XSLT.
XPath może być używany do lokalizacji (nawigacji) elementów i atrybutów w dokumencie XML.
XPath

- XPath jest używany do definiowania składni różnych części dokumentu XML
- XPath używa wyrażeń ścieżki do nawigacji w dokumencie XML
- XPath zawiera standardową bibliotekę funkcji
- XPath jest głównym elementem w XSLT i XQuery
- XPath jest zalecanym standardem W3C
Wyrażenia ścieżki XPath
XPath używa wyrażeń ścieżki, aby wybrać węzły lub zestawy węzłów w dokumencie XML. Te wyrażenia ścieżki wyglądają bardzo podobnie do tych, które widzisz, gdy używasz tradycyjnego systemu plików komputerowego.
Wyrażenia XPath mogą być używane w językach takich jak JavaScript, Java, XML Schema, PHP, Python, C i C++ oraz wielu innych.
XPath jest używany w XSLT
XPath jest głównym elementem standardu XSLT.
Zrozumienie XPath pozwala na pełne wykorzystanie XSL.
Przykład XPath
Użyjemy poniższego dokumentu XML:
<?xml version="1.0" encoding="UTF-8"?> <bookstore> <book category="kuchnia"> <title lang="pl">Rozmowy o jedzeniu</title> <author>梁实秋</author> <year>2013</year> <price>35</price> </book> <book category="儿童"> <title lang="zh">了不起的狐狸爸爸</title> <author>罗尔德·达尔</author> <year>2009</year> <price>10.00</price> </book> <book category="文学"> <title lang="zh">将熟悉变为陌生</title> <author>齐格蒙·鲍曼</author> <author>彼得·哈夫纳</author> <author>Kurt Cagle</author> <author>James Linn</author> <author>Vaidyanathan Nagarajan</author> <year>2003</year> <price>49.99</price> </book> <book category="政治"> <title lang="zh">论美国的民主</title> <author>托克维尔</author> <year>1989</year> <price>60.00</price> </book> </bookstore>
W poniższej tabeli przedstawiamy niektóre wyrażenia XPath oraz ich wyniki:
Wyrażenia XPath | Wynik |
---|---|
/bookstore/book[1] | Wybierz pierwszy element book jako dziecko elementu bookstore. |
/bookstore/book[last()] | Wybierz ostatni element book jako dziecko elementu bookstore. |
/bookstore/book[last()-1] | Wybierz drugi ostatni element book jako dziecko elementu bookstore. |
/bookstore/book[position()<3] | Wybierz pierwsze dwa elementy book jako dzieci elementu bookstore. |
//title[@lang] | Wybierz wszystkie elementy title posiadające atrybut lang. |
//title[@lang='en'] | Wybierz wszystkie elementy title posiadające atrybut lang o wartości "en". |
/bookstore/book[price>35.00] | Wybierz wszystkie elementy book wewnątrz elementu bookstore, które mają wartość elementu price większą niż 35.00. |
/bookstore/book[price>35.00]/title | Wybierz wszystkie elementy title, dla których wartość elementu price w elementach book elementu bookstore jest większa niż 35.00. |
Kurs XPath
Nauczysz się o XPath Więcej informacji.