デジタルテキストの世界において、特定の言語を正しく表示させるためには「文字エンコーディング」という共通のルールが必要です。ISO-8859-8は、主にヘブライ語と英語を扱うために設計された8ビットのシングルバイト文字セットであり、ASCIIをベースにしたISO 8859シリーズの一環として定義されています。
この規格は、1988年に初版が発行され、その後1999年に改訂版(ISO/IEC 8859-8:1999)がリリースされました。一般的に「Latin/Hebrew」とも呼ばれ、ヘブライ文字のすべてをカバーしていますが、母音記号(ニクード)は含まれていないという特徴があります。
Key Facts
- 基本構造:ASCIIベースの8ビット拡張文字セット。
- 対応言語:ヘブライ語および英語。
- 制限事項:ヘブライ文字は網羅しているが、母音記号はサポート外。
- 表示の特性:テキストの並び順(論理順・視覚順)の処理が必要。
- 現状:現在はUnicode(UTF-8)への移行が進み、Webサイトでの利用率は0.1%未満。
文字の並び順と処理の複雑さ
ヘブライ語のような右から左へ書く言語(RTL)を扱う際、ISO-8859-8では「文字の格納順」と「表示順」の区別が重要な課題となります。
論理順と視覚順の違い
理論上、ISO-8859-8(コードページ 28598)は視覚順(画面に見える通りの順序でデータを格納する方式)を想定しています。一方で、ISO-8859-8-I(コードページ 38598)は論理順(文字が入力された順序で格納し、表示時に反転させる方式)を定義しています。
しかし、実際の運用やXMLドキュメントの要件では、ISO-8859-8という名称であっても論理順として扱われることが一般的です。そのため、正しく表示させるには「bidi処理(双方向テキスト処理)」という、文字の方向性を制御するプロセスが不可欠となります。
なお、方向性を制御文字で明示的に指定するISO-8859-8-Eというバリアントも存在しますが、実用されることはほとんどありません。
関連規格と互換性
ISO-8859-8は、他のいくつかの規格やコードページと密接に関係しています。例えば、IBMはこれにコードページ 916(CCSID 916および5012)を割り当てており、イスラエルの国家規格であるSI 1311:2002でも一部拡張して採用されました。
Windows-1255との違い
Microsoft Windowsで採用されているヘブライ語用コードページWindows-1255は、ISO-8859-8をベースに拡張されたものです。主な違いは以下の通りです。
- C1制御文字を排除している。
- 汎用通貨記号(¤)をシェケル記号(₪)に置き換えている。
- 二重アンダースコアを削除している。
- 結合文字としての母音記号や、追加の句読点をサポートしている。
規格のまとめ
| 項目 | 詳細 |
|---|---|
| 標準規格名 | ISO/IEC 8859-8 / ECMA-121 / SI 1311 |
| 別名 | iso-ir-138, hebrew, csISOLatinHebrew |
| ベース規格 | DEC Hebrew (8-bit), ISO/IEC 8859-1 |
| IANA推奨名 | ISO-8859-8 |
| 主な競合/後継 | Windows-1255, Unicode (UTF-8) |
Frequently Asked Questions
ISO-8859-8で母音記号は表示できますか?
いいえ、ISO-8859-8規格自体にはヘブライ語の母音記号は含まれていません。母音記号が必要な場合は、UnicodeやWindows-1255などの拡張規格を利用する必要があります。
「論理順」と「視覚順」のどちらが一般的ですか?
規格上の定義は分かれていますが、実務上およびXMLなどのモダンなデータ形式では、論理順(Logical Order)として扱うことが一般的です。
現在でもこの文字コードを使うべきですか?
現代のインターネット環境では、ほぼすべての言語をカバーするUnicode(特にUTF-8)が推奨されています。ISO-8859-8を利用しているWebサイトは0.1%未満であり、新規の開発で採用されることは稀です。
Windows-1255との互換性はありますか?
Windows-1255はISO-8859-8をベースにしていますが、通貨記号の変更や母音記号の追加など、一部の文字マッピングが異なります。そのため、完全な互換性があるわけではなく、変換時に注意が必要です。