【发布时间】:2014-10-07 04:10:10
【问题描述】:
我需要基于另一个处于同一级别的节点获取一个节点:(
这是一个例子:
<A>
<B id=2>
<F1>aaa</F1>
<F2>bbb</F2>
<F3>ccc</F3>
</B>
<B>
....
</B>
<B>
....
</B>
<D>
<F1>aaa</F1>
<F2>bbb</F2>
<F3>ccc</F3>
<F4>yyy</F4>
</D>
<D>
...
</D>
</A>
所以我需要得到 A/D/F4 其中 A/D/F1=A/B[@id=2]/F1 和 A/D/F2=A/B[@id=2]/F2 和A/D/F3=A/B[@id=2]/F3
我只有 id 来执行查询,我以节点 B 作为起点(由其他内部代码返回)。我正在考虑一种方法来获得对路径中节点的反向引用,这意味着我可以使用类似的东西:
/A/B[@id=2]/../D[F1=Bref/F1 and F2=Bref/F2 and F3=Bref/F3]/F4
我正在尝试不手动构建连接,并且尽可能仅使用 Xpath 功能。
有什么想法吗?
【问题讨论】:
标签: xpath