2013-12-02 31 views
-1

У меня есть xml вроде этого:как создать ArrayList в XML значения атрибутов с помощью XPath

<A> 
    <b> 
    <c id="1"> 
    </c> 
    </b> 
    <b> 
    <c id="2"> 
    </c> 
    </b> 
    </A> 

Можно ли создать ArrayList атрибутов id из <c>. <c> может иметь 1....n появление.

ArrayList будет иметь значения [1,2] для этого примера.

Я ищу решение, желательно в xpath, если нет в xslt иначе java.

ответ

1

Возможное выражение XPath: /A/b/c/@id, чтобы выбрать атрибуты id, тип выражения XPath - это узел узлов узлов атрибутов в XPath 1.0 и последовательность узлов атрибутов в XPath 2.0. В XPath 2.0 вы также можете использовать /A/b/c/@id/number(), чтобы получить последовательность чисел (double) или /A/b/c/@id/xs:integer(.), чтобы получить последовательность целых значений. Чтобы сопоставить любой такой результат с Java ArrayList, вам придется посмотреть на API XPath.

-1

Вы можете написать SAX -паратор для этого.

+0

Я ищу решение с использованием xpath, если это вообще возможно –

+0

http://viralpatel.net/blogs/java-xml-xpath-tutorial-parse-xml/ very usefull –

+0

Я имел в виду использование языка выражения 'xpath', а не с использованием библиотек xpath 'java' –

Смежные вопросы