XSchema Question 3: Internal/External subsets

Matthew Gertner matthew at praxis.cz
Mon Jun 1 12:10:45 BST 1998


IMO: No. By allowing linking of element type definitions (cf. my previous
post) this can be done more cleanly by extending the element type in a
separate schema. This could work in a similar way to "drawing in" an element
type description from another schema, by including the link on the
ElementTypeDef:

<xschema>
  <ElementTypeDef id="greetings" xml:link="simple" role="XSchema"
href="http://www.xschema.org/library/oldgreetings.xsc#id(greetings)">
    <ContentSpec>
    <Seq optional="yes" repeatable="yes>
    <ElementType>politeform</ElementType>
    <ElementType xml:link="simple" role="XSchema"
href="http://www.xschema.org/library/person.xsc#id(person)">person</ElementT
ype>
    </Seq>
    </ContentSpec>
  </ElementTypeDef>
</xschema>

This leads to the question of how the new content affects the old one. The
most conservative approach would be to do exactly the same thing that
SGML/XML does with the internal subset: replace the entire content model
and/or attribute list, as appropriate. A better but more ambitious approach
would be to enable some kind of extension of the existing definition
(leading us back into our inheritance/subtyping discussion, but perhaps with
more chance of a concrete outcome).

Even if the general opinion is that these issues should be left for later,
one the more fundamental aspects of XSchema have been ironed out, it might
still be helpful to keep them in mind to ensure that more powerful
mechanisms such as these fit into the model.

BTW: Now that I think about it, there is absolutely no reason why the above
definition could not be included in a document, if the schema anticipates
this by adding an optional "xschema" child to certain elements. This is both
more rigorous and more powerful than the internal subset (which is always
allowed, but only once in a specific location). I suspect that we are only
beginning to discover the power that a unified schema/document syntax
offers...

Matthew

-----Original Message-----
From: Simon St.Laurent <SimonStL at classic.msn.com>
To: Xml-Dev (E-mail) <xml-dev at ic.ac.uk>
Date: Saturday, May 30, 1998 7:00 PM
Subject: XSchema Question 3: Internal/External subsets


>This was actually one of the questions I was planning for the end, but
Peter's
>recent examples have made me move it to the front.
>
>Should XSchema provide internal and external subsets, as do XML DTD's?
>
>Note: Please keep in mind that answering no at this stage does not imply
that
>internal subsets will be banished for all time.  It simply means that
XSchema
>1.0 would not support internal subsets.  (We could banish external subsets,
>but I doubt that makes sense to anyone.)
>
>Simon St.Laurent
>Dynamic HTML: A Primer / XML: A Primer / Cookies



xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)




More information about the Xml-dev mailing list