Skip to content

Commit

Permalink
[ac] (0) Make the legacy DOCTYPE string be compatible with more tools…
Browse files Browse the repository at this point in the history
…. Clarify some XML DOCTYPE comments.

git-svn-id: http://svn.whatwg.org/webapps@2725 340c8d12-0b0e-0410-8428-c7bf67bfef74
  • Loading branch information
Hixie committed Jan 30, 2009
1 parent 03bfcb5 commit 69db023
Show file tree
Hide file tree
Showing 3 changed files with 65 additions and 54 deletions.
5 changes: 3 additions & 2 deletions header-whatwg
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@
table.matrix, table.matrix td { border: none; text-align: right; }
table.matrix { margin-left: 2em; }
.applies th > * { display: block; white-space: nowrap; }
#updatesStatus.relevant { position: fixed; right: 1em; top: 1em; padding: 0.5em; font: bold small sans-serif; min-width: 25em; width: 30%; max-width: 40em; height: auto; border: ridge 4px gray; background: #EEEEEE; color: black; }
#updatesStatus { display: none; }
#updatesStatus.relevant { display: block; position: fixed; right: 1em; top: 1em; padding: 0.5em; font: bold small sans-serif; min-width: 25em; width: 30%; max-width: 40em; height: auto; border: ridge 4px gray; background: #EEEEEE; color: black; }
#configUI { position: absolute; top: 10em; right: 1em; width: 11em; font-size: small; text-align: center; }
#configUI p { padding: 0.3em; background: #EEEEEE; color: black; border: inset thin; }
#configUI input[type=button] { display: block; margin: auto; }
Expand Down Expand Up @@ -166,7 +167,7 @@
status.appendChild(document.createTextNode('. '));
var x = document.createElement('a');
x.href = '';
x.onclick = function () { status.className = ''; return false; };
x.onclick = function () { status.textContent = ''; status.className = ''; return false; };
x.textContent = "Close";
status.appendChild(x);
status.appendChild(document.createTextNode('. '));
Expand Down
57 changes: 31 additions & 26 deletions index
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@
table.matrix, table.matrix td { border: none; text-align: right; }
table.matrix { margin-left: 2em; }
.applies th > * { display: block; white-space: nowrap; }
#updatesStatus.relevant { position: fixed; right: 1em; top: 1em; padding: 0.5em; font: bold small sans-serif; min-width: 25em; width: 30%; max-width: 40em; height: auto; border: ridge 4px gray; background: #EEEEEE; color: black; }
#updatesStatus { display: none; }
#updatesStatus.relevant { display: block; position: fixed; right: 1em; top: 1em; padding: 0.5em; font: bold small sans-serif; min-width: 25em; width: 30%; max-width: 40em; height: auto; border: ridge 4px gray; background: #EEEEEE; color: black; }
#configUI { position: absolute; top: 10em; right: 1em; width: 11em; font-size: small; text-align: center; }
#configUI p { padding: 0.3em; background: #EEEEEE; color: black; border: inset thin; }
#configUI input[type=button] { display: block; margin: auto; }
Expand Down Expand Up @@ -147,7 +148,7 @@
status.appendChild(document.createTextNode('. '));
var x = document.createElement('a');
x.href = '';
x.onclick = function () { status.className = ''; return false; };
x.onclick = function () { status.textContent = ''; status.className = ''; return false; };
x.textContent = "Close";
status.appendChild(x);
status.appendChild(document.createTextNode('. '));
Expand Down Expand Up @@ -1853,15 +1854,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><a href=#html5 title=HTML5>HTML
documents</a>, if they are served over the wire (e.g. by HTTP)
must be labeled with the <code>text/html</code> MIME type.</p> <!--
Expand Down Expand Up @@ -46279,24 +46271,26 @@ interface <dfn id=messagechannel>MessageChannel</dfn> {
</ol><p class=note>In other words, <code>&lt;!DOCTYPE HTML&gt;</code>,
case-insensitively.</p>

<p>For the purposes of XSLT generators that cannot output HTML
markup without a DOCTYPE, a <dfn id=doctype-legacy-string>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&gt;</code>", a <dfn id=doctype-legacy-string>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 <a href=#space-character title="space character">space characters</a>.</li>
<li>A string that is an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the string "<code title="">PUBLIC</code>".</li>
<li>A string that is an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the string "<code title="">SYSTEM</code>".</li>
<li>One or more <a href=#space-character title="space character">space characters</a>.</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"&gt;</code> or <code>&lt;!DOCTYPE HTML PUBLIC
'XSLT-compat'&gt;</code>, case-insensitively except for the bit in
quotes.</p>
</ol><p class=note>In other words, <code>&lt;!DOCTYPE HTML SYSTEM
"about:legacy-compat"&gt;</code> or <code>&lt;!DOCTYPE HTML PUBLIC
'about:legacy-compat'&gt;</code>, case-insensitively except for the bit
in quotes.</p>

<p>The <a href=#doctype-legacy-string>DOCTYPE legacy string</a> 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>



Expand Down Expand Up @@ -49673,10 +49667,10 @@ interface <dfn id=messagechannel>MessageChannel</dfn> {
<dd>

<p>If the DOCTYPE token's <code title="">name</code> is not a
<a href=#case-sensitive>case-sensitive</a> match for the string "<code title="">html</code>", or if the token's public identifier is
neither missing nor a <a href=#case-sensitive>case-sensitive</a> match for the
string "<code>XSLT-compat</code>", or if the token's system
identifier is not missing, then there is a <a href=#parse-error>parse
<a href=#case-sensitive>case-sensitive</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 neither missing
nor a <a href=#case-sensitive>case-sensitive</a> match for the string
"<code>about:legacy-compat</code>", then there is a <a href=#parse-error>parse
error</a> (this is the <dfn id=doctype-parse-error>DOCTYPE parse
error</dfn>). Conformance checkers may, instead of reporting this
error, switch to a conformance checking mode for another language
Expand Down Expand Up @@ -55532,6 +55526,17 @@ http://lxr.mozilla.org/seamonkey/search?string=nested
<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 id=parsing-xhtml-documents><span class=secno>9.2 </span>Parsing XHTML documents</h3>

Expand Down
57 changes: 31 additions & 26 deletions source
Original file line number Diff line number Diff line change
Expand Up @@ -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> <!--
Expand Down Expand Up @@ -52814,27 +52803,29 @@ interface <dfn>MessageChannel</dfn> {
<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>



Expand Down Expand Up @@ -56663,10 +56654,10 @@ interface <dfn>MessageChannel</dfn> {

<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
Expand Down Expand Up @@ -60744,6 +60735,20 @@ http://lxr.mozilla.org/seamonkey/search?string=nested
<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>

Expand Down

0 comments on commit 69db023

Please sign in to comment.