W3C

HTML 5 Publication Notes

W3C Working Group Note 10 June 2008

This Version:
http://www.w3.org/TR/2008/NOTE-html5-pubnotes-20080610/
Latest Version:
http://www.w3.org/TR/html5-pubnotes/
Editor:
Michael(tm) Smith, W3C <mike@w3.org>

skip to Table of Contents

Abstract

This document provides supplemental information on the 10 June 2008 working draft of the HTML 5 specification [HTML5]. It primarily documents changes that have been made to the HTML 5 draft specification since the time of its 22 January 2008 publication as a First Public Working Draft [HTML5FPWD].

Status of this Document

This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications and the latest revision of this technical report can be found in the W3C technical reports index at http://www.w3.org/TR/.

Please send comments about this document to public-html-comments@w3.org (archived).

This document was produced by the HTML Working Group, part of the HTML Activity in the W3C Interaction Domain. You can find the source for the current version of this document in the W3C source repository.

Publication as a Working Group Note does not imply endorsement by the W3C Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.

This document was produced by a group operating under the 5 February 2004 W3C Patent Policy. W3C maintains a public list of any patent disclosures made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy.

Table of Contents

Summary: High-level list of selected changes # T

This section provides a high-level list of selected changes made to the HTML 5 draft specification after 22 January 2008. For more detailed descriptions of the changes, see the sections in this document that follow this one. (Note: The source for this summary is maintained in the HTML 5 differences from HTML 4 document [HTML4DIFFS]; the summary was copied from that document into this one.)

Changes since the First Public Working Draft # T

This section provides a per-section record of changes in the 10 June 2008 working draft of the HTML 5 specification [HTML5] that were made after the 22 January 2008 First Public Working Draft (FPWD) [HTML5FPWD]. Note that it documents substantive changes only, and omits editorial changes. It is intended to be readable as a “standalone” document — meaning that readers are meant to be able to use it to get an overview of the changes that have been made, without necessarily needing to read the specification itself or to read through the entire diff document that shows all the changes.

Section 1, Introduction # T

The “Introduction” section of the specification provides both non-normative (informative) background and context information on the specification, as well as normative information.

Section 1.2, Structure of this specification # T

This non-normative section provides information about the major divisions of information in the specification. In this section, the following changes were made:

  • A note that the specification included an appendix regarding “shims for WYSIWYG editors” was removed (because that appendix was removed from the document).

Section 1.3, Conformance requirements # T

This section provides information about conformance requirements for Web browsers and user agents, conformance checkers, data mining tools, authoring tools, and markup generators. In this section, the following changes were made:

  • In the introduction for this section, the words “SHALL” and “SHALL NOT” were removed from the list of words that “are to be interpreted as described in RFC2119”.
  • In the “Conformance checkers” subsection, the text of a statement was updated to now read (added text highlighted):

    Automated conformance checkers are exempt from detecting errors that require interpretation of the author’s intent (for example, while a document is non-conforming if the content of a blockquote element is not a quote, conformance checkers running without the input of human judgement do not have to check that blockquote elements only contain quoted material).

    Also, the text of a related statement was updated to reference the concept of the browsing context; the text of that statement now reads:

    Conformance checkers must check that the input document conforms when parsed without a browsing context (meaning that no scripts are run, and that the parser’s scripting flag is disabled), and should also check that the input document conforms when parsed with a browsing context in which scripts execute, and that the scripts never cause non-conforming states to occur other than transiently during script execution itself.

  • In the “Common conformance requirements for APIs exposed to JavaScript” subsection, for consistency with the Web IDL specification [WebIDL], statements related to cases for throwing NOT_SUPPORTED_ERR and TYPE_MISMATCH_ERR exceptions were removed.
  • In a note that concerns XML processors, the following statement was removed completely: For interoperability, authors are advised to avoid optional features of XML.
  • In the “Dependencies” subsection, a note was emended to now read (added text highlighted), It is possible for xml:base attributes to be present even in HTML fragments, as such attributes can be added dynamically using script. (Such scripts would not be conforming, however, as xml:base attributes as not allowed in HTML documents.)

Section 1.4, Terminology # T

This section provides information about specific technical terms used in the specification. In this section, the following changes were made:

  • A paragraph regarding usage of IDL in the specification was shortened and refined to read: DOM interfaces defined in this specification use Web IDL. User agents must implement these interfaces as defined by the Web IDL specification.
  • The following text related to the term “plugin” was added (with parts of it being moved here from the section for the embed element):

    The term plugin is used to mean any content handler, typically a third-party content handler, for Web content types that are not supported by the user agent natively, or for content types that do not expose a DOM, that supports rendering the content as part of the user agent’s interface.

    One example of a plugin would be a PDF viewer that is instantiated in a browsing context when the user navigates to a PDF file. This would count as a plugin regardless of whether the party that implemented the PDF viewer component was the same as that which implemented the user agent itself. However, a PDF viewer application that launches separate from the user agent (as opposed to using the same interface) is not a plugin by this definition.

    Note: This specification does not define a mechanism for interacting with plugins, as it is expected to be user-agent- and platform-specific. Some UAs might opt to support a plugin mechanism such as the Netscape Plugin API; others might use remote content converters or have built-in support for certain types.

    Warning! Browsers should take extreme care when interacting with external content intended for plugins. When third-party software is run with the same privileges as the user agent itself, vulnerabilities in the third-party software become as dangerous as those in the user agent.

Section 2, The Document Object Model # T

Conformance criteria of HTML implementations are defined in the specification in terms of operations on the Document Object Model (DOM). This section of the specification defines the language represented in the DOM, and forms a basis for the other parts of the specification.

Section 2.1, Documents # T

This section defines the Document object. In this section, the following changes were made:

  • The following attributes were added to the definition of the HTMLDocument interface:
    • charset
    • characterSet
    • defaultCharset
    • embeds
    • plugins
    • readyState
    • scripts
    • queryCommandEnabled
    • queryCommandIndeterm
    • queryCommandState
    • queryCommandSupported
    • queryCommandValue
    The interface was also updated for consistency with the Web IDL specification [WebIDL], and to correctly document the hasFocus() method as a method (previously, the interface definition had incorrectly indicated that it was an attribute).
  • In the “Resource metadata management” subsection, content that related to the domain DOM attribute (which is “used to enable pages on different hosts of a domain to access each others’ DOMs”) was moved out to form the basis for the algorithm in the “Relaxing the same-origin restriction” in the “Origin” section.
  • Also in the “Resource metadata management” subsection, conformance criteria for data returned by the referrer DOM attribute and other parts of the section was refined — in particular, to reference the concepts of the active document and source browsing context — and the following note was added: Typically user agents are configured to not report referrers in the case where the referrer uses an encrypted protocol and the current page does not (e.g. when navigating from an https: page to an http: page). In the latter part of that same subsection, additional language was added that relates to:
    • quirks mode
    • document character encoding and the charset, characterSet, and defaultCharset DOM attributes
    • document readiness, the readystatechanged event, and the readyState DOM attribute

Section 2.2, Elements # T

This section defines the basic DOM interface for all HTML elements, the HTMLElement interface. In this section, the following changes were made:

  • The following attributes were added to the definition of the HTMLElement interface:
    • dataset
    • isContentEditable
    • style
    • onstorage
  • A number of refinements were made to the language in the “Reflecting content attributes in DOM attributes” subsection, most extensively to the description that relates to handling of DOM attributes that are of the floating-point number type.

Section 2.3, Common DOM interfaces # T

This section defines DOM interfaces known as collections, the DOMTokenList and DOMStringMap interfaces, and DOM feature strings for HTML. In this section, the following changes were made:

  • In the “Collections” subsection, for consistency with the Web IDL specification [WebIDL], the definitions for the HTMLCollection, HTMLFormControlsCollection, HTMLOptionsCollection, and DOMTokenList interfaces were updated and language that stated conformance criteria for ECMAScript implementations was removed.
  • In the “DOMTokenList” subsection, the algorithms for the add() and toggle() methods were slightly refined.
  • The “DOMStringMap” subsection was added. It defines an interface for representing a set of name-value pairs.

Section 2.4, DOM tree accessors # T

This section defines the placement of the html, head, title, and body elements in the DOM tree, associated DOM attributes, and the getElementsByName() and getElementsByClassName() methods. In this section, the following changes were made:

  • A refinement was made to the algorithm that must be run on setting the title.
  • Conformance criteria related to the embeds, plugins, and scripts DOM attributes was added.

Section 2.5, Dynamic markup insertion # T

This section defines mechanisms that enable script authors to dynamically insert markup into a document. In the section, the following changes were made:

  • In the “Controlling the input stream” subsection, a “Change the document’s character encoding to UTF-16” step was added to the algorithm that runs when the open() method is called.
  • Some changes were made within the “Dynamic markup insertion in XML” subsection in this section — among them, the addition of a statement that If any of the elements in the serialisation are in the null namespace, the default namespace in scope for those elements must be explicitly declared as the empty string.

Section 2.6, APIs in HTML documents # T

This section provides details about case-insensitivity and case-changing behavior of data returned by certain DOM APIs. No changes have been made in this section.

Section 3, Semantics and structure of HTML elements # T

This section defines the meanings and content models for each element in the HTML language, and includes both “authoring conformance” or “document conformance” requirements (to enable authors to produce conformant HTML documents) with “implementation conformance” or “user-agent conformance” requirements (to enable implementors to produce conformant HTML user agents).

Section 3.2, Common microsyntaxes # T

This section describes the conformance criteria for instances of particular data types (such as dates or numbers) used in HTML content, as well as describing how to parse such instances. In this section, the following changes were made:

  • In the “Boolean attributes” subsection, the conformance criteria for boolean attributes were changed to state that a non-empty boolean-attribute value must be “a case-insensitive match for the attribute’s canonical name” (the statement had previously required non-empty values to be in lowercase).
  • A number of change were made to the “rules for parsing a list of integers” algorithm in the “Numbers” subsection.
  • A placeholder for a “URLs” subsection was added, with editorial notes about what its intended purpose will be.
  • In the “Tokens” subsection, the following statement was added:

    Sets of space-separated tokens sometimes have a defined set of allowed values. When a set of allowed values is defined, the tokens must all be from that list of allowed values; other values are non-conforming. If no such set of allowed values is provided, then all values are conforming.

  • In the “References” section, instances of the phrase “hashed ID reference” were changed to “hash-name reference”.

Section 3.3, Documents and document fragments # T

This section introduces the terms “semantics”, “structure”, “transparent”, and “paragraph” in the specific context of the HTML language, as well as defining a number of categories that HTML content can be grouped into. In this section, the following changes were made:

  • In the “Semantics” subsection, a general statement about authoring conformance was re-written to now read, Authors must not use elements, attributes, and attribute values for purposes other than their appropriate intended semantic purpose., and a minor refinement was made to the accompanying example.
  • In the “Structure” subsection, the following statement was removed completely: Authors must only put elements inside an element if that element allows them to be there according to its content model, and (in a later part of the same subsection), a general statement about authoring conformance was re-written to now read, Authors must not use elements in the HTML namespace anywhere except where they are explicitly allowed, as defined for each element, or as explicitly required by other specifications.
  • Also in the “Structure” subsection, a statement was added that cites an example of a structural conformance requirement in the Atom specification, and a statement was added that elements in the HTML namespace may be orphan nodes (i.e. without a parent node), along with an example.
  • In the “Kinds of content” subsection (and throughout the rest of the section and the specification), the term “prose content” was changed to flow content.
  • In the “Transparent content models” subsection, a minor wording change was made.

