Re: HTML WG last call remark (no way to declare entities?)

----- Original Message -----
From: Henry S. Thompson <ht@cogsci.ed.ac.uk>
Sent: Monday, July 10, 2000 1:27 PM


> "Roger Bishop Jones" <rbjones@rbjones.com> writes:
>
> > The definitions both of validity and of well-formedness in the XML 1.0
> > specification make reference to the DTD, and this presumption that there
is
> > a DTD is a minor issue for the formulation of XML schema.
> > In relation to validity the approach of XMLschema appears to be to
define a
> > new kind of validity, "schema-validity".
> > Given that this approach is taken to validity the obvious course in
respect
> > of well-formedness would be to define "schema-well-formedness" giving
the
> > minor adjustments to the notion of well-formedness that are appropriate
to
> > XML documents which use schemas instead of DTDs.
>
> With respect, that's not a viable option in my view.  At the start of
> the XML Schema work, we made a fundamental commitment to building on,
> not replacing, the in-place foundations of XML 1.0, and your proposal
> would abandon that commitment.

This is a re-iteration of the very point of which I am seeking explanation
and justification, which leaves me no clearer about why this is held to be
the case.
There is a real question about what constitutes a significant change to the
"in-place foundation of XML 1.0".

It seems to me that the effect of the existing XML Schema proposal for users
who migrate from DTDs to Schemas, is that support for general entities in
XML is withdrawn.
This is a clear breach of the XML Schema requirements document, which makes
no fine points about the respects in which XML Schema may constitute a
change
to XML, but does affirm that Schemas will be more expressive than DTDs, and
specifically makes at least two references to support of entities.

To introduce an alternative to DTDs is to make an effective change relative
to XML 1.0, and XML Schema cannot avoid this.
By defining a new kind of validity (schema-validity) it does this in a way
which is backward compatible, which is clearly desirable (which is simply to
say that it makes no difference to people who stick with DTDs).
My proposal is exactly the same in this respect.

My proposal and the existing XML schema proposal only effects those who
chose to migrate from DTDs to schemas, and clearly it is of the essence of
XML schema that these people must make changes.
The principle difference between the existing proposal and my suggestion is
that with the existing proposal migration not only involves replacing DTDs
with schemas, it also involved elimination of general entities from the XML.
How a proposal which effectively removes this facility can be regarded as
not changing XML, while the alternative of providing continued support for
general entities is regarded as changing XML is difficult for me to
understand, and a bald re-iteration of this position is not helpful.

There is another way to look at the differences between the two proposals.
The existing Schema proposal is kind to parser developers since it has the
consequence that non-validating parsers are not affected by XML Schema.
If support for general entities were not effectively withdrawn by XML
Schema, and a new way of defining general entities were introduced, then
existing non-validating parsers which must check definedness of general
entities in "standalone" documents would have to be changed if they were to
support checking of well-formedness of standalone documents with an internal
schema subset.

This is the only reason I can comprehend for not allowing general entities
to
be defined in schemas, and it seems to me a very poor reason.

> > Talking about "schema-well-formedness" may sound odd when the schema is
> > supposed to define validity rather than well-formedness, but this just
> > carries forward the historical situation in relation to XML 1.0 that the
> > content of the internal subset of the DTD, and the existence (or
otherwise)
> > of an external subset (or at least the value of a "standalone"
attribute)
> > plays a role in the definition of well-formedness.
>
> This exaggerates the situation considerably.  DTDs, if present, may or
> may not be well-formed, but a conformant processor has _no_ obligation
> to process an external DTD to determine the well-formedness of an XML
document.

I may be incorrect in mentioning the existence of an external subset rather
than simply referring to documents with "standalone=no" (though one would
expect these to coincide).
But I definitely did not say or imply that processing of the external subset
is required, and you have therefore missed my point.

Roger Jones

Received on Sunday, 16 July 2000 02:37:26 UTC