Ash*_*til 0 marklogic marklogic-8 marklogic-9
以下是其中$p2的一个示例代码optional external parameter(即带有? modifier);传递给XDMP-ARG: -- vars is invalid时,代码会给出异常。empty sequence-()$p2
试穿了 Marklogic 8 & 9
let $query :=
"
declare variable $p1 as node()? external;
declare variable $p2 as node()? external;
(
if($p1) then xdmp:log('P1') else ()
,
if($p2) then xdmp:log('P2') else ()
)
"
let $p1 := <p></p>
let $p2 := ()
return
xdmp:eval(
$query,
(xs:QName('p1'), $p1, xs:QName('p2'), $p2)
)
Run Code Online (Sandbox Code Playgroud)
我希望代码能够运行并打印日志。我可以深入了解异常的发生方式吗?
如果将vars作为key,val,key,val的序列传递,则它必须是偶数(2的倍数)。您不能像这样嵌入序列,因为嵌套序列会在XQuery中自动变平。使用map:map传入您的var:
map:new((
map:entry("p1", $p1),
map:entry("p2", $p2),
))
Run Code Online (Sandbox Code Playgroud)
HTH!
| 归档时间: |
|
| 查看次数: |
32 次 |
| 最近记录: |