Loading an attribute schema

You can use the Configuration Web Service to load the schema for your standard and managed attributes.

If you load your attribute schema before loading your source records, you can modify the resulting PDRs and DDRs as needed. After they have been configured as desired, you can then use the Data Ingest Web Service to load your source records.
  • The putProperties element loads the standard attributes schema.
  • The putDimensions element loads the managed attributes schema.
To illustrate the use of this operation, this configTransaction simple example from the Configuration Web Service will be used:
<config-service:configTransaction 
   xmlns:config="http://www.endeca.com/MDEX/config/services/types/1/0" 
   xmlns:mdex="http://www.endeca.com/MDEX/config/XQuery/2009/09">
<config-service:putDimensions>
    <mdex:record>
      <mdex-dimension_EnableRefinements>true</mdex-dimension_EnableRefinements>
      <mdex-dimension_IsDimensionSearchHierarchical>true</mdex-dimension_IsDimensionSearchHierarchical>
      <mdex-dimension_IsRecordSearchHierarchical>true</mdex-dimension_IsRecordSearchHierarchical>
      <mdex-dimension_Key>BikeType</mdex-dimension_Key>
    </mdex:record>
  </config-service:putDimensions>
  <config-service:putProperties>
    <mdex:record>
      <mdex-property_IsSingleAssign>true</mdex-property_IsSingleAssign>
      <mdex-property_IsTextSearchable>false</mdex-property_IsTextSearchable>
      <mdex-property_IsUnique>true</mdex-property_IsUnique>
      <mdex-property_Key>ProductID</mdex-property_Key>
      <mdex-property_TextSearchAllowsWildcards>false</mdex-property_TextSearchAllowsWildcards>
      <mdex-property_IsPropertyValueSearchable>false</mdex-property_IsPropertyValueSearchable>
      <mdex-property_Type>mdex:int</mdex-property_Type>
      <mdex-property_DisplayName>Product ID</mdex-property_DisplayName>
    </mdex:record>
    <mdex:record>
      <mdex-property_IsSingleAssign>true</mdex-property_IsSingleAssign>
      <mdex-property_IsTextSearchable>true</mdex-property_IsTextSearchable>
      <mdex-property_IsUnique>false</mdex-property_IsUnique>
      <mdex-property_Key>BikeType</mdex-property_Key>
      <mdex-property_TextSearchAllowsWildcards>true</mdex-property_TextSearchAllowsWildcards>
      <mdex-property_IsPropertyValueSearchable>true</mdex-property_IsPropertyValueSearchable>
      <mdex-property_Type>mdex:string</mdex-property_Type>
      <mdex-property_DisplayName>Bike Type</mdex-property_DisplayName>
    </mdex:record>
  </config-service:putProperties>
</config-service:configTransaction>

The example creates two standard attributes (ProductID and BikeType) and one managed attribute (BikeType). The ProductID attribute is configured as a single-assign, unique attribute, so that it can be used as a primary key for records. The BikeType attribute is the standard attribute record used for the creation of the BikeType managed attribute.

To load an attribute schema into the data store of the Oracle Endeca Server:

  1. Make sure that the Oracle Endeca Server and the data store are running. Access the Configuration Web Service for the data store: http://localhost:<port>/ws/config/DataStore?wsdl.
  2. Make a SOAP request to the Configuration Web Service as shown above.
If the request is successful, the response will look like this example:
soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Header/>
   <soapenv:Body>
      <config-types:results 
        xmlns:config-types="http://www.endeca.com/MDEX/config/services/types/1/0">
         <config-service:successPutDimensions/>
         <config-service:successPutProperties/>
      </config-types:results>
   </soapenv:Body>
</soapenv:Envelope>