-
Notifications
You must be signed in to change notification settings - Fork 4
/
242.txt
256 lines (201 loc) · 10.6 KB
/
242.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
[1] [DFN[[[ISO/IEC 10646]]]] は、 [DFN[[[UCS]]]]
([DFN[Universal Multiple-octet Coded Character Set]]、
(多オクテットの) 国際符号化文字集合) を規定する [[ISO/IEC]]
の[[国際標準]]です。
[2] [[UCS]] は、4[[オクテット]] (厳密には31[[ビット]]) の[[符号空間]]に世界中の[[文字]]を符号化しています。
[[ISO/IEC]] [[JTC1/SC2]](/[[WG2]]) によって開発されています。
[5] [[Unicode Consortium]] によって開発されている [[Unicode Standard]]
と事実上同じ[[符号化文字集合]]となっていて、両者は共同で標準化作業を行っています。
このため、稀に [[Unicode]] と [[ISO/IEC 10646]] の総称を [[UCS]]
と呼ぶこともあります。
* 代替
[FIG(important)[
[18] [[政治的]]にやむを得ない場合を除き、 [[Unicode]] ではなく
[[ISO/IEC 10646]] を使うべき場面はありません (>>14)。
]FIG]
* 符号位置の表記
[8] [[符号位置]]を8ビットごとに区切って上位の[[オクテット]]から順に[[群]]、[[面]]、
[[区]]、[[点]]といいます。
[9] [[十六進数]]により [CODE[[[U-[VAR[HHHHHHHH]]]]]] とも表記します ([[十六進数]]部分は8桁固定)。また0[[群]]
0[[面]]-16[[面]]は [CODE[[[U+[VAR[HHHH]]]]]] とも表記します ([[十六進数]]部分は4-6桁可変)。
* 符号化文字集合
[10] 現在までに[[文字]]が割り当てられているのは0[[群]]の次の[[面]]です。
[FIG(short list)[
- [[BMP]] (0[[面]])
- [[SMP]] (1[[面]])
- [[SIP]] (2[[面]])
- [[TIP]] (3[[面]])
- [[SSP]] (14[[面]])
]FIG]
[11] この他に[[私用域]]があります。
* 符号化方式
[7] 現在または過去の [[ISO/IEC 10646]] は次の[[符号化文字集合]]を規定しています。
[FIG(short list)[
- [[UCS-2]]
- [[UCS-4]]
- [[UTF-8]]
- [[UTF-16]]
- [[UTF-1]]
]FIG]
;; [17] 厳密には [[Unicode]] と [[ISO/IEC 10646]] の [[UTF-8]] は定義が異なります。
* 文字の情報
[6] [[Unicode Consortium]] が [[Unicode]] の[[文字]]について [[Unicode Character Database]]
として詳細な情報を公開しているのに対し、 [[ISO/IEC 10646]] は[[附属書]]にわずかに説明があるだけで、
[[代表字形]]と[[文字の名前]]以外の情報はほとんど含まれていません。
([[Unicode]] ではなく) [[UCS]] を実用レベルで実装するのはほとんど不可能と思われます。
* 対応国内規格
[4] [[JIS]] は日本語版を [DFN[[[JIS X 0221]]]] として出版しています。
(ただし基本的に数年遅れのようです。[[政治的理由]]から
[[JIS]] を参照しなければならない場面以外に、
実用的な価値は皆無です。)
[36] [[中華人民共和国]]には [[GB 13000]] があります。
* 実装水準
[37]
古い
[[ISO/IEC 10646]]
は、
[DFN[[RUBYB[実装水準][implementation level]]]]を
1、
2、
3
の3種類定義していました。
現在の
[[ISO/IEC 10646]]
ではこの区分は廃止されており、
[[実装水準3]]相当となっています。
[38]
[[ISO/IEC 2022]] [[エスケープシーケンス]] [CODE(charname)@en[DOCS]]
や、
[[ISO/IEC 10646]] [[附属書]]N ([[参考]]) の [[ASN.1]] 構文で、
使用する[[実装水準]]が識別されていました。
現在は旧[[実装水準3]]のもののみ[[規定]]されており、
[[NOTE]] で[[実装水準1]]、[[実装水準2]]は[RUBYB[[[非推奨]]][deprecated]]とされています。
[HISTORY[
[39]
[DFN[実装水準1]]では、
[[結合文字]] (附属書B.1) と、
[CODE[HANGUL JAMO]] [[ブロック]]の[[文字]]をつかってはなりません。
[40]
[DFN[実装水準2]]では、
附属書B.2の[[文字]]
(B.1の一部および [CODE[HANGUL JAMO]])
をつかってはなりません。
[41]
[[実装水準1]]と[[実装水準2]]では、
[[インド系文字]]に関する
[[unique-spelling rule]]
に従わなければなりません。
]HISTORY]
* Unicode との関係
[13] [[Unicode]] と [[ISO/IEC 10646]] は実質的に同じ[[文字コード]]ですが、
仕様書としてはまったく異なっています。両者の標準化手続きは連動していますが、
両者の出版には時間差があります。
[14] 実用上 [[ISO/IEC 10646]] には実装するのに十分な情報が含まれておらず、
[[Unicode]] が広く利用されています。他の標準化団体の仕様書等から
[[ISO/IEC 10646]] と [[Unicode]] のどちらを引用するべきかという議論も
00年代初期までは盛んに行われていましたが、 [[Unicode]] の方が積極的に
[[Web]] で情報を公開していることもあり、現在では [[Unicode]]
を参照するのが普通です。
[34]
しかも、
初期の版は
[[Unicode]]
とは同内容の別[[規格]]という建前を保っていましたが、
何度目かの改訂から徐々に一部の[[規定]]で
[[Unicode]]
を参照するようになっています。
[15] 国家機関などで[[公的標準]]を参照しなければならない制約があるなど特殊な状況を除き、
[[ISO/IEC 10646]] を使う意味はほとんどありません。
* 歴史
[16]
,*規格番号 ,*出版日 ,*規格名 ,*ほぼ相当する Unicode の版
, ,1983-07 ,2オクテット規格の提案
, ,1984-04 ,[[JTC1/SC2/WG2]] 組織 (JTC1 は当時 TC97)
,WD 10646 ,1987 ,1[SUP[st]] [ABBR[WD][Working Draft]] (A案/B案)
, ,1987-03 ,符号化方式が決定 (A案)
,DP 10646 ,1989-01 ,1[SUP[st]] [ABBR[DP][Draft Proposal]]
, ,1989-10 ,draft?
, ,1989-12 ,2[SUP[nd]] DP
, ,1990 ,[[CJK-JRG]]
,DIS 10646:1991,1990-12-06,1[SUP[st]] [ABBR[DIS][Draft International Standard]],Information technology: Universal Coded Character Set
, ,1991-02 ,draft?
, ,1991-04 ,1[SUP[st]] DIS 投票否決
, ,1991 ,Unicode 化決定
,DIS 10646-1.2:1992,1992
, ,1992-06,2[SUP[nd]] DIS 投票通過
,ISO/IEC 10646-1:1993 ,1993-05 ,Part 1: Architecture and Basic Multilingual Plane ,1.1
,ISO/IEC 10646-1:2000 ,2000-09-15 ,Part 1: Architecture and Basic Multilingual Plane ,3.0
,ISO/IEC 10646-2:2001 ,2001-11-01 ,Part 2: Supplementary Planes ,3.1
,ISO/IEC 10646-1:2000/Amd.1:2002 ,2002-07-15 ,AMENDMENT 1: Mathematical symbols and other characters ,3.2
,ISO/IEC 10646-1:2000/Amd.2 , , ,4.0
,ISO/IEC 10646-2:2001/Amd.1 , , ,4.0
,ISO/IEC 10646:2003,2003,[CITE@en[Information technology —— Universal Multiple‐Octet Coded Character Set (UCS)]]
,ISO/IEC 10646:2003/Amd.1,2005-11-22,"[CITE@en[AMENDMENT 1: Glagolitic, Coptic, Georgian and other characters]]"
[3]
10646 の第一部と第二部を併合するのは Unicode との同期が面倒だかららしいぞ...
([[名無しさん]] [sage] [WEAK[2004-04-07 02:56:20 +00:00]])
[19] [DFN[[[JIS X 0221-1995]]]] [CITE[国際符号化文字集合 (UCS) ――第1部 構造及び基本多言語面]]は、
1995年/平成7年1月1日制定、1月4日[[官報]]公示。
[21] [[ISO/IEC 10646-1:1993]] の[[対応国内規格]]でした。
[22] [[JIS]] 独自の次の[[附属書]]がありました。
[FIG(list)[
- 附属書1 (規定) 日本文字サブレパートリ
- 附属書2 (規定) 日本語データ情報交換用としての私用文字の使用
- 附属書3 (参考) JIS X 0201, JIS X 0208 及び JIS X 0212 表内文字との対応
]FIG]
[23] 附属書1では次の[[文字集合]]が定義されていました。
[FIG(list)[
- 基本日本文字集合
- 追加非漢字集合
- 追加漢字集合
- 補助漢字集合
- その他の漢字集合
- 互換用全角英数字集合
- 互換用半角仮名集合
]FIG]
[24] 基本日本文字集合には [CODE(charname)@en[[[COMBINING ENCLOSING CIRCLE]]]]
が (なぜか) 含まれていたようです。
[25] 基本日本文字集合と追加非漢字集合にはなぜかどちらにも
[CODE(charname)@en[[[TILDE]]]],
[CODE(charname)@en[[[HYPHEN]]]],
[CODE(charname)@en[[[OVERLINE]]]],
[CODE(charname)@en[[[IDEOGRAPHIC SPACE]]]]
が重複して含まれていたようです。
[20] 2000年/平成12年6月20日[[確認]]、2001年/平成13年4月20日[[廃止]]。
[26] [DFN[[[JIS X 0221-1:2001]]]] [CITE[国際符号化文字集合 (UCS) ――第1部 構造及び基本多言語面]]は、
2001年/平成13年4月20日のものです。
[27] [[ISO/IEC 10646-1:2000]] の[[対応国内規格]]でした。
[28] 旧 [[JIS]] の附属書は[[規定]]から[[参考]]に変わって存続しています。
おおまかな構成は変わっていないようですが、細かい内容は修正されているようです。
[29] [[mohta]] 氏が [[IETF]] を通じて[TIME[1995年][year:1995]]に出版した
[DFN[[[RFC 1815]]]] は、2つの [[ISO/IEC 10646]] の[[プロファイル]]を定義し、
[[IANA charset]] として登録しました。
[FIG(short list)[
- [DFN[[CODE(charset)@en[ISO-10646]]]]
- [DFN[[CODE(charset)@en[ISO-10646-J-1]]]]
]FIG]
[30] [CODE(charset)@en[ISO-10646]] は、 [[ISO/IEC 8859-1]] 相当の[[部分集合]]でした。
[CODE(charset)@en[ISO-10646-J-1]] は、 [[JIS X 0208]] と[[半角文字]]、[[全角文字]]にほぼ相当する[[部分集合]]でした。
[[CJK統合漢字]]は「J」欄を用いるとしていました。
いずれも[RUBYB[[[非推奨]]]@en[discourage]]であり、 [[ISO-8859-1]] または
[[ISO-2022-JP]] を使うべきとされていました。
;; [33] [[非推奨]]とされたのは [[mohta]] の思想上の理由。
[REFS[
- [12] [CITE@en[RFC 1815 - Character Sets ISO-10646 and ISO-10646-J-1]] ([TIME[2016-05-15 17:30:23 +09:00]]) <https://tools.ietf.org/html/rfc1815>
]REFS]
[FIG(quote)[
[FIGCAPTION[
[31] [CITE@en[RFC 8120 - Mutual Authentication Protocol for HTTP]]
([TIME[2017-04-20 12:04:06 +09:00]])
<https://tools.ietf.org/html/rfc8120#section-3.1>
]FIGCAPTION]
> All of the parameters contained in the above three headers, except
> for the "realm" field, MAY be extended to ISO 10646-1 values using
> the framework described in '''['''RFC5987''']'''.
]FIG]
[32] [CITE@ja[ISO/IEC 10646:2017が発行 漢字の国際規格化が完了 | 文字情報基盤整備事業]]
([TIME[2017-12-26 16:35:29 +09:00]])
<http://mojikiban.ipa.go.jp/4825.html>
[35] [CITE@ja[国際符号化文字集合(UCS) JIS改正原案作成委員会 | IPSJ/ITSCJ]]
([[一般社団法人 情報処理学会 情報規格調査会]], [TIME[2020-09-25T07:18:23.000Z]], [TIME[2020-10-04T13:15:23.406Z]])
<https://www.itscj.ipsj.or.jp/hyojunka/h_sn_member/h_sn_katsudo/h_sn_katsudo2012/jucs_2012.html>