配置ファセット検索¶
小平面原理¶
ファセット検索は,検索を容易にフィルタリングする方法を提供する.
2つのタイプの面があります
簡単な面(値リストのみ)
階層的には(値のクラス木),関係を持つシソーラスが必要である.
検索時の内線応答¶
検索を実行する際に resultType
パラメータは返す面の組を定義する.
内線応答は以下のとおりである.
<response from="1" to="20" selected="0">
<summary count="134" type="local">
<dimension name="type" label="types">
<category value="dataset" label="Dataset" count="86"/>
<category value="series" label="Series" count="41"/>
<category value="service" label="Service" count="7"/>
</dimension>
<dimension name="denominator" label="denominators">
<category value="200000" label="200000" count="1"/>
<category value="50000" label="50000" count="1"/>
<category value="25000" label="25000" count="1"/>
<category value="15000" label="15000" count="4"/>
<category value="10000" label="10000" count="1"/>
<category value="5000" label="5000" count="3"/>
<category value="2000" label="2000" count="12"/>
</dimension>
<dimension name="resolution" label="resolutions">
<category value="5 m" label="5 m" count="10"/>
<category value="1 m" label="1 m" count="3"/>
<category value="0.20 m" label="0.20 m" count="1"/>
</dimension>
</summary>
ユーザは以下の内容を追加することでJSON応答を検索することができる _content_type=json
パラメータリストにあります。
配置¶
面配置は中手動で行っております WEB-INF/config-summary.xml
それがそうです。変更後,アプリケーションを停止し,インデックスを削除し,アプリケーションを起動してインデックスを完全に再構成する.
アスペクトはインデックスのフィールドに基づいている(参照 構成検索フィールド )。
索引付けのあらゆる側面が facets
元素です。Facets要素は、インデックス付けすべき態様と、facet要素上の属性をどのように使用してインデックスするべきかを示しており、以下のようになる。
名称:面の名称
IndexKey:アスペクトに使用するインデックスフィールドの名前
Label:返された要約におけるアスペクトのためのラベル
分類器:Spring beanへの参照は、インデックスフィールドの額面を決定するために使用されるべきである。階層的な側面に用いられていますBeanはorg.fao.kernel.search.class.fier.分類器インタフェースを実現しなければならない.分類器インタフェースは,インデックスすべきフィールドの値を用いた分類器としてデフォルトである.
現地化:TODO文書
例えば。簡単な面では
<facet name="denominator"
indexKey="denominator"
label="denominators"/>
例えば。シソーラスに基づく階層化に用いる.
モザイク面を定義する
<facet name="gemetKeyword"
label="gemetKeywords"
indexKey="keyword"
classifier="gemetKeywordClassifier"/>
分類器を中に登録する
WEB-INF/config-spring-geonetwork.xml
<bean id="gemetKeywordClassifier"
class="org.fao.geonet.kernel.search.classifier.TermLabel" lazy-init="true">
<constructor-arg name="finder" ref="ThesaurusManager"/>
<constructor-arg name="conceptScheme" value="http://geonetwork-opensource.org/gemet"/>
<constructor-arg name="langCode" value="eng"/>
</bean>
アスペクトを要約タイプに追加する(以下参照)
要約タイプごとにどのように構築およびフォーマットすべきかについての要約を定義した summaryTypes
元素です。以下のコマンドを使用して新しいモザイクセットを作成します。
<summaryTypes>
<summaryType name="details" format="DIMENSION">
Formatプロパティをに設定 DIMENSION
上位次元タグとサブカテゴリタグを持つ優先フォーマットであり,階層的側面に適している.それはまたレベルの側面を支持する。
バージョン the で非推奨: フォーマット FACET_NAME
(デフォルトのまま)1つのレベルのみを使用してファセット要約要素を生成するために使用される。このモデルの使用は推奨されていません。
♪the summaryTypes
要素は複数含まれている summaryType
要素は、各要素が、サービス構成のために構成され得る態様要約を定義する。個々 summaryType
要素は面のリストを含む. (item
)戻り、およびそれらがどのようにフォーマットされるべきかは、以下のようになる。
Facet:上で定義されたfacetの名前
(オプション)sortBy:ファセットのソート。デフォルトでカウントする。
(オプション)sortOrder:ascまたはdesc。デフォルト値は子孫である.
Max:ファセットのために返す値数.デフォルトは10である.
(オプション)深さ:階層的態様の深さが集約されるべきである。デフォルトは1である.
トランスレータ:定義DBトランスレータは,説明表(たとえばカテゴリ)からタグを検索するか,コードリストトランスレータを定義してパターンコードリストファイルからタグを検索する.
例えば。カテゴリ上の
<item dimension="category"
plural="categories"
indexKey="_cat"
max="45"
translator="db:org.fao.geonet.repository.MetadataCategoryRepository:findOneByName"/>
グループに使われています
<item dimension="groupOwner"
plural="groupOwners"
indexKey="_groupOwner"
max="99"
sortBy="value"
translator="db:org.fao.geonet.repository.GroupRepository:findOne:int"/>