(57)【要約】【課題】非階層構造の印刷設定ファイルから階層構造のジョブチケットを効率良く正確に生成することを目的とする。【解決手段】周辺装置を制御する周辺装置制御手段と、周辺装置における作業に係る作業指示情報を用いて周辺装置における作業を制御する作業制御手段と、を有し、周辺装置制御手段は、作業に係る作業設定情報から非階層構造を有する第１の作業指示情報を作成し、作成した第１の作業指示情報から階層構造を有する第２の作業指示情報を作成することによって課題を解決する。【選択図】図４
2008015922.tif 000002
【特許請求の範囲】
【請求項１】
周辺装置を制御する周辺装置制御手段と、
前記周辺装置における作業に係る作業指示情報を用いて前記周辺装置における作業を制御する作業制御手段と、
を有し、
前記周辺装置制御手段は、特定の設定を含む作業設定情報から非階層構造を有する第１の作業指示情報を作成し、前記特定の設定を前記第１の作業指示情報におけるプライベート領域に設定し、前記第１の作業指示情報から、前記特定の設定を含む、階層構造を有する第２の作業指示情報を作成することを特徴とする情報処理装置。
【請求項２】
前記周辺装置制御手段は、オペレーティングシステムの一部であるモジュール手段と、プラグイン手段と、を含み、前記作業設定情報は、前記プラグインに係り、
前記モジュール手段は、前記作業設定情報から前記第１の作業指示情報を作成することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記プラグイン手段は、前記第１の作業指示情報から前記第２の作業指示情報を作成することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記周辺装置制御手段は、前記作業設定情報に関する情報を前記第１の作業指示情報から取得して保存し、保存した前記作業設定情報に関する情報を前記第２の作業指示情報にコピーすることを特徴とする請求項１乃至３の何れか１項に記載の情報処理装置。
【請求項５】
前記周辺装置制御手段は、プリンタドライバのユーザインタフェースモジュールを実行することにより、前記特定の設定を含む第２の作業指示情報を作成することを特徴とする請求項１に記載の情報処理装置。
【請求項６】
情報処理装置における周辺装置制御方法であって、
周辺装置を制御する周辺装置制御ステップと、
前記周辺装置における作業に係る作業指示情報を用いて前記周辺装置における作業を制御する作業制御ステップと、
を有し、
前記周辺装置制御ステップでは、前記作業に係る作業設定情報から非階層構造を有する第１の作業指示情報を作成し、作成した前記第１の作業指示情報から階層構造を有する第２の作業指示情報を作成することを特徴とする周辺装置制御方法。
【請求項７】
前記周辺装置制御ステップでは、プリンタドライバのユーザインタフェースモジュールを実行することにより、前記特定の設定を含む第２の作業指示情報を作成することを特徴とする請求項６に記載の周辺装置制御方法。
【請求項８】
請求項６又は７に記載の周辺装置制御方法をコンピュータに実行させることを特徴とするプログラム。
【請求項９】
請求項８に記載のプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及び周辺装置制御方法に関する。
【背景技術】
【０００２】
近年、非階層構造の表現で印刷設定に関する情報が記載されているテキスト形式の印刷設定ファイル（ＧＰＤ）と、単一階層構造のメンバーから構成される印刷制御構造体（ＤＥＶＭＯＤＥ構造体）と、を利用した印刷システムが提案されている。この印刷システムは、例えば、Ｗｉｎｄｏｗｓ（登録商標）  ＸＰ等のＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）等に実装されている。なお、この印刷システムにおいては、Ｕｎｉｄｒｖと呼ばれるＷｉｎｄｏｗｓ（登録商標）  ＸＰ  ＯＳ標準のプリンタドライバが利用される。
【０００３】
また、ＵＰｎＰ  Ｆｏｒｕｍ（ＴＭ）で標準化されているＰｒｉｎｔｅｒ  Ｄｅｖｉｃｅ  Ｖ  １．０  ａｎｄ  Ｐｒｉｎｔｅｒ  Ｂａｓｉｃ  Ｓｅｒｖｉｃｅ  Ｖ  １．０がある。ここでは、階層構造の表現で印刷設定や印刷ジョブに関する情報が記述されているＸＭＬ形式の印刷設定ジョブ情報（以降、ジョブチケットと略す場合がある）を利用した印刷システムも提案されている。そして、この印刷システムは、Ｗｉｎｄｏｗｓ（登録商標）  ＸＰ等のＯＳに実装されている。
【０００４】
この印刷システムにおいては、ＯＳ上で印刷制御用のプロキシサーバ機能を備えるサービスを起動する。このサービスを介してＵＰｎＰのＰｒｉｎｔｅｒ  Ｄｅｖｉｃｅ  Ｖ  １．０  ａｎｄ  Ｐｒｉｎｔｅｒ  Ｂａｓｉｃ  Ｓｅｒｖｉｃｅ  Ｖ  １．０を制御するプリンタドライバを利用して、ＵＰｎＰの機能を備えていないネットワーク対応プリンタ等を利用する。
【０００５】
【特許文献１】特開平１０−２７５０６４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
近年、印刷設定ファイルと印刷制御構造体とを利用した印刷システムと、ジョブチケットを利用した印刷システムとを統合した周辺装置制御システムが考えられている。そして、このような周辺装置制御システム（統合印刷システム）では、前者の印刷システムのアーキテクチャを基盤として、その上に後者の印刷システムを構築している。
【０００７】
この場合、Ｕｎｉｄｒｖが非階層構造の表現で印刷設定に関する情報が記載されているテキスト形式の印刷設定ファイルを、階層構造の表現で印刷設定や印刷ジョブに関する情報が記述されているＸＭＬ形式の印刷設定ジョブ情報に変換する処理が必要になる。
【０００８】
しかしながら、非階層構造の印刷設定ファイルから階層構造のジョブチケットを効率良く正確に生成することが困難な問題があった。
【０００９】
本発明はこのような問題点に鑑みなされたもので、非階層構造の印刷設定ファイルから階層構造のジョブチケットを効率良く正確に生成することを目的とする。
更に、ＯＳの制限された仕様に関わらず、特定の設定を含むジョブチケットを効率的に生成することを第二の目的とする。
【課題を解決するための手段】
【００１０】
そこで、本発明は、周辺装置を制御する周辺装置制御手段と、前記周辺装置における作業に係る作業指示情報を用いて前記周辺装置における作業を制御する作業制御手段と、を有し、前記周辺装置制御手段は、前記作業に係る作業設定情報から非階層構造を有する第１の作業指示情報を作成し、作成した前記第１の作業指示情報から階層構造を有する第２の作業指示情報を作成することを特徴とする。
【００１１】
係る構成とすることにより、印刷制御用に使用する非階層構造の印刷設定ファイルから非階層構造の作業指示情報（第１の作業指示情報）を生成し、この第１の作業指示情報から階層構造の作業指示情報（第２の作業指示情報）を生成することができる。よって、非階層構造の印刷設定ファイルから階層構造の作業指示情報を効率良く正確に生成することができる。
【００１２】
ここで、作業指示情報とは、例えば、後述するジョブチケット等に対応する。また、作業設定情報とは、例えば、後述する印刷設定情報等に対応する。
【００１３】
また、本発明は、周辺装置制御方法、プログラム及び記憶媒体としてもよい。
【発明の効果】
【００１４】
本発明によれば、非階層構造の印刷設定ファイルから階層構造のジョブチケットを効率良く正確に生成することができる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の実施形態について図面に基づいて説明する。
【００１６】
以下において、ＵＳＢとはＵｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓの略であり、双方向通信が可能な公知のインタフェースであるので、その詳細な説明は省略する。また、ＸＭＬとはＷ３Ｃで標準化されているＥｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅのことであるので、その詳細な説明は省略する。
【００１７】
図１は、本実施形態に係る情報処理装置及び周辺装置からなる周辺装置制御システムの構成を表すブロック図である。図１において、１は、情報処理装置であり、一般的なパーソナルコンピュータ（以降、ＰＣと略す場合がある）で構成される。ＰＣ１は、後述する図２に示されるようなハードウェアで構成され、ＯＳとしてＷｉｎｄｏｗｓ（登録商標）  ＸＰ等のような一般的なＯＳがインストールされている。なお、本実施形態ではＡＢＥ社製のＯＳであると仮定する。
【００１８】
３は、プリンタであり、カラーインクジェットプリンタで構成され、本実施形態における周辺装置の一例としている。なお、本実施形態における周辺装置としては、プリンタ、複写機、ファクシミリ、スキャナ、デジタルカメラ及びこれらの複合機能を備える装置等であってもよい。プリンタ３は、後述する図３に示されるようなハードウェアで構成され、ＰＣ１とＵＳＢインタフェース９を介して接続されており、互いに双方向通信を行うことができる。
【００１９】
３０は、アプリケーションであり、実行可能形式のファイルで構成される。本実施形態では、アプリケーション３０は、後述する図５に示すような印刷機能を備えるテキストエディタである。５０は、後述する図４に示されるようなプリンタドライバである。
【００２０】
図２は、ＰＣ１のハードウェア構成の一例を表すブロック図である。ＰＣ１は、図２に示すようなハードウェア構成を有する。つまり、ＰＣ１は、ランダムアクセスメモリ部（ＲＡＭ１２０１）、記憶部であるハードディスクドライブ部（ＨＤＤ１２０２）、入力部の一例であるキーボード部（ＫＢＤ１２０３）、を構成として有する。また、ＰＣ１は、制御部であるＣＰＵ１２０４、表示部の一例である表示用ディスプレイ（ＬＣＤ１２０５）、通信制御部の一例であるネットワークボード（ＮＢ１２０７）、以上のＰＣ１の構成要素を互いに接続するバス１２０６、を構成として有する。
【００２１】
なお、記憶部は、可搬性ＣＤ−ＲＯＭ又は内部据付のＲＯＭ等であってもよい。図１に示すＰＣ１の各モジュール（アプリケーション３０、プリンタドライバ５０）は、ＨＤＤ１２０２に記憶され、必要に応じてＲＡＭ１２０１に読み出されてＣＰＵ１２０４により実行される。これにより、ＣＰＵ１２０４が、図１に示す各モジュールの機能を実現する。
【００２２】
図３は、プリンタ３のハードウェア構成を表すブロック図である。プリンタ３は、図３に示すようなハードウェア構成を有する。図３において、１５は、マイクロプロセッサ等から構成されるＣＰＵであり、プリンタ３の中央処理装置として、ＲＯＭ１６に記憶されているプログラムにしたがって、ＲＡＭ１７、通信部１８、記録部１９を制御する。なお、図３において、双方向矢印は、アドレス・データバスを表している。
【００２３】
ＲＯＭ１６にはプリンタドライバ５０の制御にしたがってプリンタ３が記録（印刷）処理や、状態をＰＣ１へ伝える処理を行うプログラムが記憶されている。ＲＡＭ１７は、主にＰＣ１から送られて、それを基に記録部１９によって印刷される印字データが一時的に記憶される。
【００２４】
通信部１８にはＵＳＢインタフェース９用の接続ポートが含まれており、ＵＳＢの通信を制御する。記録部１９は、インクジェット方式の記録ヘッド、各カラーインク、キャリッジ、記録紙搬送機構等から構成される記録ユニットと、前記印字データを基に前記記録ヘッドにて印字用パルスを発生させるためのＡＳＩＣ等から構成される電気回路と、から構成される。
【００２５】
印刷可能なアプリケーション上での印刷操作によって、アプリケーションで開かれているファイルの表示内容（画像データ）が、ＥＭＦ形式のスプールファイルとしてＰＣ１のＨＤＤ１２０２に一時的に格納される。そして、プリンタドライバ５０を介してプリンタ３制御用コマンドを含む印字データに変換された後、ＵＳＢインタフェース９を介してプリンタ３に送られる。プリンタ３にて受信された印字データは、記録部１９によって印字用パルスに変換されて、記録紙上に印刷される。
【００２６】
図４は、ＰＣ１におけるプリンタドライバの構成を表す図である。図４において、５０は、ＰＣ１にインストールされているプリンタドライバであり、３３〜３９の複数のモジュールから構成される。３０は、印刷可能なアプリケーションであり、例えば、後述する図５に示すような印刷機能を備えるテキストエディタである。
【００２７】
３１は、Ｇｒａｐｈｉｃｓ  Ｄｅｖｉｃｅ  Ｉｎｔｅｒｆａｃｅ（ＧＤＩ）であり、ＯＳの一部である。３２は、プリンタキューであり、スプーラ４０の一部として構成され、印刷ジョブがキューイングされる。キューイングされた印刷ジョブは、プリンタキューフォルダ（ここでは説明を省略する）に表示される。
【００２８】
３３は、プリントプロセッサであり、印刷レイアウトの変更や印刷画像の特殊処理が行われる。３４は、グラフィックスドライバであり、プリンタドライバの画像処理のコアとして、ＧＤＩ３１から送られて来る描画命令を基に印刷用の画像処理を行い、印刷制御コマンドを作成する。
【００２９】
３５は、ＵＩモジュールであり、プリンタドライバのユーザインタフェースの提供及び制御を行う。３９は、ＵＩプラグインであり、ＵＩモジュール３５からフックされ、プリンタドライバのユーザインタフェース及び制御をプリンタ３特有のものにカスタマイズすることができる。３６は、ランゲージモニタであり、データの通信Ｉ／Ｆとしてデータの送受信を制御する。３７は、ポートモニタであり、ランゲージモニタ３６から送られて来るデータを適切なポートに対して送信したり、プリンタ３から送られて来るデータを、クラスドライバ３８を介して受信したりする処理を行う。
【００３０】
３８は、クラスドライバであり、最もポートに近いローレベルのモジュールであり、本実施形態ではＵＳＢのプリンタクラスのドライバに相当し、ポート（本実施形態ではＵＳＢポート）を制御する。
【００３１】
４１は、ＯＳ内のプリントジョブチケット／プリントジョブ能力マネージャであり、ＸＭＬ形式の階層構造で表現されるプリントジョブチケットやプリントジョブ能力に関する処理を制御する。アプリケーション３０がプリンタドライバ５０からプリントジョブ能力を取得するためにコールするプリントジョブ能力取得用のＡＰＩは、このプリントジョブチケット／プリントジョブ能力マネージャ４１が提供している。
【００３２】
４２は、ＵＩモジュール３５内のプリントジョブチケット／プリントジョブ能力プロバイダであり、ＸＭＬ形式の階層構造で表現されるプリントジョブチケットやプリントジョブ能力に関する処理を制御する。後述する図５３のステップＳ５３０３の処理は、このプリントジョブチケット／プリントジョブ能力プロバイダ４２により制御される。
【００３３】
４３は、ＵＩプラグイン３９内のプリントジョブチケット／プリントジョブ能力プロバイダであり、ＸＭＬ形式の階層構造で表現されるプリントジョブチケットやプリントジョブ能力に関する処理を制御する。後述する図５３のステップＳ５３０４〜Ｓ５３１０の処理は、このプリントジョブチケット／プリントジョブ能力プロバイダ４３により制御される。
【００３４】
プリントプロセッサ３３、グラフィックスドライバ３４、ＵＩモジュール３５、ランゲージモニタ３６、ポートモニタ３７、クラスドライバ３８はＯＳの一部である。
【００３５】
図５は、印刷機能を備えるテキストエディタから印刷を行う時のユーザの操作の一例を表す図である。図５において、ユーザがＦｉｌｅメニューから印刷メニュー（Ｐｒｉｎｔ．．．）２１７を選択することにより、テキスト表示部２１８に表示されているテキストの表示内容の印刷処理がＰＣ１等において開始される。
【００３６】
図６は、Ｐｒｉｎｔダイアログを表す図である。図５において印刷メニュー２１７が選択されると、ＰＣ１は、図６に示すダイアログを表示する。２１９は、プリンタ選択部であり、ユーザはプリンタ選択部２１９を用いて印刷を実行させるプリンタを選択することができる。図６では、プリンタ３で印刷を行うことができるプリンタドライバ５０が選択されている状態を表している。
【００３７】
２２０は、Ｐｒｅｆｅｒｅｎｃｅｓボタンであり、ユーザがこのボタンを押下すると、ＰＣ１は、プリンタ選択部２１９で選択されているプリンタ用ドライバの印刷設定ダイアログを開いて詳細設定を行う。２２２は、Ｐｒｉｎｔボタンであり、ユーザがこのボタンを押下すると、ＰＣ１は、選択されている各設定で印刷を開始し、図６に示すＰｒｉｎｔダイアログを閉じる。２２３は、Ｃａｎｃｅｌボタンであり、ユーザがこのボタンを押下すると、ＰＣ１は、印刷を開始せずに図６に示すＰｒｉｎｔダイアログを閉じる。
【００３８】
図７は、プリンタドライバ５０の印刷設定ダイアログを表す図である。図７において、２２４は、印刷設定ダイアログであり、ユーザは、印刷設定ダイアログ２２４を用いて、プリンタドライバ５０を介してプリンタ３で印刷するための各印刷設定を選択又は指定することができる。
【００３９】
２２７は、給紙方法選択部であり、ユーザは給紙方法選択部２２７を用いて給紙方法を「オートシートフィーダー（ＡＳＦ）」、「カセット」の中から選択できる。図７では「ＡＳＦ」が選択されている状態を表している。２２８は、解像度選択部であり、ユーザは解像度選択部２２８を用いて印刷時の解像度を「高」、「中」の中から選択できる。図７では「中」が選択されている状態を表している。
【００４０】
２２９は、用紙サイズ選択部であり、ユーザは用紙サイズ選択部２２９を用いて用紙サイズを「Ｌｅｔｔｅｒ」、「Ｌｅｇａｌ」、「Ａ４」、「Ｂ５」、「Ａ４＋」の中から選択できる。図７では「Ａ４」が選択されている状態を表している。２３０は、用紙の種類選択部であり、ユーザは用紙の種類選択部２３０を用いて用紙の種類を「普通紙」、「写真用紙」、「プロ写真用紙」の中から選択できる。図７では「普通紙」が選択されている状態を表している。
【００４１】
２３１は、両面印刷選択部であり、ユーザは両面印刷選択部２３１を用いて両面印刷の方法を「片面」、「長辺両面」、「短辺両面」の中から選択できる。図７では「片面」が選択されている状態を表している。なお、「片面」は両面印刷せずに、片面だけに印刷する通常の印刷方法である。２３２は、印刷品位選択部であり、ユーザは印刷品質選択部２３２を用いて印刷品位を「オート」、「きれい」、「標準」の中から選択できる。図７では「オート」が選択されている状態を表している。
【００４２】
２３３は、カラー選択部であり、ユーザはカラー選択部２３３を用いてカラー印刷かモノクロ印刷かを選択できる。図７ではカラー印刷が選択されている状態を表している。２３４は、部数指定部であり、ユーザは部数指定部２３４を用いて印刷する部数を１〜２５５部の範囲内で任意の整数で指定できる。図７では１部が指定されている状態を表している。
【００４３】
２３５は、印刷の向き選択部であり、ユーザは印刷の向き選択部２３５を用いて印刷の向きを「縦」、「横」の中から選択できる。図７では「縦」が選択されている状態を表している。
【００４４】
２３６は、割り付け（Ｎ−ＵＰ）印刷選択部であり、割り付け印刷ページ数選択部２３７、割り付け印刷ページ順序選択部２３８、割り付け印刷出力用紙サイズ選択部２３９から構成される。ユーザは割り付け印刷選択部２３６を用いて割り付け印刷に関する設定を行うことができる。
【００４５】
ユーザは、割り付け印刷ページ数選択部２３７を用いて、割り付け印刷時に１ページ内に割り付けるページ数を「１」、「２」、「４」、「６」ページの中から選択できる。図７では「１」ページが選択されている状態を表している。なお、「１」ページが選択されている場合は、割り付け印刷ではなく、通常の１ページの印刷が行われる。また、ユーザは、割り付け印刷ページ順序選択部２３８を用いて、割り付け印刷時に１ページ内に割り付けるページの順序を以下の中から選択することができる。
「左上→右下（水平）」、「左上→右下（垂直）」、「右上→左下（水平）」、「右上→左下（垂直）」、「左下→右上（水平）」、「左下→右上（垂直）」、「右下→左上（水平）」、「右下→左上（垂直）」、「左上→右下（水平）又は左上→右下（垂直）」、「右下→左上（水平）又は右下→左上（垂直）」
図７では「左上→右下（水平）」が選択されている状態を表している。また、ユーザは、割り付け印刷出力用紙サイズ選択部２３９を用いて、割り付け印刷時の出力用紙サイズを「Ｌｅｔｔｅｒ」、「Ｌｅｇａｌ」、「Ａ４」、「Ｂ５」、「Ａ４＋」の中から選択できる。図７では「Ａ４」が選択されている状態を表している。
【００４６】
２２５は、ＯＫボタンであり、ＯＫボタン２２５が押下されると、ＰＣ１は、選択又は指定された印刷設定を保存（セット）して、印刷設定ダイアログ２２４を閉じる。２２６は、キャンセルボタンであり、キャンセルボタン２２６が押下されると、ＰＣ１は、選択又は指定された印刷設定を破棄して、印刷設定ダイアログ２２４を閉じる。
【００４７】
なお、図７の印刷設定ダイアログは、プリンタ３を制御するためのプリンタドライバ５０に特化したものであり、この印刷設定ダイアログを使って他のプリンタを制御することはできない。
【００４８】
図８は、印刷制御構造体を表す図である。図８において、ＰＲＩＮＴ＿ＭＯＤＥは印刷制御構造体を表す定義であり、次のような単一階層構造のメンバーで構成される。
【００４９】
・［メンバー］：［内容］：［印刷設定］
・ｉｎｐｕｔＢｉｎ：給紙方法の指定：給紙方法選択部
・ｏｒｉｅｎｔａｔｉｏｎ：印刷の向きの指定：印刷の向き選択部
・ｃｏｌｏｒ：カラー印刷の指定：カラー選択部
・ｒｅｓｏｌｕｔｉｏｎ：解像度の指定：解像度選択部
・ｍｅｄｉａＴｙｐｅ：用紙の種類の指定：用紙の種類選択部
・ｄｕｐｌｅｘ：両面印刷の指定：両面印刷選択部
・ｎＵｐ：割り付け印刷の指定：割り付け印刷ページ数選択部
・ｐｒｅｓｅｎｔａｔｉｏｎＤｉｒｅｃｔｉｏｎ：割り付け印刷ページ順序の指定：割り付け印刷ページ順序選択部
・ｍｅｄｉａＳｉｚｅ：用紙サイズの指定：用紙サイズ選択部
・ｏｕｔｐｕｔＱｕａｌｉｔｙ：印刷品位の指定：印刷品位選択部
・ｏｕｔｐｕｔＭｅｄｉａＳｉｚｅ：割り付け印刷出力用紙サイズの指定：割り付け印刷出力用紙サイズ選択部
・ｃｏｐｙＣｏｕｎｔ：部数の指定：部数指定部
【００５０】
このＯＳ上では、アプリケーション３０とプリンタドライバ５０との間でハンドリングされる印刷設定は、印刷制御構造体の形で表される。アプリケーション３０は、印刷制御構造体のポインタを引数として、Ａｐｐｌｉｃａｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ（以降、ＡＰＩと略す場合がある）を介して、プリンタドライバ５０に印刷設定を渡す。又は、アプリケーション３０は、ＡＰＩを介して、プリンタドライバ５０から印刷設定を取得する。ｃｏｐｙＣｏｕｎｔ以外のメンバーは、ｌｏｎｇのポインタで定義されていて、これらのメンバーに代入する、或いは、代入される値が複数ある場合は、それらの値が該当するメンバーに対して配列の形でセットされる。最後の配列には、配列の終わりを表すゼロ（０）がセットされる。
【００５１】
図９〜図２０は、印刷設定ファイルの内容を表す図である。印刷設定ファイルは、ＵＩプラグイン３９の構成ファイルの内の一つであり、プリンタドライバ５０が備える設定可能な印刷設定に関する情報が記載されている。印刷設定ファイルは、テキスト形式のファイルであり、非階層構造の表現で印刷設定に関する情報が記載されている。この印刷設定ファイルが第一の作業指示情報である。ここで、非階層構造で表現される理由は、印刷設定ファイルが単一階層構造のメンバーから構成される印刷制御構造体を生成するために利用されるものであり、印刷制御構造体を生成するために必要な最小限のアーキテクチャで設計されているからである。図９〜図１９において、Ｆｅａｔｕｒｅには印刷設定の各機能が定義されていて、Ｏｐｔｉｏｎには各機能で設定可能なオプション（選択肢）が定義されている。Ｄｅｆａｕｌｔには、各機能で設定（選択）される初期値が定義されている。
【００５２】
図９は、印刷設定ファイル内の給紙方法に関する情報を表す図である。図９において、給紙方法は次のように定義されている。
【００５３】
ＩＤ：  ７      オートシートフィーダー（ＡＳＦ）
ＩＤ：  ２６７  カセット（Ｃａｓｓｅｔｔｅ）
【００５４】
印刷制御構造体（ＰＲＩＮＴ＿ＭＯＤＥ）のｉｎｐｕｔＢｉｎには、図９のＩＤで指定されている７、２６７がセットされる。初期値は「オートシートフィーダー（ＡＳＦ）」である。
【００５５】
図１０は、印刷設定ファイル内の印刷の向きに関する情報を表す図である。図１０において、印刷の向きは次のように定義されている。
【００５６】
ＩＤ：  ２１  縦（Ｐｏｒｔｒａｉｔ）
ＩＤ：  ２２  横（Ｌａｎｄｓｃａｐｅ）
【００５７】
印刷制御構造体（ＰＲＩＮＴ＿ＭＯＤＥ）のｏｒｉｅｎｔａｔｉｏｎには、図１０のＩＤで指定されている２１、２２がセットされる。初期値は「縦」である。
【００５８】
図１１は、印刷設定ファイル内のカラー印刷の方法に関する情報を表す図である。図１１において、カラー印刷の方法は次のように定義されている。
【００５９】
ＩＤ：  ３１    カラー印刷（Ｃｏｌｏｒ）
ＩＤ：  ３３    モノクロ印刷（Ｍｏｎｏｃｈｒｏｍｅ）
【００６０】
印刷制御構造体（ＰＲＩＮＴ＿ＭＯＤＥ）のｃｏｌｏｒには、図１１のＩＤで指定されている３１、３３がセットされる。初期値は「カラー印刷」である。
【００６１】
図１２は、印刷設定ファイル内の解像度に関する情報を表す図である。図１２において、解像度は次のように定義されている。
【００６２】
ＩＤ：    −４                高（Ｈｉｇｈ）
ＤＰＩ：  （６００，６００）  ６００×６００  ［ｄｐｉ］
ＩＤ：    −３                中（Ｓｔａｎｄａｒｄ）
ＤＰＩ：  （３００，３００）  ３００×３００  ［ｄｐｉ］
【００６３】
印刷制御構造体（ＰＲＩＮＴ＿ＭＯＤＥ）のｒｅｓｏｌｕｔｉｏｎには、図１２のＩＤで指定されている−４、−３がセットされる。初期値は「中」である。
【００６４】
図１３は、印刷設定ファイル内の用紙の種類に関する情報を表す図である。図１３において、用紙の種類は次のように定義されている。
【００６５】
ＩＤ：  １      普通紙（Ｐｌａｉｎ）
ＩＤ：  ２      写真用紙（Ｐｈｏｔｏ）
ＩＤ：  ２８５  プロ写真用紙（ＰｒｏＰｈｏｔｏ）
【００６６】
印刷制御構造体（ＰＲＩＮＴ＿ＭＯＤＥ）のｍｅｄｉａＴｙｐｅには、図１３のＩＤで指定されている１、２、２８５がセットされる。初期値は「普通紙」である。
【００６７】
図１４は、印刷設定ファイル内の両面印刷に関する情報を表す図である。図１４において、両面印刷は次のように定義されている。
【００６８】
ＩＤ：  ５１    片面（ＯｎｅＳｉｄｅｄ）
ＩＤ：  ５２    長辺両面（ＴｗｏＳｉｄｅｄＬｏｎｇＥｄｇｅ）
ＩＤ：  ５３    短辺両面（ＴｗｏＳｉｄｅｄＳｈｏｒｔＥｄｇｅ）
【００６９】
印刷制御構造体（ＰＲＩＮＴ＿ＭＯＤＥ）のｄｕｐｌｅｘには、図１４のＩＤで指定されている５１、５２、５３がセットされる。初期値は「片面」である。
【００７０】
図１５は、印刷設定ファイル内の割り付け印刷に関する情報を表す図である。図１５において、割り付け印刷は次のように定義されている。
【００７１】
ＩＤ：  １１    １ページ（ＰａｇｅｓＰｅｒＳｈｅｅｔ１）
ＩＤ：  １２    ２ページ（ＰａｇｅｓＰｅｒＳｈｅｅｔ２）
ＩＤ：  １４    ４ページ（ＰａｇｅｓＰｅｒＳｈｅｅｔ４）
ＩＤ：  １６    ６ページ（ＰａｇｅｓＰｅｒＳｈｅｅｔ６）
【００７２】
印刷制御構造体（ＰＲＩＮＴ＿ＭＯＤＥ）のｎＵｐには、図１５のＩＤで指定されている１１、１２、１４、１６がセットされる。初期値は「１ページ」である。
【００７３】
図１６は、印刷設定ファイル内の割り付け印刷ページ順序に関する情報を表す図である。図１６において、割り付け印刷ページ順序は次のように定義されている。
【００７４】
ＩＤ：  １１１      左上→右下（水平）（ＲｉｇｈｔＢｏｔｔｏｍ）
ＩＤ：  １１２      左上→右下（垂直）（ＢｏｔｔｏｍＲｉｇｈｔ）
ＩＤ：  １１３      右上→左下（水平）（ＬｅｆｔＢｏｔｔｏｍ）
ＩＤ：  １１４      右上→左下（垂直）（ＢｏｔｔｏｍＬｅｆｔ）
ＩＤ：  １１５      左下→右上（水平）（ＲｉｇｈｔＴｏｐ）
ＩＤ：  １１６      左下→右上（垂直）（ＴｏｐＲｉｇｈｔ）
ＩＤ：  １１７      右下→左上（水平）（ＬｅｆｔＴｏｐ）
ＩＤ：  １１８      右下→左上（垂直）（ＴｏｐＬｅｆｔ）
ＩＤ：  ３１１      左上→右下（水平）又は左上→右下（垂直）（ＲｉｇｈｔＯｒＢｏｔｔｏｍ）
ＩＤ：  ３１２      右下→左上（水平）又は右下→左上（垂直）（ＬｅｆｔＯｒＴｏｐ）
【００７５】
印刷制御構造体（ＰＲＩＮＴ＿ＭＯＤＥ）のｐｒｅｓｅｎｔａｔｉｏｎＤｉｒｅｃｔｉｏｎには、図１６のＩＤで指定されている１１１、１１２、１１３、１１４、１１５、１１６、１１７、１１８、３１１、３１２がセットされる。初期値は「左上→右下（水平）」である。
【００７６】
図１７は、印刷設定ファイル内の用紙サイズに関する情報を表す図である。図１７において、用紙サイズは次のように定義されている。
【００７７】
ＩＤ：  ６１    Ｌｅｔｔｅｒ
ＩＤ：  ６２    Ｌｅｇａｌ
ＩＤ：  ６３    Ａ４
ＩＤ：  ６４    Ｂ５
ＩＤ：  ２８１  Ａ４＋（Ａ４Ｐｌｕｓ）
【００７８】
印刷制御構造体（ＰＲＩＮＴ＿ＭＯＤＥ）のｍｅｄｉａＳｉｚｅには、図１７のＩＤで指定されている６１、６２、６３、６４、２８１がセットされる。初期値は「Ａ４」である。
【００７９】
図１８は、印刷設定ファイル内の印刷品位に関する情報を表す図である。図１８において、印刷品位は次のように定義されている。
【００８０】
ＩＤ：  ７１    オート（Ａｕｔｏｍａｔｉｃ）
ＩＤ：  ７２    きれい（Ｈｉｇｈ）
ＩＤ：  ７３    標準（Ｎｏｒｍａｌ）
【００８１】
印刷制御構造体（ＰＲＩＮＴ＿ＭＯＤＥ）のｏｕｔｐｕｔＱｕａｌｉｔｙには、図１８のＩＤで指定されている７１、７２、７３がセットされる。初期値は「オート」である。
【００８２】
図１９は、印刷設定ファイル内の割り付け印刷出力用紙サイズに関する情報を表す図である。図１９において、割り付け印刷出力用紙サイズは次のように定義されている。
【００８３】
ＩＤ：  ６１    Ｌｅｔｔｅｒ
ＩＤ：  ６２    Ｌｅｇａｌ
ＩＤ：  ６３    Ａ４
ＩＤ：  ６４    Ｂ５
ＩＤ：  ２８１  Ａ４＋（Ａ４Ｐｌｕｓ）
【００８４】
印刷制御構造体（ＰＲＩＮＴ＿ＭＯＤＥ）のｏｕｔｐｕｔＭｅｄｉａＳｉｚｅには、図１９のＩＤで指定されている６１、６２、６３、６４、２８１がセットされる。初期値は「Ａ４」である。
【００８５】
図２０は、印刷設定ファイル内のコマンド制御に関する情報を表す図である。図２０において、Ｃｏｍｍａｎｄにはプリンタ３を制御するための各印刷制御コマンドの制御方法が定義されている。各印刷制御コマンドにおいて、Ｏｒｄｅｒには制御順序が、ＣａｌｌＩＤには制御関数の名前がそれぞれ定義されている。
【００８６】
ＣｍｄＳｔａｒｔＪｏｂは、印刷ジョブの開始時の制御コマンドの制御方法であり、制御順序がＪＯＢ＿ＳＥＴＵＰ．１、制御関数の名前がＣＭＤ＿ＩＤ＿ＳＴＡＲＴＪＯＢである。ＣｍｄＳｔａｒｔＤｏｃは、印刷ジョブに含まれるドキュメントの開始時の制御コマンドの制御方法であり、制御順序がＤＯＣ＿ＳＥＴＵＰ．１、制御関数の名前がＣＭＤ＿ＩＤ＿ＳＴＡＲＴＤＯＣである。
【００８７】
ＣｍｄＳｔａｒｔＰａｇｅは、ドキュメントに含まれるページの開始時の制御コマンドの制御方法であり、制御順序がＰＡＧＥ＿ＳＥＴＵＰ．１、制御関数の名前がＣＭＤ＿ＩＤ＿ＳＴＡＲＴＰＡＧＥである。ＣｍｄＥｎｄＰａｇｅは、ドキュメントに含まれるページの終了時の制御コマンドの制御方法であり、制御順序がＰＡＧＥ＿ＦＩＮＩＳＨ．１、制御関数の名前がＣＭＤ＿ＩＤ＿ＥＮＤＰＡＧＥである。
【００８８】
ＣｍｄＥｎｄＤｏｃは、印刷ジョブに含まれるドキュメントの終了時の制御コマンドの制御方法であり、制御順序がＤＯＣ＿ＦＩＮＩＳＨ．１、制御関数の名前がＣＭＤ＿ＩＤ＿ＥＮＤＤＯＣである。ＣｍｄＥｎｄＪｏｂは、印刷ジョブの終了時の制御コマンドの制御方法であり、制御順序がＪＯＢ＿ＦＩＮＩＳＨ．１、制御関数の名前がＣＭＤ＿ＩＤ＿ＥＮＤＪＯＢである。
【００８９】
ＣｍｄＧｅｔＰｒｎＰｒｏｐｅｒｔｉｅｓは、プリンタドライバ５０がアプリケーション３０に印刷設定情報を返す時の制御コマンドの制御方法であり、制御順序がＡＮＹ、制御関数の名前がＣＭＤ＿ＩＤ＿ＧＥＴＰＲＮＰＲＯＰＥＲＴＩＥＳである。
【００９０】
図２１は、印刷ジョブの構成を表す図である。図２１において、「ジョブ」は１つの印刷ジョブを表し、ドキュメント１、ドキュメント２、・・・、ドキュメントＮのＮ個のドキュメントから構成される。ドキュメント１は、ページ１、ページ２、・・・、ページＸのＸページである。ドキュメント２は、ページ１、ページ２、・・・、ページＹのＹページである。ドキュメントＮは、ページ１、ページ２、・・・、ページＺのＺページである。このように、各ドキュメントが複数のページ（１ページの場合もある）でそれぞれ構成される。
【００９１】
図２２は、各印刷制御コマンドを制御する制御関数の仕様を表す図である。図２０に示す各制御関数は、図２２に示すような処理を行い、その結果を返す仕様となっている。なお、これらの制御関数はＵＩプラグイン３９に実装されている。ここで、図２０に示す各制御関数とは、
ＣＭＤ＿ＩＤ＿ＳＴＡＲＴＪＯＢ、ＣＭＤ＿ＩＤ＿ＳＴＡＲＴＤＯＣ、ＣＭＤ＿ＩＤ＿ＳＴＡＲＴＰＡＧＥ、ＣＭＤ＿ＩＤ＿ＥＮＤＰＡＧＥ、ＣＭＤ＿ＩＤ＿ＥＮＤＤＯＣ、ＣＭＤ＿ＩＤ＿ＥＮＤＪＯＢ、ＣＭＤ＿ＩＤ＿ＧＥＴＰＲＮＰＲＯＰＥＲＴＩＥＳ
である。
【００９２】
図２３は、印刷設定情報の取得処理を表すフローチャートである。アプリケーション３０がプリンタドライバ５０から印刷設定を取得するために印刷設定取得用のＡＰＩをコールする。すると、ＵＩモジュール３５がＯＳにロードされて、ＵＩモジュール３５において、図２２に示す印刷設定情報の取得処理が開始される（Ｓ２３０１）。
【００９３】
ＵＩモジュール３５は、図９〜図２０に示す印刷設定ファイルをロードし（Ｓ２３０２）、この印刷設定ファイルから印刷設定情報を生成する（Ｓ２３０３）。ステップＳ２３０３において、ＵＩモジュール３５は、印刷設定ファイルの中から図２０に示すＣｍｄＧｅｔＰｒｎＰｒｏｐｅｒｔｉｅｓの記述にしたがってＣＭＤ＿ＩＤ＿ＧＥＴＰＲＮＰＲＯＰＥＲＴＩＥＳをコールしてＵＩプラグイン３９をフックする。ＵＩプラグイン３９は、印刷設定ファイルに記述されていない印刷設定に関して、プリンタ３特有のものにカスタマイズを行う。なお、このカスタマイズの処理に関しては、本実施形態とは関係無いので、ここではその詳細説明を省略する。
【００９４】
ＵＩモジュール３５が、生成された印刷設定情報をＣＭＤ＿ＩＤ＿ＧＥＴＰＲＮＰＲＯＰＥＲＴＩＥＳの引数である図８に示す印刷制御構造体（ＰＲＩＮＴ＿ＭＯＤＥ）にセットし（Ｓ２３０４）、印刷設定情報の取得処理を終了する（Ｓ２３０５）。
【００９５】
図２４は、印刷処理を表すフローチャートである。アプリケーション３０から印刷が開始されると、プリンタドライバ５０がＯＳにロードされて、図２４の印刷処理が開始される（Ｓ２４０１）。印刷処理が開始されると、プリンタドライバ５０は、制御関数ＣＭＤ＿ＩＤ＿ＳＴＡＲＴＪＯＢをコールする。その結果、その印刷ジョブの開始の処理が実行される（Ｓ２４０２）。そして、プリンタドライバ５０は、制御関数ＣＭＤ＿ＩＤ＿ＳＴＡＲＴＤＯＣをコールする。その結果、そのジョブ内のドキュメントの開始の処理が実行される（Ｓ２４０３）。
【００９６】
そして、プリンタドライバ５０は、制御関数ＣＭＤ＿ＩＤ＿ＳＴＡＲＴＰＡＧＥをコールする。その結果、ドキュメント内のページの開始の処理が実行される（Ｓ２４０４）。ページの開始の処理が実行されると、プリンタドライバ５０は、後述する図２５に示す印刷制御構造体の設定を行う処理を実行する（Ｓ２４０５）。印刷処理中のページが終了した場合（Ｓ２４０６においてＹＥＳ）、プリンタドライバ５０は、制御関数ＣＭＤ＿ＩＤ＿ＥＮＤＰＡＧＥをコールする。その結果、そのページの終了処理が実行される（Ｓ２４０７）。
【００９７】
ステップＳ２４０７の後、プリンタドライバ５０は、次のページが有るか否かを判定する（Ｓ２４０８）。次のページが有る場合（Ｓ２４０８においてＹＥＳ）、プリンタドライバ５０は、ステップＳ２４０４に戻る。次のページが無い場合（Ｓ２４０８においてＮＯ）、プリンタドライバ５０は、そのページが含まれるドキュメントの次のドキュメントが有るか否かを判定する（Ｓ２４０９）。
【００９８】
次のドキュメントが有る場合（Ｓ２４０９においてＹＥＳ）、プリンタドライバ５０は、ステップＳ２４０３に戻る。次のドキュメントが無い場合、プリンタドライバ５０は、印刷処理を終了する（Ｓ２４１０）。
【００９９】
図２５は、印刷制御構造体の設定を行う処理を表すフローチャートである。図２５において、印刷制御構造体の設定を行う処理が開始されると（Ｓ２５０１）、プリンタドライバ５０は、以下の処理を行う。つまり、プリンタドライバ５０は、印刷設定ダイアログ２２４で選択、指定されている印刷設定情報を基に印刷制御構造体（ＰＲＩＮＴ＿ＭＯＤＥ）を設定し（Ｓ２５０２）、印刷制御構造体の設定を行う処理を終了する（Ｓ２５０３）。
【０１００】
前述した印刷システムは、非階層構造の表現で印刷設定に関する情報が記載されているテキスト形式の印刷設定ファイルと、単一階層構造のメンバーから構成される印刷制御構造体（ＰＲＩＮＴ＿ＭＯＤＥ）と、を利用している。以降、この印刷システムを「従来の印刷システム」と略す場合がある。一方、階層構造の表現で印刷設定に関する情報が記載されているＸＭＬ形式のプリントジョブチケットを利用した印刷システム（以降、「新しい印刷システム」と略す場合がある）が存在する。そして、従来の印刷システムのアーキテクチャを基盤として、その上に新しい印刷システムを構築した統合印刷システムが考えられており、以下において、この統合印刷システムに関して説明する。
【０１０１】
図２６は、新しい印刷システムが実装されているＯＳにＰｒｉｎｔダイアログを表す図である。新しい印刷システムが実装されているＯＳ上で、図５に示す印刷機能を備えるテキストエディタにおいて、印刷メニュー２１７が選択されると、Ｐｒｉｎｔダイアログ２４０が表示される。Ｐｒｉｎｔダイアログ２４０を介して、後述するプリントジョブチケットや、プリントジョブ能力をサポートする新しい印刷システムに対応している任意のプリンタ又はプリンタドライバに対して各印刷設定を選択又は指定することができる。
【０１０２】
図２６において、２４１は、プリンタ選択部であり、ユーザはプリンタ選択部２４１を用いて、印刷を実行させるプリンタを選択することができる。図２６では、プリンタ３で印刷を行うことができるプリンタドライバ５０が選択されている状態を表している。以下では、ＯＳの製造元であるＡＢＥ社が定義しているＡＢＥ社のパブリックスキーマの範囲で説明する。しかしながら、ユーザは、各印刷設定で選択できる選択肢としては、このパブリックスキーマの範囲に限らず、プリンタの製造元が定義しているプライベートスキーマで定義されている選択肢を選択することもできる。
【０１０３】
２４２は、給紙方法選択部であり、ユーザは給紙方法選択部２４２を用いて、給紙方法を「オートシートフィーダー（ＡＳＦ）」、「カセット」、「手差し」の中から選択できる。図２６では「ＡＳＦ」が選択されている状態を表している。２４３は、解像度選択部であり、ユーザは解像度選択部２４３を用いて、印刷時の解像度を「高」、「中」、「低」の中から選択できる。図２６では「中」が選択されている状態を表している。
【０１０４】
２４４は、用紙サイズ選択部であり、ユーザは用紙サイズ選択部２４４を用いて、用紙サイズを「Ｌｅｔｔｅｒ」、「Ｌｅｇａｌ」、「Ａ５」、「Ａ４」、「Ｂ５」、「Ｐｈｏｔｏ  （８×１０インチ）」の中から選択できる。図２６では「Ａ４」が選択されている状態を表している。２４５は、用紙の種類選択部であり、ユーザは用紙の種類選択部２４５を用いて、用紙の種類を「普通紙」、「写真用紙」の中から選択できる。図２６では「普通紙」が選択されている状態を表している。
【０１０５】
２４６は、両面印刷選択部であり、ユーザは両面印刷選択部２４６を用いて、両面印刷の方法を「片面」、「長辺両面」、「短辺両面」の中から選択できる。図２６では「片面」が選択されている状態を表している。なお、「片面」は両面印刷せずに、片面だけに印刷する通常の印刷方法である。２４７は、印刷品位選択部であり、ユーザは印刷品質選択部２４７を用いて、印刷品位を「オート」、「きれい」、「標準」、「ドラフト」の中から選択できる。図２６では「オート」が選択されている状態を表している。
【０１０６】
２４８は、カラー選択部であり、ユーザはカラー選択部２４８を用いて、カラー印刷の方法を「カラー」、「グレースケール」、「モノクロ」の中から選択できる。図２６では、「カラー」が選択されている状態を表している。２４９は、部数指定部であり、部数指定部２４９を用いて、印刷する部数を１〜２５５部の範囲内で任意の整数で指定できる。図２６では１部が指定されている状態を表している。
【０１０７】
２５０は、印刷の向き選択部であり、印刷の向きを「縦」、「横」の中から選択できる。図２６では「縦」が選択されている状態を表している。２５１は、割り付け（Ｎ−ＵＰ）印刷選択部であり、割り付け印刷ページ数選択部２５２、割り付け印刷ページ順序選択部２５３、割り付け印刷出力用紙サイズ選択部２５４から構成される。ユーザは割り付け印刷選択部２５１を用いて、割り付け印刷に関する設定を行うことができる。
【０１０８】
ユーザは、割り付け印刷ページ数選択部２５２を用いて、割り付け印刷時に１ページ内に割り付けるページ数を「１」、「２」、「４」、「６」、「９」、「１６」ページの中から選択できる。図２６では「１」ページが選択されている状態を表している。なお、「１」ページが選択されている場合は、割り付け印刷ではなく、通常の１ページの印刷が行われる。ユーザは、割り付け印刷ページ順序選択部２５３を用いて、割り付け印刷時に１ページ内に割り付けるページの順序を以下の中から選択できる。
「左上→右下（水平）」、「左上→右下（垂直）」、「右上→左下（水平）」、「右上→左下（垂直）」、「左下→右上（水平）」、「左下→右上（垂直）」、「右下→左上（水平）」、「右下→左上（垂直）」
図２６では「左上→右下（水平）」が選択されている状態を表している。ユーザは、割り付け印刷出力用紙サイズ選択部２５４を用いて、割り付け印刷時の出力用紙サイズを「Ｌｅｔｔｅｒ」、「Ｌｅｇａｌ」、「Ａ５」、「Ａ４」、「Ｂ５」、「Ｐｈｏｔｏ  （８×１０インチ）」の中から選択できる。図２６では「Ａ４」が選択されている状態を表している。
【０１０９】
２５５は、Ｐｒｉｎｔボタンであり、Ｐｒｉｎｔボタン２５５が押下されると、ＰＣ１は、選択されている印刷設定で印刷を開始し、Ｐｒｉｎｔダイアログを閉じる。２５６は、Ｃａｎｃｅｌボタンであり、Ｃａｎｃｅｌボタンが押下されると、ＰＣ１は、印刷を開始せずにＰｒｉｎｔダイアログを閉じる。
【０１１０】
前述した通り、プリンタの製造元が定義しているプライベートスキーマで定義されている選択肢を選択することも可能である。例えば、用紙サイズ選択部２４４又は割り付け印刷出力用紙サイズ選択部２５４において「Ａ４＋」を選択することもできる。そして、用紙の種類選択部２４５において「プロ写真用紙」を選択したり、割り付け印刷ページ順序選択部２５３において「左上→右下（水平）又は左上→右下（垂直）」や「右下→左上（水平）又は右下→左上（垂直）」を選択したりすることもできる。
【０１１１】
図２７〜図３８は、プリントジョブスキーマの定義を表す図である。新しい印刷システムで利用されるプリントジョブチケットは、これらの図に示すプリントジョブスキーマで定義されるスキーマで規定されている。これらの図において、本実施形態では、本実施形態に関連する部分を説明し、一般的なスキーマの書式等に関してはその説明を省略する。これらの図において、ｐｊｓｆはプリントジョブスキーマフレームワーク（Ｐｒｉｎｔ  Ｊｏｂ  Ｓｃｈｅｍａ  Ｆｒａｍｅｗｏｒｋ）を表す。図２７の３行目にｘｍｌｎｓ：ｐｊｓｆ＝“ｈｔｔｐ：／／ｓｃｈｅｍａｓ．ａｂｅ．ｃｏｍ／ｐｒｉｎｔｊｏｂｓｃｈｅ
ｍａｆｒａｍｅｗｏｒｋ”と示すように、ＡＢＥ社のパブリックスキーマとして名前空間
がセットされている。したがって、ｐｊｓｆが記述される定義はＡＢＥ社のパブリックスキーマとして取り扱われる。
【０１１２】
ｐｊｓｋは、プリントジョブスキーマキーワード（Ｐｒｉｎｔ  Ｊｏｂ  Ｓｃｈｅｍａ  Ｋｅｙｗｏｒｄ）を表す。図２７の６行目に、ｘｍｌｎｓ：ｐｊｓｋ＝“ｈｔｔｐ：／
／ｓｃｈｅｍａｓ．ａｂｅ．ｃｏｍ／ｐｒｉｎｔｊｏｂｓｃｈｅｍａｋｅｙｗｏｒｄｓ”
と示すように、ＡＢＥ社のパブリックスキーマとして、名前空間がセットされている。したがって、ｐｊｓｋが記述される定義はＡＢＥ社のパブリックスキーマとして取り扱われる。
【０１１３】
ＰａｒａｍｅｔｅｒＩｎｉｔは、変数を表すスキーマである。Ｆｅａｔｕｒｅは、各印刷設定の機能を表すスキーマである。Ｐｒｏｐｅｒｔｙは、特性を表すスキーマであり、例えばＤｉｓｐｌａｙＮａｍｅで指定されるＳｔｒｉｎｇにセットされる文字列は、表示に使用することができる文字列を表す。Ｏｐｔｉｏｎは、各機能のオプション（選択肢）を表すスキーマである。［Ｒａｎｇｅ］には印刷設定状況に応じて次の何れかの定義が代入される。
【０１１４】
ＰｒｉｎｔＪｏｂ            ：ジョブ単位でセットされる印刷設定
ＰｒｉｎｔＤｏｃｕｍｅｎｔ  ：ドキュメント単位でセットされる印刷設定
ＰｒｉｎｔＰａｇｅ          ：ページ単位でセットされる印刷設定
【０１１５】
図２７は、プリントジョブスキーマの名前空間、部数、給紙方法の定義を表す図である。図２７において、３行目〜６行目にはプリントジョブスキーマの名前空間が定義されている。ＣｏｐｙＣｏｕｎｔは、部数指定部２４９で指定することができる印刷する部数の定義を表す。機能：ＩｎｐｕｂＢｉｎは、給紙方法選択部２４２で選択することができる給紙方法の定義を表す。オプション：ＡＳＦは「オートシートフィーダー（ＡＳＦ）」、オプション：Ｃａｓｓｅｔｔｅは「カセット」、オプション：Ｍａｎｕａｌは「手差し」の選択肢の定義を表す。
【０１１６】
図２８は、プリントジョブスキーマの印刷の向きの定義を表す図である。図２８において、機能：Ｏｒｉｅｎｔａｔｉｏｎは、印刷の向き選択部２５０で選択することができる印刷の向きの定義を表す。オプション：Ｐｏｒｔｒａｉｔは「縦」、オプション：Ｌａｎｄｓｃａｐｅは「横」の選択肢の定義を表す。
【０１１７】
図２９は、プリントジョブスキーマのカラー印刷の方法の定義を表す図である。図２９において、機能：ＯｕｔｐｕｔＣｏｌｏｒはカラー選択部２４８で選択することができるカラー印刷の方法の定義を表す。オプション：Ｃｏｌｏｒは「カラー」、オプション：Ｇｒａｙｓｃａｌｅは「グレースケール」、オプション：Ｍｏｎｏｃｈｒｏｍｅは「モノクロ」の選択肢の定義を表す。
【０１１８】
図３０は、プリントジョブスキーマの解像度の定義を表す図である。図３０において、機能：Ｒｅｓｏｌｕｔｉｏｎは、解像度選択部２４３で選択することができる解像度の定義を表す。オプション：Ｈｉｇｈは「高」、オプション：Ｓｔａｎｄａｒｄは「中」、オプション：Ｄｒａｆｔは「低」の選択肢の定義を表す。
【０１１９】
図３１は、プリントジョブスキーマの用紙の種類の定義を表す図である。図３１において、機能：ＭｅｄｉａＴｙｐｅは用紙の種類選択部２４５で選択することができる用紙の種類の定義を表す。オプション：Ｐｌａｉｎは「普通紙」、オプション：Ｐｈｏｔｏは「写真用紙」の選択肢の定義を表す。
【０１２０】
図３２は、プリントジョブスキーマの両面印刷の方法の定義を表す図である。図３２において、機能：Ｄｕｐｌｅｘは両面印刷選択部２４６で選択することができる両面印刷の方法の定義を表す。オプション：ＯｎｅＳｉｄｅｄは「片面」、オプション：ＴｗｏＳｉｄｅｄＬｏｎｇＥｄｇｅは「長辺両面」、ＴｗｏＳｉｄｅｄＳｈｏｒＥｄｇｅは「短辺両面」の選択肢の定義を表す。
【０１２１】
図３３〜図３５は、プリントジョブスキーマの割り付け（Ｎ−ＵＰ）印刷の定義を表す図である。これらの図において、機能：ＮＵｐは割り付け印刷選択部２５１選択することができる割り付けの定義を表す。
【０１２２】
図３３は、プリントジョブスキーマの割り付け印刷ページ数の定義を表す図である。図３３において、各オプションは割り付け印刷ページ数選択部２５２で選択することができる割り付け印刷ページ数の定義を表す。オプション：ＰａｇｅｓＰｅｒＳｈｅｅｔ１は「１」、オプション：ＰａｇｅｓＰｅｒＳｈｅｅｔ２は「２」、オプション：ＰａｇｅｓＰｅｒＳｈｅｅｔ４は「４」の選択肢の定義を表す。また、オプション：ＰａｇｅｓＰｅｒＳｈｅｅｔ６は「６」、オプション：ＰａｇｅｓＰｅｒＳｈｅｅｔ９は「９」、オプション：ＰａｇｅｓＰｅｒＳｈｅｅｔ１６は「１６」の選択肢の定義を表す。
【０１２３】
図３４は、プリントジョブスキーマの割り付け印刷ページ順序の定義を表す図（その１）である。また、図３５は、プリントジョブスキーマの割り付け印刷ページ順序の定義を表す図（その２）である。
【０１２４】
図３４、図３５において、機能：ＰｒｅｓｅｎｔａｔｉｏｎＤｉｒｅｃｔｉｏｎは割り付け印刷ページ順序選択部２５３で選択することができる割り付け印刷ページ順序の定義を表す。このＰｒｅｓｅｎｔａｔｉｏｎＤｉｒｅｃｔｉｏｎはＦｅａｔｕｒｅ（機能）であるにもかかわらず［Ｒａｎｇｅ］が付加されていない。これは、機能：ＰｒｅｓｅｎｔａｔｉｏｎＤｉｒｅｃｔｉｏｎが図３３〜図３５に示す機能：ＮＵｐのＳｕｂ−Ｆｅａｔｕｒｅ（サブ機能）として、機能：ＮＵｐの中にネストされる（含まれる）定義であるからである。つまり、上位の機能、即ち、機能：ＮＵｐに付加されている［Ｒａｎｇｅ］が機能：ＰｒｅｓｅｎｔａｔｉｏｎＤｉｒｅｃｔｉｏｎにも適用されるからである。
【０１２５】
これはＯＳの仕様であり、本実施形態を適用することができるＯＳの特徴の一つである。オプション：ＲｉｇｈｔＢｏｔｔｏｍは「左上→右下（水平）」、オプション：ＢｏｔｔｏｍＲｉｇｈｔは「左上→右下（垂直）」、オプション：ＬｅｆｔＢｏｔｔｏｍは「右上→左下（水平）」の選択肢の定義を表す。また、オプション：ＢｏｔｔｏｍＬｅｆｔは「右上→左下（垂直）」、オプション：ＲｉｇｈｔＴｏｐ「左下→右上（水平）」、オプション：ＴｏｐＲｉｇｈｔは「左下→右上（垂直）」の選択肢の定義を表す。また、オプション：ＬｅｆｔＴｏｐは「右下→左上（水平）」、オプション：ＴｏｐＬｅｆｔは「右下→左上（垂直）」の選択肢の定義を表す。
【０１２６】
図３６は、プリントジョブスキーマの用紙サイズの定義を表す図である。図３６において、機能：ＭｅｄｉａＳｉｚｅは用紙サイズ選択部２４４で選択することができる用紙サイズの定義を表す。オプション：Ｌｅｔｔｅｒは「Ｌｅｔｔｅｒ」、オプション：Ｌｅｇａｌは「Ｌｅｇａｌ」、オプション：Ａ５は「Ａ５」、オプション：Ａ４は「Ａ４」、オプション：Ｂ５は「Ｂ５」の選択肢の定義を表す。また、オプション：Ｐｈｏｔｏ８ｘ１０は「Ｐｈｏｔｏ  （８×１０インチ）」の選択肢の定義を表す。
【０１２７】
図３７は、プリントジョブスキーマの印刷品位の定義を表す図である。図３７において、機能：ＯｕｔｐｕｔＱｕａｌｉｔｙは印刷品位選択部２４７で選択することができる印刷品位の定義を表す。オプション：Ａｕｔｏｍａｔｉｃは「オート」、オプション：Ｈｉｇｈは「きれい」、オプション：Ｎｏｒｍａｌは「標準」、オプション：Ｄｒａｆｔは「ドラフト」の選択肢の定義を表す。
【０１２８】
図３８は、プリントジョブスキーマの割り付け印刷出力用紙サイズの定義を表す図である。図３８において、機能：ＯｕｔｐｕｔＭｅｄｉａＳｉｚｅは割り付け印刷出力用紙サイズ選択部２５４で選択することができる割り付け印刷出力用紙サイズの定義を表す。オプション：Ｌｅｔｔｅｒは「Ｌｅｔｔｅｒ」、オプション：Ｌｅｇａｌは「Ｌｅｇａｌ」、オプション：Ａ５は「Ａ５」、オプション：Ａ４は「Ａ４」、オプション：Ｂ５は「Ｂ５」の選択肢の定義を表す。また、オプション：Ｐｈｏｔｏ８ｘ１０は「Ｐｈｏｔｏ  （８×１０インチ）」の選択肢の定義を表す。
【０１２９】
図３９〜図５１は、統合印刷システムにおける印刷設定ファイルの内容を表す図である。これらの図において、図９〜図２０に示す印刷設定ファイルと同様な内容に関しては、その説明を省略し、ここでは差分に関して説明する。
【０１３０】
ＰｒｉｎｔＪｏｂＳｃｈｅｍａＫｅｙｗｏｒｄＭａｐは、ＦｅａｔｕｒｅやＯｐｔｉｏｎで定義されている印刷設定の各機能やそれぞれの機能に関する各オプションをプリントジョブスキーマキーワードに割り当てるための定義である。なお、以下、ＰｒｉｎｔＪｏｂＳｃｈｅｍａＫｅｙｗｏｒｄＭａｐのことをＰＪＳＫＭと略す場合もある。ここで述べているプリントジョブスキーマキーワードとは、図２７で説明したｐｊｓｋで定義されているプリントジョブスキーマキーワード（Ｐｒｉｎｔ  Ｊｏｂ  Ｓｃｈｅｍａ  Ｋｅｙｗｏｒｄ）を表す。図２７の６行目に、ｘｍｌｎｓ：ｐｊｓｋ＝“ｈｔｔｐ：／／ｓｃｈｅ
ｍａｓ．ａｂｅ．ｃｏｍ／ｐｒｉｎｔｊｏｂｓｃｈｅｍａｋｅｙｗｏｒｄｓ”と示すよう
に、ＯＳの製造元であるＡＢＥ社のパブリックスキーマとして、名前空間がセットされている。
【０１３１】
したがって、ｐｊｓｋが記述される定義はＡＢＥ社のパブリックスキーマとして取り扱われる。このパブリックスキーマとして正しく取り扱われるようにするために、ＰＪＳＫＭで指定する文字列として、プリントジョブスキーマのパブリックスキーマで定義されているＦｅａｔｕｒｅやＯｐｔｉｏｎ（オプション）の定義と同じ文字列を使う必要がある。更に、その文字列を統合印刷システムにおける印刷設定ファイル内のＦｅａｔｕｒｅやＯｐｔｉｏｎの定義にも使う必要がある。
【０１３２】
Ｆｅａｔｕｒｅの場合には、例えば、図３９に示すようになる。統合印刷システムにおける印刷設定ファイル内の給紙方法に関する情報の定義の場合、［Ｒａｎｇｅ］にＰｒｉｎｔＪｏｂ、ＰｒｉｎｔＤｏｃｕｍｅｎｔ、ＰｒｉｎｔＰａｇｅの何れかをセットしたＰｒｉｎｔＪｏｂＩｎｐｕｔＢｉｎという文字列を、ＰＪＳＫＭで指定する文字列と、Ｆｅａｔｕｒｅの定義で使用する文字列との両方に使う必要がある。
【０１３３】
但し、例外として後述する図４６で示すＰｒｉｎｔＪｏｂＰｒｅｓｅｎｔａｔｉｏｎＤｉｒｅｃｔｉｏｎがある。プリントジョブスキーマで定義されている機能：ＰｒｅｓｅｎｔａｔｉｏｎＤｉｒｅｃｔｉｏｎは、機能：ＮＵｐにネストされる（含まれる）Ｓｕｂ−Ｆｅａｔｕｒｅであり、機能：ＮＵｐの［Ｒａｎｇｅ］が適用される。そのため、プリントジョブスキーマの定義では［Ｒａｎｇｅ］が付加されない。しかし、非階層構造の表現で印刷設定に関する情報が記載されているテキスト形式の統合印刷システムにおける印刷設定ファイルでは、ＰＪＳＫＭでプリントジョブスキーマのＦｅａｔｕｒｅとして取り扱わせる。そのため、［Ｒａｎｇｅ］を付加したＰｒｉｎｔＪｏｂＰｒｅｓｅｎｔａｔｉｏｎＤｉｒｅｃｔｉｏｎという文字列を、ＰＪＳＫＭで指定する文字列と、Ｆｅａｔｕｒｅの定義で使用する文字列とで使う必要がある。
【０１３４】
これは、非階層構造の表現の印刷設定ファイルを利用する従来の印刷システムのアーキテクチャを基盤として、その上に階層構造の表現のプリントジョブチケットを利用する新しい印刷システムを構築した統合印刷システムにおけるＯＳの仕様である。この使用は、本実施形態を適用することができるＯＳの特徴の一つである。
【０１３５】
図３９は、統合印刷システムにおける印刷設定ファイル内の給紙方法に関する情報を表す図である。図２７に示すように、給紙方法を表すプリントジョブスキーマキーワードは、［Ｒａｎｇｅ］にＰｒｉｎｔＪｏｂが付加されたＰｒｉｎｔＪｏｂＩｎｐｕｔＢｉｎと定義されている。よって、Ｆｅａｔｕｒｅと、このＦｅａｔｕｒｅのＰＪＳＫＭと、にＰｒｉｎｔＪｏｂＩｎｐｕｔＢｉｎが定義されている。給紙方法の選択肢（オプション）を表すプリントジョブスキーマキーワードはＡＳＦ、Ｃａｓｓｅｔｔｅ、と定義されている。よって、Ｏｐｔｉｏｎと、そのＯｐｔｉｏｎのＰＪＳＫＭに、それぞれＡＳＦ、Ｃａｓｓｅｔｔｅ、が定義されている。
【０１３６】
図４０は、統合印刷システムにおける印刷設定ファイル内の印刷の向きに関する情報を表す図である。図２８に示すように、印刷の向きを表すプリントジョブスキーマキーワードは、［Ｒａｎｇｅ］にＰｒｉｎｔＰａｇｅが付加されたＰｒｉｎｔＰａｇｅＯｒｉｅｎｔａｔｉｏｎと定義されている。よって、Ｆｅａｔｕｒｅと、このＦｅａｔｕｒｅのＰＪＳＫＭと、にＰｒｉｎｔＰａｇｅＯｒｉｅｎｔａｔｉｏｎが定義されている。印刷の向きの選択肢を表すプリントジョブスキーマキーワードは、Ｐｏｒｔｒａｉｔ、Ｌａｎｄｓｃａｐｅと定義されている。よって、Ｏｐｔｉｏｎと、そのＯｐｔｉｏｎのＰＪＳＫＭと、にそれぞれＰｏｒｔｒａｉｔ、Ｌａｎｄｓｃａｐｅ、が定義されている。
【０１３７】
図４１は、統合印刷システムにおける印刷設定ファイル内のカラー印刷の方法に関する情報を表す図である。図２９に示すように、カラー印刷の方法を表すプリントジョブスキーマキーワードは、［Ｒａｎｇｅ］にＰｒｉｎｔＰａｇｅが付加されたＰｒｉｎｔＰａｇｅＯｕｔｐｕｔＣｏｌｏｒと定義されている。よって、Ｆｅａｔｕｒｅと、このＦｅａｔｕｒｅのＰＪＳＫＭと、にＰｒｉｎｔＰａｇｅＯｕｔｐｕｔＣｏｌｏｒが定義されている。カラー印刷の方法の選択肢を表すプリントジョブスキーマキーワードはＣｏｌｏｒ、Ｍｏｎｏｃｈｒｏｍｅ、と定義されている。よって、Ｏｐｔｉｏｎと、そのＯｐｔｉｏｎのＰＪＳＫＭと、にそれぞれＣｏｌｏｒ、Ｍｏｎｏｃｈｒｏｍｅが定義されている。
【０１３８】
図４２は、統合印刷システムにおける印刷設定ファイル内の解像度に関する情報を表す図である。図３０に示すように、解像度を表すプリントジョブスキーマキーワードは、［Ｒａｎｇｅ］にＰｒｉｎｔＰａｇｅが付加されたＰｒｉｎｔＰａｇｅＲｅｓｏｌｕｔｉｏｎと定義されている。よって、Ｆｅａｔｕｒｅと、このＦｅａｔｕｒｅのＰＪＳＫＭと、にＰｒｉｎｔＰａｇｅＲｅｓｏｌｕｔｉｏｎが定義されている。解像度の選択肢を表すプリントジョブスキーマキーワードはＨｉｇｈ、Ｓｔａｎｄａｒｄ、と定義されている。よって、Ｏｐｔｉｏｎと、そのＯｐｔｉｏｎのＰＪＳＫＭと、にそれぞれＨｉｇｈ、Ｓｔａｎｄａｒｄが定義されている。
【０１３９】
図４３は、統合印刷システムにおける印刷設定ファイル内の用紙の種類に関する情報を表す図である。図３１に示すように、用紙の種類を表すプリントジョブスキーマキーワードは、［Ｒａｎｇｅ］にＰｒｉｎｔＰａｇｅが付加されたＰｒｉｎｔＰａｇｅＭｅｄｉａＴｙｐｅと定義されている。よって、Ｆｅａｔｕｒｅと、このＦｅａｔｕｒｅのＰＪＳＫＭと、にＰｒｉｎｔＰａｇｅＭｅｄｉａＴｙｐｅが定義されている。用紙の種類の選択肢を表すプリントジョブスキーマキーワードはＰｌａｉｎ、Ｐｈｏｔｏと定義されている。よって、Ｏｐｔｉｏｎと、そのＯｐｔｉｏｎのＰＪＳＫＭと、にそれぞれＰｌａｉｎ、Ｐｈｏｔｏ、が定義されている。
【０１４０】
また、ＰｒｏＰｈｏｔｏという「プロ写真用紙」を表すプライベートスキーマで定義されているプライベートの用紙の種類も定義されている。この「プロ写真用紙」を表すＯｐｔｉｏｎと、そのＯｐｔｉｏｎのＰＪＳＫＭと、にＰｒｏＰｈｏｔｏが定義されている。
【０１４１】
このような印刷設定ファイルを使用する。このことで、プライベートスキーマで定義されているプライベートの用紙の種類の定義も、パブリックスキーマで定義されているパブリックの用紙の種類の定義と同様、プリントジョブチケットやプリントジョブ能力に取り込まれ、正しく処理される。
【０１４２】
図４４は、統合印刷システムにおける印刷設定ファイル内の両面印刷に関する情報を表す図である。図３２に示すように、両面印刷を表すプリントジョブスキーマキーワードは、［Ｒａｎｇｅ］にＰｒｉｎｔＪｏｂが付加されたＰｒｉｎｔＪｏｂＤｕｐｌｅｘと定義されている。よって、Ｆｅａｔｕｒｅと、このＦｅａｔｕｒｅのＰＪＳＫＭと、にＰｒｉｎｔＪｏｂＤｕｐｌｅｘが定義されている。両面印刷の選択肢を表すプリントジョブスキーマキーワードはＯｎｅＳｉｄｅｄ、ＴｗｏＳｉｄｅｄＬｏｎｇＥｄｇｅ、ＴｗｏＳｉｄｅｄＳｈｏｒｔＥｄｇｅと定義されている。よって、Ｏｐｔｉｏｎと、そのＯｐｔｉｏｎのＰＪＳＫＭと、にそれぞれＯｎｅＳｉｄｅｄ、ＴｗｏＳｉｄｅｄＬｏｎｇＥｄｇｅ、ＴｗｏＳｉｄｅｄＳｈｏｒｔＥｄｇｅが定義されている。
【０１４３】
図４５は、統合印刷システムにおける印刷設定ファイル内の割り付け印刷に関する情報を表す図である。図３３に示すように、割り付け印刷を表すプリントジョブスキーマキーワードは、［Ｒａｎｇｅ］にＰｒｉｎｔＪｏｂが付加されたＰｒｉｎｔＪｏｂＮＵｐと定義されている。よって、Ｆｅａｔｕｒｅと、このＦｅａｔｕｒｅのＰＪＳＫＭと、にＰｒｉｎｔＪｏｂＮＵｐが定義されている。割り付け印刷の選択肢を表すプリントジョブスキーマキーワードはＰａｇｅｓＰｅｒＳｈｅｅｔ１、ＰａｇｅｓＰｅｒＳｈｅｅｔ２、ＰａｇｅｓＰｅｒＳｈｅｅｔ４、ＰａｇｅｓＰｅｒＳｈｅｅｔ６と定義されている。よって、Ｏｐｔｉｏｎと、そのＯｐｔｉｏｎのＰＪＳＫＭと、にそれぞれＰａｇｅｓＰｅｒＳｈｅｅｔ１、ＰａｇｅｓＰｅｒＳｈｅｅｔ２、ＰａｇｅｓＰｅｒＳｈｅｅｔ４、ＰａｇｅｓＰｅｒＳｈｅｅｔ６が定義されている。
【０１４４】
図４６は、統合印刷システムにおける印刷設定ファイル内の割り付け印刷ページ順序に関する情報を表す図（その１）である。また、図４７は、統合印刷システムにおける印刷設定ファイル内の割り付け印刷ページ順序に関する情報を表す図（その２）である。図３４、図３５に示すように、割り付け印刷ページ順序を表すプリントジョブスキーマキーワードは、前述した通り、機能：ＮＵｐのＳｕｂ−Ｆｅａｔｕｒｅであるので、機能：ＮＵｐの［Ｒａｎｇｅ］が適用される。そのため、プリントジョブスキーマの定義上は［Ｒａｎｇｅ］が付加されないが、非階層構造の書式で表現される印刷設定ファイルにおいては、機能もサブ機能も同じルートを持つＦｅａｔｕｒｅとして定義される。
【０１４５】
そしてＯＳが、このような印刷設定ファイルからプリントジョブチケットやプリントジョブ能力を生成できるようにするため、印刷設定ファイル上では［Ｒａｎｇｅ］を付加して、形式上サブ機能ではなく、機能としてＯＳが処理できるようにしておく必要がある。
【０１４６】
したがって、ＰｒｅｓｅｎｔａｔｉｏｎＤｉｒｅｃｔｉｏｎの上位である図３３に示す機能：ＮＵｐと同じ、ＰｒｉｎｔＪｏｂという［Ｒａｎｇｅ］を付加したＰＪＰＤが、Ｆｅａｔｕｒｅと、このＦｅａｔｕｒｅのＰＪＳＫＭと、に定義されている。ここで、ＰＪＰＤとは、ＰｒｉｎｔＪｏｂＰｒｅｓｅｎｔａｔｉｏｎＤｉｒｅｃｔｉｏｎの略である。
【０１４７】
割り付け印刷ページ順序の選択肢を表すプリントジョブスキーマキーワードは、
ＲｉｇｈｔＢｏｔｔｏｍ、ＢｏｔｔｏｍＲｉｇｈｔ、ＬｅｆｔＢｏｔｔｏｍ、ＢｏｔｔｏｍＬｅｆｔ、ＲｉｇｈｔＴｏｐ、ＴｏｐＲｉｇｈｔ、ＬｅｆｔＴｏｐ、ＴｏｐＬｅｆｔ
と定義されている。
よって、Ｏｐｔｉｏｎと、そのＯｐｔｉｏｎのＰＪＳＫＭと、にそれぞれ
ＲｉｇｈｔＢｏｔｔｏｍ、ＢｏｔｔｏｍＲｉｇｈｔ、ＬｅｆｔＢｏｔｔｏｍ、ＢｏｔｔｏｍＬｅｆｔ、ＲｉｇｈｔＴｏｐ、ＴｏｐＲｉｇｈｔ、ＬｅｆｔＴｏｐ、ＴｏｐＬｅｆｔ
が定義されている。
【０１４８】
また、ＲｉｇｈｔＯｒＢｏｔｔｏｍという「左上→右下（水平）又は左上→右下（垂直）」を表すプライベートスキーマで定義されているプライベートの割り付け印刷ページ順序も定義されている。また、ＬｅｆｔＯｒＴｏｐという「右下→左上（水平）又は右下→左上（垂直）」を表すプライベートスキーマで定義されているプライベートの割り付け印刷ページ順序も定義されている。そして、これらを表すＯｐｔｉｏｎと、そのＯｐｔｉｏｎのＰＪＳＫＭと、にそれぞれＲｉｇｈｔＯｒＢｏｔｔｏｍ、ＬｅｆｔＯｒＴｏｐ、が定義されている。
【０１４９】
このような印刷設定ファイルを使用する。このことで、プライベートスキーマで定義されているプライベートの割り付け印刷ページ順序の定義もパブリックスキーマで定義されているパブリックの割り付け印刷ページ順序と同様プリントジョブチケットやプリントジョブ能力に取り込まれ、正しく処理される。
【０１５０】
図４８は、統合印刷システムにおける印刷設定ファイル内の用紙サイズに関する情報を表す図である。図３６に示すように、用紙サイズを表すプリントジョブスキーマキーワードは、［Ｒａｎｇｅ］にＰｒｉｎｔＰａｇｅが付加されたＰｒｉｎｔＰａｇｅＭｅｄｉａＳｉｚｅと定義されている。よって、Ｆｅａｔｕｒｅと、このＦｅａｔｕｒｅのＰＪＳＫＭと、にＰｒｉｎｔＰａｇｅＭｅｄｉａＳｉｚｅが定義されている。用紙サイズの選択肢を表すプリントジョブスキーマキーワードはＬｅｔｔｅｒ、Ｌｅｇａｌ、Ａ４、Ｂ５と定義されている。よって、Ｏｐｔｉｏｎと、そのＯｐｔｉｏｎのＰＪＳＫＭと、にそれぞれＬｅｔｔｅｒ、Ｌｅｇａｌ、Ａ４、Ｂ５、が定義されている。
【０１５１】
また、Ａ４Ｐｌｕｓという「Ａ４＋」を表すプライベートスキーマで定義されているプライベートの用紙サイズも定義されている。よって、「Ａ４＋」を表すＯｐｔｉｏｎと、そのＯｐｔｉｏｎのＰＪＳＫＭと、にＡ４Ｐｌｕｓが定義されている。
【０１５２】
このような印刷設定ファイルを使用する。このことで、プライベートスキーマで定義されているプライベートの用紙サイズの定義も、パブリックスキーマで定義されているパブリックの用紙サイズと同様に、プリントジョブチケットやプリントジョブ能力に取り込まれ、正しく処理される。
【０１５３】
図４９は、統合印刷システムにおける印刷設定ファイル内の印刷品位に関する情報を表す図である。図３７に示すように、印刷品位を表すプリントジョブスキーマキーワードは、［Ｒａｎｇｅ］にＰｒｉｎｔＰａｇｅが付加されたＰｒｉｎｔＰａｇｅＯｕｔｐｕｔＱｕａｌｉｔｙと定義されている。よって、Ｆｅａｔｕｒｅと、このＦｅａｔｕｒｅのＰＪＳＫＭと、にＰｒｉｎｔＰａｇｅＯｕｔｐｕｔＱｕａｌｉｔｙが定義されている。
【０１５４】
印刷品位の選択肢を表すプリントジョブスキーマキーワードはＡｕｔｏｍａｔｉｃ、Ｈｉｇｈ、Ｎｏｒｍａｌと定義されている。よって、Ｏｐｔｉｏｎと、そのＯｐｔｉｏｎのＰＪＳＫＭと、にそれぞれＡｕｔｏｍａｔｉｃ、Ｈｉｇｈ、Ｎｏｒｍａｌ、が定義されている。
【０１５５】
図５０は、統合印刷システムにおける印刷設定ファイル内の割り付け印刷出力用紙サイズに関する情報を表す図である。図３８に示すように、割り付け印刷出力用紙サイズを表すプリントジョブスキーマキーワードは、［Ｒａｎｇｅ］にＰｒｉｎｔＰａｇｅが付加されたＰｒｉｎｔＰａｇｅＯｕｔｐｕｔＭｅｄｉａＳｉｚｅと定義されている。よって、Ｆｅａｔｕｒｅと、このＦｅａｔｕｒｅのＰＪＳＫＭと、にＰｒｉｎｔＰａｇｅＯｕｔｐｕｔＭｅｄｉａＳｉｚｅが定義されている。
【０１５６】
割り付け印刷出力用紙サイズ選択肢を表すプリントジョブスキーマキーワードはＬｅｔｔｅｒ、Ｌｅｇａｌ、Ａ４、Ｂ５、と定義されている。よって、Ｏｐｔｉｏｎと、そのＯｐｔｉｏｎのＰＪＳＫＭと、にそれぞれＬｅｔｔｅｒ、Ｌｅｇａｌ、Ａ４、Ｂ５、が定義されている。
【０１５７】
また、Ａ４Ｐｌｕｓという「Ａ４＋」を表すプライベートスキーマで定義されているプライベートの割り付け印刷出力用紙サイズも定義されている。よって、「Ａ４＋」を表すＯｐｔｉｏｎと、そのＯｐｔｉｏｎのＰＪＳＫＭと、にＡ４Ｐｌｕｓが定義されている。
【０１５８】
このような印刷設定ファイルを使用する。このことで、プライベートスキーマで定義されているプライベートの割り付け印刷出力用紙サイズの定義も、パブリックスキーマで定義されているパブリックの用紙サイズと同様に、プリントジョブチケットやプリントジョブ能力に取り込まれ、正しく処理される。
【０１５９】
図５１は、統合印刷システムにおける印刷設定ファイル内のコマンド制御に関する情報を表す図である。図５１において、図２０と同じ内容の部分に関しては、ここではその説明を省略する。図５１において、ＣｍｄＧｅｔＰｒｎＪｏｂＣａｐｓはプリンタドライバ５０がアプリケーション３０にプリントジョブ能力を返す時の制御コマンドの制御方法であり、制御順序がＡＮＹ、制御関数の名前がＣＭＤ＿ＩＤ＿ＧＥＴＰＲＮＪＯＢＣＡＰＳである。
【０１６０】
図５２は、統合印刷システムにおける各印刷制御コマンドを制御する制御関数の仕様を表す図である。図５２において、図２２と同じ内容の部分に関しては、ここではその説明を省略する。図５１に示す各制御関数は、図５２又は図２２に示すような処理を行い、その結果を返す仕様となっている。なお、これらの制御関数はＵＩプラグイン３９に実装されている。ここで、図５１に示す各制御関数とは、ＣＭＤ＿ＩＤ＿ＳＴＡＲＴＪＯＢ、ＣＭＤ＿ＩＤ＿ＳＴＡＲＴＤＯＣ、ＣＭＤ＿ＩＤ＿ＳＴＡＲＴＰＡＧＥ、ＣＭＤ＿ＩＤ＿ＥＮＤＰＡＧＥ等である。また、図５１に示す各制御関数とは、ＣＭＤ＿ＩＤ＿ＥＮＤＤＯＣ、ＣＭＤ＿ＩＤ＿ＥＮＤＪＯＢ、ＣＭＤ＿ＩＤ＿ＧＥＴＰＲＮＰＲＯＰＥＲＴＩＥＳ、ＣＭＤ＿ＩＤ＿ＧＥＴＰＲＮＪＯＢＣＡＰＳ等も含む。
【０１６１】
図５３は、統合印刷システムにおけるプリントジョブ能力の取得処理を表すフローチャートである。アプリケーション３０がプリンタドライバ５０からプリントジョブ能力を取得するためにプリントジョブ能力取得用のＡＰＩをコールすると、ＵＩモジュール３５がＯＳにロードされる。そして、ＵＩモジュール３５等において、図５３に示すプリントジョブ能力の取得処理が開始される（Ｓ５３０１）。
【０１６２】
続いて、ＵＩモジュール３５は、図３９〜図５１に示す統合印刷システムにおける印刷設定ファイルをロードする（Ｓ５３０２）。続いて、ＵＩモジュール３５は、この印刷設定ファイルからプリントジョブ能力（第１のジョブチケット）を生成する（Ｓ５３０３）。
【０１６３】
これはＯＳの制御であり、即ち、ＯＳの仕様である。この時点において、生成されたプリントジョブ能力（第１のジョブチケット）は、非階層構造の表現で印刷設定に関する情報が記載されているテキスト形式の統合印刷システムにおける印刷設定ファイルから、ＯＳにおける処理により生成されたものである。作業設定情報の一例が印刷設定ファイルである。
よって、例えば、プリントジョブスキーマにおいて、機能：ＮＵｐのＳｕｂ−Ｆｅａｔｕｒｅとして定義されているＰＤは、図５４に示すように、機能：ＮＵｐと同じルートを持つＦｅａｔｕｒｅとしてプリントジョブ能力内に生成される。ここで、ＰＤとは、ＰｒｅｓｅｎｔａｔｉｏｎＤｉｒｅｃｔｉｏｎの略である。より詳細な説明は、図５７で後述するが、ここでｎｓ１は、パブリックのスキーマとして定義されているプリントジョブスキーマキーワードであるｐｊｓｋに対して、このキーワードがプライベートのスキーマで定義されているものであることを表している。
【０１６４】
続いて、ＵＩプラグイン３９は、ステップＳ５３０３で生成されたプリントジョブ能力の中からＳｕｂ−Ｆｅａｔｕｒｅ候補を検索する（Ｓ５３０４）。続いて、ＵＩプラグイン３９は、検索の結果、Ｓｕｂ−Ｆｅａｔｕｒｅ候補が有るか否かを判定する（Ｓ５３０５）。
【０１６５】
Ｓｕｂ−Ｆｅａｔｕｒｅ候補が有ると判定すると（Ｓ５３０５においてＹＥＳ）、ＵＩプラグイン３９は、そのＳｕｂ−Ｆｅａｔｕｒｅ候補内の情報を保存する（Ｓ５３０６）。例えば、図５４に示す機能：ＰｒｅｓｅｎｔａｔｉｏｎＤｉｒｅｃｔｉｏｎは、ここではＰｒｉｎｔＪｏｂという［Ｒａｎｇｅ］が付加されたＦｅａｔｕｒｅを表しているが、これがＳｕｂ−Ｆｅａｔｕｒｅ候補である。よって、ＵＩプラグイン３９は、ステップＳ５３０６において、この中の次の情報
＜ｐｊｓｆ：Ｏｐｔｉｏｎ  ｎａｍｅ＝“ｎｓ１：ＲｉｇｈｔＢｏｔｔｏｍ”＞
＜ｐｊｓｆ：Ｐｒｏｐｅｒｔｙ  ｎａｍｅ＝“ｎｓ１：ＤｉｓｐｌａｙＮａｍｅ”＞
＜ｐｊｓｆ：Ｖａｌｕｅ  ｘｓｉ：ｔｙｐｅ＝“ｘｓｄ：ｓｔｒｉｎｇ”＞Ｈｏｒｉ
ｚｏｎｔａｌｌｙ  ｆｒｏｍ  ｔｏｐ  ｌｅｆｔ  ｔｏ  ｂｏｔｔｏｍ  ｒｉｇｈｔ＜／ｐｊｓｆ：Ｖａｌｕｅ＞
＜／ｐｊｓｆ：Ｐｒｏｐｅｒｔｙ＞
＜／ｐｊｓｆ：Ｏｐｔｉｏｎ＞
が保存される。
【０１６６】
続いて、ＵＩプラグイン３９は、ステップＳ５３０４で検索してステップＳ５３０５で見つけたＳｕｂ−Ｆｅａｔｕｒｅ候補を基に、プライベートのＳｕｂ−Ｆｅａｔｕｒｅを生成する（Ｓ５３０７）。例えば、プリントジョブスキーマの定義において、ＰｒｅｓｅｎｔａｔｉｏｎＤｉｒｅｃｔｉｏｎは、機能：ＮＵｐのＳｕｂ−Ｆｅａｔｕｒｅである。よって、図５５に示すように、機能：ＮＵｐ内のＳｕｂ−Ｆｅａｔｕｒｅとして、
＜ｐｊｓｆ：Ｆｅａｔｕｒｅ  ｎａｍｅ＝“ｎｓ１：  ＰｒｅｓｅｎｔａｔｉｏｎＤｉｒ
ｅｃｔｉｏｎ”＞
＜／ｐｊｓｆ：Ｆｅａｔｕｒｅ＞
というプライベートのＳｕｂ−Ｆｅａｔｕｒｅが、生成される。
【０１６７】
続いて、ＵＩプラグイン３９は、生成したプライベートのＳｕｂ−Ｆｅａｔｕｒｅに対して、ステップＳ５３０６で保存されているＳｕｂ−Ｆｅａｔｕｒｅ候補内の情報をコピーする（Ｓ５３０８）。
例えば、図５５に示す例では、
＜ｐｊｓｆ：Ｏｐｔｉｏｎ  ｎａｍｅ＝“ｎｓ１：ＲｉｇｈｔＢｏｔｔｏｍ”＞
＜ｐｊｓｆ：Ｐｒｏｐｅｒｔｙ  ｎａｍｅ＝“ｎｓ１：ＤｉｓｐｌａｙＮａｍｅ”＞
＜ｐｊｓｆ：Ｖａｌｕｅ  ｘｓｉ：ｔｙｐｅ＝“ｘｓｄ：ｓｔｒｉｎｇ”＞Ｈｏｒｉ
ｚｏｎｔａｌｌｙ  ｆｒｏｍ  ｔｏｐ  ｌｅｆｔ  ｔｏ  ｂｏｔｔｏｍ  ｒｉｇｈｔ＜／ｐｊｓｆ：Ｖａｌｕｅ＞
＜／ｐｊｓｆ：Ｐｒｏｐｅｒｔｙ＞
＜／ｐｊｓｆ：Ｏｐｔｉｏｎ＞
という情報が、ステップＳ５３０７で生成されたプライベートのＳｕｂ−ＦｅａｔｕｒｅであるＰｒｅｓｅｎｔａｔｉｏｎＤｉｒｅｃｔｉｏｎにコピーされる。
【０１６８】
この時点において、ｎｓ１のキーワードとして表される情報に関しては、プライベートのスキーマで定義されている情報であることを表し、ＯＳにより、プライベートのスキーマで定義されている情報として取り扱われる。
【０１６９】
続いて、ＵＩプラグイン３９は、生成したプライベートのＳｕｂ−Ｆｅａｔｕｒｅと、そのＳｕｂ−Ｆｅａｔｕｒｅ内にコピーした情報と、に対して、それらの名前空間をプライベートからパブリックに変更する（Ｓ５３０９）。そして、ＵＩプラグイン３９は、ステップＳ５３０４に戻る。
【０１７０】
例えば、図５５に示す例では、ｎｓ１のキーワードとして表される情報である
＜ｐｊｓｆ：Ｆｅａｔｕｒｅ  ｎａｍｅ＝“ｎｓ１：  ＰｒｅｓｅｎｔａｔｉｏｎＤｉｒ
ｅｃｔｉｏｎ”＞
＜ｐｊｓｆ：Ｏｐｔｉｏｎ  ｎａｍｅ＝“ｎｓ１：ＲｉｇｈｔＢｏｔｔｏｍ”＞
＜ｐｊｓｆ：Ｐｒｏｐｅｒｔｙ  ｎａｍｅ＝“ｎｓ１：ＤｉｓｐｌａｙＮａｍｅ”＞
＜ｐｊｓｆ：Ｖａｌｕｅ  ｘｓｉ：ｔｙｐｅ＝“ｘｓｄ：ｓｔｒｉｎｇ”＞Ｈｏｒ
ｉｚｏｎｔａｌｌｙ  ｆｒｏｍ  ｔｏｐ  ｌｅｆｔ  ｔｏ  ｂｏｔｔｏｍ  ｒｉｇｈｔ＜／ｐｊｓｆ：Ｖａｌｕｅ＞
＜／ｐｊｓｆ：Ｐｒｏｐｅｒｔｙ＞
＜／ｐｊｓｆ：Ｏｐｔｉｏｎ＞
＜／ｐｊｓｆ：Ｆｅａｔｕｒｅ＞
に対して、ｎｓ１→ｐｊｓｋというように名前空間がプライベートからパブリックなものに変更され、図５６に示すように、
＜ｐｊｓｆ：Ｆｅａｔｕｒｅ  ｎａｍｅ＝“ｐｊｓｋ：  ＰｒｅｓｅｎｔａｔｉｏｎＤｉ
ｒｅｃｔｉｏｎ”＞
＜ｐｊｓｆ：Ｏｐｔｉｏｎ  ｎａｍｅ＝“ｐｊｓｋ：ＲｉｇｈｔＢｏｔｔｏｍ”＞
＜ｐｊｓｆ：Ｐｒｏｐｅｒｔｙ  ｎａｍｅ＝“ｐｊｓｋ：ＤｉｓｐｌａｙＮａｍｅ”
＞
＜ｐｊｓｆ：Ｖａｌｕｅ  ｘｓｉ：ｔｙｐｅ＝“ｘｓｄ：ｓｔｒｉｎｇ”＞Ｈｏｒ
ｉｚｏｎｔａｌｌｙ  ｆｒｏｍ  ｔｏｐ  ｌｅｆｔ  ｔｏ  ｂｏｔｔｏｍ  ｒｉｇｈｔ＜／ｐｊｓｆ：Ｖａｌｕｅ＞
＜／ｐｊｓｆ：Ｐｒｏｐｅｒｔｙ＞
＜／ｐｊｓｆ：Ｏｐｔｉｏｎ＞
＜／ｐｊｓｆ：Ｆｅａｔｕｒｅ＞
というプリントジョブ能力（第２のジョブチケット）の一部が完成する。
【０１７１】
一方、ステップＳ５３０５の判定において、Ｓｕｂ−Ｆｅａｔｕｒｅ候補が無いと判定すると（Ｓ５３０５においてＮＯ）、ＵＩプラグイン３９は、その時点で生成されている最新のプリントジョブ能力を戻り値にセットする（Ｓ５３１０）。そして、ＵＩプラグイン３９は、プリントジョブ能力の取得処理を終了する（Ｓ５３１１）。
【０１７２】
これにより、後述する図５７〜図６７に示すような、プリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力（第２のジョブチケット）が完成する。以上述べたように、この印刷設定ファイルに設定されている特定の設定を用いて、非階層構造を有する第１の作業指示情報の一例である第１のジョブチケットを作成する。当該特定の設定は、第１ジョブチケットのプライベート領域に対して設定される。更に、第１のジョブチケットから、特定の設定を含む、階層構造を有する第２の作業指示情報である第１のジョブチケットを作成する。ここで、特定の設定とは、ＰｒｅｓｅｎｔａｔｉｏｎＤｉｒｅｃｔｉｏｎである。
【０１７３】
図５４は、図５３に示す統合印刷システムにおけるプリントジョブ能力の取得処理のステップＳ５３０３において生成されたプリントジョブ能力の一部を表す図である。例えばプリントジョブスキーマにおいて機能：ＮＵｐのＳｕｂ−Ｆｅａｔｕｒｅとして定義されているＰｒｅｓｅｎｔａｔｉｏｎＤｉｒｅｃｔｉｏｎは、機能：ＮＵｐと同じルートを持つＦｅａｔｕｒｅとしてプリントジョブ能力内に生成される。
【０１７４】
より詳細な説明は図５７で後述するが、ここでｎｓ１は、パブリックのスキーマとして定義されているプリントジョブスキーマキーワードであるｐｊｓｋに対して、このキーワードがプライベートのスキーマで定義されているものであることを表している。
【０１７５】
図５５は、図５３に示す統合印刷システムにおけるプリントジョブ能力の取得処理のステップＳ５３０７、Ｓ５３０８において生成されたプリントジョブ能力の一部を表す図である。例えば、プリントジョブスキーマの定義において、ＰｒｅｓｅｎｔａｔｉｏｎＤｉｒｅｃｔｉｏｎは、機能：ＮＵｐのＳｕｂ−Ｆｅａｔｕｒｅである。よって、機能：ＮＵｐ内のＳｕｂ−Ｆｅａｔｕｒｅとして、
＜ｐｊｓｆ：Ｆｅａｔｕｒｅ  ｎａｍｅ＝“ｎｓ１：  ＰｒｅｓｅｎｔａｔｉｏｎＤｉｒ
ｅｃｔｉｏｎ”＞
＜／ｐｊｓｆ：Ｆｅａｔｕｒｅ＞
というプライベートのＳｕｂ−Ｆｅａｔｕｒｅが生成される。
【０１７６】
ここで生成されたプライベートのＳｕｂ−Ｆｅａｔｕｒｅに対して、図５３のステップＳ５３０６で保存されているＳｕｂ−Ｆｅａｔｕｒｅ候補内の
＜ｐｊｓｆ：Ｏｐｔｉｏｎ  ｎａｍｅ＝“ｎｓ１：ＲｉｇｈｔＢｏｔｔｏｍ”＞
＜ｐｊｓｆ：Ｐｒｏｐｅｒｔｙ  ｎａｍｅ＝“ｎｓ１：ＤｉｓｐｌａｙＮａｍｅ”＞
＜ｐｊｓｆ：Ｖａｌｕｅ  ｘｓｉ：ｔｙｐｅ＝“ｘｓｄ：ｓｔｒｉｎｇ”＞Ｈｏｒｉ
ｚｏｎｔａｌｌｙ  ｆｒｏｍ  ｔｏｐ  ｌｅｆｔ  ｔｏ  ｂｏｔｔｏｍ  ｒｉｇｈｔ＜／ｐｊｓｆ：Ｖａｌｕｅ＞
＜／ｐｊｓｆ：Ｐｒｏｐｅｒｔｙ＞
＜／ｐｊｓｆ：Ｏｐｔｉｏｎ＞
という情報が、プライベートのＳｕｂ−ＦｅａｔｕｒｅであるＰｒｅｓｅｎｔａｔｉｏｎＤｉｒｅｃｔｉｏｎにコピーされる。
【０１７７】
この時点において、ｎｓ１のキーワードとして表される情報に関しては、プライベートのスキーマで定義されている情報であることを表し、ＯＳにより、プライベートのスキーマで定義されている情報として取り扱われる。
【０１７８】
図５６は、図５３に示す統合印刷システムにおけるプリントジョブ能力の取得処理のステップＳ５３０９において生成されたプリントジョブ能力の一部を表す図である。図５３のステップＳ５３０７において生成されたプライベートのＳｕｂ−Ｆｅａｔｕｒｅと、図５３のステップＳ５３０８においてそのＳｕｂ−Ｆｅａｔｕｒｅ内にコピーされた情報とに対して次の処理がなされる。即ち、図５３のステップＳ５３０９において、Ｓｕｂ−Ｆｅａｔｕｒｅ内にコピーされた情報の名前空間をプライベートからパブリックに変更する。これにより、例えば、図５５に示す例で、ｎｓ１のキーワードとして表される情報に対して、ｎｓ１→ｐｊｓｋというように名前空間がプライベートからパブリックなものに変更される。そして、下記の情報が生成される。
＜ｐｊｓｆ：Ｆｅａｔｕｒｅ  ｎａｍｅ＝“ｎｓ１：  ＰｒｅｓｅｎｔａｔｉｏｎＤｉｒ
ｅｃｔｉｏｎ”＞
＜ｐｊｓｆ：Ｏｐｔｉｏｎ  ｎａｍｅ＝“ｎｓ１：ＲｉｇｈｔＢｏｔｔｏｍ”＞
＜ｐｊｓｆ：Ｐｒｏｐｅｒｔｙ  ｎａｍｅ＝“ｎｓ１：ＤｉｓｐｌａｙＮａｍｅ”＞
＜ｐｊｓｆ：Ｖａｌｕｅ  ｘｓｉ：ｔｙｐｅ＝“ｘｓｄ：ｓｔｒｉｎｇ”＞Ｈｏｒ
ｉｚｏｎｔａｌｌｙ  ｆｒｏｍ  ｔｏｐ  ｌｅｆｔ  ｔｏ  ｂｏｔｔｏｍ  ｒｉｇｈｔ＜／ｐｊｓｆ：Ｖａｌｕｅ＞
＜／ｐｊｓｆ：Ｐｒｏｐｅｒｔｙ＞
＜／ｐｊｓｆ：Ｏｐｔｉｏｎ＞
＜／ｐｊｓｆ：Ｆｅａｔｕｒｅ＞
、
＜ｐｊｓｆ：Ｆｅａｔｕｒｅ  ｎａｍｅ＝“ｐｊｓｋ：  ＰｒｅｓｅｎｔａｔｉｏｎＤｉ
ｒｅｃｔｉｏｎ”＞
＜ｐｊｓｆ：Ｏｐｔｉｏｎ  ｎａｍｅ＝“ｐｊｓｋ：ＲｉｇｈｔＢｏｔｔｏｍ”＞
＜ｐｊｓｆ：Ｐｒｏｐｅｒｔｙ  ｎａｍｅ＝“ｐｊｓｋ：ＤｉｓｐｌａｙＮａｍｅ”
＞
＜ｐｊｓｆ：Ｖａｌｕｅ  ｘｓｉ：ｔｙｐｅ＝“ｘｓｄ：ｓｔｒｉｎｇ”＞Ｈｏｒ
ｉｚｏｎｔａｌｌｙ  ｆｒｏｍ  ｔｏｐ  ｌｅｆｔ  ｔｏ  ｂｏｔｔｏｍ  ｒｉｇｈｔ＜／ｐｊｓｆ：Ｖａｌｕｅ＞
＜／ｐｊｓｆ：Ｐｒｏｐｅｒｔｙ＞
＜／ｐｊｓｆ：Ｏｐｔｉｏｎ＞
＜／ｐｊｓｆ：Ｆｅａｔｕｒｅ＞
というプリントジョブ能力が完成する。
【０１７９】
図５７〜図６７は、統合印刷システムにおけるプリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力を表す図である。これらの図において、図２７〜図３８で説明した内容に関しては、ここではその説明を省略する。
【０１８０】
図５７は、統合印刷システムにおけるプリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力の名前空間、給紙方法を表す図である。図５７において、６行目にはプライベートのプリントジョブスキーマの名前空間が定義されている。この定義により、ｎｓ１として表される情報は、プライベートのスキーマとして定義されているものであることが分かる。図５３のステップＳ５３０３において、統合印刷システムにおける印刷設定ファイルからこのプリントジョブ能力が生成される。
【０１８１】
図５８は、統合印刷システムにおけるプリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力の印刷の向きを表す図である。図５３のステップＳ５３０３において、統合印刷システムにおける印刷設定ファイルからこのプリントジョブ能力が生成される。
【０１８２】
図５９は、統合印刷システムにおけるプリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力のカラー印刷の方法を表す図である。図５３のステップＳ５３０３において、統合印刷システムにおける印刷設定ファイルからこのプリントジョブ能力が生成される。
【０１８３】
図６０は、統合印刷システムにおけるプリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力の解像度を表す図である。図５３のステップＳ５３０３において、統合印刷システムにおける印刷設定ファイルからこのプリントジョブ能力が生成される。
【０１８４】
図６１は、統合印刷システムにおけるプリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力の用紙の種類を表す図である。図５３のステップＳ５３０３において、統合印刷システムにおける印刷設定ファイルからこのプリントジョブ能力が生成される。なお、オプション：ＰｒｏＰｈｏｔｏは「プロ写真用紙」を表すプライベートのＯｐｔｉｏｎである。
【０１８５】
図６２は、統合印刷システムにおけるプリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力の両面印刷の方法を表す図である。図５３のステップＳ５３０３において、統合印刷システムにおける印刷設定ファイルからこのプリントジョブ能力が生成される。
【０１８６】
図６３は、統合印刷システムにおけるプリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力の割り付け（Ｎ−ＵＰ）印刷を表す図（その１）である。また、図６４は、統合印刷システムにおけるプリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力の割り付け（Ｎ−ＵＰ）印刷を表す図（その２）である。図５３のステップＳ５３０３〜Ｓ５３０９において、統合印刷システムにおける印刷設定ファイルからこのプリントジョブ能力が生成される。なお、オプション：ＲｉｇｈｔＯｒＢｏｔｔｏｍは「左上→右下（水平）又は左上→右下（垂直）」を表すプライベートのＯｐｔｉｏｎである。また、オプション：ＬｅｆｔＯｒＴｏｐは「右下→左上（水平）又は右下→左上（垂直）」を表すプライベートのＯｐｔｉｏｎである。
【０１８７】
図６５は、統合印刷システムにおけるプリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力の用紙サイズを表す図である。図５３のステップＳ５３０３において、統合印刷システムにおける印刷設定ファイルからこのプリントジョブ能力が生成される。なお、Ａ４Ｐｌｕｓは「Ａ４＋」を表すプライベートのＯｐｔｉｏｎである。
【０１８８】
図６６は、統合印刷システムにおけるプリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力の印刷品位を表す図である。図５３のステップＳ５３０３において、統合印刷システムにおける印刷設定ファイルからこのプリントジョブ能力が生成される。
【０１８９】
図６７は、統合印刷システムにおけるプリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力の割り付け印刷出力用紙サイズを表す図である。図５３のステップＳ５３０３において、統合印刷システムにおける印刷設定ファイルからこのプリントジョブ能力が生成される。なお、Ａ４Ｐｌｕｓは「Ａ４＋」を表すプライベートのＯｐｔｉｏｎである。
【０１９０】
以下、図６８に示すメモリマップを参照して、本実施形態に係る情報処理装置及び周辺装置からなる周辺装置制御システムで読み出し可能なデータ処理プログラムの構成について説明する。
【０１９１】
図６８は、周辺装置制御システムで読み出し可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを示す図である。なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報、作成者等もこの記憶媒体に記憶されているものとする。また、特に図示しないが、プログラム読み出し側のＯＳ等に依存する情報、例えばプログラムを識別表示するアイコン等も記録媒体に記録されていてもよい。
【０１９２】
図６８において、６４は記憶媒体であり、ここではハードディスクで構成されているものとする。６５は、ディレクトリ情報管理部であり、各種プログラムに従属するデータがこのディレクトリ情報管理部６５で管理されている。６６は、プログラム格納部であり、各種プログラムを情報処理装置にインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に解凍するためのプログラム等も記憶されている。
【０１９３】
また、本実施形態における図２３〜図２５、図５３にそれぞれ示す各フローチャートの実行によって実現できる各機能が、外部からインストールされるプログラムによって、情報処理装置によって実現されるようにしてもよい。そして、その場合、ＣＤ−ＲＯＭやフラッシュメモリやフレキシブルディスク等の記憶媒体により、或いはネットワークを介して外部の記憶媒体から、プログラムを含む情報群が情報処理装置や周辺装置に供給される場合でも、本実施形態は適用される。
【０１９４】
以上のように、本実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本実施形態の目的が達成される。
【０１９５】
この場合、記憶媒体から読み出されたプログラムコード自体が本実施形態の新規な機能を実現することになる。よって、そのプログラムコードを記憶した記憶媒体は、本実施形態を構成することになる。プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＥＥＰＲＯＭ等を用いることができる。
【０１９６】
また、コンピュータが読み出したプログラムコードを実行することにより、本実施形態の機能が実現されるだけでない。例えば、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【０１９７】
以上、説明したように、本実施形態では、印刷制御用に使用する非階層構造の印刷設定ファイルから非階層構造のプリントジョブ能力（第１のジョブチケット）を生成する。そして、この第１のジョブチケットから階層構造のプリントジョブ能力（第２のジョブチケット）を生成する。このことにより、印刷設定ファイルと印刷制御構造体とを利用した従来の印刷システムと、プリントジョブチケット／プリントジョブ能力（ジョブチケット）を利用した新しい印刷システムと、を統合した周辺装置制御システムを実現することができる。
【０１９８】
本実施形態では、アプリケーション３０の一例として印刷機能を備えるテキストエディタを挙げた。しかしながら、この例に限られることなく、例えば周辺装置から情報を取得して、それを利用するような任意のアプリケーションで本実施形態は実現可能であり、有効である。
【０１９９】
また、本実施形態では、プリンタの例としてカラーインクジェットプリンタを使用したが、この例に限られることなく、例えば、モノクロＬＢＰ等の任意のプリンタを使用することができる。
【０２００】
また、本実施形態では、情報処理装置としてパーソナルコンピュータを想定した。しかしながら、この例に限られることなく、例えばＤＶＤビデオプレーヤー、ゲーム、セットトップボックス、インターネット家電等、同様な使用方法が可能な任意の端末に対して実現することができ、有効である。
【０２０１】
また、本実施形態では、周辺装置としてプリンタを例示しているが、周辺装置として他に、複写機、ファクシミリ、スキャナ、デジタルカメラ、及びこれらの複合機能を備える装置等の何れかであっても、本実施形態の適用対象となり得る。
【０２０２】
また、本実施形態では、ＯＳに例としてＷｉｎｄｏｗｓ(登録商標)  ＸＰを使用したが、これらのＯＳに限られることなく、任意のＯＳを使用することができる。
【０２０３】
また、本実施形態では、ＰＣ１とプリンタ３との間のインタフェースとして、ＵＳＢインタフェースを用いた。しかしながら、このインタフェースに限られることなく、例えば、Ｅｔｈｅｒｎｅｔ（登録商標）、無線ＬＡＮ、ＩＥＥＥ１３９４、Ｂｌｕｅｔｏｏｔｈ、ＩｒＤＡ、パラレル、シリアル等の任意のインタフェースを用いるようにしてもよい。
【０２０４】
上述したように、本実施形態によれば、非階層構造の印刷設定ファイルから階層構造のジョブチケットを効率良く、正確に生成することができる。
また、本実施形態によれば、ＯＳ標準の機能を使って第１のジョブチケットを生成するので、正しいジョブチケットを効率良く生成することができる。
また、本実施形態によれば、周辺装置又は周辺装置制御用ドライバが備える印刷設定に関する情報を第１のジョブチケットから取得して保存し、その情報を第２のジョブチケットにコピーして活用するので、正しいジョブチケットを効率良く生成することができる。
【０２０５】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図面の簡単な説明】
【０２０６】
【図１】本実施形態に係る情報処理装置及び周辺装置からなる周辺装置制御システムの構成を表すブロック図である。
【図２】ＰＣ１のハードウェア構成の一例を表すブロック図である。
【図３】プリンタ３のハードウェア構成を表すブロック図である。
【図４】ＰＣ１におけるプリンタドライバの構成を表す図である。
【図５】印刷機能を備えるテキストエディタから印刷を行う時のユーザの操作の一例を表す図である。
【図６】Ｐｒｉｎｔダイアログを表す図である。
【図７】プリンタドライバ５０の印刷設定ダイアログを表す図である。
【図８】印刷制御構造体を表す図である。
【図９】印刷設定ファイル内の給紙方法に関する情報を表す図である。
【図１０】印刷設定ファイル内の印刷の向きに関する情報を表す図である。
【図１１】印刷設定ファイル内のカラー印刷の方法に関する情報を表す図である。
【図１２】印刷設定ファイル内の解像度に関する情報を表す図である。
【図１３】印刷設定ファイル内の用紙の種類に関する情報を表す図である。
【図１４】印刷設定ファイル内の両面印刷に関する情報を表す図である。
【図１５】印刷設定ファイル内の割り付け印刷に関する情報を表す図である。
【図１６】印刷設定ファイル内の割り付け印刷ページ順序に関する情報を表す図である。
【図１７】印刷設定ファイル内の用紙サイズに関する情報を表す図である。
【図１８】印刷設定ファイル内の印刷品位に関する情報を表す図である。
【図１９】印刷設定ファイル内の割り付け印刷出力用紙サイズに関する情報を表す図である。
【図２０】印刷設定ファイル内のコマンド制御に関する情報を表す図である。
【図２１】印刷ジョブの構成を表す図である。
【図２２】各印刷制御コマンドを制御する制御関数の仕様を表す図である。
【図２３】印刷設定情報の取得処理を表すフローチャートである。
【図２４】印刷処理を表すフローチャートである。
【図２５】印刷制御構造体の設定を行う処理を表すフローチャートである。
【図２６】新しい印刷システムが実装されているＯＳにＰｒｉｎｔダイアログを表す図である。
【図２７】プリントジョブスキーマの名前空間、部数、給紙方法の定義を表す図である。
【図２８】プリントジョブスキーマの印刷の向きの定義を表す図である。
【図２９】プリントジョブスキーマのカラー印刷の方法の定義を表す図である。
【図３０】プリントジョブスキーマの解像度の定義を表す図である。
【図３１】プリントジョブスキーマの用紙の種類の定義を表す図である。
【図３２】プリントジョブスキーマの両面印刷の方法の定義を表す図である。
【図３３】プリントジョブスキーマの割り付け印刷ページ数の定義を表す図である。
【図３４】プリントジョブスキーマの割り付け印刷ページ順序の定義を表す図（その１）である。
【図３５】プリントジョブスキーマの割り付け印刷ページ順序の定義を表す図（その２）である。
【図３６】プリントジョブスキーマの用紙サイズの定義を表す図である。
【図３７】プリントジョブスキーマの印刷品位の定義を表す図である。
【図３８】プリントジョブスキーマの割り付け印刷出力用紙サイズの定義を表す図である。
【図３９】統合印刷システムにおける印刷設定ファイル内の給紙方法に関する情報を表す図である。
【図４０】統合印刷システムにおける印刷設定ファイル内の印刷の向きに関する情報を表す図である。
【図４１】統合印刷システムにおける印刷設定ファイル内のカラー印刷の方法に関する情報を表す図である。
【図４２】統合印刷システムにおける印刷設定ファイル内の解像度に関する情報を表す図である。
【図４３】統合印刷システムにおける印刷設定ファイル内の用紙の種類に関する情報を表す図である。
【図４４】統合印刷システムにおける印刷設定ファイル内の両面印刷に関する情報を表す図である。
【図４５】統合印刷システムにおける印刷設定ファイル内の割り付け印刷に関する情報を表す図である。
【図４６】統合印刷システムにおける印刷設定ファイル内の割り付け印刷ページ順序に関する情報を表す図（その１）である。
【図４７】統合印刷システムにおける印刷設定ファイル内の割り付け印刷ページ順序に関する情報を表す図（その２）である。
【図４８】統合印刷システムにおける印刷設定ファイル内の用紙サイズに関する情報を表す図である。
【図４９】統合印刷システムにおける印刷設定ファイル内の印刷品位に関する情報を表す図である。
【図５０】統合印刷システムにおける印刷設定ファイル内の割り付け印刷出力用紙サイズに関する情報を表す図である。
【図５１】統合印刷システムにおける印刷設定ファイル内のコマンド制御に関する情報を表す図である。
【図５２】統合印刷システムにおける各印刷制御コマンドを制御する制御関数の仕様を表す図である。
【図５３】統合印刷システムにおけるプリントジョブ能力の取得処理を表すフローチャートである。
【図５４】図５３に示す統合印刷システムにおけるプリントジョブ能力の取得処理のステップＳ５３０３において生成されたプリントジョブ能力の一部を表す図である。
【図５５】図５３に示す統合印刷システムにおけるプリントジョブ能力の取得処理のステップＳ５３０７、Ｓ５３０８において生成されたプリントジョブ能力の一部を表す図である。
【図５６】図５３に示す統合印刷システムにおけるプリントジョブ能力の取得処理のステップＳ５３０９において生成されたプリントジョブ能力の一部を表す図である。
【図５７】統合印刷システムにおけるプリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力の名前空間、給紙方法を表す図である。
【図５８】統合印刷システムにおけるプリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力の印刷の向きを表す図である。
【図５９】統合印刷システムにおけるプリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力のカラー印刷の方法を表す図である。
【図６０】統合印刷システムにおけるプリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力の解像度を表す図である。
【図６１】統合印刷システムにおけるプリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力の用紙の種類を表す図である。
【図６２】統合印刷システムにおけるプリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力の両面印刷の方法を表す図である。
【図６３】統合印刷システムにおけるプリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力の割り付け（Ｎ−ＵＰ）印刷を表す図（その１）である。
【図６４】統合印刷システムにおけるプリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力の割り付け（Ｎ−ＵＰ）印刷を表す図（その２）である。
【図６５】統合印刷システムにおけるプリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力の用紙サイズを表す図である。
【図６６】統合印刷システムにおけるプリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力の印刷品位を表す図である。
【図６７】統合印刷システムにおけるプリンタドライバ５０を介して取得することができるプリンタ３のプリントジョブ能力の割り付け印刷出力用紙サイズを表す図である。
【図６８】周辺装置制御システムで読み出し可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを示す図である。
【符号の説明】
【０２０７】
１    ＰＣ
３    プリンタ
３０  アプリケーション
５０  プリンタドライバ
【図１】
2008015922.tif 000003
【図２】
2008015922.tif 000004
【図３】
2008015922.tif 000005
【図４】
2008015922.tif 000006
【図５】
2008015922.tif 000007
【図６】
2008015922.tif 000008
【図７】
2008015922.tif 000009
【図８】
2008015922.tif 000010
【図９】
2008015922.tif 000011
【図１０】
2008015922.tif 000012
【図１１】
2008015922.tif 000013
【図１２】
2008015922.tif 000014
【図１３】
2008015922.tif 000015
【図１４】
2008015922.tif 000016
【図１５】
2008015922.tif 000017
【図１６】
2008015922.tif 000018
【図１７】
2008015922.tif 000019
【図１８】
2008015922.tif 000020
【図１９】
2008015922.tif 000021
【図２０】
2008015922.tif 000022
【図２１】
2008015922.tif 000023
【図２２】
2008015922.tif 000024
【図２３】
2008015922.tif 000025
【図２４】
2008015922.tif 000026
【図２５】
2008015922.tif 000027
【図２６】
2008015922.tif 000028
【図２７】
2008015922.tif 000029
【図２８】
2008015922.tif 000030
【図２９】
2008015922.tif 000031
【図３０】
2008015922.tif 000032
【図３１】
2008015922.tif 000033
【図３２】
2008015922.tif 000034
【図３３】
2008015922.tif 000035
【図３４】
2008015922.tif 000036
【図３５】
2008015922.tif 000037
【図３６】
2008015922.tif 000038
【図３７】
2008015922.tif 000039
【図３８】
2008015922.tif 000040
【図３９】
2008015922.tif 000041
【図４０】
2008015922.tif 000042
【図４１】
2008015922.tif 000043
【図４２】
2008015922.tif 000044
【図４３】
2008015922.tif 000045
【図４４】
2008015922.tif 000046
【図４５】
2008015922.tif 000047
【図４６】
2008015922.tif 000048
【図４７】
2008015922.tif 000049
【図４８】
2008015922.tif 000050
【図４９】
2008015922.tif 000051
【図５０】
2008015922.tif 000052
【図５１】
2008015922.tif 000053
【図５２】
2008015922.tif 000054
【図５３】
2008015922.tif 000055
【図５４】
2008015922.tif 000056
【図５５】
2008015922.tif 000057
【図５６】
2008015922.tif 000058
【図５７】
2008015922.tif 000059
【図５８】
2008015922.tif 000060
【図５９】
2008015922.tif 000061
【図６０】
2008015922.tif 000062
【図６１】
2008015922.tif 000063
【図６２】
2008015922.tif 000064
【図６３】
2008015922.tif 000065
【図６４】
2008015922.tif 000066
【図６５】
2008015922.tif 000067
【図６６】
2008015922.tif 000068
【図６７】
2008015922.tif 000069
【図６８】
2008015922.tif 000070