この文書「HTML 5 パブリケーション・ノート」は、W3CHTML ワーキンググループ による「HTML 5 Publication Notes (W3C Working Group Note 10 June 2008)」の日本語訳です。

規範的な文書は原文のみとなっています。この日本語訳は参考情報であり、正式な文書ではないことにご注意ください。また、翻訳において生じた誤りが含まれる可能性があります。

原文が勧告 (Recommendation) ではなく、部会ノート (Working Group Note) であることにご注意ください。

原文の最新版 は、この日本語訳が参照した版から更新されている可能性があります。また、この日本語訳自身も更新されている可能性があります。日本語訳の最新版は、W3C 仕様書 日本語訳一覧 から参照することができます。

更新日:
2008-06-24
公開日:
2008-06-11
翻訳者:
矢倉 眞隆 <>
W3C

HTML 5 パブリケーション・ノート

2008 年 6 月 10 日付 W3C 部会ノート (Working Group Note)

この版:
http://www.w3.org/TR/2008/NOTE-html5-pubnotes-20080610/
最新版:
http://www.w3.org/TR/html5-pubnotes/
編集者:
Michael(tm) Smith, W3C <mike@w3.org>

目次にスキップ

概要

この文書は、2008 年 6 月 10 日版の HTML 5 仕様 [HTML5] の草案について、補足的な情報を提供するものです。主に、2008 年 1 月 22 日に公開された、HTML 5 の最初の草案 (First Public Working Draft、FPWD) [HTML5FPWD] からの変更点を記載しています。

この文書のステータス

この章は、この文書の公開時におけるステータスについて説明しています。このため、他の仕様がこの文書を上書きしている可能性があります。W3C による他の出版物およびこの技術レポートの最新版は W3C 技術レポートインデックス (http://www.w3.org/TR/) で探すことができます。

この文書に対するコメントは、public-html-comments@w3.org (アーカイブ) にお願いします。

この文書は W3C Interaction DomainHTML Activity に属する、HTML ワーキンググループ が作成しています。編集版ですが、この文書の最新版は W3C ソースリポジトリ で読むことができます。

部会ノートとしての公開は、W3C メンバーによる支持を意味するものではありません。この文書は更新されたり他の文書と置き換えられたり、また破棄される可能性もある草稿段階の仕様書です。策定中ということを明記せずに、この文書を引用することは適当でありません。

この文書は 5 February 2004 W3C Patent Policy の下で活動するグループにより作成されました。W3C は 特許情報の開示に関する公開リスト を関連する団体と共に、その成果物とあわせて管理しています。リストには情報開示に関する説明もありますので、ご参照ください。特許について十分に知識のある人物が、当該仕様に関し Essential Claim(s) が認められると判断した場合は、W3C 特許方針の第6章 に従い情報を開示する必要があります。

目次

要約: 主な変更点 # T

このセクションでは、2008 年 1 月 22 日の草案公開以降に HTML 5 に行われた変更のうち、大きなものを取り上げています。詳細は後につづく、セクションごとの変更点をご覧ください。(注: この要約は HTML 5 differences from HTML 4 document [HTML4DIFFS] で管理されているものをコピーしてきたものです。)

  • ping 属性の実装、またその記述についての詳細が変更されました。
  • <meta http-equiv=content-type> もまた、文字エンコーディングの指定として許可されるようになりました。
  • canvas 要素の API が整理されました。また、文字を描画する機能が追加されました。
  • globalStoragelocalStorage と名前を変え、また same-origin ポリシーの制限が課せられました。また、関連するイベントディスパッチについての説明が明確化されました。
  • postMessage() API が変更されました。URI ではなくメッセージの origin のみが expose されるようになりました。また、ターゲット文書の origin を指定する二つ目の引数が必須となりました。
  • ドラッグ & ドロップ API が修正されました。また、dataTransfer オブジェクトは送信されるデータの型を指定する types 属性を持つようになりました。
  • m 要素が mark 要素に変更されました。
  • サーバー送信機能が変更され、より明確なものとなりました。また、古い実装でも動作するよう、新しいフォーマットを利用します。
  • figure 要素はキャプションを持たなくてよいようになりました。
  • ol 要素に reversed 属性が加わりました。
  • フィードバックを受け、文字エンコーディング判定が変更されました。
  • 実装からのフィードバックにより、HTML パーサーのセクションでさまざまな変更が行われました。
  • Editing に関するセクションに、さまざまな変更が行われました。queryCommandEnabled() メソッドや、関連するメソッドが追加されています。
  • td 要素に、headers 属性が追加されました。
  • table 要素は新しく createTBody() メソッドを持つようになりました。
  • MathML のサポートが、HTML パーサーに追加されました。(SVG については、SVG WG からの意見を待っている最中です。
  • 作成者が定義できる属性が追加されました。作成者は data-name という形式で属性を記述することができます。データへのアクセスは、dataset[name] という形式で DOM から行うことができます。
  • q 要素が、ブラウザが自動的に引用符を付加するのではなく、内容が引用符を持たなければならないと定義されました。
  • target 属性に _blank が追加されました。
  • showModalDialog API が追加されました。
  • document.domain API が追加されました。
  • source 要素は新しく pixelratio 属性を持つようになりました。これは、エンコードに問題のあるビデオに対して利用します。
  • DOM 属性 bufferedBytestotalBytesbufferingThrottled が、video 要素に追加されました。
  • Media の begin イベントが Progress Events との整合性をとるため、loadstart に改称されました。
  • script 要素に、charset 属性が追加されました。
  • iframe 要素に、サンドボックス機能を提供する sandbox 属性と seamless 属性が追加されました。
  • ルビをサポートする rubyrtrp 要素が追加されました。
  • ユーザーに新着情報メッセージを提供するための、showNotification() メソッドが追加されました。
  • beforeprintafterprint イベントのサポートが追加されました。

最初の草案からの変更点 # T

このセクションは、2008 年 6 月 10 日版の HTML 5 仕様 [HTML5] の草案について、2008 年 1 月 22 日に公開された HTML 5 の最初の草案 (First Public Working Draft、FPWD) [HTML5FPWD] からの変更点を、セクションごとに紹介しています。この文書には、編集上の変更点は含まれおらず、本質的な変更のみが記載されています。また、この文書は “スタンドアロン” な文書として読めるよう構成されています。つまり、読者は HTML 5 仕様を直接読むことや、以前の草案との差分をとる必要なく、この文書だけで何が変わったのかを知ることができるのです。

訳注: 以下、セクション名は訳さず英語のままとしています。これは HTML 5 仕様書の日本語訳が存在していないためです。

Section 1, Introduction # T

HTML 5 仕様書の “Introduction” は、HTML 5 の背景や仕様書の文言に関して、規範的な情報と非規範的な情報 (参考情報) を提供しています。

Section 1.2, Structure of this specification # T

この非規範的なセクションは、仕様の主要な部分について情報を提供しています。このセクションにおいて、次の変更が加えられました。

  • 付属書 “WYSIWYG editors” についての言及が削除されました。これは、付属書自体が削除されたことによるものです。

Section 1.3, Conformance requirements # T

このセクションでは、Web ブラウザやユーザーエージェント、適合性チェッカー、データマイニングツール、オーサリングツール、マークアップジェネレータに対して、適合性要件を提供しています。このセクションにおいて、次の変更が加えられました。

  • このセクションの導入部分にあった、“SHALL” と “SHALL NOT” という単語が削除されました。これは、これらの単語が “RFC2119 の単語として解釈される恐れがある” と判断されたためです。
  • “Conformance checkers” の一部が次のように更新されました (追加されたテキストをハイライトしています)。

    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).

    訳: 「自動適合性チェッカーは、作成者の意図を解釈する必要のあるエラーについては、その検出が免除されます。たとえば、引用文を持たない blockquote 要素は不適合ですが、このような文書に対して人による判断を求めない適合性チェッカーは、引用文のみを含む blockquote 要素をチェックする必要はありません。」

    また、関連する文も browsing context の概念を参照するように更新されました。

    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.

    訳: 「適合性チェッカーは、検証する文書が browsing context 無しでパースされた場合、また browsing context ありでパースされた場合という、ふたつの条件で文書の適合性を検証する必要があります。browing context がない状態とは、スクリプトが実行されておらず、またパーサーの script フラグが無効にされていることを言います。browsing context がある場合には、スクリプトが実行中にない状態で、文書が不適合でないかを確認する必要があります。」

  • “1.3.1 Common conformance requirements for APIs exposed to JavaScript” において、例外 NOT_SUPPORTED_ERR、TYPE_MISMATCH_ERR が投げられる条件のいくつかが、Web IDL 仕様 [WebIDL] との整合性のために削除されました。
  • XML プロセッサについての注釈で、次の文が完全に削除されました

    For interoperability, authors are advised to avoid optional features of XML.

    訳: 「相互運用性のため、作成者は XML の付加的な機能を使わないことが推奨されます。」

  • “1.3.2 Dependencies” において、注釈に加筆が行われました (追加された箇所をハイライトしています)。

    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.)

    訳: 「xml:base 属性をスクリプトなどから、HTML 文書のフラグメントに配置することができます。(しかし、xml:base 属性は HTML 文書では許可されていないことから、このスクリプトは適合しません。)

Section 1.4, Terminology # T

このセクションは、仕様書の中で利用される技術用語について説明しています。このセクションにおいて、次の変更が加えられました。

  • 仕様書で利用される IDL について言及する段落が短くなり、次のようになりました。

    DOM interfaces defined in this specification use Web IDL. User agents must implement these interfaces as defined by the Web IDL specification.

    訳: 「この仕様で定義されている DOM インターフェースは Web IDL を利用しています。ユーザーエージェントはインターフェースを Web IDL 仕様で定義されているように実装する必要があります。」

  • 次の “plugin” に関するテキストが追加されました。いくつかは embed 要素のセクションにあったものです。

    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.

    訳: 「プラグインという用語は、いかなるコンテントハンドラをも指しますが、多くの場合第三者によるものです。ユーザーエージェントがネイティブにサポートしない Web コンテンツや、DOM に現れないコンテンツ、またユーザーエージェントのインターフェース上に描画されるコンテンツなどを処理するものがプラグインです。」

    「プラグインの例として、PDF ビューアが挙げられるでしょう。ユーザーが PDF ファイルを開いたとき、プラグインはブラウジングコンテキストの中で実行されます。」

    「注: この仕様はプラグインとの交流を行うためのメカニズムを定義していません。これは、プラグインがユーザーエージェント固有であり、またプラットフォーム固有であるからです。UA は Netscape Plugin API などのプラグインメカニズムをサポートするかもしれませんが、リモートコンテンツコンバータや、特定のコンテンツに対しそれをネイティブにサポートすることもできます。」

    「警告!: ブラウザはプラグインを動作させる外部コンテンツに対して、特に慎重になるべきです。サードパーティによるソフトウェアが、ユーザーエージェント自体と同じアクセス権を持っている場合、サードパーティのソフトに潜む脆弱性が、ユーザーエージェントにも影響してしまいます。」

