MarkLogic search: search () не ищет определенный элемент TEI - PullRequest
0 голосов
/ 21 февраля 2019

У меня есть база данных MarkLogic, содержащая документы TEI XML.Я построил приложение для поиска и отображения этих документов.Во время тестирования мы обнаружили, что некоторые ключевые слова не были найдены при поиске, и сузили проблему, чтобы понять, что ключевые слова, которые не были найдены, находятся в следующем элементе:

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

Поиск латинской фразы"unio cum ipso" возвращает ноль результатов.Я думаю, что это как-то связано с @xml: lang, но мне интересно, сталкивался ли кто-нибудь с подобной проблемой и как они ее решили.Спасибо!

Ответы [ 2 ]

0 голосов
/ 22 февраля 2019

Благодаря @mholstege и @Wagner Michael я смог решить эту проблему.Проблема заключалась в том, что мы использовали @xml: lang для указания нескольких языков, не имея лицензионного ключа MarkLogic для чего-либо, кроме английского по умолчанию.Marklogic рассматривает любые значения @xml: lang как общий язык, если у вас нет подходящего лицензионного ключа, поэтому при любом поиске в базе данных по ключевым словам этих неанглийских терминов совпадений не будет.

См. Руководство разработчика по поиску Marklogic, гл.28 для лучшего объяснения, чем я могу дать.:)

0 голосов
/ 21 февраля 2019

Если вы выполняете поиск по стволу (по умолчанию), он будет зависеть от языка и будет использовать язык по умолчанию из базы данных, если не указано иное.Если вы хотите выполнить поиск на нескольких языках, используйте опцию unstemmed.

...