(57)【特許請求の範囲】
【請求項１】
アプリケーションを実行する複数の情報処理装置と画像形成装置とを有し、少なくとも、ＪＤＦコードで記述された印刷ジョブが前記複数の情報処理装置から前記画像形成装置へ送信され、かつ、ＪＭＦコードで記述されたメッセージが前記複数の情報処理装置と前記画像形成装置との間で送受信されることが可能な画像形成システムにおける通信制御方法であって、
前記複数の情報処理装置のいずれかから前記画像形成装置へ送信された前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかの記述に基づいてアプリケーションを特定する段階（ａ）と、
前記印刷ジョブに付加された、前記印刷ジョブごとに割り振られる任意値からなる動的値についての、前記印刷ジョブの記述の規則を、前記アプリケーションごとに、前記動的値に関連付けされた動作とともに管理する段階（ｂ）と、
前記印刷ジョブについて前記段階（ａ）において特定されたアプリケーションについて前記段階（ｂ）において管理されている前記規則に従って前記印刷ジョブを解析することにより前記動的値を認識するとともに、認識された前記動的値に対し前記段階（ｂ）において管理された前記動的値に関連付けされた動作を行う段階（ｃ）と、
を有することを特徴とする画像形成システムにおける通信制御方法。
【請求項２】
前記段階（ｃ）において認識された前記動的値を管理する段階（ｄ）をさらに有し、
前記段階（ｃ）において行われる前記動作には、
前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかが前記画像形成装置により受信された際、前記段階（ｃ）において認識された前記動的値を前記段階（ｄ）において保存させることにより管理させる動作と、
前記段階（ａ）において特定されたアプリケーションを実行する前記情報処理装置へ、前記印刷ジョブに対する応答または通知を目的とする前記メッセージを送信する際、前記段階（ｄ）において管理されている前記動的値を、前記印刷ジョブに対する前記メッセージに付加する動作と、が含まれることを特徴とする請求項１に記載の画像形成システムにおける通信制御方法。
【請求項３】
前記段階（ｄ）は、前記段階（ｃ）において認識された前記動的値ごとにユニークな内部ジョブＩＤをさらに付与するとともに、前記動的値を前記動的値に付与された前記内部ジョブＩＤと組み合わせて管理し、
前記段階（ｃ）において行われる前記動作には、
前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかが前記画像形成装置により受信された際、前記段階（ｃ）において認識された前記動的値を前記内部ジョブＩＤと組み合わせて前記段階（ｄ）において保存させることにより管理させる動作と、
前記段階（ａ）において特定されたアプリケーションを実行する前記情報処理装置へ、前記印刷ジョブに対する応答または通知を目的とする前記メッセージを送信する際、前記印刷ジョブから認識した前記動的値と前記動的値に付与された内部ジョブＩＤとの組合せが前記段階（ｄ）において管理されている前記組合せと合致する場合に、前記動的値を、前記印刷ジョブに対する前記メッセージに付加する動作と、が含まれることを特徴とする請求項２に記載の画像形成シスムにおける通信制御方法。
【請求項４】
固定値である静的値についての、前記メッセージの記述の規則を、前記アプリケーションごとに、前記静的値に関連付けされた動作とともに管理する段階（ｅ）をさらに有し、
前記段階（ｃ）は、前記段階（ａ）において特定されたアプリケーションを実行する前記情報処理装置へ、前記印刷ジョブに対する応答または通知を目的とする前記メッセージを送信する際、前記特定されたアプリケーションについて前記段階（ｅ）において管理されている前記動作を前記規則に従ってさらに行うことを特徴とする請求項１〜３のいずれか一項に記載の画像形成システムにおける通信制御方法。
【請求項５】
前記アプリケーションを特定するための、前記印刷ジョブまたは前記印刷ジョブに関連する前記メッセージの記述の規則と前記アプリケーションとの関連付けを管理する段階（ｆ）をさらに有し、
前記段階（ａ）は、前記段階（ｆ）において管理された前記規則に従い前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかを解析することで前記アプリケーションを特定し、
前記段階（ｂ）、前記段階（ｅ）および前記段階（ｆ）は前記規則および前記動作を、不揮発性の記録媒体に保存することにより、独立に管理することを特徴とする請求項４に記載の画像形成システムにおける通信制御方法。
【請求項６】
アプリケーションを実行する複数の情報処理装置と画像形成装置とを有し、少なくとも、ＪＤＦコードで記述された印刷ジョブが前記複数の情報処理装置から前記画像形成装置へ送信され、かつ、ＪＭＦコードで記述されたメッセージが前記複数の情報処理装置と前記画像形成装置との間で送受信されることが可能な画像形成システム用プログラムであって、
前記複数の情報処理装置のいずれかから前記画像形成装置へ送信された前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかの記述に基づいてアプリケーションを特定する手順（ａ）と、
前記印刷ジョブに付加された、前記印刷ジョブごとに割り振られる任意値からなる動的値についての、前記印刷ジョブの記述の規則を、前記アプリケーションごとに、前記動的値に関連付けされた動作とともに管理する手順（ｂ）と、
前記印刷ジョブについて前記手順（ａ）において特定されたアプリケーションについて前記手順（ｂ）において管理されている前記規則に従って前記印刷ジョブを解析することにより前記動的値を認識するとともに、認識された前記動的値に対し前記手順（ｂ）により管理された前記動的値に関連付けされた動作を行う手順（ｃ）と、
を有する手順を前記画像形成システムに実行させるためのプログラム。
【請求項７】
前記手順は、
前記手順（ｃ）において認識された前記動的値を管理する手順（ｄ）をさらに有し、
前記手順（ｃ）において行われる前記動作には、
前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかが前記画像形成装置により受信された際、前記手順（ｃ）において認識された前記動的値を前記手順（ｄ）において保存させることにより管理させる動作と、
前記手順（ａ）において特定されたアプリケーションを実行する前記情報処理装置へ、前記印刷ジョブに対する応答または通知を目的とする前記メッセージを送信する際、前記手順（ｄ）において管理されている前記動的値を、前記印刷ジョブに対する前記メッセージに付加する動作と、が含まれることを特徴とする請求項６に記載のプログラム。
【請求項８】
前記手順（ｄ）は、前記手順（ｃ）において認識された前記動的値ごとにユニークな内部ジョブＩＤをさらに付与するとともに、前記動的値を前記動的値に付与された前記内部ジョブＩＤと組み合わせて管理し、
前記手順（ｃ）において行われる前記動作には、
前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかが前記画像形成装置により受信された際、前記手順（ｃ）において認識された前記動的値を前記内部ジョブＩＤと組み合わせて前記手順（ｄ）において保存させることにより管理させる動作と、
前記手順（ａ）において特定されたアプリケーションを実行する前記情報処理装置へ、前記印刷ジョブに対する応答または通知を目的とする前記メッセージを送信する際、前記印刷ジョブから認識した前記動的値と前記動的値に付与された内部ジョブＩＤとの組合せが前記手順（ｄ）において管理されている前記組合せと合致する場合に、前記動的値を、前記印刷ジョブに対する前記メッセージに付加する動作と、が含まれることを特徴とする請求項７に記載のプログラム。
【請求項９】
前記手順は、
固定値である静的値についての、前記メッセージの記述の規則を、前記アプリケーションごとに、前記静的値に関連付けされた動作とともに管理する手順（ｅ）をさらに有し、
前記手順（ｃ）は、前記手順（ａ）において特定されたアプリケーションを実行する前記情報処理装置へ、前記印刷ジョブに対する応答または通知を目的とする前記メッセージを送信する際、前記特定されたアプリケーションについて前記手順（ｅ）において管理されている前記動作を前記規則に従ってさらに行うことを特徴とする請求項６〜８のいずれか一項に記載のプログラム。
【請求項１０】
前記手順は、
前記アプリケーションを特定するための、前記印刷ジョブまたは前記印刷ジョブに関連する前記メッセージの記述の規則と前記アプリケーションとの関連付けを管理する手順（ｆ）をさらに有し、
前記手順（ａ）は、前記手順（ｆ）において管理された前記規則に従い前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかを解析することで前記アプリケーションを特定し、
前記手順（ｂ）、前記手順（ｅ）および前記手順（ｆ）は前記規則および前記動作を、不揮発性の記録媒体に保存することにより、独立に管理することを特徴とする請求項９に記載のプログラム。
【請求項１１】
請求項６〜１０のいずれか一項に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１２】
アプリケーションを実行する複数の情報処理装置と画像形成装置とを有し、少なくとも、ＪＤＦコードで記述された印刷ジョブが前記複数の情報処理装置から前記画像形成装置へ送信され、かつ、ＪＭＦコードで記述されたメッセージが前記複数の情報処理装置と前記画像形成装置との間で送受信されることが可能な画像形成システムであって、
前記複数の情報処理装置のいずれかから前記画像形成装置へ送信された前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかの記述に基づいてアプリケーションを特定する特定手段と、
前記印刷ジョブに付加された、前記印刷ジョブごとに割り振られる任意値からなる動的値についての、前記印刷ジョブの記述の規則を、前記アプリケーションごとに、前記動的値に関連付けされた動作とともに管理する第１管理手段と、
前記印刷ジョブについて前記特定手段により特定されたアプリケーションについて前記第１管理手段により管理されている前記規則に従って前記印刷ジョブを解析することにより前記動的値を認識するとともに、認識された前記動的値に対し前記第１管理手段により管理された前記動的値に関連付けされた動作を行う動作手段と、
を有することを特徴とする画像形成システム。
【請求項１３】
前記動作手段により認識された前記動的値を管理する第２管理手段をさらに有し、
前記動作手段が行う前記動作には、
前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかが前記画像形成装置により受信された際、前記動作手段により認識された前記動的値を第２管理手段に保存させることにより管理させる動作と、
前記特定手段により特定されたアプリケーションを実行する前記情報処理装置へ、前記印刷ジョブに対する応答または通知を目的とする前記メッセージを送信する際、前記第２管理手段により管理されている前記動的値を、前記印刷ジョブに対する前記メッセージに付加する動作と、が含まれることを特徴とする請求項１２に記載の画像形成システム。
【請求項１４】
前記第２管理手段は、前記動作手段により認識された前記動的値ごとにユニークな内部ジョブＩＤをさらに付与するとともに、前記動的値を前記動的値に付与された前記内部ジョブＩＤと組み合わせて管理し、
前記動作手段が行う前記動作には、
前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかが前記画像形成装置により受信された際、前記動作手段により認識された前記動的値を前記内部ジョブＩＤと組み合わせて第２管理手段に保存させることにより管理させる動作と、
前記特定手段により特定されたアプリケーションを実行する前記情報処理装置へ、前記印刷ジョブに対する応答または通知を目的とする前記メッセージを送信する際、前記印刷ジョブから認識した前記動的値と前記動的値に付与された内部ジョブＩＤとの組合せが前記第２管理手段により管理されている前記組合せと合致する場合に、前記動的値を、前記印刷ジョブに対する前記メッセージに付加する動作と、が含まれることを特徴とする請求項１３に記載の画像形成シスム。
【請求項１５】
固定値である静的値についての、前記メッセージの記述の規則を、前記アプリケーションごとに、前記静的値に関連付けされた動作とともに管理する第３管理手段をさらに有し、
前記動作手段は、前記特定手段により特定されたアプリケーションを実行する前記情報処理装置へ、前記印刷ジョブに対する応答または通知を目的とする前記メッセージを送信する際、前記特定されたアプリケーションについて前記第３管理手段により管理されている前記動作を前記規則に従ってさらに行うことを特徴とする請求項１２〜１４のいずれか一項に記載の画像形成システム。
【請求項１６】
前記アプリケーションを特定するための、前記印刷ジョブまたは前記印刷ジョブに関連する前記メッセージの記述の規則と前記アプリケーションとの関連付けを管理する第４管理手段をさらに有し、
前記特定手段は、前記第４管理手段により管理された前記規則に従い前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかを解析することで前記アプリケーションを特定し、
前記第１管理手段、前記第３管理手段および第４管理手段は前記規則および前記動作を、不揮発性の記録媒体に保存することにより、独立に管理することを特徴とする請求項１５に記載の画像形成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成システムにおける通信制御方法、画像形成システム用プログラム、画像形成システム用プログラムが記録された記録媒体、および画像形成システムに関する。
【背景技術】
【０００２】
一般に、印刷工程における指示書である印刷ジョブにおいて印刷設定を記述するための標準のフォーマットとして、ＪＤＦ（Ｊｏｂ  Ｄｅｆｉｎｉｔｉｏｎ  Ｆｏｒｍａｔ）が用いられている。また、印刷工程において装置間で送受信するメッセージを記述するためのフォーマットとしてＪＭＦ（Ｊｏｂ  Ｍｅｓｓａｇｉｎｇ  Ｆｏｒｍａｔ）が用いられている。
【０００３】
ＪＤＦおよびＪＭＦは標準仕様であるが、機能等の記述において複数の表現方法が許容されている。例えば、ＪＤＦは、印刷設定における部数の設定に関して複数の表現方法が許容されている。従って、画像形成装置においては、適切な印刷を行うために、接続相手であるアプリケーションごとにソフトウェアの修正等を行うことにより、ＪＤＦによる記述を解析する必要がある。
【０００４】
このような問題を解決するための従来技術としては次のようなものがある。すなわち、アプリケーションごとのＪＤＦ解析データをサーバーに記憶させておき、画像形成装置は、受信した印刷ジョブの記述に基づいてアプリケーションを特定し、特定したアプリケーションを解析するためのＪＤＦ解析データをサーバーから取得する。そして、取得したＪＤＦ解析データにより印刷ジョブのＪＤＦによる記述を解析する。これにより、各アプリケーションに対応して適切な印刷を可能にするとともに、アプリケーションの増加に伴う画像形成装置におけるソフトウェアの修正または変更等の対応を不要にするという（特許文献１）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１３−８８９９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、ＪＤＦによる印刷ジョブを送信したアプリケーションに対し、画像形成装置からＪＭＦによるメッセージを送信する際、ジョブＩＤ等ジョブ投入後に印刷ジョブごとに値が確定する動的値のＪＭＦへの追加が可能かどうかは、アプリケーションごとに異なる。すなわち、動的値がＪＭＦに追加されることにより、印刷ジョブごとに、当該印刷ジョブに対するＪＭＦによるメッセージを送信することができるアプリケーションが存在する一方、動的値がＪＭＦに追加されることによりハングアップする可能性のあるアプリケーションも存在する。
【０００７】
そして、ＪＭＦへ印刷ジョブごとに値が変化する動的値を追加すること、および動的値の追加の有無をアプリケーションごとに切り替えることは、上記従来技術によっては不可能であり、これを実現するためには、画像形成装置にて動作するソフトウェアを修正する必要がある。
【０００８】
本発明は、このような問題を解決するためになされたものである。すなわち、複数のアプリケーションのいずれかにより送信された印刷ジョブ等に基づいてアプリケーションを特定し、印刷ジョブに付加された動的値に関する印刷ジョブの記述の規則をアプリケーションごとに動的値に関連付けされた動作とともに管理する。そして、特定したアプリケーションについて管理している規則に従って印刷ジョブを解析することにより動的値を認識するとともに、認識した動的値に対し関連付けした動作を行う。これにより、画像形成装置のソフトウェアを修正することなく、迅速かつ容易に、印刷ジョブを送信したアプリケーションごとに、ＪＭＦによるメッセージへのジョブＩＤ等の動的値の追加の有無の切り替えを可能にすることを目的とする。
【課題を解決するための手段】
【０００９】
本発明の上記課題は、以下の手段によって解決される。
【００１０】
（１）アプリケーションを実行する複数の情報処理装置と画像形成装置とを有し、少なくとも、ＪＤＦコードで記述された印刷ジョブが前記複数の情報処理装置から前記画像形成装置へ送信され、かつ、ＪＭＦコードで記述されたメッセージが前記複数の情報処理装置と前記画像形成装置との間で送受信されることが可能な画像形成システムにおける通信制御方法であって、前記複数の情報処理装置のいずれかから前記画像形成装置へ送信された前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかの記述に基づいてアプリケーションを特定する段階（ａ）と、前記印刷ジョブに付加された、前記印刷ジョブごとに割り振られる任意値からなる動的値についての、前記印刷ジョブの記述の規則を、前記アプリケーションごとに、前記動的値に関連付けされた動作とともに管理する段階（ｂ）と、前記印刷ジョブについて前記段階（ａ）において特定されたアプリケーションについて前記段階（ｂ）において管理されている前記規則に従って前記印刷ジョブを解析することにより前記動的値を認識するとともに、認識された前記動的値に対し前記段階（ｂ）において管理された前記動的値に関連付けされた動作を行う段階（ｃ）と、を有する画像形成システムにおける通信制御方法。
【００１１】
（２）前記段階（ｃ）において認識された前記動的値を管理する段階（ｄ）をさらに有し、前記段階（ｃ）において行われる前記動作には、前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかが前記画像形成装置により受信された際、前記段階（ｃ）において認識された前記動的値を前記段階（ｄ）において保存させることにより管理させる動作と、前記段階（ａ）において特定されたアプリケーションを実行する前記情報処理装置へ、前記印刷ジョブに対する応答または通知を目的とする前記メッセージを送信する際、前記段階（ｄ）において管理されている前記動的値を、前記印刷ジョブに対する前記メッセージに付加する動作と、が含まれる上記（１）に記載の画像形成システムにおける通信制御方法。
【００１２】
（３）前記段階（ｄ）は、前記段階（ｃ）において認識された前記動的値ごとにユニークな内部ジョブＩＤをさらに付与するとともに、前記動的値を前記動的値に付与された前記内部ジョブＩＤと組み合わせて管理し、前記段階（ｃ）において行われる前記動作には、前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかが前記画像形成装置により受信された際、前記段階（ｃ）において認識された前記動的値を前記内部ジョブＩＤと組み合わせて前記段階（ｄ）において保存させることにより管理させる動作と、前記段階（ａ）において特定されたアプリケーションを実行する前記情報処理装置へ、前記印刷ジョブに対する応答または通知を目的とする前記メッセージを送信する際、前記印刷ジョブから認識した前記動的値と前記動的値に付与された内部ジョブＩＤとの組合せが前記段階（ｄ）において管理されている前記組合せと合致する場合に、前記動的値を、前記印刷ジョブに対する前記メッセージに付加する動作と、が含まれる上記（２）に記載の画像形成シスムにおける通信制御方法。
【００１３】
（４）固定値である静的値についての、前記メッセージの記述の規則を、前記アプリケーションごとに、前記静的値に関連付けされた動作とともに管理する段階（ｅ）をさらに有し、前記段階（ｃ）は、前記段階（ａ）において特定されたアプリケーションを実行する前記情報処理装置へ、前記印刷ジョブに対する応答または通知を目的とする前記メッセージを送信する際、前記特定されたアプリケーションについて前記段階（ｅ）において管理されている前記動作を前記規則に従ってさらに行う上記（１）〜（３）のいずれか一項に記載の画像形成システムにおける通信制御方法。
【００１４】
（５）前記アプリケーションを特定するための、前記印刷ジョブまたは前記印刷ジョブに関連する前記メッセージの記述の規則と前記アプリケーションとの関連付けを管理する段階（ｆ）をさらに有し、前記段階（ａ）は、前記段階（ｆ）において管理された前記規則に従い前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかを解析することで前記アプリケーションを特定し、前記段階（ｂ）、前記段階（ｅ）および前記段階（ｆ）は前記規則および前記動作を、不揮発性の記録媒体に保存することにより、独立に管理する上記（４）に記載の画像形成システムにおける通信制御方法。
【００１５】
（６）アプリケーションを実行する複数の情報処理装置と画像形成装置とを有し、少なくとも、ＪＤＦコードで記述された印刷ジョブが前記複数の情報処理装置から前記画像形成装置へ送信され、かつ、ＪＭＦコードで記述されたメッセージが前記複数の情報処理装置と前記画像形成装置との間で送受信されることが可能な画像形成システム用プログラムであって、前記複数の情報処理装置のいずれかから前記画像形成装置へ送信された前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかの記述に基づいてアプリケーションを特定する手順（ａ）と、前記印刷ジョブに付加された、前記印刷ジョブごとに割り振られる任意値からなる動的値についての、前記印刷ジョブの記述の規則を、前記アプリケーションごとに、前記動的値に関連付けされた動作とともに管理する手順（ｂ）と、前記印刷ジョブについて前記手順（ａ）において特定されたアプリケーションについて前記手順（ｂ）において管理されている前記規則に従って前記印刷ジョブを解析することにより前記動的値を認識するとともに、認識された前記動的値に対し前記手順（ｂ）により管理された前記動的値に関連付けされた動作を行う手順（ｃ）と、を有する手順を前記画像形成システムに実行させるためのプログラム。
【００１６】
（７）前記手順は、前記手順（ｃ）において認識された前記動的値を管理する手順（ｄ）をさらに有し、前記手順（ｃ）において行われる前記動作には、前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかが前記画像形成装置により受信された際、前記手順（ｃ）において認識された前記動的値を前記手順（ｄ）において保存させることにより管理させる動作と、前記手順（ａ）において特定されたアプリケーションを実行する前記情報処理装置へ、前記印刷ジョブに対する応答または通知を目的とする前記メッセージを送信する際、前記手順（ｄ）において管理されている前記動的値を、前記印刷ジョブに対する前記メッセージに付加する動作と、が含まれる上記（６）に記載のプログラム。
【００１７】
（８）前記手順（ｄ）は、前記手順（ｃ）において認識された前記動的値ごとにユニークな内部ジョブＩＤをさらに付与するとともに、前記動的値を前記動的値に付与された前記内部ジョブＩＤと組み合わせて管理し、前記手順（ｃ）において行われる前記動作には、前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかが前記画像形成装置により受信された際、前記手順（ｃ）において認識された前記動的値を前記内部ジョブＩＤと組み合わせて前記手順（ｄ）において保存させることにより管理させる動作と、前記手順（ａ）において特定されたアプリケーションを実行する前記情報処理装置へ、前記印刷ジョブに対する応答または通知を目的とする前記メッセージを送信する際、前記印刷ジョブから認識した前記動的値と前記動的値に付与された内部ジョブＩＤとの組合せが前記手順（ｄ）において管理されている前記組合せと合致する場合に、前記動的値を、前記印刷ジョブに対する前記メッセージに付加する動作と、が含まれる上記（７）に記載のプログラム。
【００１８】
（９）前記手順は、固定値である静的値についての、前記メッセージの記述の規則を、前記アプリケーションごとに、前記静的値に関連付けされた動作とともに管理する手順（ｅ）をさらに有し、前記手順（ｃ）は、前記手順（ａ）において特定されたアプリケーションを実行する前記情報処理装置へ、前記印刷ジョブに対する応答または通知を目的とする前記メッセージを送信する際、前記特定されたアプリケーションについて前記手順（ｅ）において管理されている前記動作を前記規則に従ってさらに行う上記（６）〜（８）のいずれか一項に記載のプログラム。
【００１９】
（１０）前記手順は、前記アプリケーションを特定するための、前記印刷ジョブまたは前記印刷ジョブに関連する前記メッセージの記述の規則と前記アプリケーションとの関連付けを管理する手順（ｆ）をさらに有し、前記手順（ａ）は、前記手順（ｆ）において管理された前記規則に従い前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかを解析することで前記アプリケーションを特定し、前記手順（ｂ）、前記手順（ｅ）および前記手順（ｆ）は前記規則および前記動作を、不揮発性の記録媒体に保存することにより、独立に管理する上記（９）に記載のプログラム。
【００２０】
（１１）上記（６）〜（１０）のいずれか一項に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【００２１】
（１２）アプリケーションを実行する複数の情報処理装置と画像形成装置とを有し、少なくとも、ＪＤＦコードで記述された印刷ジョブが前記複数の情報処理装置から前記画像形成装置へ送信され、かつ、ＪＭＦコードで記述されたメッセージが前記複数の情報処理装置と前記画像形成装置との間で送受信されることが可能な画像形成システムであって、前記複数の情報処理装置のいずれかから前記画像形成装置へ送信された前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかの記述に基づいてアプリケーションを特定する特定手段と、前記印刷ジョブに付加された、前記印刷ジョブごとに割り振られる任意値からなる動的値についての、前記印刷ジョブの記述の規則を、前記アプリケーションごとに、前記動的値に関連付けされた動作とともに管理する第１管理手段と、前記印刷ジョブについて前記特定手段により特定されたアプリケーションについて前記第１管理手段により管理されている前記規則に従って前記印刷ジョブを解析することにより前記動的値を認識するとともに、認識された前記動的値に対し前記第１管理手段により管理された前記動的値に関連付けされた動作を行う動作手段と、を有する画像形成システム。
【００２２】
（１３）前記動作手段により認識された前記動的値を管理する第２管理手段をさらに有し、前記動作手段が行う前記動作には、前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかが前記画像形成装置により受信された際、前記動作手段により認識された前記動的値を第２管理手段に保存させることにより管理させる動作と、前記特定手段により特定されたアプリケーションを実行する前記情報処理装置へ、前記印刷ジョブに対する応答または通知を目的とする前記メッセージを送信する際、前記第２管理手段により管理されている前記動的値を、前記印刷ジョブに対する前記メッセージに付加する動作と、が含まれる上記（１２）に記載の画像形成システム。
【００２３】
（１４）前記第２管理手段は、前記動作手段により認識された前記動的値ごとにユニークな内部ジョブＩＤをさらに付与するとともに、前記動的値を前記動的値に付与された前記内部ジョブＩＤと組み合わせて管理し、前記動作手段が行う前記動作には、前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかが前記画像形成装置により受信された際、前記動作手段により認識された前記動的値を前記内部ジョブＩＤと組み合わせて第２管理手段に保存させることにより管理させる動作と、前記特定手段により特定されたアプリケーションを実行する前記情報処理装置へ、前記印刷ジョブに対する応答または通知を目的とする前記メッセージを送信する際、前記印刷ジョブから認識した前記動的値と前記動的値に付与された内部ジョブＩＤとの組合せが前記第２管理手段により管理されている前記組合せと合致する場合に、前記動的値を、前記印刷ジョブに対する前記メッセージに付加する動作と、が含まれる上記（１３）に記載の画像形成シスム。
【００２４】
（１５）固定値である静的値についての、前記メッセージの記述の規則を、前記アプリケーションごとに、前記静的値に関連付けされた動作とともに管理する第３管理手段をさらに有し、前記動作手段は、前記特定手段により特定されたアプリケーションを実行する前記情報処理装置へ、前記印刷ジョブに対する応答または通知を目的とする前記メッセージを送信する際、前記特定されたアプリケーションについて前記第３管理手段により管理されている前記動作を前記規則に従ってさらに行う上記（１２）〜（１４）のいずれか一項に記載の画像形成システム。
【００２５】
（１６）前記アプリケーションを特定するための、前記印刷ジョブまたは前記印刷ジョブに関連する前記メッセージの記述の規則と前記アプリケーションとの関連付けを管理する第４管理手段をさらに有し、前記特定手段は、前記第４管理手段により管理された前記規則に従い前記印刷ジョブおよび前記印刷ジョブに関連する前記メッセージの少なくともいずれかを解析することで前記アプリケーションを特定し、前記第１管理手段、前記第３管理手段および第４管理手段は前記規則および前記動作を、不揮発性の記録媒体に保存することにより、独立に管理する上記（１５）に記載の画像形成システム。
【発明の効果】
【００２６】
複数のアプリケーションのいずれかにより送信された印刷ジョブに基づいてアプリケーションを特定し、印刷ジョブに付加された動的値に関する印刷ジョブの記述の規則をアプリケーションごとに動的値に関連付けされた動作とともに管理する。そして、特定したアプリケーションについて管理している規則に従って印刷ジョブを解析することにより動的値を認識するとともに、認識した動的値に対し関連付けした動作を行う。これにより、画像形成装置のソフトウェアを修正することなく、迅速かつ容易に、印刷ジョブを送信したアプリケーションごとに、ＪＭＦによるメッセージへのジョブＩＤ等の動的値の追加の有無を切り替えることができる。
【図面の簡単な説明】
【００２７】
【図１】本発明の実施形態に係る画像形成システムを示すブロック図である。
【図２】各情報処理装置の構成を示すブロック図である。
【図３】画像形成装置の構成を示すブロック図である。
【図４】画像形成装置の機能を示す機能ブロック図である。
【図５】アプリケーション特定テーブルと、情報処理装置から画像形成装置へ送信されるメッセージの例とを示す図である。
【図６】静的テーブルの説明図である。
【図７】メッセージのテンプレートと、静的テーブル制御部によりＪＤＦ動的テーブルに従い静的値に関連付けされた動作による処理が行われたメッセージを示す図である。
【図８】動的テーブルと、動的値であるジョブＩＤと、内部ジョブＩＤとの関連付けテーブルの説明図である。
【図９】ＪＤＦで記述された印刷ジョブの例を示す図である。
【図１０】メッセージのテンプレートと、静的テーブル制御部によりＪＭＦ動的テーブルに従い静的値に関連付けされた動作による処理が行われたメッセージを示す図である。
【図１１】情報処理装置から画像形成装置へ状態通知ＵＲＬを送信するためのメッセージの例と、状態通知ＵＲＬとアプリケーションとの関連付けテーブルとを示す図である。
【図１２】画像形成装置における通信制御方法のフローチャートを示す図である。
【図１３】図１２のフローチャートのステップＳ１２０２のサブルーチンフローチャートを示す図である。
【図１４】図１２のフローチャートのステップＳ１２０３のサブルーチンフローチャートを示す図である。
【図１５】図１２のフローチャートのステップＳ１２０５のサブルーチンフローチャートを示す図である。
【図１６】図１５のフローチャートのステップＳ１５０５のサブルーチンフローチャートを示す図である。
【図１７】図１２のステップＳ１２０８のサブルーチンフローチャートを示す図である。
【図１８】図１８は、状態通知制御部によって実施される通信制御方法のフローチャートを示す図である。
【発明を実施するための形態】
【００２８】
以下、図面を参照して、本発明の実施形態に係る画像形成システムにおける通信制御方法、画像形成システム用プログラム、画像形成システム用プログラムが記録された記録媒体、および画像形成システムについて詳細に説明する。
【００２９】
なお、本明細書においては、「ＪＤＦコード」および「ＪＭＦコード」という用語を単に「ＪＤＦ」および「ＪＭＦ」と記載して説明する。
【００３０】
図１は、本発明の実施形態に係る画像形成システムを示すブロック図である。
【００３１】
図１に示すように、画像形成システム１は、複数の情報処理装置２０Ａ、２０Ｂ、２０Ｃ、および画像形成装置１０を有する。
【００３２】
複数の情報処理装置２０Ａ、２０Ｂ、２０Ｃ、および画像形成装置１０はネットワーク３０を介して相互に通信可能に接続される。ネットワーク３０は、イーサネット（登録商標）、トークンリング、ＦＤＤＩ（Ｆｉｂｅｒ−Ｄｉｓｔｒｉｂｕｔｅｄ  Ｄａｔａ  Ｉｎｔｅｒｆａｃｅ）等の規格によりコンピュータやネットワーク機器同士を接続したＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、あるいは、ＬＡＮ同士を専用線で接続したＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）により構成されることができる。
【００３３】
情報処理装置２０Ａ、情報処理装置２０Ｂ、および情報処理装置２０Ｃにおいては、それぞれＪＤＦで記述された印刷ジョブ（以下、単に「印刷ジョブ」と称する）およびＪＭＦで記述されたメッセージ（以下、単に「メッセージ」と称する）を生成し送信するためのアプリケーションＡ、アプリケーションＢ、およびアプリケーションＣが動作している。各アプリケーションＡ、Ｂ、Ｃは、生成した印刷ジョブおよびメッセージを画像形成装置１０へ送信する。
【００３４】
印刷ジョブとは、画像形成装置２０に対する印刷命令の総称であり、印刷設定をＪＤＦで記述したジョブチケット、および印刷データが含まれる。印刷設定には、例えば、印刷する用紙の指定、印刷を行わせるプリンターの指定等の情報が含まれる。印刷データとは、印刷対象であるドキュメントのデータであり、イメージデータ、ベクタデータ（グラフィックスデータ）、またはテキストデータといった各種オブジェクトのデータが含まれる。
【００３５】
画像形成装置１０は、各アプリケーションＡ、Ｂ、Ｃから受信した印刷ジョブに対する応答または通知を目的とするメッセージを生成し、当該印刷ジョブを送信したいずれかのアプリケーションＡ、Ｂ、Ｃへ送信する。
【００３６】
なお、画像形成システム１は、単一の情報処理装置と画像形成装置１０により構成され、当該単一の情報処理装置において各アプリケーションＡ、Ｂ、Ｃを切り換えて動作されるようにしてもよい。
【００３７】
図２は、各情報処理装置の構成を示すブロック図である。
【００３８】
図２に示すように、各情報処理装置２０Ａ、２０Ｂ、２０Ｃは、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０２、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０３、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）２０４、表示部２０５、入力部２０６、および通信部２０７を備えており、これらは信号をやり取りするためのバス２０８を介して相互に接続される。
【００３９】
ＣＰＵ２０１は、プログラムに従って上記各部の制御や各種の演算処理を行う。
【００４０】
ＲＡＭ２０２は、作業領域として一時的にプログラムやデータを記憶する。
【００４１】
ＲＯＭ２０３は、各種プログラムや各種データを保存する。
【００４２】
ＨＤＤ２０４は、各アプリケーションＡ、Ｂ、Ｃ、オペレーティングシステム、その他の各種プログラムを保存する。また、ＨＤＤ２０４は、印刷ジョブ、メッセージ、その他の各種データを保存する。
【００４３】
表示部２０５は、例えば液晶ディスプレイであり、各種の情報を表示する。
【００４４】
入力部２０６は、例えばマウスといったポインティングデバイスやキーボードを含み、各種の操作、入力を行うために使用される。
【００４５】
通信部２０７は、外部機器と通信するためのインターフェースであり、イーサネット（登録商標）、ＳＡＴＡ（Ｓｅｒｉａｌ  Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｍｅｎｔ）、ＰＣＩ Ｅｘｐｒｅｓｓ、ＵＳＢ、ＩＥＥＥ１３９４等の規格によるネットワークインターフェース、ＢＬＵＥＴＯＯＴＨ（登録商標）、ＩＥＥＥ８０２．１１等の無線通信インターフェース、電話回線に接続するための電話回線インターフェース等を利用することができる。
【００４６】
各情報処理装置２０Ａ、２０Ｂ、２０Ｃは、上記構成を有することにより以下のように作用する。
【００４７】
各情報処理装置２０Ａ、２０Ｂ、２０Ｃの各ＣＰＵ２０１は、ＨＤＤ２０４に保存された各アプリケーションＡ、Ｂ、Ｃを起動し、各アプリケーションＡ、Ｂ、Ｃと、画像形成装置１０との間で通信を確立させる。各アプリケーションＡ、Ｂ、Ｃは、印刷ジョブ、および当該印刷ジョブに関連するメッセージを生成し、画像形成装置１０に送信する。ここで、印刷ジョブに関連するメッセージとは、例えば、ジョブ投入コマンドと、情報処理装置２０Ａ、２０Ｂ、２０Ｃにおける印刷ジョブの保存先のＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）と、が記述されたジョブ投入メッセージである。画像形成装置１０は、ジョブ投入メッセージを受信することにより、印刷ジョブが投入されたことを認識するとともに、印刷ジョブの保存先のＵＲＬにアクセスすることにより当該印刷ジョブを取得することができる。
【００４８】
各アプリケーションＡ、Ｂ、Ｃは、画像形成装置１０へ送信した印刷ジョブに対する応答または通知を目的とするメッセージを画像形成装置１０から受信する。ここで、印刷ジョブに対する応答または通知を目的とするメッセージとは、例えば、ＪＭＦによるＲｅｓｐｏｎｓｅのメッセージまたはＪＭＦによるＳｉｇｎａｌのメッセージである。当該メッセージには、例えば、印刷ジョブにおいて設定された用紙が画像形成装置１０において用紙切れの状態にある旨が記述されたメッセージが含まれる。
【００４９】
図３は、画像形成装置の構成を示すブロック図である。
【００５０】
図３に示すように、画像形成装置１０は、ＣＰＵ１００、ＲＡＭ１０１、ＲＯＭ１０２、ＨＤＤ１０３、通信部１０４、操作部１０５、表示部１０６、画像制御部１０７、読取部１０８、およびエンジン２０９を備える。これらの構成要素は信号をやり取りするためのバス１１０を介して相互に接続されている。
【００５１】
画像形成装置１０の一部の基本的な構成は情報処置装置２０Ａ、２０Ｂ、２０Ｃと重複する。従って、重複する部分の説明は省略または簡略化する。
【００５２】
ＨＤＤ１０３は、画像形成装置用プログラムを保存する。画像形成装置用プログラムとは、情報処理装置１０から受信された印刷ジョブおよびメッセージを処理するとともに当該印刷ジョブに対する応答または通知を目的とするメッセージを生成し送信するためのプログラムである。また、ＨＤＤ１０３は、印刷ジョブ、メッセージ、その他の各種データを保存する。
【００５３】
通信部１０４は、画像形成装置１０と外部機器との間で通信を行うためのインターフェースであり、イーサネット（登録商標）、ＳＡＴＡ、ＰＣＩ  Ｅｘｐｒｅｓｓ、ＵＳＢ、ＩＥＥＥ１３９４等の規格によるネットワークインターフェースや、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＩＥＥＥ８０２．１１等の無線通信インターフェース等の各種ローカル接続インターフェース、電話回線に接続するための電話回線インターフェース等が用いられる。
【００５４】
操作部１０５は、各種設定を行うタッチパネル、コピー枚数等を設定するテンキー、動作の開始を指示するスタートキー、動作の停止を指示するストップキー、各種設定条件を初期化するリセットキー等の各種固定キー等からなる。
【００５５】
表示部１０６は、各種情報を表示し各種設定入力を行うタッチパネル、および表示ランプ等からなる。
【００５６】
画像制御部１０７は、印刷ジョブに含まれるジョブチケットに従い、印刷データのレイアウト処理、および印刷ジョブのラスタライズを行い、ビットマップ形式の画像データを生成する。
【００５７】
読取部１０８は、原稿台の所定の読み取り位置にセットされた原稿に蛍光ランプ等の光源で光を当て、その反射光をＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）イメージセンサ等の撮像装置で光電変換して、その電気信号から、エンジン１０９により印刷可能な画像データを生成する。
【００５８】
エンジン１０９は、画像制御部１０７により生成された画像データ、および読取部１０８により生成された画像データに基づく画像を、電子写真方式により帯電、露光、現像、転写および定着の各工程を経て、用紙に印刷する。
【００５９】
画像形成装置１０は、上記構成を有することにより、以下の機能を有し、以下のように作用する。
【００６０】
図４は、画像形成装置の機能を示す機能ブロック図である。
【００６１】
図４に示すように、画像形成装置１０は、コマンド制御部１０００、アプリケーション特定制御部１００１、ジョブ制御部１００２、静的テーブル制御部１００３、動的テーブル制御部１００４、状態通知制御部１００５、およびネットワーク部１００６を有する。
【００６２】
アプリケーション特定制御部１００１は特定手段および第４管理手段に相当する。動的テーブル制御部１００４は第１管理手段、第２管理手段、および動作手段に相当する。静的テーブル制御部１００３は第３管理手段に相当する。
【００６３】
コマンド制御部１０００、アプリケーション特定制御部１００１、ジョブ制御部１００２、静的テーブル制御部１００３、動的テーブル制御部１００４、および、状態通知制御部１００５は、ＣＰＵ１００、ＲＡＭ１０１、ＨＤＤ１０３、および画像形成装置用プログラムにより構成されることができる。ネットワーク部１００６は、ＣＰＵ１００および通信部１０４により構成されることができる。
【００６４】
コマンド制御部１０００は、各アプリケーションＡ、Ｂ、Ｃから受信したメッセージおよび印刷ジョブを制御し、上記各ブロックにメッセージ等を処理させる。具体的には、コマンド制御部１０００は、アプリケーション特定制御部１００１にメッセージ等を処理させることでメッセージ等を送信したアプリケーションＡ、Ｂ、Ｃを特定させる。コマンド制御部１０００は、メッセージがジョブ投入メッセージの場合は、ジョブ制御部１００２に、情報処理装置１０から印刷ジョブを取得させ、動的テーブル制御部１００４に、印刷ジョブに付加された動的値である印刷ジョブＩＤを保存させるとともに印刷ジョブについて印刷処理をさせる。コマンド制御部１０００は、特定されたアプリケーションＡ、Ｂ、Ｃへの印刷ジョブに対する応答または通知を目的とするメッセージを生成し、動的テーブル制御部１００４に、保存された動的値である印刷ジョブＩＤを必要に応じて付加させ、当該アプリケーションＡ、Ｂ、Ｃへ送信する。ここで、動的値とは、アプリケーションＡ、Ｂ、Ｃにより印刷ジョブごとに割り振られる任意値をいう。
【００６５】
アプリケーション特定制御部１００１は、各アプリケーションＡ、Ｂ、Ｃから受信された印刷ジョブおよび当該印刷ジョブに関連するメッセージの少なくともいずれかの記述に基づいてアプリケーションＡ、Ｂ、Ｃを特定する。アプリケーション特定制御部１００１は、アプリケーション特定テーブルを利用して、印刷ジョブおよび当該印刷ジョブに関連するメッセージを送信したアプリケーションを特定する。アプリケーション特定制御部１００１は、アプリケーション特定テーブルをＨＤＤ１０３に保存し、画像形成装置用プログラムとは独立に管理する。
【００６６】
図５は、アプリケーション特定テーブルと、情報処理装置から画像形成装置へ送信されるメッセージの例とを示す図である。
【００６７】
図５のＡは、アプリケーション特定テーブルを示す図である。アプリケーション特定テーブルには、例えば、メッセージに含まれるアプリケーションＡを特定するための値（例えば、「ＶｅｎｄｏｒＡ」）とアプリケーションＡのアプリケーション名（例えば、「ＶｅｎｄｏｒＡ」）との関係、および当該値の記述場所を示すパス（例えば、ＪＭＦ／＠ＳｅｎｄｅｒＩＤ）、が記載されている。また、アプリケーション特定テーブルには、例えば、印刷ジョブに含まれるアプリケーションを特定するための値（例えば、「ＶｅｎｄｏｒＢ」）とアプリケーションＢのアプリケーション名（例えば、「ＶｅｎｄｏｒＢ」）との関係、および当該値の記述場所を示すパス（例えば、「ＪＤＦ／ＡｕｄｉｔＰｏｏｌ／Ｃｒｅａｔｅｄ／＠ＡｇｅｎｔＮａｍｅ」）が記載されている。当該パスは、アプリケーションＡを特定するための値が記載されている場所を示しており、アプリケーションＡ、Ｂ、Ｃを特定するための記述の規則に該当する。
【００６８】
図５のＢは、情報処理装置から画像形成装置へ送信されるメッセージの例を示している。当該メッセージは、ＪＭＦによりコマンドが記述されたＣｏｍｍａｎｄのメッセージである。メッセージ内の下線部（１）には、アプリケーション特定テーブルにおいてパスにより記述場所が示された、アプリケーションを特定するための値「ＶｅｎｄｏｒＡ」が記述されている。従って、アプリケーション特定制御部１００１は、メッセージを送信したアプリケーションＡ、Ｂ、Ｃが、アプリケーション名がＶｅｎｄｏｒＡのアプリケーションＡであると特定することができる。
【００６９】
なお、図５のＢに示すメッセージには、下線部（２）に示すジョブ投入コマンド（ＣｏｍｍａｎｄＳｕｂｍｉｔＱｕｅｕｅＥｎｔｒｙ）と、下線部（３）に示す、情報処理装置２０Ａ、２０Ｂ、２０Ｃにおける印刷ジョブの保存先のＵＲＬとが含まれている。従って、当該メッセージは、ジョブ投入メッセージである。
【００７０】
ジョブ制御部１００２は、アプリケーション特定制御部１００１により特定された各アプリケーションＡ、Ｂ、Ｃによりメッセージにおいて指定された、印刷ジョブの保存先のＵＲＬから印刷ジョブを取得し、印刷ジョブの印刷処理を行う。
【００７１】
静的テーブル制御部１００３は、静的テーブルを利用して印刷ジョブおよびメッセージを処理する。静的テーブル制御部１００３は、静的テーブルをアプリケーションＡ、Ｂ、Ｃごとに設けて管理する。
【００７２】
図６は、静的テーブルの説明図である。図６のＡは、メッセージを処理するためのＪＭＦ静的テーブルの説明図である。図６のＢは、印刷ジョブを処理するためのＪＤＦ静的テーブルの説明図である。
【００７３】
図６のＡに示すように、ＪＭＦ静的テーブルには、例えば、応答状態（ＲｅｓｐｏｎｓｅＳｔａｔｕｓ）の項目について、固定値である静的値の記述場所を示すパス「ＪＭＦ／Ｒｅｓｐｏｎｓｅ／ＤｅｖｉｃｅＩｎｆｏ／＠ＳｔａｔｕｓＤｅｔａｉｌ」にメッセージにおいて記述された静的値を「Ｎｏ  Ｐａｐｅｒ」に置換すべきという動作が記載されている。当該パスは、静的値の記述場所を示すための記述であり、ＪＭＦによるメッセージの記述の規則に該当する。当該動作は、静的値に関連付けされた動作に該当し、例えば、エンジン１０９から受信された用紙切れの警告に基づいて静的テーブル制御部１００３によりＪＭＦ静的テーブルに記載される。静的テーブル制御部１００３は、ＪＭＦ静的テーブルをＨＤＤ１０３に保存し、画像形成装置用プログラムとは独立に管理する。
【００７４】
静的テーブル処理部１００３は、例えば、ＪＭＦの記述によるメッセージのテンプレートを利用して、ＪＭＦ静的テーブルにおいて指定されたパスに記述された静的値（例えば、「Ｒｅａｄｙ」）を、「Ｎｏ  Ｐａｐｅｒ」という静的値に置換することによりメッセージを生成する。
【００７５】
図７は、メッセージのテンプレートと、静的テーブル制御部によりＪＭＦ動的テーブルに従い静的値に関連付けされた動作による処理が行われたメッセージとを示す図である。図７のＡは、メッセージのテンプレートを示しており、図７のＢは、静的テーブル制御部により静的値に関連付けされた動作による処理が行われたメッセージを示している。これらのメッセージは、ＪＭＦによる応答のメッセージであるＲｅｓｐｏｎｓｅのメッセージである。
【００７６】
図７に示すように、ＪＭＦ静的テーブルで指定されたパスに記述された静的値「Ｒｅａｄｙ」が、静的値に関連付けされた動作による処理が行われることにより、下線部に示すように、「Ｎｏ  Ｐａｐｅｒ」に置換されている。
【００７７】
図６のＢに示すように、ＪＤＦ静的テーブルには、例えば、印刷ジョブにおいて静的値の記述場所を示すパス「ＪＤＦ／ＲｅｓｏｕｒｃｅＬｉｎｋ／ＣｏｍｐｏｎｅｎｔＬｉｎｋ／＠ＣｏｍｂｉｎｅｄＰｒｏｃｅｓｓＩｎｄｅｘ」に記述された静的値に関連付けされた動作が記載されている。当該パスは、静的値の記述場所を示すための記述であり、ＪＤＦによるメッセージの記述の規則に該当する。当該動作は、静的値に関連付けされた動作に該当し、静的値について、「＠ＣｏｍｂｉｎｅｄＰｒｏｃｅｓｓＬｎｄｅｘ＝＝“０”かつ＠Ｕｓａｇｅ＝“Ｏｕｔｐｕｔ”という条件を満たせば、ＣｏｍｂｉｎｅｄＰｒｏｃｅｓｓＩｎｄｅｘ、Ｕｓａｇｅの属性および値を削除する」ことが記載されている。
【００７８】
静的テーブル処理部１００３は、ＪＤＦ静的テーブルに記載された動作を印刷ジョブに対して行うことにより、当該印刷ジョブを送信した各アプリケーションＡ、Ｂ、Ｃに適応する処理を印刷ジョブに対して行うことができる。静的テーブル制御部１００３は、ＪＤＦ静的テーブルをＨＤＤ１０３に保存し、画像形成装置用プログラムとは独立に管理する。
【００７９】
動的テーブル制御部１００４は、動的テーブルを利用して印刷ジョブおよびメッセージを処理する。動的テーブル制御部１００４は、動的テーブルをアプリケーションＡ、Ｂ、Ｃごとに設けて管理する。
【００８０】
図８は、動的テーブルと、動的値であるジョブＩＤと、内部ジョブＩＤとの関連付けテーブルの説明図である。
【００８１】
図８のＡは、画像形成装置１０により受信された印刷ジョブの受信時の処理をするためのＪＤＦ動的テーブルの説明図である。動的テーブル制御部１００４は、ＪＤＦ動的テーブルをアプリケーションＡ、Ｂ、Ｃごとに設けて管理する。動的テーブル制御部１００４は、ＪＤＦ動的テーブルをＨＤＤ１０３に保存し、画像形成装置用プログラムとは独立に管理する。
【００８２】
図８のＡに示すように、ＪＤＦ動的テーブルには、例えば、応答状態（ＲｅｓｐｏｎｓｅＳｔａｔｕｓ）の項目において、印刷ジョブにおいて動的値である印刷ジョブＩＤの記述場所を示すパス「ＪＤＦ／」に記述された値（すなわち、動的値である印刷ジョブＩＤ）を保存するという動作が記載されている。当該パスは、印刷ジョブにおいて動的値であるジョブＩＤの記述場所を示すための記述であり、ＪＤＦによる印刷ジョブの記述の規則に該当する。当該動作は、動的値であるジョブＩＤに関連付けされた動作に該当し、動的テーブル制御部１００４により記載される。
【００８３】
図９は、ＪＤＦで記述された印刷ジョブの例を示す図である。
【００８４】
図９に示された印刷ジョブにおいて下線部に示すように、図８のＡのＪＤＦ動的テーブルで指定されたパスには、動的値であるジョブＩＤとして「ＩＤ＿Ａ１」と記述されている。よって、動的テーブル制御部１００４は、ＪＤＦ動的テーブルに従って印刷ジョブを解析することにより、「ＩＤ＿Ａ１」を動的値であるジョブＩＤとして認識する。
【００８５】
動的テーブル制御部１００４は、ＪＤＦ動的テーブルに従い、ＪＤＦ動的テーブルにおいて指定された印刷ジョブにおけるパスに記述された動的値であるジョブＩＤを、ＪＤＦ動的テーブルにおいて動的値に関連付けされた動作を行うことにより保存する。
【００８６】
図８のＢは、画像形成装置１０により受信された印刷ジョブに対する応答または通知を目的とするメッセージの送信時において当該メッセージを処理するためのＪＭＦ動的テーブルの説明図である。動的テーブル制御部１００４は、ＪＭＦ動的テーブルをアプリケーションＡ、Ｂ、Ｃごとに設けて管理する。動的テーブル制御部１００４は、ＪＭＦ動的テーブルをＨＤＤ１０３に保存し、画像形成装置用プログラムとは独立に管理する。
【００８７】
図８のＢに示すように、ＪＭＦ動的テーブルには、例えば、信号状態（ＳｉｇｎａｌＳｔａｔｕｓ）の項目について、印刷ジョブにおいて動的値であるジョブＩＤの記述場所を示すパス「ＪＤＦ／」に記述された値（すなわち、動的値である印刷ジョブＩＤ）に関連して行うべき動作が記載されている。当該パスは、動的値であるジョブＩＤの記述場所を示すための記述であり、ＪＤＦによる印刷ジョブの記述の規則に該当する。当該動作は、動的値であるジョブＩＤに関連付けされた動作に該当し、動的テーブル制御部１００４により、ＪＭＦ動的テーブルに記載される。
【００８８】
動的テーブル制御部１００４は、例えば、静的テーブル制御部１００３によりＪＭＦ静的テーブルに従って生成されたメッセージに対し、ＪＭＦ動的テーブルに従い、パス「ＪＭＦ／Ｓｉｇｎａｌ／ＤｅｖｉｃｅＩｎｆｏ／」に動的値である印刷ジョブＩＤを追加するという、ＪＭＦ動的テーブルにおいて指定された動作を行う。
【００８９】
図１０は、メッセージのテンプレートと、動的テーブル制御部１００４によりＪＭＦ動的テーブルに従い動的値に関連付けされた動作による処理が行われたメッセージを示す図である。図１０のＡは、メッセージのテンプレートを示しており、図１０のＢは、動的テーブル制御部１００４によりＪＭＦ動的テーブルに従い動的値であるジョブＩＤに関連付けされた動作による処理が行われたメッセージを示している。これらのメッセージは、ＪＭＦによる状態変化通知のメッセージであるＳｉｇｎａｌのメッセージである。
【００９０】
図１０のＢに示すように、メッセージのテンプレートに対し、ＪＭＦ動的テーブルに記載された動作が行われることにより、パス「ＪＭＦ／Ｓｉｇｎａｌ／ＤｅｖｉｃｅＩｎｆｏ／」に動的値である印刷ジョブＩＤ「ＩＤ＿Ａ１」が追加されている。
【００９１】
一方、動的テーブル制御部１００４は、ＪＭＦ動的テーブルにパス、動作値、および動的値に関連付けされた動作がエントリーされていない場合は、メッセージに動的値である印刷ジョブＩＤを追加する処理を行わない。
【００９２】
このように、動的テーブル制御部１００４は、アプリケーションＡ、Ｂ、Ｃごとに設けられたＪＤＦ動的テーブルに従い、パスにより指定された場所に記載された動的値であるジョブＩＤをそのまま保存する。そして、アプリケーションＡ、Ｂ、Ｃごとに設けられたＪＭＦ動的テーブルに従い、保存された動的値であるジョブＩＤをそのままメッセージに追加する。これにより、ＪＤＦまたはＪＭＦによる動的値の記載方式（例えば、「ＩＤ＿Ａ１」、「ＩＤ  Ａ１」等）がアプリケーションＡ、Ｂ、Ｃごとに異なり、かつ動的値の記載場所が異なる場合であっても、印刷ジョブごとに値が変化し得る動的値であるジョブＩＤのメッセージへの追加が可能になる。さらに、メッセージへの動的値であるジョブＩＤの追加の有無をアプリケーションＡ、Ｂ、Ｃごとに切り替えることが可能になる。従って、メッセージに動的値であるジョブＩＤが付加されることにより、印刷ジョブごとに、印刷ジョブに対するメッセージの送信を要求するアプリケーションＡ、Ｂ、Ｃに対しては、動的値であるジョブＩＤを付加したメッセージを生成し送信することができる。そして、メッセージにジョブＩＤが付加されることを要求しないアプリケーションＡ、Ｂ、Ｃに対しては、動的値であるジョブＩＤを付加しないメッセージを生成し送信することができる。
【００９３】
コマンド制御部１０００は、ＪＭＦ動的テーブルにおいて記述されている、動的値であるジョブＩＤに関連付けされた動作を行うことにより処理されたメッセージを、アプリケーション特定制御部１００１により特定されたアプリケーションＡ、Ｂ、Ｃへ送信する。
【００９４】
なお、動的テーブル制御部１００４は、図８のＡに示すＪＤＦ動的テーブルに従って動的値である印刷ジョブＩＤを保存する際に、動的値ごとにユニークな内部ジョブＩＤを付与し、動的値を当該動的値に付与された内部ジョブＩＤと組み合わせて保存してもよい。
【００９５】
図８のＣは、動的値であるジョブＩＤと内部ジョブＩＤとの関連付けテーブルの例を示している。
【００９６】
図８のＣに示すように、ジョブＩＤと内部ジョブＩＤとの関連付けテーブルにおいては、動的値であるジョブＩＤの各値（例えば、「ＩＤ＿Ａ１」）と、動的値であるジョブＩＤごとにユニークな内部ジョブＩＤ（例えば、「１」）とが関連付けられて保存されることで管理されている。ジョブＩＤと内部ジョブＩＤとの関連付けテーブルは、例えば、ＲＡＭ１０１に記録されることで管理される。
【００９７】
このように動的値であるジョブＩＤに内部ジョブＩＤを付与して管理するのは次の理由による。すなわち、各アプリケーションＡ、Ｂ、Ｃが複数の印刷ジョブに対し同じジョブＩＤを付与したり、異なるアプリケーションＡ、Ｂ、Ｃが印刷ジョブに重複したジョブＩＤを付与したりする可能性があるからである。このため、動的テーブル管理部１００４は、各ジョブＩＤに内部ジョブＩＤを付与して管理することにより、同じジョブＩＤであっても内部ジョブＩＤにより区別する。動的テーブル制御部１００４は、アプリケーション特定制御部１００１により特定された動的値であるジョブＩＤと当該ジョブＩＤに付加した内部ジョブＩＤとの組合せが、ジョブＩＤと内部ジョブＩＤとの関連付けテーブルにより管理されている組合せと合致するかどうか判断する。これにより、重複したジョブＩＤが付加されたジョブＩＤを区別することにより、当該重複したジョブＩＤが付加された印刷ジョブを区別することができる。従って、画像形成装置１０に保存された動的値であるジョブＩＤが重複する場合であっても、印刷ジョブごとに、当該印刷ジョブを送信したアプリケーションＡ、Ｂ、Ｃへ、印刷ジョブに対する応答または通知を目的とするメッセージを正確に送信することができる。
【００９８】
動的テーブル制御部１００４は、ジョブＩＤと組み合わされて保存された内部ジョブＩＤによりジョブＩＤを区別することにより、重複したジョブＩＤが付加された印刷ジョブを区別する。そして、アプリケーション特定制御部１００１により特定されたアプリケーションＡ、Ｂ、Ｃから送信された印刷ジョブに対する応答または通知を目的とするメッセージに、図７のＢに示すＪＭＦ動的テーブルに従って動的値であるジョブＩＤを追加する動作を行う。
【００９９】
状態通知制御部１００５は、画像形成装置２０の状態が通知されるための情報処理装置２０Ａ、２０Ｂ、２０ＣのＵＲＬである状態通知ＵＲＬへ、画像形成装置２０の状態を通知するためのメッセージを生成する。状態通知制御部１００５は、状態通知ＵＲＬを画像形成装置２０に送信したアプリケーションＡ、Ｂ、Ｃに対し、メッセージを送信する。状態通知ＵＲＬとアプリケーションＡ、Ｂ、Ｃとの関連付けは、状態通知ＵＲＬとアプリケーションとの関連付けテーブルを利用してコマンド制御部１０００により管理される。
【０１００】
図１１は、情報処理装置から画像形成装置へ状態通知ＵＲＬを送信するためのメッセージの例と、状態通知ＵＲＬとアプリケーションとの関連付けテーブルとを示す図である。
【０１０１】
図１１のＡは、情報処理装置２０Ａから画像形成装置１０へ状態通知ＵＲＬを送信するメッセージの例を示しており、ＪＭＦによる問い合わせのメッセージである、Ｑｕｅｒｙのメッセージである。メッセージにおいて下線部で示されるように、メッセージには状態通知ＵＲＬが記述されている。
【０１０２】
図１１のＢは、状態通知ＵＲＬとアプリケーションとの関連付けテーブルを示している。状態通知ＵＲＬとアプリケーションとの関連付けテーブルにより、状態通知ＵＲＬとアプリケーション名とが関連付けられて管理されている。
【０１０３】
ネットワーク部１００６は、コマンド制御部１０００による制御に従い、各情報処理装置２０Ａ、２０Ｂ、２０Ｃの各アプリケーションＡ、Ｂ、Ｃから印刷ジョブおよびメッセージを受信するとともに、画像形成装置１０から各アプリケーションＡ、Ｂ、Ｃへのメッセージを送信する。
【０１０４】
図１２は、画像形成装置における通信制御方法のフローチャートを示す図である。本フローチャートは、画像形成装置用プログラムに従って画像形成装置１０により実施されることができる。
【０１０５】
コマンド制御部１０００は、アプリケーションＡ、Ｂ、Ｃからメッセージを受信した場合は（Ｓ１２０１：ＹＥＳ）、アプリケーション特定制御部１００１に、受信したメッセージによるアプリケーションＡ、Ｂ、Ｃの特定を実施させる（Ｓ１２０２）。
【０１０６】
図１３は、図１２のフローチャートのステップＳ１２０２のサブルーチンフローチャートを示す図である。
【０１０７】
アプリケーション特定制御部１００１は、アプリケーション特定テーブル（図５のＡ参照）にエントリーされているパス、値、および当該値に対応するアプリケーション名を、一行ずつ、すべて読み出す（Ｓ１３０１、Ｓ１３０２）。アプリケーション特定制御部１００１は、アプリケーション特定テーブルにエントリーがない場合は（Ｓ１３０２：ＮＯ）、処理を終了する。
【０１０８】
アプリケーション特定制御部１００１は、アプリケーション特定テーブルにエントリーがある場合は（Ｓ１３０２：ＹＥＳ）、メッセージにおいて、アプリケーション特定テーブルに記載されたパスに記述された値と、エントリーされた値のいずれかとが一致するかどうか判断する（Ｓ１３０３）。
【０１０９】
アプリケーション特定制御部１００１は、エントリーされた値と、メッセージに記述された値とが一致した場合は（Ｓ１３０３：ＹＥＳ）、アプリケーション特定テーブルにおいてエントリーされた値と関連付けられたアプリケーション名を、メッセージを送信したアプリケーションＡ、Ｂ、Ｃのアプリケーション名として保存する（Ｓ１３０４）。これにより、アプリケーション特定制御部１００１は、メッセージを送信したアプリケーションＡ、Ｂ、Ｃをアプリケーション名により特定する。
【０１１０】
図１２に戻り、コマンド制御部１０００は、静的テーブル制御部１００３にＪＭＦ静的テーブルによる処理を実施させる（Ｓ１２０３）。
【０１１１】
図１４は、図１２のフローチャートのステップＳ１２０３のサブルーチンフローチャートを示す図である。
【０１１２】
静的テーブル制御部１００３は、アプリケーション特定制御部１００１により特定されたアプリケーションＡ、Ｂ、Ｃに対応したＪＭＦ静的テーブル（図６のＡ参照）にエントリーされているパスおよび動作を、一行ずつ、すべて読み出す（Ｓ１４０１、Ｓ１４０２）。ここで、アプリケーションＡ、Ｂ、Ｃに対応したＪＭＦ静的テーブルとは、各アプリケーションＡ、Ｂ、ＣのＪＭＦによるメッセージの記述の規則に対応したＪＭＦ静的テーブルをいう。静的テーブル制御部１００３は、ＪＭＦ静的テーブルにエントリーされているパスおよび動作がない場合は（Ｓ１４０２：ＮＯ）、処理を終了する。
【０１１３】
静的テーブル制御部１００３は、ＪＭＦ静的テーブルにエントリーされているパスおよび動作がある場合は（Ｓ１４０２：ＹＥＳ）、メッセージにおいて、当該パスにより指定された場所から静的値を認識し、当該静的値に関連付けされた動作を実施する（Ｓ１４０３）。
【０１１４】
図１２に戻り、コマンド制御部１０００は、メッセージがジョブ投入メッセージかどうか判断する（Ｓ１２０４）。
【０１１５】
コマンド制御部１０００は、メッセージがジョブ投入メッセージではないと判断したときは（Ｓ１２０４：ＮＯ）、メッセージに状態通知ＵＲＬが含まれているかどうか判断する（Ｓ１２１０）。コマンド制御部１０００は、メッセージに状態通知ＵＲＬが含まれていると判断したときは（Ｓ１２１０：ＹＥＳ）、状態通知ＵＲＬをアプリケーション名と関連付けて、状態通知ＵＲＬとアプリケーションとの関連付けテーブル（図１１のＢ参照）に保存する（Ｓ１２１１）。コマンド制御部１０００は、メッセージに状態通知ＵＲＬが含まれていないと判断したときは（Ｓ１２１０：ＮＯ）、ステップＳ１２０６以下の処理を実施する。
【０１１６】
コマンド制御部１０００は、メッセージがジョブ投入メッセージであると判断したときは（Ｓ１２０４：ＹＥＳ）、ジョブ制御部１００２にジョブ制御処理を実施させる（Ｓ１２０５）。
【０１１７】
図１５は、図１２のフローチャートのステップＳ１２０５のサブルーチンフローチャートを示す図である。
【０１１８】
ジョブ制御部１００２は、ジョブ投入メッセージに含まれている情報処理装置２０Ａ、２０Ｂ、２０Ｃにおける印刷ジョブの保存先のＵＲＬを認識し、当該ＵＲＬから印刷ジョブを取得する（Ｓ１５０１）。
【０１１９】
ジョブ制御部１００２は、ジョブ投入メッセージの記述に基づいて、アプリケーション特定制御部１００１により既にアプリケーションＡ、Ｂ、Ｃが特定されているかどうか判断する（Ｓ１５０２）。ジョブ制御部１００２は、アプリケーションＡ、Ｂ、Ｃが特定されていないと判断したときは（Ｓ１５０２：ＮＯ）、ステップＳ１５０１において取得した印刷ジョブの記述に基づいてアプリケーションＡ、Ｂ、Ｃを特定する（Ｓ１５０３）。
【０１２０】
ジョブ制御部１００２は、アプリケーションＡ、Ｂ、Ｃが特定されていると判断したときは（Ｓ１５０２：ＹＥＳ）、静的テーブル制御部１００３に、ＪＭＦ静的テーブルによる処理を実施させる（Ｓ１５０４）。ステップＳ１５０４のサブルーチンフローチャートは図１４に示されている。静的テーブル制御部１００３は、アプリケーション特定制御部１００１により特定されたアプリケーションＡ、Ｂ、Ｃに対応したＪＭＦ静的テーブルにエントリーされているパスおよび動作がある場合は（Ｓ１４０１、Ｓ１４０２：ＹＥＳ）、当該パスによりメッセージにおける記述の場所が指定された静的値を認識し、当該静的値に関連付けされた動作を実施する（Ｓ１４０３）。
【０１２１】
ジョブ制御部１００２は、動的テーブル制御部１００４に、ＪＤＦ動的テーブルによる処理を実施させる（Ｓ１５０５）。
【０１２２】
図１６は、図１５のフローチャートのステップＳ１５０５のサブルーチンフローチャートを示す図である。
【０１２３】
動的テーブル制御部１００４は、アプリケーション特定制御部１００１により特定されたアプリケーションＡ、Ｂ、Ｃに対応したＪＤＦ動的テーブル（図８のＡ参照）にエントリーされているパス等および動作を、一行ずつ、すべて読み出す（Ｓ１６０１、Ｓ１６０２）。ここで、アプリケーションＡ、Ｂ、Ｃに対応したＪＤＦ動的テーブルとは、各アプリケーションＡ、Ｂ、ＣのＪＤＦによる印刷ジョブの記述の規則に対応したＪＤＦ動的テーブルをいう。動的テーブル制御部１００４は、ＪＤＦ動的テーブルにエントリーされているパス等および動作がない場合は（Ｓ１６０２：ＮＯ）、処理を終了する。
【０１２４】
動的テーブル制御部１００４は、ＪＤＦ動的テーブルにエントリーされているパス等および動作がある場合は（Ｓ１６０２：ＹＥＳ）、メッセージにおいて、当該パス等により指定された場所から動的値であるジョブＩＤを認識し、当該動的値であるジョブＩＤに関連付けされた動作を実施する（Ｓ１６０３）。すなわち、動的テーブル制御部１００４は、認識した当該動的値であるジョブＩＤを内部ジョブＩＤと関連付けて保存する（図８のＡ、Ｃ参照）。
【０１２５】
図１５に戻り、ジョブ制御部１００２は、印刷ジョブについて印刷処理を実施する（Ｓ１５０６）。すなわち、ジョブ制御部１００２は、印刷ジョブに含まれる印刷データを、印刷ジョブに含まれるジョブチケットに従ってラスタライズし、用紙に印刷して出力する。
【０１２６】
図１２に戻り、コマンド制御部１０００は、印刷ジョブに対する応答を目的とするメッセージを生成する（Ｓ１２０６）。コマンド制御部１０００は、例えば、ＪＭＦによるＲｅｓｐｏｎｓｅのメッセージのテンプレートの一部を置換または変更することにより印刷ジョブに対する応答を目的とするメッセージを生成することができる。
【０１２７】
コマンド制御部１０００は、静的テーブル制御部１００３に、ＪＭＦ静的テーブルによる処理を実施させる（Ｓ１２０７）。ステップＳ１２０７のサブルーチンフローチャートは図１４に示されている。静的テーブル制御部１００３は、アプリケーション特定制御部１００１により特定されたアプリケーションＡ、Ｂ、Ｃに対応したＪＭＦ静的テーブルにエントリーされているパスおよび動作がある場合は（Ｓ１４０１、Ｓ１４０２：ＹＥＳ）、メッセージにおいて、当該パスにより指定された場所から静的値を認識し、当該静的値に関連付けされた動作を実施する（Ｓ１４０３）。静的テーブル制御部１００３は、例えば、ステップＳ１２０６において生成された、印刷ジョブに対する応答を目的とするメッセージの一部をＪＭＦによる記述で置換し、または当該メッセージにＪＭＦによる記述を追加するという動作を実施することができる。
【０１２８】
コマンド制御部１０００は、動的テーブル制御部１００４に、ＪＭＦ動的テーブルによる処理を実施させる（Ｓ１２０８）。
【０１２９】
図１７は、図１２のステップＳ１２０８のサブルーチンフローチャートを示す図である。
【０１３０】
動的テーブル制御部１００４は、アプリケーション特定制御部１００１により特定されたアプリケーションＡ、Ｂ、Ｃに対応したＪＭＦ動的テーブル（図８のＢ参照）にエントリーされているパス等および動作を、一行ずつ、すべて読み出す（Ｓ１７０１、Ｓ１７０２）。ここで、アプリケーションＡ、Ｂ、Ｃに対応したＪＭＦ動的テーブルとは、各アプリケーションＡ、Ｂ、ＣのＪＭＦによるメッセージの記述の規則に対応したＪＭＦ動的テーブルをいう。動的テーブル制御部１００４は、ＪＭＦ動的テーブルにエントリーされているパス等および動作がない場合は（Ｓ１６０２：ＮＯ）、処理を終了する。
【０１３１】
動的テーブル制御部１００４は、ＪＭＦ動的テーブルにエントリーされているパス等および動作がある場合は（Ｓ１７０２：ＹＥＳ）、次の処理を行う。すなわち、ステップＳ１２０５において、当該パス等に基づいて認識され保存された動的値であるジョブＩＤを読み出す。そして、動的値であるジョブＩＤと当該ジョブＩＤに付与した内部ジョブＩＤとをキーにして、動的値であるジョブＩＤと内部ジョブＩＤとの関連付けテーブル(図８のＣ参照)を検索する（Ｓ１７０３）。
【０１３２】
動的テーブル制御部１００４は、ステップＳ１７０３における検索の結果、ヒットした場合は（Ｓ１７０３：ＹＥＳ）、ＪＭＦ動的テーブルにおいて当該ジョブＩＤに関連付けされた動作を実施する（Ｓ１７０５）。動的テーブル制御部１００４は、例えば、ステップＳ１２０６において作成され、ステップＳ１２０７においてＪＭＦによる記述が追加された、印刷ジョブに対する応答を目的とするメッセージにおいて、ＪＭＦ／Ｓｉｇｎａｌ／ＤｅｖｉｃｅＩｎｆｏ／に動的値であるジョブＩＤを追加する動作を実施できる。
【０１３３】
図１２に戻り、コマンド制御部１０００は、ステップＳ１２０８において実施された動作により動的値であるジョブＩＤが追加されたメッセージを、ステップＳ１２０２において特定されたアプリケーションＡ、Ｂ、Ｃに送信することで、印刷ジョブに対する応答を印刷ジョブごとに行う（Ｓ１２０９）。
【０１３４】
図１８は、状態通知制御部によって実施される通信制御方法のフローチャートを示す図である。
【０１３５】
状態通知制御部１００５は、コマンド制御部１０００による制御に従い、状態通知ＵＲＬが画像形成装置１０に保存されているかどうか判断する（Ｓ１８０１）。状態通知制御部１００５は、状態通知ＵＲＬが保存されていないと判断したときは（Ｓ１８０１：ＮＯ）、処理を終了する。
【０１３６】
状態通知制御部１００５は、状態通知ＵＲＬが保存されていると判断したときは（Ｓ１８０１：ＹＥＳ）、状態通知ＵＲＬと関連付けられて保存されているアプリケーション名を読み出す（Ｓ１８０２）。状態通知ＵＲＬとアプリケーション名とは、コマンド制御部１０００により、ステップＳ１２１１において、関連付けられて保存されている。
【０１３７】
状態通知制御部１００５は、アプリケーションＡ、Ｂ、Ｃへ送信するための状態変化通知のメッセージであるＪＭＦによるＳｉｇｎａｌのメッセージを生成する（Ｓ１８０３）。
【０１３８】
状態通知制御部１００５は、静的テーブル制御部１００３に、ＪＭＦ静的テーブルによる処理を実施させる（Ｓ１８０４）。ステップＳ１８０４のサブルーチンフローチャートは図１４に示されている。静的テーブル制御部１００３は、アプリケーション特定制御部１００１により特定されたアプリケーションＡ、Ｂ、Ｃに対応したＪＭＦ静的テーブルにエントリーされているパスおよび動作がある場合は（Ｓ１４０１、Ｓ１４０２：ＹＥＳ）、ステップＳ１８０３で生成されたメッセージにおいて、当該パスにより指定された場所から静的値を認識し、当該静的値に関連付けされた動作を実施する（Ｓ１４０３）。静的テーブル制御部１００３は、例えば、ステップＳ１８０３において作成されたメッセージの一部をＪＭＦによる記述で置換し、または当該メッセージにＪＭＦによる記述を追加するという動作を実施することができる。
【０１３９】
状態通知制御部１００５は、動的テーブル制御部１００４に、ＪＭＦ動的テーブルによる処理を実施させる（Ｓ１８０５）。ステップＳ１８０５のサブルーチンフローチャートは図１７に示されている。動的テーブル制御部１００４は、アプリケーション特定制御部１００１により特定されたアプリケーションＡ、Ｂ、Ｃに対応したＪＭＦ動的テーブルにエントリーがある場合は（Ｓ１７０１、Ｓ１７０２：ＹＥＳ）、ＪＭＦ動的テーブルにおいてジョブＩＤに関連付けされた動作を実施する（Ｓ１７０５）。すなわち、動的テーブル制御部１００４は、例えば、ステップＳ１４０３においてＪＭＦ静的テーブルによる処理されたメッセージにおいて、ＪＭＦ／Ｓｉｇｎａｌ／ＤｅｖｉｃｅＩｎｆｏ／に動的値であるジョブＩＤを追加する動作を実施することができる。
【０１４０】
状態通知制御部１００５は、ステップＳ１８０５において動的値であるジョブＩＤが追加されたメッセージを、ステップＳ１８０２において読み出されたアプリケーション名のアプリケーションＡ、Ｂ、Ｃに送信する（Ｓ１８０６）。
【０１４１】
本実施形態は、以下の効果を奏する。
【０１４２】
複数のアプリケーションのいずれかにより送信された印刷ジョブに基づいてアプリケーションを特定し、印刷ジョブに付加された動的値に関する印刷ジョブの記述の規則をアプリケーションごとに動的値に関連付けされた動作とともに管理する。そして、特定したアプリケーションについて管理している規則に従って印刷ジョブを解析することにより動的値を認識するとともに、認識した動的値に対し関連付けした動作を行う。これにより、画像形成装置のソフトウェアを修正することなく、迅速かつ容易に、印刷ジョブを送信したアプリケーションごとに、ＪＭＦによるメッセージへのジョブＩＤ等の動的値の追加の有無を切り替えることができる。
【０１４３】
さらに、動的値ごとにユニークな内部ジョブＩＤを付与して保存することで管理する。そして、特定したアプリケーションごとに印刷ジョブに対する応答等を目的とするメッセージを送信する際、印刷ジョブから認識した動的値と当該動的値に付与した内部ジョブＩＤとの組合せが、管理されている動的値と内部ジョブＩＤとの組合せと合致する場合に、当該動的値をメッセージに付加する。これにより、保存された動的値が重複する場合であっても、印刷ジョブごとに、当該印刷ジョブを送信したアプリケーションへ、印刷ジョブに対する応答等を目的とするメッセージを正確に送信することができる。
【０１４４】
さらに、固定値である静的値についての、メッセージの記述の規則を、アプリケーションごとに、静的値に関連付けされた動作とともに管理する。そして、特定したアプリケーションごとに印刷ジョブに対する応答等を目的とするメッセージを送信する際、特定されたアプリケーションについて管理している動作を規則に従って行う。これにより、画像形成装置のソフトウェアを修正することなく、印刷ジョブを送信したアプリケーションに対応して、当該アプリケーションへ送信するメッセージについて静的値の追加、置換、削除等の処理を行うことができる。
【０１４５】
さらに、アプリケーションを特定するための、印刷ジョブ等の記述の規則とアプリケーションとの関連付けを管理する。そして、動的値と当該動的値に関連付けされた動作との管理、静的値と当該静的値に関連付けされた動作との管理、および印刷ジョブ等の記述の規則と当該規則に関連付けされたアプリケーションとの管理を不揮発性の記録媒体に保存することにより独立に行う。これにより、画像形成装置用プログラムと独立して、これらの管理を行うことができるため、画像形成装置のソフトウェアを修正することなく、印刷ジョブを送信したアプリケーションごとに、動的値の追加の有無の切り替え等を簡易に行うことができる。
【０１４６】
以上、本発明の実施形態に係る画像形成システムにおける通信制御方法、画像形成システム用プログラム、画像形成システム用プログラムが記録された記録媒体、および画像形成システムについて説明したが、本発明は上述した実施形態に限定されるものではない。
【０１４７】
例えば、上述した実施形態においては、動的テーブルおよび静的テーブルを画像形成装置において管理するものとして説明した。しかし、動的テーブルおよび静的テーブルは、画像形成システムに設けられたサーバーにより管理されるようにしてもよい。これにより、画像形成装置が各アプリケーションと印刷ジョブおよびメッセージの送受信を行う際、必要に応じてこれらのテーブルをサーバーからダウンロードして利用することにより、これらのテーブルの管理を一元化することができ、新たなアプリケーションが追加された場合に容易に対応することができる。
【０１４８】
また、上述した実施形態においては動的値としてジョブＩＤを例に説明したが、印刷ジョブごとに割り振られる任意値であればジョブＩＤに限定されない。
【０１４９】
また、上述した実施形態においてプログラムにより実現する機能の一部または全部を、回路等のハードウェアに置き替えて実施されてもよい。
【符号の説明】
【０１５０】
１    画像形成システム、
１０    画像処理装置、
２０Ａ、２０Ｂ、２０Ｃ    情報処理装置。
【図１】
0005962678.tif 000002
【図２】
0005962678.tif 000003
【図３】
0005962678.tif 000004
【図４】
0005962678.tif 000005
【図５】
0005962678.tif 000006
【図６】
0005962678.tif 000007
【図７】
0005962678.tif 000008
【図８】
0005962678.tif 000009
【図９】
0005962678.tif 000010
【図１０】
0005962678.tif 000011
【図１１】
0005962678.tif 000012
【図１２】
0005962678.tif 000013
【図１３】
0005962678.tif 000014
【図１４】
0005962678.tif 000015
【図１５】
0005962678.tif 000016
【図１６】
0005962678.tif 000017
【図１７】
0005962678.tif 000018
【図１８】
0005962678.tif 000019