Stateタイプは、操作するレコードのセットを決定する入力を含みます。
どのリクエストにも少なくとも1つの状態を含める必要があり、状態ごとに関連付けられたContentElementConfigsのナビゲーション状態を定義する必要があります。
<State>
<Name>?</Name>
<CollectionName>?</CollectionName>
<SelectedRefinementFilter Name="?" Spec="?" Id="?">
<Source FilterId="?">
<StateName>?</StateName>
</Source>
</SelectedRefinementFilter>
<TextSearchFilter Key="?" RelevanceRankingStrategy="?" Mode="?"
EnableSnippeting="?" SnippetLength="?" Language="?">?</TextSearchFilter>
<RecordKind>?</RecordKind>
<DataSourceFilter Id="?">
<filterAST>
<typ:filter/>
</filterAST>
<filterString>?</filterString>
<Source FilterId="?">
<StateName>?</StateName>
</Source>
</DataSourceFilter>
<SelectionFilter Id="?">
<filterAST>
<typ:filter/>
</filterAST>
<filterString>?</filterString>
<Source FilterId="?">
<StateName>?</StateName>
</Source>
</SelectionFilter>
</State>
| 要素 | 最小/最大出現数 | 説明 |
|---|---|---|
| Name | 最小=0、最大=1 | Stateの名前。
|
| CollectionName | 最小=0、最大=1 | 操作する既存のコレクションの名前。コレクション名では大文字と小文字が区別されることに注意してください。 |
| SelectedRefinementFilter | 最小=0、最大=無制限 | 特定の絞込みから絞込みナビゲーション問合せを作成します。詳細は、「SelectedRefinementFilter」を参照してください。 |
| TextSearchFilter | 最小=0、最大=無制限 | レコードに割り当てられた特定の属性値に対するキーワード検索を実行します。書式の詳細は、「レコード検索フィルタ」を参照してください。 |
| DataSourceFilter | 最小=0、最大=無制限 | EQL構文を使用して、他の処理を行う前にレコードのコーパスをフィルタします。詳細は、「EQLレコード・フィルタ」を参照してください。 |
| SelectionFilter | 最小=0、最大=無制限 | EQL構文を使用して、最終レコード結果セットの選択基準を提供します。通常は、DataSourceFilterとともに使用されます。詳細は、「EQLレコード・フィルタ」を参照してください。 |
さらに、リクエストに複数の状態がある場合は、各構成で状態を1つだけ参照する必要があります。リクエストに名前付きの状態が1つだけある場合は、構成でその状態を参照するかどうかはオプションです(構成のどのイベントでもその状態が使用されるため)。
<Request xmlns="http://www.endeca.com/MDEX/conversation/3/0">
<State>
<Name>FlavorSearch</Name>
<TextSearchFilter Key="Flavors" Mode="AllPartial" Language="en">oak</TextSearchFilter>
</State>
<State>
<Name>WineSearch</Name>
<TextSearchFilter Key="Wine" Mode="AllPartial" Language="en">merlot</TextSearchFilter>
</State>
<RecordCountConfig Id="FlavorRecs">
<StateName>FlavorSearch</StateName>StateName>
</RecordCountConfig>
<RecordCountConfig Id="WineRecs">
<StateName>WineSearch</StateName>StateName>
</RecordCountConfig>
</Request>
<cs:Results xmlns:cs="http://www.endeca.com/MDEX/conversation/3/0"
xmlns:mdex="http://www.endeca.com/MDEX/XQuery/2009/09">
<State xmlns="http://www.endeca.com/MDEX/conversation/3/0"
xmlns:ns2="http://www.endeca.com/MDEX/eql_parser/types"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<Name>FlavorSearch</Name>
<TextSearchFilter Key="Flavors" Mode="AllPartial" Language="en">oak</TextSearchFilter>
</State>
<State xmlns="http://www.endeca.com/MDEX/conversation/3/0"
xmlns:ns2="http://www.endeca.com/MDEX/eql_parser/types"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<Name>WineSearch</Name>
<TextSearchFilter Key="Wine" Mode="AllPartial" Language="en">merlot</TextSearchFilter>
</State>
<cs:RecordCount Id="FlavorRecs">
<cs:NumRecords>6381</cs:NumRecords>
</cs:RecordCount>
<cs:RecordCount Id="WineRecs">
<cs:NumRecords>3073</cs:NumRecords>
</cs:RecordCount>
</cs:Results>
結果が示すように、FlavorSearch状態のレコード検索では6381レコードが返されるのに対し、WineSearch状態のレコード検索では3073レコードが返されます。