Как выбрать первое дочернее имя узла?XPath - PullRequest
40 голосов
/ 30 августа 2010

У меня есть XML, из которого я должен выбрать имя дочернего элемента одного из узлов Я новичок в этом, поэтому я не нашел выражения Xpath для этого. Я знаю уровень узла

* ** 1003 тысяча два * Пример

Имя от /Employee/Department/

но у Департамента есть дочерние узлы с неизвестными именами. Я должен выбрать первый дочерний узел отдела. Как я могу это сделать?

Ответы [ 3 ]

56 голосов
/ 30 августа 2010

Вы писали:

Я должен выбрать первого ребенка Узел отдела

Вы можете использовать:

/Employee/Department/*[1]

Тогда вы также написали:

У меня есть XML, из которого я должен выберите имя ребенка одного из узлы

Итак, вы можете использовать:

name(/Employee/Department/*[1])
18 голосов
/ 30 августа 2010

Я не знаю точный контекст вашего XML, но я полагаю, что это XPath, который вы ищете ...

/Employee/Department/*[1]

Ключевой частью этого XPath является *[1], которыйвыберет значение узла первого потомка Department.

Если вам нужно имя узла, то вы захотите использовать это ...

name(/Employee/Department/*[1])
8 голосов
/ 30 августа 2010

Вам нужно что-то вроде:

local-name(/Employee/Department/*[1])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...