絞込みの表示の最初のステップは、絞込みを持つ可能性のある属性の取得です。
RefinementConfigを使用するかわりに、ユーザー構成属性グループに明示的に含まれない絞込みを取得するには、system-navigation_InternalGroupグループをリクエストできます。このグループはOracle Endeca Serverに存在し、他のいずれのグループのメンバーでもないすべての絞込みを含みます。
絞込みはNavigationMenuコンテンツ要素で返されます。属性がグループに属する場合、この要素には、絞込みを含む管理属性ごとに、NavigationMenuItem要素を持つNavigationMenuItemGroup要素が含まれます。
<Request xmlns="http://www.endeca.com/MDEX/conversation/2/0"> <State/> <ContentElementConfig xsi:type="NavigationMenuConfig" Id="NavigationMenu" HandlerFunction="NavigationMenuHandler" HandlerNamespace="http://www.endeca.com/MDEX/conversation/2/0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <RefinementGroupConfig Name="Wine Characteristics" Expose="true"> <RefinementConfig Name="WineType" Expose="true"/> </RefinementGroupConfig> </ContentElementConfig> </Request>
<cs:Results xmlns:cs="http://www.endeca.com/MDEX/conversation/2/0" xmlns:mdex="http://www.endeca.com/MDEX/XQuery/2009/09"> <cs:Request> <State xmlns="http://www.endeca.com/MDEX/conversation/2/0"> <ContentElementConfig xsi:type="NavigationMenuConfig" Id="NavigationMenu" HandlerFunction="NavigationMenuHandler" HandlerNamespace="http://www.endeca.com/MDEX/conversation/2/0" xmlns="http://www.endeca.com/MDEX/conversation/2/0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <RefinementGroupConfig Name="Wine Characteristics" Expose="true"> <RefinementConfig Name="WineType" Expose="true" xmlns:ns="http://www.endeca.com/MDEX/conversation/2/0"> </RefinementGroupConfig> </ContentElementConfig> </cs:Request> <cs:ContentElement xsi:type="cs:NavigationMenu" Id="NavigationMenu" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <cs:NavigationMenuItemGroup Name="Wine Characteristics" HasRefinablePRoperties="true"> <cs:NavigationMenuItem Name="WineType" DisplayName="WineType" MultiSelect="Or" HasMore="false"> <cs:ExposureControl Exposed="true"> <cs:Operator OwnerId="NavigationMenu" xsi:type="cs:RefinementHideOperator" Name="WineType" Spec="/" Group="Wine Characteristics"/> </cs:ExposureControl> <cs:Refinement Name="WineType" Spec="/Red" Label="Red" Count="18"> <cs:Operator xsi:type="cs:RefinementOperator" Name="WineType" Spec="/Red"/> </cs:Refinement> <cs:Refinement Name="WineType" Spec="/White" Label="White" Count="40"> <cs:Operator xsi:type="cs:RefinementOperator" Name="WineType" Spec="/White"/> </cs:Refinement> <cs:Refinement Name="WineType" Spec="/Sparkling" Label="Sparkling" Count="50"> <cs:Operator xsi:type="cs:RefinementOperator" Name="WineType" Spec="/Sparkling"/> </cs:Refinement> <cs:RootDimensionValue DimensionName="WineType" Spec="/"/> </cs:NavigationMenuItem> </cs:NavigationMenuItemGroup> </cs:ContentElement> </cs:Results>
<cs:NavigationMenuItemGroup Name="Wine Characteristics" HasRefinablePRoperties="true"> <cs:NavigationMenuItem Name="WineType" DisplayName="WineType" MultiSelect="Or" HasMore="false"> <cs:ExposureControl Exposed="true"> <cs:Operator OwnerId="NavigationMenu" xsi:type="cs:RefinementHideOperator" Name="WineType" Spec="/" Group="Wine Characteristics"/> </cs:ExposureControl>
<cs:Operator xsi:type="cs:RefinementOperator" Name="WineType" Spec="/Red"/>この演算子は、絞込みを取得する後続の対話Webサービス・リクエストで使用されます。
<cs:ExposureControl Exposed="true"> <cs:Operator OwnerId="NavigationMenu" xsi:type="cs:RefinementHideOperator" Name="WineType" Spec="/" Group="Wine Characteristics"/> </cs:ExposureControl><cs:ExposureControl Exposed=""true">文は、NavigationMenuItemに含まれる最上位レベルの絞込みの現在の公開ステータスを示します。ExposureControl演算子には、RefinementExposeOperatorおよびRefinementHideOperatorという2つの複合タイプが含まれます。これらの演算子は、個々の絞込みの公開(または非表示)に使用されます。これらの演算子を使用するには、演算子が適用されるコンテンツ要素と同じにする必要があるOwnerId値を指定してください。例ではOwnerId="NavigationMenu"になります。
<cs:Refinement Name="WineType" Spec="/Red" Label="Red" Count="18"> <cs:Operator xsi:type="cs:RefinementOperator" Name="WineType" Spec="/Red"/> </cs:Refinement>
Count要素は、Red絞込みで絞込みを行った場合の結果セットに18のレコードがあることを示します。
<Request xmlns="http://www.endeca.com/MDEX/conversation/2/0"> <State/> <ContentElementConfig xsi:type="NavigationMenuConfig" Id="NavigationMenu" HandlerFunction="NavigationMenuHandler" HandlerNamespace="http://www.endeca.com/MDEX/conversation/2/0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <RefinementConfig Name="Region" Expose="true"/> </ContentElementConfig> </Request>
このリクエストは、値がRegion属性に存在するすべてのレコードをリストするレコード・セットから個々の絞込みを返します。