(57)【特許請求の範囲】
【請求項１】
ネットワーク上のサーバと通信可能な画像処理装置であって、
画像を読み取ることにより該画像に応じた画像情報を入力する画像入力手段と、
前記サーバ上の情報資源を特定する特定情報を入力する特定情報入力手段と、
前記情報資源に前記画像情報に応じたデータを送信するための書式情報であって前記情報資源へのデータの送信を要求する要求情報を含む書式情報を、前記サーバから受信する受信手段と、
前記サーバへ前記データを送信する送信手段と、
前記書式情報に基づいて表示画面を表示する表示手段であって、前記要求情報に基づいて前記送信手段による前記情報資源へのデータ送信を開始させるための送信項目を前記表示画面に表示する表示手段と、
前記要求情報に基づいて前記表示画面に表示された送信項目に対する操作がされたことに応じて、前記画像入力手段による前記画像情報の入力を開始させるとともに、前記送信手段による前記画像情報に応じたデータの送信を開始させるよう前記画像入力手段及び前記送信手段を制御する制御手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記制御手段は、前記書式情報が前記情報資源に所定形式のデータを送信させるための指示情報を含む場合、前記画像情報に応じたデータを前記所定形式のデータとして前記サーバへ送信させるよう前記送信手段を制御することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記画像入力手段の動作条件を設定する設定手段を有し、
前記表示手段は、前記書式情報が前記指示情報を含む場合、前記送信項目とともに前記画像入力手段の動作条件を設定するための設定項目を含む前記表示画面を表示し、
前記設定手段は、前記設定項目に対する操作がされたことに応じて、前記動作条件を設定可能とし、
前記制御手段は、前記送信項目に対する操作がされたことに応じて、前記設定手段により設定された前記動作条件に基づいた前記画像情報の入力を開始させるよう前記画像入力手段を制御することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記表示手段は、前記書式情報が前記指示情報を含む場合、前記送信項目及び前記設定項目とともに、前記画像入力手段の動作状態を報知するための報知項目を含む前記表示画面を表示することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記画像入力手段が入力する画像情報を、前記所定形式のデータに変換する変換手段を有し、
前記送信手段は、前記所定形式のデータを前記サーバへ送信することを特徴とする請求項２乃至４のいずれか１項に記載の画像処理装置。
【請求項６】
前記変換手段は、前記画像入力手段が入力する画像情報を前記書式情報に基づいた所定の符号化形式のデータに変換することを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記画像入力手段が入力する画像情報に埋め込まれた情報を復号化する復号化手段を有し、
前記送信手段は、前記画像情報に応じたデータとして前記復号化手段により復号化された情報に応じたデータを前記サーバへ送信することを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項８】
前記復号化手段が復号化した情報を、前記所定形式のデータに変換する変換手段を有し、
前記送信手段は、前記所定形式のデータを前記サーバへ送信することを特徴とする請求項７に記載の画像処理装置。
【請求項９】
前記変換手段は、前記画像入力手段が入力する画像情報を、前記書式情報に基づいた所定の符号化形式のデータに変換することを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
前記画像入力手段は、原稿を読み取ることで画像情報を入力することを特徴とする請求項１乃至９のいずれか１項に記載の画像処理装置。
【請求項１１】
前記画像入力手段は、原稿を読み取ることで画像情報を入力し、
前記設定手段が設定する前記動作条件は、入力される前記画像情報のデータ形式に関する条件、前記原稿を読み取る解像度に関する条件、及び前記画像情報の圧縮に関する条件の少なくともいずれかの条件であることを特徴とする請求項３に記載の画像処理装置。
【請求項１２】
前記書式情報は、マークアップ言語に基づく情報であり、
前記受信手段は、前記マークアップ言語に基づく情報を前記サーバから受信し、
前記表示手段は、ウェブブラウザモジュールを用いて前記マークアップ言語に基づく情報を解析することにより前記表示画面を表示させることを特徴とする請求項１乃至１１のいずれか１項に記載の画像処理装置。
【請求項１３】
前記マークアップ言語は、ＨＴＭＬであり、
前記受信手段は、ＨＴＴＰプロトコルによりＨＴＭＬ文書を前記サーバから受信することを特徴とする請求項１２に記載の画像処理装置。
【請求項１４】
前記書式情報は、ＨＴＭＬ文書であり、
前記受信手段は、ＨＴＴＰプロトコルにより前記ＨＴＭＬ文書に基づく情報を前記サーバから受信し、
前記表示手段は、ウェブブラウザモジュールを用いて前記ＨＴＭＬ文書を解析することにより前記表示画面を表示させ、
前記ＨＴＭＬ文書に含まれる前記指示情報は、前記ＨＴＭＬ文書におけるＦＩＬＥ型のＩＮＰＵＴ要素を示す情報であることを特徴とする請求項２に記載の画像処理装置。
【請求項１５】
前記ＨＴＭＬ文書に含まれる前記要求情報は、前記ＨＴＭＬ文書におけるＳＵＢＭＩＴ型のＩＮＰＵＴ要素を示す情報であることを特徴とする請求項１４に記載の画像処理装置。 
【請求項１６】
ネットワーク上のサーバと通信可能であり、画像を読み取ることにより該画像に応じた画像情報を入力する画像入力手段を有する画像処理装置の制御方法であって、
前記画像処理装置が、前記サーバ上の情報資源を特定する特定情報を入力する特定情報入力ステップと、
前記画像処理装置が、前記情報資源に前記画像情報に応じたデータを送信するための書式情報であって前記情報資源へのデータの送信を要求する要求情報を含む書式情報を、前記サーバから受信する受信ステップと、
前記画像処理装置が、前記書式情報に基づいて表示画面を表示手段に表示させる表示ステップであって、前記要求情報に基づいて前記情報資源へのデータ送信を開始させるための送信項目を前記表示画面に表示させる表示ステップと、
前記画像処理装置が、前記要求情報に基づいて前記表示画面に表示された送信項目に対する操作がされたことに応じて、前記画像入力手段による前記画像情報の入力を開始する画像入力ステップと、
前記画像処理装置が、前記要求情報に基づいて前記表示画面に表示された送信項目に対する操作がされたことに応じて、前記画像入力ステップにて入力される前記画像情報に応じたデータの前記サーバへの送信を開始する送信ステップと
を備えることを特徴とする画像処理装置の制御方法。
【請求項１７】
ネットワーク上のサーバと通信可能であり、画像を読み取ることにより該画像に応じた画像情報を入力する画像入力手段を有する画像処理装置を制御するためのプログラムであって、
前記画像処理装置が、前記サーバ上の情報資源を特定する特定情報を入力する特定情報入力ステップと、
前記画像処理装置が、前記情報資源に前記画像情報に応じたデータを送信するための書式情報であって前記情報資源へのデータの送信を要求する要求情報を含む書式情報を、前記サーバから受信する受信ステップと、
前記画像処理装置が、前記書式情報に基づいて表示画面を表示手段に表示させる表示ステップであって、前記要求情報に基づいて前記情報資源へのデータ送信を開始させるための送信項目を前記表示画面に表示させる表示ステップと、
前記画像処理装置が、前記要求情報に基づいて前記表示画面に表示された送信項目に対する操作がされたことに応じて、前記画像入力手段による前記画像情報の入力を開始する画像入力ステップと、
前記画像処理装置が、前記要求情報に基づいて前記表示画面に表示された送信項目に対する操作がされたことに応じて、前記画像入力ステップにて入力される前記画像情報に応じたデータの前記サーバへの送信を開始する送信ステップと
を前記画像処理装置により実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク上のサーバと通信可能な画像処理装置、その制御方法およびプログラムに関する。
【背景技術】
【０００２】
ＨＴＭＬ（HyperText Markup Language）においては、フォーム要素によって記述されるフォーム（FORM）によって、ウェブページ製作者（ウェブサーバ側）が、当該ウェブページを閲覧するユーザ（クライアント側）に対して情報の入力を要求することができる。ＨＴＭＬのフォームは、ユーザからの入力を必要とする多種多様なアプリケーションにとって有効な手段であり、ウェブページ製作者とユーザの間のユーザインタフェースを構成する。これにより、ウェブサーバ側で稼動し、クライアントのウェブブラウザから操作可能なウェブアプリケーションが提供される。
【０００３】
クライアントであるユーザのウェブブラウザがＨＴＭＬリソースをウェブサーバに対して要求し、このサーバから取得すると、クライアントのウェブブラウザ上には、ＨＴＭＬに基づくユーザインタフェースが表示される。ここで、ユーザがウェブブラウザ上に表示されたフォームに情報が入力されて確定されると、その入力された情報はクライアントからサーバに送信される。そして、サーバから、上記入力された情報に対して返信された情報、すなわちウェブアプリケーションの実行結果が反映されたコンテンツを取得することができる。多くの場合、返信されるコンテンツは、ＨＴＭＬのフォームによって構成されたウェブアプリケーションのユーザインタフェースである。この繰り返しによって、遠隔地にあるサーバ上で稼動するウェブアプリケーションをクライアントのウェブブラウザ上に送信されたユーザインタフェースによって操作する、いわゆる分散アプリケーションシステムが実現される。
【０００４】
このように、フォームによって情報伝達の双方向性を獲得したＨＴＭＬを、ユーザインタフェースを遠隔に転送可能なユーザインタフェース記述言語として用いることは、非常に多くのシステムにおいて実現されている。
【０００５】
ＲＦＣ１８６７では、「ＨＴＭＬにおけるフォームに基づくファイルアップロード」の手法が開示されている。この手法は、ＨＴＭＬフォームによる情報伝達の双方向性を拡張して、クライアントのプラットフォームに蓄積されているファイルを、分散アプリケーションのサーバに対する入力としてアップロードすることを可能とするものである。この手法に則して、現在実用されている一般的なウェブブラウザと多くのウェブコンテンツが実装されている。
【０００６】
また、ウェブサーバに対してＨＴＭＬ文書などのコンテンツファイルをアップロードするものがある（例えば特許文献１を参照）。
【０００７】
次に、ＲＦＣ１８６７の従来技術によって一般的なウェブブラウザに表示されるフォームの画面例を図１６に示す。このフォームの画面は、後述の図１０のＨＴＭＬ文書に基づいて生成されるものであり、ウェブブラウザのコンテンツ表示領域２００１に表示される。この画面においては、表示２００２が図１０の４行目から８行目のh1要素とol要素に対応し、表示２００３の点線で囲まれた領域が図１０の１１行目のfile型のinput要素に対応する。また、表示２００４が図１０の１２行目のsubmit型のinput要素に対応する。
【０００８】
表示２００３の領域内は、従来のウェブブラウザにおいて一般的に採用されている手法による実装であり、この実装は、ＲＦＣ１８６７でも示唆されている。表示２００３の領域内において、表示２００５がファイル名入力フィールドに対応するものであり、アップロードされるファイルのファイルシステム中のファイルパス（ファイル名）のリストをタイプ入力することができる。また、表示２００６がファイル選択ボタンに対応し、このボタンが押下されると、ウェブブラウザが稼動しているプラットフォームに適するファイル選択モードに入ることができる。汎用コンピュータ上で稼動するウェブブラウザでは、ここでファイル選択ダイアログが開き、ファイルシステムに格納されているファイル群の中からアップロードされるべきファイルを選択することができる。
【０００９】
インターネット技術の発展と普及に伴い、一般的に普及しているウェブブラウザをクライアントとして想定した多種多様な分散アプリケーションサービスが提供されつつある。特に、情報技術の分野において、ウェブベースの分散アプリケーションの提供に特化した業者であるアプリケーションサービスプロバイダ（ＡＳＰ）がサービスの提供を始めている。ＡＳＰが提供するサービスには、情報提供、作成、検索、蓄積、認証、配布、印刷、出版、管理、翻訳、委託などがある。また、官公庁手続や各種の電子商取引などもある。
【００１０】
組み込みシステムの分野においても、装置が装置本来の機能に加えてウェブサーバ機能を兼ね備え、装置のユーザインタフェースを遠隔のウェブブラウザに提供するリモートユーザインタフェースが製品化されている。また、装置が装置本来の機能に加えてウェブクライアント機能を兼ね備え、遠隔のウェブサーバから様々なコンテンツを取得（ダウンロード）してブラウジングを行い、装置の機能に役立てる技術が知られている。
【００１１】
例えば、撮影リスト入力手段が接続されるウェブサーバのホームページをブラウジングして、ホームページ上の撮影リストをダウンロードするウェブブラウジング手段を含む、画像処理装置がある（例えば特許文献２を参照）。
【００１２】
また、サーバから携帯電話等の端末に画像データを送信するシステムの構成において、ウェブブラウザを内蔵した携帯電話とサーバとで画像処理を最適に分担するシステムがある（例えば特許文献３を参照）。また、逆に画像をアップロードするシステムがある。
【００１３】
また、ウェブサーバとウェブクライアントとして構成された電子入稿システムが開示されている（例えば特許文献４を参照）。
【００１４】
また、画像情報を用いた作品を生成する情報システムにおいて、シナリオに組み込む画像をアップロードするためのアップロードページをクライアントに送信するシステムがある（例えば特許文献５を参照）。
【特許文献１】特開２００１−９４９６０号公報
【特許文献２】特開２００２−１５８９５３号公報
【特許文献３】特開２００２−１７０１１０号公報
【特許文献４】特開２００２−１７１３８１号公報
【特許文献５】特開２００２−１８３７４３号公報
【発明の開示】
【発明が解決しようとする課題】
【００１５】
ＡＳＰが提供する分散アプリケーションのワークフローの中で、デジタル化されていない画像データのアップロードを行うことができれば、分散アプリケーションの可能性が広がる。例えば、電子商取引や官公庁手続のワークフローにおいて、印影やサインを記載した注文書や各種証明書などの公文書などの入力を手続の中の適切なタイミングで求めることができるようになることが期待される。
【００１６】
汎用的なウェブアプリケーションに対応するウェブクライアントと画像入力手段とを組み合わせてシステムを構成した場合、画像処理装置で入力した画像データファイルをＨＤなどの記憶手段に格納し、次にそのファイルをアップロードするという、二回の操作が行われる。すなわち、画像入力ステップとアップロードステップの２つのステップが必要であり、よって、操作が煩雑になる。さらに、画像入手段として例えば原稿画像を読み取るスキャナなどを用いた場合、内部ストレージに全ページ分の画像データを一旦蓄積するための記憶容量が必要となり、コストアップを招く恐れがある。
【００１７】
また、サーバとクライアントの間に専用の取り決めを追加することにより、ウェブ技術に基づいて、１回の操作で画像の入力と画像データのアップロードを行うシステムを構築することも可能である。しかしながら、このシステムの場合、サーバとクライアントの間に専用の取り決めが追加されるので、ＡＳＰ側のサービスの汎用性が損なわれることになる。
【００１８】
本発明の目的は、１回の操作で、画像情報の入力とサーバ上の情報資源への画像情報に応じたデータの送信を開始させることができる画像処理装置、その制御方法およびプログラムを提供することにある。
【課題を解決するための手段】
【００１９】
本発明は、上記目的を達成するため、ネットワーク上のサーバと通信可能な画像処理装置であって、画像を読み取ることにより該画像に応じた画像情報を入力する画像入力手段と、前記サーバ上の情報資源を特定する特定情報を入力する特定情報入力手段と、前記情報資源に前記画像情報に応じたデータを送信するための書式情報であって前記情報資源へのデータの送信を要求する要求情報を含む書式情報を、前記サーバから受信する受信手段と、前記サーバへ前記データを送信する送信手段と、前記書式情報に基づいて表示画面を表示する表示手段であって、前記要求情報に基づいて前記送信手段による前記情報資源へのデータ送信を開始させるための送信項目を前記表示画面に表示する表示手段と、前記要求情報に基づいて前記表示画面に表示された送信項目に対する操作がされたことに応じて、前記画像入力手段による前記画像情報の入力を開始させるとともに、前記送信手段による前記画像情報に応じたデータの送信を開始させるよう前記画像入力手段及び前記送信手段を制御する制御手段とを備えることを特徴とする画像処理装置を提供する。
【００２０】
本発明は、上記目的を達成するため、ネットワーク上のサーバと通信可能であり、画像を読み取ることにより該画像に応じた画像情報を入力する画像入力手段を有する画像処理装置の制御方法であって、前記画像処理装置が、前記サーバ上の情報資源を特定する特定情報を入力する特定情報入力ステップと、前記画像処理装置が、前記情報資源に前記画像情報に応じたデータを送信するための書式情報であって前記情報資源へのデータの送信を要求する要求情報を含む書式情報を、前記サーバから受信する受信ステップと、前記画像処理装置が、前記書式情報に基づいて表示画面を表示手段に表示させる表示ステップであって、前記要求情報に基づいて前記情報資源へのデータ送信を開始させるための送信項目を前記表示画面に表示させる表示ステップと、前記画像処理装置が、前記要求情報に基づいて前記表示画面に表示された送信項目に対する操作がされたことに応じて、前記画像入力手段による前記画像情報の入力を開始する画像入力ステップと、前記画像処理装置が、前記要求情報に基づいて前記表示画面に表示された送信項目に対する操作がされたことに応じて、前記画像入力ステップにて入力される前記画像情報に応じたデータの前記サーバへの送信を開始する送信ステップとを備えることを特徴とする画像処理装置の制御方法を提供する。
【００２１】
本発明は、上記目的を達成するため、ネットワーク上のサーバと通信可能であり、画像を読み取ることにより該画像に応じた画像情報を入力する画像入力手段を有する画像処理装置を制御するためのプログラムであって、前記画像処理装置が、前記サーバ上の情報資源を特定する特定情報を入力する特定情報入力ステップと、前記画像処理装置が、前記情報資源に前記画像情報に応じたデータを送信するための書式情報であって前記情報資源へのデータの送信を要求する要求情報を含む書式情報を、前記サーバから受信する受信ステップと、前記画像処理装置が、前記書式情報に基づいて表示画面を表示手段に表示させる表示ステップであって、前記要求情報に基づいて前記情報資源へのデータ送信を開始させるための送信項目を前記表示画面に表示させる表示ステップと、前記画像処理装置が、前記要求情報に基づいて前記表示画面に表示された送信項目に対する操作がされたことに応じて、前記画像入力手段による前記画像情報の入力を開始する画像入力ステップと、前記画像処理装置が、前記要求情報に基づいて前記表示画面に表示された送信項目に対する操作がされたことに応じて、前記画像入力ステップにて入力される前記画像情報に応じたデータの前記サーバへの送信を開始する送信ステップとを前記画像処理装置により実行させることを特徴とするプログラムを提供する。
【発明の効果】
【００２２】
本発明によれば、１回の操作で、画像情報の入力とサーバ上の情報資源への画像情報に応じたデータの送信を開始させることができる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明の実施の形態について図面を参照しながら説明する。
【００２４】
（第１実施の形態）
図１は本発明の第１実施の形態に係る画像処理装置を含むシステムの全体構成を示すブロック図である。
【００２５】
システムは、図１に示すように、アプリケーションサービスプロバイダサイト（以下、ＡＳＰサイトという）１５３、広域ネットワーク１５２、およびユーザサイト１５１から構成される。ここで、広域ネットワーク１５２は、インターネットである。また、広域ネットワーク１５２は、インターネット上の仮想プライベートネットワーク（ＶＰＮ）、または専用のプライベートネットワークでもよい。
【００２６】
ＡＳＰサイト１５３は、広域ネットワーク１５２を介してユーザサイト１５１に所定のサービスを提供する。ＡＳＰサイト１５３が提供するサービスとしては、例えば情報提供、作成、検索、蓄積、認証、配布、印刷、出版、管理、翻訳、委託などがある。また、官公庁手続や各種の電子商取引などもある。ＡＳＰサイト１５３は、ＬＡＮ（Local Area Network）１５４、およびサーバ１５５を含む。ＬＡＮ１５４は、ＡＳＰサイト１５３内部のネットワークであり、サイト内のネットワーク機器を接続する。また、ＬＡＮ１５４は、ルータなどを介して広域ネットワーク１５２と接続されている。
【００２７】
サーバ１５５上においては、ＡＳＰが提供するサービスを実現するためのソフトウェアプロセス群が稼動している。ソフトウェアモジュールとしては、
１）クライアントからのＨＴＴＰプロトコルによる要求に応答してＨＴＭＬなどのコンテンツを伝送するＨＴＴＰサーバ、
２）ＨＴＴＰ要求に応じてＨＴＴＰサーバにより実行され、所定の処理と動的に変化するＨＴＴＰ応答を行う、ＣＧＩ（Common Gateway Interfaces）プログラムやサーブレット（Servlet）などの形態で実装されたウェブアプリケーション群、
３）ＣＧＩプログラムやサーブレット（Servlet）などが所定の処理を実行するために用いられる、電子商取引プログラムなどのビジネスロジック群とバックエンドのデータベース管理システム
などがある。
【００２８】
ユーザサイト１５１は、ホストコンピュータ１０１、画像処理装置１１０，１２０，１３０などの複数のネットワーク機器と、ネットワーク機器群が接続されているＬＡＮ１００から構成される。ユーザサイト１５１のＬＡＮ１００は、ルータなどを介して広域ネットワーク１５２に接続されている。ここで、上記ルータは、いわゆる防火壁（firewall）の機能を有する。すなわち、ルータは、外部ネットワークからの攻撃からユーザサイト１５１を守るためにパケットフィルタリングなどを行う。また、ルータにおいては、アドレス管理上の理由などのために、ネットワークアドレス変換やネットワークポート変換が行われる場合がある。
【００２９】
ルータのこれらの機能のために、ユーザサイト１５１と外部ネットワークとの間の通信には制限が設けられている。すなわち、多くの場合、いくつかの特定のプロトコルによる通信のみが可能とされている。例えば、内部から外部に向かって確立されるＨＴＴＰ接続は、一般に許可されている通信であり、これは一般的なウェブベースの技術に基づいてアプリケーションサービスの提供が有効であるとの理由のひとつとなっている。
【００３０】
画像処理装置１１０は、画像の入出力と送受信および各種の画像処理を行う複合機（ＭＦＰ；Multi Function Peripheral）であり、画像入力デバイスであるスキャナ１１３、画像出力デバイスであるプリンタ１１４、コントロールユニット１１１、およびユーザインタフェースである操作部１１２を備える。スキャナ１１３、プリンタ１１４、操作部１１２は、それぞれ、コントロールユニット１１１に接続され、コントロールユニット１１１からの命令によって制御される。コントロールユニット１１１は、ＬＡＮ１００に接続されている。
【００３１】
各画像処理装置１２０，１３０は、画像処理装置１１０と同様の機器構成を有し、それらは同様にＬＡＮ１００に接続されている。画像処理装置１２０は、スキャナ１２３、プリンタ１２４、操作部１２２、およびスキャナ１２３、プリンタ１２４、操作部１２２のそれぞれを制御するコントロールユニット１２１を備える。また、画像処理装置１３０は、スキャナ１３３、プリンタ１３４、操作部１３２、およびスキャナ１３３、プリンタ１３４、操作部１３２を制御するコントロールユニット１３１を備える。
【００３２】
ホストコンピュータ１０１は、ＬＡＮ１００に接続されている。ホストコンピュータ１０１は、後述するようにウェブブラウザを備え、画像処理装置１１０，１２０，１３０から受信したＨＴＭＬファイルに基づいて、画像処理装置１１０，１２０，１３０のスタータスなどを表示する。また、ホストコンピュータ１０１は、サーバ１５５にＨＴＴＰ接続してサービスの提供を受けることができる。
【００３３】
次に、画像処理装置１１０のソフトウェア構成について図２を参照しながら説明する。図２は図１の画像処理装置１１０のソフトウェア構成を示すブロック図である。ここでは、各画像処理装置１１０，１２０，１３０のソフトウェア構成は、同じであるので、画像処理装置１１０のソフトウェア構成を説明するものとする。
【００３４】
画像処理装置１１０においては、ユーザインタフェース（以下、ＵＩ）モジュール２０１が搭載されている。このＵＩモジュール２０１は、オペレータが画像処理装置１１０に対する各種操作・設定を行う際に、機器とユーザ操作との仲介を行うモジュールである。このＵＩモジュール２０１は、オペレータの操作に従い、後述の各種モジュールに入力情報を転送して処理の依頼、またはデータの設定などを行う。
【００３５】
また、アドレスブック（Address-Book）モジュール２０２が搭載されており、このモジュール２０２は、データの送付先、通信先などを管理するデータベースモジュールである。アドレスブックモジュール２０２が管理するデータに関しては、ＵＩモジュール２０１からの操作によりデータの追加、削除、取得が可能である。また、アドレスブックモジュール２０２は、オペレータの操作により後述の各モジュールにデータの送付・通信先情報を与える。
【００３６】
また、ウェブサーバモジュール（Web-Serverモジュール）２０３が搭載されており、このモジュール２０３は、ウェブクライアント（例えばホストコンピュータ１０１）からの要求により、画像処理装置１１０の管理情報をウェブクライアントに通知するものである。上記管理情報は、後述の統合送信部（Universal-Send）モジュール２０４、後述のリモートコピースキャン（Remote-Copy-Scan）モジュール２０９、後述のリモートコピープリント（Remote-Copy-Print）モジュール２１０、後述の制御ＡＰＩ（Control-API）モジュール２１８を介して取得され、後述のHTTPモジュール２１２、TCP/IP通信モジュール２１６、ネットワークドライバ（Network-Driver）２１７を介してウェブクライアントに通知される。
【００３７】
また、ウェブブラウザ（Web Browser）モジュール２１１が搭載されており、このモジュールは、インターネットまたはイントラネット上の各種ウェブサイト（ホームページ）の情報を読み込んで表示を行うものである。このウェブブラウザモジュール２１１の詳細な構成は後述する。
【００３８】
統合送信部（Universal-Send）モジュール２０４は、データの配信を司るモジュールであり、このモジュール２０４は、ＵＩモジュール２０１を介してオペレータによって指示されたデータを、同様にして指示された通信（出力）先に配布する。また、統合送信部（Universal-Send）モジュール２０４は、オペレータにより本機器のスキャナ機能を使用して配布データの生成が指示された場合は、制御ＡＰＩモジュール２１８を介して機器を動作させ、データの生成を行う。統合送信部モジュール２０４は、出力先にプリンタが指定された際に実行されるモジュール（P550）２０５と、通信先にE-mailアドレスが指定された際に実行されるモジュール（E-mail）２０６と、出力先にデータベースが指定された際に実行される（DB）モジュール２０７と、出力先に本機器と同様の画像処理装置が指定された際に実行される（DP）モジュール２０８とを含む。
【００３９】
リモートコピースキャン（Remote-Copy-Scan）モジュール２０９は、画像処理装置１１０のスキャナ機能を使用して画像情報を読み取り、読み取った画像情報をネットワーク等で接続された他の画像処理装置に出力することにより、画像処理装置単体で実現しているコピー機能を他の画像処理装置を使って行うモジュールである。
【００４０】
リモートコピープリント（Remote-Copy-Print）モジュール２１０は、ネットワーク等で接続された他の画像処理装置で得られた画像情報を、本画像処理装置１１０のプリンタ機能を使用して出力することにより、画像処理装置単体で実現しているコピー機能を他の画像処理装置を使って行うモジュールである。
【００４１】
ＨＴＴＰモジュール２１２は、画像処理装置１１０がＨＴＴＰによる通信を行なう際に使用され、後述のＴＣＰ／ＩＰ通信モジュール２１６を使って、ウェブサーバモジュール２０３やウェブブラウザモジュール２１１に通信機能を提供する。また、このモジュール２１２は、ＨＴＴＰをはじめとするウェブで用いられる各種プロトコルに対応し、特にセキュリティ対応したプロトコルによる通信機能を提供する。
【００４２】
また、ｌｐｒモジュール２１３が搭載されており、このモジュールは、後述のＴＣＰ／ＩＰ通信モジュール２１６を使って、統合送信部モジュール２０４内のモジュール２０５に通信機能を提供するものである。
【００４３】
また、ＳＭＴＰモジュール２１４が搭載されており、このモジュールは、後述のＴＣＰ／ＩＰ通信モジュール２１６を使って、統合送信部モジュール２０４内のE-mailモジュール２０６に通信機能を提供する。
【００４４】
また、ＳＬＭ（Salutation-Manager）モジュール２１５が搭載されており、このモジュールは、後述のＴＣＰ／ＩＰ通信モジュール２１６を使って、統合送信部モジュール２０４内のモジュール２１７およびモジュール２１８と、リモートコピースキャンモジュール２０９と、リモートコピープリントモジュール２１０とのそれぞれに通信機能を提供する。
【００４５】
ＴＣＰ／ＩＰ通信モジュール２１６は、ネットワークドライバ２１６を用いて、前述の各種モジュールにネットワーク通信機能を提供する。ネットワークドライバ２１７は、ネットワークに物理的に接続される部分を制御するものである。
【００４６】
制御ＡＰＩ２１８は、統合送信部モジュール２０４などの上流モジュールに、後述のジョブマネージャモジュール（Job-Manager）２１９などの下流モジュールに対するインタフェースを提供するものである。これによって、上流および下流のモジュール間の依存関係が軽減され、それぞれの流用性を高めることができる。
【００４７】
ジョブマネージャモジュール（Job-Manager）２１９は、前述の各種モジュールから制御ＡＰＩ２１８を介して指示される様々な処理を解釈し、後述の各モジュール２２０，２２４，２２６に指示を与えるものである。また、ジョブマネージャモジュール２１９は、画像処理装置１１０内で実行されるハード的な処理を一元管理するものである。
【００４８】
モジュール２２０は、コーデックマネージャ（CODEC-Manager）モジュールであり、このモジュールは、ジョブマネージャモジュール２１９が指示する処理の中で、データの各種圧縮・伸長を管理・制御するものである。
【００４９】
また、ＦＢＥエンコーダモジュール（FBE-Encoder）２２１が搭載されており、このモジュールは、ジョブマネージャモジュール２１９や後述のスキャンマネージャ（Scan-Manager）モジュール２２４によって実行されたスキャン処理によって読み込まれたデータを、ＦＢＥフォーマットを用いて圧縮するものである。
【００５０】
また、ＪＰＥＧコーデックモジュール（JPEG-CODEC）２２２が搭載されており、このモジュールは、ジョブマネージャモジュール２１９やスキャンマネージャモジュール２２４によって実行されたスキャン処理、またはプリントマネージャ（Print-Manager）モジュール２２６によって実行された印刷処理において、読み込まれたデータのＪＰＥＧ圧縮および印刷データのＪＰＥＧ展開処理を行うものである。
【００５１】
また、ＭＭＲコーデック（MMR-CODEC）モジュール２２３が搭載されており、このモジュールは、ジョブマネージャモジュール２１９やスキャンマネージャモジュール２２４によって実行されたスキャン処理、またはプリントマネージャモジュール２２６によって実行された印刷処理において、読み込まれたデータのＭＭＲ圧縮および印刷データのＭＭＲ伸長処理を行うものである。
【００５２】
また、情報埋め込み画像コーデック（IEI CODEC）モジュール２２９が搭載されており、このモジュールはジョブマネージャモジュール２１９やスキャンマネージャモジュール２２４によって実行されたスキャン処理またはプリントマネージャモジュール２２６によって実行された印刷処理において、読み込まれた画像データに埋め込まれた情報のデコード、および印刷画像データへの情報埋め込みを行うものである。画像データへの情報の埋め込みは、バーコードやデジタル透かし（デジタルウォーターマーク）などの符号化技術を用いて行う。また、モジュール２０９は、像域分離とＯＣＲ技術によって画像データの画像中の文字を認識しテキストデータに変換する文字認識も一種の復号化技術としてサポートする。さらに、ラスタイメージプロセッサを用いたテキストから画像データへの変換と変換した画像データとオリジナル画像データとの重ね合わせ（オーバレイ）が、一種の符号化技術（情報埋め込み技術）としてサポートされる。
【００５３】
スキャンマネージャ（Scan-Manager）モジュール２２４は、ジョブマネージャモジュール２１９が指示するスキャン処理を管理・制御するものである。スキャンマネージャモジュール２２４と画像処理装置１１０に内部的に接続しているスキャナ１１３との間の通信が、ＳＣＳＩドライバ２２５を介して行われる。
【００５４】
プリントマネージャ（Print−Manager）モジュール２２６は、ジョブマネージャモジュール２１９が指示する印刷処理を管理・制御するものであり、プリントマネージャモジュール２２６とプリンタ１１４との間のインタフェースがエンジンインタフェース（Engine-I/F）モジュール２２７により提供される。
【００５５】
また、パラレルポートドライバ２２８が搭載されており、このドライバは、ウェブブラウザモジュール２１１がパラレルポートを介して不図示の出力機器にデータを出力する際のインタフェースを提供する。
【００５６】
次に、画像処理装置１１０の構成について図３を参照しながら説明する。図３は図１の画像処理装置１１０の詳細構成を示すブロック図である。ここでは、各画像処理装置１１０，１２０，１３０の構成は、同じであるので、画像処理装置１１０の構成を説明するものとする。
【００５７】
画像処理装置１１０は、図３に示すように、装置全体を制御するコントロールユニット１１１を備える。コントロールユニット１１１は、画像入力デバイスであるスキャナ１１３や画像出力デバイスであるプリンタ１１４を接続し、これらを制御する一方、ＬＡＮや公衆回線と接続され、これらを介して画像情報やデバイス情報の入出力を行うものである。
【００５８】
コントロールユニット１１１は、ＣＰＵ３０１を有し、ＣＰＵ３０１は、システムバス３０７を介して、ＲＡＭ３０２、ＲＯＭ３０３、ＨＤＤ（ハードディスク装置）３０４、イメージバスＩ／Ｆ３０５、操作部Ｉ／Ｆ３０６、ネットワークＩ／Ｆ３０８、およびモデム３０９と接続される。
【００５９】
ＲＡＭ３０２は、ＣＰＵ３０１の作業領域を提供するためのメモリであり、また、画像データを一時記憶するための画像メモリとしても使用される。ＲＯＭ３０３はブートＲＯＭであり、ＲＯＭ３０３には、システムのブートプログラムが格納されている。ＨＤＤ３０４には、システムソフトウェア、画像データなどが格納される。
【００６０】
操作部Ｉ／Ｆ３０６は、操作部１１２との間で入出力を行うためのインタフェースであり、操作部１１２に表示する画像データを操作部１１２に対して出力し、ユーザが操作部１１２を介して入力した情報を、ＣＰＵ３０１に伝送するなどの役割を果たす。
【００６１】
ネットワークＩ／Ｆ３０８は、ＬＡＮと接続され、ＬＡＮに対して情報の入出力を行う。モデム３０９は、公衆回線と接続され、公衆回線に対して情報の入出力を行う。
【００６２】
イメージバスＩ／Ｆ３０５は、システムバス３０７と画像データを高速で転送する画像バス３１０とを接続し、データ構造を変換するバスブリッジである。
【００６３】
画像バス３１０には、ＲＩＰ（ラスタイメージプロセッサ）３１１、デバイスＩ／Ｆ３１２、スキャナ画像処部３１３、プリンタ画像処理部３１４、画像回転部３１５、および画像圧縮部３１６が接続されている。
【００６４】
ＲＩＰ３１１は、ＬＡＮから受信されたＰＤＬコードをビットマップイメージに展開する。デバイスＩ／Ｆ３１２は、スキャナ１１３およびプリンタ１１４とコントロールユニット１１１とを接続し、画像データの同期系／非同期系の変換を行う。スキャナ画像処理部３１３は、入力画像データに対し補正、加工、編集などを行う。プリンタ画像処理部３１４は、プリント出力画像データに対して、プリンタの補正、解像度変換などを行う。画像回転部３１５は、画像データの回転を行う。画像圧縮部３１６は、多値画像データに対してはJPEG圧縮伸長処理を行い、２値画像データに対してはJBIG，MMR，MHなどの圧縮伸長処理を行う。
【００６５】
上記の構成を備える画像処理装置の外観について図４を参照しながら説明する。図４は図１の画像処理装置１１０の外観図である。ここでは、各画像処理装置１１０，１２０，１３０の外観構成は、同じであるので、画像処理装置１１０の外観構成を説明するものとする。
【００６６】
画像処理装置１１０において、スキャナ１１３は、原稿となる紙上の画像を照明し、ＣＣＤラインセンサ（図示せず）を走査することによって、ラスタイメージデータを生成する。使用者が原稿用紙を原稿フィーダ４０５のトレイ４０６にセットして、操作部１１２において読み取りの起動を指示すると、コントローラユニット１１１のＣＰＵ３０１がスキャナ１１３に指示を与える。そして、原稿フィーダ４０５が原稿用紙を１枚ずつフィードし、スキャナ１１３は原稿フィーダ４０５からフィードされた原稿画像の読み取り動作を行う。
【００６７】
プリンタ１１４は、ラスタイメージデータを用紙上の印刷するものであり、その印刷方式として、感光体ドラムや感光体ベルトを用いた電子写真方式が用いられている。なお、印刷方式として、微少ノズルアレイからインクを吐出して用紙上に直接画像を印字するインクジェット方式などの他の方式を用いてもよいことはいうまでもない。プリンタ１１４のプリント動作は、ＣＰＵ３０１からの指示によって起動される。プリンタ１１４は、異なる用紙サイズまたは異なる用紙向きを選択可能なように複数の給紙段を有し、それぞれに対応した用紙カセット４０１，４０２，４０３が搭載される。また、排紙トレイ４０４が設けられており、この排紙トレイ４０４には、印字し終わった用紙が排紙される。
【００６８】
次に、操作部１１２の構成について図５を参照しながら説明する。図５は図１の操作部１１２の外観構成を示す図である。
【００６９】
操作部１１２は、図５に示すように、ＬＣＤ上にタッチパネルシート５０２が貼られているＬＣＤ表示部５０１を有する。このＬＣＤ表示部５０１には、システムの操作画面およびソフトキーが表示されるとともに、表示されているキーが押されると、押された位置を示す位置情報がＣＰＵ３０１に伝えられる。
【００７０】
また、操作部１１２には、スタートキー５０５、ストップキー５０３、ＩＤキー５０７、リセットキー５０４の各種ハードキーが設けられている。スタートキー５０５は、原稿画像の読み取り動作の開始を指示するためのキーであり、スタートキー５０５の中央部には、緑と赤の２色ＬＥＤ表示部５０６が設けられている。２色ＬＥＤ表示部５０６は、その色によってスタートキー５０５が使用可能な状態にあるか否かを表す。ストップキー５０３は、稼働中の動作を止めるためのキーである。ＩＤキー５０７は、使用者のユーザＩＤを入力するときに用いられるキーである。リセットキー５０４は操作部１１２からの設定を初期化するときに用いられるキーである。
【００７１】
次に、操作部１１２の構成について図６を参照しながら説明する。図６は図１の操作部１１２の詳細構成を示すブロック図である。
【００７２】
操作部１１２は、図６に示すように、操作部Ｉ／Ｆ３０６を介してシステムバス３０７に接続される。システムバス３０７には、上述したように、ＣＰＵ３０１、ＲＡＭ３０２、ＲＯＭ３０３、ＨＤＤ３０４などが接続されている。
【００７３】
操作部Ｉ／Ｆ３０６は、ユーザからの入力を制御するための入力ポート６０１と、画面出力デバイスを制御するための出力ポート６０２とを有する。入力ポート６０１は、タッチパネル５０２、各種ハードキー５０３，５０４，５０５，５０７を含むキー群からのユーザ入力をＣＰＵ３０１に渡す。ＣＰＵ３０１は、ユーザ入力の内容と制御プログラムとに基づいて表示画面データを生成し、出力ポート６０２を介して、ＬＣＤ表示部５０１に表示画面を出力する。また、ＣＰＵ３０１は、出力ポート６０２を介して必要に応じてＬＥＤ表示部５０６を制御する。
【００７４】
次に、ウェブブラウザモジュール２１１のソフトウェア構成について図７を参照しながら説明する。図７はウェブブラウザモジュール２１１のソフトウェア構成を示すブロック図である。
【００７５】
ウェブブラウザモジュール２１１は、図７に示すように、プロトコル処理部８０１、コンテンツパーサ８０２、ＤＯＭ構築部８０３、ＤＯＭ処理部８０４、レイアウトエンジン８０７、スタイルシートパーサ８０６、レンダラ８０８、スクリプトインタプリタ８０５およびイベント処理部８０９を含む。
【００７６】
プロトコル処理部８０１は、ＨＴＴＰモジュール２１２を介して、他のネットワークノードとの間に接続を確立し通信する。この通信においては、ＵＲＬによって記述されたリソースに対してＨＴＴＰ要求が発行され、その応答が得られる。この過程で、各種符号化形式に則した通信データの符号化・復号化も行われる。
【００７７】
コンテンツパーサ８０２は、プロトコル処理部８０１からＨＴＭＬ，ＸＭＬ，ＸＨＴＭＬなどの表現形式で表現されたコンテンツデータを受け取り、字句解析および構文解析して解析木を生成する。
【００７８】
ＤＯＭ構築部８０３は、コンテンツパーサ８０２から解析木を受け取り、コンテンツデータの構造に対応したDocument Object Model（DOM）の構築を行う。従来のＨＴＭＬは、文法上様々な省略を許し、バリエーションが多岐に渡る。さらに現実世界で運用されているコンテンツは、整形式でも妥当でもない場合が多い。そこで、ＤＯＭ構築部８０３は、他の一般的なウェブブラウザと同様に、文法的に妥当でないコンテンツデータの正しい論理構造を推論し、妥当なＤＯＭの構築を試みる。
【００７９】
ＤＯＭ処理部８０４は、ＤＯＭ構築部８０３が構築したＤＯＭをオブジェクト群の入れ子関係を表現するツリー構造としてメモリ上に保持管理する。ウェブブラウザの各種処理は、このＤＯＭを中心に実現される。
【００８０】
レイアウトエンジン８０７は、ＤＯＭ処理部８０４が保持するオブジェクト群のツリー構造に応じて、各オブジェクトの表示上の表現（プレゼンテーション）を再帰的に決定し、結果的に文書全体のレイアウトを得る。各オブジェクトの表示上の表現は、文書の中に埋め込まれた記述または文書からリンクされた別ファイル中の記述によって、Cascading Style Sheet（CSS）などのスタイルシート形式で明示的に指定される場合がある。また、レイアウトエンジン８０７は、スタイルシートパーサ８０６によるスタイルシートの解析結果を反映して文書のレイアウトを決定する。
【００８１】
スタイルシートパーサ８０６は、コンテンツの文書に関連付けられたスタイルシートを解析する。
【００８２】
レンダラ８０８は、レイアウトエンジン８０７が決定した文書のレイアウトに応じて、ＬＣＤ５０１に表示するためのGraphical User Interface（GUI）データを生成する。生成されたＧＵＩデータは、ＵＩインタフェース２０１によってＬＣＤ５０１に表示される。
【００８３】
イベント処理部８０９は、操作部１１２上のタッチパネルシート５０２や各キーなどに対してユーザが行った操作のイベントを受信して、各イベントに対応した処理を行う。また、イベント処理部８０９は、制御ＡＰＩ２１８から装置やジョブなどの状態遷移イベントを受信して、各イベントに対応した処理を行う。ＤＯＭ処理部８０４が管理するＤＯＭのツリー構造には、オブジェクトのクラス毎およびオブジェクトインスタンス毎に各種イベントに対応するイベントハンドラが登録されている。イベント処理部８０９は、生起したイベントに応じて、ＤＯＭ処理部８０４が管理するオブジェクト群の中からそのイベントの処理を担当するべきオブジェクトを決定し、イベントを配信する。イベントを配信されたオブジェクトは、そのイベントに対応するイベントハンドラのアルゴリズムに応じて、各種の処理を実行する。イベントハンドラの処理には、ＤＯＭ処理部８０４が保持するＤＯＭの更新、レイアウトエンジンに対する再描画指示、プロトコル処理部８０１に対するＨＴＴＰ要求発行の指示、制御ＡＰＩ２１８の呼び出しによる画像処理装置機能の制御、などがある。
【００８４】
スクリプトインタプリタ８０５は、Java（登録商標）Script（ECMA Script）などのスクリプトを解釈し実行するインタプリタである。スクリプトは、文書に埋め込まれたり、または文書からリンクされた別ファイル中に記述されたりして、ＤＯＭに対する操作などを行う。コンテンツの提供者は、スクリプトによって、提供する文書の動的な挙動をプログラムできる。
【００８５】
次に、ＵＩインタフェース２０１によりＬＣＤ５０１に表示されるウェブブラウザの画面構成について図８を参照しながら説明する。図８はＵＩインタフェース２０１によってＬＣＤ５０１に表示されるウェブブラウザの画面構成を示す図である。
【００８６】
ＵＩインタフェース２０１によりＬＣＤ５０１に表示されるウェブブラウザの画面には、図８に示すように、タブ９０１、ＵＲＬ入力フィールド９０２、ＯＫボタン９０３、プログレスバー９０４、コンテンツ表示領域９０５、戻るボタン９０６、進むボタン９０７、リロードボタン９０８、中止ボタン９０９、およびステータス領域９１０が表示される。
【００８７】
タブ９０１は、ウェブブラウザ機能と他の機能（コピー、ボックス、送信、拡張）との画面切り替えを行うものである。ＵＲＬ入力フィールド９０２は、ユーザが所望のリソースのＵＲＬを入力するフィールドであり、当該フィールドをユーザが押すと、文字入力を行うための仮想的なフルキーボード（不図示）が表示される。ユーザは、仮想的なフルキーボード上に配置されたキートップを模したソフトキーによって所望の文字列を入力することができる。
【００８８】
ＯＫボタン９０３は入力したＵＲＬ文字列を確定するソフトキーである。ＵＲＬが確定されると、ウェブブラウザモジュール２１１は、当該リソースの取得を行うためのＨＴＴＰ要求を発行する。プログレスバー９０４は、ＨＴＴＰ要求応答によるコンテンツ取得処理の進捗状況を示す。コンテンツ表示領域９０５は、取得したリソースが表示される領域である。戻るボタン９０６は、コンテンツ表示の履歴をさかのぼり、現時点で表示しているコンテンツの前に表示したコンテンツを表示し直すためのソフトキーである。進むボタン９０７は、コンテンツ表示の履歴をさかのぼって表示しているときに、下時点で表示しているコンテンツの後に表示したコンテンツの表示に戻るためのソフトキーである。リロードボタン９０８は、現時点で表示しているコンテンツの再取得と再表示を行う。中止ボタン９０９は、実行中のコンテンツ取得処理を中止するソフトキーである。
【００８９】
ステータス領域９１０は、画像処理装置の各種機能からのメッセージを表示する領域である。このステータス領域９１０には、ウェブブラウザ画面を表示中であっても、スキャナやプリンタや他の機能などから、ユーザの注意を促すためのメッセージを表示することができる。また、同様にウェブブラウザ機能からもメッセージの表示を行うことができる。ウェブブラウザ機能は、リンク先のＵＲＬ文字列、コンテンツのタイトル文字列、スクリプトによって指示されたメッセージなどを表示する。
【００９０】
次に、本実施の形態の動作について図９を参照しながら説明する。図９は本発明の一実施の形態におけるＨＴＴＰプロトコルによる要求と応答の処理の流れを示すシーケンス図である。
【００９１】
クライアント１００１は、図９に示すように、ＨＴＴＰ要求を送信しＨＴＴＰ応答を受信するソフトウェアであり、本実施の形態の画像処理装置１１０，１２０，１３０内蔵のウェブブラウザや、ＰＣ（Personal Computer）、ＰＤＡ（Personal Digital Assistants）、携帯電話などで稼動する一般的なウェブブラウザや、さらにウェブブラウザと同様の方法でウェブサーバにアクセスしてサービスの利用または中継を行う各種のソフトウェアに相当するものである。サーバ１００２は、ＨＴＴＰ要求を受信して対応する処理を行い、さらにＨＴＴＰ応答を返信するソフトウェアであり、本実施の形態のサーバ１５５上で稼動するソフトウェアを含むＨＴＴＰサーバに相当するものである。
【００９２】
クライアント１００１は、ＨＴＴＰ要求をＧＥＴメソッドまたはＰＯＳＴメソッドのいずれかの方法で送信することができる。ここで、クライアント１００１が所望のリソースに対するＨＴＴＰ要求１００３をＧＥＴメソッドでサーバ１００２に送信する場合、リソースは一般にＵＲＩ（特にＵＲＬ）形式によって指定される。サーバ１００２は、ＨＴＴＰ要求１００３により指定されたリソースに対応するデータを取得または生成し、このデータをＨＴＴＰ応答１００４によって返送する。ここで、指定されたリソースが静的なファイルに対応する場合、サーバ１００２は例えばサーバ１５５のファイルシステムから該当するファイルを読み出してそのデータを取得する。一方、指定されたリソースがＣＧＩプログラムやサーブレット（Servlet）などの処理に対応する場合は、サーバ１００２は該当する処理を実行する。この処理は、要求に対する応答を生成するものであるが、この過程で所定のサービスを達成するために必要なビジネスロジックの実行やバックエンドのＤＢＭＳへのアクセスなどの副作用が発生する。そして、処理の結果として生成されたデータが返送される。例えば、画像処理装置の消耗品カタログを表示するためのリソースが指定された場合、電子商取引のためのソフトウェアが実行される。そして、このソフトウェアにより、データベースの中から用紙、トナー、部品の最新価格や在庫状況などのレコードを参照し、これらの情報をＨＴＭＬ形式またはＸＭＬ形式に整形してカタログ文書データを生成する処理が行われる。
【００９３】
クライアント１００１においては、ＨＴＴＰ応答１００４で得られたデータが表示可能な形式である場合、そのコンテンツの表示が行われる。得られたデータがＨＴＭＬ文書などであれば、ウェブブラウザ上に表示された文書にハイパーテキストとして埋め込まれたリンク情報を選択するだけで、次々に新たなリソースの取得や表示を繰り返すことができる。
【００９４】
次に、ＨＴＴＰ要求をＰＯＳＴメソッドで送信する場合を説明する。ＨＴＭＬ文書にフォーム（ｆｏｒｍ）が含まれ、その送信方法にＰＯＳＴメソッドが指定されている場合（図１０のＨＴＭＬ文書を参照）、クライアント１００１のウェブブラウザにより表示されたフォームにユーザにより入力された情報は符号化され、その符号化された情報すなわちフォームの入力内容はＨＴＴＰ要求１００５に添付されてサーバ１００２に送信される。サーバ１００２においては、指定されたリソースが、クライアント１００１から送られたデータを受信して処理を行い、ＨＴＴＰ応答１００６を生成し、クライアント１００１に返信する。
【００９５】
次に、フォームを含み、その送信方法としてＰＯＳＴメソッドが指定されたＨＴＭＬ文書の構造およびそのＨＴＭＬ文書に基づいて表示される画面について図１０および図１１を参照しながら説明する。図１０はフォームを含み、その送信方法としてＰＯＳＴメソッドが指定されたＨＴＭＬ文書の一例を示す図、図１１は図１０のＨＴＭＬ文書に基づいてウェブブラウザのコンテンツ表示領域９０５に表示される画面を示す図である。
【００９６】
フォームを含み、その送信方法としてＰＯＳＴメソッドが指定されたＨＴＭＬ文書の一例においては、図１０に示すように、１行目にＨＴＭＬ要素の開始を示すタグが記述されている。２行目には、ＨＥＡＤ要素と、それに含まれたＴＩＴＬＥ要素が記述されている。３行目には、ＢＯＤＹ要素の開始を示すタグが記述されている。４行目にはＨ１要素が記述され、５行目にはＯＬ要素の開始を示すタグが記述されている。ここで、ＯＬ要素中のＬＩ要素群は順序付けられたリストとして扱われる。６行目と７行目にはそれぞれＬＩ要素が記述されている。８行目にはＯＬ要素の終了を示すタグが記述されている。９行目と１０行目にはＦＯＲＭ要素の開始を示すタグが記述されており、このフォームにおいては、入力された情報がmultipart/formdata形式で符号化され、get-files.cgiリソースに対してＰＯＳＴメソッドで送信されることが属性によって示されている。１１行目は第１のＩＮＰＵＴ要素を示す。この第１のＩＮＰＵＴ要素においては、名前がuserfile1であり、型がfileであることが、属性によって示されている。１２行目は第２のＩＮＰＵＴ要素を示す。この第２のＩＮＰＵＴ要素においては、型がsubmitであり、値が文字列”Send”であることが属性によって示されている。１３行目はＦＯＲＭ要素の終了を示す。１４行目はＢＯＤＹ要素の終了を示すタグが記述されている。１５行目はＨＴＭＬ要素の終了を示すタグが記述されている。
【００９７】
クライアント１００１においては、図１１に示すように、そのウェブブラウザにより上記ＨＴＭＬ文書に基づいて画面がコンテンツ表示領域９０５（図８に示す）に表示される。上記ＨＴＭＬ文書に基づいて表示される画面においては、図１０の４行目から８行目のＨ１要素とＯＬ要素に対応する表示が、表示１２０１となる。また、図１０の１１行目のfile型のＩＮＰＵＴ要素に対応する表示が矩形領域の表示１２０２となる。図１０の１２行目のsubmit型のＩＮＰＵＴ要素に対応する表示が、表示１２０３となる。
【００９８】
ここで、表示１２０２領域内には、本実施の形態の画像処理装置１１０，１２０，１３０のウェブブラウザに特徴的な固有の表示１２０４，１２０５，１２０６，１２０７が行われる。表示１２０４は、画像入力機能を模式的に示すアイコンと画像入力アップロード機能を説明するメッセージ（「原稿をスキャンして送る」）を示す。表示１２０５は、画像入力機能の動作設定を開始するためのボタンを示す。表示１２０６は、画像入力アップロード機能の機能説明を開始するためのボタンを示す。表示１２０７は、画像入力機能の状態を伝えるメッセージを表示するためのメッセージ表示領域を示す。
【００９９】
次に、画像処理装置１１０，１２０，１３０のウェブブラウザによって行われるfile型のＩＮＰＵＴ要素に対応するオブジェクトのレイアウト処理について図１２を参照しながら説明する。図１２は画像処理装置１１０，１２０，１３０のウェブブラウザによって行われるfile型のＩＮＰＵＴ要素に対応するオブジェクトのレイアウト処理の手順を示すフローチャートである。ここでは、本レイアウト処理により、図１１に示す画面の表示１２０２に対応するレイアウトが生成されるものとして説明を行う。
【０１００】
ＣＰＵ３０１は、図１２に示すように、まずステップＳ１３０１において、レイアウト処理の単位となるコンポーネントオブジェクトを生成する。続いてＣＰＵ３０１は、ステップＳ１３０２において、表示１２０４に対応するメッセージすなわち「原稿をスキャンして送る」を生成し、コンポーネントに配置する。そして、ＣＰＵ３０１は、ステップＳ１３０３において、表示１２０５に対応するボタンすなわち「設定」ボタンを生成し、コンポーネントに配置する。
【０１０１】
次いで、ＣＰＵ３０１は、ステップＳ１３０４において、生成された「設定」ボタンの押下イベントが生起したときに起動するイベントハンドラとして、画像入力機能の動作設定処理を登録し、続くステップＳ１３０５で、表示１２０６に対応するボタンすなわち「ヘルプ」ボタンを生成し、コンポーネントに配置する。そして、ＣＰＵ３０１は、ステップＳ１３０６において、生成された「ヘルプ」ボタンの押下イベントが生起したときに起動するイベントハンドラとして、画像入力アップロード機能の機能説明処理を登録する。
【０１０２】
次いで、ＣＰＵ３０１は、ステップＳ１３０７において、画像入力機能の状態を伝える表示１２０７に対応するメッセージすなわち「原稿をセットしてください」を生成し、コンポーネントに配置する。続いて、ＣＰＵ３０１は、ステップＳ１３０８で、画像入力機能の状態遷移イベントが生起したときに起動するイベントハンドラとして、新しい状態を伝えるメッセージに更新する処理を登録する。そして、ＣＰＵ３０１は、ステップＳ１３０９において、コンポーネントをこのコンポーネントの親コンポーネントであるＢＯＤＹ要素に対応するコンポーネントオブジェクトに配置する。同様の手順によって、各要素に対応するコンポーネントオブジェクト間の包含関係を表現するツリー構造が生成され、このツリーを再帰的に処理することで画面表示のレイアウトが行われる。
【０１０３】
次に、画像処理装置１１０，１２０，１３０のウェブブラウザによって行われるフォームのサブミット処理について図１３を参照しながら説明する。図１３は画像処理装置１１０，１２０，１３０のウェブブラウザによって行われるフォームのサブミット処理の手順を示すフローチャートである。本処理は、submit型のＩＮＰＵＴ要素に対応するオブジェクトの入力イベントが生起したとき、すなわち図１１に示す画面の表示１２０３の「Send」ボタンに対する押下イベントが生起したとき、そのＩＮＰＵＴ要素を含むＦＯＲＭ要素に関して実行されるものである。なお、処理の実装は、複数のオブジェクトに分散しているが、詳細は省略して一連の手順として説明する。
【０１０４】
ＣＰＵ３０１は、図１３に示すように、まずステップＳ１４０１において、ＦＯＲＭ要素に対応するオブジェクトのaction属性に設定されたＵＲＩのリソースに対してＨＴＴＰ接続を行う（HTTP 1.1の場合、当該サーバへの接続が既に確立していれば、このステップは省略可能である）。続いてＣＰＵ３０１は、ステップＳ１４０２において、ＦＯＲＭ要素に対応するオブジェクトのmethod属性に設定されている送信方法でＨＴＴＰ要求を開始する。ここでは、送信方法としてＰＯＳＴ送信が設定されている。そして、ＣＰＵ３０１は、ステップＳ１４０３において、file型のＩＮＰＵＴ要素に対応するオブジェクトの属性として記憶されている画像入力機能の動作設定に基づいて、制御ＡＰＩ２１８の設定を行う。
【０１０５】
次いで、ＣＰＵ３０１は、ステップＳ１４０４において、制御ＡＰＩ２１８を呼び出して、スキャンジョブを起動する。これにより、原稿の読み取りが行われる。続いてＣＰＵ３０１は、ステップＳ１４０５で、読み取った画像データを送信に適した画像形式およびデータ形式（ファイル形式）のデータに変換する。そして、ＣＰＵ３０１は、ステップＳ１４０６において、ＦＯＲＭ要素のenctype属性に設定されている符号化形式（multipart/form-data）に合わせて画像データを符号化する。
【０１０６】
次いで、ＣＰＵ３０１は、ステップＳ１４０７において、符号化された画像データの送信を行う。そして、ＣＰＵ３０１は、ステップＳ１４０８において、読み取る原稿の残りの有無を判定する。ここで、読み取る原稿の残りがあれば、ＣＰＵ３０１は、上記ステップＳ１４０４に戻り、該ステップからの手順を繰り返す。これに対し、読み取る原稿の残りがなければ、ＣＰＵ３０１は、ステップＳ１４０９において、ＨＴＴＰ要求を完了し、本処理を終了する。
【０１０７】
次に、本実施の形態のウェブブラウザにより画像入力機能の動作設定処理のために表示されるダイアログウィンドウについて図１４を参照しながら説明する。図１４はウェブブラウザにより画像入力機能の動作設定処理のために表示されるダイアログウィンドウの一例を示す図である。
【０１０８】
図１１の表示１２０５のボタンすなわち「設定」ボタンが押下されると、図１４に示すように、ダイアログウィンドウ１５０１がウェブブラウザのコンテンツ表示領域９０５上に表示される。このダイアログウィンドウ１５０１においては、ボタン１５０２、ボタン１５０３、データ形式選択リストボックス１５０４、解像度選択リストボックス１５０５および品位スライダ１５０６が表示される。
【０１０９】
ここで、ボタン１５０２は、設定をキャンセルしてダイアログ閉じるためのボタンである。ボタン１５０３は、設定を確定してダイアログを閉じるためのボタンである。データ形式選択リストボックス１５０４１は、原稿を読み取って画像データを表現するために利用する符号化形式、圧縮形式、ファイル形式などのデータ形式を選択するためのボックスである。解像度選択リストボックス１５０５は、原稿画像を読み取る際の解像度を指定するためのボックスである。品位スライダ１５０６は、所望の画像品質を指定するためのスライダであって、品位スライダ１５０６による指定に応じて最終的に生成されるデータの圧縮率などのパラメータが決定される。
【０１１０】
ここで、サーバがフォーム中のfile型ＩＮＰＵＴ要素にaccept属性を設定している場合、ウェブブラウザは、データ形式選択リストボックス１５０１の選択候補として、accept属性に列挙されているメディアタイプやタイプパターンに適合するデータ形式のみを挙げる。また、accept属性に指定されたメディアタイプと、画像処理装置によって送信可能なデータ形式の組み合わせから、デフォルトの送信データ形式が決定され、この決定された送信データ形式が画像入力機能の動作設定に利用される。
【０１１１】
このように、本実施の形態によれば、従来のウェブ経由の注文などにおいて別途ファクスで送信されていた紙原稿のデータ（サインや印影を必要とする書類や公文書など）をサーバにアップロードすることができる。すなわち、ウェブベースのワークフローの中に紙原稿の入力ステップを組み込むことが可能になり、ＡＳＰ側はファイルアップロードを要求する汎用的なウェブページを記述するのみで、紙原稿のデータを取得することができる。
【０１１２】
また、ＡＳＰが汎用的なファイルアップロードを求めるフォームを備えたウェブページによって画像の取得要求を行い、ウェブベースのワークフローに画像データに基づく処理を組み入れるシステムを提供することができる。特に、ウェブブラウザを内蔵した画像処理装置において、ユーザがＡＳＰからの要求に応じて一回のアクションで画像入力と画像データのアップロードとを行うことが可能な簡易な操作手順の画像処理装置を提供することができる。
【０１１３】
また、画像入力とアップロードに関する動作設定の起動、ユーザ補助の起動、および、動作状態のメッセージをファイルアップロード要求（すなわち画像入力要求）の表示に併せて表示することにより、操作手順を簡易化することができる。
【０１１４】
また、画像入力ステップとアップロードステップを合わせて行うことにより、ストレージの記憶容量を要しない画像処理装置を提供することができる。
【０１１５】
（第２実施の形態）
次に、本発明の第２実施の形態について図１５を参照しながら説明する。図１５は本発明の第２実施の形態に係るウェブブラウザによって行われるフォームのサブミット処理の手順を示すフローチャートである。本実施の形態は、上記第１実施の形態と同じ構成を有し、ここではその説明は省略する。
【０１１６】
本実施の形態においては、上記第１実施の形態と同様に、submit型のＩＮＰＵＴ要素に対応するオブジェクトの入力イベントが生起したとき、すなわち図１１の画面の表示１２０３のボタンに対する押下イベントが生起したときに、そのＩＮＰＵＴ要素を含むＦＯＲＭ要素に関して図１５に示す手順の処理が実行される。なお、処理の実装は、実際には、複数のオブジェクトに分散しているが、ここでは、詳細を省略して一連の手順として処理を説明する。
【０１１７】
ＣＰＵ３０１は、図１５に示すように、まずステップＳ１６０１において、ＦＯＲＭ要素に対応するオブジェクトのaction属性に設定されたＵＲＩのリソースに対してＨＴＴＰ接続を行う（HTTP 1.1の場合、当該サーバへの接続が既に確立していれば、このステップは省略可能）。続いてＣＰＵ３０１は、ステップＳ１６０２で、ＦＯＲＭ要素に対応するオブジェクトのmethod属性に設定されている方法（ここでは、ＰＯＳＴ送信）でＨＴＴＰ要求を開始する。そして、ＣＰＵ３０１は、ステップＳ１６０３において、file型のＩＮＰＵＴ要素に対応するオブジェクトの属性として記憶されている画像入力機能の動作設定に基づいて、制御ＡＰＩ２１８の設定を行う。ＣＰＵ３０１は、ステップＳ１６０４において、制御ＡＰＩ２１８を呼び出して、スキャンジョブを起動する。これにより、原稿の読み取りが行われる。
【０１１８】
ＣＰＵ３０１は、ステップＳ１６０５において、情報埋め込み画像コーデックモジュール２２９によって、読み取った画像データに埋め込まれた情報を復号化する。情報埋め込み画像の復号化は、バーコード、デジタル透かし、ＯＣＲなどの技術によって行われる。復号化された情報は、テキストデータまたは、数値、音声、画像（オリジナル画像の中に情報データとして埋め込まれていた画像）、アプリケーション固有データなどの様々な種類のデータとしてすることができる。そして、ＣＰＵ３０１は、ステップＳ１６０６において、ＦＯＲＭのenctype属性に設定されている符号化形式（multipart/form-data）に合わせて、情報データを符号化する。
【０１１９】
次いで、ＣＰＵ３０１は、ステップＳ１６０７において、符号化された情報データの送信を行う。そして、ＣＰＵ３０１は、ステップＳ１６０８において、読み取る原稿の残りの有無を判定し、読み取る原稿の残りがあれば、上記ステップＳ１６０４に戻り、該ステップからの手順を繰り返す。これに対し、読み取る原稿の残りがなければ、ＣＰＵ３０１は、ステップＳ１６０９において、ＨＴＴＰ要求を完了する。
【０１２０】
ここで、サーバがフォーム中のfile型ＩＮＰＵＴ要素にaccept属性を設定している場合、上記ステップＳ１６０５において復号化する情報データの形式をaccept属性に列挙されているメディアタイプやタイプパターンに適合するデータ形式にすることができる。例えば、accept属性にテキスト形式が設定されている場合、原稿画像データに対するＯＣＲ処理が行われ、得られたテキスト形式の情報データが送信される。
【０１２１】
このように、本実施の形態によれば、画像入力ステップと、入力した画像データの中に埋め込まれた情報を復号化するステップと、復号化した情報のアップロードステップとを合わせて行うにより、上記第１実施の形態の効果に加えて、ウェブベースのワークフローの中に情報埋め込み画像に基づく処理が組み入れられた、簡易な操作手順のシステムを提供することができる。
【０１２２】
なお、本発明の目的は、前述した実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることはいうまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることはいうまでもない。
【０１２３】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることはいうまでもない。
【０１２４】
また、本発明は、上記第１または第２実施の形態に限定されることはなく、本発明の精神を逸脱しない範囲で種々の構成をとることができる。例えば、本発明のシステムを、ウェブブラウザを内蔵した各種画像処理装置例えばデジタルカメラ、カメラ付携帯電話、フラットベッドスキャナによって構成することもできる。また、単機能スキャナとコンピュータを組み合わせたシステムとして構成してもよい。この場合、コンピュータ上で稼動するウェブブラウザが、スキャナを操作するための専用インタフェースを備えて構成される。しかしながら、いずれの場合もウェブサーバ側の汎用性は保たれるものである。
【図面の簡単な説明】
【０１２５】
【図１】本発明の第１実施の形態に係る画像処理装置を含むシステムの全体構成を示すブロック図である。
【図２】図１の画像処理装置１１０のソフトウェア構成を示すブロック図である。
【図３】図１の画像処理装置１１０の詳細構成を示すブロック図である。
【図４】図１の画像処理装置１１０の外観図である。
【図５】図１の操作部１１２の外観構成を示す図である。
【図６】図１の操作部１１２の詳細構成を示すブロック図である。
【図７】ウェブブラウザモジュール２１１のソフトウェア構成を示すブロック図である。
【図８】ＵＩインタフェース２０１によってＬＣＤ５０１に表示されるウェブブラウザの画面構成を示す図である。
【図９】本発明の第１実施の形態におけるＨＴＴＰプロトコルによる要求と応答の処理の流れを示すシーケンス図である。
【図１０】フォームを含み、その送信方法としてＰＯＳＴメソッドが指定されたＨＴＭＬ文書の一例を示す図である。
【図１１】図１０のＨＴＭＬ文書に基づいてウェブブラウザのコンテンツ表示領域９０５に表示される画面を示す図である。
【図１２】画像処理装置１１０，１２０，１３０のウェブブラウザによって行われるfile型のＩＮＰＵＴ要素に対応するオブジェクトのレイアウト処理の手順を示すフローチャートである。
【図１３】画像処理装置１１０，１２０，１３０のウェブブラウザによって行われるフォームのサブミット処理の手順を示すフローチャートである。
【図１４】ウェブブラウザにより画像入力機能の動作設定処理のために表示されるダイアログウィンドウの一例を示す図である。
【図１５】本発明の第２実施の形態に係るウェブブラウザによって行われるフォームのサブミット処理の手順を示すフローチャートである。
【図１６】ＲＦＣ１８６７の従来技術によって一般的なウェブブラウザに表示されるフォームの画面例を示す図である。
【符号の説明】
【０１２６】
１００，１５４  ＬＡＮ
１１０，１２０，１３０  画像処理装置
１０１  デスクトップコンピュータ
１５１  ユーザサイト
１５２  広域ネットワーク
１５３  アプリケーションサービスプロバイダサイト
１５５  サーバ
３０１  ＣＰＵ
３０３  ＲＯＭ
３０４  ＨＤＤ
【図１】
0004819311.tif 000002
【図２】
0004819311.tif 000003
【図３】
0004819311.tif 000004
【図４】
0004819311.tif 000005
【図５】
0004819311.tif 000006
【図６】
0004819311.tif 000007
【図７】
0004819311.tif 000008
【図８】
0004819311.tif 000009
【図９】
0004819311.tif 000010
【図１０】
0004819311.tif 000011
【図１１】
0004819311.tif 000012
【図１２】
0004819311.tif 000013
【図１３】
0004819311.tif 000014
【図１４】
0004819311.tif 000015
【図１５】
0004819311.tif 000016
【図１６】
0004819311.tif 000017