Type as a sequence of QNames

Hi,

You've probably already thought of this, but thinking about the
possibility of using RELAX NG to provide type information during the
construction of a node tree, I was wondering if the data model could
be made more schema-language neutral by having the 'type' of a node be
a sequence of QNames instead.

For node trees derived from the PSVI from XML Schema validation, the
sequence could contain the type of the node, its base type and so on
up to and including xs:anyType/xs:anySimpleType.

For node trees generated during RELAX NG validation, the sequence
could contain the names of the define elements used while validating
the content of the node.

Even languages like Schematron could be used -- each rule could have
an 'type' annotation and the node be assigned a type based on these
annotations.

Then type matching in sequence type matching could test whether the
named type was listed within the type of the node without having to
worry about (or depend on) type hierarchies being present.

In parallel, I suppose that the name of an element could be a sequence
also containing the name of the head elements of any substitution
groups that it belongs to; the name() function could still just return
the first (actual) name of the element, but the sequence could be used
when doing sequence type matching.

Cheers,

Jeni
---
Jeni Tennison
http://www.jenitennison.com/

Received on Friday, 12 July 2002 05:38:53 UTC