Format of the PDR input file

The PDR input file defines one or more Endeca standard attributes, with the specific settings of some PDR properties.

The sample input file used in this chapter looks like this:

The first line (the header row) of the sample file has these header properties:
Key,DisplayName,TextSearch,SortOrder

The actual names of the header properties in your input file can be different from the names used here (for example, you can use AttrName instead of Key). The properties are delimited (for example, by the comma in a CSV file or the pipe character in a text file).

After the header row, the second and following rows in the input file contain the values for the configuration properties.

The header properties map to these PDR properties:
Input Header Property Maps to PDR Property
Key mdex-property_Key
DisplayName mdex-property_DisplayName
TextSearch mdex-property_IsTextSearchable
SortOrder system-navigation_Sorting

The Reformat component will take these header properties and values and construct PDRs for the standard attributes.

Keep in mind that you can add additional properties to the input file so that they can be set. As mentioned, any PDR property that is not specified is added with its default value. See Chapter 1 of this guide for the system default values used by the MDEX Engine when creating standard attributes.
Note: Standard attribute names also cannot use hyphens in their names. Although the MDEX Engine will accept standard attribute names with hyphens, the Designer will not. Therefore, if you have a standard attribute name such as "Sales-Type", make sure you remove the hyphen from the name.

updateProperties operation

You can use the Configuration Service's updateProperties operation to load the PDR files into the MDEX Engine. The operation creates the standard attributes or updates them if they already exist. The PDR properties are listed in the topic "Default values for new attributes" in Chapter 2 of this guide.

The following is an example of an updateProperties operation:
<config-service:configTransaction 
  xmlns:config-service="http://www.endeca.com/MDEX/config/services/types"
  outerTransactionId="${MDEX_TRANSACTION_ID}">
    <config-service:updateProperties 
      xmlns:mdex="http://www.endeca.com/MDEX/XQuery/2009/09">
        $xmlString
    </config-service:updateProperties>
</config-service:configTransaction>
This sample operation uses two variables:
  • The MDEX_TRANSACTION_ID variable specifies the outer transaction ID for the request. The variable and its value is stored in the workspace.prm file of the LDI Designer project.
  • The $xmlString variable contains the various PDRs that have been constructed by a Reformat component in the graph.

The operation would be specified in the request structure of a WebServiceClient connector, which will then send the request to the Configuration Service on the MDEX Engine.