発音に関する2つのW3C技術草案文書について
アクセシビリティ・エンジニア 中村(直)少し前の話ですが、Two First Public Working Drafts for Pronunciationというタイトルで発音に関する2つのW3C文書がFirst Public Working Draft(最初の公開草案)として発行されたことがアナウンスされました。
いずれも3月10日付けであり、Accessible Platform Architectures Working Groupから発行されているものです。
1つめの文書はExplainer: Improving Spoken Presentation on the Webというもので、テキスト音声合成(Text-To-Speech、TTS)にHTMLを正確に発音させるためのメカニズムの提案をしています。
この文書の中では、2つの技術的なアプローチを提案しています。そのうちの1つはインラインSSMLであり、もう1つはSSMLの属性ベースモデルです。言葉にするよりも、例示されているサンプルコードを見た方が早いでしょう。
the population of <speak><say-as interpret-as="digits">90274</say-as></speak> <!-- インラインSSML --> the population of <span data-ssml='{"say-as" : {"interpret-as":"digits"}}'>90274</span> <!-- SSMLの属性ベースモデル -->
前者はSSMLを直接HTMLに埋め込むアプローチで、後者はHTMLのカスタムデータ属性を用いて、そこにJSONを埋め込むアプローチとしています。今のところ、HTMLはSSMLを直接埋め込むことを許可していませんので、構文上違反にならないのは後者となります。
ここでSSMLについて補足しておきますと、SSMLはSpeech Synthesis Markup Languageの略称で、音声合成アプリケーション用XMLベースのマークアップ言語です。2010年にSSML 1.1がW3C勧告として発行されており、音声合成マークアップ言語(SSML)バージョン1.1として上綱秀治氏が翻訳を公開しています。SSMLに関しては、Webからは少し離れますが、Amazon AlexaやGoogle Homeの開発者であればなじみがあるかもしれません。両社からSSMLに関する公式のリファレンスが用意されています。
- 音声合成マークアップ言語(SSML)のリファレンス | Alexa Skills Kit
- 音声合成マークアップ言語(SSML) | Cloud Text-to-Speech のドキュメント | Google Cloud
もう1つの文書はPronunciation Gap Analysis and Use Casesというもので、これまでの発音に関連する技術仕様の歴史、発音にまつわるコア要件の列挙、技術的なアプローチのユースケース、ギャップ分析といったものが含まれているものです。
技術的なアプローチには、Explainer: Improving Spoken Presentation on the Webで触れているものと似たアプローチや、HTMLのカスタム要素、JSON-LD、HTMLのルビ要素といったものが挙げられています。
ギャップ分析としては、HTML、WAI-ARIA、PLS、CSS Speech、SSMLと言った技術について触れられています。なお、PLSはPronunciation Lexicon Specificationの略称で、2008年にW3C勧告として発行されているものです。こちらについても、発音辞書仕様(PLS)バージョン1.0として上綱氏が翻訳を公開しています。
ギャップ分析として挙げられているものを眺めてみると、SSMLが必要とされるコア要素をすべてカバーしていますが、SSML以外の技術を組み合わせると、概ねコア要素をカバーすることができるとも読めます。どのアプローチが取られるのかは、これから議論が始まるものと考えられますが、くしくもこれらの2つの文書と同日にCSS Speech ModuleがCandidate Recommendation(勧告候補)としてステータスを変更して再発行されたりと、発音方面ににわかに動きが見られます。
最後に、どちらの文書も、TOEFLやTOEICといった試験を開発・運営を行っていることで知られるEducational Testing Service所属のエディターが携わっているのが興味深いところではあります。また、後者の文書はエディターの中にPearsonが見え、教育分野がこの分野に興味があることがうかがえます。今後どのように議論が進んでいくのか、またWCAG 2.0 達成基準 3.1.6 発音とどのように関係していくのか、個人的には興味深いところであります。