Chapter 5. Content Modeling
WHAT'S IN THIS CHAPTER?
Defining a content model to represent your business domain
Registering your content model with the Alfresco content repository
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 ...