如何通过XCC搜索与MarkLogic中的一系列条件匹配的节点(文档)

时间:2015-01-26 16:28:38

标签: marklogic

我是MarkLogic的新手,所以请帮我找一个解决方案。

我的XML数据被导入MarkLogic,我想使用XCC查找具有特定范围条件的文档(节点)。 我在搜索命令下运行,但收到​​错误。 请告诉我我错了,并告诉我解决方案。 谢谢。

cts:search(fn:doc(),
  cts:and-query(cts:element-range-query(xs:QName("RequestDatetime"), ">=", "20141102170000"), 
  cts:element-range-query(xs:QName("RequestDatetime"), "<=", "20141103170000"))

错误内容是

[1.0-ml] XDMP-UNEXPECTED: (err:XPST0003) Unexpected token syntax error, unexpected UnterminatedComment_, expecting Function30_ or Percent_

嗨wst和其他

我尝试创建元素范围索引,但似乎没有工作。 我的数据包含许多XML文件,格式如下。 现在,如果我想为 RequestDatetime 元素搜索范围,我该怎么办?

谢谢

<?xml version="1.0" encoding="UTF-8"?>
<Request>
    <RequestDatetime>
        20141102174108
    </RequestDatetime>
    <RemoteHostName>
        xxxx.xxxx.xxxx.xxxx
    </RemoteHostName>
    <OrgRequest>
       GET http://xxxx/ HTTP/1.1
    </OrgRequest>
    <Protocol>
        xxxx
    </Protocol>
    <WebServer>
        xxxxxxxxx
    </WebServer>
    <Request>
        xxxxxxxxxxx
    </Request>
    <StatusCode>
    xxxxxxx
    </StatusCode>
    <BytesSent>
        Xxxxxxxxxx
    </BytesSent>
    <UserAgent>
    </UserAgent>
    <RemoteLogName>
    </RemoteLogName>
    <Cookie>
    </Cookie>
    <Referer>
    </Referer>
    <UserName>
    </UserName>
</Request>

1 个答案:

答案 0 :(得分:2)

传递给cts:queries的{​​{1}}是一个序列,因此需要将它们括在parens中(与cts:and-query不同):

fn:concat()