MarkLogic версия: 9.0-6.2
Все документы в нашей БД - это JSON, и мы используем Javascript для манипулирования данными. Я пытаюсь создать конвейер, который идентифицирует каждый раз, когда телефонный номер в документе JSON обновляется (используя модуль условия), а затем запускает модуль действия. Пока что я получил следующий код.
{
"pipeline-name": "CPF async Test",
"pipeline-description": "CPF Test",
"success-action": {
"module": "/MarkLogic/cpf/actions/success-action.xqy"
},
"failure-action": {
"module": "/marklogic/cpf/actions/failure-action.xqy"
},
"status-transition": [
{
"annotation": "",
"status": "updated",
"on-success": "http://marklogic.com/states/done",
"on-failure": "http://marklogic.com/states/error",
"execute": [
{
"condition": {
"module": ???
},
"action": {
"module": "sleepTest.sjs"
}
}
]
}
]
}
Когда я пытался загрузить этот JSON как конвейер, используя консоль администратора (с фильтром в виде filename.json), я получаю сообщение «Неверный ввод: не найдены читаемые файлы XML:»
Должен ли конвейер всегда быть XML?
Я могу написать (на JavaScript) и успешно выполнить модуль действия. Я проверил это в рамках конвейера XML. Могу ли я написать условный модуль на JavaScript тоже?
Я не уверен, существует ли встроенный модуль условий, предоставляемый MarkLogic, который идентифицирует изменения свойства (путем передачи свойства в качестве параметра в модуль условий). Если да, не могли бы вы указать на документацию? Если мне нужно создать пользовательский модуль условий, как я могу передать старые и новые номера телефонов в модуль? Как бы выглядел модуль условий, желательно в JavaScript?
Большая часть документации, которую я нашел на CPF, - это XML / XQuery. Любые указатели на JSON / JavaScript CPF документацию приветствуются.
Заранее спасибо!