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.
|