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” |