update html5-diff to take into account the latest edits to html5; I need someone to carefully check this; really

update html5-diff to take into account the latest edits to html5; I need
someone to carefully check this; really

HTML5
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#ref-html5
HTML 5 differences from HTML 4
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#html5-diff
2.2 The DOCTYPE
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#doctype
4.2 Extensions to HTMLElement
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#htmlelement-extensions
References
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#references
5.2 Changes since 10 June 2008
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#changes-2008-06-10
Status of this Document
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#sotd
4.1 Extensions to HTMLDocument
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#htmldocument-extensions
3.2 New Attributes
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#new-attributes
1.2 Backwards Compatible
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#backwards-compatible
3.1 New Elements
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#new-elements
Table of Contents
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#toc
2.1 Character Encoding
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#character-encoding
5.1 Changes since 12 February 2009
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#changes-2009-02-12
Acknowledgments
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#acknowledgments
1.1 Open Issues
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#open-issues
4 APIs
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#apis
W3C Working Draft 15 April 2009
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#w3c-doctype
5.3 Changes from 22 January 2008 to 10 June 2008
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#changes-2008-01-22
2.4 Miscellaneous
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#syntax-misc
2.3 MathML and SVG
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#mathml-svg
1.3 Development Model
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#development-model
2 Syntax
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#syntax
3.4 Absent Elements
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#absent-elements
5 HTML 5 Changelogs
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#changelog
3.5 Absent Attributes
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#absent-attributes
1.4 Impact on Web Architecture
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#webarch
1 Introduction
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#introduction
PSL
http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.62.html#ref-psl

http://people.w3.org/mike/diffs/html5/html4-differences/Overview.diff.html
http://dev.w3.org/cvsweb/html5/html4-differences/Overview.html?r1=1.61&r2=1.62&f=h

===================================================================
RCS file: /sources/public/html5/html4-differences/Overview.html,v
retrieving revision 1.61
retrieving revision 1.62
diff -u -d -r1.61 -r1.62
--- Overview.html 11 Feb 2009 13:11:20 -0000 1.61
+++ Overview.html 15 Apr 2009 17:01:56 -0000 1.62
@@ -20,14 +20,13 @@
 
    <h1 id=html5-diff>HTML&nbsp;5 differences from HTML&nbsp;4</h1>
 
-   <h2 class="no-num no-toc" id=w3c-doctype>W3C Working Draft 12 February
-    2009</h2>
+   <h2 class="no-num no-toc" id=w3c-doctype>W3C Working Draft 15 April 2009</h2>
 
    <dl>
     <dt>This Version:
 
     <dd><a
-     href="http://www.w3.org/TR/2009/WD-html5-diff-20090212/">http://www.w3.org/TR/2009/WD-html5-diff-20090212/</a>
+     href="http://www.w3.org/TR/2009/WD-html5-diff-20090415/">http://www.w3.org/TR/2009/WD-html5-diff-20090415/</a>
 
     <dt>Latest Version:
 
@@ -91,7 +90,7 @@
    can be found in the <a href="http://www.w3.org/TR/">W3C technical reports
    index</a> at http://www.w3.org/TR/.</em>
 
-  <p>This is the 12 February 2009 W3C Working Draft produced by the <a
+  <p>This is the 15 April 2009 W3C Working Draft produced by the <a
    href="http://www.w3.org/html/wg/">HTML Working Group</a>, part of the <a
    href="http://www.w3.org/MarkUp/Activity">HTML Activity</a>. The Working
    Group intends to publish this document as a <a
@@ -148,7 +147,10 @@
      <li><a href="#doctype"><span class=secno>2.2 </span>The <code
       title="">DOCTYPE</code></a>
 
-     <li><a href="#syntax-misc"><span class=secno>2.3
+     <li><a href="#mathml-svg"><span class=secno>2.3 </span>MathML and
+      SVG</a>
+
+     <li><a href="#syntax-misc"><span class=secno>2.4
       </span>Miscellaneous</a>
     </ul>
 
@@ -182,10 +184,13 @@
    <li><a href="#changelog"><span class=secno>5 </span>HTML&nbsp;5
     Changelogs</a>
     <ul class=toc>
-     <li><a href="#changes-2008-06-10"><span class=secno>5.1 </span>Changes
+     <li><a href="#changes-2009-02-12"><span class=secno>5.1 </span>Changes
+      since 12 February 2009</a>
+
+     <li><a href="#changes-2008-06-10"><span class=secno>5.2 </span>Changes
       since 10 June 2008</a>
 
-     <li><a href="#changes-2008-01-22"><span class=secno>5.2 </span>Changes
+     <li><a href="#changes-2008-01-22"><span class=secno>5.3 </span>Changes
       from 22 January 2008 to 10 June 2008</a>
     </ul>
 
