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"
}
}
]
}
]
}
当我尝试使用管理控制台(过滤器为 filename.json)将此 JSON 作为管道加载时,我收到一条消息“无效输入:找不到可读的 XML 文件:”
管道是否应该始终是 XML?
我能够(在 JavaScript 中)编写并成功执行操作模块。我在 XML 管道中对其进行了测试。我也可以用 JavaScript 编写条件模块吗?
我不确定 MarkLogic 是否提供了一个内置条件模块来识别属性的更改(通过将属性作为参数传递给条件模块)。如果是,您能否指出文档?如果我必须创建自定义条件模块,如何将新旧电话号码传递给模块?条件模块会是什么样子,最好是在 JavaScript 中?
我在 CPF 上找到的大多数文档都是 XML/XQuery。任何指向 JSON/JavaScript CPF 文档的指针都值得赞赏。
提前致谢!