血統の森+はてな

旧はてなダイアリーの自動インポートによるアーカイブです。

ウェブアクセシビリティチェッカー開発者の頭ん中。を見ながら

ウェブアクセシビリティチェッカー開発者の頭ん中。 - Junnama Online
http://junnama.alfasado.net/online/2014/12/a11y_tool_logic.html

他の人のアドベントカレンダー参加エントリーについて、いろいろと思うところがあったのでつらつらと。リンク先で言及されているモノが有償のチェッカーだったり非公開だったりと直接触ることはできないので、当然のことながら書いてあることからしか推測できない点についてはご容赦いただきたく。

実際に使っている企業というのは事例紹介 | PowerCMS - カスタマイズする CMS。とかが掲げられているので、そこからHTMLを覗いてみることにしましょう。

まず良質なテンプレートを提供すべきでは

というのがつらつらと事例企業サイトのトップページをいくつか見に行った感想です。HTMLテンプレートについてどこがカスタマイズしているのかは私はよく分かってませんが、ざっくり見た感じでHTML5時代にもなってXHTML1のDTDで書き始めるのとかもう止めたほうがいいと思いますし、copyright表示をaddress要素でマークアップするのが散見されますが、これはたぶんテンプレートがそうなっているから、なのかなと。前者のXHTML1の宣言についてはやんごとなき事情があるのかもしれませんが、どうせUTF-8エンコーディングしてtext/htmlで送出するのですからXML宣言は不要でしょう。後者に関してはaddress要素の誤った使い方であるのは論ずるまでもないわけで、このあたりはもうちょっと工夫があってもいいのかな、という感想です。重箱の隅という感じも否めませんけど。

HTML5仕様の"バックポート"を。

前述したXHTML1でXML宣言しないというのは、XHTML1付録Cの互換性ガイドラインを発展させたポリグロット・マークアップにおいて、XML宣言が禁止されていることに由来します。*1 またcopyright表示については、HTML5仕様でsmall要素を使うことが示唆されています。*2 前述の話から若干それますが、よりアクセシビリティー寄りに見てみると、WCAG2.0-TECHでHTML4・XHTML1向けと言及されているtable要素のsummary属性はHTML5で廃止されました。*3 *4
バリデーターとアクセシビリティー・チェッカーの違い、というのが実はあまりよく分かってないのですが、たとえXHTML1を選択したとしても、より新しいHTML5とその関連仕様に基づくとHTMLの記述はこうあるべきだ、というようなメッセージを出してくれるようなHTMLチェッカーというのは、あってもいいんじゃないかなとか。

自然と学習できるようなインターフェース

もちろんチェッカーを使う担当者にその意欲があれば、の話ですが、たとえばリンク先の診断結果の画像で、言語指定は'ja'です。指定が正しいかどうか確認という文言が見えますが、あまりHTMLの知識がない人には何をどう確認したらいいのか不明瞭ではないでしょうか。使用者が日本語話者でウェブコンテンツが日本語であることは十中八九疑いようがないんだけど、「日本語であることを確認してください」ぐらいのほうが親切ではないですかね、とか。あるいは画像のalt属性値の確認にしても、デシジョンツリーなりガイドラインを表示するとかそういうことはできそう。製品の実情を知りませんが。
今はメンテナンスされていませんが、Another HTML-lintってある意味優秀だったと思うんですよね。雑学的なことがいろいろ書いてあったわけで、そこからメッセージを読むなりリンクを辿るなりして学べたものが大きかった、と。そういうチェッカーがあってもいいんじゃないでしょうか、とかなんとか。


なんだかとりとめのない話になってしまいましたが、チェッカーついでに1つ、Markup Validation Serviceの日本語化を誰かやりませんか。これが日本語化されていればバリデーターを使うということに対するハードルがぐんと下がるような気がするんですけど。あとは、最近のアクセシビリティー・HTMLチェッカー事情をよく知らないんですけど、日本語で信頼できるフリーなチェッカーって今どういうのがあるんですかね。よいものがあったら是非教えてください。

*1:ポリグロット・マークアップ 4.1 処理命令とXML宣言 http://momdo.s35.xrea.com/web-html-test/spec/CR-html-polyglot-20140717.html#PI-and-xml

*2:HTML5 4.5.4 small要素 http://momdo.github.io/html5/text-level-semantics.html#the-small-element

*3:H73: table要素のsummary属性を用いて、データテーブルの概要を提供する http://waic.jp/docs/WCAG-TECHS/H73.html

*4:11.2 適合しない機能 http://momdo.github.io/html5/obsolete.html#attr-table-summary