説明

画像形成装置および画像形成システム

【課題】 画像形成装置のユーザインタフェース画面を簡単にカスタマイズ可能とする。
【解決手段】 複合機1は、ユーザインタフェース画面を表示する表示装置11aと、ユーザインタフェース画面内の構成部品の属性をテキストで記述したユーザインタフェースデータ15cを格納するデータ格納装置15と、ユーザインタフェースデータ15cを構文解析して構成部品の属性を特定し、構成部品の属性を反映させたユーザインタフェース画面を表示装置11aに表示させるUIデータ解析部22cとを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像形成装置および画像形成システムに関するものである。
【背景技術】
【0002】
複合機などの画像形成装置には操作パネルが設置されており、操作パネルは表示装置および入力装置を含む。この表示装置には、ユーザインタフェース画面が表示される。ユーザインタフェース画面は、主にボタンなどの構成部品を有する(例えば、特許文献1参照)。
【0003】
このようなユーザインタフェース画面は、プログラム制御により表示される。ユーザインタフェース画面を表示するためのプログラムは、通常、画像形成装置自体に含まれるAPI(Application Program Interface)を使用してC言語やJAVAなどといったプログラミング言語により記述されたソースファイルをコンパイルして生成される。そして、実行形式のプログラムとして画像形成装置内に予め格納されている。
【特許文献1】特開2006−92302号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
上述のように、ユーザインタフェース画面を表示するプログラムは、プログラミング言語で記述されたソースファイルをコンパイルして生成される。したがって、ユーザインタフェース画面をカスタマイズする場合、そのプログラミング言語から実行形式のプログラムを生成する開発環境が必要になるとともに、プログラマ以外の者がソースファイルを変更することが困難である。
【0005】
本発明は、上記の問題に鑑みてなされたものであり、画像形成装置のユーザインタフェース画面を簡単にカスタマイズすることができる画像形成装置および画像形成システムを得ることを目的とする。
【課題を解決するための手段】
【0006】
上記の課題を解決するために、本発明では以下のようにした。
【0007】
本発明に係る画像形成装置は、ユーザインタフェース画面を表示する表示装置と、ユーザインタフェース画面内の構成部品の属性をテキストで記述したユーザインタフェースデータを格納するデータ格納装置と、ユーザインタフェースデータを構文解析して構成部品の属性を特定し、構成部品の属性を反映させたユーザインタフェース画面を表示装置に表示させるUIデータ解析部とを備える。
【0008】
これにより、テキスト形式のユーザインタフェースデータを編集することでユーザインタフェースをカスタマイズすることができる。したがって、画像形成装置のユーザインタフェース画面を簡単にカスタマイズすることができる。
【0009】
また、本発明に係る画像形成装置は、上記の画像形成装置に加え、次のようにしてもよい。この場合、画像形成装置は、ユーザインタフェースデータについて編集サービスのインタフェース部分の構文定義とそのサービスに使用するメッセージのプロトコルの指定とを含むサービス定義データに従ってメッセージの構文解析を行うメッセージ処理部と、メッセージ処理部の構文解析の結果によりメッセージから得られる要求に従って編集サービスを実行する制御部とを備える。
【0010】
これにより、画像形成装置が、サービスの1つとして、ユーザインタフェースデータの編集を行うので、外部からのメッセージによって、画像形成装置を直接操作することなく、ユーザインタフェースデータを編集することができる。したがって、画像形成装置のユーザインタフェース画面を簡単にカスタマイズすることができる。
【0011】
また、本発明に係る画像形成装置は、上記の画像形成装置のいずれかに加え、次のようにしてもよい。この場合、画像形成装置は、コンピュータネットワークを介して所定の通信プロトコルでメッセージを受信する受信手段を備える。メッセージ処理部は、受信手段により受信されたメッセージの構文解析を行う。
【0012】
また、本発明に係る画像形成装置は、上記の画像形成装置のいずれかに加え、次のようにしてもよい。この場合、サービス定義データにおいて指定されているプロトコルは、SOAPであり、受信手段は、HTTPでメッセージを受信する。
【0013】
また、本発明に係る画像形成装置は、上記の画像形成装置のいずれかに加え、次のようにしてもよい。この場合、サービス定義データは、WSDLで記述されたXMLデータである。
【0014】
また、本発明に係る画像形成装置は、上記の画像形成装置のいずれかに加え、次のようにしてもよい。この場合、サービス定義データは、スキーマデータを含み、スキーマデータは、メッセージの構文定義を含み、メッセージ処理部は、サービス定義データおよびスキーマデータに従ってメッセージの構文解析を行う。
【0015】
また、本発明に係る画像形成装置は、上記の画像形成装置のいずれかに加え、次のようにしてもよい。この場合、ユーザインタフェースデータおよびメッセージは、XMLで記述されており、制御部は、メッセージ処理部で抽出された構成部品の属性のXMLテキストでユーザインタフェースデータを更新する。
【0016】
これにより、メッセージからユーザインタフェースデータへの変換が不要となる。
【0017】
本発明に係る画像形成システムは、コンピュータネットワークに接続された画像形成装置と、そのコンピュータネットワークに接続された端末装置とを備える。画像形成装置は、ユーザインタフェース画面を表示する表示装置と、ユーザインタフェース画面内の構成部品の属性をテキストで記述したユーザインタフェースデータを格納するデータ格納装置と、ユーザインタフェースデータを構文解析して構成部品の属性を特定し、構成部品の属性を反映させたユーザインタフェース画面を表示装置に表示させるUIデータ解析部と、コンピュータネットワークを介して所定の通信プロトコルでメッセージを受信する受信手段と、ユーザインタフェースデータについて編集サービスのインタフェース部分の構文定義とそのサービスに使用するメッセージのプロトコルの指定とを含むサービス定義データに従ってメッセージの構文解析を行うメッセージ処理部と、メッセージ処理部の構文解析の結果によりメッセージから得られる要求に従って編集サービスを実行する制御部とを有する。端末装置は、コンピュータネットワークを介して所定の通信プロトコルでメッセージを送信する送信手段を有する。
【0018】
これにより、テキスト形式のユーザインタフェースデータを編集することでユーザインタフェースをカスタマイズすることができる。また、画像形成装置が、サービスの1つとして、ユーザインタフェースデータの編集を行うので、外部からのメッセージによって、画像形成装置を直接操作することなく、ユーザインタフェースデータを編集することができる。したがって、画像形成装置のユーザインタフェース画面を簡単にカスタマイズすることができる。
【0019】
また、本発明に係る画像形成システムは、上記の画像形成システムに加え、次のようにしてもよい。この場合、データ格納装置は、メッセージの構文定義を含むスキーマデータを格納する。端末装置は、スキーマデータの一部または全部を画像形成装置から取得して構成部品の属性の1または複数の項目を特定するスキーマデータ取得部を備える。送信手段は、スキーマデータ取得部により特定された1または複数の項目の一部または全部に値を設定するメッセージを送信する。
【0020】
これにより、端末装置に予め構成部品の属性項目を保持しておかなくても、カスタマイズを実行することができる。
【0021】
また、本発明に係る画像形成システムは、上記の画像形成システムのいずれかに加え、次のようにしてもよい。この場合、データ格納装置は、メッセージの構文定義を含むスキーマデータを格納する。端末装置は、スキーマデータの一部または全部を画像形成装置から取得して構成部品の属性に対する1または複数の許容値を特定するスキーマデータ取得部を備える。送信手段は、スキーマデータ取得部により特定された1または複数の許容値から選択された値をその構成部品の属性に設定するメッセージを送信する。
【0022】
これにより、端末装置に予め構成部品の属性の許容値を保持しておかなくても、カスタマイズを実行することができる。
【0023】
また、本発明に係る画像形成システムは、上記の画像形成システムに加え、次のようにしてもよい。この場合、ユーザインタフェースデータおよびメッセージは、XMLで記述されており、スキーマデータは、XMLスキーマで記述されたXMLデータであり、制御部は、メッセージ処理部で抽出された構成部品の属性のXMLテキストでユーザインタフェースデータを更新する。
【0024】
これにより、端末装置に予めメッセージの構文定義を保持しておかなくても、カスタマイズを実行することができる。
【0025】
また、本発明に係る画像形成システムは、上記の画像形成システムに加え、次のようにしてもよい。この場合、データ格納装置は、ユーザインタフェース画面のデフォルトデータをそれぞれ含む複数のテンプレートファイルを格納する。送信手段は、複数のテンプレートファイルのうちの1つのテンプレートファイルを指定し、指定したテンプレートファイルのデフォルトデータを、ユーザインタフェースデータにおける1つのユーザインタフェース画面のデータとするメッセージを送信する。
【0026】
これにより、テンプレートを使用することで、複雑なカスタマイズを容易に実行することができる。
【発明の効果】
【0027】
本発明によれば、画像形成装置のユーザインタフェース画面を簡単にカスタマイズすることができる。
【発明を実施するための最良の形態】
【0028】
以下、図に基づいて本発明の実施の形態を説明する。
【0029】
図1は、本発明の実施の形態に係る画像形成装置としての複合機1を含む画像形成システムの構成を示すブロック図である。このシステムでは、複合機1は、コンピュータネットワーク2に接続され、コンピュータネットワーク2に接続された端末装置3また複合機1の操作パネル11を操作するユーザにより利用される。このため、ユーザ操作によりサービスの実行が要求されると、端末装置3と複合機1との間または複合機1内部で要求および応答のメッセージが送受される。
【0030】
図1において、複合機1は、操作パネル11、印刷装置12、画像読取装置13、ファクシミリ装置14、データ格納装置15、通信装置16およびコンピュータ17を有する。
【0031】
操作パネル11は、液晶ディスプレイなどの表示装置11aと、物理的なユーザ操作を電気的に検出する入力装置11bとを有するユーザインタフェース装置である。入力装置11bとしては、キースイッチ、表示装置の画面上に配置された透明なタッチパネルなどが使用される。
【0032】
印刷装置12は、画像読取装置13により生成された文書データ、図示せぬ文書ボックスに格納されている文書データ、端末装置3から受信された文書データなどに基づき文書画像を印刷する内部装置である。なお、文書データは、所定のフォーマットの画像データである。
【0033】
画像読取装置13は、自動原稿給紙装置により給紙されてきた原稿またはユーザにより載置された原稿の片面または両面に対して光を照射しその反射光等を受光して原稿の画像を読み取り文書データとして出力する内部装置である。
【0034】
ファクシミリ装置14は、モデムを有し、画像読取装置13により生成された文書データまたは文書ボックスに格納されている文書データからファクシミリ信号を生成し、電話回線などを介して送信するとともに、ファクシミリ信号を受信し、受信した信号から文書データを生成する内部装置である。
【0035】
データ格納装置15は、サービス定義データ15a、スキーマデータ15b、ユーザインタフェースデータ15c、テンプレートファイル15d、コンピュータ17で実行される図示せぬプログラム、文書データなどを格納する装置である。データ格納装置15には、ハードディスクドライブ、不揮発性メモリなどといった、読み書き可能な記録媒体を駆動する装置が使用される。
【0036】
サービス定義データ15aは、サービスの呼び出しおよびその戻り値などを規定するインタフェース部分の構文定義を含み、さらに、そのサービスに使用するメッセージのプロトコルの指定を含むテキストデータである。サービス定義データ15aは、例えばXML(eXtensible Markup Language)で記述される。さらに、サービス定義データ15aは、例えばWSDL(Web Services Description Language)で記述される。なお、サービス定義データ15aは、構文定義を含むデータであり、実際に送受されるメッセージではない。サービス定義データ15aは、1つのファイルとして格納されていてもよいし、複数のファイルとして格納されていてもよい。サービス定義データ15aは、構文定義の記述のためにスキーマ言語を使用する。この実施の形態では、サービス定義データ15aは、構文定義の記述のためにXMLスキーマを使用しており、サービス定義データ15a内で、XMLスキーマで構文定義が直接的に記述されるか、外部のスキーマデータ15bを読み込み間接的に使用するための参照が記述される。
【0037】
スキーマデータ15bは、サービス定義データ15a内で参照される外部のスキーマデータである。スキーマデータ15bは、所定の言語で記述されたテキストデータである。スキーマデータ15bは、1または複数のデータファイルとして格納されている。
【0038】
図2は、WSDLで記述されたサービス定義データ15aの一例を示す図である。また、図3は、サービス定義データで参照されるスキーマデータ15bの一例を示す図である。
【0039】
図2に示すサービス定義データ15aは、ユーザインタフェースデータ15cの編集サービスの構文定義を含む。編集サービスでは、ユーザインタフェースデータ15cにおけるユーザインタフェース画面の構成部品の変更、追加および削除を行うことができる。図2に示すサービス定義データ15aは、1つのWSDLのdefinitions要素からなる。definitions要素内にWSDLのtypes要素があり、types要素内で、include要素で、外部のスキーマデータ15bである例えば図3に示すような「panel.xsd」が参照されている。そして、そのdefinitions要素内で、WSDLのmessage要素およびportType要素において、サービスのインタフェース部分である、要求メッセージと応答メッセージの定義が記述されている。さらに、portType要素において、複合機1に要求可能な複数の動作が複数のoperation要素により記述されている。図2では、ユーザインタフェース画面にボタンを追加するためのoperation要素が記述されており、そのoperation要素において、要求メッセージとして「button_request」が定義されており、応答メッセージとして「button_response」が定義されている。また、ユーザインタフェース画面からボタンを削除するためのoperation要素、ユーザインタフェース画面におけるボタンの属性を更新するためのoperation要素などが記述されている。その他、ユーザインタフェース画面に含まれる他の構成部品(例えばリストボックス、テキストボックスなど)についての追加、削除および更新のためのoperation要素が含まれている。
【0040】
そして、そのdefinitions要素内で、WSDLのbinding要素において、そのサービスで使用されるメッセージのプロトコルが指定されている。図2に示すbinding要素では、メッセージに使用するプロトコルとしてSOAPが指定されている。
【0041】
また、図3に示すスキーマデータ15bには、要求のメッセージ(button_request)の構文定義および応答のメッセージの構文定義(図示せず)、およびメッセージ内で使用されるパラメータの許容値の定義(図示せず)が記述されている。メッセージの構文定義は、XMLスキーマ(xsd)のelement要素およびcomplexType要素として記述されている。また、パラメータの許容値の定義は、XMLスキーマ(xsd)のsimpleType要素として記述される。さらに、この実施の形態では、スキーマデータ15bには、ユーザインタフェースデータ15cにおけるユーザインタフェース画面の構成部品の属性を記述する際の構文定義が記述されている。メッセージ内でユーザインタフェース画面の構成部品の属性を記述する際にもこの構文定義が使用される。この構文定義には、構成部品が有する属性項目および/またはその属性項目に設定可能な値(許容値)が含まれる。
【0042】
このように、サービスごとにサービス定義データ15aが予め格納されている。また、必要に応じて、外部のスキーマデータ15bが予め格納されている。
【0043】
また、ユーザインタフェースデータ15cは、操作パネル11の表示装置11aで表示されるユーザインタフェース画面内の構成部品の属性をテキストで記述したものである。
複数のユーザインタフェース画面が使用される場合には、ユーザインタフェース画面ごとに、そのユーザインタフェース画面に含まれる構成部品の属性が記述される。ユーザインタフェースデータ15cは、XMLで記述されており、スキーマデータ15bに記述されている構文定義に従って記述されている。図4は、ユーザインタフェース画面の一例を示す図である。図4に示すユーザインタフェース画面には、構成部品として「設定」テキスト、「コピー」ボタン、「ファクシミリ」ボタンおよび「プリンタ」ボタンが含まれている。図5は、図4に示すユーザインタフェース画面を記述したユーザインタフェースデータ15cの一部である。図5に示すように、1つのユーザインタフェース画面が1つのscreen要素で記述され、screen要素の子要素として、ユーザインタフェース画面の名前を含むscreen_name要素、「設定」テキストの属性を含むscreen_title要素、並びに
「コピー」ボタン、「ファクシミリ」ボタンおよび「プリンタ」ボタンの属性を含む3つのbutton要素が記述されている。button要素は、子要素として、表示属性を含むevent_button要素と、ボタンが操作された際に行う動作を指定するprocedure_string要素とを有する。さらに、event_button要素は、ボタンの識別情報(ボタン名)を含むbutton_name要素と、ボタンの表示名を含むbutton_string要素と、上下方向におけるボタンの上端の座標値を含むbutton_top要素と、左右方向におけるボタンの左端の座標値を含むbutton_left要素と、ボタンの高さを含むbutton_hight要素と、ボタンの幅を含むbutton_width要素とを有する。
【0044】
また、テンプレートファイル15dは、ユーザインタフェース画面の構成部品がXMLで記述されたデフォルトデータである。テンプレートファイル15dも、スキーマデータ15bに記述されている構文定義に従って記述されている。1つのテンプレートファイル15dには、1つのユーザインタフェース画面に含まれる1または複数の構成部品のそれぞれについての属性がデフォルト値とともに記述されている。テンプレートファイル15d内のXMLテキストは、ユーザインタフェースデータ15cのカスタマイズのために、ユーザインタフェースデータ15cに利用可能である。図6〜図10は、テンプレートファイル15dに基づいて表示されるデフォルト画面の例である。図6は、ボタンおよびテキストを構成部品として有するボタン選択型画面の一種であり、図7は、リストを構成部品として有するリスト型画面の一種であり、図8は、数値入力フィールドを構成部品として有する数値入力型画面の一種であり、図9は、テキスト入力フィールドを構成部品として有するテキスト入力型画面の一種であり、図10は、数値増加ボタン、数値減少ボタンおよび数値フィールドを構成部品として有する固定数値入力型画面の一種である。
【0045】
通信装置16は、コンピュータネットワーク2に接続され、コンピュータネットワーク2に接続された他の装置(端末装置3など)と通信可能な装置である。通信装置16としては、ネットワークインタフェースカードなどが使用される。
【0046】
コンピュータ17は、図示せぬCPU(Central Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)などを備え、プログラムをRAMにロードし、CPUで実行することにより、各種処理部を実現する装置である。コンピュータ17は、図示せぬプログラムに基づいて、通信処理部21、XML処理部22、制御部23およびドライバ24を実現する。
【0047】
通信処理部21は、通信装置16を制御し、コンピュータネットワーク2を介してメッセージを所定の通信プロトコルで送受する処理部である。この実施の形態では、メッセージプロトコルとしてSOAP(Simple Object Access Protocol)が使用されるため、通信プロトコルとしてはTCP/IP(Transmission Control Protocol/Internet Protocol)およびHTTP(Hypertext Transfer Protocol)が使用される。
【0048】
XML処理部22は、WSDLで記述されたサービス定義データ15aを読み込み、メッセージ生成部22aおよびメッセージ解析部22bを実現する処理部である。メッセージ生成部22aは、サービス定義データ15aに記述されている構文定義に従って、サービスの結果を示す応答メッセージ、通知メッセージなどのメッセージを生成する。メッセージ解析部22bは、サービスの要求を示す要求メッセージなどのメッセージの構文解析を、サービス定義データ15aに記述されている構文定義に従って行い、メッセージに記述されている要求などを特定する。UIデータ解析部22cは、ユーザインタフェースデータ15cを構文解析して、各ユーザインタフェース画面の各構成部品の属性を特定し、構成部品の属性を反映させたユーザインタフェース画面を表示装置11aに表示させる処理部である。UIデータ解析部22cは、構文解析の結果に基づいてドライバ24にユーザインタフェース画面を表示させる。
【0049】
制御部23は、印刷装置12、画像読取装置13、ファクシミリ装置14などといった、サービスを実現する機能を有する内部装置を、XML処理部22により特定された要求に従って制御して、サービスを実行させるとともに、サービスの結果を内部装置から取得し、XML処理部22に供給する処理部である。
【0050】
ドライバ24は、操作パネル11のドライバであって、操作パネル11へ入力されたユーザ操作の情報および操作パネル11で表示するユーザインタフェース画面の情報に関して、XML処理部22との間でメッセージの送受を行う処理部である。
【0051】
また、図1において、端末装置3は、通信装置31、データ格納装置32およびコンピュータ33を有する。端末装置3としては、例えばパーソナルコンピュータが使用される。
【0052】
通信装置31は、コンピュータネットワーク2に接続され、コンピュータネットワーク2に接続された他の装置(複合機1など)と通信可能な装置である。通信装置31としては、ネットワークインタフェースカードなどが使用される。
【0053】
データ格納装置32は、コンピュータ33で実行されるプログラムなどを格納する装置である。データ格納装置32には、ドライバプログラム32aが格納されている。データ格納装置32には、ハードディスクドライブ、不揮発性メモリなどといった、読み書き可能な記録媒体を駆動する装置が使用される。
【0054】
コンピュータ33は、図示せぬCPU、RAM、ROMなどを備え、プログラムをRAMにロードし、CPUで実行することにより、各種処理部を実現する装置である。コンピュータ32は、ドライバプログラム33aなどのプログラムに基づいて、通信処理部41およびドライバ42を実現する。
【0055】
通信処理部41は、通信装置31を制御し、コンピュータネットワーク2を介してメッセージを所定の通信プロトコルで送受する処理部である。この実施の形態では、メッセージとしてSOAPメッセージが使用されるため、通信プロトコルとしてはTCP/IPおよびHTTPが使用される。通信処理部41は、例えば、ユーザインタフェースデータ15cの編集のための要求メッセージを送信する。
【0056】
ドライバ42は、コンピュータネットワーク2を介して複合機1を制御するドライバであって、サービスに使用されるメッセージの生成および解析を行う処理部である。また、ドライバ42は、通信処理部41を制御して、サービス定義データ15aおよびスキーマデータ15bの全部または一部を取得してメッセージの構文を特定するとともに、メッセージ内で使用される属性項目および属性項目に設定可能な許容値を特定する。
【0057】
次に、上記複合機1におけるユーザインタフェース画面の表示について説明する。
【0058】
まず、複合機1では、コンピュータ17が起動すると、プログラムが実行され、適宜、通信処理部21、XML処理部22、制御部23およびドライバ24が実現される。
【0059】
起動後、UIデータ解析部22cは、所定の初期画面のXMLテキストをユーザインタフェースデータ15cから読み出して構文解析し、その結果に基づいてドライバ24に指令を供給する。ドライバ24は、その指令に従って、表示装置11aに初期画面を表示させる。
【0060】
その後、入力装置11bによりユーザ操作が検出されると、その操作情報がドライバ24を介してXML処理部22に供給される。UIデータ解析部22cは、そのユーザ操作により画面遷移が必要であると判断すると、次の画面のXMLテキストをユーザインタフェースデータ15cから読み出して構文解析し、その結果に基づいてドライバ24に指令を供給する。ドライバ24は、その指令に従って、画面遷移を実行し、表示装置11aに次の画面を表示させる。
【0061】
以後、同様にして、ユーザ操作または複合機1の状態変化に応じて必要なときに、画面遷移が実行される。
【0062】
次に、上記複合機1におけるユーザインタフェース画面のカスタマイズについて説明する。カスタマイズは、ユーザまたはサービスマンが端末装置3を操作して行う。
【0063】
XML処理部22は、起動後、サービス定義データ15aを読み出し、サービス定義データ15aに基づくメッセージ生成部22aおよびメッセージ解析部22bを実現する。このとき、XML処理部22は、サービス定義データ15aから参照されているスキーマデータ15bも併せて読み出す。
【0064】
一方、端末装置3では、コンピュータ33によりドライバプログラム32aなどが実行されることで、通信処理部41およびドライバ42が実現される。
【0065】
その後、端末装置3において、キーボードなどの図示せぬ入力装置により所定のユーザ操作が検出されると、ユーザによるサービスの要求が発生したと判断され、ドライバ42は、要求のメッセージを複合機1へ送信するための処理を実行する。
【0066】
ドライバ42は、ユーザの要求の対象であるサービスについてのサービス定義データ15aおよびスキーマデータ15bの全部または一部を複合機1から取得する。このとき、ドライバ42は、通信処理部41を制御して、複合機1の所定のURLへHTTPコマンドを送信し、その応答として、サービス定義データ15aおよびスキーマデータ15bの全部または一部を取得する。例えば、ドライバ42は、サービス定義データ15aおよびスキーマデータ15bを含むデータファイルのURLを指定してもよいし、データ15a,15bの必要な部分のみを抽出し返信するCGI(Common Gate Interface)のURLを指定してもよい。複合機1の通信処理部21が、HTTPサーバ機能を有しており、そのHTTPコマンドを受信し、応答を端末装置3へ送信する。
【0067】
ドライバ42は、取得したサービス定義データ15aおよびスキーマデータ15bの全部または一部に基づいて、そのサービスに使用されるメッセージの構文と、メッセージ内で使用されるパラメータの許容値を特定する。端末装置3のドライバは、ユーザによるサービスの要求が発生すると、そのサービスに関連付けられているメッセージの名称を特定し、そのメッセージの名称に対応するメッセージの構文およびパラメータの許容値を、サービス定義データ15aおよびスキーマデータ15bに基づいて特定する。
【0068】
そして、ドライバ42は、メッセージ内で使用されるパラメータの許容値のリストを、図示せぬ表示装置に表示させ、その後、図示せぬ入力装置に対するユーザの操作に基づきリストからパラメータの値を選択し、そのパラメータの値を使用した要求のメッセージを生成する。
【0069】
例えば、ボタンを追加するための、ユーザインタフェース画面の編集サービスの要求が発生した場合、ドライバ42が、図2および図3に示すサービス定義データ15aおよびスキーマデータ15bの一部または全部を取得すると、メッセージ「send_request」内でパラメータ「screen_name」(screen_name要素)、「event_button」(event_button要素)、およびパラメータ「procedure_string」(procedure_string要素)が使用されることを特定し、さらに、そのパラメータ「event_button」における属性項目が「button_name」、「button_string」、「button_top」、「button_left」、「button_hight」および「button_width」であることを特定する。そして、ドライバ42は、パラメータおよび属性項目の値の入力を促す画面を図示せぬ表示装置に表示させる。その後、パラメータおよび属性項目の値についてのテキスト入力が図示せぬ入力装置により検出されると、ドライバ42は、取得したサービス定義データ15aおよびスキーマデータ15bに従って、また、選択されたパラメータの値を使用して、図4に示すような要求のメッセージを生成する。この場合、生成されるメッセージは、SOAPメッセージである。なお、図4は、そのSOAPメッセージのSOAPエンベロープ部分のみを示している。
【0070】
このように、端末装置3は、サービスを実行する複合機1からサービス定義データ15aなどを取得するため、それらのデータを予め端末装置3内に格納しておく必要がない。例えば、複合機1の機種によってメッセージの構文が異なる場合でも、複合機1の機種毎にサービス定義データ15aなどを端末装置3に格納しておく必要がないため、サービス定義データ15aなどの管理を複合機1について行うだけでよい。
【0071】
そして、ドライバ42は、通信処理部41に、生成した要求のメッセージを複合機1へ送信させる。このとき、通信処理部41は、通信装置31を制御して、HTTPでそのメッセージをコンピュータネットワーク2へ送信させる。送信されたメッセージは、コンピュータネットワーク2から通信装置16を介して複合機1の通信処理部21により受信される。通信処理部21は、そのメッセージを受信すると、XML処理部22に供給する。
【0072】
XML処理部22のメッセージ解析部22bは、サービス定義データ15aおよびスキーマデータ15bに従って、そのメッセージの構文解析を行い、そのメッセージを使用するサービスを特定し、メッセージによる要求およびパラメータ値を制御部23に通知する。例えば、メッセージ解析部22bは、図4に示すメッセージを供給されると、そのメッセージがユーザインタフェース画面編集サービスのsend_requestメッセージであること特定するとともに、メッセージ内で指定されているパラメータの値を特定する。そして、メッセージ解析部22bは、ユーザインタフェース画面編集サービスのsend_requestメッセージの受信およびメッセージ内で指定されているパラメータの値を制御部23に通知する。
【0073】
制御部23は、その通知を受け取ると、内部装置を制御し、要求されたサービスを実行させる。例えば、制御部23は、ユーザインタフェース画面編集サービスのsend_requestメッセージの受信およびメッセージ内で指定されているパラメータの値の通知を受け取ると、データ格納装置15に格納されているユーザインタフェースデータ15cの編集を実行する。このとき、制御部23は、構成部品を追加または更新する場合には、受信した要求メッセージ内に記述されている構成部品の記述(XML要素)を、その要求メッセージで指定された画面の構成部品についてのデータとして、そのまま、ユーザインタフェースデータ15cに書き込む。例えば、図11に示すメッセージにおける、event_button要素およびprocedure_string要素の記述は、編集、変換などをすることなく、そのまま、ユーザインタフェースデータ15cに追加される。
【0074】
そして、制御部23は、サービスの実行が完了したことを検出すると、サービスの結果をXML処理部22のメッセージ生成部22aに通知する。
【0075】
メッセージ生成部22aは、サービスの結果の通知を制御部23から受け取ると、サービス定義データ15aおよびスキーマデータ15bに従って応答のメッセージを生成する。
【0076】
例えば、メッセージ生成部22aは、ユーザインタフェース画面編集サービスの結果の通知として、サービス定義データ15aにおけるユーザインタフェース画面編集サービスのsend_responseメッセージ(つまり、応答メッセージ)の送信要求を受け取ると、サービス定義データ15aおよびスキーマデータ15bに基づいて、応答のSOAPメッセージの構文を特定し、応答のためのSOAPメッセージを生成する。例えば、要求されたユーザインタフェース画面編集サービスが成功したことが制御部23から通知された場合には、例えば図5に示すようなSOAPメッセージが生成される。なお、図5は、そのSOAPメッセージのSOAPエンベロープ部分のみを示している。
【0077】
そして、XML処理部22は、通信処理部21に、生成した応答のメッセージを端末装置3へ送信させる。このとき、通信処理部21は、通信装置16を制御して、HTTPでそのメッセージをコンピュータネットワーク2へ送信させる。送信されたメッセージは、コンピュータネットワーク2から通信装置31を介して端末装置3の通信処理部41により受信される。通信処理部41は、そのメッセージを受信すると、ドライバ42に供給する。ドライバ42は、その応答メッセージから、要求したサービスに対する結果を検出する。ドライバ42は、その結果に応じた処理を実行する。例えば、ドライバ42は、サービスの結果を図示せぬ表示装置に表示させたりする。また、例えば、ユーザインタフェース画面編集サービスの場合、複合機1において、応答メッセージに、編集後のユーザインタフェース画面についてのユーザインタフェースデータ15cを含め、端末装置3のドライバ42は、そのメッセージに含まれるユーザインタフェースデータ15cに基づき、編集後のユーザインタフェース画面を表示させるようにしてもよい。
【0078】
なお、ユーザインタフェース画面編集サービスにおいて、テンプレートファイル15dを使用して、ユーザインタフェース画面を追加または更新するようにしてもよい。その場合、例えば、ユーザインタフェース画面とテンプレートファイル15dを指定した要求メッセージが端末装置3から複合機1へ送信される。複合機1では、指定されたユーザインタフェース画面についてのユーザインタフェースデータ15cが、テンプレートファイル15dに含まれるデータで追加または更新される。このときの要求メッセージの構文定義もサービス定義データ15aおよびスキーマデータ15bに含まれている。その後、上述のようにして、そのユーザインタフェース画面内の構成部品を編集することが可能である。
【0079】
以上のように、上記実施の形態によれば、複合機1は、ユーザインタフェース画面を表示する表示装置11aと、ユーザインタフェース画面内の構成部品の属性をテキストで記述したユーザインタフェースデータ15cを格納するデータ格納装置15と、ユーザインタフェースデータ15cを構文解析して構成部品の属性を特定し、構成部品の属性を反映させたユーザインタフェース画面を表示装置11aに表示させるUIデータ解析部22cとを備える。
【0080】
これにより、ユーザインタフェースデータ15cを編集することでユーザインタフェースをカスタマイズすることができる。したがって、複合機1のユーザインタフェース画面を簡単にカスタマイズすることができる。
【0081】
また、上記実施の形態によれば、複合機1は、ユーザインタフェースデータ15cについて編集サービスのインタフェース部分の構文定義とそのサービスに使用するメッセージのプロトコルの指定とを含むサービス定義データに従ってメッセージの構文解析を行うXML処理部22と、XML処理部22の構文解析の結果によりメッセージから得られる要求に従って編集サービスを実行する制御部23とを備える。
【0082】
これにより、複合機1が、サービスの1つとして、ユーザインタフェースデータ15cの編集を行うので、外部からのメッセージによって、複合機1を直接操作することなく、ユーザインタフェースデータ15cを編集することができる。したがって、複合機1のユーザインタフェース画面を簡単にカスタマイズすることができる。
【0083】
また、上記実施の形態によれば、複合機1では、ユーザインタフェースデータ15cおよびメッセージは、XMLで記述されており、制御部23は、メッセージ処理部22bで抽出された構成部品の属性のXMLテキストでユーザインタフェースデータ15cを更新する。
【0084】
これにより、ユーザインタフェースデータ15cを更新する際に、メッセージからユーザインタフェースデータ15cへの変換が不要となる。
【0085】
また、上記実施の形態によれば、端末装置3では、ドライバ42は、スキーマデータ15bの一部または全部を複合機1から取得して構成部品の属性の1または複数の項目を特定し、通信処理部41は、ドライバ42により特定された1または複数の項目の一部または全部に値を設定するメッセージを送信する。
【0086】
これにより、端末装置3に予め構成部品の属性項目を保持しておかなくても、カスタマイズを実行することができる。
【0087】
また、上記実施の形態によれば、端末装置3では、ドライバ42は、スキーマデータ15bの一部または全部を複合機1から取得して構成部品の属性に対する1または複数の許容値を特定し、通信処理部41は、ドライバ42により特定された1または複数の許容値から選択された値をその構成部品の属性に設定するメッセージを送信する。
【0088】
これにより、端末装置3に予め構成部品の属性の許容値を保持しておかなくても、カスタマイズを実行することができる。
【0089】
また、上記実施の形態によれば、ユーザインタフェースデータ15cおよびメッセージは、XMLで記述されており、スキーマデータ15bは、XMLスキーマで記述されたXMLデータであり、制御部23は、XML処理部22で抽出された構成部品の属性のXMLテキストでユーザインタフェースデータを更新する。
【0090】
これにより、端末装置3に予めメッセージの構文定義を保持しておかなくても、カスタマイズを実行することができる。
【0091】
また、上記実施の形態によれば、データ格納装置15は、ユーザインタフェース画面のデフォルトデータをそれぞれ含む複数のテンプレートファイル15dを格納する。端末装置3の通信処理部41は、複数のテンプレートファイル15dのうちの1つのテンプレートファイルを指定し、指定したテンプレートファイルのデフォルトデータを、ユーザインタフェースデータ15cにおける1つのユーザインタフェース画面のデータとするメッセージを送信する。
【0092】
これにより、テンプレートを使用することで、複雑なカスタマイズを容易に実行することができる。
【0093】
なお、上述の実施の形態は、本発明の好適な例であるが、本発明は、これらに限定されるものではなく、本発明の要旨を逸脱しない範囲において、種々の変形、変更が可能である。
【0094】
例えば、上記実施の形態では、画像形成装置の一例として複合機について説明しているが、プリンタ、ファクシミリ機、スキャナなどであってもよい。
【0095】
また、上記実施の形態では、一連の複数のサービスからなるユースケースごとに、サービス定義データ15aを作成するようにしてもよい。
【0096】
また、上記実施の形態では、サービス定義データ15aは、WSDLで記述されているが、同様の記述が可能な他の言語で記述されていてもよい。また、スキーマデータ15bおよびサービス定義データ15a内でのスキーマの記述は、XMLスキーマ以外の言語で記述されていてもよい。ただし、その場合でも、サービス定義データ15aおよびスキーマデータ15bは、簡単に編集可能なテキストデータとされる。
【0097】
また、上記実施の形態では、サービス定義データ15aおよび/またはスキーマデータ15bを、コンピュータネットワーク2を介してアクセス可能なサーバ装置に格納しておき、複合機1がそのサーバ装置からサービス定義データ15aおよび/またはスキーマデータ15bをダウンロードして使用するようにしてもよい。
【0098】
また、上記実施の形態において、サービス定義データ15aまたはスキーマデータ15bに表示装置11aの属性情報(種類、解像度、表示色(カラー/モノクロ)など)を含めておき、カスタマイズ時に端末装置3においてその情報を表示可能としてもよい。例えば、表示装置11aの種類としては、2行2列液晶、ドットマトリクスディスプレイ、8.5インチフルカラー液晶パネルなどがある。
【0099】
また、上記実施の形態において、procedure_string要素において、画面上のボタンなどのレイアウトを変更する動作のコマンドが記述されるようにしてもよい。そのコマンドが記述されている場合、ボタンが押下されると、ボタンなどのレイアウトが異なる別の画面が表示される。
【0100】
また、上記実施の形態において、procedure_string要素に記述される動作のコマンドは、サービス定義データ15aで定義されているサービスの名称としてもよい。つまり、サービス定義データ15aにおいて、スキャンサービスなどの、複合機1の動作により提供されるサービスの構文定義を記述しておき、ボタンが操作されたときにその構文に従ったメッセージが操作パネル11からXML処理部22へ送信されることで、そのサービスのための動作が複合機1により実行される。また、上記実施の形態において、procedure_string要素の子要素として、一連の動作をXMLで記述するようにしてもよい。
【産業上の利用可能性】
【0101】
本発明は、例えば、複合機に適用可能である。
【図面の簡単な説明】
【0102】
【図1】本発明の実施の形態に係る画像形成装置としての複合機を含む画像形成システムの構成を示すブロック図である。
【図2】WSDLで記述されたサービス定義データの一例を示す図である。
【図3】サービス定義データで参照されるスキーマデータの一例を示す図である。
【図4】ユーザインタフェース画面の一例を示す図である。
【図5】図4に示すユーザインタフェース画面を記述したユーザインタフェースデータの一部である。
【図6】テンプレートファイルに基づいて表示されるデフォルト画面の例である。
【図7】テンプレートファイルに基づいて表示されるデフォルト画面の例である。
【図8】テンプレートファイルに基づいて表示されるデフォルト画面の例である。
【図9】テンプレートファイルに基づいて表示されるデフォルト画面の例である。
【図10】テンプレートファイルに基づいて表示されるデフォルト画面の例である。
【図11】本発明の実施の形態における要求のメッセージの一例を示す図である。
【図12】本発明の実施の形態における応答のメッセージの一例を示す図である。
【符号の説明】
【0103】
1 複合機(画像形成装置の一例)
2 コンピュータネットワーク(コンピュータネットワークの一例)
3 端末装置(端末装置の一例)
11a 表示装置(表示装置の一例)
15a サービス定義データ(サービス定義データの一例)
15b スキーマデータ(スキーマデータの一例)
15c ユーザインタフェースデータ(ユーザインタフェースデータの一例)
15d テンプレートファイル(テンプレートファイルの一例)
21 通信処理部(送信手段の一例)
22 XML処理部(メッセージ処理部の一例)
22c UIデータ解析部(UIデータ解析部の一例)
23 制御部(制御部の一例)