@@ -236,8 +241,8 @@
   <p><strong>HTML&nbsp;5 is still a draft.</strong> The contents of
    HTML&nbsp;5, as well as the contents of this document which depend on
    HTML&nbsp;5, are still being discussed on the HTML Working Group and
-   WHATWG mailing lists. Some of the open issues include (this list is
-   <em>not</em> exhaustive):
+   WHATWG mailing lists. The open issues include (this list is not
+   exhaustive):
 
   <ul>
    <li>De facto semantic definitions for some formerly presentational
@@ -258,14 +263,14 @@
    presentational elements that are better dealt with using CSS.
 
   <p>User agents, however, will always have to support these older elements
-   and this is why the specification clearly separates requirements for
-   authors and user agents. This means that authors can not use the
-   <code>isindex</code> or <code>plaintext</code> element, but user agents
-   are required to support them in a way that is compatible with how these
-   elements need to behave for compatibility with deployed content.
+   and attributes and this is why the specification clearly separates
+   requirements for authors and user agents. This means that authors cannot
+   use the <code>isindex</code> or the <code>plaintext</code> element, but
+   user agents are required to support them in a way that is compatible with
+   how these elements need to behave for compatibility with deployed content.
 
   <p>Since HTML&nbsp;5 has separate conformance requirements for authors and
-   user agents there is no longer a need for marking things "deprecated".
+   user agents there is no longer a need for marking features "deprecated".
 
   <h3 id=development-model><span class=secno>1.3 </span>Development Model</h3>
 
@@ -303,10 +308,11 @@
      attribute).
 
     <li>The focus on defining the semantics in detail (e.g. the outline
-     algorithm, replacing the vague semantics in HTML&nbsp;4).
-
-    <li>The server-sent events feature (the <code>eventsource</code>
-     element).
+     algorithm, replacing the vague semantics in HTML&nbsp;4).</li>
+    <!--
+     <li>The server-sent events feature (the <code>eventsource</code>
+     element).</li>
+     -->
 
     <li>The <code>datagrid</code> element.
 
@@ -321,9 +327,10 @@
 
     <li>The content-type sniffing and character encoding sniffing.
 
-    <li>The very explicit definition of a parser.
-
-    <li>The two structured storage features.
+    <li>The very explicit definition of a parser.</li>
+    <!--
+     <li>The two structured storage features.</li>
+     -->
 
     <li>The <code>contentEditable</code> feature and the
      <code>UndoManager</code> feature.
@@ -429,7 +436,24 @@
    documents written using the HTML syntax. Browsers already do this for
    <code>&lt;!DOCTYPE html></code>.
 
-  <h3 id=syntax-misc><span class=secno>2.3 </span>Miscellaneous</h3>
+  <h3 id=mathml-svg><span class=secno>2.3 </span>MathML and SVG</h3>
+
+  <p>The HTML syntax of HTML&nbsp;5 allows for MathML and SVG elements to be
+   used inside a document. E.g. a very simple document using some of the
+   minimal syntax features could look like:
+
+  <pre><code>&lt;!doctype html>
+&lt;title>SVG in text/html&lt;/title>
+&lt;p>
+ A green circle:
+ &lt;svg> &lt;circle r="50" cx="50" cy="50" fill="green"/> &lt;/svg>
+&lt;/p></code></pre>
+
+  <p>More complex combinations are also possible. E.g. with the SVG
+   <code>foreignObject</code> element you could nest MathML, HTML, or both
+   inside an SVG fragment that is itself inside HTML.
+
+  <h3 id=syntax-misc><span class=secno>2.4 </span>Miscellaneous</h3>
 
   <p>There are a few other syntax changes worthy of mentioning:
 
@@ -454,8 +478,9 @@
   <ul>
    <li>
     <p><code>section</code> represents a generic document or application
-     section. It can be used together with <code>h1</code>-<code>h6</code> to
-     indicate the document structure.
+     section. It can be used together with the <code>h1</code>,
+     <code>h2</code>, <code>h3</code>, <code>h4</code>, <code>h5</code>, and
+     <code>h6</code> elements to indicate the document structure.
 
    <li>
     <p><code>article</code> represents an independent piece of content of a
@@ -533,7 +558,7 @@
 
    <li>
     <p><code>canvas</code> is used for rendering dynamic bitmap graphics on
-     the fly, such as graphs, games, et cetera.
+     the fly, such as graphs or games.
 
    <li>
     <p><code>command</code> represents a command the user can invoke.
@@ -559,8 +584,13 @@
 &lt;/datalist></code></pre>
 
    <li>