Section 3.4, Global attributes # T

This section defines attributes that may be specified on all HTML elements. In this section, the following changes were made:

  • The style attribute was added to the list of global attributes, and a subsection defining it was added.
  • The onstorage attribute was added to the list of global attributes.
  • The following conformance statement was added:

    custom data attributes (e.g. data-foldername or data-msgid) can be specified on any HTML element, to store custom data specific to the page.

    Also, an “Embedding custom non-visible data” subsection was added, with conformance criteria related to data- attributes and the associated dataset DOM attribute.
  • The following conformance statement was added:

    In HTML documents, the html element, and any other elements in the HTML namespace whose parent element is not in the HTML namespace, may have an xmlns attribute specified, if, and only if, it has the exact value “http://www.w3.org/1999/xhtml”. This does not apply to XML documents.

    Also, two notes were added regarding the effects of the xmlns attribute in content.
  • A new “The xml:base attribute (XML only)” subsection was added, with the following text:

    The xml:base attribute is defined in XML Base.

    The xml:base attribute may be used on elements of XML documents. Authors must not use the xml:base attribute in HTML documents.

  • Some wording refinements were made to various subsections.

Section 3.5, Interaction # T

This section defines conformance requirements related to interactive DOM behavior in user agents, including activation of elements, element focus, and scrolling elements into view. In this section, the following changes were made:

  • The wording for the entire “Focus” subsection was refactored to make “define .focus(), .blur(), onfocus, and onblur in a way that doesn’t require an infinite loop in the face of a hostile author, and that is better defined in terms of multiple iframes, windows, and orphaned elements”, and to provide the following definition of “focusable”: An element is focusable if the tabindex attribute’s definition above defines the element to be focusable and the element is being rendered. and, for the case where the scrollIntoView() method is called, to provide the following additional requirement: Visual user agents should further scroll horizontally as necessary to bring the element to the attention of the user.
  • Also, in the “Focus” subsection, a change was made to correctly document the hasFocus() method as a method (previously, the interface definition had incorrectly indicated that it was an attribute).

Section 3.6, The root element # T

This section defines the semantics and structure of the html element. In this section, the only substantive change made was that a statement related to the xmlns attribute was moved out to an earlier point in the document, to the “Global attributes” section.

Section 3.7, Document metadata # T

This section defines the semantics and structure of the head element and those of its conformant descendant elements.

Section 3.7.3, The base element # T

In this section, the phrase “valid browsing context name” was emended to become valid browsing context name or keyword.

Section 3.7.5, The meta element # T

In this section, the following changes were made:

  • A statement was added that The charset attribute specifies the character encoding used by the document. This is called a character encoding declaration.
  • The text of the “Specifying the document’s character encoding” subsection was refined, with the following statements added:

    If the document contains a meta element with a charset attribute or a meta element in the Encoding declaration state, then the character encoding used must be an ASCII-compatible character encoding.

    An ASCII-compatible character encoding is one that is a superset of US-ASCII (specifically, ANSI_X3.4-1968) for bytes in the range 0x09 - 0x0D, 0x20, 0x21, 0x22, 0x26, 0x27, 0x2C - 0x3F, 0x41 - 0x5A, and 0x61 - 0x7A.

  • The value dns was removed from the list of pre-defined values for the name attribute.
  • The value description was added to the list of pre-defined values for the name attribute, and defined as:

    The value must be a free-form string that describes the page. The value must be appropriate for use in a directory of pages, e.g. in a search engine.

  • The value application-name was added to the list of pre-defined values for the name attribute, and defined as:

    The value must be a short free-form string that giving the name of the Web application that the page represents. If the page is not a Web application, the application-name metadata name must not be used. User agents may use the application name in UI in preference to the page’s title, since the title might include status messages and the like relevant to the status of the page at a particular moment in time instead of just being the name of the application.

  • The Content-Type keyword and corresponding Encoding declaration state added to a table that lists conformant keyword values for the http-equiv attribute and their corresponding states; also, a definition for the Encoding declaration state was added, and refinements were made in the “Specifying the document’s character encoding” subsection.
  • A part of the “Refresh state” algorithm was revised to refer to the document’s source browsing context.

