Подтвердить что ты не робот

Получение имени элемента в XPATH

Если я выбрал элемент, используя XPATH, как я могу получить его имя?
Я имею в виду что-то вроде text() в //element/[@id=elid]/text().

4b9b3361

Ответ 1

Используйте name()

Ниже приведены модифицированные версии вашего примера:

Работает только в XPath 2.0:

//element/*[@id='elid']/name()

Работает в XPath 1.0 и 2.0:

name(//element/*[@id='elid'])

Вы также можете использовать local-name(), который возвращает локальную часть расширенное имя (без префикса пространства имен).

Ответ 2

Дерево имен тегов можно также получить с помощью

echo "du //Element/*" | xmllint --shell response-02.xml
Ele1
    id
    name
    Nested1
        id
        name
Ele2