A key aspect of the Search Merchandising feature is the use of search configuration files. These are XML files that represent sets of Search query rules that specify how to order the search results and to exclude certain results entirely, based on terms in the search query and values of the properties of the returned items. For example, a search configuration might specify that less expensive items should be displayed first, and that if the query contains the word “bargain”, all items whose price is above $100.00 should be excluded from the results.

The rules that make up the search configurations are created in Merchandising and stored as repository items in the RefinementRepository. When the product catalog is deployed from the Merchandising environment to the target site, the RefinementRepository is deployed as well.

Generating the search configuration files is managed by the /atg/commerce/search/refinement/CatalogRankConfigAdapter component, which is a post-index customization adapter associated with the indexing project in Search Administration. This adapter is automatically invoked after each indexing operation. You can also invoke it without reindexing; this is useful if you have changed your search configurations in Merchandising without making any changes to your catalog.

To generate the search configuration files, CatalogRankConfigAdapter invokes the /atg/search/repository/SearchConfigurationXMLGenerator component (of class atg.repository.search.indexing.config.SearchConfigurationXMLGenerator). This component is responsible for transforming the repository items into the XML files that represent rule sets in Search. SearchConfigurationXMLGenerator calls various other components that parse the rules in the RefinementRepository and generate XML representations of those rules.

For information about setting up the CatalogRankConfigAdapter, see the ATG Search Installation and Configuration Guide. For information about invoking post-index customizations, see the ATG Search Administration Guide.