(57)【特許請求の範囲】
【請求項１】
ウェブブラウザを搭載する電子機器と、前記電子機器にウェブアプリケーションを提供する情報処理装置と、を有する情報処理システムであって、
前記情報処理装置は、画面表示情報の少なくとも一部がテンプレートにより表された前記ウェブアプリケーションを前記電子機器に提供する提供手段、を有し、
前記電子機器に搭載されたウェブブラウザは、前記ウェブアプリケーションが該電子機器における画像処理を実行するプログラムを記憶するプログラム記憶部と、
前記プログラム記憶部が記憶するプログラムと、少なくとも一部がテンプレートにより表された前記画面表示情報と、前記電子機器の機能に関する情報とに基づき、前記テンプレートにより表された部分を前記電子機器の機能に関する情報により変換して、ユーザが前記ウェブアプリケーションを利用する画面の画面表示情報を生成する変換手段と、
前記画面表示情報に基づいて表示される画面を介して前記画像処理の実行指示を受け付けたとき、前記プログラム記憶部が記憶する前記プログラムを用いて前記画像処理を実行する実行手段と、を有する
ことを特徴とする情報処理システム。
【請求項２】
前記提供手段は、前記画面表示情報の少なくとも一部としてテンプレートが記述された前記ウェブアプリケーションを前記電子機器に提供し、
前記変換手段は、前記画面表示情報に含まれる前記テンプレートにより記述されている部分を、前記電子機器の機能に関する情報により変換する
ことを特徴とする請求項１記載の情報処理システム。
【請求項３】
前記電子機器に搭載されたウェブブラウザは、前記テンプレートを識別する識別情報と対応付けて前記テンプレートを記憶するテンプレート記憶部を更に有し、
前記提供手段は、前記画面表示情報の少なくとも一部としてテンプレートの識別情報が記述された前記ウェブアプリケーションを前記電子機器に提供し、
前記変換手段は、前記画面表示情報に含まれる前記識別情報に対応付けられて前記テンプレート記憶部に記憶されている前記テンプレートを読み出し、そのテンプレートを前記電子機器の機能に関する情報により変換して、前記画面表示情報に含まれる前記テンプレートの識別情報により記述されている部分と置き換える
ことを特徴とする請求項１記載の情報処理システム。
【請求項４】
前記電子機器の機能に関する情報は、前記電子機器において設定できる機能と、その機能で利用できる値と、を表す
ことを特徴とする請求項１乃至３何れか一項記載の情報処理システム。
【請求項５】
前記変換手段により生成された前記画面表示情報に基づき、前記電子機器において設定できる機能ごとに、前記機能で利用できる値をユーザに選択させ、ユーザから前記ウェブアプリケーションの実行開始指示を受け付ける画面を表示する画面制御部、を更に有する
ことを特徴とする請求項４記載の情報処理システム。
【請求項６】
ウェブブラウザを搭載する電子機器と、前記電子機器にウェブアプリケーションを提供する情報処理装置と、を有する情報処理システムが行う画面表示情報生成方法であって、
前記情報処理装置が、画面表示情報の少なくとも一部としてテンプレートが記述された前記ウェブアプリケーションを前記電子機器に提供する提供ステップと、
前記電子機器に搭載されたウェブブラウザが、プログラム記憶部により記憶されている前記ウェブアプリケーションが該電子機器における画像処理を実行するプログラムと、少なくとも一部にテンプレートが記述された前記画面表示情報と、前記電子機器の機能に関する情報とに基づき、前記テンプレートにより記述されている部分を前記電子機器の機能に関する情報により変換して、ユーザが前記ウェブアプリケーションを利用する画面の画面表示情報を生成する変換ステップと、
前記電子機器に搭載されたウェブブラウザが、前記画面表示情報に基づいて表示される画面を介して前記画像処理の実行指示を受け付けたとき、前記プログラム記憶部が記憶する前記プログラムを用いて前記画像処理を実行する実行ステップと、を有する
ことを特徴とする画面表示情報生成方法。
【請求項７】
ウェブブラウザを搭載する電子機器と、前記電子機器にウェブアプリケーションを提供する情報処理装置と、を有する情報処理システムが行う画面表示情報生成方法であって、
前記情報処理装置が、画面表示情報の少なくとも一部としてテンプレートの識別情報が記述された前記ウェブアプリケーションを前記電子機器に提供する提供ステップと、
前記電子機器に搭載されたウェブブラウザが、前記テンプレートを識別する識別情報と対応付けて前記テンプレートを記憶するテンプレート記憶部から、前記画面表示情報に含まれる前記識別情報に対応付けられて前記テンプレート記憶部に記憶されている前記テンプレートを読み出す読出しステップと、
前記電子機器に搭載されたウェブブラウザが、前記テンプレート記憶部から読み出した前記テンプレートと、プログラム記憶部により記憶されている前記ウェブアプリケーションが該電子機器における画像処理を実行するプログラムと、少なくとも一部にテンプレートの識別情報が記述された前記画面表示情報と、前記電子機器の機能に関する情報とに基づき、前記テンプレートを前記電子機器の機能に関する情報により変換して、前記画面表示情報に含まれる前記テンプレートの識別情報により記述されている部分と置き換え、ユーザが前記ウェブアプリケーションを利用する画面の画面表示情報を生成する変換ステップと、
前記電子機器に搭載されたウェブブラウザが、前記画面表示情報に基づいて表示される画面を介して前記画像処理の実行指示を受け付けたとき、前記プログラム記憶部が記憶する前記プログラムを用いて前記画像処理を実行する実行ステップと、を有する
ことを特徴とする画面表示情報生成方法。
【請求項８】
ウェブブラウザを搭載し、情報処理装置から画面表示情報の少なくとも一部としてテンプレートが記述されたウェブアプリケーションを提供される電子機器であって、
前記ウェブブラウザが、
前記ウェブアプリケーションが該電子機器における画像処理を実行するプログラムを記憶するプログラム記憶部と、
前記プログラム記憶部が記憶するプログラムと、少なくとも一部にテンプレートが記述された前記情報処理装置から提供された前記画面表示情報と、前記電子機器の機能に関する情報とに基づき、前記テンプレートにより記述されている部分を前記電子機器の機能に関する情報により変換して、ユーザが前記ウェブアプリケーションを利用する画面の画面表示情報を生成する変換手段と、
前記画面表示情報に基づいて表示される画面を介して前記画像処理の実行指示を受け付けたとき、前記プログラム記憶部が記憶する前記プログラムを用いて前記画像処理を実行する実行手段と、を有する
ことを特徴とする電子機器。
【請求項９】
ウェブブラウザを搭載し、情報処理装置から画面表示情報の少なくとも一部としてテンプレートの識別情報が記述されたウェブアプリケーションを提供される電子機器であって、
前記ウェブブラウザが、
前記ウェブアプリケーションが該電子機器における画像処理を実行するプログラムを記憶するプログラム記憶部と、
前記テンプレートを識別する識別情報と対応付けて前記テンプレートを記憶するテンプレート記憶部と、
前記テンプレート記憶部から、前記画面表示情報に含まれる前記識別情報に対応付けられて前記テンプレート記憶部に記憶されている前記テンプレートを読み出し、前記テンプレート記憶部から読み出した前記テンプレートと、前記プログラム記憶部により記憶されている前記ウェブアプリケーションが実行可能な処理を記述したプログラムと、少なくとも一部として前記テンプレートの識別情報が記述された前記画面表示情報と、前記電子機器の機能に関する情報とに基づき、前記テンプレートを前記電子機器の機能に関する情報により変換して、前記画面表示情報に含まれる前記テンプレートの識別情報により記述されている部分と置き換え、ユーザが前記ウェブアプリケーションを利用する画面の画面表示情報を生成する変換手段と、
前記画面表示情報に基づいて表示される画面を介して前記画像処理の実行指示を受け付けたとき、前記プログラム記憶部が記憶する前記プログラムを用いて前記画像処理を実行する実行手段と、を有する
ことを特徴とする電子機器。
【請求項１０】
情報処理装置から画面表示情報の少なくとも一部としてテンプレートの識別情報が記述されたウェブアプリケーションを提供される電子機器を、
前記ウェブアプリケーションが該電子機器における画像処理を実行するプログラムを記憶するプログラム記憶部、
前記テンプレートを識別する識別情報と対応付けて前記テンプレートを記憶するテンプレート記憶部、
前記テンプレート記憶部から、前記画面表示情報に含まれる前記識別情報に対応付けられて前記テンプレート記憶部に記憶されている前記テンプレートを読み出し、前記テンプレート記憶部から読み出した前記テンプレートと、前記プログラム記憶部により記憶されている前記ウェブアプリケーションが実行可能な処理を記述したプログラムと、少なくとも一部として前記テンプレートの識別情報が記述された前記画面表示情報と、前記電子機器の機能に関する情報とに基づき、前記テンプレートを前記電子機器の機能に関する情報により変換して、前記画面表示情報に含まれる前記テンプレートの識別情報により記述されている部分と置き換え、ユーザが前記ウェブアプリケーションを利用する画面の画面表示情報を生成する変換手段、
前記画面表示情報に基づいて表示される画面を介して前記画像処理の実行指示を受け付けたとき、前記プログラム記憶部が記憶する前記プログラムを用いて前記画像処理を実行する実行手段、
として機能させるためのブラウザプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、画面表示情報生成方法、電子機器及びブラウザプログラムに関する。
【背景技術】
【０００２】
近年、ウェブ技術の普及により様々なデバイスにおいてウェブアプリケーションが動作するようになった。例えば従来の画像形成装置にはウェブブラウザを搭載し、ウェブアプリケーションから画像形成装置の機能を利用する構成が知られている。このような構成においては、ウェブアプリケーションごとに機能を利用するための処理や画面表示を用意すると開発コストが大きいことから、処理や画面表示のソースコードを切り出したライブラリが配布され、利用されていた。
【０００３】
画面開発の効率化を維持すると共に、画像形成装置が有する特有のハードウェアの制御も可能なインタフェースを提供する画像処理システムは、従来から知られている。このような画像処理システムにおける画像形成装置は、オペレーションパネルを備える。画像形成装置はＨＴＭＬ（HyperText Markup Language）データに基づいてオペレーションパネルに操作画面を表示させるウェブブラウザとしてＭＦＰブラウザを備えていた（例えば特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
配布されたライブラリを利用して作成されたウェブアプリケーションは、利用の度にライブラリを含めてダウンロードされるため、ライブラリの分だけダウンロードに余計な時間が掛かる。なお、配布されたライブラリを利用して作成されたウェブアプリケーションをウェブブラウザにキャッシュさせた場合は、様々なウェブアプリケーションが同じライブラリをキャッシュすることで、キャッシュサイズが大きくなってしまう。一方、処理や画面表示をウェブブラウザに組み込んでしまうとウェブアプリケーションごとにカスタマイズできないか、あるいは、できたとしても自由度が大きく制限されてしまうという問題があった。
【０００５】
本発明の実施の形態は、画面表示の自由度が高いウェブアプリケーションのデータサイズを削減できる情報処理システムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本願請求項１は、ウェブブラウザを搭載する電子機器と、前記電子機器にウェブアプリケーションを提供する情報処理装置と、を有する情報処理システムであって、前記情報処理装置は、画面表示情報の少なくとも一部がテンプレートにより表された前記ウェブアプリケーションを前記電子機器に提供する提供手段、を有し、前記電子機器に搭載されたウェブブラウザは、前記ウェブアプリケーションが該電子機器における画像処理を実行するプログラムを記憶するプログラム記憶部と、前記プログラム記憶部が記憶するプログラムと、少なくとも一部がテンプレートにより表された前記画面表示情報と、前記電子機器の機能に関する情報とに基づき、前記テンプレートにより表された部分を前記電子機器の機能に関する情報により変換して、ユーザが前記ウェブアプリケーションを利用する画面の画面表示情報を生成する変換手段と、前記画面表示情報に基づいて表示される画面を介して前記画像処理の実行指示を受け付けたとき、前記プログラム記憶部が記憶する前記プログラムを用いて前記画像処理を実行する実行手段と、を有することを特徴とする。
【発明の効果】
【０００７】
本発明の実施の形態によれば画面表示の自由度が高いウェブアプリケーションのデータサイズを削減できる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態に係る情報処理システムの一例の構成図である。
【図２】本実施形態に係るコンピュータの一例のハードウェア構成図である。
【図３】本実施形態に係る画像形成装置の一例のハードウェア構成図である。
【図４】本実施形態に係る情報処理システムの一例の機能ブロック図である。
【図５】ウェブアプリケーションで画像形成装置の機能を利用する処理手順を表した一例のシーケンス図である。
【図６】スキャンジョブ設定情報の一例の構成図である。
【図７】ステップＳ４で返されるレスポンスの一例の構成図である。
【図８】ＵＩテンプレート情報に基づいて画面表示情報を生成する処理の手順を示した一例のフローチャートである。
【図９】ＵＩテンプレート情報に基づいて生成された画面表示情報の一例の構成図である。
【図１０】ウェブブラウザが表示する画面の一例のイメージ図である。
【図１１】ステップＳ４で返されるレスポンスの一例の構成図である。
【図１２】ＵＩテンプレート情報に基づいて生成された画面表示情報の他の例の構成図である。
【図１３】ウェブブラウザが表示する画面の一例のイメージ図である。
【図１４】ＵＩテンプレート情報の一例の構成図である。
【図１５】ジョブの状態情報の一例の構成図である。
【図１６】ＵＩテンプレート情報に基づいてダイアログの画面表示情報を生成する処理の手順を示した一例のフローチャートである。
【図１７】ＵＩテンプレート情報に基づいて生成されたダイアログの画面表示情報の一例の構成図である。
【図１８】ジョブの状態が「読み取り中」であるときに表示される画面の一例のイメージ図である。
【図１９】ジョブの状態情報の他の例の構成図である。
【図２０】ＵＩテンプレート情報に基づいて生成されたダイアログの画面表示情報の他の例の構成図である。
【図２１】ジョブの状態が「原稿待ち状態」であるときに表示される画面の一例のイメージ図である。
【図２２】本実施形態に係る情報処理システムの他の例の機能ブロック図である。
【図２３】テンプレート記憶部がテンプレート種別ごとに記憶するＵＩテンプレート情報の一例の構成図である。
【図２４】ステップＳ４で返されるレスポンスの他の例の構成図である。
【図２５】ＵＩテンプレート情報に基づいて画面表示情報を生成する処理の手順を示した他の例のフローチャートである。
【発明を実施するための形態】
【０００９】
次に、本発明の実施の形態について詳細に説明する。本実施形態では、ウェブブラウザを搭載し、ウェブアプリケーションから機能を利用される電子機器の一例として画像形成装置を例に説明するが、画像形成装置に限定するものではない。例えば電子機器は、プロジェクタ、会議システム、テレビ、レコーダ、カメラ、電子黒板（ＩＷＢ）などであってもよい。
［第１の実施形態］
＜システム構成＞
図１は、本実施形態に係る情報処理システムの一例の構成図である。図１の情報処理システム１はＬＡＮやインターネットなどのネットワーク１３０を介して接続された情報処理装置１００、画像形成装置１２０を有する。情報処理装置１００及び画像形成装置１２０は無線又は有線による通信手段を有している。図１では情報処理装置１００及び画像形成装置１２０が１台である例を示しているが、複数台あってもよい。
【００１０】
情報処理装置１００は一台以上のコンピュータによって実現される。情報処理装置１００は後述のウェブアプリケーションを画像形成装置１２０に提供する。画像形成装置１２０は電子機器の一例である。画像形成装置１２０はウェブブラウザを搭載し、情報処理装置１００から提供されたウェブアプリケーションを実行する。なお、図１の情報処理システム１は一例であって、一台の情報処理装置１００が備える機能を複数台の情報処理装置１００で実現する構成であってもよい。
【００１１】
＜ハードウェア構成＞
図１の情報処理装置１００は例えば図２に示すようなハードウェア構成のコンピュータにより実現される。図２は本実施形態に係るコンピュータの一例のハードウェア構成図である。
【００１２】
図２に示したコンピュータ５００は、入力装置５０１、表示装置５０２、外部Ｉ／Ｆ５０３、ＲＡＭ５０４、ＲＯＭ５０５、ＣＰＵ５０６、通信Ｉ／Ｆ５０７、及びＨＤＤ５０８などを備え、それぞれがバスＢで相互に接続されている。なお、入力装置５０１及び表示装置５０２は必要なときに接続して利用する形態であってもよい。
【００１３】
入力装置５０１はキーボードやマウスなどを含み、ユーザが各操作信号を入力するのに用いられる。表示装置５０２はディスプレイなどを含み、コンピュータ５００による処理結果を表示する。通信Ｉ／Ｆ５０７はコンピュータ５００をネットワーク１３０に接続するインタフェースである。これにより、コンピュータ５００は通信Ｉ／Ｆ５０７を介してデータ通信を行うことができる。
【００１４】
ＨＤＤ５０８はプログラムやデータを格納している不揮発性の記憶装置である。格納されるプログラムやデータにはコンピュータ５００全体を制御する基本ソフトウェアであるＯＳや、ＯＳ上において各種機能を提供するアプリケーションソフトウェア等がある。
【００１５】
外部Ｉ／Ｆ５０３は、外部装置とのインタフェースである。外部装置には、記録媒体５０３ａなどがある。これにより、コンピュータ５００は外部Ｉ／Ｆ５０３を介して記録媒体５０３ａの読み取り及び／又は書き込みを行うことができる。記録媒体５０３ａにはフレキシブルディスク、ＣＤ、ＤＶＤ、ＳＤメモリカード、ＵＳＢメモリなどがある。
【００１６】
ＲＯＭ５０５は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリ（記憶装置）である。ＲＯＭ５０５には、コンピュータ５００の起動時に実行されるＢＩＯＳ（Basic Input/Output System）、ＯＳ設定、及びネットワーク設定などのプログラムやデータが格納されている。ＲＡＭ５０４は、プログラムやデータを一時保持する揮発性の半導体メモリ（記憶装置）である。
【００１７】
ＣＰＵ５０６は、ＲＯＭ５０５やＨＤＤ５０８などの記憶装置からプログラムやデータをＲＡＭ５０４上に読み出し、処理を実行することで、コンピュータ５００全体の制御や機能を実現する演算装置である。
【００１８】
本実施形態に係る情報処理装置１００は上記のコンピュータ５００のハードウェア構成により後述するような各種処理を実現できる。
【００１９】
図１の画像形成装置１２０は、例えば図３に示すようなハードウェア構成により実現される。図３は、本実施形態に係る画像形成装置の一例のハードウェア構成図である。図３に示した画像形成装置１２０は、コントローラ６０１、操作パネル６０２、外部Ｉ／Ｆ６０３、通信Ｉ／Ｆ６０４、プリンタ６０５及びスキャナ６０６などを備える。
【００２０】
コントローラ６０１はＣＰＵ６１１、ＲＡＭ６１２、ＲＯＭ６１３、ＮＶＲＡＭ６１４及びＨＤＤ６１５などを備える。ＲＯＭ６１３は、各種プログラムやデータが格納されている。ＲＡＭ６１２はプログラムやデータを一時保持する。ＮＶＲＡＭ６１４は、例えば設定情報等が格納されている。また、ＨＤＤ６１５は各種プログラムやデータが格納されている。
【００２１】
ＣＰＵ６１１は、ＲＯＭ６１３やＮＶＲＡＭ６１４、ＨＤＤ６１５などからプログラムやデータ、設定情報等をＲＡＭ６１２上に読み出し、処理を実行することで、画像形成装置１２０全体の制御や機能を実現する。
【００２２】
操作パネル６０２はユーザからの入力を受け付ける入力部と、表示を行う表示部とを備えている。外部Ｉ／Ｆ６０３は外部装置とのインタフェースである。外部装置には、記録媒体６０３ａなどがある。これにより、画像形成装置１２０は外部Ｉ／Ｆ６０３を介して記録媒体６０３ａの読み取り及び／又は書き込みを行うことができる。記録媒体６０３ａにはＩＣカード、フレキシブルディスク、ＣＤ、ＤＶＤ、ＳＤメモリカード、ＵＳＢメモリ等がある。
【００２３】
また、通信Ｉ／Ｆ６０４は画像形成装置１２０をネットワーク１３０に接続するインタフェースである。これにより、画像形成装置１２０は通信Ｉ／Ｆ６０４を介してデータ通信を行うことができる。
【００２４】
プリンタ６０５は印刷データを被搬送物に印刷するための印刷装置である。例えば被搬送物は紙、コート紙、厚紙、ＯＨＰ、プラスチックフィルム、プリプレグ、銅箔など、紙に限定されない。スキャナ６０６は原稿から画像データ（電子データ）を読み取り、画像ファイル（電子ファイル）を生成するための読取装置である。本実施形態に係る画像形成装置１２０は上記ハードウェア構成により、後述するような各種処理を実現できる。
【００２５】
＜ソフトウェア構成＞
本実施形態に係る情報処理システム１は例えば図４に示すような機能ブロックにより実現される。図４は本実施形態に係る情報処理システムの一例の機能ブロック図である。
【００２６】
情報処理装置１００はウェブサーバ１０１、ネットワークＩ／Ｆ１０４を有する構成である。ウェブサーバ１０１は、ウェブアプリケーション１０２を画像形成装置１２０に提供する。ウェブアプリケーション１０２はＵＩテンプレート情報を含む画面表示情報１０３を保持している。ネットワークＩ／Ｆ１０４はネットワーク１３０を介した画像形成装置１２０との通信を実現する。なお、ＵＩテンプレート情報を含む画面表示情報１０３の詳細は後述する。
【００２７】
また、画像形成装置１２０はネットワークＩ／Ｆ１２１、ウェブサービス１２２、プリンタ１２３、スキャナ１２４、ＭＦＰ情報管理部１２５、イベント通知部１２６、操作部１２７、ウェブブラウザ１２８を有する構成である。ウェブブラウザ１２８はＨＴＭＬ解析部１３１、スクリプト記憶部１３２、スクリプト実行部１３３、テンプレート変換部１３４、表示制御部１３５、ＭＦＰ情報取得部１３６、入力部１３７、イベント受信部１３８を有する。
【００２８】
ネットワークＩ／Ｆ１２１はネットワーク１３０を介した情報処理装置１００との通信を実現する。ウェブブラウザ１２８のＨＴＭＬ解析部１３１は、ＨＴＬＭデータの解析を行う。スクリプト記憶部１３２はジョブ実行処理のスクリプトを記憶している。スクリプト実行部１３３はスクリプトを実行する。
【００２９】
テンプレート変換部１３４は、情報処理装置１００のウェブサーバ１０１から提供されたウェブアプリケーション１０２に含まれるＵＩテンプレート情報を画面表示情報に変換する。表示制御部１３５は操作部１２７の表示を制御する。ＭＦＰ情報取得部１３６は後述のＭＦＰ情報を取得する。入力部１３７は操作部１２７に対するユーザからの入力操作を受け付ける。イベント受信部１３８は、イベント通知部１２６から各種イベント通知を受信する。
【００３０】
ウェブサービス１２２はウェブブラウザ１２８が通常の通信方法であるＨＴＴＰプロトコルを用いてプリンタ１２３、スキャナ１２４、ＭＦＰ情報管理部１２５と通信するために設けられている。イベント通知部１２６は、ウェブサービス１２２を介してプリンタ１２３やスキャナ１２４からイベントを受信し、ウェブブラウザ１２８に対してイベント通知を送信する。なお、ウェブブラウザ１２８と、プリンタ１２３、スキャナ１２４又はＭＦＰ情報管理部１２５との通信はＨＴＴＰやＨＴＴＰＳに限定されるものでなく、他のプロトコルによる通信であってもよい。
【００３１】
＜処理の詳細＞
以下では、本実施形態に係る情報処理システム１の処理の詳細について説明する。
【００３２】
図５はウェブアプリケーションで画像形成装置の機能を利用する処理手順を表した一例のシーケンス図である。ステップＳ１においてユーザは画像形成装置１２０のウェブブラウザ１２８を起動する。ステップＳ２においてウェブブラウザ１２８のＭＦＰ情報取得部１３６は、ウェブサービス１２２を介して、ＭＦＰ情報管理部１２５からＭＦＰ情報を取得する。ステップＳ２で取得したＭＦＰ情報は、この後に起動される様々なウェブアプリケーション１０２で利用する。
【００３３】
なお、画像形成装置１２０の起動中に変更されないＭＦＰ情報はステップＳ２で一度だけ取得すればよい。画像形成装置１２０の起動中に動的に変更されるＭＦＰ情報は必要に応じて適宜取得する必要がある。画像形成装置１２０の起動中に変更されないＭＦＰ情報としては、例えばパンチ機能の有無などである。また、画像形成装置１２０の起動中に動的に変更されるＭＦＰ情報としては、例えばセットされている用紙の枚数や紙詰まりのような情報、実行中の読み取りジョブの情報、ジョブ実行履歴などである。
【００３４】
ステップＳ３に進み、ユーザは目的のウェブアプリケーション１０２のＵＲＬをウェブブラウザ１２８に入力する。ステップＳ４に進み、ウェブブラウザ１２８は入力されたＵＲＬのウェブアプリケーション１０２をウェブサーバ１０１にリクエストし、ＨＴＬＭで記述されたウェブアプリケーション１０２をレスポンスとして返される。
【００３５】
ステップＳ５〜Ｓ８はウェブブラウザ１２８がウェブアプリケーション１０２の画面を表示するための処理である。なお、ここではウェブサーバ１０１から返されたウェブアプリケーション１０２がスキャンアプリケーションである例を説明する。
【００３６】
ステップＳ５において、ウェブブラウザ１２８はウェブアプリケーション１０２を画面に表示する。ステップＳ６において、ウェブブラウザ１２８は読み取り条件の画面表示情報をＵＩテンプレート情報から作成して表示する。なお、ステップＳ６の処理の詳細については後述する。ステップＳ７において、ウェブブラウザ１２８はジョブ実行処理と紐付いた実行ボタンをＵＩテンプレート情報から作成して表示する。なお、ステップＳ７の処理の詳細については後述する。ステップＳ８において、ウェブブラウザ１２８はジョブの状態を表示するダイアログをＵＩテンプレート情報から作成する。ただし、作成したダイアログは、ここでは表示しない。なお、ステップＳ８の処理の詳細については後述する。
【００３７】
ステップＳ９において、ユーザは表示されたウェブアプリケーション１０２の画面に読み取り条件を設定する。また、ステップＳ１０において、ユーザは表示されたウェブアプリケーション１０２の画面から読み取り開始を指示する。ステップＳ１１においてウェブブラウザ１２８は、ウェブサービス１２２を介してスキャナ１２４に読み取り開始を指示する。ステップＳ１２において、ウェブサービス１２２はイベント通知部１２６を介してウェブブラウザ１２８にジョブの状態を通知する。ステップＳ１３において、ウェブブラウザ１２８は通知されたジョブの状態に応じたダイアログを表示する。なお、ステップＳ１３で表示するダイアログはステップＳ８で作成しておいたものである。
【００３８】
ステップＳ１４において、ユーザはダイアログを通じて読み取り終了をウェブブラウザ１２８に指示する。ステップＳ１５においてウェブブラウザ１２８は、ウェブサービス１２２を介してスキャナ１２４に読み取り終了を指示する。なお、ユーザはキャンセルや次の用紙の読み取りを継続するなどの指示もダイアログを通じてウェブブラウザ１２８に指示できる。キャンセルや次の用紙の読み取りを継続するなどの指示も、ウェブサービス１２２を介してスキャナ１２４に指示される。
【００３９】
ステップＳ１６はユーザが別のウェブアプリケーション１０２のＵＲＬをウェブブラウザ１２８に入力した例を示している。ステップＳ１７に進み、ウェブブラウザ１２８は入力されたＵＲＬのウェブアプリケーション１０２を、ステップＳ４と同一又は別のウェブサーバ１０１にリクエストし、ＨＴＬＭで記述されたウェブアプリケーション１０２をレスポンスとして返される。そして、ウェブブラウザ１２８はステップＳ５〜Ｓ８と同様にウェブアプリケーション１０２の画面を表示する。
【００４０】
ステップＳ２においてウェブブラウザ１２８のＭＦＰ情報取得部１３６はＭＦＰ情報の一例として例えば図６に示すようなスキャンジョブ設定情報を取得する。図６はスキャンジョブ設定情報の一例の構成図である。図６のスキャンジョブ設定情報は、画像形成装置１２０においてスキャンジョブに設定できる機能と、その機能で利用できる値とがリストで表されたものである。つまり、ステップＳ２で取得するＭＦＰ情報は、画像形成装置１２０においてジョブに設定できる機能と、その機能で利用できる値とが対応付けられた情報である。
【００４１】
図６のスキャンジョブ設定情報では「読み取りカラーモード」と「読み取り原稿面」とがジョブに設定できる機能として記載されている。また、図６のスキャンジョブ設定情報では「読み取りカラーモード」機能で利用できる値として「白黒」と「カラー」と「自動カラー」とが記載されている。図６のスキャンジョブ設定情報は一例であって、その他にも様々な機能や値が記載されている。また、図６のスキャンジョブ設定情報は画像形成装置１２０の機種によって異なってもよい。
【００４２】
なお、図６のスキャンジョブ設定情報は、機能表示名及び値表示名が記載されている例を示したが、機能表示名及び値表示名が記載されていない構成も可能である。この場合はＭＦＰ情報管理部１２５がスキャンジョブ設定情報に機能及び値を記載しておく。ウェブブラウザ１２８のテンプレート変換部１３４は、機能と機能表示名との対応、及び、値と値表示名との対応を保持しておくことで、図６と同様なスキャンジョブ設定情報を生成できる。
【００４３】
ステップＳ４においてウェブブラウザ１２８は例えば図７に示すようなＨＴＭＬで記述されたウェブアプリケーション１０２をレスポンスとして返される。図７はステップＳ４で返されるレスポンスの一例の構成図である。図７においてＵＩテンプレート情報１０００は、ｓｃｒｉｐｔタグで表現されている。例えば図７のＵＩテンプレート情報１０００の「ｔｙｐｅ＝"ｔｅｘｔ／ｘ−ｒ−ｔｅｍｐｌａｔｅ"」は読み取り条件設定のＵＩテンプレートであることを示している。ＵＩテンプレート情報１０００の｛｛｝｝で囲まれた部分は後述する処理によって置き換えられる。
【００４４】
図７においてＵＩテンプレート情報１０００以外の部分は通常のＨＴＬＭで表現された画面表示情報１０３である。図７では記述していないが、ウェブアプリケーション１０２に動的な動作をさせるためにＪａｖａＳｃｒｉｐｔ（登録商標）などのスクリプトによる処理を含んでいてもよい。ただし、画像形成装置１２０の機能についてのスクリプトはウェブブラウザ１２８のスクリプト記憶部１３２に記憶されているため、レスポンスとして返されるウェブアプリケーション１０２に含めない。また、図７ではダイアログについての情報を省略しているが、読み取り条件設定のＵＩテンプレート情報１０００の後ろに追加される。
【００４５】
ウェブブラウザ１２８のテンプレート変換部１３４は、図６のスキャンジョブ設定情報と図７のＵＩテンプレート情報１０００とに基づき、図８に示す手順で図９の画面表示情報を生成する。図８はＵＩテンプレート情報に基づいて画面表示情報を生成する処理の手順を示した一例のフローチャートである。図９はＵＩテンプレート情報に基づいて生成された画面表示情報の一例の構成図である。図８ではＵＩテンプレート情報１０００をテンプレート部と呼称している。ウェブサーバ１０１からレスポンスとして返されるウェブアプリケーション１０２にはテンプレート部が複数含まれていてもよい。
【００４６】
ステップＳ２１において、ウェブブラウザ１２８のテンプレート変換部１３４は図７のウェブアプリケーション１０２に含まれる全てのテンプレート部を探し、それぞれのテンプレート部のｓｃｒｉｐｔタグ内の「ｄａｔａ−ｔｙｐｅ」属性を抽出する。ｓｃｒｉｐｔタグ内の「ｄａｔａ−ｔｙｐｅ」属性はＵＩテンプレートの種類を表している。例えば図７のテンプレート部では、ｓｃｒｉｐｔタグ内の「ｄａｔａ−ｔｙｐｅ」属性が「"ｓｃａｎｎｅｒ"」であるため、スキャナのＵＩテンプレートであることが分かる。テンプレート変換部１３４はＵＩテンプレートの種類に応じたＭＦＰ情報を利用してステップＳ２２以降の処理を行う。なお、図７のテンプレート部の場合、テンプレート変換部１３４は図６のスキャンジョブ設定情報を利用してステップＳ２２以降の処理を行う。
【００４７】
ステップＳ２２以降の処理はステップＳ２１で探した全てのテンプレート部について行われる。ここでは、図６のスキャンジョブ設定情報を利用して、図７のテンプレート部に対してステップＳ２２以降の処理を行う例を説明する。
【００４８】
ステップＳ２２において、テンプレート変換部１３４はテンプレート部の｛｛機能＋Ｎａｍｅ｝｝の文字列を図６のスキャンジョブ設定情報の機能表示名に置換する。具体的にテンプレート変換部１３４は、テンプレート部の｛｛ｓｃａｎＣｏｌｏｒＮａｍｅ｝｝の文字列を「読み取りカラーモード」に置換し、｛｛ｓｃａｎＳｉｄｅＮａｍｅ｝｝の文字列を「読み取り原稿面」に置換する。
【００４９】
また、ステップＳ２３において、テンプレート変換部１３４はテンプレート部の｛｛＃ｅａｃｈ  機能｝｝の文字列を探す。具体的にはテンプレート部の｛｛＃ｅａｃｈ  ｓｃａｎＣｏｌｏｒ｝｝の文字列と｛｛＃ｅａｃｈ  ｓｃａｎＳｉｄｅ｝｝の文字列とを探す。
【００５０】
なお、ステップＳ２４及びＳ２５の処理は、ステップＳ２３で探した全ての｛｛＃ｅａｃｈ  機能｝｝が表す機能の全ての値について行われる。ステップＳ２４において、テンプレート変換部１３４はテンプレート部の｛｛ｖａｌｕｅ｝｝を図６のスキャンジョブ設定情報の値に置換する。また、ステップＳ２５においてテンプレート変換部１３４はテンプレート部の｛｛ｎａｍｅ｝｝を図６のスキャンジョブ設定情報の値表示名に置換する。
【００５１】
図８のフローチャートは機能に対して値を列挙する場合に、全てをテンプレート部に記述するのではなく、｛｛＃ｅａｃｈ｝｝という記法を用いる例を示している。テンプレート部に｛｛＃ｅａｃｈ｝｝が存在する場合、テンプレート変換部１３４は｛｛＃ｅａｃｈ｝｝から｛｛／ｅａｃｈ｝｝までの文字列について、繰り返し処理を行う。
【００５２】
繰り返し処理が終了すると、テンプレート変換部１３４はｂｕｔｔｏｎタグのｉｄ属性が「ｒ−ｓｔａｒｔ−ｊｏｂ」のジョブ実行ボタンに対して、ジョブ実行読み出し処理を紐付ける。例えば図７のテンプレート部の場合、テンプレートの種類としてスキャナが指定されているため、ジョブ実行ボタンに対して紐付けられるジョブ実行読み出し処理はスキャン実行処理となる。
【００５３】
以上の処理により、テンプレート変換部１３４は図６のスキャンジョブ設定情報と図７のＵＩテンプレート情報１０００とに基づき、ウェブブラウザ１２８が解析して画面を表示することのできる図９の画面表示情報を生成できる。図９の画面表示情報に含まれている「ｏｎｃｌｉｃｋ＝"ｓｔａｒｔＳｃａｎ（）"」はボタンが押されたらスキャン実行処理を開始することを示している。なお、スキャン実行処理はウェブブラウザ１２８のスクリプト記憶部１３２に記憶されたスクリプトに記述されている。
【００５４】
図８に示したフローチャートの処理はウェブサーバ１０１からレスポンスとして返されたＨＴＭＬデータや、そのＨＴＭＬデータに含まれるスクリプト部から明示的に呼び出すものではない。図８のフローチャートの処理はウェブブラウザ１２８がウェブサーバ１０１からＨＴＭＬデータを取得して、通常のウェブブラウザと同様にスタイルシートやアプリケーションのためのスクリプト情報を取得し、自動的に実行される。
【００５５】
なお、ウェブブラウザ１２８はウェブサーバ１０１からレスポンスとして返されたＨＴＭＬデータに、ｔｙｐｅ属性が「"ｔｅｘｔ／ｘ−ｒ−ｔｅｍｐｌａｔｅ"」であるｓｃｒｉｐｔタグがなければ、通常のウェブブラウザと同様な表示を行う。
【００５６】
ウェブブラウザ１２８は図９の画面表示情報を解析して例えば図１０に示すような画面を表示する。図１０はウェブブラウザが表示する画面の一例のイメージ図である。図１０の画面１１００からユーザは読み取りカラーモードと読み取り原稿面とを選択して画像形成装置１２０にスキャナ１２４による読み取り開始を指示できる。なお、図１０の画面１１００に含まれる「スキャンアプリケーション」の部分は、ＵＩテンプレート情報１０００以外の部分にあるｔｉｔｌｅタグで定義されている。
【００５７】
このように、図７のウェブアプリケーション１０２は、ＵＩテンプレート情報１０００とアプリケーション固有の部分とを一つのＨＴＭＬデータで記述できる。本実施形態に係るウェブブラウザ１２８を利用することで、ウェブアプリケーション１０２の開発者はＵＩテンプレート情報１０００の記述により画像形成装置１２０の機能を利用可能なウェブアプリケーション１０２を実現できる。
【００５８】
ステップＳ４においてウェブサーバ１０１からレスポンスとして返されるウェブアプリケーション１０２は例えば図１１に示すような構成であってもよい。図１１はステップＳ４で返されるレスポンスの一例の構成図である。図１１においてＵＩテンプレート情報１２００はｓｃｒｉｐｔタグで表現されている。
【００５９】
図７では｛｛＃ｅａｃｈ｝｝という記法を用いる例を示したが、図１１に示すように機能と値とをドット記号「．」で繋いで記述してもよい。図１１に示すような記法を用いることにより、ＵＩテンプレート情報１２００は列挙する値と、その値の順序とを管理することができる。
【００６０】
図１１のＵＩテンプレート情報１２００の場合も、図８に示した手順とほぼ同様な手順で図１２の画面表示情報を生成する。図１２はＵＩテンプレート情報に基づいて生成された画面表示情報の他の例の構成図である。図１１のＵＩテンプレート情報１２００の場合は｛｛＃ｅａｃｈ｝｝という記法による繰り返し処理の代わりに、直接記載されている値及び値表示名を図６のスキャンジョブ設定情報の値及び値表示名に置換する。
【００６１】
テンプレート部の記法は図７に示したものや図１１に示したものなど、既存の様々な記法を利用できる。利用できる記法は、例えばＭＦＰ情報の参照が必要であり、さらに繰り返し処理と分岐処理とが記述できることが望ましい。
【００６２】
ウェブブラウザ１２８は図１２の画面表示情報を解析して例えば図１３に示すような画面を表示する。図１３はウェブブラウザが表示する画面の一例のイメージ図である。図１３の画面１３００からユーザは読み取りカラーモードと読み取り原稿面とを選択して画像形成装置１２０にスキャナ１２４による読み取り開始を指示できる。
【００６３】
図１０の画面１１００では読み取りカラーモードの値として図６のＭＦＰ情報で示された白黒、カラー、自動カラーの全てが表示されている。一方、図１３の画面１３００では読み取りカラーモードの値として、図１１のＵＩテンプレート情報１２００で指定された白黒、カラーが表示されている。また、図１３の画面１３００では読み取り原稿面の値の順番が、図６のＭＦＰ情報で示された順番でなく、図１１のＵＩテンプレート情報１２００で指定された両面左右開き、片面の順番に表示されている。
【００６４】
ステップＳ８においてウェブブラウザ１２８はウェブサーバ１０１からレスポンスとして返されたウェブアプリケーション１０２から図１４に示すようなＵＩテンプレート情報１４００を探す。なお、ＵＩテンプレート情報１４００はｓｃｒｉｐｔタグ内のｔｙｐｅ属性「"ｔｅｘｔ／ｘ−ｒ−ｔｅｍｐｌａｔｅ"」とｄａｔａ−ｔｙｐｅ属性「"ｓｃａｎｎｅｒ−ｊｏｂ−ｄｉａｌｏｇ"」とにより、読み取りジョブ状態を示すダイアログのＵＩテンプレートと判断される。図１４のＵＩテンプレート情報１４００は例えば図７のＵＩテンプレート情報１０００に続けて記述される。
【００６５】
ウェブブラウザ１２８はＭＦＰ情報管理部１２５から例えば図１５に示すジョブの状態情報を取得する。図１５はジョブの状態情報の一例の構成図である。図１５のジョブの状態情報は読み取り中のときの例を示している。読み取り中の場合、ジョブ状態の理由には特別な理由が無いことを示すｎｕｌｌが記載されている。
【００６６】
ジョブ状態メッセージには画面に表示されるテキストが記載されている。キャンセル可能、完了可能及び継続可能は、読み取り中の場合にユーザからキャンセル、完了又は継続の指示を受け付ける（ＴＲＵＥ）か否（ＦＡＬＳＥ）かを表している。図１５の例は読み取り中の場合にユーザからキャンセルの指示を受け付けることができ、完了及び継続の指示を受け付けることができないことを示している。なお、ジョブ状態メッセージは必ずしもＭＦＰ情報管理部１２５から取得しなくてもよい。例えばテンプレート変換部１３４はジョブ状態、ジョブ状態の理由及びジョブ状態メッセージの対応表を管理することで図１５のジョブの状態情報を生成できる。
【００６７】
ウェブブラウザ１２８のテンプレート変換部１３４は、図１４のＵＩテンプレート情報１４００と図１５のジョブの状態情報とに基づき、図１６に示す手順で図１７の画面表示情報を生成する。図１６はＵＩテンプレート情報に基づいてダイアログの画面表示情報を生成する処理の手順を示した一例のフローチャートである。図１７はＵＩテンプレート情報に基づいて生成されたダイアログの画面表示情報の一例の構成図である。図１６ではＵＩテンプレート情報１４００をテンプレート部と呼称している。
【００６８】
ステップＳ３１において、ウェブブラウザ１２８のテンプレート変換部１３４はレスポンスとして返されたウェブアプリケーション１０２に含まれている全てのテンプレート部を探す。そして、テンプレート変換部１３４は、それぞれのテンプレート部のｓｃｒｉｐｔタグ内の「ｄａｔａ−ｔｙｐｅ」属性を抽出し、読み取りジョブ状態を示すダイアログのＵＩテンプレート情報１４００を見付ける。
【００６９】
例えば図１４のテンプレート部は、ｓｃｒｉｐｔタグ内の「ｄａｔａ−ｔｙｐｅ」属性が「"ｓｃａｎｎｅｒ−ｊｏｂ−ｄｉａｌｏｇ"」であるため、読み取りジョブ状態を示すダイアログのＵＩテンプレートであることが分かる。テンプレート変換部１３４は読み取りジョブ状態を示すダイアログのＵＩテンプレートが複数見つかった場合、最初の一つ目を用いる。
【００７０】
テンプレート変換部１３４は、ステップＳ３１で探した読み取りジョブ状態を示すダイアログのＵＩテンプレート情報１４００に対し、図１５のジョブの状態情報を利用してステップＳ３２以降の処理を行う。ステップＳ３２において、テンプレート変換部１３４はテンプレート部の｛｛ｊｏｂ．ｓｔａｔｕｓ．ｍｅｓｓａｇｅ｝｝の文字列を図１５に示したジョブの状態情報のジョブ状態メッセージ「読み取り中です」に置換する。
【００７１】
次に、ステップＳ３３において、テンプレート変換部１３４は図１５に示したジョブの状態情報にキャンセルの指示を受け付ける（ＴＲＵＥ）が設定されていれば、ステップＳ３４の処理を行う。ステップＳ３４において、テンプレート変換部１３４はｂｕｔｔｏｎタグの「ｄａｔａ−ｔｙｐｅ」が「"ｃａｎｃｅｌ"」であるキャンセルボタンの表示と、そのボタンへのキャンセル処理の紐付けとを行うダイアログの画面表示情報を作成する。
【００７２】
なお、テンプレート変換部１３４は図１５に示したジョブの状態情報にキャンセルの指示を受け付けない（ＦＡＬＳＥ）が設定されていればステップＳ３５に進む。ステップＳ３５においてテンプレート変換部１３４はキャンセルボタンが非表示となるようにダイアログの画面表示情報を作成する。なお、テンプレート変換部１３４はキャンセルボタンが押下できないようにダイアログの画面表示情報を作成してもよい。
【００７３】
次に、ステップＳ３６において、テンプレート変換部１３４は図１５に示したジョブの状態情報に完了の指示を受け付ける（ＴＲＵＥ）が設定されていれば、ステップＳ３７の処理を行う。ステップＳ３７において、テンプレート変換部１３４はｂｕｔｔｏｎタグの「ｄａｔａ−ｔｙｐｅ」が「"ｆｉｎｉｓｈ"」である完了ボタンの表示と、そのボタンへの完了処理の紐付けとを行うダイアログの画面表示情報を作成する。
【００７４】
なお、テンプレート変換部１３４は図１５に示したジョブの状態情報に完了の指示を受け付けない（ＦＡＬＳＥ）が設定されていればステップＳ３８に進む。ステップＳ３８においてテンプレート変換部１３４は完了ボタンが非表示となるようにダイアログの画面表示情報を作成する。なお、テンプレート変換部１３４は完了ボタンが押下できないようにダイアログの画面表示情報を作成してもよい。
【００７５】
次に、ステップＳ３９において、テンプレート変換部１３４は図１５に示したジョブの状態情報に継続の指示を受け付ける（ＴＲＵＥ）が設定されていれば、ステップＳ４０の処理を行う。ステップＳ４０において、テンプレート変換部１３４はｂｕｔｔｏｎタグの「ｄａｔａ−ｔｙｐｅ」が「"ｃｏｎｔｉｎｕｅ"」である継続ボタンの表示と、そのボタンへの継続処理の紐付けとを行うダイアログの画面表示情報を作成する。
【００７６】
なお、テンプレート変換部１３４は図１５に示したジョブの状態情報に継続の指示を受け付けない（ＦＡＬＳＥ）が設定されていればステップＳ４１に進む。ステップＳ４１においてテンプレート変換部１３４は継続ボタンが非表示となるようにダイアログの画面表示情報を作成する。なお、テンプレート変換部１３４は継続ボタンが押下できないようにダイアログの画面表示情報を作成してもよい。
【００７７】
ここまでの処理により、テンプレート変換部１３４は図１７に示す読み取り中におけるダイアログの画面表示情報を作成できる。ウェブブラウザ１２８はイベント通知部１２６からジョブの状態として「読み取り中」が通知されると、図１７の画面表示情報を解析して例えば図１８に示すような画面を表示する。図１８はジョブの状態が「読み取り中」であるときに表示される画面の一例のイメージ図である。
【００７８】
図１８の画面１５００は、ジョブの状態を示すジョブ状態メッセージと、ユーザが指示を行うためのボタンの一例であるキャンセルボタンと、が含まれる。なお、図１８の画面１５００はジョブの状態が「読み取り中」であるときに表示され、それ以外のジョブの状態であるときに表示されない。画面１５００は例えばｖｉｓｉｂｌｉｔｙ属性に「"ｈｉｄｄｅｎ"」の値を設定することで非表示となる。
【００７９】
また、ウェブブラウザ１２８はＭＦＰ情報管理部１２５から例えば図１９に示すようなジョブの状態情報を取得する場合もある。図１９はジョブの状態情報の他の例の構成図である。図１９のジョブの状態情報は原稿待ち状態のときの例を示している。原稿待ち状態の場合、ジョブ状態の理由には停止の理由が記載されている。
【００８０】
ジョブ状態メッセージには画面に表示されるテキストが記載されている。キャンセル可能、完了可能及び継続可能は、原稿待ち状態の場合にユーザからキャンセル、完了又は継続の指示を受け付ける（ＴＲＵＥ）か否（ＦＡＬＳＥ）かを表している。図１９の例は原稿待ち状態の場合にユーザからキャンセル、完了及び継続の指示を受け付けることができることを示している。
【００８１】
ウェブブラウザ１２８のテンプレート変換部１３４は、図１４のＵＩテンプレート情報１４００と図１９のジョブの状態情報とに基づき、図１６に示す手順で図２０の画面表示情報を生成する。図２０はＵＩテンプレート情報に基づいて生成されたダイアログの画面表示情報の他の例の構成図である。
【００８２】
図１６の処理により、テンプレート変換部１３４は図２１に示す原稿待ち状態におけるダイアログの画面表示情報を作成できる。ウェブブラウザ１２８はイベント通知部１２６からジョブの状態として「原稿待ち状態」が通知されると、図２０の画面表示情報を解析して例えば図２１に示す画面を表示する。図２１はジョブの状態が「原稿待ち状態」であるときに表示される画面の一例のイメージ図である。
【００８３】
図２１の画面１６００は、ジョブの状態を示すジョブ状態メッセージと、ユーザが指示を行うためのボタンの一例であるキャンセルボタン、完了ボタン及び継続ボタンとが含まれる。なお、図２１の画面１６００はジョブの状態が「原稿待ち状態」であるときに表示され、それ以外のジョブの状態であるときに表示されない。
【００８４】
（まとめ）
以上、本実施形態によれば、ウェブアプリケーション１０２の画面をＵＩテンプレート情報により自由に記述することができ、かつ、ウェブアプリケーション１０２から画像形成装置１２０の機能を容易に利用できる。また、本実施形態によれば画像形成装置１２０の機能を利用するためのジョブ実行処理のスクリプトを、ウェブブラウザ１２８に埋め込んでおくため、ウェブサーバ１０１から返されるウェブアプリケーション１０２のデータサイズを小さくできる。このため、本実施形態によれば、ウェブサーバ１０１からウェブブラウザ１２８へのウェブアプリケーション１０２のダウンロード時間を減らすことができる。
［第２の実施形態］
第１の実施形態ではＵＩテンプレート情報がウェブアプリケーション１０２に含まれていた。第２の実施形態はＵＩテンプレート情報をウェブブラウザ１２８に含めるようにしている。なお、第２の実施形態は一部を除いて第１の実施形態と同様であるため、適宜説明を省略する。
【００８５】
図２２は本実施形態に係る情報処理システムの他の例の機能ブロック図である。図２２の情報処理システム１はＵＩテンプレート情報がウェブブラウザ１２８のテンプレート記憶部１３９に記憶されている点が図４の情報処理システム１と異なっている。また、テンプレート記憶部１３９は図２３に示すようにテンプレート種別ごとにＵＩテンプレート情報を記憶する。なお、テンプレート記憶部１３９は、図２３に示すように同一のＵＩテンプレートの種類（例えばｓｃａｎｎｅｒとｓｃａｎｎｅｒ−ｄｅｔａｉｌ）のＵＩテンプレート情報を複数記憶していてもよい。なお、ｓｃａｎｎｅｒは少ない種類の読み取り条件を設定できるＵＩテンプレート情報である。ｓｃａｎｎｅｒ−ｄｅｔａｉｌは多くの種類の読み取り条件を設定できるＵＩテンプレート情報である。
【００８６】
第２の実施形態ではウェブサーバ１０１から例えば図２４に示すようなＨＴＭＬで記述されたウェブアプリケーション１０２がレスポンスとして返される。図２４はステップＳ４で返されるレスポンスの他の例の構成図である。図２４のレスポンスには、図２３に示したテンプレート種別を示す文字列２０００、２００１が含まれる。
【００８７】
文字列２０００、２００１では、ｓｃｒｉｐｔタグ内の「ｄａｔａ−ｔｙｐｅ」属性により、スキャナのＵＩテンプレート情報と読み取りジョブ状態を示すダイアログのＵＩテンプレート情報とを指定している。テンプレート変換部１３４は図２５のフローチャートの手順で文字列２０００、２００１により指定されていたＵＩテンプレート情報を、文字列２０００、２００１の位置に置き換えることで、画面表示情報を作成できる。
【００８８】
図２５はＵＩテンプレート情報に基づいて画面表示情報を生成する処理の手順を示した他の例のフローチャートである。図２５のフローチャートは図８に示したフローチャートにステップＳ５２、Ｓ５７の処理を追加したものである。ステップＳ５２では図２４に示したテンプレート部の「ｄａｔａ−ｔｙｐｅ」属性に対応するＵＩテンプレート情報をテンプレート記憶部１３９から取得する。
【００８９】
ステップＳ５３〜Ｓ５６ではステップＳ５２で取得したＵＩテンプレート情報に対して図８のステップＳ２２〜Ｓ２５と同様な処理を行う。そして、テンプレート変換部１３４はステップＳ５２〜５６の処理を行ったＵＩテンプレート情報を、ステップＳ５７において図２４の文字列２０００、２００１の位置に置き換える。ステップＳ５８は図８に示したステップＳ２６と同様である。
【００９０】
以上、テンプレート変換部１３４は、図６のスキャンジョブ設定情報と図２４のウェブアプリケーション１０２とテンプレート記憶部１３９のＵＩテンプレート情報とに基づきウェブブラウザ１２８が解析して画面を表示可能な画面表示情報を生成できる。
【００９１】
（まとめ）
以上、本実施形態によれば、予め準備されているＵＩテンプレート情報をウェブアプリケーション１０２に指定しておくことにより、ウェブアプリケーション１０２の画面表示情報を簡単に作成できる。また、予め準備されているＵＩテンプレート情報をウェブアプリケーション１０２に指定しておくことで、ウェブアプリケーション１０２から画像形成装置１２０の機能を容易に利用できる。
【００９２】
また、本実施形態によれば、画像形成装置１２０の機能を利用するためのジョブ実行処理のスクリプトと、ＵＩテンプレート情報とを、ウェブブラウザ１２８に埋め込んでおくことができる。このため、本実施形態によれば、ウェブサーバ１０１から返されるウェブアプリケーション１０２のデータサイズを第１の実施形態よりも小さくできる。本実施形態によれば、ウェブサーバ１０１からウェブブラウザ１２８へのウェブアプリケーション１０２のダウンロード時間を第１の実施形態よりも減らすことができる。
【００９３】
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【００９４】
ウェブアプリケーション１０２は特許請求の範囲に記載した提供手段の一例である。スクリプト記憶部１３２はプログラム記憶部の一例である。テンプレート変換部１３４は変換手段の一例である。ＭＦＰ情報は電子機器の機能に関する情報の一例である。スクリプトはウェブアプリケーションが実行可能な処理を記述したプログラムの一例である。
【符号の説明】
【００９５】
１      情報処理システム
１００    情報処理装置
１０１    ウェブサーバ
１０２    ウェブアプリケーション
１０３    画面表示情報
１０４    ネットワークＩ／Ｆ
１２０    画像形成装置
１２１    ネットワークＩ／Ｆ
１２２    ウェブサービス
１２３    プリンタ
１２４    スキャナ
１２５    ＭＦＰ情報管理部
１２６    イベント通知部
１２７    操作部
１２８    ウェブブラウザ
１３０    ネットワーク
１３１    ＨＴＭＬ解析部
１３２    スクリプト記憶部
１３３    スクリプト実行部
１３４    テンプレート変換部
１３５    表示制御部
１３６    ＭＦＰ情報取得部
１３７    入力部
１３８    イベント受信部
１３９    テンプレート記憶部
５００    コンピュータ
５０１    入力装置
５０２    表示装置
５０３    外部Ｉ／Ｆ
５０３ａ    記録媒体
５０４    ＲＡＭ
５０５    ＲＯＭ
５０６    ＣＰＵ
５０７    通信Ｉ／Ｆ
５０８    ＨＤＤ
６０１    コントローラ
６０２    操作パネル
６０３    外部Ｉ／Ｆ
６０３ａ    記録媒体
６０４    通信Ｉ／Ｆ
６０５    プリンタ
６０６    スキャナ
６１１    ＣＰＵ
６１２    ＲＡＭ
６１３    ＲＯＭ
６１４    ＮＶＲＡＭ
６１５    ＨＤＤ
１０００、１４００    ＵＩテンプレート情報
１１００、１３００、１５００、１６００    画面
１２００    ＵＩテンプレート情報
２０００、２００１    テンプレート種別を示す文字列
Ｂ    バス
【先行技術文献】
【特許文献】
【００９６】
【特許文献１】特開２００６−３５２８４５号公報
【図１】
0006740632.tif 000002
【図２】
0006740632.tif 000003
【図３】
0006740632.tif 000004
【図４】
0006740632.tif 000005
【図５】
0006740632.tif 000006
【図６】
0006740632.tif 000007
【図７】
0006740632.tif 000008
【図８】
0006740632.tif 000009
【図９】
0006740632.tif 000010
【図１０】
0006740632.tif 000011
【図１１】
0006740632.tif 000012
【図１２】
0006740632.tif 000013
【図１３】
0006740632.tif 000014
【図１４】
0006740632.tif 000015
【図１５】
0006740632.tif 000016
【図１６】
0006740632.tif 000017
【図１７】
0006740632.tif 000018
【図１８】
0006740632.tif 000019
【図１９】
0006740632.tif 000020
【図２０】
0006740632.tif 000021
【図２１】
0006740632.tif 000022
【図２２】
0006740632.tif 000023
【図２３】
0006740632.tif 000024
【図２４】
0006740632.tif 000025
【図２５】
0006740632.tif 000026