XMLの文字コード (第2回 Unicode)

Unicodeとは

Unicodeは、全世界の言語を記述可能な文字セットです。(文字セットの意味は、「第1回 文字セットと文字コード」を参照してください。)

Unicode文字セットは百万を超える文字を収容でき、現在は143,859個の文字が登録されています。

Unicodeの文字番号は、21ビットで表します。(0〜0x1FFFFF)

Unicodeは、世界各国の既存の文字セットの上位互換になっています。

UnicodeはUnicodeコンソーシアムによって定義され、1993年にISOに登録されました。(現在はJISにも登録されています。)

Unicode登場の背景

従来は、OSやアプリを言語別にカスタマイズしていました(英語版、日本語版、アラビア語版など)が、ITのグローバル化によって対応言語が増え、カスタマイズでは対応が困難になりました。

全世界の言語に対応したOSやアプリの作成には、全世界の言語を表現できる文字セットが必要です。

UnicodeとXMLの関係

XMLはUnicodeで記述します。

UnicodeとJISとの関係

Unicodeは、すべてのJIS文字セットの文字を含みます。

従来の日本語用文字コードは、Unicodeに完全に変換できます。

従来の日本語用文字コードをUnicodeに変換したものから、元の文字コードを完全に復元できます。(相互互換性)

Unicodeの歴史

Unicode 1.x (1992~)

最初のバージョン (文字番号は16ビット)

JIS第1/第2水準漢字、JIS補助漢字に対応

ISOに登録 (ISO/IEC 10646)

Unicode 2.x (1996~)

Windows NTがUnicodeを採用

XML(1996制定)がUnicodeを採用

Unicode 3.x (2000~)

JIS第3/第4水準に対応

16ビットでは文字を収容しきれなくなり、21ビットに拡張

Unicode 6.x (2010~)

絵文字を追加 (iPhone/Androidで絵文字が使えるようになる)

Unicode 7.0 (2014)

このバージョン以降、毎年定期バージョンアップとなる

Unicode 12.1 (2019/5)

日本の改元対応のため、緊急バージョンアップ (組み文字「㋿」を追加)

Unicode 13.0 (2020)

最新バージョン