html5/spec Overview.html,1.1311,1.1312

Update of /sources/public/html5/spec
In directory hutz:/tmp/cvs-serv8855

Modified Files:
	Overview.html 
Log Message:
Allow a DOCTYPE for XSLT compatibility (only). (whatwg r2140)

Index: Overview.html
===================================================================
RCS file: /sources/public/html5/spec/Overview.html,v
retrieving revision 1.1311
retrieving revision 1.1312
diff -u -d -r1.1311 -r1.1312
--- Overview.html	2 Sep 2008 09:42:39 -0000	1.1311
+++ Overview.html	2 Sep 2008 10:09:23 -0000	1.1312
@@ -45406,6 +45406,9 @@
    <li>A U+004C LATIN CAPITAL LETTER L or U+006C LATIN SMALL LETTER L
     character.
 
+   <li>Optionally, a <a href="#doctype6">DOCTYPE legacy string</a> (defined
+    below).
+
    <li>Zero or more <a href="#space" title="space character">space
     characters</a>.
 
@@ -45415,6 +45418,51 @@
   <p class=note>In other words, <code>&lt;!DOCTYPE HTML></code>,
    case-insensitively.
 
+  <p>For the purposes of XSLT generators, which cannot output HTML markup
+   without a DOCTYPE, a <dfn id=doctype6>DOCTYPE legacy string</dfn> may be
+   inserted into the DOCTYPE (in the position defined above). This string
+   must consist of:
+
+  <ol class=brief>
+   <li>One or more <a href="#space" title="space character">space
+    characters</a>.
+
+   <li>A U+0050 LATIN CAPITAL LETTER P or U+0070 LATIN SMALL LETTER P
+    character.
+
+   <li>A U+0055 LATIN CAPITAL LETTER U or U+0075 LATIN SMALL LETTER U
+    character.
+
+   <li>A U+0042 LATIN CAPITAL LETTER B or U+0062 LATIN SMALL LETTER B
+    character.
+
+   <li>A U+004C LATIN CAPITAL LETTER L or U+006C LATIN SMALL LETTER L
+    character.
+
+   <li>A U+0049 LATIN CAPITAL LETTER I or U+0069 LATIN SMALL LETTER I
+    character.
+
+   <li>A U+0043 LATIN CAPITAL LETTER C or U+0063 LATIN SMALL LETTER C
+    character.
+
+   <li>One or more <a href="#space" title="space character">space
+    characters</a>.
+
+   <li>A U+0022 QUOTATION MARK or U+0027 APOSTROPHE character.
+
+   <li>The literal string "<code titel="">XSLT-generated</code>".
+
+   <li>The same character as in item 8 (a matching U+0022 QUOTATION MARK or
+    U+0027 APOSTROPHE character).
+  </ol>
+
+  <p class=note>In other words, <code>&lt;!DOCTYPE HTML PUBLIC
+   "XSLT-generated"></code> or <code>&lt;!DOCTYPE HTML PUBLIC
+   'XSLT-generated'></code>, case-insensitively except for the bit in quotes.
+
+  <p>The <a href="#doctype6">DOCTYPE legacy string</a> should not be used
+   unless the document is generated from XSLT.
+
   <h4 id=elements1><span class=secno>8.1.2 </span>Elements</h4>
 
   <p>There are five different kinds of <dfn id=elements3
@@ -48208,7 +48256,7 @@
 
   <p>Otherwise, if the next seven characters are an <a href="#ascii">ASCII
    case-insensitive</a> match for the word "DOCTYPE", then consume those
-   characters and switch to the <a href="#doctype6">DOCTYPE state</a>.
+   characters and switch to the <a href="#doctype7">DOCTYPE state</a>.
 
   <p>Otherwise, if the <span>insertion mode</span> is "<a href="#in-foreign"
    title="insertion mode: in foreign content">in foreign content</a>" and the
@@ -48364,7 +48412,7 @@
     the <a href="#comment">comment state</a>.
   </dl>
 
