[1] RFC 3080: The Blocks Extensible Exchange Protocol Core, , https://www.rfc-editor.org/rfc/rfc3080#section-2.3.1.1
[2] RFC 3066 言語タグを1つ以上指定する >>1 とされます。
[3] 構文は XML DTD で定義されていて、
属性値は
NMTOKEN,
既定値は i-default とされています。
[4] NMTOKEN なのに複数指定できるというのは矛盾します。
[5]
DTD の注釈には、 NMTOKENS で0個以上指定できる、とあります。
ただし localize 属性に対する説明ではなく、そのデータ型に対する説明です。
[6]
本来 NMTOKENS とするべきところが、誤って NMTOKEN とされてしまったと思われます。
[7] ただし0個のみの指定は、属性に対する明文規定が優先されるべきですから、 認めないと解釈するべきです。
[8]
なお、 XML では NMTOKENS は1個以上でなければなりません。
DTD の注釈が不適切です。
[9]
DTD の注釈には en-US と指定する例があります。
[10] RFC 4324: Calendar Access Protocol (CAP), , https://www.rfc-editor.org/rfc/rfc4324.html#section-7.6
[11]
CAP では LOCALIZE 引数に
BEEP greeting localize で指定する値を書くことになっています。
>>10
[12]
ところが CAP の RFC の例文では値が fr_CA とPOSIXロケール風になっています。
[13] これについて何の説明もありません。
[14] RFC 4324: Calendar Access Protocol (CAP), , https://www.rfc-editor.org/rfc/rfc4324.html#section-10.13
[15]
CAP では SET-LOCALE 命令でロケールの指定ができ、
その値について
newlocale = ; Any locale supplied in the initial [BEEP]
; "greeting" "localize" parameter and
; and any charset supported by the CS
; and listed in the DEFAULT-CHARSET property
; of the VCALSTOREと説明があって、
CMD:OPTIONS=en_US.UTF-8:SET-LOCALE
CMD:OPTIONS=th_TH.ISO8859-11:SET-LOCALE
CMD:OPTIONS=es_MX.ISO8859-1:SET-LOCALEと具体例が挙げられています。
[16]
localize と charset と説明があるので、 .
の前は localize、後は charset でしょうか。
でも2つ合わせて POSIXロケール風にも見えますが。
[17]
しかし DEFAULT-CHARSET の値は IANA charset なのですが、
ISO8859-1
や
ISO8859-11
は IANA charset 名ではありません。
(ISO-8859-1 や ISO-8859-11 なら IANA charset なのですが。)
[18]
そもそも BEEP では localize は言語だとしか書かれていないのですが、
それがここでは charset と組み合わされることでなぜかロケールにすり替わっています。
ロケールというのは言語と文字コードの組み合わせのことなのでしょうか。