Webにおける数式と数式の読み上げを取り巻く環境について
アクセシビリティ・エンジニア 中村(直)Webで数式の表現をするにあたっては、仕様上はMathML(現在のW3C勧告はMathML Version 3.0 2nd Edition)と呼ばれるマークアップ言語で表現できることになっています。かつては、MathPlayerのようなプラグインを別途インストールしなければ表示することができなかったことや、古いXHTMLでは専用のDOCTYPE宣言を用いなければならなかったこともあり、マイナーな存在であったと言えます。しかし近年、実装面では昨年にIgalia社が米国の標準化団体であるNISOから資金援助を受け、ChromiumへのMathMLの(再)実装を試みており、いよいよ実装目前のところまで差し掛かってきました(MathML in Chromium: Upstream process started)。また、ブラウザーのMathML実装状況については、同じくIgaliaのMathML and Browsersのレビュー記事が参考になります。
また、仕様面においては、W3C HTML5勧告の時点でSVGと同様にMathMLが既に取り込まれています。そして、Igalia社のエンジニアFrédéric Wang氏がMathML in HTML5 - Implementation Noteを公表したことを1つのきっかけとして、W3CでMathML Refresh Community Groupが立ち上がり、現在ではこのグループでMathML 3をブラッシュアップした仕様群の議論が行われています。
ところで、数式をスクリーンリーダーで読み上げさせるとどうなるのか?というところも興味深いところであります。二次方程式の解の公式をWindows10のナレーターと、NVDAに読み上げさせてみました。
MS Word + ナレーターの環境では次のように読み上げました。
x イコール 分子 マイナス b プラスマイナス 平方根の b二乗 マイナス 4ac 最後平方根 最後分子 割る 2a
Firefox + NVDA + MathPlayerでは次のように読み上げられました。(NVDA 2019.2.1 User Guideの7章では、MathPlayerのインストールが必要とのことです)
x イコール ス ザ フラクション ウィズ ニューマレーター ネガティブ b プラス オーアール マイナス b スクエアード マイナス 4ac アンド デノミネーター 2a
NVDAスピーチビューアーでは次のように出力されました。(改行を調整しています)
x equals the fraction with numerator negative b plus or minus the square root of b squared minus 4 ac and denominator 2 a
残念ながら、英語として出力されてしまっています。
MS Word + NVDAや、Firefox + ナレーターの例が記載されていないことに気づいた方もいるかもしれません。これらの組み合わせについては筆者の環境でうまく読み上げを行うことができませんでした。試したのはWindows上のナレーターとNVDAという限定された組み合わせではありますが、スクリーンリーダーによるそもそもの読み上げが環境に依存する状況であることは言えそうです。
さて、ナレーターではうまく数式を読み上げているように見えますが、本当にうまく読み上げられていると評価することができるのか、という疑問があります。振り返ってみると体系的に数式の読みというのを教育機関で習った記憶が少なくとも筆者はありません。そこで、山口ら(1996)による『日本語による数式読み上げ法の基本構成について』をあたってみました。
この論説では、視覚障害学生が理数系の高等教育を受けるに当たって、日本語での数式の読みが確立されていない問題を指摘し、10項目による読み上げ法の提案を行っています。その詳細についてはここでは紹介しませんが、前述の二次方程式の解の公式ですと、2つの読みを提案しています。1つは墨字を併用できる学生を想定した「簡略読み上げ」で、
x イコール マイナスb プラス・オア・マイナス 平方根・オブ bの2乗 マイナス4ac オーバー 2a
となります(読みやすさのためにスペースを設けています)。もう1つは「厳密読み上げ」で、分数などの記号の範囲を明示するもので、
x イコール 分数 マイナスb プラス・オア・マイナス 平方根・オブ bの2乗 マイナス4ac 根号終了 オーバー 2a 分数終了
となります。ナレーターの読みはどちらかというと、「厳密読み上げ」に近しいものであると言え、もっともらしい読み上げであると言えそうです。
山口らによれば、米国の多くの大学では、初年次に"College Algebra"(代数学)が設置されており、初等的なものを含めすべての数学記号に対し、英語による読み方が示されている、とのことです。College Algebraで検索すると出てくるサイトのとあるページでは"In words"というフレーズがあり、確かにどう読むのかということが解説されているようです。
まとめますと、Web上の数式の扱いは、ChromiumにMathMLが再び実装されるまで秒読みとなっており、大きく前進する気配があります。その一方で、スクリーンリーダーによる読み上げはまだまだ途上であり、また日本語固有の問題として、どのように読み上げればよいかが確立されていないという問題があります。山口らが主張するように、視覚障害のあるなしにかかわらず、数式の読み上げの統一は教育に一定の効果があると考えられます。日本語による統一的な数式読み上げ法の確立が望まれるところです。