Marklogic 使用RESTAPI搜索搜索文档的元数据属性(上次修改)

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")) ]))

我想使用RESTAPI搜索搜索元数据属性“上次修改”。我有在查询控制台中工作的等效cts搜索

正在工作的qconsole中的CTS查询-

  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中工作:

  • 编写一个cts.search()返回cts.query()的预期结果
  • 将cts.query()包装在xdmp.toJSON()中,以生成cts.query的序列化对象
  • 使用序列化对象作为有效负载中
    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"
                                        }
                                    ]
                                }
                            }
                        }
                    ]
                }
            }
        }
    }