0
我在collection.xconf以下的Lucene索引Lucene搜索
<lucene>
<text qname="tei:text" />
<text qname="tei:summary"/>
<text qname="tei:placeName"/>
</lucene>
然后我的XQuery代码,使下面的查询:
let $query-results := ($documents[.//tei:text[ft:query(., $q)]],
$documents[.//tei:summary[ft:query(., $q)]],
$documents[.//tei:placeName[ft:query(., $q)]])
现在我想,说,搜索:
-pommern erik
现在都在查询结果中的文档有字“埃里克”,而不是 字在地的内容,“Pommern酒店”:文本标签。
但一些结果必须在 地既“埃里克”和“Pommern酒店”:总结标签。
如何让我的XPath,以便用户可以在所有三个标签 使用Lucene语法搜索(这样三个标签的内容显示为 一个文本)?
谢谢你的答案。不幸的是这太限制了。从该查询结果仅返回与总结和文字都“埃里克”的结果。 我想是把三个标记的内容,就像是一个标签的内容查询。例如: $ documents [ft:query(。tei:text + .//tei:summary + .//tei:placeName,$ q)] – user2728690
建立在Adam的答案和您的回复上,试试这个:' $ documents [ft:query(.// tei:text,$ q)或ft:query(.// tei:summary,$ q)或ft:query(。tei:placeName,$ q)]' – joewiz
上面的or查询返回618个结果,问题中的结果返回864个结果。但不幸的是,这两个结果仍然包含摘要中带有“pommern”一词的结果。现在的文本标签的(工作),因为其他的结果会混淆用户:我们决定只在地的内容搜索。 – user2728690