这是我在 MarkLogic XQuery 管理器中开发功能的尝试的一个微不足道的简化。我尝试编写的函数必须能够接收空节点作为输入。我一直试图传递()“空节点”的意思,它似乎只是在没有任何痕迹的情况下崩溃。
例如,显示的简单示例预计会简单地返回数字“1”,但事实并非如此。如果我改为传递一个小的非空 XML 文档,那么这个简单的例子就起作用了。
在传递一个空节点时,我的推理有什么问题?
declare function local:x ($i as node()) as xs:string*
{ let $x := "1"
return $x
};
local:x ( () );
Run Code Online (Sandbox Code Playgroud) marklogic ×1