MarkLogic搜索:search()不搜索特定的TEI元素

问题描述 投票:1回答:2

我有一个包含TEI XML文档的MarkLogic数据库。我构建了一个应用程序来搜索和显示这些文档。在测试过程中,我们发现在搜索时找不到某些关键字并缩小问题范围,以便意识到未找到的关键字位于以下元素中:

<foreign xml:lang="lat">unio cum ipso</foreign>

搜索拉丁短语“unio cum ipso”会返回零结果。我认为它与@xml:lang有关,但我想知道是否有人遇到类似问题以及他们是如何解决的。谢谢!

xml marklogic marklogic-8 tei
2个回答
3
投票

如果您正在执行词干搜索(默认),它将是语言敏感的,并将使用数据库中的默认语言,除非另有说明。如果要进行跨语言搜索,请使用unstemmed选项。


0
投票

感谢@mholstege和@Wagner Michael我能够解决这个问题。问题是我们使用@xml:lang来指定多种语言而没有MarkLogic许可证密钥,除了默认的英语之外的其他任何东西。如果您没有相应的许可证密钥,Marklogic会将任何@xml:lang值视为通用语言,因此在数据库中搜索这些非英语术语的任何关键字都不会返回任何匹配项。

请参阅Marklogic's Search Developer's Guide, Ch. 28以获得比我能给出的更好的解释。 :)

© www.soinside.com 2019 - 2024. All rights reserved.