MarkLogic搜索:搜索不返回片段

时间:2013-06-24 22:36:53

标签: search marklogic

我正在MarkLogic数据库上执行search:search。我可以搜索术语“松果”并使用片段返回297个结果。我可以搜索“ city:Vancouver ”并使用片段返回83个结果。查询“松果或城市:温哥华”会使用片段返回374个结果。但是,查询“松果和城市:温哥华”会返回6个结果的计数,但没有结果元素,也没有片段。知道为什么我没有得到结果文本吗?

谢谢! 拉维哈尔

1 个答案:

答案 0 :(得分:0)

我似乎找到了问题。

搜索的xml如下所示:

<lecture objectType="lecture">
    <city>Vancouver</city>
    <state>British Columbia</state>
    <country>Canada</country>
    <formattedTranscript>
        <body class="lecture-transcript" xmlns="http://www.w3.org/1999/xhtml">
        ...

城市约束如下:

<constraint name="city">
    <range type="xs:string" facet="true">
        <element ns="" name="city"/>
        <facet-option>frequency-order</facet-option>
        <facet-option>descending</facet-option>
    </range>
</constraint>"

我在$ options声明中有以下声明:

<searchable-expression>
    //(formattedTranscript|title|city|state|country|objectDate)
</searchable-expression>

当我接受此声明时,搜索会按预期返回结果。我很好奇为什么searchable-expression语句会破坏搜索结果。

感谢大家的评论。