[10] [DFN[[CODE(charname)[[[IDENTIFY REVISED REGISTRATION]]]]]] ([DFN[[CODE(charname)@en[[[IRR]]]]]])
は、文字集合の[DFN[[[更新番号]]]]を表すものでした。
[[指示シーケンス]]の直前に置く[[エスケープシーケンス]]でした。


* 構文

[11] 
:[[名前]]:[CODE(charname)@en[[[IDENTIFY REVISED REGISTRATION]]]]
:[[日本語通用名称]]:[CODE(jcharname)[[[改訂版の識別]]]]
:[[略号]]:[CODE(charname)@en[[[IRR]]]]
:[[符号化表現]]:
[CODE(char)[[CODE(charname)@en[[[ESC]]]] 02/06 [VAR[[[Ft]]]]]]
([[6F]] 型[[エスケープ・シーケンス]])

[REFS[
- [12] [[JIS X 0202]]:1998
-- [CSECTION[14.5 登録文字集合の改訂番号の識別]]
]REFS]

[13] [CODE(charname)@en[[[IRR]]]] は [[ISO-IR]] 
に登録されている[[文字集合]]の[[改訂番号]]を識別します。
[SRC[[[JIS X 0202]]:1998 14.5]]


[27] [DFN@en[[CODE[6F]]]] 型[[エスケープ・シーケンス]]は、
[[文字集合改訂番号]] ([CODE(charname)@en[[[IDENTIFY REVISED REGISTRATION]]]])
に使われます。

[28] 
仕様書:
- [[JIS X 0202]]:1998
--[CSECTION[表 3.b nF 型エスケープ・シーケンス及び対応機能]]

[29] 
- [CODE(ABNF)[[DFN[エスケープ・シーケンス]] /= 6F 型エスケープ・シーケンス]]
- [CODE(ABNF)[[DFN[6F 型エスケープ・シーケンス]] := IRR / 6F 型予約エスケープ・シーケンス]]
- [CODE(ABNF)[[DFN@en[IRR]] := 標準 IRR / 私用 IRR [CODE(comment)[;; [CODE(charname)@en[[[IDENTIFY REVISED REGISTRATION]]]]]]]]
- [CODE(ABNF)[[DFN[標準 IRR]] := [CODE(charname)@en[[[ESC]]]] %x26 [[Ft]]]]
- [CODE(ABNF)[[DFN[私用 IRR]] := [CODE(charname)@en[[[ESC]]]] %x26 *[[I]] [[Fp]]]]
- [CODE(ABNF)[[DFN[6F 型予約エスケープ・シーケンス]] := [CODE(charname)@en[[[ESC]]]] %x21 1*[[I]] [[Ft]]]]
- [CODE(ABNF)[[DFN@en[I]] := %x20-2F [CODE(comment)[;; 中間バイト]]]]
- [CODE(ABNF)[[DFN@en[Fp]] := %x30-3F [CODE(comment)[;; 私用終端バイト]]]]
- [CODE(ABNF)[[DFN@en[Ft]] := %x40-7E [CODE(comment)[;; 標準終端バイト]]]]




[15] 
[CODE(charname)@en[[[IRR]]]] は、
[[符号化制御機能集合]]を[[指示]]する [CODE(charname)@en[[[CZD]]]]
又は [CODE(charname)@en[[[C1D]]]] か、[[符号化図形文字集合]]を[[指示]]する
[CODE(charname)@en[[[G[VAR[n]]D[VAR[m]]]]]] か
[CODE(charname)@en[[[G[VAR[n]]DM[VAR[m]]]]]] の直前に置きます。
その直後に置かれた[[指示]]機能によって[[指示]]が行われる[[文字集合]]の改訂番号を
[CODE(charname)@en[[[IRR]]]] が識別します。
[SRC[[[JIS X 0202]]:1998 14.5.2]]




=revised-designation = IRR designation
=IRR = ESC %x26 F ;; IDENTIFY REVISED REGISTRATION
=F = %x40-7E
=designation = <[[ISO-IR]] に登録された[[文字集合の指示]]列 ([[C0]], [[C1]], [[G0]]〜[[G3]])>



* 文字集合の改訂と改訂番号


[14] '''文字集合の改訂''':
ここでいう[[文字集合]]の改訂とは次のように定められています
[SRC[[[JIS X 0202]]:1998 14.5]]。
- [[文字]]の追加だけが許されます。
- [[ISO 2375]] の手続きにより登録済み集合の改訂として登録しなければなりません。
- 現行版と上位互換性が無い場合は改訂ではありません。


[41] 
改訂番号は 1〜63 で、 [CODE(char)[04/00]]〜[CODE(char)[07/14]]
に対応します。
[SRC[[[JIS X 0202]]:1998 14.5.2]]

[31] 
改訂番号が割り当てられるのは、改訂後の版です。最初の版には 
[CODE(charname)@en[IRR]]
を使い(え)ません。

