Как искать документы, передавая URI и имена коллекций в MarkLogic? - PullRequest
2 голосов
/ 05 июня 2019

Я хочу создать поисковый запрос в javascript, где я передаю URI одного документа и имена его коллекций, чтобы я мог получить документ в качестве вывода (JSON).

Я пробовал fn.doc, cts.docи т.д., но я не могу найти, как использовать в нем имя коллекции.

Ответы [ 2 ]

3 голосов
/ 05 июня 2019

URI должно быть достаточно для получения документа.Если вы хотите сделать это как запрос, используйте cts.documentQuery (uri).Если вы хотите убедиться, что он также имеет определенные коллекции, вы можете и в cts.collectionQuery (коллекции) что-то вроде:

cts.andQuery([cts.collectionQuery(collections),cts.documentQuery(uri)])
1 голос
/ 05 июня 2019

Для этого может не потребоваться сложный запрос cts:

let collections = xdmp.documentGetCollections('test.json')

if(collections.includes('test')) {
  fn.doc('test.json')
} else {
  "not found"
}

Просто прочитайте коллекции документов с помощью xdmp.documentGetCollections и проверьте, содержит ли она вашу коллекцию.После этого верните его с fn.doc.

...