如何在Marklogic中使用xquery编写内容转换?

时间:2019-03-25 08:09:10

标签: xquery marklogic

我有一个javascript函数(.sjs),它将返回一个字符串。 现在,我要编写一个xquery转换,它将通过dmsdk触发。 Xquery函数将接受一个json文档,在此转换中,我需要触发将返回字符串的javascript函数。现在,我需要使用该字符串作为uri来加载文档。 我对xquery一无所知!

myXquery transformation function(jsonDoc)
{
/////////////////
myJavaScript function- which return a string
load the doc using this string as uri
}

1 个答案:

答案 0 :(得分:0)

使用以下查询:

    declare namespace local ="local";

    declare function local:transformation($json-input, $json-uri as xs:string)
    {
    xdmp:save(concat("D:\", $json-uri), $json-input)(:Here I saved file on local path, If you want to save on Marklogic-DB use-: xdmp:document-insert( $json-uri, $json-input) :)

    };
    (:1:)
    let $input := '{"menu":{"id":"file", "value":"File"}}'
    for $json-input in $input
    (:2 Call here your Javascript function for json-uri :)
    let $json-uri :="json_first.json"

    return local:transformation(xdmp:unquote($json-input), $json-uri)