(57)【要約】【課題】  画像形成装置のユーザインタフェース画面を簡単にカスタマイズ可能とする。【解決手段】  複合機１は、ユーザインタフェース画面を表示する表示装置１１ａと、ユーザインタフェース画面内の構成部品の属性をテキストで記述したユーザインタフェースデータ１５ｃを格納するデータ格納装置１５と、ユーザインタフェースデータ１５ｃを構文解析して構成部品の属性を特定し、構成部品の属性を反映させたユーザインタフェース画面を表示装置１１ａに表示させるＵＩデータ解析部２２ｃとを備える。【選択図】  図１
2010050620.tif 000002
【特許請求の範囲】
【請求項１】
ユーザインタフェース画面を表示する表示装置と、
前記ユーザインタフェース画面内の構成部品の属性をテキストで記述したユーザインタフェースデータを格納するデータ格納装置と、
前記ユーザインタフェースデータを構文解析して前記構成部品の属性を特定し、前記構成部品の属性を反映させた前記ユーザインタフェース画面を前記表示装置に表示させるＵＩデータ解析部と、
を備えることを特徴とする画像形成装置。
【請求項２】
前記ユーザインタフェースデータについて編集サービスのインタフェース部分の構文定義とそのサービスに使用するメッセージのプロトコルの指定とを含むサービス定義データに従って前記メッセージの構文解析を行うメッセージ処理部と、
前記メッセージ処理部の構文解析の結果により前記メッセージから得られる要求に従って前記編集サービスを実行する制御部と、
を備えることを特徴とする請求項１記載の画像形成装置。
【請求項３】
コンピュータネットワークを介して所定の通信プロトコルで前記メッセージを受信する受信手段を備え、
前記メッセージ処理部は、前記受信手段により受信された前記メッセージの構文解析を行うこと、
を特徴とする請求項２記載の画像形成装置。
【請求項４】
前記サービス定義データにおいて指定されているプロトコルは、ＳＯＡＰであり、
前記受信手段は、ＨＴＴＰで前記メッセージを受信すること、
を特徴とする請求項３記載の画像形成装置。
【請求項５】
前記サービス定義データは、ＷＳＤＬで記述されたＸＭＬデータであることを特徴とする請求項２記載の画像形成装置。
【請求項６】
前記サービス定義データは、スキーマデータを含み、
前記スキーマデータは、前記メッセージの構文定義を含み、
前記メッセージ処理部は、前記サービス定義データおよび前記スキーマデータに従って前記メッセージの構文解析を行うこと、
を特徴とする請求項２記載の画像形成装置。
【請求項７】
前記ユーザインタフェースデータおよび前記メッセージは、ＸＭＬで記述されており、
前記制御部は、前記メッセージ処理部で抽出された前記構成部品の属性のＸＭＬテキストで前記ユーザインタフェースデータを更新すること、
を特徴とする請求項２記載の画像形成装置。
【請求項８】
コンピュータネットワークに接続された画像形成装置と、
前記コンピュータネットワークに接続された端末装置とを備え、
前記画像形成装置は、
ユーザインタフェース画面を表示する表示装置と、
前記ユーザインタフェース画面内の構成部品の属性をテキストで記述したユーザインタフェースデータを格納するデータ格納装置と、
前記ユーザインタフェースデータを構文解析して前記構成部品の属性を特定し、前記構成部品の属性を反映させた前記ユーザインタフェース画面を前記表示装置に表示させるＵＩデータ解析部と、
前記コンピュータネットワークを介して所定の通信プロトコルでメッセージを受信する受信手段と、
前記ユーザインタフェースデータについて編集サービスのインタフェース部分の構文定義とそのサービスに使用するメッセージのプロトコルの指定とを含むサービス定義データに従って前記メッセージの構文解析を行うメッセージ処理部と、
前記メッセージ処理部の構文解析の結果により前記メッセージから得られる要求に従って前記編集サービスを実行する制御部とを有し、
前記端末装置は、前記コンピュータネットワークを介して所定の通信プロトコルで前記メッセージを送信する送信手段を有すること、
を特徴とする画像形成システム。
【請求項９】
前記データ格納装置は、前記メッセージの構文定義を含むスキーマデータを格納し、
前記端末装置は、前記スキーマデータの一部または全部を前記画像形成装置から取得して前記構成部品の属性の１または複数の項目を特定するスキーマデータ取得部を備え、
前記送信手段は、前記スキーマデータ取得部により特定された前記１または複数の項目の一部または全部に値を設定する前記メッセージを送信すること、
を特徴とする請求項８記載の画像形成システム。
【請求項１０】
前記データ格納装置は、前記メッセージの構文定義を含むスキーマデータを格納し、
前記端末装置は、前記スキーマデータの一部または全部を前記画像形成装置から取得して前記構成部品の属性に対する１または複数の許容値を特定するスキーマデータ取得部を備え、
前記送信手段は、前記スキーマデータ取得部により特定された前記１または複数の許容値から選択された値をその構成部品の属性に設定する前記メッセージを送信すること、
を特徴とする請求項８記載の画像形成システム。
【請求項１１】
前記ユーザインタフェースデータおよび前記メッセージは、ＸＭＬで記述されており、
前記スキーマデータは、ＸＭＬスキーマで記述されたＸＭＬデータであり、
前記制御部は、前記メッセージ処理部で抽出された前記構成部品の属性のＸＭＬテキストで前記ユーザインタフェースデータを更新すること、
を特徴とする請求項９または請求項１０記載の画像形成システム。
【請求項１２】
前記データ格納装置は、ユーザインタフェース画面のデフォルトデータをそれぞれ含む複数のテンプレートファイルを格納し、
前記送信手段は、前記複数のテンプレートファイルのうちの１つの前記テンプレートファイルを指定し、指定したテンプレートファイルの前記デフォルトデータを、前記ユーザインタフェースデータにおける１つのユーザインタフェース画面のデータとする前記メッセージを送信すること、
を特徴とする請求項８記載の画像形成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置および画像形成システムに関するものである。
【背景技術】
【０００２】
複合機などの画像形成装置には操作パネルが設置されており、操作パネルは表示装置および入力装置を含む。この表示装置には、ユーザインタフェース画面が表示される。ユーザインタフェース画面は、主にボタンなどの構成部品を有する（例えば、特許文献１参照）。
【０００３】
このようなユーザインタフェース画面は、プログラム制御により表示される。ユーザインタフェース画面を表示するためのプログラムは、通常、画像形成装置自体に含まれるＡＰＩ（Application Program Interface）を使用してＣ言語やＪＡＶＡなどといったプログラミング言語により記述されたソースファイルをコンパイルして生成される。そして、実行形式のプログラムとして画像形成装置内に予め格納されている。
【特許文献１】特開２００６−９２３０２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上述のように、ユーザインタフェース画面を表示するプログラムは、プログラミング言語で記述されたソースファイルをコンパイルして生成される。したがって、ユーザインタフェース画面をカスタマイズする場合、そのプログラミング言語から実行形式のプログラムを生成する開発環境が必要になるとともに、プログラマ以外の者がソースファイルを変更することが困難である。
【０００５】
本発明は、上記の問題に鑑みてなされたものであり、画像形成装置のユーザインタフェース画面を簡単にカスタマイズすることができる画像形成装置および画像形成システムを得ることを目的とする。
【課題を解決するための手段】
【０００６】
上記の課題を解決するために、本発明では以下のようにした。
【０００７】
本発明に係る画像形成装置は、ユーザインタフェース画面を表示する表示装置と、ユーザインタフェース画面内の構成部品の属性をテキストで記述したユーザインタフェースデータを格納するデータ格納装置と、ユーザインタフェースデータを構文解析して構成部品の属性を特定し、構成部品の属性を反映させたユーザインタフェース画面を表示装置に表示させるＵＩデータ解析部とを備える。
【０００８】
これにより、テキスト形式のユーザインタフェースデータを編集することでユーザインタフェースをカスタマイズすることができる。したがって、画像形成装置のユーザインタフェース画面を簡単にカスタマイズすることができる。
【０００９】
また、本発明に係る画像形成装置は、上記の画像形成装置に加え、次のようにしてもよい。この場合、画像形成装置は、ユーザインタフェースデータについて編集サービスのインタフェース部分の構文定義とそのサービスに使用するメッセージのプロトコルの指定とを含むサービス定義データに従ってメッセージの構文解析を行うメッセージ処理部と、メッセージ処理部の構文解析の結果によりメッセージから得られる要求に従って編集サービスを実行する制御部とを備える。
【００１０】
これにより、画像形成装置が、サービスの１つとして、ユーザインタフェースデータの編集を行うので、外部からのメッセージによって、画像形成装置を直接操作することなく、ユーザインタフェースデータを編集することができる。したがって、画像形成装置のユーザインタフェース画面を簡単にカスタマイズすることができる。
【００１１】
また、本発明に係る画像形成装置は、上記の画像形成装置のいずれかに加え、次のようにしてもよい。この場合、画像形成装置は、コンピュータネットワークを介して所定の通信プロトコルでメッセージを受信する受信手段を備える。メッセージ処理部は、受信手段により受信されたメッセージの構文解析を行う。
【００１２】
また、本発明に係る画像形成装置は、上記の画像形成装置のいずれかに加え、次のようにしてもよい。この場合、サービス定義データにおいて指定されているプロトコルは、ＳＯＡＰであり、受信手段は、ＨＴＴＰでメッセージを受信する。
【００１３】
また、本発明に係る画像形成装置は、上記の画像形成装置のいずれかに加え、次のようにしてもよい。この場合、サービス定義データは、ＷＳＤＬで記述されたＸＭＬデータである。
【００１４】
また、本発明に係る画像形成装置は、上記の画像形成装置のいずれかに加え、次のようにしてもよい。この場合、サービス定義データは、スキーマデータを含み、スキーマデータは、メッセージの構文定義を含み、メッセージ処理部は、サービス定義データおよびスキーマデータに従ってメッセージの構文解析を行う。
【００１５】
また、本発明に係る画像形成装置は、上記の画像形成装置のいずれかに加え、次のようにしてもよい。この場合、ユーザインタフェースデータおよびメッセージは、ＸＭＬで記述されており、制御部は、メッセージ処理部で抽出された構成部品の属性のＸＭＬテキストでユーザインタフェースデータを更新する。
【００１６】
これにより、メッセージからユーザインタフェースデータへの変換が不要となる。
【００１７】
本発明に係る画像形成システムは、コンピュータネットワークに接続された画像形成装置と、そのコンピュータネットワークに接続された端末装置とを備える。画像形成装置は、ユーザインタフェース画面を表示する表示装置と、ユーザインタフェース画面内の構成部品の属性をテキストで記述したユーザインタフェースデータを格納するデータ格納装置と、ユーザインタフェースデータを構文解析して構成部品の属性を特定し、構成部品の属性を反映させたユーザインタフェース画面を表示装置に表示させるＵＩデータ解析部と、コンピュータネットワークを介して所定の通信プロトコルでメッセージを受信する受信手段と、ユーザインタフェースデータについて編集サービスのインタフェース部分の構文定義とそのサービスに使用するメッセージのプロトコルの指定とを含むサービス定義データに従ってメッセージの構文解析を行うメッセージ処理部と、メッセージ処理部の構文解析の結果によりメッセージから得られる要求に従って編集サービスを実行する制御部とを有する。端末装置は、コンピュータネットワークを介して所定の通信プロトコルでメッセージを送信する送信手段を有する。
【００１８】
これにより、テキスト形式のユーザインタフェースデータを編集することでユーザインタフェースをカスタマイズすることができる。また、画像形成装置が、サービスの１つとして、ユーザインタフェースデータの編集を行うので、外部からのメッセージによって、画像形成装置を直接操作することなく、ユーザインタフェースデータを編集することができる。したがって、画像形成装置のユーザインタフェース画面を簡単にカスタマイズすることができる。
【００１９】
また、本発明に係る画像形成システムは、上記の画像形成システムに加え、次のようにしてもよい。この場合、データ格納装置は、メッセージの構文定義を含むスキーマデータを格納する。端末装置は、スキーマデータの一部または全部を画像形成装置から取得して構成部品の属性の１または複数の項目を特定するスキーマデータ取得部を備える。送信手段は、スキーマデータ取得部により特定された１または複数の項目の一部または全部に値を設定するメッセージを送信する。
【００２０】
これにより、端末装置に予め構成部品の属性項目を保持しておかなくても、カスタマイズを実行することができる。
【００２１】
また、本発明に係る画像形成システムは、上記の画像形成システムのいずれかに加え、次のようにしてもよい。この場合、データ格納装置は、メッセージの構文定義を含むスキーマデータを格納する。端末装置は、スキーマデータの一部または全部を画像形成装置から取得して構成部品の属性に対する１または複数の許容値を特定するスキーマデータ取得部を備える。送信手段は、スキーマデータ取得部により特定された１または複数の許容値から選択された値をその構成部品の属性に設定するメッセージを送信する。
【００２２】
これにより、端末装置に予め構成部品の属性の許容値を保持しておかなくても、カスタマイズを実行することができる。
【００２３】
また、本発明に係る画像形成システムは、上記の画像形成システムに加え、次のようにしてもよい。この場合、ユーザインタフェースデータおよびメッセージは、ＸＭＬで記述されており、スキーマデータは、ＸＭＬスキーマで記述されたＸＭＬデータであり、制御部は、メッセージ処理部で抽出された構成部品の属性のＸＭＬテキストでユーザインタフェースデータを更新する。
【００２４】
これにより、端末装置に予めメッセージの構文定義を保持しておかなくても、カスタマイズを実行することができる。
【００２５】
また、本発明に係る画像形成システムは、上記の画像形成システムに加え、次のようにしてもよい。この場合、データ格納装置は、ユーザインタフェース画面のデフォルトデータをそれぞれ含む複数のテンプレートファイルを格納する。送信手段は、複数のテンプレートファイルのうちの１つのテンプレートファイルを指定し、指定したテンプレートファイルのデフォルトデータを、ユーザインタフェースデータにおける１つのユーザインタフェース画面のデータとするメッセージを送信する。
【００２６】
これにより、テンプレートを使用することで、複雑なカスタマイズを容易に実行することができる。
【発明の効果】
【００２７】
本発明によれば、画像形成装置のユーザインタフェース画面を簡単にカスタマイズすることができる。
【発明を実施するための最良の形態】
【００２８】
以下、図に基づいて本発明の実施の形態を説明する。
【００２９】
図１は、本発明の実施の形態に係る画像形成装置としての複合機１を含む画像形成システムの構成を示すブロック図である。このシステムでは、複合機１は、コンピュータネットワーク２に接続され、コンピュータネットワーク２に接続された端末装置３また複合機１の操作パネル１１を操作するユーザにより利用される。このため、ユーザ操作によりサービスの実行が要求されると、端末装置３と複合機１との間または複合機１内部で要求および応答のメッセージが送受される。
【００３０】
図１において、複合機１は、操作パネル１１、印刷装置１２、画像読取装置１３、ファクシミリ装置１４、データ格納装置１５、通信装置１６およびコンピュータ１７を有する。
【００３１】
操作パネル１１は、液晶ディスプレイなどの表示装置１１ａと、物理的なユーザ操作を電気的に検出する入力装置１１ｂとを有するユーザインタフェース装置である。入力装置１１ｂとしては、キースイッチ、表示装置の画面上に配置された透明なタッチパネルなどが使用される。
【００３２】
印刷装置１２は、画像読取装置１３により生成された文書データ、図示せぬ文書ボックスに格納されている文書データ、端末装置３から受信された文書データなどに基づき文書画像を印刷する内部装置である。なお、文書データは、所定のフォーマットの画像データである。
【００３３】
画像読取装置１３は、自動原稿給紙装置により給紙されてきた原稿またはユーザにより載置された原稿の片面または両面に対して光を照射しその反射光等を受光して原稿の画像を読み取り文書データとして出力する内部装置である。
【００３４】
ファクシミリ装置１４は、モデムを有し、画像読取装置１３により生成された文書データまたは文書ボックスに格納されている文書データからファクシミリ信号を生成し、電話回線などを介して送信するとともに、ファクシミリ信号を受信し、受信した信号から文書データを生成する内部装置である。
【００３５】
データ格納装置１５は、サービス定義データ１５ａ、スキーマデータ１５ｂ、ユーザインタフェースデータ１５ｃ、テンプレートファイル１５ｄ、コンピュータ１７で実行される図示せぬプログラム、文書データなどを格納する装置である。データ格納装置１５には、ハードディスクドライブ、不揮発性メモリなどといった、読み書き可能な記録媒体を駆動する装置が使用される。
【００３６】
サービス定義データ１５ａは、サービスの呼び出しおよびその戻り値などを規定するインタフェース部分の構文定義を含み、さらに、そのサービスに使用するメッセージのプロトコルの指定を含むテキストデータである。サービス定義データ１５ａは、例えばＸＭＬ（eXtensible Markup Language）で記述される。さらに、サービス定義データ１５ａは、例えばＷＳＤＬ（Web Services Description Language）で記述される。なお、サービス定義データ１５ａは、構文定義を含むデータであり、実際に送受されるメッセージではない。サービス定義データ１５ａは、１つのファイルとして格納されていてもよいし、複数のファイルとして格納されていてもよい。サービス定義データ１５ａは、構文定義の記述のためにスキーマ言語を使用する。この実施の形態では、サービス定義データ１５ａは、構文定義の記述のためにＸＭＬスキーマを使用しており、サービス定義データ１５ａ内で、ＸＭＬスキーマで構文定義が直接的に記述されるか、外部のスキーマデータ１５ｂを読み込み間接的に使用するための参照が記述される。
【００３７】
スキーマデータ１５ｂは、サービス定義データ１５ａ内で参照される外部のスキーマデータである。スキーマデータ１５ｂは、所定の言語で記述されたテキストデータである。スキーマデータ１５ｂは、１または複数のデータファイルとして格納されている。
【００３８】
図２は、ＷＳＤＬで記述されたサービス定義データ１５ａの一例を示す図である。また、図３は、サービス定義データで参照されるスキーマデータ１５ｂの一例を示す図である。
【００３９】
図２に示すサービス定義データ１５ａは、ユーザインタフェースデータ１５ｃの編集サービスの構文定義を含む。編集サービスでは、ユーザインタフェースデータ１５ｃにおけるユーザインタフェース画面の構成部品の変更、追加および削除を行うことができる。図２に示すサービス定義データ１５ａは、１つのＷＳＤＬのdefinitions要素からなる。definitions要素内にＷＳＤＬのtypes要素があり、types要素内で、include要素で、外部のスキーマデータ１５ｂである例えば図３に示すような「panel.xsd」が参照されている。そして、そのdefinitions要素内で、ＷＳＤＬのmessage要素およびportType要素において、サービスのインタフェース部分である、要求メッセージと応答メッセージの定義が記述されている。さらに、portType要素において、複合機１に要求可能な複数の動作が複数のoperation要素により記述されている。図２では、ユーザインタフェース画面にボタンを追加するためのoperation要素が記述されており、そのoperation要素において、要求メッセージとして「button_request」が定義されており、応答メッセージとして「button_response」が定義されている。また、ユーザインタフェース画面からボタンを削除するためのoperation要素、ユーザインタフェース画面におけるボタンの属性を更新するためのoperation要素などが記述されている。その他、ユーザインタフェース画面に含まれる他の構成部品（例えばリストボックス、テキストボックスなど）についての追加、削除および更新のためのoperation要素が含まれている。
【００４０】
そして、そのdefinitions要素内で、ＷＳＤＬのbinding要素において、そのサービスで使用されるメッセージのプロトコルが指定されている。図２に示すbinding要素では、メッセージに使用するプロトコルとしてＳＯＡＰが指定されている。
【００４１】
また、図３に示すスキーマデータ１５ｂには、要求のメッセージ（button_request）の構文定義および応答のメッセージの構文定義（図示せず）、およびメッセージ内で使用されるパラメータの許容値の定義（図示せず）が記述されている。メッセージの構文定義は、ＸＭＬスキーマ（xsd）のelement要素およびcomplexType要素として記述されている。また、パラメータの許容値の定義は、ＸＭＬスキーマ（xsd）のsimpleType要素として記述される。さらに、この実施の形態では、スキーマデータ１５ｂには、ユーザインタフェースデータ１５ｃにおけるユーザインタフェース画面の構成部品の属性を記述する際の構文定義が記述されている。メッセージ内でユーザインタフェース画面の構成部品の属性を記述する際にもこの構文定義が使用される。この構文定義には、構成部品が有する属性項目および／またはその属性項目に設定可能な値（許容値）が含まれる。
【００４２】
このように、サービスごとにサービス定義データ１５ａが予め格納されている。また、必要に応じて、外部のスキーマデータ１５ｂが予め格納されている。
【００４３】
また、ユーザインタフェースデータ１５ｃは、操作パネル１１の表示装置１１ａで表示されるユーザインタフェース画面内の構成部品の属性をテキストで記述したものである。
複数のユーザインタフェース画面が使用される場合には、ユーザインタフェース画面ごとに、そのユーザインタフェース画面に含まれる構成部品の属性が記述される。ユーザインタフェースデータ１５ｃは、ＸＭＬで記述されており、スキーマデータ１５ｂに記述されている構文定義に従って記述されている。図４は、ユーザインタフェース画面の一例を示す図である。図４に示すユーザインタフェース画面には、構成部品として「設定」テキスト、「コピー」ボタン、「ファクシミリ」ボタンおよび「プリンタ」ボタンが含まれている。図５は、図４に示すユーザインタフェース画面を記述したユーザインタフェースデータ１５ｃの一部である。図５に示すように、１つのユーザインタフェース画面が１つのscreen要素で記述され、screen要素の子要素として、ユーザインタフェース画面の名前を含むscreen_name要素、「設定」テキストの属性を含むscreen_title要素、並びに
「コピー」ボタン、「ファクシミリ」ボタンおよび「プリンタ」ボタンの属性を含む３つのbutton要素が記述されている。button要素は、子要素として、表示属性を含むevent_button要素と、ボタンが操作された際に行う動作を指定するprocedure_string要素とを有する。さらに、event_button要素は、ボタンの識別情報（ボタン名）を含むbutton_name要素と、ボタンの表示名を含むbutton_string要素と、上下方向におけるボタンの上端の座標値を含むbutton_top要素と、左右方向におけるボタンの左端の座標値を含むbutton_left要素と、ボタンの高さを含むbutton_hight要素と、ボタンの幅を含むbutton_width要素とを有する。
【００４４】
また、テンプレートファイル１５ｄは、ユーザインタフェース画面の構成部品がＸＭＬで記述されたデフォルトデータである。テンプレートファイル１５ｄも、スキーマデータ１５ｂに記述されている構文定義に従って記述されている。１つのテンプレートファイル１５ｄには、１つのユーザインタフェース画面に含まれる１または複数の構成部品のそれぞれについての属性がデフォルト値とともに記述されている。テンプレートファイル１５ｄ内のＸＭＬテキストは、ユーザインタフェースデータ１５ｃのカスタマイズのために、ユーザインタフェースデータ１５ｃに利用可能である。図６〜図１０は、テンプレートファイル１５ｄに基づいて表示されるデフォルト画面の例である。図６は、ボタンおよびテキストを構成部品として有するボタン選択型画面の一種であり、図７は、リストを構成部品として有するリスト型画面の一種であり、図８は、数値入力フィールドを構成部品として有する数値入力型画面の一種であり、図９は、テキスト入力フィールドを構成部品として有するテキスト入力型画面の一種であり、図１０は、数値増加ボタン、数値減少ボタンおよび数値フィールドを構成部品として有する固定数値入力型画面の一種である。
【００４５】
通信装置１６は、コンピュータネットワーク２に接続され、コンピュータネットワーク２に接続された他の装置（端末装置３など）と通信可能な装置である。通信装置１６としては、ネットワークインタフェースカードなどが使用される。
【００４６】
コンピュータ１７は、図示せぬＣＰＵ（Central Processing Unit）、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）などを備え、プログラムをＲＡＭにロードし、ＣＰＵで実行することにより、各種処理部を実現する装置である。コンピュータ１７は、図示せぬプログラムに基づいて、通信処理部２１、ＸＭＬ処理部２２、制御部２３およびドライバ２４を実現する。
【００４７】
通信処理部２１は、通信装置１６を制御し、コンピュータネットワーク２を介してメッセージを所定の通信プロトコルで送受する処理部である。この実施の形態では、メッセージプロトコルとしてＳＯＡＰ（Simple Object Access Protocol）が使用されるため、通信プロトコルとしてはＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）およびＨＴＴＰ（Hypertext Transfer Protocol）が使用される。
【００４８】
ＸＭＬ処理部２２は、ＷＳＤＬで記述されたサービス定義データ１５ａを読み込み、メッセージ生成部２２ａおよびメッセージ解析部２２ｂを実現する処理部である。メッセージ生成部２２ａは、サービス定義データ１５ａに記述されている構文定義に従って、サービスの結果を示す応答メッセージ、通知メッセージなどのメッセージを生成する。メッセージ解析部２２ｂは、サービスの要求を示す要求メッセージなどのメッセージの構文解析を、サービス定義データ１５ａに記述されている構文定義に従って行い、メッセージに記述されている要求などを特定する。ＵＩデータ解析部２２ｃは、ユーザインタフェースデータ１５ｃを構文解析して、各ユーザインタフェース画面の各構成部品の属性を特定し、構成部品の属性を反映させたユーザインタフェース画面を表示装置１１ａに表示させる処理部である。ＵＩデータ解析部２２ｃは、構文解析の結果に基づいてドライバ２４にユーザインタフェース画面を表示させる。
【００４９】
制御部２３は、印刷装置１２、画像読取装置１３、ファクシミリ装置１４などといった、サービスを実現する機能を有する内部装置を、ＸＭＬ処理部２２により特定された要求に従って制御して、サービスを実行させるとともに、サービスの結果を内部装置から取得し、ＸＭＬ処理部２２に供給する処理部である。
【００５０】
ドライバ２４は、操作パネル１１のドライバであって、操作パネル１１へ入力されたユーザ操作の情報および操作パネル１１で表示するユーザインタフェース画面の情報に関して、ＸＭＬ処理部２２との間でメッセージの送受を行う処理部である。
【００５１】
また、図１において、端末装置３は、通信装置３１、データ格納装置３２およびコンピュータ３３を有する。端末装置３としては、例えばパーソナルコンピュータが使用される。
【００５２】
通信装置３１は、コンピュータネットワーク２に接続され、コンピュータネットワーク２に接続された他の装置（複合機１など）と通信可能な装置である。通信装置３１としては、ネットワークインタフェースカードなどが使用される。
【００５３】
データ格納装置３２は、コンピュータ３３で実行されるプログラムなどを格納する装置である。データ格納装置３２には、ドライバプログラム３２ａが格納されている。データ格納装置３２には、ハードディスクドライブ、不揮発性メモリなどといった、読み書き可能な記録媒体を駆動する装置が使用される。
【００５４】
コンピュータ３３は、図示せぬＣＰＵ、ＲＡＭ、ＲＯＭなどを備え、プログラムをＲＡＭにロードし、ＣＰＵで実行することにより、各種処理部を実現する装置である。コンピュータ３２は、ドライバプログラム３３ａなどのプログラムに基づいて、通信処理部４１およびドライバ４２を実現する。
【００５５】
通信処理部４１は、通信装置３１を制御し、コンピュータネットワーク２を介してメッセージを所定の通信プロトコルで送受する処理部である。この実施の形態では、メッセージとしてＳＯＡＰメッセージが使用されるため、通信プロトコルとしてはＴＣＰ／ＩＰおよびＨＴＴＰが使用される。通信処理部４１は、例えば、ユーザインタフェースデータ１５ｃの編集のための要求メッセージを送信する。
【００５６】
ドライバ４２は、コンピュータネットワーク２を介して複合機１を制御するドライバであって、サービスに使用されるメッセージの生成および解析を行う処理部である。また、ドライバ４２は、通信処理部４１を制御して、サービス定義データ１５ａおよびスキーマデータ１５ｂの全部または一部を取得してメッセージの構文を特定するとともに、メッセージ内で使用される属性項目および属性項目に設定可能な許容値を特定する。
【００５７】
次に、上記複合機１におけるユーザインタフェース画面の表示について説明する。
【００５８】
まず、複合機１では、コンピュータ１７が起動すると、プログラムが実行され、適宜、通信処理部２１、ＸＭＬ処理部２２、制御部２３およびドライバ２４が実現される。
【００５９】
起動後、ＵＩデータ解析部２２ｃは、所定の初期画面のＸＭＬテキストをユーザインタフェースデータ１５ｃから読み出して構文解析し、その結果に基づいてドライバ２４に指令を供給する。ドライバ２４は、その指令に従って、表示装置１１ａに初期画面を表示させる。
【００６０】
その後、入力装置１１ｂによりユーザ操作が検出されると、その操作情報がドライバ２４を介してＸＭＬ処理部２２に供給される。ＵＩデータ解析部２２ｃは、そのユーザ操作により画面遷移が必要であると判断すると、次の画面のＸＭＬテキストをユーザインタフェースデータ１５ｃから読み出して構文解析し、その結果に基づいてドライバ２４に指令を供給する。ドライバ２４は、その指令に従って、画面遷移を実行し、表示装置１１ａに次の画面を表示させる。
【００６１】
以後、同様にして、ユーザ操作または複合機１の状態変化に応じて必要なときに、画面遷移が実行される。
【００６２】
次に、上記複合機１におけるユーザインタフェース画面のカスタマイズについて説明する。カスタマイズは、ユーザまたはサービスマンが端末装置３を操作して行う。
【００６３】
ＸＭＬ処理部２２は、起動後、サービス定義データ１５ａを読み出し、サービス定義データ１５ａに基づくメッセージ生成部２２ａおよびメッセージ解析部２２ｂを実現する。このとき、ＸＭＬ処理部２２は、サービス定義データ１５ａから参照されているスキーマデータ１５ｂも併せて読み出す。
【００６４】
一方、端末装置３では、コンピュータ３３によりドライバプログラム３２ａなどが実行されることで、通信処理部４１およびドライバ４２が実現される。
【００６５】
その後、端末装置３において、キーボードなどの図示せぬ入力装置により所定のユーザ操作が検出されると、ユーザによるサービスの要求が発生したと判断され、ドライバ４２は、要求のメッセージを複合機１へ送信するための処理を実行する。
【００６６】
ドライバ４２は、ユーザの要求の対象であるサービスについてのサービス定義データ１５ａおよびスキーマデータ１５ｂの全部または一部を複合機１から取得する。このとき、ドライバ４２は、通信処理部４１を制御して、複合機１の所定のＵＲＬへＨＴＴＰコマンドを送信し、その応答として、サービス定義データ１５ａおよびスキーマデータ１５ｂの全部または一部を取得する。例えば、ドライバ４２は、サービス定義データ１５ａおよびスキーマデータ１５ｂを含むデータファイルのＵＲＬを指定してもよいし、データ１５ａ，１５ｂの必要な部分のみを抽出し返信するＣＧＩ（Common Gate Interface）のＵＲＬを指定してもよい。複合機１の通信処理部２１が、ＨＴＴＰサーバ機能を有しており、そのＨＴＴＰコマンドを受信し、応答を端末装置３へ送信する。
【００６７】
ドライバ４２は、取得したサービス定義データ１５ａおよびスキーマデータ１５ｂの全部または一部に基づいて、そのサービスに使用されるメッセージの構文と、メッセージ内で使用されるパラメータの許容値を特定する。端末装置３のドライバは、ユーザによるサービスの要求が発生すると、そのサービスに関連付けられているメッセージの名称を特定し、そのメッセージの名称に対応するメッセージの構文およびパラメータの許容値を、サービス定義データ１５ａおよびスキーマデータ１５ｂに基づいて特定する。
【００６８】
そして、ドライバ４２は、メッセージ内で使用されるパラメータの許容値のリストを、図示せぬ表示装置に表示させ、その後、図示せぬ入力装置に対するユーザの操作に基づきリストからパラメータの値を選択し、そのパラメータの値を使用した要求のメッセージを生成する。
【００６９】
例えば、ボタンを追加するための、ユーザインタフェース画面の編集サービスの要求が発生した場合、ドライバ４２が、図２および図３に示すサービス定義データ１５ａおよびスキーマデータ１５ｂの一部または全部を取得すると、メッセージ「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」であることを特定する。そして、ドライバ４２は、パラメータおよび属性項目の値の入力を促す画面を図示せぬ表示装置に表示させる。その後、パラメータおよび属性項目の値についてのテキスト入力が図示せぬ入力装置により検出されると、ドライバ４２は、取得したサービス定義データ１５ａおよびスキーマデータ１５ｂに従って、また、選択されたパラメータの値を使用して、図４に示すような要求のメッセージを生成する。この場合、生成されるメッセージは、ＳＯＡＰメッセージである。なお、図４は、そのＳＯＡＰメッセージのＳＯＡＰエンベロープ部分のみを示している。
【００７０】
このように、端末装置３は、サービスを実行する複合機１からサービス定義データ１５ａなどを取得するため、それらのデータを予め端末装置３内に格納しておく必要がない。例えば、複合機１の機種によってメッセージの構文が異なる場合でも、複合機１の機種毎にサービス定義データ１５ａなどを端末装置３に格納しておく必要がないため、サービス定義データ１５ａなどの管理を複合機１について行うだけでよい。
【００７１】
そして、ドライバ４２は、通信処理部４１に、生成した要求のメッセージを複合機１へ送信させる。このとき、通信処理部４１は、通信装置３１を制御して、ＨＴＴＰでそのメッセージをコンピュータネットワーク２へ送信させる。送信されたメッセージは、コンピュータネットワーク２から通信装置１６を介して複合機１の通信処理部２１により受信される。通信処理部２１は、そのメッセージを受信すると、ＸＭＬ処理部２２に供給する。
【００７２】
ＸＭＬ処理部２２のメッセージ解析部２２ｂは、サービス定義データ１５ａおよびスキーマデータ１５ｂに従って、そのメッセージの構文解析を行い、そのメッセージを使用するサービスを特定し、メッセージによる要求およびパラメータ値を制御部２３に通知する。例えば、メッセージ解析部２２ｂは、図４に示すメッセージを供給されると、そのメッセージがユーザインタフェース画面編集サービスのsend_requestメッセージであること特定するとともに、メッセージ内で指定されているパラメータの値を特定する。そして、メッセージ解析部２２ｂは、ユーザインタフェース画面編集サービスのsend_requestメッセージの受信およびメッセージ内で指定されているパラメータの値を制御部２３に通知する。
【００７３】
制御部２３は、その通知を受け取ると、内部装置を制御し、要求されたサービスを実行させる。例えば、制御部２３は、ユーザインタフェース画面編集サービスのsend_requestメッセージの受信およびメッセージ内で指定されているパラメータの値の通知を受け取ると、データ格納装置１５に格納されているユーザインタフェースデータ１５ｃの編集を実行する。このとき、制御部２３は、構成部品を追加または更新する場合には、受信した要求メッセージ内に記述されている構成部品の記述（ＸＭＬ要素）を、その要求メッセージで指定された画面の構成部品についてのデータとして、そのまま、ユーザインタフェースデータ１５ｃに書き込む。例えば、図１１に示すメッセージにおける、event_button要素およびprocedure_string要素の記述は、編集、変換などをすることなく、そのまま、ユーザインタフェースデータ１５ｃに追加される。
【００７４】
そして、制御部２３は、サービスの実行が完了したことを検出すると、サービスの結果をＸＭＬ処理部２２のメッセージ生成部２２ａに通知する。
【００７５】
メッセージ生成部２２ａは、サービスの結果の通知を制御部２３から受け取ると、サービス定義データ１５ａおよびスキーマデータ１５ｂに従って応答のメッセージを生成する。
【００７６】
例えば、メッセージ生成部２２ａは、ユーザインタフェース画面編集サービスの結果の通知として、サービス定義データ１５ａにおけるユーザインタフェース画面編集サービスのsend_responseメッセージ（つまり、応答メッセージ）の送信要求を受け取ると、サービス定義データ１５ａおよびスキーマデータ１５ｂに基づいて、応答のＳＯＡＰメッセージの構文を特定し、応答のためのＳＯＡＰメッセージを生成する。例えば、要求されたユーザインタフェース画面編集サービスが成功したことが制御部２３から通知された場合には、例えば図５に示すようなＳＯＡＰメッセージが生成される。なお、図５は、そのＳＯＡＰメッセージのＳＯＡＰエンベロープ部分のみを示している。
【００７７】
そして、ＸＭＬ処理部２２は、通信処理部２１に、生成した応答のメッセージを端末装置３へ送信させる。このとき、通信処理部２１は、通信装置１６を制御して、ＨＴＴＰでそのメッセージをコンピュータネットワーク２へ送信させる。送信されたメッセージは、コンピュータネットワーク２から通信装置３１を介して端末装置３の通信処理部４１により受信される。通信処理部４１は、そのメッセージを受信すると、ドライバ４２に供給する。ドライバ４２は、その応答メッセージから、要求したサービスに対する結果を検出する。ドライバ４２は、その結果に応じた処理を実行する。例えば、ドライバ４２は、サービスの結果を図示せぬ表示装置に表示させたりする。また、例えば、ユーザインタフェース画面編集サービスの場合、複合機１において、応答メッセージに、編集後のユーザインタフェース画面についてのユーザインタフェースデータ１５ｃを含め、端末装置３のドライバ４２は、そのメッセージに含まれるユーザインタフェースデータ１５ｃに基づき、編集後のユーザインタフェース画面を表示させるようにしてもよい。
【００７８】
なお、ユーザインタフェース画面編集サービスにおいて、テンプレートファイル１５ｄを使用して、ユーザインタフェース画面を追加または更新するようにしてもよい。その場合、例えば、ユーザインタフェース画面とテンプレートファイル１５ｄを指定した要求メッセージが端末装置３から複合機１へ送信される。複合機１では、指定されたユーザインタフェース画面についてのユーザインタフェースデータ１５ｃが、テンプレートファイル１５ｄに含まれるデータで追加または更新される。このときの要求メッセージの構文定義もサービス定義データ１５ａおよびスキーマデータ１５ｂに含まれている。その後、上述のようにして、そのユーザインタフェース画面内の構成部品を編集することが可能である。
【００７９】
以上のように、上記実施の形態によれば、複合機１は、ユーザインタフェース画面を表示する表示装置１１ａと、ユーザインタフェース画面内の構成部品の属性をテキストで記述したユーザインタフェースデータ１５ｃを格納するデータ格納装置１５と、ユーザインタフェースデータ１５ｃを構文解析して構成部品の属性を特定し、構成部品の属性を反映させたユーザインタフェース画面を表示装置１１ａに表示させるＵＩデータ解析部２２ｃとを備える。
【００８０】
これにより、ユーザインタフェースデータ１５ｃを編集することでユーザインタフェースをカスタマイズすることができる。したがって、複合機１のユーザインタフェース画面を簡単にカスタマイズすることができる。
【００８１】
また、上記実施の形態によれば、複合機１は、ユーザインタフェースデータ１５ｃについて編集サービスのインタフェース部分の構文定義とそのサービスに使用するメッセージのプロトコルの指定とを含むサービス定義データに従ってメッセージの構文解析を行うＸＭＬ処理部２２と、ＸＭＬ処理部２２の構文解析の結果によりメッセージから得られる要求に従って編集サービスを実行する制御部２３とを備える。
【００８２】
これにより、複合機１が、サービスの１つとして、ユーザインタフェースデータ１５ｃの編集を行うので、外部からのメッセージによって、複合機１を直接操作することなく、ユーザインタフェースデータ１５ｃを編集することができる。したがって、複合機１のユーザインタフェース画面を簡単にカスタマイズすることができる。
【００８３】
また、上記実施の形態によれば、複合機１では、ユーザインタフェースデータ１５ｃおよびメッセージは、ＸＭＬで記述されており、制御部２３は、メッセージ処理部２２ｂで抽出された構成部品の属性のＸＭＬテキストでユーザインタフェースデータ１５ｃを更新する。
【００８４】
これにより、ユーザインタフェースデータ１５ｃを更新する際に、メッセージからユーザインタフェースデータ１５ｃへの変換が不要となる。
【００８５】
また、上記実施の形態によれば、端末装置３では、ドライバ４２は、スキーマデータ１５ｂの一部または全部を複合機１から取得して構成部品の属性の１または複数の項目を特定し、通信処理部４１は、ドライバ４２により特定された１または複数の項目の一部または全部に値を設定するメッセージを送信する。
【００８６】
これにより、端末装置３に予め構成部品の属性項目を保持しておかなくても、カスタマイズを実行することができる。
【００８７】
また、上記実施の形態によれば、端末装置３では、ドライバ４２は、スキーマデータ１５ｂの一部または全部を複合機１から取得して構成部品の属性に対する１または複数の許容値を特定し、通信処理部４１は、ドライバ４２により特定された１または複数の許容値から選択された値をその構成部品の属性に設定するメッセージを送信する。
【００８８】
これにより、端末装置３に予め構成部品の属性の許容値を保持しておかなくても、カスタマイズを実行することができる。
【００８９】
また、上記実施の形態によれば、ユーザインタフェースデータ１５ｃおよびメッセージは、ＸＭＬで記述されており、スキーマデータ１５ｂは、ＸＭＬスキーマで記述されたＸＭＬデータであり、制御部２３は、ＸＭＬ処理部２２で抽出された構成部品の属性のＸＭＬテキストでユーザインタフェースデータを更新する。
【００９０】
これにより、端末装置３に予めメッセージの構文定義を保持しておかなくても、カスタマイズを実行することができる。
【００９１】
また、上記実施の形態によれば、データ格納装置１５は、ユーザインタフェース画面のデフォルトデータをそれぞれ含む複数のテンプレートファイル１５ｄを格納する。端末装置３の通信処理部４１は、複数のテンプレートファイル１５ｄのうちの１つのテンプレートファイルを指定し、指定したテンプレートファイルのデフォルトデータを、ユーザインタフェースデータ１５ｃにおける１つのユーザインタフェース画面のデータとするメッセージを送信する。
【００９２】
これにより、テンプレートを使用することで、複雑なカスタマイズを容易に実行することができる。
【００９３】
なお、上述の実施の形態は、本発明の好適な例であるが、本発明は、これらに限定されるものではなく、本発明の要旨を逸脱しない範囲において、種々の変形、変更が可能である。
【００９４】
例えば、上記実施の形態では、画像形成装置の一例として複合機について説明しているが、プリンタ、ファクシミリ機、スキャナなどであってもよい。
【００９５】
また、上記実施の形態では、一連の複数のサービスからなるユースケースごとに、サービス定義データ１５ａを作成するようにしてもよい。
【００９６】
また、上記実施の形態では、サービス定義データ１５ａは、ＷＳＤＬで記述されているが、同様の記述が可能な他の言語で記述されていてもよい。また、スキーマデータ１５ｂおよびサービス定義データ１５ａ内でのスキーマの記述は、ＸＭＬスキーマ以外の言語で記述されていてもよい。ただし、その場合でも、サービス定義データ１５ａおよびスキーマデータ１５ｂは、簡単に編集可能なテキストデータとされる。
【００９７】
また、上記実施の形態では、サービス定義データ１５ａおよび／またはスキーマデータ１５ｂを、コンピュータネットワーク２を介してアクセス可能なサーバ装置に格納しておき、複合機１がそのサーバ装置からサービス定義データ１５ａおよび／またはスキーマデータ１５ｂをダウンロードして使用するようにしてもよい。
【００９８】
また、上記実施の形態において、サービス定義データ１５ａまたはスキーマデータ１５ｂに表示装置１１ａの属性情報（種類、解像度、表示色（カラー／モノクロ）など）を含めておき、カスタマイズ時に端末装置３においてその情報を表示可能としてもよい。例えば、表示装置１１ａの種類としては、２行２列液晶、ドットマトリクスディスプレイ、８．５インチフルカラー液晶パネルなどがある。
【００９９】
また、上記実施の形態において、procedure_string要素において、画面上のボタンなどのレイアウトを変更する動作のコマンドが記述されるようにしてもよい。そのコマンドが記述されている場合、ボタンが押下されると、ボタンなどのレイアウトが異なる別の画面が表示される。
【０１００】
また、上記実施の形態において、procedure_string要素に記述される動作のコマンドは、サービス定義データ１５ａで定義されているサービスの名称としてもよい。つまり、サービス定義データ１５ａにおいて、スキャンサービスなどの、複合機１の動作により提供されるサービスの構文定義を記述しておき、ボタンが操作されたときにその構文に従ったメッセージが操作パネル１１からＸＭＬ処理部２２へ送信されることで、そのサービスのための動作が複合機１により実行される。また、上記実施の形態において、procedure_string要素の子要素として、一連の動作をＸＭＬで記述するようにしてもよい。
【産業上の利用可能性】
【０１０１】
本発明は、例えば、複合機に適用可能である。
【図面の簡単な説明】
【０１０２】
【図１】本発明の実施の形態に係る画像形成装置としての複合機を含む画像形成システムの構成を示すブロック図である。
【図２】ＷＳＤＬで記述されたサービス定義データの一例を示す図である。
【図３】サービス定義データで参照されるスキーマデータの一例を示す図である。
【図４】ユーザインタフェース画面の一例を示す図である。
【図５】図４に示すユーザインタフェース画面を記述したユーザインタフェースデータの一部である。
【図６】テンプレートファイルに基づいて表示されるデフォルト画面の例である。
【図７】テンプレートファイルに基づいて表示されるデフォルト画面の例である。
【図８】テンプレートファイルに基づいて表示されるデフォルト画面の例である。
【図９】テンプレートファイルに基づいて表示されるデフォルト画面の例である。
【図１０】テンプレートファイルに基づいて表示されるデフォルト画面の例である。
【図１１】本発明の実施の形態における要求のメッセージの一例を示す図である。
【図１２】本発明の実施の形態における応答のメッセージの一例を示す図である。
【符号の説明】
【０１０３】
１  複合機（画像形成装置の一例）
２  コンピュータネットワーク（コンピュータネットワークの一例）
３  端末装置（端末装置の一例）
１１ａ  表示装置（表示装置の一例）
１５ａ  サービス定義データ（サービス定義データの一例）
１５ｂ  スキーマデータ（スキーマデータの一例）
１５ｃ  ユーザインタフェースデータ（ユーザインタフェースデータの一例）
１５ｄ  テンプレートファイル（テンプレートファイルの一例）
２１  通信処理部（送信手段の一例）
２２  ＸＭＬ処理部（メッセージ処理部の一例）
２２ｃ  ＵＩデータ解析部（ＵＩデータ解析部の一例）
２３  制御部（制御部の一例）
【図１】
2010050620.tif 000003
【図２】
2010050620.tif 000004
【図３】
2010050620.tif 000005
【図４】
2010050620.tif 000006
【図５】
2010050620.tif 000007
【図６】
2010050620.tif 000008
【図７】
2010050620.tif 000009
【図８】
2010050620.tif 000010
【図９】
2010050620.tif 000011
【図１０】
2010050620.tif 000012
【図１１】
2010050620.tif 000013
【図１２】
2010050620.tif 000014