-    <p><code>eventsource</code> is used to set up a persistent connection
-     with a server of which messages (events) can be received.
+    <p><code>keygen</code> representa control for key pair generation.
+   </li>
+   <!--
+      <li><p><code>eventsource</code> is used to set up a
+      persistent connection with a server of which messages (events) can be
+      received.</p></li>
+      -->
 
    <li>
     <p><code>bb</code> represents a user agent command that the user can
@@ -606,7 +636,7 @@
 
   <p>The idea of these new types is that the user agent can provide the user
    interface, such as a calendar date picker or integration with the user's
-   address book and submit a defined format to the server. It gives the user
+   address book, and submit a defined format to the server. It gives the user
    a better experience as his input is checked before sending it to the
    server meaning there is less time to wait for feedback.
 
@@ -626,7 +656,7 @@
      called <code>ping</code> that specifies a space separated list of URIs
      which have to be pinged when the hyperlink is followed. Currently user
      tracking is mostly done through redirects. This attribute allows the
-     user agent to inform users which URIs are going to be pinged as well as
+     user agent to inform users which URLs are going to be pinged as well as
      giving privacy-conscious users a way to turn it off.
 
    <li>
@@ -688,10 +718,17 @@
      <code>datalist</code> and <code>select</code> element.
 
    <li>
-    <p>The <code>input</code>, <code>button</code> and <code>form</code>
-     elements also have a <code>novalidate</code> attribute can be used to
-     disable form validation submission (i.e. the form can always be
-     submitted).
+    <p>The <code>form</code> element has a <code>novalidate</code> attribute
+     that can be used to disable form validation submission (i.e. the form
+     can always be submitted).
+
+   <li>
+    <p>The <code>input</code> and <code>button</code> elements have
+     <code>formaction</code>, <code>formenctype</code>,
+     <code>formmethod</code>, <code>formnovalidate</code>, and
+     <code>formtarget</code> as new attributes. They are equivalent to the
+     attributes not prefixed with <code>form</code> on the <code>form</code>
+     element and override those.</p>
 
    <li>
     <p>The <code>menu</code> element has two new attributes:
@@ -746,17 +783,20 @@
    <li>The <code>contextmenu</code> attribute can be used to point to a
     context menu provided by the author.
 
+   <li>The <code>data-<var>*</var></code> collection of author-defined
+    attributes. Authors can define any attribute they want as long as they
+    prefix it with <code>data-</code> to avoid clashes with future versions
+    of HTML. The only requirement on these attributes is that they are not
+    used for user agent extensions.
+
    <li>The <code>draggable</code> attribute can be used together with the new
     drag &amp; drop API.
 
    <li>The <code>hidden</code> attribute indicates that an element is not
     yet, or is no longer, relevant.
 
-   <li>The <code>data-<var>*</var></code> collection of author-defined
-    attributes. Authors can define any attribute they want as long as they
-    prefix it with <code>data-</code> to avoid clashes with future versions
-    of HTML. The only requirement on these attributes is that they are not
-    used for user agent extensions.
+   <li>The <code>spellcheck</code> attribute allows for hinting whether
+    content can be checked for spelling or not.
   </ul>
 
   <p>HTML&nbsp;5 also makes all event handler attributes from HTML&nbsp;4
@@ -821,12 +861,12 @@
   <h3 id=absent-elements><span class=secno>3.4 </span>Absent Elements</h3>
 
   <p>The elements in this section are not to be used by authors. User agents
-   will still have to support them and HTML&nbsp;5 will get a rendering
-   section in due course that says exactly how. (The <code>isindex</code>
-   element for instance is already supported by the parser.)
+   will still have to support them and various sections in HTML&nbsp;5 define
+   how. E.g. the obsolete <code>isindex</code> element is handled by the
+   parser section.
 
   <p>The following elements are not in HTML&nbsp;5 because their effect is
-   purely presentational and therefore better handled by CSS:
+   purely presentational and whose function is better handled by CSS:
 
   <ul>
    <li><code>basefont</code>
@@ -858,10 +898,11 @@
   </ul>
 
   <p>The following elements are not included because they have not been used
-   often, created confusion or can be handled by other elements:
+   often, created confusion, or their function can be handled by other
+   elements:
 
   <ul>
-   <li><code>acronym</code> is not included because it has created lots of
+   <li><code>acronym</code> is not included because it has created a lot of
     confusion. Authors are to use <code>abbr</code> for abbreviations.
 
    <li><code>applet</code> has been obsoleted in favor of
@@ -927,7 +968,7 @@
   </ul>
 
   <p>In addition, HTML&nbsp;5 has none of the presentational attributes that
-   were in HTML&nbsp;4 as they are better handled by CSS:
+   were in HTML&nbsp;4 as their functions are better handled by CSS:
 
   <ul>
    <li><code>align</code> attribute on <code>caption</code>,
