如果我没有在Corb中指定集合名称会发生​​什么

时间:2016-04-21 14:01:40

标签: xquery marklogic marklogic-8 marklogic-corb

我有一个corb脚本在xml文件上运行节点替换。

如果我没有指定集合,是否会从现有集合中删除文档?

2 个答案:

答案 0 :(得分:2)

如果您使用xdmp:node-replace()更改文档,则文档将保留在其收藏中,您无需担心设置/添加它。

如果您使用xdmp:document-insert()替换当前URI上的文档,则需要指定集合,否则将从现有集合中删除它。

但是,您可以使用xdmp:document-get-collections()检索URI的集合序列,并将其用于xdmp:document-insert()的第4个参数

xdmp:document-insert($URI, $doc, (), xdmp:document-get-collections($URI))

答案 1 :(得分:0)

最好提供一个空集合值,同时进行节点替换,这样就不会改变文档的现有集合。不定义此属性会导致在运行脚本时抛出错误。