IDEA ENGINEERS
DAY CQ integration with ATG 10.x.x
DAY CQ integration with ATG 10.x.x
1
Š Sapient Corporation 2013
IDEA ENGINEERS
DAY CQ integration with ATG 10.x.x
Author — Vikrant Shirbhate Vikrant has over nine years of experience in driving complex and multi-functional projects in close coordination with global and local sponsors for leading clients in ecommerce domains. Vikrant has worked extensively on ecommerce package design implementation along with enterprise search engine customizations.
DAY CQ integration with ATG 10.x.x
1. Introduction
Table of Contents 1. Introduction
3
a) Audience
3
b) The Problem
3
c) Assumption
3
d) DAY CQ Overview
3
e) ATG Overview
3
2. Day CQ: ATG/Endeca Approaches 4 a) Migrate (one-time and ongoing) content metadata from CQ into ATG
5
b) Migrate (one-time and ongoing) content metadata from CQ into ATG and from ATG to Endeca
6
c) Migrate (one-time and ongoing) content metadata from CQ into Endeca
7
d) Use CQ search along with Endeca experience manager (no metadata migration)
8
3. Data Sheet
9
4. Conclusion
9
In today’s fast-paced, changing markets, brands cannot afford long waits for their web presences. With top dollars being invested by organizations to promote their sales via all possible channels, there is a definitive need to have seamless integration between ecommerce and CMS systems, while keeping in consideration the application performance and unified user experience across all channels. In this paper, I will discuss some of the options available for integrating the ATG/Endeca ecommerce solution with the Adobe Day CQ CMS, in order to provide a flexible, reliable, and scalable digital commerce platform.
Audience It is my hope that ATG solution/technical architects and engagement leads will find some clarity and answers within this document.
The Problem If you are like most ecommerce businesses today, you have two systems: one for ecommerce and the other for content assets. If this is not handled in an efficient and seamless manner, it can turn into a maintenance nightmare for retailers. And not only that, it can also negate the end users’ experiences and significantly water down the revenue generation. Because of this, there is a compelling need for seamless and instantaneous integration between the ecommerce and CMS systems.
Assumption In order to arrive at a usable solution to this problem, the content creation and management will be owned by CQ, and ATG/Endeca will provide the user-interfacing layer of the application.
2
© Sapient Corporation 2013
© Sapient Corporation 2013
DAY CQ Overview Day CQ is a web content management software (CMS). It has two logical divisions: authoring for content management and publishing for content delivery. The authoring portion is the environment that the content authors input contents, administrate the entire system, configure layout and design of content, and create workflows to activate (or publish) content. Replication agents in the author environment are used to publish the content and functionality from the author to the publish instance. The content to be published is packaged and placed in the replication queue in the author environment and the content is then received and published. The publishing portion is the customer-facing environment, which holds the content changes after a successful publishing cycle. For performance optimization, it is possible to convert dynamically published content (excluding any personalized parts) to static HTML, serviced by a static web server. Static web servers are very simple, but fast. Examples include Apache and IIS. The dispatcher can then be used in conjunction with the web server to realize an environment that is both fast and dynamic and with moderate hardware requirements.
ATG Overview ATG Ecommerce provides an open, server-side environment for building and deploying dynamic, personalized applications for the web and other communication channels, such as email and wireless devices. With ATG 10.1.x, Oracle has provided OOB ATG integration with Endeca for indexing all Product Catalog data into Endeca. ATG’s content capabilities (BCC/ATG merchandising tool) offer the basic features of a CMS with enough features to complement the online site with basic content management needs. However, it is not feature-rich enough to replace the CMS in an enterprise with heavier CMS needs. With organizations investing large sums on rich media content for campaigns and interactive promotions, ATG integration with CMS platforms is necessitated to create a successful user experience, and a multitude of factors govern the integration of ATG with a CMS platform to deliver a firsthand user experience.
3
IDEA ENGINEERS
DAY CQ integration with ATG 10.x.x
A - Migrate (one-time and ongoing) content metadata from CQ into ATG
2. Day CQ: ATG / Endeca Approaches Adobe as a CMS provides the entire framework to manage and deliver content. Its content delivery capabilities also cover the ability to manage page templates (or layouts) and widgets on pages. Given that Endeca provides similar functionality, CQ will be used as a content provider and the combination of ATG and Endeca will be used to author pages and page components.
along with the other systems, content will not be migrated into ATG/Endeca, as that can create unnecessary redundancy and the need to synchronize multiple systems.
There are four ways to integrate CQ with ATG and Endeca as listed below, assuming CQ will still be used as the overall CMS, and after all the content is approved and published in CQ, it will be displayed on the website. Given that CQ will exist
c)
a) b)
d)
Migrate (one-time and ongoing) content metadata from CQ into ATG Migrate (one-time and ongoing) content metadata from CQ into ATG and from ATG to Endeca Migrate (one-time and ongoing) content metadata from CQ into Endeca Use CQ search along with Endeca experience manager (no metadata migration)
Approach for Content Migration One time In the one-time migration, all CQ metadata contents will be navigated and all content item metadata information will be transferred to the ATG content repository. Ongoing In the ongoing migration, only revised CQ metadata contents will be navigated and a select set of content item metadata information will be transferred to ATG.
ATG/CQ Integration Approach 1. One time Create a scheduler that will call full update () method present in ATG CRX repository browse component to navigate to CRX and retrieve a sample set of attribute values for all content items (pages in CQ) including the: • • • •
4
© Sapient Corporation 2013
Title of the content item (page) Tags that are associated with a content item Language that the content is written in Content alias to be used with content item
© Sapient Corporation 2013
• • • • • •
Segments with which content item is associated Page title of the content item (page) Navigation title, which is often shorter than the full title, for the content item within the navigation map Subtitle for use on the content item (page) Description containing more information about the content item Absolute path of the content item in the CRX repository
2. Ongoing An event listener should be created, which will listen to the author and publishing event and will use a partial update () method present in the CRX repository browse component. XML documents would be used to upload the content metadata into the ATG repository These XMLs can be generated by any CMS, as a part of a workflow or an event listener. 3. Details The ATG scenario rule manager functionality will use the above set of attributes to create the targeter. In addition, content paths retrieved based on the ATG scenario rule manager are used for fetching content from the publish CQ.
5
IDEA ENGINEERS
DAY CQ integration with ATG 10.x.x
B - Migrate (one-time and ongoing) content metadata from CQ into ATG and from ATG to Endeca
C - Migrate (one-time and ongoing) content metadata from CQ into Endeca
Approach for Content Migration
ATG/CQ Integration Approach
Approach for Content Migration
ATG/CQ Integration Approach
One time In the one-time migration, all CQ metadata contents will be navigated and all content item metadata information will be transferred to the ATG content repository. From the ATG content repository, content items will be migrated to Endeca.
1. One time Create a scheduler that will call full update () method present in ATG CRX repository browse component to navigate to the CRX repository, which will be stored in the ATG content repository.
One time In the one-time migration, all CQ metadata contents will be navigated and all content item metadata information will be transferred to Endeca.
1. One time Create a scheduler that will call full update () method present in the search engine indexing component to navigate to the CRX repository, which will be stored in Endeca.
Ongoing In the ongoing migration, only revised CQ metadata contents will be navigated and a select set of content item metadata information will be transferred to Endeca.
2. Ongoing An event listener should be created, which will listen to the author and publishing event and will use a partial update () method present in the search engine indexing component.
Ongoing In the ongoing migration, only revised CQ metadata contents will be navigated and a select set of content item metadata information will be transferred to ATG. From the ATG content repository, select content items will be migrated to Endeca.
2. Ongoing An event listener should be created, which will listen to the author and publishing event and will use a partial update () method present in the CRX repository browse component.
3. Details: In this approach, the Day CQ publish repository will be browsed and metadata (like the title and tags), along with the content path, will be stored within Endeca.
3. Details The ATG repository CQ contents will be indexed into Endeca. In the Endeca experience manager, a targeter cartridge will be created.
Create the cartridge in the Endeca experience manager. The cartridge will use the Endeca index and a set of content paths will be retrieved from the Endeca index. Rules will be created within the cartridge. The contents path retrieved will be used for fetching content from the publish CQ.
Based on rules present in the cartridge (the ATG scenario manager rule is optional), a set of content paths will be retrieved from the Endeca index. The contents path retrieved will be used for fetching content from the publish CQ.
6
Š Sapient Corporation 2013
Š Sapient Corporation 2013
7
IDEA ENGINEERS
DAY CQ integration with ATG 10.x.x
3. Data Sheet D - Use CQ search along with Endeca experience manager (no metadata migration)
Migrate (one-time and ongoing) content metadata from CQ into ATG
Migrate (one-time and ongoing) content metadata from CQ into ATG and from ATG to Endeca
Migrate (one-time and ongoing) content metadata from CQ into Endeca
Use CQ search along with Endeca experience manager (no metadata migration)
Software
CQ 5.5 ATG 10.1.x
CQ 5.5 Endeca 6.3 ATG 10.1.x Endeca experience manager(XM) 3.1
CQ 5.5 Endeca 6.3 ATG 10.1.x (optional) Endeca experience manager (XM) 3.1
CQ 5.5 Endeca 6.3 ATG 10.1.x (optional) Endeca experience manager (XM) 3.1
Scenario rule manager / Personalization
ATG
Preferably XM but can be achieved by ATG also
XM
XM
Component needs to be created
ATG CRXRepository Browse Component-component to push metadata contents into ATG repository
ATG a) CRXRepository Browse Component- component to push metadata contents into ATG repository b) Component to push CQ metadata contents to Endeca
CQ Search Engine indexing component- component to push contents from CQ to Endeca (using CAS service)
Endeca Experience manager cartridge
Endeca Experience manager cartridge
Endeca Experience manager cartridge
Approach for Content Migration In this approach, no one-time or ongoing migration is needed.
ATG/CQ Integration Approach 1. One time Not applicable. 2. Ongoing Not applicable. 3. Details In this approach, the component will be created in CQ and the Endeca experience manager will use the CQ selector search component to retrieve contents. Those contents will be created and managed within CQ. Use the out-of-the-box CQ json component (i.e., querybuilder.json). For example, content search will accept a set of parameters such as tags,
8
title, or segments. The output of the json search component will be json results consisting of a list of content paths. A sample json query wherein the title = shirtproduct and tags value = saks:men is as follows:
<CQservername>:<cqpublishport>/bin/ querybuilder.json?group.1_property=jcr:content/ jcr:title&group.1_property.value=shirtproduct& group.p.or=true&group.2_property=jcr:content/ cq:tags&group.2_property.value=saks:men
Pros
Personalization will be controlled from ATG
1) Personalization will be controlled from ATG 2) Endeca Search features like relevance, ranking can be utilized whilst displaying component on webpage.
1) In this case, personalization will be achieved using experience manager cartridge. 2) Endeca Search features like relevance, ranking can be utilized whilst displaying component on webpage.
1) In this case, personalization will be achieved using experience manager cartridge. 2) Metadata content don’t need to be stored into ATG repository 3) Incase content changes are too frequent, this approach is recommended.
Cons
1) CQ Repository needs to be browsed and event listener needs to provide updated contents to ATG. 2) Endeca Search features like relevance, ranking can’t be utilized whilst displaying component on webpage.
1) Repository needs to be browsed and event listener needs to provide updated contents to ATG. 2) Incase content changes are very frequent, there will be delay in actual content display on website pages
Repository needs to be browsed and event listener needs to provide updated contents to Endeca.
Endeca and day CQ will be tightly coupled.
Endeca
4. Conclusion
The Endeca experience manager cartridge will accept values for search attributes (e.g., tag ID). While displaying the cartridge, a CQ search selector request will be submitted and will return a list of content paths wherein particular search criteria is matched. Based on content paths, respective contents can be retrieved from Day CQ on a webpage.
When trying to determine the system architecture for your company’s integration between ecommerce channels and CMS systems, there are multiple factors that come into play. And while a one-size-fits all approach would be ideal, no such silver bullet exists.
© Sapient Corporation 2013
© Sapient Corporation 2013
A combination of business use cases and non-functional requirements should be used to define the system architecture based on the above approaches — or a hybrid approach can be formulated to overcome any shortfalls. Only then will you be able to find the right digital commerce platform that works for you and your business.
9