Site configuration model introduction
Introduction
Goal
Understand the design concepts behind Bloomreach Content's site configuration model and the different model entities and how they relate to each other.
Background
Managing site configuration is an essential development task when integrating Bloomreach Content. It involves configuring different entities that together make up the pages to be rendered by the front-end application.
Site configuration is pre-defined by Site developers through the Site Management API (or the Site development app, a GUI layer on top of the API) and modified by Site editors through the Experience Manager Application and delivered to the front-end application through the Delivery API's Pages endpoint.
This documentation explains the site configuration model's underlying design concepts and the model's entities and their relationships.
Related documentation
- Site Management API reference documentation
- Get started with Bloomreach Content tutorial, specifically Milestone 4: Create a component
- Developer experience guide, specifically Site development
Design concepts
Hierarchical model-view-controller
The hierarchical model-view-controller (HMVC) design pattern is central to the site configuration model and the main end product derived from it: pages. Each page is a layout tree consisting of containers and components. Each component consists of a model (content and/or product data), a view (presentation), and a controller (logic). All three of these are managed through Bloomreach Content:
- Model: content editing is core functionality of Bloomreach Content.
- View: presentation is supported through configurable component parameters, the Delivery API's Pages endpoint, and the Bloomreach SPA SDK.
- Controller: built-in base components provide out-of-the-box configurable backend functionality such as querying and retrieving content and/or product data.
Routing
The wiring for the HMVC pages is managed through routing configuration. Routes map requested URLs to layouts and content items, resulting in the actual page objects served through the Delivery API's Pages endpoint and rendered by the front-end application.
Entities and relationships overview
The following diagram depicts all the site configuration entities along with their relationships. Entities in red denote that they are not or only partially managed via the Site Management API.
The following entities are explained in more detail on their respective documentation pages:
Updated about 2 months ago