[30] 
[CODE(charname)@en[IRR]] 
で[[私用終端バイト]]が使えるか使えないかは明言されていませんが、
改訂番号の範囲外なので使えなそうです。

[49] 
[[私用終端バイト]]が使われたという噂もあるらしいです。
[SEE[ [[NAPLPS]] ]]

[32] 
改訂番号の意味は仕様書が明言していません。常識的に考えれば、
オリジナル → 改訂1 → 改訂2 → ・・・と順に改訂していると理解するべきでしょうが。
既存の利用例は改訂1を使ったものだけで、それ以外は未だ使われていません。

;; [33] オリジナル → 改訂1と矛盾するオリジナル → 改訂2の追加も認められる、
と解釈できないこともありませんが・・・。


[16] [CODE(charname)@en[[[IRR]]]] と[[指示]]機能を組合せることにより、
古い[[装置]]や[[システム]]も新しい版を認識できます。
[SRC[[[JIS X 0202]]:1998 14.5.2 参考]]

[17] >>16 つまり[[装置]]や[[システム]]は未知の
[CODE(charname)@en[[[IRR]]]] を無視しても良いということのようです。
改訂1はオリジナルとみなされます。

[34] >>32 の解釈に従えば、改訂 [VAR[n]] + 1 は改訂 [VAR[n]] とみなすことになります。



[18] ([[ISO/IEC2022]]:1994 14.5)

文字集合に文字の追加''だけ''が行われて、それが
[[ISO2375]] により [[ISO-IR]] に登録されている時に、 IRR
を使って更新文字集合を識別出来ます。


[42] 
[[IRR]] と[[私用終端バイト]]の[[指示シーケンス]]を組合せられるのか明言されていませんが、
[[IRR]] の要件に [[ISO-IR]] への登録があるということは、
[[私用終端バイト]]の[[指示シーケンス]]には使えないということです。



[43] 
[[IRR]] と[[空集合][空集合 (ISO/IEC 2022)]]の[[指示シーケンス]]を組合せられるのか明言されていませんが、
[[空集合]]の改訂とは意味がわかりませんし、
[[ISO-IR]] にその改訂を登録することも不可能でしょう。


[44] 
[CODE(charname)@en[DOCS]] やその他の[[エスケープシーケンス]]とも組合せられません。

-*-*-

[63] [[IRR]] でない登録簿の書き換えは [[ISO-IR]] 参照。

* IRR を利用した文字集合

[35] 
[[ISO-IR]] には次の3つが登録されています。

,72  ,"Third Supplementary Set for Videotex, (Mosaic), CCITT",ESC <I> d
,173 ,"Third supplementary set of Mosaic Characters/ Videotex and Facsimile",ESC & @ ESC <I> d

;; [[94集合]]

,67  ,Additional Control Functions for Bibliographic Use according to ISO 6630  ,ESC " B
,124 ,Upward Compatible Version of ISO 6630 (Registration 67)          ,ESC & @ ESC " B

;; [[C1集合]]

,87  ,JIS X 0208-1983   ,ESC $ [<I>] B
,168 ,JIS X 0208-1990   ,ESC & @ ESC $ [<I>] B

;; [[94[SUP[2]]集合]]

[62] 
[[JIS X 0208-1990]] の[[指示シーケンス]]は、
[[JIS X 0208:1997]] (およびそれ以降) でも使われています 
(同規格の本文で[[規定]]されています)。
[[SC2]] および [[JISC]] の見解では
[[JIS X 0208-1990]] と [[JIS X 0208:1997]]
は新たな[[更新番号]]を要しない等しい[[文字集合]]であるようです。
(それには異論もあり得ます。)
[SEE[ [[JIS X 0208:1997]] ]]

[64] 
なお [[JIS X 0208:1983]] を [[G0]] に[[指示]]する[[エスケープシーケンス]]は、
[[歴史的経緯]]により、 [[G0]] を表す[[中間バイト]] [N[2/8]] がない
[CN[ESC]] [N[2/4]] [N[4/2]] です。
そのため、[[更新番号]]付きの[[エスケープシーケンス]]でも、
[[G0]] に[[指示]]するときだけ [[G0]] を表す[[中間バイト]]は使いません。

[65] 
>>64 のことは、 [[ISO-IR]] にも [[G0]] へ[[指示]]する[[エスケープシーケンス]]が1つだけ明記されていますし、
これを参照する他の規格、例えば [[T.52]] でもその[[エスケープシーケンス]]だけが記載されています。

-*-*-


[36] 
[[ISO-IR]] 未登録ですが、 [[ISO/IEC 6429]] に1つあります。

,73,C1 Control Set of ISO 6429-1983   ,ESC 02/02 04/03
,--,[[ISO/IEC6429]]:1992 C1 文字集合  ,ESC 02/06 04/00 ESC 02/02 04/03

[1] [[ISO/IEC6429のC1文字集合]]は、 ISO/IEC 6429:1992
において文字の追加と''削除''を伴う非互換な変更が行われました。
ISO/IEC 6429:1992 や [[JISX0202]]:1998
によるとこの新しい文字集合の[[指示]]・[[呼び出し]]シーケンスは上に示した改訂番号つきのものです。

