计算XPath 1.0中的不同内容

时间:2014-06-03 23:09:55

标签: xml xslt xpath xpath-1.0

给出以下XML

<Address>
 <CountryName>France</CountryName>
</Address>
...
<Address>
 <CountryName>Germany</CountryName>
</Address>
...
<Address>
 <CountryName>Spain</CountryName>
</Address>

如何计算使用XPath 1.0的不同国家/地区的数量?

地址列表很长,包含许多不同的国家/地区,因此我希望避免必须明确表达每个地址。

1 个答案:

答案 0 :(得分:4)

选择所有CountryName元素的计数,这些元素的值与作为当前CountryName元素的子元素的CountryName元素的值不同父母的后续兄弟姐妹是Address元素:

count(//Address/CountryName[not(.=../following-sibling::Address/CountryName)])