IMS Metadata Extensibility Proposal

CO 10/14/98

Overview

Basic requirements:

Basic assumptions

Synopsis of proposal

        0 = (No error) Entirely valid, or don’t care
        1 = Warning: unknown element
        2 = Custom validation error (attempt to redefine an element specified in an unregistered but accessible extension DTD, or missing element specified as required by the DTD),
        3 = Base validation error (attempt to redefine a base or registered extension element, or missing element specified as required by the DTD).

How it woks

This proposal assumes that there are 3 kinds of implementations using the IMS metadata.

Non-validating systems:

A system that interprets IMS Metadata encoded as XML, including possible extensions, but does not attempt to validate, does the following:

Such a system should be allowed where the cost of implementing DTD valication in either an XML Meta-data authoring tool or in a simple data reading tool may exceed the usefulness of validation.

Validating system with strict base compliance

Such a system does not allow any extensions. It uses only the current approved W3C approved XML specification and the generic tools available to parse data formatted according to that specification. Such a system must:

Such a system is of limited usefulness, since it can be extended only by specifying an "ANY" branch that cannot be validated. However, it may be useful in testing systems for strict compliance.

Such a system may be extended also by using a reference to a "super-DTD" that is built for a specific domain. The construction of such a super-DTD for each domain or domain combination is currently an exercise for the imagination.

Validating system with extension support

A system that validates and support extensions does the following:

Note that what a system does with unknown data elements may vary. For example, a meta-data editor tool may choose to preserve unknown data elements in case it needs to re-export the data, while others would just discard them. A meta-data editor tool may also filter which data it shows, depending on which DTD specifies the data. For example, a Math Exercise metadata editor might choose to ignore any meta-data not defined in either the Base DTD or a "Math_Education" extension DTD.

Example

This example uses a snippet of a sample xml file:

Base schema

"Woven in" extension data element


<Title>
<Locale>
en_US
</Locale>
<String>
Extending Metadata
<String>
</Title>

<Title>
<Locale>
en_US
</Locale>
<String>
Extending Metadata
<String>
<Abbreviation>
Ext-MD
</Abbreviation>
</Title>

Advantages of this proposal:

Disadvantages of this proposal: