次のような、名前空間を利用するいくつかの XML ドキュメントにインデックスを付ける必要があります。
<pm:Kroot>
<pm:root>
<pm:meta>
<dc:id xmlns:dc="http://purl.org/dc/elements/1.1/">1</dc:id>
<dc:source>
<dc:source>
<pm:link pm:description="Tele" pm:source="8326"/>
</dc:source>
</dc:source>
</pm:meta>
</pm:root>
</pm:Kroot>
以下の DataImport を使用すると、Solr は ID を取得できますが、属性値のインデックス作成に失敗します。
<dataConfig>
<dataSource type="FileDataSource" encoding="UTF-8" />
<document>
<entity name="article"
url="/sample.xml"
processor="XPathEntityProcessor"
stream="true"
forEach="/Kroot/root" >
<field column="id" xpath="/Kroot/root/meta/id" />
<field column="news_id" xpath="/Kroot/root/meta/source/source/link/@source" />
<field column="news_name" xpath="/Kroot/root/meta/source/source/link/@description" />
</entity>
</document>
XML ファイルから属性の名前空間を削除することで、Solr はすべてのデータのインデックスを管理します! 現在、解決策を探していますが、この動作の説明が見つかりません。Solr wiki によると、名前空間の場合、私と同じように、名前空間を使用せずに属性名のみを使用する必要があります。私はSolr 4.1 btwを使用しています。