E-mail List Archives

RE: DOCTYPE revisited


From: John Foliot - bytown internet
Date: Jun 26, 2002 6:57PM

> I am not sure of any software where a doctype would be impossible to
> generate or place into a page?
> Then I have also not used all of the page generating software. But I am
> very curious.

IBM Domino v.5 / Lotus

I have run into a situation when consulting to an organization who are
legally bound to create valid, accessible pages. Their development team are
aware of the issue, but cannot modify the generated header info; the
template will not allow for the insertion of a DocType.

The hard truth is that without a doctype declaration at the top of an <?>ML
Document, it cannot be properly parsed and validated <.em>according to the
specifications</em>. The fact that current browsers will parse and render
the document "properly" (and we could argue that statement for a long
time...), is pure blind luck and at the expense of thousands of lines of
code within the user agent.

Any HTML document, whether created via hard coded, notepad style HTML, or
dynamically generated using any number of server-side technologies (ASP,
PHP, ColdFusion, to name but 3) is, by the time it reaches the user, an HTML
Document. For it to *properly* validate it must include a DocType
Declaration. This requirement of a DTD was part of HTML 3.2, which was a
published spec in "early 1996" (http://www.w3.org/TR/REC-html32#html), so it
is not something "new" by any stretch of the imagination.

Quote: "Every conforming HTML 3.2 document must
start with the <!DOCTYPE> declaration that is
needed to distinguish HTML 3.2 documents from
other versions of HTML. The HTML specification
is not concerned with storage entities. As a
result, it is not required that the document
type declaration reside in the same storage
entity (i.e. file). A Web site may choose to
dynamically prepend HTML files with the document
type declaration if it is known that all such HTML
files conform to the HTML 3.2 specification."

(To put this in historical perspective for you young-uns, this was almost 2
years before Netscape began being Free software - in those days you were
supposed to purchase a license. Netscape 3.0Beta1 was released in April
1996; Netscape also held an approximate 80% market share!)

Any excuse as to why it doesn't include the DTD is a smokescreen, plain and
simple. In the case above, I suggested that they go back to the vendor and
demand an upgrade to a system which does what it should have done from the
beginning, output valid HTML.

As always, JMHO


To subscribe, unsubscribe, or view list archives,
visit http://www.webaim.org/discussion/