(57)【特許請求の範囲】
【請求項１】
ネットワーク装置であって、
ネットワーク上のＷｅｂブラウザとしての機能を有するクライアントに一連の複数の画面を順次切り替えて表示させるために、前記クライアントからの要求に応じて所定のマークアップ言語で記述されたマークアップ言語ファイルを応答するＷｅｂサービス提供部を備え、
前記マークアップ言語ファイルは、前記クライアント上で表示されるか否かを定義する可視属性を有するレイヤであって前記一連の複数の画面のそれぞれに対応した複数のレイヤを要素として含み、
前記Ｗｅｂサービス提供部は、前記クライアント上で動作するＷｅｂプログラムであって、前記複数のレイヤの可視属性を変更することにより前記クライアント上に表示される画面を前記Ｗｅｂサービス提供部との通信を行うことなく順次切り替える第１の機能を前記クライアントに実現させるためのＷｅｂプログラムを生成して前記マークアップ言語ファイルに付加するＷｅｂプログラム生成部を含み、
前記一連の複数の画面は、ユーザによる前記クライアントのＩＰアドレス設定を含むネットワーク設定作業の指示を対話形式で行わせるための画面であり、
前記Ｗｅｂプログラムは、前記一連の複数の画面の表示中におけるユーザによる入力値をまとめて当該入力値に応じた内容の前記ネットワーク設定作業の実行を前記ネットワーク装置に指示する第２の機能を前記クライアントに実現させるためのプログラムである、ネットワーク装置。
【請求項２】
請求項１に記載のネットワーク装置であって、さらに、
ネットワーク型プラグアンドプレイのプロトコルに従って、前記クライアントと前記サービス提供部との間のメッセージの交換を制御するネットワークプロトコル制御部を備える、ネットワーク装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク上のＷｅｂブラウザとしての機能を有するクライアントにおいて一連の複数の画面を順次切り替えて表示する際のユーザ利便性を向上させるための技術に関する。
【背景技術】
【０００２】
Ｗｅｂサーバとしての機能を有するプリンタとＷｅｂブラウザとしての機能を有するクライアントとを備えるネットワークシステムにおいて、クライアント上に所定の画面を表示させる技術が知られている（例えば特許文献１）。このネットワークシステムでは、プリンタが所定の画面を表すマークアップ言語ファイル（例えばＨＴＭＬファイル）をネットワーク上のクライアントに送信することによって、クライアントにおける所定の画面の表示を実現している。
【０００３】
【特許文献１】特開２００４−７０５７２
【０００４】
他方、ソフトウェアのインストールやネットワーク環境の設定といった作業に関するユーザの指示操作を容易化するために、ウィザードと呼ばれる機能が広く用いられている。ウィザードは、一連の複数の画面を順次切り替えつつ表示し、ユーザに対話形式で作業の指示を行わせる機能である。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上記従来のネットワークシステムにおいてウィザードの機能を実現する場合、Ｗｅｂサーバとクライアントとの間で、一連の複数の画面のそれぞれに対応したマークアップ言語ファイルの送受信が実行されていた。すなわち、表示画面の切り替え毎に、Ｗｅｂサーバとクライアントとの間で、切り替え後の画面に対応したマークアップ言語ファイルの要求および応答のための通信が発生していた。そのため、画面の切り替え処理に要する時間が増大し、ユーザの利便性が損なわれていた。
【０００６】
なお、このような問題は、ネットワーク上のＷｅｂブラウザとしての機能を有するクライアントにおいて一連の複数の画面を順次切り替えて表示する際に共通する問題であった。
【０００７】
本発明は、ネットワーク上のＷｅｂブラウザとしての機能を有するクライアントにおいて一連の複数の画面を順次切り替えて表示する際に、ユーザの利便性を向上させることを可能とする技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題の少なくとも一部を解決するために、本発明のネットワーク装置は、
ネットワーク上のＷｅｂブラウザとしての機能を有するクライアントに一連の複数の画面を順次切り替えて表示させるために、前記クライアントからの要求に応じて所定のマークアップ言語で記述されたマークアップ言語ファイルを応答するＷｅｂサービス提供部を備え、
前記マークアップ言語ファイルは、前記クライアント上で表示されるか否かを定義する可視属性を有するレイヤであって前記一連の複数の画面のそれぞれに対応した複数のレイヤを要素として含み、
前記Ｗｅｂサービス提供部は、前記クライアント上で動作するＷｅｂプログラムであって、前記複数のレイヤの可視属性を変更することにより前記クライアント上に表示される画面を前記Ｗｅｂサービス提供部との通信を行うことなく順次切り替える第１の機能を前記クライアントに実現させるためのＷｅｂプログラムを生成して前記マークアップ言語ファイルに付加するＷｅｂプログラム生成部を含む。
【０００９】
このネットワーク装置は、一連の複数の画面のそれぞれに対応した複数のレイヤを要素として含むマークアップ言語ファイルをネットワーク上のＷｅｂブラウザとしての機能を有するクライアントに応答するＷｅｂサービス提供部を備えている。また、Ｗｅｂサービス提供部は、複数のレイヤの可視属性を変更することによりクライアント上に表示される画面をＷｅｂサービス提供部との通信を行うことなく順次切り替える第１の機能をクライアントに実現させるためのＷｅｂプログラムを生成してマークアップ言語ファイルに付加するＷｅｂプログラム生成部を含んでいる。そのため、クライアントにおける一連の複数の画面の表示切り替えは、複数のレイヤの可視属性を変更することにより実現され、画面の切り替えに伴うネットワーク装置とクライアントとの間の通信は行われない。従って、このネットワーク装置では、クライアント上における表示画面の切り替え処理の迅速化を図ることができ、ユーザの利便性を向上させることができる。
【００１０】
上記ネットワーク装置において、
前記一連の複数の画面は、ユーザによる所定の作業の指示を対話形式で行わせるための画面であり、
前記Ｗｅｂプログラムは、前記一連の複数の画面の表示中におけるユーザによる入力値をまとめて当該入力値に応じた内容の前記所定の作業の実行を前記ネットワーク装置に指示する第２の機能を前記クライアントに実現させるためのプログラムであるとしてもよい。
【００１１】
このようにすれば、ユーザによるネットワーク装置に対する所定の作業の指示を対話形式で行わせるための一連の画面の表示切り替えの迅速化を図ることができ、ユーザの利便性を向上させることができる。
【００１２】
また、上記ネットワーク装置において、さらに、
ネットワーク型プラグアンドプレイのプロトコルに従って、前記クライアントと前記サービス提供部との間のメッセージの交換を制御するネットワークプロトコル制御部を備えるとしてもよい。
【００１３】
このようにすれば、ネットワーク型プラグアンドプレイを利用してクライアントにおける一連の複数の画面の表示切り替えを実現する際の処理の迅速化を図ることができ、ユーザの利便性を向上させることができる。
【００１４】
なお、本発明は、種々の態様で実現することが可能であり、例えば、ネットワーク装置、ネットワークシステム、サーバ装置、印刷装置、サービス提供方法および装置、画像表示方法および装置、これらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、そのコンピュータプログラムを含み搬送波内に具現化されたデータ信号、等の形態で実現することができる。
【発明を実施するための最良の形態】
【００１５】
次に、本発明の実施の形態を実施例に基づいて以下の順序で説明する。
Ａ．実施例：
Ｂ．変形例：
【００１６】
Ａ．実施例：
図１は、本発明の実施例としてのネットワークシステムの構成を概略的に示す説明図である。このネットワークシステム１０は、プリンタ１００と、デジタルＴＶ（以下「ＤＴＶ」と呼ぶ）２００と、が、ＬＡＮを介して相互に接続された構成を有している。なお、ＬＡＮは、ＩＥＥＥ８０２．３のような有線ネットワークでも、ＩＥＥＥ８０２．１１ｂ／ｇ／ａなどの無線ネットワークでもよい。
【００１７】
プリンタ１００およびＤＴＶ２００は、共にユニバーサルプラグアンドプレイ（以下「ＵＰｎＰ」と呼ぶ。ＵＰｎＰは UPnP Implementers Corporationの商標）対応のネットワーク装置である。ここで、ＵＰｎＰは、ネットワーク装置を任意のタイミングでネットワークに接続したり、ネットワークから切断したりすることを実現するアーキテクチャである。ＵＰｎＰネットワークは、コントロールポイントとデバイスとで構成される。「デバイス」とは、サービスを提供する装置を意味している。本明細書においては、特に断らない限り、「デバイス」と「サービスデバイス」は同義語として使用されている。「コントロールポイント」は、ネットワーク上の他のデバイスを検出したり、制御したりするコントローラを意味しており、サービスデバイスに対するクライアントとして機能する。なお、本明細書では、ＵＰｎＰのように、ネットワークにおいてプラグアンドプレイを実現するアーキテクチャを、「ネットワーク型プラグアンドプレイ」と呼ぶ。
【００１８】
プリンタ１００は、ＵＰｎＰネットワークにおけるサービスデバイスとして機能し、コントロールポイントに対して画像のプリントサービスを提供する。プリンタ１００は、ＣＰＵ１１０と、ボタンやタッチパネル等の操作部１２０と、液晶モニタ等の表示部１３０と、プリンタエンジン１４０と、カードインターフェース（カードＩ／Ｆ）１５０と、ネットワークインターフェース（ネットワークＩ／Ｆ）１６０と、ＲＯＭやＲＡＭ等の内部記憶装置１７０と、を備えている。
【００１９】
プリンタエンジン１４０は、印刷データに基づき印刷を行う印刷機構である。カードインターフェース１５０は、カードスロット１５２に挿入されたメモリカード１５４との間でデータのやり取りを行うインターフェースである。ネットワークインターフェース１６０は、ネットワーク上の他の装置との間で交換されるメッセージやデータを仲介する機能を有している。
【００２０】
プリンタ１００の内部記憶装置１７０には、それぞれ所定のオペレーティングシステムの下で動作するコンピュータプログラムであるネットワークプロトコル制御部１７１と、ＨＴＴＰサーバプログラム（以下「ＨＴＴＰサーバ」と呼ぶ）１７２と、印刷処理部１７５と、が格納されている。ＨＴＴＰサーバ１７２は、レイヤ設定部１７３と、Ｗｅｂプログラム生成部１７４と、を含んでいる。内部記憶装置１７０には、また、ＨＴＭＬファイル１７８が格納されている。
【００２１】
ネットワークプロトコル制御部１７１は、ＵＰｎＰのプロトコルやその他のプロトコルに従って、ネットワークシステム１０上の他の装置との間で、メッセージやデータの仲介を行うためのプログラムである。ＨＴＴＰサーバ１７２は、Ｗｅｂブラウザ等のクライアントからの要求に応じて、ＨＴＭＬファイル１７８等を応答するためのプログラムである。レイヤ設定部１７３は、ＨＴＭＬファイルに含まれる要素として後述するレイヤを設定するためのプログラムモジュールである。Ｗｅｂプログラム生成部１７４は、クライアント上で動作するＷｅｂプログラム（例えばＪａｖａＳｃｒｉｐｔ）を生成するためのプログラムモジュールである。印刷処理部１７５は、プリンタエンジン１４０を制御して、メモリカード１５４内に格納された画像データに基づく画像の印刷を行うためのプログラムである。ＣＰＵ１１０は、内部記憶装置１７０から、これらのプログラムを読み出して実行することにより、後述のネットワーク設定処理を実現する。なお、ＣＰＵ１１０およびＨＴＴＰサーバ１７２は、本発明におけるサービス提供部として機能する。また、ＨＴＴＰサーバ１７２は、ＷｅｂサーバまたはＷＷＷサーバとも呼ばれる。
【００２２】
ＤＴＶ２００は、ＵＰｎＰネットワークにおけるコントロールポイントとして機能する。本実施例では、ＤＴＶ２００は、サービスデバイスとしてのプリンタ１００に対するクライアントとして機能する。ＤＴＶ２００は、ＣＰＵ２１０と、ボタンやリモコンおよびリモコン受光部等の操作部２２０と、液晶パネル等の表示部２３０と、ネットワークインターフェース（ネットワークＩ／Ｆ）２６０と、ＲＯＭやＲＡＭ等の内部記憶装置２７０と、を備えている。ネットワークインターフェース２６０は、ネットワーク上の他の装置との間で交換されるメッセージやデータを仲介する機能を有している。
【００２３】
ＤＴＶ２００の内部記憶装置２７０には、所定のオペレーティングシステムの下で動作するコンピュータプログラムであるＷｅｂブラウザプログラム（以下「Ｗｅｂブラウザ」と呼ぶ）２７２が格納されている。Ｗｅｂブラウザ２７２は、ＨＴＭＬファイルを受領し、受領したＨＴＭＬファイルを解析して表示部２３０上にＨＴＭＬファイルに対応した画面を表示するためのプログラムである。ＣＰＵ２１０は、内部記憶装置２７０から、Ｗｅｂブラウザ２７２を読み出して実行することにより、後述のネットワーク設定処理を実現する。
【００２４】
ＵＰｎＰは、ＨＴＴＰＭＵや、ＨＴＴＰＵ，ＳＯＡＰ／ＨＴＴＰ，ＨＴＴＰなどの各種のプロトコルを用いて、以下のような各種の処理を実現している。
【００２５】
（１）アドレッシング：
ＵＰｎＰデバイス（以下、単に「デバイス」と呼ぶ）がネットワークに接続すると、アドレッシングによってネットワークアドレス（ＩＰアドレス）を取得する。アドレッシングには、ＤＨＣＰサーバまたはAuto-IPが利用される。ネットワークにＤＨＣＰサーバが設けられている場合には、デバイスはＤＨＣＰサーバによって割り当てられるＩＰアドレスを使用する。ＤＨＣＰサーバが無い場合には、Auto-IPと呼ばれる自動ＩＰアドレッシング機能を用いて、デバイスが自分のアドレスを決定する。
【００２６】
（２）ディスカバリ（検出）：
ディスカバリは、コントロールポイントが、デバイスがどこにいるかを見つけ出す処理である。ディスカバリは、コントロールポイントがディスカバリメッセージをマルチキャストすることによって実現することができ、あるいは、デバイスがネットワークに参加したときに、その旨をコントロールポイントにアドバタイズすることによっても実現できる。ディスカバリは、ＨＴＴＰＭＵ／ＳＳＤＰやＨＴＴＰＵ／ＳＳＤＰを用いて行われる。ディスカバリの結果、コントロールポイントとデバイスがピアツーピアで処理を進められるようになる。
【００２７】
（３）ディスクリプション：
デバイスの構成の詳細は、デバイスディスクリプションとしてＸＭＬで記述されている。また、デバイスのサービスの詳細は、サービスディスクリプションとしてＸＭＬで記述されている。これらのディスクリプションは、デバイスによって所有されており、コントロールポイントに提供される。コントロールポイントは、これらのディスクリプションを参照することによって、デバイスやサービスの詳細を知ることができる。
【００２８】
（４）コントロール：
コントロールは、コントロールポイントが、アクション要求を含む制御メッセージをデバイスに転送して、デバイスの制御を行う処理である。コントロールは、ＨＴＴＰ／ＳＯＡＰを用いて行われる。
【００２９】
（５）イベント：
所定のイベントが発生すると、デバイス内のサービスが、コントロールポイントにイベントの発生を通知する。イベント発生の通知を受けるコントロールポイントは、そのサービスに「サブスクライブ（購読）」する。イベントは、サブスクライブしているコントロールポイントに転送される。イベントの通知は、ＨＴＴＰ／ＧＥＮＡを用いて行われる。
【００３０】
（６）プレゼンテーション：
プレゼンテーションは、デバイスディスクリプションに登録されているプレゼンテーション用のＵＲＬからコントロールポイントがＨＴＭＬで記述されたプレゼンテーション用ページを取得する処理である。このプレゼンテーションによって、例えばコントロールポイントがデバイスの各種の状態を表示することができる。
【００３１】
なお、本発明はＵＰｎＰの将来のバージョンにも適用可能である。また、ネットワーク型プラグアンドプレイとして、アドレッシング（自動的なＩＰアドレス決定）と、デバイスのディスカバリにより、任意のコントロールポイントとデバイスとがピアツーピアで通信が可能で、コントロールポイントとデバイスがメッセージの交換を行うアーキテクチャであれば、ＵＰｎＰ以外のネットワーク型プラグアンドプレイ仕様にも本発明を適用することが可能である。
【００３２】
図２は、本実施例のネットワークシステム１０におけるネットワーク設定処理の流れを示すフローチャートである。本実施例のネットワーク設定処理は、プリンタ１００のネットワーク設定を指示するためのウィザード形式の画面をＤＴＶ２００の表示部２３０上に表示し、操作部２２０を介したユーザによる指示に従ってプリンタ１００のネットワーク設定を実行する処理である。ここで、ウィザードとは、一連の複数の画面を順次切り替えつつ表示し、ユーザに対話形式でネットワーク設定等の所定の作業の実行指示を行わせる機能を意味している。また、ウィザード形式の画面とは、所定の作業の指示手順に沿って順次切り替え表示される一連の複数の対話形式の画面を意味している。また、プリンタ１００のネットワーク設定とは、ネットワークシステム１０において、プリンタ１００のＩＰアドレスやサブネットマスク等のネットワーク設定項目を設定することを意味している。
【００３３】
なお、ネットワークシステム１０（図１）では、本実施例のネットワーク設定処理が開始される前に、プリンタ１００およびＤＴＶ２００が、共にネットワークシステム１０に参加し、ＵＰｎＰのアドレッシング、ディスカバリ等を通じて、自らのネットワーク設定項目の設定を完了していると共に、互いに通信可能な状態となっているものとする。すなわち、本実施例のネットワーク設定処理は、プリンタ１００のネットワーク設定項目を更新設定する処理である。また、ＤＴＶ２００は、ＵＰｎＰのディスクリプションを通じて、デバイスとしてのプリンタ１００のデバイス構成およびサービスの内容を認識しているものとする。
【００３４】
ステップＳ１１０（図２）では、ＤＴＶ２００のＷｅｂブラウザ２７２（図１）が、プリンタ１００のトップページをリクエストする。この処理は、例えば、ユーザによるＤＴＶ２００の操作部２２０を介したプリンタトップページを要求する操作に応じて実行される。本実施例では、プリンタ１００のトップページはＵＰｎＰのプレゼンテーション用ページであり、そのＵＲＬは、プリンタ１００のデバイスディスクリプションに登録されている。Ｗｅｂブラウザ２７２は、デバイスディスクリプションに登録されたプレゼンテーション用のＵＲＬをリクエストする。
【００３５】
ステップＳ１２０（図２）では、プリンタ１００のＨＴＴＰサーバ１７２（図１）が、ステップＳ１１０におけるＤＴＶ２００からのリクエストに対して、プリンタトップページのＨＴＭＬファイル１７８を応答する。これにより、ＤＴＶ２００の表示部２３０（図１）には、プリンタトップページが表示される。図３は、プリンタトップページの一例を示す説明図である。図３に示すように、プリンタトップページには、プリンタ１００が提供する種々のサービスをユーザに選択させるためのボタンが含まれている。
【００３６】
本実施例では、プリンタ１００は、ＤＴＶ２００に提供するサービスとして、一覧表示印刷やスライドショー印刷といった画像の印刷を行うサービスの他に、プリンタ１００自身のネットワーク設定を行うサービスを有している。
【００３７】
ステップＳ１３０（図２）では、ＤＴＶ２００のＷｅｂブラウザ２７２（図１）が、ネットワーク設定用のページをリクエストする。この処理は、ユーザによる、図３に示したプリンタトップページ中の「ネットワーク設定」ボタンの選択に応じて実行される。
【００３８】
ステップＳ１４０（図２）では、プリンタ１００のＨＴＴＰサーバ１７２が、ネットワーク設定用のＨＴＭＬファイルを生成する。図４は、本実施例において用いられるネットワーク設定用のＨＴＭＬファイルを概念的に示す説明図である。図４に示すように、本実施例において用いられるネットワーク設定用のＨＴＭＬファイルは、複数のレイヤを含んでいる。ここで、レイヤとは、ＨＴＭＬファイルとして記述されるＷｅｂページの１つの要素であり、タグを用いて定義される。レイヤ上にはテキストや画像といった要素（「オブジェクト」とも呼ばれる）を配置することができる。
【００３９】
本実施例では、ＨＴＴＰサーバ１７２のレイヤ設定部１７３（図１）により、図４に示すように、ネットワーク設定を指示するためのウィザード形式の画面、すなわち、指示手順に沿って順次切り替え表示される一連のｎ個の対話形式の画面のそれぞれに対応したｎ個のレイヤが、ネットワーク設定用ＨＴＭＬファイルに設定される。
【００４０】
また、レイヤは、大きさや位置等を定義するための属性の他に、当該レイヤをクライアント（ＤＴＶ２００）上で表示させるか否かを定義するための属性（以下「可視属性」と呼ぶ）を有している。レイヤの可視属性を「表示」に設定した場合には、そのレイヤはクライアント上で表示され、レイヤの可視属性を「非表示」に設定した場合には、そのレイヤはクライアント上で表示されない。本明細書では、可視属性が「表示」に設定されたレイヤを「可視レイヤ」と呼び、可視属性が「非表示」に設定されたレイヤを「不可視レイヤ」と呼ぶものとする。レイヤの設定の時点では、ネットワーク設定用ＨＴＭＬファイルの１番目の画面に対応したレイヤ（レイヤ１）のみが可視レイヤに設定され、他のレイヤ（レイヤ２〜ｎ）は不可視レイヤに設定される。
【００４１】
ステップＳ１４０（図２）では、また、ＨＴＴＰサーバ１７２のＷｅｂプログラム生成部１７４（図１）が、クライアント上で動作するＷｅｂプログラムとしてのＪａｖａＳｃｒｉｐｔを生成する。このＪａｖａＳｃｒｉｐｔは、レイヤの可視属性を設定・変更することによりネットワーク設定を指示するための表示画面を順次切り替える第１の機能と、画面表示中におけるユーザによる入力値をまとめて当該入力値に応じた内容のネットワーク設定の実行をプリンタ１００に指示する第２の機能と、をクライアント（ＤＴＶ２００のＷｅｂブラウザ２７２）に実現させるプログラムである。本実施例では、上記第１の機能は、ネットワーク設定用のＨＴＭＬファイルに含まれるｎ個のレイヤの内の１つのみが可視レイヤとして設定され、他のレイヤは不可視レイヤとして設定されるように、レイヤの可視属性を設定・変更する機能である。ＪａｖａＳｃｒｉｐｔは、可視レイヤとして設定されている１つのレイヤを特定する情報をクッキー（Ｃｏｏｋｉｅ）として保有する。
【００４２】
また、上記第１の機能による表示画面の切り替えは、一連のｎ個の画面に予め設定された関連付け情報に従って実行される。関連付け情報は、ウィザードの機能を実現するための画面の表示順序を定義するための情報であり、例えば、ある画面の次にはどの画面が表示されるかを定義している。また、関連付け情報は、画面表示中におけるユーザの入力値（選択値を含む）に応じて定められており、例えば、ユーザがある値を入力した場合における次に表示される画面と別の値を入力した場合における次に表示される画面とが異なる場合もある。
【００４３】
ステップＳ１４０において生成されたＪａｖａＳｃｒｉｐｔは、ネットワーク設定用のＨＴＭＬファイル内に埋め込まれる。なお、ネットワーク設定用のＨＴＭＬファイルやＪａｖａＳｃｒｉｐｔは、ネットワーク設定処理（図２）中に生成される必要は無く、予め生成され、プリンタ１００により保持されているとしてもよい。
【００４４】
ステップＳ１５０（図２）では、プリンタ１００のＨＴＴＰサーバ１７２（図１）が、ネットワーク設定用のＨＴＭＬファイルを、ＤＴＶ２００のＷｅｂブラウザ２７２に応答する。ネットワーク設定用のＨＴＭＬファイルには、ステップＳ１４０で生成されたＪａｖａＳｃｒｉｐｔが埋め込まれているため、ＪａｖａＳｃｒｉｐｔもＷｅｂブラウザ２７２に送信されることとなる。
【００４５】
ネットワーク設定用のＨＴＭＬファイルを受領したＤＴＶ２００のＷｅｂブラウザ２７２（図１）は、ネットワーク設定用のＨＴＭＬファイルに埋め込まれたＪａｖａＳｃｒｉｐｔにより実現される上記第１および第２の機能を利用しつつ、ステップＳ１６０（図２）以降の処理を実行する。
【００４６】
ステップＳ１６０（図２）では、ＤＴＶ２００のＷｅｂブラウザ２７２が、ネットワーク設定用のＨＴＭＬファイルを解釈して、ウィザード表示処理を行う。図５は、本実施例のネットワークシステム１０におけるウィザード表示処理の流れを示すフローチャートである。本実施例のウィザード表示処理は、プリンタ１００のネットワーク設定を指示するためのウィザード形式の画面をＤＴＶ２００の表示部２３０上に表示する処理である。すなわち、ネットワーク設定用のＨＴＭＬファイルに含まれるｎ個のレイヤに対応した一連のｎ個の画面を順次切り替えつつ表示し、ユーザに対話形式でネットワーク設定の指示を行わせる処理である。
【００４７】
ステップＳ２１０（図５）では、ＤＴＶ２００のＷｅｂブラウザ２７２（図１）が、ネットワーク設定用のＨＴＭＬファイルに基づき、可視レイヤに対応した画面をＤＴＶ２００の表示部２３０に表示する。図６は、ウィザード表示処理における表示画面の一例を示す説明図である。上述したように、ステップＳ１４０（図２）におけるレイヤの設定の時点では、１番目の画面に対応したレイヤ（レイヤ１）のみが可視レイヤに設定されている。そのため、Ｗｅｂブラウザ２７２によりネットワーク設定用のＨＴＭＬファイルが受領された段階では、図６の最上段に示すレイヤ１に対応した画面（「画面１」と呼ぶ）が表示部２３０に表示され、他のレイヤ（レイヤ２〜ｎ）に対応した画面は表示されない。
【００４８】
なお、図６に示すように、各レイヤに対応した画面には、ユーザが画面の切り替えを指示するための「戻る」ボタンＢｂおよび「次へ」ボタンＢｎが含まれている。さらに、各画面には、ユーザがプリンタトップページ（図３）への画面切り替えを指示するための「トップへ」ボタンＢｔが含まれている。また、図６の最下段に示すレイヤｎに対応した画面ｎには、「次へ」ボタンＢｎの代わりに、ユーザが最終的にネットワーク設定の実行を指示するための「設定」ボタンＢｅが含まれている。
【００４９】
ステップＳ２２０（図５）では、Ｗｅｂブラウザ２７２が、ユーザにより表示画面に含まれるボタンのいずれかが選択されたか否かを判定する。ステップＳ２２０における判定は、いずれかのボタンが選択されたと判定されるまで繰り返し実行される。
【００５０】
ステップＳ２２０においてボタンが選択されたと判定された場合には、Ｗｅｂブラウザ２７２は、どのボタンが選択されたかを判別する。Ｗｅｂブラウザ２７２は、選択されたボタンが「次へ」ボタンＢｂであると判別した場合には（ステップＳ２３０：Ｙｅｓ）、クッキーにより現在の可視レイヤを特定し、可視レイヤが１つ後の画面に対応したレイヤに変更されるようにレイヤの可視属性を変更する（ステップＳ２６０）。新たに設定された可視レイヤは、クッキーに登録される。
【００５１】
ここで、「１つ後の画面」とは、上述の関連付け情報によって、現在の可視レイヤに対応した画面の次に表示すべき画面として設定されている画面である。例えば、可視レイヤがレイヤ１に設定され、ＤＴＶ２００の表示部２３０に画面１（図６）が表示されていた場合には、Ｗｅｂブラウザ２７２は、「１つ後の画面」である画面２に対応したレイヤ２の可視属性を「非表示」から「表示」に変更すると共に、レイヤ１の可視属性を「表示」から「非表示」に変更する。
【００５２】
なお、上述したように、関連付け情報は、画面表示中におけるユーザの入力値（選択値を含む）に応じて定められている。そのため、上記「１つ後の画面」は、ユーザの入力値に応じて異なる場合がある。例えば、図６の例では、画面２においてユーザが「手動設定」を選択してから「次へ」ボタンＢｂを選択した場合には、画面３が上記「１つ後の画面」となり、画面３に対応したレイヤ（レイヤ３）が新たな可視レイヤに設定される。一方、ユーザが「自動設定」を選択してから「次へ」ボタンＢｂを選択した場合には、画面ｍが上記「１つ後の画面」となり、画面ｍに対応したレイヤ（レイヤｍ）が新たな可視レイヤに設定される。
【００５３】
その後、処理はステップＳ２１０（図５）に戻り、Ｗｅｂブラウザ２７２は、新たに設定された可視レイヤに対応した画面をＤＴＶ２００の表示部２３０に表示する。これにより、ネットワーク設定の指示手順に沿った次の画面への画面切り替えが実現される。
【００５４】
また、Ｗｅｂブラウザ２７２は、選択されたボタンが「戻る」ボタンＢｂであると判別した場合には（図５のステップＳ２４０：Ｙｅｓ）、クッキーにより現在の可視レイヤを特定し、可視レイヤが１つ前の画面に対応したレイヤに変更されるようにレイヤの可視属性を変更する（ステップＳ２７０）。新たに設定された可視レイヤは、クッキーに登録される。ここで、「１つ前の画面」とは、上述の関連付け情報によって、現在の可視レイヤに対応した画面の前に表示されるべき画面として設定されている画面である。例えば、可視レイヤがレイヤ２に設定され、ＤＴＶ２００の表示部２３０に画面２（図６）が表示されていた場合には、Ｗｅｂブラウザ２７２は、「１つ前の画面」である画面１に対応したレイヤ１の可視属性を「非表示」から「表示」に変更すると共に、レイヤ２の可視属性を「表示」から「非表示」に変更する。その後、処理はステップＳ２１０（図５）に戻り、Ｗｅｂブラウザ２７２は、新たに設定された可視レイヤに対応した画面をＤＴＶ２００の表示部２３０に表示する。これにより、ネットワーク設定の指示手順に沿った前の画面への画面切り替えが実現される。
【００５５】
このように、ウィザード表示処理では、プリンタ１００のネットワーク設定の指示を行うウィザード機能を実現するための一連のｎ個の画面の切り替え表示が行われる。ユーザは、各画面表示中にＤＴＶ２００の操作部２２０を介してネットワーク設定のための入力や選択を行う。
【００５６】
なお、選択されたボタンが「トップへ」ボタンＢｔであると判別された場合には（図５のステップＳ２５０：Ｙｅｓ）、処理はステップＳ１１０（図２）に戻り、Ｗｅｂブラウザ２７２がプリンタ１００のトップページのリクエストを再度発行する。
【００５７】
また、図６の最下段に示すレイヤｎに対応した画面ｎが表示されているときに、Ｗｅｂブラウザ２７２が、最終的にネットワーク設定の実行を指示するための「設定」ボタンＢｎが選択されたと判定した場合には（図５のステップＳ２５０：Ｎｏ）、処理は図２のステップＳ１７０に進む。
【００５８】
ステップＳ１７０（図２）では、ＤＴＶ２００のＷｅｂブラウザ２７２が、プリンタ１００のＨＴＴＰサーバ１７２に対し、プリンタ１００のネットワーク設定の実行を指示するためのリクエストを発行する。このネットワーク設定実行リクエストは、リクエストを受領したプリンタ１００のＨＴＴＰサーバ１７２に、ネットワーク設定を実行するネットワークプロトコル制御部１７１（図１）を起動させるためのネットワーク設定実行ＵＲＬを含んでいる。また、Ｗｅｂブラウザ２７２は、ウィザード表示処理（図５）中にユーザにより入力・選択された値をまとめ、当該値に応じたネットワーク設定の内容を特定する情報を生成してクッキーに付加する。このクッキーは、ネットワーク設定実行リクエストに添付される。これにより、ネットワーク設定の内容が特定され、当該内容がプリンタ１００に伝えられる。
【００５９】
ステップＳ１８０（図２）では、プリンタ１００のＨＴＴＰサーバ１７２が、ネットワークプロトコル制御部１７１（図１）を起動して、クッキーに含まれるネットワーク設定の内容を特定する情報により特定される内容でネットワーク設定を実行する。なお、本実施例では、ネットワーク設定を実現する場合に、ネットワークプロトコル制御部１７１は、ＣＧＩ（Ｃｏｍｍｏｎ  Ｇａｔｅｗａｙ  Ｉｎｔｅｒｆａｃｅ）プログラムとして機能する。
【００６０】
ステップＳ１９０（図２）では、プリンタ１００のＨＴＴＰサーバ１７２が、ＤＴＶ２００のＷｅｂブラウザ２７２に対し、ネットワーク設定の完了を伝える設定完了ページのＨＴＭＬファイル１７８を応答する。これにより、ＤＴＶ２００の表示部２３０に、ネットワーク設定の完了を表すページが表示される。
【００６１】
以上説明したように、本実施例のネットワーク設定処理では、プリンタ１００のネットワーク設定を指示するためのウィザード形式の画面をＤＴＶ２００上に表示しユーザに対話形式でネットワーク設定の指示を行わせるウィザード表示処理が実行される。このウィザード表示処理には、ネットワーク設定の指示手順に沿って順次切り替え表示される一連の複数の対話形式の画面のそれぞれに対応した複数のレイヤを含むネットワーク設定用ＨＴＭＬファイルが用いられる。そして、一連の画面の表示切り替えは、ネットワーク設定用ＨＴＭＬファイルに含まれるレイヤの可視属性を変更することにより実現される。そのため、表示画面の切り替えに伴いＨＴＴＰサーバ１７２とＷｅｂブラウザ２７２との間でＨＴＭＬファイルの送受信等の通信が行われることはない。従って、本実施例のネットワーク設定処理では、表示画面の切り替えに伴うネットワーク、ＨＴＴＰサーバ１７２およびＷｅｂブラウザ２７２に対する負荷を低減することができ、処理の迅速化を図ると共にユーザの利便性を向上させることができる。特に、ＤＴＶ２００のＷｅｂブラウザ２７２がキャッシュ機能を有さない場合等、ＤＴＶ２００の機能・能力が貧弱である場合には、この効果は重要である。
【００６２】
Ｂ．変形例：
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【００６３】
Ｂ１．変形例１：
上記各実施例におけるネットワークシステム１０の構成は、あくまで一例であり、ネットワークシステム１０を他の構成とすることも可能である。図７は、変形例としてのネットワークシステムの構成を概略的に示す説明図である。図７に示した変形例としてのネットワークシステム１０ａでは、プリンタ１００がネットワークプロトコル制御部１９０が独立した構成を有している点が、上記各実施例とは異なっている。変形例のネットワークシステム１０ａにおけるプリンタ１００のネットワークプロトコル制御部１９０は、ＣＰＵ１９２と、ＲＯＭやＲＡＭ等の内部記憶装置１９４と、ネットワークインターフェース１９６と、を含んでおり、上記各実施例におけるＣＰＵ１１０、ネットワークプロトコル制御部１７１およびネットワークインターフェース１６０に相当する機能を有している。プリンタ１００において、ネットワークプロトコル制御部１９０と残りの構成との間は、例えばＵＳＢ１８０によって接続されている。プリンタ１００を図７に示す構成とすることにより、ＵＰｎＰにおいてプロトコルの制御を行う部分とサービスデバイスとして機能する部分とを分割することができ、設計の柔軟性を向上させることができる。
【００６４】
また、上記各実施例では、プリンタ１００はネットワークプロトコル制御部１７１を有し、ＵＰｎＰに対応しているが、本発明はネットワークプロトコル制御部１７１を有さず、ＵＰｎＰに対応していないプリンタにも適用可能である。さらに、本発明は、ＨＴＴＰサーバ１７２としての機能を備えていれば、プリンタ１００以外のネットワーク装置にも適用可能である。
【００６５】
また、上記各実施例では、クライント装置としてＤＴＶ２００を例に用いて説明しているが、本発明は、Ｗｅｂブラウザ２７２としての機能を備えていれば、ＤＴＶ２００以外のクライアント装置（例えば携帯電話）にも適用可能である。
【００６６】
Ｂ２．変形例２：
上記各実施例において、ＪａｖａＳｃｒｉｐｔによるレイヤの可視属性の設定・変更は、ネットワーク設定用のＨＴＭＬファイルに含まれる複数のレイヤの内の１つのみが可視レイヤとして設定され、他のレイヤは不可視レイヤとして設定されるように行われるが、必ずしもそのように行われる必要はない。レイヤの可視属性の設定は、複数のレイヤが可視レイヤとして設定されるように行われるとしてもよい。この場合に、表示画面の切り替えを、各レイヤの重なりを表す属性を設定・変更することによって実現するとしてもよい。
【００６７】
Ｂ３．変形例３：
上記各実施例では、クライアント上で動作するＷｅｂプログラムとしてＪａｖａＳｃｒｉｐｔを例に用いて説明しているが、クライアント上で動作するＷｅｂプログラムとして例えばＶＢＳｃｒｉｐｔといった他のプログラムであってもよい。また、上記各実施例では、Ｗｅｂプログラム（例えばＪａｖａＳｃｒｉｐｔ）がネットワーク設定用のＨＴＭＬファイルに埋め込まれるとしているが、Ｗｅｂプログラムはネットワーク設定用のＨＴＭＬファイルに付加されてＷｅｂブラウザ２７２に応答されればよく、必ずしもネットワーク設定用のＨＴＭＬファイル内に埋め込まれる必要はない。また、上記各実施例では、マークアップ言語としてＨＴＭＬを例に用いて説明しているが、マークアップ言語として他のマークアップ言語を用いることも可能である。
【００６８】
また、上記各実施例では、ＪａｖａＳｃｒｉｐｔが可視レイヤとして設定されている１つのレイヤを特定するためにクッキーが用いられているが、可視レイヤの特定には、例えばＪａｖａＳｃｒｉｐｔ独自のパラメータといった他の情報が用いられるとしてもよい。また、上記各実施例では、ネットワーク設定の内容の特定にもクッキーが用いられているが、例えば、ネットワーク設定の内容を特定する情報をネットワーク設定実行ＵＲＬ中に直接含ませる等、他の方法によりネットワーク設定の内容を特定するとしてもよい。
【００６９】
Ｂ４．変形例４：
上記各実施例では、ネットワーク設定処理中のウィザード表示処理を例に用いて説明したが、本発明は、一連の複数の画面を順次切り替えて表示させるため処理であれば、他の処理にも適用可能である。
【００７０】
Ｂ５．変形例５：
上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。
【図面の簡単な説明】
【００７１】
【図１】本発明の実施例としてのネットワークシステムの構成を概略的に示す説明図である。
【図２】本実施例のネットワークシステム１０におけるネットワーク設定処理の流れを示すフローチャートである。
【図３】プリンタトップページの一例を示す説明図である。
【図４】本実施例において用いられるネットワーク設定用のＨＴＭＬファイルを概念的に示す説明図である。
【図５】本実施例のネットワークシステム１０におけるウィザード表示処理の流れを示すフローチャートである。
【図６】ウィザード表示処理における表示画面の一例を示す説明図である。
【図７】変形例としてのネットワークシステムの構成を概略的に示す説明図である。
【符号の説明】
【００７２】
１０…ネットワークシステム
１００…プリンタ
１１０…ＣＰＵ
１２０…操作部
１３０…表示部
１４０…プリンタエンジン
１５０…カードインターフェース
１５２…カードスロット
１５４…メモリカード
１６０…ネットワークインターフェース
１７０…内部記憶装置
１７１…ネットワークプロトコル制御部
１７２…ＨＴＴＰサーバ
１７３…レイヤ設定部
１７４…Ｗｅｂプログラム生成部
１７５…印刷処理部
１７８…ＨＴＭＬファイル
１９０…ネットワークプロトコル制御部
１９２…ＣＰＵ
１９４…内部記憶装置
１９６…ネットワークインターフェース
２００…ＤＴＶ
２１０…ＣＰＵ
２２０…操作部
２３０…表示部
２６０…ネットワークインターフェース
２７０…内部記憶装置
２７２…Ｗｅｂブラウザ
【図１】
0004742850.tif 000002
【図２】
0004742850.tif 000003
【図３】
0004742850.tif 000004
【図４】
0004742850.tif 000005
【図５】
0004742850.tif 000006
【図６】
0004742850.tif 000007
【図７】
0004742850.tif 000008