Marklogic 使用RESTAPI搜索搜索文档的元数据属性(上次修改)
我想使用RESTAPI搜索搜索元数据属性“上次修改”。我有在查询控制台中工作的等效cts搜索 正在工作的qconsole中的CTS查询-Marklogic 使用RESTAPI搜索搜索文档的元数据属性(上次修改),marklogic,marklogic-9,Marklogic,Marklogic 9,我想使用RESTAPI搜索搜索元数据属性“上次修改”。我有在查询控制台中工作的等效cts搜索 正在工作的qconsole中的CTS查询- cts.search(cts.andQuery([ cts.propertiesFragmentQuery( cts.elementRangeQuery( xs.QName('prop:last-modified'),'>', "2020-04-07T10:22:55-05:00")) ]))
cts.search(cts.andQuery([
cts.propertiesFragmentQuery(
cts.elementRangeQuery(
xs.QName('prop:last-modified'),'>',
"2020-04-07T10:22:55-05:00"))
]))
下面是我用来执行的RESTAPI搜索结构化查询
我得到以下信息
错误“状态代码”:500,
“状态”:“内部服务器错误”,
“messageCode”:“内部错误”,
“消息”:“XDMP-QUERYNODE:cts:query(对象节点{\”和查询\“:对象节点{\”查询\“:数组节点{对象节点{\”属性碎片查询\“:对象节点{…}})--查询元素对象节点{\“elementRangeQuery\”:对象节点{…}包含未知子节点。有关详细信息,请参阅MarkLogic server错误日志。”
我在查询中遗漏了什么,或者是否有其他方法可以从RESTAPI访问属性
谢谢 该错误表示cts.query的JSON序列化无效 确定正确序列化的一种方法是在QueryConsole中工作:
ctsquery
键的值XDMP-QUERYNODE
错误
希望有帮助
{
"search": {
"ctsquery": {
"andQuery": {
"queries": [
{
"propertiesFragmentQuery": {
"elementRangeQuery": {
"property": [
"xsQName('prop:last-modified')"
],
"operator": ">",
"value": [
{
"type": "dateTime",
"val": "2020-04-07T10:22:55-05:00"
}
]
}
}
}
]
}
}
}
}