SolrException: в документе отсутствует обязательное поле uniqueKey: идентификатор от Solr с использованием файла формата RDF

Когда я пытался выполнить индексацию с использованием Solr, я получаю исключение "В документе отсутствует обязательное поле uniqueKey: id". Я посмотрел на файл schema.xml в папке Solr и обнаружил, что есть тег, как показано ниже,

<field name="id" type="string" indexed="true" stored="true" />
<uniqueKey>id</uniqueKey>

Я просмотрел свой rdf-файл и пытался найти любое определенное там поле идентификатора, но, к сожалению, поле идентификатора отсутствует. Я не уверен, что является уникальным полем в файле формата RDF, так что я могу заменить имя поля "id" на то, которое уникально присутствует в файле rdf.

Любая помощь, пожалуйста?

1 ответ

Решение

Похоже, вы новичок в rdf, поэтому я настоятельно рекомендую вам ознакомиться с W3C RDF Primer здесь. Однако, тем временем вы должны понимать, что каждый ресурс в формате rdf указан в виде "тройки". Каждый из этих ресурсов идентифицируется уникальным URI. Обычно этот идентификатор выглядит так <rdf:Description rdf:about="some URI" > *Resource triples* </rdf:Description>
Длинное и короткое то, что уникальный идентификатор, который вы ищете, задается этими URI.
Примечание: это становится немного сложнее при работе с пустыми узлами, поэтому, пожалуйста, посмотрите на учебник по rdf.

Другие вопросы по тегам