是否可以在 XQuery 中重建 JSON 对象?使用 XML,可以使用计算构造函数来重建元素:
element { node-name($some-element) } {
(: Do stuff with $some-element/(@*|node()) :)
}
但是使用 JSON 对象,似乎无法重建属性。我想做这样的事情,但这会引发语法错误:
object-node {
for $p in $some-json-object/*
return node-name($p) : $p
}
看起来可以通过改变 JSON 对象来解决这个问题:
let $obj := json:object(document{xdmp:from-json($json)}/*)
let $_put := map:put($o, 'prop-name', $prop-val)
return xdmp:to-json($o)/node()
但这有一些明显的局限性。