In a CAS-style application, the name of the root node in a dimension hierarchy is the forward slash (/). So, for example, the forward slash is the name of the root node of the category dimension.

The following example is part of a record created by the CategoryToDimensionOutputConfig component that represents a top-level category. The value of this category’s dimval.parent_spec property is the root node:

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

In a Forge-based application, the name of the root node of a hierarchical dimension is the name of the dimension. For example, the root node of the category dimension hierarchy is product.category. So a record representing a top-level category includes this instead:

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

The value for the name of the root node is configured separately for the category hierarchy and the repository item type hierarchy. For the repository item type hierarchy, the rootParentSpecifier property of components of class atg.endeca.index.dimension.RepositoryTypeHierarchyExporter (including the RepositoryTypeDimensionExporter, ArticleDimensionExporter, and MediaContentDimensionExporter components) is set by default to:

rootParentSpecifier=/

For a Forge-based application, set the rootParentSpecifier property of each RepositoryTypeHierarchyExporter component to null so it uses its default value, which is the dimension name:

rootParentSpecifier^=/Constants.null

For the category hierarchy, the name of the root node is configured through the defaultValue property of the /atg/commerce/endeca/index/accessor/ParentSpecPropertyAccessor component. (See Category Dimension Value Accessors for information about this component.) This property is set by default to:

defaultValue=/

In a Forge-based application, change the value of this property to the name of the dimension:

defaultValue=product.category
Root Node Export

For a CAS-based application, the Oracle Commerce Platform does not create a record representing the root node of a dimension hierarchy. Instead, Oracle Commerce Guided Search automatically creates the root node and names it “/”. For a Forge-based application, however, the Oracle Commerce Platform does create a record representing the root node, and gives the node the name of the dimension.

This behavior is configured separately for the category hierarchy and the repository item type hierarchy. For the repository item type hierarchy, the createRootNode property of RepositoryTypeHierarchyExporter components (including RepositoryTypeDimensionExporter, ArticleDimensionExporter, and MediaContentDimensionExporter) is set by default to:

createRootNode=false

In a Forge-based application, set the createRootNode property of all RepositoryTypeHierarchyExporter components to true.

For the category hierarchy, creation of a record for the root node is controlled through the indexingSynchronizations property of the CategoryToDimensionOutputConfig component. This property accepts an array of components of classes that implement the atg.repository.search.indexing.IndexingSynchronization interface. The default configuration of this property includes the /atg/commerce/endeca/index/CategoryRootNodeSynchronization component, which is responsible for creating the root node for Forge-based applications.

Configuring for Preview

To support previewing your sites in Experience Manager preview and Business Control Center preview, the CategoryRootNodeSynchronization component includes the following properties:

These properties are configured by default to support a CAS-based application:

dummyNodeParentSpec=/
rootNodeParentSpec=/

For a Forge-based application, set these properties to the name of the dimension:

dummyNodeParentSpec=product.category
rootNodeParentSpec=product.category

Copyright © 1997, 2017 Oracle and/or its affiliates. All rights reserved. Legal Notices