[8] この改訂は、文字の追加のみの変更が認められるという
[[ISO/IEC2022]] の規定に違反しています。
(それで登録されなかったのでしょうか。
[[ISO/IEC 6429]] は [[SC2]] が制定したはずなのに、おかしいですね。)

[40] 
[[ISO/IEC 10646]] は仕様書中で [[ISO/IEC 6429]] の[[指示シーケンス]]を説明していますが、
[CODE(charname)@en[IRR]] には言及していません。
最新の [[ISO/IEC 6429]] が使えないということでもなさそうなのですが、
[[SC2]] がどのような意図なのかわかりません。

[38] 
改訂番号1 ([N[4/0]]) 以外の例は知られていません。

[37] 
今後 [[ISO-IR]] に新たな [CODE(charname)@en[IRR]] 
[[終端バイト]]が登録される可能性は低いと思われます。
他の[[規格]]で定義される可能性も低いと思われます。


-*-*-

[57] 
[CITE[[[ecma35lib]]]]
が
[[Fp]] の [CODE(charname)@en[IRR]]
を大量に定義して使っています。
非標準の拡張を含む[[文字集合]]の各種バリエーションや、
[[Unicode]] との対応関係の違いを切り替えることができるようです。
[SRC[>>56]]

[FIG(table)[ [58] [[94集合]] [SRC[>>56]]

:IRR: [CODE(charname)@en[IRR]] [[Fp]]
:F:   [[指示][指示列]] [[F]]
:set: [[文字集合]]

:IRR:[N[3/0]]
:F:[N[4/0]] (@)
:set:Old IRV with tilde (rather than overscore)

:IRR:[N[3/0]]
:F:[N[4/1]] (A)
:set:DEC NRCS

:IRR:[N[3/0]]
:F:[N[4/2]] (B)
:set:ASCII with overscore (rather than tilde)

:IRR:[N[3/0]]
:F:[N[4/3]] (C)
:set:DEC NRCS

:IRR:[N[3/0]]
:F:[N[4/5]] (E)
:set:DEC NRCS

:IRR:[N[3/0]]
:F:[N[4/8]] (H)
:set:DEC NRCS

:IRR:[N[3/0]]
:F:[N[4/9]] (I)
:set:JIS X 0201 katakana, IBM's 4992 (used for its counterparts from IBM's 1041 in the Shift_JIS filter).

:IRR:[N[3/1]]
:F:[N[4/9]] (I)
:set:JIS X 0201 katakana, an analogous extraction from MacJapanese.

:IRR:[N[3/2]]
:F:[N[4/9]] (I)
:set:JIS X 0201 katakana, an extraction from Windows-31J and friends.

:IRR:[N[3/3]]
:F:[N[4/9]] (I)
:set:JIS X 0201 katakana, an extraction from Windows-31J and friends, suppressing the 0x80 control mapping in some DOCS filters in favour of the Euro.

:IRR:[N[3/0]]
:F:[N[4/10]] (J)
:set:JIS-Roman with tilde (rather than overscore)

:IRR:[N[3/0]]
:F:[N[4/15]] (O)
:set:DIN 31624, falling thru to T.51 for unallocated cells

:IRR:[N[3/15]]
:F:[N[4/15]] (O)
:set:DIN 31624, possibly-older German relative of ISO 5426-1

:IRR:[N[3/0]]
:F:[N[5/0]] (P)
:set:ISO 5426-1, falling thru to T.51 for unallocated cells

:IRR:[N[3/15]]
:F:[N[5/0]] (P)
:set:ISO 5426-1, bibliographic set related to (but incompatible with) T.51

:IRR:[N[3/0]]
:F:[N[5/9]] (Y)
:set:ETS 300 706 Latin G0 for Italy

:IRR:[N[3/0]]
:F:[N[6/0]] (`)
:set:DEC NRCS

:IRR:[N[3/1]]
:F:[N[6/0]] (`)
:set:Danish equivalent to NS 4551 (IBM's 1017)

:IRR:[N[3/0]]
:F:[N[6/7]] (g)
:set:DEC NRCS

:IRR:[N[3/0]]
:F:[N[6/12]] (l)
:set:ITU T.51-1988 first supplementary set with ETS 300 706 extensions (default for this F-byte)

:IRR:[N[3/1]]
:F:[N[6/12]] (l)
:set:ITU T.51-1988 first supplementary set with ETS 300 706 extensions, alternative mapping

:IRR:[N[3/15]]
:F:[N[6/12]] (l)
:set:ITU T.51-1988 first supplementary set (i.e. older version of the T.51 supplementary set without NBSP, SHY, not sign or brvbar)

:IRR:[N[3/0]]
:F:[N[6/15]] (o)
:set:ISO-8859-1 RHS cropped to 94-set, with backslash replacing yen sign (superset of the non-JISCII set for OCR-B).

:IRR:[N[3/15]]
:F:[N[6/15]] (o)
:set:JIS X 9010 non-JISCII set for OCR-B.

:IRR:[N[3/0]]
:F:[N[7/1]] (q)
:set:JIS X 9010 backslash-only set for JIS X 9008, mapping to OCR DOUBLE BACKSLASH.

:IRR:[N[3/15]]
:F:[N[7/1]] (q)
:set:JIS X 9010 backslash-only set for JIS X 9008, mapping to ASCII as strongly implied by registration rubric (subset of the non-JISCII set for OCR-B).

:IRR:[N[3/0]]
:F:[N[2/1]] (!) [N[4/2]] (B)
:set:DEC NRCS, invariant subset

:IRR:[N[3/1]]
:F:[N[2/1]] (!) [N[4/2]] (B)
:set:ETS 300 706 Latin G0, invariant subset

:IRR:[N[3/0]]
:F:[N[2/1]] (!) [N[4/5]] (E)
:set:ANSEL supplementary set, Library of Congress version (i.e. eszett at 0x47)

:IRR:[N[3/1]]
:F:[N[2/1]] (!) [N[4/5]] (E)
:set:ANSEL supplementary set, combined Library of Congress and Genealogical Society of Utah versions, i.e. duplicate eszetts at 0x47 and 0x4F (default for this F-byte)

:IRR:[N[3/15]]
:F:[N[2/1]] (!) [N[4/5]] (E)
:set:ANSEL supplementary set, ANSI standard version (i.e. no eszett)

]FIG]

