MarkLogic中同一文档的多个URI?



在将文件存储库加载到 MarkLogic 时,我意识到它包含大量重复的文档。例如,同一产品目录文档("catalog.pdf"(的多个副本可以在几个不同的目录中找到,例如:/products/published-documents//sourcing/references//marketing/materials/

我想知道我是否可以通过在 MarkLogic 中让多个 URI 指向同一文档(如符号链接?或者也许还有其他方法可以达到相同的效果。我已经考虑过使用集合,但我们确实需要保留目录结构,以便用户可以继续通过 WebDAV 访问文件。

不,在 MarkLogic 中,文档只有一个 URI 是一个相当低级别的约束。但是,您可以使用模块化文档功能(如 XInclude 或 XPointer(,并将重复的文档替换为对规范 URI 的引用。

https://docs.marklogic.com/guide/app-dev/mod-docs

在这种情况下,集合也可能很有用,例如,将规范文档分配给一个集合,将重复文档分配给另一个集合。那么仅查询规范文档会更简单。

但是,如果 WebDAV 是主接口,则两者都不合适,因为 WebDAV 客户端只需打开带有 XInclude URI 引用的浅层文档。

一个可能的例外是通过权限。还可以为规范文档和重复文档分配不同的权限,以便 WebDAV 用户无法访问重复文档。然后,对于浏览WebDAV的任何人,都不会列出重复项。该行为不能完美地模仿符号链接,但它可能足够接近。

最新更新