Versioning
The MDM version feature enables you to make a “snapshot” of the metadata at significant points in its development, such as after you create the first draft of the questionnaire, before you send the approved questionnaire for translation, when you start to collect data, and each time you add or remove a question or category.
From the external user's point of view, each “snapshot” appears to be a copy of the historical project as it was published. However, internally it corresponds to a Version object, which is not simply a discrete metadata document, but which exposes metadata that corresponds to the published version, and hides any metadata that does not belong to that version.
Each Version object is listed in the Versions object. For example:
Versions in an MDM document
When you add a version using the Versions.AddNew method, the new version is added to the end of the list. This means that the Versions object lists the versions in sequential order. You cannot modify this list.
A particular Version object is accessed by setting the Document.CurrentVersion property. When this is done, only the questions and categories that existed in that published version are exposed.
You can access two or more (or all) published versions in a similar way. When you do this, the versions are combined to form a superset (sometimes called a superversion), although when there is a conflict between, for example, a text in one or more of the versions, the more recent versions generally take precedence over the older versions. However, you can sometimes specify the order of precedence. You typically use a superversion when you want to export or analyze response data that has been collected using more than one version of the questionnaire.
See also