-  <h5 id=doctype><span class=secno>8.2.4.23. </span><dfn id=doctype6>DOCTYPE
+  <h5 id=doctype><span class=secno>8.2.4.23. </span><dfn id=doctype7>DOCTYPE
    state</dfn></h5>
 
   <p>Consume the <a href="#next-input">next input character</a>:
@@ -48419,10 +48467,10 @@
    <dt>Anything else
 
    <dd>Create a new DOCTYPE token. Set the token's name to the current input
-    character. Switch to the <a href="#doctype7">DOCTYPE name state</a>.
+    character. Switch to the <a href="#doctype8">DOCTYPE name state</a>.
   </dl>
 
-  <h5 id=doctype0><span class=secno>8.2.4.25. </span><dfn id=doctype7>DOCTYPE
+  <h5 id=doctype0><span class=secno>8.2.4.25. </span><dfn id=doctype8>DOCTYPE
    name state</dfn></h5>
 
   <p>First, consume the <a href="#next-input">next input character</a>:
@@ -48453,7 +48501,7 @@
    <dt>Anything else
 
    <dd>Append the current input character to the current DOCTYPE token's
-    name. Stay in the <a href="#doctype7">DOCTYPE name state</a>.
+    name. Stay in the <a href="#doctype8">DOCTYPE name state</a>.
   </dl>
 
   <h5 id=after1><span class=secno>8.2.4.26. </span><dfn id=after6>After
@@ -48523,13 +48571,13 @@
    <dt>U+0022 QUOTATION MARK (&quot;)
 
    <dd>Set the DOCTYPE token's public identifier to the empty string (not
-    missing), then switch to the <a href="#doctype8">DOCTYPE public
+    missing), then switch to the <a href="#doctype9">DOCTYPE public
     identifier (double-quoted) state</a>.
 
    <dt>U+0027 APOSTROPHE (')
 
    <dd>Set the DOCTYPE token's public identifier to the empty string (not
-    missing), then switch to the <a href="#doctype9">DOCTYPE public
+    missing), then switch to the <a href="#doctype10">DOCTYPE public
     identifier (single-quoted) state</a>.
 
    <dt>U+003E GREATER-THAN SIGN (&gt;)
@@ -48551,7 +48599,7 @@
     href="#bogus2">bogus DOCTYPE state</a>.
   </dl>
 
-  <h5 id=doctype1><span class=secno>8.2.4.28. </span><dfn id=doctype8>DOCTYPE
+  <h5 id=doctype1><span class=secno>8.2.4.28. </span><dfn id=doctype9>DOCTYPE
    public identifier (double-quoted) state</dfn></h5>
 
   <p>Consume the <a href="#next-input">next input character</a>:
@@ -48577,12 +48625,12 @@
    <dt>Anything else
 
    <dd>Append the current input character to the current DOCTYPE token's
-    public identifier. Stay in the <a href="#doctype8">DOCTYPE public
+    public identifier. Stay in the <a href="#doctype9">DOCTYPE public
     identifier (double-quoted) state</a>.
   </dl>
 
-  <h5 id=doctype2><span class=secno>8.2.4.29. </span><dfn id=doctype9>DOCTYPE
-   public identifier (single-quoted) state</dfn></h5>
+  <h5 id=doctype2><span class=secno>8.2.4.29. </span><dfn
+   id=doctype10>DOCTYPE public identifier (single-quoted) state</dfn></h5>
 
   <p>Consume the <a href="#next-input">next input character</a>:
 
@@ -48607,7 +48655,7 @@
    <dt>Anything else
 
    <dd>Append the current input character to the current DOCTYPE token's
-    public identifier. Stay in the <a href="#doctype9">DOCTYPE public
+    public identifier. Stay in the <a href="#doctype10">DOCTYPE public
     identifier (single-quoted) state</a>.
   </dl>
 
@@ -48632,13 +48680,13 @@
    <dt>U+0022 QUOTATION MARK (&quot;)
 
    <dd>Set the DOCTYPE token's system identifier to the empty string (not