Section 3.7.6, The style element # T

In this section, a refinement was made to the definition of the media attribute.

Section 3.8, Sections # T

This section defines the semantics and structure of the elements used for dividing documents into sections.

Section 3.8.1, The body element # T

In this section, an interface definition was added for the DOM interface for the body element.

Section 3.8.3, The nav element # T

In this section, an example was added, along with the following statement:

Not all groups of links on a page need to be in a nav element — only sections that consist of primary navigation blocks are appropriate for the nav element. In particular, it is common for footers to have a list of links to various key parts of a site, but the footer element is more appropriate in such cases.

Section 3.8.5 [now 3.9.6], The blockquote element # T

The section on the blockquote element was moved to become a subsection of the “Grouping content” elements section.

Section 3.8.6 [now 3.8.5], The aside element # T

In this section, two examples were added.

Section 3.8.8 [now 3.8.7], The header element # T

In this section, some wording refinements were made.

Section 3.8.10 [now 3.8.9], The address element # T

In this section, a statement was added that if an address element applies to the body element, then it instead applies to the document as a whole, and in several places, the phrase “sectioning element” was changed to sectioning content element.

Section 3.8.11 [now 3.8.10], Headings and sections # T

Several parts of this section were extensively re-written. Among some of the specific changes:

  • The term sectioning roots has been introduced and defined.
  • In the “Creating an outline”, a numbered set of steps was added to define the outline algorithm, and other details were added.
  • In the final subsection, the term “headers” has been replaced by “headings”, including in the title, which now reads “Distinguishing site-wide headings from page headings”, and some refinements were made to the wording of the subsection.

Section 3.9, Grouping content # T

This section concerns elements that are used to group phrasing content into logical structures such as paragraphs and lists. The title of the section was changed from “Prose” to “Grouping content”.

Section 3.9.4 [was 3.10.1], The pre element # T

This subsection was created when the previous section for the pre element was moved down in the sectioning hierarchy to become a subsection the “Grouping content” section. Also, the following note was added:

In the HTML serialisation, a leading newline character immediately following the pre element start tag is stripped.

Section 3.9.6 [was 3.8.5], The blockquote element # T

This subsection was created when the previous section for the blockquote element was moved out of the “Sections” section and into the “Grouping content” section. Also, some small refinements were made to the wording of the section.

Section 3.9.7 [was 3.11.1], The ol element # T

In this section, the following changes were made:

  • The reversed content attribute was added to the list of conformant attributes for the element, and the reversed DOM attribute was added to the interface definition for the HTMLOListElement interface.
  • Conformance criteria for the reversed content attribute and reversed DOM attribute were added.
  • A statement defining the meaning of the element, which had read, “The ol element represents an ordered list of items (which are represented by li elements)“, was revised to read, The ol element represents a list of items, where the items have been intentionally ordered, such that changing the order would change the meaning of the document.
  • The following statements were added: The reversed attribute is a boolean attribute. If present, it indicates that the list is a descending list (..., 3, 2, 1). If the attribute is omitted, the list is an ascending list (1, 2, 3, ...).
  • Conformance statements relevant to the reversed content attribute and reversed DOM attribute were updated or added where needed throughout the text.
  • Two examples were added.

Section 3.9.8 [was 3.11.2], The ul element # T

In this section, the definition of the meaning of the ul element, which had read, “The ul element represents an unordered list of items” was changed to read, The ul element represents a list of items, where the order of the items is not important — that is, where changing the order would not materially change the meaning of the document, and two examples were added.

Section 3.9.9 [was 3.11.3], The li element # T

In this section, two examples were added.

