Skip to main content

ATG Search - how the search rules are deployed as refinement config xmls during search indexing

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

For the soap call from the commerce instance to the search engine, for text queries we normally use refineConfig=”map” and the search engine itself determines the right refine config for the query.

When Search Administration initiates indexing of the product catalog, it also invokes the /atg/commerce/search/config/CatalogRankConfigAdapter component. This component is a customization adapter that manages the process of generating the search configuration files and submitting them to ATG Search.

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 represents rule sets in ATG Search.

SearchConfigurationXMLGenerator calls various other components that parse the rules in the RefinementRepository and generate XML representations of those rules. These are known an the refinement  config xmls. You could find below a sample refinement config xml :


<?xml version="1.0" encoding="UTF-8"?><!--This refinement configuration was automatically generated by /atg/commerce/search/refinement/RefinementConfigurationXMLGenerator at May 20, 2011 8:58:19 AM--><refineConfig name="categorycat171770058" specificity="4"><mapping>cat4880034</mapping><mapping>cat171770066:catalog10001</mapping><refineElement exclude="" filter="1" id="20008" label="Brand" order="" property="childSKUs.brandName" range="false" select="" sort="count" type="string"/><refineElement exclude="" filter="1" id="35002" label="Age" order="" property="childSKUs.Age" range="false" select="" sort="count" type="string"/><refineElement exclude="" filter="1" id="20018" label="Sub-category" order="" property="sub-category.$repositoryId" range="false" select="" sort="count" type="string"/></refineConfig>

Comments

Popular posts from this blog

Eclipse plug-in to create Class and Sequence diagrams

ModelGoon is an Eclipse plug-in avaiable for UML diagram generation from Java code. It can be used to generate Package Dependencies Diagram, Class Diagram, Interaction Diagram and Sequence Diagram. You coud get it from http://marketplace.eclipse.org/content/modelgoon-uml4java Read more about it and see some vedios about how to create the class and sequence diagram @ http://www.modelgoon.org/?tag=eclipse-plugin Find some snapshots below which gives an idea about the diagram generation.

Google Chrome shortcut keys

If you are a Google Chromey guy, please find below the list of shortcut keys for some of the most used features  :-) Find more shortcut keys @  http://www.google.com/support/chrome/bin/static.py?page=guide.cs&guide=25799&topic=28650

ATG Search architectural flow : Search and Index

I would like to explain the high level ATG Search implementation architecture ( for an online store) through the above diagram. In this diagram 1.x denotes the search functionality and 2.x denotes the indexing functionality. I have given JBoss as the application server. Physical Boxes and Application Servers in the diagram ( as recommended by ATG )  : Estore ( Commerce ) Box --> The box with the estore/site ear (with the site JSPs and Java codes). Search Engine Box --> The box with the search engine application running. Indexing Engine Box --> The box with the indexing engine application running. CA (Content Administration) Box --> The box with the ATG CA ear ( where we could take CA -BCC - Search Administration and configure the search projects) . Search Indexer Box --> The box with the ATG Search Index ear ( to fetch the index data from repository). Note that the engine performing indexing will need access ...

GC Log Analyzer from IBM

This blog is about the GC( garbage collection) log analyzer from IBM. If you have a GC log and you want to analyze the file,  this IBM tool will help you with some graphical analyzer and some recommendations. You can download it from the following URL : https://www.ibm.com/support/pages/ibm-pattern-modeling-and-analysis-tool-java-garbage-collector-pmat Please find below some screenshots and details that might help you. 1. Screenshot 1: 2. Screenshot 2 : 3. Screenshot 3 : 4. Screenshot 4:

ATG and XML File Combination

              An XML file might appear at several points in the CONFIGPATH. The ATG platform, at runtime,   automatically combines all the XML files in the CONFIGPATH with the same name into a single composite file, which is then used by the appropriate component.               XML files are combined one tag at a time: in other words, tags are matched up, and the combination rules are applied to each pair of matched tags. XML file combination is controlled with an XML attribute named xml-combine. This attribute is used only in the preprocessing stage of XML file combination. The xml-combine attribute can have the following values: xml-combine = "replace" xml-combine = "remove" xml-combine = "append" xml-combine = "append-without-matching" -->  This is the same as  xml-combine="append" , except that embedded tags are not matched and combined recursively. The content is simply appended. ...