「UCS-4」の意味や使い方 わかりやすく解説 Weblio辞書 (original) (raw)
ISO/IEC 10646 (UCS; 英: Universal Coded Character Set) は、符号化文字集合や文字符号化方式などを定めた、文字コードの国際標準のひとつで、業界規格のUnicodeと概ね互換である。日本の対応規格はJIS X 0221(国際符号化文字集合)。
文字空間(0 - 10FFFF16)、収録されている文字、それらの符号位置、英語でつけられた文字の名前、文字符号化方式(UTF-8, UTF-16, UTF-32)はUnicode規格と全く同じである[1][2][3][4]。ただし、文字空間は古い規格では21ビットのUnicodeをベースにして文字空間を31ビットに拡張したものとされ、Unicodeの最大値であるU+10FFFFより大きなコードも使用できるという点でUnicodeと異なっていた。しかし、2006年の改訂によりUnicodeで使用できない領域には文字が「永久に定義されない」こととされ、2011年の改訂では明確に0 - 10FFFFと定義され同一となった。
面 (plane)、区 (row)、点 (cell) として分けられ、Unicodeと同じ第0面の基本多言語面 (BMP; 英: Basic Multilingual Plane) と追加面の第1 - 16面までの範囲で文字が定義されている。古い規格では群 (group) という分類もあったが2011年の改訂で廃止された。
制定の経緯とその影響
この規格は制定の一歩手前の段階までは、現在の姿とはかなり異なる仕様だった。4オクテットの符号であり、各オクテットをそれぞれ群、面、区、点とする。各面には従来のコントロール領域を避けた0x20 - 0x7Fと0xA0 - 0xFFの範囲に文字を割り当てる。その範囲にISO/IEC 2022に従った構造の各国コード(ISO/IEC 8859やJIS X 0208、GB 2312など)を平行移動してそっくり収容するという、従来のコード系との互換性を最大限に尊重した構成をとっていた。
この案は1990年に国際標準の一歩前の段階のDIS (Draft International Standard) として作成されたが、1991年6月の投票で否決された。その理由は、同じ時期にアメリカの企業群がUnicode仕様を作成したため、同じ目的の規格が2つ作られることを避けることだった。
その後、DIS 10646とUnicodeとを一本化する作業が行われた。既存規格との整合性を重んじたDIS 10646に対して、Unicodeは各種アルファベット類は新規割り当て、漢字は日中韓を統合、符号位置はコントロール領域まで全て使って2オクテット固定という、全く異なる方針で設計されていた。結果として、「群・面・区・点」という用語は残しながら、第0群第0面を基本多言語面 (BMP) と称し、BMPにUnicodeをそっくり入れてその他の群・面は未使用という、実質2オクテットの符号となった。
結局、Unicodeに乗っ取られ第1版とは似ても似つかぬ符号になったDIS 10646第2版が、そのままInternational Standardとして制定されることとなった。1993年のことである。
このような経緯をたどり、既存規格との対応が不明確な定義になってしまったため、既存規格とのコード変換において、似たような形の多い記号のどれに対応させるのかの判断が困難となる問題が生じた。これにより、製品によってコード変換が異なる問題が常態化し、この問題に起因する文字化けは今[_いつ?_]に至るまで解決の目処が経っていない。ただし漢字については、元になった各国規格の符号位置が明示されているため変換の違いは生じていない。
制定された規格群
※ 1999年9月以降、2000年9月までに成立したAmendmentおよびTechnical Corrigendumは、発行されずそのままISO/IEC 10646-1:2000に組み込まれた。
| 発行日 | 規格番号 | 名称 |
|---|---|---|
| 1993/05/01 | ISO/IEC 10646-1: 1993 | Universal Multiple-Octet Coded Character Set (UCS) -- Part 1: Architecture and basic Multilingual Plane |
| 1996/03/01 | ISO/IEC 10646-1: 1993/Cor.1 | TECHNICAL CORRIGENDUM 1 to ISO/IEC 10646-1:1993 |
| 1996/10/15 | ISO/IEC 10646-1:1993/Amd.1 | Transformation Format for 16 planes of group 00 (UTF-16) |
| 1996/10/15 | ISO/IEC 10646-1:1993/Amd.2 | UCS Transformation Format 8 (UTF-8) |
| 1996/10/15 | ISO/IEC 10646-1:1993/Amd.3 | Code positions for control characters |
| 1996/10/15 | ISO/IEC 10646-1:1993/Amd.4 | Removal of annex G (UTF-1) |
| 1997/11/15 | ISO/IEC 10646-1:1993/Amd.6 | Tibetan |
| 1997/11/15 | ISO/IEC 10646-1:1993/Amd.7 | 33 additional characters |
| 1997/12/15 | ISO/IEC 10646-1:1993/Amd.8 | New annex on CJK Ideographs to ISO/IEC 10646-1:1993 |
| 1997/12/15 | ISO/IEC 10646-1:1993/Amd.9 | Identifiers for Characters |
| 1998/05/15 | ISO/IEC 10646-1:1993/Amd.5 | Hangul syllables |
| 1998/07/15 | ISO/IEC 10646-1:1993/Cor.2 | TECHNICAL CORRIGENDUM 2 to ISO/IEC 10646-1:1993 |
| 1998/07/15 | ISO/IEC 10646-1:1993/Amd.11 | Unified Canadian Aboriginal Syllabics |
| 1998/09/01 | ISO/IEC 10646-1:1993/Amd.12 | Cherokee |
| 1998/10/01 | ISO/IEC 10646-1:1993/Amd.10 | Ethiopic script |
| 1998/10/15 | ISO/IEC 10646-1:1993/Amd.13 | CJK unified ideographs |
| 1998/11/01 | ISO/IEC 10646-1:1993/Amd.16 | Braille Patterns |
| 1998/11/01 | ISO/IEC 10646-1:1993/Amd.19 | Runic |
| 1998/11/01 | ISO/IEC 10646-1:1993/Amd.20 | Ogham |
| 1999/05/15 | ISO/IEC 10646-1:1993/Amd.23 | Bopomofo and various other characters |
| 1999/06/01 | ISO/IEC 10646-1:1993/Amd.21 | Sinhala |
| 1999/07/15 | ISO/IEC 10646-1:1993/Amd.17 | CJK Unified Ideograph Extension |
| 1999/07/15 | ISO/IEC 10646-1:1993/Amd.18 | Symbols and Others |
| 1999 | ISO/IEC 10646-1:1993/Cor.3 | TECHNICAL CORRIGENDUM 3 to ISO/IEC 10646-1:1993 |
| 1999 | ISO/IEC 10646-1:1993/Amd.14 | Yi syllables and Yi radicals |
| 1999 | ISO/IEC 10646-1:1993/Amd.22 | Keyboard symbols |
| 1999 | ISO/IEC 10646-1:1993/Amd.24 | Thaana Script |
| 1999 | ISO/IEC 10646-1:1993/Amd.25 | Khmer Script |
| 1999 | ISO/IEC 10646-1:1993/Amd.26 | Burmese Script |
| 1999 | ISO/IEC 10646-1:1993/Amd.27 | Syriac Script |
| 1999 | ISO/IEC 10646-1:1993/Amd.29 | Mongolian |
| 1999 | ISO/IEC 10646-1:1993/Amd.30 | Additional Latin and other characters |
| 2000 | ISO/IEC 10646-1:1993/Amd.15 | Radicals and Numerals |
| 2000 | ISO/IEC 10646-1:1993/Amd.28 | Ideographic Description Sequences |
| 2000 | ISO/IEC 10646-1:1993/Amd.31 | Tibetan Extension |
| 2000/09/15 | ISO/IEC 10646-1:2000 | UCS -- Part 1: Architecture and basic Multilingual Plane |
| 2001/11/01 | ISO/IEC 10646-2:2001 | UCS -- Part 2: Supplementary Planes |
| 2002/07/16 | ISO/IEC 10646-1:2000/Amd.1 | Mathematical symbols and other characters |
| 2003/12/15 | ISO/IEC 10646:2003 | Universal Multiple-Octet Coded Character Set (UCS) |
| 2005/11/15 | ISO/IEC 10646:2003/Amd.1 | Glagolitic, Coptic, Georgian and other characters |
| 2006/07/01 | ISO/IEC 10646:2003/Amd.2 | N'Ko, Phags-pa, Phoenician and other characters |
| 2008/02/15 | ISO/IEC 10646:2003/Amd.3 | Lepcha, Ol Chiki, Saurashtra, Vai and other characters |
| 2008/07/01 | ISO/IEC 10646:2003/Amd.4 | Cham, Game Tiles, and other characters |
| 2008/12/01 | ISO/IEC 10646:2003/Amd.5 | Tai Tham, Tai Viet, Avestan, Egyptian Hieroglyphs, CJK Unified Ideographs Extension C, and other characters |
| 2009/10/15 | ISO/IEC 10646:2003/Amd.6 | Bamum, Javanese, Lisu, Meetei Mayek, Samaritan, and other characters |
| 2010/7/15 | ISO/IEC 10646:2003/Amd.7 | Mandaic, Batak, Brahmi, and other characters |
| 2011/5/2 | ISO/IEC 10646:2011 | Universal Coded Character Set (UCS) |
| 2012/05/21 | ISO/IEC 10646:2012 | Information technology -- Universal Coded Character Set (UCS) |
| 2013/04/09 | ISO/IEC 10646:2012/Amd 1:2013 | Linear A, Palmyrene, Manichaean, Khojki, Khudawadi, Bassa Vah, Duployan, and other characters |
| 2014/08/29 | ISO/IEC 10646:2014 | Information technology -- Universal Coded Character Set (UCS) |
| 2015 | ISO/IEC 10646:2014/Amd 1:2015 | Cherokee supplement and other characters |
| 2016 | ISO/IEC 10646:2014/Amd 2:2016 | Bhaiksuki, Marchen, Tangut and other characters |
| 2017/12/22 | ISO/IEC 10646:2017 | Information technology -- Universal Coded Character Set (UCS) |
文字符号化方式
Unicodeの『UTF』が『Unicode Transformation Format』を意味するのに対し、ISO/IEC 10646の『UTF』は『UCS Transformation Format』を意味する。
UTF-1
初期に提案されていた、8ビットコードによる方式。ほとんど利用されることなくUTF-8にとって代わられた。
UCS-2
2オクテット固定のUCS (Universal Coded-Character Set) である。BMP(基本多言語面)以外の文字を使うことはできず、すべての文字を符号化できるUTF-16にとって代わられた。2011年の改訂ではdeprecated(廃止予定)とされた。
UnicodeのUTF-8と同じ[3]。
UnicodeのUTF-16と同じ[4]。
UTF-32 (UCS-4)
UnicodeのUTF-32と同じ。
実装レベル
古い規格では実装レベルというものが考えられていたが2011年の改訂で廃止され、Level3の実装のみを扱う事となった。
Level 1
合成列などを扱わない
Level 2
必要な合成列を扱える
Level 3
全て扱える
Unicodeは、Level 3の実装である。
脚注
- ^ “The Unicode Standard Version 11.0 (PDF)” (English). The Unicode Consortium. p. 1 (2018年6月5日). 2019年1月21日閲覧。 “The Unicode Standard is code-for-code identical with International Standard ISO/IEC 10646.”
- ^ “The Unicode Standard Version 11.0 (PDF)” (English). The Unicode Consortium. p. 88 (2018年6月5日). 2019年1月21日閲覧。 “The character names in the Unicode Standard match those of the English edition of ISO/IEC 10646.”
- ^ a b “The Unicode Standard Version 11.0 (PDF)” (English). The Unicode Consortium. p. 930 (2018年6月5日). 2019年1月21日閲覧。 “The ISO/IEC 10646 definition of UTF-8 is identical to UTF-8 as described under Definition D92 in Section 3.9, Unicode Encoding Forms.”
- ^ a b “The Unicode Standard Version 11.0 (PDF)” (English). The Unicode Consortium. p. 930 (2018年6月5日). 2019年1月21日閲覧。 “The ISO/IEC 10646 definition of UTF-16 is identical to UTF-16 as described under Definition D91 in Section 3.9, Unicode Encoding Forms.”
参考文献
- ISO/IEC 10646:2003 Information technology -- Universal Multiple-Octet Coded Character Set (UCS)
- ISO/IEC 10646:2003/Amd 1:2005 Glagolitic, Coptic, Georgian and other characters
- ISO/IEC 10646:2003/Amd 2:2006 N'Ko, Phags-pa, Phoenician and other characters
- ISO/IEC 10646:2011(E) Universal Coded Character Set (UCS)
- ISO/IEC 10646:2017 Universal Coded Character Set (UCS)
| 表 話 編 歴 ISO標準 | |
|---|---|
| 国際標準一覧 · ローマ字表記国際規格一覧 · 国際電気標準会議が定める国際標準一覧 | |
| 1から10000まで | 1 2 3 4 5 6 7 9 16 31 -0 -1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 128 216 217 226 228 233 259 269 302 306 428 518 519 639 -1 -2 -3 -5 -6 646 668 690 732 764 843 898 965 1000 1004 1007 1073-1 1413 1538 1745 1989 2014 2015 2022 2047 2108 2145 2146 2240 2281 2382 2709 2711 2788 2852 3029 3103 3166 -1 -2 -3 3297 3307 3602 3864 3901 3977 4031 4157 4217 4909 5218 5428 5775 5776 5800 5964 6166 6344 6346 6385 6425 6429 6438 6523 6709 6937 7001 7002 7010 7098 7185 7200 7498 7736 7810 7811 7812 7813 7816 7942 8000 8178 8217 8571 8473 8583 8601 8613 8632 8652 8691 8807 8820-5 8859 -1 -2 -3 -4 -5 -6 -7 -8 -8-I -9 -10 -11 -12 -13 -14 -15 -16 8879 9000/9001 9075 -10 9126 9293 9241 -210 9362 9407 9506 9529 9564 9592 9594 9660 9897 9899 9945 9984 9985 9995 |
| 10001から20000まで | 10006 10021 10116 10118-3 10160 10161 10165 10179 10206 10218 10303 -11 -21 -22 -28 -238 10383 10487 10585 10589 10646 10664 10746 10861 10957 10962 10967 11073 11170 11179 11404 11519 11544 11783 11784 11785 11801 11898 11940 -2 11941 11941 (TR) 11992 12006 12100 12182 12207 12234 -2 -3 13211 -1 -2 13216-1 13250 13399 13406-2 13407 13450 13482 13485 13490 13522-5 13567 13568 13584 13616 14000 14031 14224 14230 14289 14396 14443 14492 14496 -2 -3 -6 -10 -11 -12 -14 -17 -20 14644 -1 -2 -3 -4 -5 -6 -7 -8 -9 14649 14651 14698 -2 14750 14764 14882 14971 15022 15189 15288 15291 15292 15398 15408 15444 -3 15445 15438 15504 15511 15686 15693 15706 -2 15707 15836 15897 15919 15924 15926 15926 WIP 15930 15948 16023 16262 16612-2 16750 16949 17024 17025 17203 17369 17799 18000 18004 18014 18033 18092 18245 18629 18916 19005 19011 19092 -1 -2 19100 19114 19115 19125 19136 19439 19500 19501 19502 19503 19505 19506 19507 19508 19509 19510 19600 19752 19757 -2 -3 -4 19770 19775 19784 19794-5 19831 20000 |
| 20001以上 | 20022 20121 21000 21047 21500 21827:2002 22000 22196 22250-1 22307 22324 23270 23271 23360 24517 24613 24617 24707 25178 25964 26000 26262 26300 26324 27000シリーズ 27000 27001:2005 27001:2013 27002 27003 27004 27005 27006 27007 27729 27799 28000 29110 29148 29199-2 29500 30170 31000 32000 37001 38500 40500 42010 80000 -1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 |
| 組織 | 国際標準化機構 |
| ISO標準 ISO 31 ISO 639 ISO 3166 ISO 8859 ISO/IEC 80000 ISO/IEC標準 | |
| 関連項目: ISOで始まる記事一覧 |