如何使用Xpath检查fo重复

时间:2017-01-16 10:19:40

标签: xml xpath

我有以下简单的XML,其中@id是字符串:

<root>
    <item id="a1"/>
    <item id="a2"/>
    <item id="b2"/>
    <item id="a3"/>
</root>

我可以在XML中使用很多项目节点(&gt; 30000)。我要检查的是,@ id在所有元素中都是唯一的。是否可以通过XPath进行此检查(返回true / false)?如果是这样,有人可以发布 - 理想情况下最有效的解决方案吗?是否有一些运算符只返回序列中的唯一项?

编辑: 自己找到了解决方案:

count(distinct-values(//item/@id)) = count(//item/@id)

不确定它是否是最有效的。

1 个答案:

答案 0 :(得分:0)

自己找到解决方案:

count(distinct-values(// item / @ id))= count(// item / @ id)

不确定它是否是最有效的。