Поддержка предикатов XPath в Solr - PullRequest
0 голосов
/ 08 октября 2018

Я пытаюсь импортировать некоторые XML-документы в solr 7.5, используя XPath.Сопоставление простого узла XML с полем solr работает нормально.Моя проблема состоит в том, чтобы выбрать определенный элемент в зависимости от значения дочернего элемента.

В приведенном выше примере у меня есть документ, который содержит данные из 2 файлов, и мне нравится извлекать имя файла изображения, гдеtype=original.

<document>
    <files>
        <file>
          <type>original</type>
          <local_path>original.jpg</local_path>
        </file>
        <file>
          <type>copy</type>
          <local_path>copy.jpg</local_path>
        </file>
    </files>
</document>

Строка My Solr Data Import Handler (DIH) выглядит следующим образом:

<field column="originalPic" xpath="/document/files/file[type = 'original']/local_path"/>

Выражение XPath отлично работает на pathtester.com или что-то в этом роде, новероятно, он не извлекает значение во время импорта DIH, что приводит к ошибке в solr.log: missing required field: originalPic

...