【注意】この文書にはより新しいバージョンが存在します: WCAG 2.1 解説書

WCAG 2.0 解説書

本文へジャンプ

-

エラーの特定:
達成基準 3.3.1 を理解する

3.3.1 エラーの特定: 入力エラーが自動的に検出された場合は、エラーとなっている箇所が特定され、そのエラーが利用者にテキストで説明される。 (レベル A)

この達成基準の意図

この達成基準の意図は、利用者がエラーの発生に気づき、何が誤っていたのかわかるようにすることである。エラーメッセージは、できる限り具体的なものであるべきである。フォームの送信がうまくいかなかった場合に、フォームを再度表示して、エラーになっているテキストフィールドを示すだけでは、エラーの発生を知覚して気がつくに不十分な利用者もいる。例えば、スクリーンリーダーの利用者は、エラー表示が読み上げられるまでは、エラーがあることに気づかない。単にそのページがうまく動作しないのだと考えて、エラーが発生していることに気づく前に、スクリーンリーダーの利用者はそのフォームを使うこと自体をあきらめてしまうかもしれない。WCAG 2.0 での定義より、「入力エラー」とは利用者が提供した情報で、受け付けられないものである。以下のものが含まれる:

例えば:

注記: 利用者が高すぎる値、または低すぎる値を入力し、その値をページ上のコードが自動的に許容範囲内に変更した場合、達成基準によって要求されるよう、利用者の入力エラーはまだ変更したところに記載される必要がある。変更された値を人に伝えるエラーの説明などは、この達成基準 (エラーの特定) 及び達成基準 3.3.3 (エラー修正の提案) の両方を満たすことになる。

ユーザエージェント又は支援技術がエラーを特定して、エラーに関する情報を利用者に提供することのできる、プログラム的な情報を用いて、エラーがあることを示して、その内容を説明することができる。例えば、あるウェブコンテンツ技術では、利用者の入力には文字数制限があること、又はフォームのテキストフィールドが必須項目であることを明示できる。現在、このようなプログラム的な情報をサポートしているウェブコンテンツ技術はほとんどないが、この達成基準ではそういった技術の有無は問わない。

テキストによる説明に加えて、例えば画像や色などのその他の方法でもエラーを示すことは全く問題ない。

達成基準 3.3.3 エラー修正の提案を理解するも参照のこと。

達成基準 3.3.1 の具体的なメリット:

  • 入力エラーに関する情報をテキストで提供することによって、全盲の利用者又は色覚異常の利用者はエラーが発生したことを知覚できるようになる。

  • この達成基準は、アイコン及びその他の視覚的な手がかりで示された意味を理解するのが困難な、認知の障害、言語の障害、及び学習障害のある利用者にも役立つことがある。

達成基準 3.3.1 の事例

関連リソース

リソースは、情報提供のみを目的としており、推奨を意味するものではない。

(今のところ、文書化されていない)

達成基準 3.3.1 の達成方法及び失敗例 - エラーの特定

この節にある番号付きの各項目は、WCAG ワーキンググループがこの達成基準を満たすのに十分であると判断する達成方法、又は複数の達成方法の組み合わせを表している。しかしながら、必ずしもこれらの達成方法を用いる必要はない。その他の達成方法についての詳細は、WCAG 達成基準の達成方法を理解するの「その他の達成方法」を参照のこと。

十分な達成方法

使用法: そのコンテンツに合致する状況を以下から選択すること。それぞれの状況には、WCAG ワーキンググループがその状況において十分であると判断する、番号付の達成方法 (又は、達成方法の組み合わせ) がある。

状況 A: フォームが利用者からの情報が必須である入力フィールドを含む場合

  1. G83: 入力が完了していない必須項目を特定するために、テキストの説明を提供する

  2. ARIA21: エラーフィールドを示すために aria-invalid を使用する (ARIA)

  3. SCR18: クライアントサイドのバリデーション及びアラートを提供する (Scripting)

  4. PDF5: PDF フォームで必須項目のフォームコントロールを示す (PDF)

  5. SL35: Using the Validation and ValidationSummary APIs to Implement Client Side Forms Validation in Silverlight (Silverlight)

状況 B: 利用者によって提供される情報が、特別なデータフォーマットか特定の値であることが求められる場合

  1. ARIA18: エラーを特定するために aria-alertdialog を使用する (ARIA)

  2. ARIA19: エラーを特定するために、ARIA role=alert 又はライブリージョン (Live Regions) を使用する (ARIA)

  3. ARIA21: エラーフィールドを示すために aria-invalid を使用する (ARIA)

  4. G84: 利用者が許可された値のリストにない情報を与えた場合に、テキストの説明を提供する

  5. G85: 利用者の入力が要求されたフォーマット又は値の範囲外の場合に、テキストの説明を提供する

  6. SCR18: クライアントサイドのバリデーション及びアラートを提供する (Scripting)

  7. SCR32: クライアントサイドのバリデーションを提供し、DOM を介してエラーテキストを追加する (Scripting)

  8. FLASH12: クライアントサイドのバリデーションを提供し、アクセシブルな説明 (accessible description) によってエラーテキストを追加する (Flash)

  9. PDF22: PDF フォームにおいて、利用者の入力が必須形式又は値の範囲外となった場合に、そのことを明示する (PDF)

  10. SL35: Using the Validation and ValidationSummary APIs to Implement Client Side Forms Validation in Silverlight (Silverlight)

3.3.1 でさらに対応が望まれる達成方法 (参考)

適合のために必須ではないが、コンテンツをよりアクセシブルにするために、次の追加の達成方法を検討することが望ましい。ただし、すべての状況において、すべての達成方法が使用可能、又は効果的であるとは限らない。

達成基準 3.3.1 のよくある失敗例

以下に挙げるものは、WCAG ワーキンググループが達成基準 3.3.1 の失敗例とみなした、よくある間違いである。

(今のところ、文書化された失敗例はない)

重要な用語

入力エラー (input error)

利用者が入力した情報で、受け付けられないもの。

注記: 以下のものが含まれる:

  1. そのウェブページでは必須であるが、利用者が入力しなかった情報

  2. 利用者が入力したが、要求されたデータ形式あるいは値ではない情報