(57)【要約】      （修正有）【課題】複数のデータベースの参照をなくし、また該データベースの更新処理等をなくた検索運用コストの低減。【解決手段】サーバ０２には、多言語文字を格納するデータ項目にＵＴＦ８またはＵＴＦ１６を設定し、多言語文字以外を格納するデータ項目にＳＪＩＳを設定するデータベース１１と、入力ファイルに格納されている多言語文字をＵＴＦ８の１６進数の文字列に変換し、データべース１１の多言語文字を格納しないデータ項目に格納する多言語コード化処理部３１と、クライアント０１からの検索条件から不要文字を削除し、検索キーを生成する不要文字削除機能部２１と、検索キーによりデータベース１１を検索するＤＢ検索機能部２２と、抽出した情報に前記削除した文字を挿入する等の抽出文字編集機能部２３と、挿入後の文字列をデコードするデコード機能部２４と、ブラウザに出力する標準出力機能部２５からなる多言語文字検索処理部２６とを有する。【選択図】図１
2007140744.tif 000002
【特許請求の範囲】
【請求項１】
Ｗｅｂブラウザによりエンコードされた文字列をサーバに送信するクライアントと、送信された文字列に基づいて情報の検索を行うサーバとを備えた多言語文字検索システムであって、
前記サーバには、
多言語文字を格納するデータ項目にＵＴＦ８または１６を設定し、多言語文字以外を格納するデータ項目にＳＪＩＳを設定するデータベースと、
入力ファイルに格納されている多言語文字をＵＴＦ８または１６の文字列に変換し、前記データべースの多言語文字を格納していないデータ項目に格納する多言語コード化処理部と、
前記クライアントのＷｅｂブラウザによりエンコードされた検索条件の文字コードから不要文字を削除し、前記データベースを検索するキーを生成し、該検索キーにより該データベースのＵＴＦ８または１６の文字列に対して検索し、抽出された情報に前記削除した文字を挿入してデコード処理し、クライアントのブラウザに標準出力する多言語文字検索処理部と
を有することを特徴とした多言語文字検索システム。
【請求項２】
請求項１記載の多言語文字検索システムにおいて、
前記多言語文字検索処理部は、クライアントのＷｅｂブラウザによりエンコードされた文字コードから不要な文字を削除して検索キーを生成する不要文字削除機能部と、多言語データベースに対して検索を要求するデータベース検索機能部と、前記多言語データベースから読み出された文字を抽出して編集を行う抽出文字編集機能部と、編集された文章の各文字をデコードするデコード機能部と、デコードされた文字の集合を標準方式でクライアントに出力する標準出力機能部とを有することを特徴とする多言語文字検索システム。
【請求項３】
請求項１記載の多言語文字検索システムにおいて、
前記サーバでは、入力ファイルに格納されている多言語文字をＵＴＦ８または１６の文字列に変換する際に、変換対象の文字が前記入力ファイルのどの位置に存在しても、変換を行うことが可能であることを特徴とする多言語文字検索システム。
【請求項４】
請求項１または２記載の多言語文字検索システムにおいて、
前記不要文字の削除では、Ｗｅｂブラウザで入力した検索条件の文字コード２バイト毎の‘％’を削除し、多言語コード化処理によって生成した多言語データベースを検索するキーを生成することを特徴とする多言語文字検索システム。
【請求項５】
請求項１または２記載の多言語文字検索システムにおいて、
前記デコード処理では、多言語データベースから検索された情報をクライアントに送信する際に、該データベースに格納されている文字コード情報に対し、２バイト毎に‘％’を挿入してデコードすることにより、多言語文字を該クライアントのブラウザに表示することを特徴とする多言語文字検索システム。
【請求項６】
クライアントからＷｅｂブラウザのフォーム値をサーバに送信することにより検索要求をし、該サーバが送信されたフォーム値に基づく情報の検索を行う多言語文字検索方法であって、
該サーバは、入力パラメータを取得し、ＵＴＦ８または１６の１６進コードに変換して、変換後の１６進コードをデータベースに格納し、
該サーバが検索する際には、クライアントのＷｅｂブラウザの検索条件を取得し、取得した検索条件文字列から不要な文字を削除し、
不要文字を削除した後の文字列を検索キーとして前記データベースを検索し、該当するレコードを抽出し、
該データベースから取得した文字コードに前記削除した文字を挿入した後、挿入後の文字列コードをデコードして、前記クライアントのＷｅｂブラウザに標準出力する
ことを特徴とする多言語文字検索方法。
【請求項７】
クライアントからＷｅｂブラウザのフォーム値をサーバに送信することにより検索要求をし、該サーバが送信されたフォーム値に基づく情報の検索を行う多言語文字検索プログラムであって、
該サーバのＣＰＵに、入力パラメータを取得する手順、ＵＴＦ８または１６の１６進コードに変換する手順、変換後の１６進コードをデータベースに格納する手順、該サーバが検索する際には、クライアントのＷｅｂブラウザの検索条件を取得する手順、取得した検索条件文字列から不要な文字を削除する手順、不要文字を削除した後の文字列を検索キーとして前記データベースを検索する手順、該当するレコードを抽出する手順、該データベースから取得した文字コードに前記削除した文字を挿入する手順、挿入後の文字列コードをデコードする手順、前記クライアントのＷｅｂブラウザに標準出力する手順を、実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の言語を同一のデータベースに格納して、言語検索時の運用コストを低下させることが可能な多言語検索システムおよび検索方法、ならびにそのプログラムに関する。
【背景技術】
【０００２】
従来、複数の言語の検索システムとしては、例えば、特開２００３−７６７１０号公報（特許文献１参照）の『多言語情報検索システム』がある。利用者が検索要求をすると、複数の言語データベースを同時に検索し、検索結果に含まれる異言語文書を利用者にわかる言語に翻訳して統一化した後に、利用者に文書を選択させる。
このシステムの特徴は、１）複数の言語データベースを持ち、利用者が検索処理を実行した際に同時に複数のデータベースを検索する。また、２）検索キーワードを１種類以上の外国語に翻訳することで、１回の検索で母国語と１種類以上の外国語の文章情報を同時に検索することができる。
【０００３】
【特許文献１】特開２００３−７６７１０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記の特許文献１の技術では、検索時に複数のデータベースを用いるために、下記のような問題点がある。すなわち、１）レスポンスの悪化、２）更新処理等のランニングコストの増加、という点である。
また、既に稼動しているシステムが、もしＳＪＩＳ（Ｓｈｉｆｔ  ＪＩＳ）で表現できる文字しかサポートしていない構成である場合には、そのシステムに対して多言語対応することは非常に時間を要することが予想される。その理由は、データベースに設定されているキャラクタセットの設定値をＳＪＩＳからＵｎｉｃｏｄｅ（ＵＴＦ８，ＵＴＦ１６）に変更する必要がある。
【０００５】
すなわち、従来、パソコンの標準文字コードとして広く普及している日本語文字コードのＳＪＩＳは、文字の１バイト目を見るだけで漢字か１バイト文字（半角英数字）かが分かるとともに、等幅フォントで表示した場合に画面上の桁数とバイト数が一致する等の特長を有している。データベースに設定されているキャラクタセットの設定値は上記ＳＪＩＳが用いられている。一方、コンピュータでは、ＵＣＳ−２やＵＣＳ−４（Ｕｎｉｃｏｄｅ）で定義される文字集合を用いて記述された文字列をコンピュタが扱い易いバイト列に変換するＵＴＦ（ＵＣＳ  Ｔｒａｎｓｆｏｒｍａｔｉｏｎ  Ｆｏｒｍａｔ）を実施する必要がある。ＵＴＦには、１文字を１〜６バイト（現状では最長４バイト）の可変長数値に変換するＵＴＦ−８、ＵＣＳ−２の集合の中にＵＣＳ−４の一部の文字を埋め込むためのＵＴＦ−１６、Ｕｎｉｃｏｄｅをメールで使用するためのＵＴＦ−７、全てのＵＣＳ−４文字を４バイトで表現するＵＴＦ−３２の４種類があるが、よく用いられるのはＵＴＦ−８とＵＴＦ−１６である。
【０００６】
しかし、Ｕｎｉｃｏｄｅ（ＵＴＦ８，ＵＴＦ１６）を選択した場合には、下記のような問題が生じてしまう。
１）データベースのキャラクタセットの設定値をＵＴＦ１６に変更した場合、データベースに格納された多言語文字をバイト表現すると、確実に２バイトで表現することができ、ＳＪＩＳ表現できる文字しかサポートしていない構成であった時と同様のバイト数で判定することが可能であるが、データベースに格納された多言語文字をＷｅｂブラウザに表示する際にＵＴＦ８に変換する必要がある。
２）データベースのキャラクタの設定値をＵＴＦ８に変更した場合、データベースに格納された多言語文字をＷｅｂブラウザに表現する際に、何の変換も必要ないが、データベースに格納された多言語文字をバイト表現すると、２バイトから４バイトで表現するため、ＳＪＩＳ表現できる文字しかサポートしていない構成であった時とは、多言語文字をバイト表現した場合での判定することが不可能となる。
【０００７】
（目的）
本発明の目的は、これら従来の問題を解消し、検索時に複数のデータベースを参照しなくて済むことにより、レスポンスの向上を図ること、および、複数のデータベースの更新処理等をなくし、運用コストの低減を図ること、ならびに、既存システムに存在しているバイト数を利用する処理を修正する必要をなくすこと、が可能な多言語検索システムおよび方法、ならびにそのプログラムを提供することにある。
【課題を解決するための手段】
【０００８】
本発明の多言語文字検索システムは、Ｗｅｂブラウザによりエンコードされた文字をサーバに送信するクライアントと、送信された文字に基づく情報の検索を行うサーバとを備えた多言語文字検索システムであって、前記サーバには、多言語文字を格納するデータ項目に7ＵＴＦ８またはＵＴＦ１６を設定し、多言語文字以外を格納するデータ項目にＳＪＩＳを設定するデータベースと、入力ファイルに格納されている多言語文字を7ＵＴＦ８の１６進数の文字列に変換し、前記データべースの多言語文字を格納しないデータ項目に格納する多言語コード化処理部と、前記クライアントのＷｅｂブラウザによりエンコードされ検索条件の文字コードから不要文字を削除し、前記データベースを検索するキーを生成し、該検索キーにより該データベースの１６進数の文字列に対して検索し、抽出された情報に前記削除した文字を挿入してデコード処理し、ブラウザに標準出力する多言語文字検索処理部とを有することを特徴としている。
【０００９】
また、本発明の多言語文字検索方法は、入力パラメータを取得し、ＵＴＦ８の１６進コードに変換して、変換後の１６進コードをデータベースに格納し、検索時には、クライアントのＷｅｂブラウザの検索条件を取得し、取得した検索条件文字列から不要な文字を削除し、不要文字を削除した後の文字列を検索キーとして前記データベースを検索し、該当するレコードを抽出し、該データベースから取得した文字コードに前記削除した文字を挿入した後、挿入後の文字列コードをデコードして、クライアントのＷｅｂブラウザに標準出力することを特徴としている。
【発明の効果】
【００１０】
本発明によれば、１）外国語の言語をＵＴＦ８の１６進数の文字列に変換し、同一のデータベースに格納することで、検索時に複数のデータベースを参照しなくてもよいため、レスポンスの向上が見込める。２）複数の言語を同一のデータベースに格納することで、複数のデータベースの更新処理等がなくなるため、運用コストの低減が見込める。３）既存のシステムに存在しているバイト数を利用する処理を修正する必要がないため、効率的な運用が図れる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施例を、図面により詳細に説明する。
図１は、本発明の一実施例に係る多言語検索システムの概要を示す構成図である。
多言語検索を利用するクライアント０１は、ネットワークを介してサーバ０２に保持されている検索プログラムを実行する。図１に示すように、クライアント０１は、ＵＴＦ８をエンコード処理できるＷｅｂブラウザ２０を有し、また、サーバ０２は、多言語文字および多言語文字コード等が格納された多言語データベース１１と、多言語データベース１１の元データを作成する多言語コード化処理部３１と、多言語検索方法を実現する多言語文字検索処理部２６とから構成される。
多言語文字検索処理部２６は、クライアントのＷｅｂブラウザによりエンコードされた文字コードから不要な文字を削除して検索キーを生成する不要文字削除機能２１、多言語データベース１１に対して検索を要求するデータベース検索機能２２、多言語データベース１１から読み出された文字を抽出して編集を行う抽出文字編集機能２３、編集された文章の各文字をデコードするデコード機能２４、デコードされた文字の集合を標準方式でクライアントに出力する標準出力機能２５の５つの機能で構成される。
【００１２】
本実施例では、従来、ＳＪＩＳで表現できる文字しか検索できなかった既存システムに対して、Ｕｎｉｃｏｄｅ（ＵＴＦ８，ＵＴＦ１６）で表現することができる全ての多言語文字を検索できるように機能拡張することが可能である。
本実施例では、データベース１１に設定されているキャラクタセット（取り扱う文字コード）に対して、多言語文字を格納するデータ項目にはＵＴＦ８またはＵＴＦ１６を設定し、多言語文字を格納しないその他のデータ項目には、ＳＪＩＳを設定することで、ＳＪＩＳで表現できる文字しか検索できない既存システムに対して、多言語文字を検索できるように機能拡張することが可能である。
サーバ０２において、入力フィイル（文字変換前ファイル４１）に格納されている多言語文字を１６進数の文字列に変換する際に、変換対象の文字が入力ファイルのどの位置（項目）にあっても変換できる機能を有する。
また、クライアント０１のＷｅｂブラウザ２０で入力した検索条件の文字コード２バイト毎の‘％’を削除し、多言語コード化処理によって生成した多言語データベース１１を検索するキーを生成する。
また、多言語データベース１１から検索された情報をクライアント０１に送信する際には、データベース１１に格納されている文字コード情報に対して２バイト毎に‘％’を挿入して、デコードすることにより、多言語文字をクライアント０１のブラウザ２０に表示できる機能を持たせている。
【００１３】
また、多言語コード化処理部３１は入力パラメータ５１、文字変換前ファイル４１、文字変換後ファイル４２の３つの外部情報を利用する。これらの入力パラメータ５１、文字変換前ファイル４１および文字変換後ファイル４２のレイアウトは、図９〜図１１に示す通りである。
図９は、入力パラメータのレイアウト図である。
入力パラメータ５１の作成は、図９に示すように、“英語項目名”とパラメータ値を“＝”で連結し、各パラメータを半角スペースで連結する。
日本語項目名としては、例えば、図９に示すように、シェル変数として“入力ファイル名称”，“入力ファイルの区切り文字”，“文字コード変換対象項目番号”，“出力ファイル名称”，“出力ファイルの区切り文字”等のパラメータを設定する。
【００１４】
図１０は、文字変換前ファイルのレイアウト図である。
文字変換前のファイルレイアウトの日本語項目名としては、プライマリコードの９バイト（英語項目名はＧＫＧＹＣＤ）と、多言語名称の１００バイト（英語項目名はＧＬＯＢＡＬ  ＮＡＭＥ）とが一例として挙げられている。
図１１は、文字変換後ファイルのレイアウト図である。
文字変換後のファイルレイアウトの日本語項目名としては、プライマリコードの９バイト（英語項目名はＧＫＧＹＣＤ）と、多言語名称の１００バイト（英語項目名はＧＬＯＢＡＬ  ＮＡＭＥ）と、多言語名称文字コードの４００バイト（英語項目名はＧＬＯＢＡＬ  ＮＡＭＥ  ＣＯＤＥ）とが一例として挙げられている。
なお、図１０、図１１に示すファイルレイアウトは、あくまで最小レイアウトであり、別途ファイル項目が増えた場合でも、多言語文字１６進数の文字列に変換することができる（多言語コード化処理３１は、文字変換前ファイルレイアウトに左右されず、文字コード変換を行うことが可能である）。
【００１５】
図２は、多言語コード化処理のフローチャートである。
このフローチャートは、入力パラメータ５１を設定し、多言語コード化処理を実行することで、文字変換前ファイル４１に格納されている多言語文字列を１６進数の文字列に変換し、図１１に示すファイルレイアウトの通りに文字変換後ファイルを作成できることを示している。
図２により、多言語コード化処理部３１の実処理について説明する。
まず、５つの入力パラメータ５１（図９に示されている入力ファイル名称、入力ファイルの区切り文字、文字コード変換対象項目番号、出力ファイル名称、出力ファイルの区切り文字）を読み込む（ＳＴ１）。
読み込んだ５つの入力パラメータ５１に誤りがあるか否かをチェックするために、入力パラメータ５１の個数分（５回）だけ入力パラメータ処理（ＳＴ３）を繰り返し実行する（入力パラメータチェックループＳＴ２）。
また、入力パラメータチェック処理（ＳＴ３）を正常終了させた後、各入力パラメータを判定する入力パラメータエラー処理（ＳＴ４）を行う。
【００１６】
入力パラメータ５１に誤りがなかった場合には、入力パラメータ５１で指定した文字変換前ファイル４１をオープンする（ＳＴ５）。このファイルをオープンする際に、何等かの原因でオープンできなかった場合（ＳＴ６）、エラーメッセージを標準出力し（ＳＴ７）、多言語コード化処理を異常終了させる（ＳＴ１１）。
次に、多言語文字を編集後格納するため、文字変換後ファイル４２も同様にオープンする（ＳＴ９）。このファイルもオープンする際に、何等かの原因でオープンできない場合には（ＳＴ９）、エラーメッセージを標準出力し（ＳＴ１０）、多言語コード化処理を異常終了させる（ＳＴ１１）。
【００１７】
文字変換前ファイル４１と文字変換後ファイル４２をオープンできた後、多言語文字を１６進変換するために、文字変換前ファイル４１に格納されている入力レコード件数分だけ入力レコード編集処理（ＳＴ１３）を繰り返し実行する（入力レコード処理ループ（ＳＴ１２））。また、入力レコード編集処理において、標準出力されたデータは、文字変換後ファイル４２に格納される。最後に、文字変換後ファイル４２をクローズする（ＳＴ１４）。
【００１８】
図３−Ａおよび図３−Ｂは、いずれも図２における入力パラメータチェック処理（ＳＴ３）の詳細なフローチャートである。
このフローチャートは、入力パラメータ５１から取得した値を編集・加工し、シェル変数への設定ができることを説明するものである。
入力パラメータチェック処理（ＳＴ３）は、まず５つの入力パラメータ５１について、１つずつ処理を実行する。入力パラメータ５１を変数ＶＡＬに格納し、変数ＶＡＬの値を区切り文字“＝”で分解し、区切り文字“＝”よりも後ろにある文字列を変数ＨＩＫＩＳＵ ＫＥＹおよびＨＩＫＩＳＵ ＶＡＬＵＥに格納する（ＳＴ１５）。次に、変数変数ＨＩＫＩＳＵ ＫＥＹに格納されている値を統一するために、全て大文字に変換する（ＳＴ１６）。
【００１９】
以下、変数ＨＩＫＩＳＵ ＫＥＹの値により、シェル変数に設定する処理を振り分ける。
変数ＨＩＫＩＳＵ ＫＥＹの値が“ＩＮ ＦＩＬＥ”の場合（ＳＴ１７）、変数ＨＩＫＩＳＵ ＶＡＬＵＥの値を変数ＩＮ ＦＩＬＥに代入する（ＳＴ１８）。
変数ＨＩＫＩＳＵ ＫＥＹの値が“ＯＵＴ ＦＩＬＥ”の場合（ＳＴ１９）、変数ＨＩＫＩＳＵ ＶＡＬＵＥの値を変数ＯＵＴ ＦＩＬＥに代入する（ＳＴ２０）。
変数ＨＩＫＩＳＵ ＫＥＹの値が“ＴＯ ＥＮＣＯ”の場合（ＳＴ２１）、変数ＨＩＫＩＳＵ ＶＡＬＵＥの値に含まれる“．”を半角スペースに置換し、変数ＥＮＣＯＣＮＴ２に代入する（ＳＴ２２）。この変数ＥＮＣＯＣＮＴ２に格納されている値を配列として格納するために、変数ＥＮＣＯＣＮＴ２に格納されている値分だけ、『１６進数の文字列に変換する列項目の位置を配列変数ＥＮＣＯＣＮＴ４に代入する。』（ＳＴ２４）を繰り返し実行する（文字コード変換対象項目の洗い出しループ（ＳＴ２３））。
文字コード変換対象項目洗い出しループ（ＳＴ２３）が完了した後、変数ＭＡＸＪに配列の個数を格納する（ＳＴ２５）。
【００２０】
変数ＨＩＫＩＳＵ ＫＥＹが“ＩＮ ＤＥＬＩ”の場合（ＳＴ２６）で、かつ変数ＨＩＫＩＳＵ ＫＥＹの値が“ＴＡＢ”の場合（ＳＴ２７）、変数ＩＮ ＤＥＬＩに“￥ｔ9(9タブ9)”を格納する（ＳＴ２８）。
変数ＨＩＫＩＳＵ ＫＥＹが“ＩＮ ＤＥＬＩ”の場合（ＳＴ２６）で、かつ変数ＨＩＫＩＳＵ ＫＥＹの値が“ＣＳＶ”の場合（ＳＴ２９）、変数ＩＮ ＤＥＬＩに“．”を格納する（ＳＴ３０）。
変数ＨＩＫＩＳＵ ＫＥＹが“ＯＵＴ ＤＥＬＩ”の場合（ＳＴ３１）で、かつ変数ＨＩＫＩＳＵ ＫＥＹの値が“ＴＡＢ”の場合（ＳＴ３２）、変数ＯＵＴ ＤＥＬＩに“￥ｔ0(0タブ0)”を格納する（ＳＴ３３）。
変数ＨＩＫＩＳＵ ＫＥＹが“ＯＵＴ ＤＥＬＩ”の場合（ＳＴ３１）で、かつ変数ＨＩＫＩＳＵ ＫＥＹの値が“ＣＳＶ”の場合（ＳＴ４）、変数ＯＵＴ ＤＥＬＩに“  ”を格納する（ＳＴ３５）。
以上により、入力パラメータ５１で設定した値をシェル変数に設定することができる。
【００２１】
図４は、図２における入力パラメータエラー処理（ＳＴ４）の詳細なフローチャートである。
このフローチャートは、入力されたパラメータ値が正しい値ではなかった場合に、多言語コード化処理（３１）を異常終了させることを説明するフローチャートである。
変数ＩＮ ＦＩＬＥの値がＮＵＬＬであった場合（変数ＩＮ ＦＩＬＥに何も設定されてない場合）（ＳＴ３６）、エラーメッセージを標準出力し（ＳＴ３７）、多言語コード化処理部３１を異常終了させる（ＳＴ４６）。
変数ＯＵＴ ＦＩＬＥの値がＮＵＬＬであった場合（変数ＯＵＴ ＦＩＬＥに何も設定されてない場合）（ＳＴ３８）、エラーメッセージを標準出力し（ＳＴ３９）、多言語コード化処理部３１を異常終了させる（ＳＴ４６）。
【００２２】
変数ＴＯ ＥＮＣＯの値がＮＵＬＬであった場合（変数ＴＯ ＥＮＣＯに何も設定されてない場合）（ＳＴ４０）、エラーメッセージを標準出力し（ＳＴ４１）、多言語コード化処理部３１を異常終了させる（ＳＴ４１）。
変数ＩＮ ＤＥＬＩの値がＮＵＬＬであった場合（変数ＩＮ ＤＥＬＩに何も設定されてない場合）（ＳＴ４２）、エラーメッセージを標準出力し（ＳＴ４３）、多言語コード化処理部３１を異常終了させる（ＳＴ４６）。
変数ＯＵＴ ＤＥＬＩの値がＮＵＬＬであった場合（変数ＯＵＴ ＤＥＬＩに何も設定されてない場合）（ＳＴ４４）、エラーメッセージを標準出力し（ＳＴ４５）、多言語コード化処理部３１を異常終了させる（ＳＴ４６）。
【００２３】
図５−Ａおよび図５−Ｂは、いずれも図２における入力レコード編集処理（ＳＴ１３）の詳細フローチャートである。
このフローチャートは、入力レコードの列の項目数をカウントし、その後、列の項目毎に１６進数の文字列に変換するか否かを判定し、多言語文字列を１６進数の文字列に変換する処理のフローチャートである。
まず、入力レコードを１行だけ読み込み、図３のＳＴ２８，３０で取得した変数ＩＮ ＤＥＬＩに格納されている値を半角スペースに編集して変数ＩＮ ＲＥＣ ＣＯＬに代入する（ＳＴ４７）。変数ＣＮＴ ＣＯＬの値がＮＵＬＬの場合（変数ＣＮＴ ＣＯＬに何も設定されてない場合）（ＳＴ４８）、入力レコード１行分の項目数をカウントするために、変数ＩＮ ＲＥＣ ＣＯＬの項目数分だけ『入力レコード（１行）の項目数をカウントする。カウントした結果は、変数ＣＯＬ ＣＮＴに代入する。』（ＳＴ５０）を繰り返し実行する（入力レコード項目数カウントループ（ＳＴ４９））。
【００２４】
多言語文字を１６進数の文字列に変換するために、変数ＩＮ ＲＥＣ ＣＯＬの項目数だけ、下記の１）〜９）を繰り返し処理する（入力レコード項目数カウントループ（ＳＴ５１））。
１）標準出力処理（図６のＳＴ６１）を処理した項目数をカウントする（ＳＴ５２）。
２）変数ＩＮ ＲＥＣ ＣＯＬの値から改行コードを削除し、変数ＶＡＬに代入する（ＳＴ５３）。
３）この変数ＶＡＬの値を１６進数の文字列に変換するか否かを下記の条件により判定する（ＳＴ５４）。
処理した項目数と配列変数ＥＮＣＯＣＮＴ４に格納されている値が一致した場合、下記処理を行う。
４）上記３）で一致しなかった場合、および、５）〜９）で処理した文字列（変数ＥＮＣＯＶＡＬ）を標準出力する（ＳＴ６０）。
５）変数ＶＡＬの値を１バイト毎に分解する（ＳＴ５５）。分解した後、変数ＭＯＤ ＣＯＤＥに格納する。
６）多言語文字列を１６進数の文字列に変換するために、上記５）で分解したバイト数分だけ、下記の７）〜４）を繰り返し実行する（１６進数変換編集処理ループ（ＳＴ５６））。
７）上記５）で分解した値をｐｅｒｌ言語で予め用意され序般ｕｎｐａｃｋ関数を利用して１６進数の文字列に変換し、ＥＮＣＯＶＡＬＷに格納する（ＳＴ５７）。
８）変数ＥＮＣＯＶＡＬＷに格納されている文字を、大文字に変換する（ＳＴ５８）。
９）変数ＥＮＣＯＶＡＬの値に変数ＥＮＣＯＶＡＬＷの値を結合する（ＳＴ５９）。
【００２５】
図６は、図５における標準出力処理（ＳＴ６０）の詳細フローチャートである。
このフローチャートは、入力レコード編集処理において、処理中の列項目の数（位置）により標準出力の方法が異なることを説明するフローチャートである。また、標準出力されるデータの出力先は、全て文字変換後ファイル４２である。
処理する項目が最終項目の場合（ＳＴ６１）で、かつ処理中の項目が多言語文字コード変換対象項目である場合（ＳＴ６２）、下記１）〜５）のレイアウトで標準出力する（ＳＴ６３）。
１）変数ＯＵＴ ＤＥＬＩに格納されている値（区切り文字）
２）変数ＶＡＬに格納されている値（多言語文字コードを変換する前の多言語文字列）
３）変数ＯＵＴ ＤＥＬＩに格納されている値（区切り文字）
４）変数ＥＮＣＯＶＡＬに格納されている値（多言語文字コード変換した後の文字コード）
５）改行コード
これらを同一行として文字変換後ファイル４２に出力する。
【００２６】
処理中の項目が最終項目の場合（ＳＴ６１）で、かつ処理中の項目が多言語文字コード変換対象項目ではない場合（ＳＴ６２）、下記１）〜３）のレイアウトで標準出力する（ＳＴ６４）。
１）変数ＯＵＴ ＤＥＬＩに格納されている値（区切り文字）
２）変数ＶＡＬに格納されている値（多言語文字コード変換する摩の多言語文字列）
３）改行コード
これらを同一行として文字変換後ファイル４２に出力する。
【００２７】
処理中の項目が第１項目の場合（ＳＴ６５）で、かつ処理中の項目が多言語文字コード変換対象項目である場合（ＳＴ６６）、下記１）〜３）のレイアウトで標準出力する（ＳＴ６７）。
１）変数ＶＡＬに格納されている値（多言語文字コード変換する前の多言語文字列）
２）変数ＯＵＴ ＤＥＬＩに格納されている値（区切り文字）
３）変数ＥＮＣＯＶＡＬに格納されている値（多言語文字コード変換した後の文字コード）
これらを同一行として文字変換後ファイル４２に出力する。
【００２８】
処理中の項目が第１項目の場合（ＳＴ６５）で、かつ処理中の項目が多言語文字コード変換対象項目でない場合（ＳＴ６６）、下記１）のレイアウトで標準出力する（ＳＴ６８）。
１）変数ＶＡＬに格納されている値（多言語文字コード変換する前の多言語文字列）
標準出力する項目が最終項目でもなく、第１項目でもない項目（第２項目から最終項目−１項目まで）を標準出力するために、下記１）〜４）を繰り返し行う（編集データ出力処理ループ（ＳＴ６９））。
１）変数ＯＵＴ ＤＥＬＩに格納されている値（区切り文字）
２）変数ＶＡＬに格納されている値（多言語文字コード変換する前の多言語文字列）
３）変数ＯＵＴ ＤＥＬＩに格納されている値（区切り文字）
４）変換変数ＥＮＣＯＶＡＬに格納されている値（多言語文字コード変換した後の文字コード）
これらを同一行として文字変換後ファイル４２に出力する。
【００２９】
処理中の項目が多言語文字コード変換対象項目でない場合（ＳＴ７０）、下記のレイアウトで標準出力する（ＳＴ７２）。
１）変数ＯＵＴ ＤＥＬＩに格納されている値（区切り文字）
２）変数ＶＡＬに格納されている値（多言語文字コード変換する前の多言語文字列）
これらを同一行として出力する。
以上、図２から図６までの処理により、多言語データベース１１にローディングするためのデータファイルを作成することができる。
【００３０】
図７は、本発明の多言語検索処理部２６の動作フローチャートである。
このフローチャートは、クライアントがＷｅｂブラウザを利用して多言語文字を検索できることを説明するためのフローチャートである。
（処理名；不要文字削除機能２１）
クライアントは、Ｗｅｂブラウザのフォームに検索条件を入力し、多言語文字検索処理を実行する。この際のＷｅｂブラウザが表示しているフォームは、ＵＴＦ８で表示されている。
実行された検索処理は、Ｗｅｂブラウザのフォームから検索条件（標準入力）を取得し、エンコードされている文字列から不要な文字（‘％’）を削除する。
【００３１】
（処理名：データベース検索機能２２）
削除した値を検索条件として、図２から図６の多言語コード化処理部３１で作成した多言語データベース１１を検索し、検索条件に該当するレコードを取得する。
【００３２】
（処理名：抽出文字編集機能２３）
多言語データベース１１より抽出した１６進変換後文字列に対し、２文字毎に‘％’を挿入し、Ｗｅｂブラウザがエンコードした状態と同様の文字列を作成する。
【００３３】
（処理名：デコード処理機能２４）
作成された文字列を多言語データベース１１から読み出し、読み出された文字列をデコード処理し、Ｗｅｂブラウザのフォームに入力した検索条件の文字列と同様の文字列を作成する。
【００３４】
（処理名：標準出力機能２５）
Ｗｅｂブラウザに、上記の欄で作成された文字列を標準出力する前に、ＨＴＴＰヘッダーとして、“Ｃｏｎｔｅｎｔ−ｔｙｐｅ：ｔｅｘｔ／ｈｔｍｌ：ｃｈａｒｓｅｔ＝ｕｔｆ８”：を標準出力する。上記のＨＴＴＰヘッダーを標準出力することで、上記の欄で作成した文字列を文字化けせずにＷｅｂブラウザに表示させることができる（Ｗｅｂブラウザの自動エンコーディング機能を利用する）。
【００３５】
（多言語コード化処理機能３１）
入力パラメータのチェック処理が終了した後、文字変換前ファイル４１をオープンし、さらに文字変換後ファイル４２もオープンする。多言語文字をＵＴＢ１６，ＵＴＦ８の文字コードに変換し、データベースに格納する。
以上、図７で説明した処理により、多言語文字による多言語文字検索方法を実現することができる。
【００３６】
図８は、本発明で利用するサンプルデータベースの項目定義を示した図である。
多言語データベース１１には、図８に示すように、日本語項目名、桁（バイト数）、英語項目名、および、項目説明の各エリアが配置されている。
例えば、日本語項目名には、プライマリコード（９バイト）（英語項目名ＧＫＧＹＣＤ））、多言語名称（１００バイト）（ＧＬＯＢＡＬ  ＮＡＭＥ）、多言語名称文字コード（４００バイト）（ＧＬＯＢＡＬ  ＮＡＭＥ  ＣＯＤＥ）などが格納され、バイト数として、それぞれ９バイト、１００バイト、４００バイトと登録されている。日本語項目名に相当する英語項目名が格納され、さらに項目説明のエリアがある。
【００３７】
図１２は、本発明を利用した多言語検索システムの画面処理の概要図である。
サンプル事例として、多言語文字検索処理２７の操作順序が示される。まず、ログイン画面６１にユーザＩＤとパスワードを入力した後、ログインボタン６５をクリックする。次の検索条件画面６２に企業名と業種コードを入力した後、検索ボタン６６をクリックする。次に、検索結果一覧画面６３には、ＸＸＸ有限公司、ＡＢＣ有限公司、ＤＥＦ有限公司などの企業名が表示されるので、企業を選択する。それにより、企業名と住所が表示された海外企業群詳細画面が表示される。この場合には、企業名、住所を検索する場合が示されているが、検索条件画面６２に、検索する対象名とその種別コードを入力することにより、目的の検索対象が検索され、表示される。
【００３８】
なお、図２〜図６に示したフローをプログラム化し、完成したプログラムをＣＤ−ＲＯＭなどの記録媒体に格納して、この記録媒体を多言語検索システムのプロセッサに装着しておけば、起動時に上記プログラムをプロセッサにインストールして実行させることで、本発明を容易に実現することができる。また、上記プログラムをインターネットを介してクライアントにダウンロードすることにより、プログラムの汎用化も可能である。
【図面の簡単な説明】
【００３９】
【図１】本発明における多言語検索システムの概略構成図である。
【図２】本発明における多言語コード化処理の動作フローチャートである。
【図３−Ａ】図２における入力パラメータチェック処理の動作フローチャート（１）である。
【図３−Ｂ】同じく入力パラメータチェック処理の動作フローチャート（２）である。
【図４】図２における入力パラメータエラー処理の動作フローチャートである。
【図５−Ａ】図２における入力レコード編集処理の動作フローチャート（１）である。
【図５−Ｂ】同じく入力レコード編集処理の動作フローチャート（２）である。
【図６】図２における標準出力処理の動作フローチャートである。
【図７】本発明における多言語文字検索処理の動作フローチャートである。
【図８】本発明で利用するサンプルＤＢの項目定義を示した図である。
【図９】本発明で利用する入力パラメータの項目定義を示した図である。
【図１０】本発明で利用する文字変換前ファイルの項目定義を示した図である。
【図１１】本発明で利用する文字変換後ファイルの項目定義を示した図である。
【図１２】本発明を利用した多言語検索システムの概要図である。
【符号の説明】
【００４０】
０１：クライアント
０２：サーバ
１１：多言語データベース
２０：ブラウザ表示
２１：不要文字削除機能部
２２：ＤＢ検索機能部
２３：抽出文字編集機能部
２４：デコード機能部
２５：標準出力機能部
２６：多言語文字検索処理部
３１：多言語コード化処理部
４１：文字変換前ファイル
４２：文字変換後ファイル
５１：入力パラメータ
６１：ログイン画面
６２：検索条件画面
６３：検索結果一覧画面
６４：海外企業詳細画面
６５：ログインボタン
６６：検索ボタン
【図１】
2007140744.tif 000003
【図２】
2007140744.tif 000004
【図３−Ａ】
2007140744.tif 000005
【図３−Ｂ】
2007140744.tif 000006
【図４】
2007140744.tif 000007
【図５−Ａ】
2007140744.tif 000008
【図５−Ｂ】
2007140744.tif 000009
【図６】
2007140744.tif 000010
【図７】
2007140744.tif 000011
【図８】
2007140744.tif 000012
【図９】
2007140744.tif 000013
【図１０】
2007140744.tif 000014
【図１１】
2007140744.tif 000015
【図１２】
2007140744.tif 000016