(57)【要約】【課題】  動的に決定される各処理モジュールが複数の異なるデータ形式を要求する場合に、データ形式変換を必要最小限に抑え、処理効率を向上させる。【解決手段】  構造化文書データ処理において、文書データが入力すると、文書データの処理に使用する処理モジュールを決定し、その決定結果をモジュール制御部に出力する。すると、モジュール制御部は、処理対象の文書データのデータ形式と、次に処理を実行する処理モジュールが要求するデータ形式とが一致するかどうかを調べる。データ形式が一致しない場合には、文書データのデータ形式を、次に処理を実行する処理モジュールが要求するデータ形式に変換させる。次いで、文書データを次に処理を実行する処理モジュールに渡し、その処理モジュールを呼び出し、処理結果を格納する。全ての処理モジュールについて処理を順次行い、文書データを出力する。【選択図】  図２
2005258782.tif 000002
【特許請求の範囲】
【請求項１】
複数のデータ形式で使用される構造化文書データを、処理モジュールを用いて処理する構造化文書処理装置であって、
受信した構造化文書データの処理に使用する１または２以上の処理モジュールを、処理対象のデータ形式がそれぞれ特定されている複数の処理モジュールの中から決定し、
使用することに決定された処理モジュールに処理の実行指示を行う際に、当該実行指示を行う処理モジュールのデータ形式と、当該処理モジュールの処理対象となる構造化文書データのデータ形式とが一致するか否か判定し、一致しないと判定された構造化文書データのデータ形式を処理の実行指示を行う処理モジュールのデータ形式に変換し、
使用することに決定された処理モジュールによる構造化文書データの処理結果を送信する
ことを特徴とする構造化文書処理装置。
【請求項２】
複数のデータ形式で使用される構造化文書データを、処理モジュールを用いて処理する構造化文書処理装置であって、
構造化文書データを受信する受信手段と、
前記受信手段が受信した構造化文書データの処理に使用する１または２以上の処理モジュールを、処理対象のデータ形式がそれぞれ特定されている複数の処理モジュールの中から決定する使用処理モジュール決定手段と、
前記使用処理モジュール決定手段によって使用することに決定された処理モジュールに処理の実行指示を行うモジュール制御手段と、
構造化文書データのデータ形式を変換するデータ形式変換手段と、
前記使用処理モジュール決定手段によって使用することに決定された処理モジュールによる処理結果を送信する送信手段とを備え、
前記モジュール制御手段は、処理の実行指示を行う際に、当該実行指示を行う処理モジュールのデータ形式と、当該処理モジュールの処理対象となる構造化文書データのデータ形式とが一致するか否か判定する判定手段を含み、
前記データ形式変換手段は、前記判定手段により一致しないと判定された構造化文書データのデータ形式を、処理の実行指示を行う処理モジュールのデータ形式に変換する
ことを特徴とする構造化文書処理装置。
【請求項３】
受信手段が受信した構造化文書データを格納する文書データ格納手段を備え、
モジュール制御手段は、使用処理モジュール決定手段によって使用することに決定された処理モジュールによる処理結果を前記文書データ格納手段に格納し、
送信手段は、前記文書データ格納手段に格納されている処理結果を送信する
請求項２記載の構造化文書処理装置。
【請求項４】
データ形式変換手段は、構造化文書データのデータ形式を変換する１または２以上のデータ形式変換モジュールである
請求項２または請求項３記載の構造化文書処理装置。
【請求項５】
モジュール制御手段は、
データ形式変換モジュールに対する処理の実行指示をも行い、
使用処理モジュール決定手段によって使用することに決定された処理モジュールと、データ形式の変換に必要な前記データ形式変換モジュールとに対する実行指示の順番を決定し、次の順番のモジュールの実行指示を行う実行指示情報を当該次の順番のモジュールが存在する各モジュールに付加し、順番が最初のモジュールの実行指示を行う
請求項４記載の構造化文書処理装置。
【請求項６】
モジュール制御手段は、使用される処理モジュールとデータ形式変換モジュールとに対する実行指示の順番を、実行可能な複数種類の順番のうち、前記処理モジュールと前記データ形式変換モジュールとで実行される処理の全体の負荷が最小となる順番とすることに決定する
請求項５記載の構造化文書処理装置。
【請求項７】
モジュール制御手段は、使用される処理モジュールとデータ形式変換モジュールとに対する実行指示の順番を、あらかじめ定められている処理モジュール間の実行順序制約の範囲内で決定する
請求項５または請求項６記載の構造化文書処理装置。
【請求項８】
処理モジュールは、構造化文書処理装置外の外部装置に格納されており、
モジュール制御手段は、前記外部装置に格納されている処理モジュールに通信ネットワークを介して実行指示を行う
請求項２から請求項７のうちいずれかに記載の構造化文書処理装置。
【請求項９】
データ形式変換モジュールには、構造化文書処理装置外の外部装置に格納されているデータ形式変換モジュールが含まれ、
モジュール制御手段は、前記外部装置に格納されているデータ形式変換モジュールに通信ネットワークを介して実行指示を行う
請求項５から請求項７のうちいずれかに記載の構造化文書処理装置。
【請求項１０】
受信手段は、通信ネットワークを介して構造化文書データを受信し、
送信手段は、処理モジュールによる処理結果を通信ネットワークを介して送信する
請求項２から請求項９のうちいずれかに記載の構造化文書処理装置。
【請求項１１】
受信手段は、構造化文書データである要求文書データと、要求文書データの処理モジュールによる処理結果に応じて返答された返答文書データとを受信し、
送信手段は、前記要求文書データの処理モジュールによる処理結果と、前記返答文書データの処理モジュールによる処理結果とを送信する
請求項２から請求項１０のうちいずれかに記載の構造化文書処理装置。
【請求項１２】
使用処理モジュール決定手段は、要求文書データの処理に使用した処理モジュールを、返答文書データの処理に使用する処理モジュールに決定する
請求項１１記載の構造化文書処理装置。
【請求項１３】
モジュール制御手段は、要求文書データの処理に使用した処理モジュールを保持し、返答文書データの処理に使用する処理モジュールを使用処理モジュール決定手段に決定させることなく、前記返答文書データの処理に前記要求文書データの処理に使用した処理モジュールを使用する
請求項１１記載の構造化文書処理装置。
【請求項１４】
構造化文書データは、ＸＭＬ文書データである
請求項２から請求項１３のうちいずれかに記載の構造化文書処理装置。
【請求項１５】
複数のデータ形式で使用される構造化文書データを、処理モジュールを用いて処理する構造化文書処理方法であって、
構造化文書データを受信し、
受信した構造化文書データの処理に使用する１または２以上の処理モジュールを、処理対象のデータ形式がそれぞれ特定されている複数の処理モジュールの中から決定し、
使用することに決定された処理モジュールに処理の実行指示を行い、
使用することに決定された処理モジュールに処理の実行指示を行う際に、当該実行指示を行う処理モジュールのデータ形式と、当該処理モジュールの処理対象となる構造化文書データのデータ形式とが一致するか否か判定し、一致しないと判定された構造化文書データのデータ形式を、処理の実行指示を行う処理モジュールのデータ形式に変換する
ことを特徴とする構造化文書処理方法。
【請求項１６】
データ形式の変換を、構造化文書データのデータ形式を変換する１または２以上のデータ形式変換モジュールによって実行する
請求項１５記載の構造化文書処理方法。
【請求項１７】
使用することに決定された処理モジュールと、データ形式の変換に必要なデータ形式変換モジュールとに対する実行指示の順番を決定し、
次の順番のモジュールの実行指示を行う実行指示情報を当該次の順番のモジュールが存在する各モジュールに付加し、
順番が最初のモジュールの実行指示を行う
請求項１６記載の構造化文書処理方法。
【請求項１８】
使用される処理モジュールとデータ形式変換モジュールとに対する実行指示の順番を、実行可能な複数種類の順番のうち、前記処理モジュールと前記データ形式変換モジュールとで実行される処理の全体の負荷が最小となる順番とすることに決定する
請求項１７記載の構造化文書処理方法。
【請求項１９】
使用される処理モジュールとデータ形式変換モジュールとに対する実行指示の順番を、あらかじめ定められている処理モジュール間の実行順序制約の範囲内で決定する
請求項１７または請求項１８記載の構造化文書処理方法。
【請求項２０】
複数のデータ形式で使用される構造化文書データを、処理モジュールを用いて処理させるための構造化文書処理プログラムであって、
コンピュータに、
構造化文書データを受信するステップと、
受信した構造化文書データの処理に使用する１または２以上の処理モジュールを、処理対象のデータ形式がそれぞれ特定されている複数の処理モジュールの中から決定するステップと、
使用することに決定された処理モジュールに処理の実行指示を行うステップと、
使用することに決定された処理モジュールに処理の実行指示を行う際に、当該実行指示を行う処理モジュールのデータ形式と、当該処理モジュールの処理対象となる構造化文書データのデータ形式とが一致するか否か判定し、一致しないと判定された構造化文書データのデータ形式を、処理の実行指示を行う処理モジュールのデータ形式に変換するステップとを
実行させるための構造化文書処理プログラム。
【請求項２１】
コンピュータに、
データ形式の変換を、構造化文書データのデータ形式を変換する１または２以上のデータ形式変換モジュールによって実行するステップを
実行させるための請求項２０記載の構造化文書処理プログラム。
【請求項２２】
コンピュータに、
さらに、使用することに決定された処理モジュールと、データ形式の変換に必要なデータ形式変換モジュールとに対する実行指示の順番を決定するステップと、
次の順番のモジュールの実行指示を行う実行指示情報を当該次の順番のモジュールが存在する各モジュールに付加するステップと、
順番が最初のモジュールの実行指示を行うステップとを
実行させるための請求項２１記載の構造化文書処理プログラム。
【請求項２３】
コンピュータに、
さらに、使用される処理モジュールとデータ形式変換モジュールとに対する実行指示の順番を、実行可能な複数種類の順番のうち、前記処理モジュールと前記データ形式変換モジュールとで実行される処理の全体の負荷が最小となる順番とすることに決定するステップを
実行させるための請求項２２記載の構造化文書処理プログラム。
【請求項２４】
コンピュータに、
さらに、使用される処理モジュールとデータ形式変換モジュールとに対する実行指示の順番を、あらかじめ定められている処理モジュール間の実行順序制約の範囲内で決定するステップを
実行させるための請求項２２または請求項２３記載の構造化文書処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のデータ形式で使用される構造化文書データを、処理モジュールを用いて処理する構造化文書処理装置に関し、特に、複数の処理モジュールを動的に切り替えて構造化文書データを処理する構造化文書処理装置、構造化文書処理方法、および構造化文書処理プログラムに関する。
【背景技術】
【０００２】
従来、複数のコンピュータ間で交換される構造化文書データの中継等を行う通信中継装置が用いられている。
【０００３】
従来の通信中継装置には、処理内容に応じた複数のモジュールが備えられており、通信内容に応じて、暗号化、署名検証、ログ書出しなどの処理内容が決定され、決定した処理を実行するモジュールが呼び出されて使用されるものがある（例えば、特許文献１、非特許文献１、非特許文献２、非特許文献３参照）。
【０００４】
なお、特許文献１、非特許文献１、非特許文献２、非特許文献３に記載されている技術は、文書データについての各種の処理を実行する文書処理システムが、通信中継装置に適用された技術と捉えられる。
【０００５】
具体的には、特許文献１には、通信中継装置にてフィルタリングを行うことが記載されている。モジュールにはフィルタリングルールが記されており、モジュールを追加することによって新しいルールに対応することとされている。
【０００６】
また、非特許文献１には、通信中継装置にて外部モジュールを呼び出すためのＡＰＩが定義され、実行時に外部モジュールが順次呼び出されることが記載されている。非特許文献１では、中継されるメッセージを受け取るプログラムにモジュールが用いられ、メッセージの変更などの機能が備えられている。
【０００７】
また、非特許文献２では、サーバにおいてモジュールが連鎖的に呼び出され、実際のリソースへアクセスする前および後に各種の処理が追加されるようにしている。
【０００８】
さらに、非特許文献３では、プロキシサーバからコンテンツ変換サーバに順次コンテンツが転送されることによって変換処理等が行われている。非特許文献３では、モジュールが通信ネットワークを介した遠隔地に置かれる場合もある。
【０００９】
上記の従来の文書処理システムは、概ね図１３に示す構成とされている。図１３に示す文書処理システム８００は、文書データの入出力を行う入出力部８１０と、文書データを格納する文書記憶部８３０と、使用するモジュールを決定する使用モジュール決定部８２０と、モジュール制御部８５０と、処理モジュール８７０を管理する処理モジュール管理部８６０とを含む。
【００１０】
ここで、従来の文書処理システム８００の動作について説明する。
先ず、文書データを受け取ると、使用モジュール決定部８２０によって、あらかじめ定められた条件と受け取った文書データとにもとづいて、文書データの処理に使用する処理モジュールが決定される。
【００１１】
次いで、決定された処理モジュールがモジュール制御部８５０によって処理モジュール管理部８６０から取り出される。
【００１２】
そして、モジュール制御部８５０によって、順次、共通のデータ形式で文書データが渡されて各処理モジュールが呼び出される。
【００１３】
上述した従来の技術における使用する処理モジュールが動的に決定されるものでは、モジュール制御部８５０によって設計時に定められた単一のデータ形式を要求する処理モジュールのみが文書データを制御する対象とされている。
【００１４】
このため、各処理モジュールには、で内部で必要とする情報であるか否かに関わらず、全て共通のデータ形式の文書データが渡されている。
【００１５】
すなわち、モジュール制御部８５０によって構文解析を行うことなく処理モジュールごとに必要に応じて解析を行う形式と、処理モジュールが必要とするか否かに関わらずモジュール制御部８５０側で何らかの構文解析が行われ解析済みの情報を処理モジュールに渡す形式とのいずれかが選択される。
【００１６】
【特許文献１】特表２００２−５１８７２６号公報
【非特許文献１】佐藤豊著，「インターネット防火壁の基礎技術と応用 −DeleGateの仕組み−」，コンピュータソフトウェア，岩波書店，１９９７年１月，第１４巻，第１号，ｐ．５５−６３
【非特許文献２】熊田訓著，「サーブレット・フィルタ  実践活用の手引き」，［月間］ジャバワールド，２００２年１１月１日，第６巻，第１１号，ｐ．６７−７７
【非特許文献３】“Internet Content Adaptation Protocol（ICAP) ”、［online］、［平成１６年３月１日検索］、インターネット＜URL:http://www.i-cap.org/docs/icap_whitepaper_v1-01.pdf＞
【発明の開示】
【発明が解決しようとする課題】
【００１７】
上述したように、従来の使用する処理モジュールを動的に決定する構造化文書処理システムは、あらかじめ定められた単一のデータ形式で全ての処理モジュールに文書データを渡すようにしており、構文解析・データ形式変換の負荷が高い場合が考慮されていない。
【００１８】
すなわち、複数の処理モジュールを使用して文書データを処理するシステムにおいて、構造化文書データを処理する場合には、処理対象とする文書データの内容や、処理モジュールの種類によっては、文書データの構文解析や、データ形式の変換を行う必要がある。
【００１９】
しかし、従来の技術では、全ての処理モジュールに対して単一のデータ形式により文書データが渡されるため、処理効率が低くなってしまう場合がある。
【００２０】
具体的には、構文解析をしていない文書データを渡すＡＰＩ（Application Programming Interface）を選択したシステムでは、各処理モジュールが必要に応じて構文解析を行うため、各処理モジュールが構文解析を必要としない場合には解析処理が不要となるが、複数の処理モジュールが解析を必要とする場合には各処理モジュールで同じ解析処理が重複して実行されることになり、処理効率が低くなってしまうという課題があった。
【００２１】
また、例えば、あらかじめ構文解析を行った解析結果を処理モジュールに渡す形式のＡＰＩを選択したシステムでは、使用する複数の処理モジュールが構文解析を必要とする場合には解析処理が一度で済むが、構文解析を必要とする処理モジュールが使用されない場合には無駄な解析処理を行ったことになり、処理効率が低くなってしまうという課題があった。
【００２２】
処理対象の文書データがＸＭＬ（eXtended Markup Language）形式などの構文解析の負荷が高いデータである場合には、上記の不必要な解析処理が、システムの実行性能を低下させる主因にもなり得る。
【００２３】
本発明は、上述した問題を解消し、使用する処理モジュールを動的に決定して文書データを処理するシステムにおいて、各処理モジュールが複数の異なるデータ形式を要求する場合に、構文解析・データ形式変換を必要最小限に抑え、処理効率を向上させることができるようにすることを目的とする。
【課題を解決するための手段】
【００２４】
本発明による構造化文書処理装置は、複数のデータ形式で使用される構造化文書データ（例えばＸＭＬデータ）を、処理モジュール（例えば処理モジュール１７０）を用いて処理する構造化文書処理装置（例えば構造化文書処理システム１００，２００、構造化文書処理装置３００、通信中継装置４００、ＸＭＬ変換装置６００）であって、受信した構造化文書データの処理に使用する１または２以上の処理モジュールを、処理対象のデータ形式がそれぞれ特定されている複数の処理モジュールの中から決定し（例えばステップＳ１１１）、使用することに決定された処理モジュールに処理の実行指示を行う（例えばステップＳ１１４）際に、当該実行指示を行う処理モジュールのデータ形式と、当該処理モジュールの処理対象となる構造化文書データのデータ形式とが一致するか否か判定し（例えばステップＳ１１２）、一致しないと判定された構造化文書データのデータ形式を処理の実行指示を行う処理モジュールのデータ形式に変換し（例えばステップＳ１１３）、使用することに決定された処理モジュールによる構造化文書データの処理結果を送信する（例えばステップＳ１１６）ことを特徴とする。
【００２５】
上述した構成としたことで、使用する処理モジュールを動的に決定して構造化文書データを処理するシステムにおいて、各処理モジュールが複数の異なるデータ形式を要求する場合に、構文解析・データ形式変換を最小限に抑えることができ、処理効率を向上させることができる。
【００２６】
本発明による構造化文書処理装置は、複数のデータ形式で使用される構造化文書データ（例えばＸＭＬデータ）を、処理モジュール（例えば処理モジュール１７０）を用いて処理する構造化文書処理装置（例えば構造化文書処理システム１００，２００、構造化文書処理装置３００、通信中継装置４００、ＸＭＬ変換装置６００）であって、構造化文書データを受信する受信手段（例えば入出力部１１０、通信装置２１０、ＨＴＴＰ送受信部３１０）と、受信手段が受信した構造化文書データの処理に使用する１または２以上の処理モジュールを、処理対象のデータ形式がそれぞれ特定されている複数の処理モジュールの中から決定する使用処理モジュール決定手段（例えば使用モジュール決定部１２０）と、使用処理モジュール決定手段によって使用することに決定された処理モジュールに処理の実行指示を行うモジュール制御手段（例えばモジュール制御部１５０）と、構造化文書データのデータ形式を変換するデータ形式変換手段（例えばデータ形式変換部１４０）と、使用処理モジュール決定手段によって使用することに決定された処理モジュールによる処理結果を送信する送信手段（例えば入出力部１１０、通信装置２１０、ＨＴＴＰ送受信部３１０）とを備え、モジュール制御手段は、処理の実行指示を行う際に、当該実行指示を行う処理モジュールのデータ形式と、当該処理モジュールの処理対象となる構造化文書データのデータ形式とが一致するか否か判定する判定手段（例えばモジュール制御部１５０）を含み、データ形式変換手段は、判定手段により一致しないと判定された構造化文書データのデータ形式を、処理の実行指示を行う処理モジュールのデータ形式に変換する（例えばステップＳ１１３）ことを特徴とする。
【００２７】
上述した構成としたことで、使用する処理モジュールを動的に決定して構造化文書データを処理するシステムにおいて、各処理モジュールが複数の異なるデータ形式を要求する場合に、構文解析・データ形式変換を最小限に抑えることができ、処理効率を向上させることができる。
【００２８】
受信手段が受信した構造化文書データを格納する文書データ格納手段（例えば文書記憶部１３０）を備え、モジュール制御手段は、使用処理モジュール決定手段によって使用することに決定された処理モジュールによる処理結果を文書データ格納手段に格納し、送信手段は、文書データ格納手段に格納されている処理結果を送信する（例えばステップＳ１１６）ように構成されていてもよい。
【００２９】
データ形式変換手段は、例えば、構造化文書データのデータ形式を変換する１または２以上のデータ形式変換モジュール（例えば変換モジュール１８０）によって実現される。
【００３０】
モジュール制御手段は、
データ形式変換モジュールに対する処理の実行指示をも行い、使用処理モジュール決定手段によって使用することに決定された処理モジュールと、データ形式の変換に必要なデータ形式変換モジュールとに対する実行指示の順番を決定し（例えばステップＳ１２１，Ｓ１３１，Ｓ１３２，Ｓ１１５）、次の順番のモジュールの実行指示を行う実行指示情報を当該次の順番のモジュールが存在する各モジュールに付加し、順番が最初のモジュールの実行指示を行う（例えばステップＳ１３３）ように構成されていてもよい。
【００３１】
上記の構成としたことで、モジュール制御部が、最初のモジュールを呼び出した後すべてのモジュールの処理が終了するまで、それらの処理に関する制御を行う必要がなくなるため、その間に別の処理を行うことができ、処理効率を上げることができる。
【００３２】
モジュール制御手段は、使用される処理モジュールとデータ形式変換モジュールとに対する実行指示の順番を、例えば、実行可能な複数種類の順番のうち、処理モジュールとデータ形式変換モジュールとで実行される処理の全体の負荷が最小となる順番とすることに決定するように構成されていてもよい。
【００３３】
モジュール制御手段は、使用される処理モジュールとデータ形式変換モジュールとに対する実行指示の順番を、例えば、あらかじめ定められている処理モジュール間の実行順序制約の範囲内で決定するように構成されていてもよい。
【００３４】
処理モジュールは、構造化文書処理装置外の外部装置に格納されており、モジュール制御手段が、外部装置に格納されている処理モジュールに通信ネットワーク（例えばインターネット、公衆回線、専用回線、無線通信回線）を介して実行指示を行うように構成されていてもよい。
【００３５】
データ形式変換モジュールには、構造化文書処理装置外の外部装置に格納されているデータ形式変換モジュールが含まれ、モジュール制御手段は、外部装置に格納されているデータ形式変換モジュールに通信ネットワーク（例えばインターネット、公衆回線、専用回線、無線通信回線）を介して実行指示を行うように構成されていてもよい。
【００３６】
受信手段が、通信ネットワークを介して構造化文書データを受信し、送信手段が、処理モジュールによる処理結果を通信ネットワークを介して送信するように構成されていてもよい。
【００３７】
受信手段が、構造化文書データである要求文書データと、要求文書データの処理モジュールによる処理結果に応じて返答された返答文書データとを受信し（例えばステップＳ１４１，Ｓ１４４）、送信手段が、要求文書データの処理モジュールによる処理結果と、返答文書データの処理モジュールによる処理結果とを送信する（例えばステップＳ１４３，Ｓ１４６）ように構成されていてもよい。
【００３８】
使用処理モジュール決定手段が、要求文書データの処理に使用した処理モジュールを、返答文書データの処理に使用する処理モジュールに決定する（例えばステップＳ１４５の前のステップＳ１１１）ように構成されていてもよい。
【００３９】
モジュール制御手段が、要求文書データの処理に使用した処理モジュールを保持し、返答文書データの処理に使用する処理モジュールを使用処理モジュール決定手段に決定させることなく、返答文書データの処理に要求文書データの処理に使用した処理モジュールを使用する（例えば図９のステップＳ１４５にて使用する）ように構成されていてもよい。
【００４０】
構造化文書データは、例えばＸＭＬ文書データであることが好ましい。
【００４１】
また、本発明による構造化文書処理方法は、複数のデータ形式で使用される構造化文書データを、処理モジュールを用いて処理する構造化文書処理方法であって、構造化文書データを受信し（例えばステップＳ１１０）、受信した構造化文書データの処理に使用する１または２以上の処理モジュールを、処理対象のデータ形式がそれぞれ特定されている複数の処理モジュールの中から決定し（例えばステップＳ１１１）、使用することに決定された処理モジュールに処理の実行指示を行い（例えばステップＳ１１４）、使用することに決定された処理モジュールに処理の実行指示を行う際に、当該実行指示を行う処理モジュールのデータ形式と、当該処理モジュールの処理対象となる構造化文書データのデータ形式とが一致するか否か判定し（例えばステップＳ１１２）、一致しないと判定された構造化文書データのデータ形式を、処理の実行指示を行う処理モジュールのデータ形式に変換する（例えばステップＳ１１３）ことを特徴とする。
【００４２】
上述した構成としたことで、使用する処理モジュールを動的に決定して構造化文書データを処理するシステムにおいて、各処理モジュールが複数の異なるデータ形式を要求する場合に、構文解析・データ形式変換を最小限に抑えることができ、処理効率を向上させることができる。
【００４３】
データ形式の変換を、構造化文書データのデータ形式を変換する１または２以上のデータ形式変換モジュールによって実行するようにしてもよい。
【００４４】
使用することに決定された処理モジュールと、データ形式の変換に必要なデータ形式変換モジュールとに対する実行指示の順番を決定し（例えばステップＳ１２１，Ｓ１３１，Ｓ１３２，Ｓ１１５）、次の順番のモジュールの実行指示を行う実行指示情報を当該次の順番のモジュールが存在する各モジュールに付加し、順番が最初のモジュールの実行指示を行う（例えばステップＳ１３３）ように構成されていてもよい。
【００４５】
使用される処理モジュールとデータ形式変換モジュールとに対する実行指示の順番を、実行可能な複数種類の順番のうち、処理モジュールとデータ形式変換モジュールとで実行される処理の全体の負荷が最小となる順番とすることに決定するように構成されていてもよい。
【００４６】
使用される処理モジュールとデータ形式変換モジュールとに対する実行指示の順番を、あらかじめ定められている処理モジュール間の実行順序制約の範囲内で決定するように構成されていてもよい。
【００４７】
また、本発明による構造化文書処理プログラムは、複数のデータ形式で使用される構造化文書データを、処理モジュールを用いて処理させるための構造化文書処理プログラムであって、コンピュータ（例えば構造化文書処理システム１００，２００、構造化文書処理装置３００、通信中継装置４００、ＸＭＬ変換装置６００）に、構造化文書データを受信するステップ（例えばステップＳ１１０）と、受信した構造化文書データの処理に使用する１または２以上の処理モジュールを、処理対象のデータ形式がそれぞれ特定されている複数の処理モジュールの中から決定するステップ（例えばステップＳ１１１）と、使用することに決定された処理モジュールに処理の実行指示を行うステップ（例えばステップＳ１１４）と、使用することに決定された処理モジュールに処理の実行指示を行う際に、当該実行指示を行う処理モジュールのデータ形式と、当該処理モジュールの処理対象となる構造化文書データのデータ形式とが一致するか否か判定し（例えばステップＳ１１２）、一致しないと判定された構造化文書データのデータ形式を、処理の実行指示を行う処理モジュールのデータ形式に変換するステップ（例えばステップＳ１１３）とを実行させる。
【００４８】
上述した構成としたことで、使用する処理モジュールを動的に決定して構造化文書データを処理するシステムに、各処理モジュールが複数の異なるデータ形式を要求する場合に、構文解析・データ形式変換を最小限に抑制させることができ、処理効率を向上させることができる。
【００４９】
コンピュータに、データ形式の変換を、構造化文書データのデータ形式を変換する１または２以上のデータ形式変換モジュールによって実行するステップを実行させるようにしてもよい。
【００５０】
コンピュータに、さらに、使用することに決定された処理モジュールと、データ形式の変換に必要なデータ形式変換モジュールとに対する実行指示の順番を決定するステップ（例えばステップＳ１２１，Ｓ１３１，Ｓ１３２，Ｓ１１５）と、次の順番のモジュールの実行指示を行う実行指示情報を当該次の順番のモジュールが存在する各モジュールに付加するステップと、順番が最初のモジュールの実行指示を行うステップ（例えばステップＳ１３３）とを実行させるようにしてもよい。
【００５１】
コンピュータに、さらに、使用される処理モジュールとデータ形式変換モジュールとに対する実行指示の順番を、実行可能な複数種類の順番のうち、処理モジュールとデータ形式変換モジュールとで実行される処理の全体の負荷が最小となる順番とすることに決定するステップを実行させるようにしてもよい。
【００５２】
コンピュータに、さらに、使用される処理モジュールとデータ形式変換モジュールとに対する実行指示の順番を、あらかじめ定められている処理モジュール間の実行順序制約の範囲内で決定するステップを実行させるようにしてもよい。
【発明の効果】
【００５３】
本発明によれば、処理モジュールが要求するデータ形式と構造化文書データのデータ形式が異なるときにデータ形式の変換処理を行う構成としたので、使用する処理モジュールを動的に決定して構造化文書データを処理するシステムにおいて、各処理モジュールが複数の異なるデータ形式を要求する場合に、構文解析・データ形式変換を最小限に抑えることができ、処理効率を向上させることができる。
【発明を実施するための最良の形態】
【００５４】
以下、本発明の実施の形態について図面を参照して説明する。
実施の形態１．
図１は、本発明の第１の実施の形態における構造化文書処理システム１００の構成の例を示すブロック図である。
【００５５】
図１に示すように、構造化文書処理システム１００は、入出力部１１０と、使用モジュール決定部１２０と、文書記憶部１３０と、データ形式変換部１４０と、モジュール制御部１５０と、処理モジュール管理部１６０とを含む。
【００５６】
入出力部１１０は、処理対象となる文書データの入力処理と、処理結果の出力処理とを実行する機能を有する。入出力部１１０は、処理対象の文書データを受信して文書記憶部１３０に保存する処理や、処理が終了したあとに文書記憶部１３０に保存されている処理結果を出力する処理を実行する。
【００５７】
使用モジュール決定部１２０は、処理対象となる文書データの処理に用いる処理モジュールを決定する機能を有する。使用モジュール決定部１２０は、文書記憶部１３０に保存されている文書データの処理に使用する処理モジュールを決定し、決定結果をモジュール制御部１５０に出力する。
【００５８】
文書記憶部１３０は、例えばＲＡＭなどの記憶媒体によって構成され、処理対象となる文書データや、処理結果などの各種の情報が記憶される。
【００５９】
データ形式変換部１４０は、文書データのデータ形式を変換する処理を行う。データ形式変換部１４０は、モジュール制御部１５０からの要求に従って、文書データのデータ形式を他のデータ形式に変換する。
【００６０】
なお、例えば文書データがＸＭＬデータである場合には、データ形式として、例えば、ＳＡＸ（Simple Api for Xml）形式、ＤＯＭ（Document Object Model）形式、文字列形式などがある。
【００６１】
モジュール制御部１５０は、処理モジュールの呼び出しなどの各種の制御を行う。具体的には、モジュール制御部１５０は、データ形式変換部１４０に、文書記憶部１３０に記憶されている処理対象の文書データを、処理モジュールが要求するデータ形式に順次変換させるための制御を行う。
【００６２】
また、モジュール制御部１５０は、データ形式変換部１４０によってデータ形式が変換された文書データを、該当する処理モジュールに実行させるための制御を行う。
【００６３】
さらに、モジュール制御部１５０は、処理モジュールによって処理された処理結果を、文書記憶部１３０に記憶させるための制御を行う。
【００６４】
処理モジュール管理部１６０は、複数の処理モジュールを、管理テーブル（処理モジュールテーブル）１６１を用いて管理する。管理テーブル１６１には、複数の処理モジュール１７０が設定されている。
【００６５】
次に、本発明の第１の実施の形態における構造化文書処理システム１００の動作について説明する。図２は、構造化文書処理システム１００が実行する構造化文書データ処理の例を示すフローチャートである。
【００６６】
構造化文書データ処理において、文書データが入力すると、まず、入出力部１１０は、入力した処理対象の文書データを文書記憶部１３０に記憶させる（ステップＳ１１０）。
【００６７】
処理対象の文書データが文書記憶部１３０に記憶されると、使用モジュール決定部１２０は、処理モジュール管理部１６０によって管理されている処理モジュールテーブル１６１に格納されている処理モジュール１７０の中から、文書記憶部１３０に格納された文書データの処理に使用する処理モジュールを決定し、その決定結果をモジュール制御部１５０に出力する（ステップＳ１１１）。
【００６８】
なお、使用モジュール決定部１２０は、ステップＳ１１１にて、あらかじめ定められている条件に従って、文書データの処理に用いる処理モジュールを決定する。例えば、文書データの送信元によって文書データの処理に用いる処理モジュールがあらかじめ定められている場合には、使用モジュール決定部１２０は、文書記憶部１３０に格納された文書データの送信元を確認し、その送信元に応じて文書データの処理に用いる処理モジュールを決定する。
【００６９】
使用する処理モジュールの決定結果を受信すると、モジュール制御部１５０は、ステップＳ１１０にて文書記憶部１３０に格納された処理対象の文書データのデータ形式と、次に処理を実行する処理モジュールが要求するデータ形式とが一致するかどうかを調べる（ステップＳ１１２）。
【００７０】
すなわち、本例では、処理モジュールテーブル１６１に格納されている各処理モジュール１７０には、それぞれ、処理対象とすることができるデータ形式が対応付けされている。つまり、「処理モジュールが要求するデータ形式」とは、処理対象とすることができるデータ形式として処理モジュールにあらかじめ対応付けされているデータ形式である。
【００７１】
ステップＳ１１２にてデータ形式が一致しない場合には、モジュール制御部１５０は、データ形式変換部１４０に処理対象の文書データを出力し、文書データのデータ形式を、次に処理を実行する処理モジュールが要求するデータ形式に変換させる（ステップＳ１１３）。
【００７２】
データ形式変換部１４０からデータ形式が変換された文書データを受けると、モジュール制御部１５０は、受け取った文書データを文書記憶部１３０に記憶する。
【００７３】
なお、ステップＳ１１２にてデータ形式が一致した場合には、モジュール制御部１５０は、文書データのデータ形式を変換させることなく、そのまま文書記憶部１３０に記憶させておく。
【００７４】
次いで、モジュール制御部１５０は、文書記憶部１３０に格納された文書データを次に処理を実行する処理モジュールに渡し、その処理モジュールを呼び出し、処理結果を文書記憶部１３０に格納する（ステップＳ１１４）。なお、「処理モジュールを呼び出す」とは、処理モジュールに処理の実行指示を与えることを意味する。
【００７５】
また、モジュール制御部１５０は、ステップＳ１１１にて決定された使用する処理モジュールのうち、ステップＳ１１２の判定等の処理を未だ行っていない残りの処理モジュールがあれば、ステップＳ１１２に移行する（ステップＳ１１５）。
【００７６】
上記のようにして、ステップＳ１１１にて決定された使用する全ての処理モジュールについて、ステップＳ１１２〜ステップＳ１１４の処理を順次行う。
【００７７】
全ての処理モジュールについての処理を終えると、入出力部１１０は、文書記憶部１３０に格納された処理結果を示す文書データを出力する（ステップＳ１１６）。このとき、文書記憶部１３０に格納されている処理結果の文書データが送信用のデータ形式でない場合には、出力する前に、データ形式変換部１４０を使用して送信用のデータ形式に変換する。
【００７８】
なお、ステップＳ１１６では、例えば、入出力部１１０は、文書データの送信元に処理結果の文書データを送信する。
【００７９】
以上に説明したように、第１の実施の形態では、モジュール制御部１５０が、複数の異なるデータ形式を要求する処理モジュールに処理を実行させる際に、必要な場合にのみデータ形式変換部１４０にデータ形式を変換させる制御を行う構成としたので、不必要なデータ形式の変換処理が実行されることを回避することができ、データ形式変換処理の負荷を軽減することができる。
【００８０】
すなわち、処理モジュールが要求するデータ形式と構造化文書データのデータ形式が異なるときにデータ形式の変換処理を行う構成としたので、使用する処理モジュールを動的に決定して構造化文書データを処理するシステムにおいて、各処理モジュールが複数の異なるデータ形式を要求する場合に、構文解析・データ形式変換を最小限に抑えることができ、処理効率を向上させることができる。
【００８１】
モジュール制御部１５０が、異なるデータ形式を要求する複数種類の処理モジュールを制御する機能を有し、処理モジュールが必要なデータ形式を宣言し、処理モジュールが必要とするときにだけデータ形式の変換処理を行う構成としているので、各処理モジュールが重複して同じデータ形式の変換処理を行ったりすることが回避され、かつ、また必要のない場合にデータ形式の変換処理が実行されるようなことも回避される。
【００８２】
実施の形態２．
次に、本発明の第２の実施の形態について説明する。
第２の実施の形態における構造化文書処理システムは、上述した図１に示した構造化文書処理システム１００と同様の構成であるため、図１の構造化文書処理システム１００を参照して説明することとし、その詳細な説明は省略する。
【００８３】
この例では、モジュール制御部１５０は、処理モジュールに処理を実行させる前に、あらかじめ、各処理モジュールが必要とするデータ形式を確認し、全体としてのデータ形式変換負荷が小さくなるように、処理モジュールの実行順序を変更する処理を行う。
【００８４】
次に、本発明の第２の実施の形態における構造化文書処理システムの動作について説明する。図３は、この例における構造化文書処理システム１００が実行する構造化文書データ処理の例を示すフローチャートである。
【００８５】
構造化文書データ処理において、上述したステップＳ１１０〜ステップＳ１１１の処理を行ったあと、モジュール制御部１５０は、ステップＳ１１１にて設定された使用する各処理モジュールが必要とするデータ形式をまとめて確認し、全体としてのデータ形式変換負荷が小さくなるように、処理モジュールの実行順序を決定する（ステップＳ１２１）。
【００８６】
例えば、ステップＳ１１１にて、データ形式Ａを要求する処理モジュールａおよび処理モジュールｃと、データ形式Ｂを要求する処理モジュールｂとが、使用する処理モジュールとして決定されたとする。この場合、処理モジュールａ、処理モジュールｂ、処理モジュールｃの順番で処理を行うと、データ形式Ａに変換したあとデータ形式Ｂに変換し、その後にまたデータ形式Ａに変換することになる。しかし、処理モジュールａ、処理モジュールｃ、処理モジュールｂの順番で処理を行うと、データ形式Ａに変換し、処理モジュールａおよび処理モジュールｃが処理を終えたあとにデータ形式Ｂに変換するだけでよい。
【００８７】
従って、上記の場合、ステップＳ１２１では、モジュール制御部１５０は、全体としてのデータ形式変換負荷が最も小さくなるように（例えば、データ形式変換処理の回数が最も少なくなるように）、処理モジュールａ、処理モジュールｃ、処理モジュールｂの順番で処理を行うように実行順序を決定する。
【００８８】
なお、モジュール制御部１５０による処理モジュールの実行順序の決定は、例えば、使用する各処理モジュールの組合せと実行順序との対応付けがあらかじめ設定された実行順序決定用テーブルを用いて行うようにすればよい。また、モジュール制御部１５０が、使用する各処理モジュールの組合せから全ての実行順序についてのデータ形式変換処理の回数を算出し、データ形式変換処理の回数が最も少ない算出結果となった実行順序とすることに決定する処理を行うようにしてもよい。
【００８９】
次いで、モジュール制御部１５０は、ステップＳ１２１にて決定された順番で、ステップＳ１１１にて決定された使用する全ての処理モジュールについて、ステップＳ１１２〜ステップＳ１１４の処理を行う。
【００９０】
そして、上述したステップＳ１１６と同様にして、文書記憶部１３０に格納された処理結果の文書データを送信する。
【００９１】
以上に説明したように、第２の実施の形態では、処理モジュールによる処理を行う前に、データ形式変換処理の回数が最も少なくなる順序に処理モジュールの実行順序を決定する構成としたので、データ形式変換処理の全体としての負荷を軽減させることができ、実行効率をさらに向上させることができる。
【００９２】
実施の形態３．
次に、本発明の第３の実施の形態について説明する。
第３の実施の形態における構造化文書処理システムは、上述した図１に示した構造化文書処理システム１００と同様の構成であるため、図１の構造化文書処理システム１００を参照して説明することとし、その詳細な説明は省略する。
【００９３】
この例では、上述した第２の実施の形態と同様に、モジュール制御部１５０は、処理モジュールに処理を実行させる前に、あらかじめ、各処理モジュールが要求するデータ形式を確認し、全体としてのデータ形式変換負荷が小さくなるように、処理モジュールの実行順序を決定する処理を行う。
【００９４】
ただし、この例では、各処理モジュール間に実行順序の制約が存在するものとし、モジュール制御部１５０が、上述した図３のステップＳ１２１にて実行順序を決定する際に、実行順序の制約を取得し、これに違反しない範囲で変更するものとする。
【００９５】
この場合、モジュール制御部１５０は、順序制約を示す情報を、例えば各処理モジュールから取得する。すなわち、例えば、他の特定の処理モジュールよりも先または後に実行する必要があることを、順序制約として該当する処理モジュールに設定しておくようにすればよい。なお、例えば順序制約が設定されたテーブルを設けるなどして、順序制約を示す情報を処理モジュールとは独立のルールとして設定しておくようにしてもよい。
【００９６】
以上に説明したように、第３の実施の形態では、各処理モジュールについて順序制約を設定する構成としたので、実行する順序の制約を遵守したまま、実行効率をあげることができる。
【００９７】
実施の形態４．
次に、本発明の第４の実施の形態について説明する。
図４は、本発明の第４の実施の形態における構造化文書処理システム２００の構成の例を示すブロック図である。なお、図４において、上述した図１に示した構造化文書処理システム１００と同様の構成をなす部分については、同一の符号を付与してその詳細な説明を省略する。
【００９８】
図４に示すように、構造化文書処理システム２００は、入出力部１１０と、使用モジュール決定部１２０と、文書記憶部１３０と、データ形式変換モジュール管理部２４０と、モジュール制御部１５０と、処理モジュール管理部１６０とを含む。
【００９９】
データ形式変換モジュール管理部２４０は、上述したデータ形式変換部１４０の機能をデータ形式変換機能毎にモジュール化した変換モジュール１８０を管理する。
【０１００】
複数の変換モジュール１８０は、データ形式変換モジュール管理部２４０によって管理される変換モジュールテーブル２４１に設定されている。
【０１０１】
この例の構造化文書処理システム２００は、図２を参照して上述した処理と同様にして、構造化文書データ処理を行う。
【０１０２】
ただし、この例では、データ形式の変更処理（ステップＳ１１３）にて、データ形式変換モジュール管理部２４０が、モジュール制御部１５０の制御にもとづいて、変換モジュールテーブル２４１に設定されているデータ形式の変換処理を実行する変換モジュール１８０を取り出し、取り出した変換モジュール１８０にデータ形式の変換処理を実行させる点で、図２に示した処理と異なっている。
【０１０３】
以上に説明したように、第４の実施の形態では、データ形式の変換を行う機能をモジュール化した変換モジュール１８０を用いる構成としたので、変換モジュール１８０の追加や変更などを容易に行うことができる。従って、システム２００内で新規のデータ形式により処理を行う必要がある処理モジュールを取り扱うことになった場合であっても、新規のデータ形式に関わる変換処理を実行する新規の変換モジュールを容易に追加することができるため、容易に対応することができる。
【０１０４】
実施の形態５．
次に、本発明の第５の実施の形態について説明する。
第５の実施の形態における構造化文書処理システムは、上述した図１に示した構造化文書処理システム１００と同様の構成であるため、図１の構造化文書処理システム１００を参照して説明することとし、その詳細な説明は省略する。
【０１０５】
この実施の形態では、各処理モジュールに、次に実行すべき処理モジュールを特定するためのインターフェイスが設定され、各処理モジュールによる処理が一連で実行される。
【０１０６】
次に、本発明の第５の実施の形態における構造化文書処理システムの動作について説明する。図５は、この例における構造化文書処理システム１００が実行する構造化文書データ処理の例を示すフローチャートである。
【０１０７】
構造化文書データ処理において、上述したステップＳ１１０〜ステップＳ１１１の処理を行ったあと、モジュール制御部１５０は、実行する全処理モジュールの実行順序リストを作成する（ステップＳ１２１）。
【０１０８】
ステップＳ１２１では、例えば図６（Ａ）に示すように、各処理モジュールが実行順序に従って配列された実行順序リストが作成される。
【０１０９】
ここでは、図６（Ａ）に示すように、データ形式ａを要求する処理モジュールＡ、データ形式ａを要求する処理モジュールＢ、データ形式ｂを要求する処理モジュールＣ、データ形式ｘを要求する処理モジュールＤの順番で処理が実行されるものとする。また、ここでは、システム１００によって送受される文書データのデータ形式は、データ形式ｘであるものとする。
【０１１０】
次いで、モジュール制御部１５０は、ステップＳ１１０にて文書記憶部１３０に格納された文書データのデータ形式（最初に実行する処理モジュールの場合）あるいは前の処理モジュールによる処理後のデータ形式（２番目以降に実行する処理モジュールの場合）と、次に処理を行う処理モジュールが要求するデータ形式とが一致するかどうかを調べる（ステップＳ１３１）。
【０１１１】
データ形式が一致しない場合には、モジュール制御部１５０は、次に処理を行う処理モジュールが要求するデータ形式に変換するための変換処理をデータ形式変換部１４０に実行させるための処理モジュール、あるいは、次に処理を行う処理モジュールが要求するデータ形式に変換するための変換モジュール１８０に変換処理を実行させるための処理モジュールを、実行順序リストにおける次に処理を行う処理モジュールの前に挿入する（ステップＳ１３２）。
【０１１２】
次いで、モジュール制御部１５０は、ステップＳ１１１にて決定された使用する処理モジュールのうち、ステップＳ１３１の判定等の処理を未だ行っていない残りの処理モジュールがあれば、ステップＳ１３１に移行する（ステップＳ１１５）。すなわち、ステップＳ１１１にて決定された使用する全ての処理モジュールについて、ステップＳ１３１〜ステップＳ１３２の処理を行う。
【０１１３】
ステップＳ１３１〜ステップＳ１３２の繰り返し処理によって、モジュール制御部１５０が、各処理モジュールの次に実行すべき処理モジュールが設定された実行順序リストが作成される。
【０１１４】
図６（Ｂ）は、ステップＳ１２１にて図６（Ａ）に示す実行順序リストが作成された場合に、ステップＳ１３１〜ステップＳ１３２の繰り返し処理によって作成される実行順序リストの例を示す説明図である。
【０１１５】
図６（Ｂ）に示すように、ステップＳ１３１〜ステップＳ１３２の繰り返し処理によって、処理モジュールＡの前にデータ形式ｘをデータ形式ａに変換するための処理モジュールＫが設定され、処理モジュールＣの前にデータ形式ａをデータ形式ｂに変換するための処理モジュールＬが挿入され、処理モジュールＤの前にデータ形式ｂをデータ形式ｘに変換するための処理モジュールＭが挿入される。
【０１１６】
次いで、モジュール制御部１５０は、ステップＳ１３１〜ステップＳ１３２の繰り返し処理によって作成された実行順序リストにもとづいて、次の順番のモジュールの実行指示を行うための実行指示情報を、次の順番のモジュールが存在する各モジュールに付加する。すなわち、最後に実行されるモジュール以外の各モジュールに、自己の処理の終了後に次の順番のモジュールに実行指示を与えるためのインターフェースを付加する。
【０１１７】
そして、モジュール制御部１５０は、実行順序リストにもとづいて、最初のモジュールを呼び出す（ステップＳ１３３）。すなわち、実行順序リストに配列されている最初のモジュールに実行指示を与える。
【０１１８】
各モジュールは、自己の処理の一部または全部が終了すると、実行指示情報にもとづいて、順次、次のモジュールを呼び出す。従って、最初のモジュールに実行指示を与えたあとは、実行順序リストに配列されている順番で各モジュールによる処理が順次進行する。
【０１１９】
ただし、上記の各モジュールでの一連の処理の途中で、例えば署名検証に失敗したときなどの処理を継続することができなくなった場合や、処理を継続する必要がなくなった場合などには、次のモジュールを呼び出さずにモジュール制御部１５０に制御を戻すなどして、処理を中止するようにしてもよい。
【０１２０】
各モジュールによって処理が行われた文書データは、文書記憶部１３０に記憶される。そして、上述したステップＳ１１６と同様にして、文書記憶部１３０に格納された処理結果の文書データを送信する。
【０１２１】
以上に説明したように、第５の実施の形態では、データ変換処理用のモジュールを含めた実行順序リストに従って、各モジュールによって処理が順次実行されるように構成としたので、モジュールでの処理が終わるたびにモジュール制御部１５０に制御を戻す必要をなくすことができる。
【０１２２】
従って、モジュール制御部１５０は、最初の処理モジュールを呼び出した後すべての処理モジュールの処理が終了するまで、それらの処理に関する制御を行う必要がなくなるため、その間に別の文書データの処理を行うことができ、処理効率を上げることができる。
【０１２３】
また、文書データ全体の処理が完了する前であっても、部分的に次の処理モジュールに文書データの一部を渡すことができる。例えば、文書データが１０行からなる文書を示す場合、このうちの３行分の処理が終わった段階でその３行分を次の処理モジュールに渡し、残りの７行分の処理が終わったあとにその７行分を渡すような処理を行うことができる。このように、複数の処理モジュールを同時に実行することができるので、実行効率を上げることができるようになる。
【０１２４】
実施の形態６．
次に、本発明の第６の実施の形態について説明する。
図７は、本発明の第６の実施の形態における構造化文書処理装置３００の構成の例を示すブロック図である。なお、図７において、上述した図１に示した構造化文書処理システム１００と同様の構成をなす部分については、同一の符号を付与してその詳細な説明を省略する。
【０１２５】
図７に示すように、構造化文書処理装置３００は、通信装置２１０と、使用モジュール決定部１２０と、文書記憶部１３０と、データ形式変換部１４０と、モジュール制御部１５０と、処理モジュール管理部１６０とを含む。
【０１２６】
構造化文書処理装置３００には、上述した構造化文書処理システム１００の入出力部１１０に代わって要求文書データと返答文書データを扱う入出力装置である通信装置２１０が備えられた構成とされている。
【０１２７】
次に、本発明の第６の実施の形態における構造化文書処理装置３００の動作について説明する。図８は、この例における構造化文書処理装置３００が実行する構造化文書データ処理の例を示すフローチャートである。
【０１２８】
構造化文書データ処理において、要求文書データ（リクエスト）が入力すると、まず、通信装置２１０は、入力した処理対象の要求文書データを文書記憶部１３０に記憶させる（ステップＳ１４１）。
【０１２９】
要求文書データを文書記憶部１３０に格納すると、図２に示した処理と同様に、使用モジュール決定部１２０が、文書記憶部１３０に格納された要求文書データの処理に使用する処理モジュールを決定し、その決定結果をモジュール制御部１５０に出力する（ステップＳ１１１）。なお、この例では、返答文書データの処理の際に利用するため、要求文書データの処理に使用する処理モジュールの決定結果を一時的に保存しておく。
【０１３０】
次いで、使用すると決定された各処理モジュールに処理を実行させるモジュール適用処理を行う（ステップＳ１４２）。具体的には、ステップＳ１４２では、図２に示したステップＳ１１２〜ステップＳ１１５の処理が実行される。
【０１３１】
全ての処理モジュールについての処理を終えると、通信装置２１０は、文書記憶部１３０に格納された処理結果を示す要求文書データを、要求文書データの受取先に向けて出力する（ステップＳ１４３）。要求文書データの受取先は、例えば、要求文書データに設定されるようにしてもよく、要求文書データの送信元に対する受取先があらかじめシステム３００に登録されるようにしてもよい。
【０１３２】
要求文書データを送信したあと、その要求文書データに対する返答文書データ（レスポンス）が入力すると、通信装置２１０は、入力した処理対象の返答文書データを文書記憶部１３０に記憶させる（ステップＳ１４４）。
【０１３３】
返答文書データを文書記憶部１３０に格納すると、使用モジュール決定部１２０が、文書記憶部１３０に格納された返答文書データの処理に使用する処理モジュールを決定し、その決定結果をモジュール制御部１５０に出力する（ステップＳ１１１）。なお、ここでは、使用モジュール決定部１２０が、返答文書データの処理の際に使用することに決定し保存した処理モジュールの情報を利用して、要求文書データの処理に使用した処理モジュールを、返答文書データの処理に使用する処理モジュールとすることに決定する。
【０１３４】
次いで、使用すると決定された各処理モジュールに処理を実行させるモジュール適用処理を行う（ステップＳ１４５）。具体的には、ステップＳ１４５では、図２に示したステップＳ１１２〜ステップＳ１１５の処理が実行される。
【０１３５】
全ての処理モジュールについての処理を終えると、通信装置２１０は、文書記憶部１３０に格納された処理結果を示す返答文書データを、対応する要求文書データの送信元に向けて出力する（ステップＳ１４６）。
【０１３６】
上記のように、この実施の形態では、上述した第１の実施の形態にて説明した処理動作を、要求文書データの受信時と返答文書データの受信時とで２回実行する。ただし、要求文書データに対して使用した処理モジュールの情報を保持しておき、返答文書データに対して使用する処理モジュールを決定するときは、保持されている要求文書データに対して使用した処理モジュールの情報を使用して決定するようにしている。
【０１３７】
具体的には、要求文書データに対して使用した暗号化・復号化処理モジュールを保存しておき、要求文書データに応じて返答された返答文書データに対して保存している暗号化・復号化処理モジュールを使用することなどが考えられる。要求文書データと、その要求文書データに応じて返答された返答文書データとは関連性を持つため、暗号化・復号化処理を同じ処理モジュールで行うことができる。
【０１３８】
以上に説明したように、第６の実施の形態では、要求文書データで使用した処理モジュールを保存し、その要求文書データに応じた返答文書データの処理時に、使用モジュール決定部１２０が、要求文書データで使用した処理モジュールを使用することに決定する構成としたので、返答文書データの処理に使用する処理モジュールとして、対応する要求文書データで使用した処理モジュールとすることに決定することができ、要求文書データの処理時に取得した情報を返答文書データの受信時に利用することができる。また、簡単な構成で返答文書データの処理に使用する適切な処理モジュールを決定することができる。
【０１３９】
実施の形態７．
次に、本発明の第７の実施の形態について説明する。
第７の実施の形態における構造化文書処理装置は、上述した図７に示した構造化文書処理装置３００と同様の構成であるため、図７の構造化文書処理装置３００を参照して説明することとし、その詳細な説明は省略する。
【０１４０】
次に、本発明の第７の実施の形態における構造化文書処理装置３００の動作について説明する。図９は、この例における構造化文書処理装置３００が実行する構造化文書データ処理の例を示すフローチャートである。
【０１４１】
構造化文書データ処理において、要求文書データ（リクエスト）が入力すると、まず、通信装置２１０は、入力した処理対象の要求文書データを文書記憶部１３０に記憶させる（ステップＳ１４１）。
【０１４２】
要求文書データを文書記憶部１３０に格納すると、図２に示した処理と同様に、使用モジュール決定部１２０が、文書記憶部１３０に格納された要求文書データの処理に使用する処理モジュールを決定し、その決定結果をモジュール制御部１５０に出力する（ステップＳ１１１）。なお、この例では、返答文書データの処理の際に利用するため、要求文書データの処理に使用する処理モジュールの決定結果を記憶媒体に保存しておく。
【０１４３】
次いで、使用すると決定された各処理モジュールに処理を実行させるモジュール適用処理を行う（ステップＳ１４２）。具体的には、ステップＳ１４２では、図２に示したステップＳ１１２〜ステップＳ１１５の処理が実行される。
【０１４４】
全ての処理モジュールについての処理を終えると、通信装置２１０は、文書記憶部１３０に格納された処理結果を示す要求文書データを、要求文書データの受取先に向けて出力する（ステップＳ１４３）。要求文書データの受取先は、例えば、要求文書データに設定されるようにしてもよく、要求文書データの送信元に対する受取先があらかじめシステム３００に登録されるようにしてもよい。
【０１４５】
要求文書データを送信したあと、その要求文書データに対する返答文書データ（レスポンス）が入力すると、通信装置２１０は、入力した処理対象の返答文書データを文書記憶部１３０に記憶させる（ステップＳ１４４）。
【０１４６】
次いで、返答文書データの処理にて、要求文書データの処理に使用した各処理モジュールに処理を実行させるモジュール適用処理を行う（ステップＳ１４５）。具体的には、ステップＳ１４５では、図２に示したステップＳ１１２〜ステップＳ１１５の処理が実行される。ここでは、要求文書データの処理に使用した処理モジュールを、返答文書データの処理の際に使用する。
【０１４７】
全ての処理モジュールについての処理を終えると、通信装置２１０は、文書記憶部１３０に格納された処理結果を示す返答文書データを、対応する要求文書データの送信元に向けて出力する（ステップＳ１４６）。
【０１４８】
上記のように、この実施の形態では、図８に示した処理においてステップＳ１４５の前のステップＳ１１１で返答文書データの処理に使用する処理モジュールを決定していた部分を省き、その代わりに要求文書データの処理に使用した処理モジュールを示す情報を保存しておき、そのまま同じものを返答文書データの処理に使用する。
【０１４９】
なお、モジュール制御部１５０が処理する文書データが要求文書データであるか返答文書データであるかの情報を、呼び出される処理モジュールに提供するようにしてもよい。このように構成すれば、呼び出される処理モジュールが、保存対象であるのか否か認識することができるようになる。
【０１５０】
以上に説明したように、第７の実施の形態では、要求文書データの処理に使用した処理モジュールを、返答文書データの処理の際にそのまま使用する構成としたので、要求文書データの処理時に取得した情報をそのまま返答文書データの受信時に利用することができ、使用モジュール決定部１２０による使用する処理モジュールの決定処理を省略することができる。また、簡単な構成で、適切な処理モジュールによる返答文書データの処理を行うことができる。
【０１５１】
また、第７の実施の形態では、返答文書データに対して使用する処理モジュールの決定処理を省略する構成としたので、実行効率を上げることができる。
【０１５２】
また、モジュール制御部１５０が処理する文書データが要求文書データであるか返答文書データであるかの情報を処理モジュールに提供する構成とすれば、処理モジュールがそれぞれに適切な処理を実行することができるようになる。
【０１５３】
なお、上述した実施の形態では特に言及していないが、処理モジュールや変換モジュールが、構造化文書処理システム１００，２００や構造化文書処理装置３００外の外部装置に格納されていてもよい。この場合、モジュール制御部１５０が、外部装置に格納されている処理モジュールや変換モジュールに通信ネットワーク（例えばインターネット、公衆回線、専用回線、無線通信回線）を介して実行指示を行うようにすればよい。
【０１５４】
なお、上述した各実施の形態では特に言及していないが、上述した各実施の形態における構造化文書処理システム１００，２００や構造化文書処理装置３００での各種の制御処理は、構造化文書データ処理を実行させるための構造化文書処理プログラム５２０に従って実行されている。
【０１５５】
図１０は、上述した構造化文書データ処理を実行させるための構造化文書処理プログラム５２０と、構造化文書処理プログラム５２０によって動作されるデータ処理装置５１０とを含むブロック図である。なお、図１０には、文書記憶部１３０と、処理モジュール管理部１６０と、データ形式変換モジュール管理部２４０とを含む記憶装置５３０が記載されている。また、入出力部１１０も表れている。
【０１５６】
データ処理装置５１０は、上述した第１〜第７に実施の形態における構造化文書処理システム１００，２００や構造化文書処理装置３００にて各種の制御処理を実行する部分をまとめて示す制御手段である。
【０１５７】
構造化文書処理プログラム５２０は、データ処理装置５１０に上述した各種の処理を実行させるための制御プログラムであり、例えばデータ処理装置５１０に搭載されている。
【０１５８】
データ処理装置５１０は、構造化文書処理プログラム５２０に従って、記憶装置５３０への情報の書き込みや記憶装置５３０からの情報の読み出しを行う他、上述した第１〜第７に実施の形態にて説明した各種の制御を実行する。
【０１５９】
なお、上述した各実施の形態においては特に言及していないが、処理モジュール、データ形式変換部１４０、データ形式変換モジュールに対して、文書データそのものではなく文書記憶部１３０上の文書データへの参照ポインタ（格納アドレス）を渡し、各モジュール、データ形式変換部１４０が文書記憶部１３０上の文書データを直接処理するようにしてもよい。
【０１６０】
また、上述した各実施の形態においては特に言及していないが、処理モジュールおよびデータ形式変換モジュールは、ＲＰＣ（Remote Procedure Call）やＲＭＩ（Remote Method Invocation）、ｉＣＡＰ（Internet Content Adaptation Protocol）などの既存の遠隔モジュール呼出技術を利用してもよい。
【０１６１】
また、上述した実施の形態において、入出力部１１０および通信装置２１０が、通信ネットワークに対する入出力を処理するように構成されていてもよい。
【０１６２】
さらに、上述した実施の形態では特に言及していないが、文書データには、例えばＸＭＬ文書データなどの構造化文書データが用いられる。
【実施例１】
【０１６３】
次に、本発明の第１の具体的実施例について説明する。
図１１は、本実施例の構造化文書処理装置を示すブロック図である。本実施例の構造化文書処理装置は、ＨＴＴＰ（HyperText Transfer Protocol）を用いてＸＭＬ文書を交換するデータ通信の中継を行う通信中継装置４００である。
【０１６４】
図１１に示すように、通信装置としてＨＴＴＰのサーバとクライアントの機能を持ったＨＴＴＰ送受信部３１０を備えている。すなわち、ＨＴＴＰ送受信部３１０は、要求文書データを受け付けて返答文書データを返信するＨＴＴＰサーバとしての機能と、要求文書データを他のサーバに発行して返答文書データを受け取るＨＴＴＰクライアントとしての機能とを有している。なお、ＨＴＴＰ送受信部３１０は、入出力形式として文字列形式を扱う。
【０１６５】
この例では、使用モジュール決定部１２０は、クライアントのアドレスと宛先ＵＲＬとにもとづいて、使用する処理モジュールを決定するものとする。
【０１６６】
また、処理モジュール管理部１６０の管理テーブル１６１には、処理モジュールとして、データの入出力形式としてＳＡＸ形式の文書データを処理するロギングモジュール１７５、同じくＳＡＸ形式の文書データを処理する署名検証モジュール１７１、ＤＯＭ形式の文書データを処理するＸＭＬ署名モジュール１７２、同じくＤＯＭ形式の文書データを処理するＸＭＬ暗号化・復号化モジュール１７３、文字列形式の文書データを処理する経路変更モジュール１７４が登録されているものとする。
【０１６７】
なお、この例では、順序制約として、「ＸＭＬ署名モジュール１７２は、ＸＭＬ暗号化・復号化モジュール１７３よりも先に実行しなければならない」とあらかじめ定められているとする。
【０１６８】
データ形式変換モジュール管理部２４０には、データ形式変更モジュールとして、文字列形式とＳＡＸ形式とを相互に変換する文字列−ＳＡＸ変換モジュール１８１、ＳＡＸ形式とＤＯＭ形式とを相互に変換するＳＡＸ−ＤＯＭ変換モジュール１８２、ＤＯＭ形式と文字列形式とを相互に変換するＤＯＭ−文字列変換モジュール１８３が登録されているものとする。
【０１６９】
なお、ＤＯＭ形式は、ＸＭＬ文書を木構造のオブジェクトとして扱う形式であり、ＳＡＸ形式は、ＸＭＬ文書を開始タグや終了タグといったイベントの列として扱う形式である。
【０１７０】
ＤＯＭ形式は、Ｗ３Ｃ（WWWコンソーシアム）と呼ばれる標準化団体によって規格化された形式であり、インターネット＜http://w3.org/TR/DOM-Level-2-Core/＞に仕様書が掲載されている。
【０１７１】
また、ＳＡＸ形式は、イベントベースのＸＭＬ解析のための標準インターフェースとして開発されたものであり、インターネット＜http://java.sun.com/j2se/1.4/ja/docs/ja/api/org/xml/sax/package-summary.html＞に実装マニュアルが掲載されている。
【０１７２】
以下に、本実施例における通信中継装置４００が実行する構造化文書データ処理の例について説明する。なお、以下に示す構造化文書データ処理は、上述した図９に示した処理に対応している。
【０１７３】
この例では、ＨＴＴＰ送受信部３１０は、クライアントからのリクエストＸＭＬ文書（要求文書データ）を受け取ると、要求元の情報、ＨＴＴＰヘッダの情報などとともに、要求文書データをメモリ上の文書記憶部１３０に格納する（ステップＳ１４１参照）。
【０１７４】
次に、使用モジュール決定部１２０は、使用する処理モジュールを決定する（ステップＳ１１１参照）。ここでは使用モジュール決定部１２０により、ＸＭＬ署名モジュール１７２、ＸＭＬ暗号化・復号化モジュール１７３、経路変更モジュール１７４を使用することに決定されたとする。
【０１７５】
モジュール制御部１５０は、文書記憶部１３０に保存されている文書データと出力に必要なデータ形式が文字列形式であること、各処理モジュール１７２，１７３，１７４が要求するデータ形式、および処理モジュールの実行順序制約から、順序制約を満たしながらデータ形式変換回数が最少になるように、ＸＭＬ署名モジュール１７２、ＸＭＬ暗号化・復号化モジュール１７３、経路変更モジュール１７４の順に実行することを決定する（ステップＳ１２１参照）。
【０１７６】
なお、データ形式変換回数が最少となるように実行順序を決定するのではなく、全体の処理時間が最少（最短）となるように実行順序を決定するようにしてもよい。例えば、文字列形式からＳＡＸ形式へのデータ変換に要する時間よりも、文字列形式からＤＯＭ形式へのデータ変換に要する時間の方が長くかかる。このように、各データ形式相互間のデータ変換に要するそれぞれの時間が異なるため、想定され得る全ての実行順序について処理に要する予測時間を算出し、最も処理時間が短い実行順序とするようにしてもよい。
【０１７７】
実行順序が決定されると、モジュール制御部１５０は、まず、現在文書記憶部１３０に格納されている文書データが文字列形式で、ＸＭＬ署名モジュール１７２が要求するデータ形式がＤＯＭ形式なので、データ形式変換モジュール管理部２４０からＤＯＭ−文字列変換モジュール１８３を取得し、文書記憶部１３０に格納されている文書をＤＯＭ形式に変換する（ステップＳ１１２，Ｓ１１３参照）。
【０１７８】
次いで、ＸＭＬ署名モジュール１７２に処理を実行させる（ステップＳ１１４参照）。また、次の実行順序のＸＭＬ暗号化モジュール１７３に処理を実行させる（ステップＳ１１５のＹ，Ｓ１１２のＮ，Ｓ１１４参照）。なお、文書記憶部１３０にはすでにＤＯＭ形式の文書データが格納されているので、ＸＭＬ暗号化モジュール１７３の処理の前には、データ形式の変換処理は実行されない。
【０１７９】
さらに、経路変更モジュール１７４が文字列形式を要求するので、ＤＯＭ−文字列変換モジュール１８３を使用して文書記憶部１３０に記憶されている文書データを文字列形式に変換し、経路変更モジュール１７４を実行する（ステップＳ１１５のＹ，Ｓ１１２，Ｓ１１３，Ｓ１１４参照）。
【０１８０】
なお、ＨＴＴＰ送受信部３１０は、文字列形式を要求するが、文書記憶部１３０にはすでに文字列形式で格納されているのでデータ形式の変換処理をさらに行う必要はない。
【０１８１】
以上の処理で作成されたリクエストメッセージをＨＴＴＰ送受信部３１０から宛先のサーバに送信し（ステップＳ１４３参照）、そのサーバからのレスポンスを受け取り文書記憶部１３０に保存する（ステップＳ１４４参照）。
【０１８２】
使用モジュール決定部１２０は、レスポンスの処理時にはリクエスト時のクライアントと宛先ＵＲＬ情報からＸＭＬ暗号化・復号化モジュール１７３の使用を決定する（ステップＳ１１１参照）。
【０１８３】
次いで、文書記憶部１３０に保存されている形式は文字列形式なので、ＤＯＭ−文字列変換モジュール１８３を使用してＤＯＭ形式に変換し、ＸＭＬ暗号化・復号化モジュール１７３に復号化処理を実行させる（ステップＳ１１２，Ｓ１１３，Ｓ１１４参照）。
【０１８４】
最後に、ＤＯＭ−文字列変換モジュール１８３を使用して文字列に戻し、ＨＴＴＰ送受信部３１０からクライアントにレスポンスメッセージを返送する（ステップＳ１４６参照）。
【実施例２】
【０１８５】
次に、本発明の第２の具体的実施例について説明する。
ここでは、上述した第１実施例と同様の図１０に示す通信中継装置４００を参照して説明する。
【０１８６】
以下に、本実施例における通信中継装置４００が実行する構造化文書データ処理の例について説明する。なお、以下に示す構造化文書データ処理は、上述した図５に示した処理に対応している。
【０１８７】
ここでは、ＳＡＸ形式を要求する署名検証モジュール１７１およびロギングモジュール１７５を使用すると決定したとする（ステップＳ１１１参照）。
【０１８８】
モジュール制御部１５０は、入出力が文字列形式で、使用するモジュールがＳＡＸ形式なので、文字列−ＳＡＸ変換モジュール１８１（１）、署名検証モジュール１７１、ロギングモジュール１７５、文字列−ＳＡＸ変換モジュール１８１（２）の順に実行することとし、各処理モジュールの次に実行すべき処理モジュールを順次設定した実行順序リストを作成する（ステップＳ１２１，Ｓ１３１，Ｓ１３２，１１５参照）。
【０１８９】
次いで、最初のモジュールである文字列−ＳＡＸ変換モジュール１８１（１）に対して文字列形式の文書データの実行指示を行う（ステップＳ１３３参照）。
【０１９０】
文字列−ＳＡＸ変換モジュール１８１（１）は、文字列形式として与えられたＸＭＬ文書データをＳＡＸ形式に変換し、ＳＡＸ形式のＸＭＬ文書データを次の処理モジュールとして設定された署名検証モジュール１７１に渡す。
【０１９１】
署名検証モジュール１７１は自己の処理が終わると同じＳＡＸ形式のＸＭＬ文書データを次のロギングモジュール１７５に渡す。ロギングモジュール１７５は、必要な情報をログに書き出し、同じＳＡＸ形式のＸＭＬ文書データを次の文字列−ＳＡＸ変換モジュール１８１（２）に渡す。
【０１９２】
文字列−ＳＡＸ変換モジュール１８１（２）では、文字列形式に変換するために一時的にＳＡＸ形式のＸＭＬ文書データを保持する。
【０１９３】
上記の処理をＳＡＸ形式のＸＭＬ文書データ全体が処理されるまで繰り返す。
【０１９４】
続いて、文字列−ＳＡＸ変換モジュール１８１（２）は、ＳＡＸ形式のＸＭＬ文書データ全体から文字列形式のＸＭＬ文書データを生成し、文書記憶部１３０に保存する。
【０１９５】
そして、ＨＴＴＰ送受信部３１０が、文字列形式のＸＭＬ文書データを宛先のサーバに送信する（ステップＳ１１６参照）。
【実施例３】
【０１９６】
次に、本発明の第３の具体的実施例について説明する。
図１２は、本実施例の構造化文書処理装置を示すブロック図である。本実施例の構造化文書処理システムは、入出力部１１０としてファイルへの入出力装置を備え、ファイルに書き込まれたＸＭＬファイルに対して文字列置換とＸＳＬＴ変換を行うＸＭＬ変換装置６００である。
【０１９７】
ここでは、処理モジュールとして、文字列を受け取る文字列置換モジュール１７６、ＤＯＭ形式の文書データを受け取るＸＳＬＴ変換モジュール１７７，１７８が処理モジュール管理部１６０に登録されているとする。
【０１９８】
ＸＭＬ変換装置６００の使用者が図示しないキーボードなどの入力装置を操作し、ＸＭＬ変換装置６００にファイルの位置を与えると、入出力装置１１０は、そのファイルを文書記憶部１３０に読み込む。
【０１９９】
使用モジュール決定部１２０は、ファイルの位置から、文字列置換モジュール１７６による文字列置換のみを行うか、１つのＸＳＬＴ変換モジュール１７７だけ、あるいは２つのＸＳＬＴ変換モジュール１７７、１７８によるＸＳＬＴ変換をも行うかを決定する。
【０２００】
ＸＳＬＴ変換を一切行わない場合には、モジュール制御部１５０は、読み込んだ文字列を文字列置換モジュール１７６に渡し、その結果を入出力部１１０から出力する。
【０２０１】
ＸＳＬＴ変換を行う場合には、モジュール制御部１５０は、データ形式変換部１４０を使用してＤＯＭ形式に変換し、１つのＸＳＬＴ変換モジュール１７７だけ、あるいは２つのＸＳＬＴ変換モジュール１７７、１７８を呼び出し、処理が終了すると結果をデータ形式変換部１４０により文字列形式に戻し、入出力装置１１０からファイルに出力する。
【産業上の利用可能性】
【０２０２】
本発明によれば、構造化文書データを処理してメッセージを変換する通信中継装置に適用するのに有用である。また、複数のプラグインを用いて動的に処理内容を変更する構造化文書変換装置に適用することもできる。
【図面の簡単な説明】
【０２０３】
【図１】本発明の第１の実施の形態における構造化文書処理システムの構成例を示すブロック図である。
【図２】本発明の第１の実施の形態における構造化文書データ処理の例を示すフローチャートである。
【図３】本発明の第２の実施の形態における構造化文書データ処理の例を示すフローチャートである。
【図４】本発明の第４の実施の形態における構造化文書処理システムの構成例を示すブロック図である。
【図５】本発明の第５の実施の形態における構造化文書データ処理の例を示すフローチャートである。
【図６】実行順序リストの例を示す説明図である。
【図７】本発明の第６の実施の形態における構造化文書処理装置の構成例を示すブロック図である。
【図８】本発明の第６の実施の形態における構造化文書データ処理の例を示すフローチャートである。
【図９】本発明の第７の実施の形態における構造化文書データ処理の例を示すフローチャートである。
【図１０】構造化文書データ処理を実行させるための構造化文書処理プログラムを含む構成の例を示すブロック図である。
【図１１】第１の実施例の構造化文書処理装置を示すブロック図である。
【図１２】第３の実施例の構造化文書処理装置を示すブロック図である。
【図１３】従来の文書処理システムの例を示すブロック図である。
【符号の説明】
【０２０４】
１００，２００          構造化文書処理システム
１１０                  入出力部
１２０                  使用モジュール決定部１２０
１３０                  文書記憶部
１４０                  データ形式変換部
１５０                  モジュール制御部
１６０                  処理モジュール管理部
１６１                  処理モジュールテーブル
１７０                  処理モジュール
１８０                  変換モジュール
２１０                  通信装置
２４０                  データ形式変換モジュール管理部
２４１                  変換モジュールテーブル
３００                  構造化文書処理装置
３１０                  ＨＴＴＰ送受信部
４００                  通信中継装置
５１０                  データ処理装置
５２０                  構造化文書処理プログラム
５３０                  記憶装置
６００                  ＸＭＬ変換装置
【図１】
2005258782.tif 000003
【図２】
2005258782.tif 000004
【図３】
2005258782.tif 000005
【図４】
2005258782.tif 000006
【図５】
2005258782.tif 000007
【図６】
2005258782.tif 000008
【図７】
2005258782.tif 000009
【図８】
2005258782.tif 000010
【図９】
2005258782.tif 000011
【図１０】
2005258782.tif 000012
【図１１】
2005258782.tif 000013
【図１２】
2005258782.tif 000014
【図１３】
2005258782.tif 000015