HTML 及び XHTML
これは、次の達成基準に関連する実装方法である:
古いバージョンのスクリーンリーダーの中には、言語を表す属性の指定にあたって、その言語が話されている地域、その言語を記述するために用いられている文字コードなどを表すために、言語コードに続けて記述されることがあるサブ・コードが指定されていると、エラーが発生するものがある。
JAWS 8.0の場合、lang属性の指定に基づいて読み上げに使用する言語を切り替えるように設定することができる。 ただし、JAWSは主要な言語のみに対応しており、lang属性のプライマリー・コードに示されている言語を用いる。また、言語が用いられている地域を示すサブ・コードが続けて指定されている場合、プライマリー・コードで指定されている言語のデフォルトとして設定されている方式を用いるようになっている。
この実装方法の目的は、使用しているHTMLまたはXHTMLのバージョンに応じて、langまたはxml:lang属性を用いることで、ページ上で用いられている自然言語の変化を明示することである。
HTML 4.01では、各要素のlang
属性を用いる。text/htmlとして提供されるXHTMLでは、各要素のlang
属性とxml:lang
属性を用いることでXHTMLの仕様を満たし、またHTMLに対する後方互換性を保持する。application/xhtml+xml として提供されるXHTMLの場合は、各要素のxml:lang
属性を用いる。
注記: HTMLではlang
属性のみを使用できる。XHTML 1.0.では移行措置として両方の属性を使用できる。XHTML 1.1ではxml:lang属性のみを使用できる。
lang
及びxml:lang
属性に指定できる値については、以下に示す参考リソースに示されている。言語タグは、言語を表すプライマリー・コードと、その言語が使用される地域や記述に用いる文字コードなどを表すサブ・コードから成っている。サブ・コードの指定は任意で、指定する場合にはプライマリー・コードに続けてハイフンを記述し、その後に記述する。たとえば、プライマリー・コード「en」は英語を示し、「en-gb」と「en-us」はそれぞれイギリス英語とアメリカ英語を示す。この実装方法において、プライマリー・コードの使用は重要である。サブ・コードの使用は任意だが、状況によっては有用なものになり得る。
この例では、xml:lang
属性を用いてドイツ語の引用部分を示している。このコードは、lang
属性の使用が許されていないXHTML 1.1に含むことができるように書かれている。
コード例:
<blockquote xml:lang="de">
<p>
Da dachte der Herr daran, ihn aus dem Futter zu schaffen,
aber der Esel merkte, daß kein guter Wind wehte, lief fort
und machte sich auf den Weg nach Bremen: dort, meinte er,
könnte er ja Stadtmusikant werden.
</p>
</blockquote>
この参考リソースは、あくまでも情報提供のみが目的であり、推薦などを意味するものではない。
ドキュメントにおける各要素について:
言語コードの継承(HTML4.01)で示されているように、その要素のコンテンツの自然言語が、その要素に継承されている言語と同一である。
ドキュメントにおける各lang
属性について:
lang
属性の値がBCP 47: Tags for the
Identification of Languagesに適合している。
ドキュメントにおける各xml:lang属性について:
xml:lang
属性の値がBCP 47: Tags for the
Identification of Languagesに適合している。
上記の全てを満たしている。
注意: この実装方法が「達成基準を満たすことのできる実装方法」の一つである場合、このチェックポイントや判定基準を満たしていなければ、それはこの実装方法が正しく用いられていないことを意味するが、必ずしも達成基準を満たしていないことにはならない。場合によっては、別の実装方法によってその達成基準が満たされていることもありうる。
日本語訳における注記:
この文書の正式版は、W3Cサイトで公開されている英語の文書であり、この日本語訳には誤訳が含まれていることもありえます。なお、文中にある「日本語訳における注記」は、W3Cの原文にはないものであり、日本語訳監修者が追記したものです。