我有一个这样的循环:
for $a in local:distinct-nodes($x/input/book[@stat = 'ok'])
let $b:=string($a/../input/@docid)
返回一个空字符串($ b为空)。所以,我想知道如何在这种情况下访问父节点。我真的不想从root(// xxxx)访问它,因为XML文件非常大。
答案 0 :(得分:2)
我有一个这样的循环:
for $a in local:distinct-nodes($x/input/book[@stat = 'ok']) let $b:=string($a/../input/@docid)
返回一个空字符串(
$b
是 空)。
是的,这应该是应该产生的。
所有$ a节点都是book
个元素。
$a/..
是input
个元素
$a/../input
应该是input/input
元素,但很可能input
个元素没有input
个孩子。
你想要的是:
$a/../@docid