[34] [DFN[RFC 1468符号化表現]]は、[[JIS X 0208]]:1997で規定されている[[符号化文字集合]]です。 その参考によれば[Q[通常、[Q[ISO-2022-JP]]と呼ばれており、[[インターネット]]で使用されている]]らしいですが、 [[RFC 1468]]で説明されている[CODE(MIME)@en[[[ISO-2022-JP]]]]とは相違点も多く、 かといって[[IETF]]の[[RFC 1468]]を改訂することを意図したものや[[IANA]]における[CODE(MIME)@en[[[ISO-2022-JP]]]]の登録の更新を意図したものでは''ない''ようであり、 何を考えて制定したものなのかがよくわからないところです。 [36] [Q[RFC 1468符号化表現]]という怪しい名前にも関わらず、 規格中に[[RFC 1468]]との関係について説明がまったくありません。 [35] > ソースは? > ▼インターネットで見た [1] 仕様書: - [[JIS X 0208]]:1997 -- [CSECTION[附属書2 (規定) RFC 1468 符号化表現]] [[#comment]] * 符号化文字集合 [2] - [3] [CODE[0x00]]〜[CODE[0x1F]]: [[制御文字]]: [[JIS X 0211]] (最新版) [[C0集合]] [SRC[JIS97 附属書2 4.1 a)]] -- [4] [[情報交換]]の先頭では、使用できる状態。 [SRC[JIS97 附属書2 4.2 a)]] -- [5] [CODE[0x0E]]: [[使用しない]]。 [SRC[JIS97 附属書2 4.1 a)]] -- [6] [CODE[0x0F]]: [[使用しない]]。 [SRC[JIS97 附属書2 4.1 a)]] -- [7] [CODE[0x1B]]: 領域の切換え。 [SRC[JIS97 附属書2 4.1 a), f)]] --- [8] [CODE[0x1B 0x28 0x42]]: [[制御文字]]の領域を使用する。 [[図形文字]]の領域は[[ISO/IEC 646]] (最新版) [[IRV]] --- [9] [CODE[0x1B 0x28 0x4A]]: [[制御文字]]の領域を使用する。 [[図形文字]]の領域は[[JIS X 0201]] (最新版) [[ラテン文字用図形文字集合]] --- [10] [CODE[0x1B 0x24 0x40]]: [[制御文字]]の領域を使用''しない'' ([CODE[0x1B]] を除く)。 [[図形文字]]の領域は[[JIS X 0208]]:1997本体6.5.1の[[漢字集合]]で、 [[JIS X 0208]]:1997 附属書2表1の[[図形文字]]の組を入れ替えたもの。 [CODE(charname)@en[[[SPACE]]]]を使用しない。 [CODE(charname)@en[[[DELETE]]]]を使用しない。 --- [11] [CODE[0x1B 0x24 0x42]]: [[制御文字]]の領域を使用''しない'' ([CODE[0x1B]] を除く)。 [[図形文字]]の領域は[[JIS X 0208]]:1997本体6.5.1の[[漢字集合]]。 [CODE(charname)@en[[[SPACE]]]]を使用しない。 [CODE(charname)@en[[[DELETE]]]]を使用しない。 --- [12] これ以外で [CODE[0x1B]] は[[使用しない]]。 - [13] [CODE[0x20]]: [CODE(charname)@en[[[SPACE]]]] - [14] [CODE[0x21]]〜[CODE[0x7E]]: [[図形文字]] -- [15] [[情報交換]]の先頭では、[[ISO/IEC 646]] (最新版) [[IRV]]。 [SRC[JIS97 附属書2 4.2 a)]] - [16] [CODE[0x7F]]: [CODE(charname)@en[[[DELETE]]]] - [17] [CODE[0x80]]〜[CODE[0xFF]]: [[使用しない]]。 - [18] [[情報交換]]の末尾では、[[ISO/IEC 646]] (最新版) [[IRV]] の状態でなければなりません。 [SRC[JIS97 4.3 a)]] ;; [30] 元の[[RFC 1468]]は明らかに[[7ビット符号]]を規定しているのに、 [[RFC 1468符号化表現]]はなぜか[[8ビット符号]]のようです。 [32] [[JIS]]は他[[規格]]の最新版を参照していますが、 元の[[RFC 1468]]はすべて年号付きで引用しています。 たまたま[[JIS X 0211]], [[ISO/IEC 646]] [[IRV]], [[JIS X 0201]]とも1997年の時点で[[RFC 1468]]の参照する規格と内容が一致している (ようにみえる) のですが、将来もそうである保障はありません。 (実際[[ISO/IEC 646]] [[IRV]]は1991年に非互換変更されていますから。) 将来[[RFC 1468符号化表現]]が勝手に違うものになってしまう危険性があります。 [33] >>10 は[[JIS X 0208]]‐1983で行われた[[漢字]]の入れ替えを元に戻すことを求めていますが、 なぜか[[JIS X 0208]]‐1983および[[JIS X 0208]]‐1990での追加分には触れていません。 (>>29 は[[装置]]の適合性に関する規定のようです。) [37] >>10-11 の2つの[[指示シーケンス]]の後は[[制御文字]]が使えないことになっていて (附属書2 4.1 f))、[CODE(charname)@en[[[ESC]]]]も例外とされて''いません''。附属書2図3〜5もそうなっています。 附属書2 4.2 b) で [Q[4.1 f) の[[バイト列]]が現れた場合は、 4.1 f) に示す利用状態の遷移が起こる]]とありますが、 4.1 f) の規定に従えば一旦[[JIS X 0208]]状態に遷移すると4.1 f) の[[バイト列]]は出現できないので・・・。 ([[名無しさん]]) [38] >>37 と >>18 により、[[RFC 1468符号化表現]]で[[JIS X 0208]]を使うことは無理としか考えられない。 [PRE(aa)[ [AA(fw)[ ]]ナ ゝ[AA(fw)[ ]]ナ ゝ[AA(fw)[ ]]/[AA(fw)[ ]] 十[AA(fw)[_]]"[AA(fw)[ ]] ー;=‐[AA(fw)[ ]]|! |! [AA(fw)[ ]]cト[AA(fw)[ ]]cト[AA(fw)[ ]]/[AA(fw)[^]][AA(hw)[、]]_ノ[AA(fw)[ ]] | [AA(hw)[、]].__[AA(fw)[ ]]つ[AA(fw)[ ]] [AA(fw)[(]].__ [AA(fw)[ ]] [AA(fw)[ ̄ ̄ ̄ ̄]] [AA(fw)[ ]] ・ ・ ]PRE] ([[名無しさん]]) [[#comment]] * 適合性 [19] '''情報交換の適合性''': [[情報交換]]の[[適合性]]は、[[JIS X 0208]]:1997 本体 3.2 ([[JIS X 0208]>>4]) によります。 ただし、[[符号化文字集合]]については[[JIS X 0208]]:1997 附属書2 4. (>>2) によります。 [SRC[JIS97 附属書2 2.1]] [20] 本体3.2の規定により、[[適合性]]を主張する情報交換は採用した[[符号化文字集合]]を[Q[[[文書]]に明示]]しなければなりません。 この規定は附属書2では上書きされておらず、有効と思われます。 [21] '''装置の適合性''' [[装置]]の[[適合性]]は、[[JIS X 0208]]:1997 附属書2.2の規定によります。 [SRC[JIS97 附属書2 2.1]] ;; 規格本体にも規定がありますが、そちらではなく、 個別の規定が適用されるようです。参考として [Q[[[インターネット]]の[[情報交換]]においては、[INS[〜]][[空き領域]]の[[利用]]は行われない]]とあり、 そのために本体や[[シフト符号化表現]]とは別の[[適合]]の要件が規定されているのだと思われます。 - [22] 本体3.1 ([[JIS X 0208]>>1], [[JIS X 0208]>>2], [[JIS X 0208]>>3]) [SRC[JIS97 附属書2 2.2]] - [23] 本体3.3.1 ([[JIS X 0208]>>10]) [SRC[JIS97 附属書2 2.2]] - [24] 本体3.3.2 ([[JIS X 0208]>>11]) と附属書2 2.2.2 (>>26) の一方又は両方 [SRC[JIS97 附属書2 2.2, 2.2.1]] - [27] [[適合性]]を主張する場合、附属書2の[[符号化文字集合]]を採用したことを[Q[[[文書]]に明示]]しなければなりません。 [SRC[JIS97 附属書2 2.2]] - [28] 指定された[[図形文字]]の組を入れ替えても構いません。 その場合、入れ替えの一覧を[Q[[[文書]]に明示]]しなければなりません。 [SRC[JIS97 附属書2 2.2]] - [29] 指定された[[図形文字]]を実装しなくても構いません。 その場合、実装しないものの一覧を[Q[[[文書]]に明示]]しなければなりません。 [SRC[JIS97 附属書2 2.2]] ;; [25] >>28 は[[JIS X 0208]]‐1983や[[JIS X 0208]]‐1990で入れ替え等があった[[漢字]]。 >>29 は[[JIS X 0208]]‐1983や[[JIS X 0208]]‐1990で追加された[[図形文字]]。 [26] '''受信装置の要件''': 本体3.3.3 ([[JIS X 0208]>>12]) によります。 ただし、[CODE[0x0D 0x0A]]を[[受信]]した場合、 [[図形文字]]の領域を[[ISO/IEC 646]] (最新版) [[IRV]] に遷移しても構いません。その場合、 [Q[[[文書]]に明示]]しなければなりません。 [SRC[JIS97 附属書2 2.2.2]] ;; [31] >>10 や >>11 で[[制御文字]]の領域を[[使用しない]]時に[CODE[0x0D 0x0A]]を[[受信]]すると、 [[制御文字]]の領域がそのまま[[使用しない]]のままになってしまいますが・・・。 [39] [[JUNET利用の手引き]]にも[[RFC 1468]]にもない >>26 の規定はどこからでてきたのでしょう? ;; そのような実装があった (いまもある?) ことは事実ですが・・・。 [40] [[JIS X 0208]]:1997の解説には、 - [[改行]]の後の状態が異なる実装があること、 - [[指示シーケンス]]の解釈が曖昧だと[[RFC 1468]]自身が認めていること、 - [[ISO/IEC 2022]]のサブセットであるかのような誤解を抱かせること が問題として認められるので、[[ISO-2022-JP]]の実装が[[JIS X 0208]]への[[適合]]を主張できるように附属書にしたという旨の説明があります。 わかるようなわからないような説明である上に、 本当に挙げられた問題を解決できているのか甚だ疑問であります。 [[#comment]] * メモ