Как получить родительский node имя текущего node?
Какой правильный синтаксис для получения текущего node родительского node имени? Я знаю это о родительском элементе AxisName, но какой правильный синтаксис?
например, следующего xml
<netcdf xmlns="http://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2" location="file:/dev/null" iosp="lasp.tss.iosp.ValueGeneratorIOSP" start="0" increment="1">
<attribute name="title" value="Vector time series"/>
<dimension name="time" length="100"/>
<variable name="time" shape="time" type="double">
<attribute name="units" type="String" value="seconds since 1970-01-01T00:00"/>
</variable>
<group name="Vector" tsdsType="Structure" shape="time">
<variable name="x" shape="time" type="double"/>
<variable name="y" shape="time" type="double"/>
<variable name="z" shape="time" type="double"/>
</group>
</netcdf>
для переменной элемента я должен получить netcdf или группу. Спасибо заранее.
Ответы
Ответ 1
Использование
name(..)
Аббревиатура ..
является сокращением для parent::node()
.
Обратите внимание. Не у каждого родителя есть имя. Например, документ node (/
) является родительским элементом верхнего элемента (/*
) документа и не имеет имени.
Ответ 2
name(parent::*)
должен это сделать. Очевидно, что только один родитель.