Skip to content

Commit

Permalink
Merge pull request #335 from bakera/1-6-fix-spec-section-number
Browse files Browse the repository at this point in the history
1-6:HTML仕様の章番号を修正
  • Loading branch information
bakera authored Oct 26, 2021
2 parents c5bc572 + 7d73f27 commit dc7a8bc
Showing 1 changed file with 28 additions and 25 deletions.
53 changes: 28 additions & 25 deletions md_text/1-6.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,10 +52,12 @@ HTML仕様の1章には、"How to read this specification"というズバリそ
### 目次から探す

多くの場合は、目次から必要な箇所だけを探して読むという使い方になるでしょう。仕様書の表紙ページには目次があり、見たい章に飛ぶことができます。
とはいえ、初見ではどの章に何が書かれているのかわからないことも多いでしょう。以下に、よくありそうな用途と、その情報が2021年10月時点でどの章に書かれているかを簡単に紹介します
なお、仕様にも各章の簡単な説明が記載されています[^3]
とはいえ、初見ではどの章に何が書かれているのかわからないことも多いでしょう。以下に、よくありそうな用途と、その情報が2021年10月時点[^3]でどの章に書かれているかを簡単に紹介します
なお、仕様にも各章の簡単な説明が記載されています[^4]

[^3]: 1.9 Structure of this specification <https://html.spec.whatwg.org/multipage/introduction.html#structure-of-this-specification>
[^3]: 本書で参照するセクション番号は2021年10月1日時点のスナップショットを基にします <https://html.spec.whatwg.org/commit-snapshots/681a3b9776dd46aea641dafccf43236dea40a21a/>

[^4]: 1.9 Structure of this specification <https://html.spec.whatwg.org/multipage/introduction.html#structure-of-this-specification>

#### HTMLの要素について詳しく知りたい

Expand All @@ -67,28 +69,29 @@ HTML仕様の1章には、"How to read this specification"というズバリそ

#### HTMLの文法について詳しく知りたい

HTMLの文法(シンタックス)については、12章に記載があります。不正なHTMLがどう解釈されるか、といった情報も書かれています。
HTMLの文法(シンタックス)については、13章に記載があります。不正なHTMLがどう解釈されるか、といった情報も書かれています。

- 12 The HTML syntax
- 13 The HTML syntax

ただし、HTMLを解析するパーサーの実装者向けに書かれている箇所については、コンテンツ制作者にとってはやや難解かもしれません。プログラミングができる方は、試しにパーサーを自分で実装してみるとこの章の理解が進むでしょう。

#### JavaScriptと連携する機能の情報が知りたい

6章にはインタラクションに関する属性の情報があります。その他、7章から11章にかけて各種のAPIの情報が書かれています
6章にはインタラクションに関する属性の情報があります。その他、7章から12章にかけて各種のAPIの情報が書かれています

- 6 User interaction
- 7 Loading Web pages
- 8 Web application APIs
- 9 Communication
- 10 Web workers
- 11 Web storage
- 11 Worklets
- 12 Web storage

#### 古いHTMLとの互換性について知りたい

過去のHTMLにはあったものの、現在では廃止された機能については、15章に書かれています
過去のHTMLにはあったものの、現在では廃止された機能については、16章に書かれています

- 15 Obsolete features
- 16 Obsolete features

新しくコンテンツを制作する際には必要ありませんが、古いHTML仕様に基づいて書かれたHTMLを触れるようなときに、当時のHTML仕様にあったものが現在どういう扱いかを知りたいことがあるかもしれません。そのような場合に参照するとよいでしょう。

Expand All @@ -98,9 +101,9 @@ HTMLの文法(シンタックス)については、12章に記載があります

### 索引から探す

HTML仕様には索引のページも存在します[^4]。目当ての要素や属性についてピンポイントで調べたい場合は、索引にアクセスしてページ内検索で検索してしまうのも手です。
HTML仕様には索引のページも存在します[^5]。目当ての要素や属性についてピンポイントで調べたい場合は、索引にアクセスしてページ内検索で検索してしまうのも手です。

[^4]: Index <https://html.spec.whatwg.org/multipage/indices.html>
[^5]: Index <https://html.spec.whatwg.org/multipage/indices.html>

![HTML仕様の索引(属性)のスクリーンショット](../img/1-6-02.png)

Expand All @@ -117,7 +120,7 @@ HTML仕様には索引のページも存在します[^4]。目当ての要素や
たとえば、仕様で`img`要素の`border`属性がどう定義されているのか調べるとすると、以下の2つの情報にたどり着きます。

- 3章では、現在の仕様にそのような属性は定義されていないように書かれている
- 15章では`border`属性が存在し、その特定の値を解釈する必要があると書かれている
- 16章では`border`属性が存在し、その特定の値を解釈する必要があると書かれている

前者がコンテンツ制作者向けの情報で、後者はブラウザベンダー向けの情報です。両者は矛盾しているように見えますが、無関係のものです。現在の仕様では、コンテンツ制作者は`border`属性を使うべきではありません。しかしブラウザーは、過去の互換性にも配慮する必要があるため、もし`border`属性があれば、その値を処理する必要があるのです。

Expand Down Expand Up @@ -156,9 +159,9 @@ RFC 2119は、RFC 8174で更新されています。しかし、IETF以外が策
|should not|~すべきではない|緩い禁止|
|must not|~してはならない|禁止|

