- From: Lachlan Hunt via cvs-syncmail <cvsmail@w3.org>
- Date: Sat, 07 Mar 2009 06:22:30 +0000
- To: public-html-commits@w3.org
Update of /sources/public/html5/html-author
In directory hutz:/tmp/cvs-serv3596
Modified Files:
Overview.html Overview.src.html
Log Message:
Revised DOCTYPE syntax explanation
Index: Overview.html
===================================================================
RCS file: /sources/public/html5/html-author/Overview.html,v
retrieving revision 1.51
retrieving revision 1.52
diff -u -d -r1.51 -r1.52
--- Overview.html 6 Mar 2009 16:57:48 -0000 1.51
+++ Overview.html 7 Mar 2009 06:22:28 -0000 1.52
@@ -1,7 +1,7 @@
-<!DOCTYPE html><html lang=en-AU><head>
- <meta charset=UTF-8>
+<!DOCTYPE html><html lang="en-AU"><head>
+ <meta charset="UTF-8">
<title>HTML 5 Reference</title>
- <style type=text/css>
+ <style type="text/css">
.element { margin: 1em 0; }
.element .summary { background: #EFE; padding: 1px 0; border: solid #9F9; border-width: 0 3px 3px; position: relative; }
@@ -44,37 +44,40 @@
[...7665 lines suppressed...]
values in examples are quoted using double quotes. In HTML examples,
boolean attributes are written in their minimised form and in XHTML
@@ -5935,7 +5955,7 @@
</section>
<section>
- <h5 id=void-elements><span class=secno>6.1.2.2 </span>Void Elements</h5>
+ <h5 id="void-elements"><span class="secno">6.1.2.2 </span>Void Elements</h5>
<p>In XHTML examples, due to the XML Well-Formedness requirements, void
elements are always marked up using the trailing slash.</p>
@@ -5955,7 +5975,7 @@
</section>
<section>
- <h5 id=namespaces><span class=secno>6.1.2.3 </span>Namespaces</h5>
+ <h5 id="namespaces"><span class="secno">6.1.2.3 </span>Namespaces</h5>
<p>Some XHTML examples make use of XML namespaces. In such cases, the
following prefixes are assumed to be defined even if there is no
<code>xmlns</code> attributes in the fragment of code.</p>
Index: Overview.src.html
===================================================================
RCS file: /sources/public/html5/html-author/Overview.src.html,v
retrieving revision 1.52
retrieving revision 1.53
diff -u -d -r1.52 -r1.53
--- Overview.src.html 6 Mar 2009 16:57:48 -0000 1.52
+++ Overview.src.html 7 Mar 2009 06:22:28 -0000 1.53
@@ -46,7 +46,10 @@
code { color:orangered }
code :link, code :visited { color:inherit }
pre code { color:inherit }
- pre mark, pre strong { background: yellow; }
+ pre mark, pre strong { background: yellow; font-weight: normal; }
+
+ .case-insensitive:hover { text-transform: lowercase; }
+ .case-insensitive.lower:hover { text-transform: uppercase; }
</style>
<link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/TR/W3C-ED">
</head>
@@ -378,30 +381,9 @@
<pre><code><!DOCTYPE html></code></pre>
</div>
- <p>The <code>DOCTYPE</code> originates from HTML’s SGML lineage and, in
- previous levels of HTML, was originally used to refer to a Document Type
- Definition (DTD) — a formal declaration of the elements, attributes and
- syntactic features that could be used within the document. Those who are
- familiar with previous levels of HTML will notice that there is no
- <code>PUBLIC</code> or <code>SYSTEM</code> identifier present in this
- <code>DOCTYPE</code>, which were used to refer to the DTD.</p>
-
- <p>As HTML5 is no longer formally based upon SGML, the <code>DOCTYPE</code>
- no longer serves this purpose, and thus it does not refer to a DTD
- anymore. However, due to legacy constraints, it has gained another very
- important purpose: triggering no-quirks mode in browsers.</p>
-
- <p>HTML 5 defines three modes: <strong>quirks mode</strong>,
- <strong>limited quirks mode</strong> and <strong>no quirks mode</strong>,
- of which only the latter is considered conforming to use. The reason for
- this is due to backwards compatibility. The important thing to understand
- is that there are some differences in the way documents are visually
- rendered in each of the modes; and to ensure the most standards compliant
- rendering, it is important to ensure no-quirks mode is used.</p>
-
<p>For compatibility with legacy producers of HTML — that is, software that
outputs HTML documents — an alternative <code>DOCTYPE</code> is available
- for use by systems which are unable to output the <code>DOCTYPE</code>
+ for use by systems that are unable to output the <code>DOCTYPE</code>
given above. This limitation occurs in software that expects a
<code>DOCTYPE</code> to include either a <code>PUBLIC</code> or
<code>SYSTEM</code> identifier, and is unable to omit them.
@@ -411,26 +393,29 @@
<pre><code><!DOCTYPE html SYSTEM "about:legacy-compat"></code></pre>
</div>
- <p>This uses the <code>SYSTEM</code> identifier with a URL that intentionally
- points to a non-existent DTD. The <code>about:</code> URI scheme is used for
- this purpose specifically because it cannot be resolved to any specific DTD.</p>
-
<p class="note">Note: The term "legacy-compat" refers to compatibility with legacy
producers only. In particular, it does not refer to compatibility with
legacy browsers, which, in practice, ignore SYSTEM identifiers and DTDs.</p>
<p>In HTML, the <code>DOCTYPE</code> is case insensitive, except for the quoted string
- <code>"about:legacy-compat"</code>, which must be written in lower case. The <code>SYSTEM</code>
- identifier, however, may also be quoted with single quotes, rather than double quotes.
- The following are all valid alternatives in the HTML syntax:</p>
+ <code>"about:legacy-compat"</code>, which must be written in lower case. This quoted
+ string, however, may also be quoted with single quotes, rather than double quotes.
+ The emphasised parts below illustrate which parts are case insensitive.</p>
<div class="html example">
<p>HTML Example:</p>
- <pre><code><!DOCTYPE html>
+ <pre><code><!<mark><strong class="case-insensitive">DOCTYPE </strong><strong class="case-insensitive lower" title="">html</strong></mark>>
-<!DOCTYPE html SYSTEM "about:legacy-compat">
+<!<mark><strong class="case-insensitive">DOCTYPE</strong> <strong class="case-insensitive lower" title="">html</strong> <strong class="case-insensitive">SYSTEM</strong></mark> "about:legacy-compat">
-<!doctype html>
+<!<mark><strong class="case-insensitive">DOCTYPE</strong> <strong class="case-insensitive lower" title="">html</strong> <strong class="case-insensitive">SYSTEM</strong></mark> 'about:legacy-compat'>
+</code></pre>
+ </div>
+ The following are also valid alternatives in the HTML syntax:</p>
+
+ <div class="html example">
+ <p>HTML Example:</p>
+ <pre><code><!doctype html>
<!DOCTYPE HTML>
@@ -438,11 +423,11 @@
<!Doctype HTML System "about:legacy-compat"></code></pre>
</div>
-
+
<p>For XHTML, it is recommended that the <code>DOCTYPE</code> be
omitted because it is unnecessary. However, should you wish to
use a <code>DOCTYPE</code>, note that the <code>DOCTYPE</code>
- is case sensitive, and only the canonical versions of the
+ is case sensitive, and only the canonical versions of these
<code>DOCTYPE</code>s given above may be used.</p>
<div class="xhtml example">
@@ -458,7 +443,40 @@
<code>DOCTYPE</code>s in XHTML. You may, if you wish, use a custom
<code>DOCTYPE</code> referring to a custom DTD, typically for
validation purposes. Although, be advised that DTDs have a number
- of limitations compared with other alternative schema languages.</p>
+ of limitations compared with other alternative schema languages
+ and validation techniques.</p>
+
+ <h2>Historical Notes</h2>
+
+ <p class="XXX">This section needs revising and may be moved to an
+ external document and simply referred to.</p>
+
+ <p>The <code>DOCTYPE</code> originates from HTML’s SGML lineage and,
+ in previous levels of HTML, was originally used to refer to a
+ Document Type Definition (DTD) — a formal declaration of the
+ elements, attributes and syntactic features that could be used
+ within the document. Those who are familiar with previous levels
+ of HTML will notice that there is no <code>PUBLIC</code>
+ identifier present in this <code>DOCTYPE</code>, which were used
+ to refer to the DTD. Also, note that the <code>about:</code> URI
+ scheme in the <code>SYSTEM</code> identifier of the latter
+ <code>DOCTYPE</code> is used specifically because it cannot be
+ resolved to any specific DTD.</p>
+
+ <p>As HTML5 is no longer formally based upon SGML, the
+ <code>DOCTYPE</code> no longer serves this purpose, and thus no
+ longer needs to refer to a DTD. However, due to legacy
+ constraints, it has gained another very important purpose:
+ triggering no-quirks mode in browsers.</p>
+
+ <p>HTML 5 defines three modes: <strong>quirks mode</strong>,
+ <strong>limited quirks mode</strong> and <strong>no quirks mode</strong>,
+ of which only the latter is considered conforming to use. The reason for
+ this is due to backwards compatibility. The important thing to understand
+ is that there are some differences in the way documents are visually
+ rendered in each of the modes; and to ensure the most standards compliant
+ rendering, it is important to ensure no-quirks mode is used.</p>
+
</section>
<section>
@@ -936,8 +954,8 @@
<p>It is considered good practice to specify the primary language of the
document on this element using the <code>lang</code> attribute.</p>
- <div class="example">
- <p>Example:</p>
+ <div class="html example">
+ <p>HTML Example:</p>
<pre><code><!DOCTYPE html>
<mark><html lang="en"></mark>
<head>
Received on Saturday, 7 March 2009 06:22:46 UTC