@@ -1009,9 +1050,11 @@
     element.
 
    <li>API for playing of video and audio which can be used with the new
-    <code>video</code> and <code>audio</code> elements.
-
-   <li>Persistent storage. Both key / value and a SQL database are supported.
+    <code>video</code> and <code>audio</code> elements.</li>
+   <!--
+      <li>Persistent storage. Both key / value and a SQL database are
+      supported.</li>
+      -->
 
    <li>An API that enables offline Web applications.
 
@@ -1022,18 +1065,20 @@
     <code>contenteditable</code> attribute.
 
    <li>Drag &amp; drop API in combination with a <code>draggable</code>
-    attribute.
-
-   <li>Web Socket API.
+    attribute.</li>
+   <!--
+      <li>Web Socket API.</li>
+      -->
 
    <li>API that exposes the history and allows pages to add to it to prevent
     breaking the back button. (This API has the necessary security
     restrictions in place.)
 
-   <li>Cross-document messaging.
-
-   <li>Server-sent events in combination with the new
-    <code>eventsource</code> element.
+   <li>Cross-document messaging.</li>
+   <!--
+      <li>Server-sent events in combination with the new
+      <code>eventsource</code> element.</li>
+      -->
   </ul>
 
   <h3 id=htmldocument-extensions><span class=secno>4.1 </span>Extensions to
@@ -1048,9 +1093,9 @@
   <ul>
    <li>
     <p><code>getElementsByClassName()</code> to select elements by their
-     class name. The way this method is defined it will allow it to work for
-     any content with <code>class</code> attributes and a
-     <code>Document</code> object such as SVG and MathML.
+     class name. The way this method is defined will allow it to work for any
+     content with <code>class</code> attributes and a <code>Document</code>
+     object such as SVG and MathML.
 
    <li>
     <p><code>innerHTML</code> as an easy way to parse and serialize an HTML
@@ -1088,9 +1133,9 @@
 
    <li>
     <p><code>classList</code> is a convenient accessor for
-     <code>className</code>. The object it returns exposes methods, such as
+     <code>className</code>. The object it returns exposes methods,
      <code>has()</code>, <code>add()</code>, <code>remove()</code> and
-     <code>toggle()</code> for manipulating the element's classes. The
+     <code>toggle()</code>, for manipulating the element's classes. The
      <code>a</code>, <code>area</code> and <code>link</code> elements have a
      similar attribute called <code>relList</code> that provides the same
      functionality for the <code>rel</code> attribute.
@@ -1115,7 +1160,84 @@
   <p>The changes in the changelogs are in rough chronological order to ease
    editing this document.
 
-  <h3 id=changes-2008-06-10><span class=secno>5.1 </span>Changes since 10
+  <h3 id=changes-2009-02-12><span class=secno>5.1 </span>Changes since 12
+   February 2009</h3>
+
+  <ul>
+   <li>A new global attribute called <code>spellcheck</code> has been added.
+
+   <li>Defined that <code>this</code> in the global object returns a
+    <code>WindowProxy</code> object rather than the <code>Window</code>
+    object.
+
+   <li>The <code>value</code> DOM attribute for <code>input</code> elements
+    in the File Upload state is now defined.
+
+   <li>Definition of <code>designMode</code> was changed to be more in line
+    with legacy implementations.
+
+   <li>The <code>drawImage()</code> method of the 2D drawing API can now take
+    a <code>video</code> element as well.
+
+   <li>The way media elements load resources has been clarified.
+
+   <li><code>document.domain</code> is now IPv6-compatible.
+
+   <li>The <code>video</code> element gained an <code>autobuffer</code>
+    boolean attribute that serves as a hint.
+
+   <li>You are now allowed to specify the <code>meta</code> element with a
+    <code>charset</code> attribute in XML documents if the value of that
+    attribute matches the encoding of the document. (Note that it does not
+    specify the value, it is just a talisman.)
+
+   <li>The <code>bufferingRate</code> and <code>bufferingThrottled</code>
+    members of media elements have been removed.
+
+   <li>The media element resource selection algorithm is now asynchronous.
+
+   <li>The <code>postMessage()</code> API now takes an array of
+    <code>MessagePort</code> objects rather than just one.
+
+   <li>The second argument of the <code>add()</code> method on the
+    <code>select</code> element and the <code>options</code> member of the
+    <code>select</code> element is now optional.
+
+   <li>The <code>action</code>, <code>enctype</code>, <code>method</code>,
+    <code>novalidate</code>, and <code>target</code> attributes on
+    <code>input</code> and <code>button</code> elements have been renamed to
+    <code>formaction</code>, <code>formenctype</code>,
+    <code>formmethod</code>, <code>formnovalidate</code>, and
+    <code>formtarget</code>.
+
+   <li>A "storage mutex" concept has been added to deal with separate pages
+    trying to change the <code>document.cookie</code> and
+    <code>localStorage</code> object at the same time. The
+    <code>Navigator</code> gained a <code>getStorageUpdates()</code> method
+    to allow it to be explicitly released.
+
+   <li>A syntax for SVG similar to MathML is now defined so that SVG can be
+    included in <code>text/html</code> resources.
+
+   <li>The <code>placeholder</code> attribute has been added to the
+    <code>textarea</code> element.
+
+   <li>Added a <code>keygen</code> element for key pair generation.
+  </ul>
+
+  <p>In addition, several parts of HTML&nbsp;5 have been taken out and will
+   be further developed by the Web Applications Working Group as standalone
+   specifications:
+
+  <ul>
+   <li>Web Sockets
+
+   <li>Server-Sent Events
+
+   <li>Web Storage (the persistent storage and database storage features)
+  </ul>
+
+  <h3 id=changes-2008-06-10><span class=secno>5.2 </span>Changes since 10
    June 2008</h3>
 
   <ul>
