Start of Content Area

Background documentation Versioning  Locate the document in its SAP Library structure

In Knowledge Provider, the term ‘versioning’ is an umbrella term for various subtypes of versioning. These subtypes are defined by means of various relationship classes. In general, versioning describes the relationship between two documents where one of the documents is derived from the other.

The following versioning relationship classes are predefined in the Knowledge Provider:

Criterion: content has changed

Criterion: format has changed

Criterion: language has changed

Multiple Versioning

The Knowledge Provider also supports the principle of multiple versioning, independently of these criteria. If a number of physical documents are derived from one physical document, multiple versioning is required, so that the various versions of the document can be administrated. The document versions vary in terms of format, language, and so on.


Three versions of the content of a physical document exist. These versions are of equal status.

For example, if a German document is translated into English and Spanish, this is multiple versioning.

The following graphic illustrates the principle of multiple versioning based on the versioning criterion "content":

Multiple Versioning

This graphic is explained in the accompanying text

The logical document on the left-hand side contains two washing machine manuals in English, one manual for model 100 and another for model 200. The manual for model 200 was derived from the manual for model 100. However, a technical fault has been identified in model 100, and so the manual has to be modified accordingly. A new content version is created, but the original is retained, not overwritten. This is so that the name of the person who made the changes and the time that changes were made are recorded (for quality assurance purposes, for example). A new physical document for model 100 is therefore created. This is illustrated in the right-hand side of the graphic. Now there are two content versions that were derived from the original content for model 100.

Strict Versioning

The principle of strict versioning ensures that the content of physical document components is automatically protected. Every change triggers the creation of a new version of the document with a new ID. In the case of applications that deal with a large number of documents, this procedure can lead to a high versioning overhead. If references to different document versions are being used, every reference has to be updated whenever a new version is created or an existing version is deleted. The three-layer content model (see Content Models), however, solves these problems. The three-layer content model supports both strict versioning and inter-document references. In the model, all references are to logical documents. New versions of individual physical documents with new IDs cause no problems. The three-layer content model therefore avoids unnecessary versioning overhead.

Versioning Type

Content Versioning

If component content of an existing physical document is changed, and this results in the creation of a new physical document, content versioning is responsible for saving and administrating this information in the Knowledge Provider. Content relationships are used for content versioning.

Format Versioning

Format versioning uses format relationships to ensure that physical documents that differ only in terms of format are administrated separately. Format versioning can only be carried out on physical documents that belong to the same logical document.


If a .PDF document is generated from a .DOC document, the Knowledge Provider defines the relationship as a format relationship. Format versioning administrates this relationship and keeps a record of which DOC the PDF was created from. This enables the system to deal with requests along the lines of "Is this physical information object available in a format that my application can understand?"

Language Versioning

Language relationships are administrated by a process called language versioning.


A translator wants to translate a Knowledge Provider document from German into English. A copy of the German original can be transferred to the user’s application via the Knowledge Provider interface. The language relationship between the copy and the original is created at this point. Once the translator marks the translation as completed, the translation is transferred back to the Knowledge Provider by means of the check-in function. Language versioning administrates existing language relationships and deals with requests along the lines of "Does physical document 4711 exist in languages x, y, and z?"

End of Content Area