0

全文検索エンジンとしての SOLR に関して、XML ドキュメントのサポートに関するドキュメントを探しています。[1] XPath でのサポートはありますか (XPath 概念を使用して「フィールド」について尋ねるという観点から)? [2] XQuery クエリでのサポートはありますか? [3] 階層サポートはありますか? たとえば、次の XML を取得したとします。

<A>
  <B>kdflsdk</B>
  <C>
    <B>222</B>
  </C>
</A>

C タグ内にある 222 に対してクエリを実行する方法、または B 要素の制限内にある kdflsdk に対してクエリを実行する方法はありますか?

4

2 に答える 2

1

XMLドキュメントのサポートに関するドキュメントを探しています。

[1]を使用してXsltUpdateRequestHandler任意のXMLドキュメントを処理し、DIH XPathEntityProcessor[2]を使用してXMLドキュメントのバッチインデックスを作成することをお勧めします。これらの手法は両方とも十分に文書化されています。初心者の場合、当面のニーズにはwikiページで十分です。

XPathでサポートはありますか(XPathの概念を使用して「フィールド」について質問するという観点から)?XQueryクエリをサポートしていますか?

Solrインデックスの仕組みの基本を掘り下げたいと思うかもしれません[3]...しかし、基本的に、ドキュメントをSolrインデックスに取り込むと、Solrで検索できるようになります。これが、Solrが特定の取り込み形式を持っている理由です[4]。インデックスを作成したら、ソースファイルの構造を忘れてください。

階層をサポートしていますか?たとえば、次のXMLを取得したと仮定します

Solrはこれを暗黙的に処理します。データにインデックスを付けるときは「Solr」と考えてください。データにインデックスを付けると、SolrAPIを使用してクエリを発行します。

Cタグ内にある222でクエリを実行したり、B要素の制限内にあるkdflsdkでクエリを実行したりする方法はありますか?

ここで注意すべき点がいくつかあり
ます。1。Solrインデックスへの取り込み中にXMLファイル形式をフラット化します
。2。SolrはHTTPリクエストを受け入れるため/A/B/C/B、すでに第2レベルのBタグがあるため、別の名前に名前を変更してから発行します。 'kdflsdk'...を操作する第3レベルのBタグの値を取得するための以下のようなHTTPリクエスト。

http://localhost:8983/solr/select?q=B:kdflsdk&fl=CB

Solrにクエリを実行する方法を理解するには、この[5]を読む必要があります。

[1] http://wiki.apache.org/solr/XsltUpdateRequestHandler
[2] http://wiki.apache.org/solr/DataImportHandler#XPathEntityProcessor
[3] http://www.solrtutorial.com/solr-in -5-minutes.html
[4] http://wiki.apache.org/solr/UpdateXmlMessages
[5] http://wiki.apache.org/solr/SolrQuerySyntax

于 2013-01-01T17:22:39.660 に答える
0

DIH for XMLを使用してデータのインデックスを作成し、Solr を使用してフィールドを検索できます。

于 2012-12-31T10:52:31.727 に答える