WITH SNIPPET
検索の強調表示とスニペットは、次の項目種別から生成されます。
- メール
- テキスト
- テキストエリア
- ロングテキストエリア
- リッチテキストエリア
検索の強調表示とスニペットは、次の項目種別からは生成されません。
- チェックボックス
- 通貨
- 日付
- 日付/時間
- ファイル
- 数式
- 参照関係
- 数値
- パーセント
- 電話
- 選択リスト
- 選択リスト (複数選択)
- URL
例
1FIND {San Francisco} IN ALL FIELDS RETURNING KnowledgeArticleVersion(id, title WHERE PublishStatus = 'Online' AND Language = 'en_US') WITH
2 SNIPPET (target_length=120)検索語、定義済みシノニム、および検索語を語幹処理した形式がスニペットの結果のコンテキスト内で <em> タグにより強調表示されます。
例
1[ {
2 "attributes" : {
3 "type" : "KnowledgeArticleVersion",
4 "url" : "/services/data/v32.0/sobjects/KnowledgeArticleVersion/kaKD00000000001MAA"
5 },
6 "Id" : "kaKD00000000001MAA"
7 "Title" : "San Francisco"
8 "Summary" : "City and County of San Francisco"
9 "snippet.text" : "<em>San</em> <em>Francisco</em>, officially the City and County of <em>San</em> <em>Francisco</em> is the... City and County of <em>San</em> <em>Fran</em>"
10 "snippet.whole.Title" : "<em>San</em> <em>Francisco</em>"
11}, {
12 "attributes" : {
13 "type" : "KnowledgeArticleVersion",
14 "url" : "/services/data/v32.0/sobjects/KnowledgeArticleVersion/kaBD0000000007DMAQ"
15 },
16 "Id" : "kaBD0000000007DMAQ",
17 "Title" : "San Francisco Bay Area",
18 "Summary" : "Nine county metropolitan area",
19 "snippet.text" : "The <em>SF</em> Bay Area, commonly known as the Bay Area, is a populated region that"
20 "snippet.whole.Title" : "<em>San</em> <em>Francisco</em> Bay Area"
21}, {
22 "attributes" : {
23 "type" : "KnowledgeArticleVersion",
24 "url" : "/services/data/v32.0/sobjects/KnowledgeArticleVersion/ka3D0000000042OIAQ"
25 },
26 "Id" : "ka3D0000000042OIAQ",
27 "Title" : "California",
28 "Summary" : "State of California",
29 "snippet.text" : "(Greater Los Angeles area and <em>San</em> <em>Francisco</em> Bay Area, respectively), and eight of the nation’s 50 most"
30 } ]使用方法
WITH SNIPPET 句を使用する SOSL ステートメントには、RETURNING ObjectTypeName 句に PublishStatus 項目で絞り込みを行う WHERE 句を指定して使用することをお勧めします。
- サフィックス __kav の付いた記事タイプ名 (特定の記事タイプを検索する場合)。
- KnowledgeArticleVersion (すべての記事タイプを検索する場合)。
WITH SNIPPET が指定された検索に含まれるその他のオブジェクトは、スニペットを返しません。
スニペットは、ワイルドカードが含まれる検索語については表示されません。
スニペットを返さない検索 (検索で記事を返さない場合、検索語にワイルドカードが含まれる場合、ユーザにスニペットが含まれる項目へのアクセス権がない場合など) に WITH SNIPPET 句を追加しても、結果にスニペットは表示されません。
エスケープされた HTML タグ
HTML タグ内で一致した検索語がスニペットで返されると、HTML タグはエスケープされ、一致した検索語が結果内で強調表示されます。
例
1For more information, visit <a href='http://salesforce.com'>salesforce.com</a>対象スニペットの長さ
デフォルトでは、各スニペットには最大で約 300 文字が表示されます。これは、標準のブラウザウィンドウ表示では通常 3 行のテキストに相当します。
スニペットは、統計的に有意ではない差異範囲内で対象の長さまでの検索語が含まれるテキストの、1 つ以上のフラグメントで構成されます。返されたスニペットに複数のテキストフラグメントが含まれる場合 (複数項目内に一致がある場合など)、対象の長さは、返されるフラグメントすべての最大合計長になります。
対象の長さに別の値を指定するには、省略可能な target_length パラメータを WITH SNIPPET 句に追加します。対象の長さは、50 ~ 1,000 文字で指定できます。
例
1FIND {San Francisco} IN ALL FIELDS RETURNING KnowledgeArticleVersion(id, title WHERE PublishStatus = 'Online' AND Language = 'en_US') WITH
2 SNIPPET(target_length=120)