Search code examples
content-management-systeme-commerceproductsap-commerce-cloudcatalog

What is the Concept of catalog and catalog aware items in hybris?


I have gone through all the formal definitions of these terms. But still, i have tough luck understanding them. I am a beginner in hybris. So Can somebody explain these concepts as simple as possible?


Solution

  • You must first understand the catalog concept in hybris.

    The catalog in hybris, or anywhere in the world contains items for business. Therefore, Catalog in general, is the container of the commodities which are sellable entities (product) and which can be referred by the end users for transactions.


    The catalog is not limited to just list of items, but how they are arranged also. Just an example, if you go to food restaurants, you can refer to their menu (that is actually a generalized catalog). You would notice that different restaurants, though serve the same food, but have different arrangement of items (products) in their menu - sometimes with different names, sometimes under different sections (categories). This is very similar to the hybris product catalog.

    Now, taking the restaurant example further, Again two restaurants might serve the same food, but will have different ambience. This means the theme of the restaurant, the uniform of the waiters, the logos etc. This is similar to the hybris content catalog

    Therefore, summarizing the above explanations, hybris has two catalogs - Product Catalog responsible for arrangement of the product hierarchy and the other as Content Catalog responsible for the layout (or the e-ambience) of the website.


    Hybris Catalog has two versions - Offline (Staged) and Online. The business users work on the Staged version and push it (to) Online once the item under work (product or content) is suitable to go live. They do this via a process called Synchronization.

    This process picks the items from Staged version, checks for some rules (which indicate that the item is ready to go live), and creates (or updates if already created) a copy of the item with Online as the version. Hybris system understands that only Online needs to go live, picks the item, and displays it on the website (storefront).


    Now, there are some entities which should have two copies in the system, so that Business users (like content managers or product managers) can make appropriate changes to make it look suitable on the website before it actually appears there. E.g. - Product, Images etc.

    But there are certain items which need not to have to copies of them, E.g. - Price, Stock etc. because they would be same for both copies of the item (Product in this case) and creating another copy would be an overhead on the system.

    Therefore, the items that (should) take part in the synchronization process like Product, CMS Pages, Components etc. are called Catalog Aware.

    The items which do (or should) not take part in synchronization process are called Catalog Unaware

    Hope this helps!