有人可以告诉我以下XPath表达式之间的区别吗?
/IntuitResponse/QueryResponse/Bill/./Id
/IntuitResponse/QueryResponse/Bill/Id
我尝试过使用两者来解析文档根目录中的XML文档,并且得到相同的响应。
答案 0 :(得分:5)
这两个XPath是等效的。
self::node()
(.
)的缩写在谓词 中更有用 。例如,
/IntuitResponse/QueryResponse/Bill/Id[. = 'abc']
只会选择字符串值为Id
的<{1}}元素。
此外,'abc'
对于引入 相对路径 非常有用。例如,
.
将仅选择那些作为当前上下文节点的子元素的./Id
元素。