W3C home > Mailing lists > Public > www-html@w3.org > January 2000

Re: Why DOCTYPE Declarations for XHTML?

From: Arjun Ray <aray@q2.net>
Date: Sat, 15 Jan 2000 02:07:15 -0500 (EST)
To: www-html@w3.org
Message-ID: <Pine.LNX.4.10.10001150044000.2094-100000@mail.q2.net>


On Fri, 14 Jan 2000, Murray Altheim wrote:

> What are you realistically trying to accomplish here?

Trying to obviate the 'voodoo' all too often associated with doctype
declarations in practice.  How many people do you think actually try to
understand the specs?  As opposed to just reading them, finding some stuff
about this weirdo thingy beginning with <!DOCTYPE, and just plunking it in
"because the spec says so"?  If anything, this formulaic voodoo gestalt is
*encouraged* by listing the "doctype requirement" as a distinct numbered
item.  E.g. in

  http://www.w3.org/TR/xhtml11/conformance.html

We see

:   1. It must validate against the DTD found in Appendix C.
:   2. The root element of the document must be <html>.

Add something about how the DTD - actually, declaration subset - in
Appendix C can be formally identified, and you have described what the
document type declaration (4.103 in ISO8879) has to be.  So, if needed,
just elaborate that in the text.  There is no need to have a separate
numbered item, encouraging the erroneous belief that it mandates something
other than - or worse, independent of - the *meaning* of 1 and 2.  (In
terms of production [110] of ISO8879, 2 fixes the document type name, and
1 fixes the effective content of the document type declaration subset.)

Restated, for strict conformance, eliminate 4, and modify 1 to read:

  1.  The instance markup must validate with respect to the declaration
      subset found in Appendix C, the Formal Public Identifier for which
      is "-//W3C//DTD XHTML 1.1//EN". (NOTE: the System Identifier may
      vary.)     

Perhaps with a helpful reference to 2.8 in the XML 1.0 spec, everything
about the following "Here is an example of a minimal XHTML 1.1 document"
should be clear.  

> the way in XML 1.0 that you associate a DTD with an instance [...] is
> using a DOCTYPE declaration.

OK, I'm going to give up arguing 4.103, 4.104, and 4.105 as a lost cause:)

> If you were to read the Modularization document, you might note that we 
> went to great trouble to define XHTML abstractly so that it would be 
> possible to create a conformant XML Schema. 

Right.  So it suffices to describe the effective constraints on doctype
declarations in that document, perhaps with a didactic reinforcement of
the fact that a document type declaration is necessary for a valid (as
opposed to just wellformed) document.

> But for associating DTDs with instances in XML 1.0, there are no normative
> 'alternatives in methods', and we're trying to guarantee interoperability 
> of XHTML documents

The interoperability is supposed to stem from the verifiable validity of
the markup, i.e. that the content conforms to a certain type.  The *mere*
presence of a doctype declaration - as some inscrutable string - has no
bearing on the needed guarantee.  IMHO.


Arjun
Received on Saturday, 15 January 2000 02:05:41 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 27 March 2012 18:15:40 GMT