【特許請求の範囲】
【請求項1】
ユーザインタフェース画面を表示する表示装置と、
前記ユーザインタフェース画面内の構成部品の属性をテキストで記述したユーザインタフェースデータを格納するデータ格納装置と、
前記ユーザインタフェースデータを構文解析して前記構成部品の属性を特定し、前記構成部品の属性を反映させた前記ユーザインタフェース画面を前記表示装置に表示させるUIデータ解析部と、
を備えることを特徴とする画像形成装置。
【請求項2】
前記ユーザインタフェースデータについて編集サービスのインタフェース部分の構文定義とそのサービスに使用するメッセージのプロトコルの指定とを含むサービス定義データに従って前記メッセージの構文解析を行うメッセージ処理部と、
前記メッセージ処理部の構文解析の結果により前記メッセージから得られる要求に従って前記編集サービスを実行する制御部と、
を備えることを特徴とする請求項1記載の画像形成装置。
【請求項3】
コンピュータネットワークを介して所定の通信プロトコルで前記メッセージを受信する受信手段を備え、
前記メッセージ処理部は、前記受信手段により受信された前記メッセージの構文解析を行うこと、
を特徴とする請求項2記載の画像形成装置。
【請求項4】
前記サービス定義データにおいて指定されているプロトコルは、SOAPであり、
前記受信手段は、HTTPで前記メッセージを受信すること、
を特徴とする請求項3記載の画像形成装置。
【請求項5】
前記サービス定義データは、WSDLで記述されたXMLデータであることを特徴とする請求項2記載の画像形成装置。
【請求項6】
前記サービス定義データは、スキーマデータを含み、
前記スキーマデータは、前記メッセージの構文定義を含み、
前記メッセージ処理部は、前記サービス定義データおよび前記スキーマデータに従って前記メッセージの構文解析を行うこと、
を特徴とする請求項2記載の画像形成装置。
【請求項7】
前記ユーザインタフェースデータおよび前記メッセージは、XMLで記述されており、
前記制御部は、前記メッセージ処理部で抽出された前記構成部品の属性のXMLテキストで前記ユーザインタフェースデータを更新すること、
を特徴とする請求項2記載の画像形成装置。
【請求項8】
コンピュータネットワークに接続された画像形成装置と、
前記コンピュータネットワークに接続された端末装置とを備え、
前記画像形成装置は、
ユーザインタフェース画面を表示する表示装置と、
前記ユーザインタフェース画面内の構成部品の属性をテキストで記述したユーザインタフェースデータを格納するデータ格納装置と、
前記ユーザインタフェースデータを構文解析して前記構成部品の属性を特定し、前記構成部品の属性を反映させた前記ユーザインタフェース画面を前記表示装置に表示させるUIデータ解析部と、
前記コンピュータネットワークを介して所定の通信プロトコルでメッセージを受信する受信手段と、
前記ユーザインタフェースデータについて編集サービスのインタフェース部分の構文定義とそのサービスに使用するメッセージのプロトコルの指定とを含むサービス定義データに従って前記メッセージの構文解析を行うメッセージ処理部と、
前記メッセージ処理部の構文解析の結果により前記メッセージから得られる要求に従って前記編集サービスを実行する制御部とを有し、
前記端末装置は、前記コンピュータネットワークを介して所定の通信プロトコルで前記メッセージを送信する送信手段を有すること、
を特徴とする画像形成システム。
【請求項9】
前記データ格納装置は、前記メッセージの構文定義を含むスキーマデータを格納し、
前記端末装置は、前記スキーマデータの一部または全部を前記画像形成装置から取得して前記構成部品の属性の1または複数の項目を特定するスキーマデータ取得部を備え、
前記送信手段は、前記スキーマデータ取得部により特定された前記1または複数の項目の一部または全部に値を設定する前記メッセージを送信すること、
を特徴とする請求項8記載の画像形成システム。
【請求項10】
前記データ格納装置は、前記メッセージの構文定義を含むスキーマデータを格納し、
前記端末装置は、前記スキーマデータの一部または全部を前記画像形成装置から取得して前記構成部品の属性に対する1または複数の許容値を特定するスキーマデータ取得部を備え、
前記送信手段は、前記スキーマデータ取得部により特定された前記1または複数の許容値から選択された値をその構成部品の属性に設定する前記メッセージを送信すること、
を特徴とする請求項8記載の画像形成システム。
【請求項11】
前記ユーザインタフェースデータおよび前記メッセージは、XMLで記述されており、
前記スキーマデータは、XMLスキーマで記述されたXMLデータであり、
前記制御部は、前記メッセージ処理部で抽出された前記構成部品の属性のXMLテキストで前記ユーザインタフェースデータを更新すること、
を特徴とする請求項9または請求項10記載の画像形成システム。
【請求項12】
前記データ格納装置は、ユーザインタフェース画面のデフォルトデータをそれぞれ含む複数のテンプレートファイルを格納し、
前記送信手段は、前記複数のテンプレートファイルのうちの1つの前記テンプレートファイルを指定し、指定したテンプレートファイルの前記デフォルトデータを、前記ユーザインタフェースデータにおける1つのユーザインタフェース画面のデータとする前記メッセージを送信すること、
を特徴とする請求項8記載の画像形成システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate


【公開番号】特開2010−50620(P2010−50620A)
【公開日】平成22年3月4日(2010.3.4)
【国際特許分類】
【出願番号】特願2008−211766(P2008−211766)
【出願日】平成20年8月20日(2008.8.20)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.JAVA
【出願人】(000006150)京セラミタ株式会社 (13,173)
【Fターム(参考)】