Fessの検索結果に、ログインしたユーザーがタグを付ける機能が追加されました。「あとで読む」「提案資料」のような名前で文書を整理し、タグから検索結果を絞り込めます。
タグ付けを有効にする
初期状態では無効です。fess_config.propertiesに次の設定を行い、設定変更を反映してから利用します。
user.tag.enabled=true
user.tag.name.max.length=50
user.tag.max.document.tags=100
タグ名の長さは初期値で50、1文書に付けられるタグ数は100です。画面の対応は同梱のbootstrapテーマです。追加・削除にはログインが必要で、アクセストークンだけでは代替できません。検索で閲覧できない文書にはタグを付けられません。
タグをラベルとして管理する
タグは種類がtagのラベルとして保存します。同じ名前を追加すると同じタグを利用し、追加したユーザーをそのタグのパーミッションに加えます。名前はNFKC正規化と空白の整理を行い、制御文字などを含む名前を拒否します。
管理画面のラベル設定から、グループやロールへ共有できます。タグの対象はURLの完全一致で管理するため、再クロールやインデックスの再構築でもタグ情報を保持できます。
ユーザーの削除操作は、自分をタグのパーミッションから外す動作です。別のユーザーやグループ、ロールが残っているときは、タグそのものと対象文書の関連は残ります。
移行と共有時の注意
既存の文書インデックスにはtagをkeyword型で追加するか、再インデックスを行ってから有効化してください。自動の動的マッピングに任せると、絞り込みに適した型にならない可能性があります。
タグもラベル取得件数の上限page.labeltype.max.fetch.sizeに含まれます。初期値は1000で、上限に達すると新しいタグを作成できません。管理画面でタグを変更した場合は、再クロールかラベル更新ジョブを実行するまで文書側の値が残ります。
表示するタグやファセットは呼び出したユーザーのラベル権限で絞ります。ただし、名前から算出した値を指定して検索すると、表示権限のないタグについても自分が閲覧できる文書との関連を推測できる制限があります。機密情報の分類をタグ名だけで保護する運用には注意が必要です。
利用できるバージョン
Fess 15.9.0から使えるようになる予定です。