(57)【要約】【課題】ＨＴＭＬ等で記述された構造化文書を表示する文書表示装置において、安全性および利便性を向上させる。【解決手段】ウェブサーバ２０と、このウェブサーバ２０から文書ファイルを取得して表示するウェブブラウザ１０を備え、このウェブブラウザ１０は、ローカルホストのウェブサーバ２０または外部装置のウェブサーバに文書ファイルの取得要求を送信し、この取得要求に対する応答を受信する通信部１１と、受信された応答に含まれる文書ファイルに記述されているスクリプトを実行するインタープリタ１４と、応答の送信元のサーバを特定し、特定されたサーバに応じてスクリプトの実行を制御するブラウザ制御部１６とを備える。そして、応答の送信元が外部装置のサーバである場合、ブラウザ制御部１６は、スクリプトの実行を制限する。【選択図】図３
2008186160.tif 000002
【特許請求の範囲】
【請求項１】
文書ファイルを提供するサーバと、
前記サーバから前記文書ファイルを取得して表示装置に表示させるブラウザを備え、
前記ブラウザは、
装置内の前記サーバまたは外部装置のサーバに前記文書ファイルの取得要求を送信し、当該取得要求に対する応答を受信する通信手段と、
前記通信手段により受信された前記応答に含まれる前記文書ファイルを解析して当該文書ファイルに記述されているスクリプトを抽出し実行するスクリプト実行手段と、
前記取得要求または前記通信手段により受信された前記応答に基づいて当該応答の送信元のサーバを特定し、特定された当該サーバに応じて前記スクリプト実行手段による前記スクリプトの実行を制御する制御手段と
を備えることを特徴とする文書表示装置。
【請求項２】
前記制御手段は、前記応答の送信元が装置内の前記サーバか前記外部装置のサーバかを識別し、当該応答の送信元が当該外部装置のサーバである場合は、前記スクリプト実行手段による前記スクリプトの実行を制限することを特徴とする請求項１に記載の文書表示装置。
【請求項３】
前記制御手段は、前記取得要求のヘッダまたは前記応答のヘッダに含まれる情報であってサーバを特定する識別情報のリストを有し、前記文書ファイルの取得要求の送信先または応答の送信元であるサーバの識別情報が当該リストに登録されていない場合は、前記スクリプト実行手段による前記スクリプトの実行を制限することを特徴とする請求項１に記載の文書表示装置。
【請求項４】
前記制御手段は、前記スクリプトの実行制限として、前記スクリプトにより要求されるデータの送信を行わないことを特徴とする請求項１に記載の文書表示装置。
【請求項５】
前記制御手段は、前記スクリプトの実行制限として、取得した前記文書ファイルから外部参照されているスクリプトの参照または実行を行わないことを特徴とする請求項１に記載の文書表示装置。
【請求項６】
前記サーバは、
装置内の前記ブラウザまたは外部装置のブラウザから前記文書ファイルの取得要求を受信し、当該取得要求に対する応答を送信する通信手段と、
前記文書ファイルが保持される記憶装置から前記通信手段により受信された前記取得要求に対応する文書ファイルを取得する文書取得手段と、
前記応答または前記通信手段により受信された前記取得要求に基づいて当該応答の送信先であるブラウザを特定し、特定された当該ブラウザに応じて前記文書取得手段により取得された前記文書ファイルの記述を編集する編集手段と
を備えることを特徴とする請求項１に記載の文書表示装置。
【請求項７】
サーバに文書ファイルの取得要求を送信し、当該取得要求に対する応答を受信する通信手段と、
前記通信手段により受信された前記応答に含まれる前記文書ファイルを解析して表示装置に表示させる表示手段と、
前記通信手段により受信された前記応答に含まれる前記文書ファイルを解析して当該文書ファイルに記述されているスクリプトを抽出し実行するスクリプト実行手段と、
前記取得要求または前記通信手段により受信された前記応答に基づいて当該応答の送信元の前記サーバがローカルホストに存在するサーバか否かを識別し、当該ローカルホストに存在するサーバでない場合は、前記スクリプト実行手段による前記スクリプトの実行を制限する制御手段と
を備えることを特徴とする文書表示装置。
【請求項８】
前記制御手段は、前記取得要求のヘッダまたは前記応答のヘッダに含まれる情報であってサーバを特定する識別情報のリストを有し、前記文書ファイルの取得要求の送信先または応答の送信元であるサーバの識別情報が当該リストに登録されている場合は、当該サーバが前記ローカルホストに存在するサーバでない場合であっても、前記スクリプト実行手段による前記スクリプトの実行制限を解除することを特徴とする請求項７に記載の文書表示装置。
【請求項９】
コンピュータを、
文書ファイルを提供するサーバ手段と、
前記サーバ手段または外部装置のサーバに前記文書ファイルの取得要求を送信し、当該取得要求に対する応答を受信する通信手段と、
前記通信手段により受信された前記応答に含まれる前記文書ファイルを解析して表示装置に表示させる表示手段と、
前記通信手段により受信された前記応答に含まれる前記文書ファイルを解析して当該文書ファイルに記述されているスクリプトを抽出し実行するスクリプト実行手段と、
前記取得要求または前記通信手段により受信された前記応答に基づいて当該応答の送信元を識別し、識別された当該応答の送信元に応じて前記スクリプト実行手段による前記スクリプトの実行を制御する制御手段として機能させることを特徴とするプログラム。
【請求項１０】
前記制御手段の機能として、前記応答の送信元が前記サーバ手段か前記外部装置のサーバかを識別し、当該応答の送信元が当該外部装置のサーバである場合は、前記スクリプト実行手段による前記スクリプトの実行を制限する処理を前記コンピュータに実行させることを特徴とする請求項９に記載のプログラム。
【請求項１１】
前記制御手段の機能として、前記取得要求のヘッダまたは前記応答のヘッダに含まれる情報であってサーバを特定する識別情報のリストを参照し、前記文書ファイルの取得要求の送信先または応答の送信元であるサーバの識別情報が当該リストに登録されていない場合は、前記スクリプト実行手段による前記スクリプトの実行を制限する処理を前記コンピュータに実行させることを特徴とする請求項９に記載のプログラム。
【請求項１２】
コンピュータを、
サーバに文書ファイルの取得要求を送信し、当該取得要求に対する応答を受信する通信手段と、
前記通信手段により受信された前記応答に含まれる前記文書ファイルを解析して表示装置に表示させる表示手段と、
前記通信手段により受信された前記応答に含まれる前記文書ファイルを解析して当該文書ファイルに記述されているスクリプトを抽出し実行するスクリプト実行手段と、
前記取得要求または前記通信手段により受信された前記応答に基づいて当該応答の送信元の前記サーバがローカルホストに存在するサーバか否かを識別し、当該ローカルホストに存在するサーバでない場合は、前記スクリプト実行手段による前記スクリプトの実行を制限する制御手段として機能させることを特徴とするプログラム。
【請求項１３】
前記制御手段の機能として、前記取得要求のヘッダまたは前記応答のヘッダに含まれる情報であってサーバを特定する識別情報のリストを参照し、前記文書ファイルの取得要求の送信先または応答の送信元であるサーバの識別情報が当該リストに登録されている場合は、当該サーバが前記ローカルホストに存在するサーバでない場合であっても、前記スクリプト実行手段による前記スクリプトの実行制限を解除することを特徴とする請求項１２に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＨＴＭＬ（ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）等で記述された構造化文書を表示するブラウザ機能を有する文書表示装置に関する。
【背景技術】
【０００２】
いわゆるオフィスオートメーション（ＯＡ）機器や家庭用電化製品、携帯電話やＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔｓ）等の情報機器において、状態表示や各種の設定を行うための表示を、ウェブ（Ｗｅｂ）ブラウザを用いて行うものがある（例えば、特許文献１、２参照）。ウェブブラウザは、ＷＷＷ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）で用いられるＨＴＭＬ等のマークアップ言語で記述された構造化文書を表示する文書ブラウザである。
【０００３】
ウェブブラウザは、表示する文書に記述された内容に応じて、テキストやコマンド等の入力を受け付けたり、サーバへ要求を送信したりする機能を有する。そこで、ウェブブラウザのかかる機能を利用して、上記のような各種の機器において、ウェブブラウザで表示される画面により操作パネルを代替することが行われている。
【０００４】
また、この種の構造化文書には、ＪａｖａＳｃｒｉｐｔ（米国サン・マイクロシステムズ社の商標）に代表されるスクリプトを記述することができる。ウェブブラウザは、構造化文書を表示する際に、構造化文書に記述されているスクリプトを実行する。そのため、構造化文書にスクリプトを記述することにより、ウェブブラウザにて表示されるページに動的な機能を与えることができる。
【０００５】
【特許文献１】特開２００２−３１２２３１号公報
【特許文献２】特開２００２−３６６４１７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、ＨＴＭＬ等で記述された構造化文書を表示する文書表示装置において、安全性および利便性を向上させることを目的とする。
【課題を解決するための手段】
【０００７】
上記の目的を達成するため、本発明は次のような文書表示装置として実現される。この装置は、文書ファイルを提供するサーバと、このサーバから文書ファイルを取得して表示装置に表示させるブラウザを備え、このブラウザは、装置内のサーバまたは外部装置のサーバに文書ファイルの取得要求を送信し、この取得要求に対する応答を受信する通信手段と、この通信手段により受信された応答に含まれる文書ファイルを解析して文書ファイルに記述されているスクリプトを抽出し実行するスクリプト実行手段と、取得要求または通信手段により受信された応答に基づいて応答の送信元のサーバを特定し、特定されたサーバに応じてスクリプト実行手段によるスクリプトの実行を制御する制御手段とを備える。
【０００８】
ここで、より詳細には、制御手段は、応答の送信元が装置内のサーバか外部装置のサーバかを識別し、応答の送信元が外部装置のサーバである場合は、スクリプト実行手段によるスクリプトの実行を制限する。
また、制御手段は、取得要求のヘッダまたは応答のヘッダに含まれる情報であってサーバを特定する識別情報のリストを有し、文書ファイルの取得要求の送信先または応答の送信元であるサーバの識別情報がリストに登録されていない場合は、スクリプト実行手段によるスクリプトの実行を制限する。
【０００９】
さらに詳細には、制御手段は、スクリプトの実行制限として、スクリプトにより要求されるデータの送信を行わない。
また、制御手段は、スクリプトの実行制限として、取得した文書ファイルから外部参照されているスクリプトの参照または実行を行わない。
【００１０】
また好ましくは、この文書表示装置のサーバは、装置内のブラウザまたは外部装置のブラウザから文書ファイルの取得要求を受信し、この取得要求に対する応答を送信する通信手段と、文書ファイルが保持される記憶装置から通信手段により受信された取得要求に対応する文書ファイルを取得する文書取得手段と、応答または通信手段により受信された取得要求に基づいて応答の送信先であるブラウザを特定し、特定されたブラウザに応じて文書取得手段により取得された文書ファイルの記述を編集する編集手段とを備える。
【００１１】
また本発明の他の文書表示装置は、サーバに文書ファイルの取得要求を送信し、この取得要求に対する応答を受信する通信手段と、この通信手段により受信された応答に含まれる文書ファイルを解析して表示装置に表示させる表示手段と、通信手段により受信された応答に含まれる文書ファイルを解析して文書ファイルに記述されているスクリプトを抽出し実行するスクリプト実行手段と、取得要求または通信手段により受信された応答に基づいて応答の送信元のサーバがローカルホストに存在するサーバか否かを識別し、ローカルホストに存在するサーバでない場合は、スクリプト実行手段によるスクリプトの実行を制限する制御手段とを備える。
【００１２】
また、好ましくは、制御手段は、取得要求のヘッダまたは応答のヘッダに含まれる情報であってサーバを特定する識別情報のリストを有し、文書ファイルの取得要求の送信先または応答の送信元であるサーバの識別情報がリストに登録されている場合は、サーバがローカルホストに存在するサーバでない場合であっても、スクリプト実行手段によるスクリプトの実行制限を解除する。
【００１３】
また本発明は、コンピュータを、文書ファイルを提供するサーバ手段と、このサーバ手段または外部装置のサーバに文書ファイルの取得要求を送信し、この取得要求に対する応答を受信する通信手段と、この通信手段により受信された応答に含まれる文書ファイルを解析して表示装置に表示させる表示手段と、通信手段により受信された応答に含まれる文書ファイルを解析して文書ファイルに記述されているスクリプトを抽出し実行するスクリプト実行手段と、取得要求または通信手段により受信された応答に基づいて応答の送信元を識別し、識別された応答の送信元に応じてスクリプト実行手段によるスクリプトの実行を制御する制御手段として機能させることを特徴とするプログラムとしても実現される。
【００１４】
このプログラムは、より詳細には、制御手段の機能として、応答の送信元がサーバ手段か外部装置のサーバかを識別し、応答の送信元が外部装置のサーバである場合は、スクリプト実行手段によるスクリプトの実行を制限する処理をコンピュータに実行させる。
また、制御手段の機能として、取得要求のヘッダまたは応答のヘッダに含まれる情報であってサーバを特定する識別情報のリストを参照し、文書ファイルの取得要求の送信先または応答の送信元であるサーバの識別情報がリストに登録されていない場合は、スクリプト実行手段によるスクリプトの実行を制限する処理をコンピュータに実行させる。
【００１５】
さらにまた本発明は、コンピュータを、サーバに文書ファイルの取得要求を送信し、この取得要求に対する応答を受信する通信手段と、この通信手段により受信された応答に含まれる文書ファイルを解析して表示装置に表示させる表示手段と、通信手段により受信された応答に含まれる文書ファイルを解析して文書ファイルに記述されているスクリプトを抽出し実行するスクリプト実行手段と、取得要求または通信手段により受信された応答に基づいて応答の送信元のサーバがローカルホストに存在するサーバか否かを識別し、ローカルホストに存在するサーバでない場合は、スクリプト実行手段によるスクリプトの実行を制限する制御手段として機能させることを特徴とするプログラムとしても実現される。
【００１６】
このプログラムは、より詳細には、制御手段の機能として、取得要求のヘッダまたは応答のヘッダに含まれる情報であってサーバを特定する識別情報のリストを参照し、文書ファイルの取得要求の送信先または応答の送信元であるサーバの識別情報がリストに登録されている場合は、サーバがローカルホストに存在するサーバでない場合であっても、スクリプト実行手段によるスクリプトの実行制限を解除する。
【発明の効果】
【００１７】
請求項１に係る発明によれば、取得したＨＴＭＬ文書の送信元のサーバを識別してスクリプトの実行を制御し、スクリプトの実行における安全性を確保し、かつスクリプトの互換性を担保して利便性を高めることができる。
請求項２に係る発明によれば、装置内のサーバとブラウザとの組み合わせによって、装置の操作および情報表示を提供する装置において、そのような操作および情報表示に関してはスクリプトの機能を網羅的に活用した高度な操作および情報表示を提供する一方で、外部装置のサーバから取得したＨＴＭＬ文書に対してはスクリプトの実行を制限し、安全性を高めることができる。
請求項３に係る発明によれば、リストに登録されたサーバ以外のサーバから取得したＨＴＭＬ文書に対してはスクリプトの実行を制限し、安全性および利便性を高めることができる。
請求項４に係る発明によれば、スクリプトにより要求されるデータの送信を制限して安全性を高めることができる。
請求項５に係る発明によれば、文書ファイルから外部参照されているスクリプトの参照または実行を制限して安全性を高めることができる。
請求項６に係る発明によれば、ＨＴＭＬ文書の送信先のブラウザを識別してＨＴＭＬ文書を編集し、スクリプトの互換性を担保して利便性を高めることができる。
請求項７に係る発明によれば、取得したＨＴＭＬ文書の送信元のサーバがローカルホストに存在するサーバでない場合はスクリプトの実行を制限し、スクリプトの実行における安全性を確保し、かつスクリプトの互換性を担保して利便性を高めることができる。
請求項８に係る発明によれば、リストに登録された特定のサーバから取得したＨＴＭＬ文書に対してはスクリプトの実行制限を解除することで、より柔軟で利便性の高いシステムを構築できる。
請求項９に係る発明によれば、このプログラムを実装したコンピュータにおいて、取得したＨＴＭＬ文書の送信元のサーバを識別してスクリプトの実行を制御し、スクリプトの実行における安全性を確保し、かつスクリプトの互換性を担保して利便性を高めることができる。
請求項１０に係る発明によれば、このプログラムを実装したコンピュータにおいて、外部装置のサーバから取得したＨＴＭＬ文書に対してはスクリプトの実行を制限し、安全性および利便性を高めることができる。
請求項１１に係る発明によれば、このプログラムを実装したコンピュータにおいて、リストに登録されたサーバ以外のサーバから取得したＨＴＭＬ文書に対してはスクリプトの実行を制限し、安全性を高めることができる。
請求項１２に係る発明によれば、このプログラムを実装したコンピュータにおいて、取得したＨＴＭＬ文書の送信元のサーバがローカルホストに存在するサーバでない場合はスクリプトの実行を制限し、スクリプトの実行における安全性を確保し、かつスクリプトの互換性を担保して利便性を高めることができる。
請求項１３に係る発明によれば、このプログラムを実装したコンピュータにおいて、リストに登録された特定のサーバから取得したＨＴＭＬ文書に対してはスクリプトの実行制限を解除することで、より柔軟で利便性の高いシステムを構築できる。
【発明を実施するための最良の形態】
【００１８】
以下、添付図面を参照して、本発明を実施するための最良の形態（以下、実施形態）について詳細に説明する。
本実施形態の文書表示装置は、各種のＯＡ機器や家庭用電化製品、情報機器等に適用し得るものであるが、以下ではプリンタに適用した場合を例として説明する。なお、本実施形態の文書表示装置の処理対象となる文書の形態には、テキスト、イメージ、プログラム等の種々のデータが含まれる。
【００１９】
図１は、本実施形態が適用されるプリンタのハードウェア構成例を示す図である。
図１に示すプリンタ１００は、印刷出力を行うための印刷機構１１０と印刷機構１１０による印刷処理やその他プリンタ１００の動作を制御するための制御装置１２０とを備える。また、記憶手段である磁気ディスク装置１３０と、表示手段であるディスプレイ装置１４０と、入力手段であるタッチパネル１５０と、外部装置との通信手段であるネットワークインターフェイス１６０を備える。なお、特に図示しないが、プリンタ１００がスキャナ機能やファックス機能を備えたいわゆる複合機である場合は、画像を取り込むための機構や電話回線を通じて画像の送受信を行うための構成がさらに設けられる。
【００２０】
印刷機構１１０は、印刷対象である画像等を用紙上に形成して出力するための構成であり、印刷対象の画像等をトナー等の画像形成材によって用紙上に形成する画像形成手段と、用紙を搬送して画像形成後に排出する搬送手段とを備える。画像形成手段による画像形成の方式は、電子写真方式やインクジェット方式、静電誘導方式等、どのような方式であっても良い。
【００２１】
制御装置１２０は、例えばプログラム制御されたＣＰＵとＲＡＭ、ＲＯＭ等のメモリとで実現される。プログラムは例えば不揮発性のメモリであるＲＯＭにインストールされており、ＣＰＵがこのプログラムをＲＯＭから読み込んで実行することによりプリンタ１００の動作が制御される。この制御部１２０は、印刷機構１１０の動作を制御して印刷対象の印刷出力を実行させる他、磁気ディスク装置１３０に対するデータの書き込みや読み出し、ディスプレイ装置１４０への表示、タッチパネル１５０による操作の受け付け、ネットワークインターフェイス１６０を介して行う外部装置との間のデータ交換等の動作の制御を行う。
【００２２】
磁気ディスク装置１３０には、制御装置１２０がプリンタ１００の動作制御を行う際に用いられる各種の設定情報やテスト印刷用のパターン画像、ディスプレイ装置１４０に表示される画像等が保持されている。また、外部装置とネットワーク接続される場合に用いられるネットワーク設定の情報、ファックス機能において電話回線による接続を行う際に用いられる電話番号、印刷出力の実行枚数のカウンタ情報などの情報が適宜保持される。
【００２３】
ディスプレイ装置１４０は、例えば液晶ディスプレイ（ＬＣＤ）にて実現される。このディスプレイ装置１４０は、プリンタ１００の動作状態や印刷ジョブの条件、どの機能が使用可能かといった情報を表示して操作者に通知する。また、入力手段であるタッチパネル１５０と組み合わせて、コンソールとしても用いられる。
【００２４】
タッチパネル１５０は、ディスプレイ装置１４０の表示面に貼り付けられた状態で設置されている。このタッチパネル１５０では、操作者がパネル面に触れると、その座標を入力とみなし、ディスプレイ装置１４０に表示されている表示画像のどの部分が指示されたのかを判断し制御装置１２０へ通知する。ディスプレイ装置１４０の表示画像が切り替わることにより、タッチパネル１５０に対する操作が同じでも異なる入力として受け付けられる。なお、プリンタ１００の入力手段としては、入力キーを配した操作パネルを設け、タッチパネル１５０と併せて用いるようにしても良い。
【００２５】
ネットワークインターフェイス１６０は、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）やインターネット等のネットワークに接続し、外部装置から印刷要求や印刷対象のデータを受信する。また、遠隔からの保守作業において命令やデータを受信したり、収集したデータを送信したりする。さらに、プリンタ１００がスキャナ機能を有する場合は、取り込んだ画像のデータを外部装置に送信する。
【００２６】
図２は、本実施形態のプリンタ１００の機能構成を示す図である。
図２に示すように、本実施形態のプリンタ１００は、ウェブブラウザ１０と、ウェブサーバ２０とを備える。すなわち、装置内部にウェブブラウザとウェブサーバの両方の機能の実現手段を持つ。これらの機能は、例えば図１の制御装置１２０により実現される。すなわち上述したように、ＲＯＭ等の不揮発性メモリに保持されているプログラムにしたがってＣＰＵが処理を実行することにより実現される。
【００２７】
本実施形態のプリンタ１００の操作パネルの表示は、ウェブブラウザ１０によって行われる。ウェブブラウザ１０が、ウェブサーバ２０に要求を送信すると、ウェブサーバ２０はこれを受信し、ＨＴＭＬ文書を生成してウェブブラウザ１０に応答する。ウェブブラウザ１０はウェブサーバ２０から送信されたＨＴＭＬを操作パネルに表示する。ハードウェア構成としては、制御装置１２０、磁気ディスク装置１３０、ディスプレイ装置１４０およびタッチパネル１５０により文書表示装置が実現されることとなる。ＨＴＭＬはＪａｖａＳｃｒｉｐｔ等のスクリプトを含んでも良いし、ＣＳＳ（Ｃａｓｃａｄｉｎ  Ｓｔｙｌｅ  Ｓｈｅｅｔ）等のスタイルシートを含んでも良い。または、ＨＴＭＬの代わりにＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）やＸＨＴＭＬ（ＸＭＬ文法のＨＴＭＬ）であっても良い。
【００２８】
プリンタ１００の内部ブラウザであるウェブブラウザ１０は、磁気ディスク装置１３０から設定情報を読み出し、この情報にしたがって動作する。例えば、プリンタ１００の電源が投入されると、ウェブブラウザ１０は、取得した設定情報から電源投入後最初に表示するＨＴＭＬ文書のＵＲＬを得る。そしてウェブブラウザ１０は、ＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）プロトコルにしたがってウェブサーバ２０にＨＴＭＬ文書の取得要求（ウェブリクエスト）を送信し、その応答（ウェブレスポンス）としてウェブサーバ２０から送信されたＨＴＭＬ文書を受信してディスプレイ装置１４０に表示する。また、ウェブブラウザ１０は、タッチパネル１５０による入力を受け付け、表示された文書中のハイパーリンクが選択された場合に、そのハイパーリンクが示すＨＴＭＬ文書の取得要求をウェブサーバ２０へ送信する。また、ウェブブラウザ１０は、ＴＣＰ／ＩＰプロトコルにしたがい、ネットワークインターフェイス１６０を介して外部装置と通信する。そして、通信相手のウェブサーバ（ウェブサーバ２０または外部のウェブサーバ）によっては、取得したＨＴＭＬ文書の実行処理を適宜変更する。
【００２９】
プリンタ１００の内部サーバであるウェブサーバ２０は、ＴＣＰ／ＩＰプロトコルにしたがって、ＨＴＴＰによる命令やＨＴＭＬ文書の送受信を行う。そして、ウェブブラウザ１０からの要求に応じて、磁気ディスク装置１３０に保持されている入力画面のＨＴＭＬ文書の中から当該要求に対応するＨＴＭＬ文書を読み出し、ウェブブラウザ１０へ返送する。また、ウェブサーバ２０は、ＴＣＰ／ＩＰプロトコルにしたがい、ネットワークインターフェイス１６０を介して外部装置と通信する。そして、ＨＴＴＰによる要求の種類や要求の発行元であるウェブブラウザ（ウェブブラウザ１０または外部のウェブブラウザ）によっては、ＨＴＭＬ文書を編集して送信する。
【００３０】
図３は、ウェブブラウザ１０の詳細な機能構成を示す図である。
図３に示すように、ウェブブラウザ１０は、通信部１１と、パーズ部１２と、実行部１３と、インタープリタ１４と、描画部１５と、ブラウザ制御部１６とを備える。
通信部１１は、ＴＣＰ／ＩＰプロトコルにしたがってウェブサーバ（ウェブサーバ２０または外部のウェブサーバ）と通信する。通信部１１は、ＨＴＭＬ文書の取得要求を送信し、この取得要求に対する応答を受信するための通信手段である。
【００３１】
パーズ部１２は、通信部１１を介して取得したＨＴＭＬ文書を解析し、ＤＯＭ（Ｄｏｃｕｍｅｎｔ  Ｏｂｊｅｃｔ  Ｍｏｄｅｌ）を生成する。ＤＯＭとは、ＸＭＬ文書の内部情報（木構造を形成する）を操作するＡＰＩである。取得したＨＴＭＬ文書がＸＨＴＭＬによる文書である場合は、文書からそのままＤＯＭが生成される。一方、取得したＨＴＭＬ文書が通常の（ＳＧＭＬ文法の）ＨＴＭＬ文書である場合は、クローズタグの省略等がされている場合があるので、省略されたクローズタグを補完等の必要な補正を行ってからＤＯＭを生成する。
【００３２】
実行部１３は、パーズ部１２により生成されたＤＯＭに基づいて、ＨＴＭＬ文書の記述を解析し実行する。ＨＴＭＬ文書にＪａｖａＳｃｒｉｐｔ等のスクリプトが記述されている場合は、そのスクリプトをインタープリタ１４に渡す。その他の記述については、描画部１５に渡して描画させる。
インタープリタ１４は、実行部１３から受け取ったスクリプトを実行する。スクリプトの内容にしたがって、ＤＯＭを変更したり、通信部１１を介してウェブサーバ（ウェブサーバ２０または外部のウェブサーバ）と通信したりする。
描画部１５は、実行部１３から受け取ったＨＴＭＬ文書をレンダリングし、テキストや画像をディスプレイ装置１４０に表示する。
【００３３】
パーズ部１２、実行部１３およびインタープリタ１４は、ＨＴＭＬ文書に記述されたスクリプトを実行するためのスクリプト実行手段として機能する。また、パーズ部１２、実行部１３および描画部１５は、ＨＴＭＬ文書を表示するための表示手段として機能する。
【００３４】
ブラウザ制御部１６は、ＨＴＭＬ文書の取得要求または通信部１１を介して取得したＨＴＭＬ文書を含む応答から当該ＨＴＭＬ文書の送信元であるウェブサーバ（ウェブサーバ２０または外部のウェブサーバ）を特定する。そして、特定されたウェブサーバに応じて通信部１１およびパーズ部１２の処理を制御し、スクリプトの実行による通信を制限したり、ＨＴＭＬ文書の解析処理においてスクリプトを無視させたりする。このブラウザ制御部１６は、ＨＴＭＬ文書に記述されたスクリプトの実行を制御するための制御手段である。その制御の詳細な内容については後述する。
【００３５】
図４は、ウェブサーバ２０の詳細な機能構成を示す図である。
図４に示すように、ウェブサーバ２０は、通信部２１と、文書取得部２２と、編集部２３とを備える。
通信部２１は、ＴＣＰ／ＩＰプロトコルにしたがってウェブブラウザ（ウェブブラウザ１０または外部のウェブブラウザ）と通信する。通信部２１は、ＨＴＭＬ文書の取得要求を受信し、この取得要求に対する応答を送信するための通信手段である。
文書取得部２２は、通信部２１を介して受け付けた要求に応じて磁気ディスク装置１３０にアクセスし、要求において指定されたＨＴＭＬ文書を検索して取得する文書取得手段である。
【００３６】
編集部２３は、通信部２１を介して受け付けた要求から当該ＨＴＭＬ文書の送信先であるウェブブラウザ（ウェブブラウザ１０または外部のウェブブラウザ）を特定する。そして、特定されたウェブブラウザに応じてＨＴＭＬ文書を編集する。この編集部２３は、ＨＴＭＬ文書の送信先であるウェブブラウザに応じてＨＴＭＬ文書を編集する編集手段である。その編集の詳細な内容については後述する。
【００３７】
ところで、本実施形態では、ウェブブラウザ１０およびウェブサーバ２０とも外部装置に接続できることとした。そのため、ウェブブラウザ１０は、外部のウェブサーバから送信されたＨＴＭＬ文書を受信して実行する場合がある。同様に、ウェブサーバ２０は、外部のウェブブラウザ１０から要求を受け付けてＨＴＭＬ文書を送信する場合がある。
【００３８】
ウェブブラウザ１０が外部のウェブサーバから送信されたＨＴＭＬ文書を実行する場合、スクリプトを実行する上で安全性と互換性を考慮する必要がある。ＨＴＭＬ文書は、スクリプトを記載することにより、ウェブブラウザ１０で読み取られたときに動的な処理を実行させることができる。したがって、取得したＨＴＭＬ文書を無条件にそのまま実行すると、プリンタ１００にとって問題のある処理を実行する危険がある。例えば、障害発生の原因となる処理を行う、そのような障害発生の原因となるプログラムをダウンロードする、磁気ディスク装置１３０に保持されている利用者情報を許可なく送信したりするといった処理である。
【００３９】
近年では、ウェブブラウザを使ったユーザインターフェイス技術としてＡｊａｘ（Ａｓｙｎｃｈｒｏｎｏｕｓ  ＪａｖａＳｃｒｉｐｔ  ＋  ＸＭＬ）と呼ばれる技術が普及している。これは、ウェブブラウザに実装されているＪａｖａＳｃｒｉｐｔのＨＴＴＰ通信機能を使って、非同期的にウェブサーバとの間で通信を行い、画面全体のリフレッシュ（再描画）を伴わずに、動的に画面の書き換えを行う技術である。このＡｊａｘを用いれば、本実施形態でウェブブラウザ１０により表示される入力画面のような、ＨＴＭＬ文書に基づいて描画される画面の操作性が大幅に向上する。しかし、Ａｊａｘでは、ＪａｖａＳｃｒｉｐｔが自動的に実行されるために安全性の確保が困難である。
【００４０】
また、スクリプトで使用可能な命令は、ウェブブラウザの種類（メーカの別）によって異なっていることが多い。そのため、種々のウェブブラウザで実行できるように互換性を考慮して記述されていないスクリプトは、ウェブブラウザ１０が正しく実行できない可能性がある。
【００４１】
そこで、本実施形態のウェブブラウザ１０は、ブラウザ制御部１６の制御により、ＨＴＭＬ文書の送信元として特定されたウェブサーバに応じて、当該ＨＴＭＬ文書の実行処理を変更する。これにより、ＪａｖａＳｃｒｉｐｔの実行における安全性を確保し、かつＪａｖａＳｃｒｉｐｔの互換性を担保して利便性を高める。
【００４２】
一方、ウェブサーバ２０が外部のウェブブラウザに対してＨＴＭＬ文書を送信する場合、ウェブブラウザ１０が外部のウェブサーバと通信するときのような安全性の問題はないが、スクリプトの互換性については同様に考慮する必要がある。
【００４３】
そこで、本実施形態のウェブサーバ２０は、文書取得部２２により取得されたＨＴＭＬ文書を、編集部２３により当該ＨＴＭＬ文書の送信先として特定されたウェブブラウザに応じて編集し、互換性を高めて送信する。これにより、ＪａｖａＳｃｒｉｐｔの互換性を担保して利便性を高める。
【００４４】
なお、ウェブブラウザ１０とウェブサーバ２０は、共にプリンタ１００を構成する（ローカルホストに存在する）ことから、ＨＴＭＬ文書のやり取りにおいて安全性および互換性を考慮する必要はない。ウェブサーバ２０から送信されたＨＴＭＬ文書にスクリプトが記述されている場合、ウェブブラウザ１０はこのスクリプトを正しく実行して高度な機能や操作性を提供することができ、またウェブブラウザ１０がこのスクリプトを実行してもプリンタ１００にとって問題となる処理とならないことが保証されているものとする。
【００４５】
以下、ウェブブラウザ１０およびウェブサーバ２０の動作を説明する。
まず、ウェブブラウザ１０の動作について説明する。上述したように、ウェブブラウザ１０は、ＨＴＭＬ文書の送信元であるウェブサーバに応じて、ＨＴＭＬ文書に記述されたスクリプトの実行を制御する。スクリプトの実行を制御する手法としては、スクリプトを実行する処理そのものを変更する（実行しない、他の処理に切り替える等）手法とスクリプトの要求による通信を制御する（通信しない、要求内容を変更する等）手法とが考えられる。
【００４６】
図５は、スクリプトを実行する処理そのものを変更する手法を実施する場合のウェブブラウザ１０の動作を説明するフローチャートである。
図５に示すように、ウェブブラウザ１０の通信部１１がウェブサーバ（ウェブサーバ２０または外部のウェブサーバ）への要求に対する応答としてＨＴＭＬ文書を受信すると（ステップ５０１）、ブラウザ制御部１６がこの応答に基づいてＨＴＭＬ文書の送信元のウェブサーバを特定する（ステップ５０２）。
【００４７】
ここで、ウェブブラウザ１０にとって、ウェブサーバ２０は、プリンタ１００を構成する内部サーバであるという点で、他のウェブサーバとは異なる特別なサーバである。そこで、ブラウザ制御部１６は、ＨＴＭＬ文書の送信元のウェブサーバがウェブサーバ２０か外部のウェブサーバかを識別する。識別方法としては、例えば次の方法が考えられる。
（１）ＴＣＰ／ＩＰレベルでループバックアドレス（「１２７．０．０．１」）が用いられていれば、ＨＴＭＬ文書の送信元がウェブサーバ２０であると判定する。
（２）要求（ウェブリクエスト）の送信先のＵＲＬのホストとして「ｌｏｃａｌｈｏｓｔ」または「１２７．０．０．１」が利用されているならば、ＨＴＭＬ文書の送信元がウェブサーバ２０であると判定する。
（３）応答（ウェブレスポンス）のＨＴＴＰヘッダのサーバ情報（Ｓｅｒｖｅｒ）にウェブサーバ２０を示す識別子が記述されていれば、ＨＴＭＬ文書の送信元がウェブサーバ２０であると判定する。
【００４８】
上記の識別方法のうち、方法（１）は、ループバックアドレスを見るので、要求送信時および応答受信時に行うことができる。方法（２）は、要求の送信先ＵＲＬを見るので、要求送信時に行うことができる。方法（３）は、応答のＨＴＴＰヘッダを見るので、応答受信時に行うことができる。したがって、応答受信後に行われるステップ５０２の判定では、方法（１）または方法（３）が適用されることとなる。ただし、ウェブブラウザ１０の処理手順に応じて、適用可能ないずれの方法を用いても良い。例えば、予め要求送信時に方法（２）によってウェブサーバの識別を行っておき、ステップ５０２のタイミングで識別結果を確認しても良い。
【００４９】
図５のフローチャートに戻り、ＨＴＭＬ文書の送信元がウェブサーバ２０（内部サーバ）であると判定されたならば（ステップ５０３でＹｅｓ）、パーズ部１２が、ＨＴＭＬ文書に対して何ら変更を行うことなくＤＯＭを生成する（ステップ５０５）。一方、ＨＴＭＬ文書の送信元が外部のウェブサーバでないと判定されたならば（ステップ５０３でＮｏ）、パーズ部１２が、ブラウザ制御部１６の制御にしたがってスクリプトの実行を制限するようにＨＴＭＬ文書を書き換え（ステップ５０４）、ＤＯＭを生成する（ステップ５０５）。
【００５０】
この後、実行部１３が、パーズ部１２により生成されたＤＯＭにしたがってＨＴＭＬ文書を解析し、スクリプトをインタープリタ１４に渡して実行させ、その他の記述を描画部１５に渡してディスプレイ装置１４０に表示させる（ステップ５０６）。
【００５１】
図６は、スクリプトの要求による通信を制御する手法を実施する場合のウェブブラウザ１０の動作を説明するフローチャートである。
図６に示すように、ウェブブラウザ１０のインタープリタ１４がスクリプトを実行する際に、ブラウザ制御部１６は、かかるスクリプトの実行が要求の送信を伴うものか否かを判定する（ステップ６０１）。スクリプトがＪａｖａＳｃｒｉｐｔである場合、オブジェクトのクラスまたはメソッドが要求の送信を伴うか否か（ＸＭＬＨｔｔｐＲｅｑｕｅｓｔ．ｓｅｎｄ？）を判定することとなる。
【００５２】
スクリプトの実行が要求の送信を伴わない場合は（ステップ６０２でＮｏ）、インタープリタ１４がそのままオブジェクトを実行する（ステップ６０３）。一方、スクリプトの実行が要求の送信を伴う場合は（ステップ６０２でＹｅｓ）、次に、ブラウザ制御部１６が、この要求の送信先のウェブサーバ（ウェブサーバ２０または外部のウェブサーバ）を調べる。ウェブサーバの識別方法は、図５のステップ５０２において説明した識別方法（１）または（２）を用いることができる。
【００５３】
要求の送信先が外部のウェブサーバであると判定されたならば（ステップ６０４でＮｏ）、この要求の送信を行うことなく動作を終了する（オブジェクトは実行されない）。一方、要求の送信先がウェブサーバ２０（内部サーバ）であると判定されたならば（ステップ６０４でＹｅｓ）、この要求の送信を実行する（ステップ６０５）。
【００５４】
これらの動作で実施されるスクリプトの実行を制限する具体的な方法としては、例えば次の方法が考えられる。なお、ここではスクリプトとしてＪａｖａＳｃｒｉｐｔが用いられる場合を例として説明する。
（１）ＪａｖａＳｃｒｉｐｔの特定の実行のみを抑制する方法
・送信を伴うオブジェクトまたはメソッドを特定し、そのようなメソッドを実行しない。
・ＸＭＬＨｔｔｐＲｅｑｕｅｓｔの実行を切り替える。インタープリタ１４のＸＭＬＨｔｔｐＲｅｑｕｅｓｔにダミー動作モード属性を設ける。抑止条件に該当する場合（ＨＴＭＬ文書の送信元が外部のウェブサーバである場合）、ウェブブラウザ１０は、ＸＭＬＨｔｔｐＲｅｑｕｅｓｔのオブジェクトは生成しない（具体的には、ｃｒｅａｔｅＲｅｑｕｅｓｔ（）の戻り値をｎｕｌｌとする）。または、ＸＭＬＨｔｔｐＲｅｑｕｅｓｔのｓｅｎｄ（）メソッドで要求を送信しないようにする。
【００５５】
（２）送信を抑止する方法
・オペレーティングシステムのソケットや、インタープリタ１４内の低レベルな通信機構で、呼び出し元がＪａｖａＳｃｒｉｐｔ（またはその特定のオブジェクト）である場合、送信動作を行わないように制御する。
【００５６】
（３）ＪａｖａＳｃｒｉｐｔの実行を抑制する方法
・ＨＴＭＬ文書中の＜ｓｃｒｉｐｔ＞タグを無視する。また、＜ｓｃｒｉｐｔ＞タグのｔｙｐｅ属性が“ｔｅｘｔ／ｊａｖａｓｃｒｉｐｔ”の場合はタグを無視する。
・ＪａｖａＳｃｒｉｐｔがＨＴＭＬ文書から外部参照されている場合は、このＪａｖａＳｃｒｉｐｔを参照しない、または、参照しても実行しない。なお、参照時にＪａｖａＳｃｒｉｐｔと判断するには、ＨＴＴＰヘッダのＣｏｎｔｅｎｔ−Ｔｙｐｅヘッダがｔｅｘｔ／ｊａｖａｓｃｒｉｐｔであることにより判定する。
【００５７】
（４）要求を切り替える方法
・ＨＴＭＬ文書の取得要求の送信時に、送信先のサーバに応じて、ＪａｖａＳｃｒｉｐｔを含むＨＴＭＬ文書を要求するか否かを切り替える。
例）ＪａｖａＳｃｒｉｐｔを含むページの要求
ｈｔｔｐ：／／ｘｘｘ／ｓａｍｐｌｅ．ｈｔｍｌ？ｊｓ＝１
ＪａｖａＳｃｒｉｐｔを含まないページの要求
ｈｔｔｐ：／／ｘｘｘ／ｓａｍｐｌｅ．ｈｔｍｌ？ｊｓ＝０
【００５８】
（５）その他の方法
・ＨＴＭＬ文書からインクルードされている外部ファイルのうち、ＪａｖａＳｃｒｉｐｔ（ｔｙｐｅ属性の値が”ｔｅｘｔ／ｊａｖａｓｃｒｉｐｔ”であるもの）は読み出さない（スタイルシート“ｔｅｘｔ／ｃｓｓ”は読み出す）。
【００５９】
上記の方法のうち、方法（１）、（３）、（５）は、パーズ部１２によるＨＴＭＬ文書の解析の際に、該当する記述を書き換えることによって実現される。したがって、図５を参照して説明した手法で用いることができる。これに対し、方法（２）、（４）は、要求の送信時に通信部１１を制御することによって実現される。図６を参照して説明した手法で用いることができる。
【００６０】
以上の説明では、ブラウザ制御部１６はＨＴＭＬ文書の送信元や要求の送信先のウェブサーバがウェブサーバ２０か外部のウェブサーバかを識別するものとした。これは、ウェブサーバ２０が、プリンタ１００を構成（ローカルホストに存在）し、ＨＴＭＬ文書のやり取りにおいて安全性および互換性を考慮する必要がない特別なサーバだからである。ここで、外部のウェブサーバであっても、例えばプリンタ１００のメーカにより提供されており、安全性やスクリプトの互換性を考慮する必要のないウェブサーバが存在する場合がある。このような外部のウェブサーバから取得したＨＴＭＬ文書については、ウェブサーバ２０から取得したＨＴＭＬ文書と同様にスクリプトも制限なく実行して良い。そこで、本実施形態の拡張として、ブラウザ制御部１６は、外部のウェブサーバのうちで特定のウェブサーバを識別し、上記の図５または図６の動作においてＨＴＭＬ文書の送信元や要求の送信先がウェブサーバ２０である場合と同様に扱う。
【００６１】
ウェブサーバ２０と同様に扱う外部のウェブサーバ（すなわち、そのウェブサーバから取得したＨＴＭＬ文書についてはスクリプトの実行を制限しない）を識別するための具体的な方法は、例えばそのように扱うウェブサーバの識別情報をリストに登録しておき、ＨＴＭＬ文書の取得要求またはその応答から得られるウェブサーバの識別情報をこのリストに照合する方法が考えられる。ウェブサーバを特定するための識別情報としては、（１）要求（ウェブリクエスト）の送信先のＵＲＬ、（２）応答（ウェブレスポンス）のＨＴＴＰヘッダのサーバ情報、（３）応答（ウェブレスポンス）のＨＴＭＬ（またはＸＭＬ）のメタ情報などが考えられる。
【００６２】
次に、ウェブサーバ２０の動作について説明する。上述したように、ウェブサーバ２０は、ＨＴＭＬ文書の送信先であるウェブブラウザに応じて、ＨＴＭＬ文書を編集して送信する。
図７は、ウェブサーバ２０の動作を説明するフローチャートである。
図７に示すように、ウェブサーバ２０の編集部２３は、通信部２１により受信したＨＴＭＬ文書の取得要求に基づいて、この要求の送信元のウェブブラウザを特定する（ステップ７０１）。
【００６３】
ここで、ウェブサーバ２０にとって、ウェブブラウザ１０は、プリンタ１００を構成する内部ブラウザであるという点で、他のウェブブラウザとは異なる特別なブラウザである。そこで、編集部２３は、ＨＴＭＬ文書の取得要求の送信元のウェブブラウザがウェブブラウザ１０か外部のウェブブラウザかを識別する。識別方法としては、例えば次の方法が考えられる。
（１）ＴＣＰ／ＩＰレベルでループバックアドレス（「１２７．０．０．１」）が用いられていれば、ＨＴＭＬ文書の取得要求の送信元がウェブブラウザ１０であると判定する。
（２）要求（ウェブリクエスト）のＨＴＴＰヘッダのユーザエージェント情報（Ｕｓｅｒ−Ａｇｅｎｔ）にウェブブラウザ１０を示す識別子が記述されていれば、ＨＴＭＬ文書の取得要求の送信元がウェブブラウザ１０であると判定する。
【００６４】
図７のフローチャートに戻り、ＨＴＭＬ文書の取得要求の送信元がウェブブラウザ１０（内部ブラウザ）であると判定されたならば（ステップ７０２でＹｅｓ）、編集部２３は、ＨＴＭＬ文書を何ら編集せずに通信部２１に渡し、通信部２１がＨＴＭＬ文書の取得要求の送信元へ送信する（ステップ７０５）。一方、ＨＴＭＬ文書の取得要求の送信元がウェブブラウザ１０でないと判定されたならば（ステップ７０２でＮｏ）、次に編集部２３は、特定された外部のウェブサーバの種類を表す情報をＨＴＭＬ文書の取得要求から取得する（ステップ７０３）。ウェブブラウザの種類は、要求のＨＴＴＰヘッダのユーザエージェント情報から得ることができる。例えば、米国マイクロソフト社のインターネット・エクスプローラ（Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ）の場合、
Ｕｓｅｒ−Ａｇｅｎｔ：  Ｍｏｚｉｌｌａ／４．０  （ｃｏｍｐａｔｉｂｌｅ；  ＭＳＩＥ  ６．０；  Ｗｉｎｄｏｗｓ  ＮＴ  ５．１；  ＳＶ１；  ．ＮＥＴ  ＣＬＲ  １．０．３７０５；  ．ＮＥＴ  ＣＬＲ  １．１．４３２２）
のように記述されており、この記述によってインターネット・エクスプローラであることが識別される。
【００６５】
次に編集部２３は、予め用意された互換性情報に基づいてＨＴＭＬ文書を編集する（ステップ７０４）。互換性情報とは、各種のウェブブラウザでＨＴＭＬ文書を正しく実行できるように、ウェブブラウザの種類ごとに使用可能なタグやオブジェクト、メソッドに変換するための情報を登録したテーブルである。この互換性情報は、例えば図１の磁気ディスク装置１３０に保持されており、編集部２３が読み出して参照する。
【００６６】
図８は、互換性情報の構成例を示す図である。
図８に示す例では、互換性情報には、変更方法、対象ウェブブラウザ、対象のファイルまたはセクションの種別、変更対象、変更内容の各情報が対応づけられて登録されている。例えば、１行目のエントリーには、変更方法として削除（Ｄ）、対象ウェブブラウザとしてインターネット・エクスプローラ（ＩＥ）、対象のファイルまたはセクションの種別としてＪａｖａＳｃｒｉｐｔ、変更対象としてＦＸ−Ｃｕｓｔｏｍ−Ｒｅｑｕｅｓｔがそれぞれ登録されている。このエントリーでは、変更方法が削除なので、変更内容欄は空欄となっている。また、３行目のエントリーには、変更方法として変更（Ｍ）、対象ウェブブラウザとしてインターネット・エクスプローラ（ＩＥ）、対象のファイルまたはセクションの種別としてＨＴＭＬ、変更対象としてＡＢＢＲタグ、変更後のタグとしてＥＭタグがそれぞれ登録されている。
【００６７】
この後、編集部２３は以上のようにして編集したＨＴＭＬ文書を通信部２１に渡し、通信部２１が編集されたＨＴＭＬ文書をこのＨＴＭＬ文書の取得要求の送信元へ送信する（ステップ７０５）。
なお、ウェブブラウザ１０において、特定の外部のウェブサーバをウェブサーバ２０と同様に扱う拡張を行ったように、ウェブサーバ２０においても、特定の外部のウェブブラウザをウェブブラウザ１０と同様に扱う拡張を行っても良い。この場合も、ウェブブラウザ１０と同様に扱う外部のウェブブラウザの識別情報をリストに登録しておきＨＴＭＬ文書の取得要求から得られるウェブブラウザの識別情報をこのリストに照合すれば良い。
【図面の簡単な説明】
【００６８】
【図１】本実施形態が適用されるプリンタのハードウェア構成例を示す図である。
【図２】本実施形態のプリンタの機能構成を示す図である。
【図３】本実施形態のウェブブラウザの詳細な機能構成を示す図である。
【図４】本実施形態のウェブサーバの詳細な機能構成を示す図である。
【図５】本実施形態において、スクリプトを実行する処理そのものを変更する手法を実施する場合のウェブブラウザの動作を説明するフローチャートである。
【図６】本実施形態において、スクリプトの要求による通信を制御する手法を実施する場合のウェブブラウザの動作を説明するフローチャートである。
【図７】本実施形態のウェブサーバの動作を説明するフローチャートである。
【図８】本実施形態で用いられる互換性情報の構成例を示す図である。
【符号の説明】
【００６９】
１０…ウェブブラウザ、１１…通信部、１２…パーズ部、１３…実行部、１４…インタープリタ、１５…描画部、１６…ブラウザ制御部、２０…ウェブサーバ、２１…通信部、２２…文書取得部、２３…編集部、１００…プリンタ、１２０…制御装置、１３０…磁気ディスク装置、１４０…ディスプレイ装置、１５０…タッチパネル、１６０…ネットワークインターフェイス
【図１】
2008186160.tif 000003
【図２】
2008186160.tif 000004
【図３】
2008186160.tif 000005
【図４】
2008186160.tif 000006
【図５】
2008186160.tif 000007
【図６】
2008186160.tif 000008
【図７】
2008186160.tif 000009
【図８】
2008186160.tif 000010