IndieUI: Events 1.0の最初の草案が公開される
去る1月22日、W3CのWAI(Web Accessibility Initiative)はIndie UI: Events 1.0の初めてとなる草案を公開しました。これはユーザーの意図をデバイスやプラットフォームに依存せずにスクリプトへ伝えるための仕様です。
「ユーザーの意図」を認識する必要性やメリットは草案で挙げられている例を見るのがわかりやすいでしょう(日本語訳は筆者による)。
例えば、最後のアクションを「元に戻す」というユーザーの意図をWebアプリケーション作者が横取りしたい場合、次の全てのイベントを「監視」する必要があります。
- WindowsとLinuxではControl+Z
- Mac OS XではCOMMAND+Z
- いくつかのモバイル端末ではシェイク
直前のアクションを「元に戻す」という単一の標準化された要求を監視するほうがよりシンプルでしょう。
今回公開された草案には、操作を「元に戻す」や「やり直す」といったイベントの他にもスクロールやパン、ズームに関するイベントなどが定義されています。個人は自身のシステムにおけるインタフェースの流儀に慣れており、往々にして彼らが好むインタフェースはWebアプリケーションの作者が好むインタフェースとは異なる
と草案にあるように、スクロール1つとってもさまざまな操作が使われています。私自身タッチスクリーンなら指で操作していますが、マウスを使っているときはホイールボタンを使ったり、スクロールバーをクリックしています。キーボードには矢印キーの他にもPage Up/Page Downといったキーがありますし、EmacsやVimのショートカットを使いたい人もいることでしょう。
さらに草案はカスタムインタフェースは多くの場合、支援技術(スクリーン・リーダーやスイッチ、音声など)を使ってWebコンテンツにアクセスするユーザーを考慮していない、とも述べています。WCAG 2.0ではコンテンツの全ての機能をキーボードから利用可能にする(日本語訳)ことがガイドラインの1つになっているなど、アクセシビリティの分野では以前から物理的なイベントにだけ依存することの問題は意識されていました。そしてWebのマルチデバイス対応が加速する中で、より多くの人が物理的な操作ではなく「意図」を知りたい/伝えたいと感じていることと思います。そこでIndie UIは次の3つの目標を掲げています。
- 特定のプラットフォーム、ハードウェア、ロケール、設定から独立した、入力方法にとらわれずに一貫して使用できるユーザーインタフェースの開発を容易にする。
- あらゆる種類のコントロールをプログラムから決定可能にし、主流の入力方法と、支援技術を含む代替入力方法から操作可能にする。
- IndieUIの実装が不完全である間も、既に存在する物理的なイベントをIndieUIにスムーズに移行するための明確な道筋をWeb開発者に提供する。
今回公開された草案ではユーザーの意図を表すイベント(UIRequestEvent
)と要素ごとに受け取るイベントを設定するための属性(ui-actions
)が定義されています。仕様の具体的な内容は標準化が進むにつれて大きく変更される可能性がありますが、ユーザーの意図を表現するという点は変わらないはずです。今後もIndie UIの動向に注目していきたいと思います。
ミツエーリンクスでは、WCAG準拠やJIS X 8341-3対応をはじめ、さまざまなWebアクセシビリティ関連サービスをご提供しています。是非アクセシビリティのページをご覧いただき、お気軽にお問い合わせください。