ヘッダーをスキップ
Oracle Access Manager概要
10g(10.1.4.2.0)
E05804-01
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

4 グローバリゼーションとマルチバイト・サポートについて

この章では、Unicodeを使用して国際化データの処理を可能にすることによる、Oracle Access Manager 10g(10.1.4.0.1)でのグローバリゼーション、国際言語のローカリゼーション、およびマルチバイト・サポートについて説明します。次のトピックが含まれます。

4.1 Oracle Access Managerのグローバリゼーションとローカリゼーション

Oracle Access Manager 10g(10.1.4.0.1)は、グローバリゼーションされました。グローバリゼーションとは、ネイティブ・ユーザーの言語とローカル設定でコンテンツを表示しながら、変更しなくてもどこでも同時にアクセスおよび実行できるマルチ言語のアプリケーションおよびソフトウェア製品を提供することです。

ロケールとは、システムまたはプログラムが稼働する言語的および文化的な環境のことです。ロケールと関連付けられたデータは、特定の言語および国に対応する言語的および文化的な要件に基づいて、日付、時刻、数値、通貨などの書式設定と解釈に対するサポートを提供します。

Oracle製品のグローバリゼーションは、国際化とローカリゼーションを含む2つの部分からなるプロセスです。国際化(Internationalization、"I - 18文字 -N"の意味で"I18N"と省略されることもあります)には、ソフトウェ製品およびアプリケーションが、非USキーボードまたは他の国固有のハードウェアを使用して、サポートされるオペレーティング・システム(任意のサポートされる言語の)を実行するコンピュータで利用できる必要があります。Oracleアプリケーションは、言語文字列に対してハードコードされた依存性を持たないので、他の製品の非USバージョンと相互動作できます。Oracleアプリケーションは、マルチバイト文字および分散環境における違いに対処でき、ユーザーの目的のロケールを検出できます。Oracle Access Manager10g(10.1.4.0.1)は、これらの要件を満たし、「Oracle Access ManagerとUnicode規格」で解説されているUnicode規格4.0に準拠しています。

ローカリゼーションには、個別のファイル・テキストの翻訳が含まれます。Oracle Access Managerを含むOracle製品では、次で説明するように、情報は、データ形式、照合、通貨、日付、時刻、テキストの向き(右から左または左から右)など、ユーザーのローカルな文化的規則に合せた方法で表現されます。

4.2 Oracle Access Managerでのローカライズされたメッセージのための言語

翻訳可能な情報は、エンド・ユーザー情報(すべてのユーザーがアクセス可能)と管理情報(管理者権限を持つユーザー用)の2種類に分類できます。言語パックを使用しないでOracle Access Manager 10g(10.1.4.0.1)をインストールすると、英語が管理者用とエンド・ユーザー用のデフォルトの言語になります。Oracleが提供する言語パックを使用して10g(10.1.4.0.1)をインストールすると、管理アクティビティに対するデフォルトとして使用する言語を選択できます。インストール時に選択するデフォルトの管理者言語に関係なく、英語は常にインストールされます。

エンド・ユーザーの場合は、Oracle Access Manager 10g(10.1.4.0.1)では、エラー・メッセージなどの静的なアプリケーション・データ、およびタブ、パネル、属性などに対する表示名を、表4-1で示すエンド・ユーザー言語で表示できます。管理情報は、表4-1で示されている管理者言語でのみ表示できます。管理ページが他の言語で要求された場合は(ブラウザの設定により)、製品のインストール時にデフォルトとして選択されている言語がページを表示するために使用されます。

表4-1 Oracle Access Managerでのローカライズされたメッセージのための言語


インストール・ディレクトリに対する言語タグ エンド・ユーザー情報 管理者

en-us

英語

英語


ar-ar

アラビア語



pt-br

ポルトガル語(ブラジル)

ポルトガル語(ブラジル)


fr-ca

フランス語(カナダ)

フランス語(カナダ)


cs-cs

チェコ語



da-dk

デンマーク語



nl-nl

オランダ語



fi-fi

フィンランド語



fr-fr

フランス語

フランス語


de-de

ドイツ語