Section 2, The Document Object Model # T

HTML 実装の適合基準は、Document Object Model (DOM) への処理という観点から定義されています。このセクションでは、DOM で表現される言語とを定義し、仕様の基礎を構成しています。

Section 2.1, Documents # T

このセクションでは、Document オブジェクトを定義しています。このセクションにおいて、次の変更が加えられました。

  • 次の属性が HTMLDocument インターフェースのインターフェース定義に加わりました。
    • charset
    • characterSet
    • defaultCharset
    • embeds
    • plugins
    • readyState
    • scripts
    • queryCommandEnabled
    • queryCommandIndeterm
    • queryCommandState
    • queryCommandSupported
    • queryCommandValue
    また、インターフェースは Web IDL 仕様 [WebIDL] との整合性のため更新されました。さらに、誤って属性とされていた hasFocus() メソッドの記述が修正されました。
  • “2.1.2 Resource metadata management” において、異なるドメインのホスト間で、お互いの DOM にアクセスできるようにする DOM 属性 domain に関連する内容が、“4.3 Origin” に移されました。この属性は “4.3.1 Relaxing the same-origin restriction” で定義されるアルゴリズムの基礎をなすものです。
  • おなじく “2.1.2 Resource metadata management” において、DOM 属性 referrer が返すデータの適合基準が改められました。また、いくつかの文が active documentsource browsing context を参照するようになりました。さらに、次の注釈が加えられました。

    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).

    訳: 「referrer が暗号化されたプロトコルを利用する一方で、現在のページがそうでない場合、ユーザーエージェントは一般的に referrer を通知しないよう設定されています (例: https: なページから http: なページに移動する)。」

    また、このセクションの後半に次の項目が追加されました。
    • 互換モード (quirks mode)
    • 文書の文字エンコーディングと DOM 属性 charsetcharacterSetdefaultCharset
    • document readiness、readystatechanged イベントと、DOM 属性 readyState

Section 2.2, Elements # T

このセクションでは、すべての HTML 要素の基礎となる DOM インターフェースである、HTMLElement インターフェースが定義されています。このセクションにおいて、次の変更が加えられました。

  • 次の属性が HTMLElement インターフェースのインターフェース定義に追加されました。
    • dataset
    • isContentEditable
    • style
    • onstorage
  • “2.2.1 Reflecting content attributes in DOM attributes” にて、数多くの文言が修正されました。特に、浮動小数点型の DOM 属性をどう処理するかについて、多くの変更が行われています。

Section 2.3, Common DOM interfaces # T

このセクションでは、コレクション (collections) として知られる DOM インターフェース、DOMTokenListDOMStringMap、および HTML のための DOM feature strings が定義されています。このセクションにおいて、次の変更が加えられました。

  • “2.3.1 Collections” において、Web IDL 仕様 [WebIDL] との整合性のため、インターフェース HTMLCollectionHTMLFormControlsCollectionHTMLOptionsCollectionDOMTokenList の定義がアップデートされました。また、ECMAScript 実装のための適合基準を定めた箇所が削除されました。
  • “2.3.2 DOMTokenList” において、メソッド add()toggle() のアルゴリズムが少し修正されました。
  • “2.3.3 DOMStringMap” が追加されました。このセクションは、名前と値のペアからなる集合を表現するインターフェースを定義します。

Section 2.4, DOM tree accessors # T

このセクションでは、DOM ツリー内の htmlheadtitlebody 要素の配置について、また関連する DOM 属性、そしてメソッド getElementsByName()getElementsByClassName() が定義されています。このセクションにおいて、次の変更が加えられました。

  • title をセットする際に実行される必要のあるアルゴリズムについて、修正が行われました。
  • DOM 属性 embedspluginsscripts について、適合基準が追加されました。

Section 2.5, Dynamic markup insertion # T

このセクションでは、スクリプト作成者がマークアップを動的に文書に挿入できるためのメカニズムを定義します。このセクションにおいて、次の変更が加えられました。

  • “2.5.1 Controlling the input stream” にて、open() メソッドがコールされた時のアルゴリズムに、文書の文字エンコーディングを UTF-16 にするというステップが追加されました。
  • “2.5.3 Dynamic markup insertion in XML” に、次の文が加わりました。

    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

このセクションでは、特定の DOM API が返すデータの case-insensitivity と、case 変換 (case-changing) の挙動について定めています。このセクションには変更が加えられていません。

Section 3, Semantics and structure of HTML elements # T

このセクションでは、各 HTML 要素の意味や内容モデルを定義しています。また、“作成者の適合性” や “文書の適合性” と呼ばれる、作成者が適合する HTML を作成できるようにするための要件と、“実装の適合性” や “ユーザーエージェントの適合性” と呼ばれる、実装が適合する HTML を作成できるようにするための要件、計ふたつの要件を定義しています。

Section 3.2, Common microsyntaxes # T

このセクションでは、HTML で利用されるインスタンスのうち、特定のデータ型 (日付や数値など) を持つものに対する適合基準と、それらをどのようにパースするかを記しています。このセクションにおいて、次の変更が加えられました。

  • “3.2.2 Boolean attributes” において、真偽値属性の適合基準が変更されました。これまで空でない真偽値は小文字にする必要があるとされていたのが、“a case-insensitive match for the attribute’s canonical name” でなければならないとされました。
  • “3.2.3 Numbers” の “rules for parsing a list of integers” アルゴリズムに数多くの変更が加えられました。
  • “3.2.9 URLs” が追加されました。しかしこのセクションはプレースホルダであり、現在は何が将来このセクションに含まれるかを書いた、編集上の注釈があるのみです。
  • “3.2.6 Tokens” に、次の文が追加されました。

    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.

    訳: 「空白で区切られたトークンは許可された値のセットである場合があります。決められた値が用意されている場合、トークンにはその値のみを含むことができます。それ以外の値は不適合となります。決められた値が用意されていない場合は、すべての値が適合します。」

  • “3.2.8 References” にて、“hashed ID reference” というフレーズが “hash-name reference” に改称されました。

Section 3.3, Documents and document fragments # T

このセクションは HTML で利用される “semantics”、“structure”、“transparent”、“paragraph” という用語について、またいくつかある、要素の分類を定義しています。このセクションにおいて、次の変更が加えられました。

  • “3.3.1 Semantics” にて、作成者の適合性に関する文が次のように書き直されました。

    Authors must not use elements, attributes, and attribute values for purposes other than their appropriate intended semantic purpose.

    訳: 「作成者は要素や属性、属性値を、その意図や意味に反する目的で使うことはできません。」

    また、関連する例が少し変更されました。
  • “3.3.2 Structure” にて、次の文が完全に削除されました

    Authors must only put elements inside an element if that element allows them to be there according to its content model

    訳: 「作成者は内容モデルに沿って、その内容として許可された要素のみを記述する必要があります。」

    また、作成者の適合性について記した文が次のように書き直されました。

    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

    訳: 「作成者は HTML 名前空間に属する要素を、各要素の規定や他の仕様で明示的に許可している箇所以外に利用することはできません。」

  • 同じく “3.3.2 Structure” に、構造に関する適合性要件を説明するため、Atom 仕様の例が追加されました。また、次の文が例とともに追加されました。

    elements in the HTML namespace may be orphan nodes (i.e. without a parent node)

    訳: 「HTML 名前空間は親ノードのない orphan ノードになる可能性があります。」

  • “3.3.3 Kinds of content” で定義される用語 “prose content” が、 flow content へと変更されました。このため、仕様書の他の部分にも変更が行われています。
  • “3.3.4 Transparent content models” にて、小さな文言の変更が行われました。

Section 3.4, Global attributes # T

このセクションでは、全ての HTML 要素に記述することのできる属性を定義しています。このセクションにおいて、次の変更が加えられました。

  • style 属性がグローバル属性に追加されました。この属性を説明するサブセクションも追加されています。
  • onstorage 属性がグローバル属性のリストに追加されました。
  • 次の適合性に関する文が追加されました。

    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.

    訳: 「カスタムデータ属性 (例: data-foldername、data-msgid) は、どの HTML 要素にも記述することができます。この属性は、ページ固有のカスタムデータを保存するためのものです。」

    また、“3.4.8 Embedding custom non-visible data” に、data- 属性と、関連する DOM 属性 dataset についての適合性要件が追加されました。
  • 適合性に関する次の文が追加されました。

    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.

    訳: 「HTML 文書において、html 要素、そして HTML 名前空間に属さない親要素を持つ HTML 要素は、値に “http://www.w3.org/1999/xhtml”を持つ xmlns 属性を指定することができます。これは、XML 文書には当てはまりません。」

    また、xmlns を持つことによる影響について書かれた、2 つの注釈が加わりました。
  • 新しく “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.

    訳: 「xml:base 属性は XML Base で定義されています。」

    「xml:base 属性は XML 文書で利用することができます。しかし、作成者は HTML 文書で xml:base 属性を利用することはできません。」

  • いくつかのサブセクションにて、文言の修正が行われました。

Section 3.5, Interaction # T

このセクションでは、要素のアクティベーション、フォーカス、スクロールなど、インタラクティブな DOM のユーザーエージェントにおける挙動について、適合性要件を定義しています。このセクションにおいて、次の変更が加えられました。

  • “3.5.2 Focus” にて、tabindex 属性に関する要件のいくつかが書き直されました。
  • “3.5.2 Focus” の文言が修正されました。悪意のある作成者に対処すべく、.focus()、.blur()、onfocus、onblur が無限ループを必要としないように定義されました。また、これは複数の iframe やウィンドウ、親のない要素という観点からよく定義されるとも記しています。また、“focusable” という用語の定義も追加されました。

    An element is focusable if the tabindex attribute’s definition above defines the element to be focusable and the element is being rendered.

    訳: 「tabindex 属性の定義において、その要素が focusable であり、またその要素がレンダリングされているときに、その要素は focusable となります。」

    さらに、scrollIntoView() が呼び出された場合に、次の要件が加えられました。

    Visual user agents should further scroll horizontally as necessary to bring the element to the attention of the user.

    訳: 「視覚的なユーザーエージェントは必要に応じて水平方向にスクロールし、ユーザーの注意を引くことが推奨されます。」

  • 同じく “3.5.2 Focus” にて、誤って属性とされていた hasFocus() の記述が修正されました。

