Chapter 5. Content Modeling


  • Defining a content model to represent your business domain

  • Registering your content model with the Alfresco content repository

  • Interacting with your content model via JavaScript

  • Understanding how a content model relates to the CMIS Data Model

Content modeling is a fundamental building block of the Alfresco content repository that provides a foundation for structuring content and working with content. It is an important concept to grasp, as nearly all solutions built with Alfresco require some form of content modeling.

The purpose of content modeling is to specify how nodes stored in the content repository are constrained. This imposes a formal structure on nodes that can be understood and enforced by an ECM application.

The storage engine of the content repository employs an uncomplicated data structure for recording entities, metadata, and relationships. The data structure is a tree of nodes where each node supports one or more properties whose values may be of any data type and either single- or multi-valued. A node has at least one parent (except for the root node, which has no parent) and may contain one or more child nodes. Nodes may also be related through arbitrary peer relationships. Although a straightforward data structure, its inherent simplicity allows the development of complex content constructs.

Content modeling puts the following constraints on the data structure:

  • A node must be of a given kind.

  • A node must carry an enumerated ...

Get Professional Alfresco: Practical Solutions for Enterprise Content Management now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.