[FIG(table)[ [59] [[96集合]]

:IRR:[CODE(charname)@en[IRR]] [[Fp]]
:F:[[指示][指示列]] [[F]]
:set:[[文字集合]]

:IRR:[N[3/0]]
:F:[N[4/10]] (J)
:set:Complete ITU T.51 supplementary set (same as IRR 0 G*D6 R; default for this F-byte)

:IRR:[N[3/15]] (?)
:F:[N[4/10]] (J)
:set:ITU T.51 supplementary set for use with old IRV (excludes universal currency sign and hash)

:IRR:[N[3/0]]
:F:[N[5/2]] (R)
:set:Complete ITU T.51 supplementary set (same as IRR 0 G*D6 J; default for this F-byte)

:IRR:[N[3/15]]
:F:[N[5/2]] (R)
:set:ITU T.51 supplementary set for use with ASCII (excludes dollar and hash)

]FIG]

[FIG(table)[ [60] [[94[SUP[2]]集合]]

:IRR:[CODE(charname)@en[IRR]] [[Fp]]
:F:[[指示][指示列]] [[F]]
:set:[[文字集合]]

:IRR:[N[3/0]]
:F:[N[4/0]] (@)
:set:JIS C 6226, version encoded by IBM-932 and IBM-942

:IRR:[N[3/1]]
:F:[N[4/0]] (@)
:set:JIS C 6226, version used by NEC PC98 (default for this F-byte)

:IRR:[N[3/2]]
:F:[N[4/0]] (@)
:set:JIS C 6226-1978, character mapping changes by 90JIS pivot only

:IRR:[N[3/3]]
:F:[N[4/0]] (@)
:set:JIS C 6226-1978, character mappings by CID map only, resulting in some gaps (since CID maps are intended to preserve font correctness, not data integrity)

:IRR:[N[3/15]]
:F:[N[4/0]] (@)
:set:JIS C 6226-1978, with mappings for characters changed to those suitable for the 1978 edition

:IRR:[N[3/0]]
:F:[N[4/1]] (A)
:set:GB/T 12345 (hybrid approach)

:IRR:[N[3/1]]
:F:[N[4/1]] (A)
:set:GB 18030-2000 levels 1 and 2

:IRR:[N[3/2]]
:F:[N[4/1]] (A)
:set:GB 18030-2005 levels 1 and 2 (default)

:IRR:[N[3/4]]
:F:[N[4/1]] (A)
:set:GB 18030, favouring duplicate mappings over PUA mappings for standard characters

:IRR:[N[3/5]]
:F:[N[4/1]] (A)
:set:GB/T 2312, variant used on classic Mac OS, updated mappings

:IRR:[N[3/6]]
:F:[N[4/1]] (A)
:set:GB/T 2312-1980, UTC version

:IRR:[N[3/7]]
:F:[N[4/1]] (A)
:set:GB/T 2312-1980, with alterations but not extensions from GB 6345.1-1986

:IRR:[N[3/8]]
:F:[N[4/1]] (A)
:set:GB/T 12345 (strict compliance, including retaining certain simplified characters from GB/T 2312 which are often implemented replaced by traditional versions)

:IRR:[N[3/9]]
:F:[N[4/1]] (A)
:set:GB/T 12345 (UTC mapping, including additional replacements by traditional versions, and lacking non‑hanzi not present in GB/T 2312)

:IRR:[N[3/10]]
:F:[N[4/1]] (A)
:set:GB/T 2312, IBM version with PUA filling empty space and extensions in row 94

:IRR:[N[3/11]]
:F:[N[4/1]] (A)
:set:GB/T 2312, variant used on classic Mac OS, as specified by Apple

:IRR:[N[3/12]]
:F:[N[4/1]] (A)
:set:GB/T 2312, variant used on classic Mac OS, mixed mappings

:IRR:[N[3/13]]
:F:[N[4/1]] (A)
:set:GB/T 2312, Microsoft version

:IRR:[N[3/15]]
:F:[N[4/1]] (A)
:set:GB/T 2312-1980

:IRR:[N[3/0]]
:F:[N[4/2]] (B)
:set:JIS X 0208, WHATWG variant (default; synchronised with Windows-31J)

:IRR:[N[3/1]]
:F:[N[4/2]] (B)
:set:JIS X 0208, "KanjiTalk 7" (row+84 verticals, non-NEC gaiji) variant used on classic Mac OS, updated mappings

:IRR:[N[3/2]]
:F:[N[4/2]] (B)
:set:JIS X 0208, "PostScript" / "KanjiTalk 6 PostScript" (row+84 verticals, NEC gaiji) variant used on classic Mac OS, updated mappings

:IRR:[N[3/3]]
:F:[N[4/2]] (B)
:set:JIS X 0208, "KanjiTalk 6 non-PostScript" (row+10 verticals, NEC gaiji) variant used on classic Mac OS

:IRR:[N[3/4]]
:F:[N[4/2]] (B)
:set:JIS X 0208, with UTC-style mapping of em dash / horizontal bar character

:IRR:[N[3/5]]
:F:[N[4/2]] (B)
:set:JIS X 0208, Open Group version for JIS-Roman based EUC-JP

:IRR:[N[3/6]]
:F:[N[4/2]] (B)
:set:JIS X 0208, Open Group version for ASCII-based EUC-JP

:IRR:[N[3/7]]
:F:[N[4/2]] (B)
:set:JIS X 0208, Open Group version for Microsoft-style EUC-JP

:IRR:[N[3/8]]
:F:[N[4/2]] (B)
:set:JIS X 0208, version encoded by IBM-954

:IRR:[N[3/9]]
:F:[N[4/2]] (B)
:set:JIS X 0208, DoCoMo JIS emoji

:IRR:[N[3/10]]
:F:[N[4/2]] (B)
:set:JIS X 0208, KDDI JIS emoji, symbolic zodiac variant

:IRR:[N[3/11]]
:F:[N[4/2]] (B)
:set:JIS X 0208, SoftBank JIS emoji

:IRR:[N[3/12]]
:F:[N[4/2]] (B)
:set:JIS X 0208, KDDI JIS emoji, pictorial zodiac variant

:IRR:[N[3/13]]
:F:[N[4/2]] (B)
:set:JIS X 0208, Fujitsu version

:IRR:[N[3/14]]
:F:[N[4/2]] (B)
:set:JIS X 0208, ARIB STD-B.24 version

:IRR:[N[3/15]]
:F:[N[4/2]] (B)
:set:JIS C 6226 / X 0208-1983

:IRR:[N[2/0]] [N[3/0]]
:F:[N[4/2]] (B)
:set:"KanjiTalk 7" variant (row+84 verticals, non-NEC gaiji) used on classic Mac OS, Apple mappings

:IRR:[N[2/0 [N[3/1]]
:F:[N[4/2]] (B)
:set:"PostScript" / "KanjiTalk 6 PostScript" variant (row+84 verticals, NEC gaiji) used on classic Mac OS, Apple mappings

:IRR:[N[3/0]]
:F:[N[4/3]] (C)
:set:KS C 5601-1987, but using old-UTC mappings for the non-syllables

:IRR:[N[3/1]]
:F:[N[4/3]] (C)
:set:KS X 1001-1998 Wansung code. The Euro sign update, also adding the registered trademark sign, and matching the WHATWG mapping.

:IRR:[N[3/2]]
:F:[N[4/3]] (C)
:set:KS X 1001-2002 (adding the South Korean postal mark)

:IRR:[N[3/3]]
:F:[N[4/3]] (C)
:set:KS X 1001-1987 extended, main plane of Apple/Elex extension (HangulTalk), updated mappings

:IRR:[N[3/4]]
:F:[N[4/3]] (C)
:set:KS X 1001-1987, using IBM mappings

:IRR:[N[3/5]]
:F:[N[4/3]] (C)
:set:KS X 1001-1987 extended, main plane of Apple/Elex extension (HangulTalk), old Apple mappings

:IRR:[N[3/6]]
:F:[N[4/3]] (C)
:set:KS X 1001-1987 extended, main plane of Apple/Elex extension (HangulTalk), Apple mappings

:IRR:[N[3/15]]
:F:[N[4/3]] (C)
:set:KS C 5601-1987 Wansung code, using new-UTC mappings (harmonious with Microsoft and WHATWG)

:IRR:[N[3/0]]
:F:[N[4/4]] (D)
:set:JIS X 0212 with va/vi/ve/vo

:IRR:[N[3/1]]
:F:[N[4/4]] (D)
:set:JIS X 0212, Open Group version for JIS-Roman based EUC-JP

:IRR:[N[3/2]]
:F:[N[4/4]] (D)
:set:JIS X 0212, Open Group version for ASCII-based EUC-JP

:IRR:[N[3/3]]
:F:[N[4/4]] (D)
:set:JIS X 0212, Open Group version for Microsoft-style EUC-JP

:IRR:[N[3/4]]
:F:[N[4/4]] (D)
:set:JIS X 0212, version encoded by IBM-954

:IRR:[N[3/5]]
:F:[N[4/4]] (D)
:set:JIS X 0212, version encoded by ICU's EUC-JP

:IRR:[N[3/15]]
:F:[N[4/4]] (D)
:set:JIS X 0212:1990

:IRR:[N[3/0]]
:F:[N[4/5]] (E)
:set:CCITT Hanzi Code, with a more conventional mapping of the lowercase gs (appropriate for their GB 18030 reference glyphs)

:IRR:[N[3/1]]
:F:[N[4/5]] (E)
:set:CCITT Hanzi Code, combined with an additional hanzi extension in row 8

:IRR:[N[3/2]]
:F:[N[4/5]] (E)
:set:GB 6345.1-1986

:IRR:[N[3/3]]
:F:[N[4/5]] (E)
:set:GB 8565.2-1988

:IRR:[N[3/4]]
:F:[N[4/5]] (E)
:set:Pseudo-G8, an incorrect version of GB 8565.2-1988 which had been referenced by older versions of the Unihan database (incorrectly shifts the actual GB 8565.2 characters 15-90 through 15-93 back by one code point over 15-89, and also includes the row 8 hanzi extensions and most of the CCITT hanzi extensions).

:IRR:[N[3/15]]
:F:[N[4/5]] (E)
:set:CCITT Hanzi Code (GB 2312 variant) from ITU T.101-C, which bases it on GB 6345.1-1986 and GB 8565.2-1988 with further adjustments and expansions

:IRR:[N[3/0]]
:F:[N[4/7]] (G)
:set:CNS 11643 plane 1, recommended version (default)

:IRR:[N[3/1]]
:F:[N[4/7]] (G)
:set:CNS 11643 plane 1, mapped from Microsoft Big-5

:IRR:[N[3/2]]
:F:[N[4/7]] (G)
:set:CNS 11643 plane 1, according to UTC mappings

:IRR:[N[3/3]]
:F:[N[4/7]] (G)
:set:CNS 11643 plane 1, mapped from UTC Big-5

:IRR:[N[3/4]]
:F:[N[4/7]] (G)
:set:CNS 11643 plane 1, mapped from Macintosh-compatible Big-5

:IRR:[N[3/5]]
:F:[N[4/7]] (G)
:set:CNS 11643 plane 1, as officially defined in Taiwan

:IRR:[N[3/6]]
:F:[N[4/7]] (G)
:set:CNS 11643 plane 1, an IBM-related variant

:IRR:[N[3/7]]
:F:[N[4/7]] (G)
:set:CNS 11643 plane 1, mapped from IBM Big-5

:IRR:[N[3/8]]
:F:[N[4/7]] (G)
:set:CNS 11643 plane 1, mapped from IBM's Microsoft-style Big-5

:IRR:[N[3/9]]
:F:[N[4/7]] (G)
:set:CNS 11643 plane 1, mapped from WHATWG/HTML5 Big-5

:IRR:[N[3/10]]
:F:[N[4/7]] (G)
:set:CNS 11643 plane 1, mapped from Mozilla Big-5

:IRR:[N[3/11]]
:F:[N[4/7]] (G)
:set:CNS 11643 plane 1, per ICU ISO-2022-CN mappings

:IRR:[N[3/12]]
:F:[N[4/7]] (G)
:set:CNS 11643 plane 1, per ICU EUC-TW 2014 mappings

:IRR:[N[3/13]]
:F:[N[4/7]] (G)
:set:CNS 11643 plane 1, per Yasuoka's mappings

:IRR:[N[3/1]]
:F:[N[4/8]] (H)
:set:CNS 11643 plane 2, Big5 mappings

:IRR:[N[3/15]]
:F:[N[4/8]] (H)
:set:CNS 11643 plane 2

:IRR:[N[3/0]]
:F:[N[4/9]] (I)
:set:CNS 11643-1988 plane 14

:IRR:[N[3/1]]
:F:[N[4/9]] (I)
:set:CNS 11643-1988 plane 14 with extensions, as submitted to the IRG

:IRR:[N[3/2]]
:F:[N[4/9]] (I)
:set:CNS 11643-2007 plane 3

:IRR:[N[3/3]]
:F:[N[4/9]] (I)
:set:CNS 11643-2007 plane 3, plus the additional assignments from CNS 11643-1988 plane 14 (default)

:IRR:[N[3/4]]
:F:[N[4/9]] (I)
:set:CNS 11643-1988 plane 14, UTC mappings (partial, with extensions)

:IRR:[N[3/5]]
:F:[N[4/9]] (I)
:set:CNS 11643-1992 plane 3, per former ICU ISO-2022-CN-EXT mappings

:IRR:[N[3/6]]
:F:[N[4/9]] (I)
:set:CNS 11643-1992 plane 3, per ICU EUC-TW 2014 mappings

:IRR:[N[3/7]]
:F:[N[4/9]] (I)
:set:CNS 11643-1992 plane 3, per Yasuoka's mappings

:IRR:[N[3/15]]
:F:[N[4/9]] (I)
:set:CNS 11643-1992 plane 3

:IRR:[N[3/0]]
:F:[N[4/10]] (J)
:set:CNS 11643-1992 plane 4, as officially defined in Taiwan

:IRR:[N[3/1]]
:F:[N[4/10]] (J)
:set:CNS 11643-1992 plane 4, per former ICU ISO-2022-CN-EXT mappings

:IRR:[N[3/2]]
:F:[N[4/10]] (J)
:set:CNS 11643-1992 plane 4, per ICU EUC-TW 2014 mappings

:IRR:[N[3/3]]
:F:[N[4/10]] (J)
:set:CNS 11643-1992 plane 4, per Yasuoka's mappings

:IRR:[N[3/15]]
:F:[N[4/10]] (J)
:set:CNS 11643-1992 plane 4

:IRR:[N[3/0]]
:F:[N[4/11]] (K)
:set:CNS 11643-1992 plane 5, as officially defined in Taiwan

:IRR:[N[3/1]]
:F:[N[4/11]] (K)
:set:CNS 11643-1992 plane 5, per former ICU ISO-2022-CN-EXT mappings

:IRR:[N[3/2]]
:F:[N[4/11]] (K)
:set:CNS 11643-1992 plane 5, per ICU EUC-TW 2014 mappings

:IRR:[N[3/3]]
:F:[N[4/11]] (K)
:set:CNS 11643-1992 plane 5, per Yasuoka's mappings

:IRR:[N[3/15]]
:F:[N[4/11]] (K)
:set:CNS 11643-1992 plane 5


:IRR:[N[3/0]]
:F:[N[4/12]] (L)
:set:CNS 11643-1992 plane 6, as officially defined in Taiwan

:IRR:[N[3/1]]
:F:[N[4/12]] (L)
:set:CNS 11643-1992 plane 6, per former ICU ISO-2022-CN-EXT mappings

:IRR:[N[3/2]]
:F:[N[4/12]] (L)
:set:CNS 11643-1992 plane 6, per ICU EUC-TW 2014 mappings

:IRR:[N[3/3]]
:F:[N[4/12]] (L)
:set:CNS 11643-1992 plane 6, per Yasuoka's mappings

:IRR:[N[3/15]]
:F:[N[4/12]] (L)
:set:CNS 11643-1992 plane 6


:IRR:[N[3/0]]
:F:[N[4/13]] (M)
:set:CNS 11643-1992 plane 7, as officially defined in Taiwan

:IRR:[N[3/1]]
:F:[N[4/13]] (M)
:set:CNS 11643-1992 plane 7, per former ICU ISO-2022-CN-EXT mappings

:IRR:[N[3/2]]
:F:[N[4/13]] (M)
:set:CNS 11643-1992 plane 7, per ICU EUC-TW 2014 mappings

:IRR:[N[3/3]]
:F:[N[4/13]] (M)
:set:CNS 11643-1992 plane 7, per Yasuoka's mappings

:IRR:[N[3/15]]
:F:[N[4/13]] (M)
:set:CNS 11643-1992 plane 7


:IRR:[N[3/0]]
:F:[N[4/14]] (N)
:set:KPS 9566-2003 (only the main plane unless in the UHC DOCS)

:IRR:[N[3/1]]
:F:[N[4/14]] (N)
:set:KPS 9566-2011 (only the main plane unless in the UHC DOCS)

:IRR:[N[3/2]]
:F:[N[4/14]] (N)
:set:All KPS 9566 editions overlayed (but only the main plane unless in the UHC DOCS)

:IRR:[N[3/15]]
:F:[N[4/14]] (N)
:set:KPS 9566-97

]FIG]

[61] [[私用終端バイト]]の[[指示列]]に対するものは [[Fp]] 参照。

[REFS[
- [56] [CITE@en[GitHub - harjitmoe/[[ecma35lib]]: Aspiring to implement ECMA-35, in its fullness, for a Unicode era. This repo may occasionally lag behind the one on Gitlab.]], [TIME[2022-10-27T13:09:37.000Z]] <https://github.com/harjitmoe/ecma35lib#additional-single-byte-g-sets-and-additional-selectors-for-particular-variants-of-single-byte-g-sets>
]REFS]


* 誤り処理

[SEE[ [[エスケープシーケンス][ISO/IEC 2022エスケープシーケンス]]のエラー処理の項も参照 ]]

- [2] この改訂版号のエスケープ・シーケンスって、他のエスケープ・シーケンスとは違って直後のエスケープ・シーケンスに作用しますよね。直後に[[指示シーケンス]]がこなければ誤りなんですが、どう処理したら良いんでしょう? 単に捨てるだけでいいのかな。
- [3] >>2 他にどうしようもないような。表示しても仕方ないし。
- [4] 未知の更新シーケンスに遭遇したらどうすればいいのかも ISO/IEC 2022:1994 では規定されていません。無視して自分の知ってる版とみなして良いのかどうか。
- [5] 更新シーケンスが定義される 1994年版より前の ISO 2022 に対応した実装は更新シーケンスをどう扱えばいいのかもよくわかりませんね。まあそんなものが定義されているはずもないのですけど、古い実装は使われつづけるわけで。
- [6] >>5 もちろん正解は古い実装は捨てる、でしょう。
- [7] でも結局そしたら更新シーケンスの存在意義って謎。 >>4 が認められない限り、恩恵を受けるのは 1994 以前の古い実装だけですよ。あ、でも、書体を差分で実装しやすくするっていう効果もあるかもな。

* 実態

[9] [[IRR]] はほとんど使われませんでした。 

[23] [[JIS X 0208]] の実装のほとんどは、
[[IRR]] なしの ESC $ B のまま [[JIS X 0208]]-1990 を実装 (= 2文字追加) していました。

[25] [[RFC 1468]] [[ISO-2022-JP]] は、
[[IRR]] を使用しないで [[JIS X 0208-1990]] を使おうとしていました。

[22] 
[[DECの文字コード]]としての [[ISO-2022-JP]] 等は、
[[IRR]] なしの ESC $ B が [[JIS X 0208-1990]]
であるとしています。
[SEE[ [[DECの文字コード]] ]]

[24] [[JIS X 0208:1997]] の[[RFC1468符号化表現]]は、
ESC $ B が [[JIS X 0208:1997]] であるとしています。

[20] 
[[ctext]]
では [[IRR]]
は使いません。
常に上方交換なので最新版とみなせるのだとされています。
[SEE[ [[ctext]] ]]

;; [21] そのような解釈が [[ISO/IEC 2022]] に適合するのかは怪しいですが。


[26] 
[[ISO-IR 165]], 
[[JIS X 0213:2000]] 第1面,
[[JIS X 0213:2004]] 第1面は
[[IRR]]
付きになってもよさそうなものでしたが、
使われずに新しい[[符号化図形文字集合]]として登録されました。

[39] 
[[KS X 1001]]
や
[[KPS 9577]]
も改訂版が
[[IRR]]
付きになってもよさそうなものですが、
[[ISO-IR]] に登録されていません。

;; [50] [[KS X 1001]] は文字を追加しても平気で元の[[終端バイト]]を使い続けています。
[SEE[ [[KS X 1001]] ]]


[45] 
[[公開テキスト指示シーケンス]]では [[JIS X 0208-1990]] の記述に使われています。

-*-*-

- [51] [CITE[00000001.PDF - 072.pdf]], [TIME[2021-05-21T04:06:25.000Z]], [TIME[2022-05-31T03:33:28.372Z]] <https://www.itscj-ipsj.jp/ir/072.pdf>
- [52] [CITE[00000001.PDF - 173.pdf]], [TIME[2021-05-21T08:09:05.000Z]], [TIME[2022-05-31T03:33:45.395Z]] <https://www.itscj-ipsj.jp/ir/173.pdf>

[53] 
[[ISO-IR]] 72 を supersedes する [[ISO-IR]] 173 が[TIME[1993-01-21]]に登録されました。
どちらも[[94集合]]で[[終端バイト]]は [N[6/4]] とされています。
[SEE[ [[指示シーケンス]], [[94集合]] ]]

[54] 
[[ISO-IR]] 173 には元[[空き領域]]に[[図形文字]]が追加されていますが、
[[ISO 2375]] 4.4.2 に従い[[エスケープシーケンス]]を改めずに改正したと書かれています。

[55] 
当時の [[ISO 2375]] がどんな規定だったのかわかりませんが、
登録が [[JIS X 0208-1990]] ([[ISO-IR]] 168) より後ですから、
[[IRR]] はあったはずで、それにも関わらずこんな登録が行われたのです。

* ISO/IEC 10646 における利用

[19] 
[[ISO/IEC 10646]] で利用できるのかどうかは不明瞭です。
[SEE[ [[ISO/IEC 10646におけるエスケープシーケンス]] ]]

* ASN.1 における利用

[46] 
[[ISO/IEC 2022 character abstract syntax]]
では元の[[符号化文字集合]]の [[ISO-IR]] 登録番号と
[CODE(charname)@en[IRR]] の改訂番号を組合せて使います。
[SEE[ [[ISO/IEC 2022 character abstract syntax]] ]]

[47] 
改訂なしは [N[0]] で表します。

* 関連

[48] [[NAPLPS]] 用にこれと衝突する使われ方があったとする説があります。

* メモ