Section 3.6, The root element # T

このセクションは html 要素の意味や構造を定義しています。このセクションでは、xmlns 属性が “3.4 Global attributes” に移動したという変更のみが行われました。

Section 3.7, Document metadata # T

このセクションは head 要素と、適合する子要素の意味や構造を定義しています。

Section 3.7.3, The base element # T

このセクションでは “valid browsing context name” が valid browsing context name or keyword に修正されました。

Section 3.7.5, The meta element # T

このセクションでは、次の変更が加えられました。

  • 次の文が加えられました。

    The charset attribute specifies the character encoding used by the document. This is called a character encoding declaration

    訳: 「charset 属性は文書の文字エンコーディングを指定します。これは、文字エンコーディング宣言と呼ばれます。」

  • “3.7.5.4 Specifying the document’s character encoding” が一部書き直され、また次の文が追加されました。

    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.

    訳: 「文書が charset 属性付きの meta 要素または、エンコーディング判定状態にある meta 要素を持つ場合、利用されるエンコーディングは ASCII 互換のものである必要があります。」

    「ASCII 互換のエンコーディングは、US-ASCII (ANSI_X3.4-1968) の範囲 0x09 - 0x0D、0x20、0x21、0x22、0x26、0x27、0x2C - 0x3F、0x41 - 0x5A、0x61 - 0x7A におけるスーパーセットを指します。」

  • name 属性の値として定義されていた dns が削除されました。
  • name 属性の値として、description が次の定義とともに追加されました。

    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.

    訳: 「値にはページの概要を記述する必要があります。形式は自由ですが、たとえば検索エンジンなどのディレクトリに対して、適切なものでなければいけません。」

  • name 属性の値として、application-name が次の定義とともに追加されました。

    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.

    訳: 「値には Web アプリケーションの名前を記述する必要があります。形式は自由です。しかしながら、そのページが Web アプリケーションでない場合、application-name を利用してはいけません。ユーザーエージェントは指定されたアプリケーション名を、title の代わりに利用することができます。これは、Web アプリケーションにおいて、title がアプリケーション名以外にも、アプリケーションの状態を含んだり、はたまたアプリケーション名を書き換えることがしばしば行われるからです。」

  • キーワード Content-Type と、関連する Encoding declaration ステートが、http-equiv 属性に指定できる値の表に追加されました。また、Encoding declaration ステートの定義も追加されました。さらに、“3.7.5.4 Specifying the document’s character encoding” が修正されました。
  • “Refresh state” のアルゴリズムの一部が、文書の source browsing context を参照するように書き直されました。

Section 3.7.6, The style element # T

このセクションでは、media 属性の定義が書き直されました。

Section 3.8, Sections # T

このセクションでは、文章をセクションに分けるための要素とその構造を定義しています。

Section 3.8.1, The body element # T

body 要素の DOM インターフェース定義が追加されました。

Section 3.8.3, The nav element # T

このセクションでは、次の文とともに例が追加されました。

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.

訳: 「リンクの集まりすべてが、nav 要素の中に記述される必要はありません。必要なナビゲーションブロックを形成するセクションのみが、nav 要素として適切です。たとえば、ページフッタにはサイト内の各種ページにジャンプするリンクがいくつかありますが、これらは footer 要素として記述するのが適切でしょう。」

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

blockquote 要素のセクションは、“3.9 Grouping content” のサブセクションになりました。

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

このセクションでは、例が 2 つ追加されました。

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

このセクションでは、文言の修正が行われました。

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

このセクションでは、address 要素が body に適用される場合、その内容は文書全体に適用されることになる (applies to the body element, then it instead applies to the document as a whole) という文が追加されました。また、“sectioning element” というフレーズが sectioning content element に変更されました。

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

このセクションでは、いくつかの文が大きく書き直されました。次にあるのは、具体的な変更点です。

  • sectioning roots という用語が定義されました。
  • “3.8.10.1 Creating an outline” において、アウトラインを構成するステップがアルゴリズムに追加されました。また、いつくか詳細が追加されました。
  • 最後のサブセクションにて、“headers” というフレーズが “headings” に変更され、タイトルも “Distinguishing site-wide headings from page headings”となりました。

Section 3.9, Grouping content # T

このセクションは、段落やリストなど、文章を論理構造にまとめるための要素を定義しています。今回の草案で、セクションのタイトルが、“Prose” から “Grouping content”に変更になりました。

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

このサブセクションは、pre 要素が “Grouping content” のサブセクションになったことをうけ作成されました。また、次の注釈が加わりました。

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

訳: 「HTML 構文では、pre 要素の直後にある改行文字は取り除かれます。」

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

このサブセクションは、blockquote 要素が以前の “Sections” から “Grouping content” へ移動したことをうけ作成されました。また、いくつかの文言が修正されました。

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

このセクションでは、次の変更が行われました。

  • reversed 属性が適合する属性として加わりました。また、関連する DOM 属性 reversedHTMLOListElement インターフェースのインターフェース定義に追加されました。
  • reversed 属性と DOM 属性 reversed の適合基準が追加されました。
  • 要素の意味を定義していた “The ol element represents an ordered list of items (which are represented by li elements)“ という文が、次のように書き直されました。

    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.

    訳: 「ol 要素は、項目の並び意味を持つリストを表します。順序に意味があるかどうかは、項目を並び替えたとき、その意味が変わるかどうかを調べることで確かめられます。」

  • 次の文が追加されました。

    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, ...).

    訳: 「reversed 属性は boolean 属性です。この属性が指定されている場合、そのリストが降順 (…, 3, 2, 1) で並んでいることを表します。属性が指定されていない場合、そのリストは昇順に並んでいることを表します。」

  • reversed 属性と DOM 属性 reversed の適合性に関する文が、必要なところに追加されました。
  • 例が 2 つ追加されました。

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

このセクションでは、ul 要素の定義である “The ul element represents an unordered list of items” という文が次のように書き直されました。

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

訳: 「ul 要素は、項目の並びに特に意味を持たないリストを表します。これは項目の順番を入れ替えても、リストの意味は変化しないことを表します。」

また、例が 2 つ追加されました。

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

このセクションでは、例が 2 つ追加されました。

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

このセクションでは、次の変更が加えられました。

  • “unordered association list” を導入する基準が dl 要素の定義から削除され、次のようになりました。

    The dl element introduces an association list consisting of zero or more name-value groups (a description list).

    訳: 「dl 要素は 0 以上の名前と値からなるグループからなるリスト (説明リスト) を表します。」

  • 文言が大きく書き直され、また文がいくつか追加されました。
  • 例がいくつか追加されました。

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

このセクションでは、次の文が加えられました。

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.

訳: 「dt 要素が dialog 要素の子要素であり、また内容に time 要素が存在するとき、その time 要素は該当する文 (dd 要素) が発言された時間を表します。発言者とは関係しません。」

また、例が 2 つ追加されました。

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

このセクションでは、“セクション” や “グループ” というレベルではなく、“テキストレベル” で文章をマークアップする要素を定義しています。今回の草案から、タイトルが “Phrase elements” から “Text-level semantics” に変更されました。

Section 3.10.1, The a element # T

このセクションでは、HTMLAnchorElement インターフェースの定義が Web IDL 仕様 [WebIDL] との整合性のため更新されました。

Section 3.10.2, The q element # T

このセクションでは、文言の変更と、4 つの例の追加が行われました。また、次の文が追加されました。

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

訳: 「引用符などの引用記号は、q 要素の内容として記述される必要があります。」

Section 3.10.3, The cite element # T

このセクションでは、いくつかの例がさらに追加されました。また、cite 要素の意味を定義していた “The cite element represents a citation: the source, or reference, for a quote or statement made in the document” という文に加筆が行われ、次のようになりました。

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

m 要素は mark 要素に名称が変更されました。このセクションでは、数多くの例の追加や、“The m element represents a run of text marked or highlighted” という文の加筆が行われました。

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

dfn 要素を定義する文が大幅に修正されました。変更点は次のとおりです。

  • 一番大きな変更として、クロスリファレンス作成を行う dfn 要素のメカニズムが削除され、次の文に置き換えられました。

    An a element that links to a dfn element represents an instance of the term defined by the dfn element.

  • “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” という文が次のように書き直されました (変更された箇所をハイライトしています)。

    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.

  • “There must only be one dfn element per document for each term defined (i.e. there must not be any duplicate terms).” という適合性要件が完全に削除されました
  • a 要素と dfn を組み合わせ、特定の単語に対し明示的にクロスリファレンスを作成する例が追加されました。

Section 3.10.9, The abbr element # T

このセクションでは、文章の変更や修正が行われました。

  • abbr 要素を定義する文が、次のように修正されました (変更された箇所をハイライトしています)。

    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 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).” という文が完全に削除されました
  • 次の作成者に対する適合性要件が追加されました。

    If an abbreviation is pluralised, the expansion’s grammatical number (plural vs singular) must match the grammatical number of the contents of the element.

  • いくつかの例が追加されました。この中には、次のようなものが含まれています。

    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

このセクションでは、適合性に関する文が次のように修正されました。

If the progress bar is an indeterminate progress bar, then the position DOM attribute must return -1

(以前の草案では、1 を返すべきと推奨されていました。) また、次の注釈が追加されました。

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

