(57)【要約】【課題】本発明の課題は、利用者が使用するコンピュータ端末の機種又はオペレーティングシステムに依存することなく、Ｗｅｂサービスの提供を可能とし、他の機器からの処理要求も統一的に処理することが可能となる情報処理装置を提供することを目的とする。【解決手段】本発明の課題は、ネットワークを介して接続された機器からの所定メッセージを交換する第一プロトコルを指定する第一処理リクエスト又は該第一プロトコル以外の第二プロトコルを指定する第二処理リクエストを受信し、該第一プロトコルに従った第一処理レスポンスと該第二プロトコルに従った第二処理レスポンスとを送信するＷｅｂサービス通信制御手段と、プロトコルの異なる上記第一と第二処理リクエストとを受付けて情報処理装置に関する内部情報の処理を共有し、その処理結果を上記Ｗｅｂサービス通信制御手段へ提供するＷｅｂサービス提供処理手段とを有することを特徴とする情報処理装置によって達成される。【選択図】  図２
2004213600.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して接続された機器からの所定メッセージを交換する第一プロトコルを指定する第一処理リクエストと該第一プロトコル以外の第二プロトコルを指定する第二処理リクエストとを受信し、該第一プロトコルに従った第一処理レスポンスと該第二プロトコルに従った第二処理レスポンスとを送信するＷｅｂサービス通信制御手段と、
プロトコルの異なる上記第一処理リクエストと第二処理リクエストとを受付けて情報処理装置に関する内部情報の処理を共有し、その処理結果を上記Ｗｅｂサービス通信制御手段へ提供するＷｅｂサービス提供処理手段とを有することを特徴とする情報処理装置。
【請求項２】
上記Ｗｅｂサービス提供処理手段は、
Ｗｅｂサービスに関する処理を実行するＷｅｂサービス実行手段を有することを特徴とする請求項１記載の情報処理装置。
【請求項３】
複数の上記Ｗｅｂサービス提供処理手段を有し、
上記複数のＷｅｂサービス提供処理手段によって共有可能であって、上記第一プロトコルに従って上記メッセージを制御するプロトコル処理手段とを有することを特徴とする請求項２記載の情報処理装置。
【請求項４】
上記複数のＷｅｂサービス提供処理手段によって共有可能であって、上記第一処理リクエスト内に所定記述形式に従って記述された上記メッセージを上記Ｗｅｂサービス提供処理手段によって処理可能な形式に変換すると共に、該第一処理リクエストに応じた上記処理結果を該所定記述形式に従って処理する際の同一の処理方法によって上記第二処理リクエストに応じた上記処理結果を該所定記述形式に従って処理する記述形式処理手段を有することを特徴とする請求項３記載の情報処理装置。
【請求項５】
上記Ｗｅｂサービス通信制御手段は、
上記ネットワークを介して、上記機器からの上記第一及び第二処理リクエストの受信及び上記機器への上記第一及び第二処理レスポンスの送信を所定ネットワーク通信プロトコルに従って制御するネットワーク通信制御手段と、
上記第二処理リクエストを処理し、その処理結果に基づいて、上記Ｗｅｂサービス実行手段を実行する処理リクエスト処理手段とを有することを特徴とする請求項４記載の情報処理装置。
【請求項６】
上記Ｗｅｂサービス通信制御手段は、
上記ネットワーク通信制御手段が上記第一処理リクエストを受信した場合、該第一処理リクエストのリクエスト種別を上記第一プロトコルに従って解析し、その解析結果に基づいて上記複数のＷｅｂサービス提供処理手段の一つに上記第一処理リクエストを分配し、上記第二処理リクエストを受信した場合、上記第二処理リクエストのリクエスト種別を解析し、その解析結果に基づいて、上記処理リクエスト処理手段に上記第二処理リクエストを分配する分配手段と、
上記第二処理リクエスト内のＷｅｂサービスを特定する特定情報を解析し、その解析結果に基づいて、該特定情報に対応する上記Ｗｅｂサービス実行手段に処理を振り分ける第二振分手段とを有することを特徴とする請求項３乃至５のいずれか一項記載の情報処理装置。
【請求項７】
上記第一処理リクエスト内のＷｅｂサービスを特定する特定情報を上記第一プロトコルに従って解析し、その解析結果に基づいて、該特定情報によって特性されるＷｅｂサービスを実行する上記Ｗｅｂサービス実行手段に処理を振り分ける第一振分手段を有することを特徴とする請求項６又は７記載の情報処理装置。
【請求項８】
上記複数のＷｅｂサービス提供処理手段の夫々に対応させて複数の上記第一振分手段と複数の上記第二振分手段とを有することを特徴とする請求項７又は８記載の情報処理装置。
【請求項９】
上記Ｗｅｂサービス通信制御手段は、
上記第一処理リクエストに対する同一処理によって上記Ｗｅｂサービス提供処理手段から提供される上記第二処理リクエストに応じた上記処理結果を示す上記第二処理レスポンスを上記表示形式に従って作成する表示形式作成手段を有することを特徴とする請求項４乃至８のいずれか一項記載の情報処理装置。
【請求項１０】
上記表示形式作成手段は、
上記記述形式処理手段によって上記第一処理リクエストに応じた上記処理結果と同様に処理された上記第二処理リクエストに応じた上記処理結果を、上記記述形式の書式スタイルに基づいて、上記表示形式に従った上記処理結果に変換する記述形式変換手段を有することを特徴とする請求項９記載の情報処理装置。
【請求項１１】
ネットワークを介して接続された機器からの所定メッセージを交換する第一プロトコルを指定する第一処理リクエストと該第一プロトコル以外の第二プロトコルを指定する第二処理リクエストとを受信し、該第一処理リクエストに応じた処理結果を示す該第一プロトコルに従った第一処理レスポンスと該第二プロトコルに従った第二処理レスポンスとを送信するＷｅｂサービス通信制御手段と、
プロトコルの異なる上記第一処理リクエストと第二処理リクエストとを受付けて情報処理装置に関する内部情報の処理を共有し、その処理結果を上記Ｗｅｂサービス通信制御手段へ提供するＷｅｂサービス提供処理手段と、
上記Ｗｅｂサービス提供処理手段を構成する上記第一処理リクエストと上記第二処理リクエストとによって共有される少なくとも一つ以上の処理単位を実行することによって上記内部情報を処理し、その処理結果を用いて付加処理を行うことによって上記第一又は第二処理リクエストに応じた上記処理結果を生成し、該処理結果を上記Ｗｅｂサービス通信制御手段へ提供する複合Ｗｅｂサービス提供処理手段とを有することを特徴とする情報処理装置。
【請求項１２】
上記複合Ｗｅｂサービス提供処理手段は、該複合Ｗｅｂサービス提供処理手段における処理単位であって、上記Ｗｅｂサービス提供処理手段の上記処理単位を組み合せて実行する少なくとも一つの複合処理実行手段とを有するこことを特徴とする請求項１１記載の情報処理装置。
【請求項１３】
少なくとも１つの上記処理単位を有する複数の上記Ｗｅｂサービス提供処理手段を有し、
上記複合処理実行手段は、上記複数のＷｅｂサービス提供処理手段の上記処理単位を複数組み合せて上記内部情報を処理することを特徴とする請求項１２記載の情報処理装置。
【請求項１４】
上記第一プロトコルに従って上記第一処理リクエスト及び上記第一処理レスポンスの上記メッセージを制御するプロトコル処理手段と、
上記第一処理リクエスト内に上記所定記述形式に従って記述された上記メッセージを上記Ｗｅｂサービス提供処理手段によって処理可能な形式に変換すると共に、該第一処理リクエストに応じた上記処理結果を該所定記述形式に従って処理する際の同一の処理方法によって上記第二処理リクエストに応じた上記処理結果を該所定記述形式に従って処理する記述形式処理手段とを有し、
上記プロトコル処理手段と上記記述形式処理手段とは、上記複数のＷｅｂサービス提供処理手段及び上記複合Ｗｅｂサービス提供処理手段によって共有されることを特徴とする請求項１３又は１４記載の情報処理装置。
【請求項１５】
上記Ｗｅｂサービス通信制御手段は、
上記ネットワークを介して、上記機器からの上記第一及び第二処理リクエストの受信及び上記機器への上記第一及び第二処理レスポンスの送信を所定ネットワーク通信プロトコルに従って制御するネットワーク通信制御手段と、
上記第二処理リクエストを処理し、その処理結果に基づいて、上記Ｗｅｂサービス実行手段を実行する処理リクエスト処理手段とを有することを特徴とする請求項１１記載の情報処理装置。
【請求項１６】
上記Ｗｅｂサービス通信制御手段は、
上記ネットワーク通信制御手段が上記第一処理リクエストを受信した場合、該第一処理リクエストのリクエスト種別を上記第一プロトコルに従って解析し、その解析結果に基づいて上記複数のＷｅｂサービス提供処理手段の一つに上記第一処理リクエストを分配し、上記第二処理リクエストを受信した場合、上記第二処理リクエストのリクエスト種別を解析し、その解析結果に基づいて、上記処理リクエスト処理手段に上記第二処理リクエストを分配する分配手段と、
上記第二処理リクエスト内のＷｅｂサービスを特定する特定情報を解析し、その解析結果に基づいて、該特定情報に対応する上記Ｗｅｂサービス実行手段に処理を振り分ける第二振分手段とを有することを特徴とする請求項１３乃至１５のいずれか一項記載の情報処理装置。
【請求項１７】
上記第一処理リクエスト内のＷｅｂサービスを特定する特定情報を上記第一プロトコルに従って解析し、その解析結果に基づいて、該特定情報によって特性されるＷｅｂサービスを実行する上記Ｗｅｂサービス実行手段に処理を振り分ける第一振分手段を有することを特徴とする請求項１５又は１６記載の情報処理装置。
【請求項１８】
ネットワークを介して接続された機器からの所定メッセージを交換する第一プロトコルを指定する第一処理リクエストと該第一プロトコル以外の第二プロトコルを指定する第二処理リクエストとを受信し、該第一処理リクエストに応じた処理結果を示す該第一プロトコルに従った第一処理レスポンスと該第二プロトコルに従った第二処理レスポンスとを送信するＷｅｂサービス通信制御手順と、
プロトコルの異なる上記第一処理リクエストと第二処理リクエストとを受付けて情報処理装置に関する内部情報の処理を共有し、その処理結果を上記Ｗｅｂサービス通信制御手順へ提供するＷｅｂサービス提供処理手順とを有することを特徴とする情報処理方法。
【請求項１９】
ネットワークを介して接続された機器からの所定メッセージを交換する第一プロトコルを指定する第一処理リクエストと該第一プロトコル以外の第二プロトコルを指定する第二処理リクエストとを受信し、該第一処理リクエストに応じた処理結果を示す該第一プロトコルに従った第一処理レスポンスと該第二処理レスポンスとを送信するＷｅｂサービス通信制御手順と、
プロトコルの異なる上記第一処理リクエストと第二処理リクエストとを受付けて情報処理装置に関する内部情報の処理を共有し、その処理結果を上記Ｗｅｂサービス通信制御手順へ提供するＷｅｂサービス提供処理手順と、
上記Ｗｅｂサービス提供処理手順を構成する上記第一処理リクエストと上記第二処理リクエストとによって共有される少なくとも一つ以上の処理単位を実行することによって上記内部情報を処理し、その処理結果を用いて付加処理を行うことによって上記第一又は第二処理リクエストに応じた上記処理結果を生成し、該処理結果を上記Ｗｅｂサービス通信制御手段へ提供する複合Ｗｅｂサービス提供処理手順とを有することを特徴とする情報処理方法。
【請求項２０】
ネットワークを介して接続された機器から所定メッセージを交換する第一プロトコルと、該機器にて表示可能な表示形式を指定する第二プロトコルと、該機器との間で取り決めた独自の第三プロトコルとの少なくとも２つ以上に対応可能なＷｅｂサービス通信制御手段と、
上記対応可能な２つ以上のプロトコルによる要求を受付けて画像形成装置に関する内部情報の処理を共有し、その処理結果を上記Ｗｅｂサービス通信制御手段へ提供するＷｅｂサービス提供処理手段とを有することを特徴とする情報処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、利用者が使用するコンピュータ端末に、標準的なＷｅｂサービス対応ソフトウェアをインストールするだけでよく、また、該コンピュータ端末の機種又はオペレーティングシステムに依存することなく、Ｗｅｂサービスの提供を可能とし、他の機器からの処理要求も統一的に処理することが可能となる情報処理装置を提供するものである。
【０００２】
【従来の技術】
近年、コンピュータサーバーによるＡＳＰ（アプリケーション・サービス・プロバイダ）事業の普及により、インターネット等のネットワークを介して種々アプリケーションによるサービスが行われるようになった。このようなＡＳＰによるサービスによって、利用者は、Ｗｅｂブラウザ付きのＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）によって、ネットワークに接続するのみで、手軽にサービスを受けることができるようになった。このようなサービスを受けることによって、利用者が使用するＰＣ毎にアプリケーションを実装する必要がなくなり、システムの開発コスト及び運用コストを削減することができた。
【０００３】
【発明が解決しようとする課題】
上記従来のＡＳＰによるサービスの提供においては、利用者が使用しているＰＣのＷｅｂブラウザ上での利用者の操作に応じて情報を提供することを目的としている。しかしながら、近年、インターネット上の様々なコンピュータに分散されたアプリケーションによるサービスを相互に結び付け幅広いサービスの提供を実現するために、ＳＯＡＰ（Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔｅｄ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ）が提唱されるようになってきた。このような新しいプロトコルに対応するには、従来のＷｅｂブラウザ上での利用者の操作に応じて情報を提供するアプリケーションとは別に、ＳＯＡＰをサポートするアプリケーションの開発をする必要があった。
【０００４】
そこで、本発明の課題は、該コンピュータ端末の機種又はオペレーティングシステムに依存することなく、ネットワークを介してインターネット標準の各種Ｗｅｂプロトコルを利用してアクセス可能なプログラマブルなアプリケーションコンポーネントとして利用できると共に、Ｗｅｂサービスの要求をＷｅｂブラウザから行うことを可能とする情報処理装置を提供することである。また、情報処理装置内又は情報処理装置と他装置間とにおいて、Ｗｅｂサービスが他Ｗｅｂサービスとやり取りする分散環境を実現する情報処理装置を提供する。
【０００５】
【課題を解決するための手段】
上記課題を解決するため、本発明は、請求項１に記載されるように、ネットワークを介して接続された機器からの所定メッセージを交換する第一プロトコルを指定する第一処理リクエストと該第一プロトコル以外の第二プロトコルを指定する第二処理リクエストとを受信し、第一プロトコルに従った第一処理レスポンスと該第二プロトコルに従った第二処理レスポンスとを送信するＷｅｂサービス通信制御手段と、プロトコルの異なる上記第一処理リクエストと第二処理リクエストとを受付けて情報処理装置に関する内部情報の処理を共有し、その処理結果を上記Ｗｅｂサービス通信制御手段へ提供するＷｅｂサービス提供処理手段とを有するように構成される。
【０００６】
このような情報処理装置では、ネットワークを介して接続された機器の機種又はオペレーティングシステムに依存することなく、例えば、ＳＯＡＰからの第一プロトコルによる第一処理リクエストを受信した際には第一プロトコルによる第一処理レスポンスによって、或いは、例えば、Ｗｅｂブラウザ等からの第二プロトコルによる第二処理リクエストを受信した際には機器にて表示可能な表示形式に従って第二処理レスポンスによって処理結果をＷｅｂサービスとして提供することができる。従って、第一処理リクエスト及び第二処理リクエストのＷｅｂサービスの要求に対して、同一のＷｅｂサービス提供処理手段による処理結果をＷｅｂサービスとして提供することができるため、第一処理リクエスト及び第二処理リクエストの夫々にＷｅｂサービス提供処理手段を開発する必要がない。
【０００７】
上記第一プロトコルは、例えば、ＳＯＡＰ（Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ）である。また、上記第二プロトコルによる処理レスポンスは、例えば、ＨＴＭＬ（Ｈｙｐｅｒｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）によって提供される。
【０００８】
上記内部情報は、情報処理についてのステータス情報、及び、機器本体の設定を変更したりネットワークＩＰを変更したりする制御パラメータ等の情報を示す。
【０００９】
Ｗｅｂサービスを提供するための処理の実体を有するという観点において、本発明は、請求項２に記載されるように、上記Ｗｅｂサービス提供処理手段は、Ｗｅｂサービスに関する処理を実行するＷｅｂサービス実行手段を有するように構成することができる。
【００１０】
このような情報処理装置では、Ｗｅｂサービスを提供するための処理の実体がＷｅｂサービス提供処理手段に独立してあるため、複数のプロトコル（例えば、ＳＯＡＰと、ＨＴＴＰ及びＨＴＭＬ）に関する知識を必要としないＷｅｂサービス実行手段の開発を行うことができる。
【００１１】
第一プロトコルに従って第一処理リクエストを処理するという観点において、本発明は、請求項３に記載されるように、複数の上記Ｗｅｂサービス提供処理手段を有し、上記複数のＷｅｂサービス提供処理手段によって共有可能であって、上記第一プロトコルに従って上記メッセージを制御するプロトコル処理手段とを有するように構成することができる。
【００１２】
このような情報処理装置では、第一処理リクエストを第一プロトコルに従って処理できると共に、複数のＷｅｂサービス提供処理手段によって共有されるため、各Ｗｅｂサービス提供処理手段を開発する際には、ＳＯＡＰ等の第一プロトコルに関する処理部の開発を削減することができる。
【００１３】
メッセージの処理を共有するという観点において、本発明は、請求項４に記載されるように、上記複数のＷｅｂサービス提供処理手段によって共有可能であって、上記第一処理リクエスト内に所定記述形式に従って記述された上記メッセージを上記Ｗｅｂサービス提供処理手段によって処理可能な形式に変換すると共に、該第一処理リクエストに応じた上記処理結果を該所定記述形式に従って処理する際の同一の処理方法によって上記第二処理リクエストに応じた上記処理結果を該所定記述形式に従って処理する記述形式処理手段を有するように構成することができる。
【００１４】
このような情報処理装置では、例えば、ＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）によって記述されたメッセージの処理を、複数のＷｅｂサービス提供処理手段によって共有可能となる。従って、各Ｗｅｂサービス提供処理手段を開発する際には、メッセージに関する処理部の開発を削減することができる。
【００１５】
第一プロトコルに従う第一処理リクエストと該第一プロトコル以外の第二プロトコルに従うＷｅｂブラウザを利用した端末からの第二処理リクエストの両方の処理を可能とするという観点において、本発明は、請求項６に記載されるように、上記Ｗｅｂサービス通信制御手段は、上記ネットワークを介して、上記機器からの上記第一及び第二処理リクエストの受信及び上記機器への上記第一及び第二処理レスポンスの送信を所定ネットワーク通信プロトコルに従って制御するネットワーク通信制御手段と、上記第二処理リクエストを処理し、その処理結果に基づいて、上記Ｗｅｂサービス実行手段を実行する処理リクエスト処理手段とを有するように構成することができる。
【００１６】
第一処理リクエストと第二処理リクエストとを別々に分配するという観点に置いて、本発明は、請求項６に記載されるように、上記Ｗｅｂサービス通信制御手段は、上記ネットワーク通信制御手段が上記第一処理リクエストを受信した場合、該第一処理リクエストのリクエスト種別を上記第一プロトコルに従って解析し、その解析結果に基づいて上記複数のＷｅｂサービス提供処理手段の一つに上記第一処理リクエストを分配し、上記第二処理リクエストを受信した場合、上記第二処理リクエストのリクエスト種別を解析し、その解析結果に基づいて、上記処理リクエスト処理手段に上記第二処理リクエストを分配する分配手段と、上記第二処理リクエスト内のＷｅｂサービスを特定する特定情報を解析し、その解析結果に基づいて、該特定情報に対応する上記Ｗｅｂサービス実行手段に処理を振り分ける第二振分手段とを有するように構成される。また、本発明は、請求項７に記載されるように、上記第一処理リクエスト内のＷｅｂサービスを特定する特定情報を上記第一プロトコルに従って解析し、その解析結果に基づいて、該特定情報によって特性されるＷｅｂサービスを実行する上記Ｗｅｂサービス実行手段に処理を振り分ける第一振分手段を有するように構成される。
【００１７】
このような情報処理装置では、第一プロトコルに従う第一処理リクエストと第一プロトコル以外の第二プロトコルに従うＷｅｂブラウザを利用した端末からの第二処理リクエストとを処理可能とするため、第一処理リクエスト及び第二処理リクエストによる同一のＷｅｂサービスの要求に対して、同一のＷｅｂサービス提供処理手段による処理結果をＷｅｂサービスとして提供することができる。
【００１８】
上記リクエスト種別とは、例えば、ＨＴＴＰによるメソッドを示し、ＧＥＴ  ＭＥＴＨＯＤ又はＰＯＳＴ  ＭＥＴＨＯＤ等である。
【００１９】
上記特定情報とは、Ｗｅｂサービス実行手段を特定するような情報であって、例えば、ＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）又はＵＲＩ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｉｎｄｉｃａｔｏｒ）である。
【００２０】
複数のＷｅｂサービス提供処理手段へ処理を振り分けるという観点において、本発明は、請求項８に記載されるように、上記複数のＷｅｂサービス提供処理手段の夫々に対応させて複数の上記第一振分手段と複数の上記第二振分手段とを有するように構成される。
【００２１】
このような情報処理装置では、第一処理リクエスト及び第二処理リクエストのいずれによっても複数のＷｅｂサービス提供処理手段への処理の振り分けを可能とする。
【００２２】
第二処理レスポンスの内容をネットワークを介して接続される機器にて表示可能とするという観点から、本発明は、請求項９に記載されるように、上記Ｗｅｂサービス通信制御手段は、上記第一処理リクエストに対する同一処理によって上記Ｗｅｂサービス提供処理手段から提供される上記第二処理リクエストに応じた上記処理結果を示す上記第二処理レスポンスを上記表示形式に従って作成する表示形式作成手段を有するように構成される。
【００２３】
このような情報処理装置では、機器からの第二処理リクエストに応じて実行されたＷｅｂサービスの処理結果を、該機器にて表示可能となるような処理レスポンスを作成することができる。よって、該情報処理装置は、例えば、汎用的なＷｅｂブラウザを有する機器に対してＷｅｂサービスを提供することができる。
【００２４】
各Ｗｅｂサービス提供処理手段による処理結果を機器にて表示可能とするという観点から、本発明は、請求項１０に記載されるように、上記表示形式作成手段は、上記記述形式処理手段によって上記第一処理リクエストに応じた上記処理結果と同様に処理された上記第二処理リクエストに応じた上記処理結果を、上記記述形式の書式スタイルに基づいて、上記表示形式に従った上記処理結果に変換する記述形式変換手段を有するように構成することができる。
【００２５】
このような情報処理装置では、各Ｗｅｂサービス提供処理手段による所定記述形式に従って処理された処理結果を、上記記述形式の書式スタイルに基づいて、機器にて表示可能な表示形式に従った上記処理結果に変換することができる。
【００２６】
上記書式スタイルとは、例えば、ＸＳＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｓｔｙｌｅｓｈｅｅｔ  Ｌａｎｇｕａｇｅ）である。この書式スタイルによって、上記記述形式変換手段は、ＸＭＬに従って記述された処理結果をＨＴＭＬに従って記述されるように変換することができる。
【００２７】
また、上記課題を解決するため、本発明は、請求項１１に記載されるように、ネットワークを介して接続された機器からの所定メッセージを交換する第一プロトコルを指定する第一処理リクエストと該第一プロトコル以外の第二プロトコルを指定する第二処理リクエストとを受信し、該第一処理リクエストに応じた処理結果を示す該第一プロトコルに従った第一処理レスポンスと該第二プロトコルに従った第二処理レスポンスとを送信するＷｅｂサービス通信制御手段と、プロトコルの異なる上記第一処理リクエストと第二処理リクエストとを受付けて情報処理装置に関する内部情報の処理を共有し、その処理結果を上記Ｗｅｂサービス通信制御手段へ提供するＷｅｂサービス提供処理手段と、上記Ｗｅｂサービス提供処理手段を構成する上記第一処理リクエストと上記第二処理リクエストとによって共有される少なくとも一つ以上の処理単位を実行することによって上記内部情報を処理し、その処理結果を用いて付加処理を行うことによって上記第一又は第二処理リクエストに応じた上記処理結果を生成し、該処理結果を上記Ｗｅｂサービス通信制御手段へ提供する複合Ｗｅｂサービス提供処理手段とを有するように構成される。
【００２８】
このような情報処理装置では、機器は、ＳＡＯＰ等の第一プロトコルによって又はＨＴＴＰ及びＨＴＭＬ等の第二プロトコルによってＷｅｂブラウザを介して所定処理を実行することができるため、該機器に、該所定処理を実行させるために専用のドライバ等のソフトウェアをインストールする必要がない。また、機器は、その機種又はオペレーティングシステムに依存することなく該情報処理装置に対して該所定処理を実行させることができる。更に、複合Ｗｅｂサービス提供処理手段によって、Ｗｅｂサービスを提供するのに必要なＷｅｂサービス提供処理手段の複数の処理単位が組み合わされることによって制御されるため、機器は、各Ｗｅｂサービスの機能を意識することなく、１回の処理リクエストによって、複数のＷｅｂサービスによる最終的な処理結果のみを取得することができる。よって、装置間の通信回数及び制御処理を大幅に削減することが可能となる。
【００２９】
上記第一プロトコルは、例えば、ＳＯＡＰ（Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ）である。また、上記第二プロトコルによる処理レスポンスは、例えば、ＨＴＭＬ（Ｈｙｐｅｒｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）によって提供される。
【００３０】
上記内部情報は、画像情報、画像情報についてのステータス情報、及び、機器本体の設定を変更したりネットワークＩＰを変更したりする制御パラメータ等の情報を示す。
【００３１】
複数の処理単位を組み合せて実行するという観点において、本発明は、請求項１２に記載されるように、上記複合Ｗｅｂサービス提供処理手段は、該複合Ｗｅｂサービス提供処理手段における処理単位であって、上記Ｗｅｂサービス提供処理手段の上記処理単位を組み合せて実行する少なくとも一つの複合処理実行手段とを有するように構成することができる。また、複数のＷｅｂサービス提供処理手段を組み合せて実行するという観点において、本発明は、請求項１３に記載されるように、少なくとも１つの上記処理単位を有する複数の上記Ｗｅｂサービス提供処理手段を有し、上記複合処理実行手段は、上記複数のＷｅｂサービス提供処理手段の上記処理単位を複数組み合せて上記内部情報を処理するように構成することができる。
【００３２】
プロトコルの異なる第一処理リクエストと第二処理リクエストに対する処理の一部を共有するという観点において、本発明は、請求項１４に記載されるように、上記第一プロトコルに従って上記第一処理リクエスト及び上記第一処理レスポンスの上記メッセージを制御するプロトコル処理手段と、上記第一処理リクエスト内に上記所定記述形式に従って記述された上記メッセージを上記Ｗｅｂサービス提供処理手段によって処理可能な形式に変換すると共に、該第一処理リクエストに応じた上記処理結果を該所定記述形式に従って処理する際の同一の処理方法によって上記第二処理リクエストに応じた上記処理結果を該所定記述形式に従って処理する記述形式処理手段とを有し、上記プロトコル処理手段と上記記述形式処理手段とは、上記複数のＷｅｂサービス提供処理手段及び上記複合Ｗｅｂサービス提供処理手段によって共有されるように構成することができる。
【００３３】
このような情報処理装置では、プロトコルが異なる第一処理リクエストと第二処理リクエストに対する処理が共有されると共に、複数のＷｅｂサービス提供処理手段及び複合Ｗｅｂサービス提供処理手段によってそれら処理が共有されるため、第一処理リクエストと第二処理リクエストとの夫々に応じた処理部を開発する必要がなく、また、複数のＷｅｂサービス提供処理手段と複合Ｗｅｂサービス提供処理手段との夫々に応じた処理部を開発する必要がない。従って、開発工数を大幅に削減することが可能となる。
【００３４】
上記所定記述形式は、例えば、ＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）である。
【００３５】
同一の通信プロトコルにて受信後、夫々の特性に応じて第一処理リクエストと第二処理リクエストを処理し、適切にＷｅｂサービスを実行するという観点において、本発明は、請求項１５に記載されるように、上記Ｗｅｂサービス通信制御手段は、上記ネットワークを介して、上記機器からの上記第一及び第二処理リクエストの受信及び上記機器への上記第一及び第二処理レスポンスの送信を所定ネットワーク通信プロトコルに従って制御するネットワーク通信制御手段と、上記第二処理リクエストを処理し、その処理結果に基づいて、上記Ｗｅｂサービス実行手段を実行する処理リクエスト処理手段とを有するように構成することができる。また、本発明は、請求項１６に記載されるように、上記Ｗｅｂサービス通信制御手段は、上記ネットワーク通信制御手段が上記第一処理リクエストを受信した場合、該第一処理リクエストのリクエスト種別を上記第一プロトコルに従って解析し、その解析結果に基づいて上記複数のＷｅｂサービス提供処理手段の一つに上記第一処理リクエストを分配し、上記第二処理リクエストを受信した場合、上記第二処理リクエストのリクエスト種別を解析し、その解析結果に基づいて、上記処理リクエスト処理手段に上記第二処理リクエストを分配する分配手段と、上記第二処理リクエスト内のＷｅｂサービスを特定する特定情報を解析し、その解析結果に基づいて、該特定情報に対応する上記Ｗｅｂサービス実行手段に処理を振り分ける第二振分手段とを有するように構成することができる。更に、本発明は、請求項１９に記載されるように、上記第一処理リクエスト内のＷｅｂサービスを特定する特定情報を上記第一プロトコルに従って解析し、その解析結果に基づいて、該特定情報によって特性されるＷｅｂサービスを実行する上記Ｗｅｂサービス実行手段に処理を振り分ける第一振分手段を有するように構成することができる。
【００３６】
このような情報処理装置では、同一の通信プロトコルで第一処理リクエスト及び第二処理リクエストを受信した後、第一処理リクエストによって特定されるＷｅｂサービス実行手段に振り分ける第一振分手段と、第ニ処理リクエストによって特定されるＷｅｂサービス実行手段に振り分ける第ニ振分手段とを有することによって、プロトコルの異なる第一処理リクエストと第二処理リクエストとによる同一のＷｅｂサービスの実行を可能とすることができる。
【００３７】
上記所定ネットワーク通信プロトコルは、ｈｔｔｐ（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）である。
【００３８】
また、本発明は、請求項１８から１９に記載されるように、上記情報処理装置での処理を行う情報処理方法とすることもできる。
【００３９】
【発明の実施の形態】
以下、本発明の実施の形態を図面に基づいて説明する。
【００４０】
本発明の一実施例に係る情報処理装置２００のハードウェア構成について説明する。図図１は、本発明の一実施例に係る情報処理装置のハードウェア構成を示すブロック図である。
【００４１】
以下、本発明の実施の形態を図面に基づいて説明する。
【００４２】
本発明の一実施例に係る情報処理装置は、例えば、図１に示すようなハードウェア構成を成す。図１は、本発明の一実施例に係る情報処理装置のハードウェア構成を示すブロック図である。
【００４３】
図１において、情報処理装置２００は、コンピュータによって制御され印刷処理を実行する装置であって、ＣＰＵ（中央処理装置）５１と、メモリユニット５２と、表示ユニット５３と、入力ユニット５４と、通信ユニット５５と、記憶装置５６と、ドライバ５７とで構成され、システムバスＢに接続される。
【００４４】
ＣＰＵ５１は、メモリユニット５２に格納されたプログラムに従って情報処理装置２００を制御する。メモリユニット５２は、ＲＡＭ及びＲＯＭ等にて構成され、ＣＰＵ５１にて実行されるプログラム、ＣＰＵ５１での処理に必要なデータ、ＣＰＵ５１での処理にて得られたデータ等を格納する。また、メモリユニット５２の一部の領域が、ＣＰＵ５１での処理に利用されるワークエリアとして割り付けられている。
【００４５】
表示ユニット５３は、ＣＰＵ５１の制御のもとに必要な各種情報を表示する。入力ユニット５４は、マウス、キーボード等を有し、利用者が情報処理装置２００が処理を行なうための必要な各種情報を入力するために用いられる。通信ユニット５５は、情報処理装置２００が例えばインターネット、ＬＡＮ（Ｌｏｃａｌ  ＡｒｅａＮｅｔｗｏｒｋ）等を介して複数のネットワーク機器と接続される場合に、それら複数のネットワーク機器との間で通信制御をするための装置である。記憶装置５６は、例えば、ハードディスクユニットにて構成され、各種処理を実行するプログラム、文書データ等を格納する。
【００４６】
情報処理装置２００よって行われる印刷処理を実現するプログラムは、例えば、ＣＤ−ＲＯＭ等の記憶媒体５８によって情報処理装置２００に提供される。即ち、プログラムが保存された記憶媒体５８がドライバ５７にセットされると、ドライバ５７が記憶媒体５８からプログラムを読み出し、その読み出されたプログラムがシステムバスＢを介して記憶装置５６にインストールされる。そして、プログラムが起動されると、記憶装置５６にインストールされたプログラムに従ってＣＰＵ５１がその処理を開始する。尚、プログラムを格納する媒体としてＣＤ−ＲＯＭに限定するものではなく、コンピュータが読み取り可能な媒体であればよい。本発明に係る印刷処理を実現するプログラムは、通信ユニット５５によってネットワークを介してダウンロードし、記憶装置５６にインストールするようにしても良い。
【００４７】
以下、上述したような図１に示すハードウェア構成を有する情報処理装置２００がＷｅｂサービスを提供するための機能構成例について説明する。ここで、Ｗｅｂサービスとは、ネットワーク機器からのＨＴＴＰリクエストによるサービス要求に応じて、情報処理装置２００が所定の処理を行ない、その処理結果をＨＴＴＰレスポンスとしてネットワーク機器へ提供することを言う。
【００４８】
以下、ＳＯＡＰ及びＨＴＭＬによるＷｅｂサービスの提供を可能とする情報処理装置２００の機能構成について図２で説明する。図２は、Ｗｅｂサービスを提供する情報処理装置の機能構成例を示す図である。情報処理装置２００は、ＳＯＡＰによってＷｅｂサービスの提供を受けるネットワーク機器１０Ａと、ＨＴＭＬによってＷｅｂサービスの提供を受けるネットワーク機器１０Ｂとにネットワーク１５を介して接続される。
【００４９】
図２において、情報処理装置２００は、ＨＴＴＰに従った通信制御を行うと共に、内部のＷｅｂサービス提供処理部に処理を分配するＷｅｂサーバー５００と、複数のＷｅｂサービス提供処理部としてファイル管理Ｗｅｂサービス提供処理部４０及び他Ｗｅｂサービス提供処理部４９と、スキャナ１２０２と、ＨＤＤ１３０３と、プロッタ１２０１と、オペレーションパネル１３１０と、ＦＣＵ（ＦＡＸコントロールユニット）１３２０等とを有する。複数のＷｅｂサービス提供処理部４０及び４９は、夫々Ｗｅｂサービスファンクション（ＷＳＦ）を有する。
【００５０】
図２に示す機能構成例の場合、ファイル管理Ｗｅｂサービス提供処理部４０は、Ｗｅｂサービスファンクション（ＷＳＦ）として、ＨＤＤ１３０３に蓄積される文書（ファイル）を管理するファイル管理実行部４００を有する。
【００５１】
Ｗｅｂサーバー５００は、ＨＴＴＰに従った通信制御を行うｈｔｔｐｄ２と、ＨＴＴＰリクエストに対応するＷｅｂサービス提供処理部４０又は４９へ処理を分配するディストリビューター（Ｄｉｓｔｒｉｂｕｔｏｒ）３０と、ネットワーク１５を介して受信したＧＥＴ  ＭＥＴＨＯＤ又はＰＯＳＴ  ＭＥＴＨＯＤによるＨＴＴＰリクエストを処理するＨＴＴＰリクエスト処理部５０１と、ＨＴＴＰリクエストで示されるＷｅｂサービスの処理をファイル管理実行部４００に振り分けるディスパッチャー（Ｄｉｓｐａｔｃｈｅｒ）６０Ｂと、ファイル管理実行部４００から通知される処理結果を示すＨＴＭＬ（Ｈｙｐｅｒｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）２４を作成するＨＴＭＬ作成部５０２とを有する。ここで、ＨＴＴＰリクエストはＨＴＴＰに従ったデータ通信によって、Ｗｅｂサービスを要求することを示し、ＨＴＴＰレスポンスは該Ｗｅｂサービスの処理結果を通知する応答を示す。
【００５２】
ディストリビューター３０は、ＨＴＴＰリクエストがＳＯＡＰによるＨＴＴＰリクエストであるか否かを判断する判断部を有する。ＳＯＡＰを指定するＨＴＴＰリクエストである場合、ＳＯＡＰＡｃｔｉｏｎで指定されるＷｅｂサービス提供処理部４０又は４９へ処理を分配する。一方、ＳＯＡＰを指定しないＨＴＴＰリクエストである場合、つまり、ＧＥＴ又はＰＯＳＴ  ＭＥＴＨＯＤによるＨＴＴＰリクエストである場合、ＨＴＴＰリクエストをＨＴＴＰリクエスト処理部５０１に通知する。
【００５３】
更に、ＨＴＭＬ作成部５０２は、ＸＭＬ処理部５０によって生成されたＸＭＬを所定のＸＳＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｓｔｙｌｅｓｈｅｅｔ  Ｌａｎｇｕａｇｅ）２５を用いてＨＴＭＬフォーマットに変換するＸＳＬプロセッサ５０３を有する
また、ＸＭＬで記述されたメッセージを処理するＸＭＬ処理部５０と、ＳＯＡＰに従ってメッセージ交換を行うＳＯＡＰ処理部７０とを有する。ＸＭＬ処理部５０と、ＳＯＡＰ処理部７０とは、複数のＷｅｂサービス提供処理部４０及び４９とで共有される。
【００５４】
ＸＭＬ処理部５０は、ＳＯＡＰを指定するＨＴＴＰレスポンスのボディ部の生成方法と同様に、ＳＯＡＰを指定しないＨＴＴＰレスポンスのボディ部をＸＭＬで記述して生成する。更に、ＳＯＡＰ処理部７０は、Ｗｅｂサービスの処理内容を示す処理メッセージに基づいてファイル管理実行部４００に振り分けるディスパッチャー（Ｄｉｓｐａｔｃｈｅｒ）６０Ａを有する。
【００５５】
なお、情報処理装置２００において、説明の便宜上、複数のＷｅｂサービス提供処理部として、ファイル管理Ｗｅｂサービス提供処理部４０と他Ｗｅｂサービス提供処理部４９のみが示されるが、更に多くのＷｅｂサービス提供処理部を有する構成とすることもできる。この場合、ＳＯＡＰ処理部７０は、複数のＷｅｂサービス提供処理部の夫々の実行部に処理を振り分ける複数のディスパッチャー６０Ａを備えるようにする。また、それら複数のＷｅｂサービス提供処理部によって、ＸＭＬ処理部５０及びＳＯＡＰ処理部７０は共有される。同様に、複数のディスパッチャー６０Ｂが複数のＷｅｂサービス提供処理部に対応させて備えられる。
【００５６】
また、ネットワーク１５を介して情報処理装置２００と接続されるネットワーク機器１０Ａは、キーボード又はマウス等の入力装置からの入力データを制御すると共に、モニタ９Ａに表示させる出力データとを制御する入出力制御部１１Ａと、情報処理装置２００に対するＷｅｂサービスの処理内容及び情報処理装置２００からのＷｅｂサービスの処理結果をＸＭＬによって処理するＸＭＬ処理部１３と、ＨＴＴＰに従ったリクエストの生成及びレスポンスを解析するリクエスト／レスポンス処理部１４とを有する。ネットワーク１５を介して情報処理装置２００と接続されるネットワーク機器１０Ｂは、キーボード又はマウス等の入力装置からの入力データを制御すると共に、モニタ９Ｂに表示させる出力データとを制御する入出力制御部１１Ｂを有し、ＨＴＴＰに従ったリクエストの生成及びレスポンスを表示するＷｅｂブラウザ２３を有する。
【００５７】
先ず、ネットワーク機器１０Ａからの要求に応じてＷｅｂサービスを提供する処理フローについて説明する。ネットワーク機器１０Ａを利用する利用者は、所望のＷｅｂサービスを情報処理装置２００へ要求するための画面から情報処理装置２００へ要求する（ステップＳ１０１）。利用者によるＷｅｂサービスの要求に応じて、入出力制御部１１Ａは、リクエスト／レスポンス処理部１４へ要求データを通知する（ステップＳ１０２）。リクエスト／レスポンス処理部１４は、入出力制御部１１からの要求データに基づいてＨＴＴＰリクエストを生成し（ステップＳ１０３）、ＸＭＬ処理部１３が処理内容をＸＭＬによってＨＴＴＰリクエストのボディ部に記述すると、ＳＯＡＰ処理部１２によってＳＯＡＰに従ってＨＴＴＰリクエストがネットワーク１５を介して情報処理装置２００へ送信される（ステップＳ１０４）。
【００５８】
情報処理装置２００のＷｅｂサーバー５００は、ｈｔｔｐｄ２によってＨＴＴＰリクエストを受信すると、ディストリビューター３０によって、ＨＴＴＰリクエストのヘッダ部で指定されるＷｅｂサービス提供処理部へ受信したＨＴＴＰリクエストを分配する（ステップＳ１０５）。例えば、ＨＴＴＰリクエストのヘッダ部でファイル管理Ｗｅｂサービス提供処理部４０が指定されていた場合、ファイル管理Ｗｅｂサービス提供処理部４０がディストリビューター３０によって関数コールされる。
【００５９】
ファイル管理Ｗｅｂサービス提供処理部４０において、ＳＯＡＰ処理部７０は、ＨＴＴＰリクエストをＳＯＡＰに従って処理して、ＳＯＡＰヘッダ部で指定されるファイル管理実行部４００に処理を振り分けるディスパッチャー６０Ａに通知する（ステップＳ１０６）。ディスパッチャー６０Ａは、ＨＴＴＰリクエストのヘッダ部で処理内容を振り分けて、ＸＭＬ処理部５０に通知する（ステップＳ１０７）。ＸＭＬ処理部５０は、ＸＭＬで記述されたＨＴＴＰリクエストのボディ部において処理内容を示すメッセージをファイル管理実行部４００で解釈可能な記述に変換してファイル管理実行部４００を実行する（ステップＳ１０８）。ファイル管理実行部４００は、処理内容に従ってＨＤＤ１３０３に対して処理を実行し、その処理結果を取得する（ステップＳ１０９）。例えば、処理内容に指定される文書の追加、更新、又は削除等の処理を実行する。
【００６０】
処理結果を取得したファイル管理実行部４００はＸＭＬ処理部５０へその処理結果を通知する（ステップＳ１１０）。ＸＭＬ処理部５０は、通知された処理結果をＸＭＬで記述したＸＭＬ２６を生成してＨＴＴＰレスポンスのボディ部をに設定するために、ＳＯＡＰ処理部７０に通知する（ステップＳ１１１）。そして、Ｗｅｂサーバー５００は、ｈｔｔｐｄ２を介してＸＭＬで記述された処理結果をボディ部とするＳＯＡＰに従ったＨＴＴＰレスポンスをネットワーク機器１０Ａに送信する（ステップＳ１１２）。
【００６１】
ネットワーク機器１０ＡにてＨＴＴＰレスポンスが受信されると、ＸＭＬ処理部１３は、ＨＴＴＰレスポンスのボディ部を解析して処理結果を取得し（ステップＳ１１３）、リクエスト／レスポンス処理部１４は、その取得した処理結果をモニタ９Ａに表示させる出力データとして入出力制御部１１Ａに渡す（ステップＳ１１４）。そして、入出力制御部１１Ａは、受け取った出力データをモニタ９Ａに表示させるように制御する（ステップＳ１１５）。
【００６２】
上記より、ネットワーク機器１０Ａは、予め取り決めておいたＸＭＬによる記述形式に従ってＨＴＴＰリクエストのボディ部に処理内容を記述することによって、情報処理装置２００に対して遠隔地からＷｅｂサービスの要求を行うことができる。また、情報処理装置２００は、予め取り決めておいたＸＭＬによる記述形式に従ってＨＴＴＰレスポンスのボディ部に処理結果を記述することによって、遠隔地にあるネットワーク機器１０Ａに対してＷｅｂサービスの提供を行うことが可能となる。情報処理装置２００は、ネットワーク１５を介して、複数のネットワーク機器１０Ａに対して、Ｗｅｂサービスを提供することも可能である。
【００６３】
次に、ネットワーク機器１０Ｂからの要求に応じてＷｅｂサービスを提供する処理フローについて説明する。ネットワーク機器１０Ｂを利用する利用者は、モニタ９Ｂに表示されるＷｅｂサービスを情報処理装置２００へ要求するための画面から情報処理装置２００へ所望のＷｅｂサービスを要求し、入出力制御部１１Ｂはその要求データを受信する（ステップＳ１２１）。Ｗｅｂブラウザ２３は、入出力制御部１１Ｂが受信した要求データに基づいて、ＧＥＴ  ＭＥＴＨＯＤ又はＰＯＳＴ  ＭＥＴＨＯＤによるＨＴＴＰリクエストを生成してネットワーク１５を介して情報処理装置２００へ送信する（ステップＳ１２２）。
【００６４】
情報処理装置２００はネットワーク機器１０ＢからＨＴＴＰリクエストを受信すると、Ｗｅｂサーバー５００によってＨＴＴＰリクエストを解析する。つまり、ネットワーク通信制御を行うｈｔｔｐｄ２がＨＴＴＰリクエストを受信すると、ディストリビューター３０によって、ＨＴＴＰリクエストのヘッダ部で指定される、例えば、メソッド（ＧＥＴ  ＭＥＴＨＯＤ又はＰＯＳＴ  ＭＥＴＨＯＤ）に応じた解析がなされるようにＨＴＴＰリクエストがＨＴＴＰリクエスト処理部５０１に分配される（ステップＳ１２３）。
【００６５】
ＨＴＴＰリクエスト処理部５０１は、メソッドに応じてボディ部から処理内容を取得し、例えば、ヘッダ部でＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）又はＵＲＩ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｉｎｄｉｃａｔｏｒ）によってファイル管理Ｗｅｂサービスが指定されている場合、ディスパッチャー６０Ｂによって、ファイル管理実行部４００へ処理内容に応じた処理の振り分けを行う（ステップＳ１２４）。ファイル管理実行部４００は、処理内容に従ってＨＤＤ１３０３に対して処理を実行し、その処理結果を取得する（ステップＳ１２５）。例えば、処理内容に指定される文書の追加、更新、又は削除等の処理を実行する。
【００６６】
処理結果を取得したファイル管理実行部４００はＸＭＬ処理部５０へその処理結果を通知する（ステップＳ１２６）。ＸＭＬ処理部５０は、ＳＯＡＰによるＨＴＴＰレスポンスのボディ部を生成するのと同様に、通知された処理結果をＸＭＬで記述したＸＭＬ２６を生成して、ＨＴＴＰレスポンスのボディ部に設定するために、Ｗｅｂサーバー５００のＨＴＭＬ作成部５０２に通知する（ステップＳ１２７）。ＨＴＭＬ作成部５０２は、ＸＳＬプロセッサ５０３によって所定のＸＳＬ２５を用いてＨＴＭＬフォーマットに変換したＨＴＭＬ２４を生成し、ｈｔｔｐｄ２にＨＴＭＬ２４の送信を依頼する（ステップＳ１２８）。ｈｔｔｐｄ２は、ｈｔｔｐに従ってＨＴＭＬ２４をネットワーク機器１０Ｂへ送信する（ステップＳ１２９）。
【００６７】
ネットワーク機器１０ＢにてＨＴＴＰレスポンスが受信されると、Ｗｅｂブラウザ２３は、入出力制御部１１Ｂによってモニタ９ＢへＨＴＭＬ２４を表示させる（ステップＳ１３０）。
【００６８】
上記より、ネットワーク機器１０Ｂは、情報処理装置２００との間で特別なメッセージ交換方法を必要とせずに、Ｗｅｂブラウザ２３を利用するのみで、情報処理装置２００からＷｅｂサービスの提供を受けることができ、ＲＰＣ（ＲｅｍｏｔｅＰｒｏｃｅｄｕｒｅ  Ｃａｌｌ）を実現することができる。また、Ｗｅｂサーバー５００に、各Ｗｅｂサービスの実行部における処理の特性に応じてＸＳＬ２５を備えるようにすることで、ネットワーク機器１０Ｂへ処理結果を表示する際にＷｅｂサービス毎の表示画面を提供することが可能となる。
【００６９】
従って、情報処理装置２００は、ＳＯＡＰに従ってメッセージ交換を行うことができるネットワーク機器１０Ａと、Ｗｅｂブラウザ２３を有するネットワーク機器１０Ｂとに対して、同じファイル管理実行部４００によるＷｅｂサービスの提供を行うことができる。ファイル管理実行部４００を有するファイル管理Ｗｅｂサービス提供処理部４０が、プロトコルの異なる処理リクエストによって共有することができるため、処理リクエストのプロトコル毎にファイル管理Ｗｅｂサービス提供処理部４０を開発する必要がない。
【００７０】
また、情報処理装置２００では、Ｗｅｂサーバー５００にＸＳＬ２５を備えることによって、ＸＭＬ処理部５０でのＳＯＡＰを指定するＨＴＴＰレスポンスのボディ部の記述とＳＯＡＰを指定しないＨＴＴＰレスポンスのボディ部の記述の処理を共通化することができる。
【００７１】
情報処理装置２００とネットワーク機器１０との間でＳＯＡＰに従ってメッセージ交換するＨＴＴＰリクエスト及びＨＴＴＰレスポンスについて図３及び図４で説明する。図３は、ＳＯＡＰによるＨＴＴＰリクエストの例を示す図である。図３に示すＨＴＴＰリクエストにおいて、ＵＲＩ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｉｎｄｉｃａｔｏｒ）１６は、ＰＯＳＴメソッドによってＨＴＴＰリクエストが送信されるＵＲＩを示し、例えば、「ｎｅｔｄｏｃ」である。更に、ＳＯＡＰＡｃｔｉｏｎ１７でリクエストの目的を表すＵＲＩが示され、例えば、「ｈｔｔｐ：／／ｆｏｏ．ｂａｒ．ｃｏｍ／ｎｅｔｄｏｃ／ｆｉｌｅｍａｎａｇｅｍｅｎｔ」によって「ファイル管理」が指定される。
【００７２】
図２の情報処理装置２００のｈｔｔｐｄ２のディストリビューター３０は、ＳＯＡＰＡｃｔｉｏｎ１７で指定される「ｆｉｌｅｍａｎａｇｅｍｅｎｔ」により、ファイル管理Ｗｅｂサービス提供処理部４０にＨＴＴＰリクエストを分配する。ファイル管理Ｗｅｂサービス提供処理部４０は、ＳＯＡＰ処理部７０によってＳＯＡＰに従ってＨＴＴＰリクエストを処理する。ＳＯＡＰ処理部７０において、ディスパッチャー６０Ａは、ＳＯＡＰＡｃｔｉｏｎ１７で指定される「ｆｉｌｅｍａｎａｇｅｍｅｎｔ」により、ファイル管理実行部４００に処理を振り分ける。また、ＸＭＬ処理部５０は、ＳＯＡＰエンベロープのボディ（＜ＳＯＡＰ−ＥＮＶ：Ｂｏｄｙ＞から＜／ＳＯＡＰ−ＥＮＶ：Ｂｏｄｙ＞まで）にＸＭＬによって記述されるメッセージ１８を解析する。例えば、メッセージ１８は、＜ｎｓ：ｆｉｌｅｍａｎａｇｅｍｅｎｔ＞から＜／ｎｓ：ｆｉｌｅｍａｎａｇｅｍｅｎｔ＞までに示される。「ｆｉｌｅｍａｎａｇｅｍｅｎｔ」は、コマンドを示す。メッセージ１８によって要求される処理内容は、＜ｆｉｌｅＩｄ＞から＜／ｆｉｌｅＩｄ＞によって指定されるファイルＩＤ「１２３」を、＜ｏｐｅｒａｔｉｏｎＣｏｄｅ＞から＜／ｏｐｅｒａｔｉｏｎＣｏｄｅ＞によって指定されるオペレーションコード「３」の処理を行うことを示している。例えば、オペレーションコード「３」はファイル削除、オペレーションコード「１」はファイル追加、オペレーションコード「２」はファイル編集を要求する。
【００７３】
この場合、ディスパッチャー６０Ａによって処理が振り分けられたファイル管理実行部４００は、ＸＭＬ処理部５０によって解析された処理内容に従って、ＨＤＤ１３０３からフィルＩＤ「１２３」の文書を削除する。
【００７４】
なお、上記例は、一つのコマンド「ｆｉｌｅｍａｎａｇｅｍｅｎｔ」で、＜ｏｐｅｒａｔｉｏｎＣｏｄｅ＞の設定によってファイルの管理方法を指定しているが、ファイル管理の処理を細分し、例えば、ファイル追加Ｗｅｂサービス、ファイル編集Ｗｅｂサービス、及び、ファイル削除Ｗｅｂサービス等のように複数のＷｅｂサービスをＷｅｂサービスファンクションとしてＷｅｂサービス処理アプリ１２１５に備えるようにしても良い。この場合、例えば、「ｆｉｌｅａｄｄ」、「ｆｉｌｅｅｄｉｔ」、「ｆｉｌｅｄｅｌｅｔｅ」のように、Ｗｅｂサービス毎に一意に対応するコマンドがＸＭＬメッセージ１８に設定されるようにすることによって、＜ｏｐｅｒａｔｉｏｎＣｏｄｅ＞によるオペレーションコードが不要となる。
【００７５】
図４は、ＳＯＡＰによるＨＴＴＰレスポンスの例を示す図である。図４に示すＨＴＴＰレスポンスは、ファイル管理Ｗｅｂサービス提供処理部４０のＳＯＡＰ処理部７０によって、ファイル管理実行部４００の処理結果に基づいて作成される。図４に示すＨＴＴＰレスポンスにおいて、ＳＯＡＰ処理部７０は、ファイル管理Ｗｅｂサービス提供処理部４０の処理結果に基づいて、ステータスコード２０として「２００」と、説明句２１として「ＯＫ」を設定する。更に、ＸＭＬ処理部５０は、ＳＯＡＰエンベロープのボディ（＜ＳＯＡＰ−ＥＮＶ：Ｂｏｄｙ＞から＜／ＳＯＡＰ−ＥＮＶ：Ｂｏｄｙ＞まで）にＸＭＬによって記述されるメッセージ２２を生成する。コマンド「ｆｉｌｅｍａｎａｇｅｍｅｎｔ」のレスポンスは、＜ｎｓ：ｆｉｌｅｍａｎａｇｅｍｅｎｔＲｅｓｐｏｎｓｅ＞から＜／ｎｓ：ｆｉｌｅｍａｎａｇｅｍｅｎｔＲｅｓｐｏｎｓｅ＞で示され、例えば、＜ｒｅｑｕｅｓｔＩｄ＞と＜／ｒｅｑｕｅｓｔＩｄ＞とのよってリクエストＩＤ「１０」が設定される。このＨＴＴＰレスポンスを受信したネットワーク機器１０Ａは、ＸＭＬ処理部１３によるＸＭＬによって記述されたメッセージ２２を処理することによって、処理が正常に行われたことを確認する。
【００７６】
次に、一つのＷｅｂサービス提供処理部の複数のメソッドを組み合せて実行する複合Ｗｅｂサービス提供処理部を有する情報処理装置２００について説明する。図５は、複合Ｗｅｂサービスを有する情報処理装置の例を説明するための機能構成例を示す図である。図５において、図１に示す情報処理装置２００の機能構成のうち主要な機能構成のみが図示され、他の機能構成は省略される。情報処理装置２００は、ＳＯＡＰによってＷｅｂサービスの提供を受けるネットワーク機器１０Ａと、ＨＴＭＬによってＷｅｂサービスの提供を受けるネットワーク機器１０Ｂとにネットワーク１５を介して接続される。
【００７７】
図５において、情報処理装置２００は、主に、ＨＴＴＰに従った通信制御を行うと共に、内部のＷｅｂサービス提供処理部に処理を分配するＷｅｂサーバー５００と、複数のＷｅｂサービス提供処理部としてファイル管理Ｗｅｂサービス提供処理部４０、他Ｗｅｂサービス提供処理部４９及び複合Ｗｅｂサービス提供処理部９０と、ＸＭＬで記述されたメッセージを処理するＸＭＬ処理部５０と、ネットワーク機器１０との間でＳＯＡＰに従うメッセージ交換を制御するＳＯＡＰ処理部７０と、スキャナ１２０２と、ＨＤＤ１３０３と、プロッタ１２０１と、オペレーションパネル１３１０と、ＦＣＵ１３２０等とを有する。ＸＭＬ処理部５０とＳＯＡＰ処理部７０とは、複数のＷｅｂサービス提供処理部４０、４９及び９０とで共有される。
【００７８】
Ｗｅｂサーバー５００は、ＨＴＴＰに従った通信制御を行うｈｔｔｐｄ２と、ＨＴＴＰリクエストに対応するＷｅｂサービス提供処理部へ処理を分配するディストリビューター（Ｄｉｓｔｒｉｂｕｔｏｒ）３０と、ネットワーク１５を介して受信したＧＥＴ  ＭＥＴＨＯＤ又はＰＯＳＴ  ＭＥＴＨＯＤによるＨＴＴＰリクエストを処理するＨＴＴＰリクエスト処理部５０１と、ＨＴＴＰリクエストで示されるＷｅｂサービスの処理を各Ｗｅｂサービス提供処理部毎に処理を振り分けるディスパッチャー６０Ｂ及び６８Ｂと、各Ｗｅｂサービス提供処理部４０、９０及び４９から通知されるＸＭＬで記述された処理結果をＨＴＭＬ２４で作成するＨＴＭＬ作成部５０２とを有する。ＨＴＭＬ作成部５０２は、ＸＭＬ処理部５０によって生成されたＸＭＬをＨＴＭＬフォーマットに変換するＸＳＬプロセッサ５０３を有する。ここで、ＨＴＴＰリクエストはＨＴＴＰに従ったデータ通信によって、Ｗｅｂサービスを要求することを示し、ＨＴＴＰレスポンスは該Ｗｅｂサービスの処理結果を通知する応答を示す。
【００７９】
ディストリビューター３０は、ＨＴＴＰリクエストがＳＯＡＰによるＨＴＴＰリクエストであるか否かを判断する判断部を有する。ＳＯＡＰによるＨＴＴＰリクエストである場合、ＳＯＡＰＡｃｔｉｏｎで指定されるＷｅｂサービス提供処理部４０又は４９へ処理を分配する。一方、ＳＯＡＰによるＨＴＴＰリクエストでない場合、つまり、ＧＥＴ又はＰＯＳＴ  ＭＥＴＨＯＤによるＨＴＴＰリクエストである場合、ＨＴＴＰリクエストをＨＴＴＰリクエスト処理部５０１に通知する。
【００８０】
ファイル管理Ｗｅｂサービス提供処理部４０は、ＨＤＤ１３０３に蓄積されている文書を特定する文書ＩＤのリストを取得する文書ＩＤリスト取得メソッド４０１と、文書ＩＤに対応するＨＤＤ１３０３に蓄積されている文書に関する書誌情報を取得する書誌情報取得メソッド４０２とを有する。メソッドは、ファイル管理Ｗｅｂサービス提供処理部４０でのＷｅｂサービスの処理の単位を示し、ファイル管理Ｗｅｂサービス提供処理部４０は、複数のメソッドによって図１に示すＷｅｂサービスファンクションを構成し、ネットワーク機器１０Ａ又は１０Ｂからの要求に応じたＷｅｂサービスの提供を行う。図２に示される第一機能構成例の場合、複数のメソッドとして、文書ＩＤリスト取得メソッド４０１と書誌情報取得メソッド４０２とに限定されるものではなく、これらメソッド以外に複数のメソッドを構成することも可能である。
【００８１】
複合Ｗｅｂサービス提供処理部９０の文書一覧作成複合メソッド８００は、文書ＩＤリスト取得メソッド４０１を利用して文書ＩＤのリストを取得する文書ＩＤリスト取得部８０１と、書誌情報取得メソッド４０２を利用して文書ＩＤに対応する書誌情報を取得する書誌情報取得部８０２と、取得した書誌情報に基づいて文書一覧を作成する文書一覧作成部８０３とを有する。文書一覧作成複合メソッド８００は、文書ＩＤリスト取得メソッド４０１及び書誌情報取得メソッド４０２を利用しているため、それらメソッドの実体を備えてはいない。よって、文書一覧作成複合メソッド８００を実現するために開発される部分は、主に、文書一覧作成部８０３のみである。そのため、開発効率を大幅に削減することができる。また、複合Ｗｅｂサービス提供処理部９０は、文書一覧作成複合メソッド８００のような処理単位及びメソッドの実体を備えたメソッドによる処理単位を複数有する集合体を図１に示すＷｅｂサービスファンクションとして構成する。
【００８２】
ＳＯＡＰ処理部７０は、更に、各Ｗｅｂサービス提供処理部４０及び９０に処理を振り分けるディスパッチャー（Ｄｉｓｐａｔｃｈｅｒ）６０Ａ、６８Ａ等を有し、例えば、ファイル管理Ｗｅｂサービス提供処理部４０の各メソッド４０１又は４０２へ処理を振り分けるディスパッチャー６０Ａと、複合Ｗｅｂサービス提供処理部９０の文書一覧作成複合メソッド８００に対して処理を振り分けるディスパッチャー６８Ａと、他Ｗｅｂサービス提供処理部４９のメソッドに対して処理を振り分ける他のディスパッチャー（図示せず）とを有する。なお、情報処理装置２００において、説明の便宜上、複数のＷｅｂサービス提供処理部として、ファイル管理Ｗｅｂサービス提供処理部４０と、複合Ｗｅｂサービス提供処理部９０と、他Ｗｅｂサービス提供処理部４９のみが示されるが、更に多くのＷｅｂサービス提供処理部を有する構成とすることもできる。また、それら複数のＷｅｂサービス提供処理部によって、ＸＭＬ処理部５０及びＳＯＡＰ処理部７０は共有される。
【００８３】
また、ネットワーク１５を介して情報処理装置２００と接続されるネットワーク機器１０Ａ及びネットワーク機器１０Ｂの機能構成は、図２に示すネットワーク機器１０Ａ及びネットワーク機器１０Ｂと同様であるため、その説明を省略する。
【００８４】
先ず、ネットワーク機器１０Ａからの要求に応じてＷｅｂサービスを提供する処理フローについて説明する。ネットワーク機器１０Ａを利用する利用者は、所望のＷｅｂサービスを情報処理装置２００へ要求するための画面から情報処理装置２００へ要求する（ステップＳ３１）。例えば、利用者は、情報処理装置２００のＨＤＤ１３０３に蓄積された文書の一覧を提供するＷｅｂサービスをモニタ９Ａの画面から要求したとする。利用者によるＷｅｂサービスの要求に応じて、入出力制御部１１Ａは、リクエスト／レスポンス処理部１４へ要求データを通知する（ステップＳ３２）。リクエスト／レスポンス処理部１４は、入出力制御部１１からの要求データに基づいてリクエストを生成し、生成したリクエストをＳＯＡＰ処理部１２に通知する（ステップＳ３３）。ＳＯＡＰ処理部１２は、ＸＭＬ処理部１３利用者が所望するＷｅｂサービスの処理内容をＸＭＬによってＨＴＴＰリクエストのボディ部を記述し、ＳＯＡＰに従ってＨＴＴＰリクエストを生成する。そして、該ＨＴＴＰリクエストをネットワーク１５を介して情報処理装置２００へ送信する（ステップＳ３４）。
【００８５】
情報処理装置２００のｈｔｔｐｄ２は、ＨＴＴＰリクエストを受信すると、ディストリビューター３０によって、ＨＴＴＰリクエストのヘッダ部で指定されるＷｅｂサービス提供処理部へ受信したＨＴＴＰリクエストを分配する（ステップＳ３５）。例えば、ＨＴＴＰリクエストのヘッダ部で複合Ｗｅｂサービス提供処理部９０が指定されていた場合、複合Ｗｅｂサービス提供処理部９０がディストリビューター３０によって実行される。
【００８６】
複合Ｗｅｂサービス提供処理部９０は、ＳＯＡＰに従ったＨＴＴＰリクエストを処理するために、ＳＯＡＰ処理部７０に受信したＨＴＴＰリクエストを通知する（ステップＳ３６）。ＳＯＡＰ処理部７０は、ＳＯＡＰに従ってＨＴＴＰリクエストを処理し、ディスパッチャー６８は、ＨＴＴＰリクエストのヘッダ部で指定される文書一覧作成複合メソッド８００に処理を振り分けて、ＨＴＴＰのメソッドに応じてＸＭＬ処理部５０を実行する（ステップＳ３７）。ＸＭＬ処理部５０は、ＸＭＬで記述されたＨＴＴＰリクエストのボディ部において処理内容を示すメッセージを文書一覧作成複合メソッド８００で解釈可能な記述に変換して、文書一覧作成複合メソッド８００に通知する（ステップＳ３８）。
【００８７】
文書一覧作成複合メソッド８００は、先ず、文書ＩＤリスト取得部８０１によって、ファイル管理Ｗｅｂサービス提供処理部４０の文書ＩＤリスト取得メソッド４０１を関数コールする（ステップＳ３９）。文書ＩＤリスト取得メソッド４０１は、ＨＤＤ１３０３で管理している文書を識別する文書ＩＤを取得して文書ＩＤリストを作成する。この場合、文書ＩＤリスト取得メソッド４０１（ｌｉｓｔＩＤ（ｄｏｃＩＤＬｉｓｔ））は、文書ＩＤ「１０１」、「１０２」、「１０３」とを取得したとすると、文書ＩＤリスト（ｄｏｃＩＤＬｉｓｔ）を、ｄｏｃＩＤＬｉｓｔ＝｛１０１，  １０２，  １０３，  ０｝（「０（ゼロ）」は終了を示す）のように設定し文書ＩＤリスト取得部８０１に通知する（ステップＳ４０）。
【００８８】
文書一覧作成複合メソッド８００は、続けて、書誌情報取得部８０２によってファイル管理Ｗｅｂサービス提供処理部４０の書誌情報取得メソッド４０２を関数コールする（ステップＳ４１）。書誌情報取得メソッド４０２は、ＨＤＤ１３０３で管理している文書に対して、書誌情報取得部８０２から通知された文書ＩＤで書誌情報を問い合わせ、書誌情報を作成する。例えば、文書ＩＤ「１０１」について書誌情報を取得する場合、書誌情報取得部８０２は、書誌情報取得メソッド４０２（ｇｅｔＰｒｏｐｓ（ｄｏｃＩＤ，ｐｒｏｐｓ））をｇｅｔＰｒｏｐｓ（１０１，ｐｒｏｐｓ）のようにして関数コールする。
【００８９】
コールされた書誌情報取得メソッド４０２は、ＨＤＤ１３０３に対して指定された文書ＩＤで書誌情報を問い合わせ、該書誌情報を書誌情報取得部８０２へ通知する（ステップＳ４２）。つまり、書誌情報取得メソッド４０２は、書誌情報取得部８０２から通知された文書ＩＤ「１０１」でＨＤＤ１３０３から書誌情報を取得する。そして、書誌情報取得メソッド４０２は、書誌情報取得部８０２へ通知するための書誌情報を作成する。例えば、書誌情報は、ｐｒｏｐ＝｛文書ＩＤ，  文書名，  ページ数，  所有者，  ０｝（「０（ゼロ）」は書誌情報の終了を示す）として作成され、この場合、ｐｒｏｐ＝｛１０１，  ”蓄積文書１”，  ３，  “ユーザー１”，  ０｝のように文書ＩＤ「１０１」に対して設定される。書誌情報取得メソッド４０２は、指定された文書ＩＤに対する書誌情報の作成結果を文書一覧作成複合メソッド８００の書誌情報取得部８０２へ通知する。
【００９０】
文書一覧作成複合メソッド８００の書誌情報取得部８０２は、その他の文書ＩＤ「１０２」及び「１０３」について、上記同様の処理を繰り返して、全ての文書情報を取得する。
【００９１】
文書一覧作成複合メソッド８００は、更に、文書一覧作成部８０３によって、文書一覧を作成し、その文書一覧をＸＭＬで記述するためにＸＭＬ処理部５０へ通知する（ステップＳ４３）。つまり、文書一覧作成部８０３は、文書一覧を、例えば、ｄｏｃＬｉｓｔ＝｛｛１０１，  ”蓄積文書１”，  ３，  ”ユーザー１”，０｝，｛１０２，  ”蓄積文書２”，１０，  ”ユーザー２”，０｝，｛１０３，  ”蓄積文書３”，  １，  ”ユーザー１”，０｝，０｝のように作成する。この作成された文書一覧（ｄｏｃＬｉｓｔ）がＸＭＬ処理部５０に通知される。ＸＭＬ処理部５０は、文書一覧（ｄｏｃＬｉｓｔ）を受け取ると、ＸＭＬで記述したＸＭＬ２６を生成してＳＯＡＰ処理部７０へ通知する（ステップＳ４４）。ＳＯＡＰ処理部７０は、ＸＭＬで記述された文書一覧を受け取ると、ＨＴＴＰレスポンスのボディ部に受け取ったＸＭＬで記述された文書一覧を設定してＳＯＡＰに従ってＨＴＴＰレスポンスを生成する（ステップＳ４５）。
【００９２】
このような機能構成例において、複合Ｗｅｂサービス提供処理部９０が文書一覧作成複合メソッド８００によって、文書ＩＤリスト取得メソッド４０１及び書誌情報取得メソッド４０２の実体を備えることなく、複数のメソッドを組み合せて一連のＷｅｂサービスの処理を行うことができる。よって、ネットワーク機器１０Ａは、情報処理装置２００が提供可能なＷｅｂサービスの単位を意識することなく、一回のＨＴＴＰリクエストによって一連のＷｅｂサービスの提供を受けることができる。
【００９３】
更に、図５において、ファイル管理Ｗｅｂサービス提供処理部４０自身によってＷｅｂサービスを提供することも可能である。つまり、ｈｔｔｐｄ２がネットワーク機器１０からＨＴＴＰリクエストを受信すると（ステップＳ３４），ディストリビューター３０は、ＨＴＴＰリクエストのヘッダ部で指定される書誌情報取得のＷｅｂサービスの要求に応じて、ファイル管理Ｗｅｂサービス提供処理部４０の書誌情報取得メソッド４０２へ受信したＨＴＴＰリクエストを分配する（ステップＳ３５−３）。
【００９４】
ファイル管理Ｗｅｂサービス提供処理部４０は、ＳＯＡＰに従ったＨＴＴＰリクエストを処理するために、ＳＯＡＰ処理部７０に受信したＨＴＴＰリクエストを通知する（ステップＳ３６−３）。ＳＯＡＰ処理部７０は、ＳＯＡＰに従ってＨＴＴＰリクエストを処理し、ディスパッチャー６０Ａは、ＨＴＴＰリクエストのヘッダ部で指定される書誌情報取得メソッド４０２に処理を振り分けて、ＨＴＴＰのメソッドに応じてＸＭＬ処理部５０を実行する（ステップＳ３７−３）。ＸＭＬ処理部５０は、ＸＭＬで記述されたＨＴＴＰリクエストのボディ部において処理内容を示すメッセージを書誌情報取得メソッド４０２で解釈可能な記述に変換して、書誌情報取得メソッド４０２に通知する（ステップＳ３８−３）。
【００９５】
書誌情報取得メソッド４０２は、ＨＤＤ１３０３で管理している文書に対して、ＸＭＬ処理部５０で処理されたメッセージで指定される文書ＩＤで書誌情報を問い合わせて、その書誌情報をＸＭＬで記述するためにＸＭＬ処理部５０へ通知する（ステップＳ４３−３）。ＸＭＬ処理部５０では、書誌情報をＸＭＬで記述したＸＭＬ２６が生成される。更に、ＳＯＡＰ処理部７０において、ＨＴＴＰレスポンスのボディ部にＸＭＬ２６を設定してＳＯＡＰに従ってＨＴＴＰレスポンスが生成され（ステップＳ４５―３）、ｈｔｔｐｄ２からネットワーク機器１０へ送信される（ステップＳ４６−３及びＳ４７）。
【００９６】
このように、情報処理装置２００は、ネットワーク機器１０Ａからの書誌情報の提供を要求するＨＴＴＰリクエストに応じて、実体を備えた書誌情報取得メソッド４０２自身を実行することができる。また、同様にして、文書ＩＤリスト取得メソッド４０１自身を実行することも可能である。
【００９７】
よって、情報処理装置２００は、画像を形成すると共に、実際にＷｅｂサービスを提供するための処理を行う複数のメソッドと、それらの組み合せによって、幅広いＷｅｂサービスを提供することができる。
【００９８】
次に、ネットワーク機器１０Ｂからの要求に応じてＷｅｂサービスを提供する処理フローについて説明する。ネットワーク機器１０Ｂを利用する利用者は、モニタ９Ｂに表示されるＷｅｂサービスを情報処理装置２００へ要求するための画面から情報処理装置２００へ所望のＷｅｂサービスを要求し、入出力制御部１１Ｂはその要求データを受信する（ステップＳ５１）。Ｗｅｂブラウザ２３は、入出力制御部１１が受信した要求データに基づいて、ＧＥＴ  ＭＥＴＨＯＤ又はＰＯＳＴ  ＭＥＴＨＯＤによるＨＴＴＰリクエストを生成してネットワーク１５を介して情報処理装置２００へ送信する（ステップＳ５２）。例えば、Ｗｅｂブラウザ２３は、
ＧＥＴ  ／ｄｏｃｕｍｅｎｔＬｉｓｔ．ｃｇｉ  ＨＴＴＰ／１．１
のようなＧＥＴメソッドによるＨＴＴＰリクエストを送信する。
【００９９】
情報処理装置２００のＷｅｂサーバー５００のｈｔｔｐｄ２が、ネットワーク機器１０から受信したＨＴＴＰリクエストを受信すると、ディストリビューター３０は、ＨＴＴＰリクエストのＧＥＴメソッドに基づいてＧＥＴメソッドによるＨＴＴＰリクエストを処理するＨＴＴＰリクエスト処理部５０１に該ＨＴＴＰリクエストを分配する（ステップＳ５３）。ＨＴＴＰリクエスト処理部５０１は、ディスパッチャー６８によって、ＨＴＴＰリクエストのヘッダ部で指定される文書一覧作成複合メソッド８００に処理を振り分ける（ステップＳ５４）。例えば、「ｄｏｃｕｍｅｎｔＬｉｓｔ．ｃｇｉ」によって、「ｄｏｃｕｍｅｎｔＬｉｓｔ．ｃｇｉ」に相当する文書一覧作成複合メソッド８００が実行される。
【０１００】
文書一覧作成複合メソッド８００は、先ず、文書ＩＤリスト取得部８０１によって、ファイル管理Ｗｅｂサービス提供処理部４０の文書ＩＤリスト取得メソッド４０１を関数コールする（ステップＳ５５）。文書ＩＤリスト取得メソッド４０１は、ＨＤＤ１３０３で管理している文書を識別する文書ＩＤを取得し（ステップＳ５６）、文書ＩＤリストを作成する。この場合、文書ＩＤリスト取得メソッド４０１（ｌｉｓｔＩＤ（ｄｏｃＩＤＬｉｓｔ））は、文書ＩＤ「１０１」、「１０２」、「１０３」とを取得したとすると、文書ＩＤリスト（ｄｏｃＩＤＬｉｓｔ）を、ｄｏｃＩＤＬｉｓｔ＝｛１０１，  １０２，  １０３，  ０｝（「０（ゼロ）」は終了を示す）のように設定し文書ＩＤリスト取得部８０１に通知する（ステップＳ５７）。
【０１０１】
文書一覧作成複合メソッド８００は、続けて、書誌情報取得部８０２によってファイル管理Ｗｅｂサービス提供処理部４０の書誌情報取得メソッド４０２を関数コールする（ステップＳ５８）。書誌情報取得メソッド４０２は、ＨＤＤ１３０３で管理している文書に対して、書誌情報取得部８０２から通知された文書ＩＤで書誌情報を問い合わせ、書誌情報を作成する。例えば、文書ＩＤ「１０１」について書誌情報を取得する場合、書誌情報取得部８０２は、書誌情報取得メソッド４０２（ｇｅｔＰｒｏｐｓ（ｄｏｃＩＤ，ｐｒｏｐｓ））をｇｅｔＰｒｏｐｓ（１０１，ｐｒｏｐｓ）のようにして関数コールする。
【０１０２】
コールされた書誌情報取得メソッド４０２は、ＨＤＤ１３０３に対して指定された文書ＩＤで書誌情報を問い合わせ、該書誌情報を書誌情報取得部８０２へ通知する（ステップＳ５９）。つまり、書誌情報取得メソッド４０２は、書誌情報取得部８０２から通知された文書ＩＤ「１０１」でＨＤＤ１３０３から書誌情報を取得する。そして、書誌情報取得メソッド４０２は、書誌情報取得部８０２へ通知するための書誌情報を作成する。例えば、書誌情報は、ｐｒｏｐ＝｛文書ＩＤ，  文書名，  ページ数，  所有者，  ０｝（「０（ゼロ）」は書誌情報の終了を示す）として作成され、この場合、ｐｒｏｐ＝｛１０１，  ”蓄積文書１”，  ３，  “ユーザー１”，  ０｝のように文書ＩＤ「１０１」に対して設定される。書誌情報取得メソッド４０２は、指定された文書ＩＤに対する書誌情報の作成結果を文書一覧作成複合メソッド８００の書誌情報取得部８０２へ通知する。
【０１０３】
文書一覧作成複合メソッド８００の書誌情報取得部８０２は、その他の文書ＩＤ「１０２」及び「１０３」について、上記同様の処理を繰り返して、全ての文書情報を取得する。
【０１０４】
文書一覧作成複合メソッド８００は、更に、文書一覧作成部８０３によって、文書一覧を作成し、その文書一覧をＸＭＬで記述するためにＸＭＬ処理部５０へ通知する（ステップＳ６０）。つまり、文書一覧作成部８０３は、文書一覧を、例えば、ｄｏｃＬｉｓｔ＝｛｛１０１，  ”蓄積文書１”，  ３，  ”ユーザー１”，０｝，｛１０２，  ”蓄積文書２”，１０，  ”ユーザー２”，０｝，｛１０３，  ”蓄積文書３”，  １，  ”ユーザー１”，０｝，０｝のように作成する。この作成された文書一覧（ｄｏｃＬｉｓｔ）がＸＭＬ処理部５０に通知される。ＸＭＬ処理部５０は、文書一覧（ｄｏｃＬｉｓｔ）を受け取ると、ＳＯＡＰに従ったＨＴＴＰレスポンスのボディ部の生成と同様の記述方法によって、ＸＭＬで記述したＸＭＬ２６を生成してＷｅｂサーバー５００へ通知する（ステップＳ６１）。通知を受けると、Ｗｅｂサーバー５００は、ＨＴＭＬ作成部５０２を実行する。ＨＴＭＬ作成部５０２は、ＸＳＬプロセッサ５０３によって、所定のスタイルリストを示すＸＳＬ２５に基づいて、ＸＭＬ２６をＨＴＭＬフォーマットに変換する。ＨＴＭＬ作成部５０２は、このＨＴＭＬフォーマットに従う処理結果を示すＨＴＭＬ２４によるＨＴＴＰレスポンスを作成し、ｈｔｔｐｄ２へ該ＨＴＴＰレスポンスの送信を要求する（ステップＳ６２）。ｈｔｔｐｄ２は、ＨＴＴＰレスポンスをネットワーク１５を介してネットワーク機器１０Ｂへ送信する（ステップＳ６３）。
【０１０５】
ネットワーク機器１０ＢにてＨＴＴＰレスポンスが受信されると、Ｗｅｂブラウザ２３は、入出力制御部１１によってモニタ９へＨＴＭＬ２４を表示させる（ステップＳ６４）。
【０１０６】
更に、図５において、ファイル管理Ｗｅｂサービス提供処理部４０自身によってＷｅｂサービスを提供することも可能である。つまり、ｈｔｔｐｄ２がネットワーク機器１０ＢからＨＴＴＰリクエストを受信すると（ステップＳ５２），ディストリビューター３０は、ＨＴＴＰリクエストのＧＥＴメソッドに基づいてＧＥＴメソッドによるＨＴＴＰリクエストを処理するＨＴＴＰリクエスト処理部５０１に該ＨＴＴＰリクエストを分配する（ステップＳ５３）。ＨＴＴＰリクエスト処理部５０１は、ディスパッチャー６０によって、ＨＴＴＰリクエストのヘッダ部で指定される書誌情報取得メソッド４０２に処理を振り分ける（ステップＳ５４−３）。
【０１０７】
書誌情報取得メソッド４０２は、ＨＤＤ１３０３で管理している文書に対して、ＨＴＴＰリクエストによって指定される文書ＩＤで書誌情報を問い合わせ、書誌情報を作成し、その書誌情報をＸＭＬで記述したＸＭＬ２６を生成するためにＸＭＬ処理部５０へ通知する（ステップＳ６０−３）。以後、上述したステップＳ６１からＳ６３の処理によって、書誌情報がネットワーク機器１０Ｂに提供される。
【０１０８】
このように、情報処理装置２００は、ネットワーク機器１０からの書誌情報の提供を要求するＨＴＴＰリクエストに応じて、実体を備えた書誌情報取得メソッド４０２自身を実行することができる。また、同様にして、文書ＩＤリスト取得メソッド４０１自身を実行することも可能である。
【０１０９】
よって、情報処理装置２００は、画像を形成すると共に、実際にＷｅｂサービスを提供するための処理を行う複数のメソッドと、それらの組み合せによって、幅広いＷｅｂサービスを提供することができる。
【０１１０】
上記機能構成例において、ネットワーク機器１０Ｂは、情報処理装置２００との間で特別なメッセージ交換方法を必要とせずに、Ｗｅｂブラウザを利用するのみで、情報処理装置２００からＷｅｂサービスの提供を受けることができ、ＲＰＣ（Ｒｅｍｏｔｅ  Ｐｒｏｃｅｄｕｒｅ  Ｃａｌｌ）を実現することができる。また、複合Ｗｅｂサービス提供処理部９０が文書一覧作成複合メソッド８００によって、文書ＩＤリスト取得メソッド４０１及び書誌情報取得メソッド４０２の実体を備えることなく、複数のメソッドを組み合せて一連のＷｅｂサービスの処理を行うことができる。よって、複数のメソッドの組み合せて一連のＷｅｂサービスの処理を行うことができる。よって、ネットワーク機器１０Ｂは、情報処理装置２００が提供可能なＷｅｂサービスの単位を意識することなく、一回のＨＴＴＰリクエストによって一連のＷｅｂサービスの提供を受けることができる。
【０１１１】
更に、このような複合Ｗｅｂサービス提供処理部９０が、プロトコルの異なる処理リクエストによって共有することができる。従って、処理リクエストのプロトコル毎に複合Ｗｅｂサービス提供処理部９０を開発する必要がない。
【０１１２】
また、上記機能構成例において、情報処理装置２００では、Ｗｅｂサーバー５００にＸＳＬ２５を備えることによって、ＸＭＬ処理部５０でのＳＯＡＰを指定するＨＴＴＰレスポンスのボディ部の記述とＳＯＡＰを指定しないＨＴＴＰレスポンスのボディ部の記述の処理を共通化することができる。
【０１１３】
図５に示すＸＭＬ処理部５０は、文書一覧（ｄｏｃＬｉｓｔ）を、例えば、図６に示すようなＸＭＬで記述する。図６は、ＸＭＬ処理部にてＸＭＬで記述された文書一覧の例を示す図である。図６より、記述５３は文書ＩＤ「１０１」の書誌情報を示し、記述５４は文書ＩＤ「１０２」の書誌情報を示し、記述５５は文書ＩＤ「１０３」の書誌情報を示す。例えば、記述５３において、文書ＩＤ「１０１」の書誌情報は、文書名が「蓄積文書１」、ページ数が「３」ページ、所有者が「ユーザー１」であることを示している。
【０１１４】
また、ネットワーク機器１０ＡのＳＯＡＰ処理部１２で作成され、情報処理装置２００へ送信されるＨＴＴＰリクエストは、例えば、図７に示すように記述される。図７は、ＳＯＡＰによるＨＴＴＰリクエストの例を示す図である。図７は、ＳＯＡＰによるＨＴＴＰリクエストの例を示す図である。図７に示すＨＴＴＰリクエストのＨＴＴＰヘッダ部７３おいて、ＵＲＩ７４は、ＰＯＳＴメソッドによってＨＴＴＰリクエストが送信されるＵＲＩを示し、例えば、「ｎｅｔｄｏｃ」である。更に、ＳＯＡＰＡｃｔｉｏｎ７５でリクエストの目的を表すＵＲＩが示され、例えば、「ｈｔｔｐ：／／ｆｏｏ．ｂａｒ．ｃｏｍ／ｎｅｔｄｏｃ／ｄｏｃｕｍｅｎｔＬｉｓｔ」によって「文書一覧」が指定される。情報処理装置２００のｈｔｔｐｄ２がＨＴＴＰリクエストを受信し、ＳＯＡＰ処理部７０がＨＴＴＰヘッダ部７５を解析する。ＳＯＡＰ処理部７０は、＜ＳＯＡＰ−ＥＮＶ：Ｅｎｖｅｌｏｐｅ＞から＜／ＳＯＡＰ−ＥＮＶ：Ｅｎｖｅｌｏｐｅ＞を解析し、＜ｎｓ：ｄｏｃｕｍｅｎｔＬｉｓｔ＞から＜／ｎｓ：ｄｏｃｕｍｅｎｔＬｉｓｔ＞までのＸＭＬで記述された処理内容を示すメッセージを取得する。このＸＭＬメッセージは、ＸＭＬメッセージにおいて、例えば、＜ｌｉｓｔｔｙｐｅ＞に設定されている“１”が全ての文書について一覧を作成することを示す場合、文書一覧作成複合メソッド８００は、そのメッセージの指示に基づいて、文書ＩＤリスト取得部８０１と、書誌情報取得部８０２と、文書一覧作成部８０３とによって、情報処理装置２００にて管理される全文書の一覧を取得する。
【０１１５】
文書一覧は、ＸＭＬ処理部５０でＸＭＬにて記述された後、ＳＯＡＰ処理部７０でＨＴＴＰレスポンスが作成され、例えば、図８に示すようなＨＴＴＰレスポンスを生成する。図８は、ＳＯＡＰによるＨＴＴＰレスポンスの例を示す図である。図８に示すＨＴＴＰレスポンスの例において、ＳＯＡＰ処理部７０は、ＨＴＴＰヘッダ部７８を作成し、更に、ＨＴＴＰボディ部７９を作成する。ＨＴＴＰボディ部７９として、＜ＳＯＡＰ−ＥＮＶ：Ｅｎｖｅｌｏｐｅ＞から＜／ＳＯＡＰ−ＥＮＶ：Ｅｎｖｅｌｏｐｅ＞が作成される。＜ｎｓ：ｄｏｃｕｍｅｎｔＬｉｓｔＲｅｓｐｏｎｓｅ＞から＜／ｎｓ：ｄｏｃｕｍｅｎｔＬｉｓｔＲｅｓｐｏｎｓｅ＞までに示されるメッセージ９１は、ＸＭＬ処理部５０によって文書一覧作成複合メソッド８００からの文書一覧をＸＭＬで記述したメッセージである。
【０１１６】
このようなＨＴＴＰレスポンスがネットワーク機器１０Ａへ通知され、ＳＯＡＰ処理部１２によって＜ＳＯＡＰ−ＥＮＶ：Ｂｏｄｙ＞から＜／ＳＯＡＰ−ＥＮＶ：Ｂｏｄｙ＞にメッセージ９１を取り出し、その取り出されたメッセージ９１は、ＸＭＬ処理部１３によってモニタ９Ａに表示すべき文書一覧情報を取り出してリクエスト／レスポンス処理部１４に通知される。更に、文書一覧情報はリクエスト／レスポンス処理部１４によって画面データとして処理され、例えば、図１０に示すように、入出力制御部１１Ａによってモニタ９Ａに表示される。
【０１１７】
一方、図６に示すＸＭＬで記述された文書一覧は、ＸＳＬ２５に基づいて、ＨＴＭＬ作成部５０２のＸＳＬプロセッサ５０３によって、図９に示すようなＨＴＭＬで記述された文書一覧に変換される。図９は、ＨＴＭＬ作成部にてＨＴＭＬで記述された文書一覧の例を示す図である。図９において、記述９３は、ＨＴＴＰレスポンスのヘッダ部を示し、記述９９は、ＨＴＴＰレスポンスのボディ部を示す。
【０１１８】
記述９９において、記述９４は、ＨＴＭＬのヘッダ部を示し、ネットワーク機器１０Ｂの利用者が要求したＷｅｂサービスに対応するタイトル「文書一覧」を表示するための記述である。記述９５は、文書一覧の項目名を表示するための記述である。記述９６は、図６に示すＸＭＬによる記述５３がＨＴＭＬに変換された記述である。記述９７は、図６に示すＸＭＬによる記述５４がＨＴＭＬに変換された記述である。記述９８は、図６に示すＸＭＬによる記述５５がＨＴＭＬに変換された記述である。
【０１１９】
このようにＨＴＭＬに変換された記述によって、ネットワーク機器１０Ｂのモニタ９Ｂには、図１０に示されるような画面が表示される。図１０は、ネットワーク機器側に表示される画面例を示す図である。図１０に示される画面９２において、文書名、ページ数、所有者等の項目名に対応させて、文書一覧が表示される。また、ＳＯＡＰに従ったＨＴＴＰレスポンスによっても、ネットワーク機器１０Ａのモニタ９Ａには、同様の画面が表示される。
【０１２０】
以上より、本発明に係る情報処理装置２００は、ＷｅｂサービスをＳＯＡＰによるメッセージ交換によって可能とすると共に、ＨＴＭＬによる提供をも可能とする。よって、ネットワーク機器１０Ａ及び１０Ｂの利用者に対して同様のＷｅｂサービスを提供することができる。
【０１２１】
また、ＳＯＡＰを指定したＨＴＴＰリクエストに対しても、ＳＯＡＰを指定しないＨＴＴＰリクエストに対しても、同一のＷｅｂサービスファンクションを実行することができる。更に、ＳＯＡＰを指定したＨＴＴＰレスポンスに対しても、ＳＯＡＰを指定しないＨＴＴＰレスポンスに対しても、ＸＭＬ処理部５０にて生成されたＸＭＬ２６を使用してボディ部を生成することができる。
【０１２２】
上記実施例において、同一のＷｅｂサービスファンクションでＳＯＡＰ対応とＷｅｂブラウザ対応とを可能とする例を説明したが、その他にネットワーク機器との間で独自に取り決めた独自プロトコルにも対応するように、異なる３のプロトコルに対応することも可能である。例えば、ＨＴＴＰリクエスト及びＨＴＴＰレスポンスのボディ部に独自に取り決めたＸＭＬによる記述を設定した独自プロトコルによってネットワーク機器に同一のＷｅｂサービスを提供するようにしても良い。
【０１２３】
【発明の効果】
以上、説明してきたように、本願発明によれば、利用者が使用するコンピュータ端末に標準的なＷｅｂサービス対応ソフトウェアをインストールするだけでよい。また、該コンピュータ端末の機種又はオペレーティングシステムに依存することなく処理要求を行うことができるだけでなく、他の機器からの処理要求も統一的に処理することが可能となる。
【０１２４】
【図面の簡単な説明】
【図１】本発明の一実施例に係る情報処理装置のハードウェア構成を示すブロック図である。
【図２】Ｗｅｂサービスを提供する情報処理装置の機能構成例を示す図である。
【図３】ＳＯＡＰによるＨＴＴＰリクエストの例を示す図である。
【図４】ＳＯＡＰによるＨＴＴＰレスポンスの例を示す図である。
【図５】複合Ｗｅｂサービスを有する情報処理装置の例を説明するための機能構成例を示す図である。
【図６】ＸＭＬ処理部にてＸＭＬで記述された文書一覧の例を示す図である。
【図７】ＳＯＡＰによるＨＴＴＰリクエストの例を示す図である。
【図８】ＳＯＡＰによるＨＴＴＰレスポンスの例を示す図である。
【図９】ＨＴＭＬ作成部にてＨＴＭＬで記述された文書一覧の例を示す図である。
【図１０】ネットワーク機器側に表示される画面例を示す図である。
【符号の説明】
２          ｈｔｔｐｄ（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ  Ｄａｅｍｏｎ）
３０        ディストリビューター
４０〜４９  Ｗｅｂサービス提供処理部
５０        ＸＭＬ処理部
５１        ＣＰＵ
５２        メモリユニット
５３        表示ユニット
５４        入力ユニット
５５        通信ユニット
５６        記憶装置
５７        ドライバ
５８        記憶媒体
６０Ａ、６０Ｂ    ディスパッチャー
７０        ＳＯＡＰ処理部
２００      情報処理装置
Ｂ          システムバス
【図１】
2004213600.tif 000003
【図２】
2004213600.tif 000004
【図３】
2004213600.tif 000005
【図４】
2004213600.tif 000006
【図５】
2004213600.tif 000007
【図６】
2004213600.tif 000008
【図７】
2004213600.tif 000009
【図８】
2004213600.tif 000010
【図９】
2004213600.tif 000011
【図１０】
2004213600.tif 000012