Чтобы сделать временные документы ML-8 обновляемыми в ML-9, нам нужно добавить новые метаданные «temporalDocURI» в существующий URI документа, где мы хотим выполнить обновление.
Пример кода:
let $uri := "/documents/test.xml"
return xdmp:document-put-metadata(
$uri,map:map(<map:map xmlns:map="http://marklogic.com/xdmp/map">
<map:entry key="temporalDocURI">
<map:value>{$uri}</map:value>
</map:entry>
</map:map>))
Как только метаданные добавлены в битемпоральный документ, который мы хотим обновить, временный интерфейс для обновления или вставки узла будет работать для всех документов, вставленных до ML-9.
Примечание Чтобы API-интерфейс 'xdmp: document-put-metadata' работал с временными документами, ему потребуется привилегия переопределения для временной коллекции, к которой принадлежит временный документ, и если пользователь делает изменение не является правами администратора, затем необходимо добавить привилегию гранулярного выполнения для пользователя и затем выполнить 'xdmp: document-put-metadata'.