- From: poot <cvsmail@w3.org>
- Date: Sat, 24 Jan 2009 02:03:10 +0900 (JST)
- To: public-html-diffs@w3.org
a shitload has changed since June; this is the summary HTML5 http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.50.html#ref-html5 HTML 5 differences from HTML 4 http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.50.html#html5-diff 2 Syntax http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.50.html#syntax 4.2 Extensions to HTMLElement http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.50.html#htmlelement-extensions 3.3 Changed Elements http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.50.html#changed-elements 4.1 Extensions to HTMLDocument http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.50.html#htmldocument-extensions 3.2 New Attributes http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.50.html#new-attributes 1.2 Backwards Compatible http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.50.html#backwards-compatible 3.1 New Elements http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.50.html#new-elements Table of Contents http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.50.html#toc 1.1 Open Issues http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.50.html#open-issues 4 APIs http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.50.html#apis Editor's Draft 23 January 2009 http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.50.html#w3c-doctype 2.3 Miscellaneous http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.50.html#syntax-misc 1.3 Development Model http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.50.html#development-model 3.4 Absent Elements http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.50.html#absent-elements 3 Language http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.50.html#language 5 HTML 5 Changelogs http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.50.html#changelog 3.5 Absent Attributes http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.50.html#absent-attributes 1.4 Impact on Web Architecture http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.50.html#webarch 1 Introduction http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.50.html#introduction XHTML1 http://people.w3.org/mike/diffs/html5/html4-differences/Overview.1.50.html#ref-xhtml1 http://people.w3.org/mike/diffs/html5/html4-differences/Overview.diff.html http://dev.w3.org/cvsweb/html5/html4-differences/Overview.html?r1=1.49&r2=1.50&f=h =================================================================== RCS file: /sources/public/html5/html4-differences/Overview.html,v retrieving revision 1.49 retrieving revision 1.50 diff -u -d -r1.49 -r1.50 --- Overview.html 9 Jun 2008 18:40:42 -0000 1.49 +++ Overview.html 23 Jan 2009 17:02:30 -0000 1.50 @@ -11,7 +11,7 @@ code :link, code :visited { color:inherit } pre code { color:inherit } </style> - <link href="http://www.w3.org/StyleSheets/TR/W3C-WD" rel=stylesheet> + <link href="http://www.w3.org/StyleSheets/TR/W3C-ED" rel=stylesheet> <body> <div class=head> @@ -20,13 +20,13 @@ <h1 id=html5-diff>HTML 5 differences from HTML 4</h1> - <h2 class="no-num no-toc" id=w3c-doctype>W3C Working Draft 9 June 2008</h2> + <h2 class="no-num no-toc" id=w3c-doctype>Editor's Draft 23 January 2009</h2> <dl> <dt>This Version: <dd><a - href="http://www.w3.org/TR/2008/WD-html5-diff-20080609/">http://www.w3.org/TR/2008/WD-html5-diff-20080609/</a> + href="http://www.w3.org/TR/2009/ED-html5-diff-20090123/">http://www.w3.org/TR/2009/ED-html5-diff-20090123/</a> <dt>Latest Version: @@ -52,12 +52,12 @@ <p class=copyright><a href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> - © 2008 <a href="http://www.w3.org/"><acronym title="World Wide Web - Consortium">W3C</acronym></a><sup>®</sup> (<a - href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute - of Technology">MIT</acronym></a>, <a - href="http://www.ercim.org/"><acronym title="European Research Consortium - for Informatics and Mathematics">ERCIM</acronym></a>, <a + © 2008 <a href="http://www.w3.org/"><abbr title="World Wide Web + Consortium">W3C</abbr></a><sup>®</sup> (<a + href="http://www.csail.mit.edu/"><abbr title="Massachusetts Institute of + Technology">MIT</abbr></a>, <a href="http://www.ercim.org/"><abbr + title="European Research Consortium for Informatics and + Mathematics">ERCIM</abbr></a>, <a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. W3C <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>, <a @@ -122,7 +122,7 @@ <!--begin-toc--> <ul class=toc> - <li><a href="#introduction"><span class=secno>1. </span>Introduction</a> + <li><a href="#introduction"><span class=secno>1 </span>Introduction</a> <ul class=toc> <li><a href="#open-issues"><span class=secno>1.1 </span>Open Issues</a> @@ -136,7 +136,7 @@ Architecture</a> </ul> - <li><a href="#syntax"><span class=secno>2. </span>Syntax</a> + <li><a href="#syntax"><span class=secno>2 </span>Syntax</a> <ul class=toc> <li><a href="#character-encoding"><span class=secno>2.1 </span>Character Encoding</a> @@ -148,7 +148,7 @@ </span>Miscellaneous</a> </ul> - <li><a href="#language"><span class=secno>3. </span>Language</a> + <li><a href="#language"><span class=secno>3 </span>Language</a> <ul class=toc> <li><a href="#new-elements"><span class=secno>3.1 </span>New Elements</a> @@ -166,7 +166,7 @@ Attributes</a> </ul> - <li><a href="#apis"><span class=secno>4. </span>APIs</a> + <li><a href="#apis"><span class=secno>4 </span>APIs</a> <ul class=toc> <li><a href="#htmldocument-extensions"><span class=secno>4.1 </span>Extensions to <code>HTMLDocument</code></a> @@ -175,8 +175,8 @@ </span>Extensions to <code>HTMLElement</code></a> </ul> - <li><a href="#changelog"><span class=secno>5. </span>HTML 5 - Changelog</a> + <li><a href="#changelog"><span class=secno>5 </span>HTML 5 + Changelogs</a> <li class=no-num><a href="#acknowledgments">Acknowledgments</a> @@ -184,7 +184,7 @@ </ul> <!--end-toc--> - <h2 id=introduction><span class=secno>1. </span>Introduction</h2> + <h2 id=introduction><span class=secno>1 </span>Introduction</h2> <p>HTML has been in continuous evolution since it was introduced to the Internet in the early 1990's. Some features were introduced in @@ -197,11 +197,12 @@ serve as a rough guide to many of the core features of HTML, it does not provide enough information to build implementations that interoperate with each other and, more importantly, with a critical mass of deployed - content. The same goes for XHTML1, which defines an XML serialization for - HTML 4, and DOM Level 2 HTML, which defines JavaScript APIs for both - HTML and XHTML. [<cite><a href="#ref-html4">HTML4</a></cite>] [<cite><a - href="#ref-xhtml1">XHTML1</a></cite>] [<cite><a - href="#ref-dom2html">DOM2HTML</a></cite>] + content. The same goes for XHTML 1, which defines an XML + serialization for HTML 4, and DOM Level 2 HTML, which defines + JavaScript APIs for both HTML and XHTML. HTML 5 will replace these + documents. [<cite><a href="#ref-dom2html">DOM2HTML</a></cite>] [<cite><a + href="#ref-html4">HTML4</a></cite>] [<cite><a + href="#ref-xhtml1">XHTML1</a></cite>] <p>The HTML 5 draft reflects an effort, started in 2004, to study contemporary HTML implementations and deployed content. The draft: @@ -234,8 +235,6 @@ <li>Details of accessibility and media-independence features, such as the <code>longdesc</code>, <code>alt</code> and <code>summary</code> attributes. - - <li>The repetition model. </ul> <h3 id=backwards-compatible><span class=secno>1.2 </span>Backwards @@ -252,7 +251,7 @@ 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 behaved previously. + elements need to behave for compatibility with deployed content. <p>Since HTML 5 has separate conformance requirements for authors and user agents there is no longer a need for marking things "deprecated". @@ -288,9 +287,9 @@ inline concepts). <li>The focus on accessibility as a built-in concept for new features - (such as the <code>irrelevant</code> attribute, the - <code>progress</code> element, et cetera) instead of an add-on (like the - <code>alt</code> attribute). + (such as the <code>hidden</code> attribute, the <code>progress</code> + element, et cetera) instead of an add-on (like the <code>alt</code> + attribute). <li>The focus on defining the semantics in detail (e.g. the outline algorithm, replacing the vague semantics in HTML 4). @@ -324,23 +323,26 @@ API). <li>The new sandboxing features for <code>iframe</code>. + + <li>The definition of URL.</li> + <!-- not part of the e-mail --> </ul> </div> <!-- This closes the <div> added for Michael(tm) Smith. --> - <h2 id=syntax><span class=secno>2. </span>Syntax</h2> + <h2 id=syntax><span class=secno>2 </span>Syntax</h2> <p>The HTML 5 language has a "custom" HTML syntax that is compatible - with HTML 4 and XHTML1 documents published on the Web, but is not - compatible with the more esoteric SGML features of HTML 4, such as - <code><em/content/</code>. Documents using this "custom" syntax must be - served with the <code>text/html</code> MIME type. + with HTML 4 and XHTML 1 documents published on the Web, but is + not compatible with the more esoteric SGML features of HTML 4, such + as <code><em/content/</code>. Documents using this "custom" syntax must + be served with the <code>text/html</code> media type. <p>HTML 5 also defines detailed parsing rules (including "error handling") for this syntax which are largely compatible with popular - implementations. User agents will follow these rules for resources that - have the <code>text/html</code> MIME type. Here is an example document - that conforms to the HTML syntax: + implementations. User agents must these rules for resources that have the + <code>text/html</code> media type. Here is an example document that + conforms to the HTML syntax: <pre><!doctype html> <html> @@ -428,7 +430,7 @@ a valid language identifier, just like <code>xml:lang</code> does in XML. </ul> - <h2 id=language><span class=secno>3. </span>Language</h2> + <h2 id=language><span class=secno>3 </span>Language</h2> <p>This section is split up in several subsections to more clearly illustrate the various differences there are between HTML 4 and @@ -542,11 +544,8 @@ </datalist></code></pre> <li> - <p>The <code>datatemplate</code>, <code>rule</code> and <code>nest</code> - elements provide a templating mechanism for HTML. - - <li> - <p><code>event-source</code> is used to "catch" server sent events. + <p><code>eventsource</code> is used to set up a persistent connection + with a server of which messages (events) can be received. <li> <p><code>output</code> represents some type of output, such as from a @@ -557,8 +556,8 @@ downloading or when performing a series of expensive operations. <li> - <p>The <code>ruby</code>, <code>rt</code> and <code>rb</code> elements - allow for marking up ruby annotations. + <p><code>ruby</code>, <code>rt</code> and <code>rb</code> allow for + marking up ruby annotations. </ul> <p>The <code>input</code> element's <code>type</code> attribute now has the @@ -584,6 +583,10 @@ <li><code>email</code> <li><code>url</code> + + <li><code>search</code> + + <li><code>color</code> </ul> <p>The idea of these new types is that the user agent can provide the user @@ -617,11 +620,11 @@ <li> <p>The <code>base</code> element can now have a <code>target</code> - attribute as well mainly for consistency with the <code>a</code> element - and because it was already widely supported. Also, the - <code>target</code> attribute for the <code>a</code> and - <code>area</code> elements is no longer deprecated, as it is useful in - Web applications, for example in conjunction with <code>iframe</code>. + attribute as well, mainly for consistency with the <code>a</code> + element (it is also widely supported). Also, the <code>target</code> + attribute for the <code>a</code> and <code>area</code> elements is no + longer deprecated, as it is useful in Web applications, e.g. in + conjunction with <code>iframe</code>. <li> <p>The <code>value</code> attribute for the <code>li</code> element is no @@ -630,8 +633,9 @@ <li> <p>The <code>meta</code> element has a <code>charset</code> attribute now - as this was already supported and provides a nicer way to specify the <a - href="#character-encoding">character encoding</a> for the document. + as this was already widely supported and provides a nice way to specify + the <a href="#character-encoding">character encoding</a> for the + document. <li> <p>A new <code>autofocus</code> attribute can be specified on the @@ -646,12 +650,8 @@ <p>The new <code>form</code> attribute for <code>input</code>, <code>output</code>, <code>select</code>, <code>textarea</code>, <code>button</code> and <code>fieldset</code> elements allows for - controls to be associated with more than a single form. - - <li> - <p>The <code>input</code>, <code>button</code> and <code>form</code> - elements have a new <code>replace</code> attribute which affects what - will be done with the document after a form has been submitted. + controls to be associated with a form (e.g. one they are not a + descendant of). <li> <p>The <code>form</code> and <code>select</code> elements (as well as the @@ -668,33 +668,23 @@ in order to submit the form. <li> - <p>The <code>input</code> and <code>textarea</code> elements have a new - attribute called <code>inputmode</code> which gives a hint to the user - interface as to what kind of input is expected. - - <li> <p>You can now disable an entire <code>fieldset</code> by using the <code>disabled</code> attribute on it. This was not possible before. <li> <p>The <code>input</code> element has several new attributes to specify constraints: <code>autocomplete</code>, <code>min</code>, - <code>max</code>, <code>pattern</code> and <code>step</code>. As - mentioned 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><code>input</code> and <code>button</code> also have a new - <code>template</code> attribute which can be used for repetition - templates. + <code>max</code>, <code>multiple</code>, <code>pattern</code> and + <code>step</code>. As mentioned 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>menu</code> element has three new attributes: - <code>type</code>, <code>label</code> and <code>autosubmit</code>. They - allow the element to transform into a menu as found in typical user - interfaces as well as providing for context menus in conjunction with - the global <code>contextmenu</code> attribute. + <p>The <code>menu</code> element has two new attributes: + <code>type</code> and <code>label</code>. They allow the element to + transform into a menu as found in typical user interfaces as well as + providing for context menus in conjunction with the global + <code>contextmenu</code> attribute. <li> <p>The <code>style</code> element has a new <code>scoped</code> attribute @@ -745,13 +735,9 @@ <li>The <code>draggable</code> attribute can be used together with the new drag & drop API. - <li>The <code>irrelevant</code> attribute indicates that an element is not + <li>The <code>hidden</code> attribute indicates that an element is not yet, or is no longer, relevant. - <li>The <code>ref</code>, <code>registrationmark</code> and - <code>template</code> global attributes complement the data template - feature. - <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 @@ -759,26 +745,11 @@ used for user agent extensions. </ul> - <p>The following are the attributes for the repetition model. These are - global attributes and as such may be used on all HTML elements, or on any - element in any other namespace, with the attributes being in the - <code>http://www.w3.org/1999/xhtml</code> namespace.: - - <ul> - <li><code>repeat</code> - - <li><code>repeat-start</code> - - <li><code>repeat-min</code> - - <li><code>repeat-max</code> - </ul> - <p>HTML 5 also makes all event handler attributes from HTML 4 that take the form <code>on<var>event-name</var></code> global attributes and adds several new event handler attributes for new events it defines, such as the <code>onmessage</code> attribute which can be used together - with the new <code>event-source</code> element and the cross-document + with the new <code>eventsource</code> element and the cross-document messaging API. <h3 id=changed-elements><span class=secno>3.3 </span>Changed Elements</h3> @@ -789,7 +760,8 @@ <ul> <li> <p>The <code>a</code> element without an <code>href</code> attribute now - represents a "placeholder link". + represents a "placeholder link". It can also contain flow content rather + than being restricted to phrase content. <li> <p>The <code>address</code> element is now scoped by the new concept of @@ -830,10 +802,6 @@ <li> <p>The <code>strong</code> element now represents importance rather than strong emphasis. - - <li> - <p>Quotation marks for the <code>q</code> element are now to be provided - by the author rather than the user agent. </ul> <h3 id=absent-elements><span class=secno>3.4 </span>Absent Elements</h3> @@ -922,8 +890,8 @@ <li><code>version</code> attribute on <code>html</code>. - <li><code>name</code> attribute on <code>img</code>, <code>form</code> and - <code>a</code> (use <code>id</code> instead). + <li><code>name</code> attribute on <code>img</code> and <code>a</code> + (use <code>id</code> instead). <li><code>scheme</code> attribute on <code>meta</code>. @@ -942,8 +910,6 @@ and <code>th</code>. <li><code>scope</code> attribute on <code>td</code>. - - <li><code>headers</code> attribute on <code>th</code>. </ul> <p>In addition, HTML 5 has none of the presentational attributes that @@ -1019,7 +985,7 @@ and <code>pre</code>. </ul> - <h2 id=apis><span class=secno>4. </span>APIs</h2> + <h2 id=apis><span class=secno>4 </span>APIs</h2> <p>HTML 5 introduces a number of APIs that help in creating Web applications. These can be used together with the new elements introduced @@ -1045,7 +1011,7 @@ <li>Drag & drop API in combination with a <code>draggable</code> attribute. - <li>Network API. + <li>Web Socket API. <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 @@ -1054,10 +1020,7 @@ <li>Cross-document messaging. <li>Server-sent events in combination with the new - <code>event-source</code> element. - - <li>Notification API to alert the user to new information, such as new - e-mail messages in an e-mail application. + <code>eventsource</code> element. </ul> <h3 id=htmldocument-extensions><span class=secno>4.1 </span>Extensions to @@ -1120,17 +1083,267 @@ functionality for the <code>rel</code> attribute. </ul> - <h2 id=changelog><span class=secno>5. </span>HTML 5 Changelog</h2> + <h2 id=changelog><span class=secno>5 </span>HTML 5 Changelogs</h2> - <p>Below is a rough list of changes that have been made to the HTML 5 - specification since the initial publication of the HTML 5 Working - Draft. This changelog only indicates what has been changed. For more - detailed discussion please use the <a + <p>The changelogs in this section mostly indicate what has been changed. + Rationale for changes can be found in the <a href="http://lists.w3.org/Archives/Public/public-html/"><code>public-html@w3.org</code></a> and <a href="http://lists.whatwg.org/pipermail/whatwg-whatwg.org/"><code>whatwg@whatwg.org</code></a> - mailing list archives. Changes that affect this document have been - incorperated throughout. + mailing list archives and to some extent in the <a + href="http://blog.whatwg.org/category/weekly-review">This Week in + HTML 5</a> series of blog posts. Many editorial and minor technical + changes are not included in these changelogs. If you are an implementor of + HTML 5 you are hereby strongly advised to follow the specification + more closely. + + <p>The changes in the changelogs are in rough chronological order to ease + editing this document. The changelogs are placed in reverse chronological + order. + + <p>The changes since the publication on 10 June 2008 are as follows: + + <ul> + <li>The <code>data</code> member of <code>ImageData</code> objects has + been changed from an array to a <code>CanvasPixelArray</code> object. + + <li>Shadows are now required from implementations of the + <code>canvas</code> element and its API. + + <li>Security model for <code>canvas</code> is clarified. + + <li>Various changes to the processing model of <code>canvas</code> have + been made in response to implementation and author feedback. E.g. + clarifying what happens when NaN and Infinity are passed and fixing the + definitions of <code>arc()</code> and <code>arcTo()</code>. + + <li><code>innerHTML</code> in XML was slightly changed to improve round + tripping. + + <li>The <code>toDataURL()</code> method on the <code>canvas</code> element + now supports setting a quality level when the media type argument is + <code>image/jpeg</code>. + + <li>The <code>poster</code> attribute of the <code>video</code> element + now affects its intrinsic dimensions. + + <li>The behavior of the <code>type</code> attribute of the + <code>link</code> has been clarified. + + <li>Sniffing is now allowed for <code>link</code> when the expected type + is an image. + + <li>A section on URLs is introduced dealing with how URL values are to be + interpreted and what exactly authors are required to do. Every feature of + the specification that uses URLs has been reworded to take the new URL + section into account. + + <li>It is now explicit that the <code>href</code> attribute of the + <code>base</code> element does not depend on <code>xml:base</code>. + + <li>It is now defined what the behavior should be when the base URL + changes. + + <li>URL decomposition DOM attributes are now more aligned with Internet + Explorer. + + <li>The <code>xmlns</code> attribute with the value + <code>http://www.w3.org/1999/xhtml</code> is now allowed on all HTML + elements. + + <li><code>data-<var>*</var></code> attributes and custom attributes on the + <code>embed</code> element now have to match the XML <code>Name</code> + production and cannot contain a colon. + + <li>Web Socket API is introduced for bidirectional communication with a + server. It is currently limited to text messages.</li> + <!-- XXX risk --> + + <li>The default value of <code>volume</code> on media elements is now 1.0 + rather than 0.5. + + <li><code>event-source</code> was renamed to <code>eventsource</code> + because no other HTML element uses a hyphen. + + <li>A message channel API has been introduced augmenting + <code>postMessage()</code>. + + <li>A new element named <code>bb</code> has been added. It represents a + user agent command that the user can invoke. + + <li>The <code>addCueRange()</code> method on media elements has been + modified to take an identifier which is exposed in the callbacks. + + <li>It is now defined how to mutate a DOM into an infoset. + + <li>The <code>parent</code> attribute of the <code>Window</code> object is + now defined. + + <li>The <code>embed</code> element is defined to do extension sniffing for + compatibilty with servers that deliver Flash as <code>text/plain</code>. + (This is marked as an issue in the specification to figure out if there + is a better way to make this work.)</li> + <!-- and no, the answer is not to simply break stuff --> + + <li>The <code>embed</code> can now be used without its <code>src</code> + attribute. + + <li><code>getElementsByClassName()</code> is defined to be ASCII + case-insensitive in quirks mode for consistency with CSS. + + <li>In HTML documents <code>localName</code> no longer returns the node + name in uppercase. + + <li><code>data-<var>*</var></code> attributes are defined to be always + lowercase. + + <li>The <code>opener</code> attribute of the <code>Window</code> object is + not to be present when the page was opened from a link with + <code>target="_blank"</code> and <code>rel="noreferrer"</code>. + + <li>The <code>top</code> attribute of the <code>Window</code> object is + now defined. + + <li>The <code>a</code> element now allows nested flow content, e.g. a + <code>div</code> element, but not itself. + + <li>It is now defined what the <code>header</code> element means to + document summaries and table of contents. + + <li>What it means to fetch a resource is now defined. + + <li>Patterns are now required for the <code>canvas</code> element. + + <li>The <code>autosubmit</code> attribute has been removed from the + <code>menu</code> element. + + <li>Support for <code>outerHTML</code> and + <code>insertAdjacentHTML()</code> have been added. + + <li><code>xml:lang</code> is now allowed in HTML when <code>lang</code> is + also specified and they have the same value. In XML <code>lang</code> is + allowed if <code>xml:lang</code> is also specified and they have the same + value. + + <li>The <code>frameElement</code> attribute of the <code>Window</code> + object is now defined. + + <li>An event loop and task queue is now defined detailing script execution + and events. All features have been updated to be defined in terms of this + mechanism. + + <li>If the <code>alt</code> attribute is omitted a <code>title</code> + attribute, an enclosing <code>figure</code> element with a + <code>legend</code> element descendant, or an enclosing section with an + associated must be present. + + <li>The <code>irrelevant</code> attribute has been renamed to + <code>hidden</code>. + + <li>The <code>definitionURL</code> attribute of MathML is now properly + supported. Previously it would have ended up being all lowercase during + parsing. + + <li>User agents must treat US-ASCII as Windows-1252 for compatibility + reasons. + + <li>An alternative syntax for the <code><a + href="#ref-doctype">DOCTYPE</a></code> is allowed for compatibility with + XSLT. + + <li>Web Forms 2.0 has been fully integrated into the specification. This + means that just like in HTML 4 there is a chapter on forms. + + <li>Features from Web Forms 2.0 that did not make the cut: repetition + templates, XML submission, the <code>replace</code> attribute, the + <code>inputmode</code> attribute and seeding of values through an + external resource. + + <li>Data templates have been removed as well (consisted of the + <code>datatemplate</code>, <code>rule</code> and <code>nest</code> + elements). + + <li>The media elements now support just a single <code>loop</code> + attribute. + + <li>The <code>load()</code> method on media elements has been redefined as + asynchronous. It also tries out files in turn now. + + <li>A new member called <code>canPlayType()</code> has been added to the + media elements. + + <li>The <code>totalBytes</code> and <code>bufferedBytes</code> attributes + have been removed from the media elements. + + <li>The <code>input</code> element gained a <code>placeholder</code> + attribute. + + <li>The <code>Location</code> object gained a <code>resolveURL()</code> + method. + + <li><code>object</code> elements now partake in form submission. + + <li>The <code>type</code> attribute of the <code>input</code> element + gained the values <code>color</code> and <code>search</code>. + + <li>The <code>input</code> element gained a <code>multiple</code> + attribute which allows for either multiple e-mails or multiple files to + be uploaded depending on the value of the <code>type</code> attribute. + + <li>The <code>form</code> and <code>input</code> elements now have a + <code>novalidate</code> attribute to indicate that the form fields should + not be required to have valid values upon submission. + + <li>The <code>q</code> element has changed again. Punctation is to be + provided by the user agent again. + + <li>Various changes were made to the HTML parser algorithm to be more in + line with the behavior Web sites require. + + <li>The <code>unload</code> and <code>beforeunload</code> events are now + defined. + + <li>The IDL blocks in the specification have been revamped to be in line + with the upcoming Web IDL specification. + + <li>Table headers can now have headers. User agents are required to + support a <code>headers</code> attribute pointing to a <code>td</code> + element, but authors are required to use <code>th</code> instead. + + <li>Interested parties can now register new <code>http-equiv</code> + values. + + <li>When the <code>meta</code> element has a <code>charset</code> + attribute it must occur within the first 512 bytes. + + <li>The <code>StorageEvent</code> object now has a + <code>storageArea</code> attribute. + + <li>It is now defined how HTML is to be used within the SVG + <code>foreignObject</code> element. + + <li>When the <code>label</code> element contains an <code>input</code> it + may still have a <code>for</code> attribute as long as it points to the + <code>input</code> element it contains. + + <li>The <code>input</code> element now has an <code>indeterminate</code> + DOM attribute. + + <li>The notification API has been dropped. + + <li>How [[Get]] works for the <code>HTMLDocument</code> and + <code>Window</code> objects is now defined. + + <li>The <code>Window</code> object gained the <code>locationbar</code>, + <code>menubar</code>, <code>personalbar</code>, <code>scrollbars</code>, + <code>statusbar</code> and <code>toolbar</code> attributes giving + information about the user interface. + + <li>The application cache section has been significantly revised and + updated. + </ul> + + <p>The changes since the publication on 22 January 2008 are as follows: <ul> <li>Implementation and authoring details around the <code>ping</code> @@ -1257,25 +1470,15 @@ <dt>[<dfn id=ref-html5>HTML5</dfn>] <dd><cite><a href="http://www.w3.org/TR/html5/">HTML 5</a></cite>, I. - Hickson, D. Hyatt, editors. W3C, June 2008. - - <dd><cite><a href="http://www.w3.org/TR/web-forms-2/">Web Forms - 2.0</a></cite>, I. Hickson, editor. W3C, October 2006. + Hickson, D. Hyatt, editors. W3C, XXX. <dd><cite><a href="http://www.whatwg.org/specs/web-apps/current-work/">HTML - 5</a></cite>, I. Hickson, editor. WHATWG, June 2008. - - <dd><cite><a - href="http://www.whatwg.org/specs/web-forms/current-work/">Web Forms - 2.0</a></cite>, I. Hickson, editor. WHATWG, October 2006. + 5</a></cite> (editor's draft), I. Hickson, editor. WHATWG, 2009. <dd><cite><a href="http://www.w3.org/html/wg/html5/">HTML 5</a></cite> (editor's - draft), I. Hickson, D. Hyatt, editors. W3C, June 2008. - - <dd><cite><a href="http://dev.w3.org/html5/web-forms-2/">Web Forms - 2.0</a></cite> (editor's draft), I. Hickson, editor. W3C, October 2006. + draft), I. Hickson, D. Hyatt, editors. W3C, 2009. <dt>[<dfn id=ref-xhtml1>XHTML1</dfn>] Index: Overview.src.html =================================================================== RCS file: /sources/public/html5/html4-differences/Overview.src.html,v retrieving revision 1.28 retrieving revision 1.29 diff -u -d -r1.28 -r1.29 --- Overview.src.html 9 Jun 2008 18:40:42 -0000 1.28 +++ Overview.src.html 23 Jan 2009 17:02:30 -0000 1.29 @@ -21,7 +21,7 @@ <dl> <dt>This Version:</dt> - <dd><a href="[VERSION]/">http://www.w3.org/TR/[YEAR]/WD-html5-diff-[CDATE]/</a></dd> + <dd><a href="[VERSION]/">http://www.w3.org/TR/[YEAR]/ED-html5-diff-[CDATE]/</a></dd> <dt>Latest Version:</dt> <dd><a href="http://www.w3.org/TR/html5-diff/">http://www.w3.org/TR/html5-diff/</a></dd> @@ -29,7 +29,8 @@ <dt>Latest Editor Version:</dt> <dd><a href="http://www.w3.org/html/wg/html5/diff/">http://www.w3.org/html/wg/html5/diff/</a></dd> - <dt>Previous Version:</dt> + <dt>Previous Versions:</dt> + <dd><a href="http://www.w3.org/TR/2008/WD-html5-diff-20080610/">http://www.w3.org/TR/2008/WD-html5-diff-20080610/</a></dd> <dd><a href="http://www.w3.org/TR/2008/WD-html5-diff-20080122/">http://www.w3.org/TR/2008/WD-html5-diff-20080122/</a></dd> <dt>Editor:</dt> @@ -40,9 +41,9 @@ <p class="copyright"><a href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> © 2008 - <a href="http://www.w3.org/"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>®</sup> - (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>, - <a href="http://www.ercim.org/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>, + <a href="http://www.w3.org/"><abbr title="World Wide Web Consortium">W3C</abbr></a><sup>®</sup> + (<a href="http://www.csail.mit.edu/"><abbr title="Massachusetts Institute of Technology">MIT</abbr></a>, + <a href="http://www.ercim.org/"><abbr title="European Research Consortium for Informatics and Mathematics">ERCIM</abbr></a>, <a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. W3C <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>, <a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a> @@ -123,12 +124,12 @@ to serve as a rough guide to many of the core features of HTML, it does not provide enough information to build implementations that interoperate with each other and, more importantly, with a critical mass - of deployed content. The same goes for XHTML1, which defines an XML - serialization for HTML 4, and DOM Level 2 HTML, which defines - JavaScript APIs for both HTML and XHTML. + of deployed content. The same goes for XHTML 1, which defines an + XML serialization for HTML 4, and DOM Level 2 HTML, which defines + JavaScript APIs for both HTML and XHTML. HTML 5 will replace these + documents. [<cite><span>DOM2HTML</span></cite>] [<cite><span>HTML4</span></cite>] - [<cite><span>XHTML1</span></cite>] - [<cite><span>DOM2HTML</span></cite>]</p> + [<cite><span>XHTML1</span></cite>]</p> <p>The HTML 5 draft reflects an effort, started in 2004, to study contemporary HTML implementations and deployed content. The draft:</p> @@ -158,7 +159,6 @@ <li>Details of accessibility and media-independence features, such as the <code>longdesc</code>, <code>alt</code> and <code>summary</code> attributes.</li> - <li>The repetition model.</li> </ul> @@ -176,7 +176,8 @@ 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 behaved previously.</p> + with how these elements need to behave for compatibility with deployed + content.</p> <p>Since HTML 5 has separate conformance requirements for authors and user agents there is no longer a need for marking things @@ -195,7 +196,7 @@ <!-- The following <div> is here for Michael(tm) Smith who owes the editor one beer in exchange. --> <div> - + <h3 id="webarch">Impact on Web Architecture</h3> <!-- http://lists.w3.org/Archives/Public/www-tag/2008May/0087.html --> @@ -217,7 +218,7 @@ inline concepts).</li> <li>The focus on accessibility as a built-in concept for new features - (such as the <code>irrelevant</code> attribute, the + (such as the <code>hidden</code> attribute, the <code>progress</code> element, et cetera) instead of an add-on (like the <code>alt</code> attribute).</li> @@ -253,6 +254,8 @@ <code>postMessage</code> API).</li> <li>The new sandboxing features for <code>iframe</code>.</li> + + <li>The definition of URL.</li> <!-- not part of the e-mail --> </ul> </div> @@ -261,17 +264,18 @@ <h2 id="syntax">Syntax</h2> - <p>The HTML 5 language has a "custom" HTML syntax that is compatible - with HTML 4 and XHTML1 documents published on the Web, but is not - compatible with the more esoteric SGML features of HTML 4, such as - <code><em/content/</code>. Documents using this "custom" syntax must be - served with the <code>text/html</code> MIME type.</p> + <p>The HTML 5 language has a "custom" HTML syntax that is + compatible with HTML 4 and XHTML 1 documents published on the + Web, but is not compatible with the more esoteric SGML features of + HTML 4, such as <code><em/content/</code>. Documents using the + HTML syntax must be served with the <code>text/html</code> media + type.</p> <p>HTML 5 also defines detailed parsing rules (including "error handling") for this syntax which are largely compatible with popular - implementations. User agents will follow these rules for resources that have - the <code>text/html</code> MIME type. Here is an example document that - conforms to the HTML syntax:</p> + implementations. User agents must use these rules for resources that + have the <code>text/html</code> media type. Here is an example document + that conforms to the HTML syntax:</p> <pre><!doctype html> <html> @@ -284,9 +288,9 @@ </body> </html></pre> - <p>The other syntax that can be used for HTML 5 is XML. This syntax is - compatible with XHTML1 documents and implementations. Documents using this - syntax need to be served with an XML MIME type and elements need to be put + <p>The other syntax that can be used for HTML 5 is XML. This syntax + is compatible with XHTML1 documents and implementations. Documents using + this syntax need to be served with an XML MIME type and elements need to be put in the <code>http://www.w3.org/1999/xhtml</code> namespace following the rules set forth by the XML specifications. [<cite><span>XML</span></cite>]</p> @@ -470,23 +474,20 @@ </datalist></code></pre> </li> - <li><p>The <code>datatemplate</code>, <code>rule</code> and - <code>nest</code> elements provide a templating mechanism for - HTML.</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>output</code> represents some type of output, such as + from a calculation done through scripting.</p></li> - <li><p><code>event-source</code> is used to "catch" server sent - events.</p></li> - - <li><p><code>output</code> represents some type of output, such as from a - calculation done through scripting.</p></li> - <li><p><code>progress</code> represents a completion of a task, such as downloading or when performing a series of expensive operations.</p></li> - - <li><p>The <code>ruby</code>, <code>rt</code> and <code>rb</code> - elements allow for marking up ruby annotations.</p></li> + + <li><p><code>ruby</code>, <code>rt</code> and <code>rb</code> allow + for marking up ruby annotations.</p></li> </ul> - + <p>The <code>input</code> element's <code>type</code> attribute now has the following new values:</p> @@ -510,6 +511,10 @@ <li><code>email</code> <li><code>url</code> + + <li><code>search</code> + + <li><code>color</code> </ul> <p>The idea of these new types is that the user agent can provide the user @@ -540,20 +545,22 @@ <code>hreflang</code> and <code>rel</code> attributes. <li><p>The <code>base</code> element can now have a <code>target</code> - attribute as well mainly for consistency with the <code>a</code> element - and because it was already widely supported. Also, the - <code>target</code> attribute for the <code>a</code> and <code>area</code> - elements is no longer deprecated, as it is useful in Web applications, for - example in conjunction with <code>iframe</code>. - - <li><p>The <code>value</code> attribute for the <code>li</code> element is - no longer deprecated as it is not presentational. The same goes for the - <code>start</code> attribute of the <code>ol</code> element. + attribute as well, mainly for consistency with the + <code>a</code> element (it is also widely supported). Also, the + <code>target</code> attribute for the <code>a</code> and + <code>area</code> elements is no longer deprecated, as it is useful in + Web applications, e.g. in conjunction with <code>iframe</code>. - <li><p>The <code>meta</code> element has a <code>charset</code> attribute - now as this was already supported and provides a nicer way to specify the + <li><p>The <code>value</code> attribute for the <code>li</code> + element is no longer deprecated as it is not presentational. The same + goes for the <code>start</code> attribute of the <code>ol</code> + element. + + <li><p>The <code>meta</code> element has a <code>charset</code> + attribute now as this was already widely supported and provides a nice + way to specify the <a href="#character-encoding">character encoding</a> for the document. - + <li><p>A new <code>autofocus</code> attribute can be specified on the <code>input</code> (except when the <code>type</code> attribute is <code>hidden</code>), <code>select</code>, <code>textarea</code> and @@ -561,71 +568,61 @@ form control during page load. Using this feature should enhance the user experience as the user can turn it off if he does not like it, for instance. - + <li><p>The new <code>form</code> attribute for <code>input</code>, <code>output</code>, <code>select</code>, <code>textarea</code>, - <code>button</code> and <code>fieldset</code> elements allows for controls - to be associated with more than a single form. - - <li><p>The <code>input</code>, <code>button</code> and <code>form</code> - elements have a new <code>replace</code> attribute which affects what will - be done with the document after a form has been submitted. - + <code>button</code> and <code>fieldset</code> elements allows for + controls to be associated with a form (e.g. one they are not a + descendant of). + <li><p>The <code>form</code> and <code>select</code> elements (as well as the <code>datalist</code> element) have a <code>data</code> attribute that allows for automatically prefilling of form controls, in case of <code>form</code>, or the form control, in case of <code>select</code> and <code>datalist</code>, with data from the server. - + <li><p>The new <code>required</code> attribute applies to <code>input</code> (except when the <code>type</code> attribute is <code>hidden</code>, <code>image</code> or some button type such as <code>submit</code>) and <code>textarea</code>. It indicates that the user has to fill in a value in order to submit the form. - - <li><p>The <code>input</code> and <code>textarea</code> elements have a - new attribute called <code>inputmode</code> which gives a hint to the user - interface as to what kind of input is expected. - + <li><p>You can now disable an entire <code>fieldset</code> by using the <code>disabled</code> attribute on it. This was not possible before. - + <li><p>The <code>input</code> element has several new attributes to specify constraints: <code>autocomplete</code>, <code>min</code>, - <code>max</code>, <code>pattern</code> and <code>step</code>. As mentioned + <code>max</code>, <code>multiple</code>, <code>pattern</code> and + <code>step</code>. As mentioned 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><code>input</code> and <code>button</code> also have a new - <code>template</code> attribute which can be used for repetition - templates. - - <li><p>The <code>menu</code> element has three new attributes: - <code>type</code>, <code>label</code> and <code>autosubmit</code>. They + + <li><p>The <code>menu</code> element has two new attributes: + <code>type</code> and <code>label</code>. They allow the element to transform into a menu as found in typical user interfaces as well as providing for context menus in conjunction with the global <code>contextmenu</code> attribute. - + <li><p>The <code>style</code> element has a new <code>scoped</code> attribute which can be used to enable scoped style sheets. Style rules within such a <code>style</code> element only apply to the local tree. - + <li><p>The <code>script</code> element has a new attribute called <code>async</code> that influences script loading and execution. - + <li><p>The <code>html</code> element has a new attribute called <code>manifest</code> that points to an application cache manifest used in conjunction with the API for offline Web applications. - + <li><p>The <code>link</code> element has a new attribute called <code>sizes</code>. It can be used in conjunction with the <code>icon</code> relationship (set through the <code>rel</code> attribute) to indicate the size of the referenced icon. - + <li><p>The <code>ol</code> element has a new attribute called <code>reversed</code> to indicate that the list order is descending when present. - + <li><p>The <code>iframe</code> element has two new attributes called <code>seamless</code> and <code>sandbox</code> which allow for sandboxing content, e.g. blog comments.</p></li> @@ -649,13 +646,9 @@ <li>The <code>draggable</code> attribute can be used together with the new drag & drop API. - <li>The <code>irrelevant</code> attribute indicates that an element is not + <li>The <code>hidden</code> attribute indicates that an element is not yet, or is no longer, relevant. - - <li>The <code>ref</code>, <code>registrationmark</code> and - <code>template</code> global attributes complement the data template - feature. - + <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 @@ -663,23 +656,11 @@ they are not used for user agent extensions. </ul> - <p>The following are the attributes for the repetition model. These are - global attributes and as such may be used on all HTML elements, or on - any element in any other namespace, with the attributes being in the - <code>http://www.w3.org/1999/xhtml</code> namespace.:</p> - - <ul> - <li><code>repeat</code> - <li><code>repeat-start</code> - <li><code>repeat-min</code> - <li><code>repeat-max</code> - </ul> - <p>HTML 5 also makes all event handler attributes from HTML 4 that take the form <code>on<var>event-name</var></code> global attributes and adds several new event handler attributes for new events it defines, such as the <code>onmessage</code> attribute which can be used together with the new - <code>event-source</code> element and the cross-document messaging API.</p> + <code>eventsource</code> element and the cross-document messaging API.</p> <h3 id="changed-elements">Changed Elements</h3> @@ -687,20 +668,21 @@ <p>These elements have slightly modified meanings in HTML 5 to better reflect how they are used on the Web or to make them more useful:</p> - + <ul> <li><p>The <code>a</code> element without an <code>href</code> - attribute now represents a "placeholder link".</p></li> - - <li><p>The <code>address</code> element is now scoped by the new concept - of sectioning.</p></li> - + attribute now represents a "placeholder link". It can also contain + flow content rather than being restricted to phrase content.</p></li> + + <li><p>The <code>address</code> element is now scoped by the new + concept of sectioning.</p></li> + <li><p>The <code>b</code> element now represents a span of text to be stylistically offset from the normal prose without conveying any extra importance, such as key words in a document abstract, product names in a review, or other spans of text whose typical typographic presentation is emboldened.</p></li> - + <li><p>The <code>hr</code> element now represents a paragraph-level thematic break. @@ -710,22 +692,19 @@ another language, a thought, a ship name, or some other prose whose typical typographic presentation is italicized. Usage varies widely by language.</p></li> - + <li><p>For the <code>label</code> element the browser should no longer move focus from the label to the control unless such behaviour is standard for the underlying platform user interface.</p></li> - - <li><p>The <code>menu</code> element is redefined to be useful for actual - menus.</p></li> - - <li><p>The <code>small</code> element now represents small print (for side - comments and legal print).</p></li> - + + <li><p>The <code>menu</code> element is redefined to be useful for + actual menus.</p></li> + + <li><p>The <code>small</code> element now represents small print (for + side comments and legal print).</p></li> + <li><p>The <code>strong</code> element now represents importance rather than strong emphasis.</p></li> - - <li><p>Quotation marks for the <code>q</code> element are now to be - provided by the author rather than the user agent. </ul> @@ -796,50 +775,48 @@ defined how they should work in those scenarios.</p> <ul> - <li><code>accesskey</code> attribute on <code>a</code>, <code>area</code>, - <code>button</code>, <code>input</code>, <code>label</code>, - <code>legend</code> and <code>textarea</code>.</li> + <li><code>accesskey</code> attribute on <code>a</code>, + <code>area</code>, <code>button</code>, <code>input</code>, + <code>label</code>, <code>legend</code> and + <code>textarea</code>.</li> <li><code>rev</code> and <code>charset</code> attributes on <code>link</code> and <code>a</code>. - + <li><code>shape</code> and <code>coords</code> attributes on <code>a</code>. - + <li><code>longdesc</code> attribute on <code>img</code> and <code>iframe</code>. - + <li><code>target</code> attribute on <code>link</code>. - + <li><code>nohref</code> attribute on <code>area</code>. - + <li><code>profile</code> attribute on <code>head</code>. - + <li><code>version</code> attribute on <code>html</code>. - <li><code>name</code> attribute on <code>img</code>, - <code>form</code> and <code>a</code> (use <code>id</code> instead). + <li><code>name</code> attribute on <code>img</code> and <code>a</code> + (use <code>id</code> instead). <li><code>scheme</code> attribute on <code>meta</code>. - + <li><code>archive</code>, <code>classid</code>, <code>codebase</code>, <code>codetype</code>, <code>declare</code> and <code>standby</code> attributes on <code>object</code>. - + <li><code>valuetype</code> and <code>type</code> attributes on <code>param</code>. - - <li><code>language</code> attribute on - <code>script</code>. - + + <li><code>language</code> attribute on <code>script</code>. + <li><code>summary</code> attribute on <code>table</code>. <li><code>axis</code> and <code>abbr</code> attributes on <code>td</code> and <code>th</code>. <li><code>scope</code> attribute on <code>td</code>. - - <li><code>headers</code> attribute on <code>th</code>. </ul> <p>In addition, HTML 5 has none of the presentational attributes that @@ -852,8 +829,8 @@ <code>hr</code>, <code>div</code>, <code>h1</code>, <code>h2</code>, <code>h3</code>, <code>h4</code>, <code>h5</code>, <code>h6</code>, <code>p</code>, <code>col</code>, <code>colgroup</code>, - <code>tbody</code>, <code>td</code>, <code>tfoot</code>, <code>th</code>, - <code>thead</code> and <code>tr</code>. + <code>tbody</code>, <code>td</code>, <code>tfoot</code>, + <code>th</code>, <code>thead</code> and <code>tr</code>. <li><code>alink</code>, <code>link</code>, <code>text</code> and <code>vlink</code> attributes on <code>body</code>. @@ -945,7 +922,7 @@ <li>Drag & drop API in combination with a <code>draggable</code> attribute.</li> - <li>Network API.</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 @@ -954,10 +931,7 @@ <li>Cross-document messaging.</li> <li>Server-sent events in combination with the new - <code>event-source</code> element.</li> - - <li>Notification API to alert the user to new information, such as new - e-mail messages in an e-mail application. + <code>eventsource</code> element.</li> </ul> @@ -1014,18 +988,200 @@ </ul> - <h2 id="changelog">HTML 5 Changelog</h2> + <h2 id="changelog">HTML 5 Changelogs</h2> - <p>Below is a rough list of changes that have been made to the - HTML 5 specification since the initial publication of the - HTML 5 Working Draft. This changelog - only indicates what has been changed. For more detailed discussion - please use the + <p>The changelogs in this section mostly indicate what has been changed. + Rationale for changes can be found in the <a href="http://lists.w3.org/Archives/Public/public-html/"><code>public-html@w3.org</code></a> and <a href="http://lists.whatwg.org/pipermail/whatwg-whatwg.org/"><code>whatwg@whatwg.org</code></a> - mailing list archives. Changes that affect this document have been - incorperated throughout.</p> + mailing list archives and to some extent in the + <a href="http://blog.whatwg.org/category/weekly-review">This Week in HTML 5</a> + series of blog posts. Many editorial and minor technical changes are not + included in these changelogs. If you are an implementor of HTML 5 + you are hereby strongly advised to follow the specification more + closely.</p> + + <p>The changes in the changelogs are in rough chronological order to + ease editing this document. The changelogs are placed in reverse + chronological order.</p> + + <p>The changes since the publication on 10 June 2008 are as follows:</p> + + <ul> + <li>The <code>data</code> member of <code>ImageData</code> objects has + been changed from an array to a <code>CanvasPixelArray</code> + object.</li> + <li>Shadows are now required from implementations of the + <code>canvas</code> element and its API.</li> + <li>Security model for <code>canvas</code> is clarified.</li> + <li>Various changes to the processing model of <code>canvas</code> have + been made in response to implementation and author feedback. E.g. + clarifying what happens when NaN and Infinity are passed and fixing the + definitions of <code>arc()</code> and <code>arcTo()</code>.</li> + <li><code>innerHTML</code> in XML was slightly changed to improve round + tripping.</li> + <li>The <code>toDataURL()</code> method on the <code>canvas</code> + element now supports setting a quality level when the media type + argument is <code>image/jpeg</code>.</li> + <li>The <code>poster</code> attribute of the <code>video</code> element + now affects its intrinsic dimensions.</li> + <li>The behavior of the <code>type</code> attribute of the + <code>link</code> has been clarified.</li> + <li>Sniffing is now allowed for <code>link</code> when the expected + type is an image.</li> + <li>A section on URLs is introduced dealing with how URL values are to + be interpreted and what exactly authors are required to do. Every + feature of the specification that uses URLs has been reworded to take + the new URL section into account.</li> + <li>It is now explicit that the <code>href</code> attribute of the + <code>base</code> element does not depend on + <code>xml:base</code>.</li> + <li>It is now defined what the behavior should be when the base URL + changes.</li> + <li>URL decomposition DOM attributes are now more aligned with Internet + Explorer.</li> + <li>The <code>xmlns</code> attribute with the value + <code>http://www.w3.org/1999/xhtml</code> is now allowed on all HTML + elements.</li> + <li><code>data-<var>*</var></code> attributes and custom attributes on + the <code>embed</code> element now have to match the XML + <code>Name</code> production and cannot contain a colon.</li> + <li>Web Socket API is introduced for bidirectional communication with a + server. It is currently limited to text messages.</li> <!-- XXX risk --> + <li>The default value of <code>volume</code> on media elements is now + 1.0 rather than 0.5.</li> + <li><code>event-source</code> was renamed to <code>eventsource</code> + because no other HTML element uses a hyphen.</li> + <li>A message channel API has been introduced augmenting + <code>postMessage()</code>.</li> + <li>A new element named <code>bb</code> has been added. It represents a + user agent command that the user can invoke.</li> + <li>The <code>addCueRange()</code> method on media elements has been + modified to take an identifier which is exposed in the callbacks.</li> + <li>It is now defined how to mutate a DOM into an infoset.</li> + <li>The <code>parent</code> attribute of the <code>Window</code> object + is now defined.</li> + <li>The <code>embed</code> element is defined to do extension sniffing + for compatibilty with servers that deliver Flash as + <code>text/plain</code>. (This is marked as an issue in the + specification to figure out if there is a better way to make this + work.)</li> <!-- and no, the answer is not to simply break stuff --> + <li>The <code>embed</code> can now be used without its <code>src</code> + attribute.</li> + <li><code>getElementsByClassName()</code> is defined to be ASCII + case-insensitive in quirks mode for consistency with CSS.</li> + <li>In HTML documents <code>localName</code> no longer returns the node + name in uppercase.</li> + <li><code>data-<var>*</var></code> attributes are defined to be always + lowercase.</li> + <li>The <code>opener</code> attribute of the <code>Window</code> object + is not to be present when the page was opened from a link with + <code>target="_blank"</code> and <code>rel="noreferrer"</code>.</li> + <li>The <code>top</code> attribute of the <code>Window</code> object is + now defined.</li> + <li>The <code>a</code> element now allows nested flow content, e.g. a + <code>div</code> element, but not itself.</li> + <li>It is now defined what the <code>header</code> element means to + document summaries and table of contents.</li> + <li>What it means to fetch a resource is now defined.</li> + <li>Patterns are now required for the <code>canvas</code> element.</li> + <li>The <code>autosubmit</code> attribute has been removed from the + <code>menu</code> element.</li> + <li>Support for <code>outerHTML</code> and + <code>insertAdjacentHTML()</code> have been added.</li> + <li><code>xml:lang</code> is now allowed in HTML when <code>lang</code> + is also specified and they have the same value. In XML + <code>lang</code> is allowed if <code>xml:lang</code> is also specified + and they have the same value.</li> + <li>The <code>frameElement</code> attribute of the <code>Window</code> + object is now defined.</li> + <li>An event loop and task queue is now defined detailing script + execution and events. All features have been updated to be defined in + terms of this mechanism.</li> + <li>If the <code>alt</code> attribute is omitted a <code>title</code> + attribute, an enclosing <code>figure</code> element with a + <code>legend</code> element descendant, or an + enclosing section with an associated must be present.</li> + <li>The <code>irrelevant</code> attribute has been renamed to + <code>hidden</code>.</li> + <li>The <code>definitionURL</code> attribute of MathML is now properly + supported. Previously it would have ended up being all lowercase during + parsing.</li> + <li>User agents must treat US-ASCII as Windows-1252 for compatibility + reasons.</li> + <li>An alternative syntax for the <code>DOCTYPE</code> is allowed for + compatibility with XSLT.</li> + <li>Web Forms 2.0 has been fully integrated into the + specification. This means that just like in HTML 4 there is a + chapter on forms.</li> + <li>Features from Web Forms 2.0 that did not make the cut: repetition + templates, XML submission, the <code>replace</code> attribute, the + <code>inputmode</code> attribute and + seeding of values through an external resource.</li> + <li>Data templates have been removed as well (consisted of the + <code>datatemplate</code>, <code>rule</code> and <code>nest</code> + elements).</li> + <li>The media elements now support just a single <code>loop</code> + attribute.</li> + <li>The <code>load()</code> method on media elements has been + redefined as asynchronous. It also tries out files in turn now.</li> + <li>A new member called <code>canPlayType()</code> has been added to + the media elements.</li> + <li>The <code>totalBytes</code> and <code>bufferedBytes</code> + attributes have been removed from the media elements.</li> + <li>The <code>input</code> element gained a <code>placeholder</code> + attribute.</li> + <li>The <code>Location</code> object gained a + <code>resolveURL()</code> method.</li> + <li><code>object</code> elements now partake in form submission.</li> + <li>The <code>type</code> attribute of the <code>input</code> element + gained the values <code>color</code> and <code>search</code>.</li> + <li>The <code>input</code> element gained a <code>multiple</code> + attribute which allows for either multiple e-mails or multiple files to + be uploaded depending on the value of the <code>type</code> + attribute.</li> + <li>The <code>form</code> and <code>input</code> elements now have a + <code>novalidate</code> attribute to indicate that the form fields + should not be required to have valid values upon submission.</li> + <li>The <code>q</code> element has changed again. Punctation is to be + provided by the user agent again.</li> + <li>Various changes were made to the HTML parser algorithm to be more + in line with the behavior Web sites require.</li> + <li>The <code>unload</code> and <code>beforeunload</code> events are + now defined.</li> + <li>The IDL blocks in the specification have been revamped to be in + line with the upcoming Web IDL specification.</li> + <li>Table headers can now have headers. User agents are required to + support a <code>headers</code> attribute pointing to a <code>td</code> + element, but authors are required to use <code>th</code> instead.</li> + <li>Interested parties can now register new <code>http-equiv</code> + values.</li> + <li>When the <code>meta</code> element has a <code>charset</code> + attribute it must occur within the first 512 bytes.</li> + <li>The <code>StorageEvent</code> object now has a + <code>storageArea</code> attribute.</li> + <li>It is now defined how HTML is to be used within the SVG + <code>foreignObject</code> element.</li> + <li>When the <code>label</code> element contains an <code>input</code> + it may still have a <code>for</code> attribute as long as it points to + the <code>input</code> element it contains.</li> + <li>The <code>input</code> element now has an + <code>indeterminate</code> DOM attribute.</li> + <li>The notification API has been dropped.</li> + <li>How [[Get]] works for the <code>HTMLDocument</code> and + <code>Window</code> objects is now defined.</li> + <li>The <code>Window</code> object gained the + <code>locationbar</code>, <code>menubar</code>, + <code>personalbar</code>, <code>scrollbars</code>, + <code>statusbar</code> and <code>toolbar</code> attributes giving + information about the user interface.</li> + <li>The application cache section has been significantly revised and + updated.</li> + </ul> + + <p>The changes since the publication on 22 January 2008 are as + follows:</p> <ul> <li>Implementation and authoring details around the <code>ping</code> @@ -1145,24 +1301,13 @@ <dt>[<dfn id="ref-html5">HTML5</dfn>]</dt> <dd><cite><a href="http://www.w3.org/TR/html5/">HTML 5</a></cite>, - I. Hickson, D. Hyatt, editors. W3C, June 2008.</dd> - - <dd><cite><a href="http://www.w3.org/TR/web-forms-2/">Web Forms - 2.0</a></cite>, I. Hickson, editor. W3C, October 2006.</dd> - - <dd><cite><a href="http://www.whatwg.org/specs/web-apps/current-work/">HTML - 5</a></cite>, I. Hickson, editor. WHATWG, June 2008.</dd> + I. Hickson, D. Hyatt, editors. W3C, XXX.</dd> - <dd><cite><a href="http://www.whatwg.org/specs/web-forms/current-work/">Web - Forms 2.0</a></cite>, I. Hickson, editor. WHATWG, October 2006.</dd> + <dd><cite><a href="http://www.whatwg.org/specs/web-apps/current-work/">HTML + 5</a></cite> (editor's draft), I. Hickson, editor. WHATWG, 2009.</dd> <dd><cite><a href="http://www.w3.org/html/wg/html5/">HTML 5</a></cite> - (editor's draft), I. Hickson, D. Hyatt, editors. W3C, June - 2008.</dd> - - <dd><cite><a href="http://dev.w3.org/html5/web-forms-2/">Web Forms - 2.0</a></cite> (editor's draft), I. Hickson, editor. W3C, October - 2006.</dd> + (editor's draft), I. Hickson, D. Hyatt, editors. W3C, 2009.</dd> <dt>[<dfn id="ref-xhtml1">XHTML1</dfn>]</dt>
Received on Friday, 23 January 2009 17:03:49 UTC