Section 3.9.10 [was 3.11.4], The dl element # T

In this section, the following changes were made:

  • a sentence in the definition of the meaning of the dl element was slightly modified to remove the criterion that it introduces an “unordered association list”, such that the sentences now reads, The dl element introduces an association list consisting of zero or more name-value groups (a description list).
  • Significant refinements and additions were made to the language in the section.
  • The set of examples was expanded.

Section 3.9.11 [was 3.11.5], The dt element # T

In this section, the following statement was added:

If the dt element is the child of a dialog element, and it further contains a time element, then that time element represents a timestamp for when the associated discourse (dd element) was said, and is not part of the name of the talker.

Also, two examples were added.

Section 3.10 [was 3.12], Text-level semantics # T

This section concerns elements used to mark up content at the “text level” (as opposed to the “sectioning” or “grouping” levels). The title of the section was changed from “Phrase elements” to “Text-level semantics”.

Section 3.10.1, The a element # T

In this section, the interface definition for the HTMLAnchorElement interface was updated for consistency with the Web IDL specification [WebIDL].

Section 3.10.2, The q element # T

In this section, some wording changes were made, four examples were added, and the following statement was added:

Quotation punctuation (such as quotation marks), if any, must be placed inside the q element.

Section 3.10.3, The cite element # T

In this section, more examples were added, and the text defining the meaning of the cite element, which had read simply, “The cite element represents a citation: the source, or reference, for a quote or statement made in the document”, was expanded to read:

The cite element represents the title of a work (e.g. a book, a paper, an essay, a poem, a score, a song, a script, a film, a TV show, a game, a sculpture, a painting, a theatre production, a play, an opera, a musical, an exhibition, etc). This can be a work that is being quoted or referenced in detail (i.e. a citation), or it can just be a work that is mentioned in passing.

A person’s name is not the title of a work — even if people call that person a piece of work — and the element must therefore not be used to mark up people’s names. (In some cases, the b element might be appropriate for names; e.g. in a gossip article where the names of famous people are keywords rendered with a different style to draw attention to them. In other cases, if an element is really needed, the span element can be used.)

A ship is similarly not a work, and the element must not be used to mark up ship names (the i element can be used for that purpose).

Section 3.10.7, The mark element [was: the m element] # T

The m element was renamed mark; in this section, the set of examples was significantly enlarged, and the text defining the meaning of the element, which had read simply, “The m element represents a run of text marked or highlighted”, was expanded to read:

The mark element represents a run of text in one document marked or highlighted for reference purposes, due to its relevance in another context. When used in a quotation or other block of text referred to from the prose, it indicates a highlight that was not originally present but which has been added to bring the reader’s attention to a part of the text that might not have been considered important by the original author when the block was originally written, but which is now under previously unexpected scrutiny. When used in the main prose of a document, it indicates a part of the document that has been highlighted due to its likely relevance to the user’s current activity.

Section 3.10.8, The dfn element # T

The text defining the dfn elements has changed significantly. The changes include:

  • The most significant change is that text describing a mechanism by which the dfn element could be used to enable automatic cross-references has been removed completely, and replaced by a statement that An a element that links to a dfn element represents an instance of the term defined by the dfn element.
  • Text that had previously read, “The paragraph, description list group, or section that contains the dfn element contains the definition for the term given by the contents of the dfn element” now reads (change highlighted): The paragraph, description list group, or section that is the nearest ancestor of the dfn element must also contain the definition(s) for the term given by the dfn element.
  • The following conformance requirement was removed completely: “There must only be one dfn element per document for each term defined (i.e. there must not be any duplicate terms).”
  • An additional example was added to illustrate use of the a element in conjunction with the dfn element (to make an explicit cross-reference to a defining instance of a particular term).

Section 3.10.9, The abbr element # T

