我是 xml、xsl 和 xPath 的初学者。我想知道如何检查我所有的 refid 属性是否有效?
换句话说,如果每个 refid 属性都有一个匹配的 ID 属性(当然具有相同的值),我希望有一个返回 TRUE 的 xPath 1.0 查询。所有产品都不需要有 ref 节点。
例如:如果 cookie 指向面包,面包指向牛奶,牛奶指向 cookie,则返回 TRUE,否则返回 FALSE。
我一直在尝试解决这个问题,并在网上搜索了一个没有运气的好例子。帮助将不胜感激!
这是我的 XML:
<shop>
<product>
<cookie ID="01">
<price>2</price>
</cookie>
<ref refid="02"/>
</product>
<product>
<bread ID="02">
<price>5</price>
</bread>
<ref refid="03"/>
</product>
<product>
<milk ID="03">
<price>2</price>
</milk>
<ref refid="01"/>
</product>
</shop>