Marklogic поисковый запрос - PullRequest
       1

Marklogic поисковый запрос

1 голос
/ 09 февраля 2012

Я новичок в marklogic. Может ли кто-нибудь предоставить мне скрипт для получения имени документа и содержимого XML-файла документа, а также для загрузки / создания временной метки путем передачи значения атрибута.

Ответы [ 2 ]

3 голосов
/ 09 февраля 2012

Этот вопрос трудно понять. Документы в MarkLogic идентифицируются по URI, а не по имени. Если вы знаете URI, просто наберите

doc($uri) 

чтобы получить содержимое. Время последнего изменения документа сохраняется как свойство документа, которое вы можете получить, используя ось свойств XPath, например

doc($uri)/property::*:last-modified/string()

Существуют и другие способы получения свойств документа, например, xdmp:document-properties() вызов API.

2 голосов
/ 09 февраля 2012

В дополнение к ответу @ eric-bloch, если вы выполнили поиск, вы можете определить uri, используя fn:base-uri() или xdmp:node-uri().Например, вот так:

for $d in cts:search(doc(), cts:and-query(()))[1 to 10]
return fn:base-uri($d)

Примечание: пустой запрос and - это небольшая хитрость, чтобы вернуть все документы.Предикат с 1 по 10 гарантирует, что вы не получите всю базу данных, возвращенную за один раз, а только первые десять.Если бы вы добавили заказ по последнему измененному свойству, вы могли бы получить десять самых старых или самых новых документов таким образом.

...