-    missing), then switch to the <a href="#doctype10">DOCTYPE system
+    missing), then switch to the <a href="#doctype11">DOCTYPE system
     identifier (double-quoted) state</a>.
 
    <dt>U+0027 APOSTROPHE (')
 
    <dd>Set the DOCTYPE token's system identifier to the empty string (not
-    missing), then switch to the <a href="#doctype11">DOCTYPE system
+    missing), then switch to the <a href="#doctype12">DOCTYPE system
     identifier (single-quoted) state</a>.
 
    <dt>U+003E GREATER-THAN SIGN (&gt;)
@@ -48680,13 +48728,13 @@
    <dt>U+0022 QUOTATION MARK (&quot;)
 
    <dd>Set the DOCTYPE token's system identifier to the empty string (not
-    missing), then switch to the <a href="#doctype10">DOCTYPE system
+    missing), then switch to the <a href="#doctype11">DOCTYPE system
     identifier (double-quoted) state</a>.
 
    <dt>U+0027 APOSTROPHE (')
 
    <dd>Set the DOCTYPE token's system identifier to the empty string (not
-    missing), then switch to the <a href="#doctype11">DOCTYPE system
+    missing), then switch to the <a href="#doctype12">DOCTYPE system
     identifier (single-quoted) state</a>.
 
    <dt>U+003E GREATER-THAN SIGN (&gt;)
@@ -48709,7 +48757,7 @@
   </dl>
 
   <h5 id=doctype3><span class=secno>8.2.4.32. </span><dfn
-   id=doctype10>DOCTYPE system identifier (double-quoted) state</dfn></h5>
+   id=doctype11>DOCTYPE system identifier (double-quoted) state</dfn></h5>
 
   <p>Consume the <a href="#next-input">next input character</a>:
 
@@ -48734,12 +48782,12 @@
    <dt>Anything else
 
    <dd>Append the current input character to the current DOCTYPE token's
-    system identifier. Stay in the <a href="#doctype10">DOCTYPE system
+    system identifier. Stay in the <a href="#doctype11">DOCTYPE system
     identifier (double-quoted) state</a>.
   </dl>
 
   <h5 id=doctype4><span class=secno>8.2.4.33. </span><dfn
-   id=doctype11>DOCTYPE system identifier (single-quoted) state</dfn></h5>
+   id=doctype12>DOCTYPE system identifier (single-quoted) state</dfn></h5>
 
   <p>Consume the <a href="#next-input">next input character</a>:
 
@@ -48764,7 +48812,7 @@
    <dt>Anything else
 
    <dd>Append the current input character to the current DOCTYPE token's
-    system identifier. Stay in the <a href="#doctype11">DOCTYPE system
+    system identifier. Stay in the <a href="#doctype12">DOCTYPE system
     identifier (single-quoted) state</a>.
   </dl>
 
@@ -49651,13 +49699,14 @@
    <dd>
     <p>If the DOCTYPE token's <code title="">name</code> is not an <a
      href="#ascii">ASCII case-insensitive</a> match for the string "<code
-     title="">HTML</code>", or if the token's public identifier is not
-     missing, or if the token's system identifier is not missing, then there
-     is a <a href="#parse2">parse error</a>. Conformance checkers may,
-     instead of reporting this error, switch to a conformance checking mode
-     for another language (e.g. based on the DOCTYPE token a conformance
-     checker could recognize that the document is an HTML4-era document, and
-     defer to an HTML4 conformance checker.)</p>
+     title="">HTML</code>", or if the token's public identifier is neither
+     missing nor equal to the string "<code>XSLT-generated</code>", or if the
+     token's system identifier is not missing, then there is a <a
+     href="#parse2">parse error</a>. Conformance checkers may, instead of
+     reporting this error, switch to a conformance checking mode for another
+     language (e.g. based on the DOCTYPE token a conformance checker could
+     recognize that the document is an HTML4-era document, and defer to an
+     HTML4 conformance checker.)</p>
 
     <p>Append a <code>DocumentType</code> node to the <code>Document</code>
      node, with the <code title="">name</code> attribute set to the name

Received on Tuesday, 2 September 2008 10:10:03 UTC