(57)【要約】【課題】  柔軟なローカライズを容易にする処理装置、応用プログラム、リソース再生方法、応用プログラム生成方法及びリソースデータ群のデータ構造を提供する。【解決手段】  記憶手段に記憶されている一つ以上の第一のリソースデータ群の中からプログラム部品に設定されている第一のリソース情報に基づいてプログラム部品毎に第一のリソースデータ群を選択し、選択した第一のリソースデータ群から第一のリソース情報に基づいてリソースデータを取得するリソース取得手段と、取得したリソースデータをプログラム部品毎に再生するリソース再生手段と、を備える。【選択図】    図１
2005135369.tif 000002
【特許請求の範囲】
【請求項１】
記憶手段に記憶されている一つ以上の第一のリソースデータ群の中からプログラム部品に設定されている第一のリソース情報に基づいてプログラム部品毎に第一のリソースデータ群を選択し、選択した第一のリソースデータ群から第一のリソース情報に基づいてリソースデータを取得するリソース取得手段と、
取得したリソースデータをプログラム部品毎に再生するリソース再生手段と、
を備えることを特徴とする処理装置。
【請求項２】
前記リソース取得手段は、前記リソースデータを再生する際に選択した第一のリソースデータ群からリソースデータを取得することを特徴とする請求項１に記載の処理装置。
【請求項３】
プログラム部品毎に前記リソース取得手段を備えることを特徴とする請求項１又は２に記載の処理装置。
【請求項４】
各第一のリソースデータ群には互いに同じ意味の文字データが含まれ、各文字データは第一のリソースデータ群毎に異なる自然言語で記述されていることを特徴とする請求項１、２又は３に記載の処理装置。
【請求項５】
各第一のリソースデータ群には互いに同じ目的で用いられるアイコンデータが含まれ、各アイコンデータは第一のリソースデータ群毎に異なる画像を表すことを特徴とする請求項１〜４のいずれか一項に記載の処理装置。
【請求項６】
プログラム部品で構成される画面を定義する一つ以上の第二のリソースデータ群の中から第二のリソース情報に基づいて第二のリソースデータ群を選択し、選択した第二のリソースデータ群に基づいて画面を生成する画面生成手段を更に備えることを特徴とする請求項１〜５のいずれか一項に記載の処理装置。
【請求項７】
記憶手段に記憶されている第一のリソースデータ群からプログラム部品に設定されている第一のリソース情報に基づいてリソースデータを取得するリソース取得手段と、
取得したリソースデータが文字データのとき当該文字データを第一のリソース情報に設定されている自然言語に翻訳する翻訳手段と、
取得したリソースデータ又は翻訳したリソースデータをプログラム部品毎に再生するリソース再生手段と、
を備えることを特徴とする処理装置。
【請求項８】
プログラム部品を組み合わせて生成された応用プログラムであって、
記憶手段に記憶されている一つ以上の第一のリソースデータ群の中からプログラム部品に設定されている第一のリソース情報に基づいてプログラム部品毎に第一のリソースデータ群を選択し、選択した第一のリソースデータ群から第一のリソース情報に基づいてリソースデータを取得するリソース取得手段と、
取得したリソースデータをプログラム部品毎に再生するリソース再生手段としてコンピュータを機能させることを特徴とする応用プログラム。
【請求項９】
プログラム部品を組み合わせて生成された応用プログラムであって、
記憶手段に記憶されている第一のリソースデータ群からプログラム部品に設定されている第一のリソース情報に基づいてリソースデータを取得するリソース取得手段と、
取得したリソースデータが文字データのとき当該文字データを第一のリソース情報に設定されている自然言語に翻訳する翻訳手段と、
取得したリソースデータ又は翻訳したリソースデータをプログラム部品毎に再生するリソース再生手段としてコンピュータを機能させることを特徴とする応用プログラム。
【請求項１０】
一つ以上のリソースデータを含む第一のリソースデータ群を作成する段階と、
第一のリソース情報の設定が可能なプログラム部品であって、一つ以上の第一のリソースデータ群の中から第一のリソース情報に基づいて第一のリソースデータ群を選択し、選択した第一のリソースデータ群から第一のリソース情報に基づいてリソースデータを取得する処理が定義されている第一の手続き情報と、取得したリソースデータを再生する処理が定義されている第二の手続き情報とを含むプログラム部品を組み合わせる段階と、各プログラム部品に第一のリソース情報を設定する段階とを含む応用プログラム生成段階と、
前記応用プログラムを実行してリソースデータをプログラム部品毎に再生する実行段階と、
を含むことを特徴とするリソース再生方法。
【請求項１１】
プログラム部品を組み合わせて生成された応用プログラムであって、記憶手段に記憶されている一つ以上の第一のリソースデータ群の中からプログラム部品に設定されている第一のリソース情報に基づいてプログラム部品毎に第一のリソースデータ群を選択し、選択した第一のリソースデータ群から第一のリソース情報に基づいてリソースデータを取得するリソース取得手段と、取得したリソースデータをプログラム部品毎に再生するリソース再生手段としてコンピュータを機能させる応用プログラムを前記コンピュータの記憶手段に記憶させる第一のインストール段階と、
記憶媒体の所定の領域に記憶されている全ての第一のリソースデータ群を前記記憶手段に記憶させる第二のインストール段階と、
前記第一のインストール段階で記憶させた応用プログラムを実行し、前記第二のインストール段階で記憶させた第一のリソースデータ群からプログラム部品毎にリソースデータを取得して再生する実行段階と、
を含むことを特徴とするリソース再生方法。
【請求項１２】
第一のリソース情報の設定が可能なプログラム部品であって、記憶手段に記憶されている一つ以上の第一のリソースデータ群の中から第一のリソース情報に基づいて第一のリソースデータ群を選択し、選択した第一のリソースデータ群から第一のリソース情報に基づいてリソースデータを取得する処理が定義されている第一の手続き情報と、取得したリソースデータを再生する処理が定義されている第二の手続き情報とを含むプログラム部品を組み合わせる段階と、
各プログラム部品に第一のリソース情報を設定する段階と、
を含むことを特徴とする応用プログラム生成方法。
【請求項１３】
画面を構成するプログラム部品によって再生されるリソースデータと、
前記リソースデータに関連付けられ、前記リソースデータを再生するプログラム部品の属性情報を含むリソースデータ識別情報と、
を含むことを特徴とするリソースデータ群のデータ構造。
【請求項１４】
前記属性情報は、前記プログラム部品が構成する画面を特定する情報と、前記画面において前記プログラム部品を一意に識別する情報と、前記プログラム部品の種類を表す情報と、を含むことを特徴とする請求項Ｂに記載のリソースデータ群のデータ構造。
【請求項１５】
各プログラム部品について当該プログラム部品の属性情報に基づいてリソースデータ識別情報を生成し、生成したリソースデータ識別情報に関連付けられているリソースデータを請求項１３又は１４に記載のリソースデータ群から取得するリソース取得手段と、
取得したリソースデータをプログラム部品毎に再生するリソース再生手段と、
を備えることを特徴とする処理装置。
【請求項１６】
プログラム部品で構成される画面を表示する応用プログラムであって、
各プログラム部品について当該プログラム部品の属性情報に基づいてリソースデータ識別情報を生成し、生成したリソースデータ識別情報に関連付けられているリソースデータを請求項１３又は１４に記載のリソースデータ群から取得するリソース取得手段と、
取得したリソースデータをプログラム部品毎に再生するリソース再生手段としてコンピュータを機能させることを特徴とする応用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、処理装置、応用プログラム、リソース再生方法、応用プログラム生成方法及びリソースデータ群のデータ構造に関する。
【背景技術】
【０００２】
使用する自然言語が異なる複数のユーザにあるプログラムを利用させる場合、ボタン名として表示する文字、フィールド名として表示する文字、あるいはメニュー項目に表示する文字などをそれぞれの自然言語で表示させないと使い勝手が悪い。文字を各自然言語で表示する方法、所謂ローカライズする方法としては、当該プログラムを開発した開発環境が提供するローカライズの仕組みを利用する方法や、動的リンクライブラリを言語毎に生成し、言語に応じて動的リンクライブラリを差し替える方法などがある。また、複数言語に翻訳されたメッセージセットを備えるメッセージファイルを記憶し、指定された国情報に応じたメッセージセットを動的にロードすることによりローカライズする方法も知られている（例えば特許文献１参照。）。
【０００３】
【特許文献１】特表平８−５０４９８１
【発明の開示】
【発明が解決しようとする課題】
【０００４】
プログラムを複数の自然言語にローカライズする場合、例えば日本で開発したプログラムを外国の営業担当者がローカライズを行うようにすると、開発者がローカライズを行う必要がないため開発者の負担を低減できる。しかしながら、開発環境が提供するローカライズの仕組みを利用する方法の場合、開発環境の操作に高度な技術が要求され、営業担当者がローカライズを実施することは容易なことではない。また、営業担当者側の開発環境と開発者側の開発環境とが異なると営業担当者側で新たな問題が発生することがあり、両者のバージョンを統一しておかなければならないという手間がかかる。従って営業担当者側でローカライズを実施することは技術、コストの面で困難である。また、多くの開発環境は文字列とＩＤとを対応付けて格納したリソースファイルと呼ばれるファイルを編集することによってローカライズする仕組みを提供するが、リソースファイルの編集は単純作業で、判りづらいＩＤに割り付けられた文字列の編集を強いられるため本質的に誤りが発生し易いという問題もある。例えば特許文献１に記載の方法では判り難いメッセージヘッダに対応付けてメッセージリストを定義するため、営業担当者が各メッセージリストについてそれがどの画面のどこに表示されるものであるかを把握することは容易ではない。従って翻訳時に誤りが発生し易い上、翻訳が誤っていたとしても翻訳者がメッセージヘッダの情報からその誤りに気付くことは困難である。動的リンクライブラリのローカライズも同様で開発環境の操作が必要となる上、ＩＤに割り付けられた文字列の編集を強いられることにかわりはないため誤りが発生し易い。また、新たな自然言語に対応する場合、元のプログラムを修正しなければならないという問題もある。
【０００５】
また、従来のローカライズの仕組みによると、柔軟なローカライズに手間がかかるという問題がある。例えばプログラムについての約款などのように同じ情報を複数の自然言語で表示する場合がある。この場合、従来のローカライズの仕組みによると、日本語、英語、ドイツ語、フランス語、中国語向けにプログラムをローカライズするとすると、日本語の約款を英語向け、ドイツ語向け、フランス語向け、中国語向けのどのリソースファイルにも格納しなければならない。従って日本語で記述された約款が複数のリソースファイルに重複して格納されることになる。他の言語の約款についても同様である。また、新たな言語に対応する場合はそれぞれの言語向けのリソースファイルにその新たな言語で記述された約款を追加する作業が発生する。このようにある文字のみを多言語にローカライズして他の文字は特定の一言語にローカライズするような柔軟なローカライズを行う場合、従来のローカライズの仕組みでは手間がかかる。
【０００６】
本発明は、かかる問題に鑑みて創作されたものであって、柔軟なローカライズを容易にする処理装置、応用プログラム、リソース再生方法、応用プログラム生成方法及びリソースデータ群のデータ構造を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明に係る処理装置は、記憶手段に記憶されている一つ以上の第一のリソースデータ群の中からプログラム部品に設定されている第一のリソース情報に基づいてプログラム部品毎に第一のリソースデータ群を選択し、選択した第一のリソースデータ群から第一のリソース情報に基づいてリソースデータを取得するリソース取得手段と、取得したリソースデータをプログラム部品毎に再生するリソース再生手段と、を備える。この処理装置によると、第一のリソースデータ群を応用プログラムから独立させることにより、第一のリソースデータ群の編集に開発環境が要求されず開発者以外でも容易に編集できる。また、この処理装置によると、第一のリソースデータ群がプログラム部品単位で選択されるため、ある情報を複数の言語で表示したいとき、一つの第一のリソースデータ群の中にその情報を複数の言語で記述しなくてよい。具体的には、別々の自然言語で記述された第一のリソースデータ群にその情報を当該自然言語で記述して含めておけば、各プログラム部品が別々の第一のリソースデータ群からその情報（リソースデータ）を取得することで、同じ情報を複数の言語で表示することができる。このため、例えば日本語で記述したあるリソースデータを一つ以上の第一のリソースデータ群に重複して格納する必要がない。従って、第一のリソースデータ群を用意する手間を低減できる。よってこの処理装置によると、柔軟なローカライズが容易になる。
【０００８】
さらに、本発明に係る処理装置では、前記リソース取得手段は、前記リソースデータを再生する際に選択した第一のリソースデータ群からリソースデータを取得する。この処理装置によると、再生する際にリソースデータを取得するため、例えば処理装置を起動した直後に取得する場合に比べてメモリを効率よく利用できる。
【０００９】
さらに、本発明に係る処理装置では、プログラム部品毎に前記リソース取得手段を備える。この処理装置によると、プログラム部品毎にリソース取得手段を備えることにより、開発者がリソース取得手段を実装する手間を低減できる。
さらに、本発明に係る処理装置では、各第一のリソースデータ群には互いに同じ意味の文字データが含まれ、各文字データは第一のリソースデータ群毎に異なる自然言語で記述されている。この処理装置によると、表示する文字をローカライズすることが容易になる。
【００１０】
さらに、本発明に係る処理装置では、各第一のリソースデータ群には互いに同じ目的で用いられるアイコンデータが含まれ、各アイコンデータは第一のリソースデータ群毎に異なる画像を表す。この処理装置によると、表示するアイコンをローカライズすることが容易になる。
さらに、本発明に係る処理装置では、プログラム部品で構成される画面を定義する一つ以上の第二のリソースデータ群の中から第二のリソース情報に基づいて第二のリソースデータ群を選択し、選択した第二のリソースデータ群に基づいて画面を生成する画面生成手段を更に備える。この処理装置によると、表示する画面を容易にローカライズできる。
【００１１】
さらに、本発明に係る処理装置では、記憶手段に記憶されている第一のリソースデータ群からプログラム部品に設定されている第一のリソース情報に基づいてリソースデータを取得するリソース取得手段と、取得したリソースデータが文字データのとき当該文字データを第一のリソース情報に設定されている自然言語に翻訳する翻訳手段と、取得したリソースデータ又は翻訳したリソースデータをプログラム部品毎に再生するリソース再生手段と、を備える。この処理装置によると、プログラム部品単位に翻訳する言語を指定できる上、リソースデータを翻訳するため用意するリソースデータ群が一つだけでよく、ローカライズが容易である。よってこの処理装置によると、柔軟なローカライズが容易になる。
【００１２】
上記目的を達成するため、本発明に係る応用プログラムは、プログラム部品を組み合わせて生成された応用プログラムであって、記憶手段に記憶されている一つ以上の第一のリソースデータ群の中からプログラム部品に設定されている第一のリソース情報に基づいてプログラム部品毎に第一のリソースデータ群を選択し、選択した第一のリソースデータ群から第一のリソース情報に基づいてリソースデータを取得するリソース取得手段と、取得したリソースデータをプログラム部品毎に再生するリソース再生手段としてコンピュータを機能させる。この応用プログラムによると、柔軟なローカライズが容易になる。
【００１３】
上記目的を達成するため、本発明に係る応用プログラムは、プログラム部品を組み合わせて生成された応用プログラムであって、記憶手段に記憶されている第一のリソースデータ群からプログラム部品に設定されている第一のリソース情報に基づいてリソースデータを取得するリソース取得手段と、取得したリソースデータが文字データのとき当該文字データを第一のリソース情報に設定されている自然言語に翻訳する翻訳手段と、取得したリソースデータ又は翻訳したリソースデータをプログラム部品毎に再生するリソース再生手段としてコンピュータを機能させる。この応用プログラムによると、柔軟なローカライズが容易になる。
【００１４】
上記目的を達成するため、本発明に係るリソース再生方法は、一つ以上のリソースデータを含む第一のリソースデータ群を作成する段階と、第一のリソース情報の設定が可能なプログラム部品であって、一つ以上の第一のリソースデータ群の中から第一のリソース情報に基づいて第一のリソースデータ群を選択し、選択した第一のリソースデータ群から第一のリソース情報に基づいてリソースデータを取得する処理が定義されている第一の手続き情報と、取得したリソースデータを再生する処理が定義されている第二の手続き情報とを含むプログラム部品を組み合わせる段階と、各プログラム部品に第一のリソース情報を設定する段階とを含む応用プログラム生成段階と、前記応用プログラムを実行してリソースデータをプログラム部品毎に再生する実行段階と、を含む。このリソース再生方法によると、リソースを柔軟にローカライズして再生することが容易になる。
【００１５】
上記目的を達成するため、本発明に係るリソース再生方法は、プログラム部品を組み合わせて生成された応用プログラムであって、記憶手段に記憶されている一つ以上の第一のリソースデータ群の中からプログラム部品に設定されている第一のリソース情報に基づいてプログラム部品毎に第一のリソースデータ群を選択し、選択した第一のリソースデータ群から第一のリソース情報に基づいてリソースデータを取得するリソース取得手段と、取得したリソースデータをプログラム部品毎に再生するリソース再生手段としてコンピュータを機能させる応用プログラムを前記コンピュータの記憶手段に記憶させる第一のインストール段階と、記憶媒体の所定の領域に記憶されている全ての第一のリソースデータ群を前記記憶手段に記憶させる第二のインストール段階と、前記第一のインストール段階で記憶させた応用プログラムを実行し、前記第二のインストール段階で記憶させた第一のリソースデータ群からプログラム部品毎にリソースデータを取得して再生する実行段階と、を含む。このリソース再生方法によると、ローカライズする言語によらず応用プログラムをコンピュータにインストールする作業は同じであるため、応用プログラムをインストールするためのインストーラを開発する場合に言語毎にインストーラを開発する必要がなく、インストーラの開発工数を低減できる。
【００１６】
上記目的を達成するため、本発明に係る応用プログラム生成方法は、第一のリソース情報の設定が可能なプログラム部品であって、記憶手段に記憶されている一つ以上の第一のリソースデータ群の中から第一のリソース情報に基づいて第一のリソースデータ群を選択し、選択した第一のリソースデータ群から第一のリソース情報に基づいてリソースデータを取得する処理が定義されている第一の手続き情報と、取得したリソースデータを再生する処理が定義されている第二の手続き情報とを含むプログラム部品を組み合わせる段階と、各プログラム部品に第一のリソース情報を設定する段階と、を含む。この応用プログラム生成方法によると、柔軟なローカライズが容易な応用プログラムを生成できる。
【００１７】
上記目的を達成するため、本発明に係るリソースデータ群のデータ構造は、画面を構成するプログラム部品によって再生されるリソースデータと、前記リソースデータに関連付けられ、前記リソースデータを再生するプログラム部品の属性情報を含むリソースデータ識別情報と、を含む。このリソースデータ群のデータ構造によると、リソースデータ識別情報にプログラム部品の属性情報が含まれているため、翻訳後に属性情報とリソースデータとを比較することでリソースデータの翻訳の誤りに気付くことができ、より正確にローカライズできる。
【００１８】
さらに、本発明に係るリソースデータ群のデータ構造では、前記属性情報は、前記プログラム部品が構成する画面を特定する情報と、前記画面において前記プログラム部品を一意に識別する情報と、前記プログラム部品の種類を表す情報と、を含む。このリソースデータ群のデータ構造によると、プログラム部品を一意に識別する情報として、プログラム部品を一意に識別可能であり且つプログラム部品の役割を推測可能な情報を設定することにより、翻訳者はリソースデータがどの画面のどの種類のどういう役割を果たすプログラム部品によって再生されるかを属性情報から把握でき、より正確にローカライズできる。
【００１９】
上記目的を達成するため、本発明に係る処理装置は、各プログラム部品について当該プログラム部品の属性情報に基づいてリソースデータ識別情報を生成し、生成したリソースデータ識別情報に関連付けられているリソースデータを請求項１３又は１４に記載のリソースデータ群から取得するリソース取得手段と、取得したリソースデータをプログラム部品毎に再生するリソース再生手段と、を備える。この処理装置によると、容易に且つ正確にローカライズできる。
【００２０】
上記目的を達成するため、本発明に係る応用プログラムは、プログラム部品で構成される画面を表示する応用プログラムであって、各プログラム部品について当該プログラム部品の属性情報に基づいてリソースデータ識別情報を生成し、生成したリソースデータ識別情報に関連付けられているリソースデータを請求項１３又は１４に記載のリソースデータ群から取得するリソース取得手段と、取得したリソースデータをプログラム部品毎に再生するリソース再生手段としてコンピュータを機能させる。この応用プログラムによると、容易に且つ正確にローカライズできる。
【００２１】
尚、本発明に備わる複数の手段の各機能は、構成自体で機能が特定されるハードウェア資源、プログラムにより機能が特定されるハードウェア資源、又はそれらの組み合わせにより実現される。また、これら複数の手段の各機能は、各々が物理的に互いに独立したハードウェア資源で実現されるものに限定されない。
また、本発明はプログラムの発明として特定できるだけでなく、そのプログラムを記録した記録媒体の発明としても、装置の発明としても、方法の発明としても特定することができる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明を実施するための最良の形態を複数の実施例に基づいて説明する。
（第一実施例）
図２は、本発明の一実施例に係る処理装置としてのコンピュータ（ＰＣ）１のハードウェア構成を示すブロック図である。ＰＣ１は、ＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３、操作部１４、表示部１５、外部記憶部１６、及びデバイスＩ／Ｆ１８を備え、これらはバス１９で相互に接続されている。ＣＰＵ１１はＲＯＭ１２や外部記憶部１６に記憶されているプログラムを実行してＰＣ１の全体を制御する。また、ＣＰＵ１１は外部記憶部１６に記憶されている応用プログラムを実行することでリソース取得手段、リソース再生手段、及び翻訳手段としても機能する。ＲＯＭ１２は各種のプログラムやデータを予め記憶しているメモリであり、ＲＡＭ１３は各種のプログラムやデータを一時的に記憶するメモリである。操作部１４はマウスやキーボードなどで構成され、第一のリソースデータ群の編集などに用いられる。表示部１５はＣＲＴやＬＣＤなどのディスプレイやディスプレイコントローラなどで構成され、リソース再生手段として用いられる。記憶手段としての外部記憶部１６はハードディスクやハードディスクコントローラなどで構成され、オペレーティングシステム（ＯＳ）、応用プログラム、一つ以上の第一のリソースデータ群、デバイスＩ／Ｆ１８を制御するためのドライバプログラム、画像読み取り装置を制御するためのドライバプログラム、各種のファイルなどを記憶する。これら各種のプログラムやデータは所定のサーバからネットワークを介してダウンロードして入力してもよいし、リムーバブルメモリ等のコンピュータ読み取り可能な記憶媒体から読み出して入力してもよい。デバイスＩ／Ｆ１８はＲＳ−２３２ＣやＵＳＢなどの通信規格に準拠して構成され、画像読み取り装置としてのイメージスキャナ２に所定の接続ケーブルで接続されている。
【００２３】
尚、リソースデータとしての音源データを再生する音源再生部をリソース再生手段として更に備えてもよい。
次に、応用プログラムについて説明する。ここでは応用プログラムとして、イメージスキャナ２からディジタル画像を取得し、取得したディジタル画像を外部記憶部１６に保存する画像読み取りプログラムを例に説明する。
【００２４】
図３及び図４は、画像読み取りプログラムによって表示されるウィンドウを示す模式図である。画像読み取りプログラムは図３に示す画像読み取りウィンドウ２０、及び図４に示す約款ウィンドウ４０を表示させる。
画像読み取りウィンドウ２０は、イメージスキャナ２に原稿の読み取りを指示するためのボタン２２、読み取って作成されたディジタル画像を表示する表示領域２３、表示されているディジタル画像を格納するファイル名が入力されるファイル名入力欄２４、カラーモードの選択を受け付けるモード選択欄２５、画像サイズの選択を受け付ける画像サイズ選択欄２６、表示されているディジタル画像の総バイト数を表示する総バイト数表示欄２７、表示されているディジタル画像を保存する指示を入力するためのボタン２８などを備える。ボタン２２がクリックされるとイメージスキャナ２を制御して原稿を読み取る処理が実行され、作成されたディジタル画像が表示領域２３に表示される。ボタン２８がクリックされると表示されているディジタル画像にカラーモードに応じた処理や拡大／縮小処理が施され、入力されたファイル名のファイルに格納されて外部記憶部１６に保存される。
【００２５】
約款ウィンドウ４０は、画像読み取りプログラムについての約款を複数の互いに異なる自然言語で表示するウィンドウであり、それぞれが各自然言語で記述された約款を表示する約款表示領域４２及び４３、各自然言語に対応する国旗アイコンを表示する国旗表示領域４４及び４５、承諾を拒否するボタン４６、承諾するボタン４７などを備える。
【００２６】
図５は、画像読み取りウィンドウ２０の作成を示す模式図である。画像読み取りウィンドウ２０は、ウィンドウを表示するフォーム２１、文字データを表示するラベル２９、３０、３１、３２及び３３、キーボードから入力された文字データなどを表示するテキストボックス２４、２５、２６及び２７、ディジタル画像を表示するピクチャボックス２３、処理の実行指示を入力するためボタン２２及び２８などのプログラム部品を組み合わせて作成される。プログラム部品には後述する第一のリソース情報が設定可能であり、また、プログラム部品には外部記憶部１６に記憶されている一つ以上の第一のリソースデータ群の中から第一のリソース情報に基づいて第一のリソースデータ群を選択し、選択した第一のリソースデータ群から第一のリソース情報に基づいてリソースデータを取得する処理が定義されている第一の手続き情報、取得したリソースデータを再生する処理が定義されている第二の手続き情報などが含まれている。第一の手続き情報によって定義される処理は、リソースデータを表示することが不要であれば実行しないように設定することができる。ピクチャボックス２３の場合はリソースデータではなくイメージスキャナ２から取得したディジタル画像を表示するためリソースデータの表示は不要である。このためリソースデータを取得する処理を実行しないように設定され、第二の手続き情報は取得したディジタル画像を表示する。同様にテキストボックス２４、２５、２６及び２７も第一の手続き情報によって定義される処理を実行しないように設定され、第二の手続き情報はキーボードから入力された文字データなどを表示する。画像読み取りウィンドウ２０を作成する場合、ユーザは始めにフォーム２１を配置してその上に各プログラム部品を配置する。次に、各プログラム部品に第一のリソース情報を設定する。例えばボタン２２は第一のリソース情報として”Ａｕｔｏ  ０６”が設定されていることを模式的に示している。尚、図５には示していないが後述する”プログラム部品を一意に識別するための情報”も第一のリソース情報として併せて設定される。次に、必要に応じてプログラム部品に新たな処理を定義した手続き情報を追加する。例えばボタン２２にはディジタル画像を取得してピクチャボックスに表示する処理を呼び出す処理を定義する手続き情報が追加される。同様にボタン２８にはディジタル画像を保存する処理を呼び出す処理を定義する手続き情報が追加される。
【００２７】
図１は、約款ウィンドウ４０の作成を示す模式図である。約款ウィンドウ４０は、ウィンドウを表示するフォーム４１、テキストボックス４２及び４３、ピクチャボックス４４及び４５、ボタン４６及び４７、ラベル４８を組み合わせて作成される。尚、約款ウィンドウ４０のテキストボックス４２及び４３は第一の手続き情報によって定義される処理を実行するよう設定されている。ユーザはフォーム４１にプログラム部品を配置した後、各プログラム部品に同様に第一のリソース情報を設定する。例えばテキストボックス４２は第一のリソース情報として”日本語  ０９”が設定され、テキストボックス４３は第一のリソース情報として”英語  ０９”が設定されていることを示している。
【００２８】
次に、プログラム部品のデータ構造について説明する。
図６は、プログラム部品のデータ構造を示す模式図である。プログラム部品は、第一のリソース情報を格納する第一のリソース情報領域５１、第一の手続き情報を格納する第一の手続き領域５２、第二の手続き情報を格納する第二の手続き領域５３などで構成される。第一のリソース情報領域５１には第一のリソース情報として、「プログラム部品を一意に識別するための情報」、「第一のリソースデータ群を選択するための情報」、及び「第一のリソースデータ群に含まれているリソースデータを選択するための情報」が設定される。「プログラム部品を一意に識別するための情報」は、具体的には例えばボタン４７の場合であれば”ＯｋＢｕｔｔｏｎ”などのように当該ウィンドウ内で重複しない名称が設定される。「第一のリソースデータ群を選択するための情報」は、具体的には例えば”日本語”、”英語”、”ドイツ語”などのような自然言語を直接設定する情報、又は”Ａｕｔｏ”などである。”Ａｕｔｏ”の意味については後述する。自然言語を直接設定する場合は、”日本語”、”英語”などのように言語の情報だけを指定することも、言語の情報と地域の情報とを組み合わせた情報を指定することもできる。例えばフランス語の場合、”フランス語”という指定も”フランス語＿カナダ”という指定も可能である。地域の情報を組み合わせる意味については後述する。「リソースデータを選択するための情報」は、具体的には例えばリソースデータに振られているＩＤ、又は”Ａｕｔｏ”などである。”Ａｕｔｏ”の意味については後述する。従って前述したボタン２２に設定されている第一のリソース情報”Ａｕｔｏ  ０６”は、「第一のリソースデータ群を選択するための情報」として”Ａｕｔｏ”、「リソースデータを選択するための情報」として”０６”が設定されていることを意味している。第一の手続き情報によって定義される処理はどのプログラム部品についても共通の処理であるため、第一の手続き情報に相当する処理を定義した手続き情報を独立させて複数のプログラム部品から共通して呼び出すようにしてもよい。この場合はプログラム部品の第一の手続き情報には独立させた手続き情報を呼び出す処理が定義されることになり、従ってこの場合は独立させた手続き情報を含んで一つのプログラム部品が構成されることになる。第二の手続き情報によって定義される処理はプログラム部品の種類によって異なる。例えばラベルには文字データを表示する処理が定義されており、ピクチャボックスにはディジタル画像を表示する処理が定義されている。また、フォームにはタイトルに文字データを表示する処理が定義されている。
【００２９】
図７は日本語の第一のリソースデータ群を示す模式図であり、図８は英語の第一のリソースデータ群を示す模式図である。一つの第一のリソースデータ群は一つ以上のリソースデータで構成される。リソースデータとは具体的には文字データ、アイコンデータ、静止画像データ、動画像データ、音源データなどであり、各リソースデータはそれぞれ当該第一のリソースファイル内で重複しない識別番号（ＩＤ）と、当該リソースデータが表示されるプログラム部品を一意に識別するための情報とに対応付けられている。リソースデータは、リソースデータを識別するための情報にＩＤが設定されているときはＩＤに基づいて選択され、”Ａｕｔｏ”が設定されているときはプログラム部品を一意に識別するための情報に基づいて選択される。詳しくは後述する。一つの第一のリソースデータ群に含まれる文字データは全て同一の自然言語で記述されている。例えば図７の第一のリソースデータ群の文字データは全て日本語で記述され、図８の第一のリソースデータ群の文字データは全て英語で記述されている。複数の第一のリソースデータ群には互いに同じ意味の文字データが格納され、各文字データは第一のリソースデータ群毎に異なる自然言語で記述されている。例えば日本語の第一のリソースデータ群に格納されている”保存”という文字データの場合であれば、英語の第一のリソースデータ群にはそれと同じ意味の文字データ”Ｓａｖｅ”が格納されている。また、複数の第一のリソースデータ群には互いに同じ意味で用いられるアイコンデータが格納され、各アイコンデータは第一のリソースデータ群毎に異なる画像を表す。例えば日本語の第一のリソースデータ群には日本国国旗を表すアイコンデータが格納されており、英語の第一のリソースデータ群にはアメリカ合衆国国旗を表すアイコンデータが格納されている。これらのアイコンデータは約款が記述されている自然言語を利用している国の国旗を示すという同じ目的で用いられる。また、同じ意味を表す文字データや同じ目的で用いられるアイコンデータには第一のリソースデータ群間で共通のＩＤが付されている。例えば”保存”という文字データと”Ｓａｖｅ”という文字データとには”０７”という共通したＩＤが付けられている。第一のリソースデータ群は第一のリソースデータ群毎に一つのファイルに格納してもよいし、複数の第一のリソースデータ群をセクションで区切って一つのファイルに保存してもよい。また、一つの第一のリソースデータ群であっても、文字データ、アイコンデータ、音源データなどのデータ形式によってファイルを分けてもよい。第一実施例では第一のリソースデータ群毎にファイルに保存するものとし、そのファイルを第一のリソースファイルというものとする。
【００３０】
第一のリソースファイルは、同じ言語であっても国によって異なる場合は更に国毎に用意される。例えばフランス語の場合、カナダで使用されるリソースファイルの場合は”フランス語＿カナダ”という名前のリソースファイルが作成される。また、第一のリソースファイルには優先順位が設けられている。例えばフランス語の場合、自然言語を直接設定する情報として”フランス語＿カナダ”が指定されると、”フランス語＿カナダ”という名前のリソースファイルが先に検索され、存在しない場合は”フランス語”のリソースファイルが選択される。”フランス語”という名前のリソースファイルも存在しない場合は例えば”英語”のリソースファイルが選択される。すなわち、指定された言語が存在しない場合は地域の異なる同じ言語の第一のリソースファイルが優先的に選択され、それも存在しない場合は次に優先順位の高いリソースファイル、上述の例であれば”英語”が選択されることになる。この優先順位は開発者が適宜設定可能である。
【００３１】
次に、第一の手続き情報及び第二の手続き情報によって定義される処理について説明する。
図９は、第一の手続き情報及び第二の手続き情報によって定義される処理の流れを示すフローチャートである。
Ｓ１０５では、第一のリソース情報から第一のリソースファイルを選択するための情報を取得する。
【００３２】
Ｓ１１０では、取得した情報が”日本語”、”英語”などのように自然言語を直に指定する情報であるか”Ａｕｔｏ”であるかを判定し、”Ａｕｔｏ”のときはＳ１１５に進む。直に指定する情報のときはＳ１２０に進む。
Ｓ１１５では、ＯＳに当該ＯＳで使用する自然言語として設定されている言語を問い合わせる。
【００３３】
Ｓ１２０では、指定された自然言語で記述されている第一のリソースファイ又はＯＳに設定されている自然言語で記述されている第一のリソースファイルを外部記憶部１６から読み込む。なお、当該自然言語に対応する第一のリソースファイルが存在しない場合は優先順位に従って第一のリソースファイルを選択する。
Ｓ１２５では、第一のリソース情報からリソースデータを選択するための情報を取得する
【００３４】
Ｓ１３０では、取得した情報がＩＤであるか”Ａｕｔｏ”であるかを判定し、ＩＤのときはＳ１３５に進む。”Ａｕｔｏ”のときはＳ１４０に進む。
Ｓ１３５では、読み込んだ第一のリソースファイルから、取得したＩＤが設定されているリソースデータを取得する。
Ｓ１４０では、読み込んだ第一のリソースファイルから、プログラム部品を一意に識別するための情報で特定されるリソースデータを取得する。具体的には、先ず当該プログラム部品が配置されているウィンドウを表示するプログラム部品を一意に識別するための情報と、当該プログラム部品を一意に識別するための情報とを”．”で繋いだ文字列を生成する。例えば画像読み取りウィンドウ２０のボタン２８の場合、フォーム２１を識別するための情報が”Ｆｏｒｍ１”、ボタン２８を識別するための情報が”ＳａｖｅＢｕｔｔｏｎ”であるとすると、”Ｆｏｒｍ１．ＳａｖｅＢｕｔｔｏｎ”という文字列を生成し、また例えば約款ウィンドウ４０のボタン４７の場合、フォーム４１を識別するための情報が”Ｆｏｒｍ２”、ボタン４７を識別するための情報が”ＯｋＢｕｔｔｏｎ”であるとすると、”Ｆｏｒｍ２．ＯｋＢｕｔｔｏｎ”という文字列を生成する。次に、第一のリソースファイルから、プログラム部品を一意に識別するための情報と当該文字列とが一致するリソースデータを取得する。このようにしてリソースデータを取得するようにすると、リソースデータを編集する際にユーザは例えば”Ｆｏｒｍ１．ＳａｖｅＢｕｔｔｏｎ”という情報から当該リソースデータはボタン４７のボタン名として表示されるリソースデータであるということを容易に推測できる。このためユーザは間違って編集した場合はその間違いに気付き易くなり、判り難いＩＤに割り付けられた文字列を編集する場合に比べて誤りが生じ難くなる。
【００３５】
Ｓ１４５では、取得したリソースデータを当該プログラム部品の第二の手続き情報によって定義される処理に応じて表示する。
例えば図５に示す画像読み取りウィンドウ２０の場合、ボタン２２には第一のリソースファイルを選択するための情報として”Ａｕｔｏ”、リソースデータを選択するための情報として”０６”が設定されている。この場合、ＯＳで使用する自然言語が日本語であったとすると日本語の第一のリソースファイルが選択され、第一のリソースファイルからＩＤが”０６”のリソースデータ”読み取り”が取得される。この結果、図３に示すように”読み取り”という文字列がボタン２２のボタン名として表示される。ＯＳで使用する自然言語が英語であったとすると英語の第一のリソースファイルが選択され、図３に示す各文字は英語で表示されることになる。また、図１に示す約款ウィンドウ４０の場合、テキストボックス４２には”日本語”が設定されているため日本語の第一のリソースファイルが選択され、一方、テキストボックス４３には”英語”が設定されているため英語の第一のリソースファイルが選択され、この結果、図４に示すようにテキストボックス４２には日本語で約款が表示され、テキストボックス４３には英語で約款が表示される。テキストボックス４２及び４３には言語が直に指定されているため、ＯＳが使用する自然言語にかかわらず常に指定された自然言語で約款を表示する。同様にアイコンについても設定されている言語の第一のリソースファイルに格納されているアイコンデータが表示される。
【００３６】
次に、画像読み取りプログラムを生成してリソースデータを再生する流れについて説明する。尚、プログラム部品は既に用意されているものとする。
図１０は、画像読み取りプログラムを生成してリソースデータを再生する流れを示すフローチャートである。
Ｓ２０５では、各プログラム部品によって表示するリソースデータを格納した第一のリソースファイルを自然言語別に作成する。
【００３７】
Ｓ２１０では、予め用意したプログラム部品を仕様に応じて組み合わせ、各プログラム部品に第一のリソース情報を設定する。
Ｓ２１５では、必要に応じて各プログラム部品に手続き情報を追加する。
Ｓ２２０では、コンパイルを実行して画像読み取りプログラムを生成する。
図１１は、生成された画像読み取りプログラムの論理的な構成を示すブロック図である。画像読み取りプログラムは、複数の部品モジュール６１、及びローカライズライブラリ６２で構成される。部品モジュールはそれぞれ対応するプログラム部品をコンパイルすることによって生成された実行形式モジュールである。ローカライズライブラリは、第一の手続き情報に相当する処理としてプログラム部品から独立して定義された手続き情報に対応するモジュールであり、各部品モジュールから共通して呼び出される。尚、プログラム部品に追加された手続き情報は各部品モジュールに含まれるものとする。
【００３８】
Ｓ２２５では、生成した画像読み取りプログラムと作成した一つ以上の第一のリソースファイルとをユーザに配布し、ユーザは各自のＰＣ１で画像読み取りプログラムを実行する。画像読み取りプログラムが実行されると各モジュールが実行され、その結果、プログラム部品毎にリソースデータが再生される。
以上説明した本発明の一実施例に係るＰＣ１によると、第一のリソースファイルが画像読み取りプログラムから独立しているため、第一のリソースファイルの編集に開発環境が要求されず開発者以外でも容易に編集できる。また、ＰＣ１によると、第一のリソースファイルがプログラム部品単位で選択されるため、約款を複数の言語で表示したいとき、一つの第一のリソースファイルの中に約款を複数の言語で記述しなくてよい。具体的には、日本語で記述された第一のリソースファイルには約款を日本語で記述し、英語で記述された第一のリソースファイルには約款を英語で記述しておけば、テキストボックス４２は日本語の第一のリソースファイルから約款を取得し、テキストボックス４３は英語の第一のリソースファイルから約款を取得することで、同じ約款を日本語と英語とで表示することができる。このため、日本語で記述した約款を英語の第一のリソースファイルにも格納し、英語で記述した同じ約款を日本語の第一のリソースファイルにも格納するというような重複が生じない。従って、第一のリソースファイルを用意する手間を低減できる。よってＰＣ１によると、柔軟なローカライズが容易になる。
【００３９】
また、ＰＣ１によると、再生する際にリソースデータを取得するため、例えば応用プログラムを起動した直後に取得してＲＡＭ１３に記憶しておく場合に比べてＲＡＭ１３を効率よく利用できる。
また、この画像読み取りプログラムは、第一の手続き情報が含まれているプログラム部品を組み合わせることで生成される。このため開発者はリソースデータを取得する処理を定義する手間が低減され、画像読み取りプログラムの開発効率が向上する。
【００４０】
（第二実施例）
第二実施例は、取得したリソースデータが文字データのとき当該文字データを第一のリソース情報に設定されている自然言語に翻訳する場合の例である。尚、第二実施例では第一実施例と実質的に同一の部分については説明を省略する。
第二実施例のプログラム部品は、文字データを第一のリソース情報に設定されている自然言語に翻訳する処理が定義されている第一の手続き情報、及び第一実施例と同じ第二の手続き情報を含んでいる。第一の手続き情報は、公知の翻訳プログラムと同様にしてある自然言語を複数の自然言語に翻訳する処理が定義されている。第一のリソース情報には、第一のリソースファイルを選択するための情報に替えてリソースデータを翻訳するための情報が設定される。リソースデータを翻訳するための情報は具体的にはリソースデータをどの自然言語に翻訳するかを指定する情報であり、”日本語”、”英語”などのように設定される。従って設定される第一のリソース情報は結果的には第一実施例と同じである。ただし、設定できる自然言語は第一の手続き情報によって翻訳可能な言語に限られる。
【００４１】
第二実施例ではリソースデータを翻訳するため第一のリソースファイルは一つだけ用意すればよい。
次に、第一の手続き情報及び第二の手続き情報によって定義される処理について、リソースデータが文字データである場合を例に説明する。
図１２は、第一の手続き情報及び第二の手続き情報によって定義される処理の流れを示すフローチャートである。
【００４２】
Ｓ３０５では、用意されている第一のリソースファイルから、第一実施例のＳ１２５〜Ｓ１４０までの処理と同様にしてリソースデータを取得する
Ｓ３１０では、第一のリソース情報からリソースデータを翻訳するための情報を取得する。
Ｓ３１５では、取得した情報が”日本語”、”英語”などのように自然言語を直に指定する情報であるか”Ａｕｔｏ”であるかを判定し、”Ａｕｔｏ”のときはＳ３２０に進む。自然言語を直に指定する情報のときはＳ３２５に進む。
【００４３】
Ｓ３２０では、ＯＳに当該ＯＳで使用する自然言語として設定されている言語を問い合わせる。
Ｓ３２５では、取得したリソースデータを、指定された自然言語又はＯＳに設定されている自然言語に翻訳する。
Ｓ３３０では、翻訳したリソースデータを当該プログラム部品の第二の手続き情報によって定義される処理に応じて表示する。その結果、プログラム部品毎にリソースデータが翻訳されて再生される。
【００４４】
以上説明した本発明の第二実施例に係るＰＣ１によると、プログラム部品単位に翻訳する言語を指定できる上、リソースデータを翻訳するため用意する第一のリソースファイルが一つだけでよく、柔軟なローカライズが第一実施例よりも更に容易である。
【００４５】
（第三実施例）
第三実施例は、第二のリソース情報で選択される第二のリソースデータ群（以下「第二のリソースファイル」という）に基づいて画面を動的に生成する例である。
第二のリソース情報は第二のリソースファイルを選択するための情報であり、具体的には”Ａｕｔｏ”、”日本語”、”英語”などのような自然言語を指定する情報である。”Ａｕｔｏ”は第一実施例と同様にＯＳで使用する自然言語を指定するものである。第二のリソース情報は応用プログラムにコーディングしてもよいし、独立したファイルに記述して応用プログラムがそれを読み込んでもよい。
【００４６】
第二のリソースファイルはプログラム部品で構成される画面を定義する情報である。第二のリソースファイルは言語毎に予め用意される。
図１３は、ある特定の言語に対応する第二のリソースファイルの一例を示す模式図である。第二のリソースファイルには画面を構成するプログラム部品を定義する情報が画面毎に定義されている。画面を構成するプログラム部品を定義する情報とは、プログラム部品の種類を定義する情報、プログラム部品を配置する座標を定義する情報などである。例えば図１３に示す行７１はプログラム部品の種類を定義する情報である。行７１において”Ｆｏｒｍ１”は当該プログラム部品で構成される画面の画面名、”ＳｃａｎＢｕｔｔｏｎ”はプログラム部品を一意に識別するための情報、”Ｃｏｍ”はＯＳ種別、”Ｔｙｐｅ”は行７１がプログラム部品の種類を定義する行であることを示すものである。”Ｂｕｔｔｏｎ”はプログラム部品の種類を示している。ＯＳ種別はＯＳを識別する情報であり、特定のＯＳのときだけ当該行のプログラム部品を表示させたい場合はＯＳ種別に当該特定のＯＳに対応する文字列を設定する。応用プログラムが当該特定のＯＳで実行されると、ＯＳ種別以外の情報が全て一致する他の行で定義されるプログラム部品に替えて当該行のプログラム部品が表示される。また、例えば図１３に示す行７２はプログラム部品を配置する座標を定義する情報である。行７２において”Ｐｏｓｉｔｉｏｎ”は行７２がプログラム部品を配置する座標を定義する行であることを示すものである。「TopLeft,50,30/TopLeft,400,60」はプログラム部品を配置する座標を示している。具体的には「TopLeft,50,30」は画面の左上座標を原点とする（５０，３０）という座標をボタンの左上の位置とし、「TopLeft,400,60」は画面の左上座標を原点とする（４００，６０）という座標をボタンの右下の位置とすることを意味している。これによりボタンの大きさ及び位置が特定される。
【００４７】
次に、第三実施例の応用プログラムの処理について説明する。
図１４は、第三実施例の応用プログラムの処理の流れを示すフローチャートである。
Ｓ４０５では、当該応用プログラムに定義されている第二のリソース情報を取得する。
【００４８】
Ｓ４１０では、取得した第二のリソース情報で特定される第二のリソースファイルを記憶装置から読み込む。
Ｓ４１５では、読み込んだ第二のリソースファイルを解釈し、表示する画面を構成するプログラム部品をロードする。次に、ロードしたプログラム部品を第二のリソースファイルに基づいて配置することによって動的に画面を生成する。
【００４９】
Ｓ４２０では、ロードした各プログラム部品について、当該プログラム部品に定義されている第一の手続き情報を実行し、当該プログラム部品に定義されている第一のリソース情報に基づいて第一のリソースファイルを選択してリソースデータを再生する。Ｓ４２０での処理は第一実施例と実質的に同一であるため詳細な説明は省略する。
【００５０】
第三実施例のＰＣ１によると、表示するプログラム部品、表示位置、表示する大きさなどを言語毎に変えることができる。例えばプログラム部品としてのボタンにボタン名を表示する場合、同じ意味であってもその文字長は言語によって異なる。例えば日本語では全角２文字で、英語では半角１０文字である場合もある。この場合、日本語に合わせてボタンのサイズを設定すると英語のときにボタン名が表示しきれない。逆に英語に合わせると日本語を表示したときボタン名に対してボタンが無用に大きく表示され、画面デザインの観点からは好ましくない。第三実施例のＰＣ１では言語毎に第二のリソースファイルを用意して言語毎に画面を構成することにより言語毎にプログラム部品の大きさ及び位置を変えられるため、どの言語であってもボタン名が表示しきれないようなことがなく、且つ好ましい画面デザインで表示できる。よって第三実施例のＰＣ１によると表示する画面を容易にローカライズできる。
【００５１】
（第四実施例）
第四実施例は、リソースデータと、リソースデータを一意に識別するための情報であってリソースデータを再生するプログラム部品の属性情報を含むリソースデータ識別情報とを含む第一のリソースファイルの例である。
図１５は、第一のリソースファイルの一例を示す模式図である。第一のリソースファイルには一つ以上のリソースデータが定義されている。各リソースデータには、第一のリソースファイル内で当該リソースデータを一意に識別するために、リソースデータ識別情報が関連付けられている。例えば図１５に示す行７５の場合、”Ｆｏｒｍ１．ＳｃａｎＢｕｔｔｏｎ．Ｃｏｍ．Ｃａｐｔｉｏｎ”はリソースデータ識別情報であり、”読み取り”とい文字列はリソースデータである。「プログラム部品が構成する画面を特定する情報」としての”Ｆｏｒｍ１”は当該プログラム部品が表示される画面の画面名、「プログラム部品を一意に識別する情報」としての”ＳｃａｎＢｕｔｔｏｎ”はプログラム部品の部品名、”Ｃｏｍ”はＯＳ種別、”Ｃａｐｔｉｏｎ”は表示情報種別である。第四実施例では「プログラム部品の種類を表す情報」は”ＳｃａｎＢｕｔｔｏｎ”という文字列中の”Ｂｕｔｔｏｎ”という文字列に相当する。これら各情報は図示するように”．”で区切って連結される。表示情報種別とはプログラム部品が複数のリソースデータを再生する場合にそれら複数のリソースデータを識別するための情報である。例えばプログラム部品としてのボタンはリソースデータをボタン名として表示する他に、リソースデータを所謂ツールチップとしても表示する。ツールチップとはマウスカーソルをボタンの上に移動させたときに表示される文字列であってボタンが押されたときに実行される処理をユーザに説明する文字列である。この場合、ボタン名として表示するリソースデータの表示情報種別には”Ｃａｐｔｉｏｎ”という文字列が設定される。また、ツールチップの場合は行７６に示すように”ＴｏｏｌＴｉｐ”という文字列が設定される。なお、ＯＳ種別及び表示情報種別については不要であればリソースデータ識別情報に含ませる必要はない。
【００５２】
次に、第四実施例の応用プログラムの処理について説明する。
図１６は、第四実施例の応用プログラムの処理の流れを示すフローチャートである。
Ｓ５０５では、プログラム部品で構成される画面を表示する。
Ｓ５１０では、表示した画面を構成するプログラム部品を一つ選択する。
【００５３】
Ｓ５１５では、選択したプログラム部品の属性情報に基づいてリソースデータ識別情報を生成する。具体的には、当該プログラム部品が配置されている画面の画面名、プログラム部品名、ＯＳ情報、表示情報種別を”．”で区切ってこの順で連結することによりリソースデータ識別情報を生成する。例えば画面名が”Ｆｏｒｍ１”、プログラム部品名が”ＳｃａｎＢｕｔｔｏｎ”、ＯＳが”Ｃｏｍ”、表示情報種別が”Ｃａｐｔｉｏｎ”であるとすると、”Ｆｏｒｍ１．ＳｃａｎＢｕｔｔｏｎ．Ｃｏｍ．Ｃａｐｔｉｏｎ”というリソースデータ識別情報が生成されることになる。
【００５４】
Ｓ５２０では、第一のリソースファイルを読み込み、生成したリソースデータ識別情報で特定されるリソースデータを取得する。
Ｓ５２５では、取得したリソースデータを再生する。ここで再生するとは、生成したリソースデータの表示情報種別が”Ｃａｐｔｉｏｎ”であれば例えばボタン名として表示することをいい、この場合はリソースデータを取得した直後に表示される。表示情報種別が”ＴｏｏｌＴｉｐ”の場合はマウスカーソルが当該プログラム部品の上に移動されるまでは表示されない。
【００５５】
Ｓ５３０では、当該画面上の全てのプログラム部品についてリソースデータの取得が完了したか否かを判定し、完了していなければＳ５１０に戻って全てのプログラム部品についてリソースデータを取得するまで処理を繰り返す。完了していればリソースデータを取得する処理を終了する。
以上説明した第一のリソースファイルのデータ構造によると、リソースデータに関連付けられているリソースデータ識別情報に画面名、部品名及び部品の種類を表す情報とが含まれている。また、部品名には当該プログラム部品の役割を推測可能な文字列”Ｓｃａｎ”が含まれている。このため、翻訳者はリソースデータ識別情報からリソースデータがどの画面の何をするプログラム部品によって表示されるものであるかを把握できる。例えば”Ｆｏｒｍ１．ＳｃａｎＢｕｔｔｏｎ．Ｃｏｍ．Ｃａｐｔｉｏｎ”というリソースデータ識別情報から、翻訳者は当該リソースデータ識別情報に関連付けられているリソースデータが画面（Ｆｏｒｍ１）を構成するボタン（Ｂｕｔｔｏｎ）であって読み取り（Ｓｃａｎ）を指示するためのボタンの名前（Ｃａｐｔｉｏｎ）として表示されるものであることを把握できる。従って”Ｆｏｒｍ１．ＳｃａｎＢｕｔｔｏｎ．Ｃｏｍ．Ｃａｐｔｉｏｎ”に関連付けられているリソースデータを例えば”戻る”という意味の言葉に翻訳した場合、翻訳者はリソースデータ識別情報からその翻訳が間違いであることに気付くことができる。よって第四実施例の第一のリソースファイルのデータ構造によると、リソースデータ識別情報がリソースデータを一意に識別するための数字（ＩＤ）である場合に比べて誤りを低減でき、より正確にローカライズできる。
【００５６】
（第五実施例）
第五実施例は、応用プログラムのインストールから実行までの流れについての例である。ここでは応用プログラムとして第一実施例の応用プログラムを例に説明する。また、第五実施例では、インストールプログラム（以下「インストーラ」という）を実行することにより応用プログラムをインストールする場合を例に説明する。
【００５７】
図１７は、応用プログラムのインストールから実行までの流れを示すフローチャートである。
Ｓ６０５では、インストーラを実行し、記憶媒体としてのＣＤ−ＲＯＭから応用プログラムを読み込んでコンピュータとしてのＰＣ１の外部記憶部１６に記憶させる。
【００５８】
Ｓ６１０では、引き続きインストーラを実行し、ＣＤ−ＲＯＭの所定のディレクトリに記憶されている全ての第一のリソースファイルを読み込んで外部記憶部１６に記憶させる。
Ｓ６１５では、外部記憶部１６に記憶されている応用プログラムを実行し、記憶されている第一のリソースファイルから第一実施例と同様にしてプログラム部品毎にリソースデータを取得して再生する。
【００５９】
以上説明した第五実施例のリソース再生方法によると、応用プログラム自体が多言語に対応しているため、応用プログラムをインストールするためのインストーラを言語毎に用意する必要がない。更に、ＣＤ−ＲＯＭの所定のディレクトリに記憶されている一つ以上の第一のリソースファイルが全てＰＣ１の外部記憶部１６に記憶されるため、第一のリソースファイルをインストールするためのインストーラについても言語毎に用意する必要がない。例えば新たな言語にローカライズしなければならなくなったとき、当該新たな言語用の第一のリソースファイルを作成してＣＤ−ＲＯＭの所定のディレクトリに記憶させると、インストールの際に当該新たな言語用の第一のリソースファイルも一緒に外部記憶部１６に記憶される。応用プログラムは例えばＯＳに問い合わせた言語が当該新たな言語であれば当該新たな言語用の第一のリソースファイルを読み込んで表示する。これにより当該新たな言語にローカライズされる。このように、このリソース再生方法によると、インストーラを言語毎に用意する必要がない。よってインストーラの開発工数を低減できる。
【００６０】
（第六実施例）
第六実施例では、必要時に第一のリソースファイルをダウンロードする例である。第六実施例ではインストーラは応用プログラムだけを外部記憶部１６に記憶させ、実行時に必要な第一のリソースファイルを応用プログラムがダウンロードする。
【００６１】
図１８は、第一のリソースファイルをダウンロードする処理の流れを示すフローチャートである。
Ｓ７０５では、第一のリソース情報から第一のリソースファイルを選択するための情報を取得する。
Ｓ７１０では、取得した情報が”日本語”、”英語”などのように自然言語を直に指定する情報であるか”Ａｕｔｏ”であるかを判定し、”Ａｕｔｏ”のときはＳ７１５に進む。直に指定する情報のときはＳ７２０に進む。
【００６２】
Ｓ７１５では、ＯＳに当該ＯＳで使用する自然言語として設定されている言語を問い合わせる。
Ｓ７２０では、指定された自然言語で記述されている第一のリソースファイ又はＯＳに設定されている自然言語で記述されている第一のリソースファイルが外部記憶部１６に記憶されているか否かを調べる。記憶されていなければＳ７２５に進み、記憶されていればＳ７３５に進む。
【００６３】
Ｓ７２５では、各言語用の第一のリソースファイルをダウンロードするためのアドレスリストをダウンロードするためのアドレスに基づいて通信ネットワークを介してアドレスリストをダウンロードする。アドレスリストをダウンロードするためのアドレスは応用プログラムにコーディングしてもよいし、独立したファイルに記述して応用プログラムがそれを読み込んでもよい。
【００６４】
Ｓ７３０では、ダウンロードしたアドレスリストから目的の第一のリソースファイルのアドレスを取得し、通信ネットワークを介して当該第一のリソースファイルをダウンロードして外部記憶部１６に記憶させる。
Ｓ７３５では、当該リソースファイルを外部記憶部１６から読み込む。
以降の処理は第一実施例と実質的に同一であるため説明は省略する。
【００６５】
以上説明した第六実施例に係るＰＣ１によると、第一のリソースファイルを必要時にダウンロードできるため、既にインストール済みの応用プログラムを新たな言語に容易に対応させることができる。具体的には、新たな言語用の第一のリソースファイルをサーバに用意し、ダウンロードされるアドレスリストに当該第一のリソースファイルのアドレスを追加することで、応用プログラムは当該新たな言語のリソースデータを表示することができる。このため、プログラムの開発者は当該新たな言語用の第一のリソースファイルをＣＤ−ＲＯＭの所定のディレクトリに記憶させて配布するという手間を低減できる。
【図面の簡単な説明】
【００６６】
【図１】本発明の第一実施例に係るウィンドウの作成を示す模式図。
【図２】本発明の第一実施例に係るコンピュータのブロック図。
【図３】本発明の第一実施例に係るウィンドウを示す模式図。
【図４】本発明の第一実施例に係るウィンドウを示す模式図。
【図５】本発明の第一実施例に係るウィンドウの作成を示す模式図。
【図６】本発明の第一実施例に係るデータ構造を示す模式図。
【図７】本発明の第一実施例に係るリソースデータ群を示す模式図。
【図８】本発明の第一実施例に係るリソースデータ群を示す模式図。
【図９】本発明の第一実施例に係るフローチャート。
【図１０】本発明の第一実施例に係るフローチャート。
【図１１】本発明の第一実施例に係る応用プログラムのブロック図。
【図１２】本発明の第二実施例に係るフローチャート。
【図１３】本発明の第三実施例に係る第二のリソースファイルの模式図。
【図１４】本発明の第三実施例に係るフローチャート。
【図１５】本発明の第四実施例に係る第一のリソースファイルの模式図。
【図１６】本発明の第四実施例に係るフローチャート。
【図１７】本発明の第五実施例に係るフローチャート。
【図１８】本発明の第六実施例に係るフローチャート。
【符号の説明】
【００６７】
１  コンピュータ（処理装置）、１１  ＣＰＵ（リソース取得手段、リソース再生手段、翻訳手段）、１５  表示部（リソース再生手段）、１６  外部記憶部（記憶手段）
【図１】
2005135369.tif 000003
【図２】
2005135369.tif 000004
【図３】
2005135369.tif 000005
【図４】
2005135369.tif 000006
【図５】
2005135369.tif 000007
【図６】
2005135369.tif 000008
【図７】
2005135369.tif 000009
【図８】
2005135369.tif 000010
【図９】
2005135369.tif 000011
【図１０】
2005135369.tif 000012
【図１１】
2005135369.tif 000013
【図１２】
2005135369.tif 000014
【図１３】
2005135369.tif 000015
【図１４】
2005135369.tif 000016
【図１５】
2005135369.tif 000017
【図１６】
2005135369.tif 000018
【図１７】
2005135369.tif 000019
【図１８】
2005135369.tif 000020