是否可以在服务器端 javascript(通过 cts.*
或 jsearch.*
)或 Node.js API 上执行结构化查询?
根据文档 ( https://docs.marklogic.com/guide/search-dev/structured-query#id_47703 ),这可能只能通过 XQuery、Java 或 REST API 实现。
我的印象是 XQuery 和服务器端 javascript 实现具有相同的功能。
最佳答案
同等的表达能力并不一定意味着相同的界面。
结构化查询主要用于 REST、Java 和 Node.js 客户端 API。使用 Node.js 客户端 API queryBuilder 接口(interface)构建结构化查询。请参阅http://docs.marklogic.com/guide/node-dev/search#id_28266 .
或者,如果您出于某种原因不想使用构建器,则可以滚动自己的包含结构化查询的组合查询。请参阅http://docs.marklogic.com/guide/node-dev/search#id_57610 .
在服务器端,推荐的JS搜索API是jsearch。请参阅http://docs.marklogic.com/js/jsearch和 http://docs.marklogic.com/guide/search-dev/javascript#chapter 。 Jsearch 在 cts:queries 上运行。结构化查询实际上只是 cts:query 上的一个薄层。
可以从 JS 调用 search:resolve(如 search.resolve),就像任何其他 XQuery 库一样,但它是以 XML 为中心的,因此从 JS 使用它不是很方便。
关于javascript - 服务器端 JavaScript 或 Node.js 中的 Marklogic 结构化查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45838432/