XPATH是否提供始终不返回任何值的查询?
例如,给定这个简单的XML:
<foo>
<bar>hello, world</bar>
</foo>
类型//noelement
的XPATH查询显然不会返回任何元素,这很好,但感觉就像是黑客。
我想知道规范是否要求保留值永远不会匹配任何元素。像//NIL
那样的有效XPATH查询,同时永远不会匹配任何元素。
答案 0 :(得分:4)
James Clark(XPath 1.0编辑)wrote:
Re:关于空节点集初始化的最佳实践
我喜欢&#34; /.."。我们确实考虑添加一个函数来返回一个空节点集, 但它并没有真正看到购买任何东西超过&#34; ../"。
当然,他邮件中的第二个xpath表达式是拼写错误。
因此,如果您想像经典使用那样编码&#34; /..":根节点的父节点根据定义不存在。好的XPath引擎应该识别这个表达式并将其优化为空节点集。