(57)【要約】【課題】利用者入力に応じた動的な制御のための制御ロジック情報をＣＧＭ的に随時追加できるようにする。【解決手段】制御ロジック情報を利用者が既存コンテンツに追加する手段を用意する。選択肢による利用者入力にも対応する。制御ロジック情報の記述力は、変数やファイルといったデータ（利用者に関連するデータも含む）の更新、更新したデータを参照してのコンテンツ提供／選択肢提供、更新したデータを参照してのデータ（他の利用者に関連するデータも含む）の更新、等に及ぶ。制御ロジック情報は、関連づけられたリソースの利用をトリガとして実行可である。製作者側になる利用者やリソースごとに、ロジック追加／ロジック実行／データ参照／リソース利用などの許可・排他ポリシーを設定可能とする。ロジックの製作者情報や制御に用いる変数名等を、必要に応じて利用者や製作者に参照可能とする。効率的なロジック追加の工夫もある。【選択図】図３
2008299681.tif 000002
【特許請求の範囲】
【請求項１】
分散した又は分散しない記憶手段に蓄積したコンテンツをコンピュータ制御によりインターネットを介して又は介さずに利用者に提供するコンテンツ提供装置であって、
コンテンツ提供装置が利用者からの入力に応じてコンテンツの提供態様（提供範囲又は提供順序の少なくとも一方を含む提供態様）を制御できるようにするロジック情報である提供態様制御ロジック情報を、利用者が前記記憶手段に追加するための利用者製提供態様制御ロジック情報追加手段を備えること
を特徴とするコンテンツ提供装置。
【請求項２】
前記入力を、利用者への選択肢表示および利用者からの選択肢受信の形式で行うための選択肢入力手段を備えること、
前記提供態様制御ロジック情報が、該選択肢表示のための情報と、該選択肢表示に対応する選択肢を利用者から受信した際にコンテンツ提供装置が該利用者に対して行うべきコンテンツ提供態様制御のロジック情報とを含むこと
を特徴とする請求項１に記載のコンテンツ提供装置。
【請求項３】
前記提供態様制御ロジック情報が、前記記憶手段中のデータをコンテンツ提供装置が更新するよう制御できるようにするロジック情報を含むこと
を特徴とする、請求項１又は２に記載のコンテンツ提供装置。
【請求項４】
前記提供態様制御ロジック情報が、前記記憶手段中のデータをコンテンツ提供装置が参照してコンテンツ提供を制御できるようにするロジック情報を含むこと
を特徴とする、請求項１から３のいずれか一項に記載のコンテンツ提供装置。
【請求項５】
前記提供態様制御ロジック情報が、前記記憶手段中のデータをコンテンツ提供装置が参照して前記選択肢表示を制御できるようにするロジック情報を含むこと
を特徴とする、請求項２および４に記載のコンテンツ提供装置。
【請求項６】
前記提供態様制御ロジック情報が、前記記憶手段中のデータをコンテンツ提供装置が参照して前記記憶手段中の他のデータを更新するよう制御できるようにするロジック情報を含むこと
を特徴とする、請求項１から５のいずれか一項に記載のコンテンツ提供装置。
【請求項７】
前記更新されるよう制御するデータおよび又は参照されるよう制御するデータが、コンテンツ提供装置に入力した利用者に関連する前記記憶手段中のデータであること
を特徴とする、請求項３から６のいずれか一項に記載のコンテンツ提供装置。
【請求項８】
前記提供態様制御ロジック情報が、コンテンツ提供装置に入力した利用者に関連する前記記憶手段中のデータをコンテンツ提供装置が参照して該利用者に関連する他の利用者に関連するデータを更新するためのロジック情報を含むこと
を特徴とする、請求項１から７のいずれか一項に記載のコンテンツ提供装置。
【請求項９】
前記提供態様制御ロジック情報が、該提供態様制御ロジック情報の製作者に関する情報と関連づけられて記憶され、利用者が採用した製作者に関する情報と関連づけられた提供態様制御ロジック情報のみをコンテンツ提供装置が参照して該利用者へのコンテンツ提供を行うこと
を特徴とする、請求項１から８のいずれか一項に記載のコンテンツ提供装置。
【請求項１０】
前記提供態様制御ロジック情報が、該提供態様制御ロジック情報の製作者に関する情報と関連づけられて記憶され、コンテンツ提供装置が、前記利用者への選択肢表示の際に、該選択肢に対応する提供態様制御ロジック情報に関連づけられた製作者に関する情報から得られる情報を示すこと
を特徴とする、請求項２に記載のコンテンツ提供装置。
【請求項１１】
前記提供態様制御ロジック情報が、該提供態様制御ロジック情報の製作者に関する情報と関連づけられて記憶され、利用者へのコンテンツ提供に適用された提供態様制御ロジック情報に関連づけられた製作者に関する情報に応じて該利用者への以降のコンテンツ提供を制御する提供態様制御ロジック情報を決定すること、
を特徴とする、請求項１から１０のいずれか一項に記載のコンテンツ提供装置。
【請求項１２】
前記利用者製提供態様制御ロジック情報追加手段が、前記提供態様制御ロジック情報を、前記記憶手段中のリソースにトリガ対象として関連づけて追加することと、
該リソースの提供の際に、該リソースと関連づけて追加された提供態様制御ロジック情報をトリガするリソース提供時トリガ手段を有すること
を特徴とする、請求項１から１１のいずれか一項に記載のコンテンツ提供装置。
【請求項１３】
製作者が、該製作者が製作したものとして記憶されたリソースへの、トリガ対象として関連づけられる、別の製作者製の提供態様制御ロジック情報の追加を、製作者ごとおよび又は該別の製作者ごとに制御できるようにした製作者毎ロジック情報追加制御手段を有すること
を特徴とする、請求項１２に記載のコンテンツ提供装置。
【請求項１４】
製作者が、該製作者が製作したものとして記憶されたリソースにトリガ対象として関連づけられた提供態様制御ロジック情報からの、所定の製作者製のリソースの利用を制御できるようにした別製作者リソース利用制御手段を有すること
を特徴とする、請求項１２又は１３に記載のコンテンツ提供装置。
【請求項１５】
製作者が、該製作者を採用した利用者からの、所定の別の製作者が製作したものとして記憶されたリソース自体の利用および又は該リソースにトリガ対象として関連づけられた提供態様制御ロジック情報の利用を制御できるようにした別製作者リソース＆関連ロジック情報利用制御手段を有すること
を特徴とする、請求項９に記載のコンテンツ提供装置。
【請求項１６】
前記データ又は前記利用者データが、どの製作者が宣言したデータかを判別できるような形式で前記記憶手段に記憶されていることと、
どのリソースにトリガ対象として関連づけられた提供態様制御ロジック情報がどの製作者が宣言したデータを参照、更新、追加、削除又はこれらの組合せ操作できるかを定義するリソース対データパーミッション情報が前記記憶手段に記憶されていることと、
該リソース対データパーミッション情報に応じて、コンテンツ提供装置が、各リソースに関連づけられた提供態様制御ロジック情報からの、各製作者が宣言したデータへのアクセス制御を行うこと、
を特徴とする、請求項１２から１５のいずれか一項に記載のコンテンツ提供装置。
【請求項１７】
前記提供態様制御ロジック情報が、該提供態様制御ロジック情報の製作者に関する情報と関連づけられて記憶されていることと、
前記データ又は前記利用者データが、どの製作者が宣言したデータかを判別できるような形式で前記記憶手段に記憶されていることと、
どの製作者製の提供態様制御ロジック情報がどの製作者が宣言したデータを参照、更新、追加、削除又はこれらの組合せ操作できるかを定義する製作者間データパーミッション情報が前記記憶手段に記憶されていることと、
該製作者間パーミッション情報に応じて、コンテンツ提供装置が、各提供態様制御ロジック情報からの、各製作者が宣言したデータへのアクセス制御を行うこと、
を特徴とする、請求項１から１６のいずれか一項に記載のコンテンツ提供装置。
【請求項１８】
利用者に、他の製作者が宣言した変数名および又はファイル名を開示して、該利用者製の提供態様制御ロジック情報において、該他の製作者が宣言した変数名および又はファイル名によるデータアクセスを利用可能にする他製作者製データ開示手段を備えること
を特徴とする、請求項１から１７のいずれか一項に記載のコンテンツ提供装置。
【請求項１９】
前記他製作者製データ開示手段が、利用者に、該利用者へのコンテンツ提供のためにコンテンツ提供装置が過去にアクセスした変数名および又はファイル名を開示して該利用者製の提供態様制御ロジック情報において該変数名および又はファイル名によるデータアクセスを利用可能にすること
を特徴とする、請求項１８に記載のコンテンツ提供装置。
【請求項２０】
利用者以外の製作者が製作した提供態様制御ロジック情報が該利用者に提供制御したリソースを、該利用者に開示して該利用者製の提供態様制御ロジック情報において利用可能にする提供済リソース開示手段を備えること
を特徴とする、請求項１から１９のいずれか一項に記載のコンテンツ提供装置。
【請求項２１】
前記提供態様制御ロジック情報が、所定の条件を充たす利用者に対してのみ所定の提供制御をするための制御条件部を有することと、
前記利用者製提供態様制御ロジック情報追加手段が、提供態様制御ロジック情報の制御条件部に、該提供態様制御ロジック情報を追加しようとしている利用者の利用者データから得られる条件を自動的に挿入すること
を特徴とする、請求項１から２０のいずれか一項に記載のコンテンツ提供装置。
【請求項２２】
従前の提供態様制御ロジック情報では定義されていない利用者入力に対する制御を追加できること
を特徴とする、請求項１から２１のいずれか一項に記載のコンテンツ提供装置。
【請求項２３】
分散した又は分散しない記憶手段に蓄積したコンテンツをコンピュータ制御によりインターネットを介して又は介さずに利用者に提供するコンテンツ提供装置を利用したコンテンツ提供方法であって、
コンテンツ提供装置が利用者からの入力に応じてコンテンツの提供態様（提供範囲又は提供順序の少なくとも一方を含む提供態様）を制御するロジック情報である提供態様制御ロジック情報を、利用者が分散した又は分散しない記憶手段に追加できるステップを備えること
を特徴とするコンテンツ提供方法。
【請求項２４】
分散した又は分散しない記憶手段に蓄積したコンテンツをコンピュータ制御によりインターネットを介して又は介さずに利用者に提供するコンテンツ提供装置を動作させるためのコンピュータプログラムであって、
コンテンツ提供装置が利用者からの入力に応じてコンテンツの提供態様（提供範囲又は提供順序の少なくとも一方を含む提供態様）を制御するロジック情報である提供態様制御ロジック情報を、利用者が分散した又は分散しない記憶手段に追加できる制御をコンピュータに実施させること
を特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分散した又は分散しない記憶手段に蓄積したコンテンツをコンピュータ制御によりインターネットを介して又は介さずに利用者に提供するコンテンツ提供装置、コンテンツ提供方法およびコンピュータプログラムに関するものである。
【０００２】
また、部分コンテンツ間での連携、特に利用者からの入力（場合によっては過去の入力履歴（もしくは、その入力履歴の全体又は要約を格納した変数の値）を含めたもの、以下同じ）に応じて状態遷移する変数（提供の文脈）の共有を利用した、別のコンテンツ制作主体間での、コンテンツ提供制御やコンテンツ制作自体における連携に関する。
【０００３】
定義１：ここで、「コンテンツ」とは、著作（物語を中心として、あらゆる美術や芸術なども含む）や知識や情報の内容であり、定義や事実や数値データのほかに、仮説や仮想現実やそのためのマルチメディアによる演出等を含めたものである。主にデジタル化されている。多くの大きなコンテンツは、ある程度の独立した価値をもつ「部分コンテンツ」に分けて観念することができる。コンテンツの典型としては、ゲーム（例えば、アドベンチャーゲーム、ロールプレイングゲーム、パズルゲーム、等）、エキスパートシステム（例えば、法律診断、症状診断、等）、Ｗｅｂ小説（例えば、世界観の構築、段階的説明、等）、教育コンテンツ（例えば、数学の定理・物理の公式・専門用語・哲学思想等といった関連する知識の依存・前提関係や複雑度・難易度を考慮したナビゲーション教材、等）、等がある。
【０００４】
定義１−１：そして、「コンテンツ提供」とは、コンテンツを利用者に供することである。主にコンテンツの意味（感動、感想、意見、認識、知識、情報、知恵、アイディア、構造、構成、物語自体、等）を言語的、視覚的、聴覚的、触覚的、嗅覚的、味覚的な手段で利用者に示すことをいう。
【０００５】
定義１−１−１：そして、「コンテンツ提供装置」とは、コンテンツ提供のための装置をいう。多くの場合、複数のサーバーコンピュータと無数の利用者のクライアントコンピュータ端末からなるコンピュータネットワークで構成されるが、サーバーコンピュータが一台の場合や、スタンドアロン（サーバー＝クライアント）の場合も含む。また、サーバーコンピュータ間の接続は、単一事業体におけるプライベートネットワークによる場合と、複数事業体間のインターネット（グローバルアドレス）による場合の両方を含み、後者の場合、本発明の「コンテンツ提供装置」を、複数事業者間で共有する（もしくは分担して管理／所有する）ということになる。
【０００６】
定義１−２：また、「部分コンテンツ」とは、本発明により連携して提供されるコンテンツ全体をなんらかの観点で分けて観念したものであり、多くの場合、独立した価値をもつ。分ける観点としては、インターネットドメイン等のドメインごと、ゲームなどのタイトルごと、制作者／制作チームごと、リソース（フォルダ等）ごと、等がある。なお、上記、「ゲームタイトル」、「制作者」、「制作チーム」は、本発明における「製作者」に該当する（なお、本発明では、ロジック情報等の投稿を行う一般利用者も「製作者」に該当する）。
【０００７】
定義２：また、「分散した又は分散しない記憶手段」とは例えば、サーバーコンピュータの記憶装置（ハードディスクや主記憶等）だけでなく、関連するサーバーコンピュータの記憶装置や利用者のクライアントコンピュータ端末の記憶装置を一体として指す。多くの場合、情報の種類別に、異なるヒープ領域・物理的装置・パーテション・フォルダ（ディレクトリ）等に区分けされている。種類別とは、例えば、管理ドメイン別、タイトル別（部分コンテンツ別）、共有リソース／専用リソースの別、ロジック情報（プログラムやスクリプトや制御用データ構造）／テンポラリデータ／保存データの別、利用者共通の変数／利用者毎の変数の別、等が考えられる。
【０００８】
定義２−１：なお、「ドメイン」とは、コンテンツを分散管理（分散記憶）する際に、コンテンツを、分散管理する物理的／論理的な領域ごとに分けて観念するための領域である。例えば、複数のインターネットドメインにまたがってコンテンツを分散管理する場合には、インターネットドメインがドメインとなる。
【０００９】
定義３：また、「オブジェクト」とは、最も一般的な意味のオブジェクト（メモリ中のデータ構造等）にファイル等を加えて観念したものをいう。コンテンツ提供装置によりアクセス可能なすべてのオブジェクトは、本発明による「リソース」を構成する。ちなみに、本発明におけるデータとは、オブジェクト（リソース）中の固定プログラム以外の情報であり、変数とは、データ（固定プログラム以外の情報）のうち独立して値を変更可能なものをいう。
【００１０】
定義４：また、「リソース」とは、コンテンツ提供装置によりアクセス可能なすべてのオブジェクトをいい、前期記憶手段に記憶可能なすべてのプログラムおよびデータはリソースである。メモリ上のデータ構造や変数（変数名、アドレス、値、等）を格納したオブジェクトや、後述する提供態様制御ロジック情報を格納したオブジェクトだけでなく、ＨＴＭＬファイル（およびそのテンプレート）、ＸＭＬファイル、ＣＳＳファイル、ＰＨＰファイル、Ｐｅｒｌファイル、マルチメディアファイル（データファイルだけでなくプログラムファイルも含む）、ＤＢインスタンス、等のすべてのファイルを含む。また、リソースは、階層的な構造をもつことができる。例えば、ファイルシステムのフォルダ（ディレクトリ）は、その中のファイルやサブフォルダ（再帰的に包含する範囲全体）も含めて一つのリソースであり、その中のファイルやサブフォルダは、親のフォルダとの関係では相対的にサブリソースと呼ぶ（ただし、絶対的には普通のリソースとみなす）。本発明では、デフォルトで、リソースＡ配下のシンボリックリンク（又はハードリンク）先の実体（ファイルやフォルダ）も、そのリソースＡのサブリソースとみなす。なお、「マルチメディアファイル」とは、複雑なオブジェクトをシリアライズしたファイル、テキストファイル、静止画ファイル、動画ファイル、音声ファイル、触覚再現ファイル、嗅覚再現ファイル、味覚再現ファイル等を含む。
【００１１】
定義４−１：ここで「データ」とは、「リソース」中の固定プログラム（例えばＯＳカーネルや本プログラムを実施するカーネルプログラムなどの「静的な」プログラムといえるもの）以外の情報をいい、後述する提供態様制御ロジック情報（利用者により逐次追加／更新されていくという意味で「動的な」プログラムといえるもの）を含む。
【００１２】
定義４−１−１：また、「変数」とは、全オブジェクト中の固定プログラム以外の情報（データ）のうち、独立して値を変更可能なものをいう。多くの場合、後述する提供態様制御ロジック情報からの名前によるアクセスを可能にする変数名、ハードウエアが参照したり更新したりするためのアドレス、そのアドレスに記憶された変数値（多くの場合、可変長の文字列で表現される）をもつ。変数名によるアクセスは、変数名が一意の場合や変数の宣言が所定のスコープ内である場合は、その変数名のみで参照され、所定のスコープ外等である場合は、例えばＵＲＩ（ＦＱＤＮ等）の形式で参照することができる。なお、変数の宣言は、例えば、［コンテンツ提供装置の仮想のルートロケーション又は所定プロトコル＞］インターネットドメイン＞カテゴリ（フォルダ）＞タイトル（フォルダ）という（ＵＲＩ）階層構造の任意のロケーションで、製作者になることを希望した利用者兼制作者や制作チームが行うことができる。この階層構造によっても変数名が競合するときは、利用者兼制作者や制作チームやタイトルを識別できる「製作者に関する情報」により変数名を修飾して区別することもできる。
【００１３】
定義４−１−１−１：また、「状態」とは、コンテンツ提供装置が管理している変数集合および各対応する変数値のことをいう。このうち、問題としているコンテンツ提供処理に関連する変数集合および各変数値を文脈と呼ぶ。
【００１４】
定義４−１−１−１−１：そして、「状態遷移」とは、コンテンツ提供装置が管理している変数集合および各対応する変数値の遷移をいう。利用者がコンテンツ提供装置にアクセスして要求等を入力しコンテンツの提供を受けることにより、利用者に関する変数集合および各対応する変数値が遷移する。
【００１５】
定義４−１−１−１−２：また、「文脈」とは、コンテンツ提供装置が管理している変数集合および各対応する変数値のうち、問題となっているコンテンツ提供処理に関連するものである。変数には、利用者毎に存在する変数と、システム毎あるいは世界インスタンス毎に存在する変数とがある。利用者毎に存在する変数には、利用者毎の入力履歴やコンテンツ提供履歴もリスト形式等で格納することができ、これも文脈（すなわち、文（すなわち、シーン説明や解法論理や学習知識としての表現）を利用者に表示／学習させるための前提情報／環境条件あるいは表示／学習後の遷移状態としての意味をもつもの）として用いることができる。例えば、変数「現在の場所」＝”教会”が成立している文脈でのみ、”神父さんに尋ねる”という選択肢の選択が可能なように（後述する）提供態様制御ロジック情報を記述することができる。
【００１６】
定義４−１−１−１−２−１：なお、「世界インスタンス」とは、ある部分コンテンツが一定の世界観をもった物語等の場合に、同一の部分コンテンツのインスタンスを複数運用することができ（負荷分散などのため）、それぞれのインスタンスを世界のインスタンス（世界インスタンス）として観念できる。同一の世界インスタンス内であれば、利用者間でインスタンス内の共有変数（例えば、変数「世界に残っている宝物」）の遷移等を通じた相互作用が可能である。なお、「共有変数」とは、同一インスタンス内の利用者間および製作者間で共有することを意図した変数である。多くの変数は、製作者間でも共有したほうがコンテンツが充実するため、多くの場合、製作者（宣言者）に関する情報を変数名に加えたりせずに、他の製作者に公開（パーミッション）されて、他の製作者製の提供態様制御ロジック情報中で参照されたり更新されたりする。
【００１７】
ここで、「タイトル」とは、一定の企画意図やチーム内の信頼関係により製作されたコンテンツ。複数のタイトルを連携させることや、別のタイトルのリソース（文脈、マルチメディアファイルなど）を再利用すること、等を、本発明は志向している。
【００１８】
ここで、「カテゴリ」とは、タイトルの種類。カテゴリの例としては、物語（アドベンチャーゲーム等が含まれる）、解法（エキスパートシステム等が含まれる）、論理（仮説、論文、意見等が含まれる）等が考えられる。
【背景技術】
【００１９】
様々なネット小説や、それをよりゲーム的に発展させたノベル形式のアドベンチャーゲーム（下記、非特許文献１等）が、インターネットを介して既に提供されている。
【００２０】
また、Ｗｉｋｉ等により、テーマ別の知識や情報については、複数利用者による分散編集自体も可能になっている。
【００２１】
しかし、知識や情報を含めたコンテンツ（テキスト、動画／静止画、音声、におい形式等）の提供態様（提供範囲又は提供順序の少なくとも一方を含む提供態様）の制御、特にアドベンチャーゲームや法律診断エキスパートシステムやｅラーニングに見られるような、利用者入力（もしくは入力履歴（これは、必ずしもログ形式ではなく、変数Ｘ＝ａ、変数Ｙ＝ｂといった、コンテクストとして整理されている場合もある））に応じた動的な制御のためのロジック情報については、複数利用者による分散編集（特に、Ｃｏｎｓｕｍｅｒ  Ｇｅｎｅｒａｔｅｄ  Ｍｅｄｉａ（ＣＧＭ）的な編集のうち互いに提供を制御しあうコンテンツの編集）ができていない。
【００２２】
このため、特に利用者の状態等を表す変数に応じた動的な制御が必要な大規模な、アドベンチャーゲームやエキスパートシステムやｅラーニング知識ベースを、分散環境やインターネットで複数利用者がＣＧＭ的に協働して作ることが困難であった。
【００２３】
例えば、ゲームのストーリーを他人が独自に発展させたり、そのゲーム中の画像や音声との結合を含めた制御シナリオを他のゲームで再利用したりすることができなかった。このため、一般の人が多くの複線のあるゲーム作りの一端を担うということが手軽にできず、大資本しか壮大なゲームをつくることができなかった。また、せっかくできた壮大なゲームに対し、一般の人がちょっとしたアイディアを加えてより面白く、深く、幅広く、網羅的にし、何度でも遊べるようにするといったこともできなかった。
【００２４】
これは、法律診断のようなエキスパートシステムやｅラーニング知識ベースでも同様であり、当初の企画制作者外の専門家がＷＥＢ型エキスパートシステムやｅラーニング知識ベース（特に、利用者ごとの状態変数を管理し状態変数に応じた分岐制御等をもつもの）に独自の知識を付け加えて改善するということが手軽にできなかった。
【００２５】
近年においては、ＷｅｂサービスのＡＰＩを用いたいわゆるマッシュアップ等の手法が開発されているが、例えば、利用者であり開発者でもあるＡが管理していない（ｆｔｐやｓｓｈアクセスできない）他の開発者Ｂのサーバーコンピュータが開発者Ａとは別の利用者Ｃに対して実施するコンテンツ提供動作（特に別の利用者Ｃ用の変数を更新することで制御を効率化するスクリプトやプログラム）まで、開発者Ａが簡単に追加できるわけではない。開発者Ａのサーバーコンピュータ以外の他のコンピュータが実施すべき動作は、例えば利用者ＣのクライアントコンピュータにのみジャバスクリプトやＪＡＶＡ（登録商標）やＡｃｔｉｖｅＸやＦｌａｓｈ等として提供されている。結局、開発者Ａおよび開発者Ｂのサーバーコンピュータに格納されたコンテンツ同士の、各サーバーコンピュータ自体の動作を動的に定義することによる、開発者（ここでは、Ａ、Ｂ）にとって手軽な連携にまでは至っていない。
【００２６】
また、空いたＣＰＵをシェアする分散コンピューティングも行われているが、各ＣＰＵを搭載するサーバーコンピュータに固有の「コンテンツ」を連携させることができていない。
【非特許文献１】著：金児実千代、絵：楠良命、プログラム：ナレルシステム有限会社  「バクのバス」http://www.vlank.com/bb/   ２００４年
【発明の開示】
【発明が解決しようとする課題】
【００２７】
解決しようとする課題は、知識や情報を含めたコンテンツ（テキスト、動画／静止画、音声、におい形式等）の提供態様（提供範囲又は提供順序の少なくとも一方を含む提供態様）の制御、特にアドベンチャーゲームや法律診断エキスパートシステムに見られるような、利用者入力（もしくは入力履歴（もしくは入力履歴がコンテクスト形式（変数と値等）になったもの））に応じた動的な制御のためのロジック情報について複数利用者によるＣＧＭ的な分散編集ができるようにすること、である。
【００２８】
また、ゲームコンテンツの制御プログラム（ゲームシナリオ）同士を異なる制作主体等により動的に（多くの場合、事後的かつ非同期的に）連携を定義したり互いに文脈（状態変数等）やリソースを再利用したり、エキスパートシステムの制御プログラム（あるいはその制御によって提供される知識自体）を簡単に専門家が拡張できるようにしたり、教育システムの教育カリキュラム（ナビゲーションつきの教育コンテンツ）を拡張したりできる、コンテンツ提供装置、方法およびコンピュータプログラムを提供することである。
【課題を解決するための手段】
【００２９】
かかる課題に鑑み、本発明の請求項１は、
分散した又は分散しない記憶手段に蓄積したコンテンツをコンピュータ制御によりインターネットを介して又は介さずに利用者に提供するコンテンツ提供装置であって、
【００３０】
コンテンツ提供装置が利用者からの入力に応じてコンテンツの提供態様（提供範囲又は提供順序の少なくとも一方を含む提供態様）を制御できるようにするロジック情報である提供態様制御ロジック情報を、利用者が前記記憶手段に追加するための利用者製提供態様制御ロジック情報追加手段を備えること
を特徴とするコンテンツ提供装置を提供する。
【００３１】
定義１−１−２：ここで、「コンテンツ提供態様」とは、提供の範囲（どの画像サブセットか、どのテキストサブセットか、どのサウンドサブセットか、等）や順序（どういった画像表示順序か、どういったテキスト表示順序か、どういったサウンド再生（もしくは合成）順序か、等。タイミング制御も含む）のほかにも、提供／レンダリング／出力の、メディア・規模・方法・手段・利用リソースの組み合せ方・時間・構成等の観点も含むことができる。
【００３２】
定義１−１−２−１：そして、「コンテンツ提供態様を制御」とは、「コンテンツ提供態様」を制御することのほかにも、本発明では、他の部分コンテンツと共有する変数の書き換え等による部分コンテンツ間の間接的な制御も含む。
【００３３】
定義５：ここで、「制御ロジック」とは、制御の論理（最も一般にはフローチャート等で表現されるもの）であり、適当な手続型言語（のサブセット、例えば、代入文やＩＦ文やＷＨＩＬＥ文や関数呼出文を表現できる言語）や論理記述言語（のサブセット、例えば、ＰＲＯＬＯＧのホーン節を表現できる言語）を、制御ロジック記述言語として取り込む（解釈可能なインタープリタを用意する）ことによりそれぞれの言語で記述可能な制御構造などを取り込んで同等の制御を実現できる。
【００３４】
定義５−１：そして、「制御ロジック情報」とは、制御ロジック（制御の論理）を記述した情報である。主にテキスト形式の形式言語スクリプト（必ずしも独立したファイルとして保存されているとは限らない）であるが、バイナリ形式等のリソースの場合、すなわち、バイナリプログラム（ただし、ＯＳの固定のカーネルプログラムや本発明を実施する固定のカーネルプログラム（例えばＣＧＩの形式をとる）を除く）や、バイナリデータファイルや、ＤＢインスタンス、等をＵＲＩ参照等したスクリプトの場合は、それらのリソースも含めて、制御ロジック情報と呼ぶ。
【００３５】
定義５−２：そして、「提供態様制御ロジック」とは、「制御ロジック」のうち、コンテンツ提供態様の制御に係るものをいう。
【００３６】
定義５−２−１：そして、「提供態様制御ロジック情報」とは、「制御ロジック情報」のうち、コンテンツ提供態様の制御に係るものをいう。その範囲には、コンパイル済のネーティブ実行コード（バイナリプログラム）やＪＡＶＡ（登録商標）中間コード（ＣＬＡＳＳファイル）、ジャバスクリプト、Ｐｅｒｌスクリプト、ＰＨＰスクリプト等だけでなく、ゲーム用シナリオスクリプト（例えば、ロールプレイングゲーム、パズルゲーム、アクションゲーム、アドベンチャーゲーム等用の機械可読シナリオスクリプトや、これらと関連づけられて格納されるマルチメディアファイル・ＭＡＰ用データ・属性データ等のデータ構造も含む）や、知識定義スクリプトや、知識提供スクリプト（さらに、これらと関連づけられて格納されるマルチメディアファイルやデータ構造等も含む）、および、これらのスクリプトを解釈するためのインタープリタソフトウエア等も含む。
【００３７】
定義６：なお、「利用者」とは、コンテンツの提供を受ける客体である。「提供態様制御ロジック情報を追加した利用者」と、その提供態様制御ロジック情報に基づいてコンテンツの提供を受ける利用者とは、ほとんどの場合異なる。本発明では、利用者が一般的なリソース（画像、音声、自然言語テキスト、ＨＴＭＬ、等）をコンテンツ提供装置に登録して他の利用者に利用可能にするだけでなく、「提供態様制御ロジック情報」（例えば、変数を操作したり制御構造を定義したりできる半形式言語スクリプト、等）までも追加することができ、その追加した利用者は、コンテンツの提供を受けるだけでなく、追加した提供態様制御ロジック情報の「製作者」ともなり、コンテンツを提供する側にもなる。
【００３８】
定義６−１：ここで「利用者からの入力」とは、利用者が、サーバーコンピュータにネットワーク接続されたクライアントコンピュータ端末やスタンドアロンコンピュータに対して、マウスやキーボードを介して入力した信号を、コンピュータ処理可能な文字等として解釈したものである。その入力の意味は、例えばＷｅｂインターフェース上では、選択肢を選択するシンボルであったり、自由文テキストであったり、リンクのトリガであったりしてもよく、専用のコントローラ等を使用する場合には、音声・振動・向き・加速度・レバーの位相を含めたあらゆる信号を機械解釈したものとすることができる。また、ここでの入力とは、一回の入力操作の分だけでなく、その連続で構成される入力系列（さらにタイミング要素も含みうるもの）をも指す。すなわち、場合によっては、過去の入力履歴（又は、その入力履歴の全体もしくは要約を格納した変数の値）をも含めて「入力」として参照する。
【００３９】
定義７：ここで、「利用者製提供態様制御ロジック情報追加手段」とは、提供態様制御ロジック情報を、利用者が、コンテンツ提供装置によるアクセス可能な記憶手段に追加できるようにするものである。この目的に固有の部分は、ソフトウエアで記述することができる。例えば、利用者が、提供態様制御ロジック情報としてのコンピュータ解釈可能スクリプトを、Ｗｅｂブラウザに表示されたＨＴＭＬドキュメントのＦＯＲＭ構文のＴＥＸＴＡＲＥＡに、入力し、ＨＴＴＰで、サーバーのＣＧＩプログラムにＰＯＳＴすることができ、サーバーのＣＧＩプログラムは受信した内容を、提供態様制御ロジック情報として、リソースＵＲＩ（リソースＩＤ）などと関連づけて格納することができる。
【００４０】
そして、例えば、その提供太陽制御ロジック情報とリソースＵＲＩとを関連づけて記憶しているサーバーが、そのリソースＵＲＩの実体やＵＲＬを返信内容に含むＨＴＴＰ要求（例えば、ＣＧＩ実行ファイルがＵＲＬとなっている）を受けた場合に、そのＣＧＩ出力に、そのリソースＵＲＩと関連づけて格納された提供態様制御ロジック情報をトリガして実行（解釈）した結果や中間結果等を含めて出力することができる。
【００４１】
結局、請求項１の発明により、コンテンツの提供態様（提供範囲又は提供順序の少なくとも一方を含む提供態様）についての制御も、複数利用者が、分散環境などから、暇ができたとき等に逐次に追加することが可能になり、大規模なアドベンチャーゲームやエキスパートシステムや学習用知識ベースなどにおいて、コンテンツのプレゼンテーション（一度に提供する範囲の適切な絞込みや、各範囲を連続的に提供する順序や時間の調整等）制御についてＷｉｋｉ等より工夫をこらした、自由に提供制御可能ものを、みんなで作成すること、ひいてはちょっとした時間や労力で、誰もが、より表現力の豊かな公の知に貢献することが可能に、あるいは容易になる。
【００４２】
また、本発明の請求項２は、  
前記入力を、利用者への選択肢表示および利用者からの選択肢受信の形式で行うための選択肢入力手段を備えること、
前記提供態様制御ロジック情報が、該選択肢表示のための情報と、該選択肢表示に対応する選択肢を利用者から受信した際にコンテンツ提供装置が該利用者に対して行うべきコンテンツ提供態様制御のロジック情報とを含むこと
を特徴とする。
【００４３】
ここで、「利用者への選択肢表示」とは、２択〜Ｎ択の形式で、各選択肢をテキストや画像や音声等により区別して表現することを言う。
【００４４】
ここで、「利用者への選択肢表示」とは、２択〜Ｎ択の形式で、各選択肢をテキストや画像や音声等により区別して表現することを言う。
【００４５】
「選択肢表示のための情報」としては、例えば「”プロポーズのために海にいく”」「”プロポーズのために自宅に呼ぶ”」などが考えられる。
【００４６】
コンテンツ提供制御の情報の形式としては、例えば「ｇｏｔｏ＿ｓｃｅｎｅ（背景となる海画像のＵＲＬ、背景の前にスーパーインポーズして表示する人物画像等のＵＲＬ、背景の説明テキストのＵＲＬ、ＢＧＭとなる音声のＵＲＬ、移動直後に実行する制御スクリプトのＵＲＬ）」が考えられる。これを実行すると、それぞれのリソースに関連づけられた新たな選択肢セット及びその各対応する「コンテンツ提供制御の情報」を含むものになり、このセットが、ゲームプレイや問い合わせを通じて従来のネットサーフィンと同様に遷移していくことにより、仮想の物語（ゲーム）や専門分野の推論（エキスパートシステム）が進行していく。
【００４７】
これにより、言動選択式のアドベンチャーゲームや場合分け式の法律診断エキスパートシステムと同等のコンテンツを、複数利用者がインターネットなどの分散環境で協働して、逐次に作成・更新していくことが可能になる。
【００４８】
なお、有利には、その利用者が選択可能な選択肢のみをその利用者に表示することができる。この場合、選択可能な選択肢かどうかは、例えば、ロジック情報中の条件文（その選択肢が選択可能となる条件を示す「Ｉｆ文」等の部分スクリプト等）で示される条件（例えば、「所持金＞５００ＧＯＬＤ」、「性別＝男」など）を、その利用者の利用者データ（例えば、入力履歴や、所持金・体力（ＨｉｔＰｏｉｎｔ等）や、あまり頻繁にかわらないその他の属性（性別、職業、事件における立場等））や、その利用者に関連する利用者データ（例えば、仮想世界でその利用者が結婚しようとしている相手の利用者データ（例えば、「性別＝女」））や、コンテンツ全体としての利用者によらない共通のデータ（例えば、仮想世界が昼か夜かや、仮想世界の闘技場が空いているかどうかや、法令が施行されているかどうかや、サーバー（コンテンツ提供主装置）のリソースが空いているかどうかなど）が、満たしているかどうかをコンピュータが判断して決定することになる。
【００４９】
また、あきらかに、現実の地域の情報や、学際的な知識を本発明により徐々におりこんで、全世界を舞台にしたアドベンチャーゲームや、法域にとらわれないエキスパートシステム等を構築したりすることも可能になる。
説明テキストのＵＲＬは、ジャバスクリプトを含むＨＴＭＬであることができ、そのＨＴＭＬで説明した状況に合うよう利用者データや一般データをそのジャバスクリプトにより直接、間接に更新することも可能である。また、製作者がＨＴＭＬなどのリソースを追加（投稿）すると同時にそのリソースに適した提供態様制御ロジック情報を、そのリソースに関連づけて記憶することもできる。
【００５０】
また、本発明の請求項３は、
前記提供態様制御ロジック情報が、前記記憶手段中のデータをコンテンツ提供装置が更新するよう制御できるようにするロジック情報を含むこと
を特徴とする。
【００５１】
定義４−１−２：ここで、「分散した又は分散しない記憶手段中のデータ」とは、コンテンツ提供装置によりアクセス可能なオブジェクト中の情報をいう。新規作成する場合のオブジェクトの情報も含む。
ここで、「更新」とは、ＣＲＵＤのうちの、Ｃｒｅａｔｅ（新規作成）、Ｕｐｄａｔｅ（狭い意味での更新や追加も含む）、Ｄｅｌｅｔｅ（削除）だけでなく、Ｒｅａｄ＋Ｕｐｄａｔｅ（変数のインクリメント（例えば「、Ｇｏｌｄ＋＝１０；」など）のようなもの）なども含む意である。
【００５２】
これにより、提供の範囲や順序を（直接記述して制御するわけではなく、間接的に制御するという意味で）左右するデータ（例えば、動的に更新可能な変数「所持金」等）を更新する制御ロジック（例えば、「Ｓｅｌｆ．所持金−＝７００ＧＯＬＤ」※ここでＳｅｌｆはプレイ中（サーバー等がコンテンツ提供を現在処理中の）利用者のオブジェクト（利用者データ）を表す。）をも、利用者が必要に応じて追加できるようになり、わずかなロジック情報のスクリプト（例えば「所持金＋＝１０００ＧＯＬＤ」）の追加により、コンテンツ提供のいくつかの場面（例えば、「結婚式を挙げる」「我が家をもつ」）に影響を及ぼす可能性のある独立したインパクト（例えば、「お金に余裕が出てきた」（所持金＞１３００ＧＯＬＤ、になったこと））を、提供範囲の過多（例えば、金持ちになった瞬間に我が家についてのコンテンツ提供がなされる弊害）や提供順序の不適当（たとえば、結婚していないのに所帯用の住宅に関するコンテンツ提供がなされる弊害）等をきたすことなく簡潔に実現することができる。これは、たとえば、「選択肢Ａ＝”結婚式を挙げる”Ｉｆ（所持金＞１３００ＧＯＬＤ）；ｔｈｅｎ｛所持金−＝７００ＧＯＬＤ；ｐｌａｙ＿ｓｏｕｎｄ（”結婚式の鐘．ｗａｖ”）；ｇｏｔｏ＿ｓｃｅｎｅ（背景となる教会画像のＵＲＬ，背景の説明テキストのＵＲＬ．ＢＧＭとなる音声のＵＲＬ．移動直後に実行する制御スクリプトのＵＲＬ）；｝」といった形のスクリプト等で表現できる。
変数の格納は、集合文字列形式（取得情報＝「情報１：情報２：情報３」、友達＝「みーちゃん：たま」、獲得アイテム＝「鍵１：地図２」など）で行うことができる。
変数には利用者に関係なく変更になる共有変数があり、たくさんの利用者が行っている演出場面には一定数以上の利用者が入れないなどの制御もスクリプトレベルで可能となる。この場合変数の排他制御が当然行われる。
【００５３】
また、本発明の請求項４は、
前記提供態様制御ロジック情報が、前記記憶手段中のデータをコンテンツ提供装置が参照してコンテンツ提供を制御できるようにするロジック情報を含むこと
を特徴とする。
【００５４】
これは、たとえば、「Ｉｆ（（仮想世界１．天気＝晴れ  ｏｒ  仮想世界１．天気＝くもり）ａｎｄ  ｉｎ（花火，Ｓｅｌｆ．趣味））｛ａｄｄ＿ｓｃｅｎｅ（花火の画像ＵＲＬ，花火の説明テキストＵＲＬ，花火の音声ＵＲＬ）；」というスクリプトを追加することにより実現可能になる。なお、ｇｏｔｏ＿ｓｃｅｎｅと異なり、ａｄｄ＿ｓｃｅｎｅは移動直後に実行する制御スクリプトのＵＲＬは引数にもたず、条件にあった演出を追加するのみとなる。また上記「ｉｎ」はコンテンツで事前定義した組込関数であり、値がリスト形式である「Ｓｅｌｆ．趣味」のメンバーとして「花火」が含まれるかを検知している。
【００５５】
こうした仕組みにより、世界観全体や現実世界をよりリアルに反映したコンテンツ提供を、複数人による非同期のスクリプト（コンテンツ提供を制御するロジック情報）追加により、徐々に実現していくことができる。
【００５６】
また、主にコンテンツ提供主装置であるサーバーの記憶手段（ＨＤＤ等）に格納された世界観（環境変数的な変数の使用（たとえば、「仮想世界１．星の形状＝球」））のデータや、世界（コンテンツ全体）の一般変数としてのデータ（たとえば、仮想世界１．天気＝雪）等）による場合分けと、上記したａｄｄ＿ｓｃｅｎｅなどにおける引数の使用とにより、明らかにＵＲＬ等で示されるリソース（画像、テキスト、音声、制御スクリプトも）の、他のシーンとの共用や流用も容易となり、あまり時間のない人等にとっても、一層手軽な、公の知（しかもＷｉｋｉ等より表現能力が高い形式）への貢献が可能となる。
【００５７】
これにより、利用者の入力（例えば「神社Ａに１００ＧＯＬＤ寄付する」の選択）があったときに、追加された制御ロジック情報（「神社Ａに１００ＧＯＬＤ寄付する」；ｔｈｅｎ｛神社Ａの所持金＋＝１００ＧＯＬＤ；｝）が適用されて、他の利用者へのコンテンツ提供にも影響を与えるようにすること（たとえば、仮想世界で神社Ａの防犯が強化されており、夜に密かにお参りすることができなくなるようにする等のゲーム制御等）ができるようになる。
【００５８】
他の部分コンテンツ間では、ドメインが違っていてもデータの取り寄せが可能である。公知のセキュアなプロトコルを用いる。利用者ごとのデータを取り寄せる場合は、ＩＤはドメイン名＋ディレクトリ名＋利用者名などでデータを特定する。これは、データ（変数など）を条件文で参照するだけでなく、ＨＴＭＬのテンプレートなどのリソースの変数参照部分を、その変数値で埋めて出力することも含む。
例えばテンプレートが以下のような場合、
＜ＨＴＭＬ＞
＜ＢＯＤＹ＞
あなたが＜％ [http://knowrel.com/teyuka/lovestory1/user.present] ％＞を
プレゼントすると、彼女は大変喜びました。
＜／ＢＯＤＹ＞
＜／ＨＴＭＬ＞
変数であるuser.presentの変数値（例えば「指輪」）が参照されて、
---
あなたが指輪をプレゼントすると、彼女は大変喜びました。
---
というコンテンツ提供がなされる。
【００５９】
変数値は、文字列だけでなく、画像ファイル等を参照するＵＲＬ
（例えば、
＜ＩＭＧ ＳＲＣ＝=”http://knowrel.com/lovelove1.jpg”＞
なども代入することができ、この場合には、そのＵＲＬの画像がＨＴＭＬで
表示されることになる。
なお、演出スクリプト自体や演出文中でも変数（当該タイトルの変数＆参照権のあるタイトルの変数）を参照できる
【００６０】
また、本発明の請求項５は、
前記提供態様制御ロジック情報が、前記記憶手段中のデータをコンテンツ提供装置が参照して前記選択肢表示を制御できるようにするロジック情報を含むこと
を特徴とする。
【００６１】
これは、例えば、変数Ｘが埋まった選択肢の表示を可能とする。
【００６２】
また、選択肢を表示する条件がロジック情報中にあり、それをみたさない場合は選択肢自体を表示しないことも意味する。
【００６３】
また、本発明の請求項６は、
前記提供態様制御ロジック情報が、前記記憶手段中のデータをコンテンツ提供装置が参照して前記記憶手段中の他のデータを更新するよう制御できるようにするロジック情報を含むこと
を特徴とする。
【００６４】
これにより、例えばデータの物理的な依存関係の調整などを、利用者が行えるようになる。
【００６５】
また、本発明の請求項７は、
前記更新されるよう制御するデータおよび又は参照されるよう制御するデータが、コンテンツ提供装置に入力した利用者に関連する前記記憶手段中のデータであること
を特徴とする。
【００６６】
定義４−１−２−１：ここで、「コンテンツ提供装置に入力した利用者に関連するデータ」とは、オブジェクト中の、その利用者へのコンテンツ提供を現在問題にしている、コンテンツ提供装置にコンテンツ提供要求などを入力した利用者に関連するデータ（属性等）をいう。「利用者に関連するデータ（属性等）」とは、該入力した利用者のデータ（主に属性や所持アイテム等）の他に、該入力した利用者に応じた関係（友達、時間的・場所的隣接、その他の別途定義された関係等。再帰的な関係でつながる場合も含む）で決まる一又は複数の（場合によっては他の）利用者のデータ（主に属性や所持アイテム等）や、「利用者の」属性とはいえないデータ（例えば、該入力した利用者やその友達の「家の」属性、等）をも含む。
【００６７】
定義４−１−２−１−１：「更新されるよう制御するデータおよび又は参照されるよう制御するデータ」とは、同一変数であるデータを参照のみする場合、更新のみする場合、参照し更新する場合、更新し参照する場合も、異なる変数であるデータを参照のみする場合、更新のみする場合、参照し更新する場合、更新し参照する場合も、含む。
【００６８】
これにより、例えば利用者の腕力のデータに応じて、利用者が運んだ結果のデータを更新するといったロジックの追加を利用者が行えるようになる。
【００６９】
また、本発明の請求項８は、
前記提供態様制御ロジック情報が、コンテンツ提供装置に入力した利用者に関連する前記記憶手段中のデータをコンテンツ提供装置が参照して該利用者に関連する他の利用者に関連するデータを更新するためのロジック情報を含むこと
を特徴とする。
【００７０】
「入力した利用者に関連する他の利用者に関連するデータ」とは、入力した利用者に応じた関係（友達、時間的・場所的隣接、その他の別途定義された関係等。再帰的な関係でつながる場合も含む）で決まる一又は複数の他の利用者のデータ（主に属性や所持アイテム等）、および該他の利用者に応じた関係（同上）で決まるデータ（その利用者の属性や所持アイテムとは限らない）である。
【００７１】
このような関係は、制御ロジックのスクリプトで、例えば、「選択肢Ｂ＝”Ｘと友達になる”Ｉｆ（隣接（Ｓｅｌｆ，Ｘ）  Ａｎｄ  好相性（Ｓｅｌｆ，Ｘ））；ｔｈｅｎ｛ａｓｓｅｒｔ（友達関係（Ｓｅｌｆ，Ｘ））｝」等としておき、前記記憶手段に事前に友達関係を（ＰＲＯＬＯＧのａｓｓｅｒｔと同様な手法等で）定義しておくことにより、あらゆるタイミングで友達関係にある集合の全体を特定することができる。なお、好相性かどうかは、利用者データを比較するコンテンツ固有の組込関数（予約語であり戻り値はＢｏｏｌｅａｎ）等により明らかに定義可能である。
【００７２】
また、ある利用者データ（Ｓｅｌｆオブジェクト）に対して上記Ｉｆ文中のＸを満たす集合から上記選択肢Ｂを複数生成し、たとえば「選択肢Ｂ１＝”ａ君と友達になる”、選択肢Ｂ２＝”ｂさんと友達になる”、・・・」という選択肢集合を、（あるいは他の種類の選択肢と共に）利用者に同時に表示して、複数選択させ、友達関係を複数一括定義することも可能である。
【００７３】
また、こうした情報をもとに入力した利用者の利用者データ（Ｓｅｌｆオブジェクト）やその友達関係にある利用者データ（友達オブジェクト）に、利用者の言動がリアリティのある作用を及ぼすよう定義することが可能になり、利用者が分散環境を介して非同期で協働して、コンテンツを徐々に深めることが可能になる。例えば、”博物館に遊びにいく”という選択肢と、ロジック”｛Ｓｅｌｆ．所持金−＝１ＧＯＬＤ；Ｓｅｌｆ．見識＋＝３；友達関係（Ｓｅｌｆ，Ｘ）；Ｘ．見識＋＝１；｝”とをひもづけたスクリプト「”博物館に遊びにいく”；ｔｈｅｎ｛Ｓｅｌｆ．所持金−＝１ＧＯＬＤ；Ｓｅｌｆ．見識＋＝３；友達関係（Ｓｅｌｆ，Ｘ）；Ｘ．見識＋＝１；｝」を追加することができる。この場合、”博物館に遊びにいく”という選択肢を入力した利用者の所持金が１ＧＯＬＤ減り、見識属性が３ポイント向上し、その友達（Ｘとなりうるすべての利用者オブジェクト）の見識属性が１ポイント向上する、という制御を、コンテンツに逐次的に追加することになる。なお、実装はＰＲＯＬＯＧの実装を参考に行うことが可能である。
【００７４】
これにより、例えばその利用者が持っている薬の多寡により、その利用者が回復コマンドにより回復できるＨＰ（ヒットポイント）の度合いを制御できるロジック情報等を追加でき、利用者毎のより具体的な現実を、より精緻にを反映した世界観（動的な作用の記述を含むもの）をもちよって共有し、興味深く遊ぶことができるようになる。
【００７５】
また、本発明の請求項９は、
前記提供態様制御ロジック情報が、該提供態様制御ロジック情報の製作者に関する情報と関連づけられて記憶され、利用者が採用した製作者に関する情報と関連づけられた提供態様制御ロジック情報のみをコンテンツ提供装置が参照して該利用者へのコンテンツ提供を行うこと
を特徴とする。
【００７６】
ここで、「製作者」とは、提供態様制御ロジック情報を製作し本発明によるコンテンツ提供装置に追加した利用者、又は部分コンテンツとしてのタイトルを企画・制作・製作した個人もしくはチームである制作主体をいう。
【００７７】
ここで、「製作者に関する情報」とは、例えば、提供態様制御ロジック情報を製作した製作者である利用者の名称（ドメイン名＋利用者名）や、部分コンテンツ（物語や解決や論理）のタイトル名（例えば、「高島平のとあるスリリングな散歩Ａ」、「板橋最強の弁護士軍団によるセクハラへの対処」等）や、その組み合わせ（ドメイン名＋タイトル名＋利用者名）であり、比較的一貫した物語・世界観・価値観・方針・論理等を保証するための識別情報（またはそのための表示）をいう。
【００７８】
内部表現としては、製作者：利用者（例えば、knowrel.com/teyuka/user/keisukeで表現する）、物語（例えば、kank.jp/teyuka/story/takashimadaira_thrilling_walk_Aで表現する）、解決（例えば、vlank.com/teyuka/solution/best_lawyer_team_of_itabashi_for_sekuharaで表現する）は、ここで言う製作者になることができる。製作者が「入力した利用者」である場合には、自分の製作したロジック情報による制御を実施することになる。
【００７９】
製作者に関する情報とは、例えば製作者の名称（ドメイン名＋利用者名）や製作者に関連する部分コンテンツ（物語や解決や論理）のタイトル名（例えば、「高島平のとあるスリリングな散歩Ａ」、「板橋最強の弁護士軍団によるセクハラへの対処」等）や、その組み合わせ（ドメイン名＋タイトル名＋担当利用者名）であり、一貫した物語・世界観・価値観・方針・論理等を保証するための表示。
提供態様制御ロジック情報の製作者に関する情報
【００８０】
他のドメインのサーバーへの利用者データ（変数「所持金」などの変数値）の問い合わせは、公知のセキュアなプロトコルにより行う。その際、利用者ＩＤは、利用者が最初に利用者登録したドメインの利用者ＵＲＩなど（例えば、http://knowrel.com/teyuka/user/keisuke）となる。なお、パーミッション設定に即して、あるドメインが他のドメインからの問い合わせに応じないことができる。また別の実施形態では、各ドメインにおける各利用者のデータがＸＭＬ形式で格納されており、ＨＴＴＰ等でオープンに参照できるようになっており、アクセス負荷を軽減している。この場合でも、更新については、ＸＭＬを格納するドメインによるパーミッションが必要であり、ドメインのＴＥＹＵＫＡサーバープログラムが更新を行う。
【００８１】
この発明は、製作者を複数選択することも含む。例えば、任意のゲーム状態で製作者を選択さえすれば適用可能になる提供態様制御ロジック情報集合の製作者のリストを画面左にチェックボックスとして用意し、選択（場合によっては有償選択）を促すとともに、チェックした（すなわち選択した）製作者に係る提供態様制御ロジックを以降、採用する（参照する）ようにすることができる。
【００８２】
製作者は、例えば、インターネットドメイン／[＋[物語名／＋[編集者名]]]として表現することができる。例えば、http://teyuka.jp/oboemon_story/yoshimiとして製作者を表現できる。
【００８３】
また、本発明の請求項１０は、
前記提供態様制御ロジック情報が、該提供態様制御ロジック情報の製作者に関する情報と関連づけられて記憶され、コンテンツ提供装置が、前記利用者への選択肢表示の際に、該選択肢に対応する提供態様制御ロジック情報に関連づけられた製作者に関する情報から得られる情報を示すこと
を特徴とする。
【００８４】
複数の製作者が選択される場合、選択肢として表現されうる内容が重なることが考えられるが、この場合には、ゲームプレー時やシステム問合せ時に一つの選択肢としてまとめて表示することもできる。
【００８５】
利用者への選択肢表示の際に、該選択肢に対応する提供態様制御ロジック情報に関連づけられた製作者に関する情報から得られる情報を示す。
【００８６】
例えば、選択試を以下のように示す。
1.お金をくださいと頼む（物語Ａ）
2.お金をくださいと頼む（物語Ｂ）
3.品物を売ってお金にする（物語Ｂ）
【００８７】
なお、個々の部分コンテンツ（物語や解法など）へ（有料又は無料で）アクセスする（これを以降、「加入」と呼ぶ）かどうかを利用者に選択させることもでき、その場合には、加入した部分コンテンツの一覧を画面の左のフレームにリスト形式で表示し、現在のゲーム状態（シーン）や法的な状況設定（入力履歴に対応するもの）からその加入によってさらに選択肢がひろがりうる部分コンテンツのリストもさらに加入済リストの下部に表示して、加入を促したりすることができる。また、加入しているか否かにかかわらずにすべての部分コンテンツの選択肢を表示し、選択によって加入を広げるようにすることができる。また、加入済部分コンテンツのリストのメンバーのチェックボックスをはずすことにより、利用者が加入を解除したりできるようにすることも可能である。また、左のリストのメンバーの順番を入れ替えられるようにすることもでき、この順序によって、選択肢が競合した場合に優先的に実施（すなわちロジック情報の解釈よび実行）するロジック情報の順序（すなわち、例えばゲームの遷移方向の優先順序や適用を検討する法域等の優先順序）を決定したり、選択肢を優先的に表示するロジック情報の優先順位を決定したりするようにすることもできる。
【００８８】
ゲーム利用者には、プレイ選択権があり、遊ぶタイトルの範囲を事前に又は随時選択したり、シナリオスクリプトのオープンリージョンに書かれた選択肢のうち条件充足済の選択肢を優先的に表示したり優先的に適用したりするタイトルの順序を選択できるプレイプレファレンス権がある。また、オープンリージョンについて、一般投稿者（＝利用者ー）への優先順位をつけたりブラックリストに載せた投稿者の追加文は実行しないようにすることができる。
【００８９】
また、本発明の請求項１１は、
前記提供態様制御ロジック情報が、該提供態様制御ロジック情報の製作者に関する情報と関連づけられて記憶され、利用者へのコンテンツ提供に適用された提供態様制御ロジック情報に関連づけられた製作者に関する情報に応じて該利用者への以降のコンテンツ提供を制御する提供態様制御ロジック情報を決定すること、
を特徴とする。
【００９０】
ここで、「利用者へのコンテンツ提供に適用された提供態様制御ロジック情報に関連づけられた製作者に関する情報に応じて該利用者への以降のコンテンツ提供を制御する提供態様制御ロジック情報を決定する」とは、１）その利用者へのコンテンツ提供を、過去に最も多く制御した製作者の提供態様制御ロジック情報のみを採用したり、２）過去に制御したすべての製作者の提供態様制御ロジック情報をなるべく多く採用したり、３）提供態様制御ロジック情報による制御に矛盾が生じた場合や多重制御を省略する場合に過去に（その利用者への又は全利用者への）コンテンツ提供をより多く制御した製作者の提供態様制御ロジック情報を優先したり、４）時間的に新しく（その利用者への又は全利用者への）コンテンツ提供の制御に貢献した製作者の重みを重くして適用する提供態様制御ロジック情報（製作者にひもづいている）の優先順位を決定したりすることを意味する。
【００９１】
また、本発明の請求項１２は、
前記利用者製提供態様制御ロジック情報追加手段が、前記提供態様制御ロジック情報を、前記記憶手段中のリソースにトリガ対象として関連づけて追加することと、
該リソースの提供の際に、該リソースと関連づけて追加された提供態様制御ロジック情報をトリガするリソース提供時トリガ手段を有すること
を特徴とする。
【００９２】
ここで、「前記データ又は前記利用者データが、どの製作者が宣言したデータかを判別できるような形式」とは、例えば、変数「おぼえもんの最愛の人物」の値を記憶するＸＭＬファイルが、サーバーhttp://teyuka.jp/の、/oboemon_story/物語の、yoshimi担当製作者フォルダに記憶されていること等をいい、製作者のカテゴリは、「サーバー＞物語＞その物語の担当製作者」等と階層化されていてもよい。
【００９３】
ここで、「どの製作者の提供態様制御ロジック情報がどの製作者が宣言したデータを参照、更新、追加、削除又はこれらの組合せ操作できるかを定義する製作者間パーミッション情報」とは、例えば、パーミッション設定ファイル（robot.txtのようなもの）で実現することができ、例えば、各ＨＴＴＰサーバーのドキュメントルートや階層的なサブフォルダ（物語＞部分物語＞部分物語の担当製作者１など）毎に、どの製作者製の提供態様制御ロジック情報からの参照／更新／追加／削除を許すかを、製作者単位で、あるいは物語単位で、あるいは物語が帰属するサーバー単位で記述したパーミッション設定ファイル（ＸＭＬ）を配置することで実現できる。
【００９４】
例えば、http://teyuka.jp/oboemon_story/access.xmlには、以下のように記述されており、oboemon_story中の共通データ及び利用者データ（実際には別のＸＭＬファイルやＲＤＢに格納されている）が、http://knowrel.com/kabemaru_story/のすべての担当製作者から参照可能であり、http://vlank.com/vlank_story/joshidaisei/という担当製作者からは参照および更新が可能であり、http://youest.com/の全ての物語のすべての担当製作者から参照・追加・削除可能であり、それ以外の製作者からはアクセス可能でないことを示している。
----------------------------------------------------------------
http://knowrel.com/kabemaru_story/
read
http://vlank.com/vlank_story/joshidaisei/
read,modify
http://youest.com/
read,add,delete
deny
----------------------------------------------------------------
【００９５】
なお、一部の製作者（以下の例ではspam.comの全部の物語の全部の製作者）製の提供態様制御ロジック情報からのアクセス制御のみを行い、原則アクセス可とするときは、以下のようになる。
----------------------------------------------------------------
http://spam.com/
read,modify,add,delete
allow
----------------------------------------------------------------
【００９６】
なお、同じサーバー内や同じ物語内を指定するときは、相対アドレス（../story_oboemon2/)などを指定することも可能であり、本発明の趣旨から、同じサーバー内の物語間ではデータが相互参照可能であるとすることもできる。
【００９７】
リソースを一度に複数提供する場合は、各リソースに関連づけられたすべての提供態様制御ロジック情報を一斉に（ただし、内部的には順次）トリガすることもでき、選択肢表示の形式で利用者が選択する必要のある場合には、選択する必要のない提供態様制御ロジック情報をすべて適用した後に、すべてのリソースに関連づけられたすべての選択肢を一度に表示して選択の対象とすることができる。なお、選択する必要のない複数の提供態様制御ロジック情報を一斉トリガする場合を想定してトリガの優先順位を提供態様制御ロジック情報に付記するようにしたり、選択肢選択後も他の選択肢を選択可能なようにしたりすること（例えば、物語におけるシーンの移動やや解決のステップや論理の推進の制御を含まない提供態様制御ロジック情報をトリガするなど）もできる。
【００９８】
リソースとは、ドメイン、ドメイン内のディレクトリ（製作者＝利用者、物語、解決、論理）、ドメイン内のディレクトリ内の主コンテンツファイル（ノードとも呼び、例えば、ＨＴＭＬ形式やＸＭＬ形式でよく、さらにそれらの中に変数などを埋め込んだテンプレート形式でもよい）・画像ファイル・音声ファイル・動画ファイル・一般データや利用者データを記憶するための変数名定義ファイル・既登録の提供態様制御ロジック情報自体など。
【００９９】
動的なリソースとは、一般データや利用者データとしての変数の値、又は変数を組み合わせた変数の組中の各変数値の範囲の組（例えば｛金：５０以上１００以下，体力：３０以下又は６０以上，現在の場所：街角銀行｝など）。
【０１００】
ドメイン内とは、物語間、解決間、論理間などのコンテンツ共有をいう。異なるカテゴリ間（例えば物語と解決の間）のコンテンツ共有も（しかも、画像や音声だけでなくテキストも）ありうる。
【０１０１】
なお、リソースに関連づけられていないロジック情報は常に評価される。
【０１０２】
また、本発明の請求項１３は、
製作者が、該製作者が製作したものとして記憶されたリソースにトリガ対象として関連づけられる、別の製作者製の提供態様制御ロジック情報の追加を、製作者ごとおよび又は該別の製作者ごとに制御できるようにした製作者毎ロジック情報追加制御手段を有すること
を特徴とする。
【０１０３】
ここで「製作者ごと」とは、製作者が各自の都合で製作対象リソースに（製作リソース全体又は個別リソース毎に）対し一律の又は各別製作者に応じたパーミッションを設定できることをいい、「別製作者ごと」とは、一律に又はリソースの製作者の都合で（製作リソース全体又は個別リソース毎に）各別製作者へのパーミッションを設定できることをいい、「製作者ごとおよび該別の製作者ごと」とは、製作者が各自の都合で製作対象リソースに（製作リソース全体又は個別リソース毎に）対し各別製作者に応じたパーミッションを設定できることをいう。
【０１０４】
これはリソースごとに設定することができる。
【０１０５】
また別の製作者とは、ドメイン単位であってもよく、カテゴリ単位であってもよく、物語等の担当製作者単位であってもよい。
【０１０６】
ゲーム名の識別は番号又はＦＱＤＮ（ＵＲＩ）で管理できる。
一般利用者にパーミッションしたときは、一般利用者が、当該ゲームタイトルおよびパーミッションされた外部ゲームタイトルの変数などをつかったスクリプトを定義でき、その移動先はディレクトリに含まれる当該発明に係るゲームだけにとどまらず、一般のＨＰへのジャンプや一般の曲の開始のトリガページへのサブルーチンコールであってもよい。広告を表示するトリガであってもよい。一定の文体に統一された雑応答用サブルーチン専門サイトへのサブルーチンコールがあってもよい。サブルーチンコールには参照渡しでタイトル内変数やタイトル外変数を渡すことができ、サブルーチンによる参照および更新の対象となりうる。声や効果音だけの投稿、実写だけの投稿、用語説明や解説だけの投稿もありうる。一般人の投稿に優先順位をつけるのは難しいのでランダムとすることもできる。
【０１０７】
また、本発明の請求項１４は、
製作者が、該製作者が製作したものとして記憶されたリソースにトリガ対象として関連づけられた提供態様制御ロジック情報からの、所定の製作者製のリソースの利用を制御できるようにした別製作者リソース利用制御手段を有すること
を特徴とする。
【０１０８】
別の製作者製のリソースの利用を制御：製作者の固有リソースへの提供態様制御ロジック情報の追加を原則として許したとしても、不良とわかっている別の製作者に固有のリソースや不良とわかっているリソースの提供制御（利用）をしたり、不良とわかっている別の製作者製の提供態様制御ロジック情報や不良とわかっている提供態様制御ロジック情報を直後実施したりするような、あやしいとわかっている提供態様制御ロジック情報の一部又は全部の制御を無効にする、というものである。
【０１０９】
また、本発明の請求項１５は、
製作者が、該製作者を採用した利用者からの、所定の別の製作者が製作したものとして記憶されたリソース自体の利用および又は該リソースにトリガ対象として関連づけられた提供態様制御ロジック情報の利用を制御できるようにした別製作者リソース関連ロジック情報利用制御手段を有すること
を特徴とする。
【０１１０】
ここで「所定の別の製作者が製作したものとして記憶されたリソース自体」には、所定の別の製作者が製作したものとして記憶された提供態様制御ロジック情報（が格納されたファイルやデータ構造）自体も含むことに留意されたい。
【０１１１】
ここで、所定の別の製作者の固有のリソースに関連づけられた提供態様制御ロジック情報とは、不良とわかっている別の製作者に固有のリソースに関連づけられた提供態様制御ロジック情報や不良とわかっているリソースに関連づけられた提供態様制御ロジック情報
【０１１２】
また、本発明の請求項１６は、
前記データ又は前記利用者データが、どの製作者が宣言したデータかを判別できるような形式で前記記憶手段に記憶されていることと、
どのリソースにトリガ対象として関連づけられた提供態様制御ロジック情報がどの製作者が宣言したデータを参照、更新、追加、削除又はこれらの組合せ操作できるかを定義するリソース対データパーミッション情報が前記記憶手段に記憶されていることと、
該リソース対データパーミッション情報に応じて、コンテンツ提供装置が、各リソースに関連づけられた提供態様制御ロジック情報からの、各製作者が宣言したデータへのアクセス制御を行うこと、
を特徴とする。
【０１１３】
ここで、「リソース対データパーミッション情報」は、リソースの個々のＩＤやファイル名によるパーミッションだけでなく、リソースの別の属性（例えば、リソースを製作した者として記憶された製作者、リソースのバイトサイズ、出力画面領域サイズ、出力時間等）によるパーミッションも定義することができる。
すなわち、へんなリソースに関連づけられたロジック情報からのデータアクセスを認めないというものである。
【０１１４】
提供態様制御ロジック情報を追加するリソースは、そのリソースに関連づけられた提供態様制御ロジック情報からのアクセス制御パーミッションの設定単位とすることもできる。これにより、例えば特定の不良リソースがトリガとなり物語を左右すること等を制御し、多面的で記述量の節約可能なパーミッション設定が可能になる。
【０１１５】
ちなみに、その前段階の制御として、提供態様制御ロジック情報により提供制御（利用）するリソースの所属ドメインや所属物語等をさらにパーミッション設定の単位とし、いわば「コントロールの飛先を制御」することで、さらに多面的で記述量の節約可能なパーミッション設定ができるようになる。
【０１１６】
また、本発明の請求項１７は、
前記提供態様制御ロジック情報が、該提供態様制御ロジック情報の製作者に関する情報と関連づけられて記憶されていることと、
前記データ又は前記利用者データが、どの製作者が宣言したデータかを判別できるような形式で前記記憶手段に記憶されていることと、
どの製作者製の提供態様制御ロジック情報がどの製作者が宣言したデータを参照、更新、追加、削除又はこれらの組合せ操作できるかを定義する製作者間データパーミッション情報が前記記憶手段に記憶されていることと、
該製作者間パーミッション情報に応じて、コンテンツ提供装置が、各提供態様制御ロジック情報からの、各製作者が宣言したデータへのアクセス制御を行うこと、
を特徴とする。
【０１１７】
各提供態様制御ロジック情報からの、各製作者が宣言したデータへのアクセス制御を行う。
【０１１８】
ここで「各製作者が宣言したデータへのアクセス制御」とは、ドメイン製の提供態様制御ロジック情報からの一括アクセス制御、ドメイン×製作者（利用者／物語／解決／論理）製の提供態様制御ロジック情報からの個別アクセス制御が可能である。ここで、利用者と物語等を同様に説明しているが、製作者に関する情報が、「ドメイン名＋タイトル名＋担当利用者名」となっている場合、パーミッションを３階層に渡って設定することが可能である。例えば、「ドメインＡ（によって追加された提供態様制御ロジック情報）からの更新は認めないが、ドメインＡのタイトルＢ（によって追加された提供態様制御ロジック情報）からの更新は例外的に認め、さらにその例外としてドメインＡのタイトルＢの担当利用者Ｃ（によって追加された提供態様制御ロジック情報）からの更新は例外的に認めない、といったパーミッション設定である。
【０１１９】
ここで、「各製作者が宣言したデータ」は、ドメインの共有データとして宣言したデータ（一般データ、利用者データ、リソースを含む）や、ドメインの製作者（利用者／物語／解決／論理）に宣言したデータ（一般データ、利用者データ、リソースを含む）を言う。
【０１２０】
パーミッション制御は、１）誰が制御するか、２）誰のアクセスを制御するか、３）どこへのアクセスを制御するか、４）どこからのアクセスを制御するか、５）どういう種類のアクセスを制御するか、６）何によって制御するか、という観点で整理できるが、この請求項の場合、１）製作者、２）他の製作者や一般利用者、３）製作者のドメイン固有のデータ（一般データ、利用者データ、リソース）やそのドメインの製作者が製作したものとして関連づけられたデータ（一般データ、利用者データ、リソース）、４）提供態様制御ロジック情報（に制御されているコンテンツ提供装置）、５）参照（提供制御（利用）も含む）、更新、追加（提供態様制御ロジック情報の追加は含まないものとすることができる）、削除又はこれらの組み合わせ、６）提供態様制御ロジック情報の製作者（や、物語等や、所属ドメイン）が誰か（／何／どこか）、となる。
【０１２１】
データを利用させない、はいってこさせないというものである
【０１２２】
なお、このパーミッションのリストは、複数の提供態様制御ロジック情報が競合したときに、どの製作者の提供態様制御ロジックを優先させるか（あるいは実施する唯一のロジックとして選択するか）を、他人の提供態様制御ロジックを付加されるデータやリソースを管理する側である製作者サイドの嗜好（プレファレンス）として決定するためにも用いることができる。なお、この嗜好は、製作者のドメインごと、ドメインの物語等ごと、物語で使うリソース等ごとに設定することができる。
【０１２３】
以下、ゲームの内容の編集権と選択権権についても議論をする。
【０１２４】
どのサイトがあるいはどのタイトルが、どのサイトをあるいはどのタイトルに対しパーミッションを与えているかどうかは、各サイトの所定のＵＲＬ（http://ooo.ooo.com/wv/permission.html）を参照すれば明らかになる。パーミットしているサイトからパーミットされているかどうかは、相手のサイトの同じ/wv/permissionをみて判断することになる。
【０１２５】
すなわち、ゲームの内容の参照権、追加権（参加トリガ＋影響トリガ）、編集権と参加権、および対応するパーミッション権、優先表示プレファレンス権、優先適用プレファレンス権と、プレイ選択権およびプレイプレファレンス権、およびこれらに応じた専用インターフェースを備える。
【０１２６】
制作会社には、ゲームｘの設計時に他のゲームｙの変数（プレイログ、クリアステージ集合、属性値集合、アイテム集合）の辞書（変数名と変数の型（どんな値が代入されうるか））を参照できるという参照権だけでなく、ゲームｘの設計時に他のゲームｙのシナリオスクリプト（のオープンリージョン）にゲームｘへの参加トリガ（制御がゲームｘに移行し、リターンで戻ること）やゲームｘへの影響トリガ（ゲームｘの変数の値を変えること）を追加できる追加権や、ゲームｘのプレイ時に他のゲームｙの変数を書き換えたりする編集権があり、参照を受けたり追加を受けたり編集を受けたりするゲームタイトルの制作会社は、それらを受けるゲームタイトルごとに、あるいはその制作会社のすべてのゲームタイトルについて一括して、それらを受けるかどうかのパーミッションを、権限を行使する側の別の制作会社ごとあるいは権限を行使するゲームタイトルごとに又は一括して設定したり、設定した上でそれらの優先順位を設定したり、他のゲームによって追加されたスクリプトを無効化したり削除したり、他人によって追加されたスクリプトの文を自分の所有文として、文（ルール）単位の優先順位設定が可能な領域へコピーして格上げすることも可能である。
【０１２７】
本発明の請求項１８は、
利用者に、他の製作者が宣言した変数名および又はファイル名を開示して、該利用者製の提供態様制御ロジック情報において、該他の製作者が宣言した変数名および又はファイル名によるデータアクセスを利用可能にする他製作者製データ開示手段を備えること
を特徴とする。
【０１２８】
ここで「他の製作者が宣言した」とは、一般のプログラミング言語において、そのモジュールの製造を担当するプログラマーが行う変数宣言、関数宣言、サブルーチン宣言や使用リソースの宣言等と同様の意味である。宣言のスコープは、別の修飾子（ドメインやフォルダ名）等と組み合わせて定義し、解釈する。
【０１２９】
ここで「変数名および又はファイル名」とは、「ファイル名」が、提供態様制御ロジック情報を格納したファイルのファイル名でありその内容が単一の提供態様制御ロジック情報である場合や、ファイルに複数の提供態様ロジック情報を含んでおり、「ファイル名」がそのファイル中の特定のロジック情報の識別子を含んでおりその実体が識別子に対応する提供態様制御ロジック情報である場合（例えば、「logic_set1.html#logic1等」）も含む。
【０１３０】
したがって、「変数名および又はファイル名によるデータアクセス」とは、提供態様制御ロジック情報を格納したファイル中の唯一の／特定の／全部の提供態様制御ロジック情報に対するアクセスである場合も含む。
【０１３１】
例えば、製作者による設計中／プレイ中に他の製作者製のノード名（ＵＲＩ）も表示されて、流用／共有の対象となる
【０１３２】
本発明の請求項１９は、
前記他製作者製データ開示手段が、利用者に、該利用者へのコンテンツ提供のためにコンテンツ提供装置が過去にアクセスした変数名および又はファイル名を開示して該利用者製の提供態様制御ロジック情報において該変数名および又はファイル名によるデータアクセスを利用可能にすること
を特徴とする。
【０１３３】
ここで「変数名および又はファイル名」の解釈は上記したとおりである。
【０１３４】
本発明の請求項２０は、
利用者以外の製作者が製作した提供態様制御ロジック情報が該利用者に提供制御したリソースを、該利用者に開示して該利用者製の提供態様制御ロジック情報において利用可能にする提供済リソース開示手段を備えること
を特徴とする。
【０１３５】
ここで、「提供制御した」とは、中身や値を参照して提供したものだけでなく、中身や値を変更したものや、プログラムやスクリプトとして起動したものを含む。
【０１３６】
ここで「リソース」の定義は、上記したとおり、コンテンツ提供装置によりアクセス可能なすべてのオブジェクトであり、大体「変数名および又はファイル名」の範囲と同じだが、固定プログラム（オペレーティングシステムのカーネルやカーネルに近いプログラム（シェル等）、一般的なツール（wc,diff,sendmail等）、Ｐｅｒｌ／ＰＨＰ／ＪＡＶＡ（登録商標）解釈系および本発明を実施するカーネルプログラム（例えばＣＧＩ形式等）、等）までも含む点が異なる。
【０１３７】
ここで、他のゲームからの参照を許すために、変数（ノード名も含むノード履歴）を公開することになるが、その変数までの道のりをクリアしたものだけに公開するようにしてもよく、その変数名は利用者（他のゲームタイトル開発者も含む）ごとに異なる名前をつけるようにすることもできる。
【０１３８】
また、一つの現象に対する効果が二重に定義されて、倍の効果が発生することを防ぐため、ロジック情報自体をＨＴＭＬで記述するようにし、ロジック情報の投稿可能な権限をもつ者から参照可能にする。
【０１３９】
本発明の請求項２１は、
前記提供態様制御ロジック情報が、所定の条件を充たす利用者に対してのみ所定の提供制御をするための制御条件部を有することと、
前記利用者製提供態様制御ロジック情報追加手段が、提供態様制御ロジック情報の制御条件部に、該提供態様制御ロジック情報を追加しようとしている利用者の利用者データから得られる条件を自動的に挿入すること
を特徴とする。
【０１４０】
ここで、「条件を充たす利用者」とは、例えば、お金が５０以上の利用者や、年齢が２０以上の利用者をいう。
【０１４１】
こじで、「所定の提供制御」とは、例えば、「家を買う」という選択肢の表示や、「酒を飲んだ」という結果の表示。
【０１４２】
該提供態様制御ロジック情報を追加しようとしている利用者の利用者データから得られる条件：例えば利用者が数々の試練を乗り越えて本発明によるゲームの経験値が５２になっている場合は、「経験値＞５０」という条件を自動挿入した「Ｉｆ（経験値＞５０）Ｔｈｅｎ”高度な呪文を使って逃れた”」という提供態様制御ロジック情報を生成することなどである。５２という数字から５０以上という条件を適当な一定のアルゴリズムにより自動的に抽出している。
【０１４３】
用途として、これは、利用者がゲームのプレイ中にも提供態様制御ロジック情報を追加できることになり、それはゲームでまさに直面している課題や環境を反映したものとすることができ、課題や環境に対する新しい解決策やその予想される結果を効率的に登録して、ゲームのシナリオとしてのアイディア網羅性を効率的に高めることができる。
【０１４４】
また、実装として、適当な一定のアルゴリズムにより自動抽出された条件をデフォルト条件として、その提供態様制御ロジック情報を追加する利用者が、そのデフォルト値から微調整できるようにすることもできる。
【０１４５】
自分の履歴中の通過ノード、アイテム、属性値の集合をデフォルトの条件部として自動的に表示し、その中から必須の条件を追加者が抽出してそれぞれの閾値（例えば金貨の最低所有額）も調整できるようにし、その結果をコマンド表示の条件又はコマンド受理の条件とできるようにする。ただし、参照した変数を有するゲームタイトルへの参照がパーミッションにないときは、ワーニングがでて、パーミッションが出るまでは、無効なコマンドの追加となる。
【０１４６】
本発明の請求項２２は、
従前の提供態様制御ロジック情報では定義されていない利用者入力に対する制御を追加できること
を特徴とする。
【０１４７】
ここで、「従前の提供態様制御ロジック情報では定義されていない利用者入力」とは、例えば、コンテンツ提供装置が部分コンテンツとしてインターネットアドベンチャーゲームを提供している場合、最初の制作者が想定している主人公の動作（例えば、「ドアを開ける」、「ノックする」）以外の動作（例えば、「ひらけゴマ、という」）であり、部分コンテンツとして法律診断エキスパートシステムを提供している場合、最初の制作者が想定している事件態様（例えば、「好きになった相手が１５歳だが結婚したい」）以外の相談者の事件態様（例えば、「自分の飼っているペットに財産を与えたい」）等である。なお、制御条件部（ＩＦ文等）を含む場合は、条件が同一である場合にのみ定義済みとみなす、ようにすることも本発明に含める。
【０１４８】
なお、同じ利用者入力に対する制御であるときは、選択肢の表示上は、集約することができる。その場合、複数の製作者をリスト形式で集約することができる。
【０１４９】
制御については、従前の提供態様制御ロジック情報では定義されている制御も追加できるが、同一の制御を二重におこなわないようにすることもができる。二重に行うかどうかを提供態様制御ロジック情報中で区別するようにすることができる。
【０１５０】
また、本発明の請求項２３は、
分散した又は分散しない記憶手段に蓄積したコンテンツをコンピュータ制御によりインターネットを介して又は介さずに利用者に提供するコンテンツ提供装置を利用したコンテンツ提供方法であって、
コンテンツ提供装置が利用者からの入力に応じてコンテンツの提供態様（提供範囲又は提供順序の少なくとも一方を含む提供態様）を制御するロジック情報である提供態様制御ロジック情報を、利用者が分散した又は分散しない記憶手段に追加できるステップを備えること
を特徴とするコンテンツ提供方法を提供する。
【０１５１】
また、本発明の請求項２４は、
分散した又は分散しない記憶手段に蓄積したコンテンツをコンピュータ制御によりインターネットを介して又は介さずに利用者に提供するコンテンツ提供装置を動作させるためのコンピュータプログラムであって、
コンテンツ提供装置が利用者からの入力に応じてコンテンツの提供態様（提供範囲又は提供順序の少なくとも一方を含む提供態様）を制御するロジック情報である提供態様制御ロジック情報を、利用者が分散した又は分散しない記憶手段に追加できる制御をコンピュータに実施させること
を特徴とするコンピュータプログラムを提供する。
【発明の効果】
【０１５２】
請求項１、２３または２４の発明等によれば、利用者からの連続的な複数回の入力（又は一回の複雑な入力）やこれに応じた利用者への連続的なコンテンツ提供を伴うような大規模なアドベンチャーゲームやエキスパートシステムや学習ナビゲーションシステムを、分散環境やインターネットで複数利用者が協働して作ることが、容易になる。
【０１５３】
請求項２の発明等によれば、コンテンツの幅や深さを「入力選択肢追加」という簡単な形式により利用者なら誰でも拡張可能であり、利用者層の想像する入力範囲やアイディアを網羅的にカバーするのに有利である。
【０１５４】
請求項３の発明等によれば、利用者入力が文脈に与える影響などを保存可能にして、その影響を将来のコンテンツ提供へ繰り越したり、処理を先延ばしにしたりすることができ、さらには、演出等の起動条件を具体的な文脈自体から切り離して整理することも可能になる。
【０１５５】
請求項４の発明等によれば、繰り越されている影響を顕在化することができ、より具体性があり、利用者毎に詳細にカスタマイズされ、利用者ニーズ（ＴＰＯ等）に適合したコンテンツ提供が可能になる。また、例えば、「あなたの年齢では今年、結婚可能です」とせずに、｛利用者名＝中村，今年＝２００７年｝というデータをもとに、「中村さんの年齢では、２００７年現在、結婚可能です。」などと表示して、臨場感をもたせることも可能になる。
【０１５６】
請求項５の発明等によれば、選択肢を選択可能な条件（例えば、変数「おにぎりがある」＝Ｔｒｕｅ）を、データが充たしているかどうかをもとに、可能な選択肢（条件を充たしている選択肢）のみを表示したり、選択肢（例えば、「目の前のＸを食べる」）中の変数部分（Ｘ）をその変数値に対応するデータの中身（例えば、「おにぎり」）で埋めた選択肢（「目の前のおにぎりを食べる」）を表示したりして、選択肢の表現能力を高め、選択肢に対する関心を高めることが可能になる。
【０１５７】
請求項６の発明等によれば、複数のロジック（プログラムモジュールとして分離されていること）等により入力による影響の波及を分担することができ、制御記述／制御処理の効率化とロジックのメンテナンスの容易化（分離可能性、再利用性など）をもたらす。
【０１５８】
請求項７の発明等によれば、利用者毎の文脈の保存と繰越、繰り越された文脈の顕在化（文脈に応じたコンテンツ提供）が可能になり、利用者毎によりカスタマイズされた具体的なコンテンツ提供を（場合によっては、時間を隔てても一貫して）行うことが可能になる。
【０１５９】
請求項８の発明等によれば、他の利用者との直接・間接の相互作用（場合によっては、コミュニケーション）が可能となり、コンテンツの魅力、多様性、意外性、更新性が高まる。
【０１６０】
請求項９の発明等によれば、コンテンツのストリーや理論やナビゲーションのやチュートリアルの矛盾を少なくし、スパムの影響も少なくできる。また、利用者の嗜好にあったコンテンツのみに触れすくなる。
【０１６１】
請求項１０の発明等によれば、利用者による製作者への評価に応じて好みの製作者による選択肢のみを採用したり、利用者が自主的に一貫したコンテンツ提供（世界観、志向、嗜好、理論や前提の一貫性など）を受けられるよう、ある程度コントロールすることを可能にする。
【０１６２】
請求項１１の発明等によれば、利用者入力により、動的に（効率的に）、どの一貫した世界観等を採用するかを決定することができるようになる。
【０１６３】
請求項１２の発明等によれば、制御ロジックを、それを必要とする文脈と関連の深い、適切な粒度の適切な範囲（例えば、指定フォルダの（全サブフォルダの）全ファイルや、その個々の画像ファイル・ＨＴＭＬファイル・音声ファイル、等）に手軽にひもづけて必要なタイミングで作用（実行）させることが可能になる。
【０１６４】
請求項１３の発明等によれば、製作者単位で、質の良い自分のコンテンツを、質の悪いコンテンツやスパムから隔離したり、自分のリソースの利用者が嗜好や世界観の全く違うコンテンツに迷い込まないようにすることができ、製作者の志向するコンテンツの雰囲気や質を守ることができる。
【０１６５】
請求項１４の発明等によれば、製作者が、より徹底して、質の悪いコンテンツや嗜好等の違うコンテンツに利用者が迷いこまないようにすることができ、コンテンツの雰囲気や質をより徹底して守ることができる。
【０１６６】
請求項１５の発明等によれば、製作者が、より簡潔に手軽に、嗜好等の違うコンテンツとの融合を排除して、自分のコンテンツの雰囲気や質を守ることができる。
【０１６７】
請求項１６の発明等によれば、リソースとデータを介したコンテンツ連携の選好、選択が可能になる。すなわち、一方で、データ（変数など）の製作者による、そのデータに作用するリソースの選別、そのデータが（間接的に）影響を与えるリソースの選別を可能にする。また、一方で、リソース製作者や管理者による、誰のデータにそのリソースを利用させるか（リソース利用トリガによる制御ロジックの影響等を享受させるか）というビジネス的／志向的な選好が可能になる。
【０１６８】
請求項１７の発明等によれば、（利用者を含む）製作者間による、データ（変数など）を介した連携の、ビジネス的もしくは志向的な選好・選択・制御等が可能となる。
【０１６９】
請求項１８の発明等によれば、追加しようとするロジックにおいて、他の製作者が宣言／定義した変数やファイルを、参照／更新して流用することが容易になる。
【０１７０】
請求項１９の発明等によれば、正当にコンテンツを楽しんだ（／前提を理解した／教わる準備ができた）利用者（兼製作者）にのみ流用を可能とすることにより、スパマーによる無作為なスパムを抑制することが可能になる。
【０１７１】
請求項２０の発明等によれば、データだけでなく、演出用の（場合によってはオリジナルの）固定プログラムファイルなども、正当な利用者が流用することを可能とする。
【０１７２】
請求項２１の発明等によれば、利用者の直面している文脈を（暗黙の）条件として、例えばロジック追加時にデフォルトとしてコピーして提示することにより、利用者がそのロジックにおいて追加しようと発想したイベントや演出や結果や結論等が、全く見当違いの／無関係の文脈において、むやみに／必然性を伴わずに、他の利用者等に提供されるのを防ぐことができる。
【０１７３】
請求項２２の発明等によれば、幅広い利用者入力（行動／質問／判断／等）への適切な／網羅的な対応が可能になる。また、利用者による早期の選択肢投稿等を促進することが可能になる。
【発明を実施するための最良の形態】
【０１７４】
本発明を、一般的なＷＥＢサーバー、Ｃ言語製ＣＧＩ、ＨＴＭＬ、ＸＭＬ、クッキー認証技術を用いて実現した。
【実施例１】
【０１７５】
図１は、本発明の一実施形態のコンテンツ提供装置の全体構成を示した説明図である。
１は、本発明のコンテンツ提供装置の本実施例における全体構成である。
２は、インターネットである。
３は、本実施例のコンテンツ提供装置の中心を構成する中央管理サイトＫである。この管理サイトは、本発明によるＣＧＭ的な数学教育（ナビゲーション）コンテンツも提供しており、ナビゲーションの精度や網羅性が、本発明により、日々向上している。また、コンテンツ連携を促進するため、利用者登録、利用者認証、管理者登録、投稿者登録、利用者登録を集中して行い、サイト間の認証などの手続きを簡素化している。
４Ａ、４Ｂ、４Ｃは、各種のコンテンツを提供するサイトである（ただし、本発明によりコンテンツの連携がされている）。４Ａは板橋区の実写映像を駆使したアドベンチャーゲームを運営しており、利用者から、板橋区の実写・音声・説明テキスト等のリソースだけでなく、ロジック情報も募集しており、利用者の多くの行動アイディア等がスクリプト（ロジック情報）として投稿され、その行動の結果としての演出や場面移動が４Ａのサーバーで実行されている。場面の移動では、サイト４Ｂの練馬区の実写映像場面への移動がロジック情報に定義されている場合もあり、同様の移動を繰り返すことにより日本中・世界中を舞台とした大規模なアドベンチャーゲームが世界中の人々のサーバー運営や投稿によって構築される。サイト４Ｂではカテゴリを変えた法律診断のコンテンツも運営している。この法律診断コンテンツでは、利用者が問題となっている紛争などの情報を入力するたびに、利用者データ（利用者に固有の変数）が遷移し、適切なアドバイスや判断を示す説明テキストにたどりつくように、関連するロジック情報集合（ルールベースに近いもの）が設計・投稿されている。法律知識のカバー範囲は、本発明によるロジック情報の投稿により、日々網羅的かつ精度の高いものになっていっている。サイト４Ｃは、同様に法律診断システムを運営しているが得意な専門分野が異なるため、相互に利用者を得意なほうのサイトに誘導する（ＵＲＬ移動させる）ようにロジック情報集合が設計されている。サイト４Ｃは、哲学体系化コンテンツも運営しており、利用者ごとの哲学理解レベルを利用者データとして格納し、レベルに応じて適切なあたらしい知見にふれるよう誘導するロジック情報集合となっている。哲学（コンテンツ）の網羅性や誘導の効率性は、利用者からの投稿（利用者レベルに応じて適切な新しい知見に誘導できるロジック情報等の投稿）により日々向上している。
５１、５２、５３は、利用者端末である。ただし、本発明によりその利用者がコンテンツの一部の投稿者（製作者）になっているものである。端末１（５１）はサイトＡの管理者（板橋アドベンチャーのメインの製作者）でありかつサイトＡＢＣの利用者でもある人の端末である。端末２（５２）は、サイトＢの練馬区コンテンツへのロジック情報の投稿に生きがいを見出している人の端末であり、利用者としては練馬区を中心として世界中を舞台にアドベンチャーゲームを楽しんでいる。端末３（５３）は、サイトＡＣへの投稿（ご当地移動ロジック情報や哲学ナビゲーションロジック情報の投稿）を時々たのしんでいる人の端末である。端末２を介してサイトＢに投稿するロジック情報にも、サイトＡの変数（たとえば変数「利用者の東武練馬駅への広告量」）を参照したり変更したりする権限がサイトＡの管理者の端末１を介してパーミッションされており、サイトＡの板橋区アドベンチャーと、サイトＢの練馬区アドベンチャーとの間では、移動以外の相互作用（たとえば、サイトＡで利用者が東武練馬駅に大量に広告を出すと、その利用者のサイトＢの東武練馬付近の商売でお客さんがたくさん集まるなど）もある。
【０１７６】
図２は、本実施例のコンテンツ提供装置の物理的構成要素の概略図である。
公知の自然法則を利用した一般的なクライアント＝サーバーシステムのハードウエア構成であるが、クライアント側に投稿可能な機能がそなわっておりソフトウエアによってＣＧＭ的な動作が可能となっている点に留意されたい。また、サーバー側も複数台がインターネットを介して接続されており、ソフトウエアによっては、各サーバーコンテンツ間の協働が可能となる。
【０１７７】
図３は、本実施例のコンテンツ提供装置の論理的構成要素の概略図である。
図中、の隅括弧は、請求項の番号に対応する機能モジュール（手段）である。
どの手段がどのハードウエアで実現されるかは、技術的にはいかようにも調整できるが、本発明では、課題となるすべての手段をサーバー側の複数のＣＧＩプログラムとＨＴＭＬファイルとＸＭＬファイル、および、クライアント側のクッキーで実現している。クライアント側のＷｅｂブラウザからは、本発明のサーバーは、通常のＣＧＩプログラム実行系、ないし、ＨＴＭＬファイルや画像ファイルやＸＭＬファイルやジャバスクリプトファイルやＣＳＳファイルの配信系（ただし、クッキーの送受信も含むもの）に見える。
コンテンツ提供手段は、一般的なＷｅｂサーバーのコンテンツ提供機能のほかに、本発明のために記述されるロジック情報（スクリプト）の解釈機能を備えている。
また、記憶手段は、図示した通常のリソースのほかに、本発明に特有のリソース（製作者間で共有される変数、利用者から投稿されるロジック情報、これらに伴い意味をもってくる特有のパーミッション情報、等）をも、各種ファイル形式等（ＸＭＬ、ＨＴＭＬ、ＴＸＴ、ＣＳＶ、ＲＤＢ、等）として、適当なＵＲＩに沿って分類して記憶している。
隅括弧１は、利用者製提供態様制御ロジック情報追加手段（利用者からのロジック投稿を処理）である。ロジック情報（所定の形式文法に沿ったスクリプト＝コンテンツ提供態様制御ロジック情報）は、利用者ＩＤおよびトリガさせるリソースＵＲＩとともに、テキスト形式等により公知のＰＯＳＴメソッド等で、事前に提供したＨＴＭＬから利用者に投稿させている。
隅括弧２は、選択肢入力手段（選択肢入力形式を含むロジック情報の処理）である。ＨＴＭＬに沿った公知の選択肢選択入力方式により実現している。選択肢表現の集合は、トリガされたすべてのロジック情報のうち、条件部の条件がその利用者について充足しているロジック情報の選択肢表現（変数名があれば変数値で生めた表現）の集合を採用して、動的にＨＴＭＬ（図４等）を生成している。また、どの製作者が制作（又は投稿）したロジック情報に由来しているかを、図４のＧ７の甲、乙、利用者Ｘ、利用者Ｙのように表示している。
隅括弧３は、データ更新ロジックの解釈手段である。データの更新ロジックの文法は、通常の手続き型言語の文法と同じである。更新するデータの特定は、ＵＲＩ又は変数名のみにより公知の方法により行う。
隅括弧４は、データを参照した提供制御ロジックの解釈手段である。データに応じて異なる提供制御を行う。データを手続き型言語の制御文における比較対象としたり、データを演出ルーチンの引数とすることにより実現している。
隅括弧５は、データを参照した選択肢表示ロジックの解釈手段である。ロジック情報が含む選択肢をデータに応じてを有効化／無効化できるよう本発明を実施するカーネルプログラムにプログラムされている。また、選択肢表示のための表現に変数名が含まれるときは、それを変数値でおきかえるように、同様にプログラムされている。
隅括弧６は、データを参照したデータ更新ロジックの解釈手段である。通常の手続き型言語における実現と同様に実現している。
隅括弧７は、セッション中利用者の関連データ特定手段である。通常の手続き型言語の解釈系とＰＲＯＬＯＧ（又はＲＤＢ）の処理系を公知の方法で融合してい実現している。データと利用者との関係を定義する述語に相当するテーブルが宣言されて使用される。
隅括弧８は、セッション中利用者に関連する他の利用者の関連データ特定手段である。通常の手続き型言語の解釈系とＰＲＯＬＯＧ（又はＲＤＢ）の処理系を公知の方法で融合してい実現している。利用者同士の関係を定義する述語に相当するテーブルが宣言されて使用される。
隅括弧９は、利用者が採用した製作者のロジックのみに解釈対象を限定する手段である。利用者がどの製作者を採用しているかを示すテーブルが宣言されて更新・参照される。
隅括弧１０は、選択肢の製作者情報表示手段である。選択肢を含むロジック情報の製作者の情報が投稿時にあらかじめ格納されており、これを参照して、選択肢の製作者として表示している。
隅括弧１１は、利用者への提供に適用済のロジックの製作者のロジックを優先する手段である。各利用者にどの製作者のロジックを適用したかの履歴を提供する毎に蓄積していっており、これをもとに優先順位を決定している。
隅括弧１２−１は、ロジックを適当なリソースからのトリガ対象として関連づけて追加する機能である。リソースを統括するフォルダに、各リソースと各ロジックとを関連づけるための特殊な名前のファイルを置いておき、リソースの提供が必要になるたびに、（隅括弧１２−２の）リソース提供時トリガ手段が、そのリソースを統括するフォルダのその特殊な名前のファイルを参照して、対応するロジック集合（投稿されたロジックも、もとかたあったロジックもある）を特定し、所定の優先順位でトリガすることにより実現している。なお、選択肢を含むロジックについては、選択肢形式で図４のＧ７のように表示し、利用者からの選択があった場合のみ、選択に対応する演出等（場面移動や、利用者変数の更新や、画像や音声やテキストの表示）を実行するようにしている。
ある。
隅括弧１３は、製作者毎ロジック情報追加制御手段である。これは、そのためのパーミッションデータベース（XMLDB形式、記憶手段中）を製作者等が更新、追加手段が参照して追加の許可・不許可を実現する。
隅括弧１４は、リソースにトリガされるロジック情報からの所定製作者製リソース利用を制御する手段である。同様に、そのためのパーミッションデータベース（XMLDB）を更新、参照して利用の許可・不許可を実現する。
隅括弧１５は、採用利用者による所定別製作者製のリソースや関連ロジック情報の利用を制御する手段である。同様に、そのためのパーミッションデータベース（XMLDB）を更新、参照して利用の許可・不許可を実現する。
隅括弧１６は、データに関するパーミッション／アクセス制御手段およびリソース対データパーミッション情報である。情報は、パーミッションデータベース（XMLDB）となっており、権限者が更新、コンテンツ提供手段が参照してアクセスの許可・不許可を実現する。
隅括弧１７は、データに関するパーミッション／アクセス制御手段および製作者間データパーミッション情報である。同様に、情報は、パーミッションデータベース（XMLDB）となっており、権限者が更新、コンテンツ提供手段が参照してアクセスの許可・不許可を実現する。
隅括弧１８は、他製作者製データ開示手段である。他製作者製のデータ（例えば共有変数）は、図示しない自明のデータ宣言手段（管理者や許可された利用者による宣言用XMLファイルの作成等）により宣言され、他の製作者や利用者の要求に応じてCGIプログラムが、その内容を参照して提供する。
隅括弧１９は、開示を利用者へのコンテンツ提供時にアクセスしたデータに制限する手段である。利用者ごとにアクセス済のデータ名を履歴として記憶しておくことにより実現している。
隅括弧２０は、提供済リソース開示手段である。利用者ごとに提供済のリソース名の履歴として記憶しておくことにより実現している。
隅括弧２１は、デフォルト条件自動挿入手段である。利用者に関連するデータ（利用者の達成レベルや属性や持ち物などを示す変数および変数値の集合を、追加しようとするロジック情報の条件部にデフォルト条件としてそのまま挿入することにより実現する。その後その利用者に条件部を編集させることにより、調整も可能としてる。例えば、｛レベル＝５｝の利用者が、｛場所＝西台駅交番前，持ち物＝メガフォン｝の状態で、”「宣伝する」なら「罰金を課される」｛現金−＝５０００円｝”というロジック情報を、西台駅交番前の画像をトリガとして関連づけて追加しようとすると、自動的に”「宣伝する」なら「罰金を課される」｛現金−＝５０００円｝／｛レベル＝５，場所＝西台駅交番前，持ち物＝メガフォン｝”というロジック情報に機械変換され、その後、その利用者は、レベルはこのロジックに関係がないからとして、レベル＝５を削除して、”「宣伝する」なら「罰金を課される」｛現金−＝５０００円｝／｛場所＝西台駅交番前，持ち物＝メガフォン｝”という妥当なロジック情報に調整して追加することができる。なお「宣伝する」は選択肢表現であり、「罰金を課される」は説明テキストであり、／の前の｛・・・｝は影響であり、／の後の｛・・・｝は条件部である。利用者のデータが条件部をみなさない場合は、そもそも選択肢が表示されず、図４の自由入力で入力されたとしても無視するようにコンテンツ提供手段が制御している。
隅括弧２２は、定義されている利用者入力に対する制御ロジックを制限する手段である。上記の条件部が同じで選択肢表現が同じとなるようなロジック情報が関連するリソースに重複して投稿されるのを検出して制限している。リソースが関連するかどうかは、フォルダの階層関係で決定している。ただし、フォルダ配下の全部のリソースがトリガとなっているロジック情報を、一部のリソースのみをトリガとするロジック情報がオーバーライド可としている（ただし、上述した他の製作者間パーミッションなどに従った制御を行っている）。
【０１７８】
図４は、本実施例のコンテンツ提供装置が提供する画面の一例としての概略図である。
これはＣＧＩプログラムへの引数のある要求に対してＨＴＭＬとして出力されたものである。
ＣＧＩプログラムは、引数をもとに出力すべきＨＴＭＬをいったん生成し、その中のＵＲＩが示すリソースによりトリガされるべきロジック情報をリソースを含むフォルダの階層をたどりながら求めて、ロジック情報を解釈して、先に生成したＨＴＭＬの一部を書き換えることにより、選択肢の動的追加などを実現している。
Ｇ１は、利用者がそのセッション中に採用している製作者（コンテンツのタイトルや制作チーム名や投稿者を示す）である。
Ｇ２は、データ（日時等）および利用者に関連するデータ（利用者の属性等だけでなく利用者ＩＤなどの利用者データも含んでよい）である。
Ｇ３は、画像としてのコンテンツ提供を行うためのエリア（地域実写と、イラストやＣＧとの合成がスクリプト（制御ロジック情報）により制御されて提供されている）である。
Ｇ４は、画像の説明としてのテキストエリア（スクリプト（制御ロジック情報）に従って表示されている）である。
Ｇ５は、利用者が採用した選択肢やロジック情報やリソースの製作者が、プレファレンスとして自動的に集計されて表示されている。
Ｇ６は、利用者が採用した選択誌やロジック情報やリソースの製作者が、同時には採用してほしくない製作者が表示されている。
Ｇ７は、利用者入力を選択肢として行うための画面（選択誌の製作者の情報が選択肢とともに表示されている）である。
【０１７９】
別の実施例では、ロジック情報の誘導先（ジャンプ先）が地域のECサイトや一般サイトやその他のプロトコルのゲームサイトとなっている。
【産業上の利用可能性】
【０１８０】
利用者入力に応じた動的な制御のための制御ロジック情報をＣＧＭ的に随時追加できるようにすることが有用な場面では利用可能である。例えば、ＣＧＭ式アドベンチャーゲーム、ＣＧＭ式ロールプレイングゲーム、ＣＧＭ式法律エキスパートシステム、ＣＧＭ式教育・学習システム、ＣＧＭ式思想・哲学・仮説ナビゲーションシステムなどとして用いることができる。いずれの場合でも、制御ロジック情報を利用者が既存コンテンツに追加する手段を用意することができる。また、選択肢による利用者入力にも対応することが有用である。また、制御ロジック情報の記述力が、変数やファイルといったデータ（利用者に関連するデータも含む）の更新、更新したデータを参照してのコンテンツ提供／選択肢提供、更新したデータを参照してのデータ（他の利用者に関連するデータも含む）の更新、等に及ぶことが有用である。また、制御ロジック情報は、関連づけられたリソースの利用をトリガとして実行可とすることが有用である。また、製作者側になる利用者やリソースごとに、ロジック追加／ロジック実行／データ参照／リソース利用などの許可・排他ポリシーを設定可能とすることが有用である。また、ロジックの製作者情報や制御に用いる変数名等を、必要に応じて利用者や製作者に参照可能とすることが有用である。また、上記した、効率的なロジック追加の工夫も有用である。
【図面の簡単な説明】
【０１８１】
【図１】本発明の一実施形態のコンテンツ提供装置の全体構成を示した説明図である。（実施例１）
【図２】本発明の一実施形態のコンテンツ提供装置の物理的構成要素の概略図である。（実施例１）
【図３】本発明の一実施形態のコンテンツ提供装置の論理的構成要素の概略図である。（実施例１）
【図４】本発明の一実施形態のコンテンツ提供装置が提供する画面の一例としての概略図である。（実施例１）
【符号の説明】
【０１８２】
１    本発明のコンテンツ提供装置の一実施例の全体構成
２    インターネット
３    本発明のコンテンツ提供装置を構成する中央管理サイトＫ
４Ａ、４Ｂ、４Ｃ    各種のコンテンツを提供するサイト（ただし、本発明によりコンテンツの連携がされている）
５１、５２、５３    利用者端末（ただし、本発明によりその利用者がコンテンツの一部の投稿者（製作者）になっている）
Ｇ１      利用者がそのセッション中に採用している製作者（コンテンツのタイトルや制作チーム名や投稿者を示す）
Ｇ２      データ（日時等）および利用者に関連するデータ（利用者の属性等だけでなく利用者ＩＤなどの利用者データも含んでよい）
Ｇ３      画像としてのコンテンツ提供を行うためのエリア（地域実写と、イラストやＣＧとの合成がスクリプト（制御ロジック情報）により制御されて提供されている）
Ｇ４      画像の説明としてのテキストエリア（スクリプト（制御ロジック情報）に従って表示されている）
Ｇ５      利用者が採用した選択肢やロジック情報やリソースの製作者が、プレファレンスとして自動的に集計されて表示されている。
Ｇ６      利用者が採用した選択誌やロジック情報やリソースの製作者が、同時には採用してほしくない製作者が表示されている。
Ｇ７      利用者入力を選択肢として行うための画面（選択誌の製作者の情報が選択肢とともに表示されている）
【図１】
2008299681.tif 000003
【図２】
2008299681.tif 000004
【図３】
2008299681.tif 000005
【図４】
2008299681.tif 000006