(57)【要約】  【課題】一度行った設定の設定内容に基づいて、異なる機種に対する設定情報を自動で作成するための技術を提供【解決手段】情報処理装置は、電子機器の各機種の設定項目の集合である共通設定項目のセットを記憶する第１の記憶装置と、第１の記憶装置から読み出した共通設定項目のセットを参照して、共通設定項目のセットに対してユーザに設定を行わせるための入力画面を作成する作成手段と、入力画面を介してユーザから入力された各設定値を、対応する共通設定項目とユーザが前記設定値を入力した順序とに対応付けて第２の記憶装置に格納する対応付け手段と、電子機器の複数の機種のうちの１の機種に適用される、設定値間の設定順に依存する制約情報を少なくとも１つ記憶する第３の記憶装置と、第２の記憶装置から上記順序に従って各設定値を読み出し、第３の記憶装置から読み出した１の制約情報を参照して、各設定値を当該１の制約情報を適用する機種に設定する設定値に変換する変換手段とを備える。  【選択図】  図２
2008165329.tif 000002
【特許請求の範囲】
【請求項１】
処理を提供する電子機器について、前記処理の方法を指定する設定情報を作成するためのプログラムであって、前記プログラムは、情報処理装置に、
（ａ）前記電子機器の各機種の設定項目を集めた共通設定項目のセットを参照して、前記共通設定項目のセットに対して前記電子機器の使用を希望するユーザに設定を行わせるための入力画面を作成するステップと、
（ｂ）前記入力画面を介して前記ユーザから入力される複数の設定値を受け取るステップと、
（ｃ）前記受け取った各設定値を、対応する共通設定項目と前記ユーザが前記設定値を入力した順序とに対応付けて共通設定情報として共通設定格納部に格納するステップと、
（ｄ）前記電子機器の複数の機種のうちの１の機種に対する設定情報を作成するために、前記共通設定格納部から前記順序に従って前記各設定値を読み出し、前記１の機種に適用される、設定値間の設定順に依存する制約情報を参照して、読み出した前記各設定値を前記１の機種に設定する設定値に変換するステップと
を実行させる、設定情報作成のためのプログラム。
【請求項２】
前記変換するステップ（ｄ）は、前記共通設定格納部から前記順序に従って読み出した第１の設定値と、前記第１の設定値より先に読み出された設定値の変換後の値である前記１の機種に設定する第２の設定値とを同時に設定することが前記設定値間の設定順に依存する制約情報により禁止される場合に、当該制約情報に従って前記第１の設定値と前記第２の設定値のいずれか一方の設定値を変更するステップを含む、請求項１に記載のプログラム。
【請求項３】
前記作成するステップ（ａ）は、前記共通設定項目を設定頻度に基づいて優先項目と非優先項目とに分類するステップと、前記優先項目に分類された共通設定項目が前記非優先項目に分類された項目よりも画面上先に表示されるように入力画面を作成するステップとを含む、請求項２に記載の方法。
【請求項４】
前記制約情報は、前記第１の設定値の共通設定項目と前記第２の設定値の共通設定項目の分類が同じである場合、前記第２の設定値を変更し、前記第１の設定値の共通設定項目と前記第２の設定値の共通設定項目の分類が異なる場合、前記第１の設定値を変更するよう指示する、請求項３に記載のプログラム。
【請求項５】
前記変換するステップ（ｄ）は、前記第１の設定値と前記第２の設定値のいずれか一方の設定値を変更した場合に、当該変更に関する情報を記録するステップを更に含み、
前記変更について前記ユーザに確認させるための確認画面を作成するステップ（ｅ）を前記情報処理装置に更に実行させる、請求項２に記載のプログラム。
【請求項６】
前記確認画面を介して前記ユーザから入力される修正値を受け取るステップ（ｆ）を前記情報処理装置に更に実行させ、
前記変換するステップ（ｄ）は、前記１の機種と異なる機種に設定する設定値を作成するために前記修正値を参照するステップを含む、請求項５に記載のプログラム。
【請求項７】
前記情報処理装置は、前記複数の機種の電子機器に接続して処理を要求可能な情報処理装置である、請求項１に記載のプログラム。
【請求項８】
前記情報処理装置に前記変換するステップ（ｄ）を実行させるプログラムは、前記情報処理装置上で動作する前記１の機種の電子機器のドライバである、請求項７に記載のプログラム。
【請求項９】
前記１の機種において適用される、前記設定値間の設定順に依存する制約情報は、前記ドライバの更新時に一緒に更新される、請求項８に記載のプログラム。
【請求項１０】
前記情報処理装置は、前記複数の機種の電子機器に接続して処理を要求可能なクライアントとネットワークを介して接続されるサーバであり、
前記サーバは、前記クライアントから共通設定情報の作成要求を受信することに応答して、ステップ（ａ）乃至（ｃ）を実行し、前記クライアントから利用する電子機器の機種を指定した変換要求を受信することに応答して、指定された機種を前記１の機種としてステップ（ｄ）を実行する、請求項１に記載のプログラム。
【請求項１１】
前記１の機種が採用する、前記設定値間の設定順に依存する制約情報は、前記情報処理装置を接続するネットワークからダウンロードされる、請求項１０に記載のプログラム。
【請求項１２】
処理を提供する電子機器について、前記処理の方法を指定する設定情報を作成するための方法であって、
前記電子機器の各機種の設定項目を集めた共通設定項目のセットを参照して、前記共通設定項目のセットに対して前記電子機器の使用を希望するユーザに設定を行わせるための入力画面を作成するステップと、
前記入力画面を介して前記ユーザから入力される複数の設定値を受けとるステップと、
前記受け取った各設定値を、対応する共通設定項目と前記ユーザが前記設定値を入力した順序とに対応付けて共通設定格納部に格納するステップと、
前記電子機器の複数の機種のうち１の機種に対する設定情報を作成するために、前記共通設定格納部から前記順序に従って各設定値を読み出し、前記１の機種に適用される、設定値間の設定順に依存する制約情報を参照して、読み出した前記各設定値を前記１の機種に設定する設定値に変換するステップと
を含む、設定情報作成のための方法。
【請求項１３】
処理を提供する電子機器について、前記処理の方法を指定する設定情報を作成するための情報処理装置であって、
電子機器の各機種の設定項目の集合である共通設定項目のセットを記憶する第１の記憶装置と、
前記第１の記憶装置から読み出した前記共通設定項目のセットを参照して、前記共通設定項目のセットに対して前記情報処理装置のユーザに設定を行わせるための入力画面を作成する作成手段と、
前記入力画面を表示する表示装置と、
前記入力画面を介して前記ユーザから入力された複数の設定値を受けとる入力装置と、
前記受け取った各設定値を、対応する共通設定項目と前記ユーザが前記設定値を入力した順序とに対応付けて第２の記憶装置に格納する対応付け手段と、
前記電子機器の複数の機種のうちの１の機種に適用される、設定値間の設定順に依存する制約情報を少なくとも１つ記憶する第３の記憶装置と、  
前記第２の記憶装置から前記順序に従って前記各設定値を読み出し、前記第３の記憶装置から読み出した１の前記制約情報を参照して、前記各設定値を、当該１の制約情報を適用する機種に設定する設定値に変換する変換手段と
を含む情報処理装置。
【請求項１４】
複数の機種の電子機器に接続して処理を要求可能なクライアントとネットワークを介して接続されるサーバであって、
電子機器の各機種の設定項目の集合である共通設定項目のセットを記憶する第１の記憶装置と、
前記クライアントから共通設定情報の作成要求を受信することに応答して、前記第１の記憶装置から読み出した前記共通設定項目のセットを参照して、前記共通設定項目のセットに対して前記クライアントのユーザに設定を行わせるための入力画面を作成する作成手段と、
前記入力画面の情報を前記クライアントに送信する送信手段と、
前記入力画面の情報の表示を介して前記クライアントのユーザから入力された設定値のセットとその入力順とを前記クライアントから受信する受信手段と、
前記受信した各設定値を、対応する共通設定項目と前記ユーザが前記設定値を入力した順序とに対応付けて第２の記憶装置に格納する対応付け手段と、
前記電子機器の各機種が適用する、設定値間の設定順に依存する制約情報を記憶する第３の記憶装置と、  
前記クライアントから利用する電子機器の機種を指定した変換要求を受信することに応答して、前記第２の記憶装置から前記順序に従って前記各設定値を読み出し、前記第３の記憶装置から読み出した指定された前記電子機器の前記制約情報を参照して、前記各設定値を指定された前記電子機器に設定する設定値に変換する変換手段と、  
前記変換後の設定値のセットを前記クライアントに送信する送信手段と
を含む情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は処理を提供する電子機器について、その処理方法を指定する設定情報を作成する方法に関し、特に一度行った設定の設定内容に基づいて、異なる機種に対する設定情報を自動で作成するための技術に関する。
【背景技術】
【０００２】
同じ種類の電子機器であっても、機種が異なるとその設定内容は異なる。そのため、電子機器の買い替えにより機種を変更する場合や、学校や職場、自宅といった作業場所によって使用する電子機器の機種が異なる場合、電子機器の設定をやり直す必要がある。再設定を行う面倒を避けるために、既に設定を行った電子機器の設定内容を利用してコンピュータにより自動で異なる機種に対する設定内容を作成することが考えられる。しかしこれには大きな問題がある。  
【０００３】
一般に、電子機器の設定には２種類の明示的及び暗黙の設定値ルールが存在する。１つは、設定値の範囲に関する制約ルールである。プリンタを例にすると、「印刷時のマージンは１０ｍｍ〜３０ｍｍ」といった制約である。また１つは、設定値間の依存関係による制約ルールである。これは同じくプリンタを例にすると、「ステープルとパンチ穴は同時に設定できず、ステープルが設定されるとパンチ穴は解除される」といった制約である。
【０００４】
一度行った設定の設定内容を異なる機種にそのまま利用できない場合、１つ目の設定値の範囲に関する制約ルールについては、単純な方法により問題は解決される。すなわち、設定値の範囲が異なる機種に対しては、値を設定可能な範囲内に「丸める」という方法である。例えばプリンタの用紙サイズについては同じサイズを設定できなければ設定可能なサイズで最も近いサイズを選択すればよい。
【０００５】
しかしながら、２つ目の設定値間の依存関係による制約ルールについては、そのように単純に問題を解決することはできない。これを、図１を参照して説明する。図１の（ａ）は、機種Ｘのプリンタに適用される設定値間の依存関係による制約ルールの一例である。表に示すようにこの制約ルールでは、パンチをＯＮに設定した後では２イン１をＯＮに設定することはできない。また２イン１をＯＮに設定した後ではパンチをＯＮに設定できない。このように設定値間の依存関係による制約ルールは設定の順序に依存する。
【０００６】
具体的に、使用するプリンタを、図１の（ａ）に示す制約ルールを適用する機種Ｘのプリンタに変更する場合を考える。ここでは理解容易なように設定項目を４つとし、変更前のプリンタの設定内容を「ステープル＝ＯＦＦ、パンチ＝ＯＮ、２イン１＝ＯＮ、両面＝ＯＮ」とする。この機種変更前の設定内容に図１の（ａ）に示す制約ルールを適用する。すると図１の（ｂ）に示すように、設定順序によって２通りの考え得る結果が得られる。考え得る結果１では、パンチの後に２イン１の設定を行っている。考える得る結果２では、２イン１の後にパンチの設定を行っている。なお、この例では２通りの考え得る結果が得られたが、設定項目数が増えると考え得る結果の数も増えることに留意されたい。
【０００７】
このように、変更前の電子機器の設定内容を利用してコンピュータにより自動で新しい機種に対する設定内容を決定しようとしても、設定値間の依存関係による制約ルールにより、複数の候補となる設定内容が求められ、新しい機種に設定すべき１つの設定内容を決定することはできない。また、使用する電子機器をより高機能の機種に変更する場合、高機能の機種では以前の機種では設定できなかった内容を設定できるため、変更前の機種の設定内容から新しい機種に対する設定内容を作成することはできない。
【０００８】
これに関して、特許文献１は、ネットワークに接続された複数の対象機器を一括設定する際に使用する、一括設定情報の作成を支援する設定情報作成支援装置を開示する。この設定情報作成支援装置は、ネットワークに接続されている機器から、当該機器に設定されている設定情報を取得する。ついで、取得した設定情報を表示画面上に表示させ、設定情報に対する情報の追加、変更、または削除等の編集操作をユーザから受け付ける。そして、ユーザの指示に応じて、機器から取得された設定情報または当該設定情報が編集された情報を機器別設定情報として受け付ける
（例えば、特許文献１を参照）。  
【特許文献１】特開２００５−１９７９３５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかし上記の技術においては、他の機器に設定されている設定情報を利用して対象機器の設定情報を作成するにあたり情報の追加、変更、または削除が必要な場合には、ユーザが直接編集操作を行うこととしている。そのため上記技術によれば一から設定をやり直す必要はなくなるが、依然としてユーザの負担は大きい。
【００１０】
そこで本発明は、一度行った設定の設定内容に基づいて、異なる機種に対する設定情報を自動で作成するための装置、方法およびプログラムを提供することを目的とする。また本発明は、一度行った設定の設定内容に基づいて、異なる機種に設定すべき１の設定情報を自動で求めることを目的とする。更に本発明は、一度行った設定の設定内容に基づいて、異なる機種に対する設定情報であって、かつユーザの意図に沿う設定情報を自動で作成することを目的とする。
【課題を解決するための手段】
【００１１】
上記の目的を達成する本発明は、次のような、処理を提供する電子機器について、処理の方法を指定する設定情報を作成するためのプログラムによって実現される。このプログラムは、情報処理装置に、
（ａ）電子機器の各機種の設定項目を集めた共通設定項目のセットを参照して、共通設定項目のセットに対して電子機器の使用を希望するユーザに設定を行わせるための入力画面を作成するステップと、（ｂ）入力画面を介してユーザから入力される複数の設定値を受け取るステップと、（ｃ）受け取った各設定値を、対応する共通設定項目とユーザが設定値を入力した順序とに対応付けて共通設定情報として共通設定格納部に格納するステップと、（ｄ）電子機器の複数の機種のうち１の機種に対する設定情報を作成するために、共通設定格納部から上記順序に従って各設定値を読み出し、上記１の機種に適用される、設定値間の設定順に依存する制約情報を参照して、読み出した各設定値を上記１の機種設定する設定値に変換するステップとを実行させる。
【００１２】
ここで、処理を提供する電子機器は、情報処理装置を接続して処理を要求可能なものであればよく、例えばプリンタ、コピー機、ファクシミリ、スキャナーである。また、変換するステップ（ｄ）は、共通設定格納部から上記順序に従って読み出した第１の設定値と、第１の設定値より先に読み出された設定値の変換後の値である上記１の機種に設定する第２の設定値とを同時に設定することが設定値間の設定順に依存する制約情報により禁止される場合に、当該制約情報に従って第１の設定値と第２の設定値のいずれか一方の設定値を変更するステップを含む。
【００１３】
好ましくは、作成するステップ（ａ）は、共通設定項目を設定頻度に基づいて優先項目と非優先項目とに分類するステップと、優先項目に分類された共通設定項目が非優先項目に分類された項目よりも画面上先に表示されるように入力画面を作成するステップとを含む。なお、設定頻度に代えて又はこれに加えて、処理結果に対する影響度及び設定の詳細度に基づいて、共通設定項目を優先項目と非優先項目とに分類してもよい。
【００１４】
更に好ましくは、上記制約情報は、第１の設定値の共通設定項目と第２の設定値の共通設定項目の分類が同じである場合、第２の設定値を変更し、第１の設定値の共通設定項目及び第２の設定値の共通設定項目の分類が異なる場合、第１の設定値を変更するよう指示する。
【００１５】
好ましくは、変換するステップ（ｄ）は、第１の設定値と第２の設定値のいずれか一方の設定値を変更した場合に、当該変更に関する情報を記録するステップを更に含む。そして、上記プログラムは上記情報処理装置に、上記変更についてユーザに確認させるための確認画面を作成するステップ（ｅ）を更に実行させる。
【００１６】
更に好ましくは、上記プログラムは上記情報処理装置に、確認画面を介してユーザから入力される修正値を受け取るステップを更に実行させる。そして、変換するステップ（ｄ）は、上記１の機種と異なる機種に設定する設定値を作成するために修正値を参照するステップを含む。
【００１７】
好ましくは、上記情報処理装置は、複数の機種の電子機器に接続して処理を要求可能な情報処理装置である。更に好ましくは、上記情報処理装置に変換するステップ（ｄ）を実行させるプログラムは、情報処理装置上で動作する上記１の機種の電子機器のドライバである。更に好ましくは、上記１の機種において適用される、設定値間の設定順に依存する制約情報は、ドライバの更新時に一緒に更新される。
【００１８】
好ましくは、上記情報処理装置は、複数の機種の電子機器に接続して処理を要求可能なクライアントとネットワークを介して接続されるサーバである。サーバは、クライアントから共通設定情報の作成要求を受信することに応答して、ステップ（ａ）乃至（ｃ）を実行する。またサーバは、クライアントから利用する電子機器の機種を指定した変換要求を受信することに応答して、指定された機種を前記１の機種としてステップ（ｄ）を実行する。更に好ましくは、上記１の機種が採用する、設定値間の設定順に依存する制約情報は、上記サーバを接続するネットワークからダウンロードされる。
【００１９】
以上、設定情報を作成するためのプログラムとして本発明を説明したが、本発明は、設定情報を作成するための方法及び情報処理装置として把握することもできる。
【発明の効果】
【００２０】
本発明によれば、一度行った設定の設定内容に基づいて、異なる機種に対する設定情報を自動で作成することが可能となる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明を実施するための最良の形態を図面に基づいて詳細に説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。なお、実施の形態の説明の全体を通じて同じ要素には同じ番号を付している。
【００２２】
図２の（ａ）は、本発明の１実施形態に係る、設定情報を作成するためのプログラムを実行する情報処理装置１００ＡＡの機能ブロック図である。本実施例の情報処理装置１００Ａは、複数の機種の電子機器に接続して処理を要求可能な情報処理装置である。そのような情報処理装置１００Ａにより実行される設定情報を作成するためのプログラムは、共通設定値作成モジュール２００、制約適用モジュール２３０、及び設定モジュール２６０を含む。なお、制約適用モジュール２３０と設定モジュール２６０は共通設定値作成モジュール２００とは異なるプログラムとすることもできる。一例としてこれら２つのモジュールは、上記複数の機種の電子機器のうち情報処理装置１００Ａのユーザが使用を希望する電子機器のドライバ２７０を構成するモジュールとして実現することも可能である。
【００２３】
共通設定値作成モジュール２００は情報処理装置１００Ａを、共通設定項目格納部２０５、入力画面作成部２１０、対応付け部２１５、共通設定格納部２２５として機能させる。制約適用モジュール２３０は情報処理装置１００Ａを、制約情報格納部２３５、変換部２４０、確認画面作成部２４５、修正情報格納部２５０、設定情報格納部２５５として機能させる。設定モジュール２６０は、情報処理装置１００Ａを、設定部２６５として機能させる。
【００２４】
第１の記憶装置としての共通設定項目格納部２０５は、電子機器の各機種の設定項目を集めた共通設定項目のセットを格納する。電子機器の各機種の設定項目は、説明書やカタログスペック、また電子機器の規格を利用して入手可能である。例えばプリンタでは、ＰｏｓｔＳｃｒｉｐｔ  Ｐｒｉｎｔｅｒ  Ｄｅｓｃｒｉｐｔｉｏｎ（ＰＰＤ）規格によりＰｏｓｔＳｃｒｉｐｔプリンタ向けに一般的な設定項目が定義されている。図３は、共通設定項目格納部２０５に格納される、プリンタの共通設定項目のセットの一例を示す。図３に示すように共通設定項目のセットは、設定項目と当該設定項目に対して設定可能な設定値との組のリストである。
【００２５】
入力画面作成部２１０は、共通設定項目格納部２０５から読み出した共通設定項目のセットを参照して、共通設定項目のセットに対して情報処理装置１００Ａのユーザに設定を行わせるための入力画面を作成する。本実施例では、入力画面作成部２１０はまず、共通設定項目を設定頻度に基づいて優先項目と非優先項目とに分類する。すなわち、設定頻度の高い共通設定項目は優先項目に分類し、設定頻度の低い共通設定項目は非優先項目に分類する。
【００２６】
図３に示すプリンタの共通設定項目のセットを例に分類方法を具体的に説明する。例えば、用紙サイズ、拡大・縮小、集約、両面といった共通設定項目は一般に多くのユーザが設定を行う項目である。従ってこれらの項目は設定頻度が高い設定項目といえ、優先項目に分類される。これに対し、ステープル、パンチ、画質、エコノミー、カラー／モノクロ、左右反転、白黒反転といった共通設定項目は必ずしもユーザが設定を行う項目とはいえない。従ってこれらの項目は設定頻度が低い設定項目といえ、非優先項目に分類される。なお、設定頻度に代えてまたはこれに加えて、処理結果に対する影響度や、設定の詳細度に基づいて共通設定項目を優先項目と非優先項目とに分類してもよい。
【００２７】
そして入力画面作成部２１０は、優先項目に分類された共通設定項目が非優先項目に分類された項目よりも画面上先に表示されるように入力画面を作成する。そのような入力画面の具体例を図４に示す。図４の（ａ）に示す入力画面は、全ての共通設定項目を一画面にスクロール式で表示するものである。この場合、優先項目に分類された共通設定項目は画面の上部４００に表示し、非優先項目に分類された共通設定項目は画面の下部４１０に表示する。図では縦のスクロールバー４０５が示されているが、横のスクロールバーでもよく、その場合優先項目に分類された共通設定項目は画面の左側に表示する。
【００２８】
図４の（ｂ）に示す入力画面は、共通設定項目のセットをタブにより切り替えて表示するものである。この場合優先項目に分類された共通設定項目は、デフォルトでトップに表示されるタブ４２０に表示し、非優先項目に分類された共通設定項目は、デフォルトでトップに表示されるタブ４２０以外のタブ４３０に表示する。
【００２９】
また入力画面は、優先項目に分類された共通設定項目はメインの画面に表示し、非優先項目に分類された共通設定項目はメインの画面とは別の画面に表示するものであってもよい。例えば図４の（ｃ）に示すように、非優先項目に分類された共通設定項目は、詳細設定ボタン４１５又は４４０をクリックすると開く画面に表示する。更に入力画面は上記説明した方法を適宜組み合わせるものであってもよい。例えば、タブ切り替えにより優先項目をトップのタブに表示し、更にトップのタブの中であっても優先度のより高い優先項目を上部に表示し、そうでないものは下部に表示してもよい。
【００３０】
対応付け部２１５は、ユーザが入力画面を介して入力した各設定値を、対応する共通設定項目とユーザがその設定値を入力した順序とに対応付けて共通設定情報として共通設定格納部２２５へ格納する。一例として対応付け部２１５はカウンタ２２０を備える。カウンタ２２０は最初に値１に初期化された後、対応付け部２１５が設定値を受け取るたびに１増加される。カウンタ２２０の値は設定値が入力された順序として利用される。図５は、第２の記憶装置としての共通設定格納部２２５に格納される、共通設定情報の一例を示す。共通設定情報は、ユーザが設定値を設定した設定項目のみを含む。また、ユーザが一度入力した設定値を変更した場合は設定値のみを変更し、対応付けられた順序は最初に設定値が入力されたときの値のままとする。
【００３１】
第３の記憶装置としての制約情報格納部２３５は、電子機器の複数の機種のうちの１の機種に適用される、設定値間の設定順に依存する制約情報を少なくとも１つ記憶する。ここで電子機器に適用される、設定値間の設定順に依存する制約情報とは、電子機器の設定項目に対し設定可能な値を制限する制約情報であって、他の設定項目に対して設定される設定値との関係から課される制約情報である。通常、電子機はその機種ごとに異なる設定値間の設定順に依存する制約情報をもつ。図１の（ａ）に示した表は、プリンタに適用される設定値間の設定順に依存する制約情報の一例である。なお、制約情報格納部２３５は更に上記１の機種の設定項目のセット及び設定値の範囲に関する制約情報を含んでもよい。
【００３２】
本実施例に係る設定値間の設定順に依存する制約情報は、ある２つの設定項目を同時に設定することが禁止される場合に、図６に示す適用ルールの表に従って優先させる設定項目を決定する。同時に設定することを禁止される２つの設定項目の分類が異なる場合、すなわち、同時に設定することを禁止される２つの設定項目がそれぞれ優先項目と非優先項目である場合、先に設定される設定項目が優先される（図６の１及び２を参照）。
【００３３】
これは、先に優先項目が設定される場合は優先項目を優先して設定すべきだからである。また、上述したように入力画面では、優先項目に分類された共通設定項目は非優先項目に分類された項目よりも画面上先に表示される。そのため、非優先項目が優先項目より先に設定される場合は、その非優先項目を設定するユーザの動機が高いと推測できるからである。
【００３４】
また、同時に設定することを禁止される２つの設定項目の分類が同じである場合、すなわち、同時に設定することを禁止される２つの設定項目がどちらも優先項目であるかどちらも非優先項目である場合、後に設定される設定項目が優先される（図６の３及び４を参照）。これは、優先度が同じ場合には、同じ設定を何度も変更した場合に最後（直近）に変更した設定値が有効となるように、「最後（直近）に変更した設定値が有効となるべき」、と考え得るからである。
【００３５】
このような適用ルールに従う設定値間の設定順に依存する制約情報の一例を図７の（ａ）に示す。ここでステープルとパンチは非優先項目であり、２イン１と両面は優先項目である。また同時設定が禁止される組み合わせは、ステープルとパンチ、ステープルと両面、ステープルと２イン１及びパンチと２イン１である。例えばステープルを設定した後にパンチを設定する場合、これらは同じ分類であるため後に設定するパンチが優先されステープルはＯｆｆに解除される。また両面を設定した後にステープルを設定する場合、これらは異なる分類であるため、ステープルの設定は拒否される。
【００３６】
また、本実施例のように制約情報格納部２３５を制約適用モジュール２３０の一部とする場合、制約情報の更新は制約適用モジュール２３０の更新として行われる。一方制約情報格納部２３５を制約適用モジュール２３０とは別に配置する場合、各機種に適用される制約情報は、情報処理装置１００Ａのユーザにより必要に応じてネットワーク上のサーバからダウンロードされる。なお、制約適用モジュール２３０を電子機器のドライバとして実現する場合、制約情報格納部２３５は、その電子機器に適用される制約情報を格納する。
【００３７】
変換部２４０は、電子機器の複数の機種のうちの任意の１の機種に対する設定情報を作成するために、共通設定格納部２２５からユーザが設定した順に従って各設定値を読み出し、上記１の機種に適用される、設定値間の設定順に依存する制約情報を参照して、読み出した各設定値を上記１の機種に設定する設定値に変換する。
【００３８】
より詳細には、共通設定格納部２２５からユーザが設定した順に従って読み出した第１の設定値と、当該設定値より先に読み出された設定値の変換後の値である上記１の機種に設定する第２の設定値とを同時に設定することが設定値間の設定順に依存する制約情報により禁止される場合、変換部２４０は当該制約情報に従って第１の設定値と第２の設定値のいずれか一方の設定値を「設定しない」に変更する。変換部２４０はまた、第１の設定値と第２の設定値のいずれか一方の設定値を変更した場合に、当該変更に関する情報を変換部２４０が備える記録部２４２に記録する。
【００３９】
図７の（ａ）に示される機種Ｘのプリンタの制約ルールを用いて変換部２４０の処理を具体的に説明する。共通設定格納部２２５に格納される共通設定情報は、１．パンチ＝ＯＮ、２．２イン１＝ＯＮ、３．両面＝ＯＮとする。すなわち、ユーザは共通設定項目のセットに対し、パンチ、２イン１、両面の各設定項目をこの順にＯＮに設定したものとする。なお、この共通設定情報に制約ルールを適用して考え得る結果は、図７の（ｂ）に示すように２通りある。本発明では１つの結果を得るために、ユーザが設定を行った設定順を利用する。最初変換部２４０は機種Ｘに設定する各設定値をＯＦＦに初期化する（図７の（ｃ）の第２列目参照）。そして変換部２４０は共通設定格納部２２５から１番目に設定されたパンチ＝ＯＮを取り出し、これをそのまま機種Ｘに設定するパンチの設定値とする（図７の（ｃ）の第３列目参照）。
【００４０】
次に変換部２４０は共通設定格納部２２５から２番目に設定された２イン１＝ＯＮを取り出し、機種Ｘのプリンタの制約ルールを参照して、これを２イン１＝ＯＦＦに変更して機種Ｘに設定する２イン１の設定値とする（図７の（ｃ）の第４列目参照）。更に変換部２４０は共通設定格納部２２５から３番目に設定された両面＝ＯＮを取り出し、機種Ｘのプリンタの制約ルールを参照して、これをそのまま機種Ｘに設定する両面の設定値とする（図７の（ｃ）の第５列目参照）。最終的にステープル＝ＯＦＦ、パンチ＝ＯＮ、２．２イン１＝ＯＦＦ、３．両面＝ＯＮという、機種Ｘに設定する１の設定値のセットが決定される（図７の（ｃ）の第６列目参照）。
【００４１】
確認画面作成部２４５は、変換部２４０から記録部２４２に記録された変更に関する情報を受け取り、当該変更についてユーザに確認させるための確認画面を作成する。図８は、確認画面の一例を示す。図８に示すように、確認画面は変更された設定項目名と変更後の設定値とを表示する。これに加えて確認画面に変更前の設定値を更に表示してもよい。確認画面を介してユーザから確認の旨を示す情報を受け取った場合、確認画面作成部２４５はその旨を変換部２４０に伝える。変換部２４０はその後、求めた上記１の機種に設定する設定値のセットを設定情報格納部２５５に格納する。
【００４２】
一方、確認画面を介してユーザから修正の旨を示す情報を受け取った場合、確認画面作成部２４５は修正のための修正画面を更に作成する。一例として修正画面は、図５に示すような共通設定情報を、その設定順序や設定値の変更・削除が可能なように表示する画面であってよい。
【００４３】
確認画面作成部２４５は、修正画面を介してユーザから修正情報を受け取ると、当該修正情報を変換部２４０に渡す。変換部２４０は修正情報により修正された後の共通設定情報に基づいて、上記説明したのと同様の方法により再度上記１の機種に設定する設定値のセットを求める。この際変換部２４０は、修正された後の共通設定情報を修正情報格納部２５０に格納する。そして次に上記１の機種と異なる機種に設定する設定値を作成する際に、共通設定格納部２２５に格納される情報の代わりとして使用する。修正後の上記１の機種に設定する設定値のセットは、確認画面作成部２４５によるユーザの再度の確認を経た後、変換部２４０により設定情報格納部２５５に格納される。
【００４４】
設定部２６５は、ユーザから上記１の機種の電子機器の使用を指示されることに応答して、設定情報格納部２５５から上記１の機種に設定する設定値のセットを読み出し、当該設定値のセットを上記１の機種の電子機器へ送信する。一例として設定情報格納部２５５は、上記１の機種に設定する設定値のセットをその設定を適用するファイルに関連付けて格納する。この場合設定部２６５は、ユーザがファイルを指定して上記１の機種の電子機器の使用を指示することに応答して、設定情報格納部２５５から上記１の機種に設定する設定値のセットを読み出し、当該設定値のセットを上記１の機種の電子機器へ送信する。
【００４５】
以上のように、本実施形態に係る情報処理装置１００Ａによれば、ユーザが最初に一度行う設定を、電子機器の各機種の設定項目を集めた共通設定項目のセットに対して行わせるので、使用する電子機器をより高機能の機種に変更する場合であっても、現在の機種にはない設定項目があるために現在の設定の設定内容を利用して目的の機種の設定内容を自動で作成できないという問題は起こらない。また、電子機器の１の機種がもつ設定値間の設定順に依存する制約情報の適用は、共通設定項目のセットに対してユーザが設定を行ったその設定順を利用してなされるので、１の機種に設定する設定値のセットを１つに決定することが可能となる。
【００４６】
また本実施形態に係る、共通設定項目のセットに対してユーザに設定を行わせるための入力画面は、設定頻度に基づいて優先項目に分類された共通設定項目を非優先項目に分類された項目よりも画面上先に表示する。そのため入力画面を介して入力された設定値の設定順序は、ユーザの設定の優先順序とみなすことができる。更に、本実施形態に係る設定値間の設定順に依存する制約情報は、同時設定が禁止される２つの設定項目に対し、２つの設定項目の分類が同じであるか異なるかによって、先に設定された項目を優先するか後に設定された項目を優先するか決定する。
【００４７】
このようにユーザの設定の優先順序とみなし得る、入力画面を介して入力された設定値の設定順序（１）と、同時設定を禁止される２つの項目に対し項目の分類の組み合わせによって優先させる項目を変化させる、設定値間の設定順に依存する制約情報（２）とから、１の機種に設定する設定値のセットが求められるため、本実施形態に係る情報処理装置１００Ａによれば、ユーザの意図に沿った、１の機種に設定する設定値のセットを決定することが可能となる。  
【００４８】
次に、図９乃至図１４のフローチャートを参照して、本実施形態に係る情報処理装置１００Ａの各部の動作を説明する。図９は、共通設定値作成モジュール２００によって共通設定項目格納部２０５、入力画面作成部２１０、対応付け部２１５、共通設定格納部２２５として機能する情報処理装置１００Ａによる処理の流れの一例を示す。
【００４９】
ステップ１００で処理は開始し、対応付け部２１５はまず、共通設定格納部２２５に格納される共通設定情報、すなわち共通設定値セットＡの空のファイルＦ１をオープンし（ステップ１００）、カウンタ２２０の値Ｎ１を１に初期化する（ステップ１０５）。次に入力画面作成部２１０は、共通設定項目格納部２０５に格納される共通設定項目のセットを参照して、共通設定項目のセットに対してユーザに設定を行わせるための入力画面を作成し、情報処理装置１００Ａの表示装置１２５に表示させる（ステップ１１０）。キーボード等の入力装置を介した入力画面に対するユーザの入力に応答して、対応付け部２１５は入力装置から設定値Ｉを受け取り（ステップ１１５）、カウンタ２２０の値Ｎ１に対応付けてファイルＦ１に保存する（ステップ１２０）。ここで設定値Ｉとは設定項目とその設定値の組である。
【００５０】
次に対応付け部２１５は、受け取った設定値Ｉが最後のデータであるかどうか、すなわちユーザから終了を示す入力があったかどうか判断する（ステップ１２５）。ユーザから終了を示す入力がない場合（ステップ１２５：ＮＯ）、対応付け部２１５は、カウンタ２２２の値Ｎ１を１増加する（ステップ１３０）。そして処理はステップ１１５へ戻り上記一連の処理を繰り返す。一方ユーザから終了を示す入力があった場合（ステップ１２５：ＹＥＳ）、対応付け部２１５は、ファイルＦ１をクローズし（ステップ１３５）、処理は終了する。
【００５１】
図１０乃至図１３は、制約適用モジュール２３０によって制約情報格納部２３５、変換部２４０、確認画面作成部２４５、修正情報格納部２５０、設定情報格納部２５５として機能する情報処理装置１００Ａによる処理の流れの一例を示す。
【００５２】
図１０のステップ２００で処理は開始し、変換部２４０は、設定情報格納部２５５に格納される機種Ｘに設定する設定値セットＢをリセットし（ステップ２００）、カウンタの値Ｎ２を１に初期化する（ステップ２０５）。次に変換部２４０は、ユーザが作成した共通設定値セットＡに対する変更箇所を示す情報Ｄの値をクリアし、また、共通設定格納部２２５から読み出した共通設定値セットＡのＮ２番目の値を変数Ｃに代入する（ステップ２１０）。そして変換部２４０は、制約情報格納部２３５に格納される機種Ｘの設定項目のセットに基づいて、変数Ｃに対応する設定項目が機種Ｘに存在するかどうか判断する（ステップ２１５）。なお、本実施例では、制約情報格納部２３５は、機種Ｘの設定項目のセットと設定値の範囲の制約を更に格納するものとする。
【００５３】
変数Ｃに対応する設定項目が存在する場合（ステップ２１５：ＹＥＳ）、変換部２４０はまず変数Ｃの設定値に対し、設定値の範囲の制約による「丸め」を行う（ステップ２２０）。設定値の範囲の制約による「丸め」の処理の詳細は図１１を参照して後述する。次に変換部２４０は変数Ｃの設定値に対し、設定値間の依存関係の制約情報による「丸め」を行う。設定値間の依存関係の制約情報による「丸め」の処理の詳細は図１２を参照して後述する。そして変換部２４０は変数Ｃを設定値セットＢに、また情報Ｄを記録部２４２に保存する（ステップ２３０）。次に変換部２４０は、現在の変数Ｃが最後のデータかどうか、すなわち共通設定値セットＡに残りのデータがないか判断する（ステップ２３５）。
【００５４】
現在の変数Ｃが最後のデータでない場合（ステップ２３５：ＮＯ）またはステップ２１５においてＮＯの場合、すなわち変数Ｃに対応する設定項目が機種Ｘに存在しない場合、変換部２４０はカウンタＮ２の値を１増加する。そして処理はステップ２１０へ戻り上記一連の処理を繰り返す。一方、ステップ２３５においてＹＥＳの場合、すなわち、現在の変数Ｃが共通設定値セットＡの最後のデータである場合、変換部２４０は記録部２４２に記録した変更箇所を示す変更情報を確認画面作成部２４５へ渡す。そして確認画面作成部２４５は変更箇所を示す変更情報を用いて確認画面を作成し、情報処理装置１００Ａの表示装置１２５に表示させる（ステップ２４５）。確認画面の作成及び表示の処理の詳細は図１３を参照して後述する。
【００５５】
次に変換部２４０は、確認画面作成部２４５からユーザによる修正に関する情報を受け取り、ユーザによる修正があったかどうか判断する（ステップ２４７）。修正があった場合（ステップ２４７：ＹＥＳ）、一例として変換部２４０は、共通設定情報、すなわち共通設定値セットＡを修正情報に基づいて修正する。そして処理はステップ２００へ戻り修正後の共通設定値セットＡを用いて再度一連の処理を行う。修正がなかった場合（ステップ２４７：ＮＯ）、処理は終了する。
【００５６】
次に図１１を参照して変換部２４０による、設定値の範囲の制約による「丸め」の詳細な処理を説明する。変換部２４０はまず、制約情報格納部２３５から機種Ｘの設定値の範囲の制約情報を読み出し、変数Ｃの設定値が、機種Ｘにおいて許される範囲内であるかどうか判断する（ステップ２５０）。許される範囲でない場合（ステップ２５０：ＮＯ）、変換部２４０は、変数Ｃの設定値が数値範囲であるかどうか判断する（ステップ２５５）。設定値が数値範囲である例として変数Ｃの設定項目が余白サイズである場合が挙げられる。
【００５７】
変数Ｃの設定値が数値範囲である場合（ステップ２５５：ＹＥＳ）、変換部２４０は、機種Ｘの数値範囲の上限または下限、すなわち変数Ｃの設定値が機種Ｘの数値範囲の上限を超えていれば機種Ｘの数値範囲の上限、また変数Ｃの設定値が機種Ｘの数値範囲を下回っていれば機種Ｘの数値範囲の下限を変数Ｃに代入する。また、変更箇所を示す情報Ｄに、変更した設定値の情報を追加する（ステップ２６０）。
【００５８】
ステップ２５５でＮＯの場合、すなわちＣの設定値が数値範囲でない場合、変換部２４０は、変数Ｃの設定値が離散的な値であるかどうか判断する（ステップ２６５）。設定値が離散的な値である例として変数Ｃの設定項目が用紙サイズである場合が挙げられる。Ｃの設定値が離散的な値である場合（ステップ２６５：ＹＥＳ）、変換部２４０は、機種Ｘで許される最も近い離散値をＣに代入する。また、変更箇所を示す情報Ｄに、変更した設定値の情報を追加する（ステップ２７０）。
【００５９】
ステップ２６５でＮＯの場合、すなわち変数Ｃの設定値が離散的な値でない場合、変換部２４０は、機種Ｘの設定値のデフォルト値を変数Ｃに代入し、また変更箇所を示す情報Ｄに、変更した設定値の情報を追加する（ステップ２７５）。そして処理は終了する。
【００６０】
次に図１２を参照して変換部２４０による、設定値間の依存関係の制約による「丸め」の詳細な処理を説明する。変換部２４０はまず、制約情報格納部２３５から機種Ｘの設定値間の依存関係の制約情報を読み出し、設定値間の依存関係の制約の表（図７の（ａ）を参照）における、変数Ｃに対応する設定項目の列のデータを変数Ｍに代入する（ステップ２８０）。次に変換部２４０は、設定値セットＢの設定済みの設定項目に対応する変数Ｍの行を見たとき、「×」の項目があるか判断する（ステップ２８５）。
【００６１】
「×」の項目がある場合（ステップ２８５：ＹＥＳ）、変換部２４０は、設定値セットＢにおいて、変数Ｃに対応する設定項目の現在の設定値を変数Ｃに代入する。また、変換部２４０は、変更箇所を示す情報Ｄに、変更した設定値の情報を追加する（ステップ２９０）。そして処理は終了する。「×」の項目がない場合（ステップ２８５：ＮＯ）、変換部２４０は更に、設定値セットＢの設定済みの設定項目に対応する変数Ｍの行を見たとき、「○」と「×」以外の指示があるかどうか判断する（ステップ２９５）。
【００６２】
「○」と「×」以外の指示がない場合（ステップ２９５：ＮＯ）、処理は終了する。「○」と「×」以外の指示がある場合（ステップ２９５：ＹＥＳ）、変換部２４０は、「○」と「×」以外の指示がある、その設定値セットＢの設定項目の設定値に対して上記指示を実行する。また、変換部２４０は、変更箇所を示す情報Ｄに、変更した設定値の情報を追加する（ステップ３００）。そして処理は終了する。
【００６３】
図１３を参照して、確認画面作成部２４５による確認画面の作成及び表示の処理を説明する。確認画面作成部２４５は変換部２４０から記録部２４２に記録されたた変更に関する情報を受け取り、変更があったかどうか判断する（ステップ３０５）。変更があった場合、確認画面作成部２４５は、当該変更についてユーザに確認させるための確認画面を作成し（図８を参照）、情報処理装置１００Ａの表示装置１２５に表示させる（ステップ３１０）。次に確認画面作成部２４５は、ユーザがＯＫボタンを押したかどうか判断する（ステップ３１５）。ＯＫボタンが押された場合（ステップ３１５：ＹＥＳ）、処理は終了する。
【００６４】
ＯＫボタンが押されない場合、すなわち修正ボタンが押された場合（ステップ３１５：ＮＯ）、確認画面作成部２４５は、更に修正のための修正画面を作成し、情報処理装置１００Ａの表示装置１２５に表示させる（ステップ３２０）。そして確認画面作成部２４５は、修正画面を介してユーザから修正情報を受け取り（ステップ３２５）、そして処理は終了する。
【００６５】
図１４は、設定モジュール２６０によって設定部２６５として機能する情報処理装置１００Ａによる処理の流れの一例を示す。ステップ４００で処理は開始し、設定部２６５は、設定情報格納部２５５からを読み出した機種Ｘに設定する設定値セットＢのファイルＦ２オープンし（ステップ４００）、カウンタの値Ｎ３の値を１に初期化する（ステップ４０５）。そして設定部２６５は、ファイルＦ２のＮ３番目の設定値を読み込み（ステップ４１０）、当該設定値をプリンタへ送信する（ステップ４１５）。そして設定部２６５は、読み出した設定値が最後のデータであるかどうか判断する（ステップ４２０）。
【００６６】
最後のデータでない場合（ステップ４２０：ＮＯ）、設定部２６５はカウンタの値Ｎ３を１増加し（ステップ４２５）、処理はステップ４１０へ戻る。最後のデータである場合（ステップ４２０：ＹＥＳ）、設定部２６５は、ファイルＦ２をクローズし（ステップ４３０）、処理は終了する。
【００６７】
次に図２の（ｂ）を参照して、本発明の他の実施形態について説明する。図２の（ｂ）は、設定情報を作成するためのプログラムを実行する情報処理装置１００Ｂの機能ブロック図である。本実施形態に係る情報処理装置１００Ｂは、複数の機種の電子機器に接続して処理を要求可能なクライアントとネットワークを介して接続されるサーバである。そのような情報処理装置１００Ｂにより実行される設定情報を作成するためのプログラムは、共通設定値作成モジュール３００及び制約適用モジュール３３０を含む。
【００６８】
共通設定値作成モジュール３００は情報処理装置１００Ｂを、共通設定項目格納部３０５、入力画面作成部３１０、対応付け部３１５、共通設定格納部３２５として機能させる。制約適用モジュール３３０は情報処理装置１００Ｂを、制約情報格納部３３５、変換部３４０、確認画面作成部３４５、修正情報格納部３５０として機能させる。
【００６９】
上記各部の動作は、図２の（ａ）及び図３乃至図１２を参照して説明したのと基本的に同じであるからここでは説明を省略する。なお、相違点について説明すると、入力画面作成部３１０のデータ送出先は情報処理装置１００Ｂの送信部（クライアントへ）と、対応付け部３１５のデータ入力元は情報処理装置１００Ｂの受信部（クライアントから）となる。すなわち、サーバはクライアントから共通設定情報の作成要求を受信することに応答して、共通設定値作成モジュール３００による処理を開始し、共通設定項目格納部３０５、入力画面作成部３１０、対応付け部３１５、共通設定格納部３２５として機能する。
【００７０】
また、サーバはクライアントから利用する電子機器の機種を指定した変換要求を受信することに応答して、制約適用モジュール３３０による処理を開始し、制約情報格納部３３５、変換部３４０、確認画面作成部３４５、修正情報格納部３５０として機能する。制約情報格納部３３５には、電子機器の各機種に適用される、設定値間の設定順に依存する制約情報が複数格納される。これらの制約情報は、一例としてサーバの管理者によってネットワーク上のサーバから適宜ダウンロードされる。
【００７１】
また、変換部３４０は、確認画面作成部３４５によるユーザの確認の受信の通知に応答して、クライアントから指定された機種の電子機器に設定する設定値のセットを確認画面作成部３４５へ渡す。確認画面作成部３４５は当該設定値のセットを、送信部を介してクライアントに送信する。この場合クライアントには図２の（ａ）に示す設定モジュール２６０がインストールされているものとする。
【００７２】
図１５は、本発明の上記２つの実施の形態において使用可能である情報処理装置のハードウェア構成の一例を示す。情報処理装置１００は、ホストコントローラ１１０により相互に接続されるＣＰＵ１０５、ＲＡＭ１１５、グラフィックコントローラ１２０、ディスプレイ１２５及び外部ディスプレイ１８０を含むＣＰＵ周辺部と、入出力コントローラ１３０によりホストコントローラ１１０に接続される通信インターフェース１４５、ハードディスクドライブ１３５、及びＣＤ−ＲＯＭドライブ１４０を含む入出力部と、入出力コントローラ１３０に接続されるスーパーＩ／Ｏコントローラ１５０及びスーパーＩ／Ｏコントローラ１５０に接続されるフレキシブルディスクドライブ１５５、フラッシュＲＯＭ１６０、並びにキーボードマウスコントローラ１６５を有するレガシー入出力部とを備える。
【００７３】
ホストコントローラ１１０は、高い転送レートでＲＡＭ１１５をアクセスするＣＰＵ１０５及びグラフィックコントローラ１２０をＲＡＭ１１５と接続する。ＣＰＵ１０５は、フラッシュＲＯＭ１６０に及びＲＡＭ１１５に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィックコントローラ１２０は、ＣＰＵ１０５等がＲＡＭ１１５内に設けたフレームバッファ上に生成する画像データを取得し、ディスプレイ１２５及び／又は外部ディスプレイ１８０上に表示させる。これに代えて、グラフィックコントローラ１２０は、ＣＰＵ１０５等が生成する画像データを格納するフレームバッファを、内部に含んでもよい。
【００７４】
入出力コントローラ１３０は、比較的高速な入出力装置である通信インターフェース１４５、ハードディスクドライブ１３５、及びＣＤ−ＲＯＭドライブ１４０をホストコントローラ１１０と接続する。通信インターフェース１３５は、ネットワークを介して外部装置と通信する。通信インターフェース１３５は、イーサーネット（登録商標）に接続するイーサーネットアダプタや、ケーブルを介さずに無線を用いてネットワークに接続する無線ＬＡＮアダプタである。
【００７５】
ハードディスクドライブ１０４０は、情報処理装置１００Ａが使用するプログラム及びデータを格納する。ＣＤ−ＲＯＭドライブ１４０は、ＣＤ−ＲＯＭからプログラム又はデータを読み取り、ＲＡＭ１１５又はハードディスクドライブ１３５に提供する。
【００７６】
更に、入出力コントローラ１３０には、スーパーＩ／Ｏコントローラ１５０やキーボードマウスコントローラ１６５等の比較的低速な入出力装置と、フラッシュＲＯＭ１６０とが接続される。フラッシュＲＯＭ１６０は、情報処理装置１００Ａの起動時にＣＰＵ１０５が実行するブートプログラムや、情報処理装置１００Ａのハードウェアに依存するプログラム等を格納する。フレキシブルディスクドライブ１５５は、フレキシブルディスクからプログラムまたはデータを読み取り、ＲＡＭ１１５を介してスーパーＩ／Ｏコントローラ１５０に提供する。スーパーＩ／Ｏコントローラ１５０は、例えばパラレルポート、シリアルポート、キーボードポート、マウスポート等を介してプリンタ、フレキシブルディスク、キーボードやマウス等の入出力装置を接続する。
【００７７】
上述した本発明に係る、設定情報を作成するためのプログラムは、フレキシブルディスク、ＣＤ−ＲＯＭ、又はＩＣカード等の記録媒体に格納されて利用者によって提供される。プログラムは、入出力コントローラ１３０及び/又はスーパーＩ／Ｏコントローラ１５０を介して、記録媒体から読み出され情報処理装置１００Ａにインストールされて実行される。
【００７８】
上記プログラムは、外部の記憶媒体に格納されてもよい。記憶媒体としては、フレキシブルディスク、ＣＤ−ＲＯＭの他に、ＤＶＤやＰＤ等の光学記録媒体、ＭＤ等の光磁気記録媒体、テープ媒体、ＩＣカード等の半導体メモリ等を用いることができる。また、専用通信ネットワークやインターネットに接続されたサーバシステムに設けたハードディスク又はＲＡＭ等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムを情報処理装置１００に提供してもよい。
【００７９】
以上、実施形態を用いて本発明の説明をしたが、本発明の技術範囲は上記実施形態に記載の範囲には限定されない。例えば上記説明では制約適用モジュール２３０は、複数の機種の電子機器に接続して処理を要求可能な情報処理装置、またはそのような情報処理装置にネットワークを介して接続されるサーバ上で動作するものとした。しかし制約適用モジュール２３０は直接電子機器上で動作させてもよい。この場合、共通設定格納部２２５から読み出された共通設定情報は、電子機器の使用を希望するユーザの指示に応答して情報処理装置から電子機器へ送信される。このように上記の実施形態に、種々の変更または改良を加えることが可能であることが当業者に明らかである。従って、そのような変更または改良を加えた形態も当然に本発明の技術的範囲に含まれる。
【図面の簡単な説明】
【００８０】
【図１】（ａ）は、プリンタに適用される設定値間の依存関係による制約ルールの表の一例を示す。（ｂ）は、制約ルールを適用した結果の表を示す。
【図２】（ａ）は、本発明の一実施形態に係る、設定情報を作成するためのプログラムを実行する情報処理装置１００Ａの機能ブロック図を示す。（ｂ）は、本発明の他の実施形態に係る、設定情報を作成するためのプログラムを実行する情報処理装置１００Ｂの機能ブロック図を示す。
【図３】共通設定項目のセットの表の一例を示す。
【図４】（ａ）スクロール形式の入力画面の一例を示す。（ｂ）タブ切り替え方式の入力画面の一例を示す。（ｃ）詳細画面の一例を示す。
【図５】共通設定情報の表の一例を示す。
【図６】適用ルールの表の一例を示す。
【図７】（ａ）は、本実施形態に係る、プリンタに適用される設定値間の依存関係による制約ルールの表の一例を示す。（ｂ）は、制約ルールを適用した結果の表を示す。（ｃ）は、制約ルールを本発明に係る方法により適用した結果の表を示す。
【図８】確認画面の一例を示す。
【図９】共通設定値作成モジュール２００による処理の流れの一例を示すフローチャートである。
【図１０】制約適用モジュール２３０による処理の流れの一例を示すフローチャートである。
【図１１】制約適用モジュール２３０による処理の流れの一例を示すフローチャートである。
【図１２】制約適用モジュール２３０による処理の流れの一例を示すフローチャートである。
【図１３】制約適用モジュール２３０による処理の流れの一例を示すフローチャートである。
【図１４】設定モジュール２６０による処理の流れの一例を示すフローチャートである。
【図１５】本発明の実施形態に係る情報処理装置１００Ａのハードウェア構成の一例を示す。
【図１】
2008165329.tif 000003
【図２】
2008165329.tif 000004
【図３】
2008165329.tif 000005
【図４】
2008165329.tif 000006
【図５】
2008165329.tif 000007
【図６】
2008165329.tif 000008
【図７】
2008165329.tif 000009
【図８】
2008165329.tif 000010
【図９】
2008165329.tif 000011
【図１０】
2008165329.tif 000012
【図１１】
2008165329.tif 000013
【図１２】
2008165329.tif 000014
【図１３】
2008165329.tif 000015
【図１４】
2008165329.tif 000016
【図１５】
2008165329.tif 000017
【手続補正書】
【提出日】平成20年2月29日(2008.2.29)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
互いに機種の異なる複数の電子機器について、各電子機器によりそれぞれ提供される処理の処理方法を指定する設定情報を作成するためのプログラムであって、前記プログラムは、情報処理装置に、
（ａ）前記電子機器の前記機種ごとの設定項目を集めた共通設定項目のセットを参照して、前記共通設定項目のセットに対して前記複数の電子機器のいずれかの使用を希望するユーザに設定を行わせるための入力画面を作成するステップと、
（ｂ）前記入力画面を介して前記ユーザから入力される複数の設定値を受け取るステップと、
（ｃ）前記受け取った各設定値を、対応する共通設定項目と前記ユーザが前記設定値を入力した順序とに対応付けて共通設定情報として共通設定格納部に格納するステップと、
（ｄ）複数の前記機種のうちの１の機種に対する設定情報を作成するため、前記共通設定格納部から前記順序に従って前記各設定値を読み出し、前記１の機種に適用される、設定値間の設定順に依存する制約情報を参照して、読み出した前記各設定値を前記１の機種に設定する設定値に変換するステップと
を実行させる、設定情報作成のためのプログラム。
【請求項２】
前記変換するステップ（ｄ）は、前記共通設定格納部から前記順序に従って読み出した第１の設定値と、前記第１の設定値より先に読み出された設定値の変換後の値である前記１の機種に設定する第２の設定値とを同時に設定することが前記設定値間の設定順に依存する制約情報により禁止される場合に、当該制約情報に従って前記第１の設定値と前記第２の設定値のいずれか一方の設定値を変更するステップを含む、請求項１に記載のプログラム。
【請求項３】
前記作成するステップ（ａ）は、前記共通設定項目を設定頻度に基づいて優先項目と非優先項目とに分類するステップと、前記優先項目に分類された共通設定項目が前記非優先項目に分類された項目よりも位置的に先に表示されるように入力画面を作成するステップとを含む、請求項２に記載のプログラム。
【請求項４】
前記作成するステップ（ａ）は、前記共通設定項目を設定頻度に基づいて優先項目と非優先項目とに分類するステップと、前記非優先項目に分類された項目を表示するためにクリックされるべきボタンと、前記優先項目に分類された共通設定項目とを表示する入力画面を作成するステップとを含む、請求項２に記載のプログラム。
【請求項５】
前記制約情報は、前記第１の設定値の共通設定項目と前記第２の設定値の共通設定項目の分類が同じである場合、前記第２の設定値を変更し、前記第１の設定値の共通設定項目と前記第２の設定値の共通設定項目の分類が異なる場合、前記第１の設定値を変更するよう指示する、請求項３に記載のプログラム。
【請求項６】
前記変換するステップ（ｄ）は、前記第１の設定値と前記第２の設定値のいずれか一方の設定値を変更した場合に、当該変更に関する情報を記録するステップを更に含み、
前記変更について前記ユーザに確認させるための確認画面を作成するステップ（ｅ）を前記情報処理装置に更に実行させる、請求項２に記載のプログラム。
【請求項７】
前記確認画面を介して前記ユーザから入力される修正値を受け取るステップ（ｆ）を前記情報処理装置に更に実行させ、
前記変換するステップ（ｄ）は、前記１の機種と異なる機種に設定する設定値を作成するために前記修正値を参照するステップを含む、請求項６に記載のプログラム。
【請求項８】
前記情報処理装置は、前記互いに機種の異なる複数の電子機器に接続して処理を要求可能な情報処理装置である、請求項１に記載のプログラム。
【請求項９】
前記情報処理装置に前記変換するステップ（ｄ）を実行させるプログラムは、前記情報処理装置上で動作する前記１の機種の電子機器のドライバである、請求項８に記載のプログラム。
【請求項１０】
前記１の機種において適用される、前記設定値間の設定順に依存する制約情報は、前記ドライバの更新時に一緒に更新される、請求項９に記載のプログラム。
【請求項１１】
前記情報処理装置は、前記互いに機種の異なる複数の電子機器に接続して処理を要求可能なクライアントとネットワークを介して接続されるサーバであり、
前記サーバは、前記クライアントから共通設定情報の作成要求を受信することに応答して、ステップ（ａ）乃至（ｃ）を実行し、前記クライアントから利用する電子機器の機種を指定した変換要求を受信することに応答して、指定された機種を前記１の機種としてステップ（ｄ）を実行する、請求項１に記載のプログラム。
【請求項１２】
前記１の機種が採用する、前記設定値間の設定順に依存する制約情報は、前記情報処理装置を接続するネットワークからダウンロードされる、請求項１１に記載のプログラム。
【請求項１３】
互いに機種の異なる複数の電子機器について、情報処理装置において実行される、各電子機器によりそれぞれ提供される処理の処理方法を指定する設定情報を作成するための方法であって、前記情報処理装置が、
前記電子機器の前記機種ごとの設定項目を集めた共通設定項目のセットを参照して、前記共通設定項目のセットに対して前記複数の電子機器のいずれかの使用を希望するユーザに設定を行わせるための入力画面を作成するステップと、
前記入力画面を介して前記ユーザから入力される複数の設定値を受けとるステップと
前記受け取った各設定値を、対応する共通設定項目と前記ユーザが前記設定値を入力した順序とに対応付けて共通設定格納部に格納するステップと、
複数の前記機種のうち１の機種に対する設定情報を作成するために、前記共通設定格納部から前記順序に従って各設定値を読み出し、前記１の機種に適用される、設定値間の設定順に依存する制約情報を参照して、読み出した前記各設定値を前記１の機種に設定する設定値に変換するステップと
を含む、設定情報作成のための方法。
【請求項１４】
互いに機種の異なる複数の電子機器について、各電子機器によりそれぞれ提供される処理の処理方法を指定する設定情報を作成するための情報処理装置であって、
前記電子機器の前記機種ごとの設定項目の集合である共通設定項目のセットを記憶する第１の記憶装置と、
前記第１の記憶装置から読み出した前記共通設定項目のセットを参照して、前記共通設定項目のセットに対して前記情報処理装置のユーザに設定を行わせるための入力画面を作成する作成手段と、
前記入力画面を表示する表示装置と、
前記入力画面を介して前記ユーザから入力された複数の設定値を受けとる入力装置と
前記受け取った各設定値を、対応する共通設定項目と前記ユーザが前記設定値を入力した順序とに対応付けて第２の記憶装置に格納する対応付け手段と、
複数の前記機種のうちの１の機種に適用される、設定値間の設定順に依存する制約情報を少なくとも１つ記憶する第３の記憶装置と、  
前記第２の記憶装置から前記順序に従って前記各設定値を読み出し、前記第３の記憶装置から読み出した１の前記制約情報を参照して、前記各設定値を、当該１の制約情報を適用する機種に設定する設定値に変換する変換手段と
を含む情報処理装置。
【請求項１５】
互いに機種の異なる複数の電子機器に接続して処理を要求可能なクライアントとネットワークを介して接続されるサーバであって、
前記電子機器の前記機種ごとの設定項目の集合である共通設定項目のセットを記憶する第１の記憶装置と、前記クライアントから共通設定情報の作成要求を受信することに応答して、前記第１の記憶装置から読み出した前記共通設定項目のセットを参照して、前記共通設定項目のセットに対して前記クライアントのユーザに設定を行わせるための入力画面を作成する作成手段と、
前記入力画面の情報を前記クライアントに送信する送信手段と、
前記入力画面の情報の表示を介して前記クライアントのユーザから入力された設定値のセットとその入力順とを前記クライアントから受信する受信手段と、
前記受信した各設定値を、対応する共通設定項目と前記ユーザが前記設定値を入力した順序とに対応付けて第２の記憶装置に格納する対応付け手段と、
前記各電子機器が適用する、設定値間の設定順に依存する制約情報を記憶する第３の記憶装置と、  
前記クライアントから利用する電子機器の機種を指定した変換要求を受信することに応答して、前記第２の記憶装置から前記順序に従って前記各設定値を読み出し、前記第３の記憶装置から読み出した指定された前記電子機器の前記制約情報を参照して、前記各設定値を指定された前記電子機器に設定する設定値に変換する変換手段と、  
前記変換後の設定値のセットを前記クライアントに送信する送信手段と
を含むサーバ。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は処理を提供する電子機器について、その処理方法を指定する設定情報を作成する方法に関し、特に一度行った設定の設定内容に基づいて、異なる機種に対する設定情報を自動で作成するための技術に関する。
【背景技術】
【０００２】
同じ種類の電子機器であっても、機種が異なるとその設定内容は異なる。そのため、電子機器の買い替えにより機種を変更する場合や、学校や職場、自宅といった作業場所によって使用する電子機器の機種が異なる場合、電子機器の設定をやり直す必要がある。再設定を行う面倒を避けるために、既に設定を行った電子機器の設定内容を利用してコンピュータにより自動で異なる機種に対する設定内容を作成することが考えられる。しかしこれには大きな問題がある。  
【０００３】
一般に、電子機器の設定には２種類の明示的及び暗黙の設定値ルールが存在する。１つは、設定値の範囲に関する制約ルールである。プリンタを例にすると、「印刷時のマージンは１０ｍｍ〜３０ｍｍ」といった制約である。また１つは、設定値間の依存関係による制約ルールである。これは同じくプリンタを例にすると、「ステープルとパンチ穴は同時に設定できず、ステープルが設定されるとパンチ穴は解除される」といった制約である。
【０００４】
一度行った設定の設定内容を異なる機種にそのまま利用できない場合、１つ目の設定値の範囲に関する制約ルールについては、単純な方法により問題は解決される。すなわち、設定値の範囲が異なる機種に対しては、値を設定可能な範囲内に「丸める」という方法である。例えばプリンタの用紙サイズについては同じサイズを設定できなければ設定可能なサイズで最も近いサイズを選択すればよい。
【０００５】
しかしながら、２つ目の設定値間の依存関係による制約ルールについては、そのように単純に問題を解決することはできない。これを、図１を参照して説明する。図１の（ａ）は、機種Ｘのプリンタに適用される設定値間の依存関係による制約ルールの一例である。表に示すようにこの制約ルールでは、パンチをＯＮに設定した後では２イン１をＯＮに設定することはできない。また２イン１をＯＮに設定した後ではパンチをＯＮに設定できない。このように設定値間の依存関係による制約ルールは設定の順序に依存する。
【０００６】
具体的に、使用するプリンタを、図１の（ａ）に示す制約ルールを適用する機種Ｘのプリンタに変更する場合を考える。ここでは理解容易なように設定項目を４つとし、変更前のプリンタの設定内容を「ステープル＝ＯＦＦ、パンチ＝ＯＮ、２イン１＝ＯＮ、両面＝ＯＮ」とする。この機種変更前の設定内容に図１の（ａ）に示す制約ルールを適用する。すると図１の（ｂ）に示すように、設定順序によって２通りの考え得る結果が得られる。考え得る結果１では、パンチの後に２イン１の設定を行っている。考える得る結果２では、２イン１の後にパンチの設定を行っている。なお、この例では２通りの考え得る結果が得られたが、設定項目数が増えると考え得る結果の数も増えることに留意されたい。
【０００７】
このように、変更前の電子機器の設定内容を利用してコンピュータにより自動で新しい機種に対する設定内容を決定しようとしても、設定値間の依存関係による制約ルールにより、複数の候補となる設定内容が求められ、新しい機種に設定すべき１つの設定内容を決定することはできない。また、使用する電子機器をより高機能の機種に変更する場合、高機能の機種では以前の機種では設定できなかった内容を設定できるため、変更前の機種の設定内容から新しい機種に対する設定内容を作成することはできない。
【０００８】
これに関して、特許文献１は、ネットワークに接続された複数の対象機器を一括設定する際に使用する、一括設定情報の作成を支援する設定情報作成支援装置を開示する。この設定情報作成支援装置は、ネットワークに接続されている機器から、当該機器に設定されている設定情報を取得する。ついで、取得した設定情報を表示画面上に表示させ、設定情報に対する情報の追加、変更、または削除等の編集操作をユーザから受け付ける。そして、ユーザの指示に応じて、機器から取得された設定情報または当該設定情報が編集された情報を機器別設定情報として受け付ける（例えば、特許文献１を参照）。  
【特許文献１】特開２００５−１９７９３５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかし上記の技術においては、他の機器に設定されている設定情報を利用して対象機器の設定情報を作成するにあたり情報の追加、変更、または削除が必要な場合には、ユーザが直接編集操作を行うこととしている。そのため上記技術によれば一から設定をやり直す必要はなくなるが、依然としてユーザの負担は大きい。
【００１０】
そこで本発明は、一度行った設定の設定内容に基づいて、異なる機種に対する設定情報を自動で作成するための装置、方法およびプログラムを提供することを目的とする。また本発明は、一度行った設定の設定内容に基づいて、異なる機種に設定すべき１の設定情報を自動で求めることを目的とする。更に本発明は、一度行った設定の設定内容に基づいて、異なる機種に対する設定情報であって、かつユーザの意図に沿う設定情報を自動で作成することを目的とする。
【課題を解決するための手段】
【００１１】
上記の目的を達成する本発明は、次のような、互いに機種の異なる複数の電子機器について、各電子機器によりそれぞれ提供される処理の処理方法を指定する設定情報を作成するためのプログラムによって実現される。このプログラムは、情報処理装置に、
（ａ）電子機器の機種ごとの設定項目を集めた共通設定項目のセットを参照して、共通設定項目のセットに対して複数の電子機器のいずれかの使用を希望するユーザに設定を行わせるための入力画面を作成するステップと、（ｂ）入力画面を介してユーザから入力される複数の設定値を受け取るステップと、（ｃ）受け取った各設定値を、対応する共通設定項目とユーザが設定値を入力した順序とに対応付けて共通設定情報として共通設定格納部に格納するステップと、（ｄ）複数の機種のうち１の機種に対する設定情報を作成するために、共通設定格納部から上記順序に従って各設定値を読み出し、上記１の機種に適用される、設定値間の設定順に依存する制約情報を参照して、読み出した各設定値を上記１の機種設定する設定値に変換するステップとを実行させる。
【００１２】
ここで、処理を提供する電子機器は、情報処理装置を接続して処理を要求可能なものであればよく、例えばプリンタ、コピー機、ファクシミリ、スキャナーである。また、変換するステップ（ｄ）は、共通設定格納部から上記順序に従って読み出した第１の設定値と、第１の設定値より先に読み出された設定値の変換後の値である上記１の機種に設定する第２の設定値とを同時に設定することが設定値間の設定順に依存する制約情報により禁止される場合に、当該制約情報に従って第１の設定値と第２の設定値のいずれか一方の設定値を変更するステップを含む。
【００１３】
好ましくは、作成するステップ（ａ）は、共通設定項目を設定頻度に基づいて優先項目と非優先項目とに分類するステップと、優先項目に分類された共通設定項目が非優先項目に分類された項目よりも位置的に先に表示されるように入力画面を作成するステップとを含む。なお、設定頻度に代えて又はこれに加えて、処理結果に対する影響度及び設定の詳細度に基づいて、共通設定項目を優先項目と非優先項目とに分類してもよい。
【００１４】
更に好ましくは、上記制約情報は、第１の設定値の共通設定項目と第２の設定値の共通設定項目の分類が同じである場合、第２の設定値を変更し、第１の設定値の共通設定項目及び第２の設定値の共通設定項目の分類が異なる場合、第１の設定値を変更するよう指示する。
【００１５】
好ましくは、変換するステップ（ｄ）は、第１の設定値と第２の設定値のいずれか一方の設定値を変更した場合に、当該変更に関する情報を記録するステップを更に含む。そして、上記プログラムは上記情報処理装置に、上記変更についてユーザに確認させるための確認画面を作成するステップ（ｅ）を更に実行させる。
【００１６】
更に好ましくは、上記プログラムは上記情報処理装置に、確認画面を介してユーザから入力される修正値を受け取るステップを更に実行させる。そして、変換するステップ（ｄ）は、上記１の機種と異なる機種に設定する設定値を作成するために修正値を参照するステップを含む。
【００１７】
好ましくは、上記情報処理装置は、互いに機種の異なる複数の電子機器に接続して処理を要求可能な情報処理装置である。更に好ましくは、上記情報処理装置に変換するステップ（ｄ）を実行させるプログラムは、情報処理装置上で動作する上記１の機種の電子機器のドライバである。更に好ましくは、上記１の機種において適用される、設定値間の設定順に依存する制約情報は、ドライバの更新時に一緒に更新される。
【００１８】
好ましくは、上記情報処理装置は、互いに機種の異なる複数の電子機器に接続して処理を要求可能なクライアントとネットワークを介して接続されるサーバである。サーバは、クライアントから共通設定情報の作成要求を受信することに応答して、ステップ（ａ）乃至（ｃ）を実行する。またサーバは、クライアントから利用する電子機器の機種を指定した変換要求を受信することに応答して、指定された機種を前記１の機種としてステップ（ｄ）を実行する。更に好ましくは、上記１の機種が採用する、設定値間の設定順に依存する制約情報は、上記サーバを接続するネットワークからダウンロードされる。
【００１９】
以上、設定情報を作成するためのプログラムとして本発明を説明したが、本発明は、設定情報を作成するための方法及び情報処理装置として把握することもできる。
【発明の効果】
【００２０】
本発明によれば、一度行った設定の設定内容に基づいて、異なる機種に対する設定情報を自動で作成することが可能となる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明を実施するための最良の形態を図面に基づいて詳細に説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。なお、実施の形態の説明の全体を通じて同じ要素には同じ番号を付している。
【００２２】
図２の（ａ）は、本発明の１実施形態に係る、設定情報を作成するためのプログラムを実行する情報処理装置１００Ａの機能ブロック図である。本実施例の情報処理装置１００Ａは、互いに機種の異なる複数の電子機器に接続して処理を要求可能な情報処理装置である。そのような情報処理装置１００Ａにより実行される設定情報を作成するためのプログラムは、共通設定値作成モジュール２００、制約適用モジュール２３０、及び設定モジュール２６０を含む。なお、制約適用モジュール２３０と設定モジュール２６０は共通設定値作成モジュール２００とは異なるプログラムとすることもできる。一例としてこれら２つのモジュールは、上記互いに機種の異なる複数の電子機器のうち情報処理装置１００Ａのユーザが使用を希望する機種の電子機器のドライバ２７０を構成するモジュールとして実現することも可能である。  
【００２３】
共通設定値作成モジュール２００は情報処理装置１００Ａを、共通設定項目格納部２０５、入力画面作成部２１０、対応付け部２１５、共通設定格納部２２５として機能させる。制約適用モジュール２３０は情報処理装置１００Ａを、制約情報格納部２３５、変換部２４０、確認画面作成部２４５、修正情報格納部２５０、設定情報格納部２５５として機能させる。設定モジュール２６０は、情報処理装置１００Ａを、設定部２６５として機能させる。
【００２４】
第１の記憶装置としての共通設定項目格納部２０５は、電子機器の機種ごとの設定項目を集めた共通設定項目のセットを格納する。電子機器の機種ごとの設定項目は、説明書やカタログスペック、また電子機器の規格を利用して入手可能である。例えばプリンタでは、ＰｏｓｔＳｃｒｉｐｔ  Ｐｒｉｎｔｅｒ  Ｄｅｓｃｒｉｐｔｉｏｎ（ＰＰＤ）規格によりＰｏｓｔＳｃｒｉｐｔプリンタ向けに一般的な設定項目が定義されている。図３は、共通設定項目格納部２０５に格納される、プリンタの共通設定項目のセットの一例を示す。図３に示すように共通設定項目のセットは、設定項目と当該設定項目に対して設定可能な設定値との組のリストである。
【００２５】
入力画面作成部２１０は、共通設定項目格納部２０５から読み出した共通設定項目のセットを参照して、共通設定項目のセットに対して情報処理装置１００Ａのユーザに設定を行わせるための入力画面を作成する。本実施例では、入力画面作成部２１０はまず、共通設定項目を設定頻度に基づいて優先項目と非優先項目とに分類する。すなわち、設定頻度の高い共通設定項目は優先項目に分類し、設定頻度の低い共通設定項目は非優先項目に分類する。
【００２６】
図３に示すプリンタの共通設定項目のセットを例に分類方法を具体的に説明する。例えば、用紙サイズ、拡大・縮小、集約、両面といった共通設定項目は一般に多くのユーザが設定を行う項目である。従ってこれらの項目は設定頻度が高い設定項目といえ、優先項目に分類される。これに対し、ステープル、パンチ、画質、エコノミー、カラー／モノクロ、左右反転、白黒反転といった共通設定項目は必ずしもユーザが設定を行う項目とはいえない。従ってこれらの項目は設定頻度が低い設定項目といえ、非優先項目に分類される。なお、設定頻度に代えてまたはこれに加えて、処理結果に対する影響度や、設定の詳細度に基づいて共通設定項目を優先項目と非優先項目とに分類してもよい。
【００２７】
そして入力画面作成部２１０は、優先項目に分類された共通設定項目が非優先項目に分類された項目よりも画面上先に表示されるように入力画面を作成する。そのような入力画面の具体例を図４に示す。図４の（ａ）に示す入力画面は、全ての共通設定項目を一画面にスクロール式で表示するものである。この場合、優先項目に分類された共通設定項目は画面の上部４００に表示し、非優先項目に分類された共通設定項目は画面の下部４１０に表示する。図では縦のスクロールバー４０５が示されているが、横のスクロールバーでもよく、その場合優先項目に分類された共通設定項目は画面の左側に表示する。
【００２８】
図４の（ｂ）に示す入力画面は、共通設定項目のセットをタブにより切り替えて表示するものである。この場合優先項目に分類された共通設定項目は、デフォルトでトップに表示されるタブ４２０に表示し、非優先項目に分類された共通設定項目は、デフォルトでトップに表示されるタブ４２０以外のタブ４３０に表示する。
【００２９】
また入力画面は、優先項目に分類された共通設定項目はメインの画面に表示し、非優先項目に分類された共通設定項目はメインの画面とは別の画面に表示するものであってもよい。例えば図４の（ｃ）に示すように、非優先項目に分類された共通設定項目は、詳細設定ボタン４１５又は４４０をクリックすると開く画面に表示する。更に入力画面は上記説明した方法を適宜組み合わせるものであってもよい。例えば、タブ切り替えにより優先項目をトップのタブに表示し、更にトップのタブの中であっても優先度のより高い優先項目を上部に表示し、そうでないものは下部に表示してもよい。
【００３０】
対応付け部２１５は、ユーザが入力画面を介して入力した各設定値を、対応する共通設定項目とユーザがその設定値を入力した順序とに対応付けて共通設定情報として共通設定格納部２２５へ格納する。一例として対応付け部２１５はカウンタ２２０を備える。カウンタ２２０は最初に値１に初期化された後、対応付け部２１５が設定値を受け取るたびに１増加される。カウンタ２２０の値は設定値が入力された順序として利用される。図５は、第２の記憶装置としての共通設定格納部２２５に格納される、共通設定情報の一例を示す。共通設定情報は、ユーザが設定値を設定した設定項目のみを含む。また、ユーザが一度入力した設定値を変更した場合は設定値のみを変更し、対応付けられた順序は最初に設定値が入力されたときの値のままとする。
【００３１】
第３の記憶装置としての制約情報格納部２３５は、複数の機種のうちの１の機種に適用される、設定値間の設定順に依存する制約情報を少なくとも１つ記憶する。ここである機種の電子機器に適用される、設定値間の設定順に依存する制約情報とは、電子機器の設定項目に対し設定可能な値を制限する制約情報であって、他の設定項目に対して設定される設定値との関係から課される制約情報である。通常、電子機器はその機種ごとに異なる設定値間の設定順に依存する制約情報をもつ。図１の（ａ）に示した表は、プリンタに適用される設定値間の設定順に依存する制約情報の一例である。なお、制約情報格納部２３５は更に上記１の機種の設定項目のセット及び設定値の範囲に関する制約情報を含んでもよい。
【００３２】
本実施例に係る設定値間の設定順に依存する制約情報は、ある２つの設定項目を同時に設定することが禁止される場合に、図６に示す適用ルールの表に従って優先させる設定項目を決定する。同時に設定することを禁止される２つの設定項目の分類が異なる場合、すなわち、同時に設定することを禁止される２つの設定項目がそれぞれ優先項目と非優先項目である場合、先に設定される設定項目が優先される（図６の１及び２を参照）。
【００３３】
これは、先に優先項目が設定される場合は優先項目を優先して設定すべきだからである。また、上述したように入力画面では、優先項目に分類された共通設定項目は非優先項目に分類された項目よりも画面上先に表示される。そのため、非優先項目が優先項目より先に設定される場合は、その非優先項目を設定するユーザの動機が高いと推測できるからである。
【００３４】
また、同時に設定することを禁止される２つの設定項目の分類が同じである場合、すなわち、同時に設定することを禁止される２つの設定項目がどちらも優先項目であるかどちらも非優先項目である場合、後に設定される設定項目が優先される（図６の３及び４を参照）。これは、優先度が同じ場合には
、同じ設定を何度も変更した場合に最後（直近）に変更した設定値が有効となるように、「最後（直近）に変更した設定値が有効となるべき」、と考え得るからである。
【００３５】
このような適用ルールに従う設定値間の設定順に依存する制約情報の一例を図７の（ａ）に示す。ここでステープルとパンチは非優先項目であり、２イン１と両面は優先項目である。また同時設定が禁止される組み合わせは、ステープルとパンチ、ステープルと両面、ステープルと２イン１及びパンチと２イン１である。例えばステープルを設定した後にパンチを設定する場合、これらは同じ分類であるため後に設定するパンチが優先されステープルはＯｆｆに解除される。また両面を設定した後にステープルを設定する場合、これらは異なる分類であるため、ステープルの設定は拒否される。
【００３６】
また、本実施例のように制約情報格納部２３５を制約適用モジュール２３０の一部とする場合、制約情報の更新は制約適用モジュール２３０の更新として行われる。一方制約情報格納部２３５を制約適用モジュール２３０とは別に配置する場合、各機種に適用される制約情報は、情報処理装置１００Ａのユーザにより必要に応じてネットワーク上のサーバからダウンロードされる。なお、制約適用モジュール２３０を電子機器のドライバとして実現する場合、制約情報格納部２３５は、その電子機器に適用される制約情報を格納する。
【００３７】
変換部２４０は、複数の機種のうちの任意の１の機種に対する設定情報を作成するために、共通設定格納部２２５からユーザが設定した順に従って各設定値を読み出し、上記１の機種に適用される、設定値間の設定順に依存する制約情報を参照して、読み出した各設定値を上記１の機種に設定する設定値に変換する。
【００３８】
より詳細には、共通設定格納部２２５からユーザが設定した順に従って読み出した第１の設定値と、当該設定値より先に読み出された設定値の変換後の値である上記１の機種に設定する第２の設定値とを同時に設定することが設定値間の設定順に依存する制約情報により禁止される場合、変換部２４０は当該制約情報に従って第１の設定値と第２の設定値のいずれか一方の設定値を「設定しない」に変更する。変換部２４０はまた、第１の設定値と第２の設定値のいずれか一方の設定値を変更した場合に、当該変更に関する情報を変換部２４０が備える記録部２４２に記録する。  
【００３９】
図７の（ａ）に示される機種Ｘのプリンタの制約ルールを用いて変換部２４０の処理を具体的に説明する。共通設定格納部２２５に格納される共通設定情報は、１．パンチ＝ＯＮ、２．２イン１＝ＯＮ、３．両面＝ＯＮとする。すなわち、ユーザは共通設定項目のセットに対し、パンチ、２イン１、両面の各設定項目をこの順にＯＮに設定したものとする。なお、この共通設定情報に制約ルールを適用して考え得る結果は、図７の（ｂ）に示すように２通りある。本発明では１つの結果を得るために、ユーザが設定を行った設定順を利用する。最初変換部２４０は機種Ｘに設定する各設定値をＯＦＦに初期化する（図７の（ｃ）の第２列目参照）。そして変換部２４０は共通設定格納部２２５から１番目に設定されたパンチ＝ＯＮを取り出し、これをそのまま機種Ｘに設定するパンチの設定値とする（図７の（ｃ）の第３列目参照）。
【００４０】
次に変換部２４０は共通設定格納部２２５から２番目に設定された２イン１＝ＯＮを取り出し、機種Ｘのプリンタの制約ルールを参照して、これを２イン１＝ＯＦＦに変更して機種Ｘに設定する２イン１の設定値とする（図７の（ｃ）の第４列目参照）。更に変換部２４０は共通設定格納部２２５から３番目に設定された両面＝ＯＮを取り出し、機種Ｘのプリンタの制約ルールを参照して、これをそのまま機種Ｘに設定する両面の設定値とする（図７の（ｃ）の第５列目参照）。最終的にステープル＝ＯＦＦ、パンチ＝ＯＮ、２．２イン１＝ＯＦＦ、３．両面＝ＯＮという、機種Ｘに設定する１の設定値のセットが決定される（図７の（ｃ）の第６列目参照）。
【００４１】
確認画面作成部２４５は、変換部２４０から記録部２４２に記録された変更に関する情報を受け取り、当該変更についてユーザに確認させるための確認画面を作成する。図８は、確認画面の一例を示す。図８に示すように、確認画面は変更された設定項目名と変更後の設定値とを表示する。これに加えて確認画面に変更前の設定値を更に表示してもよい。確認画面を介してユーザから確認の旨を示す情報を受け取った場合、確認画面作成部２４５はその旨を変換部２４０に伝える。変換部２４０はその後、求めた上記１の機種に設定する設定値のセットを設定情報格納部２５５に格納する。
【００４２】
一方、確認画面を介してユーザから修正の旨を示す情報を受け取った場合、確認画面作成部２４５は修正のための修正画面を更に作成する。一例として修正画面は、図５に示すような共通設定情報を、その設定順序や設定値の変更・削除が可能なように表示する画面であってよい。
【００４３】
確認画面作成部２４５は、修正画面を介してユーザから修正情報を受け取ると、当該修正情報を変換部２４０に渡す。変換部２４０は修正情報により修正された後の共通設定情報に基づいて、上記説明したのと同様の方法により再度上記１の機種に設定する設定値のセットを求める。この際変換部２４０は、修正された後の共通設定情報を修正情報格納部２５０に格納する。そして次に上記１の機種と異なる機種に設定する設定値を作成する際に、共通設定格納部２２５に格納される情報の代わりとして使用する。修正後の上記１の機種に設定する設定値のセットは、確認画面作成部２４５によるユーザの再度の確認を経た後、変換部２４０により設定情報格納部２５５に格納される。
【００４４】
設定部２６５は、ユーザから上記１の機種の電子機器の使用を指示されることに応答して、設定情報格納部２５５から上記１の機種に設定する設定値のセットを読み出し、当該設定値のセットを上記１の機種の電子機器へ送信する。一例として設定情報格納部２５５は、上記１の機種に設定する設定値のセットをその設定を適用するファイルに関連付けて格納する。この場合設定部２６５は、ユーザがファイルを指定して上記１の機種の電子機器の使用を指示することに応答して、設定情報格納部２５５から上記１の機種に設定する設定値のセットを読み出し、当該設定値のセットを上記１の機種の電子機器へ送信する。
【００４５】
以上のように、本実施形態に係る情報処理装置１００Ａによれば、ユーザが最初に一度行う設定を、電子機器の機種ごとの設定項目を集めた共通設定項目のセットに対して行わせるので、使用する電子機器をより高機能の機種に変更する場合であっても、現在の機種にはない設定項目があるために現在の設定の設定内容を利用して目的の機種の設定内容を自動で作成できないという問題は起こらない。また、電子機器の１の機種がもつ設定値間の設定順に依存する制約情報の適用は、共通設定項目のセットに対してユーザが設定を行ったその設定順を利用してなされるので、１の機種に設定する設定値のセットを１つに決定することが可能となる。  
【００４６】
また本実施形態に係る、共通設定項目のセットに対してユーザに設定を行わせるための入力画面は、設定頻度に基づいて優先項目に分類された共通設定項目を非優先項目に分類された項目よりも画面上先に表示する。そのため入力画面を介して入力された設定値の設定順序は、ユーザの設定の優先順序とみなすことができる。更に、本実施形態に係る設定値間の設定順に依存する制約情報は、同時設定が禁止される２つの設定項目に対し、２つの設定項目の分類が同じであるか異なるかによって、先に設定された項目を優先するか後に設定された項目を優先するか決定する。
【００４７】
このようにユーザの設定の優先順序とみなし得る、入力画面を介して入力された設定値の設定順序（１）と、同時設定を禁止される２つの項目に対し項目の分類の組み合わせによって優先させる項目を変化させる、設定値間の設定順に依存する制約情報（２）とから、１の機種に設定する設定値のセットが求められるため、本実施形態に係る情報処理装置１００Ａによれば、ユーザの意図に沿った、１の機種に設定する設定値のセットを決定することが可能となる。  
【００４８】
次に、図９乃至図１４のフローチャートを参照して、本実施形態に係る情報処理装置１００Ａの各部の動作を説明する。図９は、共通設定値作成モジュール２００によって共通設定項目格納部２０５、入力画面作成部２１０、対応付け部２１５、共通設定格納部２２５として機能する情報処理装置１００Ａによる処理の流れの一例を示す。
【００４９】
ステップ１００で処理は開始し、対応付け部２１５はまず、共通設定格納部２２５に格納される共通設定情報、すなわち共通設定値セットＡの空のファイルＦ１をオープンし（ステップ１００）、カウンタ２２０の値Ｎ１を１に初期化する（ステップ１０５）。次に入力画面作成部２１０は、共通設定項目格納部２０５に格納される共通設定項目のセットを参照して、共通設定項目のセットに対してユーザに設定を行わせるための入力画面を作成し、情報処理装置１００Ａの表示装置１２５に表示させる（ステップ１１０）。キーボード等の入力装置を介した入力画面に対するユーザの入力に応答して、対応付け部２１５は入力装置から設定値Ｉを受け取り（ステップ１１５）、カウンタ２２０の値Ｎ１に対応付けてファイルＦ１に保存する（ステップ１２０）。ここで設定値Ｉとは設定項目とその設定値の組である。
【００５０】
次に対応付け部２１５は、受け取った設定値Ｉが最後のデータであるかどうか、すなわちユーザから終了を示す入力があったかどうか判断する（ステップ１２５）。ユーザから終了を示す入力がない場合（ステップ１２５：ＮＯ）、対応付け部２１５は、カウンタ２２２の値Ｎ１を１増加する（ステップ１３０）。そして処理はステップ１１５へ戻り上記一連の処理を繰り返す。一方ユーザから終了を示す入力があった場合（ステップ１２５：ＹＥＳ）、対応付け部２１５は、ファイルＦ１をクローズし（ステップ１３５）、処理は終了する。
【００５１】
図１０乃至図１３は、制約適用モジュール２３０によって制約情報格納部２３５、変換部２４０、確認画面作成部２４５、修正情報格納部２５０、設定情報格納部２５５として機能する情報処理装置１００Ａによる処理の流れの一例を示す。
【００５２】
図１０のステップ２００で処理は開始し、変換部２４０は、設定情報格納部２５５に格納される機種Ｘに設定する設定値セットＢをリセットし（ステップ２００）、カウンタの値Ｎ２を１に初期化する（ステップ２０５）。次に変換部２４０は、ユーザが作成した共通設定値セットＡに対する変更箇所を示す情報Ｄの値をクリアし、また、共通設定格納部２２５から読み出した共通設定値セットＡのＮ２番目の値を変数Ｃに代入する（ステップ２１０）。そして変換部２４０は、制約情報格納部２３５に格納される機種Ｘの設定項目のセットに基づいて、変数Ｃに対応する設定項目が機種Ｘに存在するかどうか判断する（ステップ２１５）。なお、本実施例では、制約情報格納部２３５は、機種Ｘの設定項目のセットと設定値の範囲の制約を更に格納するものとする。
【００５３】
変数Ｃに対応する設定項目が存在する場合（ステップ２１５：ＹＥＳ）、変換部２４０はまず変数Ｃの設定値に対し、設定値の範囲の制約による「丸め」を行う（ステップ２２０）。設定値の範囲の制約による「丸め」の処理の詳細は図１１を参照して後述する。次に変換部２４０は変数Ｃの設定値に対し、設定値間の依存関係の制約情報による「丸め」を行う。設定値間の依存関係の制約情報による「丸め」の処理の詳細は図１２を参照して後述する。そして変換部２４０は変数Ｃを設定値セットＢに、また情報Ｄを記録部２４２に保存する（ステップ２３０）。次に変換部２４０は、現在の変数Ｃが最後のデータかどうか、すなわち共通設定値セットＡに残りのデータがないか判断する（ステップ２３５）。
【００５４】
現在の変数Ｃが最後のデータでない場合（ステップ２３５：ＮＯ）またはステップ２１５においてＮＯの場合、すなわち変数Ｃに対応する設定項目が機種Ｘに存在しない場合、変換部２４０はカウンタＮ２の値を１増加する。そして処理はステップ２１０へ戻り上記一連の処理を繰り返す。一方、ステップ２３５においてＹＥＳの場合、すなわち、現在の変数Ｃが共通設定値セットＡの最後のデータである場合、変換部２４０は記録部２４２に記録した変更箇所を示す変更情報を確認画面作成部２４５へ渡す。そして確認画面作成部２４５は変更箇所を示す変更情報を用いて確認画面を作成し、情報処理装置１００Ａの表示装置１２５に表示させる（ステップ２４５）。確認画面の作成及び表示の処理の詳細は図１３を参照して後述する。
【００５５】
次に変換部２４０は、確認画面作成部２４５からユーザによる修正に関する情報を受け取り、ユーザによる修正があったかどうか判断する（ステップ２４７）。修正があった場合（ステップ２４７：ＹＥＳ）、一例として変換部２４０は、共通設定情報、すなわち共通設定値セットＡを修正情報に基づいて修正する。そして処理はステップ２００へ戻り修正後の共通設定値セットＡを用いて再度一連の処理を行う。修正がなかった場合（ステップ２４７：ＮＯ）、処理は終了する。
【００５６】
次に図１１を参照して変換部２４０による、設定値の範囲の制約による「丸め」の詳細な処理を説明する。変換部２４０はまず、制約情報格納部２３５から機種Ｘの設定値の範囲の制約情報を読み出し、変数Ｃの設定値が、機種Ｘにおいて許される範囲内であるかどうか判断する（ステップ２５０）。許される範囲でない場合（ステップ２５０：ＮＯ）、変換部２４０は、変数Ｃの設定値が数値範囲であるかどうか判断する（ステップ２５５）。設定値が数値範囲である例として変数Ｃの設定項目が余白サイズである場合が挙げられる。
【００５７】
変数Ｃの設定値が数値範囲である場合（ステップ２５５：ＹＥＳ）、変換部２４０は、機種Ｘの数値範囲の上限または下限、すなわち変数Ｃの設定値が機種Ｘの数値範囲の上限を超えていれば機種Ｘの数値範囲の上限、また変数Ｃの設定値が機種Ｘの数値範囲を下回っていれば機種Ｘの数値範囲の下限を変数Ｃに代入する。また、変更箇所を示す情報Ｄに、変更した設定値の情報を追加する（ステップ２６０）。
【００５８】
ステップ２５５でＮＯの場合、すなわちＣの設定値が数値範囲でない場合、変換部２４０は、変数Ｃの設定値が離散的な値であるかどうか判断する（ステップ２６５）。設定値が離散的な値である例として変数Ｃの設定項目が用紙サイズである場合が挙げられる。Ｃの設定値が離散的な値である場合（ステップ２６５：ＹＥＳ）、変換部２４０は、機種Ｘで許される最も近い離散値をＣに代入する。また、変更箇所を示す情報Ｄに、変更した設定値の情報を追加する（ステップ２７０）。
【００５９】
ステップ２６５でＮＯの場合、すなわち変数Ｃの設定値が離散的な値でない場合、変換部２４０は、機種Ｘの設定値のデフォルト値を変数Ｃに代入し、また変更箇所を示す情報Ｄに、変更した設定値の情報を追加する（ステップ２７５）。そして処理は終了する。
【００６０】
次に図１２を参照して変換部２４０による、設定値間の依存関係の制約による「丸め」の詳細な処理を説明する。変換部２４０はまず、制約情報格納部２３５から機種Ｘの設定値間の依存関係の制約情報を読み出し、設定値間の依存関係の制約の表（図７の（ａ）を参照）における、変数Ｃに対応する設定項目の列のデータを変数Ｍに代入する（ステップ２８０）。次に変換部２４０は、設定値セットＢの設定済みの設定項目に対応する変数Ｍの行を見たとき、「×」の項目があるか判断する（ステップ２８５）。
【００６１】
「×」の項目がある場合（ステップ２８５：ＹＥＳ）、変換部２４０は、設定値セットＢにおいて、変数Ｃに対応する設定項目の現在の設定値を変数Ｃに代入する。また、変換部２４０は、変更箇所を示す情報Ｄに、変更した設定値の情報を追加する（ステップ２９０）。そして処理は終了する。「×」の項目がない場合（ステップ２８５：ＮＯ）、変換部２４０は更に、設定値セットＢの設定済みの設定項目に対応する変数Ｍの行を見たとき、「○」と「×」以外の指示があるかどうか判断する（ステップ２９５）。
【００６２】
「○」と「×」以外の指示がない場合（ステップ２９５：ＮＯ）、処理は終了する。「○」と「×」以外の指示がある場合（ステップ２９５：ＹＥＳ）、変換部２４０は、「○」と「×」以外の指示がある、その設定値セットＢの設定項目の設定値に対して上記指示を実行する。また、変換部２４０は、変更箇所を示す情報Ｄに、変更した設定値の情報を追加する（ステップ３００）。そして処理は終了する。
【００６３】
図１３を参照して、確認画面作成部２４５による確認画面の作成及び表示の処理を説明する。確認画面作成部２４５は変換部２４０から記録部２４２に記録されたた変更に関する情報を受け取り、変更があったかどうか判断する（ステップ３０５）。変更があった場合、確認画面作成部２４５は、当該変更についてユーザに確認させるための確認画面を作成し（図８を参照）、情報処理装置１００Ａの表示装置１２５に表示させる（ステップ３１０）。次に確認画面作成部２４５は、ユーザがＯＫボタンを押したかどうか判断する（ステップ３１５）。ＯＫボタンが押された場合（ステップ３１５：ＹＥＳ）、処理は終了する。
【００６４】
ＯＫボタンが押されない場合、すなわち修正ボタンが押された場合（ステップ３１５：ＮＯ）、確認画面作成部２４５は、更に修正のための修正画面を作成し、情報処理装置１００Ａの表示装置１２５に表示させる（ステップ３２０）。そして確認画面作成部２４５は、修正画面を介してユーザから修正情報を受け取り（ステップ３２５）、そして処理は終了する。
【００６５】
図１４は、設定モジュール２６０によって設定部２６５として機能する情報処理装置１００Ａによる処理の流れの一例を示す。ステップ４００で処理は開始し、設定部２６５は、設定情報格納部２５５からを読み出した機種Ｘに設定する設定値セットＢのファイルＦ２オープンし（ステップ４００）、カウンタの値Ｎ３の値を１に初期化する（ステップ４０５）。そして設定部２６５は、ファイルＦ２のＮ３番目の設定値を読み込み（ステップ４１０）、当該設定値をプリンタへ送信する（ステップ４１５）。そして設定部２６５は、読み出した設定値が最後のデータであるかどうか判断する（ステップ４２０）。
【００６６】
最後のデータでない場合（ステップ４２０：ＮＯ）、設定部２６５はカウンタの値Ｎ３を１増加し（ステップ４２５）、処理はステップ４１０へ戻る。最後のデータである場合（ステップ４２０：ＹＥＳ）、設定部２６５は、ファイルＦ２をクローズし（ステップ４３０）、処理は終了する。
【００６７】
次に図２の（ｂ）を参照して、本発明の他の実施形態について説明する。図２の（ｂ）は、設定情報を作成するためのプログラムを実行する情報処理装置１００Ｂの機能ブロック図である。本実施形態に係る情報処理装置１００Ｂは、機種の異なる複数の電子機器に接続して処理を要求可能なクライアントとネットワークを介して接続されるサーバである。そのような情報処理装置１００Ｂにより実行される設定情報を作成するためのプログラムは、共通設定値作成モジュール３００及び制約適用モジュール３３０を含む。
【００６８】
共通設定値作成モジュール３００は情報処理装置１００Ｂを、共通設定項目格納部３０５、入力画面作成部３１０、対応付け部３１５、共通設定格納部３２５として機能させる。制約適用モジュール３３０は情報処理装置１００Ｂを、制約情報格納部３３５、変換部３４０、確認画面作成部３４５、修正情報格納部３５０として機能させる。
【００６９】
上記各部の動作は、図２の（ａ）及び図３乃至図１２を参照して説明したのと基本的に同じであるからここでは説明を省略する。なお、相違点について説明すると、入力画面作成部３１０のデータ送出先は情報処理装置１００Ｂの送信部（クライアントへ）と、対応付け部３１５のデータ入力元は情報処理装置１００Ｂの受信部（クライアントから）となる。すなわち、サーバはクライアントから共通設定情報の作成要求を受信することに応答して、共通設定値作成モジュール３００による処理を開始し、共通設定項目格納部３０５、入力画面作成部３１０、対応付け部３１５、共通設定格納部３２５として機能する。
【００７０】
また、サーバはクライアントから利用する電子機器の機種を指定した変換要求を受信することに応答して、制約適用モジュール３３０による処理を開始し、制約情報格納部３３５、変換部３４０、確認画面作成部３４５、修正情報格納部３５０として機能する。制約情報格納部３３５には、各機種に適用される、設定値間の設定順に依存する制約情報が複数格納される。これらの制約情報は、一例としてサーバの管理者によってネットワーク上のサーバから適宜ダウンロードされる。
【００７１】
また、変換部３４０は、確認画面作成部３４５によるユーザの確認の受信の通知に応答して、クライアントから指定された機種の電子機器に設定する設定値のセットを確認画面作成部３４５へ渡す。確認画面作成部３４５は当該設定値のセットを、送信部を介してクライアントに送信する。この場合クライアントには図２の（ａ）に示す設定モジュール２６０がインストールされているものとする。
【００７２】
図１５は、本発明の上記２つの実施の形態において使用可能である情報処理装置のハードウェア構成の一例を示す。情報処理装置１００は、ホストコントローラ１１０により相互に接続されるＣＰＵ１０５、ＲＡＭ１１５、グラフィックコントローラ１２０、ディスプレイ１２５及び外部ディスプレイ１８０を含むＣＰＵ周辺部と、入出力コントローラ１３０によりホストコントローラ１１０に接続される通信インターフェース１４５、ハードディスクドライブ１３５、及びＣＤ−ＲＯＭドライブ１４０を含む入出力部と、入出力コントローラ１３０に接続されるスーパーＩ／Ｏコントローラ１５０及びスーパーＩ／Ｏコントローラ１５０に接続されるフレキシブルディスクドライブ１５５、フラッシュＲＯＭ１６０、並びにキーボードマウスコントローラ１６５を有するレガシー入出力部とを備える。
【００７３】
ホストコントローラ１１０は、高い転送レートでＲＡＭ１１５をアクセスするＣＰＵ１０５及びグラフィックコントローラ１２０をＲＡＭ１１５と接続する。ＣＰＵ１０５は、フラッシュＲＯＭ１６０に及びＲＡＭ１１５に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィックコントローラ１２０は、ＣＰＵ１０５等がＲＡＭ１１５内に設けたフレームバッファ上に生成する画像データを取得し、ディスプレイ１２５及び／又は外部ディスプレイ１８０上に表示させる。これに代えて、グラフィックコントローラ１２０は、ＣＰＵ１０５等が生成する画像データを格納するフレームバッファを、内部に含んでもよい。
【００７４】
入出力コントローラ１３０は、比較的高速な入出力装置である通信インターフェース１４５、ハードディスクドライブ１３５、及びＣＤ−ＲＯＭドライブ１４０をホストコントローラ１１０と接続する。通信インターフェース１３５は、ネットワークを介して外部装置と通信する。通信インターフェース１３５は、イーサーネット（登録商標）に接続するイーサーネットアダプタや、ケーブルを介さずに無線を用いてネットワークに接続する無線ＬＡＮアダプタである。
【００７５】
ハードディスクドライブ１０４０は、情報処理装置１００が使用するプログラム及びデータを格納する。ＣＤ−ＲＯＭドライブ１４０は、ＣＤ−ＲＯＭからプログラム又はデータを読み取り、ＲＡＭ１１５又はハードディスクドライブ１３５に提供する。
【００７６】
更に、入出力コントローラ１３０には、スーパーＩ／Ｏコントローラ１５０やキーボードマウスコントローラ１６５等の比較的低速な入出力装置と、フラッシュＲＯＭ１６０とが接続される。フラッシュＲＯＭ１６０は、情報処理装置１００の起動時にＣＰＵ１０５が実行するブートプログラムや、情報処理装置１００のハードウェアに依存するプログラム等を格納する。フレキシブルディスクドライブ１５５は、フレキシブルディスクからプログラムまたはデータを読み取り、ＲＡＭ１１５を介してスーパーＩ／Ｏコントローラ１５０に提供する。スーパーＩ／Ｏコントローラ１５０は、例えばパラレルポート、シリアルポート、キーボードポート、マウスポート等を介してプリンタ、フレキシブルディスク、キーボードやマウス等の入出力装置を接続する。
【００７７】
上述した本発明に係る、設定情報を作成するためのプログラムは、フレキシブルディスク、ＣＤ−ＲＯＭ、又はＩＣカード等の記録媒体に格納されて利用者によって提供される。プログラムは、入出力コントローラ１３０及び/又はスーパーＩ／Ｏコントローラ１５０を介して、記録媒体から読み出され情報処理装置１００にインストールされて実行される。  
【００７８】
上記プログラムは、外部の記憶媒体に格納されてもよい。記憶媒体としては、フレキシブルディスク、ＣＤ−ＲＯＭの他に、ＤＶＤやＰＤ等の光学記録媒体、ＭＤ等の光磁気記録媒体、テープ媒体、ＩＣカード等の半導体メモリ等を用いることができる。また、専用通信ネットワークやインターネットに接続されたサーバシステムに設けたハードディスク又はＲＡＭ等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムを情報処理装置１００に提供してもよい。
【００７９】
以上、実施形態を用いて本発明の説明をしたが、本発明の技術範囲は上記実施形態に記載の範囲には限定されない。例えば上記説明では制約適用モジュール２３０は、機種の異なる複数の電子機器に接続して処理を要求可能な情報処理装置、またはそのような情報処理装置にネットワークを介して接続されるサーバ上で動作するものとした。しかし制約適用モジュール２３０は直接電子機器上で動作させてもよい。この場合、共通設定格納部２２５から読み出された共通設定情報は、電子機器の使用を希望するユーザの指示に応答して情報処理装置から電子機器へ送信される。このように上記の実施形態に、種々の変更または改良を加えることが可能であることが当業者に明らかである。従って、そのような変更または改良を加えた形態も当然に本発明の技術的範囲に含まれる。
【図面の簡単な説明】
【００８０】
【図１】（ａ）は、プリンタに適用される設定値間の依存関係による制約ルールの表の一例を示す。（ｂ）は、制約ルールを適用した結果の表を示す。
【図２】（ａ）は、本発明の一実施形態に係る、設定情報を作成するためのプログラムを実行する情報処理装置１００Ａの機能ブロック図を示す。（ｂ）は、本発明の他の実施形態に係る、設定情報を作成するためのプログラムを実行する情報処理装置１００Ｂの機能ブロック図を示す。
【図３】共通設定項目のセットの表の一例を示す。
【図４】（ａ）スクロール形式の入力画面の一例を示す。（ｂ）タブ切り替え方式の入力画面の一例を示す。（ｃ）詳細画面の一例を示す。
【図５】共通設定情報の表の一例を示す。
【図６】適用ルールの表の一例を示す。
【図７】（ａ）は、本実施形態に係る、プリンタに適用される設定値間の依存関係による制約ルールの表の一例を示す。（ｂ）は、制約ルールを適用した結果の表を示す。（ｃ）は、制約ルールを本発明に係る方法により適用した結果の表を示す。
【図８】確認画面の一例を示す。
【図９】共通設定値作成モジュール２００による処理の流れの一例を示すフローチャートである。
【図１０】制約適用モジュール２３０による処理の流れの一例を示すフローチャートである。
【図１１】制約適用モジュール２３０による処理の流れの一例を示すフローチャートである。
【図１２】制約適用モジュール２３０による処理の流れの一例を示すフローチャートである。
【図１３】制約適用モジュール２３０による処理の流れの一例を示すフローチャートである。
【図１４】設定モジュール２６０による処理の流れの一例を示すフローチャートである。
【図１５】本発明の実施形態に係る情報処理装置１００のハードウェア構成の一例を示す。