US11880870B2ActiveUtilityA1

Headless content management system (CMS)

40
Assignee: SITECORE CORP A/SPriority: Feb 10, 2017Filed: Feb 12, 2018Granted: Jan 23, 2024
Est. expiryFeb 10, 2037(~10.6 yrs left)· nominal 20-yr term from priority
G06Q 30/0276G06F 3/0483G06F 16/955G06F 16/958G06F 16/9577G06F 40/00G06F 40/106G06F 40/131G06F 40/143
40
PatentIndex Score
0
Cited by
16
References
24
Claims

Abstract

A system, method, and apparatus provide the ability to generate and deliver digital content in a headless content management system. A layout engine exposes a visual editing interface to a business user and accepts input to compose a layout consisting of components that define structural entities that control what to render. Marketing content is associated with the components. Each component is added, via the visual editing interface, to zones of the layout. Developer code may restrict a type of component that can be added to each zone. The layout and zones control a conceptual design for rendering the digital content. The layout engine receives a request for content from one of multiple different client applications that are executing in different hosting environments. The content is delivered, based on the layout, to the client application for rendering to a consumer.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A computer-implemented system for generating digital content comprising:
 (a) a computer; 
 (b) developer code executing on the computer, wherein:
 (1) the developer code defines one or more zones, the more zones define a structure of a layout, and the developer code restricts a type of component that can be added to one or more of the one or more zones; 
 (2) the developer code controls a schema of one or more components; 
 (3) the developer code controls structural elements to be displayed while permitting content that is displayed to be controlled by a layout engine; 
 
 (c) the layout engine executing on the computer, wherein:
 (1) the layout engine exposes a visual editing interface to a business user; 
 (2) the visual editing interface accepts input from the business user to compose the layout comprising one or more components without engaging with a developer that controls the developer code; 
 (3) marketing content is associated with one or more of the one or more components; 
 (4) the marketing content is stored in a marketing content database; 
 (5) each of the one or more components are added, via the visual editing interface, to one or more zones of the layout consistent with the type of component set forth in the developer code; 
 (7) the one or more components define structural entities that control what marketing content to render; 
 (8) the layout and the one or more zones control a conceptual design for rendering the marketing content; 
 (9) the layout engine receives a request, from a client application; 
 (10) multiple different client applications execute in multiple different hosting environments; and 
 (11) in response to the request received from the client application, the layout engine delivers the component and associated marketing content, in accordance with the layout, to the client application for rendering to a consumer in a technology specific to a hosting environment where the client application is executing. 
 
 
     
     
       2. The computer-implemented system of  claim 1 , further comprising:
 a layout database where the layout is stored, wherein the layout is stored in the layout database as a partial layout, and wherein the partial layout can be reused to compose other layouts. 
 
     
     
       3. The computer-implemented system of  claim 1 , further comprising:
 one or more variances that are added, by the business user, to each of the one or more components, wherein each of the one or more variances comprises one or more personalization rules that trigger different marketing content to be associated with the one or more components. 
 
     
     
       4. The computer-implemented system of  claim 3 , wherein the one or more variances control:
 the marketing content that is associated with each of the one or more components; 
 a type of each of the one or more components; and 
 non-marketing metadata associated with each of the one or more components. 
 
     
     
       5. The computer-implemented system of  claim 3 , wherein the layout engine:
 measures an effectiveness of the one or more variances based on a set of measurement criteria; and 
 selects, based on the set of measurement criteria, an optimal variance from the one or more variances, to associate with one of the one or more components. 
 
     
     
       6. The computer-implemented system of  claim 1 , wherein the layout is varied, based on input from the business user, and based on the client application, a language, or a geographic region. 
     
     
       7. The computer-implemented system of  claim 1 , wherein in response to the layout engine receiving the request, the layout engine:
 performs a lookup of the layout in a layout database; 
 assembles the one or more components added to the one or more zones in the layout; and 
 produces machine readable output that can be interpreted by the client application that performs the rendering of the layout in the technology specific to the hosting environment where the client application is executing. 
 
     
     
       8. The computer-implemented system of  claim 1 , wherein:
 the request identifies the consumer; 
 in response to receiving the request, the layout engine establishes a special context based on information in a consumer behavior database, wherein the information relates to the consumer; and 
 the special context executes a composition of the layout that personalizes the one or more components to the consumer based on the information in the consumer behavior database. 
 
     
     
       9. The computer-implemented system of  claim 1 , wherein:
 the request does not specifically identify the consumer; 
 in response to receiving the request, the layout engine establishes a special context based on information in a consumer behavior database, wherein the information relates to implicit attributes in the request; and 
 the special context executes a composition of the layout that personalizes the one or more components to the consumer based on the information in the consumer behavior database. 
 
     
     
       10. The computer-implemented system of  claim 1 , wherein:
 upon receiving the request, the layout engine records the request and metadata in a consumer behavior database; and 
 the layout engine uses the consumer behavior database to personalize responses to subsequent requests. 
 
     
     
       11. The computer-implemented system of  claim 1 , wherein the layout engine:
 determines that a security context has been established for the request; 
 impersonates the request as a given identity based on the security context; and 
 delivers only parts of the layout that the given identity has read access to. 
 
     
     
       12. The computer-implemented system of  claim 1 , wherein:
 the one or more components comprise personalized components and non-personalized components; 
 the layout engine replaces the personalized components with placeholder components in the layout; 
 the layout engine delivers, to the client application, the layout with the non-personalized components and the placeholder components; 
 the placeholder components are persisted for expedited delivery to the client application compared to delivery of the personalized components; and 
 the layout engine delivers the personalized components asynchronously for progressive loading by the client application. 
 
     
     
       13. A computer-implemented method for generating digital content, comprising:
 (a) developer code defining one or more zones, wherein:
 (1) the one or more zones define a structure of a layout; 
 (2) the developer code restricts a type of component that can be added to one or more of the one or more zones; 
 (3) the developer code controls a schema of one or more components; 
 (4) the developer code controls structural elements to be displayed while permitting content that is displayed to be controlled by a layout engine; 
 
 (b) exposing a visual editing interface to a business user; 
 (c) accepting input from the business user to compose a layout comprising one or more components without engaging with a developer that controls the developer code, wherein marketing content is associated with one or more of the one or more components; 
 (d) storing the marketing content in a marketing content database; 
 (e) adding each of the one or more components, via the visual editing interface, to one or more zones of the layout consistent with the type of component set forth in the developer code, wherein:
 (1) the one or more components define structural entities that control what marketing content to render; 
 (5) the layout and the one or more zones control a conceptual design for rendering the marketing content; 
 
 (f) receiving a request, from a client application, wherein multiple different client applications execute in multiple different hosting environments; and 
 (g) in response to the request received from the client application, delivering the component and the associated marketing content, in accordance with the layout, to the client application for rendering to a consumer in a technology specific to a hosting environment where the client application is executing. 
 
     
     
       14. The computer-implemented method of  claim 13 , further comprising:
 storing the layout in a layout database, wherein the layout is stored in the layout database as a partial layout; 
 reusing the partial layout to compose other layouts. 
 
     
     
       15. The computer-implemented method of  claim 13 , further comprising:
 adding one or more variances, to each of the one or more components, wherein each of the one or more variances comprises one or more personalization rules that trigger different marketing content to be associated with the one or more components. 
 
     
     
       16. The computer-implemented method of  claim 15 , wherein the one or more variances control:
 the marketing content that is associated with each of the one or more components; 
 a type of each of the one or more components; and 
 non-marketing metadata associated with each of the one or more components. 
 
     
     
       17. The computer-implemented method of  claim 15 , further comprising:
 measuring an effectiveness of the one or more variances based on a set of measurement criteria; and 
 selecting, based on the set of measurement criteria, an optimal variance from the one or more variances, to associate with one of the one or more components. 
 
     
     
       18. The computer-implemented method of  claim 13 , wherein the layout is varied, based on input from the business user, and based on the client application, a language, or a geographic region. 
     
     
       19. The computer-implemented method of  claim 13 , wherein in response to receiving the request:
 performing a lookup of the layout in a layout database; 
 assembling the one or more components added to the one or more zones in the layout; and 
 producing machine readable output that can be interpreted by the client application that performs the rendering of the layout in the technology specific to the hosting environment where the client application is executing. 
 
     
     
       20. The computer-implemented method of  claim 13 , wherein:
 the request identifies the consumer; 
 in response to receiving the request, establishing a special context based on information in a consumer behavior database, wherein the information relates to the consumer; and 
 the special context executes a composition of the layout that personalizes the one or more components to the consumer based on the information in the consumer behavior database. 
 
     
     
       21. The computer-implemented method of  claim 13 , wherein:
 the request does not specifically identify the consumer; 
 in response to receiving the request, establishing a special context based on information in a consumer behavior database, wherein the information relates to implicit attributes in the request; and 
 the special context executes a composition of the layout that personalizes the one or more components to the consumer based on the information in the consumer behavior database. 
 
     
     
       22. The computer-implemented method of  claim 13 , further comprising:
 upon receiving the request, recording the request and metadata in a consumer behavior database; and 
 utilizing the consumer behavior database to personalize responses to subsequent requests. 
 
     
     
       23. The computer-implemented method of  claim 13 , further comprising:
 determining that a security context has been established for the request; 
 impersonating the request as a given identity based on the security context; and 
 delivering only parts of the layout that the given identity has read access to. 
 
     
     
       24. The computer-implemented method of  claim 13 , wherein:
 the one or more components comprise personalized components and non-personalized components; 
 the method further comprises:
 replacing the personalized components with placeholder components in the layout; 
 delivering, to the client application, the layout with the non-personalized components and the placeholder components; 
 persisting the placeholder components for expedited delivery to the client application compared to delivery of the personalized components; and 
 delivering the personalized components asynchronously for progressive loading by the client application.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.