このセクションでは、次の変更が加えられました。

  • HTMLMeterElement インターフェースのインターフェース定義において、すべての属性のデータ型が long から float に変更されました。
  • 作成者の要件が次のように変更されました (変更された箇所をハイライトしています)。

    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.

  • meter 要素の値として適合するものについて述べた文が追加されました。値は次の不等式を満たす必要がある (“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

このセクションでは、“the title attribute has special semantics on this element when used with the dfn element” という文が完全に削除されました。また、例が追加されました。

Section 3.10.14, The var element # T

このセクションでは、“the title attribute has special semantics on this element when used with the dfn element” という文が完全に削除されました

Section 3.10.15, The samp element # T

このセクションでは、“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

このセクションでは、次の注釈が追加されました。

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

このセクションでは、“the title attribute has special semantics on this element when used with the dfn element” という文が完全に削除されました。また、span 要素は dfn 要素と組み合わせて使う (“when used in conjunction with the dfn element”) ことに関する記述が削除されました。

Section 3.10.19, The i element # T

このセクションでは、次の変更が行われました。

  • “the title attribute has special semantics on this element when used with the dfn element” という文が完全に削除されました
  • 例の一つが修正されました。
  • 次の注釈が加えられました。

    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

このセクションは新しく追加されたものです。東アジア圏で文字に “よみ” や発音を付加する、ルビをマークアップするための ruby 要素を定義しています。

Section 3.10.23 [new], The rt element # T

このセクションは新しく追加されたものです。定義される rt 要素は、ルビ文字をマークアップするものです。

Section 3.10.24 [new], The rp element # T

このセクションは新しく追加されたものです。定義される rp 要素は、ルビをサポートしないユーザーエージェントのため、ルビ文字の前後に記述する括弧をマークアップするための要素です。

Section 3.10.25 [new], Usage summary # T

このセクションは新しく追加されたものです。しかし、このセクションはプレースホルダであり、現在は “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

このセクションは新しく追加されたものです。セクションは HTML が脚注をマークアップするための要素を持っていないことに言及し、その代替案を提示しています (”HTML does not have a dedicated mechanism for marking up footnotes. Here are the recommended alternatives”)。代替案には、title 属性、a 要素、そして aside 要素を利用する方法が示されています。

Section 3.11 [was 3.13], Edits # T

このセクションは、ins 要素と del 要素に関するものです。このセクションの導入にあった大きな注釈と例は、新しいサブセクション “Edits and paragraphs” となりました。このサブセクションは、implied paragraphs にまたがる編集をマークアップすることの難しさについて述べています。ins 要素と del 要素に関する文は変更されていません。

Section 3.11.4 [new], Edits and paragraphs # T

このセクションは先述したとおり、親セクション “Edits” の導入部にあった注釈を、新しいサブセクションとしたものです。このサブセクションは、implied paragraphs にまたがる編集をマークアップすることの難しさについて述べています。

Section 3.11.5 [new], Edits and lists # T

この新しいセクションは、ins 要素と del 要素とリスト項目の関係を述べています。テキストには例と作成者のための適合性要件が含まれています。適合性要件は次の文から始まります。

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

このセクションは、テキストではないコンテンツを HTML に埋め込むための要素について解説しています。埋め込みコンテンツ (embedded content) は動画や音声、静的画像、スクリプトにより動的に生成された画像など、主にバイナリ形式を対象としていますが、SVG や MathML など、他のマークアップ言語によるコンテンツも含みます。

Section 3.12.1, The figure element # T

このセクションでは、次の変更が行われました。

  • figure 要素が属するカテゴリに、“sectioning root” が追加されました。
  • figure 要素の中の legend 要素が必須から任意とされました。この変更に伴い、要素の説明も “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 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.

  • 例が追加されました。

Section 3.12.2, The img element # T

このセクションでは、次の変更が行われました。

  • サブセクション “A key part of the content that doesn’t have an obvious textual alternative” のタイトルが “A key part of the content” へと変更され、また内容も次のように修正されました。

    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.

  • “Screenshot of a KDE desktop” という alt 属性に指定された代替テキストに加筆が行われました。
  • 例を説明する文のひとつが、次のように修正されました。

    A photo on a photo-sharing site, if the site received the image with no metadata other than the caption.

  • “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” という注釈が書き直され、次のようになりました (変更された箇所をハイライトしています)。

    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.

  • “Once the download has completed, if the image is a valid image, the user agent must fire a load event on the img element” という文が修正され、次のようになりました (追加されたテキストをハイライトしています)。

    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).

  • 注釈が次のテキストとともに追加されました。

    The value of complete can change while a script is executing.

  • 例が次の説明とともに追加されました。

    A single image can have different appropriate alternative text depending on the context.

    In each of the following cases, the same image is used, yet the alt text is different each time.

Section 3.12.3, The iframe element # T

このセクションでは、かなり大きな変更が行われました。変更により導入された機能は次のとおりです。

  • iframe name ― iframe の 有効ブラウジングコンテキスト名 (valid browsing context name)
  • iframe sandbox ― iframe 内のコンテンツに制限をかける (enables a set of extra restrictions on any content hosted by the iframe)
  • iframe seamless フラグ ― iframe 要素の内容を、親文書においてシームレスに表示されるようにする (indicates that the iframe element’s browsing context is to be rendered in a manner that makes it appear to be part of the containing document (seamlessly included in the parent document).)

上記の機能を導入するに当たり、細かな変更も行われています。

  • 適合する属性に、namesandboxseamlesswidthheight、が、また HTMLIFrameElement インターフェースのインターフェース定義に DOM 属性 namesandboxseamlesswidthheight が追加されました。
  • namesandboxseamlesswidthheight 属性、また DOM 属性 namesandboxseamlesswidthheight の適合基準も追加されました。
  • namesandboxseamless 属性に関するテキストが大量に追加されました。

Section 3.12.4, The embed element # T

このセクションでは、次の変更が行われました。

  • sandboxed plugins browsing context flag” がセットされたときの挙動について、適合基準が追加されました。
  • “handler” という用語が plugin に変更されました。
  • プラグインに関する二つの文が書き直され、“1.4 Terminology” に移動しました。

Section 3.12.5, The object element # T

このセクションでは、次の変更が行われました。

  • 適合する属性に、name 属性が、また HTMLObjectElement インターフェースのインターフェース定義に DOM 属性 name が追加されました。
  • name 属性と DOM 属性 nameの適合基準が追加されました。
  • “handler” という用語が plugin に変更されました。
  • “third-party software package” という用語が plugin に変更されました。
  • plugins aren’t being sandboxed という状態、また “sandboxed plugins browsing context flag” がセットされた場合について文が追加されました。
  • 次の文が追加されました。

    Whenever the name attribute is set, if the object element has a nested browsing context, its name must be changed to the new value. If the attribute is removed, if the object element has a browsing context, the browsing context name must be set to the empty string.

  • object 要素が表すものが何かを調べるアルゴリズムに大規模な変更や加筆が行われました。classid 属性の有無を調べるステップや、その属性値による挙動、また data 属性が存在するときの要件などが含まれます。
  • 次の注釈が追加されました。

    The object element can, in certain cases as described above, instantiate third-party handlers. This specification does not define a mechanism for interacting with third-party handlers, as it is expected to be user-agent-specific. Some UAs might opt to support a plugin mechanism such as the Netscape Plugin API; others may use remote content convertors or have built-in support for certain types.

  • 例が 2 つ追加されました。

Section 3.12.6, The param element # T

このセクションでは、“handlers” という用語が plugins に変更されました。

Section 3.12.7, The video element # T

このセクションでは、次の変更が行われました。

  • video 要素が一時停止状態であるときの適合性用件について、修正が行われました。
  • 動画コンテンツが要素のプレイバックエリアに描画されることに言及する文において、“aspect ratio” が adjusted aspect ratio と呼びかえられました。また次の文が追加されました。

    The adjusted aspect ratio of a video is the ratio of its adjusted width to its intrinsic height. The adjusted width of a video is its intrinsic width multiplied by its pixel ratio.

  • 編集に関する次の注釈が追加されました。

    “The spec does not currently define the interaction of the “controls” attribute with the “height” and “width” attributes. This will likely be defined in the rendering section based on implementation experience. So far, browsers seem to be making the controls overlay-only, thus somewhat sidestepping the issue.”

Section 3.12.9, The source element # T

このセクションでは、次の変更が行われました。

  • pixelratio 属性が適合する属性のリストに加わりました。また、DOM 属性 pixelratioHTMLSourceElement インターフェースのインターフェース定義に加わりました。
  • pixelratio 属性と DOM 属性 pixelratio の適合基準が、次の文とともに追加されました。

    The pixelratio attribute allows the author to specify the pixel ratio of anamorphic media resources that do not self-describe their pixel ratio. The attribute value, if specified, must be a valid floating point number giving the ratio of the correct rendered width of each pixel to the actual width of each pixel in the image (i.e., the multiple by which the video’s intrinsic width is to be multiplied to obtain the rendered width that gives the correct aspect ratio). The default value, if the attribute is omitted or cannot be parsed, is 1.0.

Section 3.12.10, Media elements # T

このセクションでは、次の変更が行われました。

  • HTMLMediaElement インターフェースのインターフェース定義に DOM 属性 bufferingThrottledbufferedBytestotalBytes が追加されました。
  • DOM 属性 bufferingThrottledbufferedBytestotalBytes の適合基準が追加されました。
  • メディア要素からメディアリソースを取得するためのアルゴリズムが修正され、pixelratio 属性の存在とその値をチェックするようになりました。
  • メディア要素のメソッドが呼び出された際に実行するアルゴリズムのステップにおいて、“The user agent must then set the begun flag to true and fire a progress event called begin at the media element” という文が次のように修正されました (変更された箇所をハイライトしています)。

    The user agent must then set the begun flag to true and fire a progress event called loadstart at the media element.

  • シークアルゴリズム (seeking algorithm) の修正が行われました。また、メディア要素の waiting イベントがどのタイミングで fire されるか、その適合性について記述した文が、シークアルゴリズムが呼び出されている状態について考慮するようになりました。
  • play() メソッドの呼び出しに応答するためのアルゴリズムが修正されました。
  • VoidCallback インターフェースに関する ECMAScript 実装の適合性要件について記した文が削除されました。
  • “3.12.10.10 User interface” において、“if scripting is disabled” という文が “if the media element is without script” に変更されました。
  • “3.12.10.11 Time ranges” 内の文章が若干修正されました。
  • 新しく “3.12.10.12 Byte ranges” が追加されました。このセクションは ByteRanges インターフェースと、関連する適合性要件を定めています。
  • “3.12.10.13 Event summary” 内の表において、begin イベントの名前が loadstart に変更されました。また、seeking イベントと seeked イベントに関するエントリが表に追加されました。

Section 3.12.11, The canvas element # T

