ファセット検索
目的・用途
本機能は、ユーザーがアクセス制限やデータタイプなどの検索条件を選択して、アイテムを絞り込む際に用いる機能である。
複数の項目を選択して絞り込むことで、目的のアイテムに効率よく辿り着くことができる。
利用方法
トップページ画面の[Top]タブにあるインデックスツリーエリアの下にあるファセット検索エリアを利用する。
ファセット検索の項目名をクリックまたは対応するチェックボックスをオンにした際に、当該項目で検索を行う。
利用可能なロール
ロール | システム 管理者 |
リポジトリ 管理者 |
コミュニティ 管理者 |
登録ユーザー | 一般ユーザー | ゲスト (未ログイン) |
---|---|---|---|---|---|---|
利用可否 | ○ | ○ | ○ | ○ | ○ | ○ |
機能内容
ファセット検索を表示する設定にしている場合、トップページ画面[トップ(Top)]タブ内のインデックスツリー(Index Tree)エリアの下に、ファセット検索エリアを表示する。
ファセット検索の表示設定は【Administration > 設定(Setting) > 検索設定(Search)画面】の[インデックスツリー/ファセット表示設定]エリアでの設定に応じて表示される。設定についてはADMIN-14-11: 検索設定を参照。
- ファセット検索のデフォルト表示設定:非表示
ファセット検索機能の対象はアイテム一覧画面のみとする。
ファセット検索の対象とする項目は【Administration > 設定(Setting) > ファセット検索 画面】で設定する。設定についてはADMIN-14-12: ファセット検索を参照。
メインコンテンツ」ウィジェットの[トップ(Top)]タブに表示されるファセット検索エリアの表示順はファセット項目の登録順(ID順)とする。
デフォルト設定で表示されるのは以下の検索項目とする。
データの言語(Data Language)
アクセス制限(Access)
地域(Location)
時間的範囲(Temporal)
トピック(Topic)
配布者(Distributor)
データタイプ(Data Type)
ファセット検索の対象項目のマッピングに対応するデータを持つ登録アイテムがある場合、各項目のプルダウンに選択肢と、各選択肢に該当する登録アイテム数を表示する。ただし、表示される登録アイテムの数は、ユーザーのロールの閲覧範囲内の登録アイテム数をカウントしたものとなる。
- ファセット検索の対象項目のマッピングに対応するデータを持つ登録アイテムがない場合、検索対象項目のエリアは表示し、プルダウンの選択肢には「No options」と表示する。
ファセット検索の項目のプルダウンを選択した際に、当該項目で検索を行う。
選択を解除した際にも同様に検索を行う。
ファセット検索を単独で行った場合の検索結果は検索結果エリアに表示する。
簡易検索や詳細検索の検索結果をファセット検索により絞り込むことを可能とする。検索情報はAND条件として検索を実行し、検索結果エリアに結果を表示する。
簡易・詳細検索→ファセット検索:AND条件とした検索が実行される。
ファセット検索→簡易・詳細検索:ファセット検索の条件は反映されない。
インデックス検索とファセット検索を組み合わせてアイテム検索を行うことを可能とする。検索情報はAND条件として検索を実行し、アイテムリストエリアに検索結果を表示する。アイテムリストエリアでの検索結果の表示については、USER-1-3: インデックスリンク検索を参照。
インデックス検索→ファセット検索:AND条件とした検索が実行される。
ファセット検索→インデックス検索:ファセット検索の条件は反映されない。
トップページ画面[トップ]タブ内の検索結果エリアに、選択した項目に当てはまるデータを持つアイテムのリストを表示する。
検索結果エリア
アイテムの検索結果は【Administration > 設定(Setting) > 検索設定(Search)画面】の[検索結果表示設定]の通りに表示される。設定についてはADMIN-14-11: 検索設定を参照。
[エクスポート(Export)]ボタンを表示する。
ボタンを押下すると、一括出力画面に遷移して、アイテムの情報をエクスポートできる。アイテムの一括出力についてはUSER-2-4: アイテム一括出力を参照。アイテム表示の設定エリア
デフォルト値について、設定されている【Administration > 設定(Setting) > 検索設定(Search)画面】の検索結果表示設定エリアから取得する。[表示順](Display Order)プルダウンリスト:検索結果の表示順を選択する。
選択肢は【Administration > 設定(Setting) > 検索設定(Search)画面】での「表示する」リストとする。順序プルダウン:昇順、降順を選択する。
選択肢は「asc, desc」とする。アイテムタイトルがリンク形式で表示される。
リンクをクリックすると、該当アイテム詳細画面に遷移する。
関連モジュール
invenio_records_rest:ファセット検索を実施する
weko_search_ui:検索結果をUIに表示する
weko-react/app-facet-search:weko_searchのjsファイルを生成する
weko_schema_ui:検索用のJPCOARスキーマのマッピングを行う
weko_items_ui
weko_theme
処理概要
- ファセット検索を表示する設定にしている場合、メインコンテンツ」ウィジェットの[トップ(Top)]タブにアクセスすると、インデックスツリーエリアの下に、現在設定されている項目のファセット検索エリアを表示する。
1つのファセット項目の中に表示される件数はconfigファイルで設定される。初期値は以下の通り。
weko/blob/develop/modules/weko-admin/weko_admin/config.py
WEKO_ADMIN_FACET_SEARCH_SETTING_BUCKET_SIZE = 1000JPCOARの索引定義(/weko-schema-ui/weko_schema_ui/mappings/v6/weko/item-v1.0.0.json)にファセット検索用の項目をマッピングする。
ファセット検索の対象項目のマッピングに対応するデータを持つ登録アイテムが存在する場合、当該ファセット項目のプルダウンに選択肢と、各選択肢に該当する登録アイテム数を表示する。
- 現在のファセット検索の対象を「get_facet_search_list」メソッドで取得する。
パス: https://github.com/RCOSDP/weko-react/blob/5a0f077939ebd520294e16ec241c26f78bff5338/app-facet-search/src/App.js#L43
各ファセット項目エリア内のプルダウンに表示されている選択肢を押下することで、選択した内容を検索条件として以下の検索処理を実行する。
「invenio-records-rest」モジュールの「/api/records」APIを呼び出す。
上記のAPIでは、「RECORDS_REST_FACETS[SEARCH_UI_SEARCH_INDEX]」コンフィグを元にマッピング情報を取得し、条件を満たすアイテムを検索する。
各ファセット項目の選択を解除した際にも同様に検索処理を行う。
選択肢を押下した後、メインコンテンツ」ウィジェットの[トップ(Top)]タブに検索結果を表示する。
ファセット検索を単独で行った場合の検索結果は検索結果エリアに表示する。
簡易検索や詳細検索の検索結果をファセット検索により絞り込むことを可能とする。検索情報はAND条件として検索を実行し、検索結果エリアに結果を表示する。
簡易・詳細検索→ファセット検索:AND条件とした検索が実行される。
ファセット検索→簡易・詳細検索:ファセット検索の条件は反映されない。
インデックス検索とファセット検索を組み合わせてアイテム検索を行うことを可能とする。検索情報はAND条件として検索を実行し、アイテムリストエリアに検索結果を表示する。
インデックス検索→ファセット検索:AND条件とした検索が実行される。
ファセット検索→インデックス検索:ファセット検索の条件は反映されない。アイテムリストエリアでの検索結果の表示については、USER-1-3: インデックスリンク検索を参照。
検索結果エリアには、選択した項目に当てはまるデータを持つアイテムのリストを表示する。
検索結果エリアにはエクスポートボタン、検索結果のアイテム一覧、アイテム表示の設定エリア、ページングナビゲーションを表示する。
アイテム表示の設定エリアにはアイテムの表示順の現在の設定を表示する。
最初に検索した際は、アイテム表示に関する設定のデフォルト値として、【Administration > 設定(Setting) > 検索設定(Search)画面】での[検索結果表示設定]エリアで設定された値を取得し、取得した値に従って表示する。
[エクスポート(Export)]ボタンを押下すると一括出力画面に遷移し、アイテムの情報をエクスポートできる。アイテムの一括出力についてはUSER-2-4: アイテム一括出力を参照。
アイテムタイトルのリンクをクリックすると、該当アイテムの詳細画面に遷移する。
アイテムの表示順のプルダウンを選択すると、検索結果エリアでのアイテムの表示を選択した表示順に変更する処理を行う。
更新履歴
日付 | GitHubコミットID | 更新内容 |
---|---|---|
|
5401f42b6db01103bd1ad4a948025dda1dadb6ed | 初版作成 |
|
353ba1deb094af5056a58bb40f07596b8e95a562 | v0.9.22対応 |