(57)【特許請求の範囲】
【請求項１】
印刷システムであって、
クライアントシステムと物理的プリンタとの間をインタフェースし、前記物理的プリンタにより印刷するプリントジョブを処理するプリント処理デバイスを有し、
前記プリント処理デバイスは、
前記物理的プリンタに通信可能に結合し、前記物理的プリンタのデバイスケーパビリティを記憶し、前記物理的プリンタのプリントプロトコルにより、前記クライアントシステムからの前記物理的プリンタのデバイスケーパビリティを求める要求を処理し、前記要求に応答して、前記クライアントシステムに、一組の、前記プリント処理デバイスのシステムケーパビリティと、前記物理的プリンタのデバイスケーパビリティとを提供するプリンタオブジェクトを有し、
前記システムケーパビリティは、前記プリント処理デバイスの機能を提供し、前記物理的プリンタの機能を提供するデバイスケーパビリティとは異なり、
前記システムケーパビリティは、ユーザの強制設定と、プリントジョブがいつ印刷されるかの規定とを含む、
印刷システム。
【請求項２】
前記プリンタオブジェクトは、さらに、前記要求に応じて、前記プリント処理デバイスのシステムケーパビリティの少なくとも一部を、前記クライアントシステムからブロックする、請求項１に記載の印刷システム。
【請求項３】
前記プリンタオブジェクトは、さらに、前記要求に応じて、前記物理的プリンタのデバイスケーパビリティの少なくとも一部を、前記クライアントシステムからブロックする、請求項１に記載の印刷システム。
【請求項４】
前記物理的プリンタにより前記プリントジョブが印刷される時に、前記プリント処理デバイスのシステムケーパビリティを画定する、請求項１に記載の印刷システム。
【請求項５】
さらに、前記プリンタオブジェクトにアクセスして、前記クライアントシステムに提供する、前記一組の、前記プリント処理デバイスのシステムケーパビリティと、前記物理的プリンタのデバイスケーパビリティとを変更するユーザインタフェースを有する、請求項１に記載の印刷システム。
【請求項６】
前記プリントジョブのプリントプロトコルはJob  Definition  Formatプロトコルであり、
前記要求は、Job  Messaging  Format要求のDevice  Details  Queryである、
請求項１に記載の印刷システム。
【請求項７】
前記クライアントシステムは、
ユーザに、前記プリントジョブのプリントパラメータを編集させ、前記プリントジョブのプレビューを表示させるグラフィカルユーザインタフェースと、
前記物理的プリンタのデバイスケーパビリティを要求し、前記プリント処理デバイスから、前記一組の、前記プリント処理デバイスのシステムケーパビリティと、前記物理的プリンタのデバイスケーパビリティとを受け取る要求部とを有する、請求項１に記載の印刷システム。
【請求項８】
印刷システムにおける方法であって、
受け取り手段が、クライアントシステムからプリント処理デバイスを介して、物理的プリンタのデバイスケーパビリティを求める、前記物理的プリンタで動作するプリントプロトコルのコマンドである要求を受け取る段階と、
処理手段が、前記プリント処理デバイスのプリンタオブジェクトにより前記要求を処理して、前記物理的プリンタのデバイスケーパビリティにアクセスする段階と、
提供手段が、前記要求に応じて、前記プリンタオブジェクトからの、一組の前記プリント処理デバイスのシステムケーパビリティと、前記物理的プリンタのデバイスケーパビリティの少なくとも一部とを、前記クライアントシステムに提供する段階とを有し、
前記システムケーパビリティは、前記プリント処理デバイスの機能を提供し、前記物理的プリンタの機能を提供するデバイスケーパビリティとは異なり、
前記システムケーパビリティは、ユーザの強制設定と、プリントジョブがいつ印刷されるかの規定とを含む、
方法。
【請求項９】
ブロック手段が、前記要求に応じて、前記プリント処理デバイスのシステムケーパビリティの少なくとも一部を、前記クライアントシステムからブロックする段階をさらに有する、請求項８に記載の方法。
【請求項１０】
ブロック手段が、前記要求に応じて、前記物理的プリンタのデバイスケーパビリティの少なくとも一部を、前記クライアントシステムからブロックする段階をさらに有する、請求項８に記載の方法。
【請求項１１】
前記物理的プリンタによりプリントジョブが印刷される時に、前記プリント処理デバイスのシステムケーパビリティを画定する、請求項８に記載の方法。
【請求項１２】
アクセス手段が、ユーザインタフェースを介して前記プリンタオブジェクトにアクセスして、前記プリント処理デバイスのシステムケーパビリティ、前記物理的プリンタのデバイスケーパビリティ、または前記プリンタオブジェクト内の前記システムケーパビリティと前記デバイスケーパビリティの組み合わせを変更する段階をさらに有する、
請求項８に記載の方法。
【請求項１３】
プリントジョブのプリントプロトコルはJob  Definition  Formatプロトコルであり、
前記要求は、Job  Messaging  Format要求のDevice  Details  Queryである、
請求項８に記載の方法。
【請求項１４】
グラフィカルユーザインタフェース提供手段が、前記クライアントシステムに、ユーザに、プリントジョブのプリントパラメータを編集させ、前記プリントジョブのプレビューを表示させるグラフィカルユーザインタフェースを設ける段階と、
要求部提供手段が、前記クライアントシステムに、前記物理的プリンタのデバイスケーパビリティを要求し、前記プリント処理デバイスから、前記一組の、前記プリント処理デバイスのシステムケーパビリティと、前記物理的プリンタのデバイスケーパビリティとを受け取る要求部を設ける段階とを有する、
請求項８に記載の方法。
【請求項１５】
プロセッサで実行されると、印刷システムで実行可能な方法を実行するよう前記プロセッサに命じるソフトウェア命令を有するコンピュータ読み取り可能媒体であって、前記ソフトウェア命令はさらに前記プロセッサに：
クライアントシステムからプリント処理デバイスを介して、物理的プリンタのデバイスケーパビリティを求める、前記物理的プリンタで動作するプリントプロトコルのコマンドである要求を受け取り、
前記プリント処理デバイスのプリンタオブジェクトにより前記要求を処理して、前記物理的プリンタのデバイスケーパビリティにアクセスし、
前記要求に応じて、前記プリンタオブジェクトからの、一組の前記プリント処理デバイスのシステムケーパビリティと、前記物理的プリンタのデバイスケーパビリティの少なくとも一部とを、前記クライアントシステムに提供するように命令し、
前記システムケーパビリティは、前記プリント処理デバイスの機能を提供し、前記物理的プリンタの機能を提供するデバイスケーパビリティとは異なり、
前記システムケーパビリティは、ユーザの強制設定と、プリントジョブがいつ印刷されるかの規定とを含む、コンピュータ読み取り可能媒体。
【請求項１６】
前記ソフトウェア命令は、
前記要求に応じて、前記プリント処理デバイスのシステムケーパビリティの少なくとも一部を、前記クライアントシステムからブロックするように動作する、
請求項１５に記載のコンピュータ読み取り可能媒体。
【請求項１７】
前記ソフトウェア命令は、さらに、
前記要求に応じて、前記物理的プリンタのデバイスケーパビリティの少なくとも一部を、前記クライアントシステムからブロックする、請求項１５に記載のコンピュータ読み取り可能媒体。
【請求項１８】
前記物理的プリンタによりプリントジョブが印刷される時に、前記プリント処理デバイスのシステムケーパビリティを画定する、請求項１５に記載のコンピュータ読み取り可能媒体。
【請求項１９】
前記ソフトウェア命令は、さらに、
ユーザインタフェースを介して前記プリンタオブジェクトにアクセスして、前記プリント処理デバイスのシステムケーパビリティ、前記物理的プリンタのデバイスケーパビリティ、または前記プリンタオブジェクト内の前記システムケーパビリティと前記デバイスケーパビリティの組み合わせを変更する、
請求項１５に記載のコンピュータ読み取り可能媒体。
【請求項２０】
プリントジョブのプリントプロトコルはJob  Definition  Formatプロトコルであり、
前記要求は、Job  Messaging  Format要求のDevice  Details  Queryである、
請求項１５に記載のコンピュータ読み取り可能媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はプリントショップアーキテクチャによるプリントジョブ処理に関する。
【背景技術】
【０００２】
大企業はいろいろな印刷ニーズに対応するため、非常に複雑なプリントショップアーキテクチャを利用することが多い。例えば、組織のメンバーは、（レター、メモランダム、写真などの）簡単なデスクトップパブリッシングのためローカルプリンタを用いることができる。しかし組織は、より高度な印刷及び／または大量印刷が必要なとき、より多機能で、及び／または大量印刷ができる複数のハイエンドプリンタ（多機能プリンタ、プロダクション印刷システムなど）よりなるプリントショップアーキテクチャを利用することがある。
【０００３】
これらのプリントショップアーキテクチャは、一般的にはプリントサーバにより管理される。プリントサーバは、ホストシステムデバイス（ネットワークに接続されたコンピュータシステム、モバイルデバイスなど）を介して複数のクライアントからプリントジョブを受け取る。しかし、このような環境においてプリンタをシームレスに統合することは実現困難であることが多い。例えば、プリンタとその具体的なケーパビリティが、個々のクライアントデバイスにより十分認識されないことがある。プリントサーバは、ユーザがプリンタを容易に識別できるように、プリントショップアーキテクチャのすべてのプリンタのハードウェア及びソフトウェアのアセットを管理するように構成されている。この集中印刷環境においては、システムアドミニストレータその他のＩＴ人材は、プリンタの機能にもアクセスして制御することができる。
【０００４】
一般的には、プリントサーバは、それが制御するいろいろなプリンタの複数の機能とプロトコルで構成されている。例えば、プリントサーバにより管理される各プリンタは、それぞれの印刷機能（両面印刷、ステープル、照合など）及び／または印刷プロトコル（Hot Folder、Job Definition Formatすなわち「ＪＤＦ」、Job Messaging Formatすなわち「ＪＭＦ」、ラインプリンタすなわち「ＬＰＲ」など）を有する。これらの印刷機能や印刷プロトコルは、プリントショップアーキテクチャの他のプリンタとは異なる。このように集中管理する前に、クライアントデバイスはプリンタの印刷ケーパビリティを含むプリンタドライバをインストールする。プリンタドライバもクライアントデバイスの印刷プロトコルを確立して、プリンタと通信して制御する。プリントサーバは物理的なプリンタのプリンタドライバを有する。
【０００５】
プリントサーバは、ユーザが物理的なプリンタに文書を印刷できるよう、クライアントデバイスに対してこの機能をプレゼンテーションする。例えば、ユーザは、ある物理的プリンタに文書を印刷したいとき、プリントサーバと通信してその物理的なプリンタにアクセスする。クライアントは、プリントジョブを印刷する前に、プリンタで利用できる印刷機能（print capabilities）その他のオプションを知りたい場合がある。そのような場合、クライアントは、プリンタにクエリを送り、そのプリンタのデバイスケーパビリティすなわち「ＤＥＶＣＡＰＳ」を求める。これらのクエリにより、プリンタのレスポンスがトリガーされ、そのプリンタのすべての印刷能力が返される。クライアントは、プリンタのプリントケーパビリティ（print capabilities）を入手して、プリントジョブを生成し、プリントサーバを介してそのプリントジョブを物理的プリンタに送り、印刷する。
【０００６】
このタイプのユーザが定義したプリンタケーパビリティへのアクセスは、プリントショップアーキテクチャにおける集中プリンタ管理の原則を避けることができる。すなわち、プリントショップアーキテクチャを管理するシステムアドミニストレータ（またはプリントショップオペレータ）は、組織の印刷需要に合わせるため、クライアントを一定のプリンタ機能にアクセスさせないポリシーを実現できる。しかし、プリントショップアーキテクチャにおける上記デバイスの現在のプロトコル標準には、クライアントからこれらの機能を隠す手段はない。したがって、クライアントは、プリントジョブについて、一組の機能が実際には望んでいない機能で印刷されることがある。
【発明の概要】
【課題を解決するための手段】
【０００７】
ここで説明する実施形態は、物理的プリンタのプリントプロトコルにより、システムレベルケーパビリティとプリンタケーパビリティとを含む一組のケーパビリティを送る機能を有する印刷システムのプリンタオブジェクトを提供する。より具体的には、ここに示して説明するいろいろな実施形態は、物理的プリンタのデバイスケーパビリティを求めるプリントプロトコル要求に、印刷処理デバイスその他のデバイスのシステムケーパビリティ、及びそれに通信可能に結合された物理的プリンタのデバイスケーパビリティで応答する方法を提供する。プリント処理デバイスのシステムケーパビリティは、なかんずく、プリントジョブをいつ印刷するか規定できる（例えば、遅延印刷、優先印刷、定期的印刷など）。システムケーパビリティは強制設定（forced settings）及び禁止（prohibitions）も含む。例えば、システムケーパビリティは、プリント処理デバイスのある設定がユーザによりどのように変更されないか、及び／又はユーザにプリント処理デバイスの他の設定を取得させないことを規定できる。もちろん、本発明は、単に物理的プリンタとインタフェースしてデバイスケーパビリティを取得することだけに限定されない。本発明は、物理的プリンタのデバイスケーパビリティを提供するソフトウェアモジュールとのインタフェースも含み得る。
【０００８】
一実施形態では、プリント処理デバイスは、クライアントシステムと物理的プリンタとの間をインタフェースし、前記物理的プリンタにより印刷するプリントジョブを処理する。プリント処理デバイスは、物理的プリンタと通信可能に結合したプリンタオブジェクトを含む。プリンタオブジェクトは、物理的プリンタのケーパビリティを含む（例えば、そのプリンタケーパビリティを記憶又は保持する）。プリンタオブジェクトは、物理的プリンタのプリントプロトコル（例えば、Job Definition FormatプロトコルにおけるJob Messaging
FormatのDevice Details Query）によるクライアントシステムからの、物理的プリンタのデバイスケーパビリティを求める要求を処理できる。前記要求に応じて、前記プリンタオブジェクトは、一組の前記プリント処理デバイスのシステムケーパビリティと、前記物理的プリンタのデバイスケーパビリティの少なくとも一部とを提供する。言い換えると、プリンタオブジェクトは、クライアントシステムに、異なるケーパビリティを有する応答を提供して、その要求をオーバーライド（overrides）する。
【０００９】
そのため、前記プリンタオブジェクトは、前記要求に応じて、前記プリントサーバのシステムケーパビリティの少なくとも一部を、前記クライアントシステムからブロックし得る。代替的に又は追加的に、前記プリンタオブジェクトは、前記要求に応じて、前記物理的プリンタのデバイスケーパビリティの少なくとも一部を、前記クライアントシステムからブロックできる。プリンタオブジェクトは、その要求へのプロトコル応答のシステムケーパビリティを、プリントジョブ生成用の仮想プリンタを介してクライアントにプレゼンテーションできるように構成する。
【００１０】
印刷システムは、プリンタオブジェクトにアクセスして、クライアントシステムに提供される一組のケーパビリティを変更できるユーザインタフェースを含んでいてもよい。例えば、プリンタオブジェクトは、プリントサーバのシステムケーパビリティ及び／又はプリンタのデバイスケーパビリティを追加または削除するように、ユーザインタフェースにより再構成され得る。
【００１１】
ここに開示するいろいろな実施形態は、設計上の選択の問題として、いろいろに実施することができる。例えば、実施形態は、コンピュータハードウェア、ソフトウェア、またはこれらの組み合わせの形式をとってもよい。一実施形態では、印刷システムにおいて、プリンタオブジェクトの機能を実行する方法を実行できる。他の実施形態では、コンピュータ読み取り可能媒体は、その方法のステップを実行するソフトウェア命令を記憶することができる。  その他の例としての実施形態を以下に説明する。
【図面の簡単な説明】
【００１２】
例として、添付した図面を参照して、本発明の実施形態を説明する。図面上、同じ参照番号は同じ要素または同じ種類の要素を表す。
【図１】一実施形態におけるプリントショップアーキテクチャを示すブロック図である。
【図２】一実施形態におけるプリントショップアーキテクチャのプリントサーバにおけるプリンタオブジェクトを示すブロック図である。
【図３】一実施形態における、プリントショップアーキテクチャのいろいろなシステムケーパビリティとデバイスケーパビリティをプレゼンテーションする方法を示すフローチャートである。
【図４】一実施形態におけるプリントショップアーキテクチャのシステムケーパビリティとプリンタオブジェクトのケーパビリティとを示す図である。
【図５】一実施形態におけるクライアントのプリンタオブジェクトとクライアントシステムの間のメッセージ図である。
【図６】所望の機能を実行するプログラム命令を化体するコンピュータ読み取り可能媒体を実行するコンピュータシステムの一例を示す図である。
【発明を実施するための形態】
【００１３】
図面及び以下の説明は、本発明の具体例としての実施形態を示す。言うまでもなく、当業者は、ここには明示的に説明や図示はしていないが、本発明の原理を化体し、本発明の範囲に含まれる様々な構成を工夫することができる。さらに、ここに説明する例はどれも、本発明の原理の理解を助けることを意図したものであり、具体的に記載した例や条件に限定するものと解釈すべきではない。結果として、本発明は以下に説明する具体的な実施形態に限定はされず、特許請求の範囲及びその均等の範囲にのみ限定される。
【００１４】
図１は、一実施形態におけるプリントショップアーキテクチャ１０２（ここでは印刷システムとも呼ぶ）を示すブロック図である。プリントショップアーキテクチャ１０２は、１つ以上のクライアント１３０−１３２を、そのクライアント１３０−１３２に印刷サービス及びプリントワークフローサービスを提供する１つ以上の物理的プリンタ１２６−１２８に結合する。プリントショップアーキテクチャ１０２は、プリンタ１２６−１２８で印刷するために、クライアント１３０−１３２からプリントジョブとジョブチケットとを受け取るように動作する。クライアント１３０−１３２は、プリントショップアーキテクチャ１０２とインタフェースするソフトウェアアプリケーションを介してホストコンピュータシステムでプリントジョブ（月間銀行取引明細書、月間クレジットカード支払い明細など）を生成する銀行、クレジットカード会社、その他のエンティティ（entities）を含み得る。プリントショップアーキテクチャ１０２は、ＰＤＦ（Portable
Document Format）、ＭＯ：ＤＣＡ（Mixed Object: Document Content
Architecture）、ＡＦＰ（Advanced Function Printing）など複数の異なるフォーマットで、クライアント１３０−１３２から印刷ジョブ（print jobs）を受け取る。ジョブチケットは、ＪＤＦ（Job Definition
Format）、ＰＰＦ（Print Production Format）、ＰＪＴＦ（Portable Job Ticket Format）などの複数の異なるフォーマットでクライアント１３０−１３２から受け取られる。ジョブチケットは、プリンタ１２６−１２８でプリントジョブをどう印刷するか規定するプリントパラメータ（print parameters）を含む。プリンタ１２６−１２８は、一般的に、プリントジョブ（print job）のプリントデータを紙などの好適な印刷可能媒体に変換するシステムを含み、一般的に大量印刷用の大規模プロダクション印刷システム（large production printing systems）である。
【００１５】
一実施形態では、クライアントは、クライアント１３２とともに図示したように、グラフィカルユーザインタフェース（ＧＵＩ）１３３と要求部１３４とを有する。ＧＵＩ１３３により、ユーザは、プリントショップアーキテクチャ１０２に送られるプリントジョブに関連するプリントパラメータを編集し、及び／または確認できる。ＧＵＩ１３３により、ユーザは、プリントパラメータに基づきプリントジョブをプリビューできる。例えば、ＧＵＩ１３３により、検討中のプリントジョブが、印刷するとどう見えるか、ユーザに示すことができる。ＧＵＩ１３３は、ユーザが物理的プリンタ１２６−１２８のデバイスケーパビリティ（device capabilities）を要求し、プリントサーバ１０４の一組のシステムケーパビリティ（system capabilities）と物理的プリンタ１２６−１２８のデバイスケーパビリティとを受け取るように、要求部１３４とインターラクトすることもできる。例えば、ユーザは、ＧＵＩ１３３を介してＤＥＶＣＡＰＳ要求によりあるプリンタケーパビリティ（printer capabilities）を要求できる。要求部１３４は、仮想プリンタ１０８などの仮想プリンタ（virtual printer）にＤＥＶＣＡＰＳ要求を送り、プリントサーバ１０４の一組のシステムケーパビリティと、物理的プリンタ１２６−１２８のデバイスケーパビリティとを受け取る。これに関し、要求部は、対応する仮想プリンタと直接通信できるようになっていてもよい。
【００１６】
プリントショップアーキテクチャ１０２は、１つ以上の仮想プリンタ１０６−１０８を有するプリントサーバ１０４（ここでプリント処理デバイスとも呼ぶ）を含む。仮想プリンタ１０６−１０８は、一般的に、クライアント１３０−１３２と通信し、クライアント１３０−１３２にインタフェースを提供する、プリントサーバ１０４内で動作するソフトウェアモジュールである。このインタフェースにより、クライアント１３０−１３２は、プリントジョブを設定し、プリンタ１２６−１２８にそのプリントジョブ（及びそのプリントジョブと関連するジョブチケット）を送ることができる。また、プリントショップアーキテクチャ１０２は、対応する複数のプリンタオブジェクト１１０−１１２を含む。プリンタオブジェクト１１０−１１２は、プリンタオブジェクト１１０−１１２が対応するプリンタ１２６−１２８のプリントケーパビリティ（print capabilities）を含む点で、プリンタドライバと類似している。また、プリンタオブジェクト１１０−１１２は、プリントショップアーキテクチャ１０２のシステムケーパビリティ（すなわち、遅延印刷機能、優先印刷機能、定期印刷機能など）も含む。したがって、各プリンタオブジェクトは、一般的に、プリンタのすべての印刷ケーパビリティ（printing capabilities）を含む。典型的には、仮想プリンタ、プリンタオブジェクト、及びプリンタの間には１：１：１の対応がある。すなわち、仮想プリンタは典型的には１つのプリンタオブジェクトとインタフェースし、そのプリンタオブジェクトは１つのプリンタの印刷ケーパビリティ（printing capabilities）を含む。
【００１７】
クライアント１３０−１３２がプリントショップアーキテクチャ１０２にプリントジョブとジョブチケットとを送ると、ジョブチケットはプリントショップアーキテクチャ１０２の記憶部１２０にあるデータベース１２４にコピーされる。プリントジョブを印刷のためにキューに入れる前に、未処理のプリントジョブ（open print jobs）として、プリントジョブとジョブチケットを記憶部１２０のプリントスプール１２２に置く。スケジューラ１１６は、プリントスプール１２２にある未処理のプリントジョブを特定して、そのプリントジョブをプリンタオブジェクト１１０−１１２のキューにおいてスケジューリングすることを試みる。典型的には、スケジューラ１１６は、その未処理のプリントジョブを、プリントジョブを受け取った仮想プリンタに対応するプリンタオブジェクト１１０−１１２の一プリンタオブジェクトでスケジューリングすることを試みる。例えば、クライアント１３０が仮想プリンタ１０６にプリントジョブを送信した場合、スケジューラ１１６は、最初に、プリントサーバオブジェクト１１０のプリントキューにプリントジョブを入れることを試みる。一般的に、プリンタオブジェクト１１０−１１２は、対応するプリンタ１２６−１２８とインタフェースし、プリンタ１２６−１２８にプリントジョブを送信する前に、そのプリントジョブをキューさせ、処理する。
【００１８】
プリントオペレータは、プリントショップアーキテクチャ１０２のグラフィカルユーザインタフェース（ＧＵＩ）を用いて、プリントショップアーキテクチャ１０２におけるプリントジョブの状態を制御・特定できる。例えば、ＧＵＩ１１８は、プリンタオブジェクト１１０−１１２のキュー中のプリントジョブのリストと、そのプリントスプール１２２中の未処理のジョブの状態に関するその他の一般的情報を提供できる。また、プリントオペレータは、ジョブチケットエディタ１１４を用いて、未処理のおよびキューに入ったプリントジョブに関連するジョブチケットを修正できる。プリントオペレータは、ジョブチケットエディタ１１４を用いて、ジョブチケットを修正して、両面印刷、ステープリング、媒体タイプなどの、そのジョブチケットに関連するプリントジョブのいろいろなプリントオプションを変更できる。プリントショップアーキテクチャ１０２は、クライアント１３０−１３２に複数の印刷およびワークフローサービスを提供する。これについては、関連図面を参照して以下の説明を読めば分かるであろう。
【００１９】
以下、特定数のクライアント、仮想プリンタ、プリンタ、及びプリンタオブジェクトを仮定して説明するが、本発明はその特定数に限定されるものではない。プリントサーバ１０４が印刷サービス（printing service）を提供するクライアントの数は、実施形態に示したより多くても少なくてもよく、及び／または、プリンタの数は、実施形態に示したより多くても少なくてもよい。
【００２０】
図２は、一実施形態におけるプリントショップアーキテクチャ１０２のプリントサーバ１０４におけるプリンタオブジェクト１１０を示すブロック図である。本実施形態はこの他のプリンタオブジェクト１１１と１１２にも適用可能である。上記の通り、プリンタオブジェクト１１０は、プリンタ１２６の複数のデバイスケーパビリティ（device capabilities）２０３を保持し、プリントドライバと同様な動作をする。また、この実施形態では、プリンタオブジェクト１１０は、プリントジョブの印刷のために選択され得るプリントサーバ１０４のいろいろな機能を提供する複数のシステムケーパビリティ（system capabilities）２０２を有するように構成されている。例えば、クライアント１３０は、毎月発送する請求書など、定期的にプリントジョブを生成することがある。これに関して、プリントジョブは、自動的に生成され、プリンタ１２６を介して印刷するために仮想プリンタ１０６に送られ得る。プリントジョブは、定期的なものであるとの性質に基づき、仮想プリンタ１０６にそのプリントジョブの印刷をスケジューリングするように促す特定機能（identifying features）を有するよう構成してもよい。より具体的に、クライアント１３０は、プリンタ１２６のプリントプロトコルを介して、プリントジョブを定期的に印刷するシステムケーパビリティを選択できる。プリントサーバ１０４のシステムケーパビリティの他の例には、遅延印刷（delayed printing）と優先印刷（expedited printing）が含まれる。しかし、これらのケーパビリティ（capabilities）は一般的にはプリントサーバ１０４の管理機能の設計における好みの問題である。
【００２１】
物理的プリンタ１２６の各デバイスケーパビリティ２０３は、プリンタ１２６のプリントプロトコルを介してクライアント１３０により選択して、そのプリンタ１２６を介した印刷のためにプリントジョブを準備可能である。いろいろなプリントプロトコルの例としては、Ｈｏｔ  Ｆｏｌｄｅｒ、ＬＰＲ、ＪＭＦ、及びＪＤＦがある。Ｈｏｔ  Ｆｏｌｄｅｒにより画像ファイルをプリンタ１２６−１２８に比較的速く送ることができる。Hot Folderインタフェースは、ユーザが生成した「ホットフォルダ（hot
folders）」により、クライアント１３０−１３２にプリンタ１２６−１２８を表示する。この「ホットフォルダ」は、印刷したい場合に画像をドロップオフ（drop-off）するポイントとして機能する。ＬＰＲは、プリントジョブをリモートプリンタに送信するための周知のネットワークプロトコルである。ＪＤＦは、ＣＩＰ４（International Cooperation for the Integration of Processes in
Prepress, Press, and Postpress Organization）プリントプロダクションフォーマット及びアドビポータブルジョブチケットフォーマットの既存技術上に構築された拡張ＸＭＬベースのプロトコルである。ＪＤＦにより、利用するツールにかかわらず、複数のプロントジョブのプリントアスペクト（print aspects）を統合して、プリンタと管理機能との間の通信をブリッジすることができる。ＪＤＦは対応するフォーマットＪＭＦと協調して機能する。ＪＭＦは、管理機能を通信するＪＤＦワークフローのプロダクションコンポーネントを提供する。ＪＭＦは、ＪＤＦプリントジョブに関する情報を取り出し、プリントサーバ１０４のシステムケーパビリティ及び／またはプリンタ１２６−１２８のプリンタケーパビリティを決定する一連のクエリ及びコマンドを提供する。
【００２２】
上記の通り、クライアント１３０は、プリントジョブを生成するケーパビリティを使用したいときに、管理機能が選択したくないケーパビリティを選択するという問題がある。このプリントショップアーキテクチャ１０２の機能、より具体的にはプリンタオブジェクト１１０の機能を、図３の方法３００を参照して説明する。
【００２３】
図３は、一実施形態における、プリントショップアーキテクチャ１０２のいろいろなシステムケーパビリティ２０２とデバイスケーパビリティ２０３をクライアント１３０にプレゼンテーションする方法３００を示すフローチャートである。方法３００は、最初に、クライアント１３０が物理的プリンタ１２６のデバイスケーパビリティを要求する要求をプリントサーバ１０４に送る。この要求は上記のＤＥＶＣＡＰＳ要求と似ている。要求はプリントサーバ１０４が受け取る（プロセスエレメント３０１）。例えば、仮想プリンタ１０６はクライアント１３０から要求を受け取り、その要求をプリンタオブジェクト１１０に送る。次に、プリンタオブジェクト１１０は、その要求を処理して、物理的プリンタ１２６のデバイスケーパビリティにアクセスする。その後、プリンタオブジェクト１１０は、物理的プリンタ１２６のプリントプロトコルを用いて、（仮想プリンタ１０６を介して）クライアント１３０に一組のケーパビリティ１３０を提供する（プロセスエレメント３０３）。クライアント１３０に提供される一組のケーパビリティは、プリントサーバ１０４のシステムケーパビリティ、及び物理的プリンタ１２６のデバイスケーパビリティを有する。例えば、プリンタオブジェクト１１０は、物理的プリンタ１２６のデバイスケーパビリティと共に、プリントサーバ１０４の１つ以上のシステムケーパビリティ２０２でクライアント１３０に対する応答を構成する。代替的に又は追加的に、プリンタオブジェクト１１０は、クライアント１３０からの一定のシステムケーパビリティ２０２及び／またはプリンタデバイスケーパビリティ２０３へのアクセスをブロックしてもよい。その例を図４に示し説明する。
【００２４】
図４は、一実施形態におけるプリントショップアーキテクチャの物理的プリンタ１２６のシステムケーパビリティ２０２とデバイスケーパビリティ２０３のリストを示している。この実施形態では、あるシステムケーパビリティ２０２とあるデバイスケーパビリティ２０３は、プリンタ１２６のプリントプロトコルを介して、クライアント１３０によりアクセス可能である。管理上の設計上の選択の問題として、システムアドミニストレータは、プリンタ１２６及び／またはプリントサーバ１０４の一定の機能をブロックすると決めることができる。例えば、システムアドミニストレータは、遅延印刷や定期印刷（それぞれシステム機能１と２）のシステム機能を提供することを望む場合がある。しかし、システムアドミニストレータは、プリントサーバ１０４が優先プリント処理機能を明示していたとしても、プリントプロセスの中断を減らすため、プリントジョブの優先プリント処理（すなわち、システムケーパビリティＮ、ここでＮは１より大きい整数を指す）にはアクセスさせたくないと考える場合がある。同様に、システムアドミニストレータは一定のプリンタケーパビリティへのアクセスをブロックしたいことがある。この例では、プリントジョブのコピー数とステープル機能（すなわち、それぞれプリンタケーパビリティプ３とＮ）をブロックする。このように、プリンタオブジェクト１１０は、物理的プリンタ１２６のデバイスケーパビリティ２０３を求める要求に対する応答を、物理的プリンタ１２６のシステムケーパビリティ２０２とデバイスケーパビリティ２０３の組み合わせ（すなわち、利用可能ケーパビリティ４０１）により構成し、その他のシステムケーパビリティ及びデバイスケーパビリティはブロックする（すなわち、ブロックされたケーパビリティ４０２）。しかし、本発明は、システムケーパビリティ２０２とデバイスケーパビリティ２０３の特定の組み合わせに限定されない。
【００２５】
留意点として、図４に示して説明したいろいろなケーパビリティは単なる例である。その他のシステムケーパビリティには、印刷後にプリントジョブを保持する機能や文書フォーマットの機能が含まれる（例えば、ＡＦＰ、ＰＤＦ、ＰｏｓｔＳｃｒｉｐｔ等）。システムアドミニストレータは、設計事項として、現在のオブジェクトにアクセスして、より多い又は少ないシステムケーパビリティ及び／またはプリンタケーパビリティを提供できる。これに関して、システムアドミニストレータは、ＧＵＩ１１８を介してプリンタオブジェクト１１０にアクセスして、プリンタオブジェクト１１０内で、いろいろなシステムケーパビリティ２０２とデバイスケーパビリティ２０３を再構成できる。例えば、システムアドミニストレータは、プリンタオブジェクト１１０に、プリントサーバ１０４のあるシステムケーパビリティが利用できるように追加すること、及び／または入らなくなったシステムケーパビリティを削除することを望む場合がある。そのため、システムアドミニストレータは、必要に応じて、ＧＵＩ１１８を介してプリンタオブジェクト１１０にアクセスして、プリンタオブジェクト１１０のシステムケーパビリティ２０２を再構成できる。同じ種類の再構成をデバイスケーパビリティ２０３について行うこともできる。また、留意点として、本発明はプリンタのみに限定されず、設計上の選択として、プリントショップアーキテクチャ１０２においてその他のデバイスを構成することもできる。例えば、プリントショップアークテクチャ１０２は、ファックスとスキャンのケーパビリティを有する多機能プリンタを含んでいてもよく、クライアントはこれをプリントジョブで利用することができる。これに関して、プリントサーバ１０４は、プリントジョブをファックス、スキャン、及び／または電子メールするシステムケーパビリティを有していてもよい。
【００２６】
図５は、一実施形態におけるプリンタオブジェクト１１０とクライアントシステム１３０の間のメッセージを示すメッセージ図５００である。この実施形態では、要求はＪＭＦプロトコルで構成されている。クライアントシステム１３０は、印刷前に、物理的プリンタ１２６の印刷機能を要求する。クライアントシステム１３０とプリンタ１２６とをインタフェースするプリントサーバ１０４は、プリンタ１２６の通信と制御とを管理する。これに関して、クライアントシステム１３０は、仮想プリンタ１０６にＪＭＦ  ＤＥＶＣＡＰＳ要求を送り、プリントサーバ１０４のプリンタオブジェクト１１０との通信を開始する（ステップ５０１）。次に、仮想プリンタ１０６は、その要求をプリンタオブジェクト１１０に送る（ステップ５０２）。上記の通り、プリンタオブジェクト１１０は、物理的プリンタ１２６のケーパビリティ２０３と、プリントサーバ１０４のシステムケーパビリティ２０２とを記憶し、又は保持（maintain）する。プリンタオブジェクト１１０は、これらのケーパビリティにアクセスして、クライアントシステム１３０がアクセスできるケーパビリティを読み出す（ステップ５０３）。例えば、プリンタオブジェクト１１０は、あるケーパビリティについて、クライアントシステム１３０をブロックするように構成することができる。クライアントシステム１３０がアクセスできるシステムケーパビリティ及び／またはプリンタケーパビリティは、ＪＭＦ  ＤＥＶＣＡＰＳレスポンスでフォーマットされ（ステップ５０４）、ＪＭＦ  ＤＥＶＣＡＰＳレスポンスを介して仮想プリンタ１０６に送られる（ステップ５０５）。次に、仮想プリンタ１０６は、ＪＭＦ  ＤＥＶＣＡＰＳレスポンスを介してクライアントシステム１３０に、アクセス可能なケーパビリティを知らせる（ステップ５０６）。これにより、クライアントシステム１３０は、プリントサーバ１０４により処理して最終的にプリンタ１２６によりプリントするプリントジョブを構成する（ステップ５０７）。すなわち、クライアントシステム１３０は、仮想プリンタ１０６からのＪＭＦ  ＤＥＶＣＡＰＳレスポンスにより通知されたあるケーパビリティを選択して、プリントジョブのプリンタ１２６による印刷を準備する。
【００２７】
上記の通り、ここに開示した実施形態は、ソフトウェア、ハードウェア、ファームウェア、またはこれらのｋ得見合わせの形態であり得る。図６は、コンピュータ読み取り可能記憶媒体６１２に格納された、プログラムされた命令を実行して、データにアクセスして、上記機能を提供するように動作可能な処理システム６００を示すブロック図である。これに関し、本発明の実施形態は、コンピュータその他の命令実行システムにより用いるプログラムコードを提供するコンピュータ読み取り可能媒体６１２によりアクセス可能なコンピュータプログラムの形態を取ることができる。この説明の目的において、コンピュータ読み取り可能記憶媒体６１２は、コンピュータが利用するプログラムを格納、記憶、通信、又は転送できるものであればどんな媒体でもよい。
【００２８】
コンピュータ読み取り可能記憶媒体６１２は、電子的、磁気的、光学的、光磁気的、赤外線、または半導体のデバイスであり得る。コンピュータ読み取り可能記憶媒体の例としては、固体メモリ、磁気テープ、リムーバブルコンピュータディスケット、ランダムアクセスメモリ（ＲＡＭ）、リードオンリメモリ（ＲＯＭ）、固定磁気ディスク、光ディスクなどがある。現時点における光ディスクの例としては、コンパクトディスク・リードオンリメモリ（ＣＤ−ＲＯＭ）、コンパクトディスク・リード／ライト（ＣＤ−Ｒ／Ｗ）、及びＤＶＤなどがある。
【００２９】
プログラムコードを記憶し及び／又は実行するのに好適な処理システム６００は、システムバス６５０を介してメモリ要素６０４に結合された少なくとも１つのプロセッサ６０２を含む。メモリエレメント６０４は、プログラムコードの実行時に使われるローカルメモリと、バルク記憶と、実行時にバルク記憶からコードを読み出す回数を低減するために、少なくともプログラムコード及び／又はデータの一部を一時的に記憶するキャッシュメモリと、を含む。
【００３０】
（キーボード、ディスプレイ、ポインティングデバイスなどを含むがこれに限定されない）入出力すなわちＩ／Ｏデバイス６０６を、直接的に、またはＩ／Ｏコントローラを介在させて、システムに結合できる。ネットワークアダプタインタフェース６０８をシステムに結合して、コンピュータシステム６００を、プライベートネットワークやパブリックネットワークを介在させて、他のデータ処理システムや記憶デバイスに結合することもできる。モデム、ケーブルモデム、ＩＢＭチャネルアタッチメント、ＳＣＳＩ、ファイバチャネル、イーサネット(登録商標)カードは、現在入手できるネットワークまたはホストインタフェースアダプタのほんの一例である。プレゼンテーションデバイスインタフェース６１０は、システムに結合して、プロセッサ６０２により生成されたプレゼンテーションデータの表示をする、印刷システムなどの１つ以上のプレゼンテーションデバイスとインタフェースする。
【００３１】
プリントジョブ文書の自動処理を参照して説明したが、これは文書の一般的な印刷、ソーティング、及び／又は差し込みを説明することを目的としたものである。したがって、具体的な実施形態を説明したが、本発明の範囲はこれらの具体的実施形態に限定されるものではない。本発明の範囲は、特許請求の範囲とその等価範囲により決まる。
【図１】
0005982862.tif 000002
【図２】
0005982862.tif 000003
【図３】
0005982862.tif 000004
【図４】
0005982862.tif 000005
【図５】
0005982862.tif 000006
【図６】
0005982862.tif 000007