多くの場合、1つの文書にRFC 2119キーワードの全部が出現することはありません。特に、mustとshallはRFC 2119において同じ“必須”であることを示しますが、前者のみを用いることがほとんどです。そのため、表ではshallを省略しています。まったくの余談ですが、英語圏の法律や契約文書においては、一般にshallを用い、mustを使用しません。ISO規格もshallを用います。[^3]
多くの場合、1つの文書にRFC 2119キーワードの全部が出現することはありません。特に、mustとshallはRFC 2119において同じ“必須”であることを示しますが、前者のみを用いることがほとんどです。そのため、表ではshallを省略しています。まったくの余談ですが、英語圏の法律や契約文書においては、一般にshallを用い、mustを使用しません。ISO規格もshallを用います。[^6]

[^3]: ISO規格は、ISO/IEC Directives, Part 2という文書で細かな規定がされています。
[^6]: ISO規格は、ISO/IEC Directives, Part 2という文書で細かな規定がされています。

また、RFC 2119において、shouldとrecommendは同じ“推奨”の意味を表すキーワードです。こちらは“必須”と異なり、英語の表現上どちらも使用されます。

Expand Down Expand Up @@ -207,32 +210,32 @@ https://drafts.csswg.org/selectors-3/。⑥ Editors: Tantek Çelik (Invited Expe
- ⑥は仕様のメンテナンスをしている編集者の一覧です。この仕様に関するキーパーソンであると言え、仕様の策定に関してさらに詳しいことを調べる場合に有用な情報です。
- ⑦はエラッタ(正誤表)へのリンクです。特に勧告となった後に誤りが報告された場合に、リンク先にその修正内容が記載されることがあります。

図の例では、②や④に注意を払うことにより、閲覧している文書が最新の文書なのかどうかを確認することができます。実際、2021年10月時点では④をクリックすると、リンク先はSelector Level 4[^4]という文書を参照しており、より新しい仕様の草案が存在することが確認できます。
図の例では、②や④に注意を払うことにより、閲覧している文書が最新の文書なのかどうかを確認することができます。実際、2021年10月時点では④をクリックすると、リンク先はSelector Level 4[^7]という文書を参照しており、より新しい仕様の草案が存在することが確認できます。

[^4]: https://www.w3.org/TR/selectors-4/
[^7]: https://www.w3.org/TR/selectors-4/

<!-- 一番関連性がありそうなChapterということで仮置き。Chapter1の見直しで移動あり得るかと -->

## WCAGについて

本書ではHTMLに関連する仕様として、WCAG (Web Content Accessibility Guidelines)を折に触れて参照しています。ここでは、WCAGについて簡単に説明を行います。より詳しい説明については、W3Cの提供する概要文書[^5]を参照ください。
本書ではHTMLに関連する仕様として、WCAG (Web Content Accessibility Guidelines)を折に触れて参照しています。ここでは、WCAGについて簡単に説明を行います。より詳しい説明については、W3Cの提供する概要文書[^8]を参照ください。

[^5]: https://www.w3.org/WAI/standards-guidelines/wcag/
[^8]: https://www.w3.org/WAI/standards-guidelines/wcag/

WCAGは、ウェブコンテンツをよりアクセシブルにするための推奨事項を網羅した仕様です。具体的には「達成基準」(Success Criterion; SC)と呼ばれる、特定の技術に依存しない中立的なルールに従うことで、アクセシビリティを満たすコンテンツを作成できます。WCAGに従うことにより、障害のあるユーザーにアクセシビリティを確保するだけではなく、ほとんどのユーザーがより使いやすいウェブコンテンツを提供することにつながります。

本書では、2021年10月時点で最新の勧告であるWCAG 2.1を参照しています。後続仕様となるWCAG 2.2の開発が進んでいますが、これはWCAG 2.1に達成基準が追加されるものであり、基本的な考え方は変わりません。

また、本書ではわかりやすさのために、達成基準の名称については、W3Cの原文ではなくウェブアクセシビリティ基盤委員会[^6]が作成するWCAG 2.1の日本語訳[^7]を参照して記載しています。
また、本書ではわかりやすさのために、達成基準の名称については、W3Cの原文ではなくウェブアクセシビリティ基盤委員会[^9]が作成するWCAG 2.1の日本語訳[^10]を参照して記載しています。

[^6]: https://waic.jp/
[^9]: https://waic.jp/

[^7]: https://waic.jp/docs/WCAG21/
[^107]: https://waic.jp/docs/WCAG21/

WCAG 2.1の達成基準は、技術に中立的なルールであるために、非常に難解なものになっています。達成基準の解説書にあたる文書[^8]も公開されていますが、ウェブアクセシビリティの専門家レベルの知識が要求される非常に高度な内容になっています。ウェブアクセシビリティの学習としては、別途W3C WAIの提供する解説リソース[^9]や、書籍[^10]などを参照するとよいでしょう。
WCAG 2.1の達成基準は、技術に中立的なルールであるために、非常に難解なものになっています。達成基準の解説書にあたる文書[^11]も公開されていますが、ウェブアクセシビリティの専門家レベルの知識が要求される非常に高度な内容になっています。ウェブアクセシビリティの学習としては、別途W3C WAIの提供する解説リソース[^12]や、書籍[^13]などを参照するとよいでしょう。

[^8]: https://www.w3.org/WAI/WCAG21/Understanding/
[^11]: https://www.w3.org/WAI/WCAG21/Understanding/

[^9]: https://www.w3.org/WAI/fundamentals/
[^12]: https://www.w3.org/WAI/fundamentals/

[^10]: 太田良典、伊原力也著『デザイニングWebアクセシビリティ』
[^13]: 太田良典、伊原力也著『デザイニングWebアクセシビリティ』

0 comments on commit dc7a8bc

Please sign in to comment.