2011-07-08 11 views
17

Jakiego pakietu należy użyć dla XPath? Chcę wo zapytania dla elementów, a następnie wyodrębnić niektóre wartości wokół tych węzłów. Może jeden lub więcej poziomów wyżej, niektóre atrybuty.xpath 2.0 dla java możliwe

javax.xml.xpath to XPath 1.0. Czy javax.xml.xpath i org.w3c.dom jest właściwą drogą, czy też są bardziej nowoczesne implementacje? org.w3c.dom jest bardzo niezręczny, JDOM wydaje się dużo łatwiejszy.

+1

Jeśli chcesz XPath 2.0, potrzebujesz zewnętrznej implementacji dodanej do ścieżki klas. Czego potrzebujesz od 2.0? –

+0

W ten sposób jeszcze nie wiem. Jest to bardzo ogólne narzędzie, które akceptuje xPath jako dane wejściowe. Więc chcę czegoś dobrego na przyszłość. Może Jaxon? –

+0

W takim przypadku, dlaczego zacząć od XPath 1.0 w standardowej bibliotece środowiska wykonawczego i wykonać to zadanie jako pierwsze? –

Odpowiedz

12

Można rozważyć XPath Java 2.0 lub opartą realizacji XQuery (wybór XSLT 2.0 zapewnia znacznie bardziej wydajne funkcje), takie jak Saxon 9.x.

Saxon jest do tej pory open source i jednym z najwyższej jakości procesorów opartych na Java i używam go codziennie, odpowiadając na pytania SO XSLT/XPath/XQuery. W dokumentacji znajdziesz dobre przykłady kodu.

Jedyna samodzielna implementacja XPath 2.0, o której mi wiadomo, to PsychoPath, ale nie jestem pewien jej jakości i użyteczności.