NOTE: The current preferred location for bug reports is the GitHub issue tracker.
Bug 521 - Make the legacy DOCTYPE string be compatible with more tools. Clarify some XML DOCTYPE comments.
Make the legacy DOCTYPE string be compatible with more tools. Clarify some XM...
Status: NEW
Product: Validator.nu
Classification: Unclassified
Component: HTML parser
HEAD
All All
: P2 normal
Assigned To: Nobody
http://svn.whatwg.org/webapps/source?...
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2009-05-27 14:18 CEST by Henri Sivonen
Modified: 2009-11-23 17:17 CET (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Henri Sivonen 2009-05-27 14:18:35 CEST
Index: source
===================================================================
--- source	(revision 2724)
+++ source	(revision 2725)
@@ -864,17 +864,6 @@
   or <code>application/xhtml+xml</code> and must not be served as
   <code>text/html</code>. <a href="#refsRFC3023">[RFC3023]</a></p>
 
-  <p>Such XML documents may contain a <code>DOCTYPE</code> if desired,
-  but this is not required to conform to this specification.</p>
-
-  <p class="note">According to the XML specification, XML processors
-  are not guaranteed to process the external DTD subset referenced in
-  the DOCTYPE. This means, for example, that using entity references
-  for characters in XHTML documents is unsafe (except for <code
-  title="">&amp;lt;</code>, <code title="">&amp;gt;</code>, <code
-  title="">&amp;amp;</code>, <code title="">&amp;quot;</code> and
-  <code title="">&amp;apos;</code>).</p>
-
   <p id="authors-using-html"><span title="HTML5">HTML
   documents</span>, if they are served over the wire (e.g. by HTTP)
   must be labeled with the <code>text/html</code> MIME type.</p> <!--
@@ -52814,27 +52803,29 @@
   <p class="note">In other words, <code>&lt;!DOCTYPE HTML></code>,
   case-insensitively.</p>
 
-  <p>For the purposes of XSLT generators that cannot output HTML
-  markup without a DOCTYPE, a <dfn>DOCTYPE legacy string</dfn> may be
-  inserted into the DOCTYPE (in the position defined above). This
-  string must consist of:</p>
+  <p>For the purposes of HTML generators that cannot output HTML
+  markup with the short DOCTYPE "<code title="">&lt;!DOCTYPE
+  HTML></code>", a <dfn>DOCTYPE legacy string</dfn> may be inserted
+  into the DOCTYPE (in the position defined above). This string must
+  consist of:</p>
 
   <ol class="brief">
    <li>One or more <span title="space character">space characters</span>.</li>
-   <li>A string that is an <span>ASCII case-insensitive</span> match for the string "<code title="">PUBLIC</code>".</li>
+   <li>A string that is an <span>ASCII case-insensitive</span> match for the string "<code title="">SYSTEM</code>".</li>
    <li>One or more <span title="space character">space characters</span>.</li>
    <li>A U+0022 QUOTATION MARK or U+0027 APOSTROPHE character (the <i>quote mark</i>).</li>
-   <li>The literal string "<code title="">XSLT-compat</code>".</li>
+   <li>The literal string "<code title="">about:legacy-compat</code>".</li>
    <li>A matching U+0022 QUOTATION MARK or U+0027 APOSTROPHE character (i.e. the same character as in the earlier step marked <i>quote mark</i>).</li>
   </ol>
 
-  <p class="note">In other words, <code>&lt;!DOCTYPE HTML PUBLIC
-  "XSLT-compat"></code> or <code>&lt;!DOCTYPE HTML PUBLIC
-  'XSLT-compat'></code>, case-insensitively except for the bit in
-  quotes.</p>
+  <p class="note">In other words, <code>&lt;!DOCTYPE HTML SYSTEM
+  "about:legacy-compat"></code> or <code>&lt;!DOCTYPE HTML PUBLIC
+  'about:legacy-compat'></code>, case-insensitively except for the bit
+  in quotes.</p>
 
   <p>The <span>DOCTYPE legacy string</span> should not be used unless
-  the document is generated from XSLT.</p>
+  the document is generated from a system that cannot output the
+  shorter string.</p>
 
 
 
@@ -56663,10 +56654,10 @@
 
     <p>If the DOCTYPE token's <code title="">name</code> is not a
     <span>case-sensitive</span> match for the string "<code
-    title="">html</code>", or if the token's public identifier is
-    neither missing nor a <span>case-sensitive</span> match for the
-    string "<code>XSLT-compat</code>", or if the token's system
-    identifier is not missing, then there is a <span>parse
+    title="">html</code>", or if the token's public identifier is not
+    missing, or if the token's system identifier is neither missing
+    nor a <span>case-sensitive</span> match for the string
+    "<code>about:legacy-compat</code>", then there is a <span>parse
     error</span> (this is the <dfn>DOCTYPE parse
     error</dfn>). Conformance checkers may, instead of reporting this
     error, switch to a conformance checking mode for another language
@@ -60744,6 +60735,20 @@
   <p>This specification does not define any syntax-level requirements
   beyond those defined for XML proper.</p>
 
+  <p>XML documents may contain a <code>DOCTYPE</code> if desired, but
+  this is not required to conform to this specification. This
+  specification does not define a public or system identifier, nor
+  provide a format DTD.</p>
+
+  <p class="note">According to the XML specification, XML processors
+  are not guaranteed to process the external DTD subset referenced in
+  the DOCTYPE. This means, for example, that using entity references
+  for characters in XHTML documents is unsafe if they are defined in
+  an external file (except for <code title="">&amp;lt;</code>, <code
+  title="">&amp;gt;</code>, <code title="">&amp;amp;</code>, <code
+  title="">&amp;quot;</code> and <code
+  title="">&amp;apos;</code>).</p>
+
 
   <h3>Parsing XHTML documents</h3>