假设我具有以下结构:
<parent>
<child></child>
</parent>
如果我在<child>
节点上,那么我期望以下XPath返回空值:
./parent::*[not(parent)]
但是,我得到的结果集列出了孩子的父母。为什么?
答案 0 :(得分:1)
表达式not(parent)
检查parent
节点是否为空元素。
对于您而言,它不是,因为它包含一个child
节点。
您要查找的表达式可能是not(self::parent)
,它检查节点本身是否不是parent
节点。因此整个表达式可能应该是
parent::*[not(self::parent)]
我删除了./
轴,因为在这种情况下没有必要。