説明

情報処理装置

【課題】 実質的に如何なるプリンタ及びオペレーティングシステムに対しても実現でき、それにより、コンピュータシステムによって利用されているオペレーティングシステムにかかわらず、プリンタドライバがプリンタとインタフェース可能な、汎用プリンタ記述データファイル(「UPDF」)のデータ構造を定義する。
【解決手段】 いくつかのオペレーティングシステムのうち何れか1つを利用しているコンピュータシステムにおいて、プリンタドライバを構成し、それにより、コンピュータシステムによりどのオペレーティングシステムが利用されているかにかかわらず、プリンタドライバがコンピュータシステムのアプリケーションプログラムとプリンタとの間に必要なデータ・制御インタフェースを形成できるようにする際に使用するための特定プリンタ記述データを格納する汎用プリンタ記述ファイルのデータ構造151。

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、いくつかのオペレーティングシステムのうち何れか1つを利用しているコンピュータシステムにおいて、プリンタドライバを構成し、それにより、プリンタドライバがコンピュータシステムのアプリケーションプログラムとプリンタとの間に必要なインタフェースを形成可能なように使用される汎用プリンタ記述ファイルのデータ構造に関する。
【0002】
【従来の技術】プリンタは、典型的には、一般にプリンタドライバとして知られているソフトウェアモジュールによりコンピュータなどのクライアント機器とインタフェースされている。現在、多くのプリンタドライバは、モノリシックモデルに基づいて複数の異なるプリンタを駆動すべく構成されている。何れか1つの特定のプリンタを駆動するには、そのプリンタに対応するプリンタ記述ファイルがその特定のプリンタを支援するドライバを構成するようにそのドライバに提供されなければならない。プリンタにより支援される能力、機能及び指令などの特定のプリンタに関連する情報が、プリンタドライバを構成するためにそのプリンタドライバによる次のアクセス及び処理のためのプリンタ記述ファイルに格納される。
【0003】適合性の問題のため、異なる汎用プリンタドライバが異なるオペレーティングシステム毎に要求される。このように、Microsoft Windows 95用の汎用プリンタドライバは、Apple Macintoshオペレーティングシステム用の汎用プリンタドライバとは異なるものである。同様に、各々異なるオペレーティングシステムに応じて、異なるプリンタ記述ファイルが要求される。例えば、Microsoft WindowsNTは、一般にGeneric Printer Description(「GPD」)ファイルとして知られているプリンタ記述ファイルフォーマットを利用しており、Appleコンピュータは、一般にPostscript Printer Description(「PPD」)ファイルとして知られているAdobe Systems社で開発された異なるプリンタ記述ファイルフォーマットを利用している。
【0004】また、プリンタメーカーがそれぞれのプリンタ製品シリーズを支援するために、そのメーカー独自のプリンタドライバを開発することも一般に行われている。通常、そのようなメーカー専用のプリンタドライバが開発されるのは、ある特定のオペレーティングシステムで一般に使用されている汎用プリンタドライバでは、そのメーカーのプリンタが支援する機能又はユーザインタフェース能力を完全には実現できないからである。この専用プリンタドライバに応じて、何れか1つの特定のプリンタを支援する専用プリンタドライバの構成のために専用プリンタ記述ファイルも要求される。同様に、各々特定のプリンタのために、異なる専用プリンタ記述ファイルが様々なオペレーティングシステムの各々を支援するために作成されなければならない。
【0005】
【発明が解決しようとする課題】このような構成において、いくつかの問題があることが明らかになっている。第1に、様々なオペレーティングシステムにおいて各々の特定のプリンタを支援するために、多数のプリンタ記述ファイルが必要であるため、それらのプリンタ記述ファイルを作成して実現する際にシステムソフトウェアの開発者やシステム管理者は多大の時間と資源を浪費することになる。第2に、様々なオペレーティングシステムにおける特定のプリンタの支援に必要な複数の異なるプリンタ記述ファイルフォーマットは、特定のプリンタの機能及びユーザインタフェース能力の実現に関して矛盾する傾向がある。第3に、プリンタ記述ファイルが異なるフォーマットをとるために、フォーマット毎に独自の開発ツールと独自の構文解析ツールが必要になり、その結果、開発に長い時間を要し、開発の複雑さとコストが増す。第4に、現時点では、追加のプリンタ特徴や能力に関連する記述データを追加するためにプリンタ記述ファイルを拡張するには、それら新たな特徴及び能力を処理するために対応するプリンタドライバも必ず修正しなければならない。これらの問題があるため、プリンタのユーザに対してプリンタの能力と機能は首尾一貫した形では提示されなくなっている。また、これらの問題により、システムソフトウェア開発時に、プリンタドライバ及びそれらそれぞれのプリンタ記述ファイルを開発し、実現するために、著しく長い開発時間と高いコストが必要である。
【0006】これらの問題を処理するため、インターネットエンジニアリングタスクフォース(IETF)のプリンタワーキンググループ(PWG)は、いわゆる「汎用プリンタ記述ファイルフォーマット」の開発の必要性を説いている。即ち、PWGは適切なファイルフォーマットに必要な機能条件及びその他の条件を記載した、SoftwareRequirements Specificationバージョン0.04を1998年11月12日発行している。しかしながら、適切なファイルフォーマットはまだ提案されていない。
【0007】本発明の目的は、実質的に如何なるプリンタ及びオペレーティングシステムに対しても実現でき、それにより、コンピュータシステムによって利用されているオペレーティングシステムにかかわらず、プリンタドライバがプリンタとインタフェース可能な、汎用プリンタ記述データファイル(「UPDF」)のデータ構造を定義することである。また、本発明の目的は、最初はデータ構造に提供されないプリンタ記述データの追加を可能にするようにデータ構造の拡張可能性を提供することである。これらの目的及びその他の目的、特徴及び利点は本発明によって実現される。
【0008】
【課題を解決するための手段】第1の態様では、本発明は、プリンタに関連した記述データを格納する複数のデータ要素から構成される汎用プリンタデータ構造の定義を提供する。そして、汎用プリンタデータ構造定義の特定プリンタ実施形態が、定義されたデータ構造を特定のプリンタに関連した記述データで埋めることによって作成される。特定プリンタデータ構造は、特定のプリンタとインタフェースすべく構成されたプリンタドライバがアクセス及び処理のためにメモリ領域の中に配置された汎用プリンタ記述ファイルに保持される。
【0009】より詳しくは、汎用プリンタデータ構造は、拡張可能マークアップ言語の使用によって定義される。拡張可能マークアップ言語はプリンタ関連データ要素及び各データ要素を包むスタートタグとエンドタグの使用を含むそれら対応する属性を定義する厳密な構文を有する。また、拡張可能マークアップ言語は厳密な所定の階層データ構造を実現し、このデータ構造により、データ要素とその対応する属性の順序及び相互関係がゆるぎなく定義される。更に、拡張可能マークアップ言語の使用によって所定の汎用プリンタデータ構造定義では提供されないデータ要素の追加が可能になる。
【0010】汎用プリンタ記述ファイルは、汎用プリンタデータ構造定義の特定の実現形態を生成することによって作成される。従って、汎用プリンタ記述ファイルは拡張可能マークアップ言語の構文と厳密に一致していなければならないと共に、データ要素の所定の階層及び汎用プリンタデータ構造の中で定義されている対応する属性とも厳密に一致していなければならない。しかしながら、特定のプリンタ固有の特性や特徴に対応する独特のデータ要素を追加するために特定プリンタ対応データ構造を汎用プリンタデータ特徴定義を越えて拡張することができる。所定のデータ構造定義との一致によって、汎用プリンタ記述ファイルは実質的にどの特定のオペレーティングシステムからも独立したものとなる。従って、本発明によれば、実質的にどのプリンタに対しても拡張可能マークアップ言語を支援するどのオペレーティングシステムにおいても、汎用プリンタ記述ファイルを作成するために使用できる汎用プリンタデータ構造定義が提供される。
【0011】好ましい形態では、汎用プリンタデータ構造定義は、データ要素及びそれらに対応する属性が厳密な階層を成して定義されるように拡張可能マークアップ言語(「XML」)を使用して作成される。XMLに従って、汎用プリンタデータ構造定義は文書型記述(「DTD」)ファイルとして知られているファイルの中に保持される。XMLの構文と、DTDファイルの汎用プリンタデータ構造定義の中におけるデータ要素の構造階層とは、特定のプリンタに対応する汎用プリンタ記述ファイルを作成するときに一致していなければならない。作成後、汎用プリンタ記述ファイルは、実質的にXMLを支援するどのオペレーティングシステム環境においてもプリンタを支援するためのプリンタドライバを構成可能とするために、プリンタドライバによるアクセスに備えてメモリ領域に格納される。
【0012】例えば、汎用プリンタデータ構造定義は、プリンタの能力、特性、特徴及び制御機能などのプリンタ記述データを格納するために、所定の一組のデータ要素とそれらに対応する属性を所定の固定された階層の形態で含むDTDファイルの中で規定される。DTDで定義される汎用プリンタデータ構造を、特定のプリンタを表現するプリンタ記述データで埋めて、その特定のプリンタに関わる汎用プリンタ記述ファイルを作成する。汎用プリンタ記述ファイルの中に新たなデータ要素を追加することにより、汎用プリンタデータ構造定義では規定されていない特定プリンタの追加の特徴又は能力を考慮することができる。汎用プリンタ記述ファイルはメモリ領域の中に格納され、後に、実質的にどのオペレーティングシステムにおいても、汎用プリンタ記述ファイルに記述されている特定のプリンタとインタフェースするようにプリンタドライバを構成するためにアクセスされ、使用される。
【0013】この構成によって、本発明は、実質的に如何なるオペレーティングシステムでも特定のプリンタに対応する汎用プリンタ記述ファイルを作成するのに使用可能である標準化された、階層をなす汎用プリンタ記述データ構造定義を提供する。従って、本発明によれば、複数のオペレーティングシステムで特定のプリンタを支援するために多数のプリンタ記述ファイルを作成する必要性が減少する。
【0014】
【発明の実施の形態】図1は、本発明の実施と関連して使用されるコンピュータ40とプリンタ50の外観を示す図である。コンピュータ40は、好ましくは、MicrosoftのWindows95又はWindows NTなどのウィンドウイング(windowing)環境を有するIBMPCコンパチブルコンピュータなどのパーソナルコンピュータ(以下、「PC」という)から構成されるホストプロセッサ41を含む。コンピュータ40には、表示画面42を含む表示装置43と、テキストデータやユーザからの指令を入力するためのキーボード46と、ポインティングデバイス47とが設けられている。好ましくは、ポインティングデバイス47は、表示画面42に表示されるオブジェクトを指示したり、操作したりするためのマウスである。
【0015】コンピュータ40は、コンピュータディスク45及び/又はフロッピー(登録商標)ディスクドライブ44のようなコンピュータ読み取り可能な記憶媒体を含む。フロッピーディスクドライブ44は、コンピュータ40が着脱自在の記憶媒体に格納されたデータ、アプリケーションプログラムなどの情報をアクセスできるようにするための手段を構成する。コンピュータ40が着脱自在のCD−ROM媒体に格納された情報をアクセスできるようにするための同様なCD−ROMインタフェース(図示せず)をコンピュータ40に設けても良い。
【0016】プリンタ50は、紙又は透明フィルムなどの記録媒体上に画像を形成する、レーザプリンタ又はインクジェットプリンタなどのプリンタである。但し、コンピュータ40の内部のプリンタドライバを介してプリンタをコンピュータにインタフェースできるのであれば、本発明はその他のプリンタと組み合わせても適用できる。
【0017】図2は、コンピュータ40及びプリンタ50の内部構造を示すブロック図である。図2において、コンピュータ40は、コンピュータバス101にインタフェースされるプログラム可能なマイクロプロセッサなどの中央処理装置(「CPU」)100を含む。コンピュータバス101には、表示装置43にインタフェースするための表示装置インタフェース102、両方向通信回線106を介してプリンタ50にインタフェースするためのプリンタインタフェース104、フロッピーディスクドライブ44にインタフェースするためのフロッピーディスクインタフェース124、キーボード46にインタフェースするためのキーボードインタフェース109、及びポインティングデバイス47にインタフェースするためのポインティングデバイスインタフェース110も結合している。ランダムアクセスメモリ(「RAM」)116は、コンピュータバス101にインタフェースし、CPU100に記憶装置へのアクセスを提供する。特に、格納されたプログラム命令シーケンスを実行するときに、CPU100はそれらの命令シーケンスをディスク45(又は不図示のネットワークインタフェースを介してアクセスされるコンピュータ読み取り可能な媒体などの別の記憶媒体)からRAM116へロードし、RAM116から格納されているそれらのプログラム命令シーケンスを読み出して実行する。また、ウィンドウイングオペレーティングシステムの下で利用可能な標準ディスクスワッピング技法によってディスク45とRAM116との間でメモリの各セグメントがスワッピングできることも認識すべきである。コンピュータ40内の読み取り専用メモリ(「ROM」)103はキーボード46の操作に関わるスタートアップ命令シーケンス又は基本入出力オペレーティングシステム(「BIOS」)などの不変の命令シーケンスを格納している。
【0018】ディスク45は、オペレーティングシステム111、アプリケーションプログラム112、プリンタドライバ114、汎用プリンタデータ構造定義ファイル(UPDSD)150、汎用プリンタ記述ファイル(UPDF)140、及びその他のアプリケーションプログラム、ファイル及びドライバ119などのデバイスドライバを構成するようにCPU100で実行可能なプログラム命令シーケンスを格納するコンピュータ読み取り可能な媒体の一例である。アプリケーションプログラムは、そのプログラムによりコンピュータ40がファイルを生成し、それらのファイルを操作し、且つディスク45に格納し、それらのファイルのデータを表示画面42を介してユーザに提示し、且つプリンタ50を介してデータを印刷するプログラムである。また、ディスク45は、上述したように、好ましくはウィンドウイングオペレーティングシステムであるオペレーティングシステム111を格納している。また、ディスク45にはデバイスドライバも格納されている。デバイスドライバの少なくとも1つは、プリンタ50に対してソフトウェアインタフェースを形成するプリンタドライバ114である。コンピュータ40とプリンタ50との間で交換されるデータは、プリンタドライバ114により符号化されるプログラム命令シーケンスを介してプリンタドライバ114により得られる。汎用プリンタデータ構造定義ファイル150と汎用プリンタ記述ファイル140は、プリンタドライバ114がプリンタ50の能力、特性、特徴及び制御機能に従ってプリンタ50に対して適正なインタフェースを提供できるように、プリンタドライバ114を構成する間アクセスされ、利用される。プリンタドライバ114を構成するために汎用プリンタデータ構造定義ファイル150と汎用プリンタ記述ファイル140がどのように利用されるかについては、後に更に詳細に説明する。
【0019】尚、プリンタドライバ114は、各プリンタに共通の共通プリンタドライバと個々のプリンタに固有の固有プリンタドライバとを含む。
【0020】再び図2を参照すると、プリンタ50はプリントコントローラ120とプリンタエンジン131とを含む。プリントコントローラ120は、プリンタ50からプリント出力を得るためにプリンタエンジン131とインタフェースする複数のコンピュータ化された装置及び電子装置を含む。図2に示すように、プリントコントローラ120は8ビット又は16ビットのマイクロプロセッサなどのCPU121、ROM122、制御ロジック124、及びバス126に接続する入出力ポート127を含む。また、制御ロジック124にはRAM129も接続されている。入出力ポート127には、後の印刷動作中に使用するために両方向リンク106を介してコンピュータ40により得ることができるプリンタパラメータを格納するEEPROM132が接続している。
【0021】プリンタエンジン131は、プリンタ50からプリント出力を得るためのコンピュータ化された装置、電子装置及び物理的な装置を含む。制御ロジック124はプリンタエンジン131に直接的に制御信号を供給し、入出力ポート127を介してプリンタエンジン131に制御ロジックを提供する。また、入出力ポート127はプリンタエンジン131のセンサ出力信号を制御ロジック124に供給する。
【0022】ROM122は、フォントデータ、プリンタ50を制御するためのプログラム命令シーケンス、及びプリンタの動作に必要な他の不変データを格納している。RAM129は、プリンタエンジン131で記録可能な媒体(図示せず)へプリントアウトを行うためにROM122のプログラム命令シーケンスによって定義されるプリントバッファにプリントデータを格納している。EEPROM132は、プリンタ関連情報を格納する再プログラム可能な不揮発性メモリを構成する。このプリンタ関連情報は、プリンタ50の動作パラメータをコンピュータ40に報知すると共に、プリンタ50の様々な構成に対応するために両方向通信回線106を介してプリンタ50へ送信されるプリントデータをプリンタドライバ114が変更できるようにするために、コンピュータ40のプリンタドライバ114へ提供されても良い。好ましくは、プリンタドライバ114を構成するためにコンピュータ40が両方向リンク106を介してアクセスできるように汎用プリンタの記述ファイル140及び汎用プリンタのデータ構造定義ファイル150をプリンタ50のROM122又はEEPROM132にも格納する。
【0023】図3は、プリンタドライバ114の構成に利用される汎用プリンタ記述ファイル140の汎用プリンタデータ構造定義ファイル150の構成を示す図である。図3では、複数の所定のデータ要素が所定の論理、階層構造を成して配列されている。所定の複数のデータ要素は、典型的にはプリンタ50のような複数のプリンタの1つにより支援される様々な能力、特性、特徴及び制御機能に関連するデータを格納する。汎用プリンタデータ構造定義ファイル150は、各々のデータ要素、その関連属性及びデータ構造定義中のその他のデータ要素との相互関係を定義するために、厳密な構文とのコンプライアンスを必要とする拡張可能マークアップ言語に従って作成される。この拡張可能マークアップ言語は、厳格な階層としてデータ要素を配列することが求められるだけでなく、汎用プリンタデータ構造定義ファイルの所定の複数のデータ要素に含まれない、新たなデータ要素の追加のためにデータ構造の拡張を可能とする。また、拡張可能マークアップ言語は、Microsoft Windows、UNIX、及びApple Macintoshオペレーティングシステムなどのほぼ全てのオペレーティングシステムから独立している。代表的な汎用プリンタのデータ構造定義を「XMLでUPDFを作成するためのDTD規格」として図7乃至図23に示す。
【0024】再び図3を参照すると、汎用プリンタデータ構造定義ファイル150は、図3に機器能力(DeviceCap)151として示されている機器能力データ要素から構成されている。この機器能力データ要素151は、図3に示すデータ構造の機能ユニット全体を表現する。機器能力データ要素151は汎用プリンタデータ構造定義ファイル150のルートに位置している。機器能力データ要素151はそれ自体もデータ要素である複数の部分要素を含む。機器能力データ要素151に含まれる部分要素は、機器能力ヘッダ(DeviceCap.Header)データ要素154、UPDFバージョン(UPDFVersion)データ要素152及び特徴(Features)データ要素155である。機器能力ヘッダデータ要素154は、記述されている特定のプリンタ機器のヘッダ情報を定義する機器ヘッダタグである。機器能力ヘッダデータ要素154は、部分要素として、ファイルバージョン(FileVersion)データ要素156、製品(Product)データ要素157、モデル名(ModelName)データ要素158、愛称(NickName)データ要素159、機器識別(DeviceID)データ要素160、ローカル(Locale)データ要素161及びファイル名(FileName)データ要素162を含む。ファイルバージョンデータ要素156は、後に汎用プリンタ記述ファイルのファイルバージョンを識別する際に使用するために予約されている。製品データ要素157は、記述されているプリンタ機器の製品名を特定するのに使用される。モデル名データ要素158は、記述されているプリンタ機器のモデル名を特定するのに使用される。愛称データ要素159は、記述されているプリンタ機器の愛称を特定するのに使用される。機器識別データ要素160は、記述されているプリンタ機器を識別するのに使用され、それ自体、更なる識別のための部分要素(図示せず)を含む。ローカルデータ要素161は、日本語、米語、英語、フランス語、ドイツ語及びスペイン語のうち何れか1つの言語を識別するのに使用される。ファイル名データ要素162は、後の使用に備えて予約されている。
【0025】UPDFバージョンデータ要素152は、汎用プリンタ記述ファイルのバージョンを識別するのに使用され、部分要素として、更にバージョンの識別のためのフォーマットバージョン(FormatVersion)データ要素153を含む。特徴データ要素155は、記述されているプリンタ機器全体の記述の始まりと終わりをマークするのに使用される。特徴データ要素155は、部分要素として、プリンタ機器のファックス、プリンタ及びスキャナそれぞれの能力を記述するファックス能力(FaxCap)データ要素163、プリンタ能力(PrinterCap)データ要素169及びスキャナ能力(ScanCap)データ要素170を含む。
【0026】ファックス能力データ要素163は、ファックス能力ヘッダ(FaxCap.Header)データ要素164及び特徴(Features)データ要素168を含む。ファックス能力ヘッダデータ要素164は、ファックス(Fax)データ要素165、言語(Language)データ要素166、モジュール名(ModuleNames)データ要素167を更に含む。これらのファックス関連データ要素は、後にプリンタ機器のファックス能力を記述する際に使用するために予約されている。同様に、スキャナ能力データ要素170はスキャナ能力ヘッダ(ScanCap.Header)データ要素171及び特徴(Features)データ要素175を含む。スキャナ能力ヘッダデータ要素171は、スキャン(Scan)データ要素172、言語(Language)データ要素173及びモジュール名(ModuleNames)データ要素174を更に含む。これらのデータ要素も、後にプリンタ機器のスキャナ能力を記述する際に使用するために予約されている。
【0027】プリンタ能力データ要素169は、記述されているプリンタ機器のプリンタ関連能力及び機能を表現する。プリンタ能力データ要素169は、部分要素として、プリンタ能力ヘッダ(PrinterCap.Header)データ要素176及び特徴(Features)データ要素177を含む。プリンタ能力ヘッダデータ要素176は、プリンタ機器のヘッダ情報を表現し、部分要素として、プリンタ(Printer)データ要素178、言語(Language)データ要素179及びモジュール名(ModuleNames)データ要素180を更に含む。プリンタデータ要素178はプリンタの識別に使用され、言語データ要素179は使用されるべきPDLプリンタ言語、好ましくはLIPS4、PCL5e、PCL5c、PCL6、XL、PS2、PS3、GDIGM、ESCP及びRASTERからなる言語群のうち1つを識別するのに使用される。モジュール名データ要素180は後の使用に備えて予約されている。
【0028】プリンタ能力データ要素169の下の、特徴データ要素177はプリンタ機器のプリンタ関連特徴及び能力の完全記述の始まりと終わりをマークするのに使用される。図4を参照すると、特徴データ要素177は、部分要素として、物理的(Physical)データ要素181、プラットフォーム(Platform)データ要素188、リソース(Resource)データ要素194、フォント(Fonts)データ要素195、オーバーレイ(Overlays)データ要素198、フォーム(Forms)データ要素199、コミュニケーション(Communication)データ要素200、OEMデータ要素201、ローカリゼーション(Localization)データ要素202及びグローバル(Global)データ要素203を含む。
【0029】物理的データ要素181は記述されているプリンタ機器のハードウェア構成を識別し、部分要素として、エンジン(Engine)データ要素182、RAMデータ要素183、ROMデータ要素184、カラー(Color)データ要素185、挿入(Inserters)データ要素186及び記憶装置(Storages)データ要素187を含む。エンジンデータ要素182は、記述されているプリンタ機器に含まれるプリンタエンジンの種類、例えばレーザプリンタエンジンやバブルジェットプリンタエンジンなどを記述するのに使用される。RAMデータ要素183は、記述されているプリンタ機器の内部のRAMの容量を記述するために使用され、ROMデータ要素184は記述されているプリンタ機器に設けられたROMの容量を記述するために使用される。カラーデータ要素185は、記述されているプリンタ機器がカラー印刷を支援するか否か及び記録可能な媒体に色空間を形成する方式を指示する。挿入データ要素186は、記述されているプリンタ機器の挿入を支援する能力を指示する。記憶装置データ要素187は、記述されているプリンタ機器が記憶装置を支援するか否かを指示する。
【0030】プラットフォームデータ要素188は、記述されているプリンタ機器の何らかのオペレーティングシステムの特徴及び能力を識別する。このプラットフォームデータ要素188は、部分要素として、モジュール名(ModuleNames)データ要素189、ホストレンダリング(HostRendering)データ要素190、オブジェクトシグネチャー(ObjectSignature)データ要素191、コールバック手続き(DDBProc)データ要素192及びキャッシュ手続き(CacheProc)データ要素193を含む。モジュール名データ要素189は、何らかのオペレーティングシステムの特徴及び能力と関連するオブジェクト及び/又は2進ファイルの名前を識別する。ホストレンダリングデータ要素190は、記述されているプリンタ機器がホストレンダリングを支援することができるか否かを指示する。オブジェクトシグネチャーデータ要素191は、記述されているプリンタ機器がオブジェクトシグネチャーを支援するか否かを指示する。コールバック手続きデータ要素182は、記述されているプリンタ機器により使用されるコールバック手続きを指示する。キャッシュ手続きデータ要素193は、記述されているプリンタ機器により使用されるキャッシュ手続きを指示する。
【0031】リソースデータ要素194、オーバーレイデータ要素198、フォームデータ要素199、コミュニケーションデータ要素200、OEMデータ要素201及びローカリゼーションデータ要素202は、全て、後にそれぞれ対応する名前により指示されるプリンタの機能や能力を記述する際に使用するために予約されている。フォントデータ要素195は、記述されているプリンタ機器のフォント能力を識別する。このフォントデータ要素195は、部分要素として、デフォルトフォント(DefaultFont)データ要素196及び内部フォント(InternalFont)データ要素197を含む。デフォルトフォントデータ要素196は、記述されているプリンタ機器がデフォルトフォントを支援するか否かを指示する。内部フォントデータ要素197は、記述されているプリンタ機器が内部フォントを支援するか否かを指示する。内部フォントデータ要素197は、部分要素(図示せず)として、プリンタ機器の内部フォント能力を更に識別するためにフォント符号化データ要素、フォントバージョンデータ要素、フォント文字セットデータ要素、フォント状態データ要素及びフォント識別データ要素を含む。
【0032】グローバルデータ要素203は、記述されているプリンタ機器のグローバルな能力及び機能を識別し、部分要素として、ユーザインタフェース(User Interface)データ要素204、媒体(Media)データ要素213、用紙処理(PaperHandling)データ要素217、後処理(Finishings)データ要素220、カラー(Colors)データ要素231及び拡張ユニット(ExpUnits)データ要素234を含む。ユーザインタフェースデータ要素204は、記述されているプリンタ機器により支援されるユーザインタフェース能力及び機能を識別し、部分要素として、プリンタメモリ管理(PrinterMemoriManage)データ要素205、ページプロテクト(PageProtects)データ要素206、解像度(Resolutions)データ要素207、トナーセーブ(Tonersaves)データ要素208、スムージングモード(SmoothingModes)データ要素209、ディザスムージング(DitherSmoothings)データ要素210、ディザ(Dithers)データ要素211及びユーザインタフェース制約(UIConstraints)データ要素212を更に含む。プリンタメモリ管理データ要素205は、ユーザが記述されているプリンタ機器においてメモリを管理する様々なモードの中から1つを選択することを可能にするのに使用される。ページプロテクトデータ要素207は、記述されているプリンタ機器がページプロテクションを支援するか否かを指示するのに使用される。解像度データ要素206は、記述されているプリンタ機器のプリンタ解像度を支援する能力を指示する。トナーセーブデータ要素208は、記述されているプリンタ機器がトナーセーブ機能を支援するか否かを指示する。スムージングモードデータ要素209は、記述されているプリンタ機器が印刷時にスムージングモードの選択を支援するか否かを指示する。ディザスムージングデータ要素210は、記述されているプリンタ機器が印刷時にユーザによるディザスムージングの選択を支援するか否かを指示する。ディザデータ要素211は、記述されているプリンタ機器がディザ能力を支援するか否かを指示し、部分要素として、ディザ機能性を更に記述するためのハーフトーンデータ要素(図示せず)及びグレイアウトデータ要素(図示せず)を更に含む。
【0033】ユーザインタフェース制約データ要素212は、記述されているプリンタ機器が支援できない能力又は機能をユーザが選択するのを阻止するためのユーザインタフェース制約を識別する。このユーザインタフェース制約データ要素212は、部分要素として、許可される最大コピー枚数、許可される最大バインディングマージン、印刷媒体の面の方向、許可されるペイントモード、許可されるプリンタ用紙名、許可される定着モード、許可される位置合わせモード、許可される色校正及び許可される用紙レイアウトを記述するためのいくつかのデータ要素(図示せず)を更に含む。
【0034】媒体データ要素213は、記述されているプリンタ機器により支援される記録媒体の能力及び機能を識別する。媒体データ要素213は、用紙(Papers)データ要素214、UDP情報(UdpInfos)データ要素215及び媒体(Medias)データ要素216を更に含む。用紙データ要素214は、記述されているプリンタ機器により支援される用紙の大きさとレイアウトを指示し、部分要素として、用紙の面積を指示するためのデータ要素(図示せず)、用紙レイアウトを指示するためのデータ要素(図示せず)及び用紙の仕上げ能力を指示するためのデータ要素(図示せず)を更に含む。用紙の面積を指示するデータ要素は、部分要素として、記述されているプリンタ機器により支援される用紙の大きさ、面積及びマージンを記述するためのいくつかのデータ要素を含む。UDP情報データ要素215は、記述されているプリンタ要素の、ユーザが定義した用紙情報を支援する能力を指示し、部分要素として、ユーザが定義した用紙のデフォルトサイズ、マージンサイズ及び最大・最小サイズを指示するためのいくつかのデータ要素(図示せず)を更に含む。
【0035】用紙処理データ要素217は、記述されているプリンタ機器により支援される用紙の供給源及び宛先を指示し、部分要素として、用紙供給源(PaperSources)データ要素218及び用紙宛先(PaperDestinations)データ要素219を更に含む。用紙供給源データ要素218は用紙供給源を表すトレイアイデンティティ及びそのトレイが支援できる用紙を指示する。用紙宛先データ要素219は用紙の宛先出力及びその宛先出力が支援できる用紙の種類を指示する。後処理データ要素220は、記述されているプリンタ機器のプリント後能力及び機能を指示し、部分要素として、両面能力を指示する両面(Duplex)データ要素221、ブックレット能力を指示するブックレット(Booklet)データ要素222、中央見開き及びステープル能力を指示する中央見開・ステープル(CenterFoldandStaple)データ要素223、順序反転能力の支援を指示する順序反転(ReverseOrder)データ要素224、プリントジョブをオフセットするための能力を指示するジョブオフセット(JobOffset)データ要素225、文書を照合するための能力を指示するグループ照合(CollateGroup)データ要素226、メールボックス能力の支援を指示するメールボックス(Mailbox)データ要素227、ステープル能力を指示するステープル(Staple)データ要素228、折りたたみ能力を指示する折りたたみ(Folds)データ要素229及び穴あけ能力を指示する穴あけ(HolePunch)データ要素230を更に含む。
【0036】カラーデータ要素231は、記述されているプリンタ機器のカラー機能及び能力を記述するのに使用され、部分要素として、カラー処理(ColorProcessing)データ要素232及びプリントされた媒体における色空間を定義する画素の濃さ(PixelDepths)データ要素233を更に含む。カラー処理データ要素232は、色空間処理及びカラーモードスイッチ能力を指示するデータ要素(図示せず)を更に含む。
【0037】拡張ユニットデータ要素234は、プリンタ機器のための拡張ユニットの様々な種類のプリンタ機器による支援を識別するのに使用される。この拡張ユニットデータ要素234は、部分要素として、プリンタ機器内部の拡張RAMを識別する拡張RAM(ExpRAMS)データ要素235と、記述されているプリンタ機器における拡張フォントカードを識別する拡張フォントカード(ExpFontCards)データ要素236、記述すべきプリンタ装置における拡張両面ユニットを識別する拡張両面(ExpDuplexs)データ要素237、記述されているプリンタ機器における拡張用紙供給源ユニットを識別する拡張用紙供給源(ExpPaperSources)データ要素238、記述されているプリンタ機器における拡張用紙宛先ユニットを識別する拡張用紙宛先(ExpPaperDestinations)データ要素239、記述されているプリンタ機器における拡張挿入ユニットを識別する拡張挿入(ExpInserters)データ要素240及び記述されているプリンタ機器における拡張記憶装置ユニットを識別する拡張記憶装置(ExpStorages)データ要素241を更に含む。
【0038】図5は、図3及び図4の汎用プリンタデータ構造定義ファイル150に従って作成される汎用プリンタ記述ファイル140の1つのデータ要素のフォーマットを説明する図である。図5において、機器能力データ要素151のフォーマットは、そのデータ要素の構成要素を識別するために提供される。図5に示すフォーマットは、汎用プリンタデータ構造定義ファイル150を定義するために使用される拡張可能マークアップ言語の構文に従って要求される。スタートタグ400は、機器能力データ要素151の第1の構成要素であり、そのデータ要素の始まりを識別するために使用される。スタートタグ400の後には、機器能力データ要素151と関連するデータが記述され、機器能力エンドタグ401まで続けられる。拡張可能マークアップ言語により定義されるデータ要素と関連するデータは、データ値、部分要素として他のデータ要素、或いはデータ値及び/又は部分要素の組み合わせから構成されている。再び図5を参照すると、機器能力データ要素151と関連するデータは、機器能力ヘッダデータ要素154、UPDFバージョンデータ要素152及び特徴データ要素155を含む3つの部分要素から構成されている。これら3つの部分要素は、全て汎用プリンタデータ構造定義ファイル150の同じ階層レベルに位置し、それ自体、関連するデータ及び/又は部分要素を有することができる(図3を参照)。このように、部分要素がそれぞれ上位のデータ要素に従属することによりデータ要素の入れ子形階層が確立される。即ち、スタートタグ400とエンドタグ401は、機器能力データ要素151と関連する特定のデータ階層を包み込んでいるのである。
【0039】汎用プリンタデータ構造定義ファイル150は、汎用プリンタ記述ファイル140に配置するための特定プリンタデータ構造を作成すべくアクセスされ、利用される。汎用プリンタ記述ファイル140は、汎用プリンタデータ構造定義ファイル150で定義されたデータ要素をプリンタ50などの特定のプリンタに対応するデータで埋めることにより作成される。その後、汎用プリンタ記述ファイル140を固定ディスク45又はフロッピーディスク44などのメモリ領域に格納し、CPU100でプリンタドライバ初期設定プロセスを実行する間に、プリンタドライバ114がこのファイルをアクセスする。また、CPU100におけるプリンタドライバ初期設定プロセスの実行中にプリンタドライバ114が両方向リンク106を介してアクセスできるように、汎用プリンタ記述ファイル140をROM122又はEEPROM132などのプリンタのメモリ領域に格納することも可能である。汎用プリンタ記述ファイル140に含まれるプリンタ関連データは、コンピュータ40のアプリケーション112とプリンタ50との間のインタフェースを提供するプリンタドライバを構成する初期設定プロセスの間にプリンタドライバ114に渡される。このように、汎用プリンタ記述ファイル140は、実質的にどのようなオペレーティングシステムでもプリンタ50を支援するためのプリンタドライバ114を構成するのに使用される。
【0040】図6は、本発明の好ましい実施形態の動作を示すフローチャートである。簡単に言えば、図6に従うと、特定のプリンタの構成及び能力の情報を定義する特定プリンタデータ構造をアクセスし、汎用データ構造定義に照らして特定プリンタデータ構造を構文解析し、特定プリンタデータ構造の有効性を確認し、プリンタドライバが指定されたプリンタの全ての能力を利用して適正な構成における特定プリンタに対してプリンタドライバがプリントできるように特定プリンタデータ構造によってプリンタドライバを構成するのである。
【0041】図6は、共通プリンタドライバの制御を示すもので、アプリケーションにより印刷が指示されると実行される動作である。
【0042】より詳細に説明すると、アプリケーションの画面からユーザが印刷を指示した共通プリンタドライバが固有プリンタドライバを作成する処理である。OSには現在選択されたプリンタの名称がレジストリに保持されている。そして、アプリケーションから印刷が指示されると、共通プリンタドライバはレジストリに保持されているプリンタ名称をもらって、ステップS601で前述したデータ構造のような特定プリンタデータ構造をアクセスする。データ構造が既に固定ディスク45にダウンロードされていれば、そのディスク45の汎用プリンタデータファイル(UPDF)140にアクセスし、さもなければフロッピーディスク又はCD−ROMで特定される着脱自在の媒体の何れか1つに対してアクセスする。特定プリンタデータ構造が固定ディスク45にまだ格納されていない状況では、通信インタフェース106を介してプリンタ50にアクセスする。また、インターネット接続やローカルエリアネットワーク又はワイドエリアネットワークなどの別の手段を介してアクセスしても良い。
【0043】ステップS602で固定ディスク45に格納されている汎用プリンタデータ構造定義ファイル150に照らして特定プリンタデータ構造を構文解析する。この構文解析ステップS602の目的は、特定プリンタデータ構造の有効性を保証すると共に汎用プリンタデータ構造定義ファイル(UPDSD)150にまだ含まれていないデータ構造の追加マークアップ拡張を認識することである。特定プリンタデータ構造の有効性を確認したならばステップS604へ進み、そうでない場合にはエラーを検出し、終了する。
【0044】ステップS604では、特定プリンタデータ構造に応じて固有のプリンタドライバ114を構成する。この構成ステップによれば、汎用プリンタドライバであるプリンタドライバ114を特定プリンタデータ構造により特定されるプリンタと正確に通信して構成すると共に特定プリンタデータ構造により特定される全ての能力を利用して構成する。例えば、特定プリンタデータ構造があるプリンタについて利用可能な特定の仕上げオプションを特定している場合、その仕上げオプションをアクセスしてプリンタドライバ114を構成すると共に、ユーザがそのような仕上げ操作の所望の設定を選択できるユーザインタフェースを表示してプリンタドライバ114を構成する。
【0045】その後、ステップS605へ進み、プリンタドライバ114はプリンタ50に対してプリントを実行する。
【0046】本発明の好ましい実施形態では、汎用プリンタデータ構造定義ファイル150は拡張可能マークアップ言語(「XML」)に従って定義され、XMLによって支援されるファイル及び文書型記述(「DTD」)ファイルと呼ばれるファイルの中に保持される。XMLは徐々に知られてきているマークアップ言語であり、特定のオペレーティングシステムに従属することはなく、厳密な構文の使用と、DTDファイル内で提供されるゆるぎないデータ構造定義への準拠とによって、どの汎用プリンタ記述ファイルにおいても一貫性を保つ。XMLの拡張可能性は、DTDの中の汎用プリンタデータ構造定義ファイル150の所定のデータ要素群には提供されない特定の汎用プリンタ記述ファイル140の中にデータ要素の追加を可能とする。それゆえ、実質的に如何なるオペレーティングシステムでもプリンタドライバ114の構成のために複数のプリンタの何れか1つのプリンタをも表現するDTDファイルで提供される汎用プリンタデータ構造定義ファイル150に基づいて汎用プリンタ記述ファイル140を作成できる。また、DTDファイルは、汎用プリンタ記述ファイル140がDTDファイル内で提供される汎用プリンタデータ構造定義ファイル150に従っていることを確認するためにエラー検査に使用される。そのようなエラー検査により、汎用プリンタ記述ファイルがある1つのDTDのデータ構造定義に準拠していることを確認し、多数の汎用プリンタ記述ファイル、プリンタドライバ及びオペレーティングシステムの一致を得ることができる。
【0047】尚、本発明は複数の機器(例えば、ホストコンピュータ,インタフェイス機器,リーダ,プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機,ファクシミリ装置など)に適用してもよい。
【0048】また、本発明の目的は前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(CPU若しくはMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【0049】この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0050】プログラムコードを供給するための記憶媒体としては、例えばフロッピーディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,磁気テープ,不揮発性のメモリカード,ROMなどを用いることができる。
【0051】また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0052】更に、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【図1】本発明と関連して使用されるコンピュータ及びプリンタの斜視図である。
【図2】プリンタにインタフェースされるコンピュータのハードウェア構成を示す詳細なブロック図である。
【図3】本発明の実施形態による汎用プリンタ記述ファイルの汎用プリンタデータ構造定義ファイルの構成を示す図である。
【図4】更に、図3の汎用プリンタデータ構造定義ファイルの構成を示す図である。
【図5】汎用プリンタ記述ファイルのデータ要素のフォーマットを示す図である。
【図6】特定プリンタデータ構造を用いて汎用プリンタドライバを構成する動作を示すフローチャートである。
【図7】XMLでUPDFを作成するためのDTD規格を示す図である。
【図8】XMLでUPDFを作成するためのDTD規格を示す図である。
【図9】XMLでUPDFを作成するためのDTD規格を示す図である。
【図10】XMLでUPDFを作成するためのDTD規格を示す図である。
【図11】XMLでUPDFを作成するためのDTD規格を示す図である。
【図12】XMLでUPDFを作成するためのDTD規格を示す図である。
【図13】XMLでUPDFを作成するためのDTD規格を示す図である。
【図14】XMLでUPDFを作成するためのDTD規格を示す図である。
【図15】XMLでUPDFを作成するためのDTD規格を示す図である。
【図16】XMLでUPDFを作成するためのDTD規格を示す図である。
【図17】XMLでUPDFを作成するためのDTD規格を示す図である。
【図18】XMLでUPDFを作成するためのDTD規格を示す図である。
【図19】XMLでUPDFを作成するためのDTD規格を示す図である。
【図20】XMLでUPDFを作成するためのDTD規格を示す図である。
【図21】XMLでUPDFを作成するためのDTD規格を示す図である。
【図22】XMLでUPDFを作成するためのDTD規格を示す図である。
【図23】XMLでUPDFを作成するためのDTD規格を示す図である。
【符号の説明】
40 コンピュータ
43 表示装置
44 フロッピーディスクドライブ
45 固定ディスク
46 キーボード
47 ポインティングデバイス
50 プリンタ
100 中央処理装置(CPU)
101 コンピュータバス
102 表示装置インタフェース
103 読み取り専用メモリ(ROM)
104 プリンタインタフェース
106 両方向通信回線
109 キーボードインタフェース
110 ポインティングデバイスインタフェース
111 オペレーティングシステム
112 アプリケーション
114 プリンタドライバ
116 ランダムアクセスメモリ(RAM)
119 その他のドライバ
120 プリントコントローラ
121 中央処理装置(CPU)
122 読み取り専用メモリ(ROM)
124 制御ロジック
126 バス
127 入出力ポート
129 ランダムアクセスメモリ(RAM)
131 プリンタエンジン
132 EEPROM
140 汎用プリンタ記述ファイル(UPDF)
150 汎用プリンタデータ構造定義ファイル(UPDSD)

【特許請求の範囲】
【請求項1】 情報処理装置の中のアプリケーションソフトウェアモジュールと前記情報処理装置に接続されるプリンタとの間にデータインタフェースを提供する、前記情報処理装置の中のプリンタドライバソフトウェアモジュールを構成する情報処理装置であって、拡張可能なマークアップ言語に従って特定されたプリンタ構成情報を格納するメモリ領域と、格納されたプリンタ構成情報に基づいて、プリンタに固有のプリンタドライバモジュールを作成する共通プリンタドライバモジュールとを有することを特徴とする情報処理装置。
【請求項2】 汎用プリンタデータ構造が、プリンタの識別と、前記プリンタに使用されるプリンタ言語と、前記プリンタのプリンタエンジンの種類及びプリンタメモリを含む、前記プリンタの物理的特徴及びハードウェア構成の識別と、フォント、ユーザインタフェース及び記録媒体を支援する前記プリンタの能力とに関連した情報を格納する所定の複数のデータ要素を含む、複数の異なるプリンタの1つに関連する特定プリンタ情報を格納する複数のデータ要素を含み、前記データ要素の各々はスタートタグ、エンドタグ及び前記スタートタグと前記エンドタグとの間に配置されたデータを有し、前記データ要素は所定の固定階層をなして配列され、且つ、拡張可能なマークアップ言語に従って特定され、前記汎用プリンタデータ構造は付加的な特定プリンタデータ要素を含むために拡張可能である、複数のオペレーティングシステムを支援する汎用プリンタデータ構造定義をアクセスし、前記汎用プリンタデータ構造定義の前記データ要素の中のプリンタに関連する情報を格納することにより複数のオペレーティングシステムを支援する特定プリンタデータ構造を作成し、前記プリンタドライバソフトウェアモジュールによる処理のために前記メモリ領域に前記特定プリンタデータ構造を格納し、前記データ要素を前記プリンタドライバソフトウェアモジュールに渡して前記アプリケーションソフトウェアモジュールと前記プリンタとの間にデータインタフェースを提供するための前記プリンタドライバソフトウェアモジュールを構成する前記特定プリンタデータ構造の処理を含む、初期設定プロセスを前記プリンタドライバソフトウェアモジュールに対して実行するプロセッサとを有することを特徴とする請求項1に記載の情報処理装置。
【請求項3】 前記汎用プリンタデータ構造の前記所定の複数のデータ要素は、記録媒体の処理、仕上げ及び拡張ユニットを支援する前記プリンタの能力に関連した情報を格納するデータ要素を更に含むことを特徴とする請求項2に記載の情報処理装置。
【請求項4】 前記特定プリンタデータ構造を格納する前記メモリ領域は、着脱自在の記憶媒体であることを特徴とする請求項2に記載の情報処理装置。
【請求項5】 前記特定プリンタデータ構造を格納する前記メモリ領域は、前記プリンタの内部のメモリ領域であることを特徴とする請求項2に記載の情報処理装置。
【請求項6】 前記特定プリンタデータ構造を格納する前記メモリ領域は、前記コンピュータシステムへのネットワーク接続により前記プリンタドライバソフトウェアモジュールにアクセス可能な遠隔メモリ領域であることを特徴とする請求項2に記載の情報処理装置。
【請求項7】 前記プロセッサは、前記汎用プリンタデータ構造定義と対照して前記特定プリンタデータ構造を構文解析し、前記特定プリンタデータ構造と前記汎用プリンタデータ構造定義との一致を確認することを特徴とする請求項2に記載の情報処理装置。
【請求項8】 コンピュータシステムの中のアプリケーションソフトウェアモジュールと複数の異なるプリンタの少なくとも1つのプリンタとの間にデータインタフェースを提供する、前記コンピュータシステムの中のプリンタドライバソフトウェアモジュールによってアクセスされるメモリであって、前記メモリに格納されるデータ構造を有し、前記データ構造は、プリンタの識別と、前記プリンタに使用されるプリンタ言語と、前記プリンタのプリンタエンジンの種類及びプリンタメモリを含む、前記プリンタの物理的特徴及びハードウェア構成と、フォント、ユーザインタフェース及び記録媒体を支援する前記プリンタの能力とに関連する情報を格納する所定の複数のデータ要素を含む、複数の異なるプリンタの1つに関連する特定プリンタ情報を格納する複数のデータ要素を含み、前記データ要素の各々は、スタートタグ、エンドタグ及び前記スタートタグと前記エンドタグとの間に配置されたデータを有し、前記データ要素は所定の固定階層をなして配列され、且つ、拡張可能なマークアップ言語に従って特定され、前記データ構造は付加的な特定プリンタデータ要素を含むために拡張可能であることを特徴とするメモリ。
【請求項9】 前記データ構造に含まれる前記所定の複数のデータ要素は、更に、記録媒体の処理、仕上げ及び拡張ユニットを支援する前記プリンタの能力に関連する情報を格納するデータ要素を含むことを特徴とする請求項8に記載のメモリ。
【請求項10】 コンピュータシステムの中のアプリケーションソフトウェアモジュールと複数の異なるプリンタの少なくとも1つのプリンタとの間にデータインタフェースを提供する、前記コンピュータシステムの中のプリンタドライバソフトウェアモジュールを構成する方法であって、汎用プリンタデータ構造が、プリンタの識別と、前記プリンタに使用されるプリンタ言語と、前記プリンタのプリンタエンジンの種類及びプリンタメモリを含む、前記プリンタの物理的特徴及びハードウェア構成の識別と、フォント、ユーザインタフェース及び記録媒体を支援する前記プリンタの能力とに関連した情報を格納する所定の複数のデータ要素を含む、複数の異なるプリンタの1つに関連する特定プリンタ情報を格納する複数のデータ要素を含み、前記データ要素の各々はスタートタグ、エンドタグ及び前記スタートタグと前記エンドタグとの間に配置されたデータを有し、前記データ要素は所定の固定階層をなして配列され、且つ、拡張可能なマークアップ言語に従って特定され、前記汎用プリンタデータ構造は付加的な特定プリンタデータ要素を含むために拡張可能である、複数のオペレーティングシステムを支援する汎用プリンタデータ構造定義をアクセスする工程と、前記汎用プリンタデータ構造定義の前記データ要素の中のプリンタに関連する情報を格納することにより複数のオペレーティングシステムを支援する特定プリンタデータ構造を作成する工程と、前記プリンタドライバソフトウェアモジュールによる処理のために前記メモリ領域に前記特定プリンタデータ構造を格納する工程と、前記データ要素を前記プリンタドライバソフトウェアモジュールに渡して前記アプリケーションソフトウェアモジュールと前記プリンタとの間にデータインタフェースを提供するための前記プリンタドライバソフトウェアモジュールを構成する前記特定プリンタデータ構造の処理を含む、初期設定プロセスを前記プリンタドライバソフトウェアモジュールに対して実行する工程とを有することを特徴とする方法。
【請求項11】 前記汎用プリンタデータ構造の前記所定の複数のデータ要素は、記録媒体の処理、仕上げ及び拡張ユニットを支援する前記プリンタの能力に関連した情報を格納するデータ要素を更に含むことを特徴とする請求項10に記載の方法。
【請求項12】 前記特定プリンタデータ構造を格納する前記メモリ領域は、着脱自在の記憶媒体であることを特徴とする請求項10に記載の方法。
【請求項13】 前記特定プリンタデータ構造を格納する前記メモリ領域は、前記プリンタの内部のメモリ領域であることを特徴とする請求項に10記載の方法。
【請求項14】 前記特定プリンタデータ構造を格納する前記メモリ領域は、前記コンピュータシステムへのネットワーク接続により前記プリンタドライバソフトウェアモジュールにアクセス可能な遠隔メモリ領域であることを特徴とする請求項10に記載の方法。
【請求項15】 更に、前記汎用プリンタデータ構造定義と対照して前記特定プリンタデータ構造を構文解析し、前記特定プリンタデータ構造と前記汎用プリンタデータ構造定義との一致を確認する構文解析工程を有することを特徴とする請求項10に記載の方法。
【請求項16】 コンピュータ読み取り可能な媒体に格納され、コンピュータシステムの中のアプリケーションソフトウェアモジュールと複数の異なるプリンタの少なくとも1つのプリンタとの間にデータインタフェースを提供する、メモリ領域を有する前記コンピュータシステムの中のプリンタドライバソフトウェアモジュールを構成するコンピュータ実行可能なプロセスステップであって、汎用プリンタデータ構造が、プリンタの識別と、前記プリンタに使用されるプリンタ言語と、前記プリンタのプリンタエンジンの種類及びプリンタメモリを含む、前記プリンタの物理的特徴及びハードウェア構成の識別と、フォント、ユーザインタフェース及び記録媒体を支援する前記プリンタの能力とに関連した情報を格納する所定の複数のデータ要素を含む、複数の異なるプリンタの1つに関連する特定プリンタ情報を格納する複数のデータ要素を含み、前記データ要素の各々はスタートタグ、エンドタグ及び前記スタートタグと前記エンドタグとの間に配置されたデータを有し、前記データ要素は所定の固定階層をなして配列され、且つ、拡張可能なマークアップ言語に従って特定され、前記汎用プリンタデータ構造は付加的な特定プリンタデータ要素を含むために拡張可能である、複数のオペレーティングシステムを支援する汎用プリンタデータ構造定義をアクセスするためのコードと、前記汎用プリンタデータ構造定義の前記データ要素の中のプリンタに関連する情報を格納することにより複数のオペレーティングシステムを支援する特定プリンタデータ構造を作成するためのコードと、前記プリンタドライバソフトウェアモジュールによる処理のために前記メモリ領域に前記特定プリンタデータ構造を格納するためのコードと、前記データ要素を前記プリンタドライバソフトウェアモジュールに渡して前記アプリケーションソフトウェアモジュールと前記プリンタとの間にデータインタフェースを提供するための前記プリンタドライバソフトウェアモジュールを構成する前記特定プリンタデータ構造の処理を含む、初期設定プロセスを前記プリンタドライバソフトウェアモジュールに対して実行するためのコードとを有することを特徴とするコンピュータ実行可能なプロセスステップ。
【請求項17】 前記汎用プリンタデータ構造の前記所定の複数のデータ要素は、記録媒体の処理、仕上げ及び拡張ユニットを支援する前記プリンタの能力に関連した情報を格納するデータ要素を更に含むことを特徴とする請求項16に記載のコンピュータ実行可能なプロセスステップ。
【請求項18】 前記特定プリンタデータ構造を格納する前記メモリ領域は、着脱自在の記憶媒体であることを特徴とする請求項16に記載のコンピュータ実行可能なプロセスステップ。
【請求項19】 前記特定プリンタデータ構造を格納する前記メモリ領域は、前記プリンタの内部のメモリ領域であることを特徴とする請求項16に記載のコンピュータ実行可能なプロセスステップ。
【請求項20】 前記特定プリンタデータ構造を格納する前記メモリ領域は、前記コンピュータシステムへのネットワーク接続により前記プリンタドライバソフトウェアモジュールにアクセス可能な遠隔メモリ領域であることを特徴とする請求項16に記載のコンピュータ実行可能なプロセスステップ。
【請求項21】 更に、前記汎用プリンタデータ構造定義と対照して前記特定プリンタデータ構造を構文解析し、前記特定プリンタデータ構造と前記汎用プリンタデータ構造定義との一致を確認するためのコードを有することを特徴とする請求項16に記載のコンピュータ実行可能なプロセスステップ。
【請求項22】 コンピュータシステムの中のアプリケーションソフトウェアモジュールと複数の異なるプリンタの少なくとも1つのプリンタとの間にデータインタフェースを提供する、メモリ領域を有する前記コンピュータシステムの中のプリンタドライバソフトウェアモジュールを構成するコンピュータ実行可能なプロセスステップを格納するコンピュータ読み取り可能な媒体であって、前記コンピュータ実行可能なプロセスステップは、汎用プリンタデータ構造が、プリンタの識別と、前記プリンタに使用されるプリンタ言語と、前記プリンタのプリンタエンジンの種類及びプリンタメモリを含む、前記プリンタの物理的特徴及びハードウェア構成の識別と、フォント、ユーザインタフェース及び記録媒体を支援する前記プリンタの能力とに関連した情報を格納する所定の複数のデータ要素を含む、複数の異なるプリンタの1つに関連する特定プリンタ情報を格納する複数のデータ要素を含み、前記データ要素の各々はスタートタグ、エンドタグ及び前記スタートタグと前記エンドタグとの間に配置されたデータを有し、前記データ要素は所定の固定階層をなして配列され、且つ、拡張可能なマークアップ言語に従って特定され、前記汎用プリンタデータ構造は付加的な特定プリンタデータ要素を含むために拡張可能である、複数のオペレーティングシステムを支援する汎用プリンタデータ構造定義をアクセスするアクセス工程と、前記汎用プリンタデータ構造定義の前記データ要素の中のプリンタに関連する情報を格納することにより複数のオペレーティングシステムを支援する特定プリンタデータ構造を作成する作成工程と、前記プリンタドライバソフトウェアモジュールによる処理のために前記メモリ領域に前記特定プリンタデータ構造を格納する格納工程と、前記データ要素を前記プリンタドライバソフトウェアモジュールに渡して前記アプリケーションソフトウェアモジュールと前記プリンタとの間にデータインタフェースを提供するための前記プリンタドライバソフトウェアモジュールを構成する前記特定プリンタデータ構造の処理を含む、初期設定プロセスを前記プリンタドライバソフトウェアモジュールに対して実行する実行工程とを有することを特徴とするコンピュータ読み取り可能な媒体。
【請求項23】 前記汎用プリンタデータ構造の前記所定の複数のデータ要素は、記録媒体の処理、仕上げ及び拡張ユニットを支援する前記プリンタの能力に関連した情報を格納するデータ要素を更に含むことを特徴とする請求項22に記載のコンピュータ読み取り可能な媒体。
【請求項24】 前記特定プリンタデータ構造を格納する前記メモリ領域は、着脱自在の記憶媒体であることを特徴とする請求項22に記載のコンピュータ読み取り可能な媒体。
【請求項25】 前記特定プリンタデータ構造を格納する前記メモリ領域は、前記プリンタの内部のメモリ領域であることを特徴とする請求項22に記載のコンピュータ読み取り可能な媒体。
【請求項26】 前記特定プリンタデータ構造を格納する前記メモリ領域は、前記コンピュータシステムへのネットワーク接続により前記プリンタドライバソフトウェアモジュールにアクセス可能な遠隔メモリ領域であることを特徴とする請求項22に記載のコンピュータ読み取り可能な媒体。
【請求項27】 更に、前記汎用プリンタデータ構造定義と対照して前記特定プリンタデータ構造を構文解析し、前記特定プリンタデータ構造と前記汎用プリンタデータ構造定義との一致を確認する構文解析工程を有することを特徴とする請求項22に記載のコンピュータ読み取り可能な媒体。

【図1】
image rotate


【図2】
image rotate


【図3】
image rotate


【図5】
image rotate


【図4】
image rotate


【図6】
image rotate


【図7】
image rotate


【図8】
image rotate


【図9】
image rotate


【図10】
image rotate


【図11】
image rotate


【図12】
image rotate


【図13】
image rotate


【図14】
image rotate


【図15】
image rotate


【図16】
image rotate


【図17】
image rotate


【図18】
image rotate


【図19】
image rotate


【図20】
image rotate


【図21】
image rotate


【図22】
image rotate


【図23】
image rotate