Short URL: http://html5.org/r/2140
| SVN | Bug | Comment | Time (UTC) |
|---|---|---|---|
| 2140 | 2008-09-02 10:09 |
Index: source
===================================================================
--- source (revision 2139)
+++ source (revision 2140)
@@ -42806,6 +42806,7 @@
<li>A U+0054 LATIN CAPITAL LETTER T or U+0074 LATIN SMALL LETTER T character.</li>
<li>A U+004D LATIN CAPITAL LETTER M or U+006D LATIN SMALL LETTER M character.</li>
<li>A U+004C LATIN CAPITAL LETTER L or U+006C LATIN SMALL LETTER L character.</li>
+ <li>Optionally, a <span>DOCTYPE legacy string</span> (defined below).</li>
<li>Zero or more <span title="space character">space characters</span>.</li>
<li>A U+003E GREATER-THAN SIGN (<code>></code>) character.</li>
</ol>
@@ -42813,7 +42814,35 @@
<p class="note">In other words, <code><!DOCTYPE HTML></code>,
case-insensitively.</p>
+ <p>For the purposes of XSLT generators, which 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>
+ <ol class="brief">
+ <li>One or more <span title="space character">space characters</span>.</li>
+ <li>A U+0050 LATIN CAPITAL LETTER P or U+0070 LATIN SMALL LETTER P character.</li>
+ <li>A U+0055 LATIN CAPITAL LETTER U or U+0075 LATIN SMALL LETTER U character.</li>
+ <li>A U+0042 LATIN CAPITAL LETTER B or U+0062 LATIN SMALL LETTER B character.</li>
+ <li>A U+004C LATIN CAPITAL LETTER L or U+006C LATIN SMALL LETTER L character.</li>
+ <li>A U+0049 LATIN CAPITAL LETTER I or U+0069 LATIN SMALL LETTER I character.</li>
+ <li>A U+0043 LATIN CAPITAL LETTER C or U+0063 LATIN SMALL LETTER C character.</li>
+ <li>One or more <span title="space character">space characters</span>.</li>
+ <li>A U+0022 QUOTATION MARK or U+0027 APOSTROPHE character.</li>
+ <li>The literal string "<code titel="">XSLT-generated</code>".</li>
+ <li>The same character as in item 8 (a matching U+0022 QUOTATION MARK or U+0027 APOSTROPHE character).</li>
+ </ol>
+
+ <p class="note">In other words, <code><!DOCTYPE HTML PUBLIC
+ "XSLT-generated"></code> or <code><!DOCTYPE HTML PUBLIC
+ 'XSLT-generated'></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>
+
+
+
<h4>Elements</h4>
<p>There are five different kinds of <dfn
@@ -46589,14 +46618,15 @@
<p>If the DOCTYPE token's <code title="">name</code> is not an
<span>ASCII case-insensitive</span> 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 <span>parse error</span>. 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 <span>parse
+ error</span>. 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>