我想查找(绑定)XML中找到的路径上的所有节点。 考虑以下XML片段。如何将节点绑定到xpath中的变量?
<a at="dat1">
<b at="dat2">
<c at="dat3">blah</c>
<c at="dat4">blah</c>
</b>
<b at="dat5">
<c at="dat6">blah</c>
<c at="dat7">blah</c>
</b>
</a>
<a at="dat8">
<b at="dat2">
<c at="dat4">blah</c>
<c at="dat9">blah</c>
</b>
<b at="dat10">
<c at="dat9">blah</c>
<c at="dat4">blah</c>
</b>
</a>
XPath查询/ A/B [@在= “DAT2”]/C [@在= “DAT4”]将只返回两个C节点。不过,我想检索满足给定条件的路径(a,b和c)上的所有节点。在这种情况下,我期待着a,b,c节点的两个三元组。 xpath表达式可以是任意复杂的。 xpath引擎会找到三元组,但只返回c个节点。
我当然可以编写多个xpath表达式来获取每个元素。但是这需要xpath引擎多次搜索,这并不是必须的,因为它已经找到了第一次搜索中的所有绑定。
如何在xpath中实现此目的?如果不可能,我应该使用哪种XML查询语言?
到目前为止你做了什么?你至少有Google吗? – Reborn
@Reborn我在发布问题之前做过Google,但没有找到解决方案。我意识到这个问题还不够清楚,因此我编辑了它。希望有所帮助。 –