Content Management Systems
Although it is possible to create, manage and edit content in DITA without a CMS, it is invariably easier with the aid of a CMS.
A Content Management System (CMS) is a software system for managing the documentation development life cycle, including the processes of creating, updating, publishing, and translating information. A CMS is particularly important for modular documentation approaches such as DITA, as it allows authors to locate topics or elements already written, manage file and folder naming without breaking cross-referencing and other relationship links, manage content references, allow multiple authors to work collectively on the same documents, and store previous versions of topics for backup, archiving and other version control purposes.
Many systems also allow a release state to be used to manage the progression of information from draft, through review, approval and release. Most systems include user rights management, so that different users are given different access to the information according to their role in the documentation process.
In a DITA project, content management is more important if collaboration is required. If one person is responsible for all of the six stages of the content life cycle, the task of managing content is simple. But when there are many authors, many editors, many languages, complicated approval rules, and complicated archival requirements, the management task becomes enormous, and a CMS becomes a requirement.
- Import and creation of documents and multimedia material.
- Identification of all key users and their roles.
- The ability to assign roles and responsibilities to different instances of content categories or types.
- The ability to alert interested users to changes in content.
- The ability to track and manage multiple versions of a single instance of content.
- The ability to search through the text or metadata of all content.
- The ability to publish the content.
Content within a DITA CMS is normally stored (in DITA format) within a database repository. A database makes it easier to manage multiple versions, and retrieve and archive content. Some systems use an XML database, a type of database technology optimised for working with XML files.