参照。
こうすれば、たとえ [SAMP(lang)[ja-JP]] の処理を知らなくても、
[SAMP(lang)[ja]] の処理さえ知っていれば、それなりの結果が期待できます。
[[#comment]]
** 例
[14] [HTML4] から。
[PRE[
Her super-powers were the result of
γ-radiation,
he explained.
]PRE]
- UA は、英語の内容を適切な方法の描画 (たとえば引用符の取り扱い) を試みるべきです。
- UA は、英語の文字でなくても最前の努力でもって表示を試みなければなりません。
([CODE(HTMLe)[p]] 要素またはそれより上位の要素でも [CODE(HTML)[[CODE(HTMLa)[lang]]=en]] とちゃんと指定しておかないと、引用符は決定できないと思うのですけどねぇ。)
[23]
[[英語]]の文章の中に[[日本語]]
([[羅馬字]]表記) が混じっている例
[PRE(HTML example)[
Horizontal in vertical ("Tate-chu-yoko")
]PRE]
> [SAMP(HTML)[In Japanese, this effect is known as "Tate-chu-yoko".]]
共に出典は
[CITE[CSS3 Text Module]]
[[#comment]]
* xml:lang 属性 (XML)
- [4] [[xml]]:lang 特殊属性:
- [3] [[XSL-FO]] の [CODE(XML)[xml:lang]] 属性の値には [CODE(XSL)[inherit]] を指定できます。 ([[言語札]>>40] 参照)
-
[5] XML 1.0 [ABBR[FE] [First Edition]] では[[言語札]]の構文も定義されていました () が、 [ABBR[SE] [Second Edition]] では RFC に一任されています。
[7] XML 1.0 [[SE]] Errata では重大な変更が加えられています。型が [CODE(SGML)[[[NMTOKEN]]]] から [CODE(SGML)[[[CDATA]]]] に変更され、空文字列が認められました。
- [8] >>7 空文字列だと言語指定取消し (指定なし。) になります。 ([[XML名前空間]]の 1.1 版と似たような変更ですね。) ''Errata in REC-xml-20001006''
[21]
[CODE(lang)[[[und]]]] (決定できない) という言語札もあったりしますが、空文字列はもっと積極的に、どの言語にも属さない場合 (絵とか) に使う、のではないでしょうかねぇ。
([[名無しさん]])
[[#comment]]
* lang() 関数 (XPath)
[6] [[XPath]] の[[関数]] [CODE(XPath)[[[lang()]]]] って使えないと思いません? 引数に[[言語札]]を与えることで、その言語 (前方一致。) であるかどうかを [[boolean]] として返します。だから例えば、 [[XSLT]] を使って多言語文書から特定言語の段落を抜き出す、とかには使えても、特定要素ノードの言語を調べる、には使えない。 ([CODE(XML)[xml:lang]] 属性使ってもいいけど、この属性の値は継承するから・・・あ、 [CODE(XPath)[ancestor-or-self::*[@xml:lang]/@xml:lang]] という手があるか。)
[20] >>6 でもそれじゃあ上位プロトコルによる情報までは手が及ばない。
っていうか XPath 全体として、上位プロトコル提供の情報には access
不能 or 困難だよねぇ。
[[#comment]]
* メモ
[1] [CODE(HTML)[lang]] 属性の値で [[CJK]] [[字形]]を区別するのは、間違ってはいませんが良い考えではありません。 (でも [[Unicode]] には他に方法はないです。)
[2] >>1 [[異体字タグ]]? 萎えるな。それに [[XML]] でそれは使えるんだろうか?