This section describes how to define the structure of a hierarchical dimension by configuring the dimension values in that dimension. It also describes how to load dimension value configuration into your dimension value record store, so that it can be applied to your application. For information about recommended ways to structure hierarchical dimensions, refer to the Oracle Commerce Guided Search Concepts Guide.

When you configure the dimension values in an hierarchical dimension, you also configure the structure of that hierarchical dimension, because the configuration of a dimension value specifies that dimension value's parent dimension value.

The following table lists the attributes that configure a dimension value.

Attribute

Type

Description

dimval.dimension_spec

STRING

The name of the dimension to which this dimension value belongs.

dimval.spec

STRING

A value used to tag Endeca records to dimension values. It is also used internally to identify dimension values. The value of dimval.spec must be unique within the record store. For more information, see Introduction: Making Endeca records accessible to shoppers.

dimval.display_name

STRING

The name for this dimension value that appears in refinement lists.

dimval.display_order

Integer

The position in the refinements list where this dimension value is displayed. A value of 1 is first in the list.

dimval.parent_spec

STRING

The dimval.spec value of the dimension value that will be the parent of this dimension value. Use / to specify the root dimension value of the dimension. If not specified, the parent of this dimension value is assumed to be the root dimension value of the dimension.

In flat hierarchies, / is the only possible value because only the root dimension value can be a parent.

dimval.range.lower_bound

FLOAT

(for range dimension values only) The value of the lower bound of the range. The lower bound is exclusive by default.

dimval.range.lower_bound_inclusive

BOOLEAN

(for range dimension values only) Set to true to include the lower bound value in the range, or to false to exclude it.

dimval.range.upper_bound

FLOAT

(for range dimension values only) The numeric value of the upper bound of the range. The upper bound is exclusive by default.

If you omit the dimval.range.upper_bound parameter or do not specify a value for it, the upper boundary defaults to infinity.

dimval.range.upper_bound _ inclusive

BOOLEAN

(for range dimension values only) Set to true to include the upper bound value in the range, or to false to exclude it.

dimval.display_order

INTEGER

The position in refinement lists where this dimension value appears. Lower numbers specify earlier positions.

dimval.match.use_spec

BOOLEAN

Specifies whether property matching is based on the dimval.spec value. If set to false, matching can be on either the dimval.range.lower_bound parameter or the dimval.range.upper_bound parameter. The default is true.

dimval.search_synonym

STRING

A synonym for the dimension value's display name. A keyword search on the synonym will produce the same result as a keyword search on its display name. Synonyms can be applied only to leaf dimension values.

Note

A search synonym applies to search results on a particular product represented by a dimension value. Thesaurus entries, in contrast, are defined globally and are used for searches across all products. For information about thesaurus entries, refer to the Oracle Commerce Guided Search Workbench User's Guide.

For example, the following XML defines a record that configures a range dimension value in a hierarchical dimension named camera.megapixel_range:

<RECORDS> 
  <RECORD> 
    <PROP NAME="Endeca.Id">
      <PVAL>camera.megapixel_range:Over 20</PVAL> 
    </PROP> 
    <PROP NAME="dimval.display_name"> 
      <PVAL>Over 20</PVAL> 
    </PROP>
    <PROP NAME="dimval.dimension_name">
      <PVAL>camera.megapixel_range</PVAL>
    </PROP> 
    <PROP NAME="dimval.parent_spec">
      <PVAL>/</PVAL> 
    </PROP> 
    <PROP NAME="dimval.range.upper_bound">
      <PVAL>250</PVAL>
    </PROP> 
    <PROP NAME="dimval.range.upper_bound_inclusive">
      <PVAL>true</PVAL>
    </PROP>
    <PROP NAME="dimval.range.lower_bound_inclusive">
      <PVAL>false</PVAL>
    </PROP>
    <PROP NAME="dimval.range.lower_bound">
      <PVAL>20</PVAL>
    </PROP>
   <PROP NAME="dimval.display_order">
      <PVAL>5</PVAL>
    </PROP>
   <PROP NAME="dimval.spec">
      <PVAL>Over 20</PVAL>
    </PROP>
  </RECORD>
  . . .

This record element configures a range dimension value in the hierarchical dimension camera.megapixel_range as follows:

  1. It creates a dimension value whose Endeca ID is "camera.megapixel_range:Over 20":

    <PROP NAME="Endeca.Id">
      <PVAL>camera.megapixel_range:Over 20</PVAL>
    </PROP>

    Every Endeca.Id value must be unique within its record store.

  2. It specifies that the parent of "camera.megapixel_range:Over 20" is the root dimension value of the dimension:

    <PROP NAME="dimval.parent_spec">
      <PVAL>/</PVAL>
    </PROP>

  3. It identifies the name of the dimension as "camera.megapixel_range":

    <PROP NAME="dimval.dimension_name">
      <PVAL>camera.megapixel_range</PVAL>
    </PROP>

  4. It sets the display name of the dimension value to "Over 20":

    <PROP NAME="dimval.display_name">
      <PVAL>Over 20</PVAL>
    </PROP>

  5. It sets upper and lower boundaries to the range for this dimension value:

    <PROP NAME="dimval.range.upper_bound">
      <PVAL>250</PVAL>
    </PROP>
    <PROP NAME="dimval.range.upper_bound_inclusive">
      <PVAL>true</PVAL>
    </PROP>
    <PROP NAME="dimval.range.lower_bound_inclusive">
      <PVAL>false</PVAL>
    </PROP>
    <PROP NAME="dimval.range.lower_bound">
      <PVAL>20</PVAL>
    </PROP>

  6. It sets the display order of the dimension value to 5:

    <PROP NAME="dimval.display_order">
      <PVAL>5</PVAL>
    </PROP>
  7. It specifies an ID for this dimension value; the ID must be unique within this dimension:

    <PROP NAME="dimval.spec">
      <PVAL>Over 20</PVAL>
    </PROP>


Copyright © Legal Notices