<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
    xmlns:admin="http://webns.net/mvcb/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:content="http://purl.org/rss/1.0/modules/content/">

    <channel>

    <title>A List Apart: Comments on: Fix Your Site With the Right DOCTYPE!</title>
    <link>{url_title_path=articles/}</link>
    <description></description>
    <dc:language>en</dc:language>
    <dc:rights>Copyright 2012</dc:rights>
    <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    <admin:generatorAgent rdf:resource="http://expressionengine.com/" />




    <item>
      <title>Posted by: Dave Robbins</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/#1</link>
      <guid>http://www.alistapart.com/comments/doctype/#1</guid>         
	  
      <description><![CDATA[Great article! I've been searching the W3C and other sites for this information to no avail. Keep up the good work.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: riffola</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/#2</link>
      <guid>http://www.alistapart.com/comments/doctype/#2</guid>         
	  
      <description><![CDATA[IE6 triggers quirks mode if there is an XML declaration present. It requires the XHTML doctype to be the very first line to trigger standards mode.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Matthew Mullenweg</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/#3</link>
      <guid>http://www.alistapart.com/comments/doctype/#3</guid>         
	  
      <description><![CDATA[Copied directly from the article:
&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"&gt;
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"&gt;

Should that have the '&gt;' after //EN" ? Looks like a typo, correct version at http://www.w3.org/TR/xhtml1/#normative (only the &gt; is different). Great article as always!

Some other good DOCTYPE resources:
http://www.oreillynet.com/pub/a/network/2000/04/14/doctype/
http://developer.apple.com/internet/html/doctype.html
http://www.meyerweb.com/eric/dom/dtype/dtype-grid.html
http://www.people.fas.harvard.edu/~dbaron/mozilla/quirklist (Good info about Mozilla quirks)

Straight from the source:
http://mozilla.org/docs/web-developer/quirks/ (I got a laugh out of some of the public identifiers :)
http://msdn.microsoft.com/workshop/author/css/overview/cssenhancements.asp
http://lxr.mozilla.org/seamonkey/source/layout/html/document/src/quirk.css (Mozilla's quirks stylesheet! Gotta love the irony.)]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: sharding</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/#4</link>
      <guid>http://www.alistapart.com/comments/doctype/#4</guid>         
	  
      <description><![CDATA[&gt; IE6 triggers quirks mode if there is an XML declaration present.

You've got to be kidding me. Is this seriously the case? Doesn't the standard REQUIRE the XML declaration at the top, above the DOCTYPE tag? So, once again we're thrown into the sitation of having to either write documents that comply with the standards or documents that work in popular browser, but we can't have both at the same time. Sigh.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: adamd</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/#5</link>
      <guid>http://www.alistapart.com/comments/doctype/#5</guid>         
	  
      <description><![CDATA[I was playing around with the DTDs. When I used the xHTML strict listed in the article, I get an error stating
"Fatal Error: unrecognized &#123;&#123;DOCTYPE&#125;&#125;; unable to check document" Am I doing something wrong or is this another problem I can blame GW. by the way my site validates as xHTML 1.1. have a nice day!]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: riffola</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/#6</link>
      <guid>http://www.alistapart.com/comments/doctype/#6</guid>         
	  
      <description><![CDATA[No, the XML declaration is optional, as long as you specifiy the page's character encoding using a Meta tag, the page will be valid XHTML, even XHTML 1.1]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: riffola</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/#7</link>
      <guid>http://www.alistapart.com/comments/doctype/#7</guid>         
	  
      <description><![CDATA[Assuming that the rest of the code is already valid, of course.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: kr!5</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/#8</link>
      <guid>http://www.alistapart.com/comments/doctype/#8</guid>         
	  
      <description><![CDATA[good article - thanks, but I'm still unclear as to which doctype to use. The article lists the doctypes for Strict, Transitional, and Frameset, but what are these? - obviously the type of (X)HTML you're using - but I'm only clear on what version number I'm using - not Strict, Transitional, or Frameset.

Can anybody enlighten me?]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Kevin W</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/#9</link>
      <guid>http://www.alistapart.com/comments/doctype/#9</guid>         
	  
      <description><![CDATA[Frameset means that the page is a framesetâ€”it doesn't actually have any content, just frames of other pages.

Transitional is a normal page, but it means that you're using deprecated (http://www.w3.org/TR/html4/conform.html#deprecated) elements and/or attributes.

Strict is the same as Transitional, but without the deprecated elements/attributes.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: justin simoni</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/#10</link>
      <guid>http://www.alistapart.com/comments/doctype/#10</guid>         
	  
      <description><![CDATA[So someone clear up what the browser is actually doing when it wants a doctype. Is it actually going out to the URI you state in the doctype, fetching + parsing the information and changing the chartacteristics of it's rendering because of this? or, is the browser just matching the doctype it sees on the top of your html document to a list of known doctypes it stores and does it that way. 

It just seems peculiar that the W3C will allow every single webpage in existence that has a doctype pointed to it to use it's resouces. Does anyone see the problem with that? (network latency, general download time) 

What if, like Netscape did with I believe the RSS doctype, they just decide to move, and tweak it. We'd be quite up the river with no paddle. It also doesn't make much sense to make web developers to post a doctype locally on a site and make them call the doctype from there. It makes something that should be soooo simple much too complex. 

Viddying the doctype itself doesn't really shed much light on what it actually does. 

sort of odd that HTML 4.01 would have a doctype, since aren't doctypes one of those XML things? :)]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Ivan Wilson</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P10/#11</link>
      <guid>http://www.alistapart.com/comments/doctype/#11</guid>         
	  
      <description><![CDATA[Nice article, I already knew where the DOCTYPEs were located in the site. But, it's true; it's a virtual Indiana Jones type quest just to find them.

Anyway, this article came MINUTES after I was just putting the final touches to a CMS (Content Management Site). At least it's good to know that I did everything right.

Now, it's Miller Time!]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Kevin W</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P10/#12</link>
      <guid>http://www.alistapart.com/comments/doctype/#12</guid>         
	  
      <description><![CDATA["So someone clear up what the browser is actually doing when it wants a doctype. Is it actually going out to the URI [...]? or, is the browser just matching the doctype it sees on the top of your html document to a list of known doctypes [...]"

Pretty unlikely that a browser actually cares whether the URI is valid or not, let alone what's inside it.

"What if, like Netscape did with I believe the RSS doctype, they just decide to move, and tweak it."

That's why they won't move it ;-)]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Kevin W</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P10/#13</link>
      <guid>http://www.alistapart.com/comments/doctype/#13</guid>         
	  
      <description><![CDATA[Is there a reason why everyone puts the DOCTYPE declaration on two lines (the URI on the second)? Or is it just because it's supposed to be easier to read?]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Greg H.</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P10/#14</link>
      <guid>http://www.alistapart.com/comments/doctype/#14</guid>         
	  
      <description><![CDATA[&gt;&gt; IE6 triggers quirks mode if there is an XML declaration present. 

&gt; You've got to be kidding me. Is this seriously the case?

Unfortunately, it is. I've confirmed it on my own. The only way to trigger "standards" mode in IE6 is to forego the use of the XML declaration.


&gt; Doesn't the standard REQUIRE the XML declaration at the top, above the DOCTYPE tag?

If you use both an XML declaration and a DOCTYPE, the XML declaration *must* be on the first line, followed by the DOCTYPE on the second line. But as riffola said, you can lose the XML declaration if you specify the document encoding type in a &lt;meta&gt; element. This may not be ideal, but it's a valid workaround. Our salvation is that Microsoft will have released a new browser version by the time the next version of XML is released and we're forced to use an XML declaration to comply.


&gt; Is there a reason why everyone puts the DOCTYPE declaration on two lines (the URI on the second)? Or is it just because it's supposed to be easier to read? 

It's easier to read. Like most anything in XML, the amount of white-space between different parts of an element (element names, attributes, etc.) is irrelevant so long as there is any amount. You can have a dozen spaces, five tabs, and 16 line breaks between each element part and the parser won't care.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: komlenic</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P10/#15</link>
      <guid>http://www.alistapart.com/comments/doctype/#15</guid>         
	  
      <description><![CDATA[Thanks much for the clarity Greg. I've been searching for the answer to the xml-declaration-IE-quirks-mode bug for some time, and had no idea that it could be so obvious a solution. 

Good article as well: concise, and informative.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Wevah</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P10/#16</link>
      <guid>http://www.alistapart.com/comments/doctype/#16</guid>         
	  
      <description><![CDATA[&gt; sort of odd that HTML 4.01 would have a doctype, since aren't doctypes one of those XML things? :) 

Nope...they're one of those SGML things. Even HTML 3.2 has a DOCTYPE.

Another thing that's been bugging me:

BBEdit likes to use DOCTYPES like this (for XHTML 1.0 Transitional, for example):

&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/2000/REC-xhtml1-20000126/DTD/xhtml1-transitional.dtd"&gt;

which, if you bother to go to the URL specified, contains a proper XHTML DTD (the same one, I'm fairly certain, as if you go to the URL specified in the article). This URL causes browsers to enter standards mode (good), and is valid according to the W3C (X)HTML validator (also good). However, when one attempts to run a page with this DOCTYPE through the W3C's CSS validator, it chokes, proclaiming it an invalid DOCTYPE (which it clearly is not).

Annoying.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Kris</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P10/#17</link>
      <guid>http://www.alistapart.com/comments/doctype/#17</guid>         
	  
      <description><![CDATA[HTML4.01/3.2/2.0 DOCTYPES:
http://www.htmlhelp.com/tools/validator/doctype.html

Some VERY useful info on DOCTYPES and browser behaviour:
http://www.allmyfaqs.com/faq.pl?DOCTYPE]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Didier</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P10/#18</link>
      <guid>http://www.alistapart.com/comments/doctype/#18</guid>         
	  
      <description><![CDATA[ThereÂ´s one thing I donÂ´t understand about this one:
&lt;html &gt;

Does the lang="en" elements refer to the language used in the document? Do I have to write lang="fr" if thereÂ´s french text on the page?]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by:</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P10/#19</link>
      <guid>http://www.alistapart.com/comments/doctype/#19</guid>         
	  
      <description><![CDATA[spam spam spam]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Jackie McGhee</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P20/#20</link>
      <guid>http://www.alistapart.com/comments/doctype/#20</guid>         
	  
      <description><![CDATA[Yes, lang="en" says that the document is in English. If you have some inline French you can stick it in &lt;span lang="fr"&gt;le blah&lt;/span&gt;.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Jeffrey</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P20/#21</link>
      <guid>http://www.alistapart.com/comments/doctype/#21</guid>         
	  
      <description><![CDATA[Wonderful comments, and thanks for catching the typo, Matthew.

Several questions raised here are answered in documents linked from the article.

For instance, the optional xml prolog causes problems in many browsers, not just IE6. Though it's part of the XHTML standard, it's an OPTIONAL part, precisely because its use causes problems in old browsers as well as some new ones. 

This is covered in more detail in the XHTML Guidelines section of the NYPL Style Guide: http://www.nypl.org/styleguide/xhtml/guidelines.html

The Style Guide is linked from the article, and the XHTML Guidelines section is linked from "Better Living Through XHTML" (which is linked from the article).]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Janos Erdelyi</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P20/#22</link>
      <guid>http://www.alistapart.com/comments/doctype/#22</guid>         
	  
      <description><![CDATA[now that we can render in a more compliant way, does anyone know when we can expect to see a strictly rendering browser?

as a developer, i would personally like a developer version of a browser which takes no crap from me and chokes up and any non-compliant mark-up. really i'd like it to help me force the developers i work with into doing basic stuff like closing tags and proper nesting :P

seriously though, has anyone heard of such a user-agent? i've played with amaya (from the w3c), but its results are sometimes bafling and i wonder how correct they are.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: David Harris</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P20/#23</link>
      <guid>http://www.alistapart.com/comments/doctype/#23</guid>         
	  
      <description><![CDATA[I'm sorry, but all this article does is complain about how so many Web sites don't use proper doctypes, then goes and provides a list of doctypes, that were already available in many other places on the Web. Where's the beef, Zeldman?

A perfect example:

IE reverts to the IE DOM; Mozilla and Netscape 6 revert to who knows what.

Umm, well, why don't you ask them? This is called "Lazy author's syndrome," and is consistent with many articles you find online. It's when the author is too lazy to either find out the complete information and provide a much more robust and helpful article, or to simply leave out the unhelpful snide remarks.

Where is the discussion about all those folks who are using incorrect doctypes on purpose? I know some big-name shops (such as IBM) where the DOCTYPE tag is purposely incomplete so they can get IE-specific features like changing scrollbar colors.

I'm disappointed by this article. It looks like a combination rant and cut-and-paste from other places on the Net, and is trying to pass for something semi-original. It's not. It's a hack job at it's worst.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: jeffrey</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P20/#24</link>
      <guid>http://www.alistapart.com/comments/doctype/#24</guid>         
	  
      <description><![CDATA[Two hours before this article went live, I was contacted by a standards-aware developer who wondered if I knew why his carefully authored site was displaying incorrectly in Mozilla 0.9.9. I did. The answer was in this article. Despite all his knowledge and care, this developer had used the wrong DOCTYPE because that's what he found at the source (W3C).

The HTML editors I use contain incomplete DOCTYPEs that trigger Quirks mode in all standards-compliant browsers but Opera (which avoids DOCTYPE switching, per the article).

These HTML editors are market-leading products, developed over years, by people who care about proper web authoring. They contain the wrong DOCTYPEs because a straightforward listing of proper DOCTYPEs is currently impossible to find at the source (W3C). 

W3C standards (and other standards) are essential to the growth of the web, but w3.org's Information Architecture leaves something to be desired, as they will be the first to admit. And this is so for the reasons stated in the article (W3C is not a tutorial site, it's a repository for a huge and growing collection of deeply geeky documents.)

David, you may have known where to find all the proper DOCTYPEs, but I didn't until I did the research for this article, and neither do many working web designers and developers (as well as some leading software makers). This article is intended as a service to the working designer and developer -- folks who don't have time to hunt down this information in various scattershot locations, and will appreciate its being made available in one place. 

Also, I think you've mistaken editorial focus for "laziness." This little article is intended to do one thing: give readers the proper DOCTYPEs. They don't need a multi-paragraph digression on what previous DOM Mozilla/Netscape 6 may revert to if the wrong DOCTYPE is used. All they need to know is that, with the right DOCTYPE, Mozilla/Netscape 6 will support the W3C DOM.

If you're looking for a more extensive and more detailed examination of web standards in browsers, you'll find many such articles in the PREVIOUS STORIES section of this magazine.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: saturdave</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P20/#25</link>
      <guid>http://www.alistapart.com/comments/doctype/#25</guid>         
	  
      <description><![CDATA[One way to play around with all the different DOCTYPES is to go to the W3C's Validation page (http://validator.w3.org/) & paste in your URI. The page allows you to select different DOCTYPES in order to check the validity of the code you've written.

Also, if you check the "Show Source" box, the exact DOCTYPE syntax will appear in the result for cut & paste fun.

Great article - something that needed to be addressed. Thanks.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Craig Shoemaker</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P20/#26</link>
      <guid>http://www.alistapart.com/comments/doctype/#26</guid>         
	  
      <description><![CDATA[What do you now of DOCTYPEs breaking JS functions?

I am trying to create a JS persistent nav bar in the spirit of the GeoCities watermark and once I insert the XHTML Transitional DOCTYPE into my document, the script no longer works.

============
Example JS :
============
http://builder.cnet.com/webbuilding/0-7690-8-5934478-9.html?tag=st.bl.7310.dir1.7690-8-5934478-9
============]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Craig Ramsdell</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P20/#27</link>
      <guid>http://www.alistapart.com/comments/doctype/#27</guid>         
	  
      <description><![CDATA[Thanks for the helpful article. It answered several questions I had. But I've got one more.

Does anyone know if there's and advantage to copying the DOCTYPEs from W3C and posting them locally?

Do the browsers actually go look at the W3C DOCTYPEs? Or are the browsers just reading the URIs like they would a  tag? In which case posting the DOCTYPEs locally would render them useless.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Andrew Clover</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P20/#28</link>
      <guid>http://www.alistapart.com/comments/doctype/#28</guid>         
	  
      <description><![CDATA[1. Are you using embedded scripts? The example at the above URL uses a script tag with the comment-hiding trick. This will make a true XML parser ignore the entire script, as XML parsers cannot treat script and style tags as containing anything but XML. There are ways to make the comment-hiding hack work in both HTML and XML at the same time, but it's not pretty. Try removing the comment hack or, best, using an external script instead.

2. The script contains an ETAGO sequence (&lt;/) in the comment at the top, which is invalid if included in an embedded script block in legacy HTML. It won't cause any common browsers to choke though.

3. If you use a DOCTYPE that triggers Standards Mode in IE6, the element that represents the viewport is (correctly) 'html', *not* 'body'. Thus the element whose scroll position you have to measure is html not body. The line:

 innerWidth = document.body.clientWidth;

would have to be replaced with something that would detect whether it's IE6 running in Standards Mode, or plain old quirky IE5, and find the right element:

 innerWidth= ((document.compatMode=='CSS1Compat') ? document.documentElement : document.body).clientWidth;

4. Ignore any quotes on the end of my e-mail and web addresses, I'm checking to see if this new board is as susceptible to JavaScript injection hacks as the last one. :-) oh, and to which end, http://www.example.com/test]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: J</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P20/#29</link>
      <guid>http://www.alistapart.com/comments/doctype/#29</guid>         
	  
      <description><![CDATA[One hting I've never been able to figure out is whether or not the line wrap and the tab white space on the second line is required. For coding sake, espeically on my dnamic sites I'd prefer to have it all on one line.

Also, another reader above asked if the browser actually goes to the url in question. I don't think it does in certain cases (when you use the ones listed in the article) but does it if you put another address in there? That could be an issue one might need to consider on an intranet where the DTD might be on the other side of the firewall.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: J</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P30/#30</link>
      <guid>http://www.alistapart.com/comments/doctype/#30</guid>         
	  
      <description><![CDATA[Am I the only one who is havig trouble validating XHTML 1.0 Transitional documents using the provided DTD? I get [b]Error: DTD did not contain element declaration for document type name[/b] if I don't change the "DOCTYPE HTML PUBLIC to "DOCTYPE html PUBLIC"]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: tim</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P30/#31</link>
      <guid>http://www.alistapart.com/comments/doctype/#31</guid>         
	  
      <description><![CDATA[The Doctype given for XHTML 1.0 transitional creates errors in the W3C validation service. What gives? I used to get validation when using the Doctype that this article says is incorrect.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: moz</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P30/#32</link>
      <guid>http://www.alistapart.com/comments/doctype/#32</guid>         
	  
      <description><![CDATA[it seems to me that the notion to use the W3's website as the host in the URI is wrongheaded for two reasons. one, doing so causes the visiting user agents to reference the DTD on the W3's website and thus costing the W3 a great deal of bandwidth. two, updating DOCTYPES on your website quickly becomes a function of N where N is the number of webpages you wish to validate; perhaps a potentially large and daunting number.

i think a better solution would be not to change your DOCTYPEs at all, and instead upload a copy of the DTD to your website in a directory called "DTD". (you may need to do this for every subdirectory that contains webpages you wish to validate properly.) that would seem to save on bandwidth for the W3C and save on work for you (isn't it better to upload 3 files for 3 directories rather than modify some 20 odd files?).

one other note. the transitional dtd is not small -- 32k -- and using it to validate your website might be a bandwidth concern for visitors as well. (would it make any validating webpages produced for the 5k a pipe dream?) it might be best for some to leave your webpage in quirks mode after all...]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: RPW</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P30/#33</link>
      <guid>http://www.alistapart.com/comments/doctype/#33</guid>         
	  
      <description><![CDATA[I'm getting the same validation failures as J in the above post. It seems that with the doctype for XHTML 1.0 Strict at least ( I haven't tested the others), it is critical to start with "&lt;!DOCTYPE html PUBLIC" to allow validation by the w3c Validator. As XHTML is sensitive to capitalization, whereas HTML 4.0 generally isn't, can we assume that capitalizationis less important in the HTML doctypes?]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Jeff Carr</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P30/#34</link>
      <guid>http://www.alistapart.com/comments/doctype/#34</guid>         
	  
      <description><![CDATA[Yup J, capitalization does matter. XML and XHTML are caps sensitive. The &lt;HTML&gt; element and the &lt;html&gt; element are different animals as far as an XML parser is concerned. So when you set the DTD to "DOCTYPE HTML PUBLIC" you are setting the doctype to an element that is not included in your DTD.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Nate</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P30/#35</link>
      <guid>http://www.alistapart.com/comments/doctype/#35</guid>         
	  
      <description><![CDATA[It seems that there is a small error in the doctypes listed for xhtml strict? - after fixing our site with the proper doctype it stopped validating, the same problem listed by [url="http://www.alistapart.com/stories/doctype/discuss/#ala-73"]adamd[/url]. Changing the “HTML” to lowercase “html” seems to have fixed the problem.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Nate</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P30/#36</link>
      <guid>http://www.alistapart.com/comments/doctype/#36</guid>         
	  
      <description><![CDATA[Everyone's posting about the lowercase problem at once. My public apologies for not minding the not at the top and messing things up with html in my last post.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: ~bc</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P30/#37</link>
      <guid>http://www.alistapart.com/comments/doctype/#37</guid>         
	  
      <description><![CDATA[Hey,
Anyone else out there have more resources on JavaScript in XHTML? I've been fumbling with this issue for like two months, and annoying the ZMan with my emails &lt;whiney&gt;Why doesn't this work?&lt;/whiney&gt; Simply: when the valid xhtml page has no doctype, the JS works. When it has any sort of doctype, it doesn't. See for yourself:
briandigital.com/test/menuwithoutdoc.html
menuwithhalfdoc.html
menuwithdoc.html

Any ideas? For me (on Mac) it only renders *and* functions right in Opera5. A Windows using friend says it works on some of his browsers.

Please email if you find the answer, and I'll come back and post anything that works (this isn't the best place to discuss debugging my site, I know). Sorry if my plea annoys anyone. I'm sure at least Jefffery's sick of me... ;-)]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: RPW</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P30/#38</link>
      <guid>http://www.alistapart.com/comments/doctype/#38</guid>         
	  
      <description><![CDATA[OK after some quick tests (and reading everyone else who's joined in the debate) the three XHTML 1.0 doctypes should read as:

&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"&gt;


&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;


&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"&gt;

Stick to the exact capitalization above to allow your pages to validate.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Dave H</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P30/#39</link>
      <guid>http://www.alistapart.com/comments/doctype/#39</guid>         
	  
      <description><![CDATA["now that we can render in a more compliant way, does anyone know when we can expect to see a strictly rendering browser?"

This is where XHTML, especially XHTML 2.0, is headed. When a web page is sent with the XHTML media type (application/xhtml+xml rather than text/html) the user agent passes it through an XML parser, and throws an error message if it isn't well-formed XML.

Mozilla 0.9.2, Netscape 6.1 and Opera 6 all support the XHTML media type (unfortunately Microsoft presently do not). Note that whilst they check for well-formedness, they don't compare the document to it's DTD the way Amaya does (ensuring the document is "type-valid"). Even so, it should go a long way to helping tidy up the messy tag soup that presently populates the web.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: jeffrey</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P40/#40</link>
      <guid>http://www.alistapart.com/comments/doctype/#40</guid>         
	  
      <description><![CDATA[Ouch. I've lowercased "html" in those XHTML DOCTYPEs per your comments and the lowercase "html" in ALA's own XHTML DOCTYPE declaration. 

Several experts reviewed the article for accuracy before it went live. Nobody caught this error. 

Thanks for the essential input and a thousand apologies for the confusion.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: see</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P40/#41</link>
      <guid>http://www.alistapart.com/comments/doctype/#41</guid>         
	  
      <description><![CDATA[does anyone has experience what exactly mozilla/n6 does different in its standard mode? i had a problem with a mainly table based layout in which mozilla seemed to use a line-height for table cells which contained a 1px high image only if a DOCTYPE was given (and do the cell break to became like 10-15px high). in quirks mode the cell stayed 1px high. mac ie seemed to do a similar thing.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: jeffrey</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P40/#42</link>
      <guid>http://www.alistapart.com/comments/doctype/#42</guid>         
	  
      <description><![CDATA[for one thing, in standards mode, mozilla messes with table-based layouts until you add one or more additional css rules. this is discussed in detail in an earlier article, "better living through xhtml." the relevant portion of the article is linked below:

http://www.alistapart.com/stories/betterliving/#browsers]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: drew</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P40/#43</link>
      <guid>http://www.alistapart.com/comments/doctype/#43</guid>         
	  
      <description><![CDATA[I hit the hotkey to enlarge the text on ALA, and only *some* of the text changed size. Sure enough, right there in your stylesheet, the body slass is defined with pixel-sized fonts. Come on guys, how about a little nod to taking your own advice.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Dave H</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P40/#44</link>
      <guid>http://www.alistapart.com/comments/doctype/#44</guid>         
	  
      <description><![CDATA[Also worth mentioning: in the present version of Mozilla, simply hit CTRL+I (or click View -&gt; Page Info) to find out whether the page is being rendered in standards compliant mode or in backwards-compatibility mode. This feature will find it's way into the next major release of Netscape before too long (post Netscape 6.2x)...]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Blondinnet</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P40/#45</link>
      <guid>http://www.alistapart.com/comments/doctype/#45</guid>         
	  
      <description><![CDATA[First of all, a very good article indead .
I must apologize for my writing of english which is far then good.
So , I have a problem when validating my page on the w3 validator but the same page validate well-formed XHTML 1.0 with the WDG validator, so what is wrong with ???
Any idea?
 
The Doctype on my page :

&lt;?xml version="1.0" encoding="ISO-8859-1"?&gt;
&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;
&lt;html &gt;
&lt;title&gt;Document&lt;/title&gt;
&lt;meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /&gt; 

That's what the W3 validator gives back :

Warning: DOCTYPE Override in effect! Any DOCTYPE Declaration in the document has been supressed and the DOCTYPE for Â«XHTML 1.0 TransitionalÂ» inserted instead. 
The document will not be Valid until you alter the source file to reflect this new DOCTYPE. 
Below are the results of checking this document for XML well-formedness and validity. 

What does that mean? I really don't know.

Please note that you have chosen one or more options that alter the content of the document before validation, or have not provided enough information to accurately validate the document. 
Even if no errors are reported below, the document will not be valid until you manually make the changes we have performed automatically. 
Specifically, if you used some of the options that override a property of the document (e.g. the DOCTYPE or Character Encoding), you must make the same change to the source document or the server setup before it can be valid. 
You will also need to insert an appropriate DOCTYPE Declaration or Character Encoding (the "charset" parameter for the Content-Type HTTP header) if any of those are missing. 

No errors found! *

This document would validate as the document type specified if you updated it to match the Options used. 

Is this a problem of language because I use "FR" instead of "EN", don't know?
Can someone help me with that.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Suzanne</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P40/#46</link>
      <guid>http://www.alistapart.com/comments/doctype/#46</guid>         
	  
      <description><![CDATA[I have been having a problem with a table layout falling literally to pieces in Netscape 6 because of the lack of a DOCTYPE, then with a valid DOCTYPE. 

&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd"&gt;

If I use the valid DOCTYPE, it falls apart. If I use the above DOCTYPE, it all goes together perfectly. 

I can't remember where I first heard this (I believe it was from a friend who possibly read it at evolt.org), however recent testing (two days ago) shows this is still the case for Netscape 6.2.

Anyone know why?]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Josh</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P40/#47</link>
      <guid>http://www.alistapart.com/comments/doctype/#47</guid>         
	  
      <description><![CDATA[http://pun.org/ seems to validate fine, but I have issues with some of my pages where I use URLs that have "&" characters in them. Is there a straightforward way of escaping those strings so they'll still be usable from 4.x browsers?

--jrp]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Dave H</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P40/#48</link>
      <guid>http://www.alistapart.com/comments/doctype/#48</guid>         
	  
      <description><![CDATA[Blondinnet -- I think the W3C validator failed to detect your character encoding because you missed out the &lt;head&gt; element around your &lt;meta/&gt; element. Try the following:

&lt;?xml version="1.0" encoding="ISO-8859-1"?&gt;
&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;
&lt;html &gt;
&lt;head&gt;
&lt;meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /&gt;
&lt;title&gt;Document&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;h1&gt;Document&lt;/h1&gt;
&lt;/body&gt;
&lt;/html&gt;]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Dave H</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P40/#49</link>
      <guid>http://www.alistapart.com/comments/doctype/#49</guid>         
	  
      <description><![CDATA[Correction to the above! You should have the PUBLIC identifier "-//W3C//DTD XHTML 1.0 Transitional//EN", and NOT "-//W3C//DTD XHTML 1.0 Transitional//FR"! (The EN refers to the language the DTD is written in, not the language your XHTML file is written in.)]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Dave H</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P50/#50</link>
      <guid>http://www.alistapart.com/comments/doctype/#50</guid>         
	  
      <description><![CDATA[In order to encode an ampersand in a URL, for example "http://mysite/?foo=1&bar=2", you can either:

1) replace '&' with '&', i.e. &lt;a href="http://mysite/?foo=1&bar=2"&gt;
2) See if it works with a semicolon instead, i.e. &lt;a href="http://mysite/?foo=1;bar=2"&gt;]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: moz</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P50/#51</link>
      <guid>http://www.alistapart.com/comments/doctype/#51</guid>         
	  
      <description><![CDATA[Blondinnet,

on the validation page you may choose a doctype or you may let the validator figure out the doctype from the webpage you wish to validate. from the output it seems as though you'd chosen a doctype on the page rather than let it figure it out. it's probably better not to specify one.

suzanne,

i seem to remember a "loose" dtd for html4. according to this page ( http://www.w3.org/TR/html4/struct/global.html ), the transitional dtd was, in the past, called loose.dtd. i figure loose.dtd would be a copy of transitional.dtd for xhtml, but i suppose not?

jeffrey and waferbaby,

could i ask a favor of you guys? a preview button would be a nice feature, if only to see who's posted in-between the time i begin to write and the time i click on the post button...]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Eric Schmidt</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P50/#52</link>
      <guid>http://www.alistapart.com/comments/doctype/#52</guid>         
	  
      <description><![CDATA[There is a bug in Mozilla and therfore N6 (see http://bugzilla.mozilla.org/show_bug.cgi?id=121960) that causes mozilla to incorrectly render table height is a doctype is specified. It is not slated to be fixed until Mozilla 1.2]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: blondinnet</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P50/#53</link>
      <guid>http://www.alistapart.com/comments/doctype/#53</guid>         
	  
      <description><![CDATA[&lt;?xml version="1.0" encoding="ISO-8859-1"?&gt; 
 I have deleted the line above refering to xml

&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt; 
&lt;html&gt; the same thing here deleting line with namespace refering
xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"&gt; 

&lt;head&gt;
&lt;title&gt;Document&lt;/title&gt; 
&lt;meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /&gt; 

And it validate this time oups!
So the code I use is :

&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt; 
&lt;html&gt;
&lt;head&gt;
&lt;title&gt;Document&lt;/title&gt; 
&lt;meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /&gt; 
 Thanks for the answers]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Greg H.</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P50/#54</link>
      <guid>http://www.alistapart.com/comments/doctype/#54</guid>         
	  
      <description><![CDATA[Regarding the DOCTYPE fetching issue, I believe each browser keeps a very small library of known DOCTYPEs against which it compares the DOCTYPE listed in your documents. If the DOCTYPE in your document matches one in their library of "standard" DOCTYPES, the browser reverts to standards mode. If your document contains no DOCTYPE or contains a "non-standard" one, the browser will revert to quirks mode. If your DOCTYPE does not contain a valid URI to the associated DTD, it's not going to be one of the DOCTYPEs in the browser's library and your documents will thus be rendered in quirks mode.

Browsers do NOT need to retrieve external DOCTYPEs. Firstly, it would put tremendous strain on any servers containing centralized DTD files (such as the W3C's servers at MIT). Secondly, it would increase the download time because it would have to acquire the DTD file from the external server. Then the browser would have to parse the DTD, compare the document against the newly acquired and parsed DTD, then decide in which mode the document should be rendered, and finally render the document. 

So the browser makers cheat a little. They simply figure out ahead of time that documents with DOCTYPES of a certain type shoud be rendered in a certain mode. So when the time comes to render a document, it compares the document's DOCTYPE against the few stored in its library, figures out the mode in which to render the document, and renders it. This forces developers to use a small number of acceptable "official" DOCTYPEs (though no W3C DTD is technically official), but it reduces tremendously the overhead required to render each document.


On a related note, here are a couple more DOCTYPEs you may find useful that weren't listed in the article. I have tested these and confirmed them to be correct:

XHTML 1.1 Plus MathML 2.0:
&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0//EN"
 "http://www.w3.org/TR/MathML2/dtd/xhtml-math11-f.dtd"&gt;

XHTML 1.0 Basic:
&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN"
 "http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd"&gt;]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Greg H.</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P50/#55</link>
      <guid>http://www.alistapart.com/comments/doctype/#55</guid>         
	  
      <description><![CDATA[One thing I forgot to mention in my above post is that current browsers include XML parsers but not validators. IE's most recent parser revision, MSXML 4.0, will check an XML document for well-formedness but not validity. For this reason, it is unnecessary for the browser to retrieve any DOCTYPE. At this time, fetching an external DOCTYPE would simply create additional bandwidth overhead when loading any page with a DOCTYPE.

Further, XHTML documents aren't currently checked for well-formedness by XML parsers because XHTML documents have a MIME type of "text/html", which means they're considered HTML documents by the browser, not true XML documents. Were XHTML to get its own MIME type--say, "text/xhtml+xml"--the browsers would be forced to parse the document and check it for well-formedness. Until this happens, XHTML documents will be checked for neither well-formedness or validity.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Karl</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P50/#56</link>
      <guid>http://www.alistapart.com/comments/doctype/#56</guid>         
	  
      <description><![CDATA[Hi,

don't flame Jeffrey, I re-read the article and I didn't see that one. It was part of my own fault. :) and it was so obvious !!! in XHTML all elements are lowercase and so the root too... :))

Errare Humanum Est

At least now the article is fixed, and all people could do the right job!!! 

+ Blondinet -&gt; Your error is here

&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR" 
 ^^^^^
This one is good.
&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 

Karl Dubost, Conformance Manager W3C]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Alan</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P50/#57</link>
      <guid>http://www.alistapart.com/comments/doctype/#57</guid>         
	  
      <description><![CDATA[I don't mean to derail the thread, but I would just like to mention how increadibly charming it is that the W3C Conformance Manager writes with lots of !'s and :)'s. You just made me smile for the first time today. Thank you.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Matthew Mullenweg</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P50/#58</link>
      <guid>http://www.alistapart.com/comments/doctype/#58</guid>         
	  
      <description><![CDATA[In reference to Dave's comment above about different separators I just wanted to note that for those of you using PHP it is not enabled by default. If you have access to your php.ini file &#40;or have a nice host&#41; look for these lines:

; List of separator(s) used by PHP to parse input URLs into variables.
; Default is "&".
; NOTE: Every character in this directive is considered as separator!
;arg_separator.input = ";&"

Simply uncomment the last line and both of those characters will function as argument separators. If you're feeling rambunctious next April Fools try putting a character like "=" or "e" in there ;-p.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Tommy</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P50/#59</link>
      <guid>http://www.alistapart.com/comments/doctype/#59</guid>         
	  
      <description><![CDATA[Riffola:
&gt;No, the XML declaration is optional, as long as you specifiy 
&gt;the page's character encoding using a Meta tag, the page 
&gt;will be valid XHTML, even XHTML 1.1 

But in the W3C spec (http://www.w3.org/TR/xhtml1/#docconf):
"XHTML document authors are strongly encouraged to use XML declarations in all their documents. Such a declaration is required when the character encoding of the document is other than the default UTF-8 or UTF-16."

I'm a bit confused. I (prefer to) write my xhtml code using the swedish accented caracters, Ã¥Ã¤Ã¶. In order to do this I use a meta tag to declare that the caracter set is western european:

&lt;meta http-equiv="content-type" content="text/html; charset=iso-8859-1" /&gt;

So my question is: is "charset" in the meta tag the same as the "character encoding" in the w3c specification?

And if so, am I right to conclude that I'll have to set the caracter set to UTF-8 and start escaping all accented characters, in order not to be forced to make the xml-declaration?]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Matt Round</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P60/#60</link>
      <guid>http://www.alistapart.com/comments/doctype/#60</guid>         
	  
      <description><![CDATA[I also use ISO-8859-1, and tend to put the XML declaration in. 
Which browsers have problems with this? Obviously it'll kick IE6 into quirks mode (not the end of the world as the sites need to work in IE5/5.5 anyway so it'll behave similarly), but other than that I've not seen any definite information or received any complaints from clients/users (of course, if someone can't use the site at all they're unlikely to be able to find out where to complain to).]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Andrew Clover</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P60/#61</link>
      <guid>http://www.alistapart.com/comments/doctype/#61</guid>         
	  
      <description><![CDATA[The browser does *not* generally go to the URL referenced in the
system identifier. This is partly because any XHTML browser would
certainly already know what the public identifier
'-//W3C//DTD XHTML 1.0 Strict//EN' refers to and would not need to
download the DTD. But mostly it's because current browsers don't
actually give a stuff what you put in the system identifier. They
doesn't dereference it and they don't even currently look at
what it is for DOCTYPE switching - they only care that it's
there at all.

This could become a bigger problem if true XHTML browsers are
released which will attempt to dereference the URL if they don't
recognise the public identifier, and then a new version of XHTML
is released with an unrecognised public identifier. Then all
browsers would hit the W3 site at least once to download the DTD.
They would have to, because it contains entity definitions
(&foo; etc.) which a validating XML parser *has* to know before
it can interpret the page.

J: the line wrap is not required. All-on-one-line is fine and that's
what I usually do; I don't work in 80 columns any more.

~bc: you are using a Javascript-style comment ('//') in a stylesheet.
This is broken, but presumably without a DOCTYPE, browsers' Quirks
Modes are ignoring it. Also you are trying to set a positioning
value from script without adding a unit. This is also wrong, but
allowed by IE in Quirks Mode. You want:

 domStyle.left= cX+'px';

Blondinnet: this warning appears when you have selected the
DOCTYPE from the validator's own form. It is nothing to do
with youe document. Select '(detect automatically)' from the
menu on the validation form and you will not get the warning.

jrp: replace '&' with '&'. The browser will decode that as
a normal ampersand before submitting. This is very basic HTML
and will even work on the 4.x browsers. And the 3.x browsers.
And (etc.)

Tommy: 'encoding' is the generic-XML way of specifying the
character set. 'meta-charset' is the legacy HTML way of
specifying it. If you have no top-bit-set characters in the
code before the &lt;meta&gt;, you can get away with just using
&lt;meta&gt; in XHTML. You might as well use
encoding="iso-8859-1" as well - there is no reason you have
to use UTF-8. But the best way of specifying a web page's
charset is to use an HTTP header in the same format as the
&lt;meta&gt; hack (which just makes the browser think it has received
an HTTP header):

 Content-Type: text/html;charset=iso-8859-1

Unfortunately unless you have proper control over your own server you probably won't be able to configure this. (In
Apache, you can use the AddDefaultCharset directive.)]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: rgw</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P60/#62</link>
      <guid>http://www.alistapart.com/comments/doctype/#62</guid>         
	  
      <description><![CDATA[It might be a while before the doctype table height problem is fixed. As you know, the bug is targeted for mozilla 1.2. That doesn't seem like that far away, but it could be half a year until we see the fix. The Mozilla Roadmap ( http://www.mozilla.org/roadmap.html ) has a little change for post 1.0 milestones. The development cycle has moved into a quarter year cycle. Check out the link for more info.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Dave H</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P60/#63</link>
      <guid>http://www.alistapart.com/comments/doctype/#63</guid>         
	  
      <description><![CDATA[Greg H: "Further, XHTML documents aren't currently checked for well-formedness by XML parsers because XHTML documents have a MIME type of 'text/html', which means they're considered HTML documents by the browser, not true XML documents. Were XHTML to get its own MIME type--say, 'text/xhtml+xml'--the browsers would be forced to parse the document and check it for well-formedness. Until this happens, XHTML documents will be checked for neither well-formedness or validity."

Actually, XHTML *does* have it's own MIME type, which will eventually replace 'text/html'; it is 'application/xhtml+xml'. Indeed, I've added a Request For Enhancement to get Apache to recognise it:

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=7795

Perhaps when the Web Standards Project launches 'Phase II', they could request that iPlanet and Microsoft IIS support the new MIME type out of the box too?]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Travis</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P60/#64</link>
      <guid>http://www.alistapart.com/comments/doctype/#64</guid>         
	  
      <description><![CDATA[I am in the process of designing my website. I got it to look perfectly how I want, and I even validated the XHTML and fixed all of the errors on the page. But when I add, the XHTML Doctype, the page screws up.

If anyone knows what could be the problem, please eMail me. taestell@hotmail.com]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Craig Hockenberry</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P60/#65</link>
      <guid>http://www.alistapart.com/comments/doctype/#65</guid>         
	  
      <description><![CDATA[It's true that browsers do not attempt to validate using the reference to the DTD in the DOCTYPE. Anyone who's loaded a local page on a laptop that's not connected to the Internet is proof that there's no attempt by the browser to load the external URL (it would fail otherwise.)

Validation does occur with some XML parsers, however. If you are using either an XML schema or a DTD with a recent parser (Xerces, Xalan or the latest versions of the MS XML), the validation process does attempt to load the external URL. This can be a problem if you are trying to develop (or deploy) backend services such as XSL transforms or other manipulations of an XML data stream. Without a connection to the Internet, the validation step will fail. The solution to this problem is to copy the necessary files and refer to them locally.

One would hope that the browsers eventually validate the XHTML source code. When (and if) they do, keeping a local copy of the DTD will be an important performance consideration; the servers at W3C will be serving up a lot of DTD and are likely to be a bottleneck.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: cdmsburrow</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P60/#66</link>
      <guid>http://www.alistapart.com/comments/doctype/#66</guid>         
	  
      <description><![CDATA[I noticed in several of these posting the phrase "well-formedness". I not sure at that means. Is there any ALA artical on this subject?]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Dave H</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P60/#67</link>
      <guid>http://www.alistapart.com/comments/doctype/#67</guid>         
	  
      <description><![CDATA[" I noticed in several of these posting the phrase 'well-formedness'. I not sure at that means. Is there any ALA artical on this subject?"

XHTML is an application of XML. A well-formed XML document is simply one that nests elements properly (i.e. not overlapping like &lt;foo&gt;&lt;bar&gt;&lt;/foo&gt;&lt;/bar&gt;), includes a trailing slash in empty elements, includes proper quotes around attribute values (e.g. image), doesn't include illegal characters (e.g. &lt;foo*bar&gt;Invalid element&lt;/foo*bar&gt;), etc.

The level up from being well-formed is being type-valid. This means also conforming to a schema, such as a W3C DTD. A type-valid document is, by definition, also well-formed.

You might find this article of use: http://www.alistapart.com/stories/hellxml/]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by:</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P60/#68</link>
      <guid>http://www.alistapart.com/comments/doctype/#68</guid>         
	  
      <description><![CDATA[People who use Doctypes should be aware that many older browsers cannot understand them and insert them into the document as plain text. 

On some sites, I've elected not to include doctypes for this reason. These are generally the same browsers that display Javascript/Stylesheets as text as well. 

A good rule-of-thumb is that if you start all of your scripts with a &lt;!-- you'll likely be worried about this. 

And, conversely, if you never bother to include the comment tag at the start of a stylesheet or script then you likely won't care.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Greg H.</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P60/#69</link>
      <guid>http://www.alistapart.com/comments/doctype/#69</guid>         
	  
      <description><![CDATA[Dave H: "Actually, XHTML *does* have it's own MIME type, which will eventually replace 'text/html'; it is 'application/xhtml+xml'."

To tell you the truth, I haven't read anything on the subject of an XHTML MIME type for several months (hence my mistake of saying "text/xhtml+xml" rather than the more appropriate "application/xhtml+xml"). 

I'm glad someone is taking the initiative to get the MIME type supported. Forcing XHTML documents to be well-formed and valid before they can be displayed will an important step for the Web. Frankly, I think it's a necessary one if the Semantic Web project is to be successful.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Matt Round</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P70/#70</link>
      <guid>http://www.alistapart.com/comments/doctype/#70</guid>         
	  
      <description><![CDATA[Which browsers have problems with DOCTYPE? I suspect they're so old & broken, and rarely used, that it's not worth catering for them at the expense of good coding & forward compatibility.
If you're not careful you'll still be using CENTER and FONT in five years' time...]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by:</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P70/#71</link>
      <guid>http://www.alistapart.com/comments/doctype/#71</guid>         
	  
      <description><![CDATA[You're right that all of the browsers that have trouble with doctypes are really old and really broken. And, for most people, they're not even worth considering. 

The most popular browser that I know of with the issue: Mosaic.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by:</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P70/#72</link>
      <guid>http://www.alistapart.com/comments/doctype/#72</guid>         
	  
      <description><![CDATA[You're right that all of the browsers that have trouble with doctypes are really old and really broken. And, for most people, they're not even worth considering. 

The most popular browser that I know of with the issue: Mosaic. 

Really, it was more of a concern back when we wrote documents with HTML 3.2. 

I've noticed that ALA doesn't bother with the &lt;!-- hack at the start of its code, anymore, for instance ...]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: ~bc</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P70/#73</link>
      <guid>http://www.alistapart.com/comments/doctype/#73</guid>         
	  
      <description><![CDATA[[em]I've noticed that ALA doesn't bother with the &lt;!-- hack at the start of its code, anymore, for instance ...[/em]
That's because it's illeagal in xhtml, I do believe. Hey if these guys don't do it by the book, then no one will.

Lastly, I wanted to thank everyone who wrote in to help me fix my page (above). Everyone was very helpful. The winner was Andrew Clover who simple nuked a miss placed comment tag and added four characters to my script and 'blamo' functionality and conformance. Thanks to all who entered!

~b
&lt; many will enter, few will win &gt;]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Spike</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P70/#74</link>
      <guid>http://www.alistapart.com/comments/doctype/#74</guid>         
	  
      <description><![CDATA[[em]People who use Doctypes should be aware that many older browsers cannot understand them and insert them into the document as plain text. [/em]

Yes, but people who use older browsers should be tied to a drain-pipe and ritualistically hosed.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Matt Round</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P70/#75</link>
      <guid>http://www.alistapart.com/comments/doctype/#75</guid>         
	  
      <description><![CDATA["people who use older browsers should be tied to a drain-pipe and ritualistically hosed"

Can't quite see that becoming part of W3C guidelines, but it might make a catchy tagline for the WaSP phase II site.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Dave H</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P70/#76</link>
      <guid>http://www.alistapart.com/comments/doctype/#76</guid>         
	  
      <description><![CDATA[Actually I'm now wondering if I can get "people who don't use DOCTYPEs should be tied to a drain-pipe and ritualistically hosed" into DaveCorp's internal web standards... ;o)]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: CodeBitch</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P70/#77</link>
      <guid>http://www.alistapart.com/comments/doctype/#77</guid>         
	  
      <description><![CDATA[Last time I checked, Mosaic doesn't support HTTP 1.1, only HTTP 1.0 (and yes, Mosaic still runs on current Macs). So about the only website it will still be able to read is its own homepage. Degrade gracefully for older browsers by all means, but let's stop scaring ourselves into thinking that some browsers are still being used if they're not. Analyse your logs, learn what the HTTP capabilities of different browsers are, and don't worry about the shortcomings of browsers that either can't reach your website or were never Y2K compliant.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: greg</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P70/#78</link>
      <guid>http://www.alistapart.com/comments/doctype/#78</guid>         
	  
      <description><![CDATA[I am happy that the discussion forums are back. I have learned a good bit by reading the discussions about this article. However, it is very difficult to follow the "thread" of conversation! I would recommend a modification that would allow posters to "reply" to a particular post. Many other public forums are set up this way. I hope this will be a consideration for future improvement.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: apartness</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P70/#79</link>
      <guid>http://www.alistapart.com/comments/doctype/#79</guid>         
	  
      <description><![CDATA[Thanks for your comments. We appreciate them. Waferbaby (http://www.waferbaby.com/) has done an outstanding job developing new forum software in PHP that's low bandwidth and XHTML/CSS compliant.

The old forum software was threaded. One reader after another complained that the threading made it impossible to read and respond as if in general conversation. Readers begged for a flat presentation, and this is what we've implemented in ALA Forum Gen III.

 Of course, now that we've implemented it, all the people who PREFERED threading are telling us they miss it. :)

We do hear you. When a reader posts on a specific topic, and his or her question gets answered five posts later, the flat presentation makes it hard to follow that aspect of the dialog.

 But what the flat presentation does provide is a more readable experience in an easier-to-use format, free of all the clicking and navigating that made using the previous forum software a chore. 

 In a future upgrade, we MAY be able to offer readers the choice of flat or threaded navigation, though I can't promise that, and we're still working out the kinks of this new version.

 Thanks for your comments, and thanks for reading http://www.alistapart.com/ .]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Nate</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P80/#80</link>
      <guid>http://www.alistapart.com/comments/doctype/#80</guid>         
	  
      <description><![CDATA[I would have to agree with greg (previous post). The new forum look is rather hard to follow. I like the contrast of the titles to the post though.

I was hesitant to post this, as we haven't yet seen the new forums in their completed state, or at least that's how it seems. Perhaps when all the older content gets ported ovah we shall be enlightened?

Of course we will,
- Nate]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Nate</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P80/#81</link>
      <guid>http://www.alistapart.com/comments/doctype/#81</guid>         
	  
      <description><![CDATA[This was just funny. Should/could not the new posts be posted at the top of the list?

Also - I love the (e) - quite sexy,
- Nate]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: apartness</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P80/#82</link>
      <guid>http://www.alistapart.com/comments/doctype/#82</guid>         
	  
      <description><![CDATA[Nate wrote:

&gt;Should/could not the new posts be posted at the top of the list?

There are advantages to displaying comments in the order they're received. The chief advantage is of course that replies make sense when viewed in the order of posting, and make no sense whatsoever when they precede the comments to which they refer.

"Newest post first" is a fine convention for weblogs, but not for conversations. mean I what know you If.

The advantage of placing the POST A MESSAGE field at the bottom of the page is that it encourages you to read existing posts before sharing your thoughts.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: dave</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P80/#83</link>
      <guid>http://www.alistapart.com/comments/doctype/#83</guid>         
	  
      <description><![CDATA[Does anybody know where I can get a list of the tags and properties supported by each doctype? My problem is that I use deprecated tags, but I don't know where to find the right ones for the version I'm using. Half my pages validate to HTML 4.01 strict, and the others validate to HTML 4.01 transitional, and none validate to xhtml.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: apartness</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P80/#84</link>
      <guid>http://www.alistapart.com/comments/doctype/#84</guid>         
	  
      <description><![CDATA[Dave, W3C includes all the info you seek as part of each HTML specification. 

http://www.w3.org/TR/html401/ is the gateway to more than you ever wanted to know about the HTML 4.01 spec.

Does this help?]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Michael Facius</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P80/#85</link>
      <guid>http://www.alistapart.com/comments/doctype/#85</guid>         
	  
      <description><![CDATA[Personally, for any questions regarding (x)html elements whatever, I prefer the DTD itself (as referenced in &lt;!DOCTYPE&gt;) for its brevity and clearness. While it's not really that hard to read a DTD, there's a great introduction by David Eisenberg here at ALA: http://www.alistapart.com/stories/readspec/ (Section "Learn to read a document type definition").]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by:</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P80/#86</link>
      <guid>http://www.alistapart.com/comments/doctype/#86</guid>         
	  
      <description><![CDATA[i didn't quite know what i was going to do with myself when the ala forums first went away, until one day, i didn't notice that i wasn't noticing they weren't there, and that was sad.

now - i'm noticing them again. and that makes me happy.

thank you.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: CodeBitch</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P80/#87</link>
      <guid>http://www.alistapart.com/comments/doctype/#87</guid>         
	  
      <description><![CDATA[Did some sniffing around, and according to this page ( http://www.opendoor.com/homedoor/homedoorbrowserlist.html ), Netscape before version 2, and IE versions 2.1 and earlier do not support HTTP 1.1. Since many servers now seem to run HTTP 1.1 only (including MacEdition's hosting service), odds are that users of these browsers won't be able to reach your content at all. 

So in response to the earlier posters who wish bad things upon users of older browsers -- don't worry, there's a limit to how old the browsers you see can be. What this also means is that the small numbers of hits for these Jurassic browsers recorded at the canned statistics sites like http://www.thecounter.com/stats/2002/March/browser.php are almost certainly misleading. But we knew that from their inability to record the early months of uptake of IE6.

Of course, we still have to deal with version 3 and 4 browsers sometimes.
Not really about DOCTYPES, I know, but germane to the discussion. Until we can be sure that the alleged browsers that choke on DOCTYPE declarations are also compatible with HTTP1.1, I think that DOCTYPES can be included without compatibility fears.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: timo</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P80/#88</link>
      <guid>http://www.alistapart.com/comments/doctype/#88</guid>         
	  
      <description><![CDATA[Threaded presentation has its advantages in theory - so does hypertext storytelling - but they seem far outweighed by the simplicity of a good old linear discussion. 

I welcome the change - less clicking, more cross-pollenation of ideas, easier access to the content, less chance of skipping over important posts and no more hunting through inconsistent titling.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Jeremy</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P80/#89</link>
      <guid>http://www.alistapart.com/comments/doctype/#89</guid>         
	  
      <description><![CDATA[Just so ya know, even "modern" browsers that claim to support HTTP 1.1 don't do so very well.

For example, even the current version of IE 6 doesn't support chunking.

It's kinda ironic that "1.1" browsers aren't, in that a compelling reason that HTTP 1.1 was made at all was because there was a glut of "1.0" browsers that weren't.

Herein lies a flaw in recommendations masquerading as standards. Without normative test suites, it's all too easy for a browser to support "foo", since no one goes to the trouble to exhaustively test the support.

Instead, we poor developers are left to frequently stub our toes on inconsistencies and downright bugs, even in "standards compliant" browsers.

Sometimes it shakes my faith in the eventual goal of the semantic web.

To steal a phrase, No. wonder. the. kids. love. flash.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Porter</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P90/#90</link>
      <guid>http://www.alistapart.com/comments/doctype/#90</guid>         
	  
      <description><![CDATA[The commenting system at Palm Infocenter might offer a simple compromise on the flat vs. threaded issue. Instead of full-out threading, they allow replies to be grouped under the main initial post that started that particular topic, and provide two modes of viewing: nested and flat.

In "nested mode" you can see the initial posts of each topic, with links to replies. And in "flat mode" all topics are shown fully expanded.

It's not as easy to pick out the latest posts, but it's much easier to follow discussions, and perhaps more importantly, the discussions you're interested in.

Article in "nested mode":
http://www.palminfocenter.com/view_Story.asp?ID=3307&MODE=NEST

Same article in "flat mode":
http://www.palminfocenter.com/view_Story.asp?ID=3307&MODE=FLAT

- Porter]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: CodeBitch</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P90/#91</link>
      <guid>http://www.alistapart.com/comments/doctype/#91</guid>         
	  
      <description><![CDATA[Jeremy makes a good point ( http://www.alistapart.com/stories/doctype/discuss/#ala-173 ), but it's not the issue here. The concern noted above by an anonymous poster (http://www.alistapart.com/stories/doctype/discuss/#ala-149) that "People who use Doctypes should be aware that many older browsers cannot understand them and insert them into the document as plain text", is the issue. Until someone actually can tell me which those very old browsers are, I hold to my suspicion that it is a non-issue. Never mind that some features of HTTP1.1 aren't supported even in newer browsers, the point is that very old browsers (pre-version-2) can't even see the content because they don't support HTTP1.1 *at all*. As an example, download Netscape 1 or Mosaic 0.9 from evolt's archive and point it at http://www.macedition.com/. Last time I tried this, I got a message that my browser didn't support HTTP1.1. In theory HTTP1.1 responses are meant to be backwards-compatible with HTTP1.0-only clients (http://www.openresources.com/documents/open-sources/node105.html) but apparently it doesn't always work like that for ancient browsers.

Anyway, this networking protocol stuff is way beyond my realm of competency, so I'll shut up now.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: stylo~</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P90/#92</link>
      <guid>http://www.alistapart.com/comments/doctype/#92</guid>         
	  
      <description><![CDATA[What's the difference between:

&lt;meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /&gt; 

and 

&lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8" /&gt;

Have never seen the answer to that. Which should I use for pages in English?]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Damian Cugley</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P90/#93</link>
      <guid>http://www.alistapart.com/comments/doctype/#93</guid>         
	  
      <description><![CDATA[&gt;&gt;&gt; What's the difference between charset=ISO-8859-1 and charset=utf-8?&lt;&lt;&lt;

All web pages are transmitted not as characters but as sequences of bytes. The encoding of the page says how the bytes are converted in to characters. 

ISO-8859-1 is an old-style 8-bit encoding. It uses the byte value 0x41 to represent U+0041 (capital A), and 0xC1 to represent U+00C1 (capital A acute, if memory serves). (The U+xxxx codes are Unicode's character codes.) This is simple, but limited to the repertoire of ISO-8859-1.

UTF-8 also uses the value 0x41 to represent U+0041. But the Unicode character U+00C1 is represented by two bytes: 0xC0 0xC1. UTF-8 can also encode other characters, like U+2014 (em dash), which is represented by the sequence 0xE2 0x80 0x94. In fact UTF-8 can represent any Unicode character, at the expense of being a little more complex to decode than ISO 8859-1.

That said, for pages in English that do not use typographic punctiation and avoid words like cafÃ© and Ã¥ngstrÃ¶m, there is actually no difference between the UTF-8 and the ISO-8859-1 byte sequences! Since UTF-8 is the default for XML it is probably simpler if you plump for that.

â€”Damian]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: apartness</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P90/#94</link>
      <guid>http://www.alistapart.com/comments/doctype/#94</guid>         
	  
      <description><![CDATA[A "forum about the forum" will be created at ALA shortly. That will be the place to post comments about the new forum. 

I appreciate the enthusiasm and helpfulness of the many comments about the forum, but they really are off-topic on this page. I ask you to wait and save such comments for the forthcoming "forum about the forum." (Try saying that with a mouthful of peanut butter.) 

Thanks for understanding.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: nathan</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P90/#95</link>
      <guid>http://www.alistapart.com/comments/doctype/#95</guid>         
	  
      <description><![CDATA[I have found articles on creating custom DTD's for the purpose of standardizing elements that are not recognized by certain browsers. I have not successfully completed this yet, and I was wondering if anyone else has had better luck? Here is an article:

http://www.htmlhelp.com/tools/validator/customdtd.html]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: vanderwal</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P90/#96</link>
      <guid>http://www.alistapart.com/comments/doctype/#96</guid>         
	  
      <description><![CDATA[Those of us that still have to work in tables for layout, keep in mind centering a table in IE 6 and using the links to the DTD can cause the content to center in the table. http://www.evolt.org/article/Does_IE_6_Center_Your_Table_Content/17/15341/ provides an overview. The best solution is to set the alignment in the tables in the CSS.

Thanks for the great article. I had just convinced folks I work for to move to the proper DTD and link a few weeks ago. This article helped support that it was the right move.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Tom Gilder</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P90/#97</link>
      <guid>http://www.alistapart.com/comments/doctype/#97</guid>         
	  
      <description><![CDATA[Just to tell you, I informed Microsoft about the IE6 going into quirks mode with an XML declaration in about June of 2001. Methinks IE6 might have been a tiny bit rushed to fit the Windows XP schedule.

Actually, I'm quite glad they didn't fix it - means I can easily stop IE6 using the horrid and massivly buggy standards mode (see http://tom.me.uk/2002/2/ie6css.html).]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Simon</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P90/#98</link>
      <guid>http://www.alistapart.com/comments/doctype/#98</guid>         
	  
      <description><![CDATA[Good article and a fine resource of DTDs Jeffrey - thanks (PS i'm enjoying your Book).

What about Namespace's though? I have to admit I don't really understand the concept. I have included them in all of my recent XHTML 1.0 pages but I'm not sure if I use the correct one or even why. Any comments?

I have to agree that the flat discussion group is very hard to follow (I bet Jacob N would have a few things to say about it!). It's so hard to find a response to any messages one sends. I have found the only way is to enter a search string in "Find on this page" in IE. I can at least then find my own post.

Anyway all the best.

Simon]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Michael Facius</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P90/#99</link>
      <guid>http://www.alistapart.com/comments/doctype/#99</guid>         
	  
      <description><![CDATA[xhtml is an xml application. In xml, you can declare your own tags. Let's say, you create some xml language that needs a [removed] tag - not for executing javascript code, but as a root tag for a movie script file &#40;other tags might be &lt;scene&gt;, &lt;stage-direction&gt; etc.&#41;. Now, xml is laid out to allow you to mix its applications, e.g. you might want to include that script-language document into an html file:

&lt;html&gt;
&lt;head&gt;...&lt;/head&gt;
&lt;body&gt;
&lt;h1&gt;Script to Charlotte Gray&lt;/h1&gt;
[url="index.html"]back[/url]
[removed]&lt;scene&gt;...&lt;/scene&gt;[removed]
&lt;/body&gt;
&lt;/html&gt;

Uh-oh! Namespace conflict! How does the parser know if the [removed] in the body of your html-document is supposed to be a html [removed] or a document written in your MovieScript language?

That's where namespaces come into play. Since the value for xmlns is a URI (unique ressource identifier), xmlns="http://www.w3.org/1999/xhtml" unmistakably sets the default namespace to xhtml. Adding your MovieScript language namespace xmlns:ms="http://yourdomain.com/moviescript" and adding the namespace prefix "ms" to all MSL-Elements (&lt;ms:script&gt;&lt;ms:scene&gt;&lt;/ms:scene&gt;&lt;/ms:script&gt;) shows the parser that they are not html.

Hope this helps.]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>

    <item>
      <title>Posted by: Till</title>
	  
	      <link>http://www.alistapart.com/comments/doctype/P100/#100</link>
      <guid>http://www.alistapart.com/comments/doctype/#100</guid>         
	  
      <description><![CDATA[Im just designing a site for a customer. I decided to go with XHTML and CSS. 
There seems to be a problem with the Doctype for XML and CSS File linking:

Check out www.nsag.ch/demo/template4b.html - the page renders fine in IE5.5, Opera6 and even in a simplified mode on NS4.7 PC. However, on Mozilla, it looks like the stylesheet was not imported. I used
&lt;link rel="Stylesheet" href="style4bnn.css" type="text/css" media="screen" /&gt;
&lt;style type="text/css" media="all"&gt;@import "style4b.css";&lt;/style&gt;
for the stylesheets and
&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt; 
&lt;html &gt;
for the Doctype.

NOW THE FUNY THING COMES:

When I either remove the Doctype ( www.nsag.ch/demo/template4b_nodtype.html ) or when I just add the CSS to the file instead of linking to a external css file &#40;www.nsag.ch/demo/template4b_unlinked.html&#41; it WORKS FINE!!?

WHAT THE HECK... ?? ;)

Any ideas?

Till

P.S. The Page validates - except for three tags I need for NS4.7]]></description>
      <dc:subject></dc:subject>
      <dc:date>2012-01-31T13:00:49+00:00</dc:date>
    </item>


    </channel>
</rss>
