(57)【要約】【課題】  ネットワーク機器の処理内容のカスタマイズをより容易に行なえるようにする。【解決手段】  プリントサーバ２０において、処理ルールが設定されたＸＭＬ文書としての処理ルール設定ファイルをファイルサーバ６０からダウンロードし、ダウンロードした処理ルール設定ファイルをＸＭＬパーサ３１を用いて解析すると共に解析結果（ＤＯＭツリー）をＲＡＭ２３に保存し、この解析結果に基づいて受信した印刷データをＲＡＭ２３上にスプールするスプール処理を実行する。したがって、ユーザは、所望の処理ルールを記述した処理ルール設定ファイルを用意することによりプリントサーバ２０の処理内容をより容易にカスタマイズすることができる。さらに、ＸＭＬ文書における要素を階層構造を用いて記述することにより処理ルールを設定するから、処理内容のカスタマイズをより柔軟に行なうことができる。【選択図】        図１
2006053735.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続可能なネットワーク機器であって、
情報を記憶する情報記憶手段と、
条件を定める条件要素と処理内容を定める処理内容要素とを用いて前記ネットワーク機器の処理ルールが設定された構造化文書を取得する文書取得手段と、
該取得した構造化文書を解析すると共に該解析結果を前記情報記憶手段に記憶させる文書解析手段と、
前記情報記憶手段に記憶されている解析結果に基づいて前記処理ルールに従うよう前記ネットワーク機器の動作を制御する動作制御手段と、
を備えるネットワーク機器。
【請求項２】
前記構造化文書は、所定のマークアップ言語を用いて記述されてなる請求項１記載のネットワーク機器。
【請求項３】
請求項１または２記載のネットワーク機器であって、
前記構造化文書は、前記条件要素と前記処理内容要素とを木構造を用いて記述することにより前記ネットワーク機器の処理ルールが設定されてなり、
前記動作制御手段は、親方向の全ての条件要素の条件が成立する処理内容要素の処理内容を実行するよう前記ネットワーク機器の動作を制御する手段である、
ネットワーク機器。
【請求項４】
前記動作制御手段は、前記処理内容要素の前記構造化文書における記述順序に基づく順序に従って該処理内容要素の処理内容を実行するよう前記ネットワーク機器の動作を制御する手段である請求項３記載のネットワーク機器。
【請求項５】
前記文書取得手段は、前記ネットワークに接続されたコンピュータに記憶されている構造化文書を該コンピュータから所定のタイミングで取得する手段である請求項１ないし４いずれか記載のネットワーク機器。
【請求項６】
請求項１ないし５いずれか記載のネットワーク機器であって、
前記ネットワーク機器は、前記ネットワークに接続されたクライアント端末からの要求に伴って動作する機器であり、
前記構造化文書は、前記条件要素の一つとして、前記クライアント端末に関する識別情報が所定の識別情報であるときに成立する条件を定める条件要素を用いて、前記処理ルールが設定されてなる、
ネットワーク機器。
【請求項７】
請求項１ないし６いずれか記載のネットワーク機器であって、
前記ネットワーク機器は、前記ネットワークに接続されたクライアント端末からの要求に伴って動作する機器であり、
前記構造化文書は、前記条件要素の一つとして、前記クライアント端末のネットワーク識別情報が所定のネットワーク識別情報であるときに成立する条件を定める条件要素を用いて、前記処理ルールが設定されてなる、
ネットワーク機器。
【請求項８】
前記構造化文書は、前記処理内容要素の一つとして、前記ネットワーク機器の動作を禁止する処理内容を定める処理内容要素を用いて、前記処理ルールが設定されてなる請求項１ないし７いずれか記載のネットワーク機器。
【請求項９】
前記ネットワーク機器は、前記ネットワークに接続されたクライアント端末から受信した印刷データの印刷を通信可能な所定のプリンタへ指示するプリントサーバである請求項１ないし８いずれか記載のネットワーク機器。
【請求項１０】
前記構造化文書は、前記処理内容要素の一つとして、前記印刷データに含まれるプリンタ制御コードを更新する処理内容を定める処理内容要素を用いて、前記処理ルールが設定されてなる請求項９記載のネットワーク機器。
【請求項１１】
前記ネットワーク機器は、原稿を走査して画像データとして取り込むイメージスキャナである請求項１ないし８いずれか記載のネットワーク機器。
【請求項１２】
前記構造化文書は、前記処理内容要素の一つとして、前記画像データを所定の保存先に保存する処理内容を定める処理内容要素を用いて、前記処理ルールが設定されてなる請求項１１記載のネットワーク機器。
【請求項１３】
前記構造化文書は、前記条件要素の一つとして、前記原稿の所定領域に所定の文字列が存在するときに成立する条件を定める条件要素を用いて、前記処理ルールが設定されてなる請求項１１または１２記載のネットワーク機器。
【請求項１４】
前記ネットワーク機器は、前記ネットワークに接続されたクライアント端末からの要求に伴って画像を投影するプロジェクタである請求項１ないし８いずれか記載のネットワーク機器。
【請求項１５】
前記構造化文書は、前記処理内容要素の一つとして、前記画像の背景に前記クライアント端末に関する識別情報を付加する処理内容を定める処理内容要素を用いて、前記処理ルールが設定されてなる請求項１４記載のネットワーク機器。
【請求項１６】
情報を記憶する情報記憶手段を備えると共にネットワークに接続可能なネットワーク機器にインストールされ、該ネットワーク機器の動作を制御するプログラムであって、
条件を定める条件要素と処理内容を定める処理内容要素とを用いて前記ネットワーク機器の処理ルールが設定された構造化文書を取得する文書取得モジュールと、
該取得した構造化文書を解析すると共に該解析結果を前記情報記憶手段に記憶させる文書解析モジュールと、
前記情報記憶手段に記憶されている解析結果に基づいて前記処理ルールに従うよう前記ネットワーク機器の動作を制御する動作制御モジュールと、
を備える動作制御用プログラム。
【請求項１７】
情報を記憶する情報記憶手段を備えると共にネットワークに接続可能なネットワーク機器の制御方法であって、
（ａ）条件を定める条件要素と処理内容を定める処理内容要素とを用いて前記ネットワーク機器の処理ルールが設定された構造化文書を取得し、
（ｂ）該取得した構造化文書を解析すると共に該解析結果を前記情報記憶手段に記憶させ、
（ｃ）前記情報記憶手段に記憶されている解析結果に基づいて前記処理ルールに従うよう前記ネットワーク機器の動作を制御する、
ネットワーク機器の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク機器およびこれに用いるプログラム並びにこの制御方法に関し、詳しくは、ネットワークに接続可能なネットワーク機器およびこれに用いるプログラム並びにこの制御方法に関する。
【背景技術】
【０００２】
従来、この種のネットワーク機器としては、ファクシミリなどの通信装置において各種設定内容などの内部情報を出力する際に、予め定められた書式設定情報に基づくレイアウトで出力するものが提案されている（例えば、特許文献１参照）。この装置では、書式設定情報を変更することにより、内部情報を出力する際のレイアウトを変更することができるようになっている。
【特許文献１】特開２００４−１４５４９０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上述の通信装置では、内部情報を出力する際のレイアウトを比較的容易に変更することができるものの、その他の処理内容のカスタマイズには対応していない。こうした処理内容のカスタマイズを実現する手法として、処理内容を制御するパラメータを専用画面を介して設定する手法なども考えられるが、この場合、画面レイアウト上の制約などによりカスタマイズ可能な処理内容が限られてしまう傾向にある。
【０００４】
本発明のネットワーク機器およびこれに用いるプログラム並びにこの制御方法は、ネットワーク機器の処理内容のカスタマイズをより容易に行なえるようにすることを目的の一つとする。また、本発明のネットワーク機器およびこれに用いるプログラム並びにこの制御方法は、ネットワーク機器の処理内容のカスタマイズをより柔軟に行なえるようにすることを目的の一つとする。
【課題を解決するための手段】
【０００５】
本発明のネットワーク機器およびこれに用いるプログラム並びにこの制御方法は、上述の目的の少なくとも一部を達成するために以下の手段を採った。
【０００６】
本発明のネットワーク機器は、
ネットワークに接続可能なネットワーク機器であって、
情報を記憶する情報記憶手段と、
条件を定める条件要素と処理内容を定める処理内容要素とを用いて前記ネットワーク機器の処理ルールが設定された構造化文書を取得する文書取得手段と、
該取得した構造化文書を解析すると共に該解析結果を前記情報記憶手段に記憶させる文書解析手段と、
前記情報記憶手段に記憶されている解析結果に基づいて前記処理ルールに従うよう前記ネットワーク機器の動作を制御する動作制御手段と、
を備えることを要旨とする。
【０００７】
このネットワーク機器では、条件要素と処理内容要素とを用いて処理ルールが設定された構造化文書を解析し、この解析結果に基づいて、構造化文書に設定された処理ルールに従うようにネットワーク機器の動作を制御する。したがって、構造化文書に設定された処理ルールに応じてネットワーク機器の動作を制御することができる。この結果、ユーザは、所望の処理ルールを設定した構造化文書を用意することによりネットワーク機器の処理内容をより容易にカスタマイズすることができる。また、条件要素と処理内容要素とを用いて処理ルールを設定するから、専用画面を用いて設定する場合などと比較してより柔軟に処理内容をカスタマイズすることができる。ここで「構造化文書」としては、所定のマークアップ言語（例えば、ＸＭＬ（eXtensible Markup Language）など）を用いて記述されてなるものなどを挙げることができる。
【０００８】
こうした本発明のネットワーク機器において、前記構造化文書は前記条件要素と前記処理内容要素とを木構造を用いて記述することにより前記ネットワーク機器の処理ルールが設定されてなり、前記動作制御手段は親方向の全ての条件要素の条件が成立する処理内容要素の処理内容を実行するよう前記ネットワーク機器の動作を制御する手段であるものとすることもできる。この態様の本発明のネットワーク機器において、前記動作制御手段は、前記処理内容要素の前記構造化文書における記述順序に基づく順序に従って該処理内容要素の処理内容を実行するよう前記ネットワーク機器の動作を制御する手段であるものとすることもできる。こうすれば、条件要素と処理内容要素とを木構造を用いて記述することにより、複雑な条件を設定したり処理内容の実行順序を設定したりすることができる。
【０００９】
また、本発明のネットワーク機器において、前記文書取得手段は、前記ネットワークに接続されたコンピュータに記憶されている構造化文書を該コンピュータから所定のタイミングで取得する手段であるものとすることもできる。こうすれば、ネットワークに接続されたコンピュータから構造化文書を取得することができる。この結果、複数のネットワーク機器で構造化文書を共有することができる。ここで「所定のタイミング」としては、ネットワーク機器の電源が投入されたタイミングや所定の時刻（例えば、毎日２時）などを挙げることができる。
【００１０】
さらに、本発明のネットワーク機器において、前記ネットワーク機器は前記ネットワークに接続されたクライアント端末からの要求に伴って動作する機器であり、前記構造化文書は前記条件要素の一つとして前記クライアント端末に関する識別情報が所定の識別情報であるときに成立する条件を定める条件要素を用いて前記処理ルールが設定されてなるものとすることもできる。こうすれば、クライアント端末に関する識別情報が所定の識別情報であることを条件の一つとして処理ルールを設定することができる。ここで「クライアント端末に関する識別情報」には、クライアント端末のコンピュータ名やＩＰアドレス，ＭＡＣアドレス，ログインユーザ名など、クライアント端末やユーザを識別する各種の情報が含まれる。
【００１１】
こうした本発明のネットワーク機器において、前記ネットワーク機器は前記ネットワークに接続されたクライアント端末からの要求に伴って動作する機器であり、前記構造化文書は前記条件要素の一つとして前記クライアント端末のネットワーク識別情報が所定のネットワーク識別情報であるときに成立する条件を定める条件要素を用いて前記処理ルールが設定されてなるものとすることもできる。こうすれば、クライアント端末のネットワーク識別情報が所定のネットワーク識別情報であることを条件の一つとして処理ルールを設定することができる。ここで「ネットワーク識別情報」としては、ＩＰアドレスにおけるネットワークアドレスやドメイン名などを挙げることができ、「所定のネットワーク識別情報」としては、ネットワーク機器のネットワーク識別情報などを挙げることができる。
【００１２】
また、本発明のネットワーク機器において、前記構造化文書は、前記処理内容要素の一つとして前記ネットワーク機器の動作を禁止する処理内容を定める処理内容要素を用いて前記処理ルールが設定されてなるものとすることもできる。こうすれば、ネットワーク機器の動作を禁止することを処理内容の一つとして処理ルールを設定することができる。なお、「ネットワーク機器の動作を禁止する処理」には、エラー処理が含まれる。
【００１３】
さらに、本発明のネットワーク機器において、前記ネットワーク機器は、前記ネットワークに接続されたクライアント端末から受信した印刷データの印刷を通信可能な所定のプリンタへ指示するプリントサーバであるものとすることもできる。こうすれば、本発明をプリントサーバに適用することができる。
【００１４】
この態様の本発明のネットワーク機器において、前記構造化文書は、前記処理内容要素の一つとして前記印刷データに含まれるプリンタ制御コードを更新する処理内容を定める処理内容要素を用いて前記処理ルールが設定されてなるものとすることもできる。こうすれば、印刷データに含まれるプリンタ制御コードの更新を処理内容の一つとして処理ルールを設定することができる。ここで「プリンタ制御コードの更新」には、プリンタ制御コードの追加や削除，修正などが含まれる。
【００１５】
こうした本発明のネットワーク機器において、前記ネットワーク機器は、原稿を走査して画像データとして取り込むイメージスキャナであるものとすることもできる。こうすれば、本発明をイメージスキャナに適用することができる。
【００１６】
この態様の本発明のネットワーク機器において、前記構造化文書は、前記処理内容要素の一つとして前記画像データを所定の保存先に保存する処理内容を定める処理内容要素を用いて前記処理ルールが設定されてなるものとしたり、前記条件要素の一つとして前記原稿の所定領域に所定の文字列が存在するときに成立する条件を定める条件要素を用いて前記処理ルールが設定されてなるものとすることもできる。こうすれば、画像データを所定の保存先に保存する処理を処理内容の一つとしたり原稿の所定領域に所定の文字列が存在することを条件の一つとして処理ルールを設定することができる。
【００１７】
また、本発明のネットワーク機器において、前記ネットワーク機器は、前記ネットワークに接続されたクライアント端末からの要求に伴って画像を投影するプロジェクタであるものとすることもできる。こうすれば、本発明をプロジェクタに適用することができる。
【００１８】
この態様の本発明のネットワーク機器において、前記構造化文書は、前記処理内容要素の一つとして前記画像の背景に前記クライアント端末に関する識別情報を付加する処理内容を定める処理内容要素を用いて前記処理ルールが設定されてなるものとすることもできる。こうすれば、画像の背景にクライアント端末に関する識別情報を付加する処理を処理内容の一つとして処理ルールを設定することができる。ここで「クライアント端末に関する識別情報」には、クライアント端末のコンピュータ名やＩＰアドレス，ＭＡＣアドレス，ログインユーザ名など、クライアント端末やユーザを識別する各種の情報が含まれる。
【００１９】
本発明の動作制御用プログラムは、
情報を記憶する情報記憶手段を備えると共にネットワークに接続可能なネットワーク機器にインストールされ、該ネットワーク機器の動作を制御するプログラムであって、
条件を定める条件要素と処理内容を定める処理内容要素とを用いて前記ネットワーク機器の処理ルールが設定された構造化文書を取得する文書取得モジュールと、
該取得した構造化文書を解析すると共に該解析結果を前記情報記憶手段に記憶させる文書解析モジュールと、
前記情報記憶手段に記憶されている解析結果に基づいて前記処理ルールに従うよう前記ネットワーク機器の動作を制御する動作制御モジュールと、
を備えることを要旨とする。
【００２０】
この動作制御用プログラムでは、条件要素と処理内容要素とを用いて処理ルールが設定された構造化文書を解析し、この解析結果に基づいて、構造化文書に設定された処理ルールに従うようにネットワーク機器の動作を制御する。したがって、構造化文書に設定された処理ルールに応じてネットワーク機器の動作を制御することができる。この結果、ユーザは、所望の処理ルールを設定した構造化文書を用意することによりネットワーク機器の処理内容をより容易にカスタマイズすることができる。また、条件要素と処理内容要素とを用いて処理ルールを設定するから、専用画面を用いて設定する場合などと比較してより柔軟に処理内容をカスタマイズすることができる。ここで「構造化文書」としては、所定のマークアップ言語（例えば、ＸＭＬなど）を用いて記述されてなるものなどを挙げることができる。
【００２１】
本発明のネットワーク機器の制御方法は、
情報を記憶する情報記憶手段を備えると共にネットワークに接続可能なネットワーク機器の制御方法であって、
（ａ）条件を定める条件要素と処理内容を定める処理内容要素とを用いて前記ネットワーク機器の処理ルールが設定された構造化文書を取得し、
（ｂ）該取得した構造化文書を解析すると共に該解析結果を前記情報記憶手段に記憶させ、
（ｃ）前記情報記憶手段に記憶されている解析結果に基づいて前記処理ルールに従うよう前記ネットワーク機器の動作を制御する、
ことを要旨とする。
【００２２】
このネットワーク機器の制御方法では、条件要素と処理内容要素とを用いて処理ルールが設定された構造化文書を解析し、この解析結果に基づいて、構造化文書に設定された処理ルールに従うようにネットワーク機器の動作を制御する。したがって、構造化文書に設定された処理ルールに応じてネットワーク機器の動作を制御することができる。この結果、ユーザは、所望の処理ルールを設定した構造化文書を用意することによりネットワーク機器の処理内容をより容易にカスタマイズすることができる。また、条件要素と処理内容要素とを用いて処理ルールを設定するから、専用画面を用いて設定する場合などと比較してより柔軟に処理内容をカスタマイズすることができる。ここで「構造化文書」としては、所定のマークアップ言語（例えば、ＸＭＬなど）を用いて記述されてなるものなどを挙げることができる。
【発明を実施するための最良の形態】
【００２３】
次に、本発明を実施するための最良の形態を実施例を用いて説明する。
【実施例１】
【００２４】
図１は、本発明の第１実施例としてのネットワーク機器として機能するプリントサーバ２０を含むシステムの構成の概略を示す構成図である。プリントサーバ２０は、図示するように、装置全体を制御するＣＰＵ２１と、各種プログラムなどを記憶するＲＯＭ２２と、データを一時的に記憶するＲＡＭ２３と、データを不揮発的に記憶するＥＥＰＲＯＭ２４とを備え、ＬＡＮ側インタフェース２５を介してＬＡＮ３５に接続されると共にプリンタ側インタフェース２７を介してプリンタ４０に接続されており、クライアント端末５０などから送信される印刷データをＲＡＭ２３上にスプールしてプリンタ４０に転送するプリントサーバ専用機として機能する。プリントサーバ２０のＲＯＭ２２には、装置全体の動作を制御するファームウェア３０やＸＭＬ文書の解析を行なうＸＭＬパーサ３１などが記憶されている。また、ＬＡＮ３５には、汎用のコンピュータとしてのファイルサーバ６０が接続されており、ファイルサーバ６０の図示しないハードディスクに記憶された情報をＬＡＮ３５上で共有できるようになっている。
【００２５】
次に、こうして構成されたプリントサーバ２０の動作、特に、プリントサーバ２０の処理内容をカスタマイズする際の動作について説明する。図２は、プリントサーバ２０のＣＰＵ２１によりファームウェア３０やＸＭＬパーサ３１などを用いて実行される処理ルール設定ファイル受信処理の一例を示すフローチャートである。この処理は、所定のタイミング（例えば、プリントサーバ２０の電源を投入したタイミングや毎日２時など）で実行される。処理ルール設定ファイル受信処理では、まず、図示するように、プリントサーバ２０の処理ルールが設定された処理ルール設定ファイルをファイルサーバ６０からダウンロードする処理を実行する（ステップＳ１００）。ここで、処理ルール設定ファイルの保存先に関する情報（コンピュータ名やフォルダ名，ファイル名など）は、ＥＥＰＲＯＭ２４などに予め記憶しておくものとした。図３は、処理ルール設定ファイルの記述例を示す説明図である。処理ルール設定ファイルは、図示するように、マークアップ言語としてのＸＭＬを用いて記述されたＸＭＬ文書であり、一対の開始タグと終了タグとにより囲まれる「要素」を基本的な単位として構成され、この要素の内容として開始タグと終了タグとの間に「文字列データ」や他の要素を記述することにより、各要素や文字列データなどが階層構造を有するようになっている。また、開始タグの中には要素に付加する補足情報としての「属性」を記述するようになっている。処理ルール設定ファイルでは、こうしたＸＭＬ文書における「要素」や「文字列データ」，「属性」を用いてプリントサーバ２０の処理ルールが記述されている。処理ルールの具体的な記述内容については後述する。なお、ＸＭＬ文書では、ＸＭＬのバージョンなどを記述するＸＭＬ宣言やＸＭＬ文書におけるタグの規則などを記述するＤＴＤ（Document Type Definition）なども有するが、本発明の中核をなさないから、これ以上の詳細な説明は省略する。
【００２６】
続いて、ダウンロードした処理ルール設定ファイルをＸＭＬパーサ３１を用いて解析すると共に解析結果をＲＡＭ２３に保存して（ステップＳ１１０，Ｓ１２０）、この処理を終了する。第１実施例では、ＸＭＬパーサ３１のＡＰＩ（Application Program Interface）としてＤＯＭ（Document Object Model）を採用し、解析結果をＤＯＭツリーとしてＲＡＭ２３に保存するものとした。図４は、図３に例示した処理ルール設定ファイルの解析結果としてのＤＯＭツリーを概念的に示す説明図である。ＤＯＭツリーは、図示するように、要素や文字列データ，属性などをノード（節）としたツリー構造となっており、ある要素を親ノードとすると、その要素の属性やその要素の内容としての文字列データ，他の要素が子ノードとして配置される。また、子ノードが複数存在する場合には、親ノードである要素の属性が一番左側の子ノードとして配置され、以下ＸＭＬ文書における記述順序に従って文字列データや他の要素が右側の子ノードとして配置される。
【００２７】
次に、こうした処理ルール設定ファイルの解析結果に基づくプリントサーバ２０の動作について説明する。図５は、プリントサーバ２０のＣＰＵ２１によりファームウェア３０を用いて実行される印刷データ受信時処理の一例を示す説明図である。この処理は、クライアント端末５０などから印刷データを受信する度に実行される。印刷データ受信時処理では、まず、図示するように、ＲＡＭ２３に記憶されている処理ルール設定ファイルの解析結果（ＤＯＭツリー）を読み込み（ステップＳ２００）、読み込んだ解析結果に基づいて、受信した印刷データをＲＡＭ２３上にスプールするスプール処理を実行して（ステップＳ２１０）、処理を終了する。処理ルール設定ファイルの解析結果に基づくスプール処理は、読み込んだＤＯＭツリーの根の部分に相当するルート要素から左方向の子ノードを優先して順に探索（深さ優先探索）して参照し、参照した各ノードの属性や内容（文字列データ）に応じた処理内容を実行することにより行なわれる。ここで、図３に例示した処理ルール設定ファイルに記述されている処理ルールの内容を具体例として、処理ルール設定ファイルの解析結果に基づくスプール処理について、図４に例示したＤＯＭツリーを用いて説明する。
【００２８】
まず、図４に例示したＤＯＭツリーのルート要素である要素「処理ルール」（Ｎ０）の子ノードのうち左側の要素「条件処理」（Ｎ１）を参照する。プリントサーバ２０では、要素「条件処理」は処理ルールにおける条件を定める要素であり、その要素の属性が条件式であると予め定められている。具体例では、要素「条件処理」（Ｎ１）の属性「ＤｅｖｉｃｅＳｅｇ＝ＣｌｉｅｎｔＳｅｇ」（Ｎ２）が条件式となる。ここで、「ＤｅｖｉｃｅＳｅｇ」や「ＣｌｉｅｎｔＳｅｇ」は、処理ルールの中で使用可能な変数として予め定められており、「ＤｅｖｉｃｅＳｅｇ」はプリントサーバ２０のネットワークアドレスを示し「ＣｌｉｅｎｔＳｅｇ」は印刷データの送信元（クライアント端末５０など）のネットワークアドレスを示す。
【００２９】
そして、条件式（ＤｅｖｉｃｅＳｅｇ＝ＣｌｉｅｎｔＳｅｇ）が成立するときには、要素「条件処理」（Ｎ１）の子ノードのうち属性（Ｎ２）の右隣の要素「条件処理」（Ｎ３）を参照する。前述したように、要素「条件処理」は条件を定める要素であり、その属性「ＵｓｅｒＮａｍｅ＝“Ａ，Ｂ，Ｃ，Ｄ”」（Ｎ４）が条件式となる。ここで「ＵｓｅｒＮａｍｅ」は、印刷データのヘッダ部に記述されるユーザ名を示す変数として予め定められたものである。
【００３０】
そして、条件式（ＵｓｅｒＮａｍｅ＝“Ａ，Ｂ，Ｃ，Ｄ”）が成立するときには、属性（Ｎ４）の右隣の要素「印刷データ」（Ｎ５）を参照する。続いて、要素「印刷データ」（Ｎ５）の子ノードのうち一番左側の要素「動作」（Ｎ６）を参照し、その子ノードである文字列データ「挿入」（Ｎ７）を参照する。同様に、要素「場所」（Ｎ８）と文字列データ「先頭」（Ｎ９），要素「データ」（Ｎ１０）と文字列データ「＠ＥＳＣ“ｃ”」（Ｎ１１）とを順に参照する。ここで、要素「印刷データ」は、子ノードである要素「動作」「場所」「データ」の内容（文字列データ）に応じて印刷データに対してプリンタ制御コードの更新を行なう処理内容を定める要素として予め定められている。従って、ここでは、印刷データの先頭にプリンタ制御コード「＠ＥＳＣ“ｃ”」を追加する処理を実行することになる。なお、プリンタ制御コード「＠ＥＳＣ“ｃ”」は、印刷データをカラー印刷するようにプリンタ４０を制御するコードとして予め設定されたものである。このように、ノード（Ｎ１）〜（Ｎ１１）において、「プリントサーバ２０のネットワークアドレスと印刷データの送信元のネットワークアドレスとが一致し、かつ、印刷データのヘッダ部に記述されるユーザ名が“Ａ，Ｂ，Ｃ，Ｄ”のいずれかであるときに、印刷データの先頭にプリンタ制御コード「＠ＥＳＣ“ｃ”」を追加する（カラー印刷する）」という処理ルールが記述されていることなる。
【００３１】
こうしてノード（Ｎ１）〜（Ｎ１１）を参照すると、次に、要素「条件処理」（Ｎ３）の右隣の要素「条件処理」（Ｎ１２）を参照し、属性（Ｎ１３）である条件式（ＵｓｅｒＮａｍｅ≠“Ａ，Ｂ，Ｃ，Ｄ”）が成立するときには、属性（Ｎ１３）の右隣の要素「印刷データ」（Ｎ１４）を参照する。そして、前述したノード（Ｎ６）〜（Ｎ１１）と同様に、ノード（Ｎ１５）〜（Ｎ２０）を参照し、印刷データの先頭にプリンタ制御コード「＠ＥＳＣ“ｍ”」を追加する処理を実行する。なお、プリンタ制御コード「＠ＥＳＣ“ｍ”」は、印刷データをモノクロ印刷するようにプリンタ４０を制御するコードとして予め設定されたものである。このように、ノード（Ｎ１），（Ｎ１２）〜（Ｎ２０）において、「プリントサーバ２０のネットワークアドレスと印刷データの送信元のネットワークアドレスとが一致し、かつ、印刷データのヘッダ部に記述されるユーザ名が“Ａ，Ｂ，Ｃ，Ｄ”のいずれでもないときに、印刷データの先頭にプリンタ制御コード「＠ＥＳＣ“ｍ”」を追加する（モノクロ印刷する）」という処理ルールが記述されていることになる。
【００３２】
こうしてノード（Ｎ１２）〜（Ｎ２０）を参照すると、次に、要素「条件処理」（Ｎ１）の右隣の要素「条件処理」（Ｎ２１）を参照し、属性（Ｎ２２）である条件式（ＤｅｖｉｃｅＳｅｇ≠ＣｌｉｅｎｔＳｅｇ）が成立するときには、属性（Ｎ２２）の右隣の要素「エラー」（Ｎ２３）を参照し、子ノードである文字列データ「ｅ００１」（Ｎ２４）を参照する。ここで、要素「エラー」は、その内容（文字列データ）をエラーコードとするエラー処理を定める要素として予め定められている。従って、ここでは、エラーコード「ｅ００１」のエラー処理を実行することになる。このように、ノード（Ｎ２１）〜（Ｎ２４）においては、「プリントサーバ２０のネットワークアドレスと印刷データの送信元のネットワークアドレスとが異なるときに、エラーコード「ｅ００１」のエラー処理を実行する」という処理ルールが記述されていることになる。
【００３３】
このように、ＤＯＭツリーのルート要素から左方向の子ノードを優先して順に探索して参照し、条件が定められた要素（要素「条件処理」）や処理内容が定められた要素（要素「印刷データ」「エラー」など）の内容に応じて各処理を実行し、印刷データをＲＡＭ２３にスプールするのである。図６は、こうした具体例の処理ルールに基づくスプール処理を、フローチャートとして示した説明図である。即ち、印刷データの送信元（クライアント端末５０）のネットワークアドレスを取得してプリントサーバ２０のネットワークアドレスと比較し（ステップＳ３００，Ｓ３１０）、これらが一致しないときにはエラーコード「ｅ００１」のエラー処理を実行して（ステップＳ３２０）、処理を終了する。一方、送信元のネットワークアドレスとプリントサーバ２０のネットワークアドレスとが一致する場合には、印刷データのヘッダ情報からユーザ名を取得し（ステップＳ３３０）、このユーザ名が「Ａ，Ｂ，Ｃ，Ｄ」のいずれかであるときには印刷データのヘッダ部にカラー印刷を指示するプリンタ制御コード「＠ＥＳＣ“ｃ”」を追加し（ステップＳ３５０）、「Ａ，Ｂ，Ｃ，Ｄ」のいずれでもないときには印刷データのヘッダ部にモノクロ印刷を指示するプリンタ制御コード「＠ＥＳＣ“ｍ”」を追加し（ステップＳ３６０）、印刷データをＲＡＭ２３上にスプールして（ステップＳ３７０）、処理を終了する。このように、処理ルール設定ファイルを用いることにより、プリントサーバ２０のスプール処理を、図６のフローチャートに示した処理となるようにカスタマイズすることができるのである。
【００３４】
以上説明した第１実施例のプリントサーバ２０によれば、ＸＭＬを用いて処理ルールが記述された処理ルール設定ファイルをファイルサーバ６０からダウンロードして解析すると共に解析結果（ＤＯＭツリー）をＲＡＭ２３に保存し、この保存した解析結果に基づいてスプール処理を実行することができる。即ち、処理ルール設定ファイルに記述された処理ルールに従ってスプール処理を実行するから、ユーザは、所望の処理ルールを記述した処理ルール設定ファイルをファイルサーバ６０などに用意することによりプリントサーバ２０の処理内容をより容易にカスタマイズすることができる。また、処理ルール設定ファイルでは、条件が定められた要素（要素「条件処理」）や処理内容が定められた要素（要素「印刷データ」「エラー」など）を階層構造（木構造）を用いて記述することにより処理ルールを設定するから、専用画面を用いて処理ルールを設定する場合などと比較して、複雑な条件を設定したり処理内容の実行順序を設定したりすることができる。即ち、より柔軟に処理内容をカスタマイズすることができる。
【００３５】
ここで、第１実施例のプリントサーバ２０では、ＲＡＭ２３が情報記憶手段に相当し、処理ルール設定ファイルが構造化文書に相当し、ステップＳ１００の処理を実行するＣＰＵ２１やファームウェア３０が文書取得手段に相当し、ステップＳ１１０，Ｓ１２０の処理を実行するＣＰＵ２１やファームウェア３０，ＸＭＬパーサ３１が文書解析手段に相当し、図５に例示した印刷データ受信時処理を実行するＣＰＵ２１やファームウェア３０が動作制御手段に相当する。また、印刷データのヘッダ部に記述されるユーザ名がクライアント端末に関する識別情報に相当し、ネットワークアドレスがネットワーク識別情報に相当する。さらに、ファームウェア３０やＸＭＬパーサ３１が本発明の動作制御用プログラムに相当する。
【００３６】
第１実施例のプリントサーバ２０では、処理ルール設定ファイルは、ＸＭＬを用いて記述されたＸＭＬ文書としたが、条件を定める要素と処理内容を定める要素とを用いて処理ルールが設定されていればよく、その他の言語を用いても構わない。
【００３７】
第１実施例のプリントサーバ２０では、処理ルール設定ファイルをファイルサーバ６０からダウンロードするものとしたが、処理ルール設定ファイルを取得することができればよく、必ずしもＬＡＮ３５に接続されたファイルサーバ６０などのコンピュータからダウンロードする必要はない。また、処理ルール設定ファイルの解析結果をＲＡＭ２３に保存するものとしたが、保存先は問わず、例えば、ＥＥＰＲＯＭ２４などに保存するものとしてもよい。さらに、処理ルール設定ファイル自体をＲＡＭ２３やＥＥＰＲＯＭ２４などに保存するものとし、印刷データ受信時処理を実行する際に、この処理ルール設定ファイルを解析して用いるものとしても差し支えない。
【００３８】
第１実施例のプリントサーバ２０では、処理ルール設定ファイルの解析結果をＤＯＭツリーとして保存するものとしたが、プリントサーバ２０のファームウェア３０により処理ルールを解釈することができればよいから、ＤＯＭツリー以外の形式で保存するものとしてもよい。
【００３９】
第１実施例のプリントサーバ２０では、印刷データをＲＡＭ２３上にスプールするスプール処理において処理ルール設定ファイルの解析結果に基づく処理を行なうものとしたが、プリントサーバ２０の処理であればよく、スプール処理以外のその他の処理を実行する際に、処理ルール設定ファイルの解析結果に基づく処理を行なうものとしてもよい。
【００４０】
第１実施例のプリントサーバ２０では、送信元のネットワークアドレスとプリントサーバ２０のネットワークアドレスとが一致する条件やこれらが異なる条件を処理ルールにおける条件として例示したが、ネットワークアドレス以外のネットワーク識別情報（例えば、ドメイン名など）を用いても構わない。また、印刷データのヘッダ部に記述されるユーザ名が“Ａ，Ｂ，Ｃ，Ｄ”のいずれかである条件やいずれでもない条件を例示したが、ユーザ名以外のクライアント端末５０に関する識別情報（例えば、コンピュータ名やＩＰアドレスなど）を用いても構わない。また、処理ルールにおける条件として、その他の各種の条件を用いても構わないのは勿論である。
【００４１】
第１実施例のプリントサーバ２０では、処理ルールにおける処理内容として、印刷データに対してプリンタ制御コードの更新を行なう処理やエラー処理を例示したが、その他の各種の処理内容を用いても構わないのは勿論である。
【００４２】
第１実施例のプリントサーバ２０では、図３の処理ルール設定ファイルを具体例として説明したが、各要素の名称や意味がこの具体例に限られないのは勿論であり、例えば、要素「条件処理」以外の要素を条件を定める要素として用いても構わない。
【００４３】
第１実施例では、処理ルール設定ファイルの解析結果に基づいて動作する本発明の内容をプリントサーバ２０として説明したが、こうしたネットワーク機器の制御方法の形態としてもよい。
【実施例２】
【００４４】
次に、第２実施例のイメージスキャナ１２０について説明する。図７は、本発明の第２実施例としてのネットワーク機器として機能するイメージスキャナ１２０を含むシステムの構成の概略を示す構成図である。イメージスキャナ１２０は、図示するように、装置全体を制御するＣＰＵ１２１と、各種プログラムなどを記憶するＲＯＭ１２２と、データを一時的に記憶するＲＡＭ１２３と、データを不揮発的に記憶するＥＥＰＲＯＭ１２４と、スキャナ機能を実現するスキャナエンジン１２６とを備え、ＬＡＮ側インタフェース１２５を介してＬＡＮ１３５に接続されており、セットされた原稿をスキャンして画像データとして取り込むイメージスキャナとして機能する。イメージスキャナ１２０のＲＯＭ１２２には、装置全体の動作を制御するファームウェア１３０やＸＭＬ文書の解析を行なうＸＭＬパーサ１３１などが記憶されている。また、ＬＡＮ１３５には、汎用のコンピュータとしてのファイルサーバ１６０が接続されており、ファイルサーバ１６０の図示しないハードディスクに記憶された情報をＬＡＮ１３５上で共有できるようになっている。
【００４５】
次に、こうして構成されたイメージスキャナ１２０の動作、特に、イメージスキャナ１２０の処理内容をカスタマイズする際の動作について説明する。第２実施例のイメージスキャナ１２０では、第１実施例のプリントサーバ２０と同様に、図２に例示した処理ルール設定ファイル受信処理を所定のタイミングで実行する。即ち、イメージスキャナ１２０の処理ルールが設定された処理ルール設定ファイルをファイルサーバ１６０からダウンロードし（ステップＳ１００）、ダウンロードした処理ルール設定ファイルをＸＭＬパーサ１３１を用いて解析すると共に解析結果をＲＡＭ１２３に保存する（ステップＳ１１０，Ｓ１２０）。図８は第２実施例の処理ルール設定ファイルの記述例を示す説明図であり、図９は図８に例示した処理ルール設定ファイルの解析結果としてのＤＯＭツリーを概念的に示す説明図である。処理ルール設定ファイルは、第１実施例と同様に、マークアップ言語としてのＸＭＬを用いて記述されたＸＭＬ文書であり、ＸＭＬ文書における「要素」や「文字列データ」，「属性」を用いてイメージスキャナ１２０の処理ルールが記述されている。処理ルールの具体的な記述内容については後述する。
【００４６】
次に、こうした処理ルール設定ファイルの解析結果に基づくイメージスキャナ１２０の動作について説明する。図１０は、イメージスキャナ１２０のＣＰＵ１２１によりファームウェア１３０を用いて実行されるサーバスキャン時処理の一例を示す説明図である。この処理は、イメージスキャナ１２０の図示しない操作パネルなどを介してサーバスキャンの指示がなされたときに実行される。サーバスキャン時処理では、まず、図示するように、ＲＡＭ１２３に記憶されている処理ルール設定ファイルの解析結果（ＤＯＭツリー）を読み込み（ステップＳ１２００）、読み込んだ解析結果に基づいて、セットされた原稿をスキャンして画像データとして取り込むと共にこの画像データを所定の保存先に保存するサーバスキャン処理を実行して（ステップＳ１２１０）、処理を終了する。処理ルール設定ファイルの解析結果に基づくサーバスキャン処理は、読み込んだＤＯＭツリーの根の部分に相当するルート要素から左方向の子ノードを優先して順に探索（深さ優先探索）して参照し、参照した各ノードの属性や内容（文字列データ）に応じた処理内容を実行することにより行なわれる。ここで、図８に例示した処理ルール設定ファイルに記述されている処理ルールの内容を具体例として、処理ルール設定ファイルの解析結果に基づくサーバスキャン処理について、図９に例示したＤＯＭツリーを用いて説明する。
【００４７】
まず、図９に例示したＤＯＭツリーのルート要素である要素「処理ルール」（Ｎ１００）の子ノードのうち一番左側の要素「データ転送先」（Ｎ１０１）を参照し、その子ノードである文字列データ「￥￥ＳｅｒｖｅｒＡ￥その他￥」（Ｎ１０２）を参照する。ここで、イメージスキャナ１２０では、要素「データ転送先」は、その内容（文字列データ）をサーバスキャンにおける画像データの転送先（保存先）として設定する処理内容を定める要素であると予め定められている。従って、ここでは、画像データの転送先として「￥￥ＳｅｒｖｅｒＡ￥その他￥」を設定することになる。
【００４８】
次に、要素「データ転送先」（Ｎ１０１）の右隣の要素「条件処理」（Ｎ１０３）を参照する。要素「条件処理」は、処理ルールにおける条件を定める要素であり、その要素の属性が条件式であると予め定められている。ここでは、要素「条件処理」（Ｎ１０３）の属性「ＨｅａｄＯＣＲ＝“見積書”」（Ｎ１０４）が条件式となる。ここで、「ＨｅａｄＯＣＲ」は、処理ルールの中で使用可能な変数として予め定められており、原稿の所定のヘッダ領域を仮スキャンした画像データから識別される文字列を示す。
【００４９】
そして、条件式（ＨｅａｄＯＣＲ＝“見積書”）が成立するときには、属性（Ｎ１０４）の右隣の要素「データ転送先」（Ｎ１０５）を参照する。前述したように、要素「データ転送先」は、その内容を画像データの転送先として設定する処理内容を定める要素であり、ここでは文字列データ「￥￥ＳｅｒｖｅｒＡ￥見積書￥」（Ｎ１０６）を画像データの転送先として設定する。
【００５０】
次に、要素「条件処理」（Ｎ１０３）の右隣の要素「条件処理」（Ｎ１０７）を参照し、属性（Ｎ１０８）である条件式（ＨｅａｄＯＣＲ＝“納品書”）が成立するときには、属性（Ｎ１０８）の右隣の要素「データ転送先」（Ｎ１０９）を参照し、その内容である文字列データ「￥￥ＳｅｒｖｅｒＡ￥納品書￥」（Ｎ１１０）を画像データの転送先として設定する。このように、ノード（Ｎ１００）〜（Ｎ１１０）において、「データ転送先を「￥￥ＳｅｒｖｅｒＡ￥その他￥」に設定し、原稿のヘッダ領域の画像データに“見積書”が識別されるときにはデータ転送先を「￥￥ＳｅｒｖｅｒＡ￥見積書￥」に設定（変更）し、原稿のヘッダ領域の画像データに“納品書”が識別されるときにはデータ転送先を「￥￥ＳｅｒｖｅｒＡ￥納品書￥」に設定（変更）する」という処理ルールが記述されていることになる。
【００５１】
このように、ＤＯＭツリーのルート要素から左方向の子ノードを優先して順に探索して参照し、条件が定められた要素（要素「条件処理」）や処理内容が定められた要素（要素「データ転送先」）の内容に応じて各処理を実行し、セットされた原稿をスキャンして画像データとして取り込むと共にこの画像データを設定されたデータ転送先に保存するのである。図１１は、こうした具体例の処理ルールに基づくサーバスキャン処理を、フローチャートとして示した説明図である。即ち、データ転送先に「￥￥ＳｅｒｖｅｒＡ￥その他￥」を設定し（ステップＳ１３００）、原稿の所定のヘッダ領域を仮スキャンして文字列を識別すると共に（ステップＳ１３１０〜Ｓ１３２０）、識別された文字列が「見積書」のときにはデータ転送先を「￥￥ＳｅｒｖｅｒＡ￥見積書￥」に変更し（ステップＳ１３３０）、識別された文字列が「納品書」のときにはデータ転送先を「￥￥ＳｅｒｖｅｒＡ￥納品書￥」に変更する（ステップＳ１３４０）。そして、原稿をスキャンして画像データとして取り込むと共に設定されているデータ転送先に画像データを保存して（ステップＳ１３５０，Ｓ１３６０）、処理を終了する。このように、処理ルール設定ファイルを用いることにより、イメージスキャナ１２０のサーバスキャン処理を、図１１のフローチャートに示した処理となるようにカスタマイズすることができるのである。
【００５２】
以上説明した第２実施例のイメージスキャナ１２０によれば、ＸＭＬを用いて処理ルールが記述された処理ルール設定ファイルをファイルサーバ１６０からダウンロードして解析すると共に解析結果（ＤＯＭツリー）をＲＡＭ１２３に保存し、この保存した解析結果に基づいてサーバスキャン処理を実行することができる。即ち、処理ルール設定ファイルに記述された処理ルールに従ってサーバスキャン処理を実行するから、ユーザは、所望の処理ルールを記述した処理ルール設定ファイルをファイルサーバ１６０などに用意することによりイメージスキャナ１２０の処理内容をより容易にカスタマイズすることができる。また、処理ルール設定ファイルでは、条件が定められた要素（要素「条件処理」）や処理内容が定められた要素（要素「データ転送先」など）を階層構造（木構造）を用いて記述することにより処理ルールを設定するから、専用画面を用いて処理ルールを設定する場合などと比較して、複雑な条件を設定したり処理内容の実行順序を設定したりすることができる。即ち、より柔軟に処理内容をカスタマイズすることができる。
【００５３】
ここで、第２実施例のイメージスキャナ１２０では、ＲＡＭ１２３が情報記憶手段に相当し、処理ルール設定ファイルが構造化文書に相当し、ステップＳ１００の処理を実行するＣＰＵ１２１やファームウェア１３０が文書取得手段に相当し、ステップＳ１１０，Ｓ１２０の処理を実行するＣＰＵ１２１やファームウェア１３０，ＸＭＬパーサ１３１が文書解析手段に相当し、図１０に例示したサーバスキャン時処理を実行するＣＰＵ１２１やファームウェア１３０が動作制御手段に相当する。また、ファームウェア１３０やＸＭＬパーサ１３１が本発明の動作制御用プログラムに相当する。
【００５４】
第２実施例のイメージスキャナ１２０では、処理ルール設定ファイルは、ＸＭＬを用いて記述されたＸＭＬ文書としたが、条件を定める要素と処理内容を定める要素とを用いて処理ルールが設定されていればよく、その他の言語を用いても構わない。
【００５５】
第２実施例のイメージスキャナ１２０では、処理ルール設定ファイルをファイルサーバ１６０からダウンロードするものとしたが処理ルール設定ファイルを取得することができればよく、必ずしもＬＡＮ１３５に接続されたファイルサーバ１６０などのコンピュータからダウンロードする必要はない。また、処理ルール設定ファイルの解析結果をＲＡＭ１２３に保存するものとしたが、保存先は問わず、例えば、ＥＥＰＲＯＭ１２４などに保存するものとしてもよい。さらに、処理ルール設定ファイル自体をＲＡＭ１２３やＥＥＰＲＯＭ１２４などに保存するものとし、サーバスキャン時処理を実行する際に、この処理ルール設定ファイルを解析して用いるものとしても差し支えない。
【００５６】
第２実施例のイメージスキャナ１２０では、処理ルール設定ファイルの解析結果をＤＯＭツリーとして保存するものとしたが、イメージスキャナ１２０のファームウェア１３０により処理ルールを解釈することができればよいから、ＤＯＭツリー以外の形式で保存するものとしてもよい。
【００５７】
第２実施例のイメージスキャナ１２０では、スキャンして取り込んだ画像データを所定の保存先に保存するサーバスキャン処理において処理ルール設定ファイルの解析結果に基づく処理を行なうものとしたが、イメージスキャナ１２０の処理であればよく、サーバスキャン処理以外のその他の処理を実行する際に、処理ルール設定ファイルの解析結果に基づく処理を行なうものとしてもよい。
【００５８】
第２実施例のイメージスキャナ１２０では、原稿のヘッダ領域の画像データに“見積書”や“納品書”が識別される条件などを例示したが、処理ルールにおける条件として、その他の各種の条件を用いても構わないのは勿論である。
【００５９】
第２実施例のイメージスキャナ１２０では、画像データの転送先を設定する処理内容を例示したが、処理ルールにおける処理内容として、その他の各種の処理内容を用いても構わないのは勿論である。
【００６０】
第２実施例のイメージスキャナ１２０では、図８の処理ルール設定ファイルを具体例として説明したが、各要素の名称や意味がこの具体例に限られないのは勿論であり、例えば、要素「条件処理」以外の要素を条件を定める要素として用いても構わない。
【００６１】
第２実施例では、処理ルール設定ファイルの解析結果に基づいて動作する本発明の内容をイメージスキャナ１２０として説明したが、こうしたネットワーク機器の制御方法の形態としてもよい。
【実施例３】
【００６２】
次に、第３実施例のプロジェクタ２２０について説明する。図１２は、本発明の第３実施例としてのネットワーク機器として機能するプロジェクタ２２０を含むシステムの構成の概略を示す構成図である。プロジェクタ２２０は、図示するように、装置全体を制御するＣＰＵ２２１と、各種プログラムなどを記憶するＲＯＭ２２２と、データを一時的に記憶するＲＡＭ２２３と、データを不揮発的に記憶するＥＥＰＲＯＭ２２４と、プロジェクタ機能を実現するプロジェクタエンジン２２６とを備え、ＬＡＮ側インタフェース２２５を介してＬＡＮ２３５に接続されており、クライアント端末２５０などからの要求に伴って画像をスクリーンなどに投影する液晶プロジェクタとして機能する。プロジェクタ２２０のＲＯＭ２２２には、装置全体の動作を制御するファームウェア２３０やＸＭＬ文書の解析を行なうＸＭＬパーサ２３１などが記憶されている。また、ＬＡＮ２３５には、汎用のコンピュータとしてのファイルサーバ２６０が接続されており、ファイルサーバ２６０の図示しないハードディスクに記憶された情報をＬＡＮ２３５上で共有できるようになっている。
【００６３】
次に、こうして構成されたプロジェクタ２２０の動作、特に、プロジェクタ２２０の処理内容をカスタマイズする際の動作について説明する。第３実施例のプロジェクタ２２０では、第１実施例のプリントサーバ２０や第２実施例のイメージスキャナ１２０と同様に、図２に例示した処理ルール設定ファイル受信処理を所定のタイミングで実行する。即ち、プロジェクタ２２０の処理ルールが設定された処理ルール設定ファイルをファイルサーバ２６０からダウンロードし（ステップＳ１００）、ダウンロードした処理ルール設定ファイルをＸＭＬパーサ２３１を用いて解析すると共に解析結果をＲＡＭ２２３に保存する（ステップＳ１１０，Ｓ１２０）。図１３は第３実施例の処理ルール設定ファイルの記述例を示す説明図であり、図１４は図１３に例示した処理ルール設定ファイルの解析結果としてのＤＯＭツリーを概念的に示す説明図である。処理ルール設定ファイルは、第１実施例や第２実施例と同様に、マークアップ言語としてのＸＭＬを用いて記述されたＸＭＬ文書であり、ＸＭＬ文書における「要素」や「文字列データ」，「属性」を用いてプロジェクタ２２０の処理ルールが記述されている。処理ルールの具体的な記述内容については後述する。
【００６４】
次に、こうした処理ルール設定ファイルの解析結果に基づくプロジェクタ２２０の動作について説明する。図１５は、プロジェクタ２２０のＣＰＵ２２１によりファームウェア２３０を用いて実行される画像再生時処理の一例を示す説明図である。この処理は、クライアント端末２５０などから画像再生の指示がなされたときに実行される。画像再生時処理では、まず、図示するように、ＲＡＭ２２３に記憶されている処理ルール設定ファイルの解析結果（ＤＯＭツリー）を読み込み（ステップＳ２２００）、読み込んだ解析結果に基づいて、指示された画像の再生（スクリーンへの投影）を行なう画像再生処理を実行して（ステップＳ２２１０）、処理を終了する。処理ルール設定ファイルの解析結果に基づく画像再生処理は、読み込んだＤＯＭツリーの根の部分に相当するルート要素から左方向の子ノードを優先して順に探索（深さ優先探索）して参照し、参照した各ノードの属性や内容（文字列データ）に応じた処理内容を実行することにより行なわれる。ここで、図１３に例示した処理ルール設定ファイルに記述されている処理ルールの内容を具体例として、処理ルール設定ファイルの解析結果に基づく画像再生処理について、図１４に例示したＤＯＭツリーを用いて説明する。
【００６５】
まず、図１４に例示したＤＯＭツリーのルート要素である要素「処理ルール」（Ｎ２００）の子ノードのうち左側の要素「条件処理」（Ｎ２０１）を参照する。要素「条件処理」は、処理ルールにおける条件を定める要素であり、その要素の属性が条件式であると予め定められている。ここでは、要素「条件処理」（Ｎ２０１）の属性「ＤｅｖｉｃｅＳｅｇ＝ＣｌｉｅｎｔＳｅｇ」（Ｎ２０２）が条件式となる。ここで、「ＤｅｖｉｃｅＳｅｇ」や「ＣｌｉｅｎｔＳｅｇ」は、処理ルールの中で使用可能な変数として予め定められており、「ＤｅｖｉｃｅＳｅｇ」はプロジェクタ２２０のネットワークアドレスを示し「ＣｌｉｅｎｔＳｅｇ」は画像再生の指示元（クライアント端末２５０など）のネットワークアドレスを示す。
【００６６】
そして、条件式（ＤｅｖｉｃｅＳｅｇ＝ＣｌｉｅｎｔＳｅｇ）が成立するときには、属性（Ｎ２０２）の右隣の要素「背景データ」（Ｎ２０４）を参照する。さらに、要素「背景データ」（Ｎ２０４）の子ノードのうち一番左側の要素「動作」（Ｎ２０５）を参照し、その子ノードである文字列データ「挿入」（Ｎ２０６）を参照する。同様に、要素「場所」（Ｎ２０７）と文字列データ「右下」（Ｎ２０８），要素「データ」（Ｎ２０９）と文字列データ「＠ログオンユーザ名」（Ｎ２１０）とを順に参照する。ここで、要素「背景データ」は、子ノードである要素「動作」「場所」「データ」の内容（文字列データ）に応じて再生する画像の背景データの更新を行なう処理内容を定める要素として予め定められている。従って、ここでは、背景データの右下に「＠ログオンユーザ名」を追加する処理を実行することになる。なお「＠ログオンユーザ名」は、処理ルールの中で使用可能な変数として予め定められており、画像再生の指示元のログオンユーザ名を示す。
【００６７】
そして、要素「条件処理」（Ｎ２０１）の右隣の要素「条件処理」（Ｎ２１１）を参照し、属性（Ｎ２１２）である条件式（ＤｅｖｉｃｅＳｅｇ≠ＣｌｉｅｎｔＳｅｇ）が成立するときには、属性（Ｎ２１２）の右隣の要素「エラー」（Ｎ２１３）を参照し、子ノードである文字列データ「ｅ００１」（Ｎ２１４）を参照する。ここで、要素「エラー」は、その内容（文字列データ）をエラーコードとするエラー処理を定める要素として予め定められている。従って、ここでは、エラーコード「ｅ００１」のエラー処理を実行することになる。このように、ノード（Ｎ２００）〜（Ｎ２１４）において、「プロジェクタ２２０のネットワークアドレスと画像再生の指示元のネットワークアドレスとが一致するときには、画像再生の指示元のログオンユーザ名を背景データの右下に追加し、プロジェクタ２２０のネットワークアドレスと画像再生の指示元のネットワークアドレスとが異なるときには、エラーコード「ｅ００１」のエラー処理を実行する」という処理ルールが記述されていることになる。
【００６８】
このように、ＤＯＭツリーのルート要素から左方向の子ノードを優先して順に探索して参照し、条件が定められた要素（要素「条件処理」）や処理内容が定められた要素（要素「背景データ」「エラー」）の内容に応じて各処理を実行し、指示された画像の再生を行なうのである。図１６は、こうした具体例の処理ルールに基づく画像再生処理を、フローチャートとして示した説明図である。即ち、画像再生の指示元（クライアント端末２５０）のネットワークアドレスを取得してプロジェクタ２２０のネットワークアドレスと比較し（ステップＳ２３００，Ｓ２３１０）、これらが一致しないときにはエラーコード「ｅ００１」のエラー処理を実行して（ステップＳ２３２０）、処理を終了する。一方、指示元のネットワークアドレスとプロジェクタ２２０のネットワークアドレスとが一致する場合には、画像再生の指示元のログオンユーザ名を検索すると共にこのログオンユーザ名を背景データの右下に追加して画像を再生し（ステップＳ２３３０〜Ｓ２３５０）、処理を終了する。このように、処理ルール設定ファイルを用いることにより、プロジェクタ２２０の画像再生処理を、図１６のフローチャートに示した処理となるようにカスタマイズすることができるのである。
【００６９】
以上説明した第３実施例のプロジェクタ２２０によれば、ＸＭＬを用いて処理ルールが記述された処理ルール設定ファイルをファイルサーバ２６０からダウンロードして解析すると共に解析結果（ＤＯＭツリー）をＲＡＭ２２３に保存し、この保存した解析結果に基づいて画像再生処理を実行することができる。即ち、処理ルール設定ファイルに記述された処理ルールに従って画像再生処理を実行するから、ユーザは、所望の処理ルールを記述した処理ルール設定ファイルをファイルサーバ２６０などに用意することによりプロジェクタ２２０の処理内容をより容易にカスタマイズすることができる。また、処理ルール設定ファイルでは、条件が定められた要素（要素「条件処理」）や処理内容が定められた要素（要素「背景データ」など）を階層構造（木構造）を用いて記述することにより処理ルールを設定するから、専用画面を用いて処理ルールを設定する場合などと比較して、複雑な条件を設定したり処理内容の実行順序を設定したりすることができる。即ち、より柔軟に処理内容をカスタマイズすることができる。
【００７０】
ここで、第３実施例のプロジェクタ２２０では、ＲＡＭ２２３が情報記憶手段に相当し、処理ルール設定ファイルが構造化文書に相当し、ステップＳ１００の処理を実行するＣＰＵ２２１やファームウェア２３０が文書取得手段に相当し、ステップＳ１１０，Ｓ１２０の処理を実行するＣＰＵ２２１やファームウェア２３０，ＸＭＬパーサ２３１が文書解析手段に相当し、図１５に例示した画像再生時処理を実行するＣＰＵ２２１やファームウェア２３０が動作制御手段に相当する。また、ファームウェア２３０やＸＭＬパーサ２３１が本発明の動作制御用プログラムに相当する。
【００７１】
第３実施例のプロジェクタ２２０では、処理ルール設定ファイルは、ＸＭＬを用いて記述されたＸＭＬ文書としたが、条件を定める要素と処理内容を定める要素とを用いて処理ルールが設定されていればよく、その他の言語を用いても構わない。
【００７２】
第３実施例のプロジェクタ２２０では、処理ルール設定ファイルをファイルサーバ２６０からダウンロードするものとしたが、処理ルール設定ファイルを取得することができればよく、必ずしもＬＡＮ２３５に接続されたファイルサーバ２６０などのコンピュータからダウンロードする必要はない。また、処理ルール設定ファイルの解析結果をＲＡＭ２２３に保存するものとしたが、保存先は問わず、例えば、ＥＥＰＲＯＭ２２４などに保存するものとしてもよい。さらに、処理ルール設定ファイル自体をＲＡＭ２２３やＥＥＰＲＯＭ２２４などに保存するものとし、画像再生時処理を実行する際に、この処理ルール設定ファイルを解析して用いるものとしても差し支えない。
【００７３】
第３実施例のプロジェクタ２２０では、処理ルール設定ファイルの解析結果をＤＯＭツリーとして保存するものとしたが、プロジェクタ２２０のファームウェア２３０により処理ルールを解釈することができればよいから、ＤＯＭツリー以外の形式で保存するものとしてもよい。
【００７４】
第３実施例のプロジェクタ２２０では、指示された画像の再生（スクリーンへの投影）を行なう画像再生処理において処理ルール設定ファイルの解析結果に基づく処理を行なうものとしたが、プロジェクタ２２０の処理であればよく、画像再生処理以外のその他の処理を実行する際に、処理ルール設定ファイルの解析結果に基づく処理を行なうものとしてもよい。
【００７５】
第３実施例のプロジェクタ２２０では、指示元のネットワークアドレスとプロジェクタ２２０のネットワークアドレスとが一致する条件やこれらが異なる条件を処理ルールにおける条件として例示したが、ネットワークアドレス以外のネットワーク識別情報（例えば、ドメイン名など）を用いても構わない。また、処理ルールにおける条件として、その他の各種の条件を用いても構わないのは勿論である。
【００７６】
第３実施例のプロジェクタ２２０では、処理ルールにおける処理内容として、再生する画像の背景データの更新を行なう処理やエラー処理などを例示したが、その他の各種の処理内容を用いても構わないのは勿論である。
【００７７】
第３実施例のプロジェクタ２２０では、図１３の処理ルール設定ファイルを具体例として説明したが、各要素の名称や意味がこの具体例に限られないのは勿論であり、例えば、要素「条件処理」以外の要素を条件を定める要素として用いても構わない。
【００７８】
第３実施例では、処理ルール設定ファイルの解析結果に基づいて動作する本発明の内容をプロジェクタ２２０として説明したが、こうしたネットワーク機器の制御方法の形態としてもよい。
【００７９】
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において、種々なる形態で実施し得ることは勿論である。
【図面の簡単な説明】
【００８０】
【図１】第１実施例のプリントサーバ２０を含むシステム構成を示す構成図。
【図２】処理ルール設定ファイル受信処理の一例を示すフローチャート。
【図３】第１実施例の処理ルール設定ファイルの記述例を示す説明図。
【図４】第１実施例のＤＯＭツリーを示す説明図。
【図５】印刷データ受信時処理の一例を示すフローチャート。
【図６】カスタマイズされたスプール処理の一例を示すフローチャート。
【図７】第２実施例のイメージスキャナ１２０を含むシステム構成を示す構成図。
【図８】第２実施例の処理ルール設定ファイルの記述例を示す説明図。
【図９】第２実施例のＤＯＭツリーを示す説明図。
【図１０】サーバスキャン時処理の一例を示すフローチャート。
【図１１】カスタマイズされたサーバスキャン処理の一例を示すフローチャート。
【図１２】第３実施例のプロジェクタ２２０を含むシステム構成を示す構成図。
【図１３】第３実施例の処理ルール設定ファイルの記述例を示す説明図。
【図１４】第３実施例のＤＯＭツリーを示す説明図。
【図１５】画像再生時処理の一例を示すフローチャート。
【図１６】カスタマイズされた画像再生処理の一例を示すフローチャート。
【符号の説明】
【００８１】
２０  プリントサーバ、２１，１２１，２２１  ＣＰＵ、２２，１２２，２２２  ＲＯＭ、２３，１２３，２２３  ＲＡＭ、２４，１２４，２２４  ＥＥＰＲＯＭ、２５，１２５，２２５  ＬＡＮ側インタフェース、２７  プリンタ側インタフェース、３０，１３０，２３０  ファームウェア、３１，１３１，２３１  ＸＭＬパーサ、３５，１３５，２３５  ＬＡＮ、４０  プリンタ、５０，２５０  クライアント端末、６０，１６０，２６０  ファイルサーバ、１２０  イメージスキャナ、１２６  スキャナエンジン、２２０  プロジェクタ、２２６  プロジェクタエンジン。
【図１】
2006053735.tif 000003
【図２】
2006053735.tif 000004
【図３】
2006053735.tif 000005
【図４】
2006053735.tif 000006
【図５】
2006053735.tif 000007
【図６】
2006053735.tif 000008
【図７】
2006053735.tif 000009
【図８】
2006053735.tif 000010
【図９】
2006053735.tif 000011
【図１０】
2006053735.tif 000012
【図１１】
2006053735.tif 000013
【図１２】
2006053735.tif 000014
【図１３】
2006053735.tif 000015
【図１４】
2006053735.tif 000016
【図１５】
2006053735.tif 000017
【図１６】
2006053735.tif 000018