- From: Michael Sperberg-McQueen <U35395@UICVM.UIC.EDU>
- Date: Wed, 11 Jun 97 09:30:00 CDT
- To: W3C SGML Working Group <w3c-sgml-wg@w3.org>
On Tue, 10 Jun 1997 23:38:58 -0400 (EDT) Terry Allen said: >Irrespective of the merits of the decision, which it will take some >reflection to absorb, please define the technical terms for all >the flavors of XML processors the spec defines and use *only those >technical terms* elsewhere in the spec (just like the BNF). That >means that "An XML processor which reads the DTD" should be emended >to "a validating XML processor", "any XML-compliant processor", or >"any XML processor", depending on what is really meant. > >The target audience for this spec shouldn't have to figure out >what kind of XML processor reads DTDs, because half the time he'll >get it wrong. Point taken. I had thought the following was clear enough from the spec, but perhaps it's not: - XML is designed to allow processors to skip reading the DTD, if there is a DTD and they choose to skip it; if the RMD in the XML declaration is correct, such processors can reliably know whether skipping the DTD will have any effect on the grove they produce. - Validating processors must always read all the DTD. - Non-validating processors need not read the DTD. - A processor may read the entire DTD and still not be a validating processor (I might read the entire DTD so as to be able to produce the absolutely correct grove, and still not get around to checking against content models) -- such processors are unlikely to be very very common, but that's irrelevant to the fact that they are logically possible and should be legal. So the difference between processors which read the DTD and those which don't is not validating vs. non-validating, and not conformant vs. non-conformant. It's just processors which read the DTD vs. those which don't. The former is a superset of validating processors. -C. M. Sperberg-McQueen
Received on Wednesday, 11 June 1997 10:36:26 UTC