(57)【特許請求の範囲】
【請求項１】
少なくとも１つのプリンタが接続されたサーバコンピュータとクライアントコンピュータとがネットワークで接続され、前記プリンタに関連付けられた前記サーバコンピュータ上の仮想プリンタに対して、前記クライアントコンピュータから印刷処理を依頼する印刷システムの印刷処理方法において、
前記クライアントが要求する機能に関連付けられた第１の印刷属性と前記仮想プリンタの機能に関連付けられた第２の印刷属性とに基づき、前記第１の印刷属性を優先した第３の印刷属性を生成し、該生成した第３の印刷属性に基づいて前記クライアントからの印刷要求を実行することを特徴とする印刷処理方法。
【請求項２】
前記第１の印刷属性および前記第２の印刷属性は、複数の属性項目から構成されるとともに該属性項目のそれぞれに優先度が設定可能であり、前記第３の印刷属性は、前記属性項目毎に前記第１の印刷属性と前記第２の印刷属性とを該第１の印刷属性を優先して融合して生成され、前記属性項目に優先度が設定されている場合には、該優先度に基づいて前記第１の印刷属性と前記第２の印刷属性とを融合して生成されることを特徴とする請求項１記載の印刷処理方法。
【請求項３】
前記第２の印刷属性は、複数の属性項目から構成されるとともに、該属性項目の少なくとも一部に前記仮想プリンタの機能に基づく制約情報が設定され、前記第３の印刷属性は、前記制約情報に基づいて前記第１の印刷属性と前記第２の印刷属性とを融合して生成されることを特徴とする請求項１記載の印刷処理方法。
【請求項４】
前記第１の印刷属性および前記第２の印刷属性は、構造化文書としてファイルに記述されることを特徴とする請求項１記載の印刷処理方法。
【請求項５】
少なくとも１つのプリンタが接続されたサーバコンピュータとクライアントコンピュータとがネットワークで接続され、前記プリンタに関連付けられた前記サーバコンピュータ上の複数の仮想プリンタに対して、前記クライアントコンピュータから印刷処理を依頼する印刷システムの印刷処理装置において、
前記クライアントが要求する機能に関連付けられた第１の印刷属性を取得する第１の印刷属性取得手段と、
前記仮想プリンタの機能に関連付けられた第２の印刷属性を取得する第２の印刷属性取得手段と、
前記第１の印刷属性と前記第２の印刷属性とに基づき、前記第１の印刷属性を優先した第３の印刷属性を生成する印刷属性生成手段と、
前記印刷属性生成手段が生成した第３の印刷属性を前記仮想プリンタに送出する印刷属性送出手段と
を具備することを特徴とする印刷処理装置。
【請求項６】
前記第１の印刷属性および前記第２の印刷属性は、複数の属性項目から構成されるとともに該属性項目のそれぞれに優先度が設定可能であり、
前記印刷属性生成手段は、前記属性項目毎に前記第１の印刷属性と前記第２の印刷属性とを該第１の印刷属性を優先して融合し、前記属性項目に優先度が設定されている場合には、該優先度に基づいて前記第１の印刷属性と前記第２の印刷属性とを融合して、前記第３の印刷属性を生成する
ことを特徴とする請求項５記載の印刷処理装置。
【請求項７】
前記第２の印刷属性は、複数の属性項目から構成されるとともに、該属性項目の少なくとも一部に前記仮想プリンタの機能に基づく制約情報が設定され、
前記印刷属性生成手段は、前記制約情報に基づいて前記第１の印刷属性と前記第２の印刷属性とを融合して前記第３の印刷属性を生成する
ことを特徴とする請求項５記載の印刷処理装置。
【請求項８】
前記第１の印刷属性および前記第２の印刷属性は、構造化文書としてファイルに記述されることを特徴とする請求項５記載の印刷処理装置。
【請求項９】
前記印刷属性生成手段が生成した第３の印刷属性を前記クライアントコンピュータ上で表示し、ユーザに対して確認を求める印刷属性確認手段をさらに具備することを特徴とする請求項５記載の印刷処理装置。
【請求項１０】
前記第１の印刷属性取得手段、前記第２の印刷属性取得手段、前記印刷属性生成手段、前記印刷属性送出手段は、前記サーバコンピュータに配設されることを特徴とする請求項５記載の印刷処理装置。
【請求項１１】
前記第１の印刷属性取得手段、前記第２の印刷属性取得手段、前記印刷属性生成手段、前記印刷属性送出手段は、前記クライアントコンピュータに配設されることを特徴とする請求項５記載の印刷処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、印刷処理方法および装置に関し、特に、クライアントとプリントサーバ間に依存関係がない環境での印刷処理方法および装置に関する。
【０００２】
【従来の技術】
複数のクライアントからサーバ上の複数の仮想プリンタを共有しているネットワークシステムにおいては、クライアントと仮想プリンタの間のインタフェースを共通のものとして定義してしまうと、各仮想プリンタの機能の共通部分だけを利用することになり、各仮想プリンタの機能を最大限に発揮することができない。
【０００３】
従って、各仮想プリンタの機能を最大限に発揮するには、クライアントが、印刷指示を出す対象となる仮想プリンタの機能情報を受け取り、この機能情報に従い印刷属性値等を決定していくことになる。
【０００４】
例えば、特開平５−２０４５６８号公報に記載されている「ダイアローグフィルターリング方法」では、クライアントは、該当する仮想プリンタが利用可能な印刷属性値となるようにフィルタリングするマスクファイルをサーバから取得し、ユーザが該当する仮想プリンタ用にフィルタリングされた印刷属性リストから属性を選択するようにしている。
【０００５】
また、特開平６−１１０６２９号公報に記載されている「印字選択項目利用可能性を決定しかつ印字ジョブ選択項目の組み合わせにおける競合解決を表現するための装置」では、クライアントは、サーバ上の仮想プリンタ内の印字装置プロフィール内にある利用可能な印刷属性リストを取得するとともに、クライアント側に対話的な属性値選択を行うためのＵＩ（ユーザインタフェース）を用意し、ユーザがそのＵＩを用いて決定した印刷属性値群が利用可能な印刷属性リストを満たすかどうかの検証を検証装置により行っている。
【０００６】
【発明が解決しようとする課題】
しかしながら、上述した特開平６−１１０６２９号公報に記載されている方法では、ユーザは、印刷処理を実行する都度、サーバ上に存在する該当仮想プリンタ用の利用可能な印刷属性リスト等を取得し、その後、印刷属性値の設定を行わなければならない。このため、作業を自動化したい場合等には、非常に不便である。
【０００７】
また、上述した特開平５−２０４５６８号公報に記載されている方法で用いられているマスクファイルは、利用可能な印刷属性にマスクをかけてフィルタリングを行っているだけであるため、強制的に印刷属性を指定する等の処理ができないものであった。
【０００８】
そこで、この発明は、クライアントとサーバ上の仮想プリンタに依存関係が無い環境において、ユーザが容易に所望の印刷属性値を指定することのできる印刷処理方法および装置を提供することを目的とする。
【０００９】
【課題を解決するための手段】
上述した目的を達成するため、請求項１の発明は、少なくとも１つのプリンタが接続されたサーバコンピュータとクライアントコンピュータとがネットワークで接続され、前記プリンタに関連付けられた前記サーバコンピュータ上の仮想プリンタに対して、前記クライアントコンピュータから印刷処理を依頼する印刷システムの印刷処理方法において、前記クライアントが要求する機能に関連付けられた第１の印刷属性と前記仮想プリンタの機能に関連付けられた第２の印刷属性とに基づき、前記第１の印刷属性を優先した第３の印刷属性を生成し、該生成した第３の印刷属性に基づいて前記クライアントからの印刷要求を実行することを特徴とする。
【００１０】
また、請求項２の発明は、請求項１の発明において、前記第１の印刷属性および前記第２の印刷属性は、複数の属性項目から構成されるとともに該属性項目のそれぞれに優先度が設定可能であり、前記第３の印刷属性は、前記属性項目毎に前記第１の印刷属性と前記第２の印刷属性とを該第１の印刷属性を優先して融合して生成され、前記属性項目に優先度が設定されている場合には、該優先度に基づいて前記第１の印刷属性と前記第２の印刷属性とを融合して生成されることを特徴とする。
【００１１】
また、請求項３の発明は、請求項１の発明において、前記第２の印刷属性は、複数の属性項目から構成されるとともに、該属性項目の少なくとも一部に前記仮想プリンタの機能に基づく制約情報が設定され、前記第３の印刷属性は、前記制約情報に基づいて前記第１の印刷属性と前記第２の印刷属性とを融合して生成されることを特徴とする。
【００１２】
また、請求項４の発明は、請求項１の発明において、前記第１の印刷属性および前記第２の印刷属性は、構造化文書としてファイルに記述されることを特徴とする。
【００１３】
また、請求項５の発明は、少なくとも１つのプリンタが接続されたサーバコンピュータとクライアントコンピュータとがネットワークで接続され、前記プリンタに関連付けられた前記サーバコンピュータ上の複数の仮想プリンタに対して、前記クライアントコンピュータから印刷処理を依頼する印刷システムの印刷処理装置において、前記クライアントが要求する機能に関連付けられた第１の印刷属性を取得する第１の印刷属性取得手段と、前記仮想プリンタの機能に関連付けられた第２の印刷属性を取得する第２の印刷属性取得手段と、前記第１の印刷属性と前記第２の印刷属性とに基づき、前記第１の印刷属性を優先した第３の印刷属性を生成する印刷属性生成手段と、前記印刷属性生成手段が生成した第３の印刷属性を前記仮想プリンタに送出する印刷属性送出手段とを具備することを特徴とする。
【００１４】
また、請求項６の発明は、請求項５の発明において、前記第１の印刷属性および前記第２の印刷属性は、複数の属性項目から構成されるとともに該属性項目のそれぞれに優先度が設定可能であり、前記印刷属性生成手段は、前記属性項目毎に前記第１の印刷属性と前記第２の印刷属性とを該第１の印刷属性を優先して融合し、前記属性項目に優先度が設定されている場合には、該優先度に基づいて前記第１の印刷属性と前記第２の印刷属性とを融合して、前記第３の印刷属性を生成することを特徴とする。
【００１５】
また、請求項７の発明は、請求項５の発明において、前記第２の印刷属性は、複数の属性項目から構成されるとともに、該属性項目の少なくとも一部に前記仮想プリンタの機能に基づく制約情報が設定され、前記印刷属性生成手段は、前記制約情報に基づいて前記第１の印刷属性と前記第２の印刷属性とを融合して前記第３の印刷属性を生成することを特徴とする。
【００１６】
また、請求項８の発明は、請求項５の発明において、前記第１の印刷属性および前記第２の印刷属性は、構造化文書としてファイルに記述されることを特徴とする。
【００１７】
また、請求項９の発明は、請求項５の発明において、前記印刷属性生成手段が生成した第３の印刷属性を前記クライアントコンピュータ上で表示し、ユーザに対して確認を求める印刷属性確認手段をさらに具備することを特徴とする。
【００１８】
また、請求項１０の発明は、請求項５の発明において、前記第１の印刷属性取得手段、前記第２の印刷属性取得手段、前記印刷属性生成手段、前記印刷属性送出手段は、前記サーバコンピュータに配設されることを特徴とする。
【００１９】
また、請求項１１の発明は、請求項５の発明において、前記第１の印刷属性取得手段、前記第２の印刷属性取得手段、前記印刷属性生成手段、前記印刷属性送出手段は、前記クライアントコンピュータに配設されることを特徴とする。
【００２０】
【発明の実施の形態】
以下、この発明に係る印刷処理方法および装置の一実施の形態について、添付図面を参照して詳細に説明する。
【００２１】
図１は、この発明を適用した印刷システムの構成例を示すブロック図である。同図に示すように、この発明を適用した印刷システムは、複数のクライアント１（１−１〜１−ｐ）と、複数の仮想プリンタ２（２−１〜２−ｑ）を構成するサーバ３（３−１〜３−ｒ）がネットワーク５を介して接続されている。また、サーバ３には、仮想プリンタ２に関連付けられたプリンタ４（４−１〜４−ｓ）が接続されている。
【００２２】
この印刷システムでは、サーバ３上に構成される仮想プリンタ２の数は、任意であり、仮想プリンタ２とプリンタ４との対応も１対１である必要はない。例えば、図１に示した例では、サーバ３−１上に仮想プリンタ２−１、サーバ３−２上に仮想プリンタ２−２と仮想プリンタ２−３、サーバ３−ｒ上に仮想プリンタ２−（ｑ−１）と仮想プリンタ２−ｑが構成されている。また、仮想プリンタ２−１とプリンタ４−１、仮想プリンタ２−２とプリンタ４−２、仮想プリンタ２−３とプリンタ４−３、仮想プリンタ２−（ｑ−１）および仮想プリンタ２−ｑがプリンタ４−ｓと関連付けられている。
【００２３】
次に、この発明の印刷システムへの適用例を説明する。図２は、この発明の印刷システムへの適用例を示した図である。
【００２４】
同図に示すように、クライアント１は、属性ファイル融合部１１と属性ファイル１２、アプリケーション１３を具備し、サーバ３上の仮想プリンタ２は、属性ファイル２１を具備している。
【００２５】
属性ファイル融合部１１は、属性ファイル１２と属性ファイル２１を融合して、印刷を実行する際に利用する印刷属性を生成する。属性ファイル１２と属性ファイル２１は、それぞれ印刷属性が記述されたファイルであるが、その詳細は後述する。なお、属性ファイル１２は、複数用意することが可能であり、ここでは、少なくとも１つがデフォルトの印刷属性を記述したものとして用意され、この他にユーザが所望の印刷属性を記述したものを用意することができる。
【００２６】
また、アプリケーション１３は、様々な処理を行うとともに、印刷処理を指示するもので、任意の種類のものが任意の数だけ、インストールされている。
【００２７】
ここで、この印刷システムにおける印刷処理の流れを説明する。図３は、印刷処理の流れを示すフローチャートである。なお、同図において、符号末尾に「Ｃ」を付しているものはクライアント１での処理を示し、符号末尾に「Ｓ」を付しているものはサーバ３での処理を示している。
【００２８】
まず、ユーザがクライアント１のアプリケーション１３から印刷処理を指示すると、当該指示は、属性ファイル融合部１１に入力され、属性ファイル融合部１１は、ユーザに対して印刷属性ファイル１２の作成または選択を要求する（ステップ１０１Ｃ）。
【００２９】
ユーザが、この要求に応じて印刷属性ファイル１２を作成または選択すると（ステップ１０２ＣでＹＥＳ）、属性ファイル融合部１１は、サーバ３上の仮想プリンタ２から印刷属性ファイル２１を取得する（ステップ１０３Ｃ）。なお、印刷属性ファイル２１は、ユーザが選択した仮想プリンタ２（仮想プリンタ２−１〜２−ｑのいずれか）から取得する。
【００３０】
続いて、属性ファイル融合部１１は、印刷属性ファイル１２に記述された印刷属性と印刷属性ファイル２１に記述された印刷属性とを融合し、新たな印刷属性を生成する（ステップ１０４Ｃ）。そして、融合した印刷属性の検証をユーザに要求する（ステップ１０５Ｃ）。属性ファイル融合部１１による融合結果の検証要求は、図４に示すようなＵＩをクライアント１に表示することで行われる。このＵＩでは、属性ファイル融合部１１が融合した印刷属性が示されるが、ユーザが指定した印刷属性と異なる結果となった部分に関しては、反転若しくは色を変えて表示され、ユーザの注意を促すようにされている。
【００３１】
ユーザによる印刷属性の検証の結果、ユーザが印刷の指示を行った、つまり、検証結果をＯＫとした場合には（ステップ１０６ＣでＹＥＳ）、属性ファイル融合部１１は、サーバ３上の仮想プリンタ２に対して印刷指示を発行し（ステップ１０７Ｃ）、これを受けた仮想プリンタ２が印刷処理を実行し（ステップ１０８Ｓ）、処理を終了する。
【００３２】
一方、ユーザによる印刷属性の検証の結果、ユーザが印刷指示のやり直しを選択した場合には（ステップ１０６ＣでＮＯ、ステップ１０９ＣでＮＯ）、印刷属性ファイル１２の作成または選択の処理からやり直すことになる。
【００３３】
また、ユーザによる印刷属性の検証の結果、ユーザが処理のキャンセルを選択した場合には（ステップ１０６ＣでＮＯ、ステップ１０９ＣでＹＥＳ）、属性ファイル融合部１１は、これまでに行った処理をキャンセルし（ステップ１１０Ｃ、処理を終了する。
【００３４】
なお、ここでは、図４に示したＵＩをクライアント１に表示して、融合した印刷属性の検証をユーザに要求したが、この検証処理を省き、印刷属性の融合後、直ちに仮想プリンタ２へ印刷指示を発行するようにしてもよい（ステップ１０４Ｃの処理後、直ちにステップ１０７Ｃの処理を実行）。
【００３５】
次に、印刷属性ファイル１２および印刷属性ファイル２１について説明する。図５は、印刷属性ファイル１２（２１）の構成を示した図である。なお、ここでは、印刷属性ファイル１２（２１）は、構造化文書の１つであるＸＭＬ(eXtensible Markup Language)により記述されているものとする。
【００３６】
同図に示すように、印刷属性ファイル１２（２１）は、ＸＭＬ処理命令１２ａ（２１ａ）と、文書スキーマ定義１２ｂ（２１ｂ）、文書の構造と値１２ｃ（２１ｃ）により構成される。ＸＭＬ処理命令１２ａ（２１ａ）では、印刷属性ファイル１２（２１）がＸＭＬで記述されている旨を宣言している。また、文書スキーマ定義部１２ｂ（２１ｂ）では、各印刷属性値のとり得る範囲を指定し、文書の構造と値１２ｃ（２１ｃ）では、各印刷属性値の構造と値を指定している。
【００３７】
図６は、印刷属性ファイル１２（２１）の記述例を示した図である。
【００３８】
同図においては、ＸＭＬ処理命令１２ａ（２１ａ）に相当する部分を
<?xml version="1.0" encording="Shift_JIS"?>
として記述している。
【００３９】
また、文書スキーマ定義１２ｂ（２１ｂ）に相当する部分は、ＤＴＤ(Document Type Definition)として、
<!ELEMENT SIZE(A5|A4|A3)>
等のように記述している。この記述では、印刷属性の１つである用紙サイズのとり得る範囲として、Ａ５、Ａ４、Ａ３を指定している。この結果、Ａ５、Ａ４、Ａ３以外の用紙は、禁止属性となる。
【００４０】
また、文書の構造と値１２ｃ（２１ｃ）に相当する部分は、
<attribute-set xmlns="......">
と、
</attribute-set>
の間に挟まれた部分に、
<size priority="best">A4</size>
のように記述している。この記述では、印刷属性の１つである用紙サイズにＡ４を指定している。
【００４１】
次に、印刷属性ファイル１２と印刷属性ファイル２１の融合について、説明する。印刷属性を融合する場合、基本的にはクライアント１側で指定した印刷属性、つまり、印刷属性ファイル１２に記述された印刷属性を優先して融合することになるが、印刷属性ファイル１２に記述された印刷属性が、印刷属性ファイル２１で禁止属性となっている場合には、クライアント１側で指定した印刷属性は変更され、図４に示したようなＵＩにより、その変更をユーザに確認することになる。
【００４２】
例えば、ユーザが印刷実行時の色として２５６色を指定した場合、印刷属性ファイル１２の文書の構造と値１２ｃに
<color>256color</color>
が記述される。このとき、仮想プリンタ２側の印刷属性ファイル２１の文書スキーマ定義２１ｂに
<!ELEMENT COLOR(mono|256color|fullcolor)>
が記述され、仮想プリンタ２がとり得る色の範囲として、モノクロ、２５６色カラー、フルカラーが指定されていれば、両者を融合した結果は、ユーザが指定した２５６色カラーとすることができる。
【００４３】
しかしながら、仮想プリンタ２がモノクロプリンタである場合等では、印刷属性ファイル２１の文書スキーマ定義２１ｂに
<!ELEMENT COLOR(mono)>
が記述され、仮想プリンタ２がとり得る色の範囲としてモノクロのみが指定されていることになる。この場合には、２５６色カラーは、禁止属性となるため、両者を融合した場合には、ユーザが指定した２５６色とは異なるモノクロが印刷属性となる。
【００４４】
次に、この発明の印刷システムへの別の適用例を説明する。図７は、この発明の印刷システムへの別の適用例を示した図である。
【００４５】
同図に示すように、クライアント１は、属性ファイル１２とアプリケーション１３を具備し、サーバ３は、仮想プリンタ２と属性ファイル融合部３１を具備している。また、サーバ３上の仮想プリンタ２は、属性ファイル２１を具備している。
【００４６】
属性ファイル融合部３１は、上述した属性ファイル融合部１１と同様に動作し、属性ファイル１２と属性ファイル２１を融合して、印刷を実行する際に利用する印刷属性を生成する。属性ファイル１２と属性ファイル２１は、それぞれ印刷属性が記述されたファイルである。
【００４７】
ここで、この印刷システムにおける印刷処理の流れを説明する。図８は、印刷処理の流れを示すフローチャートである。なお、同図において、符号末尾に「Ｃ」を付しているものはクライアント１での処理を示し、符号末尾に「Ｓ」を付しているものはサーバ３での処理を示している。
【００４８】
まず、ユーザがクライアント１のアプリケーション１３から印刷処理を指示すると、当該指示は、属性ファイル融合部３１に入力され、属性ファイル融合部３１は、ユーザに対して印刷属性ファイル１２の作成または選択を要求する（ステップ２０１Ｃ）。
【００４９】
ユーザが、この要求に応じて印刷属性ファイル１２を作成または選択すると（ステップ２０２ＣでＹＥＳ）、印刷属性ファイル１２が印刷指示として属性ファイル融合部３１に送られる（ステップ２０３Ｃ）。
【００５０】
これを受けた属性ファイル融合部３１は、受け取った印刷属性ファイル１２を参照し（ステップ２０４Ｓ）、これと印刷属性ファイル２１を融合して新たな印刷属性を生成する（ステップ２０５Ｃ）。そして、融合した印刷属性に基づいて仮想プリンタ２が印刷処理を実行し（ステップ２０６Ｓ）、処理を終了する。
【００５１】
このように、属性ファイル融合部３１をサーバ３に配した場合には、印差ｔる属性ファイル１２と印刷属性ファイル２１の融合がサーバ３での自動処理として実行されるため、ユーザは、属性ファイル融合部３１をサーバ３側で動作するフィルタとして利用することができる。
【００５２】
次に、印刷属性ファイル１２と印刷属性ファイル２１、印刷属性の融合の別の例について説明する。
【００５３】
印刷属性の融合を行う場合、融合する印刷属性が単純なものであれば、上述のように印刷属性のとり得る範囲を指定するのみで対応が可能であったが、印刷属性が複雑となる場合には、印刷属性のとり得る範囲を指定するのみで対応が困難となる場合がある。
【００５４】
例えば、図９に示すように、Ａ３縦用紙とＡ３横用紙をまとめて用紙左上でホチキス止めする指定がなされたとする。この場合、Ａ３縦用紙に対する用紙左上のホチキス止めと、Ａ３横用紙に対する用紙左上のホチキス止めは、それぞれ印刷属性のとり得る範囲であったとしても、両者をまとめてホチキス止めすることは不可能である。
【００５５】
また、この他にも用紙としてＯＨＰシートが指定され、両面印刷が指定された場合も、それぞれは印刷属性のとり得る範囲であったとしても、両者を同時に実行することは不可能である。
【００５６】
複雑な印刷属性を設定する方法としては、印刷属性ファイル１２や印刷属性ファイル２１において、各印刷属性に優先度を設定し、属性ファイル融合部１１（３１）が設定された優先度に基づいて両者を融合するものがある。この場合には、印刷属性ファイル１２や印刷属性ファイル２１において、印刷属性の１つである用紙サイズを指定する際に、
<size priority="3">A4</size>
のように、優先度(priority)を記述する。
【００５７】
また、複雑な印刷属性を指定する場合に、印刷属性ファイル１２（２１）の文書スキーマ定義１２ｂ（２１ｂ）に、印刷属性のとり得る範囲に加えて制約情報を記述することも考えられる。この場合には、図１０（ａ）に示すように、文書スキーマ定義１２ｂには、主として用紙の扱いに関する制約を記述し、図１０（ｂ）に示すように、文書スキーマ定義２１ｂに、主としてドメイン情報（範囲）とプリンタ機能に関する制約を記述する。
【００５８】
図１１は、文書スキーマ定義２１ｂにおけるドメイン情報の記述例を示した図であり、図１２は、文書スキーマ定義２１ｂにおける制約の記述例を示した図である。
【００５９】
ドメイン情報は、印刷属性のとり得る範囲を示したもので、上述の図６では、ＤＴＤとして記述していたが、図１１に示した例では、ＸＭＬスキーマとしている。
【００６０】
この記述では、用紙サイズの範囲のように、単純なものは、
<!--用紙サイズのドメイン-->
<xsd:simpleType name="Size-Domain" base="xsd:string">
<xsd:enumeration value="A0"/>
<xsd:enumeration value="A1"/>
<xsd:enumeration value="A2"/>
<xsd:enumeration value="A3"/>
<xsd:enumeration value="A4"/>
</xsd:simpleType>
のように記述するが、入力用紙と出力用紙のマッピングのように複雑となるものは、
<!--入力用紙−出力用紙マッピングのスキーマ-->
<xsd:complexType name="PaperIO-Mapping">
<xsd:element name="in" type="Size-Domain">
<xsd:attribute name="Direction-Domain" type="xsd:string"/>
</xsd:element>
<xsd:element name="out" type="Size-Domain">
<xsd:attribute name="Direction-Domain" type="xsd:string"/>
</xsd:element>
</xsd:complexType>
のように階層構造を利用して記述する。
【００６１】
また、プリンタ機能の制約も図１２に示すように階層構造を利用して記述し、例えば、上述したホチキス止めに関する制約は、
<printer-info restriction:response="yes">
<stapler restriction:ex="and">
<mapping restriction:ex="or">
<map restriction:op="*">
<in/>
<out/>
</map>
</mapping>
</stapler>
<printer-info>
のように記述する。
【００６２】
ここで、この制約が記述された印刷属性ファイル２１を参照して２つのオブジェクトを実行する場合を説明する。図１３および図１４は、２つのオブジェクトの印刷を実行する際の制約による検証場面からジョブ情報のみを抽出したものを示している。
【００６３】
図１３に示した検証場面では、２つのオブジェクトは、ともに、
<size priority="3">A4</size>
<direction priority="3">longways</direction>
<staple priority="3">none</staple>
<color priority="3">color</color>
の指定がなされているため、両者の指定を満たすことは可能となり、その結果は、
<size>A4</size>
<direction>longways</direction>
<staple>none</staple>
<color>color</color>
となる。
【００６４】
これに対して、図１４に示した検証場面では、１のオブジェクトが
<size priority="3">A3</size>
<direction priority="3">longways</direction>
<staple priority="3">up-right</staple>
<color priority="3">color</color>
の指定がなされ、もう１方のオブジェクトが
<size priority="3">A3</size>
<direction priority="3">broadways</direction>
<staple priority="3">up-right</staple>
<color priority="3">color</color>
の指定がなされている。
【００６５】
両者を比較すると、ホチキス止めの位置(staple)として両者はともに、右上(up-right)が指定されているが、用紙の方向(direction)が、それぞれ縦(longways)と横(broadways)が指定されているため、両者の指定を満たすことはできず、その結果は、
<size>A4</size>
<direction>?????</direction>
<staple>?????</staple>
<color>color</color>
となり、クライアント１側にエラーが返されることとなる。
【００６６】
このように、印刷属性ファイル１２、印刷属性ファイル２１を記述する際に、印刷属性に優先度を設定したり、制約を記述することで、より詳細な設定を行うことができる。
【００６７】
また、その記述は、ＸＭＬ等を用いて行うため、その変更等も容易に行うことが可能となる。
【００６８】
【発明の効果】
以上説明したように、この発明によれば、仮想プリンタに関連付けられた印刷属性と、ユーザが指定する印刷属性とを融合して印刷属性を生成し、生成した印刷属性に基づいて印刷処理を実行するように構成したので、クライアントとサーバの間に予め依存関係が無い場合においても、容易な操作で、クライアント側とユーザ側のそれぞれの意向を満たした印刷属性値により印刷処理を実行することが可能となる。
【図面の簡単な説明】
【図１】この発明を適用した印刷システムの構成例を示すブロック図である。
【図２】この発明の印刷システムへの適用例を示した図である。
【図３】印刷処理の流れを示すフローチャートである。
【図４】融合結果の検証要求時にクライアント１に表示されるＵＩの例を示した図である。
【図５】印刷属性ファイル１２（２１）の構成を示した図である。
【図６】印刷属性ファイル１２（２１）の記述例を示した図である。
【図７】この発明の印刷システムへの別の適用例を示した図である。
【図８】別の適用例における印刷処理の流れを示すフローチャートである。
【図９】実行不能な属性指定の例を示した図である。
【図１０】複雑な印刷属性を指定する場合の印刷属性ファイル１２（２１）の文書スキーマ定義１２ｂ（２１ｂ）の記述例を示した図である。
【図１１】文書スキーマ定義２１ｂにおけるドメイン情報の記述例を示した図である。
【図１２】図１２は、文書スキーマ定義２１ｂにおける制約の記述例を示した図である。
【図１３】２つのオブジェクトの印刷を実行する際の制約による検証場面からジョブ情報のみを抽出したものを示した図（１）である。
【図１４】２つのオブジェクトの印刷を実行する際の制約による検証場面からジョブ情報のみを抽出したものを示した図（１）である。
【符号の説明】
１、１−１〜１−ｐ    クライアント
２、２−１〜２−ｑ    仮想プリンタ
３、３−１〜３−ｒ    サーバ
４、４−１〜４−ｓ    プリンタ
１１    属性ファイル融合部
１２    属性ファイル
１２ａ    ＸＭＬ処理命令
１２ｂ    文書スキーマ定義
１２ｃ    文書の構造と値
１３    アプリケーション
２１    属性ファイル
２１ａ    ＸＭＬ処理命令
２１ｂ    文書スキーマ定義
２１ｃ    文書の構造と値
３１    属性ファイル融合部
【図１】
0003979036.tif 000002
【図２】
0003979036.tif 000003
【図３】
0003979036.tif 000004
【図４】
0003979036.tif 000005
【図５】
0003979036.tif 000006
【図６】
0003979036.tif 000007
【図７】
0003979036.tif 000008
【図８】
0003979036.tif 000009
【図９】
0003979036.tif 000010
【図１０】
0003979036.tif 000011
【図１１】
0003979036.tif 000012
【図１２】
0003979036.tif 000013
【図１３】
0003979036.tif 000014
【図１４】
0003979036.tif 000015