(57)【要約】【課題】複数の種類の禁則設定を効率的に解消することが可能な技術を提供する。【解決手段】プリントジョブに関する印刷設定処理を実行することが可能なプリンタドライバは、プリントジョブに関する設定操作を受け付けると、当該設定操作に応じて禁則設定が発生しているか否かを判定する。当該プリンタドライバは、複数の種類の禁則設定が発生している場合、各禁則設定において禁則要因に係る設定項目である禁則項目（禁則要因項目）Ｑ１，Ｑ２，Ｑ３，Ｑ４を特定するとともに、当該複数の種類の禁則設定のうちの少なくとも一部の２種類以上の禁則設定に共通する禁則項目である共通禁則項目（Ｑ１あるいはＱ２）を抽出する。そして、当該プリンタドライバは、当該複数の種類の禁則設定を解消していくための設定変更対象の設定項目（設定変更対象項目）の候補として、当該共通禁則項目を決定する。【選択図】図２４
2018169775.tif 000002
【特許請求の範囲】
【請求項１】
ジョブに関する設定処理を実行することが可能な設定処理装置であって、
ジョブに関する設定操作を受け付ける受付手段と、
前記設定操作に応じて、組み合わせて設定することが禁止されている２つ以上の設定内容の組合せである禁則設定が発生しているか否かを判定する判定手段と、
複数の種類の禁則設定が発生している場合、各禁則設定において禁則要因に係る設定項目である禁則項目を特定するとともに、前記複数の種類の禁則設定のうちの少なくとも一部の２種類以上の禁則設定に共通する禁則項目である共通禁則項目を抽出する抽出手段と、
前記複数の種類の禁則設定を解消していくための設定変更対象の設定項目である設定変更対象項目の最有力候補として、前記共通禁則項目を決定する決定手段と、
を備えることを特徴とする設定処理装置。
【請求項２】
請求項１に記載の設定処理装置において、
前記決定手段は、前記抽出手段によって複数の共通禁則項目が抽出される場合、前記複数の共通禁則項目のうち、最も多数の種類の禁則設定に共通する共通禁則項目である最多共通項目を前記設定変更対象項目の最有力候補として決定することを特徴とする設定処理装置。
【請求項３】
請求項２に記載の設定処理装置において、
前記決定手段は、複数の共通禁則項目が前記抽出手段によって抽出される場合において、前記最多共通項目として２以上の共通禁則項目が存在するときには、前記２以上の共通禁則項目のうち、その設定内容を優先的に維持すべき度合いとして設定項目ごとに予め定められた優先度合いであって設定項目の相互間における相対的な優先度合いが最も低い共通禁則項目を前記設定変更対象項目の最有力候補として決定することを特徴とする設定処理装置。
【請求項４】
請求項１から請求項３のいずれかに記載の設定処理装置において、
前記決定手段は、前記設定変更対象項目の最有力候補として決定された前記共通禁則項目に関して、その設定変更によって禁則数を最も多く低減することが可能な一の設定内容を決定し、前記共通禁則項目の設定内容を前記一の設定内容に変更すべき旨を決定することを特徴とする設定処理装置。
【請求項５】
請求項１から請求項４のいずれかに記載の設定処理装置において、
前記決定手段は、前記複数の種類の禁則設定を解消する禁則解消モードとして、第１のモードと第２のモードとを有しており、
前記第１のモードは、前記複数の種類の禁則設定における複数の禁則項目のうちの前記共通禁則項目の設定内容を優先的に変更することによって前記複数の種類の禁則設定を解消するモードであり、
前記第２のモードは、前記複数の禁則項目の相互間の優先度合いであって、各禁則項目の設定内容を優先的に維持すべき度合いとして各禁則項目について予め定められた優先度合いが最も低い禁則項目の設定内容を優先的に変更することによって前記複数の種類の禁則設定を解消するモードであり、
前記決定手段は、前記第１のモードと前記第２のモードとのうちユーザによって指定されたモードを用いて、前記設定変更対象項目の最有力候補を決定することを特徴とする設定処理装置。
【請求項６】
請求項１から請求項５のいずれかに記載の設定処理装置において、
現在の禁則発生状況を示す第１の画面を表示する表示手段、
をさらに備え、
前記第１の画面は、前記少なくとも一部の２種類以上の禁則設定に関する前記共通禁則項目を示す画面であることを特徴とする設定処理装置。
【請求項７】
請求項１から請求項５のいずれかに記載の設定処理装置において、
現在の禁則発生状況を示す第１の画面であって各禁則設定に関する２以上の禁則項目に対応する複数の表示要素を含む第１の画面を表示する表示手段、
をさらに備え、
前記第１の画面は、前記複数の種類の禁則設定に関して前記共通禁則項目と前記共通禁則項目以外の禁則項目との関係を示す画面であって、前記少なくとも一部の２種類以上の禁則設定に関して前記共通禁則項目を共通の１つの表示要素として示す画面であることを特徴とする設定処理装置。
【請求項８】
請求項７に記載の設定処理装置において、
前記表示手段は、一の種類の禁則設定に関する２以上の禁則項目に対応する２以上の表示要素を線で結んで表示することによって、当該２以上の表示要素に対応する設定項目の設定内容が前記一の種類の禁則設定の要因であることを提示することを特徴とする設定処理装置。
【請求項９】
請求項８に記載の設定処理装置において、
前記表示手段は、
前記複数の種類の禁則設定ごとに、各禁則設定の２以上の禁則項目に対応する２以上の表示要素を線で結んで表示することによって、当該２以上の表示要素に対応する設定項目の設定内容が前記各禁則設定の要因であることを提示するとともに、
前記複数の種類の禁則設定ごとの線を、前記各禁則設定ごとに決定された固有の色で表示することによって、前記複数の種類の禁則設定を互いに識別することを特徴とする設定処理装置。
【請求項１０】
請求項７に記載の設定処理装置において、
前記表示手段は、一の種類の禁則設定に関する２以上の禁則項目に対応する２以上の表示要素を枠で囲んで表示することによって、当該２以上の表示要素に対応する設定項目の設定内容が前記一の種類の禁則設定の要因であることを提示することを特徴とする設定処理装置。
【請求項１１】
請求項１０に記載の設定処理装置において、
前記表示手段は、
前記複数の種類の禁則設定ごとに、各禁則設定の２以上の禁則項目に対応する２以上の表示要素を枠で囲んで表示することによって、当該２以上の表示要素に対応する設定項目の設定内容が前記各禁則設定の要因であることを提示するとともに、
前記複数の種類の禁則設定ごとの枠を、前記各禁則設定ごとに決定された固有の色で表示することによって、前記複数の種類の禁則設定を互いに識別することを特徴とする設定処理装置。
【請求項１２】
請求項７に記載の設定処理装置において、
前記表示手段は、一の種類の禁則設定に関する２以上の禁則項目に対応する２以上の表示要素の内部あるいは近傍に同一の識別ラベルを表示することによって、当該２以上の表示要素に対応する設定項目の設定内容が前記一の種類の禁則設定の要因であることを提示することを特徴とする設定処理装置。
【請求項１３】
請求項１２に記載の設定処理装置において、
前記表示手段は、
前記複数の種類の禁則設定ごとに、各禁則設定の２以上の禁則項目に対応する２以上の表示要素の内部あるいは近傍に同一の識別ラベルを表示することによって、当該２以上の表示要素に対応する設定項目の設定内容が前記各禁則設定の要因であることを提示するとともに、
前記複数の種類の禁則設定ごとの識別ラベルとして、前記各禁則設定ごとに決定された固有の識別ラベルを付与することによって、前記複数の種類の禁則設定を互いに識別することを特徴とする設定処理装置。
【請求項１４】
請求項７から請求項１３のいずれかに記載の設定処理装置において、
前記表示手段は、前記２以上の禁則項目の相互間の優先度合いであってその設定内容を優先的に維持すべき度合いとして設定項目ごとに予め定められた優先度合いをも前記第１の画面にて示すことを特徴とする設定処理装置。
【請求項１５】
請求項１４に記載の設定処理装置において、
前記第１の画面は、有向グラフ表現を用いて現在の禁則発生状況を示す画面であり、
前記表示手段は、前記複数の表示要素の相互間を接続する線に付された矢印の向きで前記２以上の禁則項目の相互間の優先度合いを示すことを特徴とする設定処理装置。
【請求項１６】
請求項７から請求項１５のいずれかに記載の設定処理装置において、
前記表示手段は、前記複数の表示要素の中からユーザの選択操作に応じて選択された一の表示要素に関して、当該一の表示要素に対応する一の設定項目の設定内容の変更候補と前記変更候補への変更後に前記変更候補が関与する禁則数とを前記第１の画面において表示することを特徴とする設定処理装置。
【請求項１７】
請求項６から請求項１６のいずれかに記載の設定処理装置において、
前記表示手段は、前記共通禁則項目の設定内容の変更後の状態を示す第２の画面を表示することを特徴とする設定処理装置。
【請求項１８】
請求項６から請求項１６のいずれかに記載の設定処理装置において、
前記第１の画面に表示された禁則発生状況を解消するための設定変更指示であって特定の設定項目に関する設定変更指示をユーザから受け付ける入力手段と、
前記設定変更指示に基づいて、前記共通禁則項目に関する設定内容を変更する設定変更手段と、
をさらに備えることを特徴とする設定処理装置。
【請求項１９】
請求項１から請求項１６のいずれかに記載の設定処理装置において、
前記設定変更対象項目の最有力候補として決定された前記共通禁則項目の設定内容を変更して前記共通禁則項目に関する禁則設定を解消する設定変更手段、
をさらに備えることを特徴とする設定処理装置。
【請求項２０】
請求項１から請求項１９のいずれかに記載の設定処理装置において、
前記判定手段は、前記ジョブに関する複数の設定項目のうちの一の設定項目の設定内容を現在の設定値から変更後の設定値へと変更することによって発生する禁則設定を、複数の設定項目の相互間の禁則設定に関する情報を予め記述した行列を用いて検出することを特徴とする設定処理装置。
【請求項２１】
請求項１から請求項１９のいずれかに記載の設定処理装置において、
前記判定手段は、前記ジョブに関する複数の設定項目のうちの一の設定項目の設定内容を現在の設定値から変更後の設定値へと変更することによって発生する禁則設定を、２つの設定項目の相互間の禁則設定に関する情報を予め記述した２次元禁則行列と３つ以上の設定項目の相互間の禁則設定に関する情報を予め記述した多次元禁則行列とを用いて検出することを特徴とする設定処理装置。
【請求項２２】
コンピュータに、
ａ）ジョブに関する設定操作を受け付けるステップと、
ｂ）前記設定操作に応じて、組み合わせて設定することが禁止されている２つ以上の設定内容の組合せである禁則設定が発生しているか否かを判定するステップと、
ｃ）複数の種類の禁則設定が発生している旨が前記ステップｂ）にて判定される場合、各禁則設定において禁則要因に係る設定項目である禁則項目を特定するとともに、前記複数の種類の禁則設定のうちの少なくとも一部の２種類以上の禁則設定に共通する禁則項目である共通禁則項目を抽出するステップと、
ｄ）前記複数の種類の禁則設定を解消していくための設定変更対象の設定項目である設定変更対象項目の最有力候補として、前記共通禁則項目を決定するステップと、
を実行させるためのプログラム。
【請求項２３】
請求項２２に記載のプログラムにおいて、
ｅ）前記複数の種類の禁則設定を解消する禁則解消モードとして、第１のモードと第２のモードとのうちの所望のモードの指定を受け付けるステップ、
をさらに前記コンピュータに実行させ、
前記第１のモードは、前記複数の種類の禁則設定における複数の禁則項目のうちの前記共通禁則項目の設定内容を優先的に変更することによって前記複数の種類の禁則設定を解消するモードであり、
前記第２のモードは、前記複数の禁則項目の相互間の優先度合いであって、各禁則項目の設定内容を優先的に維持すべき度合いとして各禁則項目について予め定められた優先度合いが最も低い禁則項目の設定内容を優先的に変更することによって前記複数の種類の禁則設定を解消するモードであり、
前記ステップｅ）にて前記第１のモードが指定された場合、前記ステップｄ）が実行され、
前記ステップｅ）にて前記第２のモードが指定された場合、前記設定変更対象項目の最有力候補が前記第２のモードを用いて決定されることを特徴とするプログラム。
【請求項２４】
請求項２２または請求項２３に記載のプログラムにおいて、
ｆ）現在の禁則発生状況を示す第１の画面であって各禁則設定に関する２以上の禁則項目に対応する複数の表示要素を含む第１の画面を表示するステップ、
をさらに前記コンピュータに実行させ、
前記第１の画面は、前記複数の種類の禁則設定に関して前記共通禁則項目と前記共通禁則項目以外の禁則項目との関係をそれぞれ示す画面であって、前記少なくとも一部の２種類以上の禁則設定に関して前記共通禁則項目を共通の１つの表示要素として示す画面であることを特徴とするプログラム。
【請求項２５】
請求項２４に記載のプログラムにおいて、
前記ステップｆ）は、
ｆ−１）前記複数の表示要素の中からユーザの選択操作に応じて選択された一の表示要素に関して、当該一の表示要素に対応する一の設定項目の設定内容の変更候補と前記変更候補への変更後に前記変更候補が関与する禁則数とを前記第１の画面において表示するステップ、
を有することを特徴とするプログラム。
【請求項２６】
請求項２４または請求項２５に記載のプログラムにおいて、
ｇ）前記共通禁則項目の設定内容の変更後の状態を示す第２の画面を表示するステップ、
をさらに前記コンピュータに実行させることを特徴とするプログラム。
【請求項２７】
請求項２４から請求項２６のいずれかに記載のプログラムにおいて、
ｈ）前記第１の画面に表示された禁則発生状況を解消するための設定変更指示であって特定の設定項目に関する設定変更指示をユーザから受け付けるステップと、
ｉ）前記設定変更指示に基づいて、前記共通禁則項目に関する設定内容を変更するステップと、
をさらに前記コンピュータに実行させることを特徴とするプログラム。
【請求項２８】
請求項２２から請求項２６のいずれかに記載のプログラムにおいて、
ｊ）前記設定変更対象項目の最有力候補として決定された前記共通禁則項目の設定内容を変更して前記共通禁則項目に関する禁則設定を解消するステップ、
をさらに前記コンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ジョブに関する設定処理を実行することが可能な設定処理装置およびそれに関連する技術に関する。
【背景技術】
【０００２】
ジョブに関する設定処理を実行することが可能な技術が存在する。たとえば、印刷システムにおいて、パソコン上で動作するプリンタドライバを用いて、プリントジョブに関する複数の設定項目をユーザが設定することがある。ユーザによる設定内容（指定内容）に従って当該プリンタドライバがプリントジョブを生成しプリンタに送信すると、当該プリンタは、受信したプリントジョブにて指定された設定内容に従って、印刷出力を実行する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−２３５３３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、ジョブに関する複数の設定項目に関し、プリンタ装置（印刷装置）の仕様等に起因して、互いに組み合わせて設定することができない設定内容が存在する（特許文献１等参照）。たとえば、或るプリンタ装置に関しては、設定項目「印刷種類」の設定内容「小冊子」と設定項目「ページ単位設定」の設定内容「ページ単位設定（有効）」との組み合わせは、設定することが禁止されている。禁止されている設定内容の組み合わせは、禁則設定（禁則条件）などとも表現される。
【０００５】
また、このような禁則設定として、複数の種類の禁則設定が同時に発生することがある。たとえば、或る設定項目Ｑ１の設定内容（設定値）ｑ１１と、別の設定項目Ｑ２の設定内容（設定値）ｑ２１との組合せが禁則設定（第１の種類の禁則設定とも称する）を生じるとともに、設定項目Ｑ２の設定内容（設定値）ｑ２１とさらに別の設定項目Ｑ３の設定内容（設定値）ｑ３１との組合せが禁則設定（第２の種類の禁則設定とも称する）を生じることがある。
【０００６】
従来、複数の種類の禁則設定が生じた場合において、（同時に発生している他の種類の禁則設定による影響は考慮されず）当該複数の種類の禁則設定が個別に且つ順次に解消される技術が存在する。
【０００７】
具体的には、まず、第１の種類の禁則設定が解消され、つぎに、第２の種類の禁則設定が解消される。たとえば、最初に、設定項目Ｑ１の設定内容（設定値）ｑ１１を設定内容ｑ１２に変更することによって第１の種類の禁則設定が解消される。そして、次に、設定項目Ｑ３の設定内容（設定値）ｑ３１を設定内容ｑ３２に変更することによって第２の種類の禁則設定が解消される。
【０００８】
しかしながら、このような禁則解消手法は、必ずしも効率的ではない。なぜなら、この場合、最初に設定項目Ｑ２の設定内容ｑ２１を他の選択内容ｑ２２に変更することによれば、２つの種類の禁則設定が一気に（いずれも）解消され得るからである。
【０００９】
なお、禁則設定の解消のためには、各禁則設定における禁則の要因となっている設定項目（禁則要因項目）のうち、最も低い「優先度」を有する禁則要因項目から順にその設定内容が変更されることが考えられる。「優先度」は、その設定内容を優先的に維持すべき度合いとして設定項目ごとに予め定められた優先度合いであって設定項目の相互間における相対的な優先度合いである。たとえば、設定項目「ウォーターマーク」と設定項目「用紙サイズ」との２つの設定項目（禁則項目）のうち、設定項目「用紙サイズ」（詳細にはその設定内容）の方が重要視されるべきであり、その設定内容（設定項目「用紙サイズ」の設定内容）を優先的に維持すべき（別の設定項目「ウォーターマーク」の設定内容を先に変更すべき）であるとも考えられる。この場合には、設定項目「用紙サイズ」の優先度が設定項目「ウォーターマーク」の優先度よりも大きな値に設定される。このように「優先度」は、複数の設定項目の相互間における相対的な優先度合いを示す指標値であり、優先度を利用して複数の設定項目に関する変更順序を決定する手法が考えられる。たとえば、３つの設定項目Ｑ１，Ｑ３，Ｑ２の優先度のうち、設定項目Ｑ１の優先度が最も低く且つ、設定項目Ｑ２の優先度が最も高い場合には、上述のように、最も低い優先度を有する設定項目Ｑ１の設定内容が最初に変更され、次順位の優先度を有する設定項目Ｑ３の設定内容が次に変更され得る。特に、「優先度」を優先的に利用して設定項目の変更順序が決定される場合等においては、上述のような非効率的な禁則解消処理が行われ得る。
【００１０】
そこで、この発明は、複数の種類の禁則設定を効率的に解消することが可能な技術を提供することを課題とする。
【課題を解決するための手段】
【００１１】
上記課題を解決すべく、請求項１の発明は、ジョブに関する設定処理を実行することが可能な設定処理装置であって、ジョブに関する設定操作を受け付ける受付手段と、前記設定操作に応じて、組み合わせて設定することが禁止されている２つ以上の設定内容の組合せである禁則設定が発生しているか否かを判定する判定手段と、複数の種類の禁則設定が発生している場合、各禁則設定において禁則要因に係る設定項目である禁則項目を特定するとともに、前記複数の種類の禁則設定のうちの少なくとも一部の２種類以上の禁則設定に共通する禁則項目である共通禁則項目を抽出する抽出手段と、前記複数の種類の禁則設定を解消していくための設定変更対象の設定項目である設定変更対象項目の最有力候補として、前記共通禁則項目を決定する決定手段と、を備えることを特徴とする。
【００１２】
請求項２の発明は、請求項１の発明に係る設定処理装置において、前記決定手段は、前記抽出手段によって複数の共通禁則項目が抽出される場合、前記複数の共通禁則項目のうち、最も多数の種類の禁則設定に共通する共通禁則項目である最多共通項目を前記設定変更対象項目の最有力候補として決定することを特徴とする。
【００１３】
請求項３の発明は、請求項２の発明に係る設定処理装置において、前記決定手段は、複数の共通禁則項目が前記抽出手段によって抽出される場合において、前記最多共通項目として２以上の共通禁則項目が存在するときには、前記２以上の共通禁則項目のうち、その設定内容を優先的に維持すべき度合いとして設定項目ごとに予め定められた優先度合いであって設定項目の相互間における相対的な優先度合いが最も低い共通禁則項目を前記設定変更対象項目の最有力候補として決定することを特徴とする。
【００１４】
請求項４の発明は、請求項１から請求項３のいずれかの発明に係る設定処理装置において、前記決定手段は、前記設定変更対象項目の最有力候補として決定された前記共通禁則項目に関して、その設定変更によって禁則数を最も多く低減することが可能な一の設定内容を決定し、前記共通禁則項目の設定内容を前記一の設定内容に変更すべき旨を決定することを特徴とする。
【００１５】
請求項５の発明は、請求項１から請求項４のいずれかの発明に係る設定処理装置において、前記決定手段は、前記複数の種類の禁則設定を解消する禁則解消モードとして、第１のモードと第２のモードとを有しており、前記第１のモードは、前記複数の種類の禁則設定における複数の禁則項目のうちの前記共通禁則項目の設定内容を優先的に変更することによって前記複数の種類の禁則設定を解消するモードであり、前記第２のモードは、前記複数の禁則項目の相互間の優先度合いであって、各禁則項目の設定内容を優先的に維持すべき度合いとして各禁則項目について予め定められた優先度合いが最も低い禁則項目の設定内容を優先的に変更することによって前記複数の種類の禁則設定を解消するモードであり、前記決定手段は、前記第１のモードと前記第２のモードとのうちユーザによって指定されたモードを用いて、前記設定変更対象項目の最有力候補を決定することを特徴とする。
【００１６】
請求項６の発明は、請求項１から請求項５のいずれかの発明に係る設定処理装置において、現在の禁則発生状況を示す第１の画面を表示する表示手段、をさらに備え、前記第１の画面は、前記少なくとも一部の２種類以上の禁則設定に関する前記共通禁則項目を示す画面であることを特徴とする。
【００１７】
請求項７の発明は、請求項１から請求項５のいずれかの発明に係る設定処理装置において、現在の禁則発生状況を示す第１の画面であって各禁則設定に関する２以上の禁則項目に対応する複数の表示要素を含む第１の画面を表示する表示手段、をさらに備え、前記第１の画面は、前記複数の種類の禁則設定に関して前記共通禁則項目と前記共通禁則項目以外の禁則項目との関係を示す画面であって、前記少なくとも一部の２種類以上の禁則設定に関して前記共通禁則項目を共通の１つの表示要素として示す画面であることを特徴とする。
【００１８】
請求項８の発明は、請求項７の発明に係る設定処理装置において、前記表示手段は、一の種類の禁則設定に関する２以上の禁則項目に対応する２以上の表示要素を線で結んで表示することによって、当該２以上の表示要素に対応する設定項目の設定内容が前記一の種類の禁則設定の要因であることを提示することを特徴とする。
【００１９】
請求項９の発明は、請求項８の発明に係る設定処理装置において、前記表示手段は、前記複数の種類の禁則設定ごとに、各禁則設定の２以上の禁則項目に対応する２以上の表示要素を線で結んで表示することによって、当該２以上の表示要素に対応する設定項目の設定内容が前記各禁則設定の要因であることを提示するとともに、前記複数の種類の禁則設定ごとの線を、前記各禁則設定ごとに決定された固有の色で表示することによって、前記複数の種類の禁則設定を互いに識別することを特徴とする。
【００２０】
請求項１０の発明は、請求項７の発明に係る設定処理装置において、前記表示手段は、一の種類の禁則設定に関する２以上の禁則項目に対応する２以上の表示要素を枠で囲んで表示することによって、当該２以上の表示要素に対応する設定項目の設定内容が前記一の種類の禁則設定の要因であることを提示することを特徴とする。
【００２１】
請求項１１の発明は、請求項１０の発明に係る設定処理装置において、前記表示手段は、前記複数の種類の禁則設定ごとに、各禁則設定の２以上の禁則項目に対応する２以上の表示要素を枠で囲んで表示することによって、当該２以上の表示要素に対応する設定項目の設定内容が前記各禁則設定の要因であることを提示するとともに、前記複数の種類の禁則設定ごとの枠を、前記各禁則設定ごとに決定された固有の色で表示することによって、前記複数の種類の禁則設定を互いに識別することを特徴とする。
【００２２】
請求項１２の発明は、請求項７の発明に係る設定処理装置において、前記表示手段は、一の種類の禁則設定に関する２以上の禁則項目に対応する２以上の表示要素の内部あるいは近傍に同一の識別ラベルを表示することによって、当該２以上の表示要素に対応する設定項目の設定内容が前記一の種類の禁則設定の要因であることを提示することを特徴とする。
【００２３】
請求項１３の発明は、請求項１２の発明に係る設定処理装置において、前記表示手段は、前記複数の種類の禁則設定ごとに、各禁則設定の２以上の禁則項目に対応する２以上の表示要素の内部あるいは近傍に同一の識別ラベルを表示することによって、当該２以上の表示要素に対応する設定項目の設定内容が前記各禁則設定の要因であることを提示するとともに、前記複数の種類の禁則設定ごとの識別ラベルとして、前記各禁則設定ごとに決定された固有の識別ラベルを付与することによって、前記複数の種類の禁則設定を互いに識別することを特徴とする。
【００２４】
請求項１４の発明は、請求項７から請求項１３のいずれかの発明に係る設定処理装置において、前記表示手段は、前記２以上の禁則項目の相互間の優先度合いであってその設定内容を優先的に維持すべき度合いとして設定項目ごとに予め定められた優先度合いをも前記第１の画面にて示すことを特徴とする。
【００２５】
請求項１５の発明は、請求項１４の発明に係る設定処理装置において、前記第１の画面は、有向グラフ表現を用いて現在の禁則発生状況を示す画面であり、前記表示手段は、前記複数の表示要素の相互間を接続する線に付された矢印の向きで前記２以上の禁則項目の相互間の優先度合いを示すことを特徴とする。
【００２６】
請求項１６の発明は、請求項７から請求項１５のいずれかの発明に係る設定処理装置において、前記表示手段は、前記複数の表示要素の中からユーザの選択操作に応じて選択された一の表示要素に関して、当該一の表示要素に対応する一の設定項目の設定内容の変更候補と前記変更候補への変更後に前記変更候補が関与する禁則数とを前記第１の画面において表示することを特徴とする。
【００２７】
請求項１７の発明は、請求項６から請求項１６のいずれかの発明に係る設定処理装置において、前記表示手段は、前記共通禁則項目の設定内容の変更後の状態を示す第２の画面を表示することを特徴とする。
【００２８】
請求項１８の発明は、請求項６から請求項１６のいずれかの発明に係る設定処理装置において、前記第１の画面に表示された禁則発生状況を解消するための設定変更指示であって特定の設定項目に関する設定変更指示をユーザから受け付ける入力手段と、前記設定変更指示に基づいて、前記共通禁則項目に関する設定内容を変更する設定変更手段と、をさらに備えることを特徴とする。
【００２９】
請求項１９の発明は、請求項１から請求項１６のいずれかの発明に係る設定処理装置において、前記設定変更対象項目の最有力候補として決定された前記共通禁則項目の設定内容を変更して前記共通禁則項目に関する禁則設定を解消する設定変更手段、をさらに備えることを特徴とする。
【００３０】
請求項２０の発明は、請求項１から請求項１９のいずれかの発明に係る設定処理装置において、前記判定手段は、前記ジョブに関する複数の設定項目のうちの一の設定項目の設定内容を現在の設定値から変更後の設定値へと変更することによって発生する禁則設定を、複数の設定項目の相互間の禁則設定に関する情報を予め記述した行列を用いて検出することを特徴とする。
【００３１】
請求項２１の発明は、請求項１から請求項１９のいずれかの発明に係る設定処理装置において、前記判定手段は、前記ジョブに関する複数の設定項目のうちの一の設定項目の設定内容を現在の設定値から変更後の設定値へと変更することによって発生する禁則設定を、２つの設定項目の相互間の禁則設定に関する情報を予め記述した２次元禁則行列と３つ以上の設定項目の相互間の禁則設定に関する情報を予め記述した多次元禁則行列とを用いて検出することを特徴とする。
【００３２】
請求項２２の発明は、コンピュータに、ａ）ジョブに関する設定操作を受け付けるステップと、ｂ）前記設定操作に応じて、組み合わせて設定することが禁止されている２つ以上の設定内容の組合せである禁則設定が発生しているか否かを判定するステップと、ｃ）複数の種類の禁則設定が発生している旨が前記ステップｂ）にて判定される場合、各禁則設定において禁則要因に係る設定項目である禁則項目を特定するとともに、前記複数の種類の禁則設定のうちの少なくとも一部の２種類以上の禁則設定に共通する禁則項目である共通禁則項目を抽出するステップと、ｄ）前記複数の種類の禁則設定を解消していくための設定変更対象の設定項目である設定変更対象項目の最有力候補として、前記共通禁則項目を決定するステップと、を実行させるためのプログラムであることを特徴とする。
【００３３】
請求項２３の発明は、請求項２２の発明に係るプログラムにおいて、ｅ）前記複数の種類の禁則設定を解消する禁則解消モードとして、第１のモードと第２のモードとのうちの所望のモードの指定を受け付けるステップ、をさらに前記コンピュータに実行させ、前記第１のモードは、前記複数の種類の禁則設定における複数の禁則項目のうちの前記共通禁則項目の設定内容を優先的に変更することによって前記複数の種類の禁則設定を解消するモードであり、前記第２のモードは、前記複数の禁則項目の相互間の優先度合いであって、各禁則項目の設定内容を優先的に維持すべき度合いとして各禁則項目について予め定められた優先度合いが最も低い禁則項目の設定内容を優先的に変更することによって前記複数の種類の禁則設定を解消するモードであり、前記ステップｅ）にて前記第１のモードが指定された場合、前記ステップｄ）が実行され、前記ステップｅ）にて前記第２のモードが指定された場合、前記設定変更対象項目の最有力候補が前記第２のモードを用いて決定されることを特徴とする。
【００３４】
請求項２４の発明は、請求項２２または請求項２３の発明に係るプログラムにおいて、ｆ）現在の禁則発生状況を示す第１の画面であって各禁則設定に関する２以上の禁則項目に対応する複数の表示要素を含む第１の画面を表示するステップ、をさらに前記コンピュータに実行させ、前記第１の画面は、前記複数の種類の禁則設定に関して前記共通禁則項目と前記共通禁則項目以外の禁則項目との関係をそれぞれ示す画面であって、前記少なくとも一部の２種類以上の禁則設定に関して前記共通禁則項目を共通の１つの表示要素として示す画面であることを特徴とする。
【００３５】
請求項２５の発明は、請求項２４の発明に係るプログラムにおいて、前記ステップｆ）は、ｆ−１）前記複数の表示要素の中からユーザの選択操作に応じて選択された一の表示要素に関して、当該一の表示要素に対応する一の設定項目の設定内容の変更候補と前記変更候補への変更後に前記変更候補が関与する禁則数とを前記第１の画面において表示するステップ、を有することを特徴とする。
【００３６】
請求項２６の発明は、請求項２４または請求項２５の発明に係るプログラムにおいて、ｇ）前記共通禁則項目の設定内容の変更後の状態を示す第２の画面を表示するステップ、をさらに前記コンピュータに実行させることを特徴とする。
【００３７】
請求項２７の発明は、請求項２４から請求項２６のいずれかの発明に係るプログラムにおいて、ｈ）前記第１の画面に表示された禁則発生状況を解消するための設定変更指示であって特定の設定項目に関する設定変更指示をユーザから受け付けるステップと、ｉ）前記設定変更指示に基づいて、前記共通禁則項目に関する設定内容を変更するステップと、をさらに前記コンピュータに実行させることを特徴とする。
【００３８】
請求項２８の発明は、請求項２２から請求項２６のいずれかの発明に係るプログラムにおいて、ｊ）前記設定変更対象項目の最有力候補として決定された前記共通禁則項目の設定内容を変更して前記共通禁則項目に関する禁則設定を解消するステップ、をさらに前記コンピュータに実行させることを特徴とする。
【発明の効果】
【００３９】
請求項１から請求項２８に記載の発明によれば、複数の種類の禁則設定のうちの少なくとも一部の２種類以上の禁則設定に共通する禁則項目である共通禁則項目が抽出され、複数の種類の禁則設定を解消していくための設定変更対象項目の最有力候補として、当該共通禁則項目が決定されるので、複数の種類の禁則設定を効率的に解消することが可能である。
【００４０】
特に、請求項２に記載の発明によれば、複数の共通禁則項目が抽出される場合、当該複数の共通禁則項目のうち最多共通項目が設定変更対象項目の最有力候補として決定されるので、複数の種類の禁則設定を非常に効率的に解消することが可能である。
【００４１】
また特に、請求項３に記載の発明によれば、複数の共通禁則項目が抽出される場合において、最多共通項目として２以上の共通禁則項目が存在するときには、２以上の共通禁則項目のうちその優先度合いが最も低い共通禁則項目が設定変更対象項目の最有力候補として決定されるので、優先度合いをも考慮して効率的に複数の種類の禁則設定を解消することが可能である。
【００４２】
また特に、請求項５に記載の発明によれば、第１のモードと第２のモードとのうちユーザによって指定されたモードを用いて設定変更対象項目の最有力候補が決定されるので、ユーザは、専ら第２のモードを用いる場合に比べて、多様な禁則解消策を得ることが可能である。
【００４３】
また特に、請求項６に記載の発明によれば、現在の禁則発生状況を示す画面であって共通禁則項目を示す画面が表示されるので、ユーザは、共通禁則項目の存在を知得して、当該共通禁則項目を利用した禁則解消処理を行うことが可能である。
【００４４】
また特に、請求項１６に記載の発明によれば、一の設定項目の設定内容の変更候補と当該一の設定内容を当該変更候補に変更したときに変更候補が関与する禁則数とが表示されるので、ユーザは、当該変更候補への変更に応じた禁則数の変化を容易に知得することができる。
【図面の簡単な説明】
【００４５】
【図１】プリントシステムの構成を示す概略図である。
【図２】ＭＦＰの機能ブロック図である。
【図３】情報処理装置（印刷指示装置）の機能ブロック図である。
【図４】プリンタドライバの動作を示すフローチャートである。
【図５】プリンタドライバの動作の一部を示すフローチャートである。
【図６】プリンタドライバの動作の一部を示すフローチャートである。
【図７】図６の動作の一部を示すフローチャートである。
【図８】図６の動作の一部を示すフローチャートである。
【図９】図６の動作の一部を示すフローチャートである。
【図１０】プリンタドライバの動作の一部を示すフローチャートである。
【図１１】２次元禁則を表現する図である。
【図１２】２次元禁則を表現する図である。
【図１３】２次元禁則用隣接行列を示す図である。
【図１４】多次元禁則を表現する図である。
【図１５】多次元禁則を表現する図である。
【図１６】多次元禁則行列を示す図である。
【図１７】現在禁則状態行列を示す図である。
【図１８】２次元禁則用隣接行列の変更処理（優先度入替処理）を示す図である。
【図１９】多次元禁則行列の変更処理（優先度入替処理）を示す図である。
【図２０】プリンタドライバの設定画面を示す図である。
【図２１】禁則発生状況に関する表示画面を示す図（禁則非発生状態）である。
【図２２】禁則発生状況に関する表示画面を示す図（禁則発生直後の状態）である。
【図２３】現在の禁則発生状況に関する表示画面を示す図である。
【図２４】禁則解消後の状況に関する表示画面を示す図である。
【図２５】現在の禁則発生状況に関する表示画面にて或る頂点をクリックした状態を示す図である。
【図２６】現在の禁則発生状況に関する表示画面にて別の頂点をクリックした状態を示す図である。
【図２７】現在の禁則発生状況に関する表示画面にてさらに別の頂点をクリックした状態を示す図である。
【図２８】優先度入替操作後の禁則発生状況に関する表示画面を示す図である。
【図２９】モード切替操作後の禁則発生状況に関する表示画面を示す図である。
【図３０】変形例に係る表示画面を示す図である。
【図３１】変形例（枠を利用したグラフ表示）に係る表示画面を示す図である。
【図３２】変形例（ラベルを利用したグラフ表示）に係る表示画面を示す図である。
【図３３】変形例（共通禁則項目等を文字で示す態様）に係る表示画面を示す図である。
【発明を実施するための形態】
【００４６】
以下、本発明の実施形態を図面に基づいて説明する。
【００４７】
＜１．システム構成概略＞
図１は、マルチ・ファンクション・ペリフェラル（Multi-Functional Peripheral）（ＭＦＰとも略称する）１０と印刷指示装置５０とを備えるプリントシステム１の構成を示す概略図である。
【００４８】
＜ＭＦＰ１０の構成＞
ＭＦＰ１０は、画像形成装置として機能する。より具体的には、ＭＦＰ１０は、スキャナ機能、プリンタ機能、コピー機能およびファクシミリ通信機能などを備える装置（複合機とも称する）として構成される。
【００４９】
ＭＦＰ１０は、ネットワーク１０８を介して印刷指示装置５０に接続されており、当該印刷指示装置５０との間でデータの送受信が可能である。なお、ネットワーク１０８は、ＬＡＮ（Local Area Network）およびインターネットなどの各種のネットワークを含む。
【００５０】
特に、ＭＦＰ１０は、印刷指示装置５０からのプリントジョブを実行するプリンタとして機能する。具体的には、印刷指示装置５０は、当該印刷指示装置５０にインストールされているプリンタドライバ（ソフトウエアプログラム）等を介して、ＭＦＰ１０に対してプリントジョブを送信する。一方、ＭＦＰ１０は、印刷指示装置５０から送信されてきたプリントジョブを受信し、当該プリントジョブを実行する。これによって、ＭＦＰ１０による印刷出力処理が実行される。
【００５１】
具体的には、図２の機能ブロック図に示すように、ＭＦＰ１０は、画像読取部２、印刷出力部３、通信部４、格納部５、入出力部６およびコントローラ９等を備えており、これらの各部を複合的に動作させることによって、各種の機能を実現する。
【００５２】
画像読取部２は、ＭＦＰ１０の所定の位置に載置された原稿を光学的に読み取って、当該原稿の画像データ（原稿画像とも称する）を生成する処理部である。
【００５３】
印刷出力部３は、対象画像に関する画像データに基づいて紙などの各種の媒体に画像を印刷出力する出力部である。
【００５４】
通信部４は、公衆回線等を介したファクシミリ通信を行うことが可能な処理部である。さらに、通信部４は、ネットワーク１０８を介したネットワーク通信を行うことも可能である。このネットワーク通信では、たとえば、ＴＣＰ／ＩＰ（Transmission Control Protocol / Internet Protocol）等の各種のプロトコルが利用される。当該ネットワーク通信を利用することによって、ＭＦＰ１０は、所望の相手先装置との間で各種のデータを授受することが可能である。また、ＭＦＰ１０は、このネットワーク通信を利用することによって、印刷指示装置５０からのプリントジョブを受信することなども可能である。通信部４は、各種データを送信する送信部４ａと各種データを受信する受信部４ｂとを有する。
【００５５】
格納部５は、ハードディスクドライブ（ＨＤＤ）および半導体メモリ等の記憶装置で構成される。この格納部５には、画像読取部２等で生成された原稿画像（画像データ）が格納される。また、格納部５においては、印刷指示装置５０から送信されてきたプリントジョブが一時的に格納される。
【００５６】
操作部６は、ＭＦＰ１０に対する操作入力を受け付ける操作入力部６ａと、各種情報の表示出力を行う表示部６ｂとを備えている。
【００５７】
このＭＦＰ１０においては、略板状の操作パネル部６ｃ（図１参照）が設けられている。また、操作パネル部６ｃは、その正面側にタッチパネル２５（図１参照）を有している。タッチパネル２５は、操作入力部６ａの一部としても機能するとともに、表示部６ｂの一部としても機能する。タッチパネル２５は、液晶表示パネルに各種センサ等が埋め込まれて構成され、各種情報を表示するとともに操作者からの各種の操作入力を受け付けることが可能である。
【００５８】
コントローラ（制御部）９は、ＭＦＰ１０に内蔵され、ＭＦＰ１０を統括的に制御する制御装置である。コントローラ９は、ＣＰＵおよび各種の半導体メモリ（ＲＡＭおよびＲＯＭ）等を備えるコンピュータシステムとして構成される。コントローラ９は、ＣＰＵにおいて、ＲＯＭ（例えば、ＥＥＰＲＯＭ（登録商標））内に格納されている所定のソフトウエアプログラム（以下、単にプログラムとも称する）を実行することによって、各種の処理部を実現する。なお、当該プログラム（詳細にはプログラムモジュール群）は、ＵＳＢメモリなどの可搬性の記録媒体に記録され、当該記録媒体から読み出されてＭＦＰ１０にインストールされるようにしてもよい。あるいは、当該プログラムは、ネットワーク等を経由してダウンロードされてＭＦＰ１０にインストールされるようにしてもよい。
【００５９】
具体的には、図２に示すように、コントローラ９は、当該プログラムの実行により、通信制御部１１と入力制御部１２と表示制御部１３と動作制御部１５とを含む各種の処理部を実現する。
【００６０】
通信制御部１１は、他の装置との間の通信動作を通信部４等と協働して制御する処理部である。通信制御部１１は、各種データの送信動作を制御する送信制御部と各種データの受信動作を制御する受信制御部とを有する。
【００６１】
入力制御部１２は、操作入力部６ａ（タッチパネル２５等）に対するユーザからの操作入力の受付動作等を制御する制御部である。
【００６２】
表示制御部１３は、表示部６ｂ（タッチパネル２５等）における表示動作を制御する処理部である。表示制御部１３は、ＭＦＰ１０を操作するための操作画面等をタッチパネル２５に表示する。
【００６３】
動作制御部１５は、印刷指示装置５０から送信されてきたプリントジョブ等に関する動作（印刷出力動作等）を実行する処理部である。
【００６４】
＜情報処理装置５０の構成＞
図３は、情報処理装置５０（印刷指示装置あるいは設定処理装置などとも称される）の概略構成を示す機能ブロック図である。情報処理装置５０は、いわゆるパーソナルコンピュータ等によって構成される。
【００６５】
情報処理装置５０は、図３の機能ブロック図に示すように、通信部５４、格納部５５、操作部５６およびコントローラ（制御部）５９等を備えており、これらの各部を複合的に動作させることによって、各種の機能を実現する。
【００６６】
通信部５４は、ネットワークを介したネットワーク通信を行うことが可能である。このネットワーク通信では、たとえば、ＴＣＰ／ＩＰ（Transmission Control Protocol / Internet Protocol）等の各種のプロトコルが利用される。当該ネットワーク通信を利用することによって、情報処理装置５０は、所望の相手先（ＭＦＰ１０等）との間で各種のデータを授受することが可能である。通信部５４は、各種データを送信する送信部５４ａと各種データを受信する受信部５４ｂとを有する。
【００６７】
格納部５５は、ハードディスクドライブ（ＨＤＤ）および／または半導体メモリ等の記憶装置で構成される。
【００６８】
操作部５６は、情報処理装置５０に対する操作入力を受け付ける操作入力部５６ａと、各種情報の表示出力を行う表示部５６ｂとを備えている。操作部５６は、タッチパネル７５（図１参照）を有している。タッチパネル７５は、操作入力部５６ａの一部としても機能するとともに、表示部５６ｂの一部としても機能する。タッチパネル７５は、液晶表示パネルに各種センサ等が埋め込まれて構成され、各種情報を表示するとともに操作者からの各種の操作入力を受け付けることが可能である。
【００６９】
図３のコントローラ（制御部）５９は、情報処理装置５０に内蔵され、情報処理装置５０を統括的に制御する制御装置である。コントローラ５９は、ＣＰＵおよび各種の半導体メモリ（ＲＡＭおよびＲＯＭ）等を備えるコンピュータシステムとして構成される。コントローラ５９は、ＣＰＵにおいて、記憶部（半導体メモリ等）内に格納されている所定のプログラム（プリンタドライバ等）を実行することによって、各種の処理部を実現する。なお、当該プログラム（詳細にはプログラムモジュール群）は、ＵＳＢメモリなどの可搬性の記録媒体に記録され、当該記録媒体から読み出されて情報処理装置５０にインストールされてもよい。あるいは、当該プログラムは、ネットワーク等を経由してダウンロードされて情報処理装置５０にインストールされるようにしてもよい。
【００７０】
具体的には、コントローラ５９は、当該プログラム等の実行により、通信制御部６１と入力制御部６２と表示制御部６３と判定部６４と抽出部６５と決定部６６と設定制御部６７とを含む各種の処理部を実現する。
【００７１】
通信制御部６１は、通信部５４等と協働して、ＭＦＰ１０等との通信動作を制御する処理部である。
【００７２】
入力制御部６２は、操作入力部５６ａ（タッチパネル７５等）に対する操作入力動作等を制御する制御部である。
【００７３】
表示制御部６３は、表示部５６ｂ（タッチパネル７５等）における各種情報の表示動作を制御する処理部である。
【００７４】
判定部６４は、禁則設定が発生しているか否か等を判定する処理部である。
【００７５】
抽出部６５は、複数の種類の禁則設定が発生している場合、「共通禁則項目」（複数の種類の禁則設定のうちの少なくとも一部の２種類以上の禁則設定に共通する禁則項目）を抽出する処理部である。
【００７６】
決定部６６は、複数の種類の禁則設定を解消していくための設定変更対象の設定項目（設定変更対象項目）の最有力候補等を決定する処理部である。
【００７７】
設定制御部６７は、ユーザからの設定変更指示等に基づいて、印刷設定に関する各種の設定値を変更する処理部である。たとえば、設定制御部６７は、プリンタドライバにて表示される設定画面を利用した利用設定変更指示に基づき、或る設定項目（「印刷用紙サイズ」等）の設定値を、デフォルト値（「Ａ４」サイズ）から別の値（「Ｂ５」サイズ）へと変更する。また、設定制御部６７は、禁則設定が生じた場合に、当該禁則設定を解消するための設定変更を行う処理部である。当該設定変更動作としては、「手動変更動作」と「自動変更動作」とが存在する。「手動変更動作」は、ユーザによって指定された設定項目（特定の設定項目）を指定値（指定された設定内容（設定値））に設定変更することによって、禁則設定を解消していく動作である。「自動変更動作」は、所定の基準に基づいて禁則設定を自動的に解消していく動作である。
【００７８】
情報処理装置５０は、ジョブ（プリントジョブ等）に関する設定処理（印刷設定処理等）を実行することが可能な設定処理装置として動作する。
【００７９】
＜２．動作概要＞
つぎに、プリントシステム１における動作について説明する。
【００８０】
図４〜図１０は、プリントシステム１における動作（より詳細には、印刷指示装置５０のプリンタドライバの動作）を示すフローチャートである。
【００８１】
図４に示すように、当該プリンタドライバ（印刷指示装置５０にて動作する印刷制御用プログラム）は、図２０に示すような設定画面を用いてジョブに関する設定操作（ユーザによる設定変更操作）を受け付ける（ステップＳ１１）と、当該設定操作に応じて禁則設定が発生しているか否かに関する判定処理等（ステップＳ１２（後述））を実行する。
【００８２】
その後、禁則設定が発生していることがステップＳ１３で判定（確認）されると、ステップＳ１３からステップＳ１４に進む。
【００８３】
ステップＳ１４では、禁則設定が発生している旨を示す画面３００（図２２および図２３等参照（後述））が表示される。
【００８４】
その後、当該画面３００に対する操作等に応じて、各種の動作（禁則解決に向けたユーザ操作等）（ステップＳ２０）（図５も参照）が行われる。特に、ステップＳ２０のうちステップＳ２１（図１０も参照）においては、禁則設定を解消するための処理等が行われる。また、その過程において、禁則設定の解決策等がユーザに提示され、当該ユーザの許可（指示）に応じて禁則設定の解消処理等が実行される。
【００８５】
以下では、このような動作について詳細に説明する。
【００８６】
＜３．禁則発生判定処理等（Ｓ１２）＞
上述のように、プリンタドライバは、ジョブに関する設定操作（ユーザによる設定操作）を受け付けると、当該設定操作（設定変更操作）に応じて禁則設定が発生しているか否かに関する判定処理等（ステップＳ１２）を実行する。
【００８７】
以下では、図６〜図９を参照しながら、ステップＳ１２（Ｓ２００とも称する）における詳細動作について説明する。
【００８８】
図６は、ステップＳ２００の処理の詳細を示すフローチャートである。図６に示されるように、ステップＳ２００においては、ステップＳ２１０の処理（２次元禁則探索処理等）（図７参照）、ステップＳ２３０の処理（多次元禁則探索処理等）（図８参照）およびステップＳ２５０の処理（禁則数算出処理等）（図９参照）が行われる。
【００８９】
＜禁則設定について＞
「禁則設定」は、ジョブに関する複数の設定項目に関する複数の設定内容のうち、互いに組み合わせて設定することが禁止されている２つ以上の設定内容の組合せ（設定禁止組合せ、あるいは、組合せ禁止設定とも称する）である。なお、「禁則設定」（組合せ禁止設定）としては、装置構成等に依拠して多種多様なものが存在する。
【００９０】
たとえば、ＭＦＰ１０において或る設定項目「ステープル」の設定内容「２箇所」と別の設定項目「折り」の設定内容「中折り」との両設定内容が互いに組み合わせて設定することが禁止されている場合、当該両設定内容（「２箇所」および「中折り」）は「禁則設定」を構成する。そして、印刷指示装置５０のプリンタドライバにおいてユーザ操作に応じて当該両設定内容がともに設定されると、当該禁則設定が発生する。
【００９１】
また、この実施形態では、禁則設定の「次元」の概念を導入する。禁則設定の次元（禁則の次元とも称する）は、ジョブに関する複数の設定項目のうち、禁則設定の要因に係る設定項目（禁則項目あるいは禁則要因項目とも称する）の数を意味する。
【００９２】
たとえば、上述の例に係る禁則設定は、２つの設定項目（「ステープル」および「折り」）を禁則要因項目（禁則項目）として有するものであり、当該禁則設定の次元は「２」である。すなわち、当該禁則設定は、２次元の禁則設定である。同様に、後述するような３つの設定項目（「出力用紙サイズ」、「通紙方向」および「パンチ孔」）を、禁則要因項目（禁則項目）として有する禁則設定の次元は「３」である。すなわち、当該３つの禁則項目で構成される禁則設定は、３次元の禁則設定である。さらに高い次元の禁則設定についても同様である。
【００９３】
一般化すると、Ｎ個の設定項目（禁則項目）Ｑ（ｉ）（ただし、ｉ＝１，...，Ｎ）の設定内容ｑ（ｉ，ｊ）の組合せによって構成される禁則設定が、Ｎ次元の禁則設定である。なお、以下、設定項目Ｑ（ｉ）を単にＱｉとも表記し、設定内容ｑ（ｉ，ｊ）を単にｑｉｊとも表記する。設定項目Ｑｉは、第ｉの設定項目であり、設定内容ｑｉｊは、第ｉの設定項目に関する設定内容（第ｊの設定値）である。また、Ｎ次元の禁則設定の部分組合せ（Ｎ次元の禁則設定に係る組合せのうち、（Ｎ−１）次元の部分組合せ等）は、禁則設定ではない。
【００９４】
たとえば、Ｑ１＝ｑ１１且つＱ２＝ｑ２１且つＱ３＝ｑ３１且つＱ４＝ｑ４１の４個の設定内容の組合せが設定された時点で禁則設定が発生する場合、当該４個の設定内容の組合せは４次元の禁則設定である。なお、当該４次元の禁則設定のうちの一部の組合せ、たとえば、Ｑ２＝ｑ２１且つＱ３＝ｑ３１且つＱ４＝ｑ４１の３個の設定内容の組合せ（あるいは、Ｑ２＝ｑ２１且つＱ４＝ｑ４１の２個の設定内容の組合せ等）は、禁則設定ではない。
【００９５】
また、この実施形態においては、２次元の禁則と３次元以上の禁則（多次元の禁則とも称する）とを異なる行列等を用いて表現する。
【００９６】
＜２次元禁則＞
まず、２次元の禁則（２次元禁則）について説明する。
【００９７】
図１１および図１２は、２次元禁則を有向グラフを用いて表現した図である。図１１は、一般化表現を示しており、図１２は、具体的な表現例を示している。
【００９８】
たとえば、図１２の有向グラフにおいては、或る設定項目Ｑ１（禁則項目）「ステープル」の設定内容（禁則設定内容）「２箇所」（ｑ１１）と、別の設定項目Ｑ２（禁則項目）「折り」の設定内容（禁則設定内容）「中折り」（ｑ２１）とが禁則設定を構成することが示されている。
【００９９】
また、図１１の有向グラフにおいては、同様の内容が一般化されて示されている。具体的には、２つの設定項目（禁則項目）Ｑ１，Ｑ２に関する２つの設定内容（禁則設定内容）ｑ１１，ｑ２１が禁則設定を構成することを示している。
【０１００】
ここでは、有向グラフ表現における頂点（節点あるいはノードとも称する）に、各設定項目（詳細にはその設定内容）が記述されている。当該頂点は、ここでは、楕円図形で表現されている。また、有向グラフ表現における複数の頂点（ノード）の相互間を接続する辺（枝あるいはエッジとも称する）は、線（直線）で表現されている。
【０１０１】
また、図１１の有向グラフにおいては、２つの頂点の相互間を接続する線には矢印が付されており、「向き」の概念が用いられている。この有向グラフにおいては、この矢印の向きを用いて、「優先度」の大小関係が示されている。具体的には、２つの頂点のうち、比較的高い（大きな）優先度を有する設定項目に対応する頂点（楕円図形）から、比較的低い（小さな）優先度を有する設定項目に対応する頂点（楕円図形）へと向かうように、矢印が付与される。
【０１０２】
ここで、「優先度」は、その設定内容を優先的に維持すべき度合いとして設定項目ごとに予め定められた優先度合いであって設定項目の相互間における相対的な優先度合いである。たとえば、設定項目「ウォーターマーク」と設定項目「用紙サイズ」との２つの設定項目（禁則項目）のうち、設定項目「用紙サイズ」（詳細にはその設定内容）の方が重要視されるべきであり、その設定内容（設定項目「用紙サイズ」の設定内容）を優先的に維持すべき（換言すれば、別の設定項目「ウォーターマーク」の設定内容を先に変更すべき）であるとも考えられる。この場合には、設定項目「用紙サイズ」の優先度が設定項目「ウォーターマーク」の優先度よりも大きな値に設定されている。このように「優先度」は、複数の設定項目の相互間における相対的な優先度合いを示す指標値である。当該優先度は、たとえば、装置において予め定められている。また、後述するように、当該優先度をユーザが変更することも可能である。
【０１０３】
このように、２次元禁則は、有向グラフを用いて表現される（図１１および図１２参照）。なお、このような２次元禁則設定は、禁則設定（Ｑ１＝ｑ１１，Ｑ２＝ｑ２１）とも表現される。
【０１０４】
また、図１３は、２つの設定項目の相互間の禁則設定に関する情報を予め記述した２次元禁則行列を示す図である。図１３においては、２次元の禁則設定が隣接行列（グラフ理論における「隣接行列」）で表現されている。２次元の禁則設定に関する隣接行列は、「２次元禁則用隣接行列」とも称される。この実施形態においては、この２次元禁則用隣接行列Ｍ２に基づいて、２次元禁則に関する有向グラフ等が生成される。具体的には、プリンタドライバは、２次元禁則用隣接行列Ｍ２とユーザによって設定された設定内容とに基づいて、２次元禁則の発生を検出することが可能である。そして、プリンタドライバは、当該検出された２次元禁則を上述の有向グラフを用いて表示する。
【０１０５】
２次元禁則用隣接行列Ｍ２の縦方向（換言すれば、２次元禁則用隣接行列Ｍ２の各列）においては、全ての設定項目Ｑ１，Ｑ２，Ｑ３，...に関する全ての設定内容（設定値）ｑ１１，ｑ１２，....，ｑ２１，ｑ２２，....，ｑ３１，ｑ３２，....，に関する情報（禁則情報）が列挙されている。同様に、２次元禁則用隣接行列Ｍ２の横方向（換言すれば、２次元禁則用隣接行列Ｍ２の各行）において、全ての設定項目Ｑ１，Ｑ２，Ｑ３，...に関する全ての設定内容（設定値）ｑ１１，ｑ１２，....，ｑ２１，ｑ２２，....，ｑ３１，ｑ３２，....，に関する情報が列挙されている。
【０１０６】
２次元禁則用隣接行列Ｍ２において、（行と列とで）同じ設定項目Ｑｉに対応する対角ブロック部分（図１３において「−」を付した部分の成分）は、無効部分である。当該無効部分の各成分は、「０」であってもよい。また、当該対角ブロック部分を除く成分（図１３において「＊」を付した部分等の成分）は、「０」あるいは「１」である。
【０１０７】
ここで、２次元禁則用隣接行列Ｍ２内の成分値「１」は、禁則設定が発生することを意味している。また、２次元禁則用隣接行列Ｍ２内の成分値「０」は、禁則が発生しないこと、あるいは、逆向きの禁則設定（優先度が逆の禁則設定）が発生すること等を示している。
【０１０８】
具体的には、設定内容ｑ（ｉ，ｊ）（単にｑｉｊとも表記する）と設定内容ｑ（ｋ，ｌ）（単にｑｋｌとも表記する）との組合せが２次元禁則設定に該当しない場合、２次元禁則用隣接行列Ｍ２においては、設定内容ｑｉｊに対応する行と設定内容ｑｋｌに対応する列との交差部分の成分値は「０」に設定される。また、設定内容ｑｉｊに対応する「列」と設定内容ｑｋｌに対応する「行」との交差部分の成分値も「０」に設定される。
【０１０９】
これに対して、設定内容ｑｉｊと設定内容ｑｋｌとの組合せが２次元禁則設定に該当し、且つ、設定内容ｑｉｊ（設定項目Ｑｉ）の優先度が設定内容ｑｋｌ（設定項目Ｑｋ）の優先度よりも大きい場合には、２次元禁則用隣接行列Ｍ２において次のような設定が行われる。具体的には、設定内容ｑｉｊに対応する行と設定内容ｑｋｌに対応する列との交差部分の成分値が「１」に設定される。一方、設定内容ｑｉｊに対応する「列」と設定内容ｑｋｌに対応する「行」との交差部分の成分値は「０」に設定される。
【０１１０】
換言すれば、設定内容ｑｉｊと設定内容ｑｋｌとの組合せが２次元禁則設定に該当し、且つ、設定内容ｑｉｊ（設定項目Ｑｉ）の優先度が設定内容ｑｋｌ（設定項目Ｑｋ）の優先度よりも小さい場合には、２次元禁則用隣接行列Ｍ２において次のような設定が行われる。具体的には、設定内容ｑｉｊに対応する「列」と設定内容ｑｋｌに対応する「行」との交差部分の成分値が「１」に設定される。一方、設定内容ｑｉｊに対応する行と設定内容ｑｋｌに対応する列との交差部分の成分値は「０」に設定される。
【０１１１】
このように、２次元禁則用隣接行列Ｍ２の所定行（設定内容ｑｉｊに対応する行）と所定列（設定内容ｑｋｌに対応する列）との交差部分に「１」が存在する場合、設定内容ｑｉｊと設定内容ｑｋｌとが禁則設定であり且つ設定内容ｑｉｊの優先度が設定内容ｑｋｌの優先度よりも大きいことが示されている。換言すれば、禁則項目Ｑｉの優先度が禁則項目Ｑｋの優先度よりも大きいことが示されている。
【０１１２】
たとえば、２次元禁則用隣接行列Ｍ２の所定行（ｑ１１成分に対応する行）と所定列（ｑ２１成分に対応する列）との交差部分に「１」が存在する場合には、設定内容ｑ１１と設定内容ｑ２１とが禁則設定であり且つ設定内容ｑ１１の優先度が設定内容ｑ２１の優先度よりも大きいことが示されている。換言すれば、禁則項目Ｑ１の優先度が禁則項目Ｑ２の優先度よりも大きいことが示されている。
【０１１３】
より詳細には、ユーザの設定変更操作に応じて設定項目Ｑ１が設定内容（設定値とも称する）ｑ１３から設定内容ｑ１１に変更された場合、２次元禁則用隣接行列Ｍ２（図１３）の所定行（設定内容ｑ１１に対応する行）において、２次元禁則用隣接行列Ｍ２の所定列（設定内容ｑ２１に対応する行）との交差部分に「１」が検出される。この結果、上述のように、設定内容ｑ１１と設定内容ｑ２１とに関する２次元の禁則設定が発生していること（および両設定項目Ｑ１，Ｑ２に関する優先度の大小関係）等が検出される。
【０１１４】
そして、このような禁則が検出される場合には、図１１のような有向グラフが生成される。具体的には、設定内容ｑ１１を示す表示要素（ここでは楕円図形）から設定内容ｑ２１を示す表示要素へ向かう向きの矢印を有する線（ここでは直線）で、当該２つの表示要素が結ばれた有向グラフが作成される。
【０１１５】
逆に、２次元禁則用隣接行列Ｍ２の所定列（ｑｉｊ成分（ｑ（ｉ，ｊ）成分）に対応する行）と所定行（ｑｋｌ成分（ｑ（ｋ，ｌ（エル））成分）に対応する列）との交差部分に「１」が存在する場合には、設定内容ｑｉｊと設定内容ｑｋｌとが禁則設定であり且つ設定内容ｑｉｊの優先度が設定内容ｑｋｌの優先度よりも小さいことが示されている。換言すれば、禁則項目Ｑｉの優先度が禁則項目Ｑｋの優先度よりも小さいことが示されている。
【０１１６】
たとえば、２次元禁則用隣接行列Ｍ２の所定列（ｑ１１成分に対応する列）と所定行（ｑ２１成分に対応する行）との交差部分に「１」が存在する場合には、設定内容ｑ１１と設定内容ｑ２１とが禁則設定であり且つ設定内容ｑ１１の優先度が設定内容ｑ２１の優先度よりも小さいことが示されている。換言すれば、禁則項目Ｑ１の優先度が禁則項目Ｑ２の優先度よりも小さいことが示されている。
【０１１７】
そして、この場合には、図１１の有向グラフとは逆向きの矢印線で結ばれた有向グラフが生成される。具体的には、設定内容ｑ２１を示す表示要素（楕円図形等）から設定内容ｑ１１を示す表示要素へ向かう向きの矢印を有する線（直線等）で、当該２つの表示要素が結ばれた有向グラフが作成される。
【０１１８】
図６のステップＳ２１０（図７も参照）では、このような処理が実行される。
【０１１９】
より詳細には、まず、ステップＳ２１１において、変更項目Ｑｉの変更後の値（変更値（注目設定内容等とも称する））ｑｉｊと他の設定項目Ｑｋの現在の設定値ｑｋｌとの交差部分に存在する値「１」が検索される。より具体的には、２次元禁則用隣接行列Ｍ２内の変更値ｑｉｊに対応する行において成分値「１」が探索されるとともに、変更値ｑｉｊに対応する列において成分値「１」が探索される。詳細には、変更値ｑｉｊに対応する行において、複数の他の設定項目Ｑｋのそれぞれの現在の設定値ｑｋｌに対応する列との交差部分に「１」が存在するか否かが順次に判定される。さらに、変更値ｑｉｊに対応する列において、複数の他の設定項目Ｑｋのそれぞれの現在の設定値ｑｋｌに対応する行との交差部分に「１」が存在するか否かが順次に判定される。
【０１２０】
交差部分に値「１」が存在する場合には、２次元禁則が発生している旨が判定され、ステップＳ２１２からステップＳ２１４に進む。ステップＳ２１４では、２次元禁則用隣接行列Ｍ２内の変更値（注目設定内容）ｑｉｊに対応する行と当該変更値ｑｉｊに対応する列とのいずれに値「１」が存在するかが判定される。変更値ｑｉｊに対応する行に値「１」が存在する場合には、ステップＳ２１５に進む。一方、変更値ｑｉｊに対応する列に値「１」が存在する場合には、ステップＳ２１７に進む。
【０１２１】
ステップＳ２１５では、設定項目Ｑｉの設定値ｑｉｊと設定項目Ｑｋの設定値ｑｋｌとは禁則設定であり、且つ、設定項目Ｑｉ（設定値ｑｉｊ）の優先度が設定項目Ｑｋ（設定値ｑｋｌ）の優先度よりも高い旨が判定される。さらに、ステップＳ２１６にて、たとえば図１１に示すような有向グラフ（設定値ｑｉｊから設定値ｑｋｌへと向かう矢印を有する有向グラフ）が生成される。そして、ステップＳ２１９に進む。
【０１２２】
一方、ステップＳ２１７では、設定項目Ｑｉの設定値ｑｉｊと設定項目Ｑｋの設定値ｑｋｌとは禁則設定であり、且つ、設定項目Ｑｉ（設定値ｑｉｊ）の優先度が設定項目Ｑｋ（設定値ｑｋｌ）の優先度よりも低い旨が判定される。さらに、ステップＳ２１８において、ステップＳ２１６で生成される有向グラフとは逆向きの有向グラフ（設定値ｑｋｌから設定値ｑｉｊへと向かう矢印を有する有向グラフ）（たとえば図１１とは逆向きの矢印を有する有向グラフ）が生成される。そして、ステップＳ２１９に進む。
【０１２３】
ステップＳ２１９では、ステップＳ２１１と同様の探索動作が続行される。そして、その探索結果に基づいて、ステップＳ２１２の判定処理が行われる。上述の交差部分（変更値ｑｉｊと設定値ｑｋｌとの交差部分）に値「１」が更に検索される場合には、ステップＳ２１４以後に進む。一方、交差部分に値「１」が検索されない場合には、ステップＳ２１０の処理は終了する。
【０１２４】
このように、２次元禁則が発生しているか否かが２次元禁則用隣接行列Ｍ２を用いて判定され（ステップＳ２１１，Ｓ２１２，Ｓ２１９）、２次元禁則が発生している旨が判定される場合には２次元有向グラフが生成される（ステップＳ２１６，Ｓ２１８）。なお、ステップＳ２１０において２次元禁則がＺ個検出される場合にはＺ個の２次元有向グラフが生成され、ステップＳ２１０において２次元禁則が１つも検出されない場合には２次元有向グラフは生成されない。
【０１２５】
＜多次元禁則＞
つぎに、多次元の禁則（３次元以上の禁則）について説明する。
【０１２６】
図１４および図１５は、多次元禁則を有向グラフを用いて表現した図である。図１４は、一般化表現を示しており、図１５は、具体的な表現例を示している。なお、禁則の次元数の増大に応じて、有向グラフの頂点の数が増大する。
【０１２７】
たとえば、図１５の有向グラフにおいては、２種類の３次元禁則の発生状態が示されている。
【０１２８】
１つ目の３次元禁則は、第１の設定項目Ｑ１（禁則項目）「出力用紙サイズ」の設定内容（禁則設定内容）「Ｂ５（ＪＩＳ）」（ｑ１１）と、第２の設定項目Ｑ２（禁則項目）「通紙方向」の設定内容（禁則設定内容）「短辺通紙（ＳＥＦ：Short Edge Feed）」（ｑ２１）と第３の設定項目Ｑ３（禁則項目）「パンチ孔」の設定内容（禁則設定内容）「３孔」（ｑ３１）とによって構成される。
【０１２９】
２つ目の３次元禁則は、第１の設定項目Ｑ１（禁則項目）「出力用紙サイズ」の設定内容（禁則設定内容）「Ｂ５（ＪＩＳ）」（ｑ１１）と、第２の設定項目Ｑ２（禁則項目）「通紙方向」の設定内容（禁則設定内容）「短辺通紙（ＳＥＦ：Short Edge Feed）」（ｑ２１）と第３の設定項目Ｑ４（禁則項目）「折り」の設定内容（禁則設定内容）「中折り」（ｑ４１）とによって構成される。
【０１３０】
また、図１４の有向グラフにおいては、同様の内容が一般化されて示されている。
【０１３１】
具体的には、１つ目の３次元禁則に関して、３つの設定項目（禁則項目）Ｑ１，Ｑ２，Ｑ３の３つの設定内容（禁則設定内容）ｑ１１，ｑ２１，ｑ３１が禁則設定を構成することが示されている。
【０１３２】
また、２つ目の３次元禁則に関して、３つの設定項目（禁則項目）Ｑ１，Ｑ２，Ｑ４の３つの設定内容（禁則設定内容）ｑ１１，ｑ２１，ｑ４１が禁則設定を構成することが示されている。
【０１３３】
なお、１つ目の３次元禁則設定は、禁則設定（Ｑ１＝ｑ１１，Ｑ２＝ｑ２１，Ｑ３＝ｑ３１）とも表現され、２つ目の３次元禁則定は、禁則設定（Ｑ１＝ｑ１１，Ｑ２＝ｑ２１，Ｑ４＝ｑ４１）とも表現される。
【０１３４】
また、図１４等においては、一の種類の禁則設定（１つ目の３次元禁則）に関する３つの禁則項目Ｑ１，Ｑ２，Ｑ３（３つの設定内容ｑ１１，ｑ２１，ｑ３１）に対応する３つの表示要素を線で結んで表示することによって、当該３つの表示要素に対応する３つの設定項目の設定内容が一の種類の禁則設定の要因であることが提示されている。また、他の種類の禁則設定（２つ目の３次元禁則）に関する３つの禁則項目Ｑ１，Ｑ２，Ｑ４（３つの設定内容ｑ１１，ｑ２１，ｑ４１）に対応する３つの表示要素を線で結んで表示することによって、当該３つの表示要素に対応する３つの設定項目の設定内容が当該他の種類の禁則設定の要因であることが提示されている。このように、禁則設定ごとに、各禁則設定の２以上の禁則項目に対応する２以上の表示要素を線で結んで表示することによって、当該２以上の表示要素に対応する設定項目の設定内容が当該各禁則設定の要因であることが提示される。また、このような場合において、複数の種類の禁則設定ごとの線が、各禁則設定ごとに決定された固有の色で表示されることによって、当該複数の種類の禁則設定が互いに識別されることが好ましい（図３０参照（後述））。
【０１３５】
さらに、１つ目の３次元禁則には、識別ラベル「１」が付与されている。具体的には、当該識別ラベル「１」は、設定内容ｑ１１の頂点と設定内容ｑ２１の頂点とを接続する接続線の近傍（直上部分）、および設定内容ｑ２１の頂点と設定内容ｑ３１の頂点とを接続する接続線の近傍（直上部分）に表示されている。一方、２つ目の３次元禁則には、別の識別ラベル「５」が付与されている。具体的には、当該識別ラベル「５」は、設定内容ｑ１１の頂点と設定内容ｑ２１の頂点との接続線の近傍（直下部分）、および設定内容ｑ２１の頂点と設定内容ｑ４１の頂点との接続線の近傍（直下部分）に表示されている。このように、同じ種類の禁則設定（多次元禁則）に対して同じ識別ラベルが付与され、且つ、異なる種類の禁則設定（多次元禁則）に対しては異なる識別ラベルが付与される。これによって、複数の種類の禁則設定（多次元禁則）が互いに識別される。なお、この実施形態では、多次元禁則に関してのみ識別ラベルが付与されているが、これに限定されず、２次元禁則に関しても同様にして識別ラベルが付与されてもよい。
【０１３６】
また、図１４に示されるように、２種類の禁則設定において共通する禁則項目（共通禁則項目）Ｑ１，Ｑ２が存在する場合には、当該共通禁則項目Ｑ１，Ｑ２（詳細には、その設定内容ｑ１１，ｑ２１）は、共通の表示要素（共通の頂点（ノード））として示される。より詳細には、共通禁則項目Ｑ１は、２種類の禁則設定を示す２系統の有向グラフにおいて、共通の１つの表示要素として表示される。同様に、共通禁則項目Ｑ２も、当該２系統の有向グラフにおいて、共通の１つの表示要素として表示される。このように、複数の種類の禁則設定のうちの少なくとも一部の２種類以上の禁則設定において共通する禁則項目（共通禁則項目）が存在する場合には、当該共通禁則項目は共通の表示要素として示される。
【０１３７】
また、図１４の有向グラフ（３次元禁則を示す有向グラフ）においては、同一の禁則設定を構成する３つの頂点のうち隣接する２つの要素の相互間を接続する線には、矢印が付されている。この有向グラフにおいては、この矢印の向きを用いて、「優先度」の大小関係が示されている。具体的には、隣接する２つの頂点のうち、比較的高い（大きな）優先度を有する設定項目に対応する頂点（楕円図形）から、比較的低い（小さな）優先度を有する設定項目に対応する頂点（楕円図形）へと向かうように、矢印が付与される。
【０１３８】
以上のように、この実施形態においては、多次元禁則が、有向グラフを用いて表現される（図１４および図１５参照）。
【０１３９】
また、図１６は、３つ以上の設定項目の相互間の禁則設定に関する情報を予め記述した行列を示す図である。換言すれば、図１６においては、多次元の禁則設定を表現する行列（「多次元禁則行列」とも称される）が示されている。
【０１４０】
この実施形態においては、この多次元禁則行列Ｍｎに基づいて、多次元禁則に関する有向グラフ等が生成される。具体的には、プリンタドライバは、多次元禁則行列Ｍｎとユーザによって設定された設定内容とに基づいて、多次元禁則の発生を検出することが可能である。そして、プリンタドライバは、当該検出された多次元禁則を上述の有向グラフ（図１４および図１５等参照）を用いて表示する。
【０１４１】
多次元禁則行列Ｍｎの縦方向（換言すれば、多次元禁則行列Ｍｎの各列）においては、全ての設定項目Ｑ１，Ｑ２，Ｑ３，...に関する全ての設定内容（設定値）ｑ１１，ｑ１２，....，ｑ２１，ｑ２２，....，ｑ３１，ｑ３２，....，に関する情報（禁則情報）が列挙されている。
【０１４２】
たとえば、図１６の左端の列（縦方向の一列）（第１列）においては、３つの設定項目（禁則項目）Ｑ１，Ｑ２，Ｑ３の３つの設定内容（禁則設定内容）ｑ１１，ｑ２１，ｑ３１に対応する行位置に、それぞれ、「０」以外の値が存在する。このことは、３つの設定項目（禁則項目）Ｑ１，Ｑ２，Ｑ３の３つの設定内容（禁則設定内容）ｑ１１，ｑ２１，ｑ３１が禁則設定（３次元禁則設定）を構成することを示している。
【０１４３】
より詳細には、設定項目Ｑ１の設定内容ｑ１１に対応する行においては「３／３」が表示され、設定項目Ｑ２の設定内容ｑ２１に対応する行においては「２／３」が表示され、
設定項目Ｑ３の設定内容ｑ３１に対応する行においては「１／３」が表示されている。ここで、これらの各値は、分数で表現されており、分数表現の分母は、禁則設定の「次元」数を示しており、当該分数表現の分子は、当該禁則設定を構成する複数の禁則項目の相互間における「優先度」を示している。
【０１４４】
たとえば、設定項目Ｑ１の設定内容ｑ１１に対応する位置の値「３／３」は、設定内容ｑ１１が３次元禁則の禁則設定内容であり、且つ、３つの禁則項目内における優先度が最も高い「３」であることを示している。同様に、設定項目Ｑ３の設定内容ｑ３１に対応する位置の値「１／３」は、設定内容ｑ３１が３次元禁則の禁則設定内容であり、且つ、３つの禁則項目内における優先度が最も低い「１」であることを示している。
【０１４５】
多次元禁則行列Ｍｎのうち、上述の第１列よりも右側に配置される第２列以降においても、同様にして、多次元禁則情報が列ごとに記述されている。なお、図１６においては、各値が省略されている（アスタリスクで示されている）が、実際には、各成分値は、「０」あるいは上述のような分数で表現される。
【０１４６】
多次元禁則行列Ｍｎの横方向サイズ（列サイズ（列数））は、多次元禁則の存在数と同数である。
【０１４７】
このような多次元禁則行列Ｍｎを用いることによって、多次元禁則が検出されるとともに、多次元禁則を表現する有向グラフが生成される。以下では、図８のフローチャート等を参照しながら、このような動作（ステップＳ２３０）について説明する。
【０１４８】
より詳細には、ユーザの設定変更操作に応じて或る設定項目Ｑが元の設定内容（設定値とも称する）から新たな設定内容に変更される場合、多次元禁則行列Ｍｎ内の複数の列の中から、禁則候補列（当該新たな設定内容に対応する行に「０以外の値」が存在する列）が検索される（ステップＳ２３１）。そして、検索された禁則候補列（注目禁則候補列とも称する）において、「０以外の値」が存在する行を検索し、当該行に対応する設定内容が現在の設定内容であるか否かが判定される。その結果、当該禁則候補列における「０以外の値」が存在する残りの全ての行（たとえば残りの２つの行）に対応する設定内容がいずれも現在の設定値である場合には、多次元禁則（３次元禁則）の発生が検出される（ステップＳ２３１）。
【０１４９】
そして、このような禁則が検出される場合には、ステップＳ２３２からステップＳ２３３に進み、図１４（図１５も参照）に示す有向グラフ（たとえば、上側の１系統の有向グラフ）が生成される。
【０１５０】
その後、ステップＳ２３５（図８）からステップＳ２３９に進み、ステップＳ２３１と同様の探索が続行される。そして、ステップＳ２３２に戻り同様の動作が実行される。多次元禁則行列Ｍｎ内の全ての列についてステップＳ２３１（，Ｓ２３９）の検索動作が終了すると、このサブルーチンＳ２３０の処理を終了すべき旨がステップＳ２３５にて判定され、当該サブルーチンＳ２３０の処理が終了する。
【０１５１】
たとえば、ユーザの設定変更操作に応じて設定項目Ｑ１が元の設定内容（設定値とも称する）ｑ１３から新たな設定内容ｑ１１に変更される場合、多次元禁則行列Ｍｎにおいて、禁則候補列（当該新たな設定内容ｑ１１に対応する行に「０以外の値」が存在する「列」）を検索する。そして、検索された禁則候補列（たとえば、第１列および第５列（図１６参照））において、「０以外の値」が存在する行を検索し、当該禁則候補列に対応する設定内容が現在の設定内容であるか否かが判定される。その結果、第１列における「０以外の値」が存在する残りの全ての行（たとえば残りの２つの行）に対応する設定内容（設定内容ｑ２１，ｑ３１）がいずれも現在の設定値である場合には、多次元禁則（３次元禁則）の発生が検出される。同様に、第５列における「０以外の値」が存在する残りの全ての行（たとえば残りの２つの行）に対応する設定内容（設定内容ｑ２１，ｑ４１）がいずれも現在の設定値である場合には、多次元禁則（３次元禁則）の発生が検出される。
【０１５２】
このようにして、３次元禁則が発生しているか否かが多次元禁則行列Ｍｎを用いて判定され（ステップＳ２３１，Ｓ２３９）、多次元禁則が発生している旨が判定される場合には多次元有向グラフが生成される（ステップＳ２３３）。なお、ステップＳ２３０において多次元禁則が１つも検出されない場合には多次元有向グラフは生成されない。また、ステップＳ２３０において多次元禁則がＺ個検出される場合にはＺ個の多次元有向グラフが生成される。図１４においては、２種類の３次元禁則が検出されて２つの３次元有向グラフが生成されている状況が示されている。
【０１５３】
なお、この実施形態では、２次元禁則と多次元禁則とを異なる行列を用いて表現している。２次元禁則用隣接行列Ｍ２は、比較的簡易に且つ漏れなく２次元禁則を表現することが可能であるとの特質を有している。このような特質を考慮し、当該２次元禁則用隣接行列Ｍ２を用いて、比較的多数存在する２次元禁則を表現しておき、残りの多次元禁則をＭｎを用いて補助的に表現している。ただし、これに限定されず、たとえば、２次元禁則と多次元禁則とをいずれも、上述の多次元禁則行列Ｍｎと同様の行列を用いて表現してもよい。
【０１５４】
＜現在禁則状態行列＞
図６に示すように上述のような処理（ステップＳ２１０，Ｓ２３０）の後において、ステップＳ２５０の処理（現在禁則状態行列Ｇ（次述）の算出処理等）（図９参照）が行われる。
【０１５５】
ステップＳ２５０においては、図１７に示されるような行列が算出される。この行列は、現在の禁則状態を示す行列であり、現在禁則状態行列Ｇとも称される。
【０１５６】
この現在禁則状態行列Ｇは、３つの列を有している。なお、現在禁則状態行列Ｇの縦方向（換言すれば、現在禁則状態行列Ｇの各列）においては、全ての設定項目Ｑ１，Ｑ２，Ｑ３，...に関する全ての設定内容（設定値）ｑ１１，ｑ１２，....，ｑ２１，ｑ２２，....，ｑ３１，ｑ３２，....，に関する情報が列挙される。
【０１５７】
左端の列には、「現在値」に関する情報（フラグ情報）が列挙される。現在値として設定されている設定内容（設定値）の対応位置（対応行位置）の成分は、「１」に設定される。現在値として設定されていない設定内容（設定値）の対応位置の成分は、「０」に設定される。
【０１５８】
たとえば、設定項目Ｑ１に関して、設定内容ｑ１１が現在値として設定されている場合、「現在値」の列（左端の列）の最も上の行の成分（設定内容ｑ１１に対応する位置の成分）が「１」に設定される。また、「現在値」の列（左端の列）の最も上から２行目の成分等（設定項目Ｑ１の他の設定内容ｑ１２，ｑ１３，ｑ１４等に対応する位置の成分）は「０」に設定される。
【０１５９】
このような処理が、全ての設定項目に関して実行されることによって、現在禁則状態行列Ｇの左端の列の各成分値が求められる。
【０１６０】
また、左端から２つ目の列（中央の列）には、「禁則数」（詳細には、各対応要素（各設定内容）が関与している禁則数）に関する情報が列挙されている。具体的には、或る設定項目（注目設定項目）の設定内容（注目設定内容）が禁則要因として関与して現在発生している禁則（注目設定項目の注目設定内容と他の設定項目の現在値（現在の設定内容）との間の禁則）の数が示されている。たとえば、設定内容ｑ２１が関与して２種類の禁則設定が発生しているときには、設定内容ｑ２１の禁則数は、「２」である。
【０１６１】
この「禁則数」は、２次元禁則用隣接行列Ｍ２および多次元禁則行列Ｍｎを用いることによって求められる。より具体的には、注目設定内容を新たな設定内容（「変更値」）として設定変更したと仮定して、上述のステップＳ２１０，Ｓ２３０の禁則検出処理等（ただし、有向グラフの生成処理（ステップＳ２１６，Ｓ２１８，Ｓ２３３）を除く）が実行される。そして、検出された禁則数（２次元禁則の検出数と多次元禁則の検出数との合計数）が、注目設定内容の「禁則数」として求められる。
【０１６２】
このような処理が、全ての設定項目の全ての設定内容に関してそれぞれ実行されることによって、現在禁則状態行列Ｇの中央列（「禁則数」）の各成分値が求められる。
【０１６３】
また、左端から３つ目の列（右端の列）には、「詳細状態」に関する情報が列挙されている。具体的には、或る設定項目（注目設定項目）の設定内容（注目設定内容）が関与して現在発生している禁則（当該設定内容と他の設定項目の現在値（現在の設定内容）との間の禁則）に関する詳細状態（フラグ値）が示されている。
【０１６４】
詳細には、まず、注目設定項目の設定内容（注目設定内容）と他の設定項目の現在値（現在の設定内容）との間に禁則が発生していない場合には、フラグ値は「０」に設定され、そうでない場合には、フラグ値は「１」あるいは「２」に設定される。
【０１６５】
当該注目設定内容（注目禁則設定内容）が禁則要因として関与する何れかの禁則設定において、注目設定項目（注目禁則項目）の優先度がその複数の禁則項目のうち最も低いときには、フラグ値は「２」に設定される。換言すれば、当該注目設定項目が禁則要因として関与する１つ又は複数の種類の禁則設定のうち、当該注目設定項目が最低優先度を有する禁則設定が存在するときには、フラグ値は「２」に設定される。それ以外のときには、フラグ値は「１」に設定される。
【０１６６】
たとえば、図１４の有向グラフにおいて、識別ラベル「１」の禁則において、設定内容ｑ３１は、最も下流側の設定項目（最も優先度が低い設定項目）の設定内容である。換言すれば、注目設定内容ｑ３１に対応する注目設定項目Ｑ３が最低優先度を有する禁則設定（識別ラベル「１」の禁則）が存在する。したがって、設定内容ｑ３１に対応する成分値（「詳細状態」のフラグ値）は、「２」に設定される。一方、設定内容ｑ２１は、２種類の禁則設定のうちのいずれにおいても、最低優先度を有する設定項目の設定内容ではない。したがって、設定内容ｑ２１に対応する成分値（「詳細状態」のフラグ値）は、「１」に設定される。
【０１６７】
このような処理が、全ての設定項目の全ての設定内容に関してそれぞれ実行されることによって、現在禁則状態行列Ｇの右端の列（「詳細状態」）の各成分値が求められる。
【０１６８】
後述するように、「優先度優先モードＭＤ２」においては、「詳細状態」のフラグ値が「２」の設定内容を有する１又は複数の禁則項目のうち、最も低い優先度を有する禁則項目から順に、その設定内容（設定値）が変更される。また、図２９に示すように、表示画面３００において、当該フラグ値「２」の設定内容ｑ３１，ａ４１に対応する頂点（楕円図形）が、色付け表示される。
【０１６９】
なお、ここでは、全ての設定項目の全ての設定内容（設定値）について上述の各値（「現在値」、「禁則数」、「詳細状態」）がそれぞれ求められて現在禁則状態行列Ｇが生成されているが、これに限定されない。たとえば、ステップＳ２１０，Ｓ２３０で検出された禁則項目のみ（たとえば、４つの禁則項目Ｑ１，Ｑ２，Ｑ３，Ｑ４のみ）（詳細には、当該４つの設定項目の各設定値のみ）に関して当該各値がそれぞれ求められて現在禁則状態行列Ｇが生成されてもよい。
【０１７０】
＜４．禁則発生状況提示処理（Ｓ１４）＞
その後、ステップＳ１２（図４）での処理結果等に基づき、禁則設定が発生している旨がステップＳ１３で判定（確認）されると、ステップＳ１３からステップＳ１４に進む。
【０１７１】
ステップＳ１４では、まず、図２２のような画面３００（３０２）が表示される。なお、ステップＳ１１においては、当該ステップＳ１１でユーザからの設定変更を受け付ける設定画面４００（図２０参照）の他に、図２１のような画面３００（３０１）が予め表示されているものとする。そして、ステップＳ１４においては、図２１の画面３０１に代えて、図２２の画面３０２が表示される。なお、図２１および図２２は、禁則発生状況に関する表示画面３００を示す図である。図２１は、禁則設定が未だ発生していない状態（禁則発生前の初期状態）を示しており、図２２は、禁則設定が発生した状態（禁則発生後の初期状態）を示している。
【０１７２】
この画面３０２においては、「初期禁則状態表示（Initial Conflict View）」に関する表示領域３３２が大きく確保されており、当該表示領域３３２内に、禁則設定の発生状態（禁則発生後の初期状態）を示す有向グラフが示されている。図２２（画面３０２）では、上述の２つの３次元禁則（Ｑ１＝ｑ１１，Ｑ２＝ｑ２１，Ｑ３＝ｑ３１），（Ｑ１＝ｑ１１，Ｑ２＝ｑ２１，Ｑ４＝ｑ４１）が生じている様子が、上述の有向グラフ（図１４および図１５参照）を用いて示されている。
【０１７３】
また、画面３００は、「初期禁則状態表示（Initial Conflict View）」に関する表示領域３３２（図２２参照）に加えて、「現在禁則状態表示（Temporary Conflict View）」に関する表示領域３５２（図２３参照）と「解決状態表示（Solution View）」に関する表示領域３７２（図２４参照）とを有している。
【０１７４】
表示領域３３２，３５２は、それぞれ、対応するバー領域３３１，３５１をマウスでクリックすること等によって大きく表示（展開された状態で表示）される。たとえば、図２２の画面３００（３０２）等にてバー領域３５１がマウスでクリックされると、図２３に示されるように、画面３００（３０３）内にて表示領域３５２が大きく表示される。なお、図２３の画面３００（３０３）は、現在の禁則発生状況を示しており、表示領域３５２は、現在の禁則状態を表示する表示領域である。たとえば、ユーザの操作に応じて禁則設定を段階的に（逐次的に）解消していく場合に、その時点（各段階）での禁則状態（現段階での禁則状態）が表示領域３５２に表示される。また、後述するように、表示領域３７２は、たとえば表示領域３５２内の解決候補表示ボタン３５３の押下に応じて、大きく表示（展開された状態で表示）される（図２４参照）。なお、バー領域３７１がマウスでクリックされた場合にも、表示領域３７２は、大きく表示される。
【０１７５】
以下では、画面３０３（図２３）が表示された状態（「現在禁則状態表示（Temporary Conflict View）」に関する表示領域３５２が大きく表示された状態）で各種の操作が行われる状況を想定する。表示領域３５２には、現在の禁則状態が有向グラフを用いて表示される。
【０１７６】
また、この状態においては、禁則解消モードが効率優先モードＭＤ１（後述）に設定されており、表示領域３５２には、複数の禁則項目のうち、効率優先モードＭＤ１において禁則解消のために最初に変更されるべき設定項目に対応する頂点（ノード）が強調表示される。たとえば、図２３等に示すように、複数の禁則項目を示す複数の頂点のうち、最大の禁則数を有する頂点（設定項目Ｑ２（設定内容ｑ２１）に対応する頂点）が色付け表示される。このような強調表示によれば、ユーザは、効率優先モードＭＤ１における、変更対象の最有力候補を容易に視認することが可能である。
【０１７７】
＜禁則解消モード＞
ここで、「禁則解消モード」について説明する。
【０１７８】
プリンタドライバは、複数の種類の禁則設定を解消する禁則解消モードとして、２つのモードＭＤ１，ＭＤ２を有している。１つのモードは、効率優先モードＭＤ１である。他の１つのモードは、優先度優先モードＭＤ２である。
【０１７９】
効率優先モードＭＤ１は、複数の種類の禁則設定が発生している際に、当該複数の種類の禁則設定に関する複数の禁則項目のうちの共通禁則項目の設定内容を優先的に変更することによって、当該複数の種類の禁則設定を解消するモードである。効率優先モードＭＤ１においては、各禁則設定における禁則要因に係る設定項目（禁則項目）が特定されるとともに、当該複数の種類の禁則設定のうちの少なくとも一部の２種類以上の禁則設定に共通する禁則項目（「共通禁則項目」）が抽出される。そして、共通禁則項目の設定内容が優先的に変更される。
【０１８０】
一方、優先度優先モードＭＤ２は、複数の種類の禁則設定が発生している際に、当該複数の種類の禁則設定に関する複数の禁則項目のうち、その優先度が最も低い禁則項目の設定内容を優先的に変更することによって当該複数の種類の禁則設定を解消するモードである。優先度優先モードＭＤ２においては、禁則設定を解消するために当該禁則設定に係る禁則項目のうちのいずれかの設定項目の設定内容を変更する場合において、後述するように、比較的高い優先度を有する設定項目の設定内容をなるべく変更せずに維持しておき、比較的低い優先度を有する設定項目の設定内容が先に変更される。端的に言えば、優先度の低い設定項目から順にその設定内容が変更される。
【０１８１】
なお、ユーザは、２つのモードＭＤ１，ＭＤ２のうち使用すべきモードを指定することが可能である。具体的には、ユーザは、画面３００内のモード指定欄３１１に設けられた２つのラジオボタン３１２，３１３の一方を選択することによって、使用すべき禁則解消モードを指定することが可能である。ラジオボタン３１２がクリックされると、効率優先モードＭＤ１が指定され、ラジオボタン３１３がクリックされることによって、優先度優先モードＭＤ２が指定される。なお、デフォルト状態では、効率優先モードＭＤ１が禁則解消モードとして選択されている。
【０１８２】
＜５．解決策提示処理等（Ｓ２０）＞
＜解決候補表示ボタン押下時の動作＞
ステップＳ１４の次のステップＳ２０の処理について説明する。図５は、各種の操作に応じた処理（ステップＳ２０）（図４も参照）を示すフローチャートである。
【０１８３】
以下では、まず、画面３０３（図２３）において解決候補表示ボタン３５３が押下される場合について説明する。
【０１８４】
解決候補表示ボタン３５３が押下されると、ステップＳ１５からステップＳ２１（Ｓ５０とも表記する）（図１０参照）に進む。図１０は、ステップＳ５０の詳細動作を示すフローチャートである。
【０１８５】
ステップＳ５１において、選択されているモードが２つのモードＭＤ１，ＭＤ２のいずれであるかが判定される。効率優先モードＭＤ１が選択されている場合には、ステップＳ５１からステップＳ５２に進む。一方、優先度優先モードＭＤ２が選択されている場合には、ステップＳ５１からステップＳ５７に進む。
【０１８６】
ステップＳ５７，Ｓ５８では、優先度優先モードＭＤ２による禁則解消動作が実行される。具体的には、ステップＳ５７にて、その優先度が最も低い禁則項目の設定内容が先ず変更される。たとえば、２種類の禁則設定に係る複数の禁則項目のうち最低優先度を有する設定項目（禁則項目）Ｑ４の設定内容ｑ４１（図２９も参照）が他の設定内容ｑ４２に変更される。これにより、対応する禁則設定（識別ラベル「５」の禁則設定）が解消される。次に、ステップＳ５８において全ての禁則設定が解消されたか否かが判定される。未だ解消されていない禁則設定が残っている場合には、再びステップＳ５７に戻る。そして、今度は、更に、残存している別の禁則設定（識別ラベル「１」の禁則設定）において、最低優先度を有する設定項目Ｑ３の設定内容ｑ３１が他の設定内容ｑ３２に変更される。これら２つの設定変更が実行することによって禁則が解消される。
【０１８７】
一方、ステップＳ５２〜Ｓ５５では、効率優先モードＭＤ１による禁則解消動作が実行される。
【０１８８】
ステップＳ５２においては、最大の「禁則数」を有する禁則設定内容の個数が複数であるか単数であるかが判定される。
【０１８９】
たとえば、複数の種類の禁則設定が発生している場合、当該複数の種類の禁則設定に係る複数の禁則設定内容（複数の頂点）のうち、「禁則数」が「２以上」の禁則設定内容が抽出される。換言すれば、複数の種類の禁則設定のうちの少なくとも一部の２種類以上の禁則設定に共通する禁則項目である共通禁則項目が抽出される。また、ここでは、複数の頂点（ノード）のうち最大の「禁則数」を有する頂点（ノード）が、最初に変更すべき（最も優先して変更すべき）設定項目（設定内容）として、決定される。換言すれば、最も多数の種類の禁則設定に共通する共通禁則項目（最多共通項目とも称する）が設定変更対象項目の最有力候補（第１候補）として決定される。なお、各頂点の禁則数は、現在禁則状態行列Ｇに基づいて判定されればよい。具体的には、各頂点（禁則項目）の禁則数は、現在禁則状態行列Ｇにおける、各禁則項目の現在設定値に対応する位置の「禁則数」として求められればよい。
【０１９０】
図２３に示すような禁則発生状況においては、「２以上」の「禁則数」を有する禁則設定内容ｑ１１，ｑ２１が、最大の禁則数を有する禁則設定内容として抽出される。具体的には、「禁則数＝２」を有する２つの頂点（禁則設定内容）ｑ１１，ｑ２１が、最大の禁則数を有する禁則設定内容として抽出される。換言すれば、複数の共通禁則項目Ｑ１，Ｑ２のうち、最も多数の種類の禁則設定に共通する共通禁則項目である最多共通項目Ｑ１，Ｑ２が設定変更対象項目の最有力候補として決定される。
【０１９１】
そして、最大の禁則数「２」を有する頂点（２つ（最大禁則数）の禁則に関与する禁則設定内容）の個数が複数（ここでは２個）である旨が判定される。
【０１９２】
最大禁則数を有する頂点の個数が複数である旨が判定される場合には、ステップＳ５２からステップＳ５３に進む。
【０１９３】
ステップＳ５３では、最大禁則数「２」を有する複数の頂点（禁則設定内容）ｑ１１，ｑ２１のうち、最も低い優先度を有する頂点ｑ２１が、変更対象（設定変更対象内容）に決定される。詳細には、最低優先度を有する共通禁則項目Ｑ２が変更対象項目の最有力候補として決定される。
【０１９４】
さらに、当該禁則設定内容ｑ２１に対応する設定項目Ｑ２の設定内容が、「禁則数」を最も減少させる設定内容（たとえば、「禁則数」を２つ減らしてゼロにする設定内容ｑ２２）へと変更すべき旨が決定される。詳細には、変更対象項目の最有力候補として決定された共通禁則項目Ｑ２に関して、その設定変更によって禁則数を最も多く低減することが可能な一の設定内容ｑ２２が求められ（決定され）、共通禁則項目Ｑ２の設定内容が一の設定内容ｑ２２に変更すべき旨が決定される。その後、ステップＳ５５に進む。
【０１９５】
一方、最大の禁則数を有する禁則設定内容の個数が単数である旨が判定される場合には、ステップＳ５２からステップＳ５４に進む。ステップＳ５４では、最大の禁則数を有する当該禁則設定内容が変更対象に決定される。そして、当該禁則設定内容に対応する設定項目の設定内容が、「禁則数」を最も減少させる設定内容に変更される。その後、ステップＳ５５に進む。
【０１９６】
ステップＳ５５では、全ての禁則が解消されたか否かが判定される。未だ解消されていない禁則設定が残っている場合には、再びステップＳ５２に戻る。そして、ステップＳ５２〜Ｓ５５の動作が再び実行される。なお、ステップＳ５２〜Ｓ５５では、残存している禁則について上記と同様の動作が行われる。
【０１９７】
効率優先モードＭＤ１においては、禁則設定内容ｑ２１に対応する設定項目Ｑ２の設定内容が、「禁則数」を最も減少させる設定内容（たとえば、「禁則数」を２つ減らしてゼロにする設定内容ｑ２２）へと変更されると、２種類の禁則設定（ラベル「１」および「５」の禁則）が同時に解消される。したがって、効率的な変更処理が行われる。
【０１９８】
そして、ステップＳ５９において、禁則解消後の状態（および禁則解消策）が表示される。たとえば、共通禁則項目の設定内容の変更後の状態が表示される。
【０１９９】
たとえば、図２４に示すように、禁則解消後の状態が表示領域３７２に表示される。図２４は、禁則解消後の状態を示す図である。詳細には、図２４の表示領域３７２においては、有向グラフの各頂点が破線で示されるとともに、頂点間を接続する枝（エッジ）部分に表示されていた線と識別ラベル（「１」および「５」）とが削除されている。図２４（および図２３）の表示領域３５２の表示内容（変更前の表示内容）と比較すると判るように、禁則設定が解消されたことが、このような表示変更によって示されている。
【０２００】
その後、表示領域３７２内の変更ボタン３７３が押下されると、ステップＳ３５（図４）に進む。ステップＳ３５においては、表示領域３７２等に表示された解消策が実際に実行される。すなわち、解決候補として提示されていた１又は２以上の設定変更が実際に実行される。たとえば、効率優先モードＭＤ１において、設定変更対象項目の最有力候補として決定された共通禁則項目の設定内容を変更して共通禁則項目に関する禁則設定を解消する処理、を含む設定変更処理が行われる。
【０２０１】
以上のようにして、所定の基準に基づいて禁則設定を自動的に解消するための自動的な設定変更動作（「自動変更」）が実行される。なお、この実施形態では、実際に変更動作が行われる前に、図２３のような現状の禁則発生状態を示す画面３０３と図２４のような禁則解消後の状態を示す画面３０４とが表示される。ユーザは、これらの画面３０３，３０４を視認することによって、「どのような禁則が発生しているのか」および／または「当該禁則がどのように解消されるのか」等を知得することができる。
【０２０２】
また、この実施形態では、特定の設定項目に関するユーザからの設定変更指示（詳細には、ユーザによって指定された設定項目をユーザによって指定された設定内容（設定値）に変更する指示）に基づき禁則設定を解消していく設定変更動作（「手動変更」）をも実行することが可能である。ユーザは、図２３のような現状の禁則発生状態を示す画面３００（３０３等）を視認することによって、現在発生している禁則を知得しつつ、当該禁則の解消を試行することが可能である。
【０２０３】
以下では、ユーザの手動操作による禁則設定の解消動作について説明する。
【０２０４】
＜手動操作時の動作（頂点クリック）＞
まず、画面３０３（図２３参照）が表示されている状態において、頂点（ノード）に対するクリック操作（複数の表示要素（頂点）の中から所望の表示要素を選択する選択操作）が行われた場合について説明する。
【０２０５】
当該クリック操作が行われると、ステップＳ１５からステップＳ２２（図５）に進む。ステップＳ２２では、次のような動作が行われる。
【０２０６】
具体的には、画面３０３に代えて、図２５に示すような画面３００（３０５）が表示される。画面３０５においては、クリックされた頂点（具体的には、設定項目Ｑ２（設定内容ｑ２１））に対して吹き出し画像が付与されている。当該吹き出し画像（重畳画像とも称する）の内部には、設定項目Ｑ２に関する複数の設定内容ｑ２１，ｑ２２，ｑ２３のそれぞれに関する情報（図１７の現在禁則状態行列Ｇに基づく情報）が表示されている。具体的には、各設定内容ｑ２１，ｑ２２，ｑ２３の「詳細状態」の情報、および各設定内容ｑ２１，ｑ２２，ｑ２３に変更した後の「禁則数」の情報等が表示されている。
【０２０７】
詳細には、設定内容ｑ２２の詳細状態「０」（図１７参照）、および設定内容ｑ２２に変更した後の禁則数「０」が表示されている。詳細状態「０」は、図２５では、丸印で示されている。
【０２０８】
また、設定内容ｑ２３の詳細状態「１」（図１７参照）、および各設定内容ｑ２３に変更した後の禁則数「３」が表示されている。詳細状態「１」は、図２５では、三角印で示されている。なお、設定内容の詳細状態「２」（図１７参照）は、その他の記号等（たとえば「×」印等）で示される（図２６および図２７等参照）。
【０２０９】
なお、他の各頂点をクリックする場合にも、同様に、各頂点に関する情報が表示される。ユーザは、幾つかの頂点をクリックすることによって、所要の情報を知得することが可能である。
【０２１０】
＜手動操作時の動作（変更対象項目の変更）＞
次に、変更対象項目の手動変更について説明する。
【０２１１】
たとえば、頂点に対する上述のクリック操作に応じて図２５の画面３０５が表示されている状態にて、吹き出し画像内における所望の設定内容（たとえば、設定内容ｑ２２）の記述部分がクリック（選択）されると、設定変更対象項目（Ｑ２）を当該所望の設定内容（ｑ２２）に変更すべき旨の指示が受け付けけられた旨が判定され、ステップＳ１５からステップＳ２４に進む。ステップＳ２４では、ステップＳ１２（ステップＳ２００）（図６）と同様の動作（禁則発生判定処理および禁則グラフ生成処理等）が行われるとともに、表示内容が更新される。さらに、当該指示に基づく実際の設定変更処理も行われる。なお、更新後の表示内容（更新後の有向グラフ等）は、表示領域３５２等に表示される。
【０２１２】
具体的には、設定項目Ｑ２の設定内容が元の設定内容ｑ２１から当該所望の設定内容（ｑ２２等）へと変更される。設定内容ｑ２２へと変更された場合には、上述の変更後の内容（図２４の表示領域３７２の表示内容）と同様の内容が表示領域３５２内に表示される。
【０２１３】
なお、ユーザは、たとえば、図２３（あるいは図２５）等の表示領域３５２において設定項目Ｑ２とは別の設定項目Ｑ１を示す頂点をクリックして吹き出し画像を表示させ（図２６の画面３０６参照）、当該吹き出し画像内の所望の設定内容ｑ１２を選択することによって、設定項目Ｑ１の設定内容を元の設定内容ｑ１１から当該所望の設定内容ｑ１２へと変更することもできる。すなわち、このような手動操作によって、禁則状態を解消することも可能である。
【０２１４】
同様に、ユーザは、たとえば、図２３（あるいは図２５）等の表示領域３５２においてさらに別の設定項目Ｑ４を示す頂点をクリックして吹き出し画像を表示させ（図２７の画面３０７参照）、当該吹き出し画像内の所望の設定内容ｑ４２を選択することによって、設定項目Ｑ４の設定内容を元の設定内容ｑ４１から当該所望の設定内容ｑ４２へと変更することができる。
【０２１５】
なお、図２７においては、設定内容（ｑ４１およびｑ４３）の詳細状態の情報「２」（図１７の現在禁則状態行列Ｇを参照）が、「×」印で示されている。たとえば、ユーザは、図２７の画面３００（効率優先モードＭＤ１の画面）を視認して「共通禁則項目」の存在を把握している場合であっても、最低優先度の禁則項目Ｑ４を変更する禁則解消策（設定内容ｑ４２（「×」印が付された設定内容）への設定変更）を意図的に（敢えて）採用することも可能である。
【０２１６】
このような変更対象項目の変更操作が行われると、ステップＳ２４からステップＳ３１に進む。ステップＳ３１においては、全ての禁則設定が解消されたか否かが判定される。未だ解消されていない禁則設定が残存している場合には、再びステップＳ１５に戻る。一方、全ての禁則設定が解消された場合には、このステップＳ２０の処理は終了する。
【０２１７】
＜手動操作時の動作（優先度の変更）＞
次に、優先度の手動変更について説明する。
【０２１８】
ユーザは、その優先度を変更したい２つの設定項目（詳細には、対応する頂点）を選択する。具体的には、印刷指示装置５０のキーボードのコントロールキーを押下しつつ、画面３００内において２つの設定項目Ｑ１，Ｑ２に対応する２つの頂点を順次にマウスで左クリックすることによって、当該２つの設定項目Ｑ１，Ｑ２を選択することが可能である。そして、この状態にて、マウスの右ボタンをクリックすることによって表示されるサブメニュー画面の中から、「優先度変更（優先度入替）」のメニュー項目を選択する。このような選択操作（入替指示操作）に応答して、当該２つの設定項目Ｑ１，Ｑ２の優先度が入れ替えられる。
【０２１９】
具体的には、そのような入替指示操作が検出されると、ステップＳ１５からステップＳ２３（図５）に進む。ステップＳ２３では、次述するような優先度変更処理が行われる。その後、ステップＳ２４の処理が行われ、表示内容が更新される。
【０２２０】
たとえば、２つの設定項目Ｑ１，Ｑ２の優先度が入れ替え指示が付与されると、優先度変更処理（ステップＳ２３）が行われる。たとえば、設定項目Ｑ１の優先度が設定項目Ｑ２の優先度よりも高い場合（図１１および図１４等参照）に当該入替指示が付与されると、設定項目Ｑ１の優先度が設定項目Ｑ２の優先度よりも低くなるような変更処理（優先度入替処理）が行われる。
【０２２１】
より詳細には、優先度の入替対象に係る設定項目Ｑ１，Ｑ２が２次元禁則の禁則項目である場合には、図１８に示すような処理（２次元禁則用隣接行列Ｍ２の変更処理）が行われる。一方、優先度の入替対象に係る設定項目Ｑ１，Ｑ２が多次元禁則の禁則項目である場合には、図１９に示すような処理（多次元禁則行列Ｍｎの変更処理）が行われる。なお、図１８は、２次元禁則用隣接行列Ｍ２の変更処理（優先度入替処理）を示す図であり、図１９は、多次元禁則行列Ｍｎの変更処理（優先度入替処理）を示す図である。
【０２２２】
以下では、まず、２次元禁則用隣接行列の変更処理（優先度入替処理）について説明する。
【０２２３】
２次元禁則用隣接行列Ｍ２の当該変更処理（図１８参照）は、元（変更前）の２次元禁則用隣接行列Ｍ２（図１３）において、（ｖ，ｗ）成分と（ｗ，ｖ）成分とを入れ替えることによって、実現される。なお、値ｖ，ｗは互いに異なる自然数である。ここで、値ｖは、入替対象の一方の設定項目（たとえばＱ１）の設定内容（禁則設定内容）（たとえばｑ１１）に対応する位置（行位置あるいは列位置）を示し、値ｗは、他方の入替対象の設定項目（たとえばＱ２）の設定内容（禁則設定内容）（たとえばｑ２１）に対応する位置（列位置あるいは行位置）を示す。
【０２２４】
上述のように、変更前の２次元禁則用隣接行列Ｍ２（図１３）において、２次元禁則用隣接行列Ｍ２の第ｖ行（設定値ｑ１１に対応する行）と第ｗ列（設定値ｑ２１に対応する列）との交差部分に「１」が存在する。すなわち、（ｖ，ｗ）成分は「１」である。また、（ｗ，ｖ）成分は、「０」である。
【０２２５】
これに対して、変更後の２次元禁則用隣接行列Ｍ２（図１８）においては、（図１３とは逆に、）第ｗ行（設定値ｑ２１に対応する行）と第ｖ列（設定値ｑ１１に対応する列）との交差部分に「１」が存在する。すなわち、（ｗ，ｖ）成分が「１」である。また、（ｖ，ｗ）成分は、「０」である。
【０２２６】
このように、（ｖ，ｗ）成分と（ｗ，ｖ）成分とが入れ替えられた２次元禁則用隣接行列Ｍ２が生成される。なお、この入替後（更新後）の２次元禁則用隣接行列Ｍ２を用いて２次元禁則の検出処理等（ステップＳ２４）を行うことによって、入替後の優先度を反映した２次元禁則検出処理および２次元有向グラフ生成処理等が実行される。
【０２２７】
つぎに、多次元禁則行列Ｍｎの変更処理（優先度入替処理）について説明する。
【０２２８】
多次元禁則行列Ｍｎの当該変更処理（図１９参照）は、元（変更前）の多次元禁則行列Ｍｎ（図１６）において、第ｃの禁則（第ｃ列）に関して、（ｘ，ｃ）成分と（ｙ，ｃ）成分とを入れ替えることによって、実現される。ここで、値ｘは、入替対象の一方の設定項目（たとえばＱ１）の設定内容（禁則設定内容）（たとえばｑ１１）に対応する行位置を示し、値ｙは、他方の入替対象の設定項目（たとえばＱ２）の設定内容（禁則設定内容）（たとえばｑ２１）に対応する行位置を示す。なお、値ｘ，ｙ，ｃはそれぞれ自然数である。
【０２２９】
上述のように、変更前の多次元禁則行列Ｍｎ（図１６）においては、第１列（ｃ＝１）の禁則に関して、第ｘ行（ｑ１１成分に対応する行）に「３／３」が存在し、第ｙ行（ｑ２１成分に対応する行）に「２／３」が存在する。換言すれば、（ｘ，ｃ）成分は、「３／３」であり、（ｙ，ｃ）成分は、「２／３」である。
【０２３０】
これに対して、変更後の多次元禁則行列Ｍｎ（図１９）においては、第１列（ｃ＝１）の禁則に関して、第ｘ行（ｑ１１成分に対応する行）に「２／３」が存在し、第ｙ行（ｑ２１成分に対応する行）に「３／３」が存在する。換言すれば、（ｘ，ｃ）成分は、「２／３」であり、（ｙ，ｃ）成分は、「３／３」である。
【０２３１】
同様に、第５列（ｃ＝５）の禁則に関しても、同様の入替処理が行われる。具体的には、（ｘ，ｃ）成分は、「２／３」に変更され、（ｙ，ｃ）成分は、「３／３」に変更される。
【０２３２】
このように、（ｘ，ｃ）成分と（ｙ，ｃ）成分とが入れ替えられた多次元禁則行列Ｍｎ（図１９）が生成される。なお、この入替後の多次元禁則行列Ｍｎを用いて多次元禁則の検出処理等（ステップＳ２４）を行うことによって、入替後の優先度を反映した多次元禁則検出処理および多次元有向グラフ生成処理等が実行される。
【０２３３】
以上のようにして、２次元禁則用隣接行列Ｍ２あるいは多次元禁則行列Ｍｎが変更される。
【０２３４】
その後、変更後（入替後）の行列（Ｍ２あるいはＭｎ）に基づいてステップＳ２４の処理が行われ、表示内容が更新される。この結果、たとえば、図２８に示されるように、表示領域３５２においては、当該２つの設定項目Ｑ１，Ｑ２に対応する２つの頂点が入れ替わって表示される。図２８は、優先度入替操作後の禁則発生状況に関する表示画面３００（３０８）を示す図である。詳細には、この画面３０８内において、最も右側には設定項目Ｑ１に代えて設定項目Ｑ２（設定内容ｑ２１）が表示され、中央には設定項目Ｑ２に代えて設定項目Ｑ１（設定内容ｑ１１）が表示される。換言すれば、設定項目Ｑ２，Ｑ１，Ｑ３がこの順序で右側から左側に向けて配置される。
【０２３５】
＜手動操作時の動作（１つ前の状態に戻すボタンを押下）＞
また、画面３００（３０８等）内の「１つ前の状態に戻す」ボタン３５４が押下されると、ステップＳ１５からステップＳ２５（図５）に進む。ステップＳ２５では、「１つ前の状態」に戻す処理が行われる。
【０２３６】
たとえば、変更対象項目の変更操作の直後に、「１つ前の状態に戻す」ボタン３５４が押下される場合には、変更対象項目が変更される前の状態に戻すための処理（設定内容を１つ前の状態に戻す処理、および１つ前の状態を示す有向グラフの生成処理等）が行われる。そして、「１つ前の状態」に対応する有向グラフが表示領域３５２に表示される。
【０２３７】
あるいは、優先度の変更操作の直後に、「１つ前の状態に戻す」ボタン３５４が押下される場合には、優先度が変更される前の状態に戻すための処理（優先度の変更（入替）前の状態に戻す処理、および当該変更前の状態を示す有向グラフの生成処理等）が行われる。優先度の変更（入替）前の状態に戻す処理としては、２次元禁則用隣接行列Ｍ２あるいは多次元禁則行列Ｍｎを変更前の状態に戻す処理等が行われる。そして、「１つ前の状態」に対応する有向グラフが表示領域３５２に表示される。
【０２３８】
＜手動操作時の動作（初期状態に戻すボタンを押下）＞
また、画面３００（３０８等）内の「初期状態に戻す」ボタン３５５が押下されると、ステップＳ１５からステップＳ２６に進む。ステップＳ２６では、「初期状態」に戻す処理が行われる。具体的には、その時点までの手動操作による全ての変更が破棄され、各種の設定内容が初期状態（ステップＳ１４の状態）に戻されるとともに、初期状態を示す有向グラフの生成処理等が行われる。そして、「初期状態」（初期禁則発生状態）に対応する有向グラフが表示領域３５２に表示される。
【０２３９】
＜手動操作時の動作（モード変更ボタンを押下）＞
また、画面３００（３０３等）内のラジオボタン３１２，３１３のいずれかが押下されると、ステップＳ１５からステップＳ２７に進む。ステップＳ２７では、いずれのモードへの移行指示が受け付けられたか（いずれのラジオボタン３１２，３１３が押下されたか）が判定される。効率優先モードＭＤ１への移行指示が受け付けられた（ラジオボタン３１２が押下された）場合には、ステップＳ２８に進む。一方、優先度優先モードＭＤ２への移行指示が受けつけられた（ラジオボタン３１３が押下された）場合には、ステップＳ２９に進む。
【０２４０】
ステップＳ２８では、禁則解消モードが効率優先モードＭＤ１に設定される。また、ステップＳ２８では、複数の禁則項目のうち、効率優先モードＭＤ１において禁則解消のために最初に変更されるべき設定項目（設定内容）に対応する頂点が特定され、当該頂点が強調表示される（ここでは、特定色（たとえば、黄色）の背景色を有する状態で表示される）。たとえば、図２３等に示すように、複数の禁則項目を示す複数の頂点のうち、最大の禁則数を有する頂点ｑ２１が色付け表示される（図では砂地ハッチングを付して示す）。また、最大の禁則数を有する頂点が複数個存在する場合には、当該複数の頂点（ｑ２１およびｑ２２）のうち、最低の優先度を有する頂点（ｑ２１）が、最初に変更されるべき設定項目（変更対象項目）の最有力候補として色付け表示される。このような強調表示（色付け表示等）によれば、ユーザは、効率優先モードＭＤ１における、変更対象の最有力候補を容易に視認することが可能である。
【０２４１】
ステップＳ２９では、禁則解消モードが優先度先モードＭＤ２に設定される。また、ステップＳ２９では、複数の禁則項目のうち、優先度先モードＭＤ２において禁則解消のために最初に変更されるべき設定項目（設定内容）に対応する頂点が特定され、当該頂点が強調表示される（ここでは、特定色（たとえば、黄色）の背景色を有する状態で表示される）。たとえば、図２９等に示すように、各禁則設定において最低優先度を有する禁則項目（たとえば、ｑ３１，ｑ４１）が色付け表示される（図では砂地ハッチングを付して示す）。図２９は、モード切替操作後（優先度優先モードＭＤ２への切替操作後）の禁則発生状況に関する表示画面３００（３０９）を示す図である。このような強調表示によれば、ユーザは、優先度先モードＭＤ２における、変更対象の最有力候補を容易に視認することが可能である。
【０２４２】
以上のように、このプリンタドライバは、ユーザの手動操作による禁則解消処理をも実行することが可能である。
【０２４３】
また、一部の設定をユーザの手動操作で変更した後に、当該手動操作による変更を維持したまま、以後の禁則解消操作を自動的に行うことも可能である。より詳細には、たとえば、ユーザは、上述のような手動操作によって、特定の２つの頂点（ノード）の優先度を入れ替えた後（および／または特定の頂点の設定内容を新たな設定内容に手動操作で変更した後）において、解決候補表示ボタン３５３を押下すればよい。このような操作に応じて、プリンタドライバは、手動による設定変更を維持した上での更なる解決策を自動的に決定し、当該解決策を表示領域３７２に表示する。ユーザは、当該解決策を確認し、当該解決策を了承する場合には、変更ボタン３７３を押下する。プリンタドライバは、変更ボタン３７３の押下に応じて、当該解決策に係る実際の設定変更を実行する。このように、手動操作による設定変更と自動的な設定変更との組み合わせで、禁則設定を解消することも可能である。
【０２４４】
＜６．実施形態の効果等＞
以上のような動作（特に図１０のステップＳ５１〜Ｓ５５，Ｓ５９および図５のステップＳ２８等参照）によれば、効率優先モードＭＤ１において、「共通禁則項目」（複数の種類の禁則設定のうちの少なくとも一部の２種類以上の禁則設定に共通する禁則項目）が抽出される。具体的には、２以上の禁則数を有する頂点（禁則項目）が「禁則数最大の頂点」として存在する場合、当該２種類以上の禁則設定に共通する禁則項目（共通禁則項目）が存在し、当該共通禁則項目が抽出される。そして、複数の種類の禁則設定を解消していくための設定変更対象項目の候補（最有力候補）として、当該共通禁則項目が決定される（ステップＳ５３，Ｓ５４）。したがって、複数の種類の禁則設定を効率的に解消することが可能である。
【０２４５】
また、複数の共通禁則項目が抽出される場合、当該複数の共通禁則項目のうち最多共通項目（最も多数の種類の禁則設定に共通する共通禁則項目）が設定変更対象項目の最有力候補として決定される（ステップＳ５３参照）。たとえば、２つの禁則数を有する頂点（禁則項目）Ｑ７と３つの禁則数を有する頂点（禁則項目）Ｑ８とが仮に存在する場合、３つの禁則数を有する頂点（禁則項目）Ｑ８が「禁則数最大の頂点」として決定される。そして、当該３つの禁則数を有する頂点（換言すれば、３種類の禁則設定に共通する禁則項目（共通禁則項目））Ｑ８が、複数の種類の禁則設定を解消していくための設定変更対象項目の最有力候補として決定される（ステップＳ５３，Ｓ５４）。当該禁則項目Ｑ７の設定変更を行う場合に比べて、当該禁則項目Ｑ８の設定変更を行うことによれば、比較的多数（ここでは３つ）の禁則設定が一度に解消され得るので、複数の種類の禁則設定を非常に効率的に解消することが可能である。
【０２４６】
また、複数の共通禁則項目が抽出される場合において、最多共通項目として２以上の共通禁則項目が存在するときには、当該２以上の共通禁則項目（たとえば、禁則設定Ｑ１，Ｑ２）のうちその優先度合いが最も低い共通禁則項目（たとえば、Ｑ２）が設定変更対象項目の最有力候補として決定される（ステップＳ５３）。これによれば、優先度合いをも考慮して効率的に複数の種類の禁則設定を解消することが可能である。
【０２４７】
また、ユーザは、画面３００内のモード指定欄３１１（図２３および図２９等参照）を用いて、２つのモードＭＤ１，ＭＤ２の中から、所望のモードを選択（指定）することが可能である。そして、ユーザによって指定されたモードを用いて設定変更対象項目の最有力候補が決定され得る。ユーザは、たとえば、効率優先モードＭＤ１を用いることが可能であるので、専ら優先度先モードＭＤ２を用いる場合に比べて、多様な禁則解消策を得ることが可能である。
【０２４８】
また、図２３に示されるように、禁則発生時においては現在の禁則発生状況を示す画面３００が表示されるとともに、効率優先モードＭＤ１においては、当該画面３００において共通禁則項目（Ｑ２等）が示される。したがって、ユーザは、共通禁則項目の存在を知得して、当該共通禁則項目を利用した禁則解消処理を行うことが可能である。
【０２４９】
特に、各禁則項目が、それぞれ対応する各表示要素（図形要素）として視覚化されて表示されるので、禁則発生状況が視覚化され禁則設定を把握し易い。また、複数の種類の禁則設定に関して、所定数の種類（たとえば２種類）の禁則設定に共通する共通禁則項目Ｑ２は、当該所定数の種類の禁則設定に共通する１つの表示要素（図形要素）として示されるので、ユーザは、当該１つの表示要素に対応する禁則項目が共通禁則項目であることを直感的に理解することが可能である。
【０２５０】
また、図２５に示されるように、ユーザが一の頂点（一の設定項目）（たとえばＱ２）
をクリックすると、当該一の設定項目（Ｑ２）の設定内容の各変更候補（ｑ２１，ｑ２２，ｑ２３等）と当該一の設定内容を当該各変更候補に変更したときに変更候補が関与する各禁則数（「２」，「０」，「３」）とが表示される。したがって、ユーザは、当該変更候補への変更に応じた禁則数の変化を容易に知得することができる。
【０２５１】
また、図２４の画面３００（３０４）（特にその下段側の表示領域３７２（Solution View欄））等においては、共通禁則項目の設定内容の変更を伴う改善策（当該変更後の状態）が表示される。したがって、ユーザは、当該改善策を確認することが可能である。より詳細には、ユーザは、当該改善策によってどのように禁則が解消されるかを容易に知得することが可能である。
【０２５２】
また、この実施形態では、特定の設定項目に関するユーザからの設定変更指示に基づき、禁則設定を解消していく設定変更動作（「手動変更」）をも実行することが可能である。より詳細には、共通禁則項目に関する設定内容を変更すること等が可能である。したがって、ユーザの意図を適切に反映した禁則解消策を採用することが可能である。
【０２５３】
また、この実施形態においては、複数の禁則項目のうちの１つの禁則項目の設定内容が変更されるごとに、当該設定内容の変更に伴う禁則設定の変更状況が動的に検出される。具体的には、２次元禁則行列（詳細には２次元禁則用隣接行列Ｍ２）と多次元禁則行列Ｍｎとを用いることによって、ジョブに関する複数の設定項目のうちの一の設定項目の設定内容が現在の設定値から変更後の設定値へと変更された後の禁則発生状況が検出される（ステップＳ２１，Ｓ２４等参照）。したがって、複数の設定項目に関して順次にその設定内容が変更される場合において、各設定変更時点での禁則発生状況を随時把握することが可能である。
【０２５４】
また、各設定変更時点での禁則発生状況が有向グラフ等を用いて視覚化されることによって、ユーザは禁則発生状況を直感的に把握することが可能である。
【０２５５】
＜７．変形例等＞
以上、この発明の実施の形態について説明したが、この発明は上記説明した内容のものに限定されるものではない。
【０２５６】
たとえば、上記実施形態等においては、設定項目（および設定内容）を示す表示要素として、楕円図形を例示している（図１１および図１４等参照）が、これに限定されず、当該表示要素は、その他の図形要素であってもよい。具体的には、当該表示要素は、円、矩形、菱形、星形などの比較的基本的な図形要素であってもよく、あるいは、立体的なボタン画像などの比較的複雑な図形要素であってもよい。また、当該表示要素は、プリンタドライバ内の設定に用いられるコントロール要素（ボタン、リストボックス、あるいはコンボボックス等）であってもよい。
【０２５７】
また、上記実施形態等においては、２次元禁則および多次元禁則が有向グラフを用いて表現されているが、これに限定されない。たとえば、２次元禁則および多次元禁則が無向グラフを用いて表現されてもよい。
【０２５８】
また、上記実施形態等においては、図１４等に示されるように、２種類の禁則設定（特に共通禁則項目を有する２種類の禁則設定）が識別ラベル（「１」，「５）」で互いに区別されているが、これに限定されない。
【０２５９】
たとえば、図３０に示されるように、複数の種類の禁則設定ごとの線が、各禁則設定ごとに決定された固有の色で表示されることによって、当該複数の種類の禁則設定が互いに識別されるようにしてもよい。より具体的には、第１の種類の禁則設定に関する複数の設定項目が「青色」の線で接続され、第２の種類の禁則設定に関する複数の設定項目が「赤色」の線で接続されるようにしてもよい。なお、図３０（および次述する図３１）では、線の色の相違（青色と赤色との相違）を線種の相違（破線と実線との相違）で表現している。また、これに限定されず、実際に、線色の相違に代えて線種の相違で複数の種類の禁則設定が互いに識別されるようにしてもよい。
【０２６０】
また、上記実施形態等においては、図１１および図１４等に示されるように、有向グラフにおいて、各禁則設定に関する２以上の禁則項目に対応する２以上の表示要素を線で結んで表示することによって、当該２以上の表示要素に対応する設定項目の設定内容が各禁則設定の要因であることが提示されている。しかしながら、本発明は、これに限定されない。
【０２６１】
たとえば、図３１に示されるように、各禁則設定に関する２以上の禁則項目に対応する２以上の表示要素を枠で囲んで表示することによって、当該２以上の表示要素に対応する設定項目の設定内容が各禁則設定の要因であることが提示されるようにしてもよい。図３１は、枠を利用したグラフ表示（無向グラフ表示）の一例を示す図である。
【０２６２】
図３１では、一の種類の禁則設定に関する３つの禁則項目Ｑ１，Ｑ２，Ｑ３（３つの設定内容ｑ１１，ｑ２１，ｑ３１）に対応する３つの表示要素を枠で囲んで表示することによって、当該３つの表示要素に対応する設定項目の設定内容が一の種類の禁則設定の要因であることが提示されている。また、他の種類の禁則設定に関する３つの禁則項目Ｑ１，Ｑ２，Ｑ４（３つの設定内容ｑ１１，ｑ２１，ｑ４１）に対応する３つの表示要素を枠で囲んで表示することによって、当該３つの表示要素に対応する設定項目の設定内容が当該他の種類の禁則設定の要因であることが提示されている。このように、禁則設定ごとに、各禁則設定の２以上の禁則項目に対応する２以上の表示要素を枠で囲んで表示することによって、当該２以上の表示要素に対応する設定項目の設定内容が当該各禁則設定の要因であることが提示される。また、このような場合において、複数の種類の禁則設定ごとの枠が、各禁則設定ごとに決定された固有の色で表示されることによって、当該複数の種類の禁則設定が互いに識別されることが好ましい。
【０２６３】
あるいは、図３２に示されるように、線あるいは枠を利用せずに、複数の表示要素（複数の設定項目）が禁則設定の要因であることが示されるようにしてもよい。具体的には、各禁則設定に関する２以上の禁則項目に対応する２以上の表示要素の近傍（あるいは内部でもよい）に同一の識別ラベルを表示することによって、当該２以上の表示要素に対応する設定項目の設定内容が当該各禁則設定の要因であることが提示されるようにしてもよい。図３２は、ラベルを利用したグラフ表示（無向グラフ表示）の一例を示す図である。
【０２６４】
図３２では、一の種類の禁則設定に関する３つの禁則項目Ｑ１，Ｑ２，Ｑ３（３つの設定内容ｑ１１，ｑ２１，ｑ３１）に対応する３つの表示要素の近傍（詳細には、上方近傍）に同一の識別ラベル（「１」）を表示することによって、当該３つの表示要素に対応する設定項目の設定内容が当該一の種類の禁則設定の要因であることが提示されている。また、他の種類の禁則設定に関する３つの禁則項目Ｑ１，Ｑ２，Ｑ４（３つの設定内容ｑ１１，ｑ２１，ｑ４１）に対応する３つの表示要素の近傍（詳細には、上方近傍）に同一の識別ラベル（「５」）を表示することによって、当該３つの表示要素に対応する設定項目の設定内容が当該他の種類の禁則設定の要因であることが提示されている。このように、禁則設定ごとに、各禁則設定の２以上の禁則項目に対応する２以上の表示要素の近傍（詳細には、上方近傍）に同一の識別ラベル（「１」）を表示することによって、当該２以上の表示要素に対応する設定項目の設定内容が当該各禁則設定の要因であることが提示されている。特に、複数の種類の禁則設定ごとの識別ラベルとして、各禁則設定ごとに決定された固有の識別ラベル（「１」および「５」）がそれぞれ付与されることによって、複数の種類の禁則設定が互いに識別されている。
【０２６５】
また、上記実施形態等においては、禁則の発生状況等が図形（有向グラフ等）を用いて提示されているが、これに限定されない。たとえば、図３３に示されるように、文字（文字列）で表現されてもよい。特に、図３３においては、複数の種類の禁則設定のうちの少なくとも一部の２種類以上の禁則設定において共通する禁則項目（共通禁則項目）が存在する場合において、当該共通禁則項目（共通要因）が文字を用いて明示されている。より具体的には、「共通要因：禁則数＝２の設定値：Ｑ２＝ｑ２１，Ｑ１＝ｑ１１」との文字列表現によって、２つの種類の禁則設定に共通する共通禁則項目Ｑ２が存在すること（およびその禁則設定内容ｑ２１）、ならびに２つの種類の禁則設定に共通する共通禁則項目Ｑ１が存在すること（およびその禁則設定内容ｑ１１）が示されている。なお、実際には、「Ｑ１」および「Ｑ２」は、設定項目（禁則項目）の名称を示す文字列（「出力用紙サイズ」および「通紙方向」等）でそれぞれ構成され、「ｑ１１」および「ｑ２１」は、設定内容（設定値）を示す文字列（「Ｂ５」および「短辺」等）でそれぞれ構成されればよい。
【０２６６】
また、上記実施形態等においては、各設定項目相互間の優先度が有向グラフ表現における矢印の向きで表現されているが、これに限定されない。たとえば、画面内での有向グラフあるいは無向グラフの各頂点（各設定項目）の特定方向（左右方向等）における相対位置によって、各設定項目相互間の優先度が示されてもよい。より詳細には、表示領域３５２（３３２，３７２等）内において、複数の設定項目のうち比較的高い優先度を有する設定項目が比較的一方側（たとえば右側等）に配置されればよい。この場合、複数の設定項目のうち最も左側に位置する頂点（ノード）（最低優先度を有する頂点）に対応する設定項目から順に、その設定内容を変更していくことによって、優先度優先モードＭＤ２と同様の禁則解消動作が実現され得る。
【０２６７】
また、上記実施形態等においては、情報処理装置５０で実行されるプリンタドライバを用いた印刷設定処理に対して本発明の思想が適用される態様が例示されているが、これに限定されない。たとえば、ＭＦＰ１０の操作パネル部６ｃ上で行われる印刷設定処理に対して同様の思想が適用されるようにしてもよい。この場合には、ＭＦＰ１０のコントローラ９あるいは操作パネル部６ｃ内のコントローラ（不図示）によって、上記の思想を反映したプログラムが実行されればよい。
【０２６８】
また、上記実施形態等においては、プリントジョブに関する印刷設定処理に本発明の思想を適用する態様について説明しているが、本発明は、その他のジョブ（たとえば、コピージョブあるいはスキャンジョブ等）に関する設定処理にも適用することが可能である。より詳細には、ＭＦＰ１０の操作パネル部６ｃを用いたコピー設定操作（あるいはスキャン設定操作等）において上記の思想が適用されるようにしてもよい。
【符号の説明】
【０２６９】
１  プリントシステム
１０  ＭＦＰ
５０  情報処理装置（印刷指示装置）
ＭＤ１  効率優先モード
ＭＤ２  優先度優先モード
Ｑｉ  設定項目
ｑｉｊ  設定内容（設定値）
【図１】
2018169775.tif 000003
【図２】
2018169775.tif 000004
【図３】
2018169775.tif 000005
【図４】
2018169775.tif 000006
【図５】
2018169775.tif 000007
【図６】
2018169775.tif 000008
【図７】
2018169775.tif 000009
【図８】
2018169775.tif 000010
【図９】
2018169775.tif 000011
【図１０】
2018169775.tif 000012
【図１１】
2018169775.tif 000013
【図１２】
2018169775.tif 000014
【図１３】
2018169775.tif 000015
【図１４】
2018169775.tif 000016
【図１５】
2018169775.tif 000017
【図１６】
2018169775.tif 000018
【図１７】
2018169775.tif 000019
【図１８】
2018169775.tif 000020
【図１９】
2018169775.tif 000021
【図２０】
2018169775.tif 000022
【図２１】
2018169775.tif 000023
【図２２】
2018169775.tif 000024
【図２３】
2018169775.tif 000025
【図２４】
2018169775.tif 000026
【図２５】
2018169775.tif 000027
【図２６】
2018169775.tif 000028
【図２７】
2018169775.tif 000029
【図２８】
2018169775.tif 000030
【図２９】
2018169775.tif 000031
【図３０】
2018169775.tif 000032
【図３１】
2018169775.tif 000033
【図３２】
2018169775.tif 000034
【図３３】
2018169775.tif 000035