versions

The <versions> element lists two things: the available versions of a clip, and the version currently in use.

Different versions of a track are described by different <feed> elements each identified with a unique vuid attribute. In a Open clip XML, a specific version of a clip is defined as all the <feed> elements sharing the same vuid attribute accross different <track> elements.

The <version> element describes and lists the available versions, while the currentVersion attribute defines which <version> element is the current one. The client application that reads the .clip is not required to set currentVersion; it only serves as a flag put there by the creator.

Consider the following, simplified example.

<tracks>
	<track uid="track1">
		<feeds>
			<feed vuid="v1" uid="t1f1"/> 
			<feed vuid="v3" uid="t1f2"/> <!-- version 3 of the track, version 2 was never created -->
		</feeds>
	</track>
	<track uid="track2">
		<feeds>
			<feed vuid="v1" uid="t2f1"/>
			<feed vuid="v2" uid="t2f2"/>
			<feed vuid="v3" uid="t2f3"/> 
		</feeds>
	</track>
</tracks>

And you have the following <versions> structure.

<versions currentVersion="v2">
	<version uid="v1"/>
	<version uid="v2"/>
	<version uid="v3"/>
</versions>

You now have a clip that can display the following:

And in this example, the client application should display the version 2 of the clip because currentVersion= 2 .

Attribute Description Data Type Allowed Values Attribute is...
type The data type of the element. character data versions Implied
version Version of the xml element. unsigned integer 4 Implied
currentVersion Defines the current version of the clip, as set by the client application that created the file. The client application is expected to view this version as the most up-to-date.

If not defined, the Gateway considers the last <version> element defined in the file as the current version.

IDREF any existing one uid from an enclosed <version> element. Implied
Children
Mandatory
version+
Parent
<clip>