デジタルテキストの表示において、言語ごとの文字割り当てを定義するエンコーディングは不可欠な要素です。中でもISO-8859-8-Iは、ヘブライ文字を扱うための重要な規格であり、特に文字の並び順(順序)の定義において特有の性質を持っています。
ISO-8859-8-Iの基本構造
ISO-8859-8-Iとは、IANA(Internet Assigned Numbers Authority)によって定義された文字セット名であり、実体はISO/IEC 8859-8規格に基づいています。このエンコーディングの最大の特徴は、文字が論理順序(Logical Order)で配置されている点にあります。論理順序とは、文字が書き込まれる順序(読み上げ順)でデータが保持される形式を指します。
また、この規格では制御コードの処理にISO/IEC 6429を採用しており、C0領域(16進数で00–1F)およびC1領域(80–9F)の制御文字を組み合わせて利用します。
制御コードの解釈とアプリケーションの挙動
ISO-8859-8-Iにおける制御コードの扱いは、利用するアプリケーションによって異なります。基本的には、ISO/IEC 6429やISO/IEC 2022で定義されているエスケープシーケンスは解釈されない仕様となっています。
多くのアプリケーションが標準的に対応しているのは、以下の基本的な制御コードのみです。
- LF(ラインフィード):改行
- CR(キャリッジリターン):復帰
- HT(水平タブ):タブ挿入
一部の環境では、VT(垂直タブ)、FF(フォームフィード)、およびC1領域のNEL(次行先頭)が認識されることもありますが、それ以外のC0/C1制御コードを正しく処理できるアプリケーションは極めて稀です。
論理順序と視覚順序の使い分け
ISO-8859-8という規格全体で見ると、データの保持形式には「論理順序」と「視覚順序(Visual Order)」の2種類が存在します。視覚順序とは、画面上の表示通り(左から右へ)に文字を配置する形式です。一般的に、マークアップのないプレーンテキストでは視覚順序が用いられることがありますが、HTMLやXMLなどの構造化文書では論理順序が採用されます。
論理順序で記述されたテキストを正しく画面に表示させるには、bidi処理(双方向テキスト処理)という、文字の方向性を判定して適切に配置し直すプロセスが必須となります。
WHATWG Encoding Standardにおける扱い
HTML5で採用されているWHATWG Encoding Standardでは、ISO-8859-8とISO-8859-8-Iを明確に区別しています。両者は文字のマッピング自体は同一ですが、レイアウトの方向性に影響を与えるため、異なるエンコーディングとして定義されています。なお、この区別はISO-8859-8(ヘブライ語)特有のものであり、ISO-8859-6(アラビア語)には適用されません。
Key Facts
- 定義: ISO-8859-8-Iは、ISO/IEC 8859-8にISO/IEC 6429の制御コードを加えたIANA文字セット。
- 文字順序: 文字は論理順序で配置されており、表示にはbidi処理が必要。
- 制御コード: LF, CR, HTが一般的。その他のC0/C1コードのサポートは限定的。
- 標準規格: WHATWGでは、レイアウト方向の影響を考慮し、ISO-8859-8とISO-8859-8-Iを別個のエンコーディングとして扱う。
仕様まとめ
| 項目 | 詳細内容 |
|---|---|
| ベース規格 | ISO/IEC 8859-8 |
| 制御コード規格 | ISO/IEC 6429 (C0: 00-1F, C1: 80-9F) |
| 文字の並び順 | 論理順序 (Logical Order) |
| 必須処理 | 表示時のbidi処理 |
| WHATWGの扱い | ISO-8859-8とは別エンコーディングとして定義 |
Frequently Asked Questions
ISO-8859-8-IとISO-8859-8の違いは何ですか?
文字の割り当て(マッピング)は同じですが、WHATWG Encoding Standardにおいて、レイアウト方向への影響を区別するために異なるエンコーディングとして定義されています。
論理順序で保存されたテキストを表示するにはどうすればよいですか?
論理順序のテキストを正しく表示するには、双方向テキストを処理する「bidi処理」を行うソフトウェアやブラウザが必要です。
どのような制御コードが一般的にサポートされていますか?
ほとんどのアプリケーションで、LF(改行)、CR(復帰)、HT(水平タブ)の3種類が解釈されます。
視覚順序とはどのような形式ですか?
視覚順序とは、マークアップのないプレーンテキストなどで見られる、画面上の表示位置に合わせて左から右へ文字を配置する形式のことです。
ISO-8859-6(アラビア語)でも同様の区別がありますか?
いいえ、WHATWGにおけるISO-8859-8とISO-8859-8-Iのような区別は、ISO-8859-6には適用されません。