[1] [[RSS]] の [DFN[[CODE(XMLe)@en[[[language]]]] [[要素]]]]は、
[[チャンネル]]が記述されている[[自然言語]]を表します。

:[[要素名]]:[CODE(XMLe)@en[[[language]]]]
([[language]] ([[言語]]) より)
:文脈:[[チャンネル要素]]が認められる場所
:[[内容モデル]]:[[言語札]]
:[[属性]]:

仕様書:
-[CITE@en[RSS 0.91 Specification (Netscape)]] ([TIME[2008-11-22 17:21:58 +09:00]] 版) <http://www.rssboard.org/rss-0-9-1-netscape#channel>
-[CITE@en[RSS 0.92 Specification]] ([TIME[2008-11-22 17:30:45 +09:00]] 版) <http://www.rssboard.org/rss-0-9-2#ltlanguagegtIsOptional>
-[4] [CITE@en[RSS 2.0 Specification (version 2.0.10)]] ([TIME[2008-11-21 13:42:42 +09:00]] 版) <http://www.rssboard.org/rss-specification#optionalChannelElements>
-[5] [CITE@en[RSS Language Codes]] ([TIME[2008-11-21 18:33:39 +09:00]] 版) <http://www.rssboard.org/rss-language-codes>
-[CITE@en[RSS Best Practices Profile]] ([TIME[2008-11-21 15:11:45 +09:00]] 版) <http://www.rssboard.org/rss-profile#element-channel-language>

** 内容

[3] [CODE(XMLe)@en[[[language]]]] [[要素]]の[[内容]]は、
[[Netscape]] が規定したリスト (>>5) に掲載されている値、または [[W3C]]
が定義した値でなければ[['''なりません''']] [SRC@en[[[RSS 2.0]], [[RSS Best Practices Profile]]]]。
[[W3C]] が定義した値というのは [[HTML4]] [CODE(HTMLa)@en[[[lang]]]]
[[属性]]が[[リンク]]されていますから、
実際には [[IETF]] が規定した [[RFC 1766]] [[言語札]]を指します。

[4]
[[Netscape]] のリストとされるもの (>>5) には、 [[Netscape]] が出版した
[[RSS 0.91]] 仕様にはない  [CODE(lang)@en[[[et]]]] と
[CODE(lang)@en[[[haw]]]] が追加されている旨が記述されており、それを [[Netscape]]
のリストと呼ぶのはどうかと思うのですが、それはともかく、
このリストに掲載されている[[言語符号]]はすべて [[RFC 3066]] [[言語札]]としても正当なものです。

;; [[RFC 1766]] は3文字の[[言語符号]]にまだ対応していませんでしたから、
[CODE(lang)@en[[[haw]]]] だけは [[RFC 1766]] [[言語札]]としては不適切でしたが、
それ以外は [[RFC 1766]] [[言語札]]としても正しいものです。

** 文脈

[10] この[[要素]]は [[RSS 0.91]] では必須でしたが、 [[RSS 0.92]] や [[RSS 2.0]]
では省略可能です。

** 応用

[2] この[[要素]]を使うことで、[[集積器]]がある[[自然言語]]で書かれた[[サイト]]を一まとめにする、
といったことができます [SRC@en[[[RSS 2.0]]]]。

** 例

[6] 
[PRE(XML example code)[
<language>en-us</language>
]PRE]

;; [[RSS 2.0]] 仕様書より、改

[9] 
[PRE(XML example code)[
<language>epo</language>
]PRE]

;; [[RSS Best Practices Profile]] より

この例は3文字の[[言語符号]]を使っていますが、 [[RSS 2.0]] や [[RSS Best Practices Profile]]
や [[HTML4]] を厳密に解釈すると、 [[RFC 1766]] でも [[RSS Langauge Codes]]
でも [CODE(lang)@en[[[epo]]]] は認められていませんから、この例は[[非妥当]]になってしまいます。

** 関連

[7] 本来 [[XML]] では [CODE(XMLa)@en[[[xml]]:[[lang]]]] [[属性]]を使うのが正当なのでしょうが、
[[RSS]] では伝統的に[[要素]]が使われてきました。 [[RDF]] ベースの [[RSS 1.0]]
でも、 [[Dublin Core]] に由来する [CODE(XMLe)@en[dc:[[language]]]]
[[要素]]がよく使われています。一方 [[Atom]] では [CODE(XMLa)@en[[[xml]]:[[lang]]]]
[[属性]]が使われています。

[8] [[HTML]] の [CODE(HTMLe)@en[[[meta]]]] [[要素]]の
[CODE(HTMLa)@en[[[http-equiv]]]] の値 [CODE(HTTP)@en[[[Content-Language]]]]
は [CODE(XMLe)@en[[[language]]]] に近い存在と捉えることもできます。


[FIG(quote)[
[FIGCAPTION[
[11] ([TIME[2018-04-28 16:45:58 +09:00]])
<http://www.moc.go.th/index.php/rss/moc.feed>
]FIGCAPTION]

> 		<language>*</language>

]FIG]


[FIG(quote)[
[FIGCAPTION[
[12] ([TIME[2018-04-28 16:49:43 +09:00]])
<http://www.dra.go.th/rss-cms_19-Thai/>
]FIGCAPTION]

> <language>Thai (windows-874)</language>

]FIG]
