Re: XHTML modularization and substitution groups (tag issue XMLVersioning-41, TagSoupIntegration-54, RDFinXHTML-35)

Hello public-xml-versioning,

Dan wrote:
> I'm interested in a form of extensibility where a markup
> language designer can make a new my:box element and
> say "it's an HTML block element"; then, when a
> document containing a my:block element is checked
> for syntactic happiness, the checking tool uses
> normal HTML schemas until it gets to my:box; then
> it looks up my:box in the web, finds that it's
> declared to be an HTML block, and find than
> an HTML block is allowed here, and carries on happily.

Thats interesting, but it seems to assume a top-down model where
extensions are tightly bound to their expected environment. What if I
want to use my:box inside Timed Text, or inside SVG?

> XML Schema substitution groups are designed for this use case.
> Legend has it you tried to use them in XHTML modularization but
> it didn't work out or something. We're interested to know the
> whole story.

I recall that Mark Birbeck demonstrated jumping through a large number
of hoops (some in the spec, and some in implementations) to show how to
do this in W3C XML Schema.

As a result of that, more groups became interested in using RelaxNG
(nowadays, with Schematron annotations in the RelaxNG and with NVDL to
do the dispatching).

W3C XML Schema is very popular for database-like XML data, but RelaxNG
seems better suited (and much more popular) for document-like XML.

> Shane, I understand you have some worked examples of XML Schemas
> somewhere in this neighborhood?

I can point to some worked examples using RNG (and the same in DTD)

Here
http://www.rddl.org/xhtml-rddl.rng
is the schema for RDDL. It could hardly be simpler.

(RDDL is a language for namespace documents, defined using the W3C
XHTML Modularization).

Of course it much more verbose in DTD language
http://www.rddl.org/rddl-xhtml.dtd
because its hacking around in a less expressive, and namespace unaware,
language.

But its basically doing the same thing - listing a bunch of modules.


> I'm also interested in whether CDF/WICD can/should use substitution
> groups.
> http://www.w3.org/TR/WICD/

They decided to use NVDL and RelaxNG instead.


-- 
 Chris Lilley                    mailto:chris@w3.org
 Interaction Domain Leader
 Co-Chair, W3C SVG Working Group
 W3C Graphics Activity Lead
 Co-Chair, W3C Hypertext CG

Received on Thursday, 15 February 2007 17:02:20 UTC