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!
--
Minden jót, all the best, Alles Gute,
Andreas Mixich