Skip to main content

CMDI 1.2 for metadata creators

CMDI 1.2

Information for metadata creators

Metadata creators use dedicated tools or generic editors to create records, either directly or through a pipeline that may include conversion to one or more output formats including CMDI. Each CMDI record should comply to a specific CMDI profile, a schema for which can be obtained from the Component Registry in two versions: one for CMDI 1.1 and one for CMDI 1.2.

What is CMDI 1.2?

See the page on CMDI 1.2 for general information about CMDI 1.2.

How does CMDI 1.2 affect me?

As a creator of CMDI metadata you can choose whether you create CMDI 1.1 or CMDI 1.2 metadata, regardless of the CMDI profile on which you base your profile. For each profile, an XSD schema is available for either version. However, there is a caveat: since features that have been introduced in CMDI 1.2 cannot be reflected in CMDI 1.1, the schemata of profiles that use one or more of these features will have slightly different constraints. For example, if a profile declares an attribute to be mandatory, it will still be optional in the CMDI 1.1 version of its schema, as attributes are optional by definition in that version. Furthermore external vocabularies, cues for tools and multilingual documentation will not be represented in CMDI 1.1 schemata.

If you choose to create CMDI 1.2 metadata you will be able to use the following new features (some of them depending on wether they are used by the profile on which you base your metadata):

  • external vocabularies (using CLAVAS) and semantic value annotation
  • enhanced description of relations between resources
  • documentation on component, element and attribute level (expressed in the schema document)
  • extended display information and other 'tools for cues' (expressed in the schema document)

These features are described in detail in the CMDI 1.2 changes executive summary and CMDI specification documents.

If you are creating metadata in another format that is converted to CMDI at a later stage, consider providing both CMDI 1.1 and CMDI 1.2 to the consuming parties. This can be done by using separate conversion pipelines, or creating CMDI 1.1 first and converting the result to CMDI 1.2 using the upgrade facilities from the CMDI toolkit. However, the latter strategy prevents you from using CMDI 1.2 specific features such as external vocabularies or mandatory attributes.

Should I take action immediately?

Any CMDI 1.1 metadata, whether it was created before or after the introduction of CMDI 1.2, can be upgraded to CMDI 1.2 at any stage. You can make your decision to switch to CMDI 1.2 based on tool support, your desire to use certain features and the availability of these features through the profile(s) you are using at any point in time.

How can I switch to CMDI 1.2?

At the time of writing (July 2016), there is no dedicated CMDI editor that supports version 1.2 yet. You can of course use a generic text editor or XML editor (such as Oxygen or Atom), or use an editor with support for CMDI 1.1 and convert the resulting records to CMDI 1.2 using the toolkit as explained in the next paragraph.

The toolkit provides two ways of converting CMDI 1.1 records to instances that comply with CMDI 1.2: manually via an XSLT stylesheet, or by means of a command line conversion tool that also allows batch conversion and validation. The stylesheet for the former method is available online as part of the CMDI 1.2 toolkit. The conversion tool can be compiled from source or downloaded as a pre-compiled runnable JAR file that works on any system with Java (version 8 or higher) installed. Both can be found, with usage instructions, on the CMDI toolkit GitHub page.

If you are creating CMDI 'by hand' using a text editor or XML editor, make sure to use the 'CMD' node in the namespace http://www.clarin.eu/cmd/1 as the root node. The first child of the 'Components' node in the same namespace should be in the profile specific namespace, which starts with http://www.clarin.eu/cmd/1/profiles/, followed by the identifier of the profile. Have a look at the example records that demonstrate the document structure.