This Week in HTML5 – Episode 37
The big news this week is microdata. Google sponsored a usability study on microdata syntax, which resulted in significant changes to the spec [r4066]. Also related: r4067 fixes a microdata example, r4068 updates the algorithm for extracting RDF triples from microdata, r4069 does some spec cleanup, and r4070 splits out the predefined microdata syntaxes into their own specs:
- Microdata vocabularies: vCard
- Microdata vocabularies: vEvent
- Microdata vocabularies: Licensing Works
There was also work on events this week. r4032 defines what events are involved in copy and paste, closing bug 7668. r4037 defines when the reset
event fires, closing bug 7699. r4039 defines when the abort
event fires, closing bug 7700.
This week brings another milestone, one which went mostly unremarked in mailing lists, blogs, and IRC chatter. As with any large project, Ian Hickson has maintained an informal wishlist of things he would like to clarify, define, or otherwise include in HTML5. The list has grown and shrunk over the years. The list was stored in HTML comments, so it has never been visible unless you viewed the source of the HTML5 specification itself. And as with any large project, there comes a time when you realize you're not going to get to everything on your wishlist.
This week, the wishlist shrunk a lot, as Ian finally "punted" on several issues. Some of them may be tackled in HTML6. (Of course, if someone feels strongly enough, they can certainly argue that an issue still needs to be tackled in HTML5.) r4023 shows the deletions from the wishlist, including: "ability for a web app to save a file to the local disk," proposals for new attributes on the <title>
element, partial form validation, multi-column select widgets, auto-formatting of number fields (like many spreadsheet programs do), relative dates, input controls for repeating dates (like anniversaries or other repeating events), and input controls for currency.
Other noteworthy changes this week:
- r4011 syncs with the latest Origin spec, closing bug 7599.
- r4031 allows user agents to explicitly disable
<canvas>
support. - r4042 limits
PUT
andDELETE
actions on web forms to the same origin as the page. This is similar to the restriction onXMLHttpRequest
. - r4057 defines
<applet>
. - r4076 disallows the backtick (
`
) character in unquoted attribute values, because Internet Explorer will treat it as an attribute value delimiter. - r4082 adds the
document.head
property, which makes me very happy. - r4083 states that an
<audio>
element without controls should always be hidden. (You can still make a visible<audio>
element; just give it acontrols
attribute.) - r4086 tries to clarify the ever-elusive
WindowProxy
object. - r4091 registers the various HTTP headers that are used in the new features of HTML5, including
Ping-From
andPing-To
. - r4092 and r4094 add a non-normative index of HTML elements and attributes. Think of it as an "HTML5 cheat sheet." Various third parties have attempted such a list, but none have been able to keep up with the maintenance required as HTML5 evolved.
Around the web:
- Sniffing for RSS 1.0 feeds served as text/html, my original research into how browsers treat mis-labeled RSS feeds. My proposal was accepted and incorporated into the latest draft of the Content Sniffing spec.
- mimesniff, my implementation of the Content Sniffing draft spec. Requires Python 3.1 or later.
- SVG at Google and in Internet Explorer, by my friend and colleague Brad Neuberg (the mastermind behind SVGWeb).
- A cute animated cartoon about HTML5 and
<canvas>
, using HTML5 and<canvas>
. - I will be speaking on HTML5 at two upcoming Google Developer Days. The first is in Prague on November 6; the second is in Moscow on November 10.
Tune in next week for another exciting edition of "This Week in HTML5."