我的 OSB 代理中有以下情况。
$body/*[1]/xyzflag eq 'true' and (:some other true conditions:)
该节点xyzflag
甚至不存在于变量 $body 指向的节点下。
大多数情况下,该条件按预期工作(给出错误)。但有时它给出了真实的。
有人遇到过这种情况吗?对我来说似乎是一个错误。可以帮忙吗?
我的 OSB 代理中有以下情况。
$body/*[1]/xyzflag eq 'true' and (:some other true conditions:)
该节点xyzflag
甚至不存在于变量 $body 指向的节点下。
大多数情况下,该条件按预期工作(给出错误)。但有时它给出了真实的。
有人遇到过这种情况吗?对我来说似乎是一个错误。可以帮忙吗?
您尝试的 XQuery 表达式是错误的。
例如,如果您的 XML 如下所示:
<school>
<teacher>
<isClassteacher>Y</isClassteacher>
</teacher>
<teacher>
<isClassteacher>N</isClassteacher>
</teacher>
</school>
那么你的表达式将如下所示: data($body/teacher[1]/isClassteacher)='Y'
注意:请根据您的要求进行更改。
希望这会有所帮助。
问候
阿苏托什
尝试使它像这样:
fn:数据($body/[1]/xyzflag)
如果您正在检查该节点是否存在<xyzflag>
,我会建议您使用fn:exists
function.
这个表达
$body/*[1]/xyzflag = 'true'
如果节点<xyzflag>
存在,将返回 true。它不会打扰节点的内容是否存在