The Metadata Schema Facility

This page describes the Metadata Schema Facility (MSF) developed by the eResearch (MAENAD) group to create the MSS schemas used by the MDE metadata editor.

MSS Schemas

The MSS approach to metadata schemas is based on the following observation:
  • There are many different ways to represent metadata (e.g. meta tags, RDF, XML) and different ways to represent metadata schemas. However at the core of any metadata schema is a conceptual model of the structure and meaning of the metadata that is separate (though related to) any representation scheme.
  • Existing representations for metadata schemas (e.g. RDF-S and XSD) are largely focused on the representational aspects of the metadata, and do little to address questions of meaning and semantic correctness. For example, they often cannot express simple conditionality (e.g. element "b" must be present if element "a" has a given value) or more range constraints.
  • Existing representations are not good at expressing the details of relationships between schemas. For example, that schema "A" is based on "B" with certain elements added and others ones redefined, or that "C" and "D" have certain pairs of elements that mean the same thing.
The MSS approach entails separating the schema definitions into an core schema (an information model) and a series of schema profiles (representation models). The core schema defines the elements, their names, types and cardinalities. Types in particular are defined in a way that focuses on the nature of the values that are being expressed rather than on their representations. (Thus, we support DecimalType and FloatType as distinct subsets of the real numbers with different computational properties.)

An MSS core schema can also include extra constraints on element values, between element values and concerning element presence and absence. These constraints are expressed in expression language with 20 or so operators. While not computationally complete, it is sufficient to express the vast majority of (internal) restrictions that one might want to place on a metadata record.

MSS schema profiles specify how the information is represented using specific technologies. For example, an XML schema profile may specify XML element names, attribute name and value types to be used for a specific XML rendering of metadata. The MSS approach supports multiple schema profiles for a core schema, possibly using the same representation technologies.

Tools

At a practical level, MSF provides tools for performing a number of tasks.

The Metadata Schema Editor (MSE) is a GUI-based editor for creating MSS schemas and profiles. The editor framework ensures that the MSS models are structurally well-formed, and a series of constraints deal with more complex validation rules. For example, there is a constraint on XML profiles that ensures that every element in the core schema will be mapped to XML. Another constraint ensures that expression nodes with N-ary operators have N operand subexpressions.

MSE includes a couple of schema generators. The most important of these is the "flattener" which resolves and in-lines the definitions of types defined outside of a given MSS schema. The resulting "Flattened-MSS" schema is the form that is used by MDE. The other generator takes a flattened MSS schema with an XML schema profile, and generates an equivalent XSD file.

These generators are integrated into some MSE "wizards". The most complex of these runs the flattener and XSD generator for a model consisting of a collection of schemas, and the source model and the generated schemas to the MDSR.

Contact

For more information about this software, please contact scrawley at itee.uq.edu.au or chernich at itee.uq.edu.au.
Initiatives
Projects
Tools and services
Schema
Schema registries
Journals
Other resources

Metadata.Net is maintained by the MAENAD Project of ITEE at the University of Queensland

Last modified: June 1, 2008