Content versioning and workflows
A core feature of OpenWGA content stores is the versioning of content. OpenWGA keeps every version of a content that was ever released in its content store for later reference. Additionally when a content gets updated it first can be edited in a new "draft version" for an unlimited time while the previous version stays published and online. Only when the new "draft version" is published then it replaces the previously published version which then goes into archive state.
The following image illustrates the content versioning of a single page:
As you can see the content versioning applies for every single language independently in which content documents exist. Every content document has a content version number which is a sequential number identifying each single version in a language. The first version to be created becomes version 1, the second one is version 2 and so on.
A content document also has a workflow status, which is shown in the horizontal axis of this image. All new content versions start in status draft. Draft documents are invisible on the published website and can be edited by the author. If there is a released content version for the language in which the draft is created then the draft will be a copy of that released version and already contain all its data.
After an author is finished working on his draft he publishes it. What happens now is dependent on the fact if an approval workflow is defined for this page. If so it will enter status approval where workflow approvers will have a look at the new content version and decide whether it should be really published or not. If they decide that it should then they approve the document. After that the version is released and enters the workflow state of the same name. This is the only status where the content version will actually be visible on the published website. If there is no approval workflow then the document directly goes from status draft into status released.
If there already is a content version in status "released" on the language then this previously released version goes into status archived when a new content version gets released. Archived contents are also invisible to the public website but can be reviewed by authors for later reference or even be used as templates for newly created draft versions.
Looking back at the picture above we now can interpret the status shown there:
- In Language "de" there currently is content version 2 released and visible on the website. A new draft has been created and is already in approval workflow. When it is approved it will replace version 2 which then goes into archive, where already version 1 is contained
- In Language "en" there is only one version 1 which is already published
- In Language "fr" there are already two archived versions. Version 3 is released which a Version 4 is created but still in draft so the author still works on it. Note that there always either is a document in draft or in approval status, but never in both states at the same time. The OpenWGA Content Manager prevents draft creation while there is a another content version in approval status.
- In Language "it" there is only a version 1 in draft status, which is still worked on by the author. There is not yet any released version for language "it" which means that this page is currently not yet available on the website for this language.