xml - XPath查询不匹配任何值

标签 xml xpath

XPATH是否提供始终不返回值的查询?

例如,给出以下简单的XML:

<foo>
    <bar>hello, world</bar>
</foo>


类型为//noelement的XPATH查询显然不会返回任何元素,这很好,但是感觉像是黑客。

我想知道规范是否规定了一个永远不会匹配任何元素的保留值。诸如//NIL之类的东西将是有效的XPATH查询,并且同时从不匹配任何元素。

最佳答案

James Clark(XPath 1.0编辑器)wrote

回复:关于空节点集初始化的最佳实践
我喜欢 ”/..”。我们确实考虑过添加一个函数来返回一个空节点集,
但它并没有真正打算在“ ../”之上购买任何东西。

当然,他邮件中的第二个xpath表达式是一个错字。
因此,如果要像经典代码一样使用“ / ..”:根节点的父级在定义上不存在。好的XPath引擎应该识别该表达式并将其优化为空节点集。

关于xml - XPath查询不匹配任何值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31521664/

相关文章:

sql-server - SQL Server XML 文件更新一个节点的值,其中另一个节点的文本为 XXX

xpath - 为什么这个//ID 通过但//DEF 失败?

java - JAXB - 如何仅在子标签中设置 xmlns 和前缀

xml - 使用 Powershell 从多个 XML 文件中的元素获取数据以输出到另一个单个 XML 文件

java - 使用 Jackson XmlMapper 将 XML 反序列化为 POJO

xpath - 这个xpath是什么意思?

c# - XML 中的不同值

css - 如何单击代码段中存在部分文本的表记录 by.cssselector

PHP 解析 XML 时出错(simpleXML)

c# - 带有报告服务命名空间枚举的 XML 没有产生任何结果