XPATH выбор корневого элемента - PullRequest
20 голосов
/ 29 февраля 2012

Есть ли простой способ вернуться обратно к корневому узлу в любом данном контексте.XML-документ, с которым я работаю, очень большой и потребует использования ../ .. около десятка раз !!

Любая помощь очень ценится, ребята.

Ответы [ 4 ]

29 голосов
/ 29 февраля 2012

Выражение XPath, начинающееся с /, всегда ссылается на корневой элемент. Смотрите здесь для синтаксиса и некоторых полезных примеров запросов

Если вы хотите выбрать сам корневой элемент, просто используйте /<element name> или /*

8 голосов
/ 29 февраля 2012

Полагаю, вы здесь находитесь в предикате? и хотите вернуться, чтобы посмотреть данные выше по дереву для вашего состояния?

Вы должны быть в состоянии начать с ведущего /, а затем вернуться обратно вниз * например 1003 *

/vehicles/cars/car[@id = /vehicles/featuredVehicle/@id]
7 голосов
/ 29 февраля 2012

Вы можете использовать ось предка. Скажем, у вас есть этот документ:

<a><b><c></c></b></a>

Затем a / b / c / ancestor :: a переносит контекст в узел c, а затем обратно в узел.

3 голосов
/ 29 февраля 2012

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

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