user851380
user851380

Reputation: 339

How to get the parent node name of the current node?

what's the right syntax to get the current node's parent node's name? I know it's about the AxisName parent but what's the right syntax? for example of the following 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>

for the element variable I should get netcdf or group. Thanks in advance.

Upvotes: 22

Views: 48110

Answers (2)

Dimitre Novatchev
Dimitre Novatchev

Reputation: 243469

Use:

name(..)

The .. abbreviation is a shorthand for parent::node().

Do note: Not every parent has a name. For example the document node (/) is the parent of the top element (/*) of the document and has no name.

Upvotes: 41

Flynn1179
Flynn1179

Reputation: 12075

name(parent::*) should do it. There's only going to be one parent, obviously.

Upvotes: 11

Related Questions