@@ -1410,7 +1532,7 @@
     attribute.
   </ul>
 
-  <h3 id=changes-2008-01-22><span class=secno>5.2 </span>Changes from 22
+  <h3 id=changes-2008-01-22><span class=secno>5.3 </span>Changes from 22
    January 2008 to 10 June 2008</h3>
 
   <ul>
@@ -1510,9 +1632,9 @@
    McCathieNevile, Dan Connolly, David H&aring;s&auml;ther, Frank Ellermann,
    Henri Sivonen, James Graham, J&uuml;rgen Jeka, Maciej Stachowiak, Martijn
    Wargers, Martyn Haigh, Masataka Yakura, Michael Smith, Olivier Gendrin,
-   Philip Taylor and Simon Pieters for their contributions to this document
-   as well as to all the people who have contributed to HTML&nbsp;5 over the
-   years for improving the Web!
+   &Oslash;istein E. Andersen, Philip Taylor and Simon Pieters for their
+   contributions to this document as well as to all the people who have
+   contributed to HTML&nbsp;5 over the years for improving the Web!
 
   <h2 class=no-num id=references>References</h2>
 
@@ -1549,7 +1671,7 @@
     5</a></cite> (editor's draft), I. Hickson, editor. WHATWG, 2009.
 
    <dd><cite><a
-    href="http://www.w3.org/html/wg/html5/">HTML&nbsp;5</a></cite> (editor's
+    href="http://www.w3.org/html/wg/html5/">HTML&nbsp;5</a></cite> (editors'
     draft), I. Hickson, D. Hyatt, editors. W3C, 2009.
 
    <dt>[<dfn id=ref-psl>PSL</dfn>]

Index: Overview.src.html
===================================================================
RCS file: /sources/public/html5/html4-differences/Overview.src.html,v
retrieving revision 1.40
retrieving revision 1.41
diff -u -d -r1.40 -r1.41
--- Overview.src.html 11 Feb 2009 13:11:20 -0000 1.40
+++ Overview.src.html 15 Apr 2009 17:01:56 -0000 1.41
@@ -150,8 +150,8 @@
     <p><strong>HTML&nbsp;5 is still a draft.</strong> The contents of
     HTML&nbsp;5, as well as the contents of this document which depend on
     HTML&nbsp;5, are still being discussed on the HTML Working Group
-    and WHATWG mailing lists. Some of the open issues include (this list is
-    <em>not</em> exhaustive):</p>
+    and WHATWG mailing lists. The open issues include (this list is not
+    exhaustive):</p>
 
     <ul>
       <li>De facto semantic definitions for some formerly presentational
@@ -172,15 +172,15 @@
     CSS.</p>
 
     <p>User agents, however, will always have to support these older
-    elements and this is why the specification clearly separates
-    requirements for authors and user agents. This means that authors can
-    not use the <code>isindex</code> or <code>plaintext</code> element, but
-    user agents are required to support them in a way that is compatible
-    with how these elements need to behave for compatibility with deployed
-    content.</p>
+    elements and attributes and this is why the specification clearly
+    separates requirements for authors and user agents. This means that
+    authors cannot use the <code>isindex</code> or the
+    <code>plaintext</code> element, but user agents are required to support
+    them in a way that is compatible with how these elements need to behave
+    for compatibility with deployed content.</p>
 
     <p>Since HTML&nbsp;5 has separate conformance requirements for authors
-    and user agents there is no longer a need for marking things
+    and user agents there is no longer a need for marking features
     "deprecated".</p>
 
 
@@ -225,8 +225,10 @@
      <li>The focus on defining the semantics in detail (e.g. the outline
      algorithm, replacing the vague semantics in HTML&nbsp;4).</li>
 
+     <!--
      <li>The server-sent events feature (the <code>eventsource</code>
      element).</li>
+     -->
 
      <li>The <code>datagrid</code> element.</li>
 
@@ -243,7 +245,9 @@
 
      <li>The very explicit definition of a parser.</li>
 
+     <!--
      <li>The two structured storage features.</li>
+     -->
 
      <li>The <code>contentEditable</code> feature and the
      <code>UndoManager</code> feature.</li>
@@ -351,6 +355,24 @@
     case and the <code title="">DOCTYPE</code> is only needed to enable
     standards mode for documents written using the HTML syntax. Browsers
     already do this for <code>&lt;!DOCTYPE html></code>.</p>
+    
+    
+    <h3 id="mathml-svg">MathML and SVG</h3>
+    
+    <p>The HTML syntax of HTML&nbsp;5 allows for MathML and SVG elements to
+    be used inside a document. E.g. a very simple document using some of the
+    minimal syntax features could look like:</p>
+    
+    <pre><code>&lt;!doctype html>
+&lt;title>SVG in text/html&lt;/title>
+&lt;p>
+ A green circle:
+ &lt;svg> &lt;circle r="50" cx="50" cy="50" fill="green"/> &lt;/svg>
+&lt;/p></code></pre>
+
+    <p>More complex combinations are also possible. E.g. with the SVG
+    <code>foreignObject</code> element you could nest MathML, HTML, or both
+    inside an SVG fragment that is itself inside HTML.</p>
 
 
     <h3 id="syntax-misc">Miscellaneous</h3>
@@ -380,8 +402,9 @@
     
     <ul>
       <li><p><code>section</code> represents a generic document or
-      application section. It can be used together with
-      <code>h1</code>-<code>h6</code> to indicate the document
+      application section. It can be used together with the
+      <code>h1</code>, <code>h2</code>, <code>h3</code>, <code>h4</code>,
+      <code>h5</code>, and <code>h6</code> elements to indicate the document
       structure.</p></li>
 
       <li><p><code>article</code> represents an independent piece of content
@@ -454,7 +477,7 @@
       <li><p><code>time</code> represents a date and/or time.</p></li>
       
       <li><p><code>canvas</code> is used for rendering dynamic bitmap graphics
-      on the fly, such as graphs, games, et cetera.</p></li>
+      on the fly, such as graphs or games.</p></li>
       
       <li><p><code>command</code> represents a command the user can
       invoke.</p></li>
@@ -477,10 +500,15 @@
  &lt;option value="Firefox">
 &lt;/datalist></code></pre>
       </li>
+      
+      <li><p><code>keygen</code> representa control for key pair
+      generation.</p></li>
 
+      <!--
       <li><p><code>eventsource</code> is used to set up a
       persistent connection with a server of which messages (events) can be
       received.</p></li>
+      -->
 
       <li><p><code>bb</code> represents a user agent command that the user
       can invoke.</p></li>
@@ -523,7 +551,7 @@
 
     <p>The idea of these new types is that the user agent can provide the user
     interface, such as a calendar date picker or integration with the user's
-    address book and submit a defined format to the server. It gives the user a
+    address book, and submit a defined format to the server. It gives the user a
     better experience as his input is checked before sending it to the server
     meaning there is less time to wait for feedback.</p>
 
@@ -542,7 +570,7 @@
       attribute called <code>ping</code> that specifies a space separated list
       of URIs which have to be pinged when the hyperlink is followed. Currently
       user tracking is mostly done through redirects. This attribute allows the
-      user agent to inform users which URIs are going to be pinged as well as
+      user agent to inform users which URLs are going to be pinged as well as
       giving privacy-conscious users a way to turn it off.
 
       <li><p>The <code>area</code> element, for consistency, now has the
@@ -596,10 +624,16 @@
       before it also has a new <code>list</code> attribute which can be used
       together with the <code>datalist</code> and <code>select</code> element.
       
-      <li><p>The <code>input</code>, <code>button</code> and
-      <code>form</code> elements also have a <code>novalidate</code>
-      attribute can be used to disable form validation submission (i.e. the
-      form can always be submitted).
+      <li><p>The <code>form</code> element has a <code>novalidate</code>
+      attribute that can be used to disable form validation submission (i.e.
+      the form can always be submitted).
+      
+      <li><p>The <code>input</code> and <code>button</code> elements have
+      <code>formaction</code>, <code>formenctype</code>,
+      <code>formmethod</code>, <code>formnovalidate</code>, and
+      <code>formtarget</code> as new attributes. They are equivalent to the
+      attributes not prefixed with <code>form</code> on the
+      <code>form</code> element and override those.</p>
 
       <li><p>The <code>menu</code> element has two new attributes:
       <code>type</code> and <code>label</code>. They
@@ -647,17 +681,21 @@
       <li>The <code>contextmenu</code> attribute can be used to point to a
       context menu provided by the author.
 
+      <li>The <code>data-<var>*</var></code> collection of author-defined
+      attributes. Authors can define any attribute they want as long as they
+      prefix it with <code>data-</code> to avoid clashes with future
+      versions of HTML. The only requirement on these attributes is that
+      they are not used for user agent extensions.
+
       <li>The <code>draggable</code> attribute can be used together with the new
       drag &amp; drop API.
 
       <li>The <code>hidden</code> attribute indicates that an element is not
       yet, or is no longer, relevant.
+      
+      <li>The <code>spellcheck</code> attribute allows for hinting whether
+      content can be checked for spelling or not.
 
-      <li>The <code>data-<var>*</var></code> collection of author-defined
-      attributes. Authors can define any attribute they want as long as they
-      prefix it with <code>data-</code> to avoid clashes with future
-      versions of HTML. The only requirement on these attributes is that
-      they are not used for user agent extensions.
     </ul>
 
     <p>HTML&nbsp;5 also makes all event handler attributes from HTML&nbsp;4 that
@@ -714,13 +752,13 @@
 
     <h3 id="absent-elements">Absent Elements</h3>
 
-    <p>The elements in this section are not to be used by authors. User agents
-    will still have to support them and HTML&nbsp;5 will get a rendering section
-    in due course that says exactly how. (The <code>isindex</code> element for
-    instance is already supported by the parser.)</p>
+    <p>The elements in this section are not to be used by authors. User
+    agents will still have to support them and various sections in
+    HTML&nbsp;5 define how. E.g. the obsolete <code>isindex</code> element
+    is handled by the parser section.</p>
 
     <p>The following elements are not in HTML&nbsp;5 because their effect is
-    purely presentational and therefore better handled by CSS:</p>
+    purely presentational and whose function is better handled by CSS:</p>
 
     <ul>
       <li><code>basefont</code>
@@ -752,12 +790,14 @@
       <li><code>noframes</code>
     </ul>
 
-    <p>The following elements are not included because they have not been used
-    often, created confusion or can be handled by other elements:</p>
+    <p>The following elements are not included because they have not been
+    used often, created confusion, or their function can be handled by other
+    elements:</p>
 
     <ul>
-      <li><code>acronym</code> is not included because it has created lots of
-      confusion. Authors are to use <code>abbr</code> for abbreviations.</li>
+      <li><code>acronym</code> is not included because it has created a lot
+      of confusion. Authors are to use <code>abbr</code> for
+      abbreviations.</li>
       
       <li><code>applet</code> has been obsoleted in favor of
       <code>object</code>.
@@ -823,8 +863,9 @@
       <li><code>scope</code> attribute on <code>td</code>.
     </ul>
     
-    <p>In addition, HTML&nbsp;5 has none of the presentational attributes that
-    were in HTML&nbsp;4 as they are better handled by CSS:</p>
+    <p>In addition, HTML&nbsp;5 has none of the presentational attributes
+    that were in HTML&nbsp;4 as their functions are better handled by
+    CSS:</p>
     
     <ul>
       <li><code>align</code> attribute on <code>caption</code>,
@@ -911,8 +952,10 @@
       <li>API for playing of video and audio which can be used with the new
       <code>video</code> and <code>audio</code> elements.</li>
 
+      <!--
       <li>Persistent storage. Both key / value and a SQL database are
       supported.</li>
+      -->
 
       <li>An API that enables offline Web applications.</li>
 
@@ -925,7 +968,9 @@
       <li>Drag &amp; drop API in combination with a <code>draggable</code>
       attribute.</li>
 
+      <!--
       <li>Web Socket API.</li>
+      -->
 
       <li>API that exposes the history and allows pages to add to it to prevent
       breaking the back button. (This API has the necessary security
@@ -933,8 +978,10 @@
 
       <li>Cross-document messaging.</li>
 
+      <!--
       <li>Server-sent events in combination with the new
       <code>eventsource</code> element.</li>
+      -->
     </ul>
     
     
@@ -949,7 +996,7 @@
     
     <ul>
       <li><p><code>getElementsByClassName()</code> to select elements by their
-      class name. The way this method is defined it will allow it to work for
+      class name. The way this method is defined will allow it to work for
       any content with <code>class</code> attributes and a <code>Document</code>
       object such as SVG and MathML.
       
@@ -982,9 +1029,9 @@
       defined to work in XML context (when it is used in an XML document).
       
       <li><p><code>classList</code> is a convenient accessor for
-      <code>className</code>. The object it returns exposes methods, such as
+      <code>className</code>. The object it returns exposes methods,
       <code>has()</code>, <code>add()</code>, <code>remove()</code> and
-      <code>toggle()</code> for manipulating the element's classes. The
+      <code>toggle()</code>, for manipulating the element's classes. The
       <code>a</code>, <code>area</code> and <code>link</code> elements have a
       similar attribute called <code>relList</code> that provides the same
       functionality for the <code>rel</code> attribute.
@@ -1009,6 +1056,66 @@
     <p>The changes in the changelogs are in rough chronological order to
     ease editing this document.</p>
 
+    <h3 id="changes-2009-02-12">Changes since 12 February 2009</h3>
+    
+    <ul>
+     <li>A new global attribute called <code>spellcheck</code> has been
+     added.</li>
+     <li>Defined that <code>this</code> in the global object returns a
+     <code>WindowProxy</code> object rather than the <code>Window</code>
+     object.</li>
+     <li>The <code>value</code> DOM attribute for <code>input</code>
+     elements in the File Upload state is now defined.</li>
+     <li>Definition of <code>designMode</code> was changed to be more in
+     line with legacy implementations.</li>
+     <li>The <code>drawImage()</code> method of the 2D drawing API can now
+     take a <code>video</code> element as well.</li>
+     <li>The way media elements load resources has been clarified.</li>
+     <li><code>document.domain</code> is now IPv6-compatible.</li>
+     <li>The <code>video</code> element gained an <code>autobuffer</code>
+     boolean attribute that serves as a hint.</li>
+     <li>You are now allowed to specify the <code>meta</code> element with a
+     <code>charset</code> attribute in XML documents if the value of that
+     attribute matches the encoding of the document. (Note that it does not
+     specify the value, it is just a talisman.)</li>
+     <li>The <code>bufferingRate</code> and <code>bufferingThrottled</code>
+     members of media elements have been removed.</li>
+     <li>The media element resource selection algorithm is now
+     asynchronous.</li>
+     <li>The <code>postMessage()</code> API now takes an array of
+     <code>MessagePort</code> objects rather than just one.</li>
+     <li>The second argument of the <code>add()</code> method on the
+     <code>select</code> element and the <code>options</code> member of the
+     <code>select</code> element is now optional.</li>
+     <li>The <code>action</code>, <code>enctype</code>, <code>method</code>,
+     <code>novalidate</code>, and <code>target</code> attributes on
+     <code>input</code> and <code>button</code> elements have been
+     renamed to <code>formaction</code>, <code>formenctype</code>,
+     <code>formmethod</code>, <code>formnovalidate</code>, and
+     <code>formtarget</code>.</li>
+     <li>A "storage mutex" concept has been added to deal with separate
+     pages trying to change the <code>document.cookie</code> and
+     <code>localStorage</code> object at the same time. The
+     <code>Navigator</code> gained a <code>getStorageUpdates()</code> method
+     to allow it to be explicitly released.</li>
+     <li>A syntax for SVG similar to MathML is now defined so that SVG can
+     be included in <code>text/html</code> resources.</li>
+     <li>The <code>placeholder</code> attribute has been added to
+     the <code>textarea</code> element.</li>
+     <li>Added a <code>keygen</code> element for key pair generation.</li>
+    </ul>
+    
+    <p>In addition, several parts of HTML&nbsp;5 have been taken out and
+    will be further developed by the Web Applications Working Group as
+    standalone specifications:</p>
+    
+    <ul>
+     <li>Web Sockets</li>
+     <li>Server-Sent Events</li>
+     <li>Web Storage (the persistent storage and database storage features)</li>
+    </ul>
+    
+    
     <h3 id="changes-2008-06-10">Changes since 10 June 2008</h3>
 
     <ul>
@@ -1311,6 +1418,7 @@
     Masataka Yakura,
     Michael Smith,
     Olivier Gendrin,
+    &Oslash;istein E. Andersen,
     Philip Taylor and
     Simon Pieters
 
@@ -1354,7 +1462,7 @@
       5</a></cite> (editor's draft), I. Hickson, editor. WHATWG, 2009.</dd>
 
       <dd><cite><a href="http://www.w3.org/html/wg/html5/">HTML&nbsp;5</a></cite>
-      (editor's draft), I. Hickson, D. Hyatt, editors. W3C, 2009.</dd>
+      (editors' draft), I. Hickson, D. Hyatt, editors. W3C, 2009.</dd>
       
       <dt>[<dfn id="ref-psl">PSL</dfn>]</dt>

Received on Wednesday, 15 April 2009 17:03:08 UTC