Parser Java XPath - przegląd
XPath jest oficjalną rekomendacją konsorcjum World Wide Web Consortium (W3C). Definiuje język, w którym można znaleźć informacje w pliku XML. Służy do przechodzenia między elementami i atrybutami dokumentu XML. XPath udostępnia różne typy wyrażeń, których można używać do uzyskiwania odpowiednich informacji z dokumentu XML.
Co to jest XPath?
- Structure Definations - XPath definiuje części dokumentu XML, takie jak element, atrybut, tekst, przestrzeń nazw, instrukcja przetwarzania, komentarz i węzły dokumentu. 
- Path Expressions - XPath zapewnia potężne wyrażenia ścieżek, takie jak wybrane węzły lub lista węzłów w dokumentach XML. 
- Standard Functions - XPath zapewnia bogatą bibliotekę standardowych funkcji do manipulacji wartościami łańcuchowymi, wartościami liczbowymi, porównywaniem dat i godzin, manipulowaniem węzłami i nazwami QName, manipulowaniem sekwencjami, wartościami logicznymi itp. 
- Major part of XSLT - XPath jest jednym z głównych elementów standardu XSLT i aby pracować z dokumentami XSLT, trzeba mieć wystarczającą znajomość XPath. 
- W3C recommendation - XPath jest oficjalną rekomendacją World Wide Web Consortium (W3C). 
Wyrażenia XPath
XPath używa wyrażenia ścieżki, aby wybrać węzeł lub listę węzłów z dokumentu XML. Poniżej znajduje się lista przydatnych ścieżek i wyrażeń umożliwiających wybranie dowolnego węzła / listy węzłów z dokumentu XML.
| Sr.No. | Wyrażenie i opis | 
|---|---|
| 1 | node-name Wybierz wszystkie węzły o podanej nazwie „nazwa węzła” | 
| 2 | / Wybór rozpoczyna się od węzła głównego | 
| 3 | // Wybór rozpoczyna się od bieżącego węzła, który pasuje do wyboru | 
| 4 | . Wybiera bieżący węzeł | 
| 5 | .. Wybiera rodzica bieżącego węzła | 
| 6 | @ Wybiera atrybuty | 
| 7 | student Example - Wybiera wszystkie węzły o nazwie „student” | 
| 8 | class/student Example - Wybiera wszystkie elementy uczniów, które są dziećmi klasy | 
| 9 | //student Zaznacza wszystkie elementy uczniów bez względu na to, gdzie się znajdują w dokumencie | 
Predykaty
Predykaty służą do znajdowania określonego węzła lub węzła zawierającego określoną wartość i są definiowane za pomocą [...].
| Wyrażenie | Wynik | 
|---|---|
| / klasa / uczeń [1] | Wybiera pierwszy element ucznia będący dzieckiem elementu klasy. | 
| / klasa / uczeń [ostatni ()] | Wybiera ostatni element ucznia będący dzieckiem elementu class. | 
| / klasa / uczeń [ostatni () - 1] | Wybiera przedostatni element ucznia, który jest dzieckiem elementu class. | 
| // student [@rollno = '493'] | Wybiera wszystkie elementy uczniów, które mają atrybut o nazwie rollno o wartości „493” |