このセクションでは、次の変更が行われました。

  • 次の文が追加されました。

    Arguments other than the contextId must be ignored, and must not cause the user agent to raise an exception (as would normally occur if a method was called with the wrong number of arguments).

    If the canvas has no pixels (i.e. either its horizontal dimension or its vertical dimension is zero) then the method must return the string “data:,”. (This is the shortest data: URI; it represents the empty string in a text/plain resource.)

  • 表記とステートを関連させないよう、“with scripting enabled” と “with scripting disabled” というフレーズがそれぞれ、with scriptwithout script になりました。
  • toDataURL() メソッドが PNG 以外の画像タイプを用いる際の注釈に、加筆が行われました (追加された箇所をハイライトしています)。

    When trying to use types other than image/png, authors can check if the image was really returned in the requested format by checking to see if the returned string starts with one the exact strings “data:image/png,” or “data:image/png;”. If it does, the image is PNG, and thus the requested type was not supported. (The one exception to this is if the canvas has either no height or no width, in which case the result might simply be “data:,”.)

  • toDataURL() および getImageData() メソッドからの情報漏えいを防ぐことに関する文が、“3.12.11.3 Security with canvas elements” という新しいセクションになりました。

Section 3.12.11.1, The 2D context # T

このセクションは、前述した canvas 要素で用いられる immediate-mode graphics API を提供しています。このセクションでは、次の変更が行われました。

  • CanvasRenderingContext2D インターフェースのインターフェース定義に、次の DOM 属性が追加されました。
    • font
    • textAlign
    • textBaseline
    また、次のメソッドが追加されました。
    • fillText
    • strokeText
    • measureText
    • createImageData
    さらに、TextMetrics インターフェースが追加されました。
  • 多くの修正が、サブセクションを含めて行われました。
  • “3.12.11.1.9 Text” が追加されました。これは、canvas に文字を描画するための機能です。
  • “3.12.11.3 Security with canvas elements” が追加されました。このセクションは次の文から始まっています。

    Information leakage can occur if scripts from one origin are exposed to images from another origin (one that isn’t the same).

    To mitigate this, canvas elements are defined to have a flag indicating whether they are origin-clean. All canvas elements must start with their origin-clean set to true.

    次に、origin-clean フラグを false にセットしなければならない特定のアクションを挙げています。また、次の文も書かれています。

    Whenever the toDataURL() method of a canvas element whose origin-clean flag is set to false is called, the method must immediately raise a security exception.

    Whenever the getImageData() method of the 2D context of a canvas element whose origin-clean flag is set to false is called, the method must immediately raise a security exception.

Section 3.12.12, The map element # T

このセクションでは、次の変更が行われました。

  • 要素の内容モデルに、イメージマップの名前をつけるための name 属性が追加されました。
  • HTMLMapElement インターフェースのインターフェース定義に、DOM 属性 name が追加されました。

Section 3.12.13, The area element # T

このセクションでは、次の文が追加されました。

“The DOM attribute shape must reflect the shape content attribute, limited to only known values.”

Section 3.12.14, Image maps # T

このセクションでは、“hashed ID reference” というフレーズが “hash-name reference” に改称されました。

Section 3.12.15 [new], MathML # T

このセクションは新しく追加されたものです。次のように書かれています。

The math element from the MathML namespace falls into the embedded content category for the purposes of the content models in this specification.

User agents must handle text other than inter-element whitespace found in MathML elements whose content models do not allow raw text by pretending for the purposes of MathML content models, layout, and rendering that that text is actually wrapped in an mtext element in the MathML namespace. (Such text is not, however, conforming.)

User agents must act as if any MathML element whose contents does not match the element’s content model was replaced, for the purposes of MathML layout and rendering, by an merror element in the MathML namespace containing some appropiate error message.

To enable authors to use MathML tools that only accept MathML in its XML form, interactive HTML user agents are encouraged to provide a way to export any MathML fragment as a namespace-well-formed XML fragment.

Section 3.12.16 [new], SVG # T

このセクションは新しく追加されたものです。次のように書かれています。

The svg element from the SVG namespace falls into the embedded content category for the purposes of the content models in this specification.

To enable authors to use SVG tools that only accept SVG in its XML form, interactive HTML user agents are encouraged to provide a way to export any SVG fragment as a namespace-well-formed XML fragment.

Section 3.13 [was 3.15], Tabular data # T

このセクションでは、table 要素と、その子孫要素について記述しています。

Section 3.13.2, The table element # T

このセクションでは、次の変更が行われました。

  • HTMLTableElement インターフェースのインターフェース定義に、createTBody() メソッドが追加されました。
  • table 要素が “0 以上の tbody 要素または 1 つ以上の tr 要素” を持つ必要があるという文について、XML 構文のみ (Only expressible in the XML serialization.) という注釈が加えられました。
  • DOM 属性 caption の適合性要件について記述した文に加筆が行われました (追加された箇所をハイライトしています)。

    The caption DOM attribute must return, on getting, the first caption element child of the table element, if any, or null otherwise.

  • DOM 属性 tHead の適合性要件について記述した文に、加筆が行われました (追加された箇所をハイライトしています)。

    The tHead DOM attribute must return, on getting, the first thead element child of the table element, if any, or null otherwise.

  • DOM 属性 tFoot の適合性要件について記述した文に、加筆が行われました (追加された箇所をハイライトしています)。

    The tFoot DOM attribute must return, on getting, the first tfoot element child of the table element, if any, or null otherwise.

  • 次の文が新しく追加されました。

    The createTBody() method must create a new tbody element, insert it immediately after the last tbody element in the table element, if any, or at the end of the table element if the table element has no tbody element children, and then must return the new tbody element.

  • deleteRow() メソッドが呼び出されたときに実行されるアルゴリズムについて、修正が行われました。

Section 3.13.4, The colgroup element # T

このセクションでは、次の変更が行われました。

  • colgroup 要素の span 属性に関する、次の記述が完全に削除されました

    “Its default value, which must be used if parsing the attribute as a non-negative integer returns either an error or zero, is 1.”

  • DOM 属性 span に関する “on setting, if the new value is 0, then an INDEX_SIZE_ERR exception must be raised” という文が、次のように修正されました。

    The span DOM attribute must reflect the content attribute of the same name. The value must be limited to only positive non-zero numbers.

Section 3.13.5, The col element # T

このセクションでは、次の変更が行われました。

  • col 要素の span 属性に関する、次の記述が完全に削除されました

    “Its default value, which must be used if parsing the attribute as a non-negative integer returns either an error or zero, is 1.”

  • DOM 属性 span に関する “on setting, if the new value is 0, then an INDEX_SIZE_ERR exception must be raised” という文が、次のように修正されました。

    The span DOM attribute must reflect the content attribute of the same name. The value must be limited to only positive non-zero numbers.

Section 3.13.6, The tbody element # T

このセクションでは、次の変更が行われました。

  • “1 つ以上の tr 要素” とされていた内容モデルが、0 以上の tr 要素 (Zero or more tr elements) と変更されました。

Section 3.13.7, The thead element # T

このセクションでは、次の変更が行われました。

  • “1 つ以上の tr 要素” とされていた内容モデルが、0 以上の tr 要素 (Zero or more tr elements) と変更されました。

Section 3.13.8, The tfoot element # T

このセクションでは、次の変更が行われました。

  • “1 つ以上の tr 要素” とされていた内容モデルが、0 以上の tr 要素 (Zero or more tr elements) と変更されました。

Section 3.13.9, The tr element # T

このセクションでは、次の変更が行われました。

  • “1 つ以上の td 要素” とされていた内容モデルが、0 以上の td 要素 (Zero or more td elements) と変更されました。
  • DOM 属性 rowIndex において、特定の条件を満たす table が存在しないときに返す必要のある値が、0 から -1 に変更されました。
  • DOM 属性 sectionRowIndex において、特定の条件を満たす親要素が存在しないときに返す必要のある値が、0 から -1 に変更されました。

Section 3.13.10, The td element # T

このセクションでは、次の変更が行われました。

  • td 要素の属するカテゴリが “None” から sectioning root へ変更されました。
  • 要素に関連するインターフェースの名称が、“HTMLTableCellElement” から HTMLTableDataCellElement へ変更されました。
  • The headers 属性が適合する属性に追加されました。また、DOM 属性 headers が、HTMLTableDataCellElement インターフェースのインターフェース定義に追加されました。
  • DOM 属性 colSpanrowSpan が、HTMLTableDataCellElement インターフェースのインターフェース定義から削除されました
  • DOM 属性 colSpanrowSpan の削除と、DOM 属性 headers の追加に関連して、文章が修正されました。

Section 3.13.11, The th element # T

このセクションでは、次の変更が行われました。

  • colspanrowspan 属性に関する文が修正されました。

Section 3.13.12 [new], Attributes common to td and th elements # T

このセクションは新しく追加されたものです。次の項目について記述されています。

  • HTMLTableCellElement インターフェースのインターフェース定義。tdth 要素の適合性要件には、要素はこのインターフェースを継承したインターフェースをインプリメントするとしています。
  • colspanrowspan 属性の適合基準。
  • DOM 属性 colSpanrowSpancellIndex の適合基準。

Section 3.13.13, Processing model # T

このセクションでは、次の変更が行われました。

  • このセクションでは、他のセクションに加えられた変更と整合性のため、いくつか変更が加えられています。
  • 数多くの大きな変更が、この “3.13.14 Forming a table” で定義されているアルゴリズムに対して行われました。たとえば、tfoot 要素や caption 要素に関するステップの追加、また algorithm for growing downward-growing cells を構成するための修正などです。

Section 3.14 [was 3.16], Forms # T

このセクションはプレースホルダです。現在は次の注釈のみが存在しています。

This section will contain definitions of the form element and so forth.

This section will be a rewrite of the HTML4 Forms and Web Forms 2.0 specifications, with hopefully no normative changes.

If a form is in a browsing context whose sandboxed forms browsing context flag is set, it must not be submitted.

Section 3.15 [was 3.17], Scripting # T

このセクションでは、次の導入文が追加されました。

Scripts allow authors to add interactivity to their documents.

Authors are encouraged to use declarative alternatives to scripting where possible, as declarative mechanisms are often more maintainable, and many users disable scripting.

For example, instead of using script to show or hide a section to show more details, the details element could be used.

