意味のあるマークアップ

5/3の日記のコメントにこんなことを書いた。

はてなブックマークの場合、せっかくclass属性に意味のある名前がついているので、これに見出しのレベルみたいな役割を閲覧側でつけられるといいかもしれません。サイトと役割情報を組にして共有したら初心者でも使えそうだし。

でも、ここにはちょっと注意が必要だということに気がついた。
見出しやリストなどでマークアップすると、HTMLを解釈するブラウザが共通の語彙として理解できる。ブラウザ側は共通の語彙に対してユーザに提供する使いやすさを強化していくことになり、そのブラウザを利用するすべてのユーザに恩恵をもたらす。WCAG 2.0でいうところの「Programmatically determined」な状態になったといえる。
それに対して、このclass属性はこういう扱いをしましょうというのは、共通の語彙にないものにある体験を結びつけようということである。それはユーザごと、せいぜいあるサイトを利用するユーザという単位でしか恩恵をもたらさない。class属性の名前付けは意味的(例:strong)にするか、表現に基づいたもの(例:largefont)にするかといったレベルでも全く決まりがない。場合によってfont要素でマークアップしているのと代わりがないわけで、Programmatically determinedとはいえない。
なので、まず必要なのは多重のリストでもきちんとマークアップされたものをうまくナビゲートできるような機能を入れることであり、特定のclass属性を見出しのように扱うといったつじつま合わせはその後に余裕があればやればいいことなのだろう。もしやりたければGreaseMonkeyみたいなもので対応できるわけだし。