対話Webサービス・リクエストのSearchAdjustmentConfigタイプを使用して、問合せで自動スペル修正および提案される修正(もしかして)の情報を取得できます。
データ・ドメインでスペルが有効になっており、対話Webサービス・レスポンスにスペル修正とスペル提案(DYM)に関する補足情報を含める場合は、SearchAdjustmentConfigタイプが必要です。これが含まれる場合、スペル修正やDYMの提案は、レスポンスの一部として返されます。
スペルが有効になっている場合、SearchAdjustmentConfigタイプが含まれない場合でも、スペルの自動修正が行われることを認識しておくことが重要です。ただし、スペル修正が行われても、スペル修正とDYMの提案はレスポンスで返されません。
<SearchAdjustmentConfig Id="?"> <StateName>?</StateName> </SearchAdjustmentConfig>属性の意味は次のとおりです。
| 属性 | 意味 |
|---|---|
| Id | この構成の任意の識別子を提供する必須属性。 |
| StateName | 次のルールを使用して、リクエストで既存の名前付きの状態を指定します。
|
<Request xmlns="http://www.endeca.com/MDEX/conversation/3/0">
<State>
<TextSearchFilter Key="Flavors" Mode="AllPartial" EnableSnippeting="false" Language="en">pech</TextSearchFilter>
</State>
<RecordListConfig Id="RecList" MaxPages="10">
<Column>Flavors</Column>
<RecordsPerPage>5</RecordsPerPage>
</RecordListConfig>
<SearchAdjustmentConfig Id="SpellCorrect"/>
</Request>
この例では、単語peachがpechとスペルミスされていることに注意してください。
<cs:SearchAdjustments Id="SpellCorrect">
<cs:AppliedAdjustment>
<cs:TextSearchFilter Key="Flavors" Mode="AllPartial">pech</cs:TextSearchFilter>
<cs:AdjustedTerms>peach</cs:AdjustedTerms>
</cs:AppliedAdjustment>
</cs:SearchAdjustments>
SearchAdjustmentsレスポンスのAppliedAdjustmentのAdjustedTerms要素には、自動的に修正された単語peachが含まれます。要素(AppliedAdjustment)の名前は、修正されたスペルが自動的に問合せに適用されたことを示し、その修正が結果(この例では2593レコード)に反映されます。
<cs:SearchAdjustments Id="SpellCorrect">
<cs:SuggestedAdjustment RecordCountIfApplied="2593">
<cs:TextSearchFilter Key="Flavors" Mode="AllPartial">pechr</cs:TextSearchFilter>
<cs:SuggestedTerms>peach</cs:SuggestedTerms>
</cs:SuggestedAdjustment>
</cs:SearchAdjustments>
要素(SuggestedAdjustment)の名前は、その単語が単なるDYMの提案であり、問合せに適用されなかったことを示します。RecordCountIfApplied要素は、その提案を適用すると2593レコードが返されることを示しています。それらのレコードを取得するには、提案された単語peachを検索語としてレコード検索問合せを再送信します。