我在MarkLogic中有一个xml文档,
文档1- URI-/ test1 / wf1
<?xml version="1.0" encoding="UTF-8"?>
<workflow>
<workflowName>Oracle_RMS_9_RMS_9_Pos_and_Allocations_WF</workflowName>
<workflowDescription>
</workflowDescription>
<endPointName>Oracle RMS 9_RMS 9 Pos and Allocations</endPointName>
<createdDttm>2019-06-11 00:21:26.2121Z</createdDttm>
<modifiedDttm>2019-08-28T04:37:19.764Z</modifiedDttm>
</workflow>
我的要求是仅在元素值与大小写忽略匹配时获取文档uris。
cts:uris((),(),cts:and-query((cts:collection-query("workflow"),cts:element-value-query(xs:QName("endPointName"),"Oracle RMS 9 RMS 9 POs and Allocations",("case-insensitive","whitespace-sensitive")))))
我正在执行上述查询,以获取xs:QName("endPointName")
的文档URI匹配值,在这里我期望为空序列,因为没有匹配的文档,但是我将/ test / wf1作为查询结果。
请指导我解决此问题。
答案 0 :(得分:0)
您是否尝试在不区分大小写的查询中使用“精确”选项,“对空格敏感”。这样可以解决问题。
希望这会有所帮助。
致谢。
答案 1 :(得分:0)
从cts:element-value-query上的documentation:
如果“标点敏感”和“不标点敏感”都不是 目前,$ text用于确定标点符号的敏感性。如果$ text 不包含标点符号,它指定“不标点符号”。如果 $ text包含标点符号,它指定“标点符号敏感”。
我希望您需要指定选项“标点符号敏感”,因为搜索字符串中没有标点符号。