Hi,
copy $c := <lorem>ipsum dolor sit amet</lorem> modify insert node namespace {"lipsum"} {"lorem-ipsum"} into $c return $c
Expected result:
<lipsum:lorem xmlns:lipsum="lorem-ipsum">ipsum dolor sit amet</lipsum:lorem>
but I get
<lorem>ipsum dolor sit amet</lorem>
copy $c := <lorem>ipsum dolor sit amet</lorem> modify replace node $c/namespace-node() with namespace {"lipsum"} {"lorem-ipsum"} return $c
Here I get an error: [XQST0134] Namespace axis is not supported.
How can I change namespaces for nodes with the simple update expressions?
For background: I try to implement a function:
declare function local:add-namespaces-to-nodes( $nodes as element()*, $namespaces as array(*)*) as element()* { for $namespace in $namespaces for $node in $nodes return copy $c := $node modify insert node (namespace {$namespace(1)} {$namespace(2)}) into $c return $c };
Thanks!