- From: Paul Grosso <paul@paulgrosso.name>
- Date: Sun, 19 Jan 2014 16:48:13 -0600
- To: core <public-xml-core-wg@w3.org>
- Message-Id: <095168F5-3222-45DB-BE8D-ED5778A8408D@paulgrosso.name>
Interesting. I think they are (potentially) subject to validation, but what does it mean to validate a document against a "null" DTD? paul Begin forwarded message: > Resent-From: xml-editor@w3.org > From: Leif Halvard Silli <xn--mlform-iua@xn--mlform-iua.no> > Date: January 19, 2014 at 14:29:17 CST > To: xml-editor@w3.org > Subject: Clarify that documents with DOCTYPE but without markup declaration are not subject to validation > > The advent of HTML5/XHTML5 has made documents with a DOCTYPE without a > DTD popular. > > However, some XML tools reports validation constraint errors for > documents with the HTML5 doctype. This happens because the very HTML5 > DOCTYPES apparently causes some tools to dip into DTD validation mode - > and subsequently report all elements and attributes as an error, since > none of them are defined in the (non-existing) DTD. This may happen > even if the tool supports more useful conformance checking means, such > as XSD schemas etc. Thus, it happens despite that it would have been > more fruitful to go into e.g. XSD conformance checking mode (or simply > just check well-formedness). > > When trying to discuss this behavior when XML tools developers, it > would be helpful to have an authoritative statement to point to. > > Therefore, my proposal is to extract rules or guidance for what to do > when the DOCTYPE declaration points to no markup declaration and place > this into the 6th edition of XML. (Or to put it differently: define > what to do when the DOCTYPE lacks an internal or external DTD.) > > XML 1.0 fifth edition says: > > “[Definition: An XML document is valid if it has an associated document > type declaration and if the document complies with the constraints > expressed in it.]” > > Question: But which constraints does a document type declaration > without an internal or external DTD express? > > Answer: "no restriction", because document type declarations are > defined to contain markup declarations, something which none of the two > HTML5 doctypes (<!DOCTYPE html SYSTEM "about:legacy-compat"> and > <!DOCTYPE html>) contain. Simply put, since the HTML5 doctypes contains > no ”element type declaration, an attribute-list declaration, an entity > declaration, or a notation declaration”, they should not be seen as > markup declarations, from validating xml processor’s point of view: > > “[Definition: The XML document type declaration contains or points to > markup declarations that provide a grammar for a class of documents. > This grammar is known as a document type definition, or DTD. The > document type declaration can point to an external subset (a special > kind of external entity) containing markup declarations, or can contain > the markup declarations directly in an internal subset, or can do both. > The DTD for a document consists of both subsets taken together.]” > > “[Definition: A markup declaration is an element type declaration, an > attribute-list declaration, an entity declaration, or a notation > declaration.] These declarations may be contained in whole or in part > within parameter entities, as described in the well-formedness and > validity constraints below. For further information, see 4 Physical > Structures.“ > > By the way: the spec contains several examples of simple documents to > which validity applies. And it would be good to includes examples of > documents where teh doctype does not reference a markup declaration. > > I may provide verbatim spec text change proposals, if this would be > useful. > -- > leif halvard silli
Received on Sunday, 19 January 2014 22:48:35 UTC