Example of breadcrumbs with spelling correction

Breadcrumbs returned by the Conversation Web Service in response to a record or value search query can reflect spelling correction.

There are two forms of spelling correction: The following requirements must be met to implement breadcrumbs that also return spelling correction information in response to a query:

The request in this example specifies a navigation state that includes a search for a user-entered word "pech" (a misspelling for "peach"). It illustrates a search request with a breadcrumb that needs to be corrected for spelling:

<Request xmlns="http://www.endeca.com/MDEX/conversation/3/0">
   <State>
      <Name>RecState</Name>
      <TextSearchFilter Key="Flavors" RelevanceRankingStrategy="numfields" 
        Mode="AllPartial" EnableSnippeting="false" Language="en">pech</TextSearchFilter>
   </State>
   <RecordCountConfig Id="NumRecs">
      <StateName>RecState</StateName>
   </RecordCountConfig>
   <BreadcrumbConfig Id="Crumbs" ReturnFullPath="true">
      <StateName>RecState</StateName>
   </BreadcrumbConfig>
   <SearchAdjustmentConfig Id="CorrectSpell">
      <StateName>RecState</StateName>
   </SearchAdjustmentConfig>
</Request>
The response from the Conversation Web Service contains the original State from the request with search filter applied, as well as the original (not yet spelling-corrected) term of "pech". The SearchAdjustments response includes the automatically-corrected term "peach" in the AdjustedTerms element for AppliedAdjustment:
...
   <cs:SearchAdjustments Id="CorrectSpell">
        <cs:AppliedAdjustment>
             <cs:TextSearchFilter Key="Flavors" Mode="AllPartial" 
                  RelevanceRankingStrategy="numfields">pech</cs:TextSearchFilter>
             <cs:AdjustedTerms>peach</cs:AdjustedTerms>
        </cs:AppliedAdjustment>
   </cs:SearchAdjustments>
</cs:Results>

For more information on the SearchAdjustments responses, see Retrieving spelling corrections and DYM in query results.