ドイツ語


el-gr

ギリシャ語



he-il

ヘブライ語



hu-hu

ハンガリー語



it-it

イタリア語

イタリア語


ja-jp

日本語

日本語


ko-kr

韓国語

韓国語


es-mx

スペイン語(南米)

スペイン語(南米)


no-no

ノルウェー語



pl-pl

ポーランド語



pt-pt

ポルトガル語



ro-ro

ルーマニア語



ru-ru

ロシア語



zh-cn

簡体字中国語

簡体字中国語


sk-sk

スロバキア語



es-es

スペイン語/スペイン

スペイン語


sv-sv

スウェーデン語



th-th

タイ語



zh-tw

繁体字中国語

繁体字中国語


tr-tr

トルコ語



4.2.1 双方向言語のサポート

欧米言語のほとんどは、左から右(LTR)、ページの上から下に向かって書かれます。東アジアの言語は、通常は上から下に、ページの右から左(RTL)に向かって書かれますが、欧米言語から翻訳された技術文書ではしばしば例外が見られます。

ヘブライ語やアラビア語などの一部の言語は、主として右から左に向かって読み書きされます。アラビア語とヘブライ語では、数字は逆の方向になります。テキストは右から左に書かれますが、文中の数値は、欧米言語や他のLTR言語と同様に、左から右に向かって(最上位の桁が左側)記述されます。

LTR言語がRTL言語と混在する場合、完成したドキュメントまたはコンテンツは、双方向とみなされます。Oracle Access Managerは、双方向言語をサポートできます。ホスト・コンピュータのブラウザが双方向言語を使用するように構成されている場合、Oracle Access Managerはそれを適切に処理します。


注意:

管理言語には、双方向サポートを必要とするものはありません。

複数言語および双方向言語をサポートするため、Oracle Access Manager 10g(10.1.4.0.1)はエンコーディングにUnicode規格をサポートします。


注意:

記述の方向は、文字のエンコーディングには影響を与えません。記述方向に関係なく、データは、画面上での表示順序ではなく論理的な順序(言語を入力する順序)で格納されます。

4.3 Oracle Access ManagerとUnicode規格

Oracle Access Manager 10g(10.1.4.0.1)はUnicode規格サポートします。Unicodeは、多くのソフトウェアおよびハードウェア・ベンダーによってサポートされている規格です。多くのオペレーティング・システムとブラウザがUnicodeをサポートするようになっており、XML、Java、JavaScript、LDAP、CORBA 3.0、WML、Windows XPなどの最新の標準ではUnicodeが必要です。Unicode規格は、ISO/IEC 10646規格とも同期が取られています。

コンピュータはすべての文字を数字で表します。キャラクタ・セットは、個別の文字からバイナリ値へのマッピングです。このマッピングはコード体系とも呼ばれます。文字には何十種類ものコード体系があります。

Unicodeは世界共通のコード体系であり、今日使用されているすべての主要な現代言語の文字に対するコードが定義されています。Unicodeを使用すると、任意の言語による情報を単一のキャラクタ・セットを使用して格納できます。Unicode規格では、各文字にコードポイントと呼ばれる個別の数値が割り当てられ、文字は関連する文字のブロックに編成されます。Unicodeのコードポイントは、一般に16進形式で表されます。Unicodeは、プラットフォーム、プログラム、または言語が何であっても、すべての文字に対して固有のコード値を提供します。

Unicode規格は、主として言語ではなくスクリプトをエンコードします。スクリプトは、1つ以上の関連する言語で使用される記号の集合です。複数の言語が歴史的に関連のある起源を持つ記号のセットを共有する場合、そのような各言語の記号のセットは、単一のスクリプトとして識別される単一の集合にまとめられます。たとえば、キリル・スクリプトは、様々なキリル・アルファベットで使用されるすべての文字のスーパーセットです。

多くの技術と同じように、Unicodeにも複数の実装標準があります。つまり、固定幅のUCS-2形式(または、そのスーパーセットのUTF16)と、Oracleで使用されている適度にコンパクトで可変幅のUTF-8形式です。


注意:

