KS X 1001とは
KS X 1001は、韓国産業標準(KS)によって定められた
文字コード規格で、
ハングルや
漢字をデジタルデータとして表現するために使用されます。以前はKS C 5601という規格名で知られていました。この規格は、現代の韓国において
Unicodeと並んで広く利用されている、事実上唯一の
文字コードと言えるでしょう。
規格の概要
KS X 1001は、
JIS X 0208に似た94×94の文字集合を採用しており、合計8227文字を収録しています。内訳は、
ハングル2350字、
漢字4888字、その他
英数字や日本語の仮名文字など989字です。
ハングルについては、字母を組み合わせて構成された1音節を1文字とみなす「完成型コード」を採用しています。この方式では、すべての可能な
ハングルの組み合わせを符号化しているわけではないため、外来語に使われる音など、表現できない音節が存在するという問題がありました。例えば、
ペプシコーラの韓国法人では、当初「ペプ」(펲)の字がKS X 1001に含まれていなかったため、
ハングル表記を別の「ペプ」(펩)に変更せざるを得ませんでした。この問題は、
Unicode 2.0.0で全ての現代
ハングル文字(11172文字)が収録されたことで解決しました。
漢字は、読みの順に配列されているという特徴があります。
朝鮮語では原則として
漢字は一字一音ですが、複数の読みを持つ
漢字がわずかながら存在します。KS X 1001では、このような
漢字をそれぞれの読みの位置に重複して符号化しています。特に、頭音法則により、語頭に来る場合とそうでない場合で読みが変わる
漢字についても、異なる読みとして重複符号化しています。例えば、「樂」という
漢字は、4箇所に重複符号化されています。この方式は、コードから文字の読みを機械的に判定できるというメリットがある一方で、字形からコードを一意に定めることができないというデメリットも抱えています。
Unicodeおよび
ISO/IEC 10646|ISO_IEC 10646では、
CJK統合漢字として1文字のみを収録し、それ以外の文字はCJK互換
漢字として重複符号化することで、ラウンドトリップ変換を可能にしています。
KS X 1001をEUCで符号化したものを韓国語EUC (EUC-KR) と呼びますが、実際にはKS X 1001が他の符号化方式で用いられることはほとんどありません。ISO-2022-KRという符号化方式も存在しますが、ほとんど使われていません。したがって、単にKS C 5601と言った場合、EUC-KRを指すことが多いのが現状です。
なお、北朝鮮(朝鮮民主主義人民共和国)では、KPS 9566という別の
文字コード規格が用いられています。
歴史
KS X 1001は、いくつかの変遷を経て現在の形に至っています。
1974年9月27日 - 7bitのハングルコードとしてKS C 5601が制定されました。当初は、ハングルの子音文字(頭子音と終子音の和集合)を0x41 - 0x5Eに、母音文字を0x62 - 0x7Cに配置したコードでした。このコード体系は、頭子音と終子音を区別しない「1ボル」方式でした。
1982年
6月14日 - KS C 5601が改訂され、附属書に「16bit符号」が追加されました。これは、初声・中声・終声をそれぞれ5bitで表し、最上位ビットを1としたコードです。
1987年3月1日 - KS C 5601が再び改訂され、7bitのハングルコードと「16bit符号」は附属書に移動しました。本文には、94×94文字集合としてハングル2350文字、漢字4888文字、その他986文字が定められました。
1992年10月15日 - KS C 5601が改訂され、附属書の「16bit符号」は「2byte組合型符号」(Johab) に変更されました。初声・中声・終声をそれぞれ5bitで表す点は同様ですが、ビットパターンは全く異なっています。
1996年6月 - Unicode 2.0.0が策定され、韓国の要望を反映して11172文字全ての現代ハングル文字とKS X 1001の全ての重複文字が収録されました。
1997年
8月20日 - 情報部門(X)の新設に伴い、KS C 5601はKS X 1001に改番されました。
1998年12月31日 - KS X 1001が改訂され、ユーロ記号€と登録商標マーク®の2文字が追加されました。
2002年 - KS X 1001:2002が発行され、
郵便番号記号㉾(
郵便(番号)を示す
ハングルの頭文字を丸で囲ったもの)が追加されました。
関連規格
KS X 1001に関連する規格として、以下のようなものが挙げられます。
KS X 1002(旧 KS C 5657) - 補助文字セット
KS X 1003(旧 KS C 5636) - ラテン文字 7ビット符号
KS X 1004(旧 KS C 5620)
KS X 1005(旧 KS C 5700)
KS X 1027(拡張漢字目録)
Extended Unix Code(KS X 2901)
* Unified Hangul Code(Windows Code Page 949, IBM Code Page 1363)
その他
KS X 1001は、韓国における
文字コードの基盤として、長年にわたり利用されてきました。
Unicodeの登場により、その役割は変化しつつありますが、現在でも多くのシステムで利用されています。また、他の
文字コード規格(
JIS X 0208、
GB 2312、
Big5など)や
CJK統合漢字との関係も重要です。