如何在二进制文档上设置时间轴?

时间:2019-12-02 18:29:14

标签: marklogic

我对将时态功能与二进制文档一起使用很感兴趣。 I found this note in the documentation

  

如果时间集合是单时间的并且系统时间轴存储在元数据中,则只能将二进制文档作为时间文档导入。

该参考在专门讨论MLCP的部分中。

我有几个相关的问题,所以希望可以将它们放在一起。

  • 如果通过REST API而不是使用MLCP,是要求轴位于元数据中还是可以位于属性中?
  • 如果需要在元数据中,是否存在创建引用元数据的时间轴的示例?我可以找到的所有示例均基于元素范围索引。

1 个答案:

答案 0 :(得分:1)

时间时间戳必须位于隐藏的元数据字段中或文档片段中。这与您插入文档的方式无关,MLCP和REST API都在后台使用temporal:document-inserttemporal:document-insert将扫描您在该调用中提供的文档片段和元数据,以在系统时间内找到合适的占位符。属性不包括在该评估中。如果您愿意的话,插入函数只会抛出XDMP-NOMATCH。

由于二进制文件无法以可索引的方式在文档片段中保存时间戳记值,并且属性不受时间保护,因此必须将其放入隐藏的元数据字段中。

要在隐藏的元数据字段上创建时间轴,请创建“元数据”类型的字段,然后在该字段上放置字段范围索引。然后,在创建轴时会引用该字段范围索引。

HTH!