(57)【特許請求の範囲】
【請求項１】
外部機器からの要求に応じて、当該画像形成装置が有するアプリケーションの情報を含む機器情報を前記外部機器に提供する第１の機能と、前記外部機器からの要求を受け付けた前記アプリケーションにより処理を実行する少なくとも１つ以上の第２の機能とを有する画像形成装置であって、
前記外部機器から送信された前記第１の機能又は前記第２の機能に対して処理を要求する要求メッセージを、前記第１の機能及び前記第２の機能とを含む複数の機能に共通して受信する受信手段と、
前記第１の機能と前記第２の機能が別のプロセスで動作するマルチプロセス環境において、前記受信手段により受信された前記要求メッセージの所定の情報に基づいて、前記要求メッセージにより要求された処理を行う前記第１の機能又は前記第２の機能のどちらか一方を特定し、特定された前記第１の機能又は前記第２の機能に対して前記要求メッセージの要求内容を通知するメッセージ制御手段とを有することを特徴とする画像形成装置。
【請求項２】
前記メッセージ制御手段は、
前記要求メッセージの宛先に関する情報及び／又は前記要求メッセージにより要求される処理に関する情報に基づいて、要求された処理を行う前記第１の機能又は前記第２の機能のどちらか一方を特定することを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記受信手段及び前記メッセージ制御手段を実現するソフトウェア部品は、
当該画像形成装置が有する前記第１の機能及び前記第２の機能が動作するプロセスとは別のプロセスで動作することを特徴とする請求項１又は２に記載の画像形成装置。
【請求項４】
前記受信手段及び前記メッセージ制御手段を実現するソフトウェア部品は、
同じプロセスで動作することを特徴とする請求項３に記載の画像形成装置。
【請求項５】
前記受信手段は、
前記外部機器から送信された前記要求メッセージをＳＯＡＰ（Simple Object Access Protocol）により受信することを特徴とする請求項１ないし４のいずれか一項に記載の画像形成装置。
【請求項６】
外部機器からの要求に応じて、当該画像形成装置が有するアプリケーションの情報を含む機器情報を前記外部機器に提供する第１の機能と、前記外部機器からの要求を受け付けた前記アプリケーションにより処理を実行する少なくとも１つ以上の第２の機能とを有する画像形成装置と、前記外部機器との間で、双方向のデータ通信を行うデータ通信装置であって、
前記外部機器から送信された前記第１の機能又は前記第２の機能に対して処理を要求する要求メッセージを受信する受信手段と、
前記第１の機能と前記第２の機能とが別のプロセスで動作するマルチプロセス環境において、前記受信手段により受信された前記要求メッセージの所定の情報に基づいて、前記要求メッセージにより要求された処理を行う前記画像形成装置並びに前記画像形成装置が有する前記第１の機能又は前記第２の機能のどちらか一方を特定し、特定された前記画像形成装置が有する前記第１の機能又は前記第２の機能に対して前記要求メッセージの要求内容を通知するメッセージ制御手段とを有することを特徴とするデータ通信装置。
【請求項７】
前記メッセージ制御手段は、
前記要求メッセージの通知先に関する情報及び／又は前記要求メッセージにより要求される処理に関する情報に基づいて、要求された処理を行う前記画像形成装置並びに前記画像形成装置が有する前記第１の機能又は前記第２の機能のどちらか一方を特定することを特徴とする請求項６に記載のデータ通信装置。
【請求項８】
前記受信手段は、
前記外部機器から送信された先記要求メッセージをＳＯＡＰ（Simple Object Access Protocol）により受信することを特徴とする請求項６又は７に記載のデータ通信装置。
【請求項９】
外部機器からの要求に応じて、当該画像形成装置が有するアプリケーションの情報を含む機器情報を前記外部機器に提供する第１の機能と、前記外部機器からの要求を受け付けた前記アプリケーションにより処理を実行する少なくとも１つ以上の第２の機能とを有する画像形成装置と、前記外部機器との間で、双方向のデータ通信を行うデータ通信方法であって、
前記外部機器から送信された前記第１の機能又は前記第２の機能に対して処理を要求する要求メッセージを、前記第１の機能及び前記第２の機能とを含む複数の機能に共通して受信する受信手順と、
前記第１の機能と前記第２の機能とが別のプロセスで動作するマルチプロセス環境において、前記受信手順により受信された前記要求メッセージの所定の情報に基づいて、前記要求メッセージにより要求された処理を行う前記第１の機能又は前記第２の機能のどちらか一方を特定し、特定された前記第１の機能又は前記第２の機能に対して前記要求メッセージの要求内容を通知するメッセージ制御手順とを有することを特徴とするデータ通信方法。
【請求項１０】
前記メッセージ制御手順は、
前記要求メッセージの宛先に関する情報及び／又は前記要求メッセージにより要求される処理に関する情報に基づいて、要求された処理を行う前記第１の機能又は前記第２の機能のどちらか一方を特定することを特徴とする請求項９に記載のデータ通信方法。
【請求項１１】
前記受信手順は、
前記外部機器から送信された前記要求メッセージをＳＯＡＰ（Simple Object Access Protocol）により受信することを特徴とする請求項９又は１０に記載のデータ通信方法。
【請求項１２】
外部機器からの要求に応じて、当該画像形成装置が有するアプリケーションの情報を含む機器情報を前記外部機器に提供する第１の機能と、前記外部機器からの要求を受け付けた前記アプリケーションにより処理を実行する少なくとも１つ以上の第２の機能とを有する画像形成装置と、前記外部機器との間で、双方向のデータ通信を行うデータ通信プログラムであって、
コンピュータを、
前記外部機器から送信された前記第１の機能又は前記第２の機能に対して処理を要求する要求メッセージを受信する受信手段と、
前記第１の機能と前記第２の機能とが別のプロセスで動作するマルチプロセス環境において、前記受信手段により受信された前記要求メッセージの所定の情報に基づいて、前記要求メッセージにより要求された処理を行う前記第１の機能又は前記第２の機能のどちらか一方を特定し、特定された前記第１の機能又は前記第２の機能に対して前記要求メッセージの要求内容を通知するメッセージ制御手段として機能させるデータ通信プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外部機器から要求された所定の処理を行う画像形成装置、外部機器から要求された所定の処理を行う画像形成装置と外部機器との間でデータ通信を行うデータ通信装置、データ通信方法、及びデータ通信プログラムに関するものである。
【背景技術】
【０００２】
画像形成装置は、ＰＣ（Personal Computer）などの外部機器とネットワークなどの所定のデータ通信手段を介して受け付けた動作要求に応じて、画像形成装置が搭載する機能により要求された処理を行っている。
【０００３】
例えば、特許文献１には、「画像形成装置において、ネットワークに接続された管理サーバからのログ情報の送信要求を、ＸＭＬ（Extensible Markup Language）を利用したＳＯＡＰ（Simple Object Access Protocol）により受信し、ＳＯＡＰリスナにより受信した送信要求を解析し、ＳＯＡＰプロキシにより解析の結果を管理サーバに対してＳＯＡＰにより送信する」という画像形成装置が開示されている。
【０００４】
画像形成装置が、外部機器からの要求に応じた情報を応答するケースは、特許文献１に開示されているログ情報のような画像形成装置内で収集された情報の提供や、画像形成装置の電源投入時に行われる画像形成装置が有する機能などの機器情報の提供などがある。
【０００５】
上記情報提供などの所定の処理を、外部機器から画像形成装置に対して要求する場合には、特許文献１に開示されているように、外部機器からの動作要求などを所定の形式で定義した構造化データ（以下、「ＳＯＡＰメッセージ」という。）を外部機器から画像形成装置へ送信し、画像形成装置が要求に応じて処理を行った後に、その結果をまとめたＳＯＡＰデータを外部機器へ送信するというＳＯＡＰを利用したメッセージ交換方式が採用されている。
【０００６】
上記「ＳＯＡＰ」とは、ＸＭＬをベースとしたメッセージ交換のためのプロトコル仕様で、ＨＴＴＰ（HyperText Transfer Protocol）やＳＭＴＰ（Simple Mail Transfer Protocol）といったプロトコルの上位に位置し、そのパケットの中で、オブジェクト呼び出しに必要なＳＯＡＰメッセージの交換を行うためのプロトコルである。ＳＯＡＰは、ネットワークなどの電気通信回線を介して、アプリケーションを構成するコンポーネント同士を容易に連携させることを目的としている。また、ＳＯＡＰは、送受信するＳＯＡＰメッセージに、ＩＰアドレスやポート番号などの宛先情報、また所定の処理を指示するアクション情報などのＸＭＬ文書本体以外の付加情報を付加できる。
【０００７】
このことから、機器同士のメッセージ交換にＳＯＡＰを利用することで、例えば、複合機（ＭＦＰ）が有する機器情報提供機能や、コピー、ファクシミリ、プリンタ、スキャナなどの機能を、外部機器が有する機能と連携するメッセージ交換機能を実現することができる。
【特許文献１】特開２００４―２１５３０９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、複合機などのような複数の機能を有する画像形成装置では、各機能が動作するときに使用するメモリ空間が異なるように、それぞれ別のプロセスで動作するように設計されている。このようなマルチプロセス環境では、ＳＯＡＰモジュールが機能ごとに実装され、メッセージ交換機能を実現している。このような場合、外部装置では、画像形成装置で動作するＳＯＡＰモジュールの数だけ宛先情報を管理しなければならない。また、連携対象の画像形成装置の台数によっては、更に多くの宛先情報を管理しなければならない。
【０００９】
このように、従来のメッセージ交換機能では、メッセージ交換のための行う外部機器と画像形成装置との接続が複雑化するという問題点がある。
【００１０】
また、従来のメッセージ交換機能では、ＳＯＡＰモジュールが機能ごとに実装されていることから、画像形成装置が有するメモリなどの記憶領域を余分に消費してしまっていた（ハードウェア資源を余分に消費してしまっていた）。
【００１１】
本発明では、上記従来技術の問題点に鑑み、データ通信機能によるリソースの消費を軽減し、外部機器が有する機能と画像形成装置が有する機能とを連携することができる画像形成装置、データ通信装置、データ通信方法、及びデータ通信プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記目的を達成するため、本発明の画像形成装置は、外部機器からの要求に応じて、当該画像形成装置が有するアプリケーションの情報を含む機器情報を前記外部機器に提供する第１の機能と、前記外部機器からの要求を受け付けた前記アプリケーションにより処理を実行する少なくとも１つ以上の第２の機能とを有する画像形成装置であって、前記外部機器から送信された前記第１の機能又は前記第２の機能に対して処理を要求する要求メッセージを、前記第１の機能及び前記第２の機能とを含む複数の機能に共通して受信する受信手段と、前記第１の機能と前記第２の機能が別のプロセスで動作するマルチプロセス環境において、前記受信手段により受信された前記要求メッセージの所定の情報に基づいて、前記要求メッセージにより要求された処理を行う前記第１の機能又は前記第２の機能のどちらか一方を特定し、特定された前記第１の機能又は前記第２の機能に対して前記要求メッセージの要求内容を通知するメッセージ制御手段とを有することを特徴とする。
【００１３】
また、上記目的を達成するため、本発明の画像形成装置は、前記メッセージ制御手段において、前記要求メッセージの宛先に関する情報及び／又は前記要求メッセージにより要求される処理に関する情報に基づいて、要求された処理を行う前記第１の機能又は前記第２の機能のどちらか一方を特定することを特徴とする。
【００１４】
また、上記目的を達成するため、本発明の画像形成装置は、前記受信手段及び前記メッセージ制御手段を実現するソフトウェア部品が、当該画像形成装置が有する前記第１の機能及び前記第２の機能が動作するプロセスとは別のプロセスで動作することを特徴とする。
【００１５】
また、上記目的を達成するため、本発明の画像形成装置は、前記受信手段及び前記メッセージ制御手段を実現するソフトウェア部品が、同じプロセスで動作することを特徴とする。
【００１６】
また、上記目的を達成するため、本発明の画像形成装置は、前記受信手段において、前記外部機器から送信された前記要求メッセージをＳＯＡＰ（Simple Object Access Protocol）により受信することを特徴とする。
【００１７】
これによって、本発明の画像形成装置は、外部機器と双方向でメッセージ交換を行うデータ送受信機能を画像形成装置が有する各機能に対して共通化し（各機能に対してＳＯＡＰモジュールを共通化し）、共通化されたデータ送受信機能により受信されたメッセージの内容に基づいて、要求された処理を行う機能を特定し、特定された機能に対して要求内容を通知する構成により、ネットワークに接続される複数の外部機器に対して、共通したデータ送受信機能を提供する（データ通信のときに使用するポートを一元化する）ことができ、データ通信機能によるリソースの消費を軽減し、外部機器が有する機能と画像形成装置が有する機能とを連携することができる。
【００１８】
上記目的を達成するため、本発明のデータ通信装置は、外部機器からの要求に応じて、当該画像形成装置が有するアプリケーションの情報を含む機器情報を前記外部機器に提供する第１の機能と、前記外部機器からの要求を受け付けた前記アプリケーションにより処理を実行する少なくとも１つ以上の第２の機能とを有する画像形成装置と、前記外部機器との間で、双方向のデータ通信を行うデータ通信装置であって、前記外部機器から送信された前記第１の機能又は前記第２の機能に対して処理を要求する要求メッセージを受信する受信手段と、前記第１の機能と前記第２の機能とが別のプロセスで動作するマルチプロセス環境において、前記受信手段により受信された前記要求メッセージの所定の情報に基づいて、前記要求メッセージにより要求された処理を行う前記画像形成装置並びに前記画像形成装置が有する前記第１の機能又は前記第２の機能のどちらか一方を特定し、特定された前記画像形成装置が有する前記第１の機能又は前記第２の機能に対して前記要求メッセージの要求内容を通知するメッセージ制御手段とを有することを特徴とする。
【００１９】
また、上記目的を達成するため、本発明のデータ通信装置は、前記メッセージ制御手段において、前記要求メッセージの通知先に関する情報及び／又は前記要求メッセージにより要求される処理に関する情報に基づいて、要求された処理を行う前記画像形成装置並びに前記画像形成装置が有する前記第１の機能又は前記第２の機能のどちらか一方を特定することを特徴とする。
【００２０】
また、上記目的を達成するため、本発明のデータ通信装置は、前記受信手段において、前記外部機器から送信された先記要求メッセージをＳＯＡＰにより受信することを特徴とする。
【００２１】
これによって、本発明のデータ通信装置は、外部機器と画像形成装置との間で、双方向のメッセージ交換を行うデータ送受信機能を有し（ＳＯＡＰモジュールを外部機器や画像形成装置と異なる装置に実装し）、データ送受信機能により外部機器から受信されたメッセージの内容に基づいて、要求された処理を行う画像形成装置とその機能を特定し、特定された画像形成装置の機能に対して要求内容を通知する構成により、ネットワークに接続される複数の外部機器に対して、共通したデータ送受信機能を提供する（データ通信のときに使用するポートを一元化する）ことができ、データ通信機能によるリソースの消費を軽減し、外部機器が有する機能と画像形成装置が有する機能とを連携することができる。
【００２２】
上記目的を達成するため、本発明のデータ通信方法は、外部機器からの要求に応じて、当該画像形成装置が有するアプリケーションの情報を含む機器情報を前記外部機器に提供する第１の機能と、前記外部機器からの要求を受け付けた前記アプリケーションにより処理を実行する少なくとも１つ以上の第２の機能とを有する画像形成装置と、前記外部機器との間で、双方向のデータ通信を行うデータ通信方法であって、前記外部機器から送信された前記第１の機能又は前記第２の機能に対して処理を要求する要求メッセージを、前記第１の機能及び前記第２の機能とを含む複数の機能に共通して受信する受信手順と、前記第１の機能と前記第２の機能とが別のプロセスで動作するマルチプロセス環境において、前記受信手順により受信された前記要求メッセージの所定の情報に基づいて、前記要求メッセージにより要求された処理を行う前記第１の機能又は前記第２の機能のどちらか一方を特定し、特定された前記第１の機能又は前記第２の機能に対して前記要求メッセージの要求内容を通知するメッセージ制御手順とを有することを特徴とする。
【００２３】
また、上記目的を達成するため、本発明のデータ通信方法は、前記メッセージ制御手順において、前記要求メッセージの宛先に関する情報及び／又は前記要求メッセージにより要求される処理に関する情報に基づいて、要求された処理を行う前記第１の機能又は前記第２の機能のどちらか一方を特定することを特徴とする。
【００２４】
また、上記目的を達成するため、本発明のデータ通信方法は、前記受信手順において、前記外部機器から送信された前記要求メッセージをＳＯＡＰにより受信することを特徴とする。
【００２５】
これによって、本発明のデータ通信方法は、外部機器と双方向でメッセージ交換を行うデータ送受信機能を画像形成装置が有する各機能に対して共通化し（各機能に対してＳＯＡＰモジュールを共通化し）、共通化されたデータ送受信機能により受信されたメッセージの内容に基づいて、要求された処理を行う機能を特定し、特定された機能に対して要求内容を通知することで、ネットワークに接続される複数の外部機器に対して、共通したデータ送受信機能を提供する（データ通信のときに使用するポートを一元化する）ことができ、データ通信機能によるリソースの消費を軽減し、外部機器が有する機能と画像形成装置が有する機能とを連携することができる。
【００２６】
上記目的を達成するため、本発明のデータ通信プログラムは、外部機器からの要求に応じて、当該画像形成装置が有するアプリケーションの情報を含む機器情報を前記外部機器に提供する第１の機能と、前記外部機器からの要求を受け付けた前記アプリケーションにより処理を実行する少なくとも１つ以上の第２の機能とを有する画像形成装置と、前記外部機器との間で、双方向のデータ通信を行うデータ通信プログラムであって、コンピュータを、前記外部機器から送信された前記第１の機能又は前記第２の機能に対して処理を要求する要求メッセージを受信する受信手段と、前記第１の機能と前記第２の機能とが別のプロセスで動作するマルチプロセス環境において、前記受信手段により受信された前記要求メッセージの所定の情報に基づいて、前記要求メッセージにより要求された処理を行う前記第１の機能又は前記第２の機能のどちらか一方を特定し、特定された前記第１の機能又は前記第２の機能に対して前記要求メッセージの要求内容を通知するメッセージ制御手段として機能させる。
【００２７】
これによって、本発明のデータ通信プログラムは、コンピュータを、外部機器と双方向でメッセージ交換を行うデータ送受信機能を画像形成装置が有する各機能に対して共通化し（各機能に対してＳＯＡＰモジュールを共通化し）、共通化されたデータ送受信機能により受信されたメッセージの内容に基づいて、要求された処理を行う機能を特定し、特定された機能に対して要求内容を通知するように機能させることができる。
【００２８】
よって、本発明のデータ通信プログラムは、ネットワークに接続される複数の外部機器に対して、共通したデータ送受信機能を提供する（データ通信のときに使用するポートを一元化する）ことができ、データ通信機能によるリソースの消費を軽減し、外部機器が有する機能と画像形成装置が有する機能とを連携することができるデータ通信機能を実現することができる。
【発明の効果】
【００２９】
本発明によれば、データ通信機能によるリソースの消費を軽減し、外部機器が有する機能と画像形成装置が有する機能とを連携することができる画像形成装置、データ通信装置、データ通信方法、及びデータ通信プログラムを提供することができる。
【発明を実施するための最良の形態】
【００３０】
以下、本発明の好適な実施の形態（以下、「実施形態」という。）について、図面を用いて詳細に説明する。
【００３１】
［第１の実施形態］
＜ハードウェア構成＞
では、本実施形態に係る画像形成装置１００のハードウェア構成について、図１を用いて説明する。図１は、本発明の第１の実施形態に係る画像形成装置１００のハードウェア構成の一例を示す図である。
【００３２】
本実施形態に係る画像形成装置１００は、操作パネル１１と、記憶メディアＩ／Ｆ１２と、コントローラ１３と、データ通信Ｉ／Ｆ１４と、ＨＤＤ（Hard Disk Drive）１７と、スキャナ１５と、プロッタ１６とから構成され、それぞれ相互に接続されている。
【００３３】
操作パネル１１は、入力装置１１aと表示装置１１bとを有しており、入力装置１１aは、ハードウェアキーなどで構成され、画像形成装置１００に各操作信号を入力するのに用いられる。また、表示装置１１bは、ディスプレイなどで構成され、例えば画像形成動作に関する各種情報を表示する。データ通信Ｉ／Ｆ１４は、インタフェース装置１４aを有しており、画像形成装置１００をネットワークなどのデータ伝送路に接続するインタフェースである。ＨＤＤ１７は、画像形成装置１００で取り扱われる受信文書データや読み取り画像データなどの各種データを格納している。また、ＨＤＤ１７は、これらの各種データを、所定のファイルシステムやＤＢ（Data Base）により管理している。
【００３４】
ＨＤＤ１７に格納される各種データの中には、例えば、デジタルカメラなどの外部機器によって記録された電子データも含まれる。このような場合には、メモリカードなどの記録媒体１２bによって画像形成装置１００に提供されるか、データ伝送路であるネットワークなどを通じてアップロードされる。記録媒体１２bは、記憶メディアＩ／Ｆ１２が有するドライブ装置１２aにセットされ各種データが記録媒体１２bからドライブ装置１２aを介してＨＤＤ１７に格納される。
【００３５】
コントローラ１３は、ＲＯＭ（Read Only Memory）１３a、ＲＡＭ（Random Access Memory）１３b、及びＣＰＵ（Central Processing Unit）１３cとを有しており、ＲＯＭ１３aは、画像形成装置１００が起動されるときに実行されるプログラムや各種データを格納している。また、ＲＡＭ１３bは、ＲＯＭ１３aやＨＤＤ１７から読み出された各種プログラムやデータを一時保持する。更に、ＣＰＵ１３cは、ＲＡＭ１３bが一時保持しているプログラムを実行する。コントローラ１３は、例えば、データ通信Ｉ／Ｆ１４を介して印刷データを受信した場合に、ＲＯＭ１３aからＲＡＭ１３b上に読み出された、ＰＤＬ（Page Description Language）を解釈可能なプログラム（ＰＤＬパーサ）をＣＰＵ１３cにより実行し、印刷データを解釈してビットマップイメージを生成する。
【００３６】
スキャナ１５は、画像読取装置１５aを有しており、読み取り面に配置された原稿を光学的に読み取り画像データを生成する。プロッタ１６は、印刷装置１６aを有しており、例えば、電子写真プロセス方式によってビットマップイメージを記録紙に印刷する。
【００３７】
このように、本実施形態に係る画像形成装置１００では、上記ハードウェア構成により、コピー、プリンタ、ファクシミリ、スキャナなどの複数の機能を実現している。
【００３８】
＜ソフトウェア構成＞
次に、本実施形態に係る画像形成装置１００のソフトウェア構成について、図２を用いて説明する。図２は、本発明の第１の実施形態に係る画像形成装置１００のソフトウェア構成の一例を示す図である。
【００３９】
＜＜画像形成装置＞＞
本実施形態に係る画像形成装置１００は、図１に示したプロッタ１６と、スキャナ１５と、ファクシミリやＨＤＤ１７などのハードウェアリソース１０１などを有するとともに、起動部１４０により起動されるプラットホーム１２０とアプリケーション１３０とから構成されるソフトウェア群１１０とを備えている。
【００４０】
プラットホーム１２０は、アプリケーション１３０からの処理要求を解釈してハードウェア資源の獲得要求を発生させるコントロールサービス１５０と、１つ以上のハードウェア資源の管理を行い、コントロールサービス１５０からの獲得要求を調停するＳＲＭ（System Resource Manager）１２３と、ＯＳ（Operating System）１２１とを有する。
【００４１】
コントロールサービスは、複数のサービスモジュールから形成され、ＳＣＳ（System Control Service）１２２と、ＥＣＳ（Engine Control Service）１２４と、ＭＣＳ（Memory Control Service）１２５と、ＯＣＳ（Operation panel Control Service）１２６と、ＦＣＳ（FAX Control Service）１２７と、ＮＣＳ（Network Control Service）１２８とから構成される。
【００４２】
なお、このプラットホーム１２０は、予め定義されたメソッドによりアプリケーション１３０から処理要求を受信可能とするＡＰＩ（Application Program Interface）１０３と、プロッタ１６やスキャナ１５、またその他のハードウェアリソース１０１などを、ハードウェア資源を利用する上位層からの要求に従ってＯＳ１２１を介して制御するときのインタフェースであるエンジンＩ／Ｆ１０２を有する。
【００４３】
ＯＳ１２１は、ＵＮＩＸ（登録商標）などの汎用オペレーティングシステムであり、プラットホーム１２０並びにアプリケーション１３０の各ソフトウェアをそれぞれプロセスとして並列実行する。
【００４４】
ＳＲＭ１２３は、ＳＣＳ１２２とともにシステムの制御およびリソースの管理を行うものであり、プロッタ１６やスキャナ１５などのエンジン、メモリ、ＨＤＤファイル、ホストＩ／Ｏ（例えば、セントロＩ／Ｆ、ネットワークＩ／Ｆ、ＩＥＥＥ１３９４ Ｉ／Ｆ、ＲＳ２３２Ｃ Ｉ／Ｆなど。）のハードウェア資源を利用する上位層からの要求に従って調停を行い、実行制御する。
【００４５】
具体的には、このＳＲＭ１２３は、要求されたハードウェア資源が利用可能であるか（他の要求により利用されていないかどうか）を判断し、利用可能であれば要求されたハードウェア資源が利用可能である旨を上位層に伝える。また、ＳＲＭ１２３は、上位層からの要求に対してハードウェア資源の利用スケジューリングを行い、要求内容（例えば、プリンタエンジンにより紙搬送と作像動作、メモリ確保、ファイル生成など。）を直接実施している。
【００４６】
ＳＣＳ１２２は、アプリ管理、操作部制御、システム画面表示、ＬＥＤ（Light Emitting Diode）表示、リソース管理、割り込みアプリ制御を行うものである。ＥＣＳ１２４は、プロッタ１６、スキャナ１５などから構成されるハードウェア資源のエンジンを制御するものである。
【００４７】
ＭＣＳ１２５は、画像メモリの取得および解放、ＨＤＤの利用、画像データの圧縮および伸張などを行うものである。ＯＣＳ１２６は、オペレータと本体制御間の情報伝達手段となる操作パネル１１を制御するモジュールである。
【００４８】
ＦＣＳ１２７は、システムコントローラの各アプリ層からＰＳＴＮ（Public Switched Telephone Networks）／ＩＳＤＮ（Integrated Services Digital Network）を利用したファクシミリ送受信、ＢＫＭ（バックアップＳＲＡＭ：Static Random Access Memory）で管理されている各種ファクシミリデータの登録／引用、ファクシミリ読みとり、ファクシミリ受信印刷、融合送受信を行うためのＡＰＩを提供するものである。ＦＣＳ１２７には、そのサブプロセスであるＦＣＵハンドラ（ＦＣＵＨ）が起動される。このＦＣＵＨは、ＦＣＳ１２７からの指令によりファクシミリ送受信のときにファクシミリエンジンのデバイスドライバを制御するものである。
【００４９】
ＮＣＳ１２８は、ネットワークＩ／Ｏを必要とするアプリケーション１３０に対して共通に利用できるサービスを提供するためのモジュール群である。
【００５０】
本実施形態に係るデータ通信機能は、ＮＣＳ１２８が有している。ＮＣＳ１２８を構成する具体的なソフトウェア部品（プログラム）については、以降に示す図３を用いて説明する。
【００５１】
アプリケーション１３０は、ＰＣＬやポストスクリプト（ＰＳ）などのＰＤＬパーサを有するプリンタ用のアプリケーションであるプリンタアプリ１１１と、コピー用アプリケーションであるコピーアプリ１１２と、ファクシミリ用アプリケーションであるファックスアプリ１１３と、スキャナ用アプリケーションであるスキャナアプリ１１４と、ネットワークファイル用アプリケーションであるネットファイルアプリ１１５と、工程検査用アプリケーションである工程検査アプリ１１６と、配信用のアプリケーションである配信アプリ１１７とを有している。
【００５２】
これらの各コントロールサービスとＳＲＭ１２３と各アプリケーション１３０とは、1つ以上のメソッドを有するオブジェクトであり、このオブジェクトを起動することによりそれぞれプロセスとしてＯＳ１２１上に生成されて実行される。そして、各プロセス内部には、複数のスレッドが起動され、ＯＳ１２１の管理下でこれらのスレッドのＣＰＵ占有時間を切り替えることにより並列実行が実現されている。このため、プロセス切り替えによる並列実行と比較して、並列実行時の処理速度の向上が図られている。
【００５３】
各アプリプロセスと各コントロールサービスプロセスとは、メソッドの実行によるプロセス間通信によってメッセージの送受信が行われる。
【００５４】
＜＜ＮＣＳ＞＞
ここからは、本実施形態に係るデータ通信機能を有するＮＣＳ１２８について、図３及び図４を用いて説明する。
（ソフトウェア構成の概要）
図３は、本発明の第１の実施形態に係るＮＣＳ１２８のソフトウェア構成の一例を示す図である。
【００５５】
本実施形態に係るＮＣＳ１２８のソフトウェア構成は、主に、各プロトコルによって受信したデータを各アプリケーション１３０に振り分けたり、アプリケーション１３０からデータをネットワーク側に送信する際の仲介を行うモジュール群で構成される。そのモジュール群の中に、本実施形態に係るＷＳ−ＭＦＰモジュール群２０がある。
【００５６】
ここで上記の「ＷＳ」とは、Ｗｏｒｌｄ Ｗｉｄｅ Ｗｅｂ Ｃｏｎｓｏｒｔｉｕｍ（Ｗ３Ｃ）のワーキンググループ（ＷＧ）により進められているＸＭＬをベースとした標準化Ｗｅｂサービスの意味である。「ＷＳ」については、その詳細が開示されている公開文献「Devices Profile for Web Services」を開示し、ここでの説明を省略する。公開文献の入手先ＵＲＬは、"http://specs.xmlsoap.org/ws/2006/02/devprof/devicesprofile.pdf"である。また、以降の説明の中で、「ＷＳ」がつく機能名やモジュール名は、この標準化Ｗｅｂサービスに準拠して設計された機能やモジュールである。例えば、ＷＳ−ＭＦＰモジュール群２０は、標準化Ｗｅｂサービスに準拠して設計された複合機用のモジュール群を示している。
【００５７】
図３に示すＷＳ−ＭＦＰモジュール群２０は、外部機器と画像形成装置１００が有するプリンタアプリ１１１との間でプリンタ関連のデータを取り扱うＷＳ−Ｐｒｉｎｔｅｒ２１pや、外部機器と画像形成装置１００が有するスキャナアプリ１１４との間でスキャナ関連のデータを取り扱うＷＳ−Ｓｃａｎｎｅｒ２１sと、外部機器と画像形成装置１００との間で機器関連のデータを取り扱うＤＦＭモジュール２２とから構成され、上記各ソフトウェア部品は、それぞれ別のプロセスで起動され動作するように実装される。
【００５８】
例えば、ＷＳ−Ｐｒｉｎｔｅｒ２１pは、ＤＦＭモジュール２２からのプリンタアプリ１１１に関する情報の取得要求に応答したり、外部機器からの印刷要求をプリンタアプリ１１１に通知したりする機能である。ＤＦＭモジュール２２は、ＷＳ−Ｐｒｉｎｔｅｒ２１pやＷＳ−Ｓｃａｎｎｅｒ２１sなどからプリンタアプリ１１１やスキャナアプリ１１４などのアプリケーション情報を取得し、取得した情報を基に外部機器に対して、画像形成装置１００が提供可能な標準化Ｗｅｂサービスに関する情報を含む機器情報を送信する。上記において、ＤＦＭモジュール２２からＷＳ−Ｐｒｉｎｔｅｒ２１pが保有するプリンタ関連の情報を取得する場合について説明を行ったが、互いに別のプロセスによって動作しているため、プロセス間通信によりデータの送受信を行う。
【００５９】
このように、本実施形態に係る画像形成装置１００は、上記構成によるＮＣＳ１２８を有することにより、外部機器と画像形成装置１００との間でデータの送受信を行うことができる。
（ソフトウェア構成の詳細）
図４は、本発明の第１の実施形態に係るＷＳ−ＭＦＰモジュール群２０及びＳＯＡＰ５０のソフトウェア構成の一例を示す図である。
【００６０】
図４に示すように、本実施形態に係るＮＣＳ１２８は、ＷＳ−ＭＦＰモジュール群２０のＤＦＭモジュール２２、ＷＳ−Ｐｒｉｎｔｅｒ２１p及びＷＳ−Ｓｃａｎｎｅｒ２１sに加え、ＳＯＡＰ５０とディスパッチャ６０とから構成され、上記各ソフトウェア部品は、それぞれ別のプロセスで起動され動作するように実装される。
【００６１】
以下に、ＤＦＭモジュール２２、ＷＳ−Ｐｒｉｎｔｅｒ２１p、ＷＳ−Ｓｃａｎｎｅｒ２１s、ＳＯＡＰ５０、及びディスパッチャ６０それぞれを構成する主なソフトウェア部品について説明する。
【００６２】
ＷＳ−Ｐｒｉｎｔｅｒ２１pは、ＰｒｉｎｔｅｒＤＣＰ４１pとＷＳ−Ｅｖｅｎｔｉｎｇ４２pとから構成される。
【００６３】
ＰｒｉｎｔｅｒＤＣＰ４１pは、プリンタ機能を利用する外部機器が有する機能（例えばプリンタドライバなど）と画像形成装置１００が有するプリンタアプリ１１１との間で、プリンタ関連のデータを送受信する。また、ＷＳ−Ｅｖｅｎｔｉｎｇ４２pは、プリンタ機能を利用する外部機器が有する機能から送信された印刷要求などの処理要求イベントを画像形成装置１００が有するプリンタアプリ１１１に通知する。
【００６４】
ＷＳ−Ｐｒｉｎｔｅｒ２１pは、このような機能構成により、例えば、外部機器からの印刷要求に従って、画像形成装置１００が有するプリンタアプリ１１１により、受信した画像データの印刷を行い、印刷が完了した旨を外部機器へ通知する処理を実現する。
【００６５】
ＷＳ−Ｓｃａｎｎｅｒ２１sは、ＳｃａｎｎｅｒＤＣＰ４１sとＷＳ−Ｅｖｅｎｔｉｎｇ４２sとから構成される。ＳｃａｎｎｅｒＤＣＰ４１sは、スキャナ機能を利用する外部機器が有する機能（例えば文書管理ソフトウェアなど）と画像形成装置１００が有するスキャナアプリ１１４との間で、スキャナ関連のデータを送受信する。また、ＷＳ−Ｅｖｅｎｔｉｎｇ４２sは、スキャナ機能を利用する外部機器が有する機能から送信された画像読み取り要求などの処理要求イベントを画像形成装置１００が有するスキャナアプリ１１４に通知する。
【００６６】
ＷＳ−Ｓｃａｎｎｅｒ２１sは、上記機能構成により、例えば、外部機器からの画像読み取り要求に従って、画像形成装置１００が有するスキャナアプリ１１４により、原稿の読み取りを行い、読み取りが完了した旨を外部機器へ通知する処理を実現する。
【００６７】
ＤＦＭモジュール２２は、ＷＳ−Ｄｉｓｃｏｖｅｒｙ３１と、ＷＳ−Ｔｒａｎｓｆｅｒ３２と、ＷＳ−ＭｅｔａｄａｔａＥｘｃｈｅｎｇｅ３３と、ＷＳＤ−Ｍａｎａｇｅｒ３４とから構成される。
【００６８】
ＷＳ−Ｄｉｓｃｏｖｅｒｙ３１は、標準化Ｗｅｂサービスにより、搭載するアプリケーション機能を提供可能な装置（ＷＳ−Ｄｅｖｉｃｅ）がネットワークに参加したことを、外部機器が有する機能が検知するためのメッセージを、外部機器と画像形成装置１００との間で送受信する。
【００６９】
ＷＳ−Ｔｒａｎｓｆｅｒ３２は、画像形成装置１００が提供可能な標準化Ｗｅｂサービスに関する情報（機器情報）を通知するメッセージを、外部機器と画像形成装置１００との間で送受信する。また、ＷＳ−Ｔｒａｎｓｆｅｒ３２は、ＵＤＰ（User Datagram Protocol）により、外部機器に対して、画像形成装置１００がネットワーク２００に参加した旨を知らせる（例えば「Hello」コマンドをネットワーク２００に接続される全ての外部機器に対してマルチキャストする）。
【００７０】
ＷＳ−ＭｅｔａｄａｔａＥｘｃｈｅｎｇｅ３３は、ＷＳ−Ｐｒｉｎｔｅｒ２１p及びＷＳ−Ｓｃａｎｎｅｒ２１sから取得した各アプリケーションに関する情報などを基に、画像形成装置１００が提供可能な標準化Ｗｅｂサービスに関する情報のデータを生成する。
【００７１】
ＷＳＤ−Ｍａｎａｇｅｒ３４は、ＷＳ−Ｄｉｓｃｏｖｅｒｙ３１、ＷＳ−Ｔｒａｎｓｆｅｒ３２、及びＷＳ−ＭｅｔａｄａｔａＥｘｃｈｅｎｇｅ３３、並びに、ＷＳ−Ｐｒｉｎｔｅｒ２１p及びＷＳ−Ｓｃａｎｎｅｒ２１sが有する各ＤＣＰ４１p及び４１sなどの動作制御・管理を行う。
【００７２】
ＤＦＭモジュール２２は、上記機能構成により、例えば、標準化Ｗｅｂサービスにより、搭載するアプリケーション機能を提供可能な画像形成装置１００の自動検知機能を実現している。
【００７３】
ＳＯＡＰ５０は、ＳＯＡＰメッセージ送受信５１と、ＳＯＡＰメッセージ生成５２とから構成される。
【００７４】
ＳＯＡＰメッセージ送受信５１は、下位層にあたるＨＴＴＰやＳＭＴＰなどの通信プロトコルによりネットワーク２００を介して、外部機器と画像形成装置１００との間で、ＳＯＡＰメッセージを送受信する。また、ＳＯＡＰメッセージ生成５２は、ＷＳ−ＭｅｔａｄａｔａＥｘｃｈａｎｇｅ３３により生成されたデータを基にＳＯＡＰメッセージを生成する。
【００７５】
ＳＯＡＰ５０は、このような機能構成により、ＤＦＭモジュール２２、ＷＳ−Ｐｒｉｎｔｅｒ２１p、及びＷＳ−Ｓｃａｎｎｅｒ２１sなどから受け取った通信データをＳＯＡＰメッセージに変換し、外部機器と画像形成装置１００との間のメッセージ交換機能を実現している。また、本実施形態では、ＳＯＡＰ５０にオープンソースの「ｇＳＯＡＰ」を採用し、ＷＳ−ＭＦＰモジュール群２０が動作するプロセスとは異なるプロセスで動作するように実装する。「ｇＳＯＡＰ」については、その詳細が開示されている開発元の公式サイトである「gSOAP：C/C++ Web Services and Clients」へのＵＲＬ（http://www.cs.fsu.edu/~engelen/soap.html）を開示し、ここでの説明は省略する。
【００７６】
ディスパッチャ６０は、ＳＯＡＰメッセージ受信５１を介して外部機器から受信したＳＯＡＰメッセージを、ＳＯＡＰメッセージの内容に応じて、ＤＦＭモジュール２２、ＷＳ−Ｐｒｉｎｔｅｒ２１p、又はＷＳ−Ｓｃａｎｎｅｒ２１sに振り分ける（メッセージ内容を通知する）。また、その逆に、ＤＦＭモジュール２２、ＷＳ−Ｐｒｉｎｔｅｒ２１p、又はＷＳ−Ｓｃａｎｎｅｒ２１sから受け付けたメッセージ生成要求に従って、ＳＯＡＰ５０が有するＳＯＡＰメッセージ生成５２へデータを送信する。
【００７７】
このように、ディスパッチャ６０は、ＳＯＡＰ５０を介して、外部機器が有する機能と画像形成装置１００が有するＷＳ−ＭＦＰモジュール群２０との間のＳＯＡＰメッセージのディスパッチ機能を実現している。また、本実施形態では、ディスパッチャ６０をＳＯＡＰ５０と同一のプロセスで動作するように実装する。
【００７８】
また、ディスパッチャ６０の実装により、ＳＯＡＰ５０は、ＤＦＭモジュール２２、ＷＳ−Ｐｒｉｎｔｅｒ２１p、及びＷＳ−Ｓｃａｎｎｅｒ２１sに対して共通のデータ送受信機能を実現している。
【００７９】
本実施形態に係る画像形成装置１００は、上記のようなソフトウェア構成によるＮＣＳ１２８を有しており、外部機器とのメッセージ交換などのデータ通信を行う。
【００８０】
＜データ通信機能＞
次に、これまで説明を行ってきたハードウェア及びソフトウェア構成を踏まえ、本実施形態に係る画像形成装置１００が有する「データ通信機能」について、図５を用いて説明する。図５は、本発明の第１の実施形態に係るデータ通信機能の機能構成の一例を示す図である。
【００８１】
＜＜機能構成の概要＞＞
本実施形態に係る画像形成装置１００は、主に、外部機器と画像形成装置１００との間のＳＯＡＰメッセージを送受信するメッセージ送受信部７１（受信手段）と、画像形成装置１００から外部機器に、標準化Ｗｅｂサービスに関する情報を含む機器情報を提供する機器情報提供部７２と、画像形成装置１００が有するコピー、ファックス、プリンター、スキャナなどのアプリケーション１３０に関連する機能を管理するアプリケーション管理部７３と、外部機器が有する機能と画像形成装置１００が有する機器情報提供部７２又はアプリケーション管理部７３との間で交換される各種メッセージの振り分けや、メッセージ送受信部７１に対して機器情報管理部７２又はアプリケーション管理部７３からの処理要求を伝達するなどの制御を行うメッセージ制御部７４（メッセージ制御手段）とから構成されている。
【００８２】
また、上記各機能部は、図４において説明を行った以下に挙げるソフトウェア部品が、画像形成装置１００が有するコントローラ１３に配置されたＲＯＭ１３aからＲＡＭ１３b上に読み出され、ＣＰＵ１３cで実行されることで実現される機能である。
【００８３】
メッセージ送受信部７１は、ＳＯＡＰ５０が有するＳＯＡＰメッセージ送受信５１によって実現される機能である。機器情報提供部７２は、ＤＦＭモジュール２２が有する各ソフトウェア部品（ＷＳ−Ｄｉｓｃｏｖｅｒｙ３１、ＷＳ−Ｔｒａｎｓｆｅｒ３２、ＷＳ−ＭｅｔａｄａｔａＥｘｃｈａｎｇｅ３３、及びＷＳＤ−Ｍａｎａｇｅｒ３４）によって実現される機能である。
【００８４】
また、アプリケーション管理部７３は、画像形成装置１００が有する基本機能である入力・出力機能に対応する入力部７３aと出力部７３bとから構成され、入力部７３aはＷＳ−Ｓｃａｎｎｅｒ２１s、出力部７３bはＷＳ−Ｐｒｉｎｔｅｒ２１pによって実現される機能である。メッセージ制御部７４は、ディスパッチャ６０により実現される機能である。
【００８５】
＜＜動作概要＞＞
次に、上記各機能部による本実施形態に係る「データ通信機能」の動作について、「外部機器が標準化Ｗｅｂサービスにより、搭載するアプリケーション機能を提供可能な画像形成装置１００を検知する」という動作例を基に説明する。
【００８６】
（１）自動検知コマンドの発行：画像形成装置側
まず、画像形成装置１００は、機器情報提供部７２により、ネットワーク２００に接続される外部機器に対して、標準化Ｗｅｂサービスにより、搭載するアプリケーション機能を提供可能な装置として検知してもらうために、自動検知コマンドを送信する。より具体的には、自動検知コマンド（例えば「Hello」）をＵＤＰによりマルチキャストする。
【００８７】
（２）提供サービスの詳細情報の取得要求：外部機器側
外部機器は、ネットワーク２００を介して送信された自動検知コマンドをデータ通信手段により受信すると、画像形成装置１００が提供可能なサービスの詳細情報（以下、「提供サービス情報」という。）の取得を要求する要求メッセージ（ＳＯＡＰメッセージ）を、送信元の画像形成装置１００に対して送信する。
【００８８】
（３）提供サービス情報の生成：画像形成装置側
画像形成装置１００は、ネットワーク２００を介して外部機器から送信された要求メッセージをメッセージ送受信部７１により受信する。画像形成装置１００は、受信した要求メッセージをメッセージ制御部７１により解析し、提供サービス情報を収集可能な機能部を特定する。本実施形態の場合は、画像形成装置１００が提供可能な標準化Ｗｅｂサービスに関する情報を含む機器情報を収集可能な機器情報提供部７２に、外部機器からの処理要求を通知する。
【００８９】
その結果、画像形成装置１００は、機器情報提供部７２により、アプリケーション管理部７３から提供可能な入出力機能に関する情報を取得し、取得した提供可能な入出力機能に関する情報と他の取得情報（例えば、ＯＳ１２１を介して取得したハードウェア資源に関する情報など。）とを基に機器情報を生成する。
【００９０】
次に、画像形成装置１００は、機器情報提供部７２により生成された機器情報を、メッセージ制御部７４を介してメッセージ送受信部７１へ渡す。画像形成装置１００は、受け取った機器情報を基に、メッセージ送受信部７１により外部機器に提供サービス情報として応答するためのＳＯＡＰメッセージを生成する。
【００９１】
（４）提供サービス情報の応答：画像形成装置側
画像形成装置１００は、メッセージ送受信部７１により、生成したＳＯＡＰメッセージを、要求元の外部装置に送信する。
【００９２】
＜データ通信機能の詳細＞
本実施形態に係る「データ通信機能」において、上記動作の中で、「どのようにして外部機器から送信されたメッセージの要求内容を、該当する要求処理を行う機能部へディスパッチしているのか（振り分けているか）」について詳細に説明する。
【００９３】
本実施形態に係る画像形成装置１００では、メッセージ制御部７４により、メッセージ送受信部７１により受信された要求メッセージの所定の情報に基づいて、要求された所定の処理を行う機能部（機器情報提供部７２又はアプリケーション管理部７３のどちらか一方）を特定し、特定された機能に対して要求メッセージの要求内容を通知することにより実現している。
【００９４】
＜＜データ構成＞＞
メッセージ制御部７４が、機能部を特定するときに解析を行う、外部機器から送信されるＳＯＡＰメッセージについて、図６を用いて説明する。
【００９５】
図６は、本発明の第１の実施形態に係るＳＯＡＰメッセージ８１及び８２の一例を示す図である。図６（a）には、「ＷＳ−Ｔｒａｎｓｆｅｒ  Ｇｅｔメッセージ」の例が示されており、図６（b）には、「ＷＳ−Ｅｖｅｎｔｉｎｇ  Ｓｕｂｓｃｒｉｂｅメッセージ」の例が示されている。
【００９６】
本実施形態で想定しているＸＭＬベースのＳＯＡＰメッセージの構造について簡単に説明する。
【００９７】
（メッセージ構造）
ＸＭＬベースのＳＯＡＰメッセージの構造において特徴的なのは、「エンベロープ」と言われる構造化定義である。この「エンベロープ」には、Ｈｅａｄｅｒタグ（＜ＳＯＡＰ−ＥＮＶ：Ｈｅａｄｅｒ＞）によって付帯情報が定義され、ＳＯＡＰメッセージの通知先の機能部を指定する宛先情報（例えば、「ＩＰアドレス」や「ポート番号」などの文字列データ。）や、要求に応じて処理される所定の処理に関する情報であるアクション情報（例えば、「transfer」や「eventing」などの文字列データ）などが記述されている。後は、その要素として記述されているＢｏｂｙタグ（＜ＳＯＡＰ−ＥＮＶ：Ｂｏｄｙ＞）によってＳＯＡＰメッセージ本体が定義され、その中に、ＸＭＬエンコードされたメッセージ名とデータが記述されている。よって、このＢｏｄｙタグの中に要求に応じて所定の処理を行う機能部の呼び出しに必要なパラメータなどが記述されることになる。このように、本実施形態で想定しているＳＯＡＰメッセージは、ＸＭＬベースであることから、構造化されたデータ形式となっている。このＸＭＬベースのＳＯＡＰメッセージは、現在Ｗ３ＣにＷ３Ｃ Ｎｏｔｅとして提出され、標準化が進められている。
【００９８】
図６（a）に示すＳＯＡＰメッセージ８１には、Ｈｅａｄｅｒタグ内の文字列"＜wsa：Action＞http://schemas.xmlsoap.org/ws/2004/09/transfer/Get＜/wsa：Action＞"により、「ＷＳ−Ｔｒａｎｓｆｅｒ  Ｇｅｔ」の処理に関する情報が記述されている。このＳＯＡＰメッセージ８１は、画像形成装置１００が自動検知コマンドを発行したときに外部機器から送信されるメッセージである。
【００９９】
また、図６（b）に示すＳＯＡＰメッセージ８２には、Ｈｅａｄｅｒタグ内の文字列"＜wsa：Action＞http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe＜/wsa：Action＞"により、「ＷＳ−Ｅｖｅｎｔｉｎｇ  Ｓｕｂｓｃｒｉｂｅ」の処理に関する情報が記述されている。このＳＯＡＰメッセージ８２は、例えば、画像形成装置１００に対して印刷要求を行うときに外部機器から送信されるメッセージである。
【０１００】
＜＜ディスパッチ処理（メッセージ内容に応じた機能部の特定）＞＞
以降に、本実施形態に係るメッセージ制御部７４で行う、メッセージ内容に応じて機能部を特定するディスパッチ処理について、図６及び図７を用いて説明する。
【０１０１】
（メッセージ内容の解析）
本実施形態に係るメッセージ制御部７４は、メッセージ送受信部７１により受信されたＳＯＡＰメッセージ８１及び８２内に記述された構造化データを解析する。メッセージ制御部７４は、予めメッセージ解析用に保持しておいた宛先情報やアクション情報を示す文字列（例えば、ＩＰアドレスを示す"http://192.168"、ポート番号を示す"53"、要求する処理を示す"transfer/Get"、及び"eventing/Subscribe"など。）を基に、構造化データ内に宛先情報及び／又はアクション情報（宛先情報やアクション情報を示す文字列など）が含まれているか否かを検索する。その結果、メッセージ制御部７４は、宛先情報及び／又はアクション情報を見つけると、その情報に基づいて、要求された所定の処理を行う機能部（機器情報提供部７２又はアプリケーション管理部７３のどちらか一方）を特定する。
【０１０２】
（解析結果から機能部を特定）
メッセージ制御部７４が、図６（a）に示すＳＯＡＰメッセージ８１を解析した場合、メッセージ内の文字列"＜wsa：Action＞http://schemas.xmlsoap.org/ws/2004/09/transfer/Get＜/wsa：Action＞"から、アクション情報に該当する文字列"transfer/Get"（図中の破線枠Ａ）を見つけ、要求された処理を行う機器情報提供部７２を特定する。
【０１０３】
また、図６（b）に示すＳＯＡＰメッセージ８２を解析した場合、メッセージ内の文字列"＜wsa：Action＞http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe＜/wsa：Action＞"から、アクション情報に該当する文字列"eventing/Subscribe"（図中の破線枠Ｂ２）を見つける。
【０１０４】
しかし、ＳＯＡＰメッセージ８２のような「ＷＳ−Ｅｖｅｎｔｉｎｇ  Ｓｕｂｓｃｒｉｂｅメッセージ」の場合には、上記に説明を行ったアクション情報だけでは、最終的な機能部を特定することができない。なぜなら、画像形成装置１００が、出力部７３aと入力部７３bのように、「ＷＳ−Ｅｖｅｎｔｉｎｇ  Ｓｕｂｓｃｒｉｂｅメッセージ」により要求される機能を複数有する場合がある。このような場合には、メッセージ制御部７４は、外部機器から「入力部７３a又は出力部７３bのどちらの機能部に対して処理要求を行ったのか」を特定しなければならない。そこで、本実施形態では、図７に示すようなデータを予め保持している。
【０１０５】
図７は、本発明の第１の実施形態に係る関連付けデータ９１のデータ構成の一例を示す図である。図７には、外部機器と画像形成装置１００との間でデータを送受信するときのプロトコルの種別を示す「プロトコル種別」と、データ送受信するときに指定されるポートを示す「ポート番号」と、ポート番号に割り当てられた機能部を示す「割り当てアプリ」とから構成される関連付けデータ９１の例が示されている。このように、本実施形態では、指定されたポートによりデータの送受信を行う固有の機能部を、図７に示すように、予めテーブル化しデータとして保持しておく。
【０１０６】
これによって、メッセージ制御部７４は、メッセージ内の文字列"＜wsa：To＞http://192.168.xxx.xxx：53XX1＜/wsa：To＞"から、宛先情報に該当する文字列"53XX1"（図中の破線枠Ｂ１）を見つけると、この文字列を参照キーにして、図７に示す関連付けデータ９１を参照し（図中の破線枠Ｃ）、該当する「割り当てアプリ」の情報項目に設定されている機能名（図中の"WS-Printer"）から、要求された処理を行う出力部７３bを特定する。
【０１０７】
メッセージ制御部７４は、ＳＯＡＰメッセージ８１及び８２による要求内容を、特定した各機能部に対して通知する。
【０１０８】
このように、本実施形態に係る画像形成装置１００は、上記に説明を行った各機能部による構成により、外部機器と双方向でメッセージ交換を行うデータ送受信機能（メッセージ送受信部７１）を画像形成装置１００が有する各機能（機器情報提供部７２及びアプリケーション管理部７３）に対して共通化し（各機能に対してＳＯＡＰモジュールを共通化し）、共通化されたデータ送受信機能（メッセージ送受信部７１）により受信されたメッセージ（ＳＯＡＰメッセージ８１及び８２）の内容に基づいて、要求された処理を行う機能（機器情報提供部７２、アプリケーション管理部７３が有する入力部７３a、又は出力部７３bのいずれか１つの機能部）を特定し、特定された機能に対して要求内容を通知する。
【０１０９】
その結果、画像形成装置１００は、ネットワーク２００に接続される複数の外部機器に対して、共通したデータ送受信機能を提供する（データ通信のときに使用するポートを一元化する）ことができ、データ通信機能によるリソースの消費を軽減し、自らが搭載した機能と外部機器が有する機能とを連携することができる「データ通信機能」を実現している。
【０１１０】
＜処理手順＞
上記に説明を行った本実施形態に係る「データ通信機能」の具体的な処理手順について図８を用いて説明する。以下に説明する処理手順は、主に、画像形成装置１００が有するコントローラ１３に配置されたＣＰＵ１３cで実行されるデータ通信プログラムによって行われる処理である。また、以下の処理手順では、画像形成装置１００がプリンタ、また外部機器がクライアント端末３００である場合を例に説明する。
【０１１１】
＜＜基本処理手順＞＞
図８は、本発明の第１の実施形態に係るデータ通信機能の基本処理手順の一例を示すシーケンス図である。
【０１１２】
プリンタ１００は、ネットワーク２００に参加したとき（例えば、「ネットワークケーブルが接続されたとき」や、「ネットワークケーブルが接続された状態で電源が投入されたとき」など。）に、ＷＳ−Ｐｒｉｎｔｅｒ２１pにより、ＤＦＭモジュール２２に提供サービス情報通知が要求し（ステップＳ１０１）、要求を受け付けたＤＦＭモジュール２２により、ネットワーク２００に接続される全てのクライアント端末３００に対して自動検知コマンドが送信される（ステップＳ１０２）。
【０１１３】
クライアント端末３００は、自動検知コマンドを、ネットワーク２００を介して受信し、送信元のプリンタ１００に提供サービス情報の取得を要求するＳＯＡＰメッセージ８１（「ＷＳ−Ｔｒａｎｓｆｅｒ  Ｇｅｔメッセージ」）を発行する（ステップＳ１０３）。
【０１１４】
プリンタ１００は、ＳＯＡＰ５０によりクライアント端末３００から送信されたＳＯＡＰメッセージ８１を受信し、受信したＳＯＡＰメッセージ８１をディスパッチャ６０へ渡す（ステップＳ１０４）。ＳＯＡＰメッセージ８１を受け取った（Ｇｅｔメッセージのディスパッチ・通知指定を受け取った）ディスパッチャ６０は、メッセージを解析し、データ内に含まれる宛先情報及び／又はアクション情報に基づいて、要求された提供サービス情報を収集するＤＦＭモジュール２２を特定し、特定されたＤＦＭモジュール２２に提供サービス情報の収集要求（Ｇｅｔメッセージを受信した旨）を通知する（ステップＳ１０５）。
【０１１５】
プリンタ１００は、ＤＦＭモジュール２２により、ステップＳ１０１において収集した提供サービス情報を含む機器情報が、ディスパッチャ６０を介してＳＯＡＰ５０に渡されることで、クライアント端末３００へ応答するための提供サービス情報のメタデータの生成を要求する（ステップＳ１０６及びＳ１０７）。
【０１１６】
プリンタ１００は、ＳＯＡＰ５０により、要求に応じてメタデータを生成し（ステップＳ１０８）、生成したメタデータをディスパッチャ６０に渡し、応答するメタデータのディスパッチ及び応答通知を指示する（ステップＳ１０９）。ディスパッチャ６０により、メタデータを受け取ったディスパッチャ６０は、メタデータを解析し、データ内に含まれる宛先情報及び／又はアクション情報に基づいて、メタデータの生成を要求したＤＦＭモジュール２２を特定し、特定されたＤＦＭモジュール２２にメタデータを生成した旨を通知する（ステップＳ１１０）。
【０１１７】
プリンタ１００は、ＤＦＭモジュール２２により、ＧｅｔＲｅｓｐｏｎｓｅ応答が、ディスパッチャ６０を介してＳＯＡＰ５０に渡されることで、クライアント端末３００に提供サービス情報の応答を要求する（ステップＳ１１１及びＳ１１２）。
【０１１８】
プリンタ１００は、ＳＯＡＰ５０により、要求に応じて、提供サービス情報のＳＯＡＰメッセージ（「ＷＳ−Ｔｒａｎｓｆｅｒ  ＧｅｔＲｅｓｐｏｎｓｅメッセージ」）がクライアント端末３００に送信される（ステップＳ１１３）。
【０１１９】
これによって、クライアント端末３００が有する機能とプリンタ１００が有する機能とが連携する。
【０１２０】
連携後、クライアント端末３００は、プリンタ１００に、例えば「印刷」などのプリンタ関連処理の要求イベント登録を要求するＳＯＡＰメッセージ８２（「ＷＳ−Ｅｖｅｎｔｉｎｇ  Ｓｕｂｓｃｒｉｂｅメッセージ」）を発行する（ステップＳ１１４）。
【０１２１】
プリンタ１００は、ＳＯＡＰ５０によりクライアント端末３００から送信されたＳＯＡＰメッセージ８２を受信し、受信したＳＯＡＰメッセージ８２をディスパッチャ６０へ渡す（ステップＳ１１５）。ＳＯＡＰメッセージ８２を受け取った（Ｓｕｂｓｃｒｉｂｅメッセージのディスパッチ・通知指定を受け取った）ディスパッチャ６０は、メッセージを解析し、データ内に含まれる宛先情報及び／又はアクション情報に基づいて、要求されたプリンタ関連処理要求イベントを登録するＷＳ−Ｐｒｉｎｔｅｒ２１pを特定し、特定されたＷＳ−Ｐｒｉｎｔｅｒ２１pに処理要求イベントの登録要求（Ｓｕｂｓｃｒｉｂｅメッセージを受信した旨）を通知する（ステップＳ１１６）。
【０１２２】
プリンタ１００は、ＷＳ−Ｐｒｉｎｔｅｒ２１pによりイベント登録が終了すると、登録応答が発行され、発行された登録応答がディスパッチャ６０を介してＳＯＡＰ５０に渡されることで、クライアント端末３００にプリンタ関連処理要求イベントの登録応答を要求する（ステップＳ１１７及びＳ１１８）。
【０１２３】
プリンタ１００は、ＳＯＡＰ５０により、要求に応じて、登録応答のＳＯＡＰメッセージ（「Ｓｕｂｓｃｒｉｂｅ  Ｒｅｓｐｏｎｓｅメッセージ」）がクライアント端末３００に送信される（ステップＳ１１９）。
【０１２４】
これによって、クライアント端末３００からプリンタ１００に対して画像データの印刷実行を指示する。
【０１２５】
クライアント端末３００は、ネットワーク２００を介してプリンタ１００から登録応答を受信すると、印刷可能であると判断し、プリンタ１００に、「印刷」を要求するＳＯＡＰメッセージ（「Ｃｒｅａｔｅ  ＰｒｉｎｔＪｏｂメッセージ」）を発行する（ステップＳ１２０）。
【０１２６】
プリンタ１００は、ＳＯＡＰ５０によりクライアント端末３００から送信されたＳＯＡＰメッセージを受信し、受信したＳＯＡＰメッセージをディスパッチャ６０へ渡す（ステップＳ１２１）。ＳＯＡＰメッセージを受け取った（Ｃｒｅａｔｅ  ＰｒｉｎｔＪｏｂメッセージのディスパッチ・通知指定を受け取った）ディスパッチャ６０は、メッセージを解析し、データ内に含まれる宛先情報及び／又はアクション情報に基づいて、要求された画像データの印刷をプリンタアプリ１１１に実行指示するＷＳ−Ｐｒｉｎｔｅｒ２１pを特定し、特定されたＷＳ−Ｐｒｉｎｔｅｒ２１pに印刷実行の指示要求（Ｃｒｅａｔｅ  ＰｒｉｎｔＪｏｂメッセージを受信した旨）を通知する（ステップＳ１２２）。
【０１２７】
プリンタ１００は、プリンタアプリ１１１により画像データの印刷が行われると、ＷＳ−Ｐｒｉｎｔｅｒ２１pにより印刷開始応答（Ｊｏｂ  ＩＤ）が発行され、発行された印刷開始応答がディスパッチャ６０を介してＳＯＡＰ５０に渡されることで、クライアント端末３００に画像データ印刷の開始応答を要求する（ステップＳ１２３及びＳ１２４）。
【０１２８】
プリンタ１００は、ＳＯＡＰ５０により、要求に応じて、印刷開始応答のＳＯＡＰメッセージ（「Ｃｒｅａｔｅ  ＰｒｉｎｔＪｏｂメッセージ（Ｊｏｂ  ＩＤ）」）がクライアント端末３００に送信される（ステップＳ１２５）。
【０１２９】
このように、本実施形態に係るデータ通信プログラムは、本実施形態に係る画像形成装置１００において、ＤＦＭモジュール２２又はＷＳ−Ｐｒｉｎｔｅｒ２１pに対して外部機器から送信されたメッセージを、ＳＯＡＰ５０により共通して受信し、ディスパッチャ６０により、ＳＯＡＰ５０で受信したＳＯＡＰメッセージ８１及び８２を解析し、メッセージの内容に応じて要求内容を通知する機能部を特定するように機能させることができる。
【０１３０】
＜まとめ＞
以上のように、本発明の第１の実施形態によれば、本実施形態に係る画像形成装置１００は、外部機器と双方向でメッセージ交換を行うデータ送受信機能を画像形成装置１００が有する各機能に対して共通化し（各機能に対してＳＯＡＰモジュールを共通化し）、共通化されたデータ送受信機能により受信されたメッセージの内容に基づいて、要求された処理を行う機能を特定し、特定された機能に対して要求内容を通知する。
【０１３１】
これによって、本実施形態に係る画像形成装置１００は、ネットワーク２００に接続される複数の外部機器に対して、共通したデータ送受信機能を提供する（データ通信のときに使用するポートを一元化する）ことができ、データ通信機能によるリソースの消費を軽減し、外部機器が有する機能と画像形成装置１００が有する機能とを連携することができる「データ通信機能」を提供することができる。
【０１３２】
［第２の実施形態］
本実施形態では、搭載メモリなどのデータ通信プログラムを動作させる資源が少ない画像形成装置の場合を考慮し、データ通信機能によるリソースの消費を軽減し、外部機器が有する機能とローエンドの画像形成装置が有する機能とを連携することができる「データ通信機能」を有するデータ通信装置について説明する。
【０１３３】
第１の実施形態に係る画像形成装置では、画像形成装置が有するコントローラに配置されたＲＯＭからデータ通信プログラムをＲＡＭ上に読み出し、ＣＰＵで実行することにより、外部機器が有する機能と画像形成装置が有する機能との連携を実現していた。しかし、本実施形態では、第１の実施形態に係るデータ通信プログラムのうち、ＳＯＡＰモジュール群を別の装置において実装し、ローエンドの画像形成装置（スペックが低いハードウェアを搭載した画像形成装置）と外部機器との間に上記データ通信装置を配置する構成としたことにより、ローエンドの画像形成装置においても、ネットワークに接続される複数の外部機器に対して、共通したデータ送受信機能を提供する（データ通信のときに使用するポートを一元化する）ことができ、データ通信機能によるリソースの消費を軽減し、外部機器が有する機能とローエンドの画像形成装置が有する機能とを連携することができる。
【０１３４】
以降に、本実施形態に係る画像形成装置１００a〜nについて、図９及び図１０を用いて説明する。また、第１の実施形態と同様の技術的事項については、第１の実施形態で説明を行った図面及び参照符号を用いて本実施形態においての説明を省略する。
【０１３５】
＜データ通信システム＞
図９は、本発明の第２の実施形態に係る画像形成装置１００a〜nとデータ通信装置４００とから構成されるシステムの一例を示す図である。
【０１３６】
図９に示すように、本実施形態に係るデータ通信システムでは、ＳＯＡＰ５０（メッセージ送受信部７１）及びディスパッチャ６０（メッセージ制御部７４）の機能を有するデータ通信装置４００が、ネットワーク２００を介して接続される外部機器と画像形成装置１００a〜nとの間に配置される構成となっている。また、データ通信装置４００は、複数の画像形成装置１００a〜nが接続されることを考慮し、外部機器が接続されるネットワーク２００上を流れるデータを、画像形成装置１００a〜nが接続されるデータ通信装置４００からのネットワークに中継するルーティング機能も有している。
【０１３７】
＜データ通信機能の詳細＞
本実施形態に係るデータ通信装置４００が有する「データ通信機能」において行うディスパッチ処理について、図１０を用いて説明する。
【０１３８】
＜＜ディスパッチ処理（メッセージ内容に応じた機能部の特定）＞＞
本実施形態と第１の実施形態との違いは、ＳＯＡＰメッセージ８２である「ＷＳ−Ｅｖｅｎｔｉｎｇ  Ｓｕｂｓｃｒｉｂｅメッセージ」を受信した場合の処理である。
【０１３９】
（解析結果から機能部を特定）
図１０は、本発明の第２の実施形態に係るＳＯＡＰメッセージ８１及び８２の一例を示す図である。
メッセージ制御部７４が、図１０（a）に示すＳＯＡＰメッセージ８１を解析した場合、メッセージ内の文字列"＜wsa：Action＞http://schemas.xmlsoap.org/ws/2004/09/transfer/Get＜/wsa：Action＞"から、アクション情報に該当する文字列"transfer/Get"（図中の破線枠Ａ）を見つけ、要求された処理を行う機器情報提供部７２を特定する。
【０１４０】
また、図１０（b）に示すＳＯＡＰメッセージ８２を解析した場合、メッセージ内の文字列"＜wsa：Action＞http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe＜/wsa：Action＞"から、アクション情報に該当する文字列"eventing/Subscribe"（図中の破線枠Ｂ２）を見つける。
【０１４１】
しかし、ＳＯＡＰメッセージ８２のような「ＷＳ−Ｅｖｅｎｔｉｎｇ  Ｓｕｂｓｃｒｉｂｅメッセージ」の場合には、上記に説明を行ったアクション情報だけでは、最終的な機能部を特定することができない。なぜなら、「ＷＳ−Ｅｖｅｎｔｉｎｇ  Ｓｕｂｓｃｒｉｂｅメッセージ」により要求される機能を有する複数の画像形成装置１００a〜nがデータ通信装置４００に接続される場合がある。このような場合には、メッセージ制御部７４は、外部機器から「どの画像形成装置１００a〜nが有する入力部７３a又は出力部７３bに対して処理要求を行ったのか」を特定しなければならない。そこで、本実施形態に係るデータ通信装置４００では、第１の実施形態と同様の関連付けデータ９１を予め保持している。
【０１４２】
これによって、メッセージ制御部７４は、メッセージ内の文字列"＜wsa：To＞http://192.168.xxx.xxx：53XX1＜/wsa：To＞"から、まず、宛先情報の文字列"http://192.168.xxx.xxx"（図中の破線枠Ｂ１a）を見つけると、この文字列を参照キーにして、ルーティング機能で用いるルーティングテーブル（非図示）を参照し、該当するＩＰアドレスから画像形成装置１００a〜nを特定する。更に、メッセージ制御部７４は、宛先情報の文字列"53XX1"（図中の破線枠Ｂ１b）を見つけると、この文字列を参照キーにして、図７に示す関連付けデータ９１を参照し（図中の破線枠Ｃ）、該当する「割り当てアプリ」の情報項目に設定されている機能名（図中の"WS-Printer"）から、要求された処理を行う出力部７３bを特定する。
【０１４３】
メッセージ制御部７４は、ＳＯＡＰメッセージ８２による要求内容を、特定した画像形成装置１００a〜nの各機能部に対して通知する。
【０１４４】
このように、本実施形態に係るデータ通信装置４００は、上記に説明を行ったメッセージ制御部７４を有する構成により、データ通信機能によるリソースの消費を軽減し、外部機器が有する機能とローエンドの画像形成装置１００a〜nが有する機能とを連携することができる「データ通信機能」を実現している。
【０１４５】
＜まとめ＞
以上のように、本発明の第２の実施形態によれば、本実施形態に係るデータ通信装置４００は、外部機器と双方向でメッセージ交換を行うデータ送受信機能を、複数の画像形成装置１００が有する各機能に対して共通化し（各機能に対してＳＯＡＰモジュールを共通化し）、共通化されたデータ送受信機能により受信されたメッセージの内容に基づいて、要求された処理を行う画像形成装置１００a〜nとその装置が有する機能を特定し、特定された機能に対して要求内容を通知する。
【０１４６】
これによって、本実施形態に係るデータ通信装置４００は、ネットワーク２００に接続される複数の外部機器に対して、共通したデータ送受信機能を提供する（データ通信のときに使用するポートを一元化する）ことができ、データ通信機能によるリソースの消費を軽減し、外部機器が有する機能とローエンドの画像形成装置１００が有する機能とを連携することができる「データ通信機能」を提供することができる。
【０１４７】
ここまで、上記第１及び第２の実施形態に基づき本発明の説明を行ってきたが、本発明の各実施形態に係る画像形成装置１００が有する「データ通信機能」は、図８に示した処理手順を含む本実施形態に係るデータ通信プログラムを、画像形成装置１００が有するコントローラ１３に配置されたＣＰＵ１３cで実行することで実現することができる。よって、本発明の各実施形態に係る画像形成装置１００が有するデータ通信プログラムは、画像形成装置１００が読み取り可能な記録媒体１２bに格納することができる。
【０１４８】
各実施形態に係るデータ通信プログラムは、フロッピー（登録商標）ディスク、ＣＤ（Compact Disc）、ＤＶＤ（Digital Versatile Disk）などの記録媒体１２bに記憶させることによって、これらの記録媒体１２bを読み取り可能なドライブ装置１２aを有する記憶メディアＩ／Ｆ１２を介して、記録媒体１２bから画像形成装置１００にインストールすることができる。また、画像形成装置１００は、インタフェース装置１４aを有するデータ通信Ｉ／Ｆ１４を備えていることから、インターネットなどの電気通信回線を用いてデータ通信プログラムをダウンロードし、インストールすることも可能である。
【０１４９】
また、上記第２の実施形態において説明を行った外部機器と連携する装置については、画像形成装置に限定されるものではない。画像形成装置１００a〜nは、連携対象の装置の一例であって、標準化Ｗｅｂサービスにより、搭載するアプリケーション機能を提供可能な装置であればよい。また、上記第２の実施形態において説明を行ったデータ通信機能を有する装置については、第２の実施形態に挙げるデータ通信機能専用の装置でなくてもよく、例えば、プリントサーバや電源管理装置であってもよく、第２の実施形態に係るデータ通信機能を実現するプログラムをインストール・実行可能な環境を有し、ネットワーク２００に接続可能なハードウェアを備えた装置であればよい。
【０１５０】
最後に、上記各実施形態に挙げた形状に、その他の要素との組み合わせなど、ここで示した要件に、本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
【図面の簡単な説明】
【０１５１】
【図１】本発明の第１の実施形態に係る画像形成装置のハードウェア構成の一例を示す図である。
【図２】本発明の第１の実施形態に係る画像形成装置のソフトウェア構成の一例を示す図である。
【図３】本発明の第１の実施形態に係るＮＣＳのソフトウェア構成の一例を示す図である。
【図４】本発明の第１の実施形態に係るＷＳ−ＭＦＰモジュール群とＳＯＡＰのソフトウェア構成の一例を示す図である。
【図５】本発明の第１の実施形態に係るデータ通信機能の機能構成の一例を示す図である。
【図６】本発明の第１の実施形態に係るＳＯＡＰメッセージの一例を示す図である。
【図７】本発明の第１の実施形態に係る関連付けデータのデータ構成の一例を示す図である。
【図８】本発明の第１の実施形態に係るデータ通信機能の基本処理手順の一例を示すシーケンス図である。
【図９】本発明の第２の実施形態に係る画像形成装置とデータ通信装置とから構成されるシステムの一例を示す図である。
【図１０】本発明の第２の実施形態に係るＳＯＡＰメッセージの一例を示す図である。
【符号の説明】
【０１５２】
１１  操作パネル
１１a  入力装置
１１b  表示装置
１２  記憶メディアＩ／Ｆ
１２a  ドライブ装置
１２b  記録媒体
１３  コントローラ
１３a  ＲＯＭ
１３b  ＲＡＭ
１３c  ＣＰＵ
１４  データ通信Ｉ／Ｆ
１４a  インタフェース装置
１５  スキャナ
１５a  画像読取装置
１６  プロッタ
１６a  印刷装置
１７  ＨＤＤ
２０  ＷＳ−ＭＦＰモジュール群
２１p  ＷＳ−Ｐｒｉｎｔｅｒ
２１s  ＷＳ−Ｓｃａｎｎｅｒ
２２  ＤＦＭモジュール
３１  ＷＳ−Ｄｉｓｃｏｖｅｒｙ
３２  ＷＳ−Ｔｒａｎｓｆｅｒ
３３  ＷＳ−ＭｅｔａｄａｔａＥｘｃｈａｎｇｅ
３４  ＷＳＤ−Ｍａｎａｇｅｒ
４１p  ＰｒｉｎｔｅｒＤＣＰ
４１s  ＳｃａｎｎｎｅｒＤＣＰ
４２  ＷＳ−Ｅｖｅｎｔｉｎｇ
５０  ＳＯＡＰ
５１  ＳＯＡＰメッセージ送受信
５２  ＳＯＡＰメッセージ生成
６０  ディスパッチャ
７１  メッセージ送受信部
７２  機器情報提供部
７３  アプリケーション管理部
７３a  出力部
７３b  入力部
７４  メッセージ制御部
８１  ＷＳ−Ｔｒａｎｓｆｅｒ  Ｇｅｔメッセージ
８２  ＷＳ−Ｅｖｅｎｔｉｎｇ  Ｓｕｂｓｃｒｉｂｅメッセージ
９１  関連付けデータ
１００、１００a〜n  画像形成装置
１０１  ハードウェアリソース
１０２  エンジンＩ／Ｆ
１０３  ＡＰＩ
１１０  ソフトウェア群
１１１  プリンタアプリ
１１２  コピーアプリ
１１３  ファクスアプリ
１１４  スキャナアプリ
１１５  ネットファイルアプリ
１１６  工程検査アプリ
１１７  配信アプリ
１２０  プラットフォーム
１２１  ＯＳ
１２２  ＳＣＳ
１２３  ＳＲＭ
１２４  ＥＣＳ
１２５  ＭＣＳ
１２６  ＯＣＳ
１２７  ＦＣＳ
１２８  ＮＣＳ
１２９  ＩＭＨ
１３０  アプリケーション
１４０  起動部
１５０  コントロールサービス
２００  ネットワーク
３００  クライアント端末（ＰＣ）
４００  データ通信装置
【図１】
0005072499.tif 000002
【図２】
0005072499.tif 000003
【図３】
0005072499.tif 000004
【図４】
0005072499.tif 000005
【図５】
0005072499.tif 000006
【図６】
0005072499.tif 000007
【図７】
0005072499.tif 000008
【図８】
0005072499.tif 000009
【図９】
0005072499.tif 000010
【図１０】
0005072499.tif 000011