ancestor
означает Selects all ancestors (parent, grandparent, etc.) of the current node
согласно https://www.w3schools.com/xml/xpath_axes.asp а>.
Есть ли способ указать самого низшего предка вместо всех предков?
ancestor
означает Selects all ancestors (parent, grandparent, etc.) of the current node
согласно https://www.w3schools.com/xml/xpath_axes.asp а>.
Есть ли способ указать самого низшего предка вместо всех предков?
младший предок будет родителем, который задается ..
или parent::node()
.
старшим предком будет корневой узел, который задается /
; или, если вам нужен элемент наивысшего предка: /*
.
См. Также В чем разница между корневым узлом, корневым элементом и элементом документа в XML?
Обратите внимание: если вы хотите выбрать самого низкого предка, который удовлетворяет предикату, добавьте [1]
к предикату, предки упорядочиваются вверх от начальной точки, а не вниз от корня. Например,
//e[@id="e1"]/ancestor::*[@class][1]
выберет самого нижнего предка элемента e1
e
, имеющего атрибут @class
.
/
. - person PaulProgrammer   schedule 31.07.2019/
высшим предком, аparent::node()
- низшим. (Деревья в информатике традиционно рисуются с корнем выше, чем листья. Кроме того, упорядочение документов усиливает представление о том, что нижняя часть документа находится ниже верхней.) - person kjhughes   schedule 31.07.2019