付録E.1 使用できる文字エンコーディング
XML連携機能で処理するXMLドキュメントでは,次に示す文字エンコーディングを使用してください。
-
Shift_JIS
-
Windows-31J
-
EUC-JP
-
UTF-8
-
UTF-16
文字エンコーディングの指定を省略した場合はUTF-8を仮定します。
- 〈この項の構成〉
(1) シフトJISでのコード範囲とUnicodeへの変換表
シフトJISコードのXMLドキュメントを解析する場合は,シフトJISコードからUnicodeへ変換して解析したあと,値をCOBOLデータ項目に入力するときに,UnicodeからシフトJISコードへ変換します。
XML不正文字は,Unicodeに変換したあとにチェックされ,エラーとして通知されます。XML不正文字については,「付録E.2(1) XML標準仕様での文字の範囲」を参照してください。シフトJISコードからUnicodeへの変換表を表E-1に示します。
項番 |
説明 |
コード範囲(16進数) |
備考 |
---|---|---|---|
1 |
制御コード |
00-20 |
※1 |
2 |
ASCII/JISローマ字 |
21-7e |
x-sjis-cp932※2 |
3 |
半角かたかな |
a1-df |
|
4 |
JIS X 0208-1990(第1バイト) |
81-9f e0-ec |
|
5 |
JIS X 0208-1990(第2バイト) |
40-7e 80-fc |
|
6 |
ユーザ定義文字(第1バイト) |
f0-f9 |
ユーザ外字※3 |
7 |
ユーザ定義文字(第2バイト) |
40-7e 80-fc |
|
8 |
NEC選定IBM拡張漢字(第1バイト) |
ed-ee |
x-sjis-cp932※2 |
9 |
NEC選定IBM拡張漢字(第2バイト) |
40-7e 80-fc |
|
10 |
IBM拡張漢字(第1バイト) |
fa-fc |
|
11 |
IBM拡張漢字(第2バイト) |
40-7e 80-fc |
|
12 |
項番1〜11以外の範囲 |
未定義※4 |
(2) 日本語EUCでのコード範囲とUnicodeへの変換表
日本語EUCのXMLドキュメントを解析する場合は,日本語EUCからUnicodeへ変換して解析したあと,値をCOBOLデータ項目に入力するときに,Unicodeから日本語EUCへ変換します。
日本語EUCでは,半角かな文字に半角英数字2文字分の領域が必要です。このため,XMLドキュメントの入出力で半角かな文字を使用する場合は,COBOLプログラム中で長さの扱いに注意してください。
XML不正文字は,Unicodeに変換したあとにチェックされ,エラーとして通知されます。XML不正文字については,「付録E.2(1) XML標準仕様での文字の範囲」を参照してください。日本語EUCからUnicodeへの変換表を表E-2に示します。
項番 |
説明 |
コード範囲(16進数) |
備考 |
---|---|---|---|
1 |
制御コード |
00-20 |
※1 |
2 |
ASCII/JISローマ字 |
21-7E |
x-eucjp-open-19970715-ms※2 |
3 |
JIS X 0208-1990(第1バイト) |
A1-FE |
|
4 |
JIS X 0208-1990(第2バイト) |
A1-FE |
|
5 |
半角かたかな(第1バイト) |
8E |
|
6 |
半角かたかな(第2バイト) |
A1-DF |
|
7 |
項番1〜6以外の範囲 |
未定義※3 |
(3) UCS系エンコードでの利用可能なコード範囲
項番 |
説明 |
UTF-8のコード範囲※1(1バイト目) |
UTF-8のコード範囲※1(2バイト目) |
UTF-8のコード範囲※1(3バイト目) |
UTF-8のコード範囲※1(4バイト目) |
ISO-10646-UCS-4のコード範囲※1 |
備考 |
---|---|---|---|---|---|---|---|
1 |
1バイト形式 |
00-7f |
00000000-0000007f |
||||
2 |
2バイト形式 |
c2-df |
80-bf |
00000080-000007ff |
|||
3 |
3バイト形式 |
e0-ef |
80-bf |
80-bf |
00000800-0000ffff |
||
4 |
4バイト形式 |
f0-f4 |
80-bf |
80-bf |
80-bf |
00010000-0010ffff※2 |
|
5 |
項番1〜4以外の範囲 |
未定義※3 |
項番 |
説明 |
UTF-16のコード範囲※1 |
ISO-10646-UCS-4のコード範囲※1※2 |
備考 |
---|---|---|---|---|
1 |
サロゲートペア以外のコード範囲※2 |
0000-d7ff |
00000000-0000d7ff |
|
2 |
e000-ffff |
0000e000-0000ffff |
||
3 |
上位のサロゲートのコード範囲※3 |
d800-dbff |
00010000-0010ffff |
|
4 |
下位のサロゲートのコード範囲※3 |
dc00-dfff |
||
5 |
項番1〜4以外の範囲 |
未定義※4 |
項番 |
説明 |
コード範囲※1 |
備考 |
---|---|---|---|
1 |
アルファベット,かな,記号など |
0000-4dff |
|
2 |
CJK統一文字 |
4e00-9fff |
|
3 |
ユーザ定義外字領域 |
e000-f8ff |
|
4 |
全角アルファベット,半角かな文字 |
f900-fffd |
|
5 |
項番1〜4以外の範囲 |
未定義※2 |
(4) UnicodeからシフトJISへの変換
UnicodeからシフトJISへの変換は,シフトJISのコード範囲で,x-sjis-cp932の逆変換となります。ただし,シフトJISからUnicodeへの変換で,同じ字形を表す複数のコードから,Unicodeの一つのコードへ対応づけられているものについては,対応するコードの一つが逆変換に使用されるため,完全な逆変換とはなりません。
(5) Unicodeから日本語EUCへの変換
Unicodeから日本語EUCへの変換は,日本語EUCのコード範囲で,x-eucjp-open-19970715-msの逆変換となります。ただし,日本語EUCからUnicodeへの変換で,同じ字形を表す複数のコードから,Unicodeの一つのコードへ対応づけられているものについては,対応するコードの一つが逆変換に使用されるため,完全な逆変換とはなりません。
(6) 使用できる外字コード
XML連携機能,およびXML連携機能の実行ライブラリで使用できる外字コードを,次に示します。なお,外字コードは,要素の値だけに使用できます。
シフトJIS,Unicode以外の外字コードは使用できません。
使用できるシフトJISでの外字コード(16進数) |
Unicodeのユーザエリアでの文字コード(16進数) |
---|---|
f040〜f07e,f080〜f0fc |
e000〜e0bb |
f140〜f17e,f180〜f1fc |
e0bc〜e177 |
f240〜f27e,f280〜f2fc |
e178〜e233 |
f340〜f37e,f380〜f3fc |
e234〜e2ef |
f440〜f47e,f480〜f4fc |
e2f0〜e3ab |
f540〜f57e,f580〜f5fc |
e3ac〜e467 |
f640〜f67e,f680〜f6fc |
e468〜e523 |
f740〜f77e,f780〜f7fc |
e524〜e5df |
f840〜f87e,f880〜f8fc |
e5e0〜e69b |
f940〜f97e,f980〜f9fc |
e69c〜e757 |