(57)【特許請求の範囲】
【請求項１】
Ｗｅｂサーバにより提供される操作画面を表示するＷｅｂブラウザを備えた画像処理装置であって、
前記Ｗｅｂサーバからの要求に応じて画像処理を実行する処理手段と、
前記Ｗｅｂサーバからの前記要求を受けるための複数のサービスプロバイダに関する情報を記憶する記憶手段と、
前記Ｗｅｂブラウザによる操作画面の要求先に応じて、前記複数のサービスプロバイダのうち少なくとも一つのサービスプロバイダを選択する選択手段と、
前記Ｗｅｂブラウザが前記Ｗｅｂサーバに操作画面を要求する際に、前記選択手段により選択された少なくとも一つのサービスプロバイダに関する情報を通知する通知手段と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記Ｗｅｂブラウザが前記Ｗｅｂサーバに操作画面を要求するために使用されるＵＲＩと、前記少なくとも一つのサービスプロバイダとを対応付けて管理する管理手段を更に備え、
前記選択手段は、前記Ｗｅｂブラウザによる操作画面の要求先として指定されたＵＲＩに対応付けて管理されている前記少なくとも一つのサービスプロバイダを選択することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記複数のサービスプロバイダに関する情報とは、各サービスプロバイダによって実行される画像処理の種別、各サービスプロバイダのバージョン、または各サービスプロバイダへの接続方法を示す情報であることを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記通知手段は、前記Ｗｅｂブラウザが送信するＨＴＴＰ要求データのヘッダ部分に前記選択された少なくとも一つのサービスプロバイダに関する情報を格納することにより、前記通知を行うことを特徴とする請求項１から３のいずれか１項に記載の画像処理装置。
【請求項５】
Ｗｅｂサーバにより提供される操作画面を表示するＷｅｂブラウザと、前記Ｗｅｂサーバからの要求に応じて画像処理を実行する処理手段と、前記Ｗｅｂサーバからの前記要求を受けるための複数のサービスプロバイダに関する情報を記憶する記憶手段と、を備えた画像処理装置の制御方法であって、
前記Ｗｅｂブラウザによる操作画面の要求先に応じて、前記複数のサービスプロバイダのうち少なくとも一つのサービスプロバイダを選択する選択工程と、
前記Ｗｅｂブラウザが前記Ｗｅｂサーバに操作画面を要求する際に、前記選択工程で選択された少なくとも一つのサービスプロバイダに関する情報を通知する通知工程と、
を備えることを特徴とする画像処理装置の制御方法。
【請求項６】
コンピュータを請求項１乃至４のいずれか１項に記載の画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、Ｗｅｂサーバにより提供される操作画面を表示するＷｅｂブラウザを備えた画像処理装置、画像処理装置の制御方法、及びプログラムに関する。
【背景技術】
【０００２】
ＰＣなどの情報処理装置がネットワーク上のＷｅｂサーバに接続され、Ｗｅｂサーバにより提供される操作画面を、情報処理装置が備えるＷｅｂブラウザ上に表示することが知られている。
【０００３】
この場合、情報処理装置のＷｅｂブラウザがＷｅｂサーバに対して操作画面を要求し、Ｗｅｂサーバ上のＷｅｂアプリケーションが情報処理装置からの要求に応えて、Ｗｅｂブラウザに操作画面を表示させるためのＨＴＭＬファイルを情報処理装置に送信する。情報処理装置のＷｅｂブラウザは、受信したＨＴＭＬファイルを解析し、ＨＴＭＬファイルの記述に基づいた操作画面を表示する。
【０００４】
更に、Ｗｅｂブラウザに表示された操作画面を介してユーザが指示を入力すると、入力された指示をＷｅｂブラウザがＷｅｂサーバに対して通知する。そして、この通知を受けたＷｅｂサーバ上のＷｅｂアプリケーションは、入力された指示に従って処理を実行する。
【０００５】
ところで、最近ではスキャナやプリンタを備えたＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）等の画像処理装置の中にも、上述したようなＷｅｂブラウザを備えているものがある。そして、画像処理装置は、上述した手順を用いてＷｅｂサーバにより提供される操作画面をＷｅｂブラウザに表示し、ユーザからの各種指示を受け付ける。
【０００６】
また更には、特許文献１のような技術も考えられている。特許文献１の記載によれば、画像処理装置が備える各機能（サービス）を利用するための指示を入力する操作画面を、Ｗｅｂサーバが提供する。即ち、画像処理装置のユーザは、Ｗｅｂブラウザ上に表示された操作画面を介して、画像処理装置に対する指示を入力する。そして、入力された指示は画像処理装置のＷｅｂブラウザによってＷｅｂサーバに通知される。
【０００７】
この通知を受けたＷｅｂサーバは、ユーザから入力された指示の内容に従って、画像処理装置に対して各種処理の実行を依頼する。そして、この依頼を受けた画像処理装置は、依頼された処理を実行（サービスを提供）する。これにより、画像処理装置を操作するための全てのメニューデータを画像処理装置内で保持しておく必要がなくなり、またメニューデータの変更もＷｅｂサーバ上で容易に行うことができるようになる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００５‐２４２９９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
画像処理装置のユーザが指示を入力する操作画面をＷｅｂサーバが提供し、Ｗｅｂサーバから画像処理装置に処理を依頼するようにした場合、画像処理装置が提供するサービスに関する情報をあらかじめ固定的にＷｅｂサーバに登録する必要がある。
【００１０】
しかしながら、画像処理装置が提供するサービスは一般に複数あり、しかも各サービスのアップデートやオプション機能の追加インストールなどによってその能力やバージョン等が動的に変化する。また、各サービスを利用するために用いるプロトコルや接続アドレス情報といった、サービスの利用方法の選択肢も複数あり得る。このため、画像処理装置が提供するサービスに関する情報を、あらかじめ固定的にＷｅｂサーバに登録しておくことは困難である。
【００１１】
このような問題に対して、特許文献１には、画像処理装置が提供するサービスに関する情報の１つであるＵＲＬ（サービスへの接続情報）を、画像処理装置からＷｅｂサーバに通知することが示されている。
【００１２】
しかしながら、特許文献１は、画像処理装置が提供するサービスに関する情報をＷｅｂサーバからの要求に応じて通知するだけのものであり、通知するタイミングや通知先に応じて、通知するか否か或いは通知する情報の内容を切り替えてはいない。従って、通知するタイミングや通知先によっては、通知すること自体が不要な場合であっても、情報が通知されてしまう。
【００１３】
即ち、例えば通知するタイミングや通知先に関わらず通知の度に全てのサービスに関する情報を通知するようにした場合、画像処理装置とＷｅｂサーバとの間でやり取りされるデータ量が増加するという問題がある。また、通知先に関わらず常にサービスに関する情報を通知することにより、機密性の高い情報が外部に漏洩してしまうおそれがある。
【００１４】
本発明は、上記の問題点に鑑みなされたものであり、Ｗｅｂブラウザのアクセス先に応じて、当該アクセス先に画像処理装置に関する情報を通知すべきであるか否かを判断した上で、該情報を通知する仕組みを提供することを目的とする。
【００１５】
また、本発明は、複数の処理手段のそれぞれに関する情報のうち、Ｗｅｂブラウザのアクセス先に通知すべき情報を選択した上で、該選択された情報を通知する仕組みを提供することを他の目的とする。
【課題を解決するための手段】
【００１７】
また、本発明の画像処理装置は、Ｗｅｂサーバにより提供される操作画面を表示するＷｅｂブラウザを備えた画像処理装置であって、前記Ｗｅｂサーバからの要求に応じて画像処理を実行する処理手段と、前記Ｗｅｂサーバからの前記要求を受けるための複数のサービスプロバイダに関する情報を記憶する記憶手段と、前記Ｗｅｂブラウザによる操作画面の要求先に応じて、前記複数のサービスプロバイダのうち少なくとも一つのサービスプロバイダを選択する選択手段と、前記Ｗｅｂブラウザが前記Ｗｅｂサーバに操作画面を要求する際に、前記選択手段により選択された少なくとも一つのサービスプロバイダに関する情報を通知する通知手段と、を備えることを特徴とする。
【発明の効果】
【００１８】
本発明によれば、Ｗｅｂブラウザのアクセス先に応じて、当該アクセス先に画像処理装置に関する情報を通知すべきであるか否かを判断した上で、該情報を通知する仕組みを提供することができる。
【００１９】
また、本発明によれば、複数の処理手段のそれぞれに関する情報のうち、Ｗｅｂブラウザのアクセス先に通知すべき情報を選択した上で、該選択された情報を通知する仕組みを提供することができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の実施形態における情報処理システムの全体図である。
【図２】本発明の実施形態におけるＭＦＰ１０１の構成を示すブロック図である。
【図３】本発明の実施形態におけるＷｅｂサーバ１０３の構成を示すブロック図である。
【図４】本発明の実施形態における情報処理システムのソフトウェア構成を示す図である。
【図５】本発明の実施形態におけるＭＦＰ１０１、Ｗｅｂサーバ１０３、及びファイルサーバ１０２が一連の処理を実行する動作を説明するシーケンス図である。
【図６】本発明の実施形態におけるＷｅｂブラウザ画面を示す図である。
【図７】本発明の実施形態におけるＷｅｂブラウザ画面を示す図である。
【図８】本発明の実施形態におけるネイティブ画面を示す図である。
【図９】本発明の実施形態におけるＷｅｂブラウザ画面を示す図である。
【図１０】本発明の実施形態におけるＭＦＰ１０１の動作を説明するフローチャートである。
【図１１】本発明の実施形態におけるサービスレポジトリ部４９２を説明する図である。
【図１２】本発明の実施形態におけるＵＲＩ情報記憶部４９３を説明する図である。
【図１３】本発明の実施形態におけるＭＦＰ１０１の動作を説明するフローチャートである。
【図１４】本発明の実施形態におけるＷｅｂブラウザ４４０が生成するＨＴＴＰ要求データの一例を示す図である。
【発明を実施するための形態】
【００２１】
以下、図面を参照して本発明の実施の形態を詳しく説明する。尚、以下の実施の形態は特許請求の範囲に係る発明を限定するものでなく、また実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【００２２】
（第１の実施形態）
図１は、第１の実施形態における情報処理システムの全体図である。ＬＡＮ１１０には、ＭＦＰ１０１、ファイルサーバ１０２、Ｗｅｂサーバ１０３が互いに通信可能に接続されている。また、ＬＡＮ１１０上には図示しないＦＴＰ（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）サーバも備えられており、ＭＦＰ１０１からＦＴＰサーバに対して画像データをＦＴＰ送信することも可能となっている。
【００２３】
図２は、ＭＦＰ１０１の構成を示すブロック図である。ＣＰＵ２１１を含む制御部２１０は、ＭＦＰ１０１全体の動作を制御する。ＣＰＵ２１１は、ＲＯＭ２１２に記憶された制御プログラムを読み出して読取制御や送信制御などの各種制御処理を実行する。ＲＡＭ２１３は、ＣＰＵ２１１の主メモリ、ワークエリア等の一時記憶領域として用いられる。ＨＤＤ２１４は、画像データや各種プログラム、或いは後述する各種情報テーブルを記憶する。
【００２４】
操作部Ｉ／Ｆ２１５は、操作部２１９と制御部２１０とを接続する。操作部２１９には、タッチパネル機能を有する液晶表示部やキーボードなどが備えられている。また、ＭＦＰ１０１には後述するＷｅｂブラウザ機能が備えられており、ＭＦＰ１０１のＷｅｂブラウザはＷｅｂサーバ１０３から受信したＨＴＭＬファイルを解析し、受信したＨＴＭＬファイルの記述に基づく操作画面を操作部２１９上に表示する。
【００２５】
プリンタＩ／Ｆ２１６は、プリンタ２２０と制御部２１０とを接続する。プリンタ２２０で印刷すべき画像データはプリンタＩ／Ｆ２１６を介して制御部２１０からプリンタ２２０に転送され、プリンタ２２０において記録媒体上に印刷される。
【００２６】
スキャナＩ／Ｆ２１７は、スキャナ２２１と制御部２１０とを接続する。スキャナ２２１は、原稿上の画像を読み取って画像データを生成し、スキャナＩ／Ｆ２１７を介して制御部２１０に入力する。
【００２７】
ネットワークＩ／Ｆ２１８は、制御部２１０（ＭＦＰ１０１）をＬＡＮ１１０に接続する。ネットワークＩ／Ｆ２１８は、ＬＡＮ１１０上の外部装置（例えば、ファイルサーバ１０２やＷｅｂサーバ１０３）に画像データや情報を送信したり、ＬＡＮ１１０上の外部装置から各種情報を受信したりする。
【００２８】
図３は、Ｗｅｂサーバ１０３の構成を示すブロック図である。なお、ファイルサーバ１０２は、Ｗｅｂサーバ１０３と同様の構成を有するものとする。
【００２９】
ＣＰＵ３１１を含む制御部３１０は、Ｗｅｂサーバ１０３全体の動作を制御する。ＣＰＵ３１１は、ＲＯＭ３１２に記憶された制御プログラムを読み出して各種制御処理を実行する。ＲＡＭ３１３は、ＣＰＵ３１１の主メモリ、ワークエリア等の一時記憶領域として用いられる。ＨＤＤ３１４は、画像データや各種プログラム、或いは後述する各種情報テーブルを記憶する。
【００３０】
ネットワークＩ／Ｆ３１５は、制御部３１０（Ｗｅｂサーバ１０３）をＬＡＮ１１０に接続する。ネットワークＩ／Ｆ３１５は、ＬＡＮ１１０上の他の装置との間で各種情報を送受信する。
【００３１】
図４は、情報処理システム全体のソフトウェア構成を説明するための図である。図４に示す各機能部は、ＭＦＰ１０１／ファイルサーバ１０２／Ｗｅｂサーバ１０３のそれぞれに備えられているＣＰＵが制御プログラムを実行することにより実現される。
【００３２】
ＭＦＰ１０１は、ログインアプリケーション４３０、Ｗｅｂブラウザ４４０、複数のサービスプロバイダ４５０を含むサービスプロバイダフレームワーク４５３、ジョブ・デバイス情報記録部４６０、画像処理管理部４９０、画像処理制御部４９１を備える。また、ＭＦＰ１０１は、サービスレポジトリ部４９２、ＵＲＩ情報記憶部４９３、ログインコンテキスト管理部４９４、プリファレンス情報記憶部４９５、アクセス制御情報記憶部４９６、オプション構成管理部４９７を備える。
【００３３】
ログインアプリケーション４３０は、画面表示部４３１及び認証処理部４３２を含む。画面表示部４３１は、認証処理部４３２が実行する認証処理に必要な認証情報をユーザに入力させるための認証画面を、操作部２１９に表示する。なお、この認証画面はＷｅｂサーバ１０３により提供されるものではなく、ログインアプリケーション４３０がＭＦＰ１０１内に保持している情報を読み出して表示する。このように、ＭＦＰ１０１内に予め保持されている情報に基づいて表示される画面をネイティブ画面と呼ぶこととする。
【００３４】
画面表示部４３１により表示された認証画面を介して認証情報が入力されると、認証処理部４３２が、入力された認証情報を用いてユーザ認証の処理を行う。
【００３５】
認証処理部４３２が認証処理を行う場合には、画面表示部４３１により表示される認証画面を介して入力された認証情報と、ＨＤＤ２１４に記憶されている認証情報を照合する。そして、この照合結果に応じて、ユーザによるＭＦＰ１０１の使用が許可される。
【００３６】
Ｗｅｂブラウザ４４０は、通信部４４１、解析部４４２、及び画面表示部４４３を含む。通信部４４１は、ＨＴＴＰプロトコルに従ってＷｅｂアプリケーション４１０のプレゼンテーション部４１１と通信する。より具体的には、通信部４４１は、ＵＲＩによって特定されるＷｅｂアプリケーション４１０のリソースに対してＧＥＴまたはＰＯＳＴのＨＴＴＰ要求を送信する。つまり、指定されたＵＲＩをアクセス先としてＷｅｂブラウザ４４０がアクセスを行う。そして、ＨＴＴＰ要求に対するＨＴＴＰ応答として、Ｗｅｂブラウザで表示するＨＴＭＬ等で記述された操作画面をＷｅｂアプリケーション４１０から取得する。また、Ｗｅｂブラウザで表示したＨＴＭＬフォーム等に入力されたユーザからの指示を、ＨＴＴＰ要求によってＷｅｂアプリケーション４１０に通知する。
【００３７】
解析部４４２は、Ｗｅｂアプリケーション４１０から受信するＨＴＭＬファイルを解析する。このＨＴＭＬファイルには、Ｗｅｂブラウザに表示すべき操作画面の内容を示す記述が含まれている。
【００３８】
画面表示部４４３は、解析部４４２による解析の結果に基づいて、操作部２１９上に操作画面を表示する。このように、Ｗｅｂサーバ１０３から受信した情報（ＨＴＭＬファイル）に基づいて表示される画面をＷｅｂブラウザ画面と呼ぶこととする。
【００３９】
ファイルサーバ１０２は、ファイル管理部４７０とファイル記憶部４８０を備えている。ファイル記憶部４８０には、ＭＦＰ１０１が読み取った画像データファイルを含む各種のデータファイルが記憶される。ファイル管理部４７０は、ファイル記憶部４８０に記憶されているファイルを管理する。
【００４０】
Ｗｅｂサーバ１０３には、Ｗｅｂアプリケーション４１０及びログ記録部４２０が備えられている。さらに、Ｗｅｂアプリケーション４１０には、プレゼンテーション部４１１及びロジック部４１２が含まれる。Ｗｅｂアプリケーション４１０は、受信したＨＴＴＰ要求に応じて、ロジック部４１２の処理を行う。また、プレゼンテーション部４１１でＨＴＭＬ等のデータ生成を行い、ＨＴＴＰ応答としてデータをＷｅｂブラウザへ送信する。
【００４１】
プレゼンテーション部４１１は、通信部４４１と通信し、ＭＦＰ１０１からの要求に応えてＭＦＰ１０１のＷｅｂブラウザで表示すべき操作画面をＭＦＰ１０１に送信する。また、ＭＦＰ１０１のＷｅｂブラウザに表示された操作画面を介して入力されたユーザからの指示をＭＦＰ１０１からＨＴＴＰ要求として受け取る。
【００４２】
ユーザからの指示をＨＴＴＰ要求として受け取ったＷｅｂアプリケーション４１０は、指示の内容に従って各種処理を実行するとともに、ＭＦＰ１０１に対して処理の実行を依頼する。具体的には、ＭＦＰ１０１のプリンタ２２０による印刷処理の実行や、スキャナ２２１による読取処理の実行、或いはネットワークＩ／Ｆ２１８を介した送信処理の実行を依頼する。またあるいは、ＨＤＤ２１４による文書蓄積や文書検索、ファクス回線（不図示）を介したファクシミリの送受信処理、等の実行を依頼する。
【００４３】
このようにＭＦＰ１０１に対して処理の実行を依頼する場合には、ロジック部４１２がＭＦＰ１０１に備えられたサービスプロバイダ４５０内の通信部４５１と通信する。そして、ＭＦＰ１０１により実行された処理の結果は、ログ記録部４２０に記録される。なお、ログ記録部４２０には、Ｗｅｂサーバ１０３で実行される認証処理の結果も記録される。
【００４４】
サービスプロバイダフレームワーク４５３は、複数のサービスプロバイダ４５０を管理する。サービスプロバイダフレームワーク４５３によって、サービスプロバイダ４５０のライフサイクル管理、すなわちインストール、アンインストール、アップデート、活性化、不活性化、を行うことができる。また、サービスプロバイダ４５０と、その他のソフトウェアとの間をつなぐインタフェースを提供する。
【００４５】
サービスプロバイダ４５０は、通信部４５１、機能インタフェース部４５２、及び画面表示部４５３を含む。通信部４５１は、Ｗｅｂアプリケーション４１０内のロジック部４１２からの処理依頼を受け付ける。Ｗｅｂアプリケーション４１０から処理の実行を依頼された場合は、依頼された処理に応じて、機能インタフェース部４５２が処理を実行する。
【００４６】
サービスプロバイダ４５０は、例えば、画像処理機能の実行を依頼された場合に、機能インタフェース部４５２はそのためのジョブを生成し、画像処理管理部４９０を利用して実行する。また、サービスプロバイダ４５０は、画像処理管理部４９０を利用して、ジョブの停止、再開、中止、優先度変更などのジョブ制御やジョブのモニタリング等の管理処理を実行する。更に、サービスプロバイダ４５０は、ジョブ・デバイス記憶部４６０に記憶される履歴情報やカウンタ情報や設定情報を参照したり更新したりする。更に、サービスプロバイダ４５０は、サービスレポジトリ部４９２に記憶されるサービスプロバイダ情報を参照して、ＭＦＰ１０１が提供可能な複数サービスの種別、バージョン、利用するための接続方法等を検索する。
【００４７】
更に、サービスプロバイダ４５０は、通信部４５１とファイルサーバ１０２のファイル管理部４７０が通信して、ファイル記憶部４８０に対してデータを送信したりファイル記憶部４８０からデータを受信したりする。具体的には、スキャナ２２１で読み取った画像データをファイルサーバ１０２へアップロードするサービスプロバイダや、ファイルサーバ１０２からプリントデータを受信してプリンタ２２０で印刷するサービスプロバイダがある。
【００４８】
画面表示部４５３は、サービスプロバイダ４５０の実行にあたって必要な操作画面を操作部２１９に表示する。すなわち、ジョブの実行パラメータを確認や設定したり、ジョブの実行状況をモニタリングしたり、ジョブの実行にあたって発生したジャム等のエラーを回復したり、ジョブの中断やキャンセル等の状態管理をしたりするための操作画面を操作部２１９に表示する。ジョブを実行した結果はログとしてジョブ・デバイス情報記録部４６０に記録される。
【００４９】
なお、ジョブ・デバイス情報記録部４６０には、サービスプロバイダ４５０以外の要求元、たとえば操作部２１５から起動され画像処理管理部４９０が実行したジョブの履歴等も記録される。ログインアプリケーション４３０により実行される認証処理の結果や、Ｗｅｂサーバ１０３との通信履歴なども記録される。
【００５０】
またジョブ・デバイス記録部４６０はジョブ実行の各種統計情報も集計して記録する。統計情報は、たとえば入出力した用紙枚数や、画像処理したページ数、メモリ量や機能モジュールの使用量などのカウンタを含む。
【００５１】
またジョブ・デバイス記録部４６０は、実行中のジョブ群の状態情報も記憶する。またジョブ・デバイス記録部４６０はＭＦＰ１０１が備える操作部２１５、プリンタ２２０、スキャナ２２１、制御部２１０などの装置ユニットを管理するための状態情報や構成情報等も記録する。
【００５２】
画像処理管理部４９０は、機能インタフェース部４５２等の要求元からの依頼に応えて画像処理制御部４９１を管理し、画像処理ジョブを実行する。画像処理制御部４９１は画像処理ジョブを実行するために、ＭＦＰ１０１が備える操作部２１５、プリンタ２２０、スキャナ２２１、制御部２１０などの各ユニットを制御する。画像処理管理部４９０は、実行中のジョブのモニタリングや停止、再開、中止、優先度変更などのジョブの管理も行う。
【００５３】
サービスレポジトリ部４９２は、サービスプロバイダフレームワーク４５３が管理する複数のサービスプロバイダ４５０に関する情報を記憶する。Ｗｅｂブラウザ４４０は、サービスレポジトリ部４９２に記憶された情報を参照したり更新したりできる。
【００５４】
ＵＲＩ情報管理部４９３は、Ｗｅｂ上でリソースを識別する手段としてユニフォーム・リソース・アイデンティファイア（ＵＲＩ）情報を管理する。ユニフォーム・リソース・ロケータ（ＵＲＬ）の概念はＵＲＩに含まれる。ＵＲＩ情報管理部４９３は、たとえばＷｅｂブラウザ４４０が起動時に自動的に取得するＷｅｂページを特定するＵＲＬ（ホームページＵＲＬ）を管理する。また、操作部２１９のボタン操作等によりワンタッチでＷｅｂブラウザ４４０に表示するＷｅｂページを特定するＵＲＬ（ブックマークやサイト・スペシフィック・ブラウザのＵＲＬ）を管理する。さらに、ＵＲＩのパターンから、そのパターンと関連づけられたサービス情報をサービスレポジトリ部４９２から検索するための、パターンマッチングルールも管理する。
【００５５】
ログインコンテキスト管理部４９４は、操作部２１９を使用中のユーザに関するセッション情報を管理する。ＭＦＰ１０１の各種機能は、そのセッション情報に応じて動作がパーソナライズされる。すなわち、プリファレンス情報記憶部４９５の内容に応じて、ユーザが好む動作パラメータを優先する。また、アクセス制御情報記憶部４９６内に記憶された、ユーザに付与された権限に応じて、動作を禁止したり続行したりする。サービスプロバイダ４５０によって起動される動作も、これらパーソナライズの対象に含まれる。
【００５６】
プリファレンス情報記憶部４９５は、ＭＦＰ１０１を使用する複数のユーザのそれぞれについて、ＭＦＰ１０１の動作に関する各種の好みを表現するためのプリファレンス情報を記憶する。プリファレンス情報とは、カラーよりも白黒の処理を好む、用紙サイズはＡ４よりもレターサイズを好む、読み取り画像のプレビューを確認してから送信するよりも確認ステップを省き短手番で送信することを好む、等の情報である。プリファレンス情報は、ユーザや管理者がプリファレンス情報記憶部４０５に予め設定できる。また、当該ユーザによる過去の操作履歴から好みを自動判定しプリファレンス情報記憶部４０５に自動設定することもできる。
【００５７】
アクセス制御情報記憶部４９６は、ＭＦＰ１０１を使用する複数のユーザのそれぞれについて、ＭＦＰ１０１が提供する各種機能や資源に対する、実行や読み出しや書き込み等のアクセスを制御するためのアクセス制御情報を記憶する。アクセス制御情報とは、カラー処理を禁止し白黒処理を許可する、片面印字を禁止し両面プリントを許可する、文書の送信を禁止しコピーを許可する、管理者用設定パラメータの変更を禁止し一般ユーザ用設定パラメータの変更を許可する、等の情報である。アクセス制御情報はシステム管理者がアクセス制御情報記憶部４９６へ予め設定できる。また、外部サーバに記憶管理されているアクセス・コントロール・リスト（ＡＣＬ）等をネットワーク経由で利用するように構成することもできる。
【００５８】
オプション構成管理部４９７は、ＭＦＰ１０１に選択的に装着されるオプションユニットや、組み込みアプリケーションやライセンスが選択的にインストールされることで利用可能となるオプション機能の構成を管理する。オプション構成管理部４９７が管理するオプション構成には、スキャナユニット２２１やファクスユニットの有無などの装置構成情報がある。また、プリンタ２２０の給紙ユニットや排紙フィニッシャやスタッカ、スキャナ２２１の原稿フィーダの装着状況や種別などのアクセサリ構成情報がある。また、生体認証やＩＣカードリーダ等のユーザ認証装置や、キーボード、ポインティングデバイスなどＵＳＢ接続されるオプション装置の装着状況情報もある。また、組み込み文書管理機能の有無など、オプション機能のインストール状況の情報もある。また、送信文書の暗号化送信機能や、スキャナによる読み取り画像をＯＣＲ処理して検索可能なテキストとともに送信するサーチャブル文書送信機能など、各種機能の付加機能のライセンスによる活性化状況の情報もある。
【００５９】
図５は、画像処理システム全体のインタラクションを説明するための図である。図５のシーケンスは、ＭＦＰ１０１、ファイルサーバ１０２、Ｗｅｂサーバ１０３のそれぞれに備えられているＣＰＵが制御プログラムを協調的に実行することにより実現される。
【００６０】
ユーザがＭＦＰ１０１の操作を開始するとユーザ認証が求められる。操作部２１９の操作画面にはログインアプリケーション４３０が表示する操作部へのログイン画面Ｄ１が表示される。ユーザが認証操作を行うと、ログインアプリケーション４３０と認証処理部４３２によりユーザ認証処理が行われる。ユーザの認証に成功するとログイン処理が行われ、ログインアプリケーション４３０はログインコンテキスト管理部４９４の操作部セッション管理データ構造にユーザ認証情報を設定する。操作部２１９の操作画面はログイン後の初期画面として登録されているＷｅｂブラウザ画面に遷移する（画面遷移Ｔ１）。同時に、ログインアプリケーション４３０からＷｅｂブラウザ４４０へ、ユーザ認証情報とログインイベント５０１が通知される。
【００６１】
Ｗｅｂブラウザ４４０は、初期状態で表示されると、あらかじめ設定されたホームページ設定に従って、所定のＵＲＩに対するＨＴＴＰ  ＧＥＴ要求を送信する。設定されたＵＲＩが、セキュアなＨＴＴＰ通信を指定している場合、セキュアソケットレイヤ（ＳＳＬ）上のＨＴＴＰＳプロトコルにより、ＨＴＴＰＳ  ＧＥＴ要求５０２が送信される。ＨＴＴＰＳ  ＧＥＴ要求５０２では、ログインアプリケーション４３０により認証されたユーザ認証に基づくユーザ認証情報も送信される。
【００６２】
Ｗｅｂサーバ１０３は、ＨＴＴＰ  ＧＥＴ要求５０２を受信すると、指定されたＵＲＩに基づいて実行すべきＷｅｂアプリケーションとその処理ロジックを選択し、その実行を行う。ここでこのＵＲＩを、たとえばｈｔｔｐ：／／ｗｗｗ．ｅｘａｍｐｌｅ．ｃｏｍ／と仮定して説明する。Ｗｅｂサーバ１０３のＷｅｂアプリケーションが、Ｗｅｂサーバとしてユーザ認証を求めるように設定されている場合、指定のＵＲＩによらず、ユーザ認証を実行するＵＲＩへリダイレクトされる。すなわち、指定のＵＲＩが機能選択画面Ｄ３の取得に相当するＵＲＩの場合であっても、ログイン画面Ｄ２に相当するＵＲＩへリダイレクトされる。その結果Ｗｅｂサーバ１０３はログイン画面Ｄ２に相当するＨＴＭＬ文書を生成し、ＨＴＴＰＳ  ＧＥＴ応答５０３でＨＴＭＬ文書データを送信する。ところで、Ｗｅｂアプリケーションがユーザ認証を求めないように設定されている場合や、ＨＴＴＰ要求中で伝えられたＭＦＰ１０１で既に完了しているユーザ認証を信頼するように設定されている場合はログイン画面Ｄ２の応答は省略できる。すなわち、ＨＴＴＰ  ＧＥＴ要求５０２で指定されたとおり、その応答として機能選択画面Ｄ３に相当するＨＴＭＬデータを応答する。
【００６３】
ＨＴＴＰ  ＧＥＴ応答５０３を受信したＷｅｂブラウザ４４０は、受信したＨＴＭＬに基づきログイン画面Ｄ２を表示する。ログイン画面Ｄ２はＨＴＭＬフォームで構成されている。ユーザはログイン画面Ｄ２に対して正統なユーザであることを主張する情報を入力しサブミットする。すると、ＨＴＭＬフォームのｆｏｒｍ要素のａｃｔｉｏｎ属性に埋め込まれていたＵＲＩに対して、ユーザが入力した情報をクエリ文字列として含むＨＴＴＰ要求が送信される。フォームのｆｏｒｍ要素のｍｅｔｈｏｄ属性がｐｏｓｔに指定されていれば、ＨＴＴＰ  ＰＯＳＴ要求５０４として送信される。なお、ここで、もしｍｅｔｈｏｄ属性がｇｅｔに指定されていれば、クエリ文字列をＵＲＬの一部に埋め込んだＨＴＴＰ  ＧＥＴ要求として送信される。
【００６４】
このＨＴＴＰ  ＧＥＴ要求を受信したＷｅｂサーバ１０３は、ユーザ認証を行う。そして、ユーザ認証が成功すると、当初要求されていたＵＲＩ（ｈｔｔｐ：／／ｗｗｗ．ｅｘａｍｐｌｅ．ｃｏｍ／）のパス部分（／）に基づき機能選択画面Ｄ３に相当するＨＴＭＬを生成し、ＨＴＴＰ  ＰＯＳＴ応答５０５を送信する。
【００６５】
ＨＴＴＰ  ＰＯＳＴ応答５０５を受信したＷｅｂブラウザ４４０は、受信したＨＴＭＬに基づき機能選択画面Ｄ３を表示する。
【００６６】
図６は、機能選択画面の一例を示す図である。機能選択画面Ｄ３は、Ｗｅｂサーバ１０３が提供する複数のＷｅｂアプリケーションを選択するためのメニューである。図６はＨＴＭＬのアンカー要素（ａ要素）を割り当てた複数のボタン画像によって構成されている。
ここでたとえばユーザが、ボタン６０１を選択すると、ファイル・トランスファー・プロトコル（ＦＴＰ）によるプッシュスキャン機能を実装したＷｅｂアプリケーションを識別するＵＲＩを指定したＨＴＴＰ  ＧＥＴ要求５０６が送信される。このＵＲＩが、ｈｔｔｐｓ：／／ｗｗｗ．ｅｘａｍｐｌｅ．ｃｏｍ／ｓｃａｎ−ｔｏ−ｆｔｐだったとする。受信したＷｅｂサーバ１０３は、指定されたＵＲＩのパス部分（／ｓｃａｎ−ｔｏ−ｆｔｐ）に従ってＷｅｂアプリケーションを選択し、この要求の処理を実行する。Ｗｅｂサーバ１０３はＦＴＰプッシュスキャン機能の初期画面に相当するＨＴＭＬ文書を生成し、ＨＴＴＰ  ＧＥＴ応答５０７として送信する。Ｗｅｂブラウザ４４０は、受信したＨＴＭＬに基づきスキャン設定・送信設定画面Ｄ４を表示する。なお、他のボタン６０２、６０３、６０４、６０５、及び６０６が選択された場合も同様のやり取りが実行される。
【００６７】
図７は、スキャン設定・送信設定画面の一例を示す図である。ＭＦＰ１０１のスキャナ２２１を用いて原稿上の画像を読み取って画像データを生成し、生成した画像データをＬＡＮ１１０上のＦＴＰサーバ１０２に送信することを指示するための画面例を示す。図７に示す例では、画像データをＰＤＦフォーマットで生成し、「ｔｅｓｔ．ｐｄｆ」というファイル名を付与することが設定された状態となっている。
【００６８】
図７はＨＴＭＬフォームで構成されている。ユーザが実行ボタン７０１を選択すると、フォームがサブミットされる。図７に示すようにＨＴＭＬフォームのａｃｔｉｏｎ属性にｈｔｔｐｓ：／／ｗｗｗ．ｅｘａｍｐｌｅ．ｃｏｍ／ｓｃａｎ−ｔｏ−ｆｔｐ／ｓｔａｒｔとセットされていた場合は、次のように処理される。つまり、パス（／ｓｃａｎ−ｔｏ−ｆｔｐ／ｓｔａｒｔ）が指定されたＨＴＴＰ  ＰＯＳＴ要求５０８が、Ｗｅｂサーバ１０３（ｈｔｔｐｓ：／／ｗｗｗ．ｅｘａｍｐｌｅ．ｃｏｍ）に送信される。ユーザが選択した画像フォーマット等のスキャン設定やファイル名等の送信設定は、ＨＴＴＰ要求の本体（エンティティ）のデータとして、ＨＴＴＰ  ＰＯＳＴ要求５０８によってＷｅｂサーバ１０３へ送信される。
【００６９】
Ｗｅｂサーバ１０３はＷｅｂアプリケーションを実行してこの要求を処理する。すなわち、まず受信したスキャン設定や送信設定といった画像処理のパラメータが適切であることをチェックする。適切であれば、ユーザに処理の実行中であることを伝える処理中画面Ｄ５に相当するＨＴＭＬ文書を生成し、これをＨＴＴＰ  ＰＯＳＴ応答５０９として送信する。さらに、画像処理装置が提供するサービスを利用してスキャンとＦＴＰ送信を行うために、ＳｃａｎＴｏＦｔｐサービスプロバイダ４５３に処理を依頼する。処理の依頼方法を特定する仕組みは後述する。ＳＯＡＰ要求５１０では、画像処理のパラメータ（Ｗｅｂブラウザ４４０から受信したスキャン設定や送信設定を含む）を伝える。また、サービスプロバイダによるサービスの完了時にＷｅｂブラウザ４４０で表示させたい画面に対応するＵＲＩ（ここではｈｔｔｐｓ：／／ｗｗｗ．ｅｘａｍｐｌｅ．ｃｏｍ／ｓｃａｎ−ｔｏ−ｆｔｐ／ｃｏｍｐｌｅｔｅとする）を、復帰ＵＲＩとして伝える。
【００７０】
サービスプロバイダ４５３は、ＳＯＡＰ要求５１０を受信すると、画像処理管理部４９０によって原稿画像のスキャン処理を実行し、ＳＯＡＰ応答５１１を返す。サービスプロバイダ４５３は、操作部２１９のウィンドウ管理機能に要求して、プレビュー画面Ｄ６をユーザに見える位置に表示するように画面遷移させる（画面遷移Ｔ２）。
【００７１】
スキャンなどの画像処理動作中にジャムなどのエラーが発生した場合は、サービスプロバイダ４５３はジャム回復等画面Ｄ７に遷移する（画面遷移Ｔ３）。ユーザや画像処理管理部４９０とインタラクションしてエラーからの回復を行い、プレビュー画面Ｄ６に復帰する（画面遷移Ｔ４）。
【００７２】
図８はプレビュー画面の一例を示す図である。ＳｃａｎＴｏＦＴＰサービスプロバイダ４５３が操作部２１９に表示するネイティブ画面である。プレビュー画面には、読み取った画像データのプレビューを表示する領域と、縮小ボタン、拡大ボタン、回転ボタン、再スキャンボタン、ＯＫボタン、キャンセルボタンを備える。縮小ボタンと拡大ボタンはそれぞれ、プレビュー領域内のプレビュー画像の縮小表示、拡大表示を指示する。回転ボタンは、画像データの回転を指示するボタンであり、押すたびに読み取った画像データを時計回転方向へ９０度回転する。また同時にプレビュー表示領域の表示画像も回転する。再スキャンボタンは、スキャンをやり直し読み取った画像データを置き換える。ＯＫボタンは、読み取った画像データを送信するためのボタンである。
【００７３】
ユーザがＯＫボタン８０１を選択すると、ＳＯＡＰ要求５１０で渡された送信設定によって指定されたファイルサーバ１０２の所定のディレクトリに対して所定のファイル名で、読み取った画像データがＦＴＰによりＦＴＰ５１２でアップロードされる。
【００７４】
ＳＯＡＰ要求５１０によって要求された処理が完了すると、サービスプロバイダ４５３はＷｅｂサーバ１０３から指定された復帰ＵＲＩをＷｅｂブラウザ４４０に伝え、（復帰ＵＲＩ５１３）Ｗｅｂブラウザ４４０の画面を表示させる（画面遷移Ｔ５）。
【００７５】
Ｗｅｂブラウザは復帰ＵＲＩ５１３に対するＨＴＴＰ  ＧＥＴ要求５１４をＷｅｂサーバ１０３へ送信する。Ｗｅｂサーバ１０３はＷｅｂアプリケーションを実行し、完了画面Ｄ８に相当するＨＴＭＬ文書を生成し、ＨＴＴＰ  ＧＥＴ応答５１５としてＷｅｂブラウザ４４０へ送信する。
【００７６】
Ｗｅｂブラウザ４４０は、受信したＨＴＭＬ文書を解釈し完了画面Ｄ８として操作部２１９へ表示する。ユーザがメニューに戻るボタンを選択すると、Ｗｅｂブラウザ４４０は、機能選択画面Ｄ３に相当するＵＲＩ（ｈｔｔｐｓ：／／ｗｗｗ．ｅｘａｍｐｌｅ．ｃｏｍ／）へのＨＴＴＰ  ＧＥＴ要求５１６を送信する。受信したＷｅｂサーバ１０３は、ＨＴＴＰ  ＰＯＳＴ応答５０５と同様の機能選択画面Ｄ３を応答し、以下このシーケンスを繰り返す。
【００７７】
図９は、ＭＦＰ１０１のＷｅｂブラウザによって表示される実行結果表示画面の一例を示す。実行結果表示画面には、ＭＦＰ１０１が実行した処理の結果を示す情報が表示されている。ユーザがボタン９０１を選択すると、機能選択画面Ｄ３に相当するＵＲＩ（ｈｔｔｐｓ：／／ｗｗｗ．ｅｘａｍｐｌｅ．ｃｏｍ／）へのＨＴＴＰ  ＧＥＴ要求５１６が送信される。
【００７８】
図１０は、サービスプロバイダフレームワーク４５３の処理手順を示すフローチャートである。図１０のフローチャートに示す各動作（ステップ）は、ＭＦＰ１０１のＣＰＵ２１１がＨＤＤ２１４に記憶された制御プログラムを実行することにより実現される。
【００７９】
ステップＳ１００１では、サービスプロバイダ４５０の管理に関する要求を受け付ける。続くステップＳ１００２では、受け付けた要求が新規のサービスプロバイダ４５０のインストールであるか否かを判断する。この判断の結果、受け付けた要求が新規のサービスプロバイダ４５０のインストールである場合はステップＳ１００３に進み、そうでなければステップＳ１００５に進む。
【００８０】
ステップＳ１００３では、サービスプロバイダ４５０のインストールを実行することによりサービスプロバイダ４５０を追加する。そして、ステップＳ１００４において、サービスレポジトリ部４９２に、新たにインストールされたサービスプロバイダ４５０の情報を追加する。
【００８１】
ステップＳ１００５では、受け付けた要求がサービスプロバイダ４５０のアンインストールであるか否かを判断する。この判断の結果、受け付けた要求がサービスプロバイダ４５０のアンインストールである場合はステップＳ１００６に進み、そうでなければステップＳ１００８に進む。
【００８２】
ステップＳ１００６では、サービスプロバイダ４５０のアンインストールを実行することによりサービスプロバイダ４５０を削除する。そして、ステップＳ１００５において、サービスレポジトリ部４９２から、アンインストールされたサービスプロバイダ４５０の情報を削除する。
【００８３】
ステップＳ１００８では、受け付けた要求がサービスプロバイダ４５０のアップデートであるか否かを判断する。この判断の結果、受け付けた要求がサービスプロバイダ４５０のアップデートである場合はステップＳ１００９に進み、そうでなければステップＳ１０１１に進む。
【００８４】
ステップＳ１００９では、サービスプロバイダ４５０のアップデートを実行することによりサービスプロバイダ４５０を更新する。そして、ステップＳ１０１０において、サービスレポジトリ部４９２における、アップデートされたサービスプロバイダ４５０の情報を更新する。
【００８５】
ステップＳ１００２では、受け付けた要求がサービスプロバイダ４５０の起動または状態変更であるか否かを判断する。この判断の結果、受け付けた要求がサービスプロバイダ４５０の起動または状態変更である場合はステップＳ１０１２に進み、そうでなければ処理を終了する。ステップＳ１０１２では、サービスレポジトリ部４９２で管理されている、アップデートされたサービスプロバイダ４５０の状態を変更する。
【００８６】
以上のようにして、ＭＦＰ１０１がＷｅｂサーバ１０３に提供しうるサービスは動的に変化する。
【００８７】
図１１は、サービスレポジトリ部４９２に記憶されるサービスレポジトリ情報の一例を示す図である。サービスレポジトリ情報は、例えばＨＤＤ２１４に記憶される。サービスレポジトリ情報の各レコードは、サービスプロバイダフレームワーク４５３が管理するサービスプロバイダ４５０のそれぞれに対応付けられている。
【００８８】
サービスＩＤは各サービスプロバイダ４５０を識別する識別子である。バージョンは各サービスプロバイダ４５０のバージョンである。状態は各サービスプロバイダ４５０が活性化されているか不活性化されているかを示す。接続はＷｅｂアプリケーション４１０のロジック部４１２が、各サービスプロバイダ４５０が提供するサービスを利用する際の接続方法を示す。ロケーションＵＲＩは、各サービスプロバイダ４５０が提供するサービスを利用する際の接続先を識別するＵＲＩを示す。
【００８９】
図１２は、ＵＲＩ情報記憶部４９３に記憶されるＵＲＩ情報の一例を示す図である。ＵＲＩ情報は、例えばＨＤＤ２１４に記憶される。ＵＲＩパターンはＷｅｂブラウザ４４０が、Ｗｅｂアプリケーション４１０にＨＴＴＰ要求を送信する際のアクセス先となるＵＲＩとパターンマッチングするためのパターンである。ＵＲＩはスキーム部、オーソリティコンポーネント部、パス部から構成される。それぞれの部分について、任意の数のワイルドカードを含むパターンを指定できる。ワイルドカードは文字“＊”によって表現しており、任意の文字列にマッチする。さらに高度な正規表現によるパターンマッチングを行ってもよい。
【００９０】
サービスパターンはサービスプロバイダ４５０を検索するためのパターンである。サービスレポジトリ部４９２に記憶されているレコードとパターンマッチングを行うためのパターンを示す。これらのサービスＩＤのパターンを並べると該当するサービスプロバイダ４５０を抽出することができる。リストが空の場合、サービスプロバイダ４５０の情報は通知されない。サービスＩＤのパターンには任意の数のワイルドカードを含むパターンを指定できる。ワイルドカードは文字“＊”によって表現しており、任意の文字列にマッチする。さらに高度な正規表現によるパターンマッチングを行ってもよい。
【００９１】
Ｗｅｂブラウザ４４０は図１２に示すＵＲＩパターンにマッチするＵＲＩに対してアクセス（ＨＴＴＰ要求を送信）する際に、該当するレコードのサービスパターンにマッチしたサービスプロバイダの情報を、Ｗｅｂアプリケーション４１０に対して通知する。
【００９２】
図１３は、Ｗｅｂブラウザ４４０によるＨＴＴＰ要求送信処理の手順を示すフローチャートである。図１３のフローチャートに示す各動作（ステップ）は、ＭＦＰ１０１のＣＰＵ２１１がＨＤＤ２１４に記憶された制御プログラムを実行することにより実現される。
【００９３】
ステップＳ１３０１では、アクセス先となるＵＲＩを解析する。そして、ステップＳ１３０２において、ＵＲＩ情報記憶部４９３に記憶されるＵＲＩ情報とのパターンマッチングを行う。
【００９４】
ステップＳ１３０３では、操作画面の要求先（つまり、Ｗｅｂブラウザ４４０がアクセスしようとしている通信相手先）のＵＲＩが、ＵＲＩ情報記憶部４９３に記憶されるＵＲＩ情報にマッチ（一致）したかどうかを判定する。この判定の結果、マッチしたと判定された場合はステップＳ１３０４に進み、そうでなければステップＳ１３０７に進む。
【００９５】
ステップＳ１３０４で、サービスレポジトリ部４９２に記憶されるサービスレポジトリ情報のなかから、マッチしたパターンに対応する情報を選択し、ステップＳ１３０５においてＷｅｂアプリケーション４１０に通知するサービス記述情報を生成する。
【００９６】
ステップＳ１３０６では、生成したサービス記述情報をＨＴＴＰ要求データのヘッダ部分に格納し、ステップＳ１３０７においてＨＴＴＰ要求データを送信する。なお、ステップＳ１３０３で、マッチしないと判定された場合は、ステップＳ１３０７では、サービス記述情報が格納されていないＨＴＴＰ要求データが送信される。
【００９７】
図１４は、Ｗｅｂブラウザ４４０が生成するＨＴＴＰ要求データのヘッダ部分の一例を示す図である。ＨＴＴＰ要求データのヘッダ部分に、サービスプロバイダ４５０が提供するサービス記述情報を埋め込むことによって、Ｗｅｂアプリケーション４１０に対して、ＭＦＰ１０１が提供するサービスプロバイダの情報を通知することができる。図１４に示す例では、“／ｓｐ／ｓｃａｎ−ｆｔｐ”という、サービスプロバイダ４５０に接続するためのＵＲＩが記述されている。“／ｓｐ／ｓｃａｎ−ｆｔｐ”の後の“２．０”という記述は、サービスプロバイダ４５０のバージョンが２．０であることを示している。この他にも、サービス記述情報には図１１に示す各種のサービスプロバイダ情報を記述することができる。なお、図１３のステップＳ１３０６の処理が行われない場合は、図１４の“／ｓｐ／ｓｃａｎ−ｆｔｐ  ２．０；／ｓｐ／ｓｃａｎ−ｐｒｅｖｉｅｗ−ｆｔｐ  １．８；／ｓｐ／ｉｐｐ−ｐｒｉｎｔ  ３．０”という記述がないものが送信される。
【００９８】
Ｗｅｂアプリケーション４１０は、ＨＴＴＰ要求ヘッダにおいて、ＭＦＰ１０１が提供するサービスの利用に関する情報を受信することにより、例えば、ＭＦＰ１０１に備えられた機能に柔軟に対応する分散システムをすることができる。
【００９９】
つまり、ＭＦＰ１０１がスキャンプレビューによる読取確認サービスを提供していれば、プレビュー表示とユーザによる確認はＭＦＰ１０１で行わせ、Ｗｅｂアプリケーションはプレビュー確認を済ませた画像データを取得することができる。これに対して、ＭＦＰ１０１が読取確認サービスを提供していなければ、読み取った画像データを一旦Ｗｅｂアプリケーション４１０が取得する。そして、プレビュー画像の生成、ブラウザへの表示、ユーザによる確認をＷｅｂアプリケーション４１０のサーバ側処理として行うようにすることができる。または、スキャンプレビュー読取確認サービスを提供するサービスプロバイダ４５０のインストールを促がすこともできる。
【０１００】
更には、ＭＦＰ１０１にＯＣＲ機能オプションが搭載されていれば、ＭＦＰ１０１でＯＣＲ結果の文字コードを付加したＰＤＦファイルに変換された文書データを取得し、なければＷｅｂアプリケーション４１０がこのＰＤＦファイルを生成するように構成できる。
【０１０１】
また、ＭＦＰ１０１で所定の画像フォーマットの生成ができれば指定フォーマットにさせたファイルを取得し、なければＷｅｂアプリケーション４１０がこのフォーマットに変換するように構成することもできる。
【０１０２】
また、ＭＦＰ１０１にファクス送信機能があればＭＦＰ１０１からファクス送信させ、なければＷｅｂサーバ１０３にＦＴＰ、ＳＭＢなどのファイル転送プロトコルによって送信させ、Ｗｅｂサーバ１０３がファクス送信するように構成することもできる。
【０１０３】
なお、サービスレポジトリ部４９２に記憶されるサービスプロバイダ情報をＷｅｂサーバ１０３から参照するためのＳｅｒｖｉｃｅＤｉｓｃｏｖｅｒｙサービスプロバイダ４５０を備えるようにしてもよい。このＳｅｒｖｉｃｅＤｉｓｃｏｖｅｒｙサービスは公知のＵＤＤＩに類似したサービスとして構成できる。Ｗｅｂアプリケーション４１０は、より詳細な提供サービス記述情報を取得するために、まずＳｅｒｖｉｃｅＤｉｓｃｏｖｅｒｙサービスに接続し、情報の問い合わせを行うことになる。
【０１０４】
本実施形態では、ＳＯＡＰやＲＥＳＴとして知られるいわゆるＷｅｂサービス技術によってＷｅｂサーバ１０３がＭＦＰ１０１の提供サービスを利用するように構成したが、他の技術で代替、あるいは組み合わせで、構成してもよい。例えば、ＤＯＭの拡張によって画像処理装置の機能にアクセスするためのインタフェースを拡張し、Ｊａｖａ（登録商標）ＳｃｒｉｐｔなどのＷｅｂブラウザ内で動作するスクリプト言語から機能を利用する構成でもよい。
【０１０５】
この場合、利用可能なサービスに関する情報を取得するための機能を拡張ＤＯＭのインタフェースとして備えればよい。すなわち、画像処理装置が提供するサービスの種別や能力やそれを利用するための接続方法を、スクリプトが取得するためのインタフェースを備えることも容易である。この場合、ＷｅｂサーバからＷｅｂブラウザへ応答するコンテンツ内で、スクリプトとＨＴＭＬのＦＯＲＭ要素を組み合わせる。そのコンテンツに基づくＨＴＴＰ要求をＷｅｂブラウザがＷｅｂサーバへ送信するときに、サービス記述情報をそのＨＴＴＰ要求に含めて送信できる。ただしこのように構成する場合、ＷｅｂブラウザからＷｅｂアプリケーションへの最初のＨＴＴＰ要求においてサービス記述情報を通知することはできない。
【０１０６】
以上の通り、本実施形態では、ＭＦＰ１０１のＷｅｂブラウザ４４０がＷｅｂサーバ１０３に対して操作画面を要求する場合に、そのＨＴＴＰ要求の中で提供サービス記述情報を送信する。提供サービス記述情報とは、サービスプロバイダ４５０が提供するサービスの種別、バージョン、状態、それを利用するための接続方法や接続先等である。またＭＦＰ１０１が備えるオプション構成を反映して伝える。
【０１０７】
また、Ｗｅｂブラウザ４４０のアクセス先に応じて、提供サービス記述情報を通知するか否か、或いは通知する提供サービス記述情報の内容を切り替える。
【０１０８】
これにより、Ｗｅｂアプリケーション１０３は、ＭＦＰ１０１がその時点で提供可能なサービスを知ることができ、提供サービスの能力に合わせて処理を切り替えることができる。また、１台のＷｅｂサーバ１０３が複数のＭＦＰ１０１と分散システムを構成するとき、個々のＭＦＰ１０１の能力差に合わせて処理を切り替えるＷｅｂアプリケーション１０３を実装することが可能となる。
【０１０９】
また、Ｗｅｂアプリケーション１０３のロジック部４１２にとって、ＭＦＰ１０１が提供するサービスを利用するための接続方法や接続先を、ＨＴＴＰ要求処理において確実に知ることができる。これにより、確実にサービスを利用するＷｅｂアプリケーション１０３の実装が容易となる。
【０１１０】
また、提供サービス記述情報を通知する必要がないと判定された場合には、提供サービス記述情報しないことにより、分散システムを構成しないＷｅｂサーバに対して、不要な情報を通知しないように構成できる。
【０１１１】
また、通知する提供サービス記述情報を、Ｗｅｂブラウザ４４０がＨＴＴＰ要求を送るＵＲＩのパターンに合わせて切り替えることができる。一般にＷｅｂサーバ１０３はＵＲＩパスの階層によってＷｅｂアプリケーションや機能をグルーピングしている。したがって、これによって、Ｗｅｂアプリケーション４１０の提供機能に応じて、適切な提供サービス記述情報だけを選択的に通知することができる。
【０１１２】
また、上述した説明では、画像処理装置（ＭＦＰ１０１）に関する情報として、サービスプロバイダ４５０に関する情報を通知する例を説明したが、同様にして他の情報を通知するようにしても構わない。例えば、ＭＦＰ１０１を一意に識別するためのシリアル番号（製造番号）や、ＭＦＰ１０１に現在ログインしているユーザを示すユーザＩＤ、或いはＭＦＰ１０１に装着されているオプション情報などをＷｅｂサーバに通知する場合に適用可能である。また、ＭＦＰ１０１が実行している処理（ジョブ）に関する情報や、ＭＦＰ１０１自体に発生した障害に関する情報をＷｅｂサーバに通知する場合にも適用できる。
【０１１３】
（他の実施形態）
なお、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出す処理である。
【０１１４】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【図１】
0005528018.tif 000002
【図２】
0005528018.tif 000003
【図３】
0005528018.tif 000004
【図４】
0005528018.tif 000005
【図５】
0005528018.tif 000006
【図６】
0005528018.tif 000007
【図７】
0005528018.tif 000008
【図８】
0005528018.tif 000009
【図９】
0005528018.tif 000010
【図１０】
0005528018.tif 000011
【図１１】
0005528018.tif 000012
【図１２】
0005528018.tif 000013
【図１３】
0005528018.tif 000014
【図１４】
0005528018.tif 000015