Authors are also encouraged to make their applications degrade gracefully in the absence of scripting support.

For example, if an author provides a link in a table header to dynamically resort the table, the link could also be made to function without scripts by requesting the sorted table from the server.

Section 3.15.1, The script element # T

このセクションでは、大きな変更が数多く行われました。

  • charset 属性が、適合する属性として追加されました。また、DOM 属性 charset が、HTMLScriptElement インターフェースのインターフェース定義に追加されました。
  • charset 属性と、DOM 属性 charset の適合基準が追加されました。
  • “If scripting is disabled, or if the Document has designMode enabled” という適合性要件に関する文が、“If the script element is without script“ と修正されました。
  • script 要素の適合性要件に関する文と、文書内の script ブロックで実行中のスクリプトに関するアルゴリズムが、大幅に修正されました。

Section 3.15.2, The noscript element # T

このセクションでは、次の変更が行われました。

  • 要素の内容モデルにおいて、“when scripting is disabled”、“when scripting is enabled” となっていた部分がそれぞれ、“without script”、“with script” に書き換えられました。また他の部分についても、同様に修正されました。
  • 次の注釈が加えられました。

    The noscript element is only effective in the HTML serialization, it has no effect in the XML serialization.

  • 次の注釈が加えられました。

    The noscript element interacts poorly with the designMode feature. Authors are encouraged to not use noscript elements on pages that will have designMode enabled.

Section 3.15.3, The event-source element # T

このセクションでは、src 属性に関する文が次のように変更されました (変更された箇所をハイライトしています)。

The src attribute, if specified, must give a URI (or IRI) pointing to a resource that uses the text/event-stream format.

(ハイライトされた箇所は、“application/x-dom-event-stream” となっていました。)

Section 3.16 [was 3.18], Interactive elements # T

このセクションは、detailsdatagridcommandmenu 要素について記述しています。

Section 3.16.2, The datagrid element # T

datagrid は HTML 5 から導入される新しい要素です。datagrid はツリーやリスト、または表のセットに対して、インタラクティブな表現を提供します。ただし、datagrid はまだどのユーザーエージェントにも実装されていません。

このセクションでは、次の変更が行われました。

  • datagrid 要素の属するカテゴリに、“sectioning root” が追加されました。
  • 内容モデルについて書かれた文に、加筆が行われました (追加された箇所をハイライトしています)。

    Flow content, but where the first element child node, if any, is not a table, select, or datalist element

  • DataGridDataProvider インターフェースのインターフェース定義が、Web IDL 仕様 [WebIDL] との整合性のため更新されました。
  • “3.16.2.7. Requirements for interactive user agents”において、データ提供側が setCellCheckedState() メソッドを呼び出すことについて記述した文が、次のように修正されました (変更された箇所をハイライトしています)。

    “The state should be represented by the number 1 if the new state is checked, 0 if the new state is unchecked, and −1 if the new state is indeterminate.”

  • DataGridSelection インターフェースのインターフェース定義が、Web IDL 仕様 [WebIDL] との整合性のため更新されました。

Section 3.16.5, Commands # T

このセクションは、メニューアイテムやボタン、リンクなどの裏にある コマンド (command) の抽象化について記述しています。このセクションでは、Command インターフェースのインターフェース定義が、Web IDL 仕様 [WebIDL] との整合性のため更新されました。

Section 3.17 [was 3.19], Data Templates # T

このセクションでは、datatemplaterulenest 要素について記述しています。大きな変更は行われていません。また、datatemplate 要素やその関連要素は、現在どのユーザーエージェントにも実装されていません。

Section 3.18 [was 3.20], Miscellaneous elements # T

このセクションでは、legend 要素、div 要素について記述しています。このセクションには特に変更点がありません。しかし、たとえば “prose content” から flow content への名称変更など、仕様書全体にかかわる変更は行われています。

Section 4, Web browsers # T

このセクションでは、Web ブラウザに直接影響を与える、複数のページ処理、ページ間のリンク、スクリプトの実行などの機能が定義されています。

Section 4.1, Browsing context # T

このセクションは、ブラウジングコンテキスト (browsing context) を “a collection of one or more Document objects, and one or more views, as well as particular browsing contexts, including the active document“ という説明のもと定義しています。このセクションでは、次の変更が行われました。

  • ブラウジングコンテキストの生成について書かれた文に加筆が行われました (追加された箇所をハイライトしています)。

    When a browsing context is first created, it must be created with a single Document in its session history, whose address is about:blank, which is marked as being an HTML document, and whose character encoding is UTF-8.

  • about:blank Document オブジェクトの origin をどう設定するかを説明する文が加わりました。
  • “4.1.1 Nested browsing contexts” において、次の文が追加されました。

    The transitive closure of parent browsing contexts for a nested browsing context gives the list of ancestor browsing contexts.

    A nested browsing context can have a seamless browsing context flag set, if it is embedded through an iframe element with a seamless attribute.

  • ブラウジングコンテキストの祖先 (ancestor of a browsing context) という定義が追加されました。
  • “4.1.4 Security” が追加されました。また、allowed to navigate という定義が一緒に追加されています。
  • “4.1.6 Browsing context names” において、数多くの変更が行われました。たとえば、sandboxed navigation browsing context flag がセットされた状態に関する適合性要件などです。また、次の文が追加されました。

    User agent implementors are encouraged to provide a way for users to configure the user agent to always reuse the current browsing context.

Section 4.2, The default view # T

