Configure Document Versioning
Overview
This page explains how to control when Bloomreach Content creates new versions of documents in the content repository. It describes both basic and fine-grained versioning, the default behavior for each document type, and how to enable fine-grained versioning for custom document types.
Basic Versioning
By default, basic (coarse-grained) versioning applies to all regular document types, except Experience Page Documents. With basic versioning, the system creates a new version in a document's history only in these cases:
- When you publish a document
- When you restore an older version of a document
Fine-Grained Versioning
Info: Fine-grained versioning is available starting with brXM 14.3.0.
Fine-grained versioning is enabled by default for Experience Page Documents. With fine-grained versioning, the system creates a new version in a document's history on the following events:
- When you save the document in the editor (either in the Experience manager or the Content application)
- When you manually create a new version in the editor (either in the Experience manager or the Content application)
- When you publish a document
- When you restore an older version of a document
Enable Fine-Grained Versioning for a Document Type
Fine-grained versioning is enabled for any document type that includes the hippostdpubwf:audittrace mixin.
Experience Page Documents include this mixin by default.
To enable fine-grained versioning for all documents of a specific document type, add the hippostdpubwf:audittrace mixin to the node type definition in your CND file.
For example, in a project created with the Maven archetype and with the News feature added, you can enable fine-grained versioning for the myproject:newsdocument node type by updating the repository-data/application/src/main/resources/hcm-config/namespace/myproject.cnd file as follows:
[myproject:newsdocument] > hippostd:relaxed, hippotranslation:translated, myproject:basedocument, hippostdpubwf:audittrace orderable
Hint: If your project includes bootstrap content or if you have existing content in your production repository, you may also need to add the
hippostdpubwf:audittracemixin in relevant YAML bootstrap files or directly to repository content. Test your changes thoroughly and resolve any bootstrap errors before deploying to production.