情報及び関係性:
達成基準 1.3.1 を理解する
1.3.1 情報及び関係性: 何らかの形で提示されている情報、 構造、及び関係性は、プログラムによる解釈が可能である、又はテキストで提供されている。 (レベル A)
この達成基準の意図
この達成基準の意図は、視覚的又は聴覚的な体裁によって暗に伝えられている情報及び関係性を、その提示形式が変わったときにも保つようにすることである。例えば、コンテンツがスクリーンリーダーによって読み上げられたり、コンテンツ制作者が提供するスタイルシートがユーザスタイルシートに置き換えられたりしたときには、提示形式が変わる。
目の見える利用者は、様々な視覚的な手がかりによって構造及び関係性を知覚する。例えば、見出しは多くの場合、改行で段落から切り離された、より大きな太字のフォントである。リスト項目は、中黒が先行しており、おそらく字下げがある。段落は、改行で分離される。共通の特性を持つ項目は、表の行と列で整理される。フォームのフィールドは、テキストラベルを共有するグループとして配置されることがある。異なる背景色を用いて、複数の項目が互いに関係のあることを示していることもある。特別な状態の語句は、フォントファミリーを変える及び/又は、太字、イタリック、下線付きにすることによって示されている。共通の特性を共有する項目は、同じ行又は列を共有するセルの関係性並びに、各セルと行及び/又は列見出しとの関係性を理解するのが不可欠な表に整理されている。などである。これらの構造及び関係性がプログラムによる解釈が可能する、又はテキストで入手可能にすることで、理解に重要な情報がすべての人に知覚されることを保証する。
同様に、聴覚的な手がかりを用いることもある。例えば、チャイム音が新しい節の開始位置を示している。声のピッチや発話のスピードを変えて、重要な情報を強調したり、引用されたテキストを示したりしている、など。
そういった関係性が、ある利用者にとって知覚可能であれば、その関係性をすべての利用者が知覚できるようにすることが可能である。情報をすべての利用者にきちんと提供できたかどうかを判断する一つの方法は、その情報に様々な感覚モダリティで連続してアクセスしてみることである。
用語集にある用語へのリンクを a 要素 (又は、使用している技術特有のリンク要素) を用いて実装して、異なるフォントで示していれば、スクリーンリーダーの利用者は、用語集にある用語のところで、たとえフォントの違いに関する情報は受け取れなかったとしても、それがリンクであることが音声読み上げを聞けば分かるだろう。あるオンラインカタログの価格表示では赤い大きなフォントを使用している。スクリーンリーダーの利用者は赤色の情報は得られないが、価格の前に通貨表示を記載することで情報を得ることができる。
ウェブコンテンツ技術の中には、ある種の情報及び関係性をプログラムによる解釈をするための手段を提供していないものがある。そういった場合には、その情報及び関係性を説明するテキストを提供すべきである。例えば、「アスタリスク (*) のある項目はすべて必須項目です。」のように説明テキストを提供する。テキストによる説明は、例えば、その親要素又は隣接する要素内などのように、(そのページを線形化したときに) テキストが説明している情報の近くに置くべきである。
場合によっては、関係性をプログラムによる解釈が可能にする又はテキストで提供することが望ましいかどうか、各自の判断に委ねるしかないこともありうる。しかし、技術がプログラムに基づいた関係性をサポートする場合、情報及び関係性をテキストで提供するよりも、プログラムによる解釈することを強く推奨する。
注記: 色の値がプログラムによる解釈が可能であることは要求していない。色によって伝えられる情報は、その値を明らかにするだけでは、十分に提示することができないからである。そのため、色に特有の問題については、達成基準 1.3.1 ではなく、達成基準 1.4.1 で対処している。
達成基準 1.3.1 の具体的なメリット:
この達成基準は、ユーザエージェントが個々の利用者のニーズに応じてコンテンツに適応できるようにすることによって、様々な障害のある利用者の役に立つ。
全盲の (スクリーンリーダーを使用している) 利用者が、色を用いて伝えられている情報をテキストでも得られるようになる (色を用いて情報を伝えている画像のテキストによる代替を含む)。
点字ピンディスプレイを使用している盲ろうの利用者は、色に依存した情報を利用できないことがある。
達成基準 1.3.1 の事例
必須項目のある入力フォーム
入力フォームに、いくつかの必須項目がある。必須項目のラベルを、赤で表示している。さらに、各ラベルの最後には、アスタリスクの記号文字 (*) が付いている。フォームへの入力に関する説明文には、「すべての必須項目は赤字で示してあり、アスタリスク (*) が付いています。」と書かれていて、例が後に続いている。
必須項目を示すために色とテキストを用いている入力フォーム
入力フォームに、必須項目と任意項目の両方がある。入力フォームの先頭にある説明文には、必須項目のラベルが赤字になっていて、「必須」というテキストによる代替のあるアイコンも付いている。赤字とアイコンの両方が、フォームのテキストフィールドとプログラムで関連付けられているので、支援技術の利用者はどれが必須項目なのかが判断できる。
各セルの見出しをプログラムによる解釈が可能なバスの時刻表テーブル
バスの運行スケジュールが、1 列目には縦にバス停の名前が並び、1 行目には横に異なるバスが並んでいる表で示されている。各セルには、バスがそのバス停に到着する時刻が書かれている。支援技術が、各セルにある時刻がどのバスとどのバス停とに関連付けられているのかをプログラムによる解釈が可能であるように、各バス停と各バスのセルは、それぞれの対応する行又は列の見出しとして示されている。
チェックボックスのラベルをプログラムによる解釈が可能な入力フォーム
あるフォームでは、各チェックボックスに対するラベルが、支援技術によってプログラムによる解釈が可能になっている。
テキスト文書
構造をプログラムによる解釈が可能であるように、シンプルなテキスト文書は、タイトルの前に 2 行の空行があり、アスタリスクを使ってリスト項目を示し、その他の標準的な書式の決まりに従ってフォーマットされている。
達成基準 1.3.1 の達成方法及び失敗例 - 情報及び関係性
この節にある番号付きの各項目は、WCAG ワーキンググループがこの達成基準を満たすのに十分であると判断する達成方法、又は複数の達成方法の組み合わせを表している。しかしながら、必ずしもこれらの達成方法を用いる必要はない。その他の達成方法についての詳細は、WCAG 達成基準の達成方法を理解するの「その他の達成方法」を参照のこと。
十分な達成方法
使用法: そのコンテンツに合致する状況を以下から選択すること。それぞれの状況には、WCAG ワーキンググループがその状況において十分であると判断する、番号付の達成方法 (又は、達成方法の組み合わせ) がある。
状況 A: ウェブコンテンツ技術が、表現によって伝えている情報及び関係性をプログラムによる解釈が可能になるセマンテックな構造を提供している場合:
ARIA13: リージョンとランドマークに名前 (name) を付けるために、aria-labelledby を使用する (ARIA)
ARIA16: ユーザインターフェース コントロールの名前 (name) を提供するために、aria-labelledby を使用する (ARIA)
G115: 構造をマークアップするために、セマンティックな要素を使用する、かつ、H49: 強調又は特別なテキストをマークアップするために、セマンティックなマークアップを使用する (HTML)
次の達成方法を用いて、表現によって伝えられている情報及び関係性をプログラムによる解釈が可能になる:
PDF20: 間違ってタグ付けされているテーブルを修復するために、Adobe Acrobat Pro のテーブルエディタを使用する (PDF)
FLASH31: DataGrid の表題を指定する (Flash)
FLASH23: DataGrid に要約を追加する (Flash)
H43: データテーブルのデータセルを見出しセルと関連付けるために、id 属性及び headers 属性を使用する (HTML)
H65: label 要素を使用できない場合に、フォームコントロールを特定するために、title 属性を使用する (HTML)
PDF12: PDF 文書内のフォームフィールドの名前 (name)、役割 (role)、値 (value) 情報を提供する (PDF)
FLASH25: アクセシブルな名前 (accessible name) を設定することによって、フォームコントロールにラベルを付ける (Flash)
H71: fieldset 要素及び legend 要素を使用して、フォームコントロールのグループに関する説明を提供する (HTML)
SL20: Relying on Silverlight AutomationPeer Behavior to Set AutomationProperties.Name (Silverlight)
SL26: Using LabeledBy to Associate Labels and Targets in Silverlight (Silverlight)
H85: select 要素内の option 要素をグループ化するために、optgroup 要素を使用する (HTML)
SCR21: ページにコンテンツを追加するために、Document Object Model (DOM) の機能を使用する (Scripting)
PDF11: PDF 文書内で Link アノテーションと /Link 構造要素を使用してリンクとリンクテキストを提供する (PDF)
状況 B: ウェブコンテンツ技術が、表現によって伝えている情報及び関係性をプログラムによる解釈が可能になるセマンテックな構造を提供していない場合:
FLASH8: フォームコントロールのアクセシブルな名前 (accessible name) にグループ名を追加する (Flash)
表現によって伝えられている情報及び関係性をプログラムによる解釈が可能になる、又は次の達成方法を用いてテキストで入手可能にする:
T1: 段落に、標準的なテキストの書式の表現法を使用する (Text)
1.3.1 でさらに対応が望まれる達成方法 (参考)
適合のために必須ではないが、コンテンツをよりアクセシブルにするために、次の追加の達成方法を検討することが望ましい。ただし、すべての状況において、すべての達成方法が使用可能、又は効果的であるとは限らない。
ページレイアウトにはテーブルよりも CSS を用いる (リンク追加予定)
ARIA1: ユーザインターフェース コントロールに対する説明ラベルを提供するために、aria-describedby プロパティを使用する (ARIA)
絶対的なラベルを持たないすべてのフォームコントロールにラベルを提供する (リンク追加予定)
達成基準 1.3.1 のよくある失敗例
以下に挙げるものは、WCAG ワーキンググループが達成基準 1.3.1 の失敗例とみなした、よくある間違いである。
F2: 達成基準 1.3.1 の失敗例 - 情報を伝えるために、適切なマークアップ又はテキストを用いずに、テキストの提示の変化を使用している
F33: 達成基準 1.3.1 及び 達成基準 1.3.2 の失敗例 - プレーンテキストのコンテンツで複数の段組みを作成するために、空白文字を使用している
F34: 達成基準 1.3.1 及び 達成基準 1.3.2 の失敗例 - プレーンテキストのコンテンツでテーブルの書式を整えるために、空白文字を使用している
F42: 達成基準 1.3.1、達成基準 2.1.1、達成基準 2.1.3、又は達成基準 4.1.2 の失敗例 - リンクをエミュレートしている
F43: 達成基準 1.3.1 の失敗例 - コンテンツにおける関係を表さない方法で、構造的なマークアップを使用している
F46: 達成基準 1.3.1 の失敗例 - レイアウトテーブルで、th 要素、caption 要素、又は空ではない summary 属性を使用している
F68: 達成基準 4.1.2 の失敗例 - プログラムによる解釈が可能な名前 (name) を持っていないユーザインタフェース コントロール
F87: 達成基準 1.3.1 の失敗例 - CSS の :before 及び :after 疑似要素並びに 'content' プロパティを用いて、非装飾のコンテンツを挿入している
F90: 達成基準 1.3.1 の失敗例 - headers 属性及び id 属性によってテーブルの見出しとコンテンツが不正確に関連付けられている
F92: 達成基準 1.3.1 の失敗例 - セマンティックな情報を伝えるコンテンツに presentation ロールを使用している
重要な用語
- プログラムによる解釈 (プログラムによる解釈が可能) (programmatically determined (programmatically determinable))
支援技術を含む様々なユーザエージェントが抽出でき、利用者に様々な感覚モダリティで提示できるような形のデータがコンテンツ制作者によって提供されたとき、そのデータがソフトウェアによって解釈されること。
事例 1: マークアップ言語で、一般に入手可能な支援技術が直接アクセスできる要素と属性から解釈される。
事例 2: 非マークアップ言語の技術特有のデータ構造から解釈され、一般に入手可能な支援技術がサポートするアクセシビリティ API を通じて支援技術に提供される。
- 提示 (presentation)
利用者が知覚できる形式でコンテンツをレンダリングすること。
- 構造 (structure)
- 関係性 (relationships)
コンテンツの異なる部分間における意味のあるつながり。