In 2004, at a two day workshop in San Jose, California on Web Applications and Compound Documents, the World Wide Web Consortium staff advocated replacing that stack with non-backward-compatible XHTML2 + XForms + SVG + MathML + RDFa.
However, a poll taken at the end of the workshop showed that browser makers unanimously favored an incremental approach based on evolving HTML4/ XHTML1 + CSS + DOM.
In 2005, the W3C began work on HTML5 to advance regular HTML, and in 2009 it acknowledged that HTML5 would be the only next-generation version of HTML, although it would include both XML and non-XML serializations.
Fixes to HTML4
Richer Semantic Markup
New Forms Capabilities
Programmable Vector Graphics
All browsers need two modes: quirks mode for the old rules, strict mode for the standard.
Semantic Web: an evolutionary stage of the World Wide Web in which automated software can store, exchange, and use machine-readable information distributed throughout the Web, in turn enabling users to deal with the information with greater efficiency and certainty.
Convert unstructured web documents into a common framework that allows data to be shared and reused across application, enterprise, and community boundaries.
Object-oriented design; object (sky), attribute (color) and value (blue)
Web SQL Database (http://www.w3.org/TR/webdatabase). Defines an API for storing data in a database in the web browser that can be queried using a variant of SQL.
Indexed Database API (http://www.w3.org/TR/IndexedDB). A non-SQL alternatives is the Indexed Database API, which defines a database of records holding simple values and hierarchical object records of key/value pairs.
Web Storage (http://www.w3.org/TR/webstorage). Simpler than a database, Web Storage defines an API for storing key/value pairs in the browser, a logical step forward from using cookies.
The search input type is a special kind of text input that conveys the additional semantic that the user will be entering search terms.
Numerous date and time inputs for specifying the date and time, a month, or a week.
Input types of tel, url, and email also represent special text inputs, but with different structures as well as semantics.
On an <input> element, the autofocus attribute indicates to the browser that this input should be focused upon loading the page, so the user can start typing without having to first activate that input.
The <output> element is used to perform some sort of computation or calculation based on input from the user.
The <details> element is for representing and presenting a piece of content that offers a summary label with further details provided through a progressive disclosure interface. The new <summary> element marks up the summary or label inside the <details> element.
The <meter> element can be used to display measurements such as a score, a rating, a countdown, or donations towards a goal. The new element comes with min and max attributes to set the bottom and top ends of the range, as well as a value attribute.
The <progress> element is for the special case of progress towards completion of a task; and also has max and value attributes.