【发布时间】:2011-11-20 02:38:00
【问题描述】:
我正在处理 Orbeon 表单,我必须使用 Xpath 来检索属性值。我的场景如下所述。
我有一个如下的 xml 节点。
<n>
<node>
<page id='1'>true</page>
<page id='2'>false</page>
<page id='3'>true</page>
<page id='4'>true</page>
<page id='5'>false</page>
<page id='6'>true</page>
</node>
</n>
现在,当我将任何属性值传递给 xpath 时,它应该返回属性值,它会在其中找到下一个值为“true”的节点。例如,如果我通过 id=1,那么我应该得到结果为 3,因为在 之后,下一个具有 true 的节点是 。请注意我只能得到 3 而不是 3,4 和 6。
我已经尝试过类似下面的方法,但我没有得到预期的结果。
/n/node/page[@id>"1" and .='true']/@id
扩展我的问题:
如果我给出最后一个值并期望下一个属性值必须为真,则应适用相同的情况。例子。如果我给 6,xpath 表达式应该给我 4。我不介意我是否必须为此使用另一个 xpath 表达式。
请帮帮我。
【问题讨论】: