Re: Roots of the DTD

John Cowan (cowan@locke.ccil.org)
Fri, 05 Jun 1998 09:52:43 -0400


Ron Bourret wrote:

> A default root might fly. Certainly a mandatory root is wrong.
>
> In many ways, the XSchema PI is like DOCTYPE -- it points to a document
> containing the structure of your document. As Simon suggested, it should
> therefore have a way to specify the root element, similar to the doc-type in the
> DOCTYPE declaration.

I agree.

> Unfortunately, these raises conflicts between DOCTYPE and the XSchema PI, since
> they are two different ways to do the same thing.

I think this is just a special case of XSchema PI vs !DOCTYPE conflict
in general. After all, a document might insist that it conforms
to a.dtd and b.xschema.xml, where a is not in any way transformable
to b. With a well-chosen document and a and b, the document might
even pass validation.

> I don't like telling people they can use DOCTYPE or XSchema PIs but not both. I
> also don't like having to write a long list of conflict resolutions -- it just
> makes XSchemas harder to use. In both cases, it feels like we are imposing
> requirements not in the XML spec. Ideas?

I say, give the users plenty of rope, and if they hang themselves,
they hang themselves. However, I would say that a document conforms
to an XSchema if its actual root is an element defined in the XSchema,
even if the XSchema-PI doesn't declare any root.

-- 
John Cowan	http://www.ccil.org/~cowan		cowan@ccil.org
	You tollerday donsk?  N.  You tolkatiff scowegian?  Nn.
	You spigotty anglease?  Nnn.  You phonio saxo?  Nnnn.
		Clear all so!  'Tis a Jute.... (Finnegans Wake 16.5)