Commons Digester: Как создавать сложные запросы на основе XML с помощью Apache Lucene?
Мне нужно построить запрос на основе XML с Apache Lucene и Commons Digester.
Мои документы имеют этот формат:
<doc>
<id>361492799</id>
<title>Dan1</title>
<description>We had another Flickr meetup in Rochester, the biggest that Ive been to. 12 people showed up.Da, he was to the right.</description>
<time>18934934</time>
<tags>flickrmeetup rochester dan totheright 200701</tags>
<geo><latitude>324234</latitude><longitude>28342349</longitude></geo>
<event>135961</event>
</doc>
И запрос на самом деле также является документом, который мне нужно сравнить со всей коллекцией. Каждый атрибут имеет различную метрику сходства. Например, "описание" имеет косинусное сходство tf-idf. "Время" - это просто разница, а "широта" + "долгота" сравниваются с использованием расстояния хаверсин.
Пока что я выполнял поиск только с помощью простых текстовых запросов, таких как "word1 word2". Как я могу построить более сложные запросы вместо этого?
Спасибо
2 ответа
Мне нужно построить запрос на основе XML с Apache Lucene и Commons Digester.
Эта статья должна помочь вам начать
для анализа содержимого из XML, посмотрите на TIKA
Apache Tika - инструментарий анализа контента
Apache Tika™ - это набор инструментов для обнаружения и извлечения метаданных и структурированного текстового содержимого из различных документов с использованием существующих библиотек синтаксического анализатора.
Вы смотрели на SOLR? SOLR - это, в основном, Lucene+ целый сервер запросов и индексации на основе XML.