Johab encodingKS X 1001Hangul character setsKS C 5601Korean character encoding

Johab Encoding and KS X 1001: Technical Standards for Hangul

Johab Encoding and KS X 1001: Technical Standards for Hangul In the realm of digital typography and data processing, representing the Korean script requires specialized encoding systems. ...

Johab Encoding and KS X 1001: Technical Standards for Hangul

In the realm of digital typography and data processing, representing the Korean script requires specialized encoding systems. Among the most significant standards are Johab and KS X 1001, which facilitate the accurate rendering of Hangul (the Korean alphabet), Hanja (Chinese characters), and various special symbols. These systems ensure that complex character combinations are preserved across different computing environments.

Diagram of Johab encoding as stipulated by KS X 1001 한글: Hangul한자: Hanja특수문자: special characters (non-Hangul and non-Hanja characters)
Diagram of Johab encoding as stipulated by KS X 1001 한글: Hangul한자: Hanja특수문자: special characters (non-Hangul and non-Hanja characters)

Foundational Korean Character Standards

The foundation of Korean digital text lies in the KS C 5601 standard, which has evolved through various iterations, including the 1974 and 1987 versions. This standard is closely linked to KS X 1001, a framework used for character sets in East Asian languages. These standards often utilize DBCS (Double-Byte Character Sets), a method where characters are represented by two bytes instead of one to accommodate the vast number of possible Hangul and Hanja combinations.

Many of these encodings are ISO 2022-compatible, allowing them to function within the international framework for character sets. This compatibility is crucial for interoperability between different systems, such as those using JIS X 0208 (Japanese) or GB 2312 (Chinese) standards.

Understanding Johab Encoding

Johab is a specific type of N-byte Hangul code. Unlike some other methods that use precomposed characters, Johab is designed to handle the structural components of Hangul efficiently. It is available in different formats depending on the underlying architecture, such as Windows code page 1361 (an ASCII-based version) and IBM code page 1364 (an EBCDIC-based version).

Layout of EBCDIC-based Johab variant when in double-byte state
Layout of EBCDIC-based Johab variant when in double-byte state

Encoding Structure and Byte Patterns

The encoding process involves specific lead bytes and trailing bytes to distinguish between single-byte Latin characters and multi-byte Korean characters. In the Johab system, lead bytes typically fall into specific ranges to signal the start of a multi-byte sequence. For example, non-Hangul lead bytes may be identified by specific bit patterns like 10110.

Character Set Organization

The character sets are organized into rows and columns, covering a wide array of linguistic and symbolic needs:

  • Special Characters: Found in early rows (e.g., 0x21/0xA1).
  • Basic Latin: Based on ISO 646-KR.
  • Hangul Jamo: The individual phonetic components of the Korean alphabet.
  • Mathematical and Symbolic: Including Roman numerals, Greek letters, box-drawing characters, and unit symbols.
  • Extended Scripts: Including Hiragana, Katakana, and Cyrillic.
  • Precomposed Hangul: A large set of complete Hangul syllables.
  • Hanja: Chinese characters used in the Korean language.

Key Facts

  • KS X 1001 is a primary standard for CJK (Chinese, Japanese, Korean) encoding.
  • Johab is an N-byte encoding system used for Hangul.
  • DBCS (Double-Byte Character Set) is used to represent complex characters.
  • ISO 2022 compatibility allows these encodings to work within international standards.
  • Windows CP 1361 and IBM CP 1364 are the primary implementations of Johab.

Technical Summary of Encodings

Comparison of Korean Encoding Implementations
Standard/Type Common Implementation Base Architecture
KS C 5601 Wansung (EUC-KR) IBM Code Page 970
Unified Hangul Extended Wansung Windows Code Page 949
Johab (ASCII) Standard Johab Windows Code Page 1361
Johab (EBCDIC) EBCDIC Variant IBM Code Page 1364

Frequently Asked Questions

What is the difference between Johab and Wansung?

Johab is an N-byte encoding that focuses on the phonetic components of Hangul, whereas Wansung (such as EUC-KR) typically uses a set of precomposed Hangul characters.

What does DBCS stand for in the context of Korean text?

DBCS stands for Double-Byte Character Set, a method used to represent characters that require more than the standard 8 bits (1 byte) of data.

Is Johab compatible with international standards?

Yes, Johab is designed to be ISO 2022-compatible, which helps in maintaining text integrity across different global computing systems.

Which code pages are used for Johab?

Johab is implemented in Windows code page 1361 for ASCII-based systems and IBM code page 1364 for EBCDIC-based systems.

Does KS X 1001 include Hanja?

Yes, the KS X 1001 standard includes character sets for Hangul, Hanja, and various special characters.

References

  1. Missing Greek diacritics and final sigma.
  2. Missing chōonpu, shinjitai, kokuji.
  3. Missing lowercase å, although the uppercase U+212B ANGSTROM SIGN is included, as are both cases of Ø and Æ.
  4. Korean: 정보 교환용 부호계 (한글 및 한자); RR: Jeongbo Gyohwannyong Buhogye (Hangeul mit Hanja)
  5. As a ISO 2022 compatible 94n-character set, the plain space and delete character are always available as single-byte codes at 0x20 and 0x7F (not 0xA0 and 0xFF) respectively.