我是marklogic的新手。谁能给我一个脚本来获取文档的文档名称和 XML 文件内容,并通过传递属性值上传/创建时间戳。
问问题
834 次
2 回答
3
除了@eric-bloch 的回答,如果您进行了搜索,您可以使用fn:base-uri()
or 确定 uri xdmp:node-uri()
。例如像这样:
for $d in cts:search(doc(), cts:and-query(()))[1 to 10]
return fn:base-uri($d)
注意:空的and-query 是获取所有文档返回的一个小技巧。1 到 10 谓词确保您不会立即返回整个数据库,而只会返回前十个。如果您要在 last-modified 属性上添加 order by,您可以通过这种方式获取 10 个最旧或最新的文档。
于 2012-02-09T06:43:33.693 回答
3
这个问题很难理解。MarkLogic 中的文档由 URI 标识,而不是名称。如果你知道 URI,那么就做
doc($uri)
获取内容。文档的最后修改时间存储为文档属性,您可以使用 XPath 属性轴获取该属性,例如
doc($uri)/property::*:last-modified/string()
还有其他方法可以获取文档属性,例如xdmp:document-properties()
api 调用。
于 2012-02-09T01:57:15.107 回答