(57)【要約】【課題】無効な印刷設定を容易に、かつ、適切に修正するための有効な印刷設定を作り上げる。【解決手段】複数の印刷機能における印刷設定値の組み合わせに関する印刷設定情報から無効な設定となる印刷設定値の組み合わせを検索する検索手段と、前記検索手段により検索された前記組み合わせの型を解析し、前記解析した型に基づいて、前記組み合わせを修正するための修正候補を示す修正候補情報を作成する作成手段と、を有することによって課題を解決する。【選択図】図５
2014203391.tif 000002
【特許請求の範囲】
【請求項１】
複数の印刷機能における印刷設定値の組み合わせに関する印刷設定情報から無効な設定となる印刷設定値の組み合わせを検索する検索手段と、
前記検索手段により検索された前記組み合わせの型を解析し、前記解析した型に基づいて、前記組み合わせを修正するための修正候補を示す修正候補情報を作成する作成手段と、
を有する情報処理装置。
【請求項２】
無効な設定となる印刷設定値の組み合わせを示す禁則情報を管理する管理手段を更に有し、
前記検索手段は、前記管理手段により管理されている禁則情報に基づいて、前記印刷設定情報から無効な設定となる印刷設定値の組み合わせを検索する請求項１記載の情報処理装置。
【請求項３】
前記作成手段は、前記型が一の印刷設定値と、他の複数の印刷設定値との組み合わせが全て無効な設定となる第１の型であると解析した場合、前記一の印刷設定値を標準値へ変更することと、前記他の複数の印刷設定値を全て標準値へ変更することとを修正候補とする修正候補情報を作成する請求項１又は２記載の情報処理装置。
【請求項４】
前記作成手段は、前記型が無効な設定となる印刷設定値の組み合わせの関係が環状となる第２の型であると解析した場合、隣り合う印刷設定値のうち少なくとも何れか一方の印刷設定値を標準値へ変更することを修正候補とする修正候補情報を作成する請求項１又は２記載の情報処理装置。
【請求項５】
前記作成手段は、前記型が一の印刷設定値と、他の複数の印刷設定値との組み合わせが全て無効な設定となる第１の型と、無効な設定となる印刷設定値の組み合わせの関係が環状となる第２の型とが複数混在する第３の型であると解析した場合、
前記第１の型に対しては、前記一の印刷設定値を標準値へ変更することと、前記他の複数の印刷設定値を全て標準値へ変更することとを修正候補とする修正候補情報を作成し、
前記第２の型に対しては、隣り合う印刷設定値のうち少なくとも何れか一方の印刷設定値を標準値へ変更することを修正候補とする修正候補情報を作成する請求項１又は２記載の情報処理装置。
【請求項６】
前記印刷設定情報を処理する処理実行手段と、
ユーザの指示を受け付ける受け付け手段と、
を更に有し、
前記処理実行手段は、
前記検索手段と、
前記作成手段と、
前記作成手段により作成された前記修正候補情報を前記受け付け手段に送信する送信手段と、
を有し、
前記受け付け手段は、
前記送信手段により送信された前記修正候補情報を受信する受信手段と、
前記受信手段により受信された前記修正候補情報が示す修正候補を操作画面に表示する表示手段と、
を有する請求項１乃至５何れか１項記載の情報処理装置。
【請求項７】
前記表示手段は、前記受信手段により複数の前記修正候補情報が受信された場合、予め記憶装置に保存されている順番情報が示す順番に基づいて、前記修正候補情報が示す修正候補を順番に操作画面に表示する請求項６記載の情報処理装置。
【請求項８】
前記受け付け手段は、
操作画面を介して受け付けたユーザの指示に基づいて、前記印刷設定情報を作成する設定情報作成手段と、
前記設定情報作成手段により作成された前記印刷設定情報を前記処理実行手段に送信する設定情報送信手段と、
を更に有し、
前記処理実行手段は、
前記設定情報送信手段により送信された前記印刷設定情報を受信する設定情報受信手段を更に有し、
前記検索手段は、前記設定情報受信手段により受信された前記印刷設定情報から無効な設定となる印刷設定値の組み合わせを検索する請求項６又は７記載の情報処理装置。
【請求項９】
操作画面を介して受け付けたユーザの指示に基づいて、複数の印刷機能における印刷設定値の組み合わせに関する印刷設定情報を作成する設定情報作成手段と、
前記設定情報作成手段により作成された前記印刷設定情報を送信する設定情報送信手段と、
前記設定情報送信手段により送信された前記印刷設定情報を受信する設定情報受信手段と、
前記設定情報受信手段により受信された前記印刷設定情報から無効な設定となる印刷設定値の組み合わせを検索する検索手段と、
前記検索手段により検索された前記組み合わせの型を解析し、前記解析した型に基づいて、前記組み合わせを修正するための修正候補を示す修正候補情報を作成する作成手段と、
前記作成手段により作成された前記修正候補情報を前記受け付け手段に送信する送信手段と、
前記送信手段により送信された前記修正候補情報を受信する受信手段と、
前記受信手段により受信された前記修正候補情報が示す修正候補を操作画面に表示する表示手段と、
を有するシステム。
【請求項１０】
情報処理装置が実行する情報処理方法であって、
複数の印刷機能における印刷設定値の組み合わせに関する印刷設定情報から無効な設定となる印刷設定値の組み合わせを検索する検索ステップと、
前記検索ステップにより検索された前記組み合わせの型を解析し、前記解析した型に基づいて、前記組み合わせを修正するための修正候補を示す修正候補情報を作成する作成ステップと、
を含む情報処理方法。
【請求項１１】
システムが実行する情報処理方法であって、
操作画面を介して受け付けたユーザの指示に基づいて、複数の印刷機能における印刷設定値の組み合わせに関する印刷設定情報を作成する設定情報作成ステップと、
前記設定情報作成ステップにより作成された前記印刷設定情報を送信する設定情報送信ステップと、
前記設定情報送信ステップにより送信された前記印刷設定情報を受信する設定情報受信ステップと、
前記設定情報受信ステップにより受信された前記印刷設定情報から無効な設定となる印刷設定値の組み合わせを検索する検索ステップと、
前記検索ステップにより検索された前記組み合わせの型を解析し、前記解析した型に基づいて、前記組み合わせを修正するための修正候補を示す修正候補情報を作成する作成ステップと、
前記作成ステップにより作成された前記修正候補情報を前記受け付けステップに送信する送信ステップと、
前記送信ステップにより送信された前記修正候補情報を受信する受信ステップと、
前記受信ステップにより受信された前記修正候補情報が示す修正候補を操作画面に表示する表示ステップと、
を含む情報処理方法。
【請求項１２】
コンピュータに、
複数の印刷機能における印刷設定値の組み合わせに関する印刷設定情報から無効な設定となる印刷設定値の組み合わせを検索する検索ステップと、
前記検索ステップにより検索された前記組み合わせの型を解析し、前記解析した型に基づいて、前記組み合わせを修正するための修正候補を示す修正候補情報を作成する作成ステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
ユーザは、コンピュータ上で作成された文書や図等のファイルをプリンタで印刷する際に、用紙の種類、両面、カラー、給紙段といった印刷に関する設定を指定する。印刷に関するプリンタの機能の数は数十個に上り、中には、「はがき」と、「ステイプル」との組み合わせ又は「ＯＨＰフィルム」と、「両面」との組み合わせ等、印刷設定が無効となる組み合わせ（以下、コンフリクトという）が存在する。ユーザがプリンタドライバのユーザインタフェースを使用して印刷設定を行う場合、前記ユーザインタフェースは、コンフリクトとなる設定をグレーアウト表示することによってユーザに前記設定の選択を回避させる。しかし、ユーザは、プリンタドライバを使用しないで印刷設定を行うアプリケーションソフトを用いて印刷設定する場合、コンフリクトとなる設定を選択してしまうことがある。
そこで、特許文献１に開示されている技術は、ユーザがプリンタドライバを使用しないダイレクトプリントによる印刷においてコンフリクトが生じた場合、デバイス画面上で何れの機能を優先させるかを問う。これにより、特許文献１に開示されている技術は、ユーザにコンフリクトとならない設定の再設定を促すことができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−１１０８６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に開示されている技術は、ダイレクトプリントのような簡易な機能だけを設定する場合、コンフリクトとなる設定の数が限られるので、何れの機能を優先するかについて、ユーザに数回問うことでコンフリクトを解消させることができる。しかしながら、プリンタドライバのユーザインタフェースを使用しないアプリケーションであっても、高度な機能の印刷設定をすることができる編集ソフトにおいては、必然的にコンフリクトが複数発生しやすくなる。そのため、特許文献１に開示されている技術は、何れの機能を優先するかの質問を、ユーザに何度も問わなければならなくなる。そして、ユーザは、前記質問に何度も答えなくてはならなくなる。また、ユーザは、同じ機能に関して複数回にわたり設定解除の有無を尋ねられると、混乱して正しい判断を誤る可能性がある上に、間違った順番で質問されると、解除しなくてよい機能を外してしまう可能性がある。例えば、ユーザは、ステイプル機能と、パンチ機能との選択に関する問いに対してパンチ機能を解除したとする。しかし、その後、ユーザは、用紙サイズと、ステイプル機能との選択において、ステイプル機能を解除するかもしれない。そうなると、ユーザは、当初指定した指定用紙サイズと、ステイプル機能と、パンチ機能とのうち、指定用紙と、パンチ機能とを設定することができたにも係わらず、パンチ機能を無為に解除してしまったことになる。
本発明は、無効な印刷設定を容易に、かつ、適切に修正するための有効な印刷設定を作り上げることを目的とする。
【課題を解決するための手段】
【０００５】
そこで、本発明は、複数の印刷機能における印刷設定値の組み合わせに関する印刷設定情報から無効な設定となる印刷設定値の組み合わせを検索する検索手段と、前記検索手段により検索された前記組み合わせの型を解析し、前記解析した型に基づいて、前記組み合わせを修正するための修正候補を示す修正候補情報を作成する作成手段と、を有する。
【発明の効果】
【０００６】
本発明によれば、無効な印刷設定を容易に、かつ、適切に修正するための有効な印刷設定を作り上げることができる。
【図面の簡単な説明】
【０００７】
【図１】システム構成等の一例を示す図である。
【図２】システム構成の概念の一例を示す図である。
【図３】アプリケーション及びプリンタドライバの構成の一例を示す図である。
【図４】ＰｒｉｎｔＴｉｃｋｅｔの一例を示す図（その１）である。
【図５】ホスト装置の処理の一例を示すフローチャートである。
【図６】クラウドプリントにおけるシステム構成の概念の一例を示す図である。
【図７】アプリケーション及びミドルウェアの構成の一例を示す図である。
【図８】禁則情報及び修正候補情報の一例を示す図（その１）である。
【図９】修正候補追加処理の一例を示すフローチャート（その１）である。
【図１０】ＰｒｉｎｔＴｉｃｋｅｔの一例を示す図（その２）である。
【図１１】禁則情報及び修正候補情報の一例を示す図（その２）である。
【図１２】修正候補追加処理の一例を示すフローチャート（その２）である。
【図１３】ＰｒｉｎｔＴｉｃｋｅｔの一例を示す図（その３）である。
【図１４】禁則情報及び修正候補情報の一例を示す図（その３）である。
【図１５】ホスト装置の画面表示の一例を示す図である。
【発明を実施するための形態】
【０００８】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
＜実施形態１＞
図１は、本実施形態の印刷システムのシステム構成及びハードウェア構成の一例を示す図である。
図１の印刷システムは、ホストコンピュータ１００１と、プリンタ１０１３とを含む。
以下、ホストコンピュータ１００１について説明する。なお、ホストコンピュータ１００１は、情報処理装置の一例である。
ホストコンピュータ１００１は、図形、イメージ、文字、表（表計算等を含む）等の情報を含む文書の処理（以下、単に文書処理という）を実行する。
ＣＰＵ１００２は、システムバス１００５に接続される各デバイスを総括的に制御する。また、ＣＰＵ１００２は、ＲＯＭ１００４を構成するプログラムＲＯＭや、外部メモリ１０１２等に格納されているプログラムを実行することにより、ホストコンピュータ１００１の機能（ソフトウェア構成）やＯＳの機能を実現する。更に、ＣＰＵ１００２は、前記プログラムを実行することにより、後述するフローチャートの処理を実現する。
ＲＯＭ１００４を構成するプログラムＲＯＭや、外部メモリ１０１２は、ＣＰＵ１００２が実行する制御プログラムであるＯＳプログラムや、後述するプリンタドライバのプログラム等を記憶している。なお、外部メモリ１０１２は、フレキシブルディスク（ＦＤ）や、ハードディスク（ＨＤ）等で構成されるメモリである。ＲＯＭ１００４を構成するフォントＲＯＭや、外部メモリ１０１２は、ホストコンピュータ１００１が上記の文書処理を行う際に使用するフォントデータ等を記憶している。ＲＯＭ１００４を構成するデータＲＯＭや、外部メモリ１０１２は、ホストコンピュータ１００１が上記の文書処理等を行う際に使用する各種データを記憶している。更に、外部メモリ１０１２は、ブートプログラム、各種のアプリケーションプログラム、フォントデータ、ユーザファイル及び編集ファイル等を記憶している。
【０００９】
ＲＡＭ１００３は、ＣＰＵ１００２の主メモリ及びワークエリア等として機能する。
キーボードコントローラ（ＫＢＣ）１００６は、キーボード（ＫＢ）１０１０や、ポインティングデバイス等からのキー入力を制御する。
ＣＲＴコントローラ（ＣＲＴＣ）１００７は、ＣＲＴディスプレイ（ＣＲＴ）１０１１の表示を制御する。なお、ＣＲＴ１０１１は、操作画面の一例である。
ディスクコントローラ（ＤＫＣ）１００８は、外部メモリ１０１２とのアクセスを制御する。
プリンタコントローラ（ＰＲＴＣ）１００９は、双方向性インタフェース１０１８を介してプリンタ１０１３との通信を制御する。
なお、ＣＰＵ１００２は、例えばＲＡＭ１００３上に設定された表示情報ＲＡＭへのアウトラインフォントの展開（ラスタライズ）処理を実行し、印刷する画像と同一の画像をＣＲＴ１０１１上に表示するＷＹＳＩＷＹＧを実現する。また、ＣＰＵ１００２は、ＣＲＴ１０１１上のマウスカーソル等で指示されたコマンドに基づいて登録されている種々のウインドウを開き、種々のデータ処理を実行する。即ち、ユーザは、プリンタ１０１３で印刷を実行する際、ＣＲＴ１０１１上で印刷の設定に関するウインドウを開き、プリンタの設定や、印刷モードの選択等に関する印刷処理の設定を行うことができる。なお、その際、ユーザは、プリンタドライバが有するユーザインタフェースを用いずに、高機能な印刷設定が可能なアプリケーションを用いて印刷設定をすることができる。
【００１０】
プリンタ１０１３は、双方向性インタフェース１０１８を介してホストコンピュータ１００１と通信し、ホストコンピュータ１００１からの指示に基づいて印刷を実行することができる。なお、プリンタ１０１３は、画像形成装置の一例である。
以下、プリンタ１０１３について説明する。
ＣＰＵ１０１４は、システムバス１０１７に接続される各デバイスを総括的に制御する。また、ＣＰＵ１０１４は、ＲＯＭ１０１６を構成するプログラムＲＯＭや、外部メモリ１０２４等に格納されているプログラムを実行することにより、プリンタ１０１３の機能（ソフトウェア構成）を実現する。また、ＣＰＵ１０１４は、システムバス１０１７に接続される印刷部（プリンタエンジン）１０２２に出力情報としての画像信号を送信する。更に、ＣＰＵ１０１４は、入力部１０１９を介してホストコンピュータ１００１と通信処理をすることができ、プリンタ１０１３内の情報等をホストコンピュータ１００１に通知することができる。
ＲＯＭ１０１６を構成するプログラムＲＯＭは、ＣＰＵ１０１４が実行する制御プログラム等を記憶している。ＲＯＭ１０１６を構成するフォントＲＯＭは、プリンタ１０１３が上記の出力情報を生成する際に使用するフォントデータ等を記憶している。ＲＯＭ１０１６のデータＲＯＭは、外部メモリ１０２４がないプリンタの場合に、ホストコンピュータ１００１上で利用される情報等を記憶する。
【００１１】
ＲＡＭ１０１５は、ＣＰＵ１０１４の主メモリ及びワークエリア等として機能する。また、ＲＡＭ１０１５は、出力情報展開領域、環境データ格納領域及びＮＶＲＡＭ等に用いられる。なお、ＲＡＭ１０１５は、増設ポートに接続されるオプションＲＡＭによりメモリ容量を拡張することができるように構成されている。
印刷部Ｉ／Ｆ１０２０は、システムバス１０１７と、印刷部１０２２とのインタフェースである。
メモリコントローラ（ＭＣ）１０２１は、外部メモリ１０２４とのアクセスを制御する。
外部メモリ１０２４は、ハードディスク（ＨＤ）や、ＩＣカード等のメモリであり、オプションとして接続され、フォントデータ、エミュレーションプログラム及びフォームデータ等を記憶する。なお、プリンタ１０１３が有する外部メモリ１０２４の数は、１個に限る必要はなく複数個であってもよい。また、プリンタ１０１３は、内蔵フォントに加えて、オプションカード、言語系の異なるプリンタ制御言語を解釈するプログラム等を格納した外部メモリを複数個接続して有していてもよい。更に、プリンタ１０１３は、ＮＶＲＡＭを有していてもよく、操作部１０２３を介して受け付けたプリンタモードの設定情報をＮＶＲＡＭに保存するようにしてもよい。
【００１２】
上記の印刷システムにおいて、ホストコンピュータ１００１は、ＣＲＴ１０１１を介して受け付けたユーザの指示に基づいて印刷設定の決定や変更を行う。その際に、ホストコンピュータ１００１は、プリンタドライバのユーザインタフェースを用いずに、高機能な印刷設定が可能なアプリケーションを用いて印刷設定を行うことができる。また、ホストコンピュータ１００１は、前記アプリケーションを用いて設定した印刷設定が有効であるか否かをプリンタドライバにより判定し、有効でなければ有効となる印刷設定の候補を、ＣＲＴ１０１１を介してユーザに提供する。更に、ホストコンピュータ１００１は、ユーザにより修正された印刷設定に基づく印刷の実行指示をプリンタ１０１３に送信する。そして、プリンタ１０１３は、前記印刷実行の指示に基づいて印刷を実行する。
なお、上記の機能が実現されるのであれば、本実施形態のシステムの構成は図１の構成に限る必要はない。例えば、単体の機器のみの構成であってもよいし、ＬＡＮやＷＡＮ等のネットワークを介して接続される複数の機器により処理が行われるシステムであってもよい。例えば、ホストコンピュータ１００１は、ネットワークを介して通信可能な端末装置から印刷設定に関する情報を受信するようにしてもよい。
【００１３】
図２は、図１の印刷システムのシステム構成の概念の一例を示す図である。
図２は、入力装置１０１からホスト装置１０２に指示が通知され、ホスト装置１０２が前記指示に応じて印刷装置１０６に印刷データを送るという一連の処理を実行するシステム構成の概念を示している。
なお、ホスト装置１０２は、図１に示されるホストコンピュータ１００１（情報処理装置）の一例である。また、入力装置１０１は、ホスト装置１０２の一部であってもよい。また、ホスト装置１０２は、スタンドアローンのＰＣであってもよいし、クライアントサーバシステムのサーバ装置であってもよい。ここで、ホスト装置１０２がクライアントサーバシステムのサーバ装置であるとした場合、入力装置１０１は、クライアントサーバシステムのクライアントＰＣになる。また、印刷装置１０６は、図１に示されるプリンタ１０１３の一例である（以降の説明における印刷装置も、同様にプリンタ１０１３の一例であるとする）。
ホスト装置１０２は、入力装置１０１を介したユーザの指示に基づいて、ホスト装置１０２のＯＳ１０３上で動作するアプリケーション１０４及びプリンタドライバ１０５を制御して、印刷データを作成し、作成した印刷データを印刷装置１０６に送信する。
ここで、入力装置１０１と、ホスト装置１０２とを接続するインタフェース形式及びホスト装置１０２と、印刷装置１０６とを接続するインタフェース形式は、特定のインタフェース形式に限る必要はない。例えば、前記インタフェース形式は、セントロニクス、赤外線通信、無線通信、ＵＳＢ又はＩＥＥＥ１３９４規格で定義されたインタフェース形式等、何れの形式であってもよいし、ネットワーク接続形式であってもよい。
【００１４】
図３は、ＰｒｉｎｔＴｉｃｋｅｔを作成するアプリケーション１０４の構成と、印刷データを作成するプリンタドライバ１０５の構成との一例を示す図である。なお、ＰｒｉｎｔＴｉｃｋｅｔについての説明は、図４等を用いて後述する。なお、アプリケーション１０４は、ユーザの指示を受け付ける受け付け手段の一例である。また、プリンタドライバ１０５のコンフリクトエンジン２０６は、ＰｒｉｎｔＴｉｃｋｅｔを処理する処理実行手段の一例である。
通常、プリンタドライバは、各自のユーザインタフェースを有している。しかし、本実形態では、ユーザがプリンタドライバのユーザインタフェースを使用せずに、印刷設定を行う場合について説明する。これは、上述したように、本実施形態が、ユーザがプリンタドライバのユーザインタフェースを使用せずに、高度な機能の印刷設定をすることができるアプリケーションを用いて印刷設定を行う場合を想定した実施形態だからである。
アプリケーション１０４は、ユーザインタフェース２０２を介して、画像や、Ｗｏｒｄ（登録商標）ファイルフォーマットや、ＰＤＦ等のコンテンツデータのもととなるコンテンツファイルを取り込む。なお、ＰＤＦは、Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔの略称である。そして、アプリケーション１０４は、コンテンツ生成部２０３で、再度、ＰＤＦ等のコンテンツデータを作成する。更に、アプリケーション１０４は、ユーザインタフェース２０２を介して、ＲＯＭ１００４や外部メモリ１０１２等に格納されている印刷設定オブジェクトの内容を変更する。そして、アプリケーション１０４は、ＰｒｉｎｔＴｉｃｋｅｔ生成部２０４で、ユーザが確定した印刷設定の内容をＰｒｉｎｔＴｉｃｋｅｔに書きだす。ここで、アプリケーション１０４は、コンテンツ生成部２０３でコンテンツデータを生成するように説明したが、コンテンツデータを予めＲＯＭ１００４や外部メモリ１０１２等に保持しているようにしてもよい。その場合、アプリケーション１０４は、ＰｒｉｎｔＴｉｃｋｅｔ生成部２０４で、ＰｒｉｎｔＴｉｃｋｅｔのみを生成する。なお、アプリケーション１０４が、ＰｒｉｎｔＴｉｃｋｅｔを作成する処理は、設定情報作成処理の一例である。そして、アプリケーション１０４は、生成したＰｒｉｎｔＴｉｃｋｅｔを、プリンタドライバ１０５に送信する。なお、アプリケーション１０４がＰｒｉｎｔＴｉｃｋｅｔをプリンタドライバ１０５に送信する処理は、設定情報送信処理の一例である。また、プリンタドライバ１０５のコンフリクトエンジン２０６が前記ＰｒｉｎｔＴｉｃｋｅｔを受信する処理は、設定情報受信処理の一例である。
【００１５】
以下、印刷設定について、より具体的に説明する。
印刷設定とは、例えば出力する用紙サイズをＡ４にする、両面印刷を行う、カラーと、モノクロとを切り替える、給紙段を指定する等といった設定のことである。上記の印刷設定において、無効設定となる印刷設定の組み合わせである禁則の設定が必要ないのであれば、ユーザは、印刷設定をコンテンツデータに含ませることもできる。
次に、ＰｒｉｎｔＴｉｃｋｅｔについて、より具体的に説明する。
図４は、マークアップ言語のＸＭＬ形式で記述されたＰｒｉｎｔＴｉｃｋｅｔの一例を示す図である。
Ｐａｒａｍ要素４１は、属性名で、ＭｅｄｉａＴｙｐｅ機能を指定している。
Ｏｐｔｉｏｎ要素４２は、「ＯｎｅＳｉｄｅＣｏａｔｅｄ」という設定値を設定している。Ｏｐｔｉｏｎ要素４２に何を記述できるかは、デバイスの能力に依るので、アプリケーション１０４は、ユーザから印刷設定の入力を受け付ける前に、設定値のリストと、デフォルト値（標準値）とを取得しておくことが望ましい。更に、アプリケーション１０４は、設定値のデフォルト値を初期画面に表示し、デフォルト値を他の機能の設定値と一切禁則がない値、即ち、Ｓｔａｐｌｅ機能であれば「ＯＦＦ」等にしておくことが望ましい。なお、ここではＸＭＬ形式のＰｒｉｎｔＴｉｃｋｅｔを例に説明したが、ＰｒｉｎｔＴｉｃｋｅｔパーサ２０７が解釈できるものであれば、ＰｒｉｎｔＴｉｃｋｅｔの構造や記述言語は問わない。
なお、ＰｒｉｎｔＴｉｃｋｅｔは、複数の印刷機能における印刷設定値の組合せに関する印刷設定情報の一例である。
【００１６】
図５は、ホストコンピュータ１００１の一例であるホスト装置１０２の処理の一例を示すフローチャートである。
プリンタドライバ１０５のコンフリクトエンジン２０６のＰｒｉｎｔＴｉｃｋｅｔパーサ２０７は、アプリケーション１０４が描画データと、ＰｒｉｎｔＴｉｃｋｅｔとを生成すると、前記ＰｒｉｎｔＴｉｃｋｅｔの内容を解析する（Ｓ３０１）。
禁則処理部２０８の検索部２０９は、ＰｒｉｎｔＴｉｃｋｅｔの設定値の中から設定不可能な組み合わせ（禁則）を検索し、禁則となる組み合わせがあれば、禁則の組み合わせリスト（以下、無効設定リストという）を作成する（Ｓ３０２）。
禁則処理部２０８の構造解析部２１０は、Ｓ３０２で作成された無効設定リストから、禁則となる組み合わせが図８、図１１及び図１４等を用いて後述する何れの型となっているかを分類する。そして、構造解析部２１０は、図８等を用いて後述する修正候補リストをアプリケーション１０４に提供する（Ｓ３０３からＳ３０８まで）。なお、修正候補リストは、修正候補を示す修正候補情報の一例である。また、Ｓ３０３からＳ３０８までの処理の詳細については後述する。
アプリケーション１０４と、プリンタドライバ１０５とにおけるやりとりにおいて、ＰｒｉｎｔＴｉｃｋｅｔ生成部２０４が禁則の設定値のないＰｒｉｎｔＴｉｃｋｅｔを生成したとする。この場合、印刷データ生成部２１１は、ＰｒｉｎｔＴｉｃｋｅｔの印刷設定と、描画データとに基づいて印刷データを生成する。
【００１７】
図２、図３では、１つの装置（ホスト装置１０２）の中にアプリケーション１０４と、プリンタドライバ１０５のコンフリクトエンジン２０６とが存在している場合を例に説明した。しかし、コンフリクトエンジン２０６は、アプリケーション１０４を有する装置とは別の装置に存在していてもよい。例えばクラウドプリントであれば、図６のように、モバイル端末１０７がアプリケーション１０９を有し、クラウドサーバ装置１１０がミドルウェア１１２としてコンフリクトエンジンを有することができる。ここで、モバイル端末１０７は、端末装置の一例である。また、クラウドサーバ装置１１０は、情報処理装置の一例である。なお、図６は、クラウドプリントにおける印刷システムのシステム構成の概念の一例を示す図である。
ここで、モバイル端末１０７は、ＣＰＵと、各種プログラムが格納されている記憶装置とを有している。モバイル端末１０７のＣＰＵは、前記記憶装置に格納されているプログラムを実行することにより、アプリケーション１０９を含む機能（ソフトウェア構成）やＯＳ１０８の機能等を実現する。また、クラウドサーバ装置１１０は、ＣＰＵと、各種プログラムが格納されている記憶装置とを有している。クラウドサーバ装置１１０のＣＰＵは、前記記憶装置に格納されているプログラムを実行することにより、ミドルウェア１１２を含む機能（ソフトウェア構成）やＯＳ１１１等の機能を実現する。
この場合、アプリケーション１０９は、図７に示されるようにミドルウェア１１２と、ＨＴＴＰリクエストやＨＴＴＰレスポンス等のアクセス手段によりやりとりを行わなければならない。しかし、本実施形態では、アプリケーション１０９と、ミドルウェア１１２とは、ＰｒｉｎｔＴｉｃｋｅｔ、コンテンツデータ及び図８等を用いて後述する修正候補リストの受け渡ししかおこなわないため、各処理部の処理内容は、図３の場合と同様である。なお、図７は、ＰｒｉｎｔＴｉｃｋｅｔを作成するアプリケーション１０９の構成と、印刷データを作成するミドルウェア１１２の構成との一例を示す図である。なお、アプリケーション１０９は、ユーザの指示を受け付ける受け付け手段の一例である。また、ミドルウェア１１２のコンフリクトエンジンは、ＰｒｉｎｔＴｉｃｋｅｔを処理する処理実行手段の一例である。
【００１８】
以下、図５の説明に戻り、禁則処理部２０８の処理の詳細について説明する。
ＰｒｉｎｔＴｉｃｋｅｔ生成部２０４が生成した図４、後述する図１０及び図１３の３つのＰｒｉｎｔＴｉｃｋｅｔが禁則処理部２０８に入力されたときの禁則処理部２０８の処理について説明する。
まず、ＰｒｉｎｔＴｉｃｋｅｔ生成部２０４が図４のＰｒｉｎｔＴｉｃｋｅｔを生成した場合を例に説明する。
図４のＰｒｉｎｔＴｉｃｋｅｔには、用紙種別を決めるＭｅｄｉａＴｙｐｅ、両面設定を行うＤｕｐｌｅｘ、用紙サイズを決めるＭｅｄｉａＳｉｚｅ及びステイプルの有無を決めるＳｔａｐｌｅに関する機能についての設定が記述されている。更に、図４のＰｒｉｎｔＴｉｃｋｅｔには、ステイプルの位置を決めるＳｔａｐｌｅＰｏｓｉｔｉｏｎ、部単位印刷を行うＣｏｌｌａｔｅ及び部数を指定するＣｏｐｉｅｓに関する機能についての設定が記述されている。
禁則処理部２０８の検索部２０９は、プリンタドライバがそれぞれ有するデバイス特有の禁則ルールに照らし合わせ、図４に示されるＰｒｉｎｔＴｉｃｋｅｔから禁則となる設定不可能な組み合わせを抽出する（Ｓ３０２）。なお、ホスト装置１０２は、無効設定となる印刷設定値の組み合わせに関する禁則ルールを示す禁則情報を、予めＲＯＭ１００４や外部メモリ１０１２等に格納して管理している。図８の（ａ）の無効設定１と、無効設定２との組み合わせが、検索部２０９が抽出した禁則の組み合わせに当たる。なお、図８の（ａ）は、無効設定リストのテーブルの一例を示す図である。検索部２０９は、図８の（ａ）に示されるテーブルを、ＰｒｉｎｔＴｉｃｋｅｔ生成部２０４が生成したＰｒｉｎｔＴｉｃｋｅｔに応じて１回生成する。図８の（ａ）の例では、３つの禁則の組み合わせが存在する。より具体的には、ＭｅｄｉａＴｙｐｅ機能の設定値「ＯｎｅＳｉｄｅＣｏａｔｅｄ」と、Ｄｕｐｌｅｘ機能の設定値「ＴｗｏＳｉｄｅｄ」との組み合わせがその一例である。Ｃｏｌｌａｔｅ及びＣｏｐｉｅｓの機能の設定値に関しては禁則の組み合わせがないので、検索部２０９は、Ｃｏｌｌａｔｅ及びＣｏｐｉｅｓの機能の設定値を無効設定リストに入れない。
【００１９】
図８の（ｂ）は、無効設定リストを図示しており、線５４は禁則の関係を表す。図８の（ｂ）は、ＭｅｄｉａＴｙｐｅ機能の「ＯｎｅＳｉｄｅＣｏａｔｅｄ」５３が他の３つの設定値と禁則の関係にあり、他の３つの設定値間には禁則の関係がないことを示している。この場合、アプリケーション１０４は、ＭｅｄｉａＴｙｐｅ機能の「ＯｎｅＳｉｄｅＣｏａｔｅｄ」５３の設定をデフォルト値の「Ｐｌａｉｎ」に変更すると、禁則の関係を全て解消することができる。また、アプリケーション１０４は、ＭｅｄｉａＴｙｐｅ機能以外の機能の設定値を全てデフォルト値に変更すれば、同様に禁則の関係を全て解消することができる。より具体的には、アプリケーション１０４は、Ｄｕｐｌｅｘ機能の「ＴｗｏＳｉｄｅｄ」５５、ＭｅｄｉａＳｉｚｅ機能の「ＣｕｓｔｏｍＭｅｄｉａＳｉｚｅ」５６及びＳｔａｐｌｅ機能の「Ｏｎ」５７を全てデフォルト値に変更すればよい。なお、図８の（ｂ）に示される禁則の型を、以降の説明においてスター型と呼ぶ。また、スター型は、一の印刷設定値と、他の複数の印刷設定値との組み合わせが全て無効な設定となる第１の型の一例である。
構造解析部２１０は、無効設定リストの中に重複したものがあり、かつ、その無効設定に対応する無効機能群に禁則の関係がなければ、無効設定の組合せに関する型がスター型であると判定する（Ｓ３０４のＹｅｓ、Ｓ３０５のＮｏ）。そして、構造解析部２１０は、スター型の無効設定の組合せに対する修正候補リストを作成する（Ｓ３０８）。なお、ここでいう修正候補リストとは、構造解析部２１０により印刷設定の組み合わせが無効設定とならないように修正された印刷設定の組み合わせに関するリストのことである。
【００２０】
図９は、Ｓ３０８における修正候補追加処理の一例を示すフローチャートである。
構造解析部２１０は、図８の（ｃ）のように、修正候補１に、ＭｅｄｉａＴｙｐｅ機能のデフォルト値「Ｐｌａｉｎ」を加える（Ｓ３０９）。即ち、構造解析部２１０は、スター型の中心になっている機能のデフォルト値を修正候補１に加える。そして、構造解析部２１０は、修正候補２に、Ｄｕｐｌｅｘ機能のデフォルト値「ＯｎｅＳｉｄｅｄ」、ＭｅｄｉａＳｉｚｅ機能のデフォルト値「Ａ４」及びＳｔａｐｌｅ機能のデフォルト値「Ｏｆｆ」を加える（Ｓ３１０）。即ち、構造解析部２１０は、スター型の中心でない他の機能のデフォルト値を修正候補２に加える。
構造解析部２１０は、無効設定リストの中に重複したものがなければ、そのまま無効設定１及び無効設定２における各機能と、前記各機能におけるデフォルト値とを、修正候補１及び修正候補２に登録する（Ｓ３０４のＮｏ、Ｓ３０６）。最後に、構造解析部２１０は、修正候補リストをアプリケーション１０４に返す。
【００２１】
次に、ＰｒｉｎｔＴｉｃｋｅｔ生成部２０４が図１０のＰｒｉｎｔＴｉｃｋｅｔを生成した場合を例に説明する。なお、図１０は、ＰｒｉｎｔＴｉｃｋｅｔの一例を示す図である。図１０のＰｒｉｎｔＴｉｃｋｅｔには、ＭｅｄｉａＴｙｐｅ、Ｄｕｐｌｅｘ、ＭｅｄｉａＳｉｚｅ、Ｃｏｌｌａｔｅ及びＣｏｐｉｅｓに関する機能についての設定が記述されている。
禁則処理部２０８の検索部２０９は、禁則ルールに照らし合わせ、図１０のＰｒｉｎｔＴｉｃｋｅｔから禁則の組み合わせを抽出する（Ｓ３０２）。そして、検索部２０９は、図１０のＰｒｉｎｔＴｉｃｋｅｔに対して、図１１の（ａ）の無効設定リストのテーブルを生成する。図１１の（ａ）の例では、３つの禁則の組み合わせが存在する。より具体的には、ＭｅｄｉａＴｙｐｅ機能の設定値「ＰａｓｔｅＢｏａｒｄ」と、Ｄｕｐｌｅｘ機能の設定値「ＴｗｏＳｉｄｅｄ」との組み合わせがその一例である。
図１１の（ｂ）は、無効設定リストを図示しており、線７４は禁則の関係を表す。図１１の（ｂ）の例は、ＭｅｄｉａＴｙｐｅ機能の「ＰａｓｔｅＢｏａｒｄ」７１と、Ｄｕｐｌｅｘ機能の「ＴｗｏＳｉｄｅｄ」７２と、ＭｅｄｉａＳｉｚｅ機能の「ＳＲＡ３」７３とが、それぞれ禁則の関係にある。この場合、アプリケーション１０４は、上記の３つの設定値のうち、１つの設定値しか残すことができないので、残り２つの設定値をデフォルト値に変更することで、禁則の関係を解消することができる。なお、図１１の（ｂ）に示される禁則の型を、以降の説明においてループ型と呼ぶ。なお、ループ型は、無効な設定となる印刷設定値の組み合わせの関係が環状となる第２の型の一例である。
【００２２】
構造解析部２１０は、無効設定のリストの中に重複したものがあり、かつ、その無効設定に対応する無効機能群の間で禁則の関係があれば、無効設定の組合せに関する型がループ型であると判定する（Ｓ３０４のＹｅｓ、Ｓ３０５のＹｅｓ）。そして、構造解析部２１０は、ループ型の無効設定の組合せに対する修正候補リストを作成する（Ｓ３０７）。
図１２は、Ｓ３０７における修正候補追加処理の一例を示すフローチャートである。
図１１の（ｂ）の例のように３つの設定値により形成されるループ型の場合、修正候補は、図１１の（ｃ）に示されるように３つである。構造解析部２１０は、修正候補リストに、各２つの機能のデフォルト値を登録する。最後に、構造解析部２１０は、修正候補リストをアプリケーション１０４に返す。
なお、ループ型における構造解析部２１０の処理は、ループ型を形成する設定値が３つの場合に限るものではない。例えばループ型を形成する設定値の数が４つの場合、構造解析部２１０は、対角の２つの機能のデフォルト値を修正候補リストに加える。このように、構造解析部２１０は、ループ型を形成する設定値の数（要素数）に応じて、各設定値をループ型に配置した場合における規定の位置の機能（以下、規定機能という）のデフォルト値を修正候補リストに加える（Ｓ３１１）。
構造解析部２１０は、規定機能の組み合わせが他にもあれば、Ｓ３１１の処理を繰り返し、規定機能の組み合わせが他になければ、処理を終了する（Ｓ３１２）。
【００２３】
次に、ＰｒｉｎｔＴｉｃｋｅｔ生成部２０４が図１３のＰｒｉｎｔＴｉｃｋｅｔを生成した場合を例に説明する。なお、図１３は、ＰｒｉｎｔＴｉｃｋｅｔの一例を示す図である。ここで、ＰｒｉｎｔＴｉｃｋｅｔ生成部２０４が図１３のＰｒｉｎｔＴｉｃｋｅｔを生成した場合とは、構造解析部２１０が設定値間に存在する全禁則の関係を、単一のスター型又は単一のループ型に分類できない場合である。以下、詳細に説明する。
図１３のＰｒｉｎｔＴｉｃｋｅｔには、ＭｅｄｉａＴｙｐｅ、Ｄｕｐｌｅｘ、ＭｅｄｉａＳｉｚｅ、Ｓｔａｐｌｅ、原稿サイズを決めるＡｐｐｌｉｃａｔｉｏｎＭｅｄｉａＳｉｚｅ、Ｃｏｌｌａｔｅ及びＣｏｐｉｅｓに関する機能についての設定が記述されている。
禁則処理部２０８の検索部２０９は、禁則ルールに照らし合わせ、図１３のＰｒｉｎｔＴｉｃｋｅｔから禁則の組み合わせを抽出する（Ｓ３０２）。そして、検索部２０９は、図１３のＰｒｉｎｔＴｉｃｋｅｔに対して、図１４の（ａ）の無効設定リストのテーブルを生成する。図１４の（ａ）の例では、４つの禁則の組み合わせが存在する。より具体的には、ＭｅｄｉａＴｙｐｅ機能の設定値「ＰａｓｔｅＢｏａｒｄ」と、Ｄｕｐｌｅｘ機能の設定値「ＴｗｏＳｉｄｅｄ」との組み合わせがその一例である。
図１４の（ｂ）は、無効設定リストを図示しており、線９５０は禁則の関係を表す。図１４の（ｂ）の例は、ＭｅｄｉａＴｙｐｅ機能の「ＰａｓｔｅＢｏａｒｄ」を中心とするスター型９０１と、ＭｅｄｉａＳｉｚｅ機能の「ＳＲＡ３」９０４を中心とするスター型９０２とが共存している例を示している。このように、単一のスター型又は単一のループ型で表わせない禁則関係に関しては、構造解析部２１０は、それぞれの禁則関係のグループに対して修正候補を提案する。なお、スター型や、ループ型の禁則関係が複数混在する型は、第３の型の一例である。
【００２４】
例えば、ＭｅｄｉａＴｙｐｅ機能の「ＰａｓｔｅＢｏａｒｄ」９０３を中心とするスター型９０１に関しては、構造解析部２１０は、ＭｅｄｉａＴｙｐｅ機能以外の機能の設定値を全てデフォルト値に変更することで禁則の関係を解消することができる。より具体的には、構造解析部２１０は、ＭｅｄｉａＳｉｚｅ機能の「ＳＲＡ３」９０４、Ｄｕｐｌｅｘ機能の「ＴｗｏＳｉｄｅｄ」９０５及びＳｔａｐｌｅ機能の「Ｏｎ」９０６を全てデフォルト値に変更することにより禁則の関係を解消する。この場合、構造解析部２１０は、図１４の（ｃ）に示されるように、ＭｅｄｉａＳｉｚｅ機能をデフォルト値の「Ａ４」に変更したことで、ＭｅｄｉａＳｉｚｅ機能の「ＳＲＡ３」を中心とするスター型９０２の禁則も同時に解消することができる。
また、構造解析部２１０は、ＭｅｄｉａＴｙｐｅ機能の「ＰａｓｔｅＢｏａｒｄ」９０３の設定値をデフォルト値の「Ｐｌａｉｎ」に変更することでも、スター型９０１の禁則の関係を解消することができる。この場合、構造解析部２１０は、ＭｅｄｉａＳｉｚｅ機能の「ＳＲＡ３」９０４を中心とするスター型９０２を同時に解消することはできない。そのため、構造解析部２１０は、図１４の（ｄ）に示されるように、ＭｅｄｉａＳｉｚｅ機能９０８をデフォルト値に変更するか、ＡｐｐｌｉｃａｔｉｏｎＭｅｄｉａＳｉｚｅ機能９０７をデフォルト値に変更することで禁則の関係を解消する必要がある。
【００２５】
ＰｒｉｎｔＴｉｃｋｅｔの設定値にスター型や、ループ型の禁則関係が複数含まれる場合における構造解析部２１０の処理について、上述した図５のフローチャートを用いて説明する。
構造解析部２１０は、ＰｒｉｎｔＴｉｃｋｅｔの設定値にスター型、ループ型の禁則関係が複数含まれることを判定した際には、型の数に応じて、禁則関係を解消するための設定値（修正候補）を修正候補リストに登録していく（Ｓ３０３）。例えば、構造解析部２１０は、図１４の（ｅ）に示されるように、１行目にＭｅｄｉａＴｙｐｅ機能の「ＰａｓｔｅＢｏａｒｄ」９０３を中心とするスター型９０１の禁則関係を解消する修正候補９０９及び修正候補９１０を修正候補リストに登録する。更に、構造解析部２１０は、２行目にＭｅｄｉａＳｉｚｅ機能の「ＳＲＡ３」９０４を中心とするスター型９０２の修正候補９１１及び修正候補９１２を修正候補リストに登録する。そして、構造解析部２１０は、修正候補リストをアプリケーション１０４に返す。なお、構造解析部２１０が無効設定リストからスター型やループ型の禁則関係を抽出する処理の手順及び設定値（修正候補）を修正候補リストに登録する処理の順番に関する望ましい形態については後述する。
【００２６】
図１５は、アプリケーション１０４のユーザインタフェース２０２がＣＲＴ１０１１に表示する好適な表示内容の一例を示す図である。
より具体的には、ユーザインタフェース２０２は、アプリケーション１０４が作成したＰｒｉｎｔＴｉｃｋｅｔに禁則があり、プリンタドライバ１０５から修正候補リストを返された場合に図１５に示されるような画面をＣＲＴ１０１１に表示する。
ユーザインタフェース２０２は、禁則関係がスター型の場合、禁則の関係の中で中心となる設定値を残すか外すか、即ち、デフォルト値に変更するか否かをユーザに選択させるようなポップアップを表示する。より具体的には、ユーザインタフェース２０２は、図１５の（ａ）に示されるような画面をＣＲＴ１０１１に表示する。
一方、ユーザインタフェース２０２は、禁則関係がループ型の場合、禁則関係にある全ての機能における選択肢の中から択一的に選択させるようなポップアップを表示する。より具体的には、ユーザインタフェース２０２は、図１５の（ｂ）に示されるような画面をＣＲＴ１０１１に表示する。
ユーザインタフェース２０２は、上記のポップアップの表示を、アプリケーション１０４が修正候補リストの全ての行を消化するまで繰り返し行う。それに応じて、アプリケーション１０４は、対応する修正候補の何れかをＰｒｉｎｔＴｉｃｋｅｔにその都度上書きすればよい。なお、修正候補リストの２行目以降は、アプリケーション１０４による修正候補リストの１行目の修正によって、既に修正候補リストの選択肢の何れかを満たしている可能性がある。例えば、図１４の（ｅ）において、アプリケーション１０４がユーザインタフェース２０２を介して受け付けたユーザの指示に基づいて修正候補９１０を選択したとする。ここで、修正候補９１０は、Ｄｕｐｌｅｘ機能の「ＯｎｅＳｉｄｅｄ」、かつ、ＭｅｄｉａＳｉｚｅ機能の「Ａ４」、かつ、Ｓｔａｐｌｅ機能の「Ｏｆｆ」の組み合わせである。この場合、図１４の（ｅ）における２行目の修正候補９１１（ＭｅｄｉａＳｉｚｅ機能の「Ａ４」）も満たすことになる。この場合、２行目の修正候補をユーザに選ばせるポップアップの表示は必要なくなるので、ユーザインタフェース２０２は、ポップアップを表示しない。
【００２７】
アプリケーション１０４は、無効設定リストの中で最も出現数の高い機能を含む修正候補から順にユーザに選ばせるようにすることが望ましい。アプリケーション１０４は、ユーザがユーザインタフェース２０２を介して無効設定リストの中で最も出現数の高い機能の設定値を残す選択操作を受け付けると、前記選択された機能に関わる多くの機能の設定値をデフォルト値に変更することになる。デフォルト値は他の設定値との間で禁則関係を生じないことが前提としてあるので、多くの禁則関係が解消され、ユーザが少ない選択回数で印刷設定の修正を完了することができるようになる。
また、アプリケーション１０４は、無効設定リストにスター型と、ループ型との両方の型が混在している場合、ループ型を優先して、ループ型、スター型の順で修正候補をユーザに選ばせるようにすることが望ましい。それは、禁則関係において、ループ型の禁則関係が解決されると、スター型の禁則関係が自動的に解決される場合があり、その逆はないからである。
また、アプリケーション１０４は、ポップアップの順番に関して、修正のポップアップを表示する前にどの機能の設定値から修正を行うかの情報を、ユーザインタフェース２０２を介してユーザから受け付けてもよい。例えば、アプリケーション１０４は、図１４の例において、ユーザインタフェース２０２を介してユーザからＭｅｄｉａＳｉｚｅ機能の優先要求を受けたとする。その場合、アプリケーション１０４は、ＭｅｄｉａＴｙｐｅ機能より先に、ＭｅｄｉａＳｉｚｅ機能の解除有無の選択に関するポップアップを表示することになる。なお、アプリケーション１０４は、事前にユーザから優先する機能に関する情報を受け付けておくこともできる。なお、ポップアップの表示順番に関する情報は、順番情報の一例である。即ち、アプリケーション１０４は、予めＲＯＭ１００４や外部メモリ１０１２等に格納されている順番情報に基づく順番でポップアップを表示するようにしてもよい。
また、構造解析部２１０が修正リストを予め定められた好適な順番で作成し、アプリケーション１０４がその通りの順番でポップアップを表示するようにしてもよい。また、構造解析部２１０が修正候補リストを順番に関係なく洗い出し、アプリケーション１０４がそれを予め定められた順番に並べ替えて表示するようにしてもよい。いずれにしても、アプリケーション１０４が好適な順番で修正候補リストを表示することが望ましいが、本実施形態における必須の要素ではない。
【００２８】
以上、本実施形態によれば、アプリケーション１０４のＰｒｉｎｔＴｉｃｋｅｔ生成部２０４が、ユーザの指示に基づいて印刷設定に係るＰｒｉｎｔＴｉｃｋｅｔを生成する。そして、プリンタドライバ１０５の禁則処理部２０８における構造解析部２１０が、前記ＰｒｉｎｔＴｉｃｋｅｔから禁則の型を解析する。更に、構造解析部２１０は、解析した禁則の型に基づいて禁則関係を解消する修正候補リストを作成し、アプリケーション１０４に返す。そして、アプリケーション１０４は、前記修正候補リストを示す画面をＣＲＴ１０１１に表示する。この際、アプリケーション１０４は、ＣＲＴ１０１１に表示する前記修正候補リストのポップアップの順番をユーザの指示等に基づいて変更することができる。以上の処理により、ホストコンピュータ１００１は、無効な印刷設定を容易に、かつ、適切に修正するための有効な印刷設定を作り上げることができる。そして、ユーザは、ＣＲＴ１０１１を介して容易に印刷設定を修正することができる。
なお、本実施形態における禁則ルールは２つの設定値間の禁則のみが書かれているものとし、それを構造解析部２１０がスター型やループ型等と判定した。しかし、ホストコンピュータ１００１が予めスター型やループ型等の禁則ルールが記述されたルールファイルをＲＯＭ１００４や外部メモリ１０１２等に格納しておくようにしてもよい。なお、ルールファイルは、禁則情報の一例である。例えば、ホストコンピュータ１００１がＭｅｄｉａＴｙｐｅ機能の「ＰａｓｔｅＢｏａｒｄ」、かつ、ＭｅｄｉａＳｉｚｅ機能の「ＳＲＡ３」、かつ、Ｄｕｐｌｅｘ機能の「ＴｗｏＳｉｄｅｄ」という禁則ルールが記述されたルールファイルを管理しているとする。この場合、構造解析部２１０は、ＰｒｉｎｔＴｉｃｋｅｔに基づいて解析した型が、前記ルールファイルに予め記述されたスター型やループ型等の禁則ルールに該当したときだけ、修正候補をアプリケーション１０４に渡すようにすることができる。
【００２９】
＜その他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【００３０】
以上、上述した各実施形態によれば、ホストコンピュータ１００１は、無効な印刷設定を容易に、かつ、適切に修正するための有効な印刷設定を作り上げることができる。
【００３１】
以上、本発明の好ましい形態について詳述したが、本実施形態は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図１】
2014203391.tif 000003
【図２】
2014203391.tif 000004
【図３】
2014203391.tif 000005
【図４】
2014203391.tif 000006
【図５】
2014203391.tif 000007
【図６】
2014203391.tif 000008
【図７】
2014203391.tif 000009
【図８】
2014203391.tif 000010
【図９】
2014203391.tif 000011
【図１０】
2014203391.tif 000012
【図１１】
2014203391.tif 000013
【図１２】
2014203391.tif 000014
【図１３】
2014203391.tif 000015
【図１４】
2014203391.tif 000016
【図１５】
2014203391.tif 000017