[1] SGML 公式システム識別子の実体符号化指定 (encoding
) 属性形式の属性は、
実体で使用されている符号化を指定します。
[2] 仕様書:
[7] 実体が蓄積される時に文字は内部表現から蓄積庫におけるオクテット列に変換されますが、 内部表現はシステム依存なので、その変換を直接指定するのではなく、 文字からオクテット列への写像を属性で指定します。 蓄積庫管理器はこの指定と内部表現をもとに実際の変換方法を決定します。 ISO/IEC 10744:1997 A.6.5.2
[8] 符号化方式を指定する方法は2種類あります。
encoding
)
属性で特定の符号化方式を指定します。
この場合符号化方式は文書文字集合とは独立となります。bctf
)
属性で固定長のビット組合せからオクテット列への写像を指定します。
この場合、変換は次の2つの組合せとなります。実体を読む時には逆変換を行います。
[9] 蓄積庫物体がオクテット
が実際には包含子実体の文字であるような包含子である場合には、
属性は通常包含子か包含される物体のいずれかにのみ指定し、
両方には指定しません。 ISO/IEC 10744:1997 NOTE 510
[5] SGML 公式システム識別子の実体符号化指定
(encoding
) 属性形式の実体符号化指定 (encoding
) 属性は、
実体で使用されている符号化方式を指定します。
[4] 仕様書:
encoding
)encoding
NAME
(符号化方式を表す登録値記法名)bctf
)
属性も省略された時) same
[10] ビット組合せ変形形式 (bctf
)
属性と実体符号化指定 (encoding
)
属性は、高々1つのみ指定できます。
ISO/IEC 10744:1997 A.6.5.2
[11] この属性は SGML文実体, CDATA
実体、
SDATA
実体にのみ指定できます。
ISO/IEC 10744:1997 A.6.5.2
[12] ISO/IEC 10744:1997 で定義されている符号化方式:
(いずれも実装は必須ではありません。)
[13] UCS-2
と UCS-4
と
UNICODE
は
ISO/IEC 10646 の版を指定していませんが、 UTF-8
と UTF-16
は (規定する附属書が追補で追加されたものだったせいでしょうが)
版が指定されています。
UNICODE
は Unicode規格ではなく
ISO/IEC 10646 を参照しています (実質的には同じですけどね)。
UCS-2
と UCS-4
と
UTF-8
と UTF-16
はバイト順や BOM
に関する規定が 10744 にはありません。
UCS-2
と UCS-4
は 10646
の規定的には大エンディアンと思われます。
特に規定がないのでいずれも大エンディアン、
BOM
はいずれもなしを 10744
は想定していたのではないかと推測しますが、 10644
には後から
という感じの附属書が追加されていたりします。
(その辺りの規格制定の順序はどうでしたっけ?)BOM
はあってもなくてもよい
IS8859-N
も版の指定がありません。
EUC-JP
と SJIS
はインターネットの登録
を参照しています。
本稿の執筆の時点では EUC-JP
は IANA
の登録簿で簡単に定義され、 SJIS
(Shift_JIS
) は JIS X 0208:1997
の附属書1を参照しています。