標準的なUCS-2形式(たとえば、Windows NTで内部的に使用されているもの)は、各文字に対して2バイトを使用します(ASCII文字を含む)。

4.3.1 UTF-8エンコーディング

Oracle Access Manager 10g(10.1.4.0.1)を含むOracle製品は、UTF-8エンコーディングをサポートします。入力データはUTF-8エンコーディングを使用します。HTMLページやOracle Access Managerからの情報などの出力テキストは、UTF-8エンコーディングを使用します。つまり、出力文字は、必要に応じて適切な言語(LTR、RTL、または双方向)で表示されます。


注意:

「Oracle Access ManagerとLatin-1エンコーディング」で説明されているように、Oracle Access Managerの以前のリリースは、Latin-1エンコーディング規格のみをサポートしていました。10g(10.1.4.0.1)では、新規インストールではUnicodeが提供されますが、10g(10.1.4.0.1)にアップグレードされた古いインストールでのカスタマイズのために後方互換性も提供されます。詳細は、第5章「10g(10.1.4.0.1)の動作の概要」を参照してください。

最近のほとんどの文字エンコーディングの歴史的な基礎はASCIIです。ASCIIは、コンピュータのテキスト・ファイルとインターネットにおいて最も一般的な形式です。ASCIIファイルでは、各アルファベット、数字、または特殊文字は、7ビットのバイナリ値で表されます。UNIXおよびDOSベースのオペレーティング・システムでは、テキスト・ファイルにASCIIを使用します。Windows NT、2000、およびXPは、Unicodeを使用します。

UTF-8はUnicodeの8ビット・エンコーディング規格であり、7ビットASCIIの厳密なスーパーセットです。つまり、各7ビットASCII文字は、UTF-8においても同じ対応するコードポイント値で使用できます。各7ビットASCII文字は1バイトを使用しますが、UTF-8の各コードポイント値は、1〜4バイトに分配されるビット・パターンを生成します。つまり、UTF-8エンコーディングでは、単一のUnicode文字は、1バイト、2バイト、3バイト、または4バイトのいずれかです。

OracleがサポートするUTF-8形式のUnicodeでは、アクセント記号付きのラテン文字およびギリシャ、キリル、アラビア、ヘブライの各文字には、それぞれ2バイトが使用されます。中国語、日本語、韓国語、インド語などの他のすべての文字には、それぞれ3バイトが使用されます。補助文字には、それぞれ4バイトが使用されます。

4.4 Oracle Unicodeキャラクタ・セット

主として公式の規格がなかったことが理由で、歴史的に、ハードウェアやソフトウェアに対して定義されるキャラクタ・セットはベンダーごとに異なっていました。キャラクタ・セットが異なると、サポートされる文字インベントリ(レパートリーとも呼ばれます)も異なります。初めて開発されたキャラクタ・セットでは、レパートリーは限られていました。たとえば、ASCII 7ビット・キャラクタ・セットは128個、UNIX ROMAN8 8ビット・キャラクタ・セットは256個の記号しか提供しませんでした。Oracleが開発した古いマルチバイト・キャラクタ・セットであるUTF8は、古いUnicode規格に基づいています。

Unicode(UTF-8)は、百万以上の文字を定義できるマルチバイト・キャラクタ・セットです。一般にキャラクタ・セットは特定の記述スクリプトに基づいているので、1つのキャラクタ・セットが複数の言語をサポートできます。

Unicode UTF-8規格に相当するOracleのキャラクタ・セットはAL32UTF8です。このキャラクタ・セットを処理するために使用されるコードは、各Oracle Access Managerコンポーネントにバンドルされているライブラリ内に存在し、製品とともに自動的にインストールされます。

Oracle Access Manager 10g(10.1.4.0.1)は、AL32UTF8キャラクタ・セットを使用してすべてのデータを処理します。Oracle Access Managerに入力されるデータは、UTF-8でエンコードされています。出力データもUTF-8でエンコードされています。

4.4.1 Oracle AL32UTF8および他のOracleキャラクタ・セットの背景

次の情報は、参考のためにのみ提供されています。

