問題
- キーワード検索の場合、 "記述文字列", の一部のみを使用すると、検索対象のファイルが検索結果に表示されません。 ただし、名前欄に正確な文字列を入力すると、そのファイルが検索結果に表示されます。
-
例-
1) D1 の文書をアップロードし、 ABC1000A のような記述をする。
2) ABC1000 を使って、文書 D1 を検索する。
3) 文書 D1 は、検索結果の一部として表示されない。
3) ドキュメントを編集し、名前に ABC1000A を使用して保存します。
4) ステップ2を繰り返す ドキュメント D1 が検索結果に表示されるようになります。
Environment
- DXP 7.3
- DXP 7.4
解決策
- これは期待される行動です。
追加情報
-
文書の説明文やタイトル欄を解析する方法は、英語アナライザーを使用します。 ABC1000Aのような非英語を解析しようとすると、"ABC1000A "という1つのトークンとして保持する以上のことができない。 このため、標準的なマッチクエリを使用した場合、そのトークンに完全に一致するものだけが検索で返すことができます。
Liferayは、ドキュメント内のインデックスされたフィールドのほとんどに標準マッチクエリを使用しています。 しかし、重要度が高いと思われるフィールドについては、プレフィックスマッチクエリを追加して、さらに結果を収集することがあります。
タイトルとユーザーフィールドがその例です。 プレフィックスマッチクエリは、用語の先頭でマッチングしようとするため、「ABC1000」を検索する際に「ABC1000A」とマッチします。 (このため、タイトルが "ABC1000A "の場合、"ABC1000 "は結果を返します。 - 検索バーの設定について、詳しくはこちらをご覧ください。