(57)【特許請求の範囲】
【請求項１】
ユーザ装置からの要求に応じて印刷データ生成装置が生成した印刷データを前記印刷データ生成装置から取得して画像形成装置に中継する情報処理装置であって、
前記画像形成装置に対応し、対応する画像形成装置に対して、前記印刷データ生成装置が生成した印刷データを印刷する指示を行う第１の印刷制御手段と、
前記ユーザ装置からの印刷要求に応じた機能であって、前記印刷データ生成装置により提供されていない特定の印刷サービスを実現するための機能を有する第２の印刷制御手段とを備え、
前記第２の印刷制御手段は、
前記ユーザ装置からの印刷要求に応じた印刷データを生成した前記印刷データ生成装置から該印刷データを取得する印刷データ取得手段と、
前記第１の印刷制御手段を介して、前記印刷データ生成装置により提供されていない特定の印刷サービスを実現する処理を実行する画像形成装置に対して、前記取得した印刷データを印刷する指示を行う印刷指示手段と、
前記第１の印刷制御手段と前記第２の印刷制御手段とを前記印刷データ生成装置に対しプリンタとして登録するための登録画面を前記ユーザ装置に提供する提供手段とを備え、
前記登録画面は、各画像形成装置の中から所定の画像形成装置をプリンタとして登録するための項目と、前記特定の印刷サービスをプリンタとして登録するための項目とを含み、
前記印刷データ生成装置は、前記項目に対する入力に基づき、前記第１の印刷制御手段と、第２の印刷制御手段を、前記情報処理装置上で動作するプリンタとして登録する
ことを特徴とする情報処理装置。
【請求項２】
前記第１、第２の印刷制御手段の夫々が、前記印刷データ生成装置が印刷サービスを提供するために公開している通信プロトコルに対応する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記印刷データ取得手段は、前記印刷データ生成装置が備える前記印刷データを送信する送信手段と通信し、
前記印刷指示手段は、前記第１の印刷制御手段が備える、前記画像形成装置に対して前記印刷データを印刷する指示を行う手段と通信する
ことを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記第２の印刷制御手段は、前記ユーザ装置による一度の印刷要求があった場合に、前記印刷データ生成装置から取得した印刷データの印刷を前記画像形成装置に対して指示するまとめ印刷機能、または、前記ユーザ装置による印刷要求があった場合に、前記印刷データ生成装置から取得した印刷データを保存し、前記画像形成装置からの印刷指示を受けたことを契機として、該画像形成装置に対して、前記保存した印刷データの印刷を指示する貯め置き印刷機能を有する
ことを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記第２の印刷制御手段が、前記まとめ印刷機能を有しており、
前記印刷データ生成装置が、前記ユーザ装置による一度の印刷要求に応じた印刷ジョブを生成して前記第２の印刷制御手段に通知し、
前記第２の印刷制御手段が、前記印刷データ生成装置から前記印刷ジョブに応じた印刷データを取得し、前記印刷データ生成装置により提供されていない特定の印刷サービスを実現する処理を実行する画像形成装置の夫々に対応する前記第１の印刷制御手段に対して、前記取得した印刷データを送信し、
前記第２の印刷制御手段から印刷データを受信した前記第１の印刷制御手段の夫々が、対応する前記画像形成装置に対して、前記印刷データの印刷を指示する
ことを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記第２の印刷制御手段が、前記貯め置き印刷機能を有しており、
前記印刷データ生成装置が、前記ユーザ装置による印刷要求に応じた印刷ジョブを生成して前記第２の印刷制御手段に通知し、
前記第２の印刷制御手段が、前記印刷データ生成装置から前記印刷ジョブに応じた印刷データを取得し、
前記印刷データ生成装置により提供されていない特定の印刷サービスを実現する処理を実行する画像形成装置からの印刷指示を受けたことを契機として、該画像形成装置の夫々に対応する前記第１の印刷制御手段に対して、前記取得した印刷データを送信し、
前記第２の印刷制御手段から前記印刷データを受信した前記第１の印刷制御手段の夫々が、対応する前記画像形成装置に対して、前記印刷データの印刷を指示する
ことを特徴とする請求項４に記載の情報処理装置。
【請求項７】
前記第２の印刷制御手段が、前記貯め置き印刷機能を有し、前記印刷データを前記印刷データ生成装置から取得したことを契機として、前記印刷データ生成装置により提供されていない特定の印刷サービスを実現する処理を実行する画像形成装置に対応する前記第１の印刷制御手段に対して前記印刷データを送信する前に、前記印刷データ生成装置に対して印刷の完了を通知する
ことを特徴とする請求項６に記載の情報処理装置。
【請求項８】
ユーザ装置からの要求に応じて印刷データ生成装置が生成した印刷データを前記印刷データ生成装置から取得して画像形成装置に中継する情報処理装置における印刷制御方法であって、
前記情報処理装置は、前記画像形成装置に対応し、対応する画像形成装置に対して、前記印刷データ生成装置が生成した印刷データを印刷する指示を行う第１の印刷制御手段と、前記ユーザ装置からの印刷要求に応じた機能であって、前記印刷データ生成装置により提供されていない特定の印刷サービスを実現するための機能を有する第２の印刷制御手段と、前記第１の印刷制御手段と前記第２の印刷制御手段とを前記印刷データ生成装置に対しプリンタとして登録するための登録画面を前記ユーザ装置に提供する提供手段を備え、
前記登録画面は、各画像形成装置の中から所定の画像形成装置をプリンタとして登録するための項目と、前記特定の印刷サービスをプリンタとして登録するための項目とを含み、
前記印刷データ生成装置は、前記項目に対する入力に基づき、前記第１の印刷制御手段と、第２の印刷制御手段を、前記情報処理装置上で動作するプリンタとして登録し、
前記第２の印刷制御手段が、前記ユーザ装置からの印刷要求に応じた印刷データを生成した前記印刷データ生成装置から該印刷データを取得する工程と、
前記第２の印刷制御手段が、前記第１の印刷制御手段を介して、前記印刷データ生成装置により提供されていない特定の印刷サービスを実現する処理を実行する画像形成装置に対して、前記取得した印刷データを印刷する指示を行う工程とを有する
ことを特徴とする印刷制御方法。
【請求項９】
請求項８に記載の印刷制御方法をコンピュータに実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、印刷制御方法及びコンピュータプログラムに関する。
【背景技術】
【０００２】
クライアントからサーバに対して印刷指示を送信し、印刷指示を受信したサーバが印刷対象のコンテンツを印刷データに変換する印刷システムが提案されている。近年、注目されているクラウドコンピューティングも、サーバがクライアントにサービスを提供するシステム形態の一つである。
【０００３】
クラウドコンピューティングは、多くのコンピューティング・リソースを用いてデータ変換やデータ処理を分散実行し、多くのクライアントからの要求を同時に処理することが主な特徴である。現在、このクラウドコンピューティングを実現するクラウドコンピューティング環境上にＷｅｂサービスを実装し、多種多様なサービスを提供するベンダーが乱立しつつある。
【０００４】
クラウドコンピューティング環境上でサービスを提供するベンダーの中で注目すべきベンダーはＧｏｏｇｌｅ（登録商標）である。Ｇｏｏｇｌｅ（登録商標）は、大規模なデータセンターを多数設立する他、デバイスと連携させて提供するサービスを提案し、デバイスとサービス間のデータ通信の仕組みを開発している。Ｇｏｏｇｌｅ（登録商標）は、画像形成装置と連携してサービスを提供するためのデータ通信の仕組みを開発し、Ｇｏｏｇｌｅ（登録商標）が用意したクラウドコンピューティング環境とデータ通信を画像形成装置が行うためのインタフェースを公開した。このインタフェースを画像形成装置に実装することで、画像形成装置とサーバがインターネットを介して接続されていたとしても、クライアントから画像形成装置を指定し印刷させることが可能になる。
【０００５】
なお、特許文献１は、標準インタフェースの呼び出しを要求するメッセージから、メッセージの送信元のユーザの証明情報を抽出し、証明情報に基づいてユーザの正当性を検証した上で、上記標準インタフェースに応じた処理を実行する通信装置を開示する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００５−２７８１４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
デバイスベンダーが、クラウドコンピューティングベンダーによって公開されているインタフェースに則り、画像形成装置と連携させたサービスを提供する機会が増えていくと考えられる。従って、デバイスベンダーが、他ベンダーとの差別化のため、提供するサービスに独自の機能を実装したい場合がある。
【０００８】
クラウドコンピューティング環境の特性上、クラウドコンピューティング環境に対して提供されるサービスの特徴として、単一の画像形成装置内で完結する機能だけでなく、複数の画像形成装置間での連携が必要な機能が含まれることがある。しかし、クラウドコンピューティングベンダーによって公開されているインタフェースに則り実装された既存のサービスに加え、クラウドコンピューティング環境上に、デバイスベンダー独自の機能を持つ別のサービスを提供する場合、次のような問題が生じる。
【０００９】
新たに追加するデバイスベンダー独自の機能を持つサービスが、クラウドコンピューティングベンダーの想定しない独自の機能を提供する場合、その機能に関するクラウドコンピューティング環境のデータ通信の仕様は存在しない。従って、既存のクラウドコンピューティング環境から利用できるようにするためには、クラウドコンピューティング環境のデータ通信の既存の仕様の変更が必要となってしまう。
【００１０】
例えば、クラウドコンピューティング環境上に配置され、印刷データを印刷データ生成装置から取得し、ネットワークを介して、上記取得した印刷データの印刷を画像形成装置に指示する情報処理装置に、新たな機能が追加された場合を想定する。図２１は、情報処理装置へ新たな機能サービスが追加された場合の問題を説明する図である。ユーザが、印刷データ生成装置に印刷指示を行う。印刷データ生成装置が、この印刷指示に応じた印刷データを、情報処理装置が備えるＶＰ（仮想プリンタ）に送信し、ＶＰが、当該ＶＰに対応するＲＰ（実プリンタ）に対して、印刷データの印刷を指示する。これにより、ユーザは、印刷データ生成装置および情報処理装置を介して、印刷指示に応じた印刷サービスの提供を受けることができる。ここで、図２１中に示すように、情報処理装置に、新たな機能サービスが追加されたものとする。この機能サービスは、印刷データ生成装置が提供していない特定の印刷サービスである。従って、ユーザが、情報処理装置に追加された機能サービスを、既存の印刷データ生成装置を経由して利用できるようにするためには、印刷データ生成装置と情報処理装置との間のデータ通信の既存の仕様を変更しなければならなくなる。
【００１１】
また、情報処理装置への機能サービスの追加に伴い、追加された機能サービスから個別の画像形成装置への印刷指示の際の通信経路（図２１中の点線で示す通信経路）が増加し、個々の画像形成装置に対する通信負荷が増大してしまう。なお、複数の画像形成装置間での連携が必要な機能が追加された場合以外であっても、印刷データ生成装置により提供されていない特定の印刷サービスを実現する機能が情報処理装置に追加された場合には、上述した問題が起こる可能性がある。
【００１２】
本発明は、上述した問題のうちの少なくとも一つを解決するためになされたものである。本発明は、外部装置から取得した印刷データを画像形成装置に中継する情報処理装置であって、情報処理装置に新たな機能が追加された場合に、既存のデータ通信の仕様を変更することなく、この機能に応じたサービスを提供する情報処理装置の提供を目的とする。
【課題を解決するための手段】
【００１３】
本発明の一実施形態の情報処理装置は、ユーザ装置からの要求に応じて印刷データ生成装置が生成した印刷データを前記印刷データ生成装置から取得して画像形成装置に中継する情報処理装置であって、前記画像形成装置に対応し、対応する画像形成装置に対して、前記印刷データ生成装置が生成した印刷データを印刷する指示を行う第１の印刷制御手段と、前記ユーザ装置からの印刷要求に応じた機能であって、前記印刷データ生成装置により提供されていない特定の印刷サービスを実現するための機能を有する第２の印刷制御手段とを備え、前記第２の印刷制御手段は、前記ユーザ装置からの印刷要求に応じた印刷データを生成した前記印刷データ生成装置から該印刷データを取得する印刷データ取得手段と、前記第１の印刷制御手段を介して、前記印刷データ生成装置により提供されていない特定の印刷サービスを実現する処理を実行する画像形成装置に対して、前記取得した印刷データを印刷する指示を行う印刷指示手段と、前記第１の印刷制御手段と前記第２の印刷制御手段とを前記印刷データ生成装置に対しプリンタとして登録するための登録画面を前記ユーザ装置に提供する提供手段とを備え、前記登録画面は、各画像形成装置の中から所定の画像形成装置をプリンタとして登録するための項目と、前記特定の印刷サービスをプリンタとして登録するための項目とを含み、前記印刷データ生成装置は、前記項目に対する入力に基づき、前記第１の印刷制御手段と、第２の印刷制御手段を、前記情報処理装置上で動作するプリンタとして登録する。
【発明の効果】
【００１４】
本発明によれば、外部装置から取得した印刷データを画像形成装置に中継する情報処理装置であって、新たな機能が追加された場合に、既存のデータ通信の仕様を変更することなく、この機能に応じたサービスを提供する情報処理装置を提供することができる。
【図面の簡単な説明】
【００１５】
【図１】実施例１のシステム構成例を示す図である。
【図２】コンテンツ印刷システムを構成する各装置、各サーバのハードウェア構成例を示す図である。
【図３】印刷制御部の機能ブロック図の例である。
【図４】中継仮想プリンタ管理サービスおよび中継仮想プリンタの機能ブロック図の例である。
【図５】機能的中継仮想プリンタの機能ブロック図の例である。
【図６】印刷サービスの機能ブロック図の例である。
【図７】サービス有効・無効情報、印刷サービス情報、プリンタ情報の例である。
【図８】設定ＵＩ及び登録ＵＩの例である。
【図９】ケーパビリティーズ、印刷設定、通知情報Ａ、通知情報Ｂの例である。
【図１０】文書作成サービスの作成画面の例を示す図である。
【図１１】中継仮想プリンタの作成処理を説明するシーケンス図である。
【図１２】機能的中継仮想プリンタの生成・登録処理を示すシーケンス図である。
【図１３】印刷指示を行う処理を示すシーケンス図である。
【図１４】印刷指示を行う処理を示すシーケンス図である。
【図１５】印刷指示を行う処理を示すシーケンス図である。
【図１６】印刷指示を行う処理を示すシーケンス図である。
【図１７】登録ＵＩの例である。
【図１８】他の実施例における印刷中継サーバの機能ブロック図の例である。
【図１９】印刷指示を行う処理を示すシーケンス図である。
【図２０】印刷指示を行う処理を示すシーケンス図である。
【図２１】情報処理装置に新たな機能サービスを追加する場合の問題を説明する図である。
【発明を実施するための形態】
【００１６】
図１は、本発明の実施例１のシステム構成例を示す。実施例１のコンテンツ印刷システム１０００は、まとめ印刷機能を実現する。まとめ印刷機能とは、クライアントコンピュータ１５０による一度の印刷要求があった場合に、複数の画像形成装置に対して印刷データの印刷を指示する機能である。
【００１７】
図１（Ａ）に示すコンテンツ印刷システム１０００は、クライアントコンピュータ１５０、画像形成装置１１０、１２０を備える。クライアントコンピュータと画像形成装置とは、ユーザ環境に配置された装置であり、ネットワーク１００を介して互いに接続されている。ネットワーク１００は、インターネット１０１に接続されている。
【００１８】
また、コンテンツ印刷システム１０００は、Ｗｅｂアプリケーションサーバ１６０、印刷サーバ１４０を含む。Ｗｅｂアプリケーションサーバ１６０と印刷サーバ１４０とが、同じベンダーから提供されたサーバであってもよい。
【００１９】
また、Ｗｅｂアプリケーションサーバ１６０と印刷サーバ１４０とは、ネットワーク１００を介して互いに接続されている。なお、Ｗｅｂアプリケーションサーバ１６０と印刷サーバ１４０とが、インターネット１０１を介して接続されていてもよい。また、コンテンツ印刷システム１０００は、印刷中継サーバ１３０を備える。
【００２０】
印刷中継サーバ１３０は、ユーザ装置であるクライアント装置からの要求に応じて印刷サーバ１４０が生成した印刷データを印刷サーバ１４０から取得して画像形成装置に中継する情報処理装置である。印刷中継サーバ１３０はネットワーク１００に接続されている。コンテンツ印刷システム１０００を構成する各装置、及び各サーバは、インターネット１０１を介して接続可能であり、互いにデータ通信することができる。なお、各装置は図中で示された数である必要はなく、複数台であってもよい。本実施形態の印刷制御方法は、図１に示すシステムが備える装置の機能によって実現される。また、本実施形態のコンピュータプログラムは、当該印刷制御方法をコンピュータに実行させることを特徴とする。
【００２１】
図１（Ｂ）は、コンテンツ印刷システムを構成する各装置、各サーバのハードウェア構成例を示す。図１（Ｂ）では、画像形成装置１１０のハードウェア構成を例にとって説明する。ＣＰＵ（Central Processing Unit ）２０２は、各種プログラムを実行し、画像形成装置１１０全体を制御する。
【００２２】
ＲＯＭ（Read Only Memory）２０３は、各種プログラムを記憶するユニットである。ＲＡＭ（Random Access Memory）２０４は、ＣＰＵ２０２の一時的な作業記憶領域として機能する記憶手段である。ＣＰＵ２０２は、ＲＯＭ２０３に記憶されているプログラムをＲＡＭ２０４にロードしプログラムを実行する。Ｉｎｐｕｔ／Ｏｕｔｐｕｔインタフェース２０５は、画像形成装置１１０に接続されているディスプレイ（不図示）にデータを送信する。
【００２３】
また、Ｉｎｐｕｔ／Ｏｕｔｐｕｔインタフェース２０５は、ポインティングデバイス（不図示）からデータを受信する。ＮＩＣ（Network Interface Card）２０６は、画像形成装置１１０をネットワーク１００に接続する。図１（Ｂ）中に示す各処理部は、バス２０７を介してデータの送受信を行うことが可能である。また、画像形成装置１０１は、印刷ユニット（不図示）を備える。印刷ユニットは、バス２０７を介して、各ユニットとデータを送受信することが可能である。なお、印刷ユニットは、ラスターイメージを記録媒体に印刷することが可能なユニットである。
【００２４】
図２は、コンテンツ印刷システムを構成する各装置、各サーバの機能ブロック図の例である。図２（Ａ）は、実施例１のコンテンツ印刷システムを構成する各装置、各サーバの機能ブロック図である。図２（Ａ）に示す各装置、各サーバの機能を実現するプログラムは、各装置、及び各サーバのＲＯＭ２０３に記憶されている。ＣＰＵ２０２が、ＲＡＭ２０４にプログラムをロードし実行することで、この機能が実現される。
【００２５】
各装置及び各サーバが有する機能について説明する。ここで説明する機能は、次の３つの系に分類される。一つ目の系に分類される機能は、画像形成装置１１０及び１２０を印刷中継サーバ１３０に登録し、印刷中継サーバ１３０内に中継仮想プリンタ３３１及び３３２を実現する、事前登録系に分類される機能である。
【００２６】
二つ目の系に分類される機能は、印刷中継サーバ１３０に機能的中継仮想プリンタ３３３を実現し、印刷サービス３４０に中継仮想プリンタ３３１及び３３２、並びに機能的中継仮想プリンタ３３３を登録する本登録系に分類される機能である。機能的中継仮想プリンタ３３３は、印刷サーバ１４０により提供されていない特定の印刷サービスを実現するための機能を有する。
【００２７】
三つ目の系に分類される機能は、Ｗｅｂアプリケーションサーバ１６０で生成されたコンテンツの印刷指示を印刷サーバ１４０に送信し、印刷サーバ１４０から送信される印刷通知に基づいて、印刷データを画像形成装置に印刷させる印刷系に分類される機能である。
【００２８】
印刷サーバ１４０は、クライアントコンピュータからの要求に応じて印刷データを生成する印刷データ生成装置である。また、印刷サーバ１４０は、仲介役である印刷中継サーバ１３０を介して、画像形成装置１１０乃至１２０に印刷通知を送信し、印刷データを印刷させる。図中では中継仮想プリンタは３３１と３３２の二つしか示されていないが、中継対象となる画像形成装置が複数ある場合は、その分中継仮想プリンタが存在するものとする。同様に、図中では機能的中継仮想プリンタ３３３は一つしか示されていないが、コンテンツ印刷システム１０００の持つ機能が複数ある場合は、その分、機能的中継仮想プリンタが存在する。
【００２９】
実施例１では、機能的中継仮想プリンタ３３３は、まとめ印刷機能を有する。すなわち、機能的中継仮想プリンタ３３３は、クライアントコンピュータによる一度の印刷要求があった場合に、印刷サーバ１４０から取得した印刷データの印刷を画像形成装置に対して指示する。
【００３０】
まず、一つ目の系である事前登録系の機能について説明する。画像形成装置１１０及び１２０を印刷中継サーバ１３０に登録する方法として、画像形成装置１１０及び１２０から登録する方法や、印刷中継サーバ１３０内での画像形成装置１１０及び１２０の設定情報の入力により登録する方法がある。また、印刷中継サーバ１３０と画像形成装置１１０及び１２０が定期的に通信を行うことにより、自動的に印刷中継サーバ１３０内の登録情報を更新する方法もある。以下、画像形成装置１１０及び１２０が、画像形成装置１１０及び１２０を印刷中継サーバ１３０に登録する方法を例にとって説明する。
【００３１】
画像形成装置１１０及び１２０が有する、事前登録系に分類される機能について説明する。画像形成装置１１０及び１２０は、印刷制御部３１０及び３２０を有する。
【００３２】
図３は、印刷制御部の機能ブロック図の例である。図３（Ａ）は、実施例１における印刷制御部の機能ブロック図である。画像形成装置１２０及び印刷制御部３２０も、その構成は画像形成装置１１０及び印刷制御部３１０と同様である。従って、以下の説明では、画像形成装置１１０及び印刷制御部３１０についてのみ言及する。表示部４０１は、各種画面を表示する。仮想プリンタ管理サービス情報保持部４０２は、仮想プリンタ管理サービスの有効／無効を示す情報（以下、サービス有効・無効情報と記述）を有している。
【００３３】
図７（Ａ）は、サービス有効／無効情報の例である。図７（Ａ）に示すサービス有効・無効情報は、仮想プリンタ管理サービスが無効であることを示す。表示部４０１は、中継仮想プリンタ管理サービス３３０に対して画像形成装置１１０の登録を行う処理をユーザから指示された場合に、サービス有効／無効情報に基づいて、図８（Ａ）に示す設定ＵＩを生成して表示する。この設定ＵＩは、中継仮想プリンタ管理サービス３３０に対して画像形成装置１１０の登録を行うためのＵＩである。
【００３４】
中継仮想プリンタ管理サービス３３０に対して画像形成装置１１０の登録を行う場合、ユーザは、図１０（Ａ）に示す設定ＵＩが備える有効化ボタン１００１を押下する。登録部４０３は、ユーザが有効化ボタン１００２を押下したことに応じて、中継仮想プリンタ管理サービス３３０への登録情報を発行する。続いて、登録部４０３は、発行した中継仮想プリンタ管理サービス３３０への登録情報を、中継仮想プリンタ管理サービス３３０が有する要求受信部５０１（図４（Ａ））へ送信する。
【００３５】
ここで、登録情報について説明する。登録情報は、印刷サービスネームを含む。印刷サービスネームは、ユーザが選択した印刷サービスを特定するための情報である。すなわち、印刷サービスネームは、印刷サーバ１４０の印刷サービス３４０を特定するための情報である。また、登録情報は、画像形成装置１１０に割り当てられた固有の識別情報であるＲＰＩＤ（Real Printer ID）を含む。画像形成装置には、夫々固有の識別情報が割り当てられており、この識別情報により各画像形成装置は特定される。本実施例では、ＲＰＩＤを特定することで画像形成装置の配置場所を特定できる。
【００３６】
また、登録情報は、画像形成装置１１０の機種情報であるＰｒｉｎｔｅｒＫｉｎｄを含む。同一機種に同一の機種情報が割り当てられる。なお、二つの画像形成装置が同一機種とは、同一の通信モジュールＢ’を搭載していることを指す。通信モジュールＢ’、及び後述する通信モジュールＡ、通信モジュールＡ’、通信モジュールＢの詳細については別途詳細に説明する。
【００３７】
また、登録情報は、画像形成装置１１０のプリンタネームを含む。プリンタネームは、画像形成装置１１０に割り当てられた名前である。プリンタネームについては、識別情報と異なり、各画像形成装置のプリンタネームが同一である場合もある。
【００３８】
また、登録情報は、ケーパビリティーズを含む。ケーパビリティーズは、画像形成装置１１０の能力を示す情報である。ケーパビリティーズは、例えば、画像形成装置１１０が両面印刷可能であるか否かを示す情報、カラー印刷可能であるか否かを示す情報、及び出力可能ペーパーサイズ等の情報を含む。
【００３９】
図９（Ａ）は、ケーパビリティーズの記述例を示す図である。図９（Ａ）中に示す記述中の＜Ｉｔｅｍ＞が、画像形成装置１１０の能力を示している。この例では、画像形成装置１１０は、面付け印刷可能であり、カラー出力可能であり、Ｂ５サイズ、Ａ４サイズ、及びＡ３サイズの紙を出力可能であることが示される。
【００４０】
次に、印刷中継サーバ１３０が有する事前登録系に分類される機能について説明する。印刷中継サーバ１３０は、中継仮想プリンタ管理サービス３３０を有する。
【００４１】
図４は、中継仮想プリンタ管理サービス及び中継仮想プリンタの機能ブロック図の例である。図４（Ａ）は、中継仮想プリンタ管理サービスの機能ブロック図である。中継仮想プリンタ管理サービス３３０が備える要求受信部５０１は、中継仮想プリンタ管理サービス３３０への登録情報を受信する。制御部５０２は、要求受信部５０１が受信した中継仮想プリンタ管理サービス３３０への登録情報を取得し、解釈する。そして、制御部５０２は、中継仮想プリンタ生成部５０３が中継仮想プリンタ３３１の機能を実現する処理を行うように、中継仮想プリンタ生成部５０３に指示を出す。
【００４２】
中継仮想プリンタ生成部５０３が、中継仮想プリンタ３３１の機能を実現する処理について説明する。中継仮想プリンタ３３１は、図４（Ｂ）に示す各処理部を有するが、詳細については後述する。
【００４３】
中継仮想プリンタ生成部５０３は、制御部５０２から送信されたＰｒｉｎｔｅｒＫｉｎｄに基づいて、インタフェース情報管理部５０７に格納されている通信モジュールＢ（６６０）を特定して取得する。また、中継仮想プリンタ生成部５０３は、印刷サービスネームに基づいて、インタフェース情報管理部５０７に格納されている通信モジュールＡ’（６５０）を特定して取得する。
【００４４】
通信モジュールＢは、画像形成装置１１０と通信を行うためのモジュールである。同一機種は、同じ通信モジュールＢを有するので、ＰｒｉｎｔｅｒＫｉｎｄから通信モジュールＢを特定することが可能である。通信モジュールＢは、印刷制御部３１０が有する通信モジュールＢ’（４１０）と通信を行う。通信モジュールＡ’（６５０）は、印刷サーバ１４０と通信を行うためのモジュールであり、後述する印刷サービス３４０が有する通信モジュールＡ（８５０）と通信を行うことが可能なモジュールである。この通信モジュールＡ（８５０）は、印刷サーバ１４０が印刷サービスを提供するために公開している通信プロトコルを用いて、通信を行う。すなわち、通信モジュールＡ’（６５０）は、この通信プロトコルに対応する。
【００４５】
二つ以上の通信モジュールを取得した中継仮想プリンタ生成部５０３は、これら二つ以上の通信モジュールをロードしたプロセス（スレッド）を実現する。このプロセスが、中継仮想プリンタ３３１に相当する。中継仮想プリンタ３３１は、画像形成装置に対応し、対応する画像形成装置に対して、印刷サーバ１４０が生成した印刷データを印刷する指示を行う第１の印刷制御手段として機能する。
【００４６】
中継仮想プリンタ生成部５０３は、中継仮想プリンタ３３１を実現した後に、実現した中継仮想プリンタ３３１を識別するための識別情報であるＶＰＩＤ（Virtual Printer ID）を発行する。中継仮想プリンタ生成部５０３は、発行したＶＰＩＤを制御部５０２へ送る。なお、中継仮想プリンタ３３１は、画像形成装置１１０から登録情報が送られる度に実現される。実現された夫々の中継仮想プリンタには、固有の識別子であるＶＰＩＤが割り当てられる。本実施例では、ＶＰＩＤを特定することで中継仮想プリンタ３３１を特定できる。
【００４７】
続いて、二つ目の系である本登録系の機能について説明する。印刷中継サーバ１３０に機能的中継仮想プリンタ３３３を実現し、印刷サービス３４０に中継仮想プリンタ、機能的中継仮想プリンタ３３３を登録する方法として、印刷中継サーバ１３０に対して、印刷サービス３４０への登録指示を行う方法がある。以下に、印刷中継サーバ１３０に対して、印刷サービス３４０への登録指示を行う処理について説明する。
【００４８】
はじめに、印刷中継サーバ１３０が有する本登録系に分類される機能について説明する。印刷中継サーバ１３０は、中継仮想プリンタ管理サービス３３０を有する。中継仮想プリンタ管理サービス３３０は、図４（Ａ）に示す各処理部を備える。
【００４９】
表示部５０８は、印刷サービス３４０に対して画像形成装置１１０の登録や機能的中継仮想プリンタ３３３の持つ機能の有効化を行う処理をユーザから指示された場合に、以下の処理を実行する。すなわち、表示部５０８は、印刷サービス情報管理部５０６の登録情報に基づいて、図８（Ｂ）に示すような印刷サービスへの登録ＵＩを生成し表示する。
【００５０】
ユーザは、図８（Ｂ）に示す登録ＵＩ上で、印刷サービス３４０に対するユーザＩＤ、及びパスワードを、設定欄１０１０及び１０１１に入力する。また、ユーザは、印刷サービス３４０に登録する画像形成装置を選択し、選択した画像形成装置に対応するチェックボックス（１０１２、１０１３、または１０１４）にチェックする。
【００５１】
ユーザが、まとめ印刷機能を有効化したい場合には、ユーザは、チェックボックス１０１５にチェックし、登録ボタン１０１６を押下する。表示部５０８は、ユーザが登録ボタン１０１６を押下したことに応じて、印刷サービス３４０への登録情報を、要求受信部５０１へ送信する。
【００５２】
印刷サービス３４０への登録情報について説明する。この登録情報は、ユーザＩＤ、パスワードを含む。ユーザＩＤ及びパスワードは、印刷サービス３４０及びＷｅｂアプリケーションサーバ１６０を利用するために必要な情報である。ユーザＩＤ及びパスワードをユーザ情報と呼ぶ。
【００５３】
なお、Ｗｅｂアプリケーションサーバ１６０及び印刷サーバ１４０を提供するベンダーは同じであることを想定している。従って、ユーザが両方のサーバが提供するサービスを利用する場合は、ユーザは、同じユーザ情報で両方のサービスを受けられる。本実施例においては、ユーザは、事前にＷｅｂアプリケーションサーバ１６０にユーザ情報を登録している。
【００５４】
制御部５０２は、要求受信部５０１が受信した印刷サービス３４０への登録情報を取得し、取得した登録情報を解釈する。そして、制御部５０２は、次の二つの処理を行うように機能的中継仮想プリンタ生成部５０４及び印刷サービスプリンタ生成部５０５へ指示を出す。一つ目の処理は、機能的中継仮想プリンタ生成部５０４が機能的中継仮想プリンタ３３３の機能を実現する処理である。二つ目の処理は、印刷サービスプリンタ生成部５０５が印刷サービス３４０に中継仮想プリンタ３３１及び機能的中継仮想プリンタ３３３の情報を登録させる処理である。
【００５５】
一つ目の処理、即ち、機能的中継仮想プリンタ生成部５０４が機能的中継仮想プリンタ３３３の機能を実現する処理について説明する。機能的中継仮想プリンタ３３３は、クライアントコンピュータからの印刷要求に応じた機能であって、印刷サーバ１４０により提供されていない特定の印刷サービスを実現するための機能を有する第２の印刷制御手段として機能する。
【００５６】
機能的中継仮想プリンタ３３３は、図５（Ａ）に示す各処理部を備えるが、詳細については後述する。機能的中継仮想プリンタ生成部５０４は、印刷サービスネームに基づいて、インタフェース情報管理部５０７に格納されている通信モジュールＡｎ（７６０）及び通信モジュールＡｍ（７６５）を特定して取得する。また、機能的中継仮想プリンタ生成部５０４は、印刷サービスネームに基づいて、インタフェース情報管理部５０７に格納されている通信モジュールＡ’（７５０）を特定して取得する。
【００５７】
通信モジュールＡｎ（７６０）は、中継仮想プリンタ３３１と通信を行うためのモジュールである。通信モジュールＡｍ（７６５）は、中継仮想プリンタ３３２と通信を行うためのモジュールである。通信モジュールＡ’（７５０）は、印刷サーバ１４０と通信を行うためのモジュールであり、後述する印刷サービス３４０が有する通信モジュールＡ（８５０）と通信を行うことが可能なモジュールである。すなわち、通信モジュールＡ’（７５０）は、印刷サーバ１４０が印刷サービスを提供するために公開している通信プロトコルに対応する。
【００５８】
二つ以上の通信モジュールを取得した機能的中継仮想プリンタ生成部５０４は、これら二つ以上の通信モジュールをロードしたプロセス（スレッド）を実現する。このプロセスが、機能的中継仮想プリンタ３３３に相当する。
【００５９】
機能的中継仮想プリンタ生成部５０４は、機能的中継仮想プリンタ３３３を実現した後に、実現した機能的中継仮想プリンタ３３３を識別するための識別情報であるＶＰＩＤ（Virtual Printer ID）を発行する。機能的中継仮想プリンタ３３３には、その機能に応じた固有の識別子であるＶＰＩＤが割り当てられる。発行されたＶＰＩＤは、制御部５０２へ送られる。本実施例では、ＶＰＩＤを特定することで機能的中継仮想プリンタ３３３を特定できる。なお、機能的中継仮想プリンタ３３３から直接画像形成装置１１０へ印刷指示のための通信を行うことはない。
【００６０】
本実施例では、まとめ印刷機能による出力先として、画像形成装置１１０及び１２０を想定しているため、機能的中継仮想プリンタ３３３が通信モジュールＡｎ（７６０）及び通信モジュールＡｍ（７６５）を取得している。しかしながら、機能的中継仮想プリンタ３３３の機能に依存するため、機能的中継仮想プリンタ３３３の構成は、本実施例の構成に限定されるものではない。
【００６１】
続いて、二つ目の処理、即ち、印刷サービスプリンタ生成部５０５が、印刷サービス３４０に中継仮想プリンタ３３１及び機能的中継仮想プリンタ３３３の情報を登録する処理について説明する。本実施例において、印刷サービスプリンタ生成部５０５は、機能的中継仮想プリンタ３３３を生成して印刷サーバ１４０に登録する登録手段として機能する。制御部５０２は、ユーザ情報を印刷サービスプリンタ生成部５０５へ送信する。印刷サービスプリンタ生成部５０５は、受信したユーザ情報に基づいて、印刷サーバ１４０の認証を行う。認証が成功した場合、印刷サービスプリンタ生成部５０５は、印刷サービス３４０にプリンタネーム、ケーパビリティーズ、ＶＰＩＤを送信する。印刷サービスプリンタ生成部５０５は、その応答としてＳＰＩＤ（Service Printer ID）を受信する。ＳＰＩＤについては後述する。
【００６２】
制御部５０２は、中継仮想プリンタ生成部５０３、機能的中継仮想プリンタ生成部５０４からＶＰＩＤを取得する。また、制御部５０２は、印刷サービスプリンタ生成部５０５からＳＰＩＤを取得する。ＶＰＩＤ及びＳＰＩＤを取得した制御部５０２は、印刷サービス情報管理部５０６に、それらの情報を印刷サービス情報の一部として格納するように指示する。
【００６３】
図７（Ｂ）は、印刷サービス情報管理部が格納する印刷サービス情報の例である。印刷サービス情報管理部５０６は、ＶＰＩＤ、ＳＰＩＤ、及び登録情報を、図７（Ｂ）に示すように関連付け、これを印刷サービス情報として格納する。
【００６４】
ＶＰＩＤが９１１、印刷サービスネームが９１２、ＲＰＩＤが９１３、ＰｒｉｎｔｅｒＫｉｎｄが９１４、ＳＰＩＤが９１５、プリンタネームが９１６、ケーパビリティーズが９１７に相当する。
【００６５】
次に、印刷サーバ１４０の有する本登録系に分類される機能について説明する。印刷サーバ１４０は、印刷サービス３４０を有する。印刷サーバ１４０は、複数台のサーバを仮想化して１台のサーバとし、その１台のサーバで印刷サービス３４０の機能を実現する。なお、印刷サーバ１４０は、その１台のサーバ内に複数のヴァーチャルマシンを起動し、夫々のヴァーチャルマシンに対して印刷サービス３４０の機能を実現させている。図２（Ａ）に示す印刷サービス３４０は、その内の１台である。
【００６６】
図６は、印刷サービスの機能ブロック図の例である。印刷サービス３４０が備えるプリンタ情報登録部８０１は、印刷サービスプリンタ生成部５０５からユーザ情報を受信する。プリンタ情報登録部８０１は、印刷サービスプリンタ生成部５０５から受信したユーザ情報に対応するユーザが存在するか否かを確認する。存在する場合、プリンタ情報登録部８０１は、認証が成功したと判断し、プリンタネーム、ケーパビリティーズ、ＶＰＩＤを印刷サービスプリンタ生成部５０５から受信する。そして、プリンタ情報登録部８０１は、プリンタ情報格納部８０２に対して、受信したＶＰＩＤを格納するように指示する。
【００６７】
また、プリンタ情報登録部８０１は、ＶＰＩＤに対応するＳＰＩＤを発行し、プリンタ情報格納部８０２、及び印刷サービスプリンタ生成部５０５に発行したＳＰＩＤを送信する。プリンタ情報格納部８０２は、プリンタネーム、ケーパビリティーズ、ＶＰＩＤ、ＳＰＩＤ、ユーザＩＤ、パスワードを関連付けて格納する。
【００６８】
図７（Ｃ）は、プリンタ情報格納部が格納するプリンタ情報の例である。プリンタ情報は、ＳＰＩＤ９２１、プリンタネーム９２２、ケーパビリティーズ９２３、ＶＰＩＤ９２４、ユーザＩＤ９２５、パスワード９２６を含む。
【００６９】
以上が、印刷サービス３４０に機能的中継仮想プリンタ３３３を実現し、中継仮想プリンタ３３１及び３３２、並びに機能的中継仮想プリンタ３３３を登録する本登録系に分類される機能の説明である。
【００７０】
次に、印刷系に分類される機能について説明する。始めに、クライアントコンピュータ１５０が有する機能について説明する。図２（Ａ）に示すように、クライアントコンピュータ１５０は、Ｗｅｂブラウザ３５０を有する。Ｗｅｂブラウザ３５０は、Ｗｅｂアプリケーションサーバ１６０に保存されているコンテンツの印刷指示を、Ｗｅｂアプリケーションサーバ１６０に送信する。
【００７１】
また、Ｗｅｂブラウザ３５０は、Ｗｅｂアプリケーションサーバ１６０から印刷サーバ１４０へのアクセス命令、即ち、リダイレクトの指示を受信し、受信したリダイレクトの指示に従い印刷サーバ１４０へアクセスする。また、Ｗｅｂブラウザ３５０は、そのＷｅｂブラウザ３５０を利用しているユーザが印刷可能な画像形成装置の一覧リストを、アクセスした印刷サーバ１４０から取得し一覧リストを表示する。また、Ｗｅｂブラウザ３５０は、その一覧リストからユーザが選択した画像形成装置に対応する印刷設定画面を、印刷サーバ１４０から取得しその印刷設定画面を表示する。
【００７２】
図８（Ｄ）は、Ｗｅｂブラウザが表示する印刷設定画面（設定ＵＩ）を示す。この印刷設定画面は、ユーザが選択した画像形成装置に対応する。また、Ｗｅｂブラウザ３５０は、その印刷設定画面でユーザが設定した印刷設定値を印刷サーバ１４０へ送信する。以上が、クライアントコンピュータ１５０が有するＷｅｂブラウザ３５０の説明である。
【００７３】
次に、Ｗｅｂアプリケーションサーバ１６０が有する機能について説明する。図２（Ａ）に示すように、Ｗｅｂアプリケーションサーバ１６０は、Ｗｅｂアプリケーション３６０を有する。Ｗｅｂアプリケーションサーバ１６０は、複数台のサーバを仮想化して１台のサーバとし、その１台のサーバでＷｅｂアプリケーション３６０の機能を実現している。なお、Ｗｅｂアプリケーションサーバ１６０は、その１台のサーバ内に複数のヴァーチャルマシンを起動し、夫々の仮想マシンに対して、Ｗｅｂアプリケーション３６０の機能を実現させている。
【００７４】
Ｗｅｂアプリケーション３６０は、文書作成サービスを提供する。ユーザは、例えば、会社の会議で資料を配布したい場合に、その資料を作成するため文書作成サービスを利用する。クライアントコンピュータ１５０がＷｅｂアプリケーション３６０を利用する場合は、クライアントコンピュータ１５０にそのアプリケーションをインストールする必要はなく、Ｗｅｂブラウザ３５０を有していれば良い。Ｗｅｂアプリケーション３６０は、その資料を作成するための画面情報を、Ｗｅｂブラウザ３５０に送信する。
【００７５】
Ｗｅｂアプリケーション３６０は、Ｗｅｂブラウザ３５０を介してユーザが入力したユーザＩＤ、及びパスワードを含むユーザ情報に基づいて認証を行い、認証が成功したことに応じて資料を作成するための画面情報を送る。その画面情報を受信したＷｅｂブラウザ３５０は、その画面情報に基づいて文書を作成するための作成画面を表示し、ユーザはその作成画面を用いて会議で配布する資料を作成する。Ｗｅｂアプリケーション３６０は、ユーザがその作成画面を用いて作成した資料の情報を受信し、受信した情報に基づいてコンテンツを作成し、Ｗｅｂアプリケーションサーバ１６０の記憶装置に作成したコンテンツを記憶させる。なお、Ｗｅｂアプリケーション３６０は、文書作成サービスに限らずメールサービス、スケジュールサービスも提供している。
【００７６】
図１０は、文書作成サービスの作成画面の例を示す図である。文書作成サービスを利用して作成したコンテンツ１２０２を印刷したいユーザは、文書作成サービスの作成画面に表示されている印刷ボタン１２０１を押す。Ｗｅｂアプリケーション３６０は、印刷ボタン１２０１が押されたという情報を受信し、印刷サーバ１４０へのアクセス命令、即ち、リダイレクトの指示をＷｅｂブラウザ３５０へ送信する。
【００７７】
リダイレクト指示は、Ｗｅｂブラウザ３５０を利用しているユーザに対応する一覧リストを取得するための要求（一覧リスト取得要求）、ユーザが印刷を指示したコンテンツを識別するためのコンテンツ識別情報、及びユーザ情報を含む。また、Ｗｅｂアプリケーション３６０は、印刷サーバ１４０からコンテンツの取得要求があった場合に、そのコンテンツの取得要求と共に送られたコンテンツ識別情報に基づいて、対象のコンテンツを取得して印刷サーバ１４０へ送信する。以上が、Ｗｅｂアプリケーションサーバ１６０が有するＷｅｂアプリケーション３６０の説明である。
【００７８】
次に、印刷サーバ１４０の有する印刷系に分類される機能について説明する。図６は、印刷サーバが備える印刷サービスの機能ブロック図の例である。印刷サービス３４０は、プリンタ情報提示部８０３を備える。プリンタ情報提示部８０３は、Ｗｅｂブラウザ３５０から一覧リスト取得要求を受ける。プリンタ情報提示部８０３は、一覧リスト取得要求を受けたことに応じて、一覧リストをＷｅｂブラウザ３５０に送信する。なお、プリンタ情報提示部８０３は、ユーザ情報に基づいて、プリンタ情報格納部８０２が格納しているＳＰＩＤ、プリンタネームを特定する。そして、プリンタ情報提示部８０３は、ＳＰＩＤ、プリンタネームに基づいて、ユーザが利用可能な画像形成装置の一覧リストを生成する。また、プリンタ情報提示部８０３は、一覧リストからユーザが選択した画像形成装置のＳＰＩＤを受信する。
【００７９】
プリンタ情報提示部８０３は、受信したＳＰＩＤに基づいて、プリンタ情報格納部８０２が格納しているケーパビリティーズを特定して、印刷設定画面を生成し、生成した印刷設定画面をＷｅｂブラウザ３５０へ送信する。
【００８０】
プリンタ情報格納部８０２は、例えば、図９（Ａ）に示すケーパビリティーズの情報に基づいて、図８（Ｄ）に示す印刷設定画面を生成する。図８（Ｄ）に示すように、プリンタ情報格納部８０２は、ケーパビリティーズに記述された印刷設定しか選択できない印刷設定画面を生成する。印刷指示受付部８０４は、印刷設定画面を介して設定された印刷設定と、ＳＰＩＤとを、Ｗｅｂブラウザ３５０から受信する。また、印刷指示受付部８０４は、Ｗｅｂブラウザ３５０がリダイレクトの指示に基づいてアクセスしてきた場合に、ユーザが印刷を指示した印刷データを識別するための印刷データ識別情報を受信する。
【００８１】
印刷データ情報取得部８０５は、印刷指示受付部８０４から印刷データ識別情報を受信する。また、印刷データ情報取得部８０５は、印刷指示受付部８０４からユーザが入力した印刷設定、及びユーザが選択した画像形成装置に対応するＳＰＩＤを受信する。制御部８０６は、印刷データ情報取得部８０５から印刷データ識別情報、印刷設定、ＳＰＩＤを取得する。印刷設定は、図９（Ｂ）のように、ＸＭＬ形式で記述されている。
【００８２】
図９（Ｂ）に示す印刷設定の記述例によれば、ユーザは、両面設定、モノクロ設定、及び用紙サイズＡ４を設定したことが分かる。通信モジュールＡ（８５０）は、通信モジュールＡ’（６５０）を有する装置及び通信モジュールＡ’（７５０）を有する装置と通信を行うことが可能である。すなわち、通信モジュールＡ（８５０）は、二者間のデータ通信のインタフェースである。通信モジュールＡ’（６５０）及び通信モジュールＡ’（７５０）以外の通信モジュールは、通信モジュールＡ（８５０）と通信を行うことができない。
【００８３】
図６に戻って、通信モジュールＡ（８５０）は、印刷ジョブ通知部８５１、印刷設定格納部８５２、印刷データ格納部８５３を備える。印刷データ格納部８５３は、制御部８０６から印刷データ識別情報を受信し格納する。印刷設定格納部８５２は、制御部８０６から印刷設定を受信し格納する。なお、印刷データ格納部８５３及び印刷設定格納部８５２は、制御部８０６からの格納指示を受信し格納処理を行う。制御部８０６は、印刷データ格納部８５３及び印刷設定格納部８５２から格納が終了した旨を受信したことに応じて、印刷ジョブ通知部８５１に通知情報を送るように指示をする。
【００８４】
印刷ジョブ通知部８５１は、制御部８０６から通知情報を送るように指示されたことに応じて、ＳＰＩＤを制御部８０６から取得し、プリンタ情報格納部８０２が格納しているプリンタ情報に基づいて、ＶＰＩＤを特定する。なお、ＳＰＩＤに対応する送信先の情報、即ち、本実施例におけるＶＰＩＤをターゲットと呼ぶ。ユーザは、ＳＰＩＤを選択することでＶＰＩＤを指定する。
【００８５】
また、印刷ジョブ通知部８５１は、印刷データの格納場所、及び印刷設定の格納場所を制御部８０６から取得して、通知情報Ａを生成し、登録されている画像形成装置に通知情報Ａを送信する。印刷ジョブ通知部８５１は、第１の送信手段である。また、印刷ジョブ通知部８５１が送信する情報は、データに関する情報である。本実施例におけるデータに関する情報は、通知情報Ａであるが、通信仕様に応じてその他の情報、データ等も含む場合もある。また、本実施例において、登録されている画像形成装置とは、ＶＰＩＤに対応する中継仮想プリンタを指す。通知情報は、図９（Ｃ）に示すようなＸＭＬで記述されている。１１０１に印刷データの格納場所が、１１０２に印刷設定の格納場所が記述されている。
【００８６】
ここで、なぜ、通信モジュールＡ’以外の通信モジュールが、通信モジュールＡと通信できないかを説明する。それは、通信モジュールＡ’以外の通信モジュールは、印刷ジョブ通知部８５１が送信するＸＭＬで記載された通知情報Ａを解釈することができないからである。また、通信モジュールＡ’以外の通信モジュールが、通信モジュールＡと通信できない他の例として、次のような例もある。例えば、通信モジュールＡが印刷ジョブ通知部８５１を有しておらず、別の方法で印刷データ、及び印刷設定を通信モジュールＡ’に取得させる場合、通知情報Ａを取得する通信モジュールＡ’では取得することができない。なぜなら、通知情報Ａを取得する通信モジュールＡ’は、通信モジュールＡからの通知情報Ａを待つ状態となっているため、通知情報Ａが通知されない限り印刷データ、及び印刷設定を取得することができないからである。
【００８７】
通信モジュールＡと通信できる通信モジュールＡ’には、通信モジュールＡに対し取得するデータが存在するか否かを問い合わせる機能が必要である。このように、通信モジュールＡ’が、通信モジュールＡのデータ通信の規格に対応していないことに起因して、通信モジュールＡと通信モジュールＡ’とが通信できない場合もある。
【００８８】
通信モジュールＡと、通信モジュールＡ’が通信を行えるような仕組みを、印刷サーバ１４０を提供するベンダーの仕様と呼ぶ。そして、この仕様は、印刷サーバ１４０を管理しているベンダーに強く依存する。なお、印刷サーバ１４０を管理しているベンダーが公開するデータ通信の仕様は、第１の仕様である。通信モジュールＡ及び通信モジュールＡ’のインタフェースは、第１の仕様に準じて作成されるインタフェースである。
【００８９】
次に、印刷中継サーバ１３０の印刷系に分類される機能について説明する。まず、中継仮想プリンタ３３１について説明する。なお、中継仮想プリンタ３３２の構成は、中継仮想プリンタ３３１の構成と同様であるため、以下の説明では、中継仮想プリンタ３３１についてのみ言及する。
【００９０】
図６は、中継仮想プリンタの機能ブロック図の例を示す。中継仮想プリンタ３３１は、通信モジュールＡ’（６５０）及び通信モジュールＢ（６６０）を備える。通信モジュールＡ’（６５０）の印刷通知受付部６５１は、印刷ジョブ通知部８５１から送信される通知情報Ａを受信する。印刷サービス３４０には、画像形成装置１１０のＲＰＩＤではなく中継仮想プリンタ３３１が登録されているため、通知情報Ａは印刷通知受付部６５１に送信される。そして、この通信モジュールＡ’は、通信モジュールＡと対をなすモジュールであるため、印刷通知受付部６５１は、通知情報Ａを解釈することが可能である。印刷通知受付部６５１が第１の取得手段に相当する。
【００９１】
印刷通知受付部６５１は、通知情報Ａに記載されている印刷データの格納場所、及び印刷設定の格納場所を確認し、夫々の情報を印刷設定取得部６５２、印刷データ取得部６５３に通知する。印刷設定取得部６５２は、通知された印刷設定の格納場所に基づいて、印刷設定格納部８５２から印刷設定を取得する。印刷データ取得部６５３は、通知された印刷データの格納場所に基づいて、印刷データ格納部８５３から印刷データを取得する。
【００９２】
印刷データ取得部６５３は、印刷データ格納部６６３に対して、印刷データ取得部６５３が取得した印刷データを格納するように指示する。印刷設定取得部６５２は、印刷設定格納部６６２に対して、印刷設定取得部６５２が取得した印刷設定を格納するように指示する。印刷データ格納部６６３は、印刷データを格納し、その格納場所を印刷ジョブ通知部６６１に通知する。また、印刷設定格納部６６２は、印刷設定を格納し、その格納場所を印刷ジョブ通知部６６１に通知する。印刷ジョブ通知部６６１は、印刷データ格納部６６３及び印刷設定格納部６６２から格納場所の通知を受け付けたことに応じて、通知情報Ｂを生成する。
【００９３】
通知情報Ｂは、図９（Ｄ）に示すようなＸＭＬ形式で記述される。符号１１０３は、印刷データの格納場所の記述例を示す。符号１１０４は、印刷設定の格納場所の記述例を示す。印刷ジョブ通知部６６１は、通知情報Ｂを画像形成装置の印刷制御部３１０（３２０）へ送信する。印刷ジョブ通知部６６１が第２の送信手段として機能する。これにより、画像形成装置に対して、印刷データを印刷する指示が行われる。以上のようにして、通信モジュールＡ’（６５０）は、通信モジュールＢ（６６０）に印刷データ及び印刷設定を渡し、モジュール間通信を実現する。
【００９４】
通信モジュールＢに対応する通信モジュールＢ’は、画像形成装置１１０に実装されている。これにより、中継仮想プリンタ３３１から画像形成装置１１０に対して通知情報を送ることができる。
【００９５】
図５（Ａ）は、実施例１における機能的中継仮想プリンタの機能ブロック図の例である。機能的中継仮想プリンタ３３３は、通信モジュールＡ’７５０を有する。通信モジュールＡ’７５０が備える印刷通知受付部７５１は、印刷ジョブ通知部８５１から送信される通知情報Ａを受信する。印刷サービス３４０には、機能的中継仮想プリンタ３３３が登録されているため、通知情報Ａは印刷通知受付部７５１に送信される。そして、通信モジュールＡ’は、通信モジュールＡと対をなすモジュールであるため、印刷通知受付部７５１は、通知情報Ａを解釈することが可能である。印刷通知受付部７５１が第１の取得手段に相当する。
【００９６】
印刷通知受付部７５１は、通知情報Ａに記載されている印刷データの格納場所と印刷設定の格納場所を確認し、印刷データの格納場所を印刷設定取得部７５２に通知する。また、印刷通知受付部７５１は、印刷データの格納場所を印刷データ取得部７５３に通知する。印刷設定取得部７５２は、通知された印刷設定の格納場所に基づいて、印刷設定格納部８５２から印刷設定を取得する。印刷データ取得部７５３は、通知された印刷データの格納場所に基づいて、印刷データ格納部８５３から印刷データを取得する。すなわち、印刷データ取得部７５３は、クライアントコンピュータからの印刷要求に応じた印刷データを生成した印刷サーバ１４０から該印刷データを取得する印刷データ取得手段として機能する。
【００９７】
本実施例において、機能的中継仮想プリンタ３３３はまとめ印刷機能を有している。機能的中継仮想プリンタ３３３の通信モジュールＡ’７５０を介して通知され、取得された印刷ジョブは、通信モジュールＡｎ７６０及び通信モジュールＡｍ７６５を介して、中継仮想プリンタ３３１及び３３２へ通知される。具体的には、印刷データ取得部７５３が、印刷サーバ１４０が備える印刷データを送信する送信手段（通信モジュールＡ）と通信して、印刷データを取得する。そして、印刷データ取得部７５３が、印刷データ格納部７６３及び７６８に対して、印刷データ取得部７５３が取得した印刷データを格納するように指示する。
【００９８】
印刷設定取得部７５２は、印刷設定格納部７６２及び７６７に対して、印刷設定取得部７５２が取得した印刷設定を格納するように指示する。印刷データを格納した印刷データ格納部７６３及び７６８は、格納場所を印刷ジョブ通知部７６１及び７６６に通知する。印刷設定を格納した印刷設定格納部７６２及び７６７は、格納場所を印刷ジョブ通知部７６１及び７６６に通知する。
【００９９】
印刷ジョブ通知部７６１及び７６６は、印刷データ格納部７６３及び７６８、並びに印刷設定格納部７６２及び７６７から格納場所の通知を受け付けたことに応じて、通知情報Ａを生成する。通知情報Ａには、印刷データの格納場所と印刷設定の格納場所が記述されている。印刷ジョブ通知部７６１及び７６６は、通知情報Ａを中継仮想プリンタ３３１及び３３２へ送信する。印刷ジョブ通知部７６１及び７６６が第１の送信手段に相当する。そして、印刷ジョブ通知部７６１及び７６６は、中継仮想プリンタ３３１が備える、通信モジュールＡ’（図４（Ｂ））を介して、画像形成装置に対して印刷データを印刷する指示を行う手段（図４（Ｂ）中の印刷ジョブ通知部６６１）と通信する。すなわち、印刷ジョブ通知部７６１及び７６６は、中継仮想プリンタを介して、印刷サーバ１４０により提供されていない特定の印刷サービスを実現する処理を実行する画像形成装置に対して、取得した印刷データを印刷する指示を行う印刷指示手段である。
【０１００】
続いて、画像形成装置１１０及び１２０の印刷系に分類される機能について説明する。なお、画像形成装置１２０の構成は、画像形成装置１１０の構成と同様であるため、以下の説明では、画像形成装置１１０についてのみ言及する。
【０１０１】
図３（Ａ）に示すように、印刷制御部３１０は、通信モジュールＢ’（４１０）を有している。通信モジュールＢ’（４１０）の印刷通知受付部４１１は、印刷ジョブ通知部６６１から送信されてくる通知情報Ｂを受信する。印刷通知受付部４１１が第２の取得手段に相当する。通信モジュールＢ’は、通信モジュールＢと対を成すモジュールであるため、印刷通知受付部４１１は、通知情報Ｂを解釈することが可能である。なお、中継仮想プリンタ３３１と画像形成装置１１０がデータ通信を行うためにデバイスベンダーが規定した仕様は、第２の仕様に相当し、デバイスベンダーがハンドリング可能な仕様である。通信モジュールＢ、及び通信モジュールＢ’のインタフェースは、第２の仕様に準じて作成されるインタフェースである。
【０１０２】
印刷通知受付部４１１は、通知情報Ｂに記載されている印刷データの格納場所と印刷設定の格納場所を確認する。印刷通知受付部４１１は、印刷設定の格納場所を印刷設定取得部４１２に通知する。また、印刷通知受付部４１１は、印刷データの格納場所を印刷データ取得部４１３に通知する。印刷設定取得部４１２は、通知された印刷設定の格納場所に基づいて、印刷設定格納部６６２から印刷設定を取得する。
【０１０３】
印刷データ取得部４１３は、通知された印刷データの格納場所に基づいて、印刷データ格納部６６３から印刷データを取得する。取得された印刷設定及び印刷データは、印刷通知受付部４１１を介してジョブ管理部４０７へ送信される。ジョブ管理部４０７は、印刷データと印刷設定情報を取得し、印刷実行部４０８に対して印刷の実行を指示する。指示を受けた印刷実行部４０８は、印刷設定と印刷データに基づいて、ラスターイメージを生成し、生成したラスターイメージを印刷するよう印刷ユニットに指示を出す。
【０１０４】
以上が、Ｗｅｂアプリケーションサーバ１６０で生成されたコンテンツの印刷指示を印刷サーバ１４０に送信し、印刷サーバ１４０から送信される印刷データを画像形成装置１１０に印刷させる、印刷系に分類される機能の説明である。
【０１０５】
次に、事前登録系に分類される処理、本登録系に分類される処理、印刷系に分類される処理のそれぞれについて、図１１乃至図１４のシーケンス図を用いて説明する。
【０１０６】
図１１は、中継仮想プリンタの作成処理を説明するシーケンス図の例である。図１１に示す中継仮想プリンタの作成処理は、画像形成装置１１０及び１２０を印刷中継サーバ１３０に登録し、印刷中継サーバ１３０内に中継仮想プリンタ３３１及び３３２を実現する。
【０１０７】
まず、Ｓ１３００において、ユーザは画像形成装置１１０のＵＩから中継仮想プリンタ管理サービスへの登録操作を行う。Ｓ１３０１において、画像形成装置１１０の印刷制御部３１０は、中継仮想プリンタ管理サービス３３０にプリンタの登録を要求する。Ｓ１３０２において、中継仮想プリンタ管理サービス３３０は、登録情報に基づいて中継仮想プリンタ３３１を実現する。
【０１０８】
Ｓ１３０３において、中継仮想プリンタ３３１は、作成成功の応答を中継仮想プリンタ管理サービス３３０へ送信する。Ｓ１３０４において、中継仮想プリンタ管理サービス３３０は、プリンタの登録が完了した旨を印刷制御部３１０に通知する。Ｓ１３０５において、印刷制御部３１０は、画像形成装置１１０のＵＩに画像形成装置の登録が完了した旨を表示するよう指示を出す。なお、Ｓ１３１０からＳ１３１５までの処理は、画像形成装置１２０を印刷中継サーバ１３０に登録する処理である。この処理は、Ｓ１３００からＳ１３０５までの処理と同様であるため、説明は省略する。以上が、一つ目の事前登録処理の説明となる。
【０１０９】
図１２は、機能的中継仮想プリンタの生成・登録処理を説明するシーケンス図の例である。続いて、二つ目の事前登録処理として、印刷サービス３４０に機能的中継仮想プリンタ３３３を実現し、中継仮想プリンタ３３１及び３３２、並びに機能的中継仮想プリンタ３３３を登録する処理を説明する。
【０１１０】
Ｓ１４００において、ユーザは、Ｗｅｂブラウザ３５０を介して、中継仮想プリンタ管理サービス３３０のＵＩから、印刷サービスに登録するデバイス及び機能を選択し、ユーザＩＤ、パスワードを入力することで、印刷サービス３４０への登録を要求する。Ｓ１４０１において、中継仮想プリンタ管理サービス３３０は、登録要求の中に機能的中継仮想プリンタ３３３が含まれるか否かを判断する。
【０１１１】
登録要求の中に機能的中継仮想プリンタ３３３が含まれる場合、Ｓ１４５０において、中継仮想プリンタ管理サービス３３０は、登録情報に基づいて機能的中継仮想プリンタ３３３を実現する。Ｓ１４５１において、機能的中継仮想プリンタ３３３は、作成成功の応答として、ＶＰＩＤを中継仮想プリンタ管理サービス３３０へ送信する。Ｓ１４０２において、中継仮想プリンタ管理サービス３３０は、印刷サービス３４０にユーザＩＤ及びパスワードを送信し認証を受ける。印刷サービス３４０による認証が成功した場合、Ｓ１５０３において、印刷サービス３４０は、中継仮想プリンタ管理サービス３３０に認証が成功したことを通知する。
【０１１２】
Ｓ１４０４において、中継仮想プリンタ管理サービス３３０は、印刷サービス３４０がユーザに提供するプリンタ（サービスプリンタ）としてＶＰＩＤを登録するように要求する。Ｓ１４０５において、印刷サービス３４０は、ＶＰＩＤをサービスプリンタとして登録したことに応じて、ＳＰＩＤを発行し、中継仮想プリンタ管理サービス３３０に送信する。Ｓ１４０６において、中継仮想プリンタ管理サービス３３０は、印刷サービス情報の更新を行う。
【０１１３】
Ｓ１４１０において、中継仮想プリンタ管理サービス３３０は、ＳＰＩＤを格納するよう印刷サービス情報管理部５０６に指示し、設定が完了したことを中継仮想プリンタ３３１に通知する。Ｓ１４１１において、中継仮想プリンタ３３１は、ＳＰＩＤに基づいて、印刷サービス３４０の通信モジュールＡに接続し、通知情報Ａが送信されるのを待つ。
【０１１４】
Ｓ１４２０からＳ１４２１までの処理は、中継仮想プリンタ３３２に対応する処理である。この処理は、Ｓ１４１０からＳ１４１１までの処理と同様であるため、説明を省略する。また、Ｓ１４３０からＳ１４３１までの処理は、機能的中継仮想プリンタ３３３に対応する処理である。この処理は、Ｓ１４１０からＳ１４１１までの処理と同様であるため、説明を省略する。
【０１１５】
Ｓ１４４０において、中継仮想プリンタ管理サービス３３０は、プリンタの登録が完了したことをＷｅｂブラウザ３５０に通知する。上述した処理によって印刷サービス３４０に登録された機能的中継仮想プリンタ３３３は、印刷サービス３４０に対しては、中継仮想プリンタ３３１及び３３２と同様の振舞いを示す。すなわち、印刷サーバ１４０は、機能的中継仮想プリンタと中継仮想プリンタとを、機能の違いを意識することなく、印刷中継サーバ上すなわち情報処理装置上で動作するプリンタとして登録している。これにより、印刷中継サーバに、既存のデータ通信の仕様の変更なしに、新たな機能を追加することが可能となる。本発明によれば、印刷中継サーバ１３０に新たな機能が追加された場合に、印刷中継サーバ１３０が、既存のデータ通信の仕様を変更することなく、この機能に応じたサービスを提供することができる。
【０１１６】
図１３及び１４は、画像形成装置に対する印刷指示を行う処理を説明するシーケンス図の例である。以下に、Ｗｅｂアプリケーションサーバ１６０で生成された印刷データを画像形成装置に印刷させる処理について説明する。本実施例では、機能的中継仮想プリンタ３３３が、まとめ印刷機能を有する。そして、画像形成装置１１０及び１２０が連携して、当該まとめ印刷機能に対応する処理を実行する。
【０１１７】
図１３のＳ１５０１において、Ｗｅｂブラウザ３５０は、ユーザが編集を行いたいコンテンツ（文書）の表示を、Ｗｅｂアプリケーション３６０に要求する。Ｓ１５０２において、Ｗｅｂアプリケーション３６０は、要求されたコンテンツに対応するコンテンツの画面をＷｅｂブラウザ３５０に送信する。
【０１１８】
Ｓ１５０３において、Ｗｅｂブラウザ３５０は、ユーザがコンテンツの画面を介して印刷を指示したことに応じて、印刷サービス３４０に登録されている画像形成装置（サービスプリンタ）の一覧画面を要求する。
【０１１９】
Ｓ１５０４において、印刷サービス３４０は、対応するサービスプリンタの一覧画面を、Ｗｅｂブラウザ３５０に送信する。Ｓ１５０５において、Ｗｅｂブラウザ３５０は、ユーザが一覧画面から画像形成装置を選択したことに応じて、選択された画像形成装置に対応する印刷設定画面を要求する。Ｓ１５０６において、印刷サービス３４０は、印刷設定画面をＷｅｂブラウザ３５０に送信する。Ｓ１５０７において、Ｗｅｂブラウザ３５０は、ユーザが印刷設定画面を介して入力した印刷設定を印刷サービス３４０に送信する。
【０１２０】
Ｓ１５０８において、印刷サービス３４０は、ユーザが印刷を指示した印刷データの識別情報をＷｅｂアプリケーション３６０から取得する。また、印刷サービス３４０は、印刷データの識別情報と、印刷設定とを組み合わせて、ジョブを生成する。Ｓ１５０９において、印刷サービス３４０は、機能的中継仮想プリンタ３３３にジョブが生成されたことを通知する。Ｓ１５１０において、機能的中継仮想プリンタ３３３は、印刷サービス３４０に印刷データの取得を要求する。Ｓ１５１１において、機能的中継仮想プリンタ３３３は、印刷サービス３４０から印刷データを取得する。
【０１２１】
Ｓ１５１２において、機能的中継仮想プリンタ３３３は、印刷サービス３４０に対して、印刷設定の取得要求を行う。Ｓ１５１３において、機能的中継仮想プリンタ３３３は、印刷サービス３４０から印刷設定を取得する。
【０１２２】
次に、機能的中継仮想プリンタ３３３のまとめ印刷機能により、機能的中継仮想プリンタ３３３が取得した印刷データ及び印刷設定が、中継仮想プリンタ３３１及び３３２へそれぞれ通知される。図１４のＳ１５２０からＳ１５３０までが中継仮想プリンタ３３１への通知処理に相当し、Ｓ１５４０からＳ１５５０までが中継仮想プリンタ３３２への通知処理に相当する。
【０１２３】
図１４のＳ１５２０において、機能的中継仮想プリンタ３３３は、中継仮想プリンタ３３１にジョブが生成されたことを通知する。Ｓ１５２１において、中継仮想プリンタ３３１は、機能的中継仮想プリンタ３３３に印刷データの取得を要求する。Ｓ１５２２において、中継仮想プリンタ３３１は、機能的中継仮想プリンタ３３３から印刷データを取得する。
【０１２４】
Ｓ１５２３において、中継仮想プリンタ３３１は、機能的中継仮想プリンタ３３３に印刷設定の取得を要求する。Ｓ１５２４において、中継仮想プリンタ３３１は、機能的中継仮想プリンタ３３３から印刷設定を取得する。Ｓ１５２５において、中継仮想プリンタ３３１は、印刷制御部３１０にジョブが生成されたことを通知する。
【０１２５】
Ｓ１５２６において、印刷制御部３１０は、中継仮想プリンタ３３１に印刷データの取得を要求する。Ｓ１５２７において、印刷制御部３１０は、中継仮想プリンタ３３１から印刷データを取得する。Ｓ１５２８において、印刷制御部３１０は、中継仮想プリンタ３３１に印刷設定の取得を要求する。
【０１２６】
Ｓ１５２９において、印刷制御部３１０は、中継仮想プリンタ３３１から印刷設定を取得する。Ｓ１５３０において、印刷制御部３１０は、取得した印刷設定と印刷データに基づいて、ラスターイメージを描画し、画像形成装置１１０にラスターイメージを印刷させる。
【０１２７】
なお、Ｓ１５４０からＳ１５５０までの処理は、中継仮想プリンタ３３２に対応する処理である。この処理は、Ｓ１５２０からＳ１５３０までの処理と同様であるため、説明を省略する。図１３及び１４を参照して行った説明から分かるように、機能的中継仮想プリンタ３３３の機能により、画像形成装置１１０及び１２０に印刷させる場合であっても、機能的中継仮想プリンタ３３３から直接印刷制御部３１０及び３１０に印刷指示をすることはない。これにより、機能的中継仮想プリンタ３３３から個別の画像形成装置に対する通信負荷の増大を抑えて、新たなサービスとして追加することが可能となる。
【０１２８】
次に、実施例２について説明する。実施例２では、コンテンツ印刷システム１０００は、貯め置き印刷機能を実現する。貯め置き印刷機能は、当初の印刷指示の段階では、出力する画像形成装置を選択せずに印刷指示を行い、ユーザが出力を希望する画像形成装置から印刷指示を行ってはじめて、その画像形成装置で印刷が行われるようにする機能である。
【０１２９】
実施例１との差分として、画像形成装置１１０及び１２０の構成、機能的中継仮想プリンタ３３３の構成、印刷系に分類される処理が挙げられる。以下の説明では、実施例１との差分について特記し、その他については、実施例１に準ずるものとする。
【０１３０】
まず、画像形成装置１１０及び１２０の構成について説明する。なお、画像形成装置１２０の構成は画像形成装置１１０の構成と同様であるので、以下の説明では画像形成装置１１０についてのみ言及する。
【０１３１】
図３（Ｂ）は、実施例２における印刷制御部の機能ブロック図である。図３（Ｂ）に示す印刷制御部３１０は、実施例１における印刷制御部（図３（Ａ））が備える構成に加えて、特定機能処理部４５０を備える。ユーザが、表示部４０１を介して、画像形成装置１１０から貯め置き印刷の指示をすると、特定機能処理部４５０は、機能的中継仮想プリンタ３３３の印刷要求受付部７９０（図５（Ｂ））へ貯め置き印刷を通知する。
【０１３２】
図５（Ｂ）は、実施例２における機能的中継仮想プリンタの機能ブロック図の例である。図５（Ｂ）に示す機能的中継仮想プリンタ３３３は、通信モジュールＡ’（７７０）を備える。通信モジュールＡ’（７７０）の印刷通知受付部７７１は、印刷ジョブ通知部８５１から送信される通知情報Ａを受信する。印刷サービス３４０には、機能的中継仮想プリンタ３３３が登録されているため、通知情報Ａは、印刷通知受付部７７１に送信される。
【０１３３】
通信モジュールＡ’は、通信モジュールＡと対をなすモジュールであるため、印刷通知受付部７７１は、通知情報Ａを解釈することが可能である。印刷通知受付部７７１が、第１の取得手段に相当する。印刷通知受付部７７１は、通知情報Ａに記述されている印刷データの格納場所と印刷設定の格納場所とを確認する。印刷通知受付部７７１は、印刷設定の格納場所を印刷設定取得部７７２に通知する。また、印刷通知受付部７７１は、印刷データの格納場所を印刷データ取得部７７３に通知する。
【０１３４】
印刷設定取得部７７２は、通知された印刷設定の格納場所に基づいて、印刷設定格納部８５２から印刷設定を取得する。また、印刷データ取得部７７３は、通知された印刷データの格納場所に基づいて、印刷データ格納部８５３から印刷データを取得する。
【０１３５】
機能的中継仮想プリンタ３３３は、貯め置き印刷機能を有している。従って、機能的中継仮想プリンタ３３３の通信モジュールＡ’（７７０）を介して通知され、取得された印刷ジョブは、通信モジュールＡｘ（７８０）を介して、中継仮想プリンタ３３１乃至３３２へ通知される。しかし、通信モジュールＡ'（７７０）を介して通知され、取得された印刷ジョブは、特定機能処理部７９１により、一時的に処理が中断される。印刷要求受付部７９０が、印刷制御部３１０の特定機能処理部４５０から貯め置き印刷の通知を受けてはじめて、以降の処理が実行される。
【０１３６】
印刷データ取得部７７３は、印刷データ格納部７８３に対して、印刷データ取得部７７３が取得した印刷データを格納するように指示する。印刷設定取得部７７２は、印刷設定格納部７８２に対して、印刷設定取得部７７２が取得した印刷設定を格納するように指示する。印刷データ格納部７８３は、印刷データを格納し、その格納場所を印刷ジョブ通知部７８１に通知する。印刷設定格納部７８２は、印刷設定を格納し、その格納場所を印刷ジョブ通知部７８１に通知する。
【０１３７】
印刷ジョブ通知部７８１は、印刷データ格納部７８３、印刷設定格納部７８２から格納場所の通知を受け付けたことに応じて、通知情報Ａを生成する。印刷ジョブ通知部７８１は、通知情報Ａを中継仮想プリンタ３３１及び３３２へ送信する。印刷ジョブ通知部７８１が第１の送信手段に相当する。
【０１３８】
図１５及び１６は、実施例２における、画像形成装置に対する印刷指示を行う処理を説明するシーケンス図の例である。本実施例では、機能的中継仮想プリンタ３３３が、貯め置き印刷機能を有する。従って、機能的中継仮想プリンタ３３３は、画像形成装置からの印刷指示（貯め置き印刷の指示）を受けたことを契機として、該画像形成装置に対して、印刷データの印刷を指示する。機能的中継仮想プリンタ３３３は、クライアントコンピュータによる印刷要求があった場合に、印刷サーバ１４０から取得した印刷データを保存し、この保存した印刷データの印刷を画像形成装置に対して指示する。本実施例では、画像形成装置１１０乃至１２０が、貯め置き印刷の指示を行うものとする。図１５のＳ１６０１からＳ１６１３については、図１３のＳ１５０１からＳ１５１３と同様であるため、説明を省略する。
【０１３９】
機能的中継仮想プリンタ３３３の貯め置き印刷機能によれば、機能的中継仮想プリンタ３３３が取得した印刷データ及び印刷設定は、印刷制御部３１０乃至３２０から貯め置き印刷の通知を受けるまで、中継仮想プリンタ３３１乃至３３２へ通知されない。
【０１４０】
図１６のＳ１６１９において、機能的中継仮想プリンタ３３３が、印刷制御部３１０から貯め置き印刷の通知を受けたことを契機として、Ｓ１６２０からＳ１６３０までの処理が実行される。また、Ｓ１６３９において、機能的中継仮想プリンタ３３３が、印刷制御部３１０から貯め置き印刷の通知を受けたことを契機として、Ｓ１６４０からＳ１６５０までの処理が実行される。なお、図１６のＳ１６２０からＳ１６３０までの処理は、図１４のＳ１５２０からＳ１５３０までの処理と同様である。また、図１６のＳ１６４０からＳ１６５０までの処理は、図１４のＳ１５４０からＳ１５５０までの処理と同様である。
【０１４１】
次に、本発明の他の実施例について説明する。実施例１、実施例２において、機能的中継仮想プリンタ３３３は、中継仮想プリンタ３３１及び中継仮想プリンタ３３２と通信を行うためのモジュールＡを備えている。しかし、機能的中継仮想プリンタ３３３が中継仮想プリンタ３３１及び３３２と通信を行うための構成は、印刷サービス３４０と中継仮想プリンタ３３１及び３３２と通信を行うための構成と同一の構成でなくてもよい。
【０１４２】
図１８は、他の実施例における印刷中継サーバの機能ブロック図の例である。図１８（Ａ）は、中継仮想プリンタの機能ブロック図を示す。図１８（Ｂ）は、機能的中継仮想プリンタの機能ブロック図を示す。
【０１４３】
機能的中継仮想プリンタ３３３は、図１８（Ｂ）に示すように、中継仮想プリンタ３３１及び３３２と通信を行う通信モジュールＣ’を備える。また、中継仮想プリンタ３３１は、図１８（Ａ）に示すように、機能的中継仮想プリンタ３３３と通信を行う通信モジュールＣを備える。なお、中継仮想プリンタ３３２の構成は中継仮想プリンタ３３１の構成と同様であるので、以下の説明では中継仮想プリンタ３３１についてのみ言及する。
【０１４４】
図１８（Ａ）に示すように、中継仮想プリンタ３３１は、通信モジュールＡ’（１８００）、通信モジュールＢ（１８１０）、及び通信モジュールＣ’（１８２０）を有する。通信モジュールＡ’（１８００）は、図４（Ｂ）に示す通信モジュールＡ’（６５０）と同様である。また、通信モジュールＢ（１８１０）は、図４（Ｂ）に示す通信モジュールＢ（６６０）と同様である。
【０１４５】
通信モジュールＣ’（１８２０）が備える印刷通知受付部１８２１は、印刷ジョブ通知部１８４１から送信される通知情報Ｃを受信する。通知情報Ｃは、印刷データの格納場所、印刷設定の格納場所を含む。通信モジュールＣ’は、通信モジュールＣと対をなすモジュールであるため、印刷通知受付部１８２１は、通知情報Ｃを解釈することが可能である。印刷通知受付部１８２１は第１の取得手段で定義される仕様とは異なる仕様に基づく取得手段である。
【０１４６】
印刷通知受付部１８２１は、通知情報Ｃが含む印刷データの格納場所、及び印刷設定の格納場所を確認し、夫々の情報を印刷設定取得部１８２２、印刷データ取得部１８２３に通知する。印刷設定取得部１８２２は、通知された印刷設定の格納場所に基づいて、印刷設定格納部１８４２から印刷設定を取得する。印刷データ取得部１８２３は、通知された印刷データの格納場所に基づいて、印刷データ格納部１８４３から印刷データを取得する。
【０１４７】
印刷データ取得部１８２３は、印刷データ格納部１８１３に対して、印刷データ取得部１８２３が取得した印刷データを格納するように指示する。印刷設定取得部１８２２は、印刷設定格納部１８１２に対して、印刷設定取得部１８２２が取得した印刷設定を格納するように指示する。
【０１４８】
印刷データ格納部１８１３は、印刷データを格納し、その格納場所を印刷ジョブ通知部１８１１に通知する。印刷設定格納部１８１２は、印刷設定を格納し、その格納場所を印刷ジョブ通知部１８１１に通知する。印刷ジョブ通知部１８１１は、印刷データ格納部１８１３及び印刷設定格納部１８１２から格納場所の通知を受け付けたことに応じて、通知情報Ｂを生成する。
【０１４９】
図１８（Ｂ）では、機能的中継仮想プリンタ３３３と中継仮想プリンタ３３１との通信に関する構成のみを示す。機能的中継仮想プリンタ３３３の通信モジュールＡ’（１８３０）を介して通知され、取得された印刷ジョブは、通信モジュールＣ（１８４０）を介して、中継仮想プリンタ３３１へ通知される。印刷データ取得部１８３３は、印刷データ格納部１８４３に対して、印刷データ取得部１８３３が取得した印刷データを格納するように指示する。印刷設定取得部１８３２は、印刷設定格納部１８４２に対して、印刷設定取得部１８３２が取得した印刷設定を格納するように指示する。
【０１５０】
印刷データ格納部１８４３は、印刷データを格納し、その格納場所を印刷ジョブ通知部１８４１に通知する。印刷設定格納部１８４２は、印刷設定を格納し、その格納場所を印刷ジョブ通知部１８４１に通知する。印刷ジョブ通知部１８４１は、印刷データ格納部１８４３及び印刷設定格納部１８４２から格納場所の通知を受け付けたことに応じて、通知情報Ｃを生成する。印刷ジョブ通知部１８４１は、通知情報Ｃを中継仮想プリンタ３３１へ送信する。印刷ジョブ通知部１８４１は、第１の取得手段で定義される仕様とは異なる仕様に基づく送信手段である。
【０１５１】
前述した実施例１、２においては、中継仮想プリンタ３３１は、印刷サービス３４０と通信を行うための通信モジュールＡ’と、印刷制御部３１０と通信を行うための通信モジュールＢとを備えている。その他の実施例においては、印刷サービス３４０と通信を行うための通信モジュールＡ’を中継仮想プリンタ３３１から分離してもよい。そして、印刷中継サーバ１３０が、印刷サービス用プロキシー１９３５（図１８（Ｅ））を備えるようにし、この印刷サービス用プロキシー１９３５が、印刷サービス３４０と通信を行うための通信モジュールＡ’を備えるようにしてもよい。
【０１５２】
図２（Ｂ）は、他の実施例におけるコンテンツ印刷システムの構成を示す図である。図２（Ｂ）に示すコンテンツ印刷システムが備える機能的中継仮想プリンタ１９３３は、図１８（Ｄ）に示す構成を有する。また、このコンテンツ印刷システムが備える中継仮想プリンタ１９３１、１９３２は、図１８（Ｃ）に示す構成を有する。また、このコンテンツ印刷システムが備える印刷サービス用プロキシー１９３５は、図１８（Ｅ）に示す構成を有する。その他の構成については、実施例１及び実施例２の構成に準ずるものとする。すなわち、Ｗｅｂアプリケーション１９６０、Ｗｅｂブラウザ１９５０、印刷サービス１９４０は、それぞれ、図２（Ａ）中のＷｅｂアプリケーション３６０、Ｗｅｂブラウザ３５０、印刷サービス３４０と同様である。また、印刷制御部１９１０、印刷制御部１９２０、中継仮想プリンタ管理サービス１９３０は、それぞれ、図２（Ａ）中の印刷制御部３１０、印刷制御部３２０、中継仮想プリンタ管理サービス３３０と同様である。
【０１５３】
図２（Ｂ）に示す機能的中継仮想プリンタ１９３３が中継仮想プリンタ１９３１及び１９３２と通信を行う構成が通信モジュールＤ’である。中継仮想プリンタ１９３１及び１９３２が機能的中継仮想プリンタ１９３３と通信を行う構成が、通信モジュールＤである。
【０１５４】
図１８（Ｃ）に示すように、中継仮想プリンタ１９３１は、通信モジュールＤ’（１８５０）及び通信モジュールＢ（１８６０）を備える。通信モジュールＤ’（１８５０）が備える印刷通知受付部１８５１は、印刷ジョブ通知部１８９６から送信される通知情報Ｄを受信する。通信モジュールＤ’は、通信モジュールＤと対をなすモジュールである。従って、印刷通知受付部１８５１は、通知情報Ｄを解釈することが可能である。印刷通知受付部１８５１は、第１の取得手段で定義される仕様とは異なる仕様に基づく取得手段である。
【０１５５】
印刷通知受付部１８５１は、通知情報Ｄに記述されている印刷データの格納場所、印刷設定の格納場所を確認する。そして、印刷通知受付部１８５１は、印刷設定の格納場所を印刷設定取得部１８５２に通知する。また、印刷通知受付部１８５１は、印刷データの格納場所を印刷データ取得部１８５３に通知する。印刷設定取得部１８５２は、通知された印刷設定の格納場所に基づいて、印刷設定格納部１８９７から印刷設定を取得する。印刷データ取得部１８５３は、通知された印刷データの格納場所に基づいて、印刷データ格納部１８９８から印刷データを取得する。
【０１５６】
印刷データ取得部１８５３は、印刷データ格納部１８６３に対して、印刷データ取得部１８５３が取得した印刷データを格納するように指示する。また、印刷設定取得部１８５２は、印刷設定格納部１８６２に対して、印刷設定取得部１８５２が取得した印刷設定を格納するように指示する。
【０１５７】
印刷データ格納部１８６３は、印刷データを格納し、その格納場所を印刷ジョブ通知部１８６１に通知する。印刷設定格納部１８６２は、印刷設定を格納し、その格納場所を印刷ジョブ通知部１８６１に通知する。印刷ジョブ通知部１８６１は、印刷データ格納部１８６３及び印刷設定格納部１８６２から格納場所の通知を受け付けたことに応じて、通知情報Ｂを生成する。
【０１５８】
機能的中継仮想プリンタ１９３３は、実施例１、２と同様に、印刷サーバ１４０により提供されていない特定の印刷サービスを実現するための機能を有している。しかしながら、機能的中継仮想プリンタ１９３３と中継仮想プリンタ１９３１との通信についての説明を目的とするため、図１８（Ｄ）では、当該機能に関わる構成を省略している。
【０１５９】
機能的中継仮想プリンタ（１９３３）の通信モジュールＤ’（１９７０）を介して通知され、取得された印刷ジョブは、通信モジュールＤ（１８８０）を介して、中継仮想プリンタ１９３１へ通知される。印刷データ取得部１８７３は、印刷データ格納部１８８３に対して、印刷データ取得部１８７３が取得した印刷データを格納するように指示する。印刷設定取得部１８７２は、印刷設定格納部１８８２に対して、印刷設定取得部１８７２が取得した印刷設定を格納するように指示する。
【０１６０】
印刷データ格納部１８８３は、印刷データを格納し、その格納場所を印刷ジョブ通知部１８８１に通知する。印刷設定格納部１８８２は、印刷設定を格納し、その格納場所を印刷ジョブ通知部１８８１に通知する。印刷ジョブ通知部１８８１は、印刷データ格納部１８８３及び印刷設定格納部１８８２から格納場所の通知を受け付けたことに応じて、通知情報Ｄを生成する。印刷ジョブ通知部１８８１は、通知情報Ｄを中継仮想プリンタ１９３１へ送信する。印刷ジョブ通知部１８８１は、第１の取得手段で定義される仕様とは異なる仕様に基づく送信手段である。
【０１６１】
図１８（Ｅ）に示すように、印刷サービス用プロキシー１９３５は、通信モジュールＡ’（１８９０）及び通信モジュールＤ（１８９５）を有する。通信モジュールＡ’（１８９０）は、実施例１、２における通信モジュールＡ’（６５０）と同様である。
【０１６２】
印刷サービス用プロキシー１９３５の通信モジュールＡ’１８９０を介して通知され、取得された印刷ジョブは、通信モジュールＤ（１８９５）を介して、中継仮想プリンタ１９３１乃至機能的中継仮想プリンタ１９３３へ通知される。
【０１６３】
印刷データ取得部１８９３は、印刷データ格納部１８９８に対して印刷データ取得部１８９３が取得した印刷データを格納するように指示を出す。印刷設定取得部１８９２は、印刷設定格納部１８９７に対して印刷設定取得部１８９２が取得した印刷設定を格納するように指示出す。印刷データ格納部１８９８は、印刷データを格納し、その格納場所を印刷ジョブ通知部１８９６に通知する。印刷設定格納部１８９７は、印刷設定を格納し、その格納場所を印刷ジョブ通知部１８９６に通知する。
【０１６４】
印刷ジョブ通知部１８９６は、印刷データ格納部１８９８、並びに印刷設定格納部１８９７から格納場所の通知を受け付けたことに応じて、通知情報Ｄを生成する。印刷ジョブ通知部１８９６は、通知情報Ｄを中継仮想プリンタ１９３１乃至機能的中継仮想プリンタ１９３３へ送信する。印刷ジョブ通知部１８９６は第１の取得手段で定義される仕様とは異なる仕様に基づく送信手段である。
【０１６５】
印刷サービス３４０に中継仮想プリンタ３３１及び３３２、並びに機能的中継仮想プリンタ３３３を登録する処理を、図１４に示すシーケンス図を参照して説明した。しかしながら、以下に説明するように、画像形成装置１１０及び画像形成装置１２０からの登録処理により、印刷サービス３４０に中継仮想プリンタ３３１及び３３２を登録するようにしてもよい。なお、画像形成装置１２０及び印刷制御部３２０の構成は、画像形成装置１１０及び印刷制御部３１０と同様であるので、以下の説明では画像形成装置１１０及び印刷制御部３１０についてのみ言及する。
【０１６６】
画像形成装置１１０が備える表示部４０１（図３（Ａ），（Ｂ））は、各種画面を表示する。仮想プリンタ管理サービス情報保持部４０２は、仮想プリンタ管理サービスの有効／無効を示す情報（サービス有効・無効情報）を有している。
【０１６７】
表示部４０１は、印刷サービス３４０に対して、画像形成装置１１０の登録を行う処理をユーザから指示された場合に、図７（Ｂ）に示す印刷サービス情報に基づいて、図８（Ｃ）に示すような、印刷サービス３４０への登録ＵＩを生成して表示する。
【０１６８】
ユーザが、図８（Ｃ）に示す登録ＵＩ上の入力欄１０２１にユーザＩＤを入力し、入力欄１０２２にパスワードを入力した上で、印刷サービス３４０への登録ボタン１０２３を押下する。登録部４０３（図３（Ａ），（Ｂ））は、ユーザが有効化ボタン１００２を押下したことに応じて、印刷サービス３４０への登録情報を発行する。続いて、登録部４０３は、発行した印刷サービス３４０への登録情報を、中継仮想プリンタ管理サービス３３０が有する要求受信部５０１へ送信する。
【０１６９】
実施例１、２においては、印刷系の機能として、機能的中継仮想プリンタ３３３が中継仮想プリンタ３３１及び３３２に印刷通知を行い、当該印刷通知を受けて、中継仮想プリンタ３３１及び３３２が印刷データ及び印刷設定を取得する処理を実行する。しかしながら、中継仮想プリンタ３３１及び３３２が機能的中継仮想プリンタ３３３から取得する印刷データ及び印刷設定は、必ずしも実際の印刷データ及び印刷設定である必要はない。中継仮想プリンタ３３１及び３３２が、例えば、印刷データ及び印刷設定への参照情報を取得するようにしてもよい。
【０１７０】
また、実施例１、２においては、本登録系の機能として、印刷サービスプリンタ生成部５０５が、印刷サービス３４０に機能的中継仮想プリンタ３３３の情報を登録する処理を実行する。この処理において、印刷サービスプリンタ生成部５０５は、印刷サービス３４０に、プリンタネーム、ケーパビリティーズ、ＶＰＩＤを送信する。その他の実施例において、機能的中継仮想プリンタ３３３のケーパビリティーズは、まとめ印刷乃至貯め置き印刷の対象となる画像形成装置のケーパビリティーズの論理積あるいは論理和であってもよい。
【０１７１】
ケーパビリティーズを、まとめ印刷乃至貯め置き印刷の対象となる画像形成装置のケーパビリティーズの論理積とした場合、印刷サービス３４０を介して機能的中継仮想プリンタ３３３に対して印刷指示を行う際に、最低限の印刷設定のみ実現することになる。しかしながら、いずれの画像形成装置においても実現可能な印刷設定であることが保証される。
【０１７２】
一方、ケーパビリティーズを、まとめ印刷又は貯め置き印刷の対象となる画像形成装置のケーパビリティーズの論理和とした場合、印刷サービス３４０を介して機能的中継仮想プリンタ３３３に対して印刷指示を行う際に、可能な限りの印刷設定を実現できる。しかしながら、その印刷設定は、ある画像形成装置においては実現できない可能性があるため、適宜、印刷設定の丸めこみ処理などが必要となる。
【０１７３】
また、実施例１，２において、本登録系の機能として、印刷サービスプリンタ生成部５０５が、印刷サービス３４０に機能的中継仮想プリンタ３３３の情報を登録する処理を実行する。この処理において、印刷サービスプリンタ生成部５０５は、印刷サービス３４０に、機能的中継仮想プリンタ３３３のプリンタネーム、ケーパビリティーズ、ＶＰＩＤを送信する。このプリンタネームは、例えば、特殊印刷である（図７（Ｃ））。しかしながら、プリンタネームは、機能的中継仮想プリンタ３３３の機能を想起させるものであってもよい。例えば、「まとめ印刷」、「貯め置き印刷」をプリンタネームとしてもよい。また、その機能や効果に応じて、機能的中継仮想プリンタ３３３の登録時にプリンタネームを自動的に設定する構成であってもよい。
【０１７４】
また、実施例１、２においては、機能的中継仮想プリンタ３３３が、まとめ印刷乃至貯め置き印刷のいずれか１つの機能のみを有する。しかしながら、機能的中継仮想プリンタを複数実現することで、印刷中継サーバ１３０に複数の機能を実現するようにしてもよい。例えば、印刷中継サーバ１３０内に、例えば、まとめ印刷機能を有する機能的中継仮想プリンタと、貯め置き印刷機能を有する機能的中継仮想プリンタとが共存するようにしてもよい。図１７は、貯め置き印刷機能を有する機能的中継仮想プリンタとが共存するようにするための登録ＵＩの例を示す図である。
【０１７５】
また、クラウドコンピューティング環境の特性上、ユーザが印刷サービス３４０への印刷指示を行った場合、その印刷結果を直ちにユーザが把握できないことがある。そのため、印刷サービス３４０の仕様として、ユーザビリティの向上のため印刷ジョブのステータスを管理し、Ｗｅｂアプリケーション３６０を介して、印刷ジョブのステータスに関する情報をユーザに表示することがある。例えば、印刷ジョブのステータスとして、「印刷中」、「印刷完了」などが考えられる。このような背景から、印刷系の機能として、印刷完了時に、印刷制御部３１０から中継仮想プリンタ３３１へ、中継仮想プリンタ３３１から機能的中継仮想プリンタ３３３へ、機能的中継仮想プリンタ３３３から印刷サービス３４０へ、印刷完了通知を返してもよい。
【０１７６】
ここで、前述した実施例１における印刷処理は、ｐｕｓｈ印刷である。実施例２における印刷処理は、ｐｕｌｌ印刷である。ｐｕｓｈ印刷とは、Ｗｅｂアプリケーション３６０からの印刷指示の後、改めて別の印刷指示を必要とすることなく、画像形成装置１１０で印刷実行可能な印刷機能全般を意味する。また、ｐｕｌｌ印刷とは、Ｗｅｂアプリケーション３６０からの印刷指示の後、改めて別の印刷指示を必要とする、画像形成装置１１０で印刷実行可能な印刷機能全般を意味する。
【０１７７】
印刷中継サーバ１３０が、ｐｕｓｈ印刷とｐｕｌｌ印刷の双方を実行するようにしてもよい。そして、ｐｕｓｈ印刷の場合とｐｕｌｌ印刷の場合とで、機能的中継仮想プリンタ３３３から印刷サービス３４０へ印刷完了通知を返すタイミングに差を設けてもよい。
【０１７８】
図２０は、ｐｕｓｈ印刷とｐｕｌｌ印刷とが実行される実施例における、画像形成装置に対する印刷指示を行う処理を説明するシーケンス図の例である。図２０のＳ２００１乃至Ｓ２０３０は、図１３及び１４のＳ１５０１乃至Ｓ１５３０と同様である。また、図２０のＳ２０５０乃至Ｓ２０６２は、図２０のＳ２０２０乃至Ｓ２０３２と同様である。
【０１７９】
印刷中継サーバ１３０が、ｐｕｓｈ印刷を実行する場合、全ての印刷が完了した段階で、機能的中継仮想プリンタ３３３から印刷サービス３４０へ印刷完了通知を返す。すなわち、印刷制御部３１０が印刷完了通知を中継仮想プリンタ３３１に返し、中継仮想プリンタ３３１が機能的中継仮想プリンタ３３３に対して印刷完了通知を行うと、機能的中継仮想プリンタ３３３が、印刷サービス３４０に対して印刷完了通知を返す。
【０１８０】
印刷中継サーバ１３０が、ｐｕｌｌ印刷を実行する場合、機能的仮想プリンタ３３３は、印刷ジョブを取得した段階で、Ｓ２０４８において、印刷サービス３４０へ印刷完了通知を返す。このために、機能的仮想プリンタ３３３は、印刷サーバ１４０が貯め置き印刷機能に対応する印刷データを印刷サーバ１４０から取得したことを契機として、以下の処理を実行する通知手段（不図示）を備える。この通知手段は、印刷指示手段である印刷ジョブ通知部７６６が中継仮想プリンタを介して貯め置き印刷機能を実現する処理を実行する画像形成装置に対して印刷データを印刷する指示を行う前に、印刷サーバ１４０に対して該印刷の完了を通知する。
【０１８１】
機能的仮想プリンタ３３３が、印刷ジョブを取得した段階で、印刷サービス３４０へ印刷完了通知を返すのは、以下の理由による。印刷中継サーバ１３０が、ｐｕｌｌ印刷を実行する場合、Ｓ２０４９におけるｐｕｌｌ印刷指示がされた後、別の印刷指示が発生するタイミングが保証されていない場合がある。そのような場合に、印刷サービス３４０に、処理中扱いの印刷データが滞留し、印刷サービス３４０の仕様によっては、印刷処理のタイムアウトなどのエラーが発生する。機能的仮想プリンタ３３３が、印刷ジョブを取得した段階で、印刷サービス３４０へ印刷完了通知を返すようにすれば、印刷サービス３４０におけるタイムアウトなどのエラーの発生を防止することができる。
【０１８２】
なお、実施例１、２において、コンテンツ印刷システム１０００内で通信される情報は、図９に示すようにＸＭＬ形式で表現される情報としたが、コンテンツ印刷システム１０００内で通信される情報が、その他の形式で表現される情報であってもよい。例えば、コンテンツ印刷システム１０００内で通信される情報が、ＸＭＬ形式ではなく、ＪＳＯＮ形式で表現されていてもよい。
【０１８３】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【０１８４】
１３０  印刷中継サーバ
３３０  中継仮想プリンタ管理サービス
３３１  中継仮想プリンタ
３３３  機能的中継仮想プリンタ
３４０  印刷サービス
【図１】
0005800579.tif 000002
【図２】
0005800579.tif 000003
【図３】
0005800579.tif 000004
【図４】
0005800579.tif 000005
【図５】
0005800579.tif 000006
【図６】
0005800579.tif 000007
【図７】
0005800579.tif 000008
【図８】
0005800579.tif 000009
【図９】
0005800579.tif 000010
【図１０】
0005800579.tif 000011
【図１１】
0005800579.tif 000012
【図１２】
0005800579.tif 000013
【図１３】
0005800579.tif 000014
【図１４】
0005800579.tif 000015
【図１５】
0005800579.tif 000016
【図１６】
0005800579.tif 000017
【図１７】
0005800579.tif 000018
【図１８】
0005800579.tif 000019
【図１９】
0005800579.tif 000020
【図２０】
0005800579.tif 000021
【図２１】
0005800579.tif 000022