我正在尝试使用以下代码在xquery中获取节点的所有属性,从逻辑上讲,它应该有效,但不是
$ n in $ nodes 返回$ n/@*
属性节点必须是元素节点的属性,结果树不能包含独立属性节点。
如果要产生一个名称序列 - 每个属性的值,请:
for $attr in $nodes/@*
return
(name($attr), string($attr), '
')
例如,给定以下XML文档:
<t topA="1">
<a x="2" z="3">
<b message="Hello"/>
</a>
<c y="5"/>
</t>
并将此查询应用于:
for $nodes in //*,
$attr in $nodes/@*
return
(name($attr), string($attr), '
')
结果是:
topA 1
x 2
z 3
message Hello
y 5