Obtaining a list of available attributes

When configuring attributes for refinements, it is useful to first obtain a list of available attributes using a Conversation Web Service request.

The complex type PropertyListConfig returns a list of all available attributes for the data domain. It contains an element Property, which includes pertinent information about an attribute including its key, display name, and other options. The PDR (and DDR, if present) is included for those front-end clients of the Conversation Web Service that prefer to read descriptor records directly.

The following abbreviated example request illustrates how to obtain a list of attributes:
<ns:Request>
  <ns:ContentElementConfig 
    Id="AttributeList" xsi:type="ns:PropertyListConfig" 
    HandlerNamespace="http://www.endeca.com/MDEX/conversation/2/0" 
    HandlerFunction="PropertyListHandler" 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  </ns:ContentElementConfig>
</ns:Request>

Such a request returns information that describes all attributes, and includes all characteristics of the attributes.

The following abbreviated example shows the characteristics of the managed attribute ProductCategory. Using this output, you can view the values of PDRs and DDRs for the attribute ProductCategory, indicating whether the attribute is searchable, and specifying other characteristics contained in the PDR and DDR for this managed attribute:
<cs:Property Key="ProductCategory" Type="mdex:string" Dimension="true" 
     DisplayName="Product Category" Refinable="true">
   <cs:PropertyRecord>
     <mdex-property_DisplayName type="mdex:string">Product Category</mdex-property_DisplayName>
     <mdex-property_IsPropertyValueSearchable type="mdex:boolean">false</mdex-property_IsPropertyValueSearchable>
     <mdex-property_IsSingleAssign type="mdex:boolean">false</mdex-property_IsSingleAssign>
     <mdex-property_IsTextSearchable type="mdex:boolean">false</mdex-property_IsTextSearchable>
     <mdex-property_IsUnique type="mdex:boolean">false</mdex-property_IsUnique>
     <mdex-property_Key type="mdex:string">ProductCategory</mdex-property_Key>
     <mdex-property_TextSearchAllowsWildcards type="mdex:boolean">false</mdex-property_TextSearchAllowsWildcards>
     <mdex-property_Type type="mdex:string">mdex:string</mdex-property_Type>
     <system-navigation_Select type="mdex:string">single</system-navigation_Select>
     <system-navigation_ShowRecordCounts type="mdex:boolean">true</system-navigation_ShowRecordCounts>
     <system-navigation_Sorting type="mdex:string">lexical</system-navigation_Sorting>
   </cs:PropertyRecord>
   <cs:DimensionRecord>
     <mdex-dimension_EnableRefinements type="mdex:boolean">true</mdex-dimension_EnableRefinements>
     <mdex-dimension_IsDimensionSearchHierarchical type="mdex:boolean">false</mdex-dimension_IsDimensionSearchHierarchical>
     <mdex-dimension_IsRecordSearchHierarchical type="mdex:boolean">false</mdex-dimension_IsRecordSearchHierarchical>
     <mdex-dimension_Key type="mdex:string">ProductCategory</mdex-dimension_Key>
   </cs:DimensionRecord>
</cs:Property>