エラーの特定:
達成基準 3.3.1 を理解する
この達成基準の意図
この達成基準の意図は、利用者がエラーの発生に気づき、何が誤っていたのかわかるようにすることである。エラーメッセージは、できる限り具体的なものであるべきである。フォームの送信がうまくいかなかった場合に、フォームを再度表示して、エラーになっているテキストフィールドを示すだけでは、エラーの発生を知覚して気がつくに不十分な利用者もいる。例えば、スクリーンリーダーの利用者は、エラー表示が読み上げられるまでは、エラーがあることに気づかない。単にそのページがうまく動作しないのだと考えて、エラーが発生していることに気づく前に、スクリーンリーダーの利用者はそのフォームを使うこと自体をあきらめてしまうかもしれない。WCAG2.0での定義より、「入力エラー」とは利用者が提供した情報で、受け付けられないものである。 以下のものが含まれる:
ウェブページでは必須とされているが、利用者が入力を省略した情報、又は
利用者が入力したが、要求されたデータ形式あるいは値ではない情報
例えば:
利用者は、州、管区、地域、等に適切な略語を入力できない。
利用者は、有効でない州の略語を入力する。
利用者は、実在しない郵便番号を入力する。
利用者は、2年先の誕生日を入力する。
利用者は、数字のみを受け付ける電話番号蘭にアルファベットや丸括弧を入力する。
利用者は、前の入札を下回る入札または最小入札単位を下回る入札を入力する。
注記: 注記:利用者が高すぎる値、または低すぎる値を入力し、その値をページ上のコードが自動的に許容範囲内に変更した場合、達成基準によって要求されるよう、利用者の入力エラーはまだ変更したところに記載される必要がある。変更された値を人に伝えるエラーの説明などは、この達成基準(エラーの特定)及び達成基準3.3.3(エラー修正の提案)の両方を満たすことになる。
ユーザエージェント又は支援技術がエラーを特定して、エラーに関する情報を利用者に提供することのできる、プログラム的な情報を用いて、エラーがあることを示して、その内容を説明することができる。例えば、あるウェブコンテンツ技術では、利用者の入力には文字数制限があること、又はフォームのテキストフィールドが必須項目であることを明示できる。現在、このようなプログラム的な情報をサポートしているウェブコンテンツ技術はほとんどないが、この達成基準ではそういった技術の有無は問わない。
テキストによる説明に加えて、例えば画像や色などのその他の方法でもエラーを示すことは全く問題ない。
達成基準3.3.3 エラー修正の提案を理解するも参照のこと。
達成基準 3.3.1の具体的なメリット:
入力エラーに関する情報をテキストで提供することによって、全盲の利用者又は色弱の利用者はエラーが発生したことを知覚できるようになる。
この達成基準は、アイコン及びその他の視覚的な手がかりで示された意味を理解するのが困難な、認知の障害、言語の障害、及び学習障害のある利用者にも役立つことがある。
達成基準 3.3.1の事例
フォーム送信におけるエラーの特定
ある航空会社のウェブサイトが、格安便の特別なプロモーションを展開している。利用者は、氏名、住所、電話番号、座席指定、及び電子メール アドレスなどの個人情報をシンプルなフォームに入力することを求められる。フォームにあるテキストフィールドのいずれかが、入力されていないか入力に誤りがある場合、どのテキストフィールドが未入力又はエラーであるかを利用者に知らせるアラートが表示される。
注記: この達成基準は、エラー箇所を示すために、色又はテキストの表示スタイルを用いないほうがよいということを意味しない。単にエラー箇所がテキストでも示されていることを要求しているだけである。この事例では、色に加えて、2つのアスタリスク (*) が用いられている。
複数の手がかりの提供
利用者がフォームにある2つのテキストフィールドに入力し忘れている。エラーの説明及びそのテキストフィールドを見つけやすくするためにエラーであることを示す特定の文字列を提供するだけでなく、テキストフィールドを黄色で強調表示して、視覚的にも見つけやすくしている。
関連リソース
リソースは、情報提供のみを目的としており、推奨を意味するものではない。
(今のところ、文書化されていない)
達成基準 3.3.1 の達成方法及び不適合事例 - エラーの特定
この節にある番号付の項目は、WCAG ワーキンググループがこの達成基準を満たすのに十分であると判断する達成方法、又は複数の達成方法の組合せを表している。しかしながら、必ずしもこれらの達成方法を用いる必要はない。他の達成方法についての情報は、達成基準を満たすための達成方法を理解するの「その他の達成方法」を参照のこと。
十分な達成方法
使用法: そのコンテンツに合致する状況を以下から選択すること。それぞれの状況には、WCAG ワーキンググループがその状況において十分であると判断する、番号付の達成方法(又は、達成方法の組合せ)がある。
状況 A: フォームが利用者からの情報が必須である入力フィールドを含む場合
状況 B: 利用者によって提供される情報が、特別なデータフォーマットか特定の値であることが求められる場合
ARIA19: エラーを特定するために、ARIA role=alert 又はライブ領域(Live Regions)を使用する (ARIA)
SCR18: クライアントサイドのバリデーション及びアラートを提供する (Scripting)
SCR32: クライアントサイドのバリデーションを提供し、DOM を介してエラーテキストを追加する (Scripting)
FLASH12: クライアントサイドのバリデーションを提供し、エラーメッセージのテキストをアクセシブルな「説明」によって追加する (Flash)
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)
利用者が入力した情報で、受け付けられないもの。
注記: 以下のものが含まれる:
そのウェブページでは必須であるが、利用者が入力しなかった情報
利用者が入力したが、要求されたデータ形式あるいは値ではない情報