このセクションでは、Window オブジェクトのインターフェースを定義しています。このセクションでは、次の変更が行われました。

  • インターフェース定義が Web IDL 仕様 [WebIDL] との整合性のため、また localStorage (旧 globalStorage 属性を参照するように定義が修正されました。また、showModalDialog メソッド、XXX4 メソッドと onstorage 属性の追加が行われました。(“XXX4“ は仮の名前です。XXX4 という名前で実装されるわけではありません。)
  • “4.2.1 Security” において、XXX4frames 属性が、要件の例外となるリストに追加されました。
  • “4.2.3 APIs for creating and navigating browsing contexts by name” において、“valid browsing context name” が valid browsing context name or keyword に変更されました。また script execution context の利用に関する適合性要件が追加されました。
  • “4.2.4 Accessing other browsing contexts” において、Web IDL 仕様 [WebIDL] との整合性のため、ECMAScript 実装のための適合性要件が削除されました。また、sandboxed origin browsing context flag がセットされた状態について、要件が追加されました。

Section 4.3 [was 4.3.2], Origin # T

このセクションは、元は “Scripting” のサブセクションでしたが、格上げされ兄弟セクションとなりました。このセクションでは、リソース (URI やスクリプト、Document オブジェクト、画像) の origineffective script origin を定義しています。このセクションでは、次の変更が行われました。

  • origin に加えて effective script origin という用語が導入され、その性質も合わせて定義されました。
  • “If the scheme is ‘file’, then the user agent may return a UA-specific origin” という文において、“origin” という単語が “value” に置き換えられました。
  • “the same as the origin” というフレーズが “equal to the origin” に書き換えられました。
  • origin および effective script origin を決定する基準が再構成され、さらに加筆されました。また、“Unscripted same-origin checks” が “For URIs” の一部になりました。
  • ある 2 つの origin が same origin かどうかを確かめるためのアルゴリズムが追加されました。
  • “4.3.1 Relaxing the same-origin restriction” が新しく追加されました。テキストの多くは “2. The Document Object Model” の “2.1.2 Resource metadata management” から移動されたものです。この “Relaxing the same-origin restriction” では、Document オブジェクトの domain 属性をセットしたときに実行されるアルゴリズムをより明示的に定義しています。

Section 4.3 [now 4.4], Scripting # T

このセクションでは、文書の中で作成者により提供される、実行可能なコードに関連するメカニズムと、scripting is enabledscripting is disabled という二つのステートを提供しています。

  • 新しく “4.4.1 Script execution contexts” が追加されました。このサブセクションではスクリプトの スクリプト実行コンテキスト (script execution context) を定義しています。また、without scriptwith script という用語の定義を、次の注釈とともに紹介しています。

    If you can find a better pair of terms than “with script” and “without script” let me know. The only things I can find that are less confusing are also way, way longer.

  • “4.4.3 The javascript: protocol” において、文言の修正が行われました。また、“the browsing context of the Document to which belongs the element for which the URI is being dereferenced, or to which the style sheet for which the URI is being dereferenced applies, whichever is appropriate” でなければならないとされていた “dereference context” の状態が変更され、空のオブジェクトでなければならないとされました。さらに、次の注釈が追加されました。

    The rules for handling script execution in a script execution context include making the script not execute (and just return void) in certain cases, e.g. in a sandbox or when the user has disabled scripting altogether.

  • “4.4.4 Events” において、多くの変更が行われました。たとえば、すべての HTML 要素と、Window オブジェクトでサポートされる必要のあるイベントハンドラ属性に onstorage イベントが追加されています。また、スクリプト実行コンテキスト (script execution context) に関する文の追加や、同じセクションにおいて、The listener argument is emphatically not the event handler attribute itself. という文が追加されました。さらに、Web IDL 仕様 [WebIDL] との整合性のため、ECMAScript DOM バインディングに関する適合基準が削除されました。

Section 4.4 [now 4.5], User prompts # T

このセクションは、ユーザーに表示するダイアログについて、適合基準を提供しています。このセクションでは、次の変更が行われました。

  • このセクションにあった内容が “4.5.1 Simple dialogs”に移動しました。内容に変更はありません。
  • 新しく、“4.5.2 Dialogs implemented using separate documents” が追加されました。このサブセクションでは、showModalDialog() メソッドが呼び出されたとき、どのようにユーザーエージェントが振舞う必要があるかを定義しています。
  • 新しく、“Notifications” が追加されました。このサブセクションでは、short, transient messages that bring the user’s attention to new information, or remind the user of scheduled events という目的のもと、showNotification() メソッドを定義しています。

Section 4.5 [now 4.6], Browser state # T

このセクションでは、どのように Web サイト自体をプロトコルやコンテンツハンドラとして登録するかについて定義しています。たとえば、mailto: プロトコルに対して、Web メールが自身を登録するなどが当てはまります。

このセクションにおいて、最初の草案から変更された点はありません。

Section 4.6 [now 4.7], Offline Web applications # T

このセクションは Web アプリケーションが アプリケーションキャッシュ (application cache) を、付随する マニフェスト (manifest) とともに管理するためのメカニズムを定義しています。これにより、オフラインという限定された環境でも、アプリケーションを動作させることができます。

このセクションでは、各種修正が行われました。

Section 4.7 [now 4.8], Session history and navigation # T

このセクションでは、ブラウジングコンテキストの セッション履歴 (session history) と、関連する History インターフェースを定義しています。このセクションでは、次の変更が行われました。

  • 最後にアクティベートしたエントリ (last activated entry) を定義する文が追加されました。
  • このセクションの大部分が “4.9 Browsing the Web” の “4.9.9 History traversal” を構成するために移動されました。
  • ほかにも多くの変更が行われました。たとえば、“Activating state object entries” ではより明示的なステップが追加され、また Web IDL 仕様 [WebIDL] との整合性のため、Location インターフェースの ECMAScript DOM バインディングに関する適合性要件が削除されました。さらに、スクリプト実行コンテキスト (script execution context) に関連する文が追加されました。

Section 4.9 [new], Browsing the Web # T

このセクションは、 最初の草案で “4.8 Navigating across documents” だったセクションとそのサブセクションに、 “History traversal” という新たなセクションが加わり組織されたものです。

多くの変更が加わりました。ソースブラウジングコンテキスト (source browsing context) に関するテキストの追加、“opportunistic caching namespace” と “opportunistically cahced entries” に関する基準の追加、そして、文書の文字エンコーディング、と sandboxed plugins browsing context flag に関する基準の追加が行われています。

Section 4.9 [now 4.10], Determining the type of a new resource in a browsing context # T

このセクションでは、Content-Type sniffing に関する適合基準を提供しています。このセクションでは、次の変更が行われました。

  • “sniffed type of a resource” を見つけるアルゴリズムに、いくつか変更が行われました。また、“4.10.4 Content-Type sniffing: feed or HTML” と “4.10.5 Content-Type metadata” にも変更が行われています。
  • “4.10.1 Content-Type sniffing: text or binary” より、UTF-32 への参照が削除されました
  • type-sniffing アルゴリズムで利用されるバイトシーケンスの表に、image/vnd.microsoft.icon が追加されました。
  • Content-Type からエンコーディングを抽出するアルゴリズム (algorithm for extracting an encoding from a Content-Type) が修正されました。
  • 次の注釈が加えられました。

    The above algorithm is a willful violation of the HTTP specification.

Section 4.11 [new], Structured client-side storage # T

このセクションは “Client-side session and persistent storage of name/value pairs” と “Client-side database storage” に、ディスクスペースやセキュリティ、プライバシーなどに関連するセクションを統合してできたものです。このセクションでは、次の変更が行われました。

  • いくつかの文において、“origin” が “site” に変更されました。
  • “4.11.1 Storing name/value pairs” にて、DOM 属性 globalStoragelocalStorage に改称されました。
  • “4.11.1 Storing name/value pairs” に、StorageEvent インターフェースの定義が追加されました。また、 initStorageEvent() メソッドと initStorageEventNS() メソッドが追加されました。
  • “4.11.1 Storing name/value pairs” のいくつかの文において、“origin” が “site” に変更され、Each site has its own separate storage area. のようになりました。
  • 最初の草案にある “Client-side session and persistent storage of name/value pairs”のサブセクション、 “Miscellaneous implementation requirements for storage areas” にある “Disk space” と “Security and privacy”が、それぞれ “4.11.1 Storing name/value pairs” と “4.11.2 Database storage” に移動しました。
  • “4.11.2 Database storage” において、次の編集上の注釈が追加されました。

    Implementation feedback is requested on what to do with arguments that are of types that are not supported by the underlying SQL backend. For example, SQLite doesn’t support booleans, so what should the UA do if passed a boolean? The Gears team suggests failing, not silently converting types.

  • “4.11.2 Database storage” において、Web IDL 仕様 [WebIDL] との整合性のため、SQLResultSetRowList インターフェースのインターフェース定義が更新されました。

Section 4.13, Interfaces for URI manipulation # T

このセクションは、“complement of URI decomposition attributes” を持つインターフェースの DOM 属性について記述しています。このセクションでは、URI のコンポーネントを置換したときの適合する挙動についてテキストが追加されました。また、port 属性のパース処理規則が変更されました。

Section 5, Editing # T

このセクションは、ユーザーが文書の一部またはすべてをインタラクティブに編集できるよう、作成者が利用するいくつかの機能について記述しています。

Section 5.2, The contenteditable attribute # T

このセクションは、contenteditable 属性を持つ HTML 要素について、その処理方法を定義しています。このセクションでは、次の変更が行われました。

  • inherit state の定義と、関連する処理についてテキストが追加されました。
  • DOM 属性 isContentEditable の処理について、文が追加されました。
  • “5.2.1 User editing actions” にて、次の文が追加されました。

    “User agents may prevent selections from being made in ways that cross from editable elements into non-editable elements (e.g. by making each non-editable descendant atomically selectable, but not allowing text selection within them).”

  • ユーザーエージェントは “編集不可能な子孫 (non-editable descendants)” について、ユーザーがそれらを削除できるような手段を提供すべきという文が追加されました。
  • “UAs should offer a way for the user to mark text as having stress emphasis and as being important” という文が削除され、次の文が追加されました。

    In response to a request from a user to mark text up in italics, user agents should use the i element to represent the semantic. The em element should be used only if the user agent is sure that the user means to indicate stress emphasis.

    In response to a request from a user to mark text up in bold, user agents should use the b element to represent the semantic. The strong element should be used only if the user agent is sure that the user means to indicate importance.

  • “5.2.2 Making entire documents editable” にて、Document オブジェクトの DOM 属性 designMode がセットされた状態の処理について、その記述が修正されました。

Section 5.3, Drag and drop # T

このセクションでは、イベントベースのドラッグ & ドロップメカニズムについて定義しています。多くの部分は最初の草案から変わっていませんが、いくつかの修正や削除、そして移動があります。また、DataTransfer インターフェースへの DOM 属性 types の追加、またその処理に関する記述も加わっています。

Section 5.4, Undo history # T

このセクションでは、各 HTMLDocument オブジェクトに対し、どのように undo transaction history を関連付けるか定義しています。また、その履歴を操作するための UndoManager も定義しています。多くの部分は最初の草案から変わっていません。また、このセクションで定義されているメカニズムは、今のところどのユーザーエージェントにも実装されていません。唯一の変更点として、Web IDL 仕様 [WebIDL] との整合性のため、UndoManager インターフェースの ECMAScript DOM バインディングに関する要件が削除されています。また、UndoManager インターフェースのインターフェース定義にも変更が行われています。

Section 5.5 [now 5.6], Command APIs # T

このセクションでは、HTMLDocument インターフェースに execCommand メソッドを定義しています。このメソッドは編集 UI のためのスクリプトを許可し、ユーザーが選択した部分やキャレットのある位置から、アクションを起こすことができるためのものです。このセクションでは、次の変更が行われました。

  • 次のメソッドが追加されました。
    • queryCommandEnabled
    • queryCommandIndeterm
    • queryCommandState
    • queryCommandSupported
    • queryCommandValue
  • そのほかにもいくつかのコマンドが、定義とともに追加されました。

Section 5.6 [now 5.5], The text selection APIs # T

このセクションは、ブラウジングコンテキストの各インスタンスに存在する セレクション (selection) について記述しています。また、セレクションを取得するための getSelection() メソッドと、Selection を定義しています。このセクションでは、次の変更が行われました。

  • Web IDL 仕様 [WebIDL] との整合性のため、Selection インターフェースのインターフェース定義が更新されました。
  • stringification という言葉の代わりに、toString() メソッドを参照するようになりました。
  • ユーザーエージェントに関する次の文が追加されました。

    User agents may selectively ignore attempts to use the API to adjust the selection made after the user has modified the selection

    User agents may also allow the user to create selections that are not exposed to the API.

Section 6, Communication # T

HTML で記述されたアプリケーションは、リモートサーバーと通信する何らかのメカニズムを必要とします。また、異なるドメイン間のアプリケーションと、同一クライアント上で通信する (“クロスドキュメントメッセージング” と呼ばれています) メカニズムも必要になります。このセクションは、このような通信を可能とするための API を定義しています。特に、クロスドキュメントメッセージング、サーバー送信 DOM イベント、ネットワークコネクションの API を提供します。また、クロスドキュメントメッセージングや、サーバー送信 DOM イベントにより送信されたメッセージのインターフェース定義も提供します。

Section 6.1, Event definitions # T

このセクションでは、MessageEvent インターフェースを定義します。このセクションでは、次の変更が行われました。

  • domain 属性が origin に改称され、また定義も改められました。また、uri 属性が削除され、lastEventId 属性が追加されました。

Section 6.2, Server-sent DOM events # T

このセクションは、サーバーが文書に DOM イベントを割り当てるためのメカニズムについて記述しています。このセクションでは、サーバー送信イベントのフォーマットが書き直されました。特に reconnection timelast event ID string について、また “6.2.4 Interpreting an event stream” に大きな変更が行われています。

Section 6.3, Network connections # T

このセクションでは、Web アプリケーションどうしがローカルエリアネットワーク内で通信するために、またoriginatingサーバーと双方向の通信を行うための、Connection インターフェースを定義します。大きな変更は、Connection インターフェースへの readyState 属性の追加です。また、“6.3.4 TCP connections” において “domain” というフレーズが “host” に置き換えられました。その他に大きな変更は行われていません。また、これらの機能はどのユーザーエージェントにも実装されていません。

Section 6.4, Cross-document messaging # T

このセクションでは、postMessage() メソッドを用いたメッセージングシステムを導入しています。これにより、クロスサイトスクリプティングによる危険性を排除した安全な状態で、また属するドメインに関係なく、文書どうしが通信を行うことができます。このセクションでは、次の変更が行われました。

  • postMessage() メソッドが、非同期に変更されました。
  • postMessage() メソッドの引数に、targetOrigin が追加されました。
  • スクリプトが postMessage() メソッドを呼び出したときに、ユーザーエージェントがとる必要のある挙動についての記述に加筆が行われ、いくつかのステップを持つようになりました。
  • “6.4.1 Processing model” において、same origin でない場合の挙動が warning note として追加されました。

Section 7, Repetition templates # T

このセクションは最初の草案と同じく、空のプレースホルダとなっています。このセクションで導入される機能は、フォームにおける繰り返しモデルのサポートです。

Section 8, The HTML syntax # T

このセクションでは、HTML の text/html 構文に対し、構文規則を記述しています。また、それらをパースし、シリアライズするための規則も記述しています。

Section 8.1, Writing HTML documents # T

このセクションは、文書やオーサリングツール、マークアップ生成ツールなどに対して、構文に関する基本的な適合性要件を提供しています。このセクションでは、次の変更が行われました。

  • 次の文が完全に削除されました

    The U+0000 NULL character must not appear anywhere in a document.

  • htmlheadbody 要素周りのコメントや空白、また DOCTYPE の後に挿入される改行についての注釈が修正されました。
  • “8.1.2 Elements” にて、foreign elements という要素分類が追加されました。Foreign elements の定義は Elements from the MathML namespace となっています。また、セクションのほかの部分も、foreign elements に関連する修正が行われました。
  • “8.1.2 Elements” にて、“U+0030 DIGIT ZERO .. U+0039 DIGIT NINE” が、タグ名で許可される文字の範囲に追加されました。
  • “8.1.2 Elements” にて、属性名と引用符なしの属性値に関する記述が修正されました。また、引用符で括られた属性値とその後に記述される属性の間には、必ず空白を入れる必要がある旨が追加されました。
  • “8.1.2 Elements” において、省略できる特定のタグについての記述が修正されました。
  • “8.1.2 Elements” において、次の文が完全に削除されました

    A p element must not contain blockquote, dl, menu, ol, pre, table, or ul elements, even though these elements are technically allowed inside p elements according to the content models described in this specification. (In fact, if one of those elements is put inside a p element in the markup, it will instead imply a p element end tag before it.)

  • “8.1.2 Elements” にて、escaping text span の定義が改められました。
  • “Character entity references” というセクションのタイトルが、“Character references” に変更されました。また、“Named entities” というフレーズが 名前文字参照 (Named character references) に改められ、さらに “character entity references” というフレーズも “character references” に改められました。
  • “8.1.4 Character references” にて、ambiguous ampersand の定義が改められました。
  • 新しく “8.1.5 CDATA blocks” が追加されました。
  • “8.1.6 Comments” において、コメント内部で禁止されている文字に関する記述が追加されました。

    the text must not start with a single U+003E GREATER-THAN SIGN (‘>‘) character, nor start with a U+002D HYPHEN-MINUS (-) character followed by a U+003E GREATER-THAN SIGN (‘>‘) character

Section 8.2, Parsing HTML documents # T

このセクションでは、ユーザーエージェントやデータマイニングツール、適合性チェッカーのために text/html なコンテンツのパース処理規則を定義しています。このセクションでは、次の変更が行われました。

  • “8.2.2 The input stream” において、次の変更が行われました。
    • input stream の前処理、文字エンコーディングの要件、およびエンコーディング判定に関する記述が修正されました。また、source browsing context に関する文の明確化が行われました。
    • 次の注釈が加えられました。

      This specification does not make any attempt to support UTF-32 in its algorithms; support and use of UTF-32 can thus lead to unexpected behavior in implementations of this specification.

    • “8.2.2.4 Changing the encoding while parsing” において、“If the new encoding is UTF-16, change it to UTF-8” とされていたエンコーディングを変更するアルゴリズムのうち、最初のステップが次のように変更されました (変更点をハイライトしています)。

      If the new encoding is a UTF-16 encoding, change it to UTF-8.

    • “8.2.2.4 Changing the encoding while parsing” において、アルゴリズムの最後に記述されていた次の文が、完全に削除されました

      While the invocation of this algorithm is not a parse error, it is still indicative of non-conforming content.

  • “8.2.2.2. Character encoding requirements” において、大きな変更が行われました。“Character encoding overrides” の追加や、関連する次の注釈が追加されています。

    The requirement to treat certain encodings as other encodings according to the table above is a willful violation of the W3C Character Model specification.

  • 新しく “8.2.3 Parse state” が追加されました。
  • 挿入モードをリセットするアルゴリズムが、innerHTMLtdth 要素と利用する際の挙動をふまえ修正されました。
  • 新しく “8.2.3.5. The scripting state” が、次のテキストとともに追加されました。

    The scripting flag is set to “enabled” if the Document with which the parser is associated was with script when the parser was created, and “disabled” otherwise.

  • “8.2.4 Tokenisation” において、数多くの変更が行われました。記述においては、After attribute value (quoted) stateSelf-closing start tag stateCDATA block state の追加が行われました。修正においては、公開識別子やシステム識別子に関する記述で “the empty string” となっていたものが、 the empty string (not missing) に変更されました。これは、公開識別子やシステム識別子が “missing” である状態が “not set” と改められたためです。この修正に伴い、次の文が追加されました。

    A system identifier whose value is the empty string is not considered missing for the purposes of the conditions above.

  • “8.2.5 Tree construction” において、数多くの変更が行われました。
    • foreign elementsforeign attributes の処理について、テキストが追加されました。
    • “quirks mode” となる doctype が追加されました。//EN で終わる doctype は //EN を取り除くように変更されました。また、関連するテキストも、“特定の公開識別子から成るわけではなく、特定の公開識別子から始まる” といった表現に改められました。
    • 新しく “8.2.5.3 Foster parenting” が追加されました。セクションの内容は、“8.2.5 Tree construction” のアルゴリズムから移動してきたものです。
    • rubyrprt 要素の処理に関する記述が追加されました。
    • ツリー生成アルゴリズムが、head 要素の子として noframes 要素を許容するようになり、また select 要素の中にある textarea 要素は、その前に select 要素の終了タグがあるものとして扱われるようになりました。
    • HTML5 で新しく追加された新しい要素を処理するために、アルゴリズムが修正されました。新しい要素には commandevent-sourcearticleasidedatagriddialogfooterheadernavsectionparamsource があります。
    • “8.2.5.10 The ‘in body’ insertion mode” に、次のステップが追加されました。

      An end tag whose tag name is “sarcasm”

      Take a deep breath, then act as described in the “any other end tag” entry below.

  • “if scripting is enabled” というフレーズが if the scripting flag is enabled に置き換えられました。
  • “8.2.6 The end” において、current document readiness に関する文言が追加されました。

Section 8.3, Namespaces # T

このセクションでは、MathML、SVG、XLink、XML、XMLNS の名前空間 URI が追加されました。

Section 8.4, Serializing HTML fragments # T

このセクションでは、文言の修正が行われました。また、ProcessingInstruction の処理が、HTML フラグメントのシリアライズアルゴリズムに追加されました。

Section 8.5, Parsing HTML fragments # T

このセクションでは、いくつか細かい修正が行われました。また、HTML パーサーのツリー構成処理が、パース処理のステップから削除されました。

Section 8.6, Entities [now "Named character references"] # T

このセクションでは、次の変更が行われました。

  • タイトルが “Named character references” に変更されました。また、文字参照の名前やコードポイントを列記した表に大幅な加筆が行われました。これは、MathML で定義されている名前文字参照を追加したためです。

Section 9 [now removed], WYSIWYG editors # T

“WYSIWYG editors” というセクションは削除されました。このセクションでは “意味的なマークアップを行えない WYSIWYG エディタが、作成者にそれを強いることなく、文書が適合するようにする仕組み” について書かれていました。

Section 10 [now section 9], Rendering and user-agent behavior # T

このセクションは、プレースホルダです。ユーザーエージェントに期待されるレンダリングについて、今後内容が追加される予定です。このセクションでは、次の変更が行われました。

  • タイトルが “Rendering” から “Rendering and user-agent behavior” に変更されました。
  • “9.3 Obsolete elements, attributes, and APIs” というサブセクションが追加されました。廃止された applet 要素や body 要素の廃止された DOM インターフェースについて記述されています。

Section 11 [now section 10], Things that you can't do with this specification… # T

このほぼ非規範的なセクションでは、この仕様が意図しない機能について記述しています。意図しない理由として “クライアントサイドのマークアップは、その機能に対して適切なレベルにいないこと”、または “同じことを行える別の言語がすでに存在し、また HTML に組み込み可能であるから” としています。このセクションでは、次の変更が行われました。

  • Window Object 仕様と統合予定の “10.4 Timers” において、Web IDL 仕様 [WebIDL] との整合性のため、WindowTimersTimeoutHandler インターフェースの インターフェース定義が更新され、また、TimeoutHandler が持つ handleEvent() メソッドの ECMAScript DOM バインディングにおける適合性要件が削除されました。

Acknowledgements # T

次の方が、謝辞に追加されました。

Adam Barth, Addison Phillips, Adele Peterson, Alastair Campbell, Anders Carlsson, Anthony Ricaud, Arphen Lin, Ashley Sheridan, Aurelien Levy, Ben Millard, Brian Smith, Bruce Miller, Cameron McCormack, Daniel Glazman, Danny Sullivan, Dave Camp, David Bloom, David Carlisle, Dean Edridge, Debi Orton, Evan Prodromou, Geoffrey Garen, Henry Mason, Hugh Winkler, Jacques Distler, James Justin Harrell, Jason White, Jens Fendler, Jjgod Jiang, Johan Herland, Jim Jewett, Jim Meehan, Joe Clark, Julian Reschke, Laura L. Carlson, Laura Wisewell, Lee Kowalkowski, Leif Halvard Silli, Magnus Kristiansen, Masataka Yakura, Michael Carter, Michael(tm) Smith, Neil Soiffer, Olaf Hoffmann, Oliver Hunt, Peter Karlsson, Philip TAYLOR, Ralf Stoltze, Raphael Champeimont, Rene Saarsoo, Richard Ishida, Steve Faulkner, Sunava Dutta, Terrence Wood, Tim Johansson, Wayne Pollock, Yi-An Huang

参考文献 # T

[HTML5FPWD]
HTML 5: A vocabulary and associated APIs for HTML and XHTML (First Public Working Draft), I. Hickson, D. Hyatt, editors. W3C, January 2008.
[HTML5]
HTML 5: A vocabulary and associated APIs for HTML and XHTML (current Working Draft), I. Hickson, D. Hyatt, editors. W3C, June 2008.
[HTML4DIFFS]
HTML 5 differences from HTML 4, A. van Kesteren, editor. W3C, June 2008.
[WebIDL]
Language Bindings for DOM Specifications, C. McCormack, editor. W3C, April 2008.