(57)【要約】【課題】  カラー・マネージメントのための方法および装置を提供することにある。【解決手段】  ディスプレイまたはプリンタなどのエンドポイント装置で提示されるカラー・マネージメントは、カラー・マネージメント・リソース（ＣＭＲ）の実現に基づくものである。ＣＭＲは、印刷ファイル、文書、ページ、またはデータ・オブジェクトを表現するために必要なカラー・マネージメント情報のすべてを伝達するために使用されるプリント・サーバまたはその他のプロセッサにとってアクセス可能に記憶された設計済みリソースである。【選択図】  図１
2007536656.tif 000002
【特許請求の範囲】
【請求項１】
出力用文書を受信するステップと、カラー・マネージメント・リソース（ＣＭＲ）が前記出力用文書からのコンポーネントの少なくとも一部に関連付けられていることを判断するステップと、ターゲット出力装置で前記文書を出力するために出力データ・ストリーム内にコマンドを追加するステップとを含み、前記コマンドが前記ターゲット出力装置でコンポーネントの前記少なくとも一部の出力中に前記関連付けられたＣＭＲを呼び出すためのものであり、前記ＣＭＲがその出力中にコンポーネントの前記少なくとも一部のカラーをレンダリングするときに使用するための詳細を含む、方法。
【請求項２】
コンポーネントの少なくとも一部に関連する前記ＣＭＲの名前を入手するステップと、前記名前を使用してメモリ内の前記ＣＭＲを見つけるステップと、前記ＣＭＲを前記出力データ・ストリームに追加するステップとをさらに含む、請求項１に記載の方法。
【請求項３】
前記名前を使用してメモリ内の前記ＣＭＲを見つける前記ステップが、前記出力用文書内の前記ＣＭＲを検索するステップと、前記出力用文書内で前記ＣＭＲを検出しなかったことに応答して、ＣＭＲの集合内で前記ＣＭＲを検索するステップとを含む、請求項２に記載の方法。
【請求項４】
判断する前記ステップが、コンポーネントの前記少なくとも一部が装置独立ＣＭＲに関連付けられていると判断したことに応答して、前記ターゲット出力装置に固有の装置固有ＣＭＲに対するものになるように前記関連を置き換えるステップを含む、請求項１に記載の方法。
【請求項５】
判断する前記ステップが、コンポーネントの前記少なくとも一部の属性を入手するステップと、コンポーネントの前記少なくとも一部にＣＭＲを関連付けるステップであって、入手された前記属性に基づいて前記ＣＭＲが選択されるステップとを含む、請求項１に記載の方法。
【請求項６】
入手された前記属性を使用して、コンポーネントの前記少なくとも一部に関連付けられる前記ＣＭＲを生成するステップをさらに含む、請求項５に記載の方法。
【請求項７】
前記詳細が、カラー変換、リンク・カラー変換、ハーフトーン画面、および較正曲線のうちの少なくとも１つと関係がある、請求項１ないし６のいずれかに記載の方法。
【請求項８】
前記ＣＭＲが、コンポーネントの前記少なくとも一部について実行される予定の処理を定義する命令ＣＭＲと、コンポーネントの前記少なくとも一部について実行された処理を定義する監査ＣＭＲのうちの一方である、請求項１ないし７のいずれかに記載の方法。
【請求項９】
前記コマンドが前記ＣＭＲの呼出しに関する範囲を指定する、請求項１ないし８のいずれかに記載の方法。
【請求項１０】
出力用文書を受信するための文書受信器と、カラー・マネージメント・リソース（ＣＭＲ）が前記出力用文書からのコンポーネントの少なくとも一部に関連付けられていることを判断するための関連判断器と、ターゲット出力装置で前記文書を出力するために出力データ・ストリーム内にコマンドを追加するためのコマンド追加器とを含み、前記コマンドが前記ターゲット出力装置でコンポーネントの前記少なくとも一部の出力中に前記関連付けられたＣＭＲを呼び出すためのものであり、前記ＣＭＲがその出力中にコンポーネントの前記少なくとも一部のカラーをレンダリングするときに使用するための詳細を含む、データ処理装置。
【請求項１１】
コンポーネントの少なくとも一部に関連する前記ＣＭＲの名前を入手するための手段と、前記名前を使用してメモリ内の前記ＣＭＲを見つけるための手段と、前記ＣＭＲを前記出力データ・ストリームに追加するための手段とをさらに含む、請求項１０に記載の装置。
【請求項１２】
前記関連判断器が、コンポーネントの前記少なくとも一部が装置独立ＣＭＲに関連付けられていると判断したことに応答して、前記ターゲット出力装置に固有の装置固有ＣＭＲに対するものになるように前記関連を置き換えるための手段を含む、請求項１０に記載の装置。
【請求項１３】
前記関連判断器が、コンポーネントの前記少なくとも一部の属性を入手するための手段と、コンポーネントの前記少なくとも一部にＣＭＲを関連付けるための手段であって、入手された前記属性に基づいて前記ＣＭＲが選択される手段とを含む、請求項１０に記載の装置。
【請求項１４】
入手された前記属性を使用して、コンポーネントの前記少なくとも一部に関連付けられる前記ＣＭＲを生成するための手段をさらに含む、請求項１３に記載の装置。
【請求項１５】
コンピュータによって読取り可能なプログラム記憶媒体を含むシステムであって、前記媒体が、出力用文書を受信するステップと、カラー・マネージメント・リソース（ＣＭＲ）が前記出力用文書からのコンポーネントの少なくとも一部に関連付けられていることを判断するステップと、ターゲット出力装置で前記文書を出力するために出力データ・ストリーム内にコマンドを追加するステップとを含み、前記コマンドが前記ターゲット出力装置でコンポーネントの前記少なくとも一部の出力中に前記関連付けされたＣＭＲを呼び出すためのものであり、前記ＣＭＲがその出力中にコンポーネントの前記少なくとも一部のカラーをレンダリングするときに使用するための詳細を含む、方法を実行するためにコンピュータによって実行可能な複数命令からなる１つまたは複数のプログラムを記録する、システム。
【請求項１６】
前記方法が、コンポーネントの少なくとも一部に関連する前記ＣＭＲの名前を入手するステップと、前記名前を使用してメモリ内の前記ＣＭＲを見つけるステップと、前記ＣＭＲを前記出力データ・ストリームに追加するステップとをさらに含む、請求項１５に記載のシステム。
【請求項１７】
判断する前記ステップが、コンポーネントの前記少なくとも一部が装置独立ＣＭＲに関連付けられていると判断したことに応答して、前記ターゲット出力装置に固有の装置固有ＣＭＲに対するものになるように前記関連を置き換えるステップを含む、請求項１５に記載のシステム。
【請求項１８】
判断する前記ステップが、コンポーネントの前記少なくとも一部の属性を入手するステップと、コンポーネントの前記少なくとも一部にＣＭＲを関連付けるステップであって、入手された前記属性に基づいて前記ＣＭＲが選択されるステップとを含む、請求項１５に記載のシステム。
【請求項１９】
前記方法が、入手された前記属性を使用して、コンポーネントの前記少なくとも一部に関連付けられる前記ＣＭＲを作成するステップをさらに含む、請求項１８に記載のシステム。
【請求項２０】
出力用文書を定義する出力データ・ストリームを受信するステップと、第１のカラー・マネージメント・リソース（ＣＭＲ）が前記文書からのコンポーネントの少なくとも一部に関連付けられていることを判断するステップであって、前記ＣＭＲがその出力中にコンポーネントの前記少なくとも一部のカラーをレンダリングするときに使用するための詳細を含むステップと、コンポーネントの前記少なくとも一部の出力中に前記ＣＭＲを呼び出すステップとを含む、方法。
【請求項２１】
第２のＣＭＲが前記文書からのコンポーネントの前記少なくとも一部のサブコンポーネントの少なくとも一部に関連付けられていることを判断するステップと、サブコンポーネントの前記少なくとも一部の出力中に前記第１のＣＭＲを置き換えるために前記第２のＣＭＲを呼び出すステップとをさらに含む、請求項２０に記載の方法。
【請求項２２】
サブコンポーネントの前記少なくとも一部の出力が完了したときに前記第１のＣＭＲを再呼出しするステップをさらに含む、請求項２１に記載の方法。
【請求項２３】
前記第１のＣＭＲが、コンポーネントの前記少なくとも一部について実行される予定の処理を定義する命令ＣＭＲと、コンポーネントの前記少なくとも一部について実行された処理を定義する監査ＣＭＲのうちの一方である、請求項２０ないし２２のいずれか１項に記載の方法。
【請求項２４】
前記詳細が、カラー変換、リンク・カラー変換、ハーフトーン画面、および較正曲線のうちの少なくとも１つと関係がある、請求項２０ないし２３のいずれか１項に記載の方法。
【請求項２５】
出力用文書を定義する出力データ・ストリームを受信するための受信器と、第１のカラー・マネージメント・リソース（ＣＭＲ）が前記文書からのコンポーネントの少なくとも一部に関連付けられていることを判断するための関連判断器であって、前記ＣＭＲがその出力中にコンポーネントの前記少なくとも一部のカラーをレンダリングするときに使用するための詳細を含む、関連判断器と、コンポーネントの前記少なくとも一部の出力中に前記ＣＭＲを呼び出すためのＣＭＲ呼び出し器とを含む、データ処理装置。
【請求項２６】
第２のＣＭＲが前記文書からのコンポーネントの前記少なくとも一部のサブコンポーネントの少なくとも一部に関連付けられていることを判断するための手段と、サブコンポーネントの前記少なくとも一部の出力中に前記第１のＣＭＲを置き換えるために前記第２のＣＭＲを呼び出すための手段とをさらに含む、請求項２５に記載の装置。
【請求項２７】
サブコンポーネントの前記少なくとも一部の出力が完了したときに前記第１のＣＭＲを再呼出しするための手段をさらに含む、請求項２６に記載の装置。
【請求項２８】
前記第１のＣＭＲが、コンポーネントの前記少なくとも一部について実行される予定の処理を定義する命令ＣＭＲと、コンポーネントの前記少なくとも一部について実行された処理を定義する監査ＣＭＲのうちの一方である、請求項２５ないし２７のいずれか１項に記載の装置。
【請求項２９】
前記詳細が、カラー変換、リンク・カラー変換、ハーフトーン画面、および較正曲線のうちの少なくとも１つと関係がある、請求項２５ないし２８のいずれか１項に記載の装置。
【請求項３０】
コンピュータによって読取り可能なプログラム記憶媒体を含むシステムであって、前記媒体が、出力用文書を定義する出力データ・ストリームを受信するステップと、第１のカラー・マネージメント・リソース（ＣＭＲ）が前記文書からのコンポーネントの少なくとも一部に関連付けられていることを判断するステップであって、前記ＣＭＲがその出力中にコンポーネントの前記少なくとも一部のカラーをレンダリングするときに使用するための詳細を含むステップと、コンポーネントの前記少なくとも一部の出力中に前記ＣＭＲを呼び出すステップとを含む、方法を実行するためにコンピュータによって実行可能な複数命令からなる１つまたは複数のプログラムを記録する、システム。
【請求項３１】
前記方法が、第２のＣＭＲが前記文書からのコンポーネントの前記少なくとも一部のサブコンポーネントの少なくとも一部に関連付けられていることを判断するステップと、サブコンポーネントの前記少なくとも一部の出力中に前記第１のＣＭＲを置き換えるために前記第２のＣＭＲを呼び出すステップとをさらに含む、請求項３０に記載のシステム。
【請求項３２】
前記方法が、サブコンポーネントの前記少なくとも一部の出力が完了したときに前記第１のＣＭＲを再呼出しするステップをさらに含む、請求項３１に記載のシステム。
【請求項３３】
前記第１のＣＭＲが、コンポーネントの前記少なくとも一部について実行される予定の処理を定義する命令ＣＭＲと、コンポーネントの前記少なくとも一部について実行された処理を定義する監査ＣＭＲのうちの一方である、請求項３０ないし３２のいずれか１項に記載のシステム。
【請求項３４】
前記詳細が、カラー変換、リンク・カラー変換、ハーフトーン画面、および較正曲線のうちの少なくとも１つと関係がある、請求項３０ないし３３のいずれか１項に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カラー印刷に関し、詳細には、カラー印刷の出力の正確さおよび整合性を改善することに関する。
【背景技術】
【０００２】
高機能印刷（ＡＦＰ：AdvancedFunction Presentation）アーキテクチャなどのプレゼンテーション・アーキテクチャは、モノクロ／カラー、インパクト／ノンインパクト、連続用紙／カット・シートなどの多種多様なタイプのプリンタ、ならびにディスプレイなどのその他の出力技術において、入力ストリームおよびデータと、出力情報とを処理するために使用される。出力すべき情報がカラー・データを含む場合、すべての装置技術にわたってカラーが正確かつ一貫してレンダリングされる（演色される）ことが重要である。カラー装置では、装置全般（device gamut）が許す限り正確にカラーをレンダリングしなければならず、モノクロ装置では、正確かつ満足なグレースケールでカラーをシミュレートしなければならない。
【０００３】
これまで、様々な出力装置にわたって出力の整合性が達成されることを保証する際に問題が発生していた。これは、一つには、カラー・レンダリングするための装置の機能が様々であることによって発生し、一つには、結果的にカラー情報が装置特性によってひずむ（スキューする）可能性があることによって発生する。
【０００４】
カラー・マネージメント・システムは、Ｗｉｎｄｏｗｓ（Ｒ）およびＭａｃｉｎｔｏｓｈ（Ｒ）などのいくつかのオペレーティング・システム・プラットフォーム上で使用可能であったが、これらのオペレーティング・システムを使用するシステムとともに機能するプリンタおよびディスプレイに適用可能である。しかし、ＡＦＰ環境などの生産印刷環境（production print environment）で使用される総合的なカラー・マネージメント・システムとして現在知られているものはまったく存在しない。以下で使用する特定の用語は頭文字または頭字語によって表されている。このような用語が文脈から不明瞭であれば、ＩＢＭ社によって提供され、Ｇ５４４−３９７３−００という資料として識別される辞書など、印刷業界で使用される用語の標準的な辞書を参照することによって、より十分な理解を得ることができる。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ＰｏｓｔＳｃｒｉｐｔおよびＰＤＦなどのデータ・ストリーム内で現在使用可能なカラー・マネージメント・メカニズムは、入力カラー・データを特徴付けるためのいくつかの方法を提供するが、装置独立方式でハーフトーン化などの出力操作を指定するためのメカニズムが欠けている。装置独立（device independent）命令は、このようなデータ・ストリーム内に完全に含めることができないが、本発明で記載したものなどの総合的なシステムの一部でなければならない。
【課題を解決するための手段】
【０００６】
第１の態様によれば、本発明は、出力用文書（documentfor outputting）を受信するステップと、カラー・マネージメント・リソース（ＣＭＲ：color management resource）が出力用文書からのコンポーネント（要素）の少なくとも一部に関連付けられていることを判断するステップと、ターゲット出力装置で文書を出力するために出力データ・ストリーム内にコマンドを追加するステップとを含み、そのコマンドがターゲット装置でコンポーネントの少なくとも一部の出力中に関連付けされたＣＭＲを呼び出すためのものであり、ＣＭＲがその出力中にコンポーネントの少なくとも一部のカラーをレンダリング（表現）するときに使用するための詳細を含む、方法を提供する。
【０００７】
第２の態様によれば、本発明は、出力用文書を受信するための文書受信器（document receiver）と、カラー・マネージメント・リソース（ＣＭＲ）が出力用文書からのコンポーネントの少なくとも一部に関連付けられていることを判断するための関連判断器（association determiner）と、ターゲット出力装置で文書を出力するために出力データ・ストリーム内にコマンドを追加するためのコマンド追加器（command adder）とを含み、そのコマンドがターゲット装置でコンポーネントの少なくとも一部の出力中に関連付けされたＣＭＲを呼び出すためのものであり、ＣＭＲがその出力中にコンポーネントの少なくとも一部のカラーをレンダリングするときに使用するための詳細を含む、データ処理装置を提供する。
【０００８】
第３の態様によれば、本発明は、コンピュータによって読取り可能なプログラム記憶媒体を含むシステムであって、その媒体が、出力用文書を受信するステップと、カラー・マネージメント・リソース（ＣＭＲ）が出力用文書からのコンポーネントの少なくとも一部に関連付けられていることを判断するステップと、ターゲット出力装置で文書を出力するために出力データ・ストリーム内にコマンドを追加するステップとを含み、そのコマンドがターゲット装置でコンポーネントの少なくとも一部の出力中に関連付けされたＣＭＲを呼び出すためのものであり、ＣＭＲがその出力中にコンポーネントの少なくとも一部のカラーをレンダリングするときに使用するための詳細を含む、方法を実行するためにコンピュータによって実行可能な複数命令からなる１つまたは複数のプログラムを記録する、システムを提供する。
【０００９】
任意選択で、ＣＭＲは、出力用文書に含まれ、出力データ・ストリームにコピーされる。代わって、ターゲット出力装置はＣＭＲのコピーを有し、その場合、出力データ・ストリームにＣＭＲを含めることは不要である。代わって、出力用文書は、ＣＭＲに関する名前を指定する、ＣＭＲへの参照を含む。この場合、その名前はメモリ内のＣＭＲを見つける（locate）ために使用され、見つけられたＣＭＲは出力データ・ストリームに追加される。
【００１０】
メモリ内のＣＭＲを見つける場合、まず出力文書について検索が実行され、ＣＭＲが検出された場合、それが使用される。しかし、それが検出されない場合、ＣＭＲを見つけるために、ＣＭＲの検索可能リストがアクセスされ検索される。
【００１１】
コンポーネントの少なくとも一部に関連するＣＭＲは、ターゲット出力装置に固有のものであるかまたは装置独立のものである可能性がある。それが、装置独立のものである場合、任意選択で、ターゲット出力装置に固有のＣＭＲで置き換えられる。この場合、その関連（association）は、ターゲット出力装置に固有の装置固有ＣＭＲに対するものになるように変更される。
【００１２】
印刷用文書は、ＣＭＲに関連付けられていないコンポーネントの少なくとも一部を含むことができる。任意選択で、コンポーネントの少なくとも一部から属性が入手され、その後、その属性はそれに関連付けるための適切なＣＭＲを選択するために使用される。任意選択で、適切なＣＭＲが使用不能である場合、その属性はコンポーネントの少なくとも一部に関連付けることができるＣＭＲを生成するために使用される。
【００１３】
たとえば、ＣＭＲは、コンポーネントの少なくとも一部について実行される予定の処理を定義する命令ＣＭＲ（instruction CMR）と、コンポーネントの少なくとも一部について実行された処理を定義する監査ＣＭＲ（audit CMR）のうちの一方である。
【００１４】
たとえば、ＣＭＲ内の詳細（details）は、カラー変換、リンク・カラー変換、ハーフトーン画面、および較正曲線のうちの少なくとも１つと関係がある。
【００１５】
任意選択で、ＣＭＲを呼び出すためのコマンドは、ＣＭＲに関する呼出しの（有効）範囲（scope）を指定する。たとえば、この範囲は、コンポーネントの少なくとも一部をレンダリングする場合のみＣＭＲが使用されることを指定し、代わって、この範囲は、ＣＭＲが複数のコンポーネントまたはサブコンポーネントあるいはその両方に使用されることを指定することもできる。
【００１６】
たとえば、本発明の第１ないし第２の態様の一実施形態は、ターゲット装置で出力するためにアプリケーション・ジェネレータからＭＯ：ＤＣＡ−Ｐ文書を受信するプリント・サーバの一部として提供することができるであろう。ＭＯ：ＤＣＡ−Ｐ文書は、文書のコンポーネントの少なくとも一部を出力するときに使用するためのＣＭＲの詳細を含む場合もあれば、コンポーネントの少なくとも一部を出力するときに使用すべきＣＭＲを選択するためにプリント・サーバが使用できる定義済み属性とともにコンポーネントの少なくとも一部を含む場合もある。プリント・サーバは、ターゲット装置に送信するためのＩＰＤＳコマンド・ストリームを生成するためにＭＯ：ＤＣＡ−Ｐ文書を使用し、そのＩＰＤＳコマンド・ストリームはＭＯ：ＤＣＡ−Ｐ文書を出力するときにＣＭＲを呼び出すためのコマンドを含む。
【００１７】
第４の態様によれば、本発明は、出力用文書を定義する出力データ・ストリームを受信するステップと、第１のカラー・マネージメント・リソース（ＣＭＲ）が文書からのコンポーネントの少なくとも一部に関連付けられていることを判断するステップであって、ＣＭＲがその出力中にコンポーネントの少なくとも一部のカラーをレンダリングするときに使用するための詳細を含むステップと、コンポーネントの少なくとも一部の出力中にＣＭＲを呼び出すステップとを含む、方法を提供する。
【００１８】
第５の態様によれば、本発明は、出力用文書を定義する出力データ・ストリームを受信する受信器と、第１のカラー・マネージメント・リソース（ＣＭＲ）が文書からのコンポーネントの少なくとも一部に関連付けられていることを判断するための関連判断器であって、ＣＭＲがその出力中にコンポーネントの少なくとも一部のカラーをレンダリングするときに使用するための詳細を含む関連判断器と、コンポーネントの少なくとも一部の出力中にＣＭＲを呼び出すためのＣＭＲ呼び出し器（CMR invoker）とを含む、データ処理装置を提供する。
【００１９】
第６の態様によれば、本発明は、コンピュータによって読取り可能なプログラム記憶媒体を含むシステムであって、その媒体が、出力用文書を定義する出力データ・ストリームを受信するステップと、第１のカラー・マネージメント・リソース（ＣＭＲ）が文書からのコンポーネントの少なくとも一部に関連付けられていることを判断するステップであって、ＣＭＲがその出力中にコンポーネントの少なくとも一部のカラーを表現するときに使用するための詳細を含む、ステップと、コンポーネントの少なくとも一部の出力中にＣＭＲを呼び出すステップとを含む、方法を実行するためにコンピュータによって実行可能な複数命令からなる１つまたは複数のプログラムを記録する、システムを提供する。
【００２０】
文書は、コンポーネントの少なくとも一部に対して異なる（第２の）ＣＭＲに関連付けられるコンポーネントの少なくとも一部のサブコンポーネントを含むことができる。任意選択で、この状況が存在するという判断が行われ、サブコンポーネントの少なくとも一部の出力中に第１のカラー・マネージメント・リソースを置き換えるために第２のＣＭＲが呼び出される。さらにこの場合、任意選択で、サブコンポーネントの少なくとも一部の出力が完了したときに第１のＣＭＲが再呼出しされる。
【００２１】
たとえば、ＣＭＲは、コンポーネントの少なくとも一部について実行される予定の処理を定義する命令ＣＭＲと、コンポーネントの少なくとも一部について実行された処理を定義する監査ＣＭＲのうちの一方である。
【００２２】
たとえば、ＣＭＲ内の詳細は、カラー変換、リンク・カラー変換、ハーフトーン画面、および較正曲線のうちの少なくとも１つと関係がある。
【００２３】
たとえば、第４および第５の態様は、プリント・サーバから受信されたＩＰＤＳコマンド・ストリームを使用してＭＯ：ＤＣＡ−Ｐ文書を出力するための出力装置の一部として提供することができ、そのＩＰＤＳコマンド・ストリームはＭＯ：ＤＣＡ−Ｐ文書のコンポーネントの少なくとも一部の出力中にＣＭＲを呼び出すためのコマンドを含むことができるであろう。
【００２４】
本発明の諸実施形態は、ある範囲の装置全体にわたって出力の整合性の向上を達成し、サポート対象装置の機能の及ぶ限り、正確なカラー表現を提供し、様々なアプリケーションによって作成される様々なタイプのデータ全体にわたって整合した出力を可能にし、これらの目的を達成する際にユーザに柔軟性を提供する。
【００２５】
次に、添付図面に例示されているその好ましい諸実施形態に関して、一例としてのみ、本発明について説明する。
【発明を実施するための最良の形態】
【００２６】
高機能印刷（ＡＦＰ）環境内のカラー・マネージメントに関して、本発明の好ましい実施形態について説明する。しかし、当業者であれば、ＰｏｓｔＳｃｒｉｐｔ、ＰＤＦ、およびＰＣＬなどのその他のプレゼンテーション環境にこの技法をどのように適用できるかを認識するであろう。
【００２７】
本発明の好ましい実施形態は、文書を受信し、それを処理し、プリンタ、印刷エンジン、ディスプレイなどのエンドポイント・プレゼンテーション装置（end point presentation device）にデータ・ストリームとしてそれを転送する、たとえば、プリント・サーバなどのプロセッサの使用を伴うものである。典型的には、本発明によって企図されるように、このようなプロセッサは、望み通り、プロセッサ上で実行するために命令およびプロファイルなどのプログラム・モジュールをアクセス可能に記憶することができるディスク・ファイルなどの関連する記憶機能を有する。次にこれについてＡＦＰ環境に関して説明する。
【００２８】
ＡＦＰアーキテクチャでは、複数の文書を含むことができる混合オブジェクト文書コンテンツ・アーキテクチャ（ＭＯ：ＤＣＡ）（Mixed Object: Document Content Architecture）印刷ファイルがプリント・サーバに提供される。次に、プリント・サーバは、印刷ファイルを出力するために、プリンタまたはその他の出力装置に送信するための高機能プリンタ・データ・ストリーム（ＩＰＤＳ：Intelligent Printer Data Stream）コマンド・ストリームを生成する。その最も複雑な形式では、ＭＯ：ＤＣＡ文書は、文書のレイアウトおよび文書構成（composition）の特徴を定義するデータ構造とともにデータ・オブジェクトを含む。この形式は、ＭＯ：ＤＣＡプレゼンテーション（ＭＯ：ＤＣＡ−Ｐ）文書と呼ばれる。ＭＯ：ＤＣＡ−Ｐ文書に関して、本発明の好ましい実施形態について説明する。
【００２９】
図１は、本発明の好ましい実施形態が有利に適用されるＡＦＰ環境例の概略図である。同図のＡＦＰアプリケーション・ジェネレータ１０１は、出力のためにプリント・サーバ１０２にＭＯ：ＤＣＡ−Ｐ文書を送信する。この説明のため、ＭＯ：ＤＣＡ−Ｐ文書がプリント・サーバ１０２にとってアクセス可能なデータ・オブジェクトへの参照を含むものと想定されていることに留意されたい。このデータ・オブジェクトは、たとえば、ＴＩＦＦ／ＪＰＥＧ／ＧＩＦオブジェクト、ＥＰＳ／ＰＤＦオブジェクト、ＦＳ４５オブジェクト、または定義済みフォーマットのその他のオブジェクトにすることができるであろう。このようなデータ・オブジェクトはオブジェクト・インストーラ１０４を介してインストールされ、そのオブジェクト・インストーラ１０４はデータ・オブジェクトをデータ・オブジェクト・リソース・ライブラリ１０５に記憶し、さらにそれがインストールされた場合にデータ・オブジェクトの詳細をデータ・オブジェクト・リソース・アクセス・テーブル（ＲＡＴ：Resource Access Table）１０３の項目（エントリー）に記憶する。データ・オブジェクトＲＡＴ１０３は、事実上、プリント・サーバ１０２が記憶域（ストレージ）内のデータ・オブジェクトを見つけるために使用できるインデックスである。
【００３０】
プリント・サーバ１０２は、ＡＦＰアプリケーション・ジェネレータ１０１からＭＯ：ＤＣＡ−Ｐ文書を受信すると、出力装置に転送するためにそれをＩＰＤＳコマンド・ストリームに変換する。このプロセスの一部として、それは、文書に含まれるデータ・オブジェクト参照から名前を入手し、そのデータ・オブジェクトと関係があるデータ・オブジェクトＲＡＴ１０３内の項目を見つけるためにその名前を使用する。これにより、プリント・サーバは、データ・オブジェクト・リソース・ライブラリ１０５からデータ・オブジェクトを入手し、それをＩＰＤＳコマンド・ストリーム内に組み込む（imbed）。完成したＩＰＤＳコマンド・ストリームは、次にプリンタ・サーバ１０２によって適切な出力装置（１０６、１０７、１０８）に転送される。この出力装置は、たとえば、プリンタ、カラー・ディスプレイ、またはその他のプレゼンテーション装置にすることができ、さらに、異なる装置による後続出力のためにＩＰＤＳコマンド・ストリームを処理する装置にすることができるであろう。
【００３１】
ＭＯ：ＤＣＡ−Ｐ文書のコンポーネントは、自己記述型構造からなる構文（syntax）で定義される。構造化フィールドは主なＭＯ：ＤＣＡ構造であり、これらはＭＯ：ＤＣＡコマンドをエンコード（コード化）するために使用される。構造化フィールドは接頭部（introducer）から始まり、その接頭部はコマンドを固有に識別し、コマンドの全長を示し、埋め込み（padding）バイトが存在するかどうかなどの追加の制御情報を指定する。接頭部のあとには、３２７５９バイトまでのデータが続く。データは、固定パラメータ、リピーティング・グループ（repeating group）、キーワード、およびトリプレットを使用してエンコードすることができる。固定パラメータは、それらを含む構造に関連する場合のみ意味を有する。リピーティング・グループは、複数回現れる可能性のあるパラメータのグループ化を指定するために使用される。キーワードは、１バイトのキーワード値があとに続く１バイトの固有キーワードＩＤからなる自己識別型パラメータである。トリプレットは、１バイトの長さと、１バイトの固有トリプレットＩＤと、２５２バイトまでのデータとを含む自己識別型パラメータである。キーワードとトリプレットは、それらがどこで使用される場合でも同じセマンティクス（意味体系）を有する。これらの構造は相俟って、順序正しい構文解析および柔軟な拡張性を提供するＭＯ：ＤＣＡ文書に関する構文を定義する。
【００３２】
ＭＯ：ＤＣＡ−Ｐ印刷ファイルはコンポーネントの階層として定義され、印刷ファイル・コンポーネントはその階層の最高レベルである。文書は、次のレベルにあって、ページから構成することができ、ページ・コンポーネントはその階層の中間レベルにある。さらに、ページはオブジェクトから構成することができ、オブジェクト・コンポーネントはその階層の最低レベルにある。オブジェクト・コンポーネントは、たとえば、バーコード、グラフィックス、イメージ、および表示テキスト（presentation text）にすることができる。複数の文書をまとめて１つの印刷ファイルにグループ化することができる。
【００３３】
階層の各レベルでは、ＭＯ：ＤＣＡ構造化フィールドの特定のセットが許容される。文書、ページ、およびオブジェクトは開始／終了対（begin-end pair）として知られる１対の構造化フィールドによって境界が示され、開始／終了対はそのデータ・ストリーム・コンポーネントに関するエンベロープを定義する。この特徴により、ＭＯ：ＤＣＡに完全に準拠していないプロセッサは、その有効範囲を超えるオブジェクトを迂回し、その能力の及ぶ限り、ＭＯ：ＤＣＡ−Ｐ印刷ファイルを処理することができる。
【００３４】
図２は、印刷用の文書２５０を定義するＭＯ：ＤＣＡ−Ｐ文書例に関するこの階層の主なコンポーネントを例示する図である。文書２５０は複数のページを含み、ページ１の内容が例示されている。このページは、イメージ・オブジェクト２５１と、テキスト・セクション２５２と、棒グラフなどのグラフィックス・オブジェクト２５３とを含む。
【００３５】
図２のＭＯ：ＤＣＡ−Ｐ文書の最高レベルのコンポーネントは、「文書開始」（ＢＤＴ：Begin Document）構造化フィールド２０１と「文書終了」（ＥＤＴ：End Document）構造化フィールド２０２とを含む開始／終了対によって定義される文書コンポーネントである。文書内の各ページは任意の他のページから独立しており、ＢＤＴ構造化フィールドのあとには印刷すべき各ページの個別詳細２０３が続く。このような個別詳細２０３のそれぞれは、「ページ開始」（ＢＰＧ：Begin Page）構造化フィールド２１１と「ページ終了」（ＥＰＧ：End Page）構造化フィールド２１２とを含む開始／終了対によって定義されるページ・コンポーネント２１０を含む。ＢＰＧ構造化フィールドのあとには、測定単位、ページ幅、およびページ行数などのページに関するリソースおよびレイアウト情報を定義するアクティブ環境グループ（ＡＥＧ：Active Environment Group）２２０が続く。また、ページ・コンポーネント２１０は、ページを構成するオブジェクトのそれぞれに関する詳細も含む。このような詳細は、イメージ・オブジェクト詳細２１３と、表示テキスト・オブジェクト詳細２１４と、グラフィックス・オブジェクト詳細２１５とを含む。たとえば、グラフィックス・オブジェクト詳細は、「グラフィックス・オブジェクト開始」（ＢＧＲ：Begin Graphics Object）構造化フィールド２３１と「グラフィックス・オブジェクト終了」（ＥＧＲ：End Graphics Object）構造化フィールド２３２とを含む開始／終了対によって定義されるグラフィック・オブジェクト・コンポーネント２３０に含まれる。ＢＧＲ構造化フィールドのあとには、オブジェクト環境グループ（ＯＥＧ：Object Environment Group）２４０とグラフィックス・オブジェクト・データ２３３が続く。ＯＥＧ２４０は、ページ上のグラフィックス・オブジェクトの配置および向き方向など、グラフィックス・オブジェクトに関するリソースおよびレイアウト情報を定義する。同図には示されていないが、イメージ・オブジェクト詳細２１３および表示テキスト詳細２１４は、グラフィックス・オブジェクト・コンポーネント２３０と同様であるが、適切な開始／終了対を有するイメージ・オブジェクト・コンポーネントおよび表示テキスト・コンポーネントをそれぞれ含むことに留意されたい。
【００３６】
ＭＯ：ＤＣＡ−Ｐ文書に実際のデータ・オブジェクトを含めることに代わって、たとえば、グラフィックス・オブジェクト２３３に関して図２に示す通り、そのデータ・オブジェクトへの参照を含めることができることに留意されたい。たとえば、データ・オブジェクト・コンポーネントの代わりにリソース・オブジェクト・コンポーネントにデータ・オブジェクトへの参照を含めることができ、このようなリソース・オブジェクト・コンポーネントはリソース開始（ＢＲＳ：Begin Resource）構造化フィールドとリソース終了（ＥＲＳ：End Resource）構造化フィールドとを含む開始／終了対によって定義される。さらに、このようなリソース・オブジェクトは、２次リソース・オブジェクトへの参照を含むことができる。
【００３７】
図２に関してＭＯ：ＤＣＡ−Ｐ文書の可能なコンポーネントすべてについて説明したわけではないことにさらに留意されたい。たとえば、この文書は、それぞれの環境パラメータを定義するページ様（page-like）コンポーネントであるオーバーレイ（overlay）・コンポーネントを含むことができる。
【００３８】
本発明の好ましい実施形態によれば、カラー・マネージメント・リソース（ＣＭＲ）と呼ばれるオブジェクトは、正確かつ一貫してカラーをレンダリングするためのプレゼンテーション・プロセスで使用される。各ＣＭＲは、単一タイプのカラー・マネージメント・リソースを伝達する。ＣＭＲタイプの例としては、カラー変換、ハーフトーン画面（halftone screen）、較正曲線、およびリンク・カラー変換がある。
【００３９】
カラー変換ＣＭＲは、カラーをＣＩＥＬａｂなどの装置独立カラー・スペース（色空間）に結合することにより、装置依存カラー、たとえば、スキャナなどの入力装置によって生成されるカラーまたはプリンタなどの出力装置によってレンダリング（表現）されるカラーを定義する。たとえば、これは、ＩＣＣプロファイルを伝達するためにカラー変換ＣＭＲを使用することによって達成することができる。
【００４０】
リンク・カラー変換ＣＭＲは、異なる装置依存カラーを有する出力装置上で装置依存カラーを有するオブジェクトのレンダリングを可能にする情報を定義する。たとえば、このＣＭＲは、ＲＧＢからＣＭＹＫに直接変換するために使用できるルックアップ・テーブルを使用して、オブジェクト内のＲＧＢからプリンタ内のＣＭＹＫへの変換を定義する。
【００４１】
ハーフトーン画面ＣＭＲは、たとえば、８ビットで記述されるカラーから８ビット未満で記述されるカラーに変換するための情報を定義する。たとえば、ハーフトーン画面ＣＭＲは、出力の外観を変更し調整するために使用することができる。
【００４２】
較正曲線ＣＭＲは、たとえば、コンポーネント出力を明るくするかまたは暗くするために、コンポーネントの出力カラーを変更するために使用できる情報を定義する。たとえば、プリンタ内の各プロセス・カラー（Ｃ、Ｍ、Ｙ、Ｋ）は、２５６通りの輝度レベルを示す８ビットで指定することができ、このＣＭＲは、プリンタがカラー・コンポーネント（カラー要素）内の所与の輝度レベルを異なる輝度レベルに変換することを指定することができる。たとえば、これは、ハーフトーン画面ＣＭＲが適用される前にコンポーネント・カラーを変更するために使用することができる。
【００４３】
ＣＭＲは、監査ＣＭＲまたは命令ＣＭＲにすることができる。この使用法の区別は、ＣＭＲ呼出し制御によって指定される。監査ＣＭＲはオブジェクトについて実行された処理を反映し、命令ＣＭＲはオブジェクトについて実行される予定の処理を指定する。たとえば、監査ＣＭＲは、印刷ファイル内のカラーがどのように、たとえば、どのスキャナまたはデジタル・カメラによって作成されたかを定義する。たとえば、命令ＣＭＲは、ターゲット装置での出力中にオブジェクトのカラーをレンダリングする方法を定義する。
【００４４】
さらに、ＣＭＲは、装置独立のものまたは装置固有のものにすることができる。たとえば、特定のタイプのオブジェクトまたは特定の出力装置に固有のものにすることができる。この場合、プリント・サーバはＭＯ：ＤＣＡ−Ｐ文書内に指定されたＣＭＲを置き換えることができる。たとえば、データ・ストリームが装置独立ＣＭＲを指定する場合、プリント・サーバは、前にインストールされたより適切な装置固有ＣＭＲでそれを置き換えることができる。たとえば、前にインストールされたＣＭＲに関しては、プリント・サーバは、このような置き換えを可能にするために、何らかの方法で１つまたは複数の装置固有ＣＭＲを装置独立ＣＭＲにリンクすることができる。
【００４５】
本発明の好ましい実施形態では、ＣＭＲは、そのＣＭＲに含まれるヘッダに指定された固有の名前で識別され参照される。この名前は、装置固有ＣＭＲが装置独立ＣＭＲに置換される場合など、インテリジェント方式であるＣＭＲを他のＣＭＲに置換するために使用できるように、設計済み方式で構造化される。この設計済み命名規則により、置き換えるべきＣＭＲがプレゼンテーション・システムにとって使用不能であっても、このような置換を行うことができる。たとえば、装置ＩＤ、装置型式番号、装置メーカ、ＣＭＲバージョン番号、品質機能ＩＤ、および外観意図（appearance intent）ＩＤというパラメータのうちの１つまたは複数を使用して、ＣＭＲ名を構成することができるであろう。
【００４６】
ＣＭＲは、ワークステーション・ベースのＣＭＲインストーラ（たとえば、Ｔｒｕｅ  Ｔｙｐｅ／Ｏｐｅｎ  Ｔｙｐｅフォントのために開発されたＷｉｎｄｏｗｓ（Ｒ）ベースのフォント・インストーラの拡張機能）を使用して、プリント・サーバによるアクセスのためにインストールされる。このプログラムは、（１）ＰＳＦ／３９０、ＰＳＦ／４００、またはＩＰＭプリント・サーバなどのサポート・システムのリソース・ライブラリにＣＭＲをアップロードし、（２）ＣＭＲ名をファイル名、オブジェクトＩＤ（ＯＩＤ：object ID）、およびおそらくより多くの装置固有ＣＭＲにマッピングするリソース・アクセス・テーブル（ＲＡＴ）項目（エントリー）を構築することになる。
【００４７】
ＣＭＲは、プレゼンテーション文書階層の各層のコンポーネント、たとえば、印刷ファイル（任意選択のインライン・リソースを有する文書のグループ）、文書、ページ／オーバーレイ、およびデータ・オブジェクトに関連付けることができる。この関連の一部として、コンポーネントに対して実行された処理をＣＭＲが反映するか（「監査」処理モード）またはコンポーネントに対して実行される予定の処理をＣＭＲが反映するか（「命令」処理モード）を指定する処理モードが定義される。たとえば、ダウンロードし、収集し、複数回のダウンロードの必要なしに繰り返して使用することができるように、ＣＭＲは、プリント・サーバによりＡＦＰリソースとして処理される。
【００４８】
たとえば、プリント・サーバにより印刷のために受信されるＭＯ：ＤＣＡ−Ｐ印刷ファイルは、１つまたは複数のＣＭＲあるいはＣＭＲへの１つまたは複数の参照あるいはその両方を含むことができる。含まれる（インライン）ＣＭＲは、印刷ファイルのリソース・グループに組み込まれる。参照される（外部）ＣＭＲは、ＣＭＲインストーラを使用してプリント・サーバ上に前にインストールされており、プリント・サーバのデータ・ソースを介してアクセス可能である。その結果として、プリント・サーバは、出力装置に転送されるＩＰＤＳコマンド・ストリームにこれらを追加する。たとえば、ＣＭＲインストーラは、入力装置または出力装置のためにＩＣＣプロファイルを取り、それらをＣＭＲに変換し、そのＣＭＲをプリント・サーバにアップロードすることができる。
【００４９】
プリント・サーバにより受信されたＭＯ：ＤＣＡ−Ｐ印刷ファイルがデータ・オブジェクトまたはデータ・ソースを介してプリント・サーバでアクセス可能なデータ・オブジェクトへの参照を含む場合、このようなデータ・オブジェクトは、ＣＭＲへの参照を含むかまたはプリント・サーバによりＣＭＲに関連付けることができる。いずれの場合も、プリント・サーバは出力装置に送信されるＩＰＤＳコマンド・ストリームにそのＣＭＲの詳細を追加する。代わって、プリント・サーバはデータ・オブジェクトから属性を入手することができ、それにより、プリント・サーバは、その属性に基づいて選択され、プリント・サーバによりアクセス可能なＣＭＲにそれを関連付けることができる。
【００５０】
プリント・サーバが出力のために出力装置に提供するＩＰＤＳコマンド・ストリームは、必要に応じて必要なときにＣＭＲを起動し呼び出すためのコマンドまたはトリプレットを含む。ＣＭＲは呼び出すために起動しなければならず、呼出しコマンド／トリプレットは、そのＣＭＲが呼び出される時期を定義し、任意選択で、呼出しのための範囲を定義し、このような範囲はたとえば、特定の文書、ページ、またはデータ・オブジェクトの処理になる。前のＣＭＲの範囲内で新しいＣＭＲが呼び出される場合、前のＣＭＲは新しいＣＭＲの範囲についてサスペンド（中断）される。ＣＭＲを起動し呼び出すためのコマンド／トリプレットは、出力装置に送信されるＩＰＤＳコマンド・ストリームに含まれるように、プリント・サーバによって受信されるＭＯ：ＤＣＡ−Ｐ文書に指定することができ、代わって、コマンド／トリプレットはプリント・サーバによってＩＰＤＳコマンド・ストリームに追加される。
【００５１】
図３は、カラー装置およびモノクロ装置上で正確かつ整合した出力を生成するために使用されるカラー・マネージメント・システムをＡＦＰ環境が含む、本発明の好ましい実施形態の概略図である。図３では、いくつかのコンポーネントが図１と共通し、図１と同じ参照番号を有することに留意されたい。これらは図１に関して説明したものと同様の機能を実行し、したがって、図３に関するこの説明は図１との違いがどこに存在するかについてのみ言及することになる。
【００５２】
図３では、ＡＦＰアプリケーション・ジェネレータ１０１によってプリント・サーバ１０２に送信されるＭＯ：ＤＣＡ−Ｐ文書が、データ・オブジェクトへの参照に加えて、前にインストールされ、プリント・サーバ１０２にとってアクセス可能である外部ＣＭＲへの参照をさらに含むものと想定されている。
【００５３】
図３では、ＣＭＲはＣＭＲインストーラ３０１を介して前にインストールされており、そのＣＭＲインストーラ３０１は、ＣＭＲリソース・ライブラリ３０２にＣＭＲを記憶し、その名前および記憶域内の位置を含むＣＭＲの詳細をＣＭＲリソース・アクセス・テーブル（ＲＡＴ）３０４の項目（エントリー）にさらに記憶している。ＣＭＲは、たとえば、ユーザ・インターフェースによるかまたはＩＣＣプロファイルなどの既存のプロファイルからＣＭＲを生成するために使用できる共通カラー・エンジン（ＣＣＥ）３０３を使用して作成されている。さらに、ＣＭＲは、たとえば、装置独立で複数の装置に使用可能なものにするか、または装置固有で特定の装置または特定のタイプの装置にのみ使用可能なものにすることができる。ＣＭＲが装置独立のものである場合、それを１つまたは複数の装置固有ＣＭＲにリンクする詳細も、そのＣＭＲに関するＣＭＲ  ＲＡＴ３０４の項目に含めることができる。
【００５４】
さらに、データ・ストリームで参照されるデータ・オブジェクトに関しては、これがオブジェクト・インストーラ１０４を使用してインストールされた場合、たとえば、前にインストールされたＣＭＲへの参照を含むことができる。ＣＭＲへのこのような参照は、データ・オブジェクトに関するデータ・オブジェクトＲＡＴ項目に含めることができる。さらに、オブジェクト・インストーラ１０４は共通カラー・エンジン（ＣＣＥ）３０５を組み込む可能性があり、これはＣＣＥ３０３と同じであるかまたは異なるＣＣＥにすることができるであろう。このような組み込みは、たとえば、ＣＭＲへの参照なしにデータ・オブジェクトがインストールされた場合に必要である可能性があり、その場合、ＣＣＥ３０５はデータ・オブジェクトの内容を検査し、データ・オブジェクトの内容に基づいて新しいＣＭＲを生成するかまたはデータ・オブジェクトに適した既存のＣＭＲを見つける。ＣＣＥ３０５がデータ・オブジェクトのインストールに関与する場合、このようなアクセスは同図に示されていないが、ＣＭＲ  ＲＡＴ３０４およびＣＲＭリソース・ライブラリ３０２にもアクセスできることに留意されたい。
【００５５】
プリント・サーバ１０２は、ＡＦＰアプリケーション・ジェネレータ１０１からＭＯ：ＤＣＡ−Ｐ文書を受信すると、それをＩＰＤＳコマンド・ストリームに変換する。このプロセスの一部として、それは、データ・ストリーム内の参照からＣＭＲの名前を入手し、その名前を使用して、ＣＭＲと関係があるＣＭＲ  ＲＡＴ３０４内の項目を見つける。これにより、プリント・サーバ１０２は、ＣＭＲを入手し、それと、それを起動し呼び出すためのコマンドをＩＰＤＳコマンド・ストリームに組み込む。しかし、ＣＭＲが装置固有ＣＭＲにリンクされた装置独立ＣＭＲである場合、プリント・サーバは、意図された出力装置に固有の装置固有ＣＭＲで装置独立ＣＭＲを置き換えることができる。さらに、プリント・サーバ１０２は、データ・オブジェクト参照からデータ・オブジェクトの名前を入手し、その名前を使用して、データ・オブジェクトと関係があるデータ・オブジェクトＲＡＴ１０３内の項目を見つける。その結果として、プリント・サーバ１０２は、データ・オブジェクトを入手し、それをＩＰＤＳコマンド・ストリームに組み込む。しかし、データ・オブジェクトＲＡＴ１０２の項目は、データ・オブジェクトを処理するときに使用するためにＣＭＲの詳細をさらに含むことができ、このような詳細としてはＣＭＲの名前および処理モードを含み、処理モードはそれが監査ＣＭＲであるか命令ＣＭＲであるかを示す。その結果として、プリント・サーバ１０２は、ＣＭＲ  ＲＡＴ３０４を介してＣＭＲを入手し、それを、またはリンクされた装置固有ＣＭＲを、データ・オブジェクトが処理される前にそれを呼び出し、データ・オブジェクト期間の間、使用するためのコマンドとともに、ＩＰＤＳコマンド・ストリームに組み込む。たとえば、監査ＣＭＲは、データ・オブジェクトを生成するために使用されたデジタル・カメラのＩＣＣプロファイルを含むカラー変換ＣＭＲにすることができるであろう。
【００５６】
ＭＯ：ＤＣＡ−Ｐ印刷ファイル内のマップ・データ・リソース（ＭＤＲ：Map Data Resource）構造化フィールドは、フォントまたは参照されたデータ・オブジェクトなど、ＭＯ：ＤＣＡ印刷ファイル・コンポーネントのプレゼンテーションに必要なリソースを指定するために使用される。本発明の好ましい実施形態では、ＭＤＲ構造化フィールドは、印刷ファイル・コンポーネントを処理するときに使用すべきＣＭＲを指定するためにさらに使用される。たとえば、ＭＤＲ構造化フィールドは、印刷ファイルに関連するフォーマット定義内またはＭＯ：ＤＣＡ−Ｐ印刷ファイル内の適切な場所に含めることができる。図４は、ＣＭＲを指定するときにＭＤＲ構造化フィールドで使用されるトリプレットを示している。第１のトリプレットはＸ‘０２’トリプレット４０１であり、これは、タイプ“ＤＥ”とともにＣＭＲの名前を指定し、任意選択でタイプ“ＢＥ”とともにローカルＩＤ（ＬＩＤ：Local ID）を指定する。この名前は、ＣＭＲ  ＲＡＴへのインデックスとして使用され、その結果として、ＣＭＲ  ＲＡＴ内の項目を有する他のＣＭＲからそのＣＭＲを区別するのに十分なものでなければならない。このローカルＩＤは、ＣＭＲを参照するために何らかのデータ・オブジェクトにより内部で使用することができ、その場合、ＭＤＲはそのローカルＩＤをＣＭＲ名に結合する。次のトリプレットはＸ‘１０’トリプレット４０２であり、これはＭＤＲがＣＭＲへの参照を含むことを示すために使用される。第３のトリプレットはＸ‘５Ａ’トリプレット４０３であり、これはそのＣＭＲが関係がある印刷ファイル内の特定の文書を識別するために使用される。したがって、このトリプレットはその文書が定義される印刷ファイルへのオフセットを指定し、したがって、ＣＭＲを特定の文書に関連付ける場合のみ必要である。最後に、Ｘ‘９１’トリプレット４０４は、ＣＭＲに関する処理モードと、すなわち、ＣＭＲが監査ＣＭＲであるか命令ＣＭＲであるかと、ＣＭＲの範囲と、すなわち、それがページ、オーバーレイ、またはデータ・オブジェクトのいずれと関係があるかとの両方を指定するために使用される。
【００５７】
図５ないし図９は、本発明の好ましい実施形態において、外部ＣＭＲがＭＯ：ＤＣＡ−Ｐ印刷ファイル上の様々なコンポーネントにどのように関連付けられるかを概略的に例示している。たとえば、非ＡＦＰ環境では、ＣＭＲに印刷ファイル・レベルの範囲を与えるＪＤＦジョブ・チケット（ticket）にそのＣＭＲを結合できるであろう。
【００５８】
図５は、印刷ファイル内のすべての文書コンポーネントに関連付けられる監査ＣＭＲの例についてこれを示している。たとえば、このようなＣＭＲは、それをＣＩＥＬａｂカラー・スペースに追加することにより、印刷ファイル内のすべての装置依存ＲＧＢカラーを定義するカラー変換ＣＭＲにすることができるであろう。ＣＭＲは、ジョブ・サブミッタ（job submitter）により印刷ファイルについて呼び出されるＦｏｒｍＤｅｆ内のＭＤＲを使用して、印刷ファイルに関連付けられる。同図の印刷ファイル５００は、ＣＭＲリソース・ライブラリ３０２に記憶され、ＣＭＲ  ＲＡＴ３０４から参照されるＣＭＲ「ｃｍｒｐｆｉｌｅ」５２０への参照を含む関連のフォーマット定義（ＦｏｒｍＤｅｆ）５０１を有する。ＣＭＲへの参照は、ＢＦＭ（書式マップ開始（Begin Form Map））構造化フィールド５０２とＥＦＭ（書式マップ終了（End Form Map））構造化フィールド５０３とを含む開始／終了対によって定義されるＦｏｒｍＤｅｆに含まれる。ＢＦＭ構造化フィールドのあとには、ＢＤＧ（文書環境グループ開始（Begin Document Environment Group））構造化フィールド５０４とＥＤＧ（文書環境グループ終了（End Document Environment Group））構造化フィールド５０５とを含む開始／終了対によって定義される文書環境グループ（ＤＥＧ：Document Environment Group）が続く。文書環境グループ（ＤＥＧ）内には、ＣＭＲを指定するＭＤＲ（マップ・データ・リソース（Mapped Data Resource））構造化フィールド５０６が含まれる。したがって、ＭＤＲ構造化フィールド内のＸ‘０２’トリプレット５０７はＣＭＲ「ｃｍｒｐｆｉｌｅ」の名前を指定し、Ｘ‘１０’トリプレット５０８はＭＤＲがＣＭＲを参照することを指定し、Ｘ‘９１’トリプレット５０９はＣＭＲが監査ＣＭＲであることを指定する。したがって、プリント・サーバ１０２は、処理するために印刷ファイル５００を受信すると、ＭＤＲ構造化フィールド５０６からＣＭＲの名前を入手し、それを使用して、ＣＭＲ  ＲＡＴ３０４内のＣＭＲに関する項目を見つける。この項目により、ＣＭＲリソース・ライブラリ３０２内のＣＭＲ５２０を見つけ、その後、適切な出力装置に送信されるＩＰＤＳコマンド・ストリーム内にそれを含める。
【００５９】
図６は、本発明の好ましい実施形態において、監査ＣＭＲ「ｃｍｒｄｏｃ」６２０が印刷ファイル内の特定の文書コンポーネントにどのように関連付けられるかを概略的に例示している。これは、印刷ファイル内、すなわち、ＦｏｒｍＤｅｆの文書環境グループに指定されたＭＤＲ内のすべての文書コンポーネントにＣＭＲが関連付けられるのと同様に達成される。しかし、この場合、ＣＭＲを識別するために使用されるＭＤＲ構造化フィールドは、ＣＭＲが関連付けられる予定の文書を示す追加のトリプレットを指定する。図６の印刷ファイル５００は、ＣＭＲ「ｃｍｒｄｏｃ」６２０を参照するＦｏｒｍＤｅｆ５０１に関連付けられる。したがって、ＭＤＲ構造化フィールド６０６が含まれ、そのフィールドで、Ｘ‘０２’トリプレット６０７はＣＭＲ「ｃｍｒｄｏｃ」の名前を指定し、Ｘ‘１０’トリプレット６０８はＭＤＲがＣＭＲを参照することを指定し、Ｘ‘９１’トリプレット６０９はＣＭＲが監査ＣＭＲであることを指定し、さらにＸ‘５Ａ’トリプレット６１０はＣＭＲが関連付けられる文書を指定し、たとえば、これは「ｎ」が印刷ファイルのｎ番目の文書を指定するオフセットにすることができる。
【００６０】
図７は、本発明の好ましい実施形態において、命令ＣＭＲ「ｃｍｒｐｇｏｖ」７２０が文書コンポーネントのページまたはオーバーレイ・コンポーネントにどのように関連付けられるかを概略的に例示している。これは、そのページ／オーバーレイに関するアクティブ環境グループ（ＡＥＧ）内のＣＭＲを定義するＭＤＲを含め、そのＣＭＲがそのページ／オーバーレイに結合されることを示すことにより、達成される。図７の印刷ファイル７０１は、ＢＰＧ（ページ開始）またはＢＭＯ（オーバーレイ開始（Begin Overlay））のいずれか一方の構造化フィールド７０２とＥＰＧ（ページ終了）またはＥＭＯ（オーバーレイ終了（End Overlay））のいずれか一方の構造化フィールド７０３とをそれぞれ含む開始／終了対によって定義されるページ／オーバーレイ・コンポーネントを含む。ＢＰＧ／ＢＭＯ構造化フィールドのあとには、ＢＡＧ（アクティブ環境グループ開始（Begin Active Environment Group））構造化フィールド７０４とＥＡＧ（アクティブ環境グループ終了（End Active Environment Group））構造化フィールド７０５とを含む開始／終了対によって定義されるアクティブ環境グループが続く。アクティブ環境グループ内にはＭＤＲ（マップ・データ・リソース）構造化フィールド７０６が含まれ、そのフィールドで、Ｘ‘０２’トリプレット７０７はＣＭＲ「ｃｍｒｐｇｏｖ」の名前を指定し、Ｘ‘１０’トリプレット７０８はＭＤＲがＣＭＲを参照することを指定し、Ｘ‘９１’トリプレット７０９はＣＭＲが命令ＣＭＲであることと、ＣＭＲの範囲がページまたはオーバーレイ・コンポーネントであることの両方を指定する。
【００６１】
データ・オブジェクト・コンポーネントに関しては、たとえば、データ・オブジェクト・コンポーネントがＭＯ：ＤＣＡ−Ｐ文書コンポーネント内にどのように指定されるかに応じて、さらに、適切なデータ・オブジェクトが前にインストールされた場合にはそれがインストール中にＣＭＲに関連付けられたかどうかに応じて、これらをＣＭＲに関連付けることができる、いくつかの方法が存在する。
【００６２】
たとえば、データ・オブジェクトがワークステーション・ベースのオブジェクト・インストーラによってインストールされる場合、インストーラは、そのデータ・オブジェクトに関して構築されるＲＡＴ項目を使用する１つまたは複数のＣＭＲでオブジェクトにタグを付けることを選択することができる。データ・オブジェクト自体は変更されず、そのネイティブ・フォーマット、すなわち、変更のないフォーマットでインストールすることができる。オブジェクト自体はいかなる方法でも関連を指定せず、それに気付かないので、これは、データ・オブジェクトに対するＣＭＲの暗黙の関連である。たとえば、ＩＯＣＡ  ＦＳ４５をインストールする場合、インストーラは、Ｉｎｆｏｐｒｉｎｔ  Ｃｏｌｏｒ  １３０  Ｐｌｕｓカラー・プロファイルを伝達する監査カラー変換ＣＭＲでこのオブジェクトにタグを付ける可能性があるであろう。この場合、ＭＯ：ＤＣＡ−Ｐ文書コンポーネントは、ＣＭＲへの参照を含む必要はない。
【００６３】
代わって、たとえば、ＭＯ：ＤＣＡ−Ｐ文書コンポーネント内のデータ・オブジェクト・コンポーネントは、そのオブジェクト環境グループ（ＯＥＧ）内のＭＤＲを使用してＣＭＲを参照することができ、これは、データ・オブジェクトＣＭＲ「ｃｍｒｄａｔｏｂ」８２０に関して図８に概略的に示されている。同図の印刷ファイル８０１は、ＢＢＣ（バーコード・オブジェクト開始（Begin Bar Code Object））、ＢＧＲ（グラフィックス・オブジェクト開始（Begin Graphics Object））、ＢＩＭ（イメージ・オブジェクト開始（Begin Image Object））、またはＢＯＣ（オブジェクト・コンテナ開始（Begin Object Container））のいずれかの構造化フィールド８０２と、ＥＢＣ（バーコード・オブジェクト終了（End Bar Code Object））、ＥＧＲ（グラフィックス・オブジェクト終了（End Graphics Object））、ＥＩＭ（イメージ・オブジェクト終了（End Image Object））、またはＥＯＣ（オブジェクト・コンテナ終了（End Object Container））のいずれかの構造化フィールド８０３とをそれぞれ含む開始／終了対によって定義されるデータ・オブジェクト・コンポーネントを含む。ＢＢＣ／ＢＧＲ／ＢＩＭ／ＢＯＣ構造化フィールドのあとには、ＢＯＧ（オブジェクト環境グループ開始）構造化フィールド８０４とＥＯＧ（オブジェクト環境グループ終了）構造化フィールド８０５とを含む開始／終了対によって定義されるオブジェクト環境グループが続く。オブジェクト環境グループ（ＯＥＧ）構造化フィールド内にはＭＤＲ（マップ・データ・リソース）構造化フィールド８０６が含まれ、そのフィールドで、Ｘ‘０２’トリプレット８０７はＣＭＲ「ｃｍｒｄａｔｏｂ」の名前を指定し、Ｘ‘１０’トリプレット８０８はＭＤＲがＣＭＲを参照することを指定し、Ｘ‘９１’トリプレット８０９はＣＭＲが監査ＣＭＲであることと、ＣＭＲの範囲がデータ・オブジェクトであることの両方を指定する。この場合、同図には示されていないが、ＭＤＲはそのＭＤＲを含むページ／オーバーレイ・コンポーネントのアクティブ環境グループ（ＡＥＧ）にも含まれていなければならないことに留意されたい。
【００６４】
代わって、たとえば、データ・オブジェクトがインクルード・オブジェクト（ＩＯＢ：Include Object）構造化フィールドを有するページ上に含まれる場合、ＩＯＢはＣＭＲをそのオブジェクトに関連付けることができる。これは、データ・オブジェクトＣＭＲ「ｃｍｒｄａｔｏｂ」９２０に関して図９に概略的に示されている。同図の印刷ファイル９０１は、ＢＰＧ（ページ開始）またはＢＭＯ（オーバーレイ開始）のいずれか一方の構造化フィールド９０２とＥＰＧ（ページ終了）またはＥＭＯ（オーバーレイ終了）のいずれか一方の構造化フィールド９０３とをそれぞれ含む開始／終了対によって定義されるページ／オーバーレイ・コンポーネントを含む。ページ／オーバーレイのあとには、ＢＡＧ（アクティブ環境グループ開始）構造化フィールド９０４とＥＡＧ（アクティブ環境グループ終了）構造化フィールド９０５とを含む開始／終了対によって定義されるアクティブ環境グループが続く。さらに、ＢＰＧ／ＢＭＯ構造化フィールドは、ＦＱＮタイプＸ‘０１’を使用するＸ‘０２’トリプレット９０７とＸ‘１０’トリプレット９０８により「ｅｓｐｏｌｏｇｏ」データ・オブジェクトを定義するインクルード・オブジェクト（ＩＯＢ）構造化フィールド９０６を有するデータ・オブジェクトを含む。次に、このデータ・オブジェクトは、ＩＯＢ構造化フィールド９０６において、ＦＱＮタイプＸ‘ＤＥ’を使用するＸ‘０２’トリプレット９０９でＣＭＲ「ｃｍｒｄａｔｏｂ」の名前と、Ｘ‘９１’トリプレット９１０でそのＣＭＲの処理モードおよび範囲とをさらに指定することにより、ＣＭＲに関連付けられる。この場合、同図には示されていないが、同じ情報を有するＭＤＲはそのＩＯＢ構造化フィールドを含むページ／オーバーレイ・コンポーネントのアクティブ環境グループ（ＡＥＧ）にも組み込まれていなければならないことに留意されたい。この組み込み（関連）は、オブジェクト内からＣＭＲへの参照がまったく存在しない暗黙的なものにするか、ＣＭＲがローカルＩＤ（ＬＩＤ）によってオブジェクト内から参照される明示的なものにすることができ、このローカルＩＤはＦＱＮタイプ「ＢＥ」トリプレットによりＩＯＢ上のＣＭＲ参照に結合されることにさらに留意されたい。
【００６５】
データ・オブジェクト・コンポーネントに関連するＣＭＲは任意選択で、ＣＭＲ名に代わるものとしてＣＭＲに関連するローカルＩＤ（ＬＩＤ）で明示的に参照することもできることに留意されたい。この場合、ＬＩＤは、データ・オブジェクトによって確立された規則により、データ・オブジェクト内で参照される。たとえば、ＬＩＤは、ＩＯＣＡ  ＦＳ４５オブジェクト内のイメージ・タイル（image tile）内から呼び出される可能性があるであろう。この場合、ＣＭＲは完全なデータ・オブジェクトに適用されない可能性があり、スコーピング規則はデータ・オブジェクト（この場合はＩＯＣＡ  ＦＳ４５）によって定義される。ＬＩＤを使用してデータ・オブジェクト内でＣＭＲが明示的に呼び出される場合、関連データ・オブジェクト・コンポーネントのＯＥＧ内のＭＤＲ内のＣＭＲ名にそのＬＩＤをマッピングしなければならないか、またはＬＩＤを指定し、ＣＭＲに関するＦＱＮタイプＸ‘ＤＥ’の直後に続くＦＱＮタイプＸ‘ＢＥ’を有するＸ‘０２’トリプレットを使用して、データ・オブジェクトを含むＩＯＢ上でそのＬＩＤを参照しなければならない。
【００６６】
プリント・サーバは、ＭＯ：ＤＣＡ−Ｐ文書内の外部ＣＭＲへの参照を処理する場合、ＣＭＲについて指定された名前を使用して、ＣＭＲ  ＲＡＴ内の適切な項目を見つける。ＲＡＴ項目は、ＣＭＲ参照名（ＣＭＲ名）をＣＭＲのファイル名にマッピングし、ＣＭＲを処理するために必要なその他のパラメータにマッピングする。また、ＲＡＴ項目は、ＲＡＴ項目が関係があるＣＭＲの代わりに使用しなければならないその他の装置固有ＣＭＲにＣＭＲ参照をマッピングすることもできる。
【００６７】
本発明の好ましい実施形態では、ＣＲＭに使用されるＲＡＴは、ＭＯ：ＤＣＡ  ＴｒｕｅＴｙｐｅフォントＲＡＴに類似しているが、「ＩＢＭ＿ＣｏｌｏｒＭａｎａｇｅｍｅｎｔＲｅｓｏｕｒｃｅ．ｒａｔ」というファイル名を有する個別テーブルである。参照されるＣＭＲに関するＲＡＴ項目は、リピーティング・グループ（ＲＧ）により構文的に定義される。各ＲＧは、長さと、ヘッダと、処理情報を指定する１つまたは複数の自己識別型テーブル・ベクトル（ＴＶ）とを含む。ヘッダは、ＣＭＲに関する汎用オブジェクトタイプＯＩＤと、ＣＭＲ  ＲＡＴ  ＲＧに固有の１組のフラグを指定する。ＴＶは、ＭＯ：ＤＣＡトリプレットと同様のものであり、それぞれのタイプによって区別される。以下のＴＶが定義される。
ＣＭＲ名ＴＶ：ＣＭＲを参照するために使用されるＣＭＲ名を指定するものであり、この名前はＲＡＴへのインデックスとして使用される。
ファイル名ＴＶ：それによりＣＭＲがインストールされるファイル名を指定するものである。
ＣＭＲ  ＯＩＤ  ＴＶ：プリンタによってＣＭＲを収集できるＣＭＲオブジェクトＯＩＤを指定するものである。このＯＩＤは、設計済みアルゴリズム、たとえば、完全なオブジェクトのＭＤ−５チェックサムを使用して計算され、ＣＭＲを固有に識別する。
装置固有ＣＭＲ  ＴＶ：参照されるＣＭＲにマッピングされる装置固有ＣＭＲのＣＭＲ名を指定するものであり、このＴＶは、複数回指定することができる。装置タイプはＣＭＲ名から導くことができる。
【００６８】
ＲＡＴ項目（エントリー）のこの構造により、データ・ストリーム内で参照される装置独立ＣＭＲを装置固有ＣＭＲで置き換えることができる。これは、１つまたは複数の装置固有ＣＭＲにＣＭＲ名をマッピングするために使用される１つまたは複数の装置固有ＣＭＲ  ＴＶをＲＡＴ  ＲＧが含むことができるからである。これにより、ターゲット装置タイプを把握しているプリント・サーバは、データ・ストリーム内で参照されるＣＭＲの代わりに使用するための１つまたは複数の適切なＣＭＲを選択することができる。装置固有ＣＭＲが関係がある装置は、ＣＭＲリソース名に指定され、次にそのＣＭＲリソース名を使用してＲＡＴにアクセスし直し、ファイル名およびそのＣＭＲに関するその他の処理情報を検出する。
【００６９】
しかし、プリント・サーバがＲＡＴ内のＣＭＲを検索している場合、その参照が監査ＣＭＲへのものであるかまたは命令ＣＭＲへのものであるかは分かっている。というのは、これはＭＯ：ＤＣＡ−Ｐ印刷ファイル内に指定されたＣＭＲへの参照に指定されるからである。その参照が監査ＣＭＲへのものである場合、ＣＭＲ名と一致することが検出された第１のＣＭＲが使用され、そのＲＡＴ  ＲＧ内で指定される可能性のある他のすべてのＣＭＲは無視される。
【００７０】
代わって、その参照が装置独立である命令ＣＭＲへのものである場合、プリンタ・サーバは、出力装置タイプが与えられた装置固有ＣＭＲを識別するＴＶについてＲＡＴ  ＲＧを検索する。適切な装置固有ＣＭＲが検出された場合、それが使用されるが、いかなるＴＶも検出されない場合、装置独立ＣＭＲが使用されることになる。その参照が装置固有である命令ＣＭＲへのものである場合、それはそのまま使用される。
【００７１】
ＲＧに指定されている装置固有ＣＭＲは、ＲＡＴのインデックスを付け直すために装置固有名ＴＶに指定された名前を使用して見つけられる。一致するＲＡＴ  ＲＧが検出されると、ファイル名またはオブジェクトＯＩＤあるいはその両方を使用して、装置固有ＣＭＲを見つけ処理する。
【００７２】
ＣＭＲはＭＯ：ＤＣＡ−Ｐ印刷ファイルの一部として印刷ファイル・レベルのリソース・グループでも伝達できることに留意されたい。このようなＣＭＲは、印刷ファイルに含まれており、したがって、ＣＭＲ  ＲＡＴを使用してそれを検索する必要がまったくないので、インラインＣＭＲと呼ばれる。この場合、ＣＭＲはまずＢＯＣ／ＥＯＣオブジェクト・コンテナ内で折り返され、次にそれがＢＲＳ／ＥＲＳリソース・エンベロープ内で折り返される。ＭＯ：ＤＣＡ−Ｐ文書コンポーネント内でＣＲＭ参照を解決する場合、プリント・サーバはまず、インラインＣＭＲについて印刷ファイル・リソース・グループを検索しなければならない。存在する場合、そのＣＭＲ名は、リソース・コンテナのＢＲＳ構造化フィールド上に指定されたＣＭＲ名と突き合わされる。
一致がまったく検出されない場合、検索はＲＡＴについて継続する。一致（match）が検出された場合、そのＣＭＲが装置独立のものであるか装置固有のものであるかを判断するためにＣＭＲヘッダが検査される。
装置固有ＣＭＲが検出された場合、それが使用される。（インライン装置固有ＣＭＲは、ＢＯＣ／ＥＯＣ内で装置固有ＣＭＲを折り返し、次に装置独立ＣＭＲ名と一致するＢＲＳ／ＥＲＳでそのコンテナを伝達することにより、装置独立ＣＭＲへのデータ・ストリーム参照を用いて呼び出すことができることに留意されたい。）
装置独立ＣＭＲが検出され、それが監査ＣＭＲである場合、それが使用される。
ＣＭＲが装置独立のものであり、それが命令ＣＭＲである場合、検索はＲＡＴについて継続する。ＲＡＴがこのＣＭＲ参照に関する装置依存ＣＭＲを指定する場合、それらが使用され、指定しない場合、インラインＣＭＲが使用される。
【００７３】
適切な１つまたは複数のＣＭＲを見つけると、プリント・サーバはＭＯ：ＤＣＡ−Ｐ印刷ファイルに関するＩＰＤＳ（高機能プリンタ・データ・ストリーム）コマンド・ストリームを生成する。ＩＰＤＳコマンド・ストリームでは、他のすべてのＩＰＤＳリソースのようにＣＭＲが起動され停止される。ホスト割当てＩＤ（ＨＡＩＤ：Host-Assigned ID）は起動中に割り当てられるが、ＣＭＲは明示的に呼び出されるまで使用されない。
【００７４】
ＣＭＲ呼出しに関しては、ＩＰＤＳアーキテクチャは状態マシン（state machine）の概念を含み、そこでプリンタはＩＰＤＳコマンド・ストリームからの様々なコマンドを処理し、各コマンドは特定の状態内でのみ許可されるかまたは現在の状態から新しい状態への遷移を引き起こすことに留意されたい。これらの状態は事前定義され、１組の関連プリンタ機能を表し、たとえば、「ページ状態（page state）」はページを構築するための作業のすべてが実行される状態であり、「グラフィックス状態（graphics state）」はグラフィック描画が行われる状態であり、「ホーム状態（home state）」はほとんどのプリンタ制御機能が行われる開始状態である。
【００７５】
本発明の好ましい実施形態では、ＣＭＲが呼び出される方法は、ＩＰＤＳ設計済み状態マシンの状態応じて異なる。「ホーム状態」レベルでは、ＩＣＭＲコマンドを使用してＣＭＲを呼び出すことができる。代わって、「ページ状態」または「オブジェクト状態（object state）」では、処理中のコンポーネントに関連付けられるＩＰＤＳコマンド上で指定されたＩＣＭＲトリプレットを使用してＣＭＲを呼び出す。
【００７６】
ＩＣＭＲコマンドおよびＩＣＭＲトリプレットは、ＣＭＲが起動されたときに割り当てられたホスト割当てＩＤを使用して、また、任意選択で、ＣＭＲがオブジェクトの一部分のみに関連付けられている場合は内部ＩＤを使用して、呼出し中のＣＭＲを識別する。さらに、ＩＣＭＲコマンドは、前のＩＣＭＲコマンドによって呼び出されたすべてのＣＭＲが呼び出されてはならないことを示すリセット・フラグを提供する。
【００７７】
ＩＰＤＳコマンド・ストリーム階層の種々のレベルにおけるＣＭＲの対話（interaction）は、１組の所定の規則に基づくものである。たとえば、本発明の好ましい実施形態では、任意の所与の時間に特定のタイプの単一ＣＭＲのみが使用中である可能性がある。所与のレベルまたは状態でＣＭＲが呼び出されると、それは、そのレベルまたは状態のみについて、より低いレベルで現在使用中の同じタイプの任意のＣＭＲを置き換える。たとえば、カラー変換ＣＭＲ（ｘ）が「ホーム状態」で呼び出され、カラー変換ＣＭＲ（ｙ）が「グラフィックス状態」でＩＯＣＡオブジェクトについて呼び出された場合、カラー変換ＣＭＲ（ｙ）はＩＯＣＡオブジェクト処理の期間またはＩＯＣＡオブジェクト状態の期間の間、使用中のカラー変換ＣＭＲになる。ＩＯＣＡオブジェクト状態が終了すると、カラー変換ＣＭＲ（ｘ）はもう一度、使用中のカラー変換ＣＭＲになる。
【００７８】
たとえば、正式なＣＭＲ使用階層については、以下のように簡単に説明することができる。
印刷ファイルまたは文書レベルの呼出しは、「ＣＭＲ呼出し」（ＩＣＭＲ：Invoke CMR）と呼ばれるホーム状態ＩＰＤＳコマンドによって実施される。このコマンドは、ＨＡＩＤによってＣＭＲを呼び出し、ＣＭＲ階層内のより低いレベルで適切なＣＭＲがまったく指定されていない場合に必ずそのＣＭＲが適切なカラー・データとともに使用されることを指定する。
ページまたはオーバーレイ・レベルの呼出しは、ページまたはオーバーレイに関する論理ページ記述子（Logical-Page-Descriptor）コマンド上またはオーバーレイ・インクルード（Include-Overlay）コマンド上に指定されたＣＭＲ呼出しトリプレットによって実施される。
データ・オブジェクト・レベルの呼出しは、データ・オブジェクトを開始するコマンド上またはページまたはオーバーレイ内にデータ・オブジェクトを含めるコマンド（データ・オブジェクト・インクルード（Include-Data-Object）コマンド）上に指定されたＣＭＲ呼出しトリプレットによって実施される。この場合、ＣＭＲ呼出しトリプレットは、内部リソースＩＤをＣＭＲに割り当てることができる。この内部リソースＩＤは、データ・オブジェクトの一部分に関するＣＭＲを明示的に要求するためにそのデータ・オブジェクト内で使用される。
プリンタ・デフォルトＣＭＲは、必要なタイプのホスト呼出しＣＭＲがまったく提供されないときに使用するために用意される。
【００７９】
本発明の好ましい実施形態のＣＭＲスコーピング（scoping）規則では、どのＣＭＲを使用するかを選択するときにプリンタなどの出力装置がＣＭＲ使用階層を適用することを要求している。たとえば、ＦｏｒｍＤｅｆでは、文書内のすべてのＣＭＹＫ（シアン・マゼンタ・イエロー・ブラック）カラーを処理するためにＩｎｆｏｐｒｉｎｔ  Ｃｏｌｏｒ  １３０＋カラー変換ＣＭＲが監査ＣＭＲとして使用されることを指定することができる。その文書内では、ＩＯＣＡ  ＦＳ４５は、カラー・プリンタ「ｘ」用のＣＭＹＫで生成され、適切なカラー変換監査ＣＭＲでタグが付けられている可能性がある。本発明の好ましい実施形態のＣＭＲ使用階層により、ＦＳ４５が処理されると、プリンタは、現在の１３０＋カラー変換ＣＭＲをサスペンドし、ＦＳ４５期間の間、カラー・プリンタ「ｘ」のＣＭＲを呼び出す。ＦＳ４５処理が完了すると、プリンタは「現行」カラー変換ＣＭＲとして１３０＋ＣＭＲを再開する。
【００８０】
ＩＰＤＳアーキテクチャ内では、カラー・マネージメント・リソース（ＣＭＲ）は非プレゼンテーション・オブジェクト・コンテナ・リソースとして取り扱われることに留意されたい。ＣＭＲは、ＷＯＣＣ／ＷＯＣ／終了コマンド・シーケンスを使用してホーム状態でダウンロードすることができるが、ＣＭＲは、他のＩＰＤＳコマンド（および、おそらく内部リソースＩＤ）によって呼び出されるまでカラー・データとともに使用されることはない。
【００８１】
ＩＣＭＲコマンドをサポートするかまたは他のコマンドで指定されたＩＣＭＲトリプレットをサポートするＩＰＤＳプリンタは、そのプリンタとともに使用できる各ＣＭＲタイプごとにデフォルトＣＭＲを有する。プリンタ・デフォルトＣＭＲは、そのプリンタが初期化または再初期化されるとすぐに有効になる（自動的に呼び出される）。
【００８２】
ＩＣＭＲコマンドまたはトリプレットがＩＰＤＳプリンタによって処理されると、そのプリンタはまず任意の指定のリセットを実行する。次に、各ＩＣＭＲ項目が次々と処理され、１つの項目が１つの特定のＣＭＲタイプに関する１つの特定のＣＭＲを識別する。この新たに呼び出されたＣＭＲは、そのタイプのプリンタ・デフォルトＣＭＲを一時的に置き換え、「そのタイプの現行ＣＭＲ」になる。しかし、内部リソースＩＤがＩＣＭＲ項目内で使用されると、各ＣＭＲタイプは以下のようにいくつかの呼び出されたＣＭＲを有することができる。
【００８３】
内部リソースＩＤを指定する項目を含まない各ＩＣＭＲにより、そのＣＭＲは呼び出され、そのタイプの現行ＣＭＲになる。次に、現行ＣＭＲは、このタイプのＣＭＲを使用し、内部リソースＩＤを明示的に使用せず、階層内のより低いレベルで呼び出されたタイプの異なるＣＭＲを持っていない、すべてのカラー・オブジェクトに使用される。
【００８４】
内部リソースＩＤを有する項目を含む各ＩＣＭＲにより、そのＣＭＲは呼び出され、その内部リソースＩＤに関連付けられる。しかし、このＣＭＲは、特定の内部リソースＩＤが呼び出されるまで後続カラー・データとともに使用されることはない。各サポート対象ＣＭＲタイプごとに、１つの現行ＣＭＲと、同時に呼び出される０個またはそれ以上の「内部リソースＩＤ付きＣＭＲ」が存在する可能性がある。たとえば、ＩＯＣＡでは、ＩＯＣＡローカルＩＤが内部リソースＩＤとして使用され、ローカルＩＤ付きＣＭＲ（CMR-with-local-ID）の使用法および範囲はＩＯＣＡアーキテクチャによって定義される。
【００８５】
印刷ファイル全体については、いくつかのＣＭＲを呼び出し、それがアクティブのままでいる必要がある。ＩＰＤＳ環境の場合、このタイプの呼出しは、その範囲が「リセットまで（until reset）」であるＩＣＭＲコマンドにより、印刷ファイルの開始時に実施される。印刷ファイルの終了時（または次の印刷ファイルの開始時に）、プリント・サーバはこのタイプのＣＭＲ呼出しをリセットして、プリンタ・デフォルトに戻さなければならない。同じように、ＣＭＲは文書レベルで管理することができる。
【００８６】
特定のプレゼンテーション・オブジェクトについては、いくつかのＣＭＲを呼び出し、それがアクティブのままでいる必要がある。ＩＰＤＳ環境の場合、このタイプの呼出しは、その範囲が「オブジェクトの終わりまで（until end of object）」であるＩＣＭＲコマンドにより、プレゼンテーション・オブジェクトの開始時に実施される。したがって、プレゼンテーション・オブジェクトの処理が開始されると、現在範囲内の任意のＣＭＲがサスペンドされ、プレゼンテーション・オブジェクト用のＣＭＲが呼び出され、現行のものになる。プレゼンテーション・オブジェクトの処理が完了すると、プレゼンテーション・オブジェクトＣＭＲの範囲が終了し、サスペンドされていたすべてのＣＭＲが再開される。
【００８７】
内部リソースＩＤに関連付けられるＣＭＲはプレゼンテーション・オブジェクト内で使用され、そのオブジェクト内のそれぞれの特定の範囲はプレゼンテーション・オブジェクトによって定義される。
【００８８】
特定のページまたはオーバーレイについては、いくつかのＣＭＲを呼び出し、それがアクティブのままでいる必要がある。ＩＰＤＳ環境の場合、このタイプの呼出しは、その範囲が「ページまたはオーバーレイの終わりまで（until end of page or overlay）」であるＩＣＭＲコマンドによりページまたはオーバーレイの開始時に、ＬＰＤコマンド上のＩＣＭＲトリプレットによるページまたはオーバーレイの開始前に実施される。プリンタが次のＥＰコマンドを検出すると、「ページまたはオーバーレイの終わりまで」という範囲のすべてのＣＭＲは呼び出されなくなり、前の現行ＣＭＲ、または同じ内部リソースＩＤを有し前に呼び出されたＣＭＲ、またはそのタイプのプリンタ・デフォルトＣＭＲは、「ページまたはオーバーレイの終わりまで」という範囲のＣＭＲを置き換える。
【００８９】
ＣＭＲは、プリンタ常駐であるか、または収集する（取り込む）こともできる。この場合、それらは、リソース起動（ＡＲ：Activate Resource）コマンドを介して起動されるが、ダウンロードの場合のように、ＣＭＲを呼び出すためには他のＩＰＤＳコマンドが必要である。オブジェクトＯＩＤは常駐（または収集された）リソースを識別するために使用され、そのオブジェクトＯＩＤはたとえば、ＭＤ−ｒチェックサムなどの設計済みアルゴリズムを使用してＣＭＲインストーラによって生成され、そのＣＭＲを固有に識別する。
【００９０】
ＣＭＲは、データ・オブジェクト・リソース停止（ＤＤＯＲ：Deactivate Data Object Resource）コマンドを介して停止（非活動化）される。
【００９１】
特定のＣＭＲ対応（使用可能）ＩＰＤＳプリンタは、様々なタイプのＣＭＲを理解し使用することができるが、特定のプリンタによって理解または使用されないＣＭＲタイプが定義される可能性がある。たとえば、あるプリンタは、ＸＯＨ−ＯＰＣ応答でサポート対象ＣＭＲタイプのリストを返すことができ、サポート対象外ＣＭＲタイプがダウンロードされる場合にＮＡＣＫを発行することになる。不要な「サポート対象外ＣＭＲタイプ」ＮＡＣＫを防止し、ＣＭＲ処理をより効率的なものにするために、ホスト・プレゼンテーション・サービス・プログラムは、ＣＭＲをダウンロードする前にサポート対象ＣＭＲタイプのリストをチェックしなければならない。
【００９２】
ＣＭＲ記述子として機能するトリプレットは、ＭＯ：ＤＣＡ  ＭＤＲ構造化フィールド内に指定され、そのＣＭＲに関する制御情報を伝達する。特に、これは、そのＣＭＲを監査ＣＭＲとして処理するか命令ＣＭＲとして処理するかを識別する。このトリプレットは、このＣＭＲオブジェクトを起動するＡＲまたはＷＯＣＣコマンド内にコピーされる。プリンタは、このトリプレットによって示される通りにＣＭＲを使用しなければならない。
【００９３】
印刷サービス・プログラムがサポート対象外ＣＭＲをフィルタで除去できるようにするために（それにより、パフォーマンスを改善する）、ＸＯＨ−ＯＰＣ応答の自己定義フィールドは、サポート対象ＣＭＲタイプのリストを提供できるであろう。
【００９４】
ＩＰＤＳアーキテクチャでは、エラーは３バイトの例外（exception）ＩＤによって識別されるが、その１バイト目はエラー・クラスのために事前定義されている。ＣＭＲオブジェクト内で検出されたエラーについては、１バイト目は仕様チェックを示すためにＸ‘０２’である必要があり、次の２バイトはエラー固有のものである。２バイト目はＸ‘５Ｄ’という値でこれがＣＭＲオブジェクト・エラーであることを示し、３バイト目はＣＭＲ例外コード（ＣＭＲアーキテクチャ内で定義される）を含む。
【００９５】
このタイプの例外ＩＤの場合、ＣＭＲタグＩＤ値を含む特殊な２バイト・フィールド（センス・バイト１６〜１７）が存在する。
【００９６】
したがって、ＩＰＤＳ  ＮＡＣＫで報告されるＣＭＲオブジェクト・エラーはＸ‘０２５Ｄ．．ｅｅ’の形になり、“ｅｅ”はＣＭＲ例外コードであり、タグＩＤ値はバイト１６〜１７に入っている。たとえば、以下のようになる。
ＥＣ−０８０００５は、センス・バイト１６〜１７にＸ‘０８００’が入っているＸ‘０２５Ｄ．．０５’としてＩＰＤＳコマンド・ストリームで報告されるであろう。
ＥＣ−ＦＦＦＦ０Ｅは、センス・バイト１６〜１７にＸ‘ＦＦＦＦ’が入っているＸ‘０２５Ｄ．．０Ｅ’としてＩＰＤＳコマンド・ストリームで報告されるであろう。
【００９７】
ＣＭＲを使用するシステムでは、カスタマがカラー・リソースをインストールし管理できるようにするメカニズムを有することが望ましい。基本機能（ファシリティ）はＣＭＲインストーラにすることができる。たとえば、ＡＦＰシステム用のＣＭＲインストーラは、Ｗｉｎｄｏｗｓ（Ｒ）システム上で実行され、ｚ／ＯＳ（Ｒ）、ＯＳ／４００（Ｒ）、ＡＩＸ（Ｒ）、およびＷｉｎｄｏｗｓ（Ｒ）システム上のプリント・サーバ用のリソース・ライブラリにＣＭＲをインストールすることができる。ＣＭＲインストーラは、ＣＭＲをサーバにアップロードするための機能、これらのリソースを使用できるようにリソース・アクセス・テーブル（ＲＡＴ）またはそれと同等のものを更新するための機能、さらにカラー・マネージメント・リソースをカラー・オブジェクトに関連付けるための機能を提供することになる。
【００９８】
ＣＭＲインストーラは、カラー・マネージメント・リソースのリストを取り、それをサーバにコピーすることになる。リソースはファイルであり、サーバ・リソース検索パスによって指定された位置に記憶されることになる。ユーザは、カスタム位置も指定することができる。ＣＭＲは常にＲＡＴを使用してインストールされ、そのＣＭＲによりＣＭＲリソース名（ＣＭＲ名）をＣＭＲのファイル名におよびＣＭＲを処理するために必要な他のパラメータにマッピングするＲＡＴ項目が構築される。この項目は、ＣＭＲ参照に対応するファイルの代わりに使用しなければならない他の装置固有ＣＭＲにもＣＭＲ参照をマッピングすることができる。
【００９９】
もう１つの機能は、ページ上に印刷すべき実際のカラー・データ・オブジェクト・リソース、すなわち、ＩＯＣＡ  ＦＳ４５およびＰＤＦなどのカラー・オブジェクトをインストールすることもできるリソース・オブジェクト・インストーラである。カラー・オブジェクトの名前（文書内のオブジェクトを参照するために使用される名前でもある）を、オブジェクトが記憶されるときのファイル名にマッピングするＲＡＴ項目が構築される。このＲＡＴ項目は、任意選択で、カラー・オブジェクトを処理するために使用されるＣＭＲを指し示すことができる。たとえば、ＴＩＦＦイメージは、たとえば、特定のＲＧＢカラー・スペースを定義する入力カラー・スペースを示す監査ＣＭＲを指し示す。加えて、ＲＡＴは、そのイメージ関する「プレゼンテーション・ヒント（presentation hints）」ＣＭＲを指し示すことができる。このような「プレゼンテーション・ヒント」は、たとえば、「相対比色（relative colorimetric）」などのＩＣＣレンダリング意図を指定することができる。
【０１００】
様々なソースからのカラー・オブジェクトを処理するシステムでは、主な問題の１つは、オブジェクト内に存在するカラーの性質を決定することである。たとえば、デジタル・カメラはＲＧＢ  ＪＰＥＧファイルを生成することができ、ＲＧＢは装置固有のものである。共通カラー・エンジン（ＣＣＥ）は、オブジェクト・インストーラによって呼び出すことができるコンポーネントであり、オブジェクトを分析し、その能力の及ぶ限り、カラー・データの特性を推論する。
【０１０１】
上記の例の場合、ＣＣＥは、ＪＰＥＧ  ＡＰＰタグを分析することができ、そこにカメラのメーカ名およびモデルを示すコメントを検出できる場合が多い。この特定のモデルがリソース・オブジェクト・インストーラに知られている場合、関連のＩＣＣプロファイルを生成し、カラー変換ＣＭＲ内にパッケージ化し、イメージに関連付けることができる。
【０１０２】
このヒューリスティック・カラー特性決定に加えて、ＩＣＣプロファイルなどの欠落カラー情報をユーザが指定するための方法も存在することになる。
【０１０３】
オブジェクトに関連するカラー・マネージメント・リソースが決定されると、リソース・オブジェクト・インストーラは、サーバ・リソース・ライブラリにそのオブジェクトをインストールすることができ、そのオブジェクトに関するＲＡＴ項目を使用してそれにＣＭＲを関連付けることができる。代わって、そのオブジェクトはオブジェクト・コンテナ内で折り返す（wrap）ことができ、ＣＭＲはＭＯ：ＤＣＡラッパ（wrapper）内から参照することができる。後者の場合、オブジェクトは「インストール」する必要はなく、印刷ファイル内にそのまま配置することができるであろう。
【０１０４】
図１０は、本発明の好ましい実施形態によりＣＭＲを定義するためのデータ構造１０００を示す図である。同図では、ＣＭＲ定義は４バイトの長さフィールドから始まり、そのフィールドはこの長さフィールドを含む構造の長さを定義する。これのあとには、ＣＭＲのタイプ、たとえば、ハーフトーン、較正曲線、カラー変換、およびリンク・カラー変換のうちの１つを示す２バイト・フィールドが続く。このデータ構造は、ＣＭＲが装置独立のものである場合にビット０が設定される１バイトのフラグ・フィールドと、１バイトの名前長のあとに指定された長さのＣＭＲ名が続く、２つの名前フィールドとをさらに含む。最後に、この名前のあとに、指定のタイプに応じてカラー・マネージメント情報を含むＣＭＲデータが続く。
【０１０５】
本発明はＡＦＰシステムに関して厳密に表されているが、ＣＭＲメカニズムがその他のデータ・ストリーム環境にも適用できることは当業者には明白になることに留意されたい。最も著しいことに、本発明は、それを実現するサーバおよび装置にとって余分な機能性が使用可能になるようにＰｏｓｔＳｃｒｉｐｔおよびＰＤＦ印刷に適用することができ、データ・ストリームは汎用装置上で正確に（しかし、おそらくカラー精度は低い）印刷することになる。
【図面の簡単な説明】
【０１０６】
【図１】本発明の好ましい実施形態が有利に適用されるＡＦＰ環境例の概略図である。
【図２】混合オブジェクト：文書コンテンツ・アーキテクチャ−プレゼンテーション（ＭＯ：ＤＣＡ−Ｐ）文書を含む主なコンポーネントの階層を例示する図である。
【図３】カラー装置およびモノクロ装置上で整合した出力を生成するために使用されるカラー・マネージメント・システムを含むＡＦＰ環境例の概略図である。
【図４】ＭＯ：ＤＣＡ−Ｐ文書コンポーネントに関するカラー・マネージメント・リソースを参照するときにＭＤＲ構造化フィールドで使用できるトリプレットを例示する図である。
【図５】ＭＯ：ＤＣＡ−Ｐ書式定義（ＦｏｒｍＤｅｆ）から参照されるＣＭＲ例が印刷ファイル内のすべての文書にどのように関連付けられるかを示す概略図である。
【図６】ＭＯ：ＤＣＡ−Ｐ書式定義から参照されるＣＭＲ例が印刷ファイル内の特定の文書にどのように関連付けられるかを示す概略図である。
【図７】ＭＯ：ＤＣＡ−Ｐページ／オーバーレイから参照されるＣＭＲ例が印刷ファイル内の文書の特定のページ／オーバーレイにどのように関連付けられるかを示す概略図である。
【図８】ＭＯ：ＤＣＡ−Ｐデータ・オブジェクトから参照されるＣＭＲ例が印刷ファイル内の文書の特定のデータ・オブジェクトに関連付けられる２通りの方法のうちの一方を示す概略図である。
【図９】ＭＯ：ＤＣＡ−Ｐデータ・オブジェクトから参照されるＣＭＲ例が印刷ファイル内の文書の特定のデータ・オブジェクトに関連付けられる２通りの方法のうちの一方を示す概略図である。
【図１０】ＣＭＲを定義するために使用されるデータ構造を例示する図である。
【図１】
2007536656.tif 000003
【図２】
2007536656.tif 000004
【図３】
2007536656.tif 000005
【図４】
2007536656.tif 000006
【図５】
2007536656.tif 000007
【図６】
2007536656.tif 000008
【図７】
2007536656.tif 000009
【図８】
2007536656.tif 000010
【図９】
2007536656.tif 000011
【図１０】
2007536656.tif 000012
【国際調査報告】
2007536656.tif 000013
2007536656.tif 000014