обход неизвестного документа в формате xml через xpath - PullRequest
0 голосов
/ 12 января 2011

Я хочу пройти через какой-нибудь xml-документ, структура которого мне не известна. Можно ли получить имя и значения всех узлов (Document, Element, Text) с помощью xpath?

Ответы [ 2 ]

0 голосов
/ 12 января 2011

Вы, вероятно, хотите :

//node() | //@* | //namespace::*

Выбирает объединение всех узлов (узел документа (/), элементы, текстовые узлы, узлы комментариев и узлы инструкций по обработке), все узлы атрибутов и все узлы пространства имен .

Используемый механизм XPath обычно обеспечивает результат оценки такого выражения как некоторый контейнер, в котором представления выбранных узлов расположены в порядке документа, и можно перебирать элементы этого контейнера.

0 голосов
/ 12 января 2011

Только XPath может получить данные, но он не очень хорошо возвращает комбинированные результаты. Следующий XQuery дает вам стартер:

//*/<element name="{name()}" parent="{name(..)}" value="{if (*) then '(composite)' else string(.)}"/>

Для получения более подробной информации вам необходимо более точно указать требуемый результат.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...