(57)【要約】【課題】  管理テーブル等を持たずに、ＷＥＢページ間の遷移を制御できる迷路提供システムの提供を実現すること。【解決手段】  正しいアクセス元ＵＲＬ及び正しいアクセス先ＵＲＬを予め記憶した記憶手段と、アクセス元のＷＥＢページのＵＲＬを取得するアクセス元ＵＲＬ取得手段と、取得したアクセス元ＵＲＬが正しいアクセス元ＵＲＬであるか否かを判定するアクセス元判定手段と、判定の結果正しいアクセス元である場合にのみ正しいアクセス先ＵＲＬを含むＷＥＢページを生成するＷＥＢページ生成手段と、生成されたＷＥＢページを端末に送信するＷＥＢページ送信手段とを備える。  【選択図】  図５
2005165898.tif 000002
【特許請求の範囲】
【請求項１】
正しいアクセス元ＵＲＬ及び正しいアクセス先ＵＲＬを予め記憶した記憶手段と、アクセス元のＷＥＢページから現ＵＲＬにアクセスされたときに当該アクセス元のＷＥＢページのＵＲＬを取得するアクセス元ＵＲＬ取得手段と、当該取得したアクセス元ＵＲＬが前記記憶手段に記憶されている正しいアクセス元ＵＲＬであるか否かを判定するアクセス元判定手段と、この判定の結果正しいアクセス元である場合には前記現ＵＲＬに対応するＷＥＢページとして前記正しいアクセス先ＵＲＬを含むＷＥＢページを生成し、前記判定の結果正しいアクセス元でない場合には前記現ＵＲＬに対応するＷＥＢページとして前記正しいアクセス先ＵＲＬを含まないＷＥＢページを生成するＷＥＢページ生成手段と、当該生成されたＷＥＢページを前記現ＵＲＬにアクセスした端末に送信するＷＥＢページ送信手段とを備えたことを特徴とするＷＥＢ上の迷路提供システム。
【請求項２】
請求項１記載の迷路提供システムにおいて、
前記記憶手段に、所定の褒賞条件を予め格納すると共に、
前記現ＵＲＬにアクセスされたときに当該アクセス元の端末から当該端末がＷＥＢサーフィン中に得た褒賞要件を取得する褒賞要件取得手段と、当該取得した褒賞要件が前記所定の褒賞条件を満たしているか判定する褒賞条件判定手段とを備え、
前記ＷＥＢページ生成手段は、前記褒賞条件が満たされている場合と満たされていない場合とで異なるＷＥＢページを生成することを特徴としたＷＥＢ上の迷路提供システム。
【請求項３】
予めＷＥＢページ生成プログラムの雛型プログラム及び迷路定義を格納し、ＷＥＢページ生成プログラムをプログラム識別子と関連付けて格納する記憶手段と、ＷＥＢページ生成プログラムを作成するための作成手段とを備え、
前記雛型プログラムは、アクセス元のＷＥＢページから現ＵＲＬにアクセスされたときに取得したアクセス元ＵＲＬが前記ＷＥＢページ生成プログラムに記述されている正しいアクセス元ＵＲＬの識別子に対応するか否かを判定し、この判定の結果正しいアクセス元である場合には前記現ＵＲＬに対応するＷＥＢページとして正しいアクセス先ＵＲＬの識別子を含むＷＥＢページを生成し、前記判定の結果正しいアクセス元でない場合には前記現ＵＲＬに対応するＷＥＢページとして正しいアクセス先ＵＲＬの識別子を含まないＷＥＢページを生成する処理をコンピュータに実行させる基本機能処理部と、前記アクセス元ＵＲＬの識別子及びアクセス先ＵＲＬの識別子を含むＵＲＬ識別子セット情報を記述するＵＲＬ識別子記述領域とを備え、
前記迷路定義は、プログラム識別子と関連付けられたＵＲＬ識別子セット情報を備えたＷＥＢ上の迷路構築システムにおいて、
前記作成手段に、
前記迷路定義から、特定のプログラム識別子と関連付けられたＵＲＬ識別子セット情報を読み出す処理と、
当該読み出したＵＲＬ識別子セット情報を前記雛型プログラムの前記ＵＲＬ識別子記述領域に記述する処理と、
ＵＲＬ識別子セット情報を記述した当該雛型プログラムをＷＥＢページ生成プログラムとし、当該ＷＥＢページ生成プログラムと前記プログラム識別子とを関連付け、前記記憶手段に格納する処理と、
を実行させることを特徴としたＷＥＢ上の迷路構築プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＷＥＢ上のＷＥＢページを使った迷路提供システム及び迷路構築プログラムに関する。
【背景技術】
【０００２】
従来、ＷＥＢ上の複数のＷＥＢページ間の遷移を制御する場面においては、以下のような処理が行われていた。（１）遷移元となる既存のＷＥＢページから遷移先となる既存のＷＥＢページを抽出して、（２）当該遷移先のＷＥＢページへの遷移が許可された遷移元のＷＥＢページを示すページ遷移ルールを作成し、（３）当該遷移先のＷＥＢページへの遷移が要求されたセッションの現在ページ名をセッション毎に管理し、ページ管理テーブルに設定する。そして、（４）当該現在ページ名が前記ページ遷移ルール中の遷移元ページと一致する場合に当該遷移先ページへの遷移を許可していた（特許文献１参照）。
【０００３】
しかしながら、上記従来例では以下の問題が生じる。
【０００４】
上記従来例では、ＷＥＢページ、前記（２）のページ遷移ルール、前記（３）のページ管理テーブルを単体のサーバに置いて運用する場合はよいが、例えば、ＷＥＢページを複数のＷＥＢサーバに分散し、あるＷＥＢサーバのＷＥＢページから、他のＷＥＢサーバのＷＥＢページへの遷移のようなＷＥＢサーバをまたがる遷移の制御に関しては、以下の理由によりうまく機能しない。
【０００５】
まず、従来例にあっては、前記（２）のページ遷移ルールを作成し、参照しなければＷＥＢページの遷移の制御を行うことができない。各ＷＥＢサーバでページ遷移ルールを独自に作成した場合、それぞれのＷＥＢサーバで持っているページ遷移ルールの情報の連係がとれず、1台のＷＥＢサーバ内にあるＷＥＢページ間の遷移であればよいが、ＷＥＢサーバをまたがってしまっては、ＷＥＢページの遷移の制御はできない。そこで、遷移の制御対象となる全てのＷＥＢページのページ遷移ルールを一括して作成し、そのページ遷移ルールを複数のＷＥＢサーバに配布などし、全てのＷＥＢサーバで同じページ遷移ルールを備える方法も考えられるが、さほど合理的ではなく、各ＷＥＢサーバ間で情報の整合性を維持していくのも難しい。
【０００６】
次に、前記（３）のページ管理テーブルでは、ＷＥＢサーバに対するセッションＩＤベースでユーザ管理を行っている。よってページ管理テーブルを分散させてしまっては、各ＷＥＢサーバ間のセッションＩＤの連係はとれず、ＷＥＢサーバが異なるＷＥＢページ間の遷移の制御はできない。そこで、ページ管理テーブルを単体の管理サーバなどで集中管理した場合、ＷＥＢサーバはユーザからアクセスを受付けた後、その都度管理サーバにアクセスし、セッションＩＤ等の情報を登録しなければならず、せっかくＷＥＢページを分散しても無駄な通信等の動作が生じてしまう。
【特許文献１】特開平１１−１６７５８４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明は、かかる従来例の有する不都合を改善し、特に、管理テーブル等を持たずに、ＷＥＢページ間の遷移を制御できるＷＥＢ上の迷路提供システムを提供し、上記迷路提供システムを構成するためのＷＥＢページ生成プログラムを、ＷＥＢページ間のリンク関係を考慮した上で、比較的容易に作成できるＷＥＢ上の迷路構築システムを提供することを主たる課題とする。
【課題を解決するための手段】
【０００８】
上記課題を達成するため、請求項１記載の発明は、正しいアクセス元ＵＲＬ及び正しいアクセス先ＵＲＬを予め記憶した記憶手段と、アクセス元のＷＥＢページから現ＵＲＬにアクセスされたときに当該アクセス元のＷＥＢページのＵＲＬを取得するアクセス元ＵＲＬ取得手段と、当該取得したアクセス元ＵＲＬが記憶手段に記憶されている正しいアクセス元ＵＲＬであるか否かを判定するアクセス元判定手段と、この判定の結果正しいアクセス元である場合には現ＵＲＬに対応するＷＥＢページとして正しいアクセス先ＵＲＬを含むＷＥＢページを生成し、判定の結果正しいアクセス元でない場合には現ＵＲＬに対応するＷＥＢページとして正しいアクセス先ＵＲＬを含まないＷＥＢページを生成するＷＥＢページ生成手段と、当該生成されたＷＥＢページを現ＵＲＬにアクセスした端末に送信するＷＥＢページ送信手段とを備えた、という構成を採っている。
【０００９】
また、請求項２記載の発明は、請求項１記載の迷路提供システムにおいて、記憶手段に、所定の褒賞条件を予め格納すると共に、現ＵＲＬにアクセスされたときに当該アクセス元の端末から当該端末がＷＥＢサーフィン中に得た褒賞要件を取得する褒賞要件取得手段と、当該取得した褒賞要件が所定の褒賞条件を満たしているか判定する褒賞条件判定手段とを備え、ＷＥＢページ生成手段は、褒賞条件が満たされている場合と満たされていない場合とで異なるＷＥＢページを生成する、という構成を採っている。
【００１０】
また、請求項３記載の発明は、予めＷＥＢページ生成プログラムの雛型プログラム及び迷路定義を格納し、ＷＥＢページ生成プログラムをプログラム識別子と関連付けて格納する記憶手段と、ＷＥＢページ生成プログラムを作成するための作成手段とを備え、雛型プログラムは、アクセス元のＷＥＢページから現ＵＲＬにアクセスされたときに取得したアクセス元ＵＲＬがＷＥＢページ生成プログラムに記述されている正しいアクセス元ＵＲＬの識別子に対応するか否かを判定し、この判定の結果正しいアクセス元である場合には現ＵＲＬに対応するＷＥＢページとして正しいアクセス先ＵＲＬの識別子を含むＷＥＢページを生成し、判定の結果正しいアクセス元でない場合には現ＵＲＬに対応するＷＥＢページとして正しいアクセス先ＵＲＬの識別子を含まないＷＥＢページを生成する処理をコンピュータに実行させる基本機能処理部と、アクセス元ＵＲＬの識別子及びアクセス先ＵＲＬの識別子を含むＵＲＬ識別子セット情報を記述するＵＲＬ識別子記述領域とを備え、迷路定義は、プログラム識別子と関連付けられたＵＲＬ識別子セット情報を備えたＷＥＢ上の迷路構築システムにおいて、作成手段に、以下の処理を実行させる。まず、迷路定義から、特定のプログラム識別子と関連付けられたＵＲＬ識別子セット情報を読み出す処理と、当該読み出したＵＲＬ識別子セット情報を雛型プログラムのＵＲＬ識別子記述領域に記述する処理を実行させる。さらに、ＵＲＬ識別子セット情報を記述した当該雛型プログラムをＷＥＢページ生成プログラムとし、当該ＷＥＢページ生成プログラムとプログラム識別子とを関連付け、記憶手段に格納する処理を実行させる、という構成を採っている。
【発明の効果】
【００１１】
遷移元のＨＴＭＬページのＵＲＬを利用する事により、利用者のＨＴＭＬページ間の遷移を制御する事が可能である。さらに、上記ＨＴＭＬページ間の制御をするために、遷移元のＨＴＭＬページの情報を保存するデータベース等を用意する必要はない。よって、単体のＷＥＢサーバに縛られる事なく、複数のＷＥＢサーバを使い、自由に仮想迷路を構築及び運用する事が出来る。
【発明を実施するための最良の形態】
【００１２】
以下、図面を参照しつつ本発明の一実施形態について説明する。
【００１３】
図１は、本発明が実現するＷＥＢ上のＨＴＭＬ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）ページ（ＷＥＢページ）によって構築する仮想迷路の概念図である。図１を基に、仮想迷路についての概念を説明する。
【００１４】
仮想迷路は、１つ又は複数のステージから構成されている。ステージ内には、複数のＨＴＭＬページが存在し、リンク（ハイパーテキスト・リンクなど）によって各ＨＴＭＬページ間が蜘蛛の巣状に結ばれている。
【００１５】
リンクには、正解ルート及び間違いルートという２つの種類があり、仮想迷路の製作者によって予め設定されている。ここで、正解ルートとは、予め設定された順番どおりにリンクを遷移することによって、最終的にゴールに辿り着くルートであり、正解ルートは１つしか存在しないようになっている。一方、間違いルートとは、前記正解ルート以外の全てのルートをいい、当該間違いルートを遷移し続けてもゴールには辿り着かない仕組みになっている。図１中の点線矢印は、正解ルートを表し、実線矢印は間違いルートを表している。具体的には、ＨＴＭＬページを「スタート」―「正解Ａ」―「正解Ｂ」―「正解Ｃ」―「道標」―「ゴール」という順番で辿るルートが正解ルートであり、前記ルート以外の全てのルートは間違いルートである。
【００１６】
図１では、「正解Ａ」と「間違いＡ」、「正解Ｂ」と「間違いＢ」、「正解Ｃ」と「間違いＣ」、「道標」と「間違いＥ」及び「ゴール」と「間違いＦ」はそれぞれセットになっている。セットになっている２つのＨＴＭＬページは、同一ＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）の異なるＨＴＭＬページを表している。後述する各種条件により、仮想迷路の利用者（以下、利用者という）に対して表示するＨＴＭＬページが異なるのである。以下、「正解Ａ」と「間違いＡ」はブロックＡ、「正解Ｂ」と「間違いＢ」はブロックＢ、「正解Ｃ」と「間違いＣ」はブロックＣ、「道標」と「間違いＥ」はブロックＥ、「ゴール」と「間違いＦ」はブロックＦとする。
【００１７】
ここで、上記ＨＴＭＬページは、スタートページ、間違いルート上ページ、正解ルート上ページ、道標ページ及びゴールページなどの種類を含んでいる。以下、各ＨＴＭＬページの特徴及び性質について説明する。
【００１８】
スタートページは、仮想迷路の利用者が最初に訪れるＨＴＭＬページである。スタートページには、同一ステージ内の、遷移先となる１又は複数の他のＨＴＭＬページへのリンクが含まれている。前記スタートページにとっての「他のＨＴＭＬページ」とは、間違いルート上にあるＨＴＭＬページ（間違いルート上ページ）、正解ルート上にあるＨＴＭＬページ（正解ルート上ページ）である。図１では、「スタート」がスタートページを表している。
【００１９】
間違いルート上ページは、間違いルート上に存在するＨＴＭＬページである。間違いルート上ページには、同一ステージ内の、遷移先となる１又は複数の他のＨＴＭＬページへのリンクが含まれている。前記間違いルート上ページにとっての「他のＨＴＭＬページ」とは、スタートページ及び他の間違いルート上ページである。しかし、「他の間違いルート上ページ」の中で、後述する本仮想迷路構築の仕組み上、リンクをはることが出来ない他の間違いルート上ページが存在する。具体的な内容については、後ほど説明をする。図１では、「間違いＡ」、「間違いＢ」、「間違いＣ」、「間違いＤ」、「間違いＥ」及び「間違いＦ」が間違いルート上ページを表している。原則として、当該間違いルート上ページを経由してゴールページに辿り付く場合はない。しかし、一度スタートページに戻ればゴールページまで辿り着く可能性はある。
【００２０】
正解ルート上ページは、正解ルート上に存在するＨＴＭＬページである。正解ルート上ページには、同一ステージ内の、遷移先となる１又は複数の他のＨＴＭＬページへのリンクが含まれている。前記正解ルート上ページにとっての「他のＨＴＭＬページ」とは、スタートページ、（次の順番どおりの）正解ルート上ページ、間違いルート上ページ、後述する道標ページ及び後述するゴールページである。しかし、「他のＨＴＭＬページ」の中で、後述する本仮想迷路構築の仕組み上、リンクをはることが出来ない間違いルート上ページが存在する。具体的な内容については、後ほど説明をする。図１では、「正解Ａ」、「正解Ｂ」及び「正解Ｃ」が正解ルート上ページを表している。
【００２１】
道標ページは、正解ルート上且つ各ステージの終点に存在しており（ただし、最終ステージの終点はゴールページとなる）、次のステージ（のＨＴＭＬページ）へのリンクを含んだＨＴＭＬページである。次のステージへのリンクとは、次のブロックへのリンクである。図１では、ステージ１の道標ページから、いきなりステージ２のゴールページに遷移するようになっているが、実際は、ゴールページの前に複数の正解ルート上ページや間違いルート上ページが存在する。図１では、「道標」が道標ページを表している。正解ルート（正解ルート上ページ）を順番どおり遷移しなければ、道標ページに辿り着かず、当該道標ページに辿り着かなければ、次のステージへ進む事は出来ない仕組みになっている。さらに、上記間違いルート上ページ及び正解ルート上ページ同様、後述する本仮想迷路構築の仕組み上、リンクをはることが出来ない間違いルート上ページが存在する。具体的な内容については、後ほど説明をする。
【００２２】
ゴールページは、最終ステージの終点に存在するＨＴＭＬページである。正解ルートを、設定された順序どおりに遷移した利用者が最終的に辿り着くＨＴＭＬページであり、ゲーム（仮想迷路）のゴールとなるＨＴＭＬページである。図１では、「ゴール」がゴールページを表している。
【００２３】
以上が、各ＨＴＭＬページの説明である。次に、各ＨＴＭＬページの説明をふまえた上で、上記ブロックについての説明を行う。
【００２４】
本実施形態では、スタートページは必ず単体で存在する（他に同一ＵＲＬの異なるＨＴＭＬページはない）ＨＴＭＬページである。また、間違いルート上ページは単体でも存在するが、同一ＵＲＬ且つ他の種類のＨＴＭＬページ（正解ルート上ページ、道標ページ又はゴールページ）が存在する場合もある。そして、正解ルート上ページ、道標ページ及びゴールページには、必ず同一ＵＲＬの間違いルート上ページが存在する。
【００２５】
図１において、ブロックＡ、ブロックＢ、ブロックＣ、ブロックＥ及びブロックＦは、同一ＵＲＬの異なるＨＴＭＬページがあることを表している。ブロックＡ、ブロックＢ及びブロックＣでは、正解ルート上ページと間違いルート上ページとが同一ＵＲＬのＨＴＭＬページになっている。前記ブロックを正解ブロックと呼ぶ。ブロックＥでは、道標ページと間違いルート上ページとが同一ＵＲＬのＨＴＭＬページになっている。前記ブロックを道標ブロックと呼ぶ。ブロックＦでは、ゴールページと間違いルート上ページとが同一ＵＲＬのＨＴＭＬページになっている。前記ブロックをゴールブロックと呼ぶ。以下、ブロックの取扱い方について説明する。
【００２６】
通常であれば、あるブロックのＨＴＭＬページへアクセスする場合、ブロック内には、同一ＵＲＬの異なる２つのＨＴＭＬページが存在するので、どちらのＨＴＭＬページを表示するのか判断出来ないはずである。しかし、本システムでは、ある条件によって同一ＵＲＬの異なる２つのＨＴＭＬページをそれぞれ切り替えて表示する仕組みを備えている。利用者が、正解ルート上ページ、道標ページ又はゴールページに辿り着くためには条件がある。１つ目の条件は、正解ルート上のリンクを順番どおり遷移し、当該ブロックにアクセスしなければならないということである。２つ目の条件は、インターネットブラウザのＵＲＬ入力欄に当該ブロックのＵＲＬを入力するようなアクセスではなく、ＨＴＭＬページ上に埋め込まれたリンクを使用してＨＴＭＬページ間を遷移しなければならない。前記２つの条件を満たさない場合、間違いルート上ページが表示される。
【００２７】
ここで、ブロック間の遷移についての補足をおこなう。上述したが、ある間違いルート上ページから、リンクをはることが出来ない他の間違いルート上ページがある。また、正解ルート上ページ、道標ページから、リンクをはることが出来ない間違いルート上ページがある。
【００２８】
図２を基に、前記リンクをはることが出来ない間違いルート上ページについて説明する。図２では、正解ブロックが３つある。ＵＲＬがＸであるブロックＸ、ＵＲＬがＹであるブロックＹ及びＵＲＬがＺであるブロックＺである。ブロックＸには、正解ルート上ページＸと、間違いルート上ページＸとが含まれる。そして、ブロックＹには、正解ルート上ページＹと、間違いルート上ページＹとが含まれる。さらに、ブロックＺには、正解ルート上ページＺと、間違いルート上ページＺとが含まれている。図２の前提として、ブロックＸからブロックＹへの遷移は、正解ルート上の遷移とし、ブロックＹからブロックＺへの遷移は間違いルート上の遷移とする。上述した正解ルート上ページ及び間違いルート上ページの説明に添った形でリンクを作成すると、図２の矢印のようになる。結論からいうと、２重線矢印は本仮想迷路で有り得るルートであり、通常の矢印は本仮想迷路では有り得ないルートを表している。以下、説明するにあたって、ブロックＹからブロックＸへの遷移及びブロックＺからブロックＹへの遷移は考えない事にする。
【００２９】
まず、ブロックＸからブロックＹへの遷移について説明する。考えられるルートは３つある。（１）正解ルート上ページＸから、正解ルート上ページＹへのルート。（２）正解ルート上ページＸから、間違いルート上ページＹへのルート。（３）間違いルート上ページＸから、間違いルート上ページＹへのルートである。
【００３０】
（１）のルートは、上記前提により、ブロックＸからブロックＹへの遷移は正解ルートの遷移であるため、正解ルート上ページＸから正解ルート上ページＹへのルートは必ず存在しなければならない。前記（１）のルートによる遷移は、ＵＲＬがＸのＨＴＭＬページから、ＵＲＬがＹのＨＴＭＬページへの遷移になる。次に、（２）及び（３）のルートに着目する。（２）及び（３）のルートも（１）同様に、ＵＲＬがＸのＨＴＭＬページから、ＵＲＬがＹのＨＴＭＬページへの遷移である。つまり、（１）のルートと（２）及び（３）のルートとが重複してしまう。詳細は後述するが、本仮想迷路では、ブロック内の同一ＵＲＬの２つのＨＴＭＬページのうち、どちらを表示するのかは、遷移元のＨＴＭＬページのＵＲＬ次第で決定している。前記の例でいうと、ブロックＹは、ＵＲＬがＸのいずれかのＨＴＭＬページからアクセスがあった場合には、常に正解ルート上ページＹを表示するよう設定されている。よって、正解ルート上ページＸから正解ルート上ページＹへの遷移のみ認めなければならないのにも関わらず、（２）及び（３）のルートのように間違いルート上ページＹを表示すべき場面においても、正解ルート上ページＹが表示されてしまうという問題が有る。よって、図２の場面では、正解ルート上ページＸから、間違いルート上ページＹへの遷移も存在してはならない。なぜならば、ＨＴＭＬページの種類は問わず、ＵＲＬがＸのＨＴＭＬページからＵＲＬがＹであるブロックＹへ遷移した場合、必ず正解ルート上ページＹに遷移してしまうからである。詳しくは後述するが、上記（２）及び（３）のようなルートは、ＨＴＭＬページを生成する際に、作成されないような仕組みを取っている。
【００３１】
さらに、前記説明では、ある正解ブロックから次の正解ルート上の正解ブロックへの遷移について説明してきたが、以下の場合も同様である。正解ブロックから次の正解ルート上の道標ブロックへの遷移、道標ブロックから次の正解ルート上の正解ブロックへの遷移、正解ブロックから次の正解ルート上のゴールブロックへの遷移の場合も同様である。よって、ある正解ルート上のブロックから、次の順番の正解ルート上のブロックへの遷移において、正解ルート上ページから正解ルート上ページへの遷移、正解ルート上ページから道標ページ、正解ルート上ページからゴールページ又は道標ページから正解ルート上ページ以外のルートは作成出来ないようになっている。上記ブロックＸからブロックＹへの遷移の具体例としては、図１のステージ１中の、ブロックＡからブロックＢへの遷移のような場合が挙げられる。
【００３２】
一方、ブロックＹからブロックＺへの遷移について説明する。考えられるルートは３つある。（４）正解ルート上ページＹから、正解ルート上ページＺへの遷移。（５）正解ルート上ページＹから、間違いルート上ページＺへの遷移。（６）間違いルート上ページＹから、間違いルート上ページＺへの遷移である。上記３つのルートについては、上記前提により間違いルート上の遷移であるため、いずれにせよ間違いルート上ページが表示されればよい。しかし、（４）のルートは、上記前提より、間違いルート上のルートであることから、正解ルート上ページＺに遷移してはならない。よって、本仮想迷路では有り得ないルートとなっている。（５）及び（６）のルートについては、いずれも間違いルート上ページＺへの遷移となるので、本仮想迷路の仕組み上問題は無く、本仮想迷路で存在しうるルートとなっている。前記説明では正解ブロックから次の正解ルート上にない正解ブロックへの遷移について説明してきたが、以下の場合も同様である。正解ブロックから次の正解ルート上にない道標ブロックへの遷移、道標ブロックから次の正解ルート上にない正解ブロックへの遷移、正解ブロックから次の正解ルート上にないゴールブロックへの遷移の場合も同様である。上記ブロックＹからブロックＺへの遷移の具体例としては、図１のステージ１中の、ブロックＢからブロックＥへの遷移のような場合が挙げられる。
【００３３】
以下、図１のステージ１内を基に実際のＨＴＭＬページ間の遷移について説明する。
【００３４】
遷移元のＨＴＭＬページが「正解Ａ」で、前記「正解Ａ」にとっての遷移先が正解ブロックであるブロックＢの場合と、遷移元のＨＴＭＬページが「間違いＤ」で、前記「間違いＤ」にとっての遷移先が同様に正解ブロックであるブロックＢの場合とを比較する。「正解Ａ」からブロックＢへの遷移は、正解ルート上の順番どおりの遷移であるのに対し、「間違いＤ」からブロックＢへの遷移は、間違いルート上の遷移である。上記２例とも、同じＵＲＬのＨＴＭＬページへの遷移であることに変わりない。しかし、間違いルートを辿っているにも関わらず、正解ルート上ページ「正解Ｂ」を表示してしまっては、迷路としての面白みに欠けてしまう。よって、本迷路では、間違いルートを辿り、あるブロックに対してアクセスがあった場合には、同一ＵＲＬの２つの異なるＨＴＭＬページのうち、間違いルート上ページを表示するようにしている。一方、設定された順番どおりに正解ルートを辿っていることが判断出来る場合は、同一ＵＲＬの２つの異なるＨＴＭＬページのうち、正解ルート上ページ、道標ページ又はゴールページを表示するようにしている。よって、遷移元のＨＴＭＬページが「間違いＤ」で、前記「間違いＤ」にとっての遷移先がブロックＢの場合、間違いルート上ページを表示する。一方、遷移元のＨＴＭＬページが「正解Ａ」で、前記「正解Ａ」にとっての遷移先がブロックＢの場合、正解ルート上ページを表示する。前記仕組みを実現するためには、遷移される（アクセスされる）側のブロックが、遷移元のＨＴＭＬページのＵＲＬ等の情報を取得、判断等出来なくてはならないが、その仕組みについては後述する。
【００３５】
次いで、利用者のインターネットブラウザのＵＲＬ入力欄に、あるブロックのＵＲＬを直接入力した場合について説明する。図１の場面において、道標ブロックであるブロックＥのＵＲＬが直接入力された場合、表示するＨＴＭＬページは道標ページではなく、道標ページと同一ＵＲＬの間違いルート上ページを表示するようになっている。前記道標ページを表示するためには、正解ルートを「スタート」―「正解Ａ」―「正解Ｂ」―「正解Ｃ」と辿った後、当該ブロックＥにアクセスしなければならない。例として道標ページで説明したが、例えばゴールブロックであるブロックＦの場合についても考えてみる。例えば、Ｘさんという人が、本仮想迷路をクリアし、ゴールページのＵＲＬを知ったとする。その後、Ｘさんは知人のＹさんに、前記ゴールページのＵＲＬを教えた。Ｙさんは、インターネットブラウザのＵＲＬ入力欄より前記ＵＲＬを入力し、いきなりゴールしてしまうような事も考えられる。そこで、本迷路では制御をかけ、あくまでもＨＴＭＬページに埋め込まれたリンクによる遷移のみ認めるようにしている。
【００３６】
本迷路では、正解ルートという唯一のルートを遷移し続けることによって、ゴール（ページ）に辿り着くことが出来るようになっている。同一ＵＲＬの異なる２つのＨＴＭＬページの役目は、間違いルートを辿っているにも関わらず、正解ルート上ページ、道標ページ及びゴールページに辿り着くことの無いようにするものである。また、何らかの方法により、ゴールページ等のＵＲＬを知り、インターネットブラウザのＵＲＬ入力欄に前記ＵＲＬを入力し、いきなりゴールに辿り着こうとする利用者を制御するためにある。前記制御とは、利用者が間違いルートを辿っている場合や、インターネットブラウザのＵＲＬ入力欄から、正解ブロック、道標ブロック及びゴールブロックへのアクセスの場合、同一ＵＲＬの間違いルート上ページを表示し、正解ルート上ページ、道標ページ及びゴールページを見せないようにする制御のことである。前記制御の仕組みについては後述する。以上が、本発明が実現するＷＥＢ上のＨＴＭＬページによって構築する仮想迷路の概念の説明である。
【００３７】
以下、本実施形態において、仮想迷路を実現するための機器構成について説明する。
【００３８】
図３は、ＷＥＢ上で仮想迷路を実現するための機器構成図である。図３を基に仮想迷路（ゲーム）運用の際の機器構成等について説明をする。
【００３９】
まず、前記仮想迷路を実現するために、仮想迷路の運用側機器として１又は複数の迷路表示サーバ３並びに仮想迷路の利用側機器として１又は複数の利用者パーソナルコンピュータ１（端末）とを備えており、インターネット網３００と通信が出来るようになっている。利用者パーソナルコンピュータ１は、仮想迷路の利用者が使用するパーソナルコンピュータであり、インターネット閲覧用のソフトウェア（インターネットブラウザ）を利用する事により、ＷＥＢ上の仮想迷路に参加出来るようになっている。そして、迷路表示サーバ３は、利用者パーソナルコンピュータ１（のインターネットブラウザ）からアクセス（ＨＴＭＬページの表示要求）があった際に、当該要求に対応するＨＴＭＬページを生成し、利用者パーソナルコンピュータ１に対して前記生成したＨＴＭＬページを返信する機能を備えたサーバコンピュータである。本実施形態では、上記機器やインターネット網３００などを使用することにより、仮想迷路を実現するようになっている。
【００４０】
続いて、図4を基に、迷路表示サーバ３の詳細な構成を説明する。迷路表示サーバ３は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）５、記憶手段としてメモリ７及び大容量記憶９を備えており、各要素はバス１３に接続している。さらに、バス１３にはネットワークインターフェース１１が繋がっている。各要素は、バス１３を経由する事により、各要素間の情報や命令等の伝達を行っている。そして、ネットワークインターフェース１１を介してインターネット網３００に繋がっている。
【００４１】
大容量記憶９は、ＨＴＭＬ要求受付返信アプリケーション１７、ＨＴＭＬ生成プログラム２９（ＷＥＢページ生成プログラム）を含むＨＴＭＬ生成プログラム群２７及び設定ファイル２５を備えている。
【００４２】
ＨＴＭＬ要求受付返信アプリケーション１７は、利用者パーソナルコンピュータ１から、ある特定のＵＲＬのＨＴＭＬページに対するＨＴＭＬページの表示要求（以下、ＨＴＭＬ表示要求という）を受け付ける処理である。そして、ＨＴＭＬ表示要求に含まれる利用者パーソナルコンピュータ１のインターネットブラウザ上に表示されていたＨＴＭＬページ（遷移元のＨＴＭＬページ）にとって遷移先となるＨＴＭＬページのＵＲＬ（現ＵＲＬ）を利用し、ＨＴＭＬ生成プログラム群２７の中から起動すべきＨＴＭＬ生成プログラム２９を探し、起動する処理である。また、ＨＴＭＬ生成プログラム２９が生成したＨＴＭＬページを、利用者パーソナルコンピュータ１（のインターネットブラウザ上）に返信する処理である。
【００４３】
次に、ＨＴＭＬ生成プログラム２９及び設定ファイル２５について説明する。ＨＴＭＬ生成プログラム２９は、ＨＴＭＬページを生成するためのプログラムである。上記仮想迷路の概念説明では、利用者はＨＴＭＬページに対してアクセスしているように説明してきた。しかし、実際にはＨＴＭＬ生成プログラム２９に対してのアクセスであり、利用者は、ＨＴＭＬ生成プログラム２９が生成したＨＴＭＬページを見るのである。ここで、正解ルート上にある正解ルート上ページ、道標ページ及びゴールページを生成するＨＴＭＬ生成プログラム２９には、正しい遷移元のＨＴＭＬページのＵＲＬが記述されている。「正しい遷移元のＨＴＭＬページのＵＲＬ」とは、特定の正解ルート上にある正解ルート上ページ、道標ページ及びゴールページにとって、予め設定された正解ルート上の１つ前に存在するＨＴＭＬページのＵＲＬのことである。本発明では、この「正しい遷移元のＨＴＭＬページのＵＲＬ」と、利用者パーソナルコンピュータ１からのＨＴＭＬ表示要求に含まれる遷移元のＨＴＭＬページのＵＲＬとを比較する事により、生成するＨＴＭＬページの種類を変えるようにしている。また、本実施形態では、１つのＨＴＭＬページを生成するために、１つのＨＴＭＬ生成プログラム２９が存在する。上記図１を基にした仮想迷路の概念説明では、正解ブロック、道標ブロック及びゴールブロックの場合、同一ＵＲＬの異なる２つのＨＴＭＬページが存在する。前記ブロックの場合、上述した条件に応じて、１つのＨＴＭＬ生成プログラム２９によって、同一ＵＲＬの異なる２つのＨＴＭＬページのうち、どちらか１つを生成するようになっている。前記設定ファイル２５は、ＵＲＬと、前記ＵＲＬのＨＴＭＬページを生成するためのＨＴＭＬ生成プログラム２９とを対応付けている。本システムでは、ＷＥＢサーバに静的なＨＴＭＬページを備えてはおらず、利用者は静的なＨＴＭＬページを見ているつもりでも、その都度ＨＴＭＬ生成プログラム２９が動的に生成したＨＴＭＬページを見ているのである。前記ＵＲＬのＨＴＭＬページを表示するためには、前記ＵＲＬのＨＴＭＬページを生成するためのＨＴＭＬ生成プログラム２９を起動しなくてはならない。その際、設定ファイル２５を参照することによって、ＵＲＬから、起動すべきＨＴＭＬ生成プログラム２９を把握することが出来る。ここで、「ＷＥＢサーバに静的なＨＴＭＬページを備えてはおらず」と上述したが、ＷＥＢサーバ上に、正解ルートとは全く関係のない静的なＨＴＭＬページを配置し、仮想迷路の利用者を混乱させるようにしてもよい。
【００４４】
また、ＨＴＭＬ生成プログラム２９は、ルール等確認部３１、元ＵＲＬ取得部３３、表示ＨＴＭＬ決定部３５及びＨＴＭＬ生成部３７という４つの処理部を備えている。以下に、ＨＴＭＬ生成プログラム２９が備える、上記４つの処理部について説明する。
【００４５】
ルール等確認部３１は、利用者パーソナルコンピュータ１からＨＴＭＬ表示要求を受けたＨＴＭＬ生成プログラム２９に、ルールが設定されているか否かを確認及びルールが設定されている場合はそのルールについての処理を行う処理部である。例えばルールとは、あるＨＴＭＬページに対しアクセスを許可する時間帯を設定するような「タイマールール」、あるＨＴＭＬページのコンテンツとして簡単なクイズを表示させ、その回答を受け付けるような「ユーザ入力確認ルール」、ＷＥＢサーフィン中に特定のＨＴＭＬページにアクセスした利用者パーソナルコンピュータ１に対し、Ｃｏｏｋｉｅ等の褒賞要件を埋め込むようにしておき、その褒賞要件がルール等確認部３１に予め記述されているルール（褒賞条件）を満たすか否か又は前記特定のＨＴＭＬページにアクセスし、褒賞要件を受け取っているか否かにより、生成するＨＴＭＬページの内容を変える「Ｃｏｏｋｉｅルール」等である。
【００４６】
元ＵＲＬ取得部３３は、利用者パーソナルコンピュータ１からのＨＴＭＬ表示要求から、アクセスを受けたＨＴＭＬページにとって遷移元となるＨＴＭＬページのＵＲＬ（アクセス元ＵＲＬ）を取得する処理である。遷移元のＨＴＭＬページのＵＲＬを取得する方法については後述する。
【００４７】
表示ＨＴＭＬ決定部３５は、正解ブロック（図１のブロックＡ、ブロックＢ及びブロックＣ参照）、道標ブロック（図１のブロックＥ参照）及びゴールブロック（図１のブロックＦ参照）のＨＴＭＬページを生成するＨＴＭＬ生成プログラム２９に存在する処理部である。利用者が、正解ルートを特定の順番どおりに遷移しているか否かを判断するための処理部である。前記判断するための方法は後述する。
【００４８】
ＨＴＭＬ生成部３７は、前記表示ＨＴＭＬ決定部３５の判断結果をふまえ、実際にＨＴＭＬページを生成する処理部である。
【００４９】
次に、表示ＨＴＭＬ決定部３５の説明中でもふれたが、遷移元のＨＴＭＬページのＵＲＬを利用し、「正解ルートの順番どおりの遷移」であるか、「間違いルートによる遷移」であるか判断する方法について説明する。ブロック（図１参照）の場合、同一ＵＲＬの異なる２つのＨＴＭＬページのうちどちらのＨＴＭＬページを表示（生成）するのかは、上述した２つの条件を満たすか否かで決まる。正解ルートを順番どおり遷移しているか否か、インターネットブラウザのＵＲＬ入力欄からのアクセスか否かということである。本システムでは、前記条件を判断する際、遷移元のＨＴＭＬページのＵＲＬを利用している。スタートページ及び単体で存在する間違いルート上ページを生成するためのＨＴＭＬ生成プログラム２９以外のＨＴＭＬ生成プログラム２９には、正しい遷移元のＨＴＭＬページのＵＲＬとして、１つ前の正解ルート上にあるスタートページ、正解ルート上ページ（正解ブロック）又は道標ページ（道標ブロック）のＵＲＬが１つ記述されている。正解ルートは１つのみである事から、ＨＴＭＬ表示要求から取得した遷移元のＨＴＭＬページのＵＲＬと、ＨＴＭＬ生成プログラム２９に設定されている正しい遷移元のＨＴＭＬページのＵＲＬとを比較し、一致した場合は、「正解ルートの順番どおりの遷移」が確認出来る。よって、間違いルート上ページではない、正解ルート上ページ、道標ページ又はゴールページを表示するようになっている。一方、一致しない場合は、「間違いルートによる遷移」である事が判断出来るので、間違いルート上ページを表示するようになっている。さらに、各ＨＴＭＬ生成プログラム２９には、このＨＴＭＬ生成プログラム２９が生成するＨＴＭＬページにとって遷移先となるＨＴＭＬページのＵＲＬが複数記述されている。この遷移先のＨＴＭＬページのＵＲＬは、正解ルート上ページ、道標ページ及びゴールページに遷移する「正しい遷移先のＨＴＭＬページのＵＲＬ」と、間違いルート上ページに遷移する「間違った遷移先のＨＴＭＬページのＵＲＬ」とに分けられる。ここで「１つ前の正解ルート上にあるスタートページ、正解ルート上ページ（正解ブロック）又は道標ページ（道標ブロック）のＵＲＬ」について補足する。例えば、遷移元のＨＴＭＬページが、スタートページである場合、スタートページには、同一ＵＲＬの異なるＨＴＭＬページは存在しないので、遷移される側のＨＴＭＬページから遷移元のＨＴＭＬページのＵＲＬを見れば、スタートページからの遷移である事が把握出来る。しかし、遷移元のＨＴＭＬページが、正解ルート上ページ及び道標ページの場合は、同一ＵＲＬの間違いルート上ページが必ず存在する。よって、遷移元のＨＴＭＬページのＵＲＬだけを見て、正解ルート上ページ又は道標ページからの遷移を把握出来ない。しかし、上述したブロック間の遷移の説明（図２を基にした説明文中）にもあるとおり、あるブロックから次の正解ルート上にあるブロックへの遷移の場合、以下の４パターンのルート以外のルートは除外されるようになっている。（１）あるブロックの正解ルート上ページから次のブロックの正解ルート上ページへのルート、（２）あるブロックの正解ルート上ページから次のブロックの道標ページへのルート、（３）あるブロックの正解ルート上ページから次のブロックのゴールページへのルート、（４）あるブロックの道標ページから次のブロックの正解ルート上ページへのルートである。また、あるブロックから次の正解ルート上ではない他のブロックへの遷移の場合、あるブロック内の同一ＵＲＬの異なる２つのＨＴＭＬページから、他のブロックへのいずれのアクセスも、間違いルートの遷移によるものである。そこで、遷移元のＨＴＭＬページが間違いルート上ページであるか否かまでの判断は必要なく、遷移元のＨＴＭＬページのＵＲＬのみによって、正解ルートによる遷移か否かを判断し、間違いルートの遷移であった場合は間違いルート上ページを表示すれば足りるのである。よって、ＨＴＭＬ生成プログラム２９に記述された正しい遷移元のＨＴＭＬページのＵＲＬと、遷移元のＨＴＭＬページの種類には関わらず、ＨＴＭＬ表示要求から取得した遷移元のＨＴＭＬページのＵＲＬとの比較のみによって、正解ルートを辿ってきたか否かの判断が可能となる。また、後述するが、インターネットブラウザのＵＲＬ入力欄からのアクセスである場合、ＨＴＭＬ表示要求に含まれる遷移元のＨＴＭＬページのＵＲＬは「空白」になる。よって、ＨＴＭＬ生成プログラム２９に記述のある正しい遷移元のＨＴＭＬページのＵＲＬとは一致しないので、間違いルート上ページを生成する。本システムでは、上述した方法により、正解ルートからの遷移か否かを判断している。
【００５０】
続いて、元ＵＲＬ取得部３３の説明中でもふれたが、ＨＴＭＬ表示要求から遷移元のＨＴＭＬページのＵＲＬを取得する方法について説明する。本システムでは、遷移元のＨＴＭＬページのＵＲＬを取得するため、以下の公知技術を利用する。
【００５１】
遷移元のＨＴＭＬページのＵＲＬを取得する際、ＲＦＣ（Ｒｅｑｕｅｓｔ  Ｆｏｒ  Ｃｏｍｍｅｎｔ）２６１６という文書に記載されたリクエストヘッダフィールド（ｒｅｆｅｒｅｒ）を使う。インターネットブラウザを使い、ＷＥＢサーバなどにＨＴＭＬページの表示要求（リクエスト）をすると、前記表示要求の中に遷移元のＨＴＭＬページのＵＲＬも含まれているのである。この遷移元のＨＴＭＬページのＵＲＬが格納される領域を、リクエストヘッダフィールドといい、本システムでは前記リクエストヘッダフィールド内のＵＲＬを利用するものである。さらに、利用者が、インターネットブラウザのＵＲＬ入力欄にＵＲＬを手入力した場合、リクエストヘッダフィールド内は空白となる。インターネットブラウザによっては、ＷＥＢサーバに対して、遷移元のＨＴＭＬページのＵＲＬを送信しないという設定も出来るが、本仮想迷路を利用するためには、前記設定を行わない事が条件となる。
【００５２】
ここで、迷路表示サーバ３のＣＰＵ５が、利用者パーソナルコンピュータ１からＨＴＭＬ表示要求を受け付け、ＨＴＭＬ生成プログラム２９を起動するまでの処理の流れの概要を説明する。説明の前提として、設定ファイル２５において、ＵＲＬは「ｕｒｌ＿ａ」、前記ＵＲＬのＨＴＭＬページを生成するためのＨＴＭＬ生成プログラム２９は「ｐｒｏｇｒａｍ＿ａ」であると設定されているものとする。さらに、前記設定ファイル２５において、ＵＲＬは「ｕｒｌ＿ｂ」、前記ＵＲＬのＨＴＭＬページを生成するためのＨＴＭＬ生成プログラム２９は「ｐｒｏｇｒａｍ＿ｂ」であると設定されているものとする。
【００５３】
まず、迷路表示サーバ３のＣＰＵ５が、利用者パーソナルコンピュータ１のインターネットブラウザ上のＨＴＭＬページに埋め込まれたリンクをクリックする事によって発生するＨＴＭＬ表示要求を受け付ける事によって処理が開始する。次に、ＣＰＵ５は、ＨＴＭＬ表示要求から、遷移元のＨＴＭＬページにとって遷移先となるＨＴＭＬページのＵＲＬ（現ＵＲＬ）を取り出し、メモリ７に記憶する。その後、ＣＰＵ５は、メモリ７から前記ＵＲＬを取得する。続いて、ＣＰＵ５は、設定ファイル２５内を参照し、前記メモリ７から取得したＵＲＬと一致するＵＲＬを探し、このＵＲＬのＨＴＭＬページを生成するために起動すべきＨＴＭＬ生成プログラム２９を把握する。そして、ＣＰＵ５は、前記把握したＨＴＭＬ生成プログラム２９を起動させる。例えば、ＨＴＭＬ表示要求より取得したＵＲＬが「ｕｒｌ＿ａ」であれば、前記設定ファイル２５の前提（設定ファイル２５において、ＵＲＬは「ｕｒｌ＿ａ」、前記ＵＲＬのＨＴＭＬページを生成するためのＨＴＭＬ生成プログラム２９は「ｐｒｏｇｒａｍ＿ａ」であると設定されているものとする。）から、起動すべきＨＴＭＬ生成プログラム２９は「ｐｒｏｇｒａｍ＿ａ」である事が把握出来る。また、ＨＴＭＬ表示要求より取得したＵＲＬが「ｕｒｌ＿ｂ」であれば、前記設定ファイル２５の前提（設定ファイル２５において、ＵＲＬは「ｕｒｌ＿ｂ」、前記ＵＲＬのＨＴＭＬページを生成するためのＨＴＭＬ生成プログラム２９は「ｐｒｏｇｒａｍ＿ｂ」であると設定されているものとする。）から、起動すべきＨＴＭＬ生成プログラム２９は「ｐｒｏｇｒａｍ＿ｂ」である事が把握出来る。以上の処理によって、複数あるＨＴＭＬ生成プログラム２９の中から、特定のＨＴＭＬ生成プログラム２９を起動させる事が出来る。その後、ＣＰＵ５は、後述するＨＴＭＬ生成プログラム２９内のルール等確認部３１、元ＵＲＬ取得部３３、表示ＨＴＭＬ決定部３５及びＨＴＭＬ生成部３７に各処理を実行させることによりＨＴＭＬページを生成するのである。
【００５４】
図５は、ＨＴＭＬ生成プログラム２９の（各処理部の）処理のフローチャートである。前記フローチャートは、正解ブロックのＨＴＭＬページを生成する際の処理の流れを表している。以下、図５をもとに、ＨＴＭＬ生成プログラム２９の起動後から、ＨＴＭＬページを生成し、このＨＴＭＬページを送信するまでの処理について説明する。ここで、上述したが、大容量記憶９に備わっているＨＴＭＬ生成プログラム２９には、正しい遷移元のＨＴＭＬページのＵＲＬと、正しい遷移先のＨＴＭＬページのＵＲＬとが記述されている。
【００５５】
まず、迷路表示サーバ３のＣＰＵ５は、ＨＴＭＬ表示要求を受けたＵＲＬ（現ＵＲＬ）に対応したＨＴＭＬ生成プログラムに、ルールが設定されているか否かについて判断する（Ｓ１０１）。
【００５６】
ルール（褒賞条件）が設定されている場合、ＣＰＵ５は、各ルールに対応した処理を行う（Ｓ１０５）。前記ステップＳ１０１及びステップＳ１０５の処理は、ＨＴＭＬ生成プログラム２９のルール等確認部３１が行う。例えば、前記ルールがＣｏｏｋｉｅルールの場合であれば、特定のＵＲＬ（現ＵＲＬ）に対してＨＴＭＬ表示要求を送信してきた利用者パーソナルコンピュータ１から、当該パーソナルコンピュータ１がＷＥＢサーフィン中に得たＣｏｏｋｉｅ（褒賞要件）を取得し（褒賞要件取得手段）、このＣｏｏｋｉｅが、前記ルールを満たすＣｏｏｋｉｅであるか否かの判定を行う（褒賞条件判定手段）。
【００５７】
前記ルール等確認部３１の処理の結果、ルールが設定されていない又は各ルールの条件を満たす場合、ＣＰＵ５は、前記ＨＴＭＬ表示要求から遷移元のＨＴＭＬページのＵＲＬを取得し（アクセス元ＵＲＬ取得手段）、メモリ７に記憶する（Ｓ１０２）。前記ステップＳ１０２の処理は、元ＵＲＬ取得部３３が行う。
【００５８】
次に、ＣＰＵ５は、メモリ７から前記遷移元のＨＴＭＬページのＵＲＬを取得し、前記取得したＵＲＬと、ＨＴＭＬ生成プログラム２９の表示ＨＴＭＬ決定部３５に予め設定された正しい遷移元のＨＴＭＬページのＵＲＬとを比較し、正解ルートを順番どおり遷移してきたか否かを判断する（アクセス元判定手段）（Ｓ１０３）。前記ステップＳ１０３の処理は、表示ＨＴＭＬ決定部３５が行う。
【００５９】
前記表示ＨＴＭＬ決定部３５の処理の結果、正解ルートを順番どおり遷移してきた事が判断出来る場合、ＣＰＵ５は、正しい遷移先のＨＴＭＬページのＵＲＬをリンクとして含む正解ルート上ページを生成する（ＷＥＢページ生成手段）（Ｓ１０４）。一方、前記ＨＴＭＬ生成部３７は、ステップＳ１０５の処理で、ルールの条件を満たさない場合、ＣＰＵ５は、正しい遷移先のＨＴＭＬページのリンクを含まない間違いルート上ページを生成する（ＷＥＢページ生成手段）（Ｓ１０６）。同様にして、ステップＳ１０３の処理で、間違いルートを遷移してきたと判断出来る場合、ＣＰＵ５は、正しい遷移先のＨＴＭＬページのＵＲＬをリンクとして含まない間違いルート上ページを生成する（ＷＥＢページ生成手段）（Ｓ１０６）。また、ステップS１０５で、ルールが満たされている場合と満たされていない場合とで異なるＨＴＭＬページを生成する。例えば、ルールを満たし、且つ正解ルートの遷移である場合のみ、正しい遷移先のＨＴＭＬページのリンクを含んだＨＴＭＬページを生成し、ルールは満たしているが、正解ルートの遷移でない場合には正しい遷移先のＨＴＭＬページのリンクを含まないＨＴＭＬページを生成するようにしてもよい。前記ステップＳ１０４及びステップＳ１０６の処理は、ＨＴＭＬ生成部３７が行う。
【００６０】
その後、当該生成されたＨＴＭＬページを前記現ＵＲＬにアクセスした利用者パーソナルコンピュータ１に送信する（ＷＥＢページ送信手段）（Ｓ１０７）。
【００６１】
以上が正解ブロックのＨＴＭＬページを生成するＨＴＭＬ生成プログラム２９の処理の流れである。上記処理の流れは、道標ブロック及びゴールブロックについても同様である。スタートページ及び単体で存在する間違いルート上ページを生成するＨＴＭＬ生成プログラム２９については、遷移先として正解ルート上にあるＨＴＭＬページ以外のリンクを備えたＨＴＭＬページを生成するようになっている。
【００６２】
図６は、ＷＥＢ上の仮想迷路を利用して広告をするための機器構成図である。仮想迷路の運用と広告機能とを実現するため、１又は複数の迷路表示サーバ３、１又は複数の利用者パーソナルコンピュータ１並びに１又は複数の広告主のＷＥＢサーバ４１を含んでいる。それぞれの機器はインターネット網３００と通信が出来るようになっている。例えば、迷路表示サーバ３で生成した特定のＨＴＭＬページから、広告主のＷＥＢサーバ４１の広告用ＨＴＭＬページ等とリンクさせ、広告としての機能を実現する場合もある。
【００６３】
図７は、仮想迷路の運用と、広告機能を組合せた運用の一例を表すイメージ図である。遷移元のＨＴＭＬページのＵＲＬによって、その遷移先であるＨＴＭＬページの内容を変える仮想迷路の特徴を利用し、遷移元のＨＴＭＬページの広告によって、その遷移先であるＨＴＭＬページの広告を変化させるようなことも可能である。以下、図７を基に、具体的な広告例について説明する。
【００６４】
遷移元のＨＴＭＬページとして、ＵＲＬが「Ａ」のＨＴＭＬページ及びＵＲＬが「Ｂ」のＨＴＭＬページがある。ＵＲＬが「Ａ」のＨＴＭＬページは、「Ａコーヒー」の広告ページである。また、ＵＲＬが「Ｂ」のＨＴＭＬページは「Ｂスナック」の広告ページである。一方、それらのＨＴＭＬページの遷移先として、ＵＲＬが「Ｃ」のブロックがある。ＵＲＬが「Ｃ」であるブロック内のＨＴＭＬページでは、タレントの広告を載せている。上記のような前提の場合、「Ａコーヒー」の広告ページからタレントの広告ページへの遷移の場合、「Ａコーヒーを持ったタレント」の広告ページを表示し、「Ｂスナック」の広告ページからタレントの広告ページへの遷移の場合は、「タレントのみ」の広告ページを表示するようにした例である。上述したが、遷移元のＨＴＭＬページの内容により、その遷移先であるＨＴＭＬページの広告内容を変化させたりする事が可能である。さらに、遷移元のＨＴＭＬページの広告内容と、その遷移先であるＨＴＭＬページの広告内容とを関連付けるような広告を行うことも可能である。
【００６５】
図８は、ＷＥＢ上で仮想迷路を構築するための機器構成図である。仮想迷路を構築、メンテナンス等を行う側の機器として、迷路作成サーバ５１及び製作者用コンピュータ４００がある。それぞれの機器はインターネット網３００と通信が出来るようになっている。迷路作成サーバ５１は、主にＨＴＭＬ生成プログラム２９を作成及び編集するサーバである。迷路作成サーバ５１で作成したＨＴＭＬ生成プログラム２９及び設定ファイル２５はインターネット網３００を経由して、１又は複数の迷路表示サーバ３に配布される。前記迷路表示サーバ３のＣＰＵ５は、ＨＴＭＬ生成プログラム２９を実行することにより利用者からのＨＴＭＬ表示要求に対応したＨＴＭＬページを生成する。また、製作者用コンピュータ４００は、仮想迷路の製作者が利用するコンピュータであり、仮想迷路を形成する複数のＨＴＭＬページ間のリンクの編集や、ルールの追加等のメンテナンスをするための機器である。
【００６６】
図９は、迷路作成サーバ５１の詳細な構成図である。迷路作成サーバ５１は、ＣＰＵ５３、記憶手段としてのメモリ５５及び大容量記憶６１を備えており、各要素はバス５９に接続している。さらに、バス５９にはネットワークインターフェース５７が繋がっている。各要素は、バス５９を経由する事によって、各要素間の情報や命令等の伝達を行っている。そして、ネットワークインターフェース５７を介してインターネット網３００に繋がっている。そして、大容量記憶６１は、迷路部品領域７３、迷路完成品領域８５及び迷路作成プログラム６３を備えている。
【００６７】
大容量記憶６1に備わっている迷路部品領域７３は、ＨＴＭＬ生成プログラム８７を作成するためのコンテンツ等のテンプレートや、完成途中のＨＴＭＬ生成プログラム８７を保存等するための領域である。迷路部品領域７３は、基本オブジェクト格納領域７５、テンプレート格納領域７７、テンプレート埋込オブジェクト格納領域７９及びコンテンツ格納領域８１を備えている。
【００６８】
基本オブジェクト格納領域７５は、後述する基本オブジェクト作成処理６５によって出来た、作成途中のオブジェクト（ＨＴＭＬ生成プログラム８７）を保存する領域である。テンプレート格納領域７７は、ＨＴＭＬ生成プログラム８７の雛型となるプログラム（雛型プログラム）を格納している領域である。例えば、正解ブロックのＨＴＭＬページを生成するためのＨＴＭＬ生成プログラム８７の雛型等も含まれる。ここで、「正解ブロックのＨＴＭＬページを生成するためのＨＴＭＬ生成プログラム８７の雛型」とは、遷移元のＨＴＭＬページから現ＵＲＬにアクセスされたときに取得した遷移元のＨＴＭＬページのＵＲＬが、前記ＨＴＭＬ生成プログラム８７に記述された正しい遷移元のＨＴＭＬページのＵＲＬに対応するか否かを判定し、この判定の結果正しい遷移元のＨＴＭＬページからの遷移であると判定出来る場合には、前記現ＵＲＬに対応するＨＴＭＬページとして正しい遷移先のＨＴＭＬページのＵＲＬを含むＨＴＭＬページを生成し、前記判定の結果正しい遷移元のＨＴＭＬページからの遷移でないと判定出来る場合には、前記現ＵＲＬに対応するＨＴＭＬページとして正しい遷移先のＨＴＭＬページのＵＲＬを含まないＨＴＭＬページを生成する処理をコンピュータに実行させるための基本機能処理部と、前記遷移元のＨＴＭＬページのＵＲＬ及び遷移先のＨＴＭＬページのＵＲＬを含むＵＲＬ識別子セット情報を記述するためのＵＲＬ識別子記述領域とを備えている。また、ルールを付加したＨＴＭＬページを生成するＨＴＭＬ生成プログラム８７の場合、ルールについてのプログラム等も予め当該テンプレート格納領域７７に格納している。テンプレート埋込オブジェクト格納領域７９は、後述するテンプレート埋込処理６７によって出来た、作成途中のオブジェクトを保存する領域である。コンテンツ格納領域８１は、ＨＴＭＬページのフォントや背景などの見栄え（デザイン）等に関する部品（プログラムの記述等）を格納している領域である。
【００６９】
また、大容量記憶６１に備わっている迷路完成品領域８５は、１又は複数のＨＴＭＬ生成プログラム８７及び設定ファイル８９を含んでいる。製作者は、当該迷路完成品領域８５からＨＴＭＬ生成プログラム８７及び設定ファイル８９を所定の迷路表示サーバ３に対して配布する。
【００７０】
そして、大容量記憶６１に備わっている迷路作成プログラム６３は、ＨＴＭＬページを生成するためのＨＴＭＬ生成プログラム８７を作成及びデザイン等をするためのプログラムである。前記迷路作成プログラム６３によって、作成したオブジェクトの完成形であるＨＴＭＬ生成プログラム８７が、各迷路表示サーバ３に配布され実行されることによって仮想迷路の運用をする事が出来る。ここで、迷路作成プログラム６３は、基本オブジェクト作成処理６５、テンプレート埋込処理６７及びコンテンツ等埋込処理６９を備えている。上記基本オブジェクト作成処理６５、テンプレート埋込処理６７及びコンテンツ等埋込処理６９については、図１０乃至図１４を基に説明する。
【００７１】
図１０を基に、基本オブジェクト作成処理６５、テンプレート埋込処理６７及びコンテンツ等埋込処理６９を含む、迷路作成プログラム６３の処理の流れの概要を説明する。迷路作成サーバ５１のＣＰＵ５３が、迷路作成プログラム６３を起動することで、ＨＴＭＬ生成プログラム８７の作成処理が開始する。
【００７２】
まず、ＣＰＵ５３は、基本オブジェクト作成処理６５を実行する。そして、ＣＰＵ５３は、迷路作成サーバ５１のメモリ５５上に、ＨＴＭＬ生成プログラム８７の基となる、プログラム等の記述の全くない複数のオブジェクトを作成する。さらに、メモリ５５上の前記複数のオブジェクト間を相互に参照する。そして、正解ルート上に配置するオブジェクトの特定を行う。その後、前記相互に参照した複数のリンクの中から、正解ルートの特定を行い、その後に、間違いルートの編集を行う。その後、ＣＰＵ５３は、メモリ５５上のオブジェクトを基本オブジェクト格納領域７５に保存する。以上で、基本オブジェクト作成処理６５は完了する。当該基本オブジェクト作成処理６５の詳細については、図１１及び図１２を基に説明をする。
【００７３】
次に、ＣＰＵ５３は、テンプレート埋込処理６７を実行する。ＣＰＵ５３は、基本オブジェクト格納領域７５に保存したオブジェクトをメモリ５５上に展開する。そして、メモリ５５上に展開したオブジェクトと、テンプレート格納領域７７に予め保存してあるＨＴＭＬ生成プログラム８７の雛型とを合成する。また、上記オブジェクトに対してルールを付加する場合は、前記オブジェクトとルールに関するプログラムの雛型とを合成する。その後、ＣＰＵ５３は、メモリ５５上のオブジェクトをテンプレート埋込オブジェクト格納領域７９に保存する。以上で、テンプレート埋込処理６７は完了である。当該テンプレート埋込処理６７の詳細については、図１３を基に説明をする。
【００７４】
最後に、ＣＰＵ５３は、コンテンツ等埋込処理を実行する。まず、ＣＰＵ５３は、テンプレート埋込オブジェクト格納領域７９に保存したオブジェクトをメモリ５５上に展開する。そして、ＣＰＵ５３は、前記オブジェクトと、コンテンツ格納領域８１に予め保存してある、ＨＴＭＬページの見栄え等のデザインに関するオブジェクトとを合成する。さらに、オブジェクト（ＨＴＭＬ生成プログラム８７）が作成するＨＴＭＬページのＵＲＬ（自ＵＲＬ）の入力を受付、オブジェクトのプログラム部に書き込む。その後、遷移先のＨＴＭＬページのＵＲＬをリンクとして、オブジェクトのプログラム部に書き込む。さらに、そのオブジェクトが、正解ルート上ページ、道標ページ及びゴールページを生成するものである場合、正解ルート上の１つ前のＨＴＭＬページのＵＲＬを、オブジェクトのプログラム部に書き込む。続いて、前記自ＵＲＬと、そのＵＲＬのＨＴＭＬページを生成するためのオブジェクトとを、設定ファイル８９にて対応付ける。そして、上記設定が済んだメモリ５５上のオブジェクトを、ＨＴＭＬ生成プログラム８７として迷路完成品領域８５に保存し、前記設定ファイル８９も迷路完成品領域８５に保存する。以上で、コンテンツ等埋込処理６９の処理は完了し、ＨＴＭＬ生成プログラム８７は完成するが、本処理の詳細は図１４を基に説明する。
【００７５】
以下、図１１及び図１２、図１３並びに図１４を基に、図１０で概要を説明した、基本オブジェクト作成処理６５、テンプレート埋込処理６７及びコンテンツ等埋込処理６９の処理の詳細な流れについて説明する。
【００７６】
図１１は、基本オブジェクト作成処理６５の詳細な流れを表した図であり、図１２は、基本オブジェクト作成処理６５の処理をする際のオブジェクトの変化を表したイメージ図である。前記図１１及び図１２を基に基本オブジェクト作成処理６５の詳細について説明する。
【００７７】
迷路作成サーバ５１のＣＰＵ５３が、基本オブジェクト作成処理６５を実行する事によって処理は開始する。まず、ＣＰＵ５３は、製作者から、いくつのオブジェクトを作成するのか、オブジェクト数の入力を受け付ける（Ｓ３０１）。前記オブジェクトとは、ＨＴＭＬページを生成するためのＨＴＭＬ生成プログラム８７の原型のことであり、オブジェクトの完成形はＨＴＭＬ生成プログラム８７になる。図示は省略するが、特定のステージ内にオブジェクトをいくつ用意するか、製作者から入力を受け付ける画面があるものとする。
【００７８】
その後、ＣＰＵ５３は、メモリ５５上に、製作者から入力を受け付けた数分のオブジェクトを作成する（Ｓ３０２）。例えば、製作者が前記画面上で「４」と入力した場合、ＣＰＵ５３は、上記ステップＳ３０１及びＳ３０２の処理で、メモリ５５上に４つのオブジェクトを作成する（図１２のＳ４０１参照）。図１２のＳ４０１のイメージでは、４つの四角い絵を、作成したオブジェクトとして表している。
【００７９】
次に、ＣＰＵ５３は、ステップＳ３０２においてメモリ５５上に作成した複数のオブジェクト全てを相互に参照する（Ｓ３０３）。例えば、ある１つのオブジェクトから他の全てのオブジェクトに対してリンクをはり、別のある１つのオブジェクトからそれ以外の全てのオブジェクトに対してリンクをはっていく。この段階での「リンク」とは、具体的なＨＴＭＬページのＵＲＬというわけではない。メモリ上で相互に参照した仮想的リンクである。上記例でいうと、４つのオブジェクトを作成した場合、１つのオブジェクトから、その他３つのオブジェクトに対してリンクをはることになる。前記リンクをルートとするならば、３（ルート数）×４（オブジェクト数）=１２のルートを作る事になる（図１２のＳ４０２参照）。図１２のＳ４０２のイメージでは、オブジェクトを相互に結ぶ実線矢印が前記ルートを表している。
【００８０】
そして、ＣＰＵ５３は、製作者から複数あるオブジェクトのうち、いくつのオブジェクトを正解ルート上に配置するのか、オブジェクト数の入力を受け付ける（Ｓ３０４）。図示は省略するが、製作者からＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）上で任意のオブジェクト数の選択を受け付けるようになっている。
【００８１】
その後、ＣＰＵ５３は、ステップＳ３０４において製作者から入力を受け付けた数分のオブジェクトを任意で決定し、正解ルート上に配置するオブジェクトである旨特定をする（Ｓ３０５）。ここで、ＣＰＵ５３は、メモリ５５上において、全オブジェクトを円周上に配置し、オブジェクトの開始地点から反時計回り（時計回りでもよい）に、前記入力を受け付けた数分のオブジェクトを、正解ルート上に配置するオブジェクトである旨特定するようにしてもよい。具体的には、該当するオブジェクトに対して、正解ブロック、道標ブロック、ゴールブロック、スタートページを生成するオブジェクトである事を認識できるようなフラグをたてる事である。このフラグを立てる処理は、後の処理で、各ＨＴＭＬページを生成するためのプログラムのテンプレートとオブジェクトを合成する際に必要とされる。また、それ以外のフラグをたてないオブジェクトについては、正解ルート上に配置しないオブジェクト（単体で存在する間違いルート上ページを生成するためのＨＴＭＬ生成プログラム８７）と認識する事が出来る。具体的なイメージは図１２のＳ４０３のようになる。図１２のＳ４０３のイメージでは、斜線の加わったオブジェクトが正解ルート上に配置する旨特定したオブジェクトを表しており、ただの四角い絵のオブジェクトは、間違いルート上に配置するオブジェクトを表している。
【００８２】
上記ステップＳ３０５の処理の後、ＣＰＵ５３は、メモリ５５上の全オブジェクト間に相互にはったリンクの中から、正解ルートの特定を行う（Ｓ３０６）。ステップＳ３０５の処理において、正解ルート上のオブジェクトを既に特定しているので、前記正解ルート上のオブジェクトを結ぶ最短のルートを正解ルートとして特定する。例えば、ステップＳ３０５の処理において、ＣＰＵ５３が、反時計回り又は時計回りに、入力を受け付けた数分のオブジェクトを、正解ルート上に配置するオブジェクトである旨特定した場合は、前記反時計回り又は時計回りのルートが正解ルートであると容易に特定できる。図１２のＳ４０４のイメージでは、各オブジェクトを結ぶ矢印の中で、点線矢印が特定した正解ルートを表し、実線矢印が間違いルートを表している。
【００８３】
次に、ＣＰＵ５３は、製作者から間違いルートの編集を受け付ける。また、ＣＰＵ５３は、製作者から削除等の編集を受け付けた間違いルートを、メモリ上で編集する（Ｓ３０７）。正解ルート以外のルートを全て間違いルートとする事によって、仮想迷路の難易度が高くなりすぎる恐れもあり、管理に手間がかかる可能性もある。よって、間違いルートの数を減らしたり、場合によっては増やしたりすることが出来るようになっている（図１２のＳ４０５参照）。図１２のＳ４０５のイメージでは、正解ルートを含めて全部で１２あったルートのうち、４つの間違いルートが削除編集されている。
【００８４】
間違いルートの編集方法については、製作者用コンピュータ４００などのＧＵＩ上に図１５のようなメンテナンス画面を表示させ、間違いルートの追加及び削除などの編集を受け付けるようにしてもよい。ここで、図１５について説明する。図１５は、仮想迷路の製作者が間違いルート等の編集をする際に使用するＧＵＩのイメージ（一例）である。ステージが複数ある際に、タグで画面を切り替えるようになっている。複数あるＳ１Ｐ０乃至Ｓ１Ｐ５の四角い絵は、各オブジェクト（ＨＴＭＬ生成プログラム８７）を表し、それぞれ規則的に名称付けされている。さらに、複数あるオブジェクト中、斜線の入ったオブジェクトは正解ルート上にあるＨＴＭＬページを生成するためのオブジェクトである。そして、点線矢印は、正解ルートを表し、通常の矢印は間違いルートを表している。製作者は、ＧＵＩ上をマウスでクリックやドラッグ等する事により、間違いルートを削除したり、追加したり出来る。
【００８５】
ここで、ルートの編集について補足説明を行う。ブロックの場合、条件に応じて同一ＵＲＬの異なる２つのＨＴＭＬページのうち、いずれか１つが表示される。（図１５中では、オブジェクトが２重になっている絵がブロックを表している。）本仮想迷路では、各ブロック内の間違いルート上ページに埋め込まれる遷移先ＵＲＬと、同一ＵＲＬの他のＨＴＭＬページに埋め込まれる遷移先ＵＲＬとは異なるが、別々に間違いルートの編集をするわけではない。正解ブロックを例に説明すると、同一ＵＲＬの正解ルート上ページに埋め込まれているリンクと、間違いルート上ページに埋め込まれているリンクとの違いは、次の正解ルート上のＨＴＭＬページへのリンクを含んでいるか否かの違いである。間違いルート上ページへのリンク自体は、２つのＨＴＭＬページにおいて共通である。ここで、間違いルート上ページに、実際には存在しない適当なＨＴＭＬページのＵＲＬを遷移先のリンクとして埋め込み（偽ルート）、利用者を混乱させ仮想迷路を面白くするような場合もある。
【００８６】
最後に、ＣＰＵ５３は、メモリ５５上のオブジェクトを基本オブジェクト格納領域７５に保存し、基本オブジェクト作成処理６５を終了させる（Ｓ３０８）。
【００８７】
ここで、構築しようとする仮想迷路のステージが１つではなく複数の場合は、上記ステップＳ３０１乃至Ｓ３０８の処理をステージ毎に繰り返す。
【００８８】
次に、図１３を基に、テンプレート埋込処理６７についての処理の流れを詳細に説明する。迷路作成サーバ５１のＣＰＵ５３は、前述した基本オブジェクト作成処理６５が終了した後に、当該テンプレート埋込処理６７を実行する事により、処理は開始する。
【００８９】
まず、ＣＰＵ５３は、基本オブジェクト格納領域７５内の、オブジェクトをメモリ５５上に展開する（Ｓ５０１）。
【００９０】
次に、ＣＰＵ５３は、製作者からルールを設定するオブジェクトの選択を受け付ける（Ｓ５０２）。ルールは、全てのオブジェクトに対して設定してもよいし、まったく設定しなくてもよい。具体的なオブジェクトの選択方法は、製作者用コンピュータ４００などのＧＵＩ上に図１５のようなメンテナンス画面を表示させ、製作者からＧＵＩ上でオブジェクトの選択を受け付ける。
【００９１】
続いて、ＣＰＵ５３は、前記ステップＳ５０２の処理において選択を受け付けたルールを付加するオブジェクトを特定する（Ｓ５０３）。具体的には、該当するオブジェクトのプログラム部分に対して、ルールを追加するオブジェクトである事を判断出来るようなフラグ（記述）を書き込む。
【００９２】
そして、ＣＰＵ５３は、ステップＳ５０３の処理の後、製作者から、ルールを追加するオブジェクトに対しどの種類のルールを設定するのか、選択を受け付ける（Ｓ５０４）。ルールの種類については、図５の説明中でもふれたが、「タイマールール」、「ユーザ入力確認ルール」、「Ｃｏｏｋｉｅルール」等がある。
【００９３】
その後、ＣＰＵ５３は、上記ステップＳ５０４において、どの種類のルールを付加するか決定したオブジェクトに対して、ルールの種類が判別できるようなフラグを立てる（Ｓ５０５）。
【００９４】
ここで、ＣＰＵ５３は、製作者からルールを追加する全オブジェクトに対して、ルールを追加するオブジェクトの特定及び追加するルールの種類の特定が完了しているか否かの判断を受け付ける（Ｓ５０６）。ルールを追加するオブジェクトの特定及び追加するルールの種類の特定が完了していない場合は、ステップＳ５０２の処理に戻り、完了している場合は、以降の処理に進む。
【００９５】
次に、ＣＰＵ５３は、全オブジェクトと、テンプレート格納領域７７内のＨＴＭＬ生成プログラム８７の雛型とをメモリ５５上で合成する（Ｓ５０７）。ＨＴＭＬ生成プログラム８７の雛型とは、正解ブロック内のＨＴＭＬページ、道標ブロック内のＨＴＭＬページ、ゴールブロック内のＨＴＭＬページ、スタートページ及び間違いルート上ページを生成するためのＨＴＭＬ生成プログラム８７の雛型である。
【００９６】
さらに、ステップＳ５０３で特定したルールを付加するオブジェクトと、テンプレート格納領域７７内の各種ルールの雛型とをメモリ５５上で合成する（Ｓ５０８）。
【００９７】
最後に、ＣＰＵ５３は、メモリ５５上のオブジェクトをテンプレート埋込オブジェクト格納領域７９に保存し、テンプレート埋込処理６７を終了させる（Ｓ５０９）。
【００９８】
ここで、構築しようとする仮想迷路のステージが１つではなく複数の場合は、上記ステップＳ５０１乃至Ｓ５０９の処理をステージ毎に繰り返す。
【００９９】
図１４を基に、コンテンツ等埋込処理６９についての処理の流れの詳細について説明する。ＣＰＵ５３は、前述したテンプレート埋込処理６７が終了した後に、当該コンテンツ等埋込処理６７を実行する事により処理が開始する。
【０１００】
まず、迷路作成サーバ５１のＣＰＵ５３は、テンプレート埋込オブジェクト格納領域７９から、オブジェクトをメモリ５５上に展開する（Ｓ６０１）。
【０１０１】
次に、ＣＰＵ５３は、製作者から、各オブジェクトに対し、どのコンテンツを埋め込むのかマッチング（選択）を受け付ける（Ｓ６０２）。
【０１０２】
そして、コンテンツ格納領域８１に予め保存してある、ＨＴＭＬページの画面デザイン、ＨＴＭＬページに載せるストーリー、及び広告などのコンテンツの雛型と、オブジェクトとをメモリ上にて合成する（Ｓ６０３）。画像ファイル等、オブジェクトと合成出来ないファイルについては、該当するオブジェクトに対して画像の保存場所を示すプログラム記述を追加する（画像等とオブジェクトとをリンクさせる）。
【０１０３】
その後、ＣＰＵ５３は、製作者から、完成したオブジェクト（ＨＴＭＬ生成プログラム８７）が生成するＨＴＭＬページのＵＲＬ（配信先である迷路表示サーバ３の名称、架空の保存先ディレクトリ及び任意のＨＴＭＬページの名称）の入力を受け付け、オブジェクトのプログラム部に書き込む（Ｓ６０４）。上述してきたが、ＨＴＭＬページは既に存在しているわけではなく、利用者からＨＴＭＬ表示要求のあった時に生成するようになっている。よって、保存先ディレクトリは架空のディレクトリを設定するようになっている。前記ステップＳ６０４の処理により、各ＨＴＭＬページの自ＵＲＬが決定する。
【０１０４】
ここで、ＣＰＵ５３は、製作者からコンテンツとオブジェクトとの合成や、ＨＴＭＬページの自ＵＲＬの決定が完了したか否かの判断を受け付ける（Ｓ６０５）。全オブジェクトに対しての処理が完了していない場合は、ステップＳ６０２の処理に戻り、完了している場合には以降の処理に進む。
【０１０５】
次に、ＣＰＵ５３は、基本オブジェクト作成処理６５で決定したルートに基づき、各オブジェクトに対して、遷移先リンクのＵＲＬを各オブジェクトのプログラム部に書き込む（Ｓ６０６）。前記ステップＳ６０６の処理により、各ＨＴＭＬページの遷移先であるＨＴＭＬページのＵＲＬが決定する。
【０１０６】
そして、ＣＰＵ５３は、基本オブジェクト作成処理６５で決定したルートに基づき、正解ルート上ページ、道標ページ及びゴールページを生成するためのオブジェクトに対して、このオブジェクトが生成するＨＴＭＬページの１つ前の正解ルート上にあるＨＴＭＬページ（遷移元）のＵＲＬ（正しい遷移元のＨＴＭＬページのＵＲＬ）を、該当するオブジェクトのプログラム部に書き込む（Ｓ６０７）。
【０１０７】
続いて、ＣＰＵ５３は、各オブジェクトの保存時のファイル名を決定し、前記ファイル名のオブジェクトと、前記オブジェクトのプログラム部に書き込んだ自ＵＲＬとを対応付けるための設定ファイル８９を作成する（Ｓ６０８）。各オブジェクトの保存時のファイル名を決定する際、ファイル名は規則的に決定する。例えば、ステージ１のスタートページを生成するオブジェクトであれば「Ｓ１Ｐ０」とし、次の正解ルート上ページを生成するオブジェクトであれば、「Ｓ１Ｐ１」のように名付ける。
【０１０８】
最後に、ＣＰＵ５３は、オブジェクトを迷路完成品領域８５内にＨＴＭＬ生成プログラム８７として保存し、前記設定ファイル８９も併せて保存する（Ｓ６０９）。
【０１０９】
ここで、構築しようとする仮想迷路のステージが１つではなく複数の場合は、上記ステップＳ６０１乃至Ｓ６０９の処理をステージ毎に繰り返す。
【０１１０】
以上、図１１乃至図１４を基に説明した各処理によって、ＨＴＭＬ生成プログラム８７の作成は完了する。
【０１１１】
また、上記ステップＳ６０６及びステップＳ６０７でオブジェクトに対して、遷移元のＨＴＭＬページのＵＲＬ、遷移先のＨＴＭＬページのＵＲＬを埋め込む処理があるが、以下のように、雛形プログラムに対し、遷移元のＨＴＭＬページのＵＲＬ、遷移先のＨＴＭＬページのＵＲＬを記述し、ＨＴＭＬ生成プログラム８７を作成する方法もある。以下に、その処理を説明する。
【０１１２】
説明の前提として、プログラム識別子は、ＨＴＭＬ生成プログラム８７を一意に識別する識別子である。ＵＲＬ識別子セット情報とは、前記プログラム識別子と関連付けられた遷移元のＨＴＭＬページのＵＲＬ及び遷移先のＨＴＭＬページのＵＲＬを含んだ情報のことをいい、これらを含めて迷路定義という。前記迷路定義は予め大容量記憶６１又はメモリ５５に記憶されているものとする。
【０１１３】
まず、迷路作成サーバ５１のＣＰＵ５３は、前記迷路定義から、特定のプログラム識別子と関連付けられたＵＲＬ識別子セット情報を読み出す。
【０１１４】
次に、ＣＰＵ５３は、当該読み出したＵＲＬ識別子セット情報を前記雛型プログラムに記述する。
【０１１５】
さらに、ＵＲＬ識別子セット情報を記述した当該雛型プログラムをＨＴＭＬ生成プログラムとし、当該ＨＴＭＬ生成プログラム８７と前記プログラム識別子とを関連付け、迷路完成品領域８５に格納する。
【０１１６】
上記本実施形態によれば、リクエストヘッダフィールドを利用する事により、利用者のＨＴＭＬページ間の遷移を制御する事が可能である。さらに、上記ＨＴＭＬページ間の制御をするために、遷移元のＨＴＭＬページの情報を保存するデータベース等を用意する必要はない。よって、単体のＷＥＢサーバに縛られる事なく、複数のＷＥＢサーバを使い、自由に仮想迷路を構築及び運用する事が出来る。
【０１１７】
また、仮想迷路での利用の場合、ゲーム性が重要になる。利用者が、ＨＴＭＬページのＨＴＭＬ言語の記述やＵＲＬを見る事によって、正解ルートを発見及び推測出来るような迷路では、ゲームとしての面白みが損なわれてしまう。そこで、上述したが、設定ファイル８９に、ＵＲＬとそのＵＲＬのＨＴＭＬページの表示要求があった際に、起動すべきＨＴＭＬ生成プログラム８７とを対応づけている。前記設定ファイル８９を利用し、ＵＲＬを適当なタイミングで変更したり、不規則なものにしたりすること等の方法により、利用者が正解ルートをＵＲＬから推測出来ないように隠蔽する事も可能である。さらに、リクエストヘッダフィールドの仕組みにより、インターネットブラウザのＵＲＬ入力欄に直接入力した場合のＨＴＭＬページへのアクセスに対する制限もかかるようになっているので、ゲーム性を損なうことがない。
【０１１８】
そして、仮想迷路の仕組みを使い、広告として利用する場合、広告主のＷＥＢサーバ４１へリンクする事も可能であるが、上述してきたブロックのような２面性を有するＨＴＭＬページの仕組みを利用し、アクセスしてきた順序や遷移元のＨＴＭＬページ次第で、表示する広告を変化させるような事も出来る。
【０１１９】
さらに、仮想迷路を構築する際に、利用者が最小限の情報（１ステージ内に作成するＨＴＭＬページの数や、正解ルート上に配置するＨＴＭＬページの数など）を与えるだけで、比較的簡単にＨＴＭＬページを作成するためのＨＴＭＬ生成プログラム８７を作成する事が出来る。また、リンク等を編集するためのＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）画面も用意する事により、メンテナンスも比較的容易に出来るようになっている。
【図面の簡単な説明】
【０１２０】
【図１】ＷＥＢ上の仮想迷路の概念図
【図２】ブロック間の遷移についての補足図
【図３】システム構成図（ゲーム運用の場合）
【図４】迷路表示サーバ構成図
【図５】正解ブロックのＨＴＭＬページを生成するＨＴＭＬ生成プログラムの処理のフローチャート
【図６】システム構成図（ゲーム運用と広告機能を組合せた運用の場合）
【図７】ゲーム運用と広告機能を組合せた運用のイメージ図
【図８】システム構成図（迷路を構築する場合）
【図９】迷路作成サーバ構成図
【図１０】迷路作成プログラムの処理の概要図
【図１１】基本オブジェクト作成処理の流れ図
【図１２】基本オブジェクト作成処理のイメージ図
【図１３】テンプレート埋込処理の流れ図
【図１４】コンテンツ等埋込処理の流れ図
【図１５】メンテナンス画面のイメージ図
【符号の説明】
【０１２１】
１  利用者パーソナルコンピュータ
３  迷路表示サーバ
５  ＣＰＵ
７  メモリ
９  大容量記憶
１１  ネットワークインターフェース
１３  バス
１７  ＨＴＭＬ要求受付返信アプリケーション
２５、８９  設定ファイル
２７  ＨＴＭＬ生成プログラム群
２９、８７  ＨＴＭＬ生成プログラム
３１  ルール等確認部
３３  元ＵＲＬ取得部
３５  表示ＨＴＭＬ決定部
３７  ＨＴＭＬ生成部
４１  広告主のＷＥＢサーバ
５１  迷路作成サーバ
５３  ＣＰＵ
５５  メモリ
５７  ネットワークインターフェース
５９  バス
６１  大容量記憶
６３  迷路作成プログラム
６５  基本オブジェクト作成処理
６７  テンプレート埋込処理
６９  コンテンツ等埋込処理
７３  迷路部品領域
７５  基本オブジェクト格納領域
７７  テンプレート格納領域
７９  テンプレート埋込オブジェクト格納領域
８１  コンテンツ格納領域
８５  迷路完成品領域
３００  インターネット網
４００  製作者用コンピュータ
【図１】
2005165898.tif 000003
【図２】
2005165898.tif 000004
【図３】
2005165898.tif 000005
【図４】
2005165898.tif 000006
【図５】
2005165898.tif 000007
【図６】
2005165898.tif 000008
【図７】
2005165898.tif 000009
【図８】
2005165898.tif 000010
【図９】
2005165898.tif 000011
【図１０】
2005165898.tif 000012
【図１１】
2005165898.tif 000013
【図１２】
2005165898.tif 000014
【図１３】
2005165898.tif 000015
【図１４】
2005165898.tif 000016
【図１５】
2005165898.tif 000017