我想选择所有包含“condition”元素的“target”元素。到目前为止,很容易实现: "//target[descendant::condition]"
但问题是:我的“target”元素是嵌套的,我不希望选择那些包含一个或多个“condition”元素的“target”元素,这些元素仅位于另一个“target”元素内部。
可以看到,我的XML文件如下:
<ROOT>
<target id="1">
<condition/>
</target>
<target id="2">
<any_tag/>
</target>
<target id="3">
<condition/>
<target id="4">
<condition>
</target>
</target>
<target id="5">
<target id="6">
<condition/>
</target>
</target>
</ROOT>
我想选择id为1、3、4和6的“目标”元素,但不包括5,因为在这个<target>
标签和“条件”标签之间还有另一个“目标”标签。
(在我的真实代码中,“条件”元素不是“目标”元素的直接子元素。出于简化的原因,我改变了这一点。)