xdmp: from-json-string () ожидает строку, но параметр $ content для преобразования - это document-node (), а не строка.
Попробуйте xdmp: from-json () вместо xdmp: from-json-string () для преобразования узла JSON в карту, если вам нужна изменяемая структура.
Также мне интересно, нужен ли xdmp: javascript-eval (),Вы должны иметь возможность вызывать функцию из XQuery с чем-то вроде
let $uri := xdmp:apply(
xdmp:function(xs:QName("createUri"), "/wdsUtils.sjs"),
$orig-value,
$inputval)
. Возможно, нет необходимости преобразовывать узел JSON $ content в карту (которая становится литералом объекта в JavaScript) в зависимости ото том, что делает функция createUri ().
Операции map: put () не будут работать на узле.Вместо этого рассмотрите возможность преобразования карты в узел JSON с чем-то вроде
return xdmp:to-json(map:entry("uri",$uri)=>map:with("value",$orig-value))
Надеясь, что поможет,