Magnolia 5.4 reached end of life on November 15, 2018. This branch is no longer supported, see End-of-life policy.
Magnolia stores content in the magnolia
repository. The repository is further divided into workspaces.
Workspaces in the magnolia
repository:
Workspace | What it contains | How to view it | Created by |
---|---|---|---|
category | Categories assigned to content. | Categories app | Categorization module |
config | Configuration for Magnolia core and all modules. | Config app | Magnolia core |
contacts | Sample contacts used in the Contacts app. | Contacts app | Contacts module |
dam | Digital asset management system storage for images and video. | Assets app | Digital Asset Management module |
forum | Page comments and forum posts. | Forums app | Forum module |
googleSitemaps | Sitemap data | Google Sitemap app | Google Sitemap module |
imaging | Dynamically created images used in teasers. | JCR Browser | Imaging module |
messages | Messages such as publication requests. | Pulse | AdminCentral module |
MgnlSystem | System information for Magnolia internal use. | ||
MgnlVersion | Versioning information for Magnolia internal use. | ||
profiles | User favorites (bookmarks) | Favorites | AdminCentral module |
resources | CSS files, JavaScript files | Resources app | Resources module |
rss | RSS feeds | Feeds app | RSS Aggregator module |
scripts | Groovy scripts | Groovy app | Groovy module |
tags | Marketing tags – snippets of code inserted on Web pages. | Marketing Tags app | Marketing Tags module |
tasks | Tasks | Pulse | Task Management module |
templates | (typically nothing, legacy workspace for in-place templates) | JCR Browser | In-place Templating module |
tours | Tours of the travel demo. | Tours app | Tours module |
users | System, admin and public users. | Security app | Magnolia core |
userroles | User roles and ACLs. Created by Magnolia core. | Security app | Magnolia core |
usergroups | User groups. Created by Magnolia core. | Security app | Magnolia core |
website | Web pages, areas and components. | Pages app | Magnolia core |
In Magnolia we sometimes refer to a workspace as a "repository" for historical reasons. But it really is a workspace.
To add your own workspace:
repositories
section, a workspaces
section, and register your workspace inside it.nodeTypeFile
section and provide a relative path to the XML file that defines the node types.Example: The Contacts app module registers a workspace named contacts
in the magnolia
repository. It also registers a custom node type which is defined in a separate XML file. This is an abbreviated snippet from the complete Contacts app module descriptor.
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE module SYSTEM "module.dtd"> <module> <name>contacts</name> <displayName>Contacts App</displayName> <description>Contacts App</description> <version>${project.version}</version> <dependencies> <dependency> <name>ui-admincentral</name> <version>5.1/*</version> </dependency> </dependencies> <repositories> <repository> <name>magnolia</name> <workspaces> <workspace>contacts</workspace> </workspaces> <nodeTypeFile>/mgnl-nodetypes/magnolia-contacts-nodetypes.xml</nodeTypeFile> </repository> </repositories> </module>
In H2, the default JCR persistency layer in Magnolia 5.5+, the name (non-quoted)
In case of the Derby database, which was the default JCR persistency layer before the release of Magnolia 5.5, the ordinary identifier (i.e. the non-quoted name)
For more information, see also
Rules for SQL identifiers (Derby site)