仅“最新”时态版本可通过TDE生成三元组

时间:2018-08-06 17:08:45

标签: marklogic temporal marklogic-9

据我所知,使用TDE时,临时文档的所有版本都会生成三倍。

如何将它们限制为集合latest?我不想在使用SPARQL时使用过去版本的三元组。

1 个答案:

答案 0 :(得分:1)

临时文档的最新版本将在"latest" collection中。您可以在模板定义中指定视图的collections。定义模板以使用“最新”集合和时间集合来提取最新文档。下面的代码片段显示了一个模板,该模板将为“最新”和“时间集合”集合中的节点建立索引。

<tde:template xmlns:tde='http://marklogic.com/xdmp/tde'
              xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
              xsi:schemaLocation='http://marklogic.com/xdmp/tde'>
  <tde:context>/</tde:context>
  <tde:collections>
    <tde:collections-and>
      <tde:collection>latest</tde:collection>
      <tde:collection>temporal-collection</tde:collection>
    </tde:collections-and>
  </tde:collections>
  <tde:enabled>true</tde:enabled>
  <tde:rows>
    <tde:row>
      <tde:schema-name>myschema</tde:schema-name>
      <tde:view-name>myview</tde:view-name>
      <tde:columns>
        <tde:column>
          <tde:name>mycolumn</tde:name>
          <tde:scalar-type>string</tde:scalar-type>
          <tde:val>myvalue</tde:val>
        </tde:column>
      </tde:columns>
    </tde:row>
  </tde:rows>
</tde:template>