4.4.1.1 Oracle AL32UTF8およびUTF8キャラクタ・セット

Oracle9iで、OracleはUnicode規格3.0に基づく拡張であるUnicodeキャラクタ・セットAL32UTF8を導入しました。Oracle 10gリリース2(10.1.2)以降、AL32UTF8は最新バージョンのUnicode規格(Unicode 4.0)にマップしており、新しく定義された補助文字をサポートします。すべての補助文字は4バイトで格納されます。UTF-8規格の発展に伴って、AL32UTF8キャラクタ・セットも発展します。

Oracle8および8iでは、UTF-8エンコードのキャラクタ・セットとしてUTF8が導入されました(Unicodeバージョン2.1に基づく)。Oracle9iには、Unicode規格3.0をサポートするOracle UTF8キャラクタ・セットの更新バージョンが含まれていました。既存のインストールとの互換性を維持するため、UTF8キャラクタ・セットはUnicodeバージョン3.0のまま維持されます。

4.4.1.2 古いOracle Unicodeキャラクタ・セット

Oracleがデータベース・キャラクタ・セットとしてUnicodeのサポートを始めたのは、Oracleデータベース・バージョン7からです。Oracleがサポートした最初のUnicodeキャラクタ・セットはAL24UTFFSSでした。AL24UTFFSSという名前は、マルチバイトUnicodeキャラクタ・エンコーディング・スキームUTF-FSSに由来します。<言語><ビット・サイズ><エンコーディング>という命名規則が使用され、AL24UTFFSSは"All Languages 24 bits size UTFFSS"(全言語24ビット・サイズUTFFSS)を表しています。AL24UTFFSSは、今では廃止されているUnicode規格1.1に基づいていました。AL24UTFFSSのサポートは、Oracle9iの時点で中止されました。

4.5 Oracle Access ManagerとLatin-1エンコーディング

初期のリリースのOracle Access ManagerはLatin-1エンコーディングのみをサポートし、製品は欧米言語のサブセットを処理できました。

Latin-1エンコーディングは、International Organization for Standardization(ISO、頭文字ではありません)とInternational Electrotechnical Commission(IEC)が協力して開発しました。このコンピュータ用の8ビット・キャラクタ・エンコーディング規格は、公式にはISO/IEC 8859と呼ばれ、非公式にはISO 8859と呼ばれています。この規格はいくつかの部分に分かれており、それぞれが個別に公開されています。Part 1(ISO 8859-1とも呼ばれます)は最も広範に使用されており、Latin-1エンコーディングを包含しています。

ISO 8859-1(Latin-1)エンコーディングは、コンピュータのメモリーでは単一バイト(8ビット)で表すことができ、英語、フランス語、ドイツ語(および他のいくつかの西欧言語)などの様々な西欧言語、東欧言語(アルバニア語)、およびアフリカーンス語とスワヒリ語をサポートできます。

ISO-8859-1は、従来のHTMLドキュメント、およびドキュメントのメディア・タイプがtext(たとえばtext/html)のときのHTTPレスポンスのようにMIMEメッセージを通して送信されるドキュメントに対して使用される、デフォルトのエンコーディングです。

8ビットのISO-8859規格は、ASCIIの真の拡張として開発されました。ISO 8859-1 Latin-1では、元のASCIIキャラクタ・マッピングがそのまま継承され、7ビットの範囲より大きい値が追加されています。ISO/IEC 8859-1およびその元になっている7ビットASCIIは、今でも最も一般的なキャラクタ・エンコーディングとして使用されています。

アップグレードされた環境での後方互換性は自動的であり、10g(10.1.4.0.1)にアップグレードした古いインストールではLatin-1エンコーディングがデフォルトとして残ります。


注意:

アップグレード環境に10g(10.1.4.0.1)のアイデンティティ・サーバーまたはアクセス・サーバーを追加するときは、後方互換性を有効にするフラグを手動で設定する必要があります。詳細は、第5章「10g(10.1.4.0.1)の動作の概要」を参照してください。

4.6 他の章の内容

このガイドの他の章では、概念、動作、マニュアル、および用語についてさらに詳しく説明します。