Refinements and changes were made to the text in this section; the changes include:

  • The text defining the meaning of the abbr element was refined to now read (changes highlighted): The abbr element represents an abbreviation or acronym, optionally with its expansion. The title attribute may be used to provide an expansion of the abbreviation. The attribute, if specified, must only contain an expansion of the abbreviation, and nothing else.
  • The following statement was removed completely: “The title attribute may be omitted if there is a dfn element in the document whose defining term is the abbreviation (the textContent of the abbr element).”
  • The following authoring-conformance requirement was added: If an abbreviation is pluralised, the expansion’s grammatical number (plural vs singular) must match the grammatical number of the contents of the element.
  • The set of examples was expanded and includes the addition of an example prefaced by the following text: This paragraph marks up an abbreviation without giving an expansion, possibly as a hook to apply styles for abbreviations (e.g. smallcaps).

Section 3.10.11, The progress element # T

In this section, a conformance statement was updated to read: If the progress bar is an indeterminate progress bar, then the position DOM attribute must return -1. (The statement had previously indicated that is should return 1.) Also, the following note was added: The progress element is the wrong element to use for something that is just a gauge, as opposed to task progress. For instance, indicating disk space usage using progress would be inappropriate. Instead, the meter element is available for such use cases.

Section 3.10.12, The meter element # T

In this section, the following changes were made:

  • In the interface definition for the HTMLMeterElement interface, the data type for all attributes was changed from long to float.
  • A statement providing authoring requirements was changed to now read (change highlighted): The recommended way of giving the value is to include it as contents of the element, either as two numbers (the higher number represents the maximum, the other number the current value, and the minimum is assumed to be zero), or as a percentage or similar (using one of the characters such as “%”), or as a fraction.
  • A statement regarding the conformant values for the attributes on the meter was added; it states that “their values must satisfy the following inequalities”:
    • min ≤ value ≤ max
    • min ≤ low ≤ high ≤ max
    • min ≤ optimum ≤ max

Section 3.10.13, The code element # T

In this section, the following statement was removed completely: “the title attribute has special semantics on this element when used with the dfn element”, and another example was added.

Section 3.10.14, The var element # T

In this section, the following statement was removed completely: “the title attribute has special semantics on this element when used with the dfn element”.

Section 3.10.15, The samp element # T

In this section, the following statement was removed completely: “the title attribute has special semantics on this element when used with the dfn element”.

Section 3.10.17, The sub and sup elements # T

In this section, the following note was added: Authors are encouraged to use MathML for marking up mathematics, but authors may opt to use sub and sup if detailed mathematical markup is not desired.

Section 3.10.18, The span element # T

In this section, the following statement was removed completely: “the title attribute has special semantics on this element when used with the dfn element”; also removed was a statement that the span element can be useful “when used in conjunction with the dfn element”.

Section 3.10.19, The i element # T

In this section, the following changes were made:

  • A statement was removed completely: “the title attribute has special semantics on this element when used with the dfn element”.
  • A refinement was made to one of the examples.
  • The following note was added:

    Authors are encouraged to use the class attribute on the i element to identify why the element is being used, so that if the style of a particular use (e.g. dream sequences as opposed to taxonomic terms) is to be changed at a later date, the author doesn’t have to go through the entire document (or series of related documents) annotating each use.

Section 3.10.22 [new], The ruby element # T

This section is newly added. It concerns the ruby element, which allows more spans of content to be marked up with ruby annotations (sometimes used, for example, with East Asian characters to provide “readings” or pronunciations for the characters).

Section 3.10.23 [new], The rt element # T

This section is newly added. It concerns the rt element, which is used to mark up the “text component” of a ruby annotation.

Section 3.10.24 [new], The rp element # T

This section is newly added. It concerns the rp element, which can be used to provide parentheses around a ruby “text component” of a ruby annotation, to be shown by user agents that don’t support ruby annotations.

Section 3.10.25 [new], Usage summary # T

This section is newly added. It is a placeholder with an editorial note that reads, “We need to summarise the various elements, in particular to distinguish b/i/em/strong/var/q/mark/cite.”

Section 3.10.26 [new], Footnotes # T

This section is newly added. The introduction to the section states, ”HTML does not have a dedicated mechanism for marking up footnotes. Here are the recommended alternatives”, and the section includes descriptions and examples of use of the title attribute, a element, and the aside element in marking up footnote content.

Section 3.11 [was 3.13], Edits # T

This section concerns the ins and del elements. In the introduction to this section, a large note with examples was moved out to form a separate subsection, “Edits and paragraphs” (which notes and illustrates the difficulties of attempting to mark up edits that cross implied paragraphs). The text of the sections on the ins and del themselves remains unchanged.

Section 3.11.4 [new], Edits and paragraphs # T

This subsection was created by moving a large note out of the introduction to its parent section, “Edits”. The content of this subsection provides information and examples illustrating the difficulties of attempting to mark up edits that cross implied paragraphs).

Section 3.11.5 [new], Edits and lists # T

This section, which is newly added, relates to use of the ins and del elements with list items. The text provides both examples and authoring-conformance requirements, and begins with the following statement: The content models of the ol and ul elements do not allow ins and del elements as children. Lists always represent all their items, including items that would otherwise have been marked as deleted.

Section 3.12 [was 3.14], Embedded content # T

This section concerns elements used to embed non-text content in HTML pages, primarily binary media content (such as video and audio content, static images, images that are dynamically created through scripting), but also content in other markup languages (SVG and MathML).

Section 3.12.1, The figure element # T

In this section, the following changes were made:

  • The category “sectioning root” was added to the list of categories to which the figure element belongs.
  • The content model for the element was changed to make the legend element optional as a child of figure (instead of being a required child), and the first statement in the prose description of the element was updated to read, “The figure element represents some flow content, optionally with a caption, which can be moved away from the main flow of the document without affecting the document’s meaning.
  • The following statement was added:

    The element can thus be used to annotate illustrations, diagrams, photos, code listings, etc, that are referred to from the main content of the document, but that could, without affecting the flow of the document, be moved away from that primary content, e.g. to the side of the page, to dedicated pages, or to an appendix.

  • Several examples were added.

Section 3.12.2, The img element # T

In this section, the following changes were made:

  • The title of a subsection that discusses specific use cases from the element was changed from “A key part of the content that doesn’t have an obvious textual alternative” to simply, “A key part of the content”. The text of that same subsection was changed to now read:

    In some cases, the image is a critical part of the content. This could be the case, for instance, on a page that is part of a photo gallery. The image is the whole point of the page containing it.

    When it is possible for alternative text to be provided, for example if the image is part of a series of screenshots in a magazine review, or part of a comic strip, or is a photograph in a blog entry about that photograph, text that conveys can serve as a substitute for the image must be given as the contents of the alt attribute.

    In a rare subset of these cases, there might be no alternative text available. This could be the case, for instance, on a photo upload site, if the site has received 8000 photos from a user without the user annotating any of them. In such cases, the alt attribute may be omitted, but the alt attribute should be included, with a useful value, if at all possible.

    In any case, if an image is a key part of the content, the alt attribute must not be specified with an empty value.

  • The alt text for the “Screenshot of a KDE desktop” example was expanded.
  • The prefatory text for one of the examples was updated to read: A photo on a photo-sharing site, if the site received the image with no metadata other than the caption.
  • A portion of a note that had read, “the alt attribute should only be omitted when no alternative text is available and none can be made available, e.g. on automated image gallery sites” was revised to now read (change portion highlighted), the alt attribute is only allowed to be omitted when no alternative text is available and none can be made available, e.g. on automated image gallery sites.
  • A statement that had read, “Once the download has completed, if the image is a valid image, the user agent must fire a load event on the img element” was emended to read (added text highlighted), Once the download has completed, if the image is a valid image, the user agent must fire a load event on the img element (this happens after complete starts returning true).
  • A note was added with the following text: The value of complete can change while a script is exe