我想对一些名称中包含-
的元素进行一些数学运算:
<containers>
<container>
<max-capacity>10</max-capacity>
<content>5</content>
</container>
<container>
<max-capacity>10</max-capacity>
<content>8</content>
</container>
</containers>
我想执行一个 xpath 查询,该查询计算剩余容量为> 2 的容器数量
count(containers/container[max-capacity-content>2])
但是由于节点名称中有-
max-capacity
因此这不起作用。
我该怎么做才能完成这项工作?
(我不想将 xml 转换为无-
文档。
添加空格 - containers/container[max-capacity - content > 2]
根据 http://www.xpathtester.com/test 工作,并且也应该在像您这样的count()
表达式中工作。
由于节点名称中有一个 -
max-capacity
这不会 工作。我该怎么做才能完成这项工作?
(我不想将 xml 转换为 --free 文档。
您的问题不在于您有像 max-capacity
这样的名称 - 问题在于,通过不使用空格分隔名称和-
运算符,您将创建一个新名称:max-capacity-content
并且 XML 文档中没有具有该名称的元素。
解决方案:
count(containers/container[max-capacity - content > 2])