如何获取节点的所有直接父级列表?

时间:2019-01-20 10:13:19

标签: xpath

从X3 Sage应用程序生成了一个XML。我不知道它的数据也不是它的结构;我所知道的只是我将从中检索数据的节点名称(节点的文本)。在XML中,一个节点可以出现更多次;并且在这种情况下,该节点包含在父节点内;例如:

<?xml version="1.0" ?>
<some_root>
   <some_parent_node>
      <some_node_1>some_data</some_node_1>
      <some_node_2>some_data</some_node_2>
   </some_parent_node>
   <some_parent_node>
      <some_node_1>some_data</some_node_1>
      <some_node_2>some_data</some_node_2>
   </some_parent_node>
</some_root>

我想获取节点<some_node_1>的所有直接父节点。该怎么做?

1 个答案:

答案 0 :(得分:1)

要获取每个some_node_1节点的直接父节点,可以尝试

//some_node_1/parent::*

如果要获取所有祖先节点

//some_node_1/ancestor::*

如果要获取所有祖先节点名称

//some_node_1/ancestor::*/name()