(57)【要約】【構成】コミュニティ環境提供サーバ１０はサーバ１２を含み、サーバ１２は電子掲示板のようなコミュニティを提供する。ユーザがＰＣ１６を用いて、コミュニティにログインすると、当該コミュニティのウェブページにおいて、話題を投稿したり、話題や発言に対して感想などの発言を投稿したりすることができる。この発言には、単なる発話内容だけでなく、発話内容についての遂行動詞、ユーザの感情（情動）および他のユーザに対する態度の情報のような非言語情報が含まれる。発言が投稿されると、サーバ１２は、当該発言を発言ＤＢ２４に登録し、当該発言に含まれ遂行動詞、感情および態度に基づいて、当該発言の前に発言ＤＢに登録されている発言について評価する。【効果】非言語情報に基づいて発言を評価するので、この評価に基づいて自由なコミュニティ環境におけるコミュニケーションを解析できる。【選択図】  図１
2004287613.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して接続される少なくとも２以上のユーザコンピュータおよびユーザコンピュータを操作するユーザに対してコミュニティ環境を提供するコミュニティサーバを備えるコミュニティ環境提供システムであって、
前記ユーザコンピュータは、
少なくとも非言語情報を含む発言内容を入力する入力手段、および
前記入力手段によって入力された前記発言内容を前記コミュニティサーバに送信する送信手段を備え、
前記コミュニティサーバは、
前記送信手段によって送信された前記発言内容を受信して記憶する記憶手段、および
前記記憶手段に記憶された発言内容に含まれる非言語情報に基づいて当該発言内容の前段に在る発言内容について評価する評価手段を備える、コミュニティ環境提供システム。
【請求項２】
前記記憶手段は複数の発言内容を記憶し、
前記評価手段は最前段に在る発言内容を、当該発言内容以外の発言内容に含まれる非言語情報に基づいて評価する、請求項１記載のコミュニティ環境提供システム。
【請求項３】
前記非言語情報は、遂行動詞、感情および対人態度の少なくとも１つを含む、請求項１または２記載のコミュニティ環境提供システム。
【請求項４】
コミュニティ環境には各ユーザに対応する擬人化エージェントが存在し、
前記ユーザコンピュータは、前記発言内容を再生する再生手段をさらに備え、
前記再生手段によって前記発言内容が再生されると、前記擬人化エージェントは、対応するユーザの前記発言内容に含まれる遂行動詞、感情および対人態度の少なくとも１つに応じたアニメーションを実行する、請求項３記載のコミュニティ環境提供システム。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
この発明はコミュニティ環境提供システムに関し、特にたとえば、ネットワークを介して接続される少なくとも２以上のユーザコンピュータおよびユーザコンピュータを操作するユーザに対してコミュニティ環境を提供するコミュニティサーバを備える、コミュニティ環境提供システムに関する。
【０００２】
【従来の技術】
この種の従来技術の一例が特許文献１に開示される。この特許文献１に開示されるコミュニティ環境提供システムでは、ＢＢＳ（Ｂｕｌｌｅｔｉｎ  Ｂｏａｒｄ  Ｓｙｓｔｅｍ  ：電子掲示板システム）において、単に情報やＵＲＬをテキストデータで示すだけでなく、各ユーザの代理であるキャラクタをウェブページ上で移動し、動作し、台詞を発言させるようにしたものである。これにより、多次元の表現手段によってより質の高い、正確な情報交換をスムーズに行っていた。
【０００３】
【特許文献１】
特開２００２−０８２８９４号公報
【０００４】
【発明が解決しようとする課題】
しかし、従来技術のような電子掲示板システムやニュースグループにおける自由な対話形式の会話ログを機械的に解析して自動編集するような知識ベースシステムは実現されていなかった。この理由としては、自然言語解析の問題から会話ログの解析が非常に困難であることや会話ログに含まれる膨大な非社会的で非生産的な発言や議論（いわゆるフレーミング）によって本質的な議論が埋没してしまうことが挙げられる。つまり、一般の電子掲示板システムに見られるような、いわゆる関心共有型のオンラインコミュニティにおける対話や議論のような社会的コミュニケーションの構造を解析することができなかった。
【０００５】
それゆえに、この発明の主たる目的は、社会的コミュニケーションの構造を解析することができる、コミュニティ環境提供システムを提供することである。
【０００６】
【課題を解決するための手段】
この発明は、ネットワークを介して接続される少なくとも２以上のユーザコンピュータおよびユーザコンピュータを操作するユーザに対してコミュニティ環境を提供するコミュニティサーバを備えるコミュニティ環境提供システムであって、ユーザコンピュータは、少なくとも非言語情報を含む発言内容を入力する入力手段、および入力手段によって入力された発言内容をコミュニティサーバに送信する送信手段を備え、コミュニティサーバは、送信手段によって送信された発言内容を受信して記憶する記憶手段、および記憶手段に記憶された発言内容に含まれる非言語情報に基づいて当該発言内容の前段に在る発言内容について評価する評価手段を備える、コミュニティ環境提供システムである。
【０００７】
【作用】
コミュニティ環境システムは、ネットワークを介して接続される少なくとも２以上のユーザコンピュータと当該ユーザコンピュータを操作するユーザに対して電子掲示板のようなコミュニティ環境を提供するコミュニティサーバとによって構成される。ユーザコンピュータを操作して、ユーザがコミュニティに参加すると、たとえば、当該コミュニティのウェブページがユーザコンピュータのディスプレイに表示され、このウェブページ上で、話題や話題に対する発言についての感想などを投稿することができる。入力手段は、投稿する発言内容を入力し、送信手段は、入力手段によって入力された発言内容をコミュニティサーバに送信する。この発言内容には、非言語情報が含まれる。一方、コミュニティサーバでは、記憶手段が、ユーザコンピュータから送信された発言内容を受信して記憶する。評価手段は、記憶手段に記憶された発言内容に含まれる非言語情報に基づいて、当該発言内容の前段に在る発言内容を評価する。つまり、或るユーザの発言に対する他のユーザの評価が、当該他のユーザの発言に含まれる非言語情報に基づいて行われる。
【０００８】
たとえば、コミュニティサーバでは、記憶手段は複数の発言内容を記憶し、評価手段は、最前段の発言内容についての評価を、その発言内容以外の発言内容、すなわち最前段の発言内容に後続するすべての発言内容の非言語情報に基づいて行う。つまり、ユーザがコミュニティのウェブページに投稿した話題などについての様々なユーザの評価を取り入れることができる。
【０００９】
また、非言語情報は、ユーザの発話についての遂行動詞、ユーザの感情（情動）およびユーザの対人態度の少なくとも１つを含むので、発言内容についての話題性や発言内容を投稿したユーザに対する他のユーザの関心度や興味度などを評価することができる。
【００１０】
さらに、コミュニティには、各ユーザに対応する擬人化エージェントが存在し、ユーザがユーザコンピュータを操作して所望の発言内容についての再生指示を入力すると、再生手段が当該発言内容を再生する。すると、当該発言内容を投稿したユーザに対応する擬人化エージェントは、発言内容に含まれる遂行動詞、感情、対人態度の少なくとも１つに応じたアニメーションを実行する。一般に見られるような電子掲示板システムのように、発話内容のテキストを表示するだけでなく、その発話内容に付随するユーザの表情や身振り手振りをアニメーションで表現することができるのである。
【００１１】
【発明の効果】
この発明によれば、発言内容に含まれる非言語情報に基づいて前段に在る発言内容を評価するので、その評価に基づいて自己表現の自由なコミュニティ環境におけるコミュニケーションの構造に基づいたコミュニケーションの内容を解析することができる。
【００１２】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【００１３】
【実施例】
図１を参照して、この実施例のコミュニティ環境提供システム１０（以下、単に「システム」という。）は、サーバ１２を含む。サーバ１２は、インターネット、ＬＡＮ、ＷＡＮ或いは電話回線等のネットワーク１４を介して、ユーザコンピュータとしてのパーソナルコンピュータ（ＰＣ）１６およびＰＣ１８に接続される。ただし、ユーザコンピュータはワークステーション或いはＰＤＡ等の携帯端末であってもよい。
【００１４】
なお、この実施例では、簡単のため、２台のＰＣがネットワークに接続されているように示してあるが、３台以上接続されてもよい。
【００１５】
また、サーバ１２には、４つのデータベース（ＤＢ）が接続される。具体的には、ユーザ情報ＤＢ２０、キャラクタＤＢ２２、発言ＤＢ２４およびウェブページＤＢ２６が接続される。ただし、図面においては、ＤＢ２０、２２、２４および２６が直接サーバ１２に接続されるように示してあるが、ネットワーク１４を介して接続されてもよく、また、サーバ１２内部に設けるようにしてもよい。
【００１６】
ユーザ情報ＤＢ２０は、コミュニティの会員であるユーザ（会員ユーザ）のユーザ情報を記憶するＤＢであり、図２（Ａ）に示すように、ユーザ情報は、たとえば、ユーザＩＤ、パスワード、個人情報およびキャラクタ情報を含む。このようなユーザ情報がユーザ毎に記録される。ユーザＩＤは、ユーザの識別情報であり、後述するように、サーバ１２によって提供されるコミュニティ（電子掲示板）にログインするためのログインＩＤである。パスワードは、コミュニティにログインするために必要な暗証番号（記号）である。個人情報は、当該ユーザに関する情報であり、たとえば、ユーザの氏名、性別、連絡先（住所、電話番号、ファクシミリ番号、電子メールアドレスなど）を含む。キャラクタ情報は、ユーザがコミュニティにおいて擬人化エージェントとして使用するキャラクタの情報であり、たとえば、キャラクタの識別情報（キャラクタＩＤ）が記述される。図示は省略するが、キャラクタＩＤに対応して、当該キャラクタの名前も記憶（記述）される。
【００１７】
キャラクタＤＢ２２は、図２（Ｂ）に示すように、デフォルトキャラクタ記憶領域２２ａを含み、このデフォルトキャラクタ記憶領域２２ａには、予めサーバ１２の管理者等により作成および登録されたキャラクタデータが記憶されており、各キャラクタデータはキャラクタＩＤ（キャラクタ名）によって識別される。
【００１８】
なお、コミュニティの会員ユーザが自ら作成した（オリジナルの）キャラクタデータを登録しておくようにしてもよい。
【００１９】
したがって、ユーザは、予め用意されたデフォルトキャラクタを、擬人化エージェントとして使用することができる。このようなキャラクタは、ＰＣ１６（ＰＣ１８も同じ。）に記録（インストール）されている専用のプログラムによって、ウェブページ上に表示される。つまり、キャラクタデータは、当該プログラムの仕様に従ったデータ形式である。
【００２０】
なお、専用のプログラムとしは、たとえば、「Ｍｉｃｒｏｓｏｆｔ（登録商標）Ａｇｅｎｔ  」を利用することができる。
【００２１】
発言ＤＢ２４は、コミュニティにおいて、或るユーザが投稿した話題およびそれに対する他のユーザ等の発言についてのデータ（発言データ）をまとめたスレッドデータを、図２（Ｃ）に示すように、話題（たとえば、話題１，話題２、話題３，…）毎に記憶するＤＢである。具体的な発言ＤＢ２４に記憶されるスレッドデータ２４ａ（スレッドデータ２４ｂ、２４ｃも同様）のデータ構造は、図３のように示される。この図３を参照して、スレッドデータ２４ａは、或るユーザが投稿した話題（話題１）についての発言データを記憶する発話フォルダ２４０を含み、当該話題に対する他のユーザ等の発言（説明の便宜上、「コメント」という。）を場面ごとのフォルダ（場面１フォルダ２４２ａ、場面２フォルダ２４２ｂ、場面３フォルダ２４２ｃ…）に記憶してある。また、当該話題（場面も含む。）に登場するキャラクタの情報（登場キャラクタ情報）が登場キャラクタ情報フォルダ２４４に記憶される。
【００２２】
このスレッドデータ２４ａでは、話題１に対して、場面１、場面２、場面３、…というように、時系列に従ってコメントされたことを示してある。さらに、そのコメントに対する発言（説明の便宜上、「リアクション」という。）が、時系列に従って記録される。たとえば、場面１では、話題に対する発言（コメント）に対するリアクションが、リアクション１およびリアクション３、…のように、時系列に従って記憶される。また、コメントに対するリアクション１に対してのリアクション２、…のように、リアクションに対するリアクションも、同様に、時系列に従って記憶される。つまり、場面フォルダ２４２ａでは、コメントおよびリアクションがいずれの発言（コメントやリアクション）に対する発言であり、しかもその時系列が分かるように、階層構造とされるのである。このように、話題、コメント、リアクションのつながりのことを「スレッドデータ」と呼んでいる。
【００２３】
なお、説明の便宜上、ここでは、話題に対する直接の発言をコメントといい、コメントに対する発言をリアクションというようにしてあるが、話題、コメントおよびリアクションのそれぞれを発言という場合もある。
【００２４】
また、スレッドデータ２４ａでは、話題フォルダ２４０には、話題の内容、当該話題を投稿したユーザのユーザ名および当該話題を投稿した時刻（日時）がラベルとして付されており、また、場面フォルダ２４２ａ、２４２ｂ、２４２ｃ、…では、コメントおよびリアクションすなわち発言のそれぞれについて、当該発言を投稿したユーザのユーザ名および当該発言を投稿した日時がラベルとして付されている。
【００２５】
ウェブページＤＢ２６は、図２（Ｄ）に示すように、各ウェブページを生成するための雛型ウェブページのデータ（雛型データ）２６ａおよび生成されたウェブページのデータ（ウェブページデータ）２６ｂを記憶するＤＢである。
【００２６】
たとえば、サーバ１２は、コミュニティ環境を提供し、当該コミュニティ環境において、ユーザはＰＣ１６（ＰＣ１８）を操作して、話題を投稿したり、他の話題や発言に対して、発言したりすることができる。つまり、サーバ１２が提供するコミュニティ環境において、ユーザは情報を交換し、また自己表現を行う。また、コミュニティ環境においては、ユーザが使用する擬人化エージェントとしてのキャラクタが存在し、各キャラクタは、コミュニティ環境におけるウェブページ上で、移動したり、表情を表現したり、さらには、身振り手振りをしたりする。つまり、テキストによる言語表現だけでなく、擬人化メディアによる、ジェスチャや表情などの非言語情報を組み合わせたメッセージを作成することができるのである。
【００２７】
さらに言うと、この実施例では、発言を行動として捉えており、発言には発話する内容（発話内容）だけでなく、それに関連する或いは付随するジェスチャも含まれる。このジェスチャ（キャラクタの表情や身振り手振り）には、ユーザ自身の感情（情動）を表現する場合と特定の対象である他のユーザ（キャラクタ）等に対して態度を表明（表現）する場合とが含まれる。また、発言には、所望のウェブページや画像のようなウェブコンテンツを資料として提示することも含まれる。さらには、発話内容について、非言語情報としての遂行動詞を選択（入力）することもできる。
【００２８】
ここで、遂行動詞（ｐｅｒｆｏｒｍａｔｉｖｅ  ｖｅｒｂ）  とは、発言によって遂行される行為の効力の種類を、その発話を含む文の中で明示的に表す動詞をいい、たとえば、“〜主張する”、“〜と説明する”、“〜と賛成する”、“〜と反対する”、…などが該当する（図４１参照）。つまり、発話には、状況や事象を記述（描写）するといった主に真偽が問題となる真実確認的（ｃｏｎｓｔａｔｉｖｅ）な側面だけでなく、言葉を発することがそのまま行為とみなされる行為遂行的（ｐｅｒｆｏｒｍａｔｉｖｅ）な側面があり、個々の発言によって遂行される行為の効力はそれぞれ異なっていると考えられるからである。
【００２９】
以下、システム１０について、図９〜図４０に示すフロー図に従って、詳細に説明するが、或るユーザがＰＣ１６を操作してコミュニティに参加する場合について説明することとし、ＰＣ１８についてはＰＣ１６と同じであるため、その説明を割愛する。また、サーバ１２とＰＣ１６との間で連携して処理を実行する場合には、いずれの処理かを明確にするため、破線を設けてそれぞれの処理を区別するようにしてある。
【００３０】
図９および図１０はシステム１０の全体処理を示すフロー図であり、破線の左側がサーバ１２の処理であり、破線の右側がＰＣ１６の処理である。
【００３１】
図９に示すように、或るユーザがＰＣ１６を操作してサーバ１２にアクセス要求の指示を入力すると処理を開始し、ＰＣ１６は、ステップＳ１で、アクセス要求をサーバ１２に送信する。これに応じて、サーバ１２は、ステップＳ３で、ログインまたはユーザ登録の処理を実行する。ただし、ステップＳ３の処理は、実際には、サーバ１２とＰＣ１６との間で実行される。
【００３２】
簡単に説明すると、サーバ１２は、コミュニティにアクセスするためのログインページ（ウェブページ）のデータをＰＣ１６に送信する。したがって、ＰＣ１６では、ログインページのデータを受信して、ディスプレイ（図示せず）にログインページを表示する。図示は省略するが、たとえば、ログインページには、ユーザＩＤ（ログインＩＤ）およびパスワードの入力欄および会員登録ボタン等が表示され、当該ユーザがコミュニティの会員ユーザであれば、割り当てられたユーザＩＤおよびパスワードを入力して、ユーザ認証が行われた後に、コミュニティにログインする。一方、当該ユーザがコミュニティの会員ユーザでなければ、会員登録ボタンをオンして、会員登録を行った後に、コミュニティにログインする。
【００３３】
なお、ログインまたは会員登録（ユーザ登録）の処理については、本件発明者が既に出願し、公開されている特開２００２−０８２８９４号公報に詳細に開示されているため、ここでは詳細な説明は省略することにする。
【００３４】
また、会員登録の処理において、ユーザ情報ＤＢ２０に記憶されるユーザ情報がすべて登録される。
【００３５】
ログインまたはユーザ登録の処理を終えると、ステップＳ５で、サーバ１２は、コミュニティのページ  （コミュニティページ）３０のデータおよびキャラクタデータをＰＣ１６に送信する。したがって、ＰＣ１６は、ステップＳ７で、コミュニティページ３０のデータおよびキャラクタデータを受信して、ステップＳ９で、図４に示すように、コミュニティページ３０およびキャラクタ（説明の便宜上、「第１キャラクタ」という。）３２ａをディスプレイに表示する。ここで表示される第１キャラクタ３２ａは、ユーザ情報に登録されたキャラクタ情報に対応するキャラクタであり、ログイン時に、第１キャラクタ３２ａがディスプレイに表示されると、“○○（ユーザ名）さん、こんにちは”と吹き出し（バルーン）をディスプレイに表示するとともに、当該内容の合成音声をスピーカ（図示せず）から出力する。つまり、第１キャラクタ３２ａは、ユーザに挨拶する。このとき、擬人化メディアによって、挨拶するアニメーションが実行され、たとえば、図４に示すように、第１キャラクタ３２ａは、両手を挙げる身体動作（身振り手振り）をするとともに、笑顔の表情を表現する。
【００３６】
なお、コミュニティページ３０は、サーバ１２が発言ＤＢ２４に記憶されるスレッドデータに含まれる話題フォルダ２４０のラベルを、ウェブページＤＢ２６に記憶される雛型データ２６ａに当て嵌めて生成される。
【００３７】
コミュニティページ３０は、コミュニティにおけるウェブページなどのウェブコンテンツを表示するためのコンテンツ表示部３２および話題や発言のスレッドを表示するためのスレッド表示部３４を含む。コンテンツ表示部３２の上部には、ウェブコンテンツの表示等を操作するためのボタン３６、３８、４０、４２、４４、４６および入力欄４８が設けられる。ボタン３６は戻るボタンであり、ボタン３８は進むボタンであり、ボタン４０は中止ボタンであり、ボタン４２は更新ボタンであり、ボタン４４はホームページ表示ボタンであり、ボタン４６は入力欄４８に入力されたＵＲＬが示すウェブコンテンツを表示するためのボタンである。これらについては、既に周知であるため、詳細な説明は省略する。
【００３８】
また、スレッド表示部３４の上部には、ボタン５０、５２、５４、５６、５８および６０が設けられる。ボタン５０は新規作成ボタンであり、この新規作成ボタンを操作することにより、後述する発言エディタ（図７および図８参照）が表示され、話題や発言を作成することができる。ボタン５２は前へボタンであり、この前へボタンを操作することにより、話題や発言の再生中に１つ前の話題や発言にジャンプする（戻る）ことができる。ボタン５４は再生（リプレイ）ボタンであり、このリプレイボタンを操作することにより、所望の話題および発言を再生することができる。ボタン５６は停止（ストップ）ボタンであり、このストップボタンを操作することにより、話題や発言の再生を停止することができる。ボタン５８は次へボタンであり、この次へボタンを操作することにより、話題や発言の再生中に次の話題や発言にジャンプする（進む）ことができる。ボタン６０はキャラＯＮ／ＯＦＦボタンであり、このキャラＯＮ／ＯＦＦボタンを操作することにより、コンテンツ表示部３２（ウェブコンテンツ）の前面に表示されるキャラクタを画面から消したり、画面に表示したりすることができる。
【００３９】
このコミュニティページ３０においては、ユーザは、ＰＣ１６に接続されるキーボードやコンピュータマウスのような入力装置（図示せず）を用いて、当該コミュニティページ３０に設けられた各種ボタンを選択することにより、上述したように、話題を投稿したり、既に投稿されている話題や発言を再生したり、既に投稿された話題や発言に興味があれば、さらに自分の感想（発言）を投稿したりなどすることができる。
【００４０】
なお、図４においては、スレッド表示部３４では、異なるユーザが異なる話題を投稿している状態を示してあるが、同じユーザが異なる話題を投稿することも可能である。以下、この実施例において同じである。
【００４１】
図９に戻って、ステップＳ１１では、既に投稿されている話題があるかどうかを判断する。つまり、スレッド表示部３４に話題が表示されているかどうかを判断する。ステップＳ１１で“ＮＯ”であれば、つまり投稿されている話題がなければ、そのままステップＳ１９に進む。一方、ステップＳ１１で“ＹＥＳ”であれば、つまり既に投稿された話題があれば、ステップＳ１３で話題の参照かどうかを判断する。つまり、ユーザが入力装置を用いて、スレッド表示部３４に表示された話題を選択したかどうかを判断する。
【００４２】
ステップＳ１３で“ＹＥＳ”であれば、つまり話題の参照であれば、図示は省略するが、選択された話題の全発言の内容についての送信要求がサーバ１２に送信される。これに対して、サーバ１２は、ステップＳ１５で、送信要求に従って、選択された話題についての全発言の内容（ラベル）をＰＣ１６に送信する。つまり、当該話題を記憶するスレッドデータに含まれるすべての場面フォルダ内に記憶されるコメントおよびリアクションのラベルを送信するのである。そして、ＰＣ１６は、ステップＳ１７で、選択された話題内の発言全体を木（ツリー）構造で表示して、図１０に示すステップＳ２１に進む。
【００４３】
図５には、“紅葉ライトアップ”の話題が選択された場合に、当該話題内の発言全体を、スレッド表示部３４に木構造で表示したコミュニティページ３０の一例が示される。ただし、スレッド表示部３４では、一度に木構造のすべてを表示することができないが、スクロールバー等を操作することにより、現在表示されていない部分についても表示することができる。この図５では、“紅葉ライトアップ”の話題に対して、ユーザＣおよびユーザＤがコメントしていることが示される。また、ユーザＣのコメントに対してユーザＢがリアクションし、そのユーザＢのリアクションに対してユーザＡがさらにリアクションしていることが示される。さらに、ユーザＤのコメントに対して、ユーザＥ等がリアクションし、ユーザＥのリアクションに対しても他のユーザがリアクションしていることが示される。
【００４４】
また、図９のフロー図においては省略したが、図５に示すように、木構造を表示した際には、ユーザが使用する第１キャラクタ３２ａは、当該話題を指差すように振る舞う。また、当該話題の内容および当該話題に参加している人数が吹き出し表示されるとともに、その吹き出しの内容の合成音声がスピーカから出力され、ユーザに伝達される。
【００４５】
なお、図５においては、選択中の話題であることを表現するために、四角枠のカーソルを表示してある。以下、この実施例において同じであり、選択中或いは再生中の話題や発言を表現する場合も同様である。
【００４６】
図９に戻って、ステップＳ１９では、話題の投稿かどうかを判断する。具体的には、話題や発言が何ら選択されていない状態で、新規作成ボタン５０が操作（オン）されたかどうかを判断する。ステップＳ１９で“ＮＯ”であれば、つまり話題や発言が何ら選択されていない状態で、新規作成ボタン５０がオンされなければ、そのままステップＳ１３に戻る。一方、ステップＳ１９で“ＹＥＳ”であれば、つまり話題や発言が何ら選択されていない状態で、新規作成ボタン５０がオンされれば、図１０に示すように、ステップＳ２１に進む。
【００４７】
図１０に示すように、ＰＣ１６は、ステップＳ２１で、話題内の発言を見るかどうかを判断する。つまり、話題内のいずれかの発言が選択され、リプレイボタン５４がオンされたかどうかを判断する。ステップＳ２１で“ＮＯ”であれば、つまり話題内の発言を見ないのであれば、図９に示したステップＳ１３に戻る。一方、ステップＳ２１で“ＹＥＳ”であれば、つまり話題内の発言を見るのであれば、選択した発言についての再生指示をサーバ１２に送信して、これに応じて、サーバ１２は、ステップＳ２３で、選択された発言のシナリオ情報を含む話題内の発言全体の内容をＰＣ１６に送信する。
【００４８】
ここで、シナリオ情報とは、後で詳細に説明するが、発言に含まれる発話（テキスト）データ、アニメーションデータおよびＵＲＬデータなどをいい、これらの少なくとも１つで構成され、または、同種或いは異種の２つ以上で構成される。また、このようなシナリオ情報は、ＸＭＬ（ｅＸｅｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）  構造（形式）のスクリプトデータで記述される。
【００４９】
したがって、ＰＣ１６では、ステップＳ２５において、選択された発言のシナリオ情報を含む話題内の発言全体の内容をスレッド表示部３４に表示して、ステップＳ２７で、選択された発言について、後述する再生処理（図３０、図３１参照）を実行する。そして、ステップＳ２９で、続きの発言を投稿するかどうかを判断する。つまり、或る話題や発言が選択された状態で新規作成ボタン５０がオンされたかどうかに応じて、再生した話題や発言に対する発言すなわちコメントやリアクションを投稿するかどうかを判断するのである。
【００５０】
ステップＳ２９で“ＮＯ”であれば、つまり続きの発言を投稿しないのであれば、そのままステップＳ２１に戻る。一方、ステップＳ２９で“ＹＥＳ”であれば、つまり続きの発言を投稿するのであれば、ステップＳ３１で、後述する発言の作成と投稿処理（図１１および図１２参照）を実行してから、ステップＳ１３に戻る。
【００５１】
図１１および図１２は、発言の作成と投稿処理（ステップＳ３１）のフロー図であり、図１１に示すように、ＰＣ１６が発言の作成と投稿処理を開始すると、ステップＳ４１で、新規話題の入力かどうかを判断する。具体的には、スレッド表示部３４に表示される話題や発言を何ら選択せずに、新規作成ボタン５０がオンされたかどうかを判断する。ステップＳ４１で“ＮＯ”であれば、つまり既に投稿された話題や発言に対する発言の入力（投稿）であれば、ステップＳ４３で、図７に示すような発言投稿用の発言エディタ７０を表示して、ステップＳ４９に進む。
【００５２】
なお、発言エディタ７０（後述する発言エディタ２００も同じ。）は、図４および図５に示したコミュニティページ３０の前面であり、画面の一部或いは全体を用いて表示される。
【００５３】
ここで、発言エディタ７０は、そのほぼ中央に、発言の内容を入力および表示するための表示部７２が設けられ、この表示部７２の上方に、タイトル（話題）が記述される。ただし、この発言エディタ７０は、すでに投稿された話題や発言に対する発言を入力するため、タイトルは予め入力されている。また、タイトルの上方には、ボタン７４、７６、７８、８０、８２および８４が設けられ、表示部７２の下方には、ボタン８６、８８、９０、９２、９４、９６および９８が設けられる。
【００５４】
ボタン７４は、しゃべるボタンであり、発話する内容を入力する場合に用いられる。ボタン７６は、きもちボタンであり、ユーザの気持ち（感情、情動）を入力する場合に用いられる。ボタン７８は、たいどボタンであり、自身のキャラクタが他のキャラクタに対して行う態度を入力する場合に用いられる。ボタン８０は、ウェブボタンであり、ウェブコンテンツのＵＲＬを入力する場合に用いられる。ボタン８２は、画像ＵＰボタンであり、ウェブコンテンツとしての画像ファイル等をアップロードする場合に用いられる。ボタン８４は、画像指さしボタンであり、コンテンツ表示部３２に表示されるウェブページに表示される画像やコンテンツ表示部３２上に別ウインドウ（図示せず）で表示される画像についてのコメント（論評）を入力する場合に用いられる。
【００５５】
また、ボタン８６は、１行削除ボタンであり、入力したコンポーネント（発話する内容、気持ち、態度およびウェブコンテンツのＵＲＬを入力するためのコンポーネントであり、後述する。）を削除する場合に用いられる。ボタン８８およびボタン９０は、行移動ボタンであり、入力したコンポーネントを並べ替える（ソートする）場合に用いられる。ボタン９２は、１行再生ボタンであり、入力したコンポーネントの１つ（１行）を確認する場合に用いられる。ボタン９４は、確認ボタンであり、入力した発言（すべてのコンポーネント）の内容に基づくシナリオ情報を作成し、作成したシナリオ情報を表示する場合に用いられる。ボタン９６は、ストップボタンであり、１行再生を停止（中止）する場合に用いられる。ボタン９８は送信ボタンであり、入力した発言の内容に基づくシナリオ情報をサーバ１２に送信する場合に用いられる。
【００５６】
図１１に戻って、ステップＳ４１で“ＹＥＳ”であれば、つまり新規話題の入力であれば、ステップＳ４５で、図８に示すような話題投稿用の発言エディタ２００を表示する。続くステップＳ４７では、ユーザによって投稿する話題のタイトルを入力され、ステップＳ４９に進む。
【００５７】
なお、図８に示す、話題投稿用の発言エディタ２００は、タイトルの入力欄２０２が設けられる以外は、図７に示した発言エディタ７０と同じであるため、重複した説明は省略することにする。
【００５８】
ステップＳ４９では、後述する発言内容の入力処理（図１３、図１４参照）を実行し、ステップＳ５１では、発言内容の追加かどうかを判断する。つまり、ボタン７４、７６、７８、８０、８２および８４のいずれかがオンされたか否かを判断する。ステップＳ５１で“ＹＥＳ”であれば、つまり発言内容の追加であれば、ステップＳ４９に戻る。一方、ステップＳ５１で“ＮＯ”であれば、つまり発言内容の追加がなければ、ステップＳ５３で、発言内容の修正かどうかを判断する。つまり、入力したコンポーネントのいずれか１つを選択し、ボタン８６、８８、９０および９２のいずれかがオンされたかどうかを判断する。ステップＳ５３で“ＹＥＳ”であれば、つまり発言内容の修正であれば、ステップＳ５５で、発言内容の修正処理を実行して、ステップＳ５１に戻る。発言内容の修正処理の詳細な説明は省略するが、この処理においては、入力したコンポーネントを１行ごとに削除したり、コンポーネントを並べ替えたり、１行ごとに再生したりすることができる。
【００５９】
一方、ステップＳ５３で“ＮＯ”であれば、つまり発言内容の修正がなければ、ステップＳ５７で発言内容の確認かどうかを判断する。つまり、確認ボタン９４がオンされたかどうかを判断する。ステップＳ５７で“ＹＥＳ”であれば、つまり発言内容の確認であれば、ステップＳ５９で、後で詳細に説明するシナリオ情報の作成処理（図２２および図２３参照）を実行し、ステップＳ６１で、発言内容の再生処理（図３０および図３１参照）を実行して、ステップＳ５１に戻る。一方、ステップＳ５７で“ＮＯ”であれば、つまり発言内容の確認がなければ、ステップＳ６３で、発言内容の投稿であるかどうかを判断する。つまり、送信ボタン９８がオンされたかどうかを判断する。
【００６０】
ステップＳ６３で“ＮＯ”であれば、つまり発言内容の投稿がなければ、図１２に示すステップＳ６５で、発言を中止するかどうかを判断する。つまり、発言エディタ７０または発言エディタ２００を閉じるかどうかを判断する。ステップＳ６５で“ＮＯ”であれば、つまり発言を中止しなければ、図１１に示したステップＳ５１にそのまま戻る。一方、ステップＳ６５で“ＹＥＳ”であれば、つまり発言を中止するのであれば、ステップＳ６７で、発言エディタ７０または発言エディタ２００のウインドウを閉じて、発言の作成と投稿処理をリターンする。
【００６１】
一方、ステップＳ６３で“ＹＥＳ”であれば、つまり発言内容の投稿であれば、図１２に示すステップＳ６９で、発言内容をサーバ１２に送信し、ステップＳ７１で、スレッド一覧に投稿された発言のシナリオ情報を含む発言を表示し、ステップＳ７３で、発言内容の再生処理（図３０および図３１参照）を実行して、つまり、投稿されたばかりの発言を再生して、発言の作成と投稿処理をリターンする。
【００６２】
なお、ステップＳ６９で、発言内容がサーバ１２に送信されると、これに応じて、サーバ１２は、後で詳細に説明する発言データの登録処理（図３４参照）を実行する。
【００６３】
次に発言内容の入力処理（ステップＳ４９）の詳細を説明する。図１３に示すように、ＰＣ１６は発言内容の入力処理を開始すると、ステップＳ８１で、発話の入力かどうかを判断する。つまり、しゃべるボタン７４がオンされたかどうかを判断する。ステップＳ８１で“ＹＥＳ”であれば、つまり発話の入力であれば、ステップＳ８３で、表示部７２に発話コンポーネント１００を追加し、ステップＳ８５で、後述する発話内容の入力処理（図１５参照）を実行して、図１４に示すように、発言内容の入力処理をリターンする。
【００６４】
発話コンポーネント１００は、図７および図８に示すように、当該コンポーネントの種類を示すための標識１００ａ、発話内容を入力するためのテキスト入力欄１００ｂおよび発話内容についての遂行動詞を選択するためのプルダウンメニュー１００ｃを含む。ユーザは、キーボードのような入力装置を用いて入力欄１００ｂに所望の発話内容（テキスト）を入力することができる。また、プルダウンメニュー１００ｃには、上述したような遂行動詞が複数用意されており、いずれか１つを選択することができる。
【００６５】
一方、ステップＳ８１で“ＮＯ”であれば、つまり発話の入力でなければ、ステップＳ８７で、感情の入力かどうかを判断する。つまり、きもちボタン７６がオンされたかどうかを判断する。ステップＳ８７で“ＹＥＳ”であれば、つまり感情の入力であれば、ステップＳ８９で、表示部７２に感情コンポーネント１０２を追加し、ステップＳ９１で、後述する感情の選択処理（図１６参照）を実行して、発言内容の入力処理をリターンする。
【００６６】
感情コンポーネント１０２は、図７に示すように、当該コンポーネントの種類を識別するための標識１０２ａおよび感情（情動）を選択するためのプルダウンメニュー１０２ｂを含む。このプルダウンメニュー１０２ｂには、感情（情動）を表す単語が複数種類登録されており、いずれか１つを選択することができる。この実施例では、“嬉しい”、“楽しい”、“悲しい”、“怒り”、“悔しい”、…などの単語が予め登録されている（図４１参照）。
【００６７】
また、ステップＳ８７で“ＮＯ”であれば、つまり感情の入力でなければ、ステップＳ９３で、態度の入力かどうかを判断する。ステップＳ９３で“ＹＥＳ”であれば、つまり態度の入力であれば、ステップＳ９５で、表示部７２に態度コンポーネント１０４を追加し、ステップＳ９７で、後述する態度の選択処理（図１７参照）を実行して、発言内容の入力処理をリターンする。
【００６８】
態度コンポーネント１０４は、図８に示すように、当該コンポーネントの種類を識別するための標識１０４ａ、態度の内容を選択するためのプルダウンメニュー１０４ｂ、態度を取る対象のキャラクタを入力する入力欄１０４ｃおよび態度を取るキャラクタとの距離を選択するプルダウンメニュー１０４ｄを含む。プルダウンメニュー１０４ｂには、態度に内在する意識等を表す単語が複数種類登録されており、いずれか１つを選択することができる。この実施例では、“親和的”、“依存的”、“服従的”、“回避的”、“拒否的”、…などの単語が予め登録されている（図４１参照）。また、入力欄１０４ｃには、キーボードのような入力装置を用いて、態度を取る対象のキャラクタ名或いはキャラクタＩＤを入力することができる。さらに、プルダウンメニュー１０４ｄには、距離の大小を示す単語が複数登録されており、いずれか１つを選択することができる。たとえば、この実施例では、“遠い”、“普通”および“近い”が予め登録されている。
【００６９】
なお、この実施例では、感情コンポーネント１０２と態度コンポーネント１０４とは、いずれもキャラクタのアニメーションについてのコンポーネントであるため、同じ標識で示されるが、異なる標識で示すようにしてもよい。
【００７０】
一方、ステップＳ９３で“ＮＯ”であれば、ステップＳ９９で、参照するウェブページの入力かどうかを判断する。つまり、ウェブボタン８０がオンされたかどうかを判断する。ステップＳ９９で“ＹＥＳ”であれば、つまり参照するウェブページの入力であれば、ステップＳ１０１で、表示部７２にＵＲＬコンポーネント１０６を追加し、ステップＳ１０３で、後述するＵＲＬの入力処理（図１８参照）を実行して、発言内容の入力処理をリターンする。
【００７１】
ＵＲＬコンポーネント１０６は、図８に示すように、当該コンポーネントの種類を識別するための標識１０６ａ、ＵＲＬを入力するための入力欄１０６ｂおよび入力欄１０６ｂに入力されたＵＲＬが示すウェブページを開くための開くボタン１０６ｃを含む。入力欄１０６ｂには、所望のウェブページのＵＲＬを入力することができる。
【００７２】
また、ステップＳ９９で“ＮＯ”であれば、つまり参照するウェブページの入力でなければ、図１４に示すステップＳ１０５で、画像ファイルのアップロードかどうかを判断する。つまり、画像ＵＰボタン８２がオンされたかどうかを判断する。ステップＳ１０５で“ＹＥＳ”であれば、つまり画像ファイルのアップロードであれば、ステップＳ１０７で、表示部７２にＵＲＬコンポーネント１０６を追加して、ステップＳ１０９で、後述する画像ファイルの選択処理（図１９参照）を実行して、発言内容の入力処理をリターンする。
【００７３】
なお、画像ＵＰボタン８２がオンされた場合にも、ウェブボタン８０がオンされた場合と同様のＵＲＬコンポーネント１０６を追加するようにしてあるが、かかる場合には、後述するプロキシ処理（図２１参照）済みの画像ファイルについてのＵＲＬが入力欄１０６ｂに入力される。
【００７４】
一方、ステップＳ１０５で“ＮＯ”であれば、画像ファイルのアップロードでなければ、ステップＳ１１１で、画像についてのコメント入力かどうかを判断する。つまり、画像指さしボタン８４がオンされたかどうかを判断する。ステップＳ１１１で“ＮＯ”であれば、つまり画像についてのコメント入力でなければ、図１３に示したステップＳ８１に戻る。一方、ステップＳ１１１で“ＹＥＳ”であれば、つまり画像についてのコメント入力であれば、ステップＳ１１３で、表示部７２にコメントコンポーネント１０８を追加し、ステップＳ１１５で、後述するコメントの入力処理（図２０参照）を実行して、発言内容の入力処理をリターンする。
【００７５】
コメントコンポーネント１０８は、図７に示すように、当該コンポーネントの種類を識別するための標識１０８ａとコメントを入力するための入力欄１０８ｂとを含む。入力欄１０８ｂには、キーボードのような入力装置を用いて、所望の画像のようなウェブコンテンツに対する感想や意見などのコメントをテキストで入力することができる。ただし、図７からも分かるように、コメントコンポーネント１０８を表示する場合には、ウェブコンテンツについてのコメントを入力するため、前提として、その直前（直近上位）にウェブコンポーネント１０６が表示されている必要がある。
【００７６】
図１５は発話内容の入力処理（ステップＳ８５）のフロー図を示しており、ＰＣ１６が発話内容の入力処理を開始すると、ステップＳ１２１で、ユーザによって、発話内容がキーボードのような入力装置より入力欄１０２ａに入力される。続いて、ステップＳ１２３では、発話の種類がプルダウンメニュー１００ｃから選択される。つまり、遂行動詞が選択される。次にステップＳ１２５で、ユーザのキャラクタが発話の種類すなわち遂行動詞に応じたアニメーションを再生しながら、入力欄１００ｂに入力された発話内容を合成音声で再生する。
【００７７】
詳細な説明は省略するが、各遂行動詞には特定の動作（アニメーション）が割り当てられており、遂行動詞に応じたアニメーションがキャラクタによって実行される。たとえば、遂行動詞として“〜と同意する”が選択された場合には、キャラクタは表情を変えずに頷く動作をする。
【００７８】
ただし、遂行動詞とアニメーションとは、必ずしも一対一対応でなくてもよく、たとえば、“〜と挨拶する”と“〜と宣言する”とでは、同じ片手を挙げるアニメーションであったり、“〜と非難する”が涙を流すアニメーションとふくれっ面をするアニメーションの２種類に対応したりしてもよい。
【００７９】
そして、ステップＳ１２７では、入力終了かどうかを判断する。たとえば、ボタン７４〜９８のいずれかがオンされたかどうかを判断する。ステップＳ１２７で“ＮＯ”であれば、つまり入力終了でなければ、そのままステップＳ１２１に戻る。一方、ステップＳ１２７で“ＹＥＳ”であれば、つまり入力終了であれば、発話内容の入力処理をリターンする。
【００８０】
図１６は感情の選択処理（ステップＳ９１）のフロー図を示しており、ＰＣ１６が感情の選択処理を開始すると、ステップＳ１３１で、ユーザによって、感情を表す単語（感情の種類）がプルダウンメニュー１０２ｂから選択される。続くステップＳ１３３では、ユーザのキャラクタが感情の種類に応じたアニメーションを再生する。
【００８１】
詳細な説明は省略するが、感情の種類のそれぞれについても、遂行動詞と同様に、キャラクタのアニメーションが割り当てられており、選択された感情の種類に応じたアニメーションが実行される。たとえば、感情の種類として、“嬉しい”が選択された場合には、キャラクタは笑顔で両手を挙げる動作をする。
【００８２】
そして、ステップＳ１３５では、選択終了かどうかを判断する。たとえば、ボタン７４〜９８のいずれかがオンされたかどうかを判断する。ステップＳ１３５で“ＮＯ”であれば、つまり選択終了でなければ、そのままステップＳ１３１に戻る。一方、ステップＳ１３５で“ＹＥＳ”であれば、つまり選択終了であれば、感情の選択処理をリターンする。
【００８３】
図１７は態度の選択処理（ステップＳ９７）のフロー図を示しており、ＰＣ１６が態度の選択処理を開始すると、ステップＳ１４１で、ユーザによって、態度に内在する意識等を表す単語（態度の種類）がプルダウンメニュー１０４ｂから選択され、態度を取る対象のキャラクタ（キャラクタ名）が入力欄１０４ｃに入力され、当該キャラクタとの距離がプルダウンメニュー１０４ｄから選択される。続くステップＳ１４３で、ユーザのキャラクタが、対象となるキャラクタと、選択した距離となるように移動し、態度の種類に応じたアニメーションを再生する。
【００８４】
なお、この実施例では、距離をユーザが選択可能な構成にしてあるが、態度に応じて予め距離を決定するようにしておいてもよい。または、ユーザが入力装置を操作して、当該態度を取る場合の位置をコミュニティページ３０上で入力可能な構成としてもよい。
【００８５】
また、詳細な説明は省略するが、態度の種類のそれぞれについても、遂行動詞や感情を表す単語と同様に、キャラクタのアニメーションが割り当てられており、選択された態度の種類に応じたアニメーションが実行される。たとえば、態度の種類として、“親和的”が選択されると、当該キャラクタは笑顔で対象のキャラクタの方を向く動作をする。
【００８６】
そして、ステップＳ１４５で、選択終了かどうかを判断する。たとえば、ボタン７４〜９８のいずれかがオンされたかどうかを判断する。ステップＳ１４５で“ＮＯ”であれば、つまり選択終了でなければ、ステップＳ１４１に戻る。一方、ステップＳ１４５で“ＹＥＳ”であれば、つまり選択終了であれば、態度の選択処理をリターンする。
【００８７】
図１８はＵＲＬの入力処理（ステップＳ１０３）を示すフロー図であり、ＰＣ１６がＵＲＬの入力処理を開始すると、ステップＳ１５１で、ユーザによって、開きたいウェブページのＵＲＬが入力欄１０６ｂに入力される。続いて、ステップＳ１５３で、ユーザによって、コンポーネント内の開くボタン１０６ｃがオンされると、ステップＳ１５５で、プロキシサーバ（この実施例では、サーバ１２）に、ＵＲＬを送信し、ステップＳ１５７で、プロキシ処理済みのページをコンテンツ表示部３２に表示する。
【００８８】
なお、ステップＳ１５５で、プロキシサーバすなわちサーバ１２にＵＲＬが送信されると、サーバ１２において、後述するプロキシ処理（図２１参照）が実行される。プロキシ処理が施されると、当該ウェブページはコミュニティページ３０と同様の機能を備えることができる。たとえば、プロキシ処理が施されたウェブページ上の画像がクリックされると、当該画像の位置がキャラクタを移動させる位置情報として取り込まれるとともに、当該画像の位置までキャラクタが移動される。
【００８９】
そして、ステップＳ１５９では、入力終了かどうかを判断する。たとえば、ボタン７４〜９８のいずれかがオンされたかどうかを判断する。ステップＳ１５９で“ＮＯ”であれば、つまり入力終了でなければ、ステップＳ１５１に戻る。一方、ステップＳ１５９で“ＹＥＳ”であれば、つまり入力終了であれば、ＵＲＬの入力処理をリターンする。
【００９０】
図１９は画像ファイルの選択処理（ステップＳ１０９）を示すフロー図であり、ＰＣ１６が画像ファイルの選択処理を開始すると、ステップＳ１６１で、図示は省略するが、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）のファイルシステムのファイル選択ダイアログを、たとえば発言エディタ７０（または発言エディタ２００）の前面に表示する。続くステップＳ１６３では、ユーザによって、アップロードする画像ファイルが選択される。次にステップＳ１６５で、サーバ１２に当該画像ファイルを送信するとともに、ステップＳ１６７で、登録されたファイルのＵＲＬ（厳密には、ＵＲＮ）をサーバ１２に送信する。そして、ステップＳ１６９では、プロキシ処理済みの画像を、たとえばコンテンツ表示部３２の前面に別ウィンドウで表示して、ステップＳ１７１で、ＵＲＬコンポーネント１０６の入力欄１０６ｂに、プロキシ処理済みの画像ファイルについてのＵＲＬを挿入（入力）して、画像ファイルの選択処理をリターンする。
【００９１】
なお、ステップＳ１６５で、サーバ１２に画像ファイルが送信されると、サーバ１２はウェブページＤＢ２６にユーザＩＤとともに、当該画像ファイルを登録し、ステップＳ１６７で、登録された画像ファイルのＵＲＮがプロキシサーバに送信されると、プロキシサーバでは、後述するプロキシ処理が実行される。
【００９２】
図２０はコメントの入力処理（ステップＳ１１５）を示すフロー図であり、ＰＣ１６がコメントの入力処理を開始すると、ステップＳ１８１で、ユーザによって、コメントがキーボードのような入力装置より入力欄１０８ｂに入力される。続くステップＳ１８３では、ユーザのキャラクタが対象となる画像の側に移動して、指差しながらコメントを合成音声で再生する。そして、ステップＳ１８５では、入力終了かどうかを判断する。たとえば、ボタン７４〜９８のいずれかがオンされたかどうかを判断する。ステップＳ１８５で“ＮＯ”であれば、つまり入力終了でなければ、ステップＳ１８１に戻る。一方、ステップＳ１８５で“ＹＥＳ”であれば、つまり入力終了であれば、コメントの入力処理をリターンする。
【００９３】
図２１はプロキシ処理（ステップＳ１５５，Ｓ１６７）を示すフロー図であり、プロキシサーバ（この実施例では、サーバ１２）がプロキシ処理を開始すると、ステップＳ１９１でＵＲＬを受け取り、ステップ１９３で、ＵＲＬが示す場所からデータを受信する。
【００９４】
なお、図示は省略するが、画像ファイルがアップロードされる場合には、当該画像ファイルのデータおよびそのＵＲＮを受信する。これが、ステップＳ１９１およびＳ１９３の処理に相当する。
【００９５】
続くステップＳ１９５では、データのコメントタイプを判断し、ステップＳ１９７で、ＨＴＭＬ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）データかどうかを判断する。ステップＳ１９７で“ＹＥＳ”であれば、つまりＨＴＭＬデータであれば、ステップＳ１９９で、ＨＴＭＬデータにＪａｖａ（登録商標）Ｓｃｒｉｐｔを挿入し、データ内のリンクをすべてプロキシ経由に書き換える。次に、ステップＳ２０１で、ＪａｖａＳｃｒｉｐｔによって、全画像の位置をスクリプトから判別可能にし、ステップＳ２０３で、ＪａｖａＳｃｒｉｐｔコードを含んだ処理済みＨＴＭＬデータをＰＣ１６に送信して、プロキシ処理をリターンする。
【００９６】
一方、ステップＳ１９７で“ＮＯ”であれば、つまりＨＴＭＬデータでなければ、ステップＳ２０５で、画像データ（画像ファイル）かどうかを判断する。ステップＳ２０５で“ＹＥＳ”であれば、つまり画像データであれば、ステップＳ２０７で、ＪａｖａＳｃｒｉｐｔを含むＨＴＭＬで当該画像データを囲み、画像位置をスクリプトから判別可能にし、ステップＳ２０３に進む。一方、ステップＳ２０５で“ＮＯ”であれば、つまり画像データでなければ、ステップＳ２０９で、送信されたＵＲＬ（画像ファイル）が正しくない旨のエラーメッセージをＰＣ１６に送信して、プロキシ処理をリターンする。
【００９７】
なお、メッセージがＰＣ１６に送信されると、当該メッセージがＰＣ１６に接続されるディスプレイに表示される。これに応じて、ユーザは、適切なＵＲＬを入力し直したり、画像ファイルを選択し直したりすることができる。
【００９８】
図２２および図２３はシナリオ情報の作成処理（ステップＳ５９）を示すフロー図であり、図２２に示すように、ＰＣ１６がシナリオ情報の作成処理を開始すると、ステップＳ２１１で、デフォルトのＸＭＬ構造を読み出し、ステップＳ２１３で、＜ｓｃｒｉｐｔ＞要素のａｃｔｏｒ属性に当該ユーザのユーザＩＤを挿入する。続くステップＳ２１５では、発言作成時に当該話題に登場しているキャラクタのリストを作成し、ステップＳ２１７で、後述する＜ｃａｓｔ＞要素として＜ｐｍ＞エレメントおよび＜ｄｍ＞エレメントの挿入処理（図２２参照）を実行し、ステップＳ２１９で、発言作成エリア（表示部７２）内の一番上のコンポーネントを読み出す。そして、ステップＳ２２１で、当該コンポーネントの種類を判別する。
【００９９】
なお、コンポーネントの種類は、各コンポーネントに含まれる標識１００ａ、１０２ａ、１０４ａ、１０６ａおよび１０８ａを調べることにより、容易に識別することができる。
【０１００】
続くステップＳ２２３では、発話コンポーネント１００かどうかを判断する。ステップＳ２２３で“ＹＥＳ”であれば、つまり発話コンポーネント１００であれば、ステップＳ２２５で、後述する＜ｓｃｒｉｐｔ＞要素として＜ｓｐｅｅｃｈ＞エレメントの追加処理（図２５参照）を実行して、図２３に示すステップＳ２４１に進む。一方、ステップＳ２２３で“ＮＯ”であれば、つまり発話コンポーネント１００でなければ、ステップＳ２２７で、感情コンポーネント１０２かどうかを判断する。
【０１０１】
ステップＳ２２７で“ＹＥＳ”であれば、つまり感情コンポーネント１０２であれば、ステップＳ２２９で、後述する＜ｓｃｒｉｐｔ＞要素として＜ｆｅｅｌｉｎｇ＞エレメントの追加処理（図２６参照）を実行して、ステップＳ２４１に進む。一方、ステップＳ２２７で“ＮＯ”であれば、つまり感情コンポーネント１０２でなければ、図２３に示すステップＳ２３１で、態度コンポーネント１０４かどうかを判断する。
【０１０２】
ステップＳ２３１で“ＹＥＳ”であれば、つまり態度コンポーネント１０４であれば、ステップＳ２３３で、後述する＜ｓｃｒｉｐｔ＞要素として＜ａｔｔｉｔｕｄｅ＞エレメントの追加処理（図２７参照）を実行して、ステップＳ２４１に進む。一方、ステップＳ２３１で“ＮＯ”であれば、つまり態度コンポーネント１０４でなければ、ステップＳ２３５で、ＵＲＬコンポーネント１０６かどうかを判断する。
【０１０３】
ステップＳ２３５で“ＹＥＳ”であれば、つまりＵＲＬコンポーネント１０６であれば、ステップＳ２３７で、後述する＜ｓｃｒｉｐｔ＞要素として＜ｃｉｔａｔｉｏｎ＞エレメントの追加処理（図２８参照）を実行して、ステップＳ２４１に進む。一方、ステップＳ２３５で“ＮＯ”であれば、つまりＵＲＬコンポーネント１０６でなければ、コメントコンポーネント１０８であると判断して、ステップＳ２３９で、後述する＜ｓｃｒｉｐｔ＞要素として＜ｃｏｍｍｅｎｔ＞エレメントの追加処理（図２９参照）を実行して、ステップＳ２４１に進む。
【０１０４】
ステップＳ２４１では、最後のコンポーネントかどうかを判断する。つまり、表示部７４に表示されるすべてのコンポーネントについてのＸＭＬ形式への変換が終了したかどうかを判断する。ステップＳ２４１で“ＮＯ”であれば、つまり、最後のコンポーネントでなければ、ステップＳ２４３で次のコンポーネントを読み出して、図２２に示したステップＳ２２１に戻る。一方、ステップＳ２４１で“ＹＥＳ”であれば、つまり最後のコンポーネントであれば、ステップＳ２４５で、ＸＭＬ形式によるシナリオ情報を出力して、シナリオ情報の作成処理をリターンする。
【０１０５】
図２４は、＜ｃａｓｔ＞要素として＜ｐｍ＞エレメントおよび＜ｄｍ＞エレメントの挿入処理（ステップＳ２１７）を示すフロー図である。図２４に示すように、ＰＣ１６が＜ｃａｓｔ＞要素として＜ｐｍ＞エレメントおよび＜ｄｍ＞エレメントの挿入処理を開始すると、ステップＳ２５１で、親ノードに対する発言（子ノード）の最後の状態で表示されているすべてのキャラクタについてのユーザＩＤのリストを作成する。ここで、親ノードとは、スレッド表示部３４に表示される話題をいい、これに対して、発言（コメントおよびリアクション）を子ノードという。
【０１０６】
なお、＜ｐｍ＞エレメントは話題に参加しているユーザについての要素を意味し、＜ｄｍ＞エレメントは話題内で表示されるウェブコンテンツについての要素を意味する。
【０１０７】
続くステップＳ２５３では、１以上のキャラクタが存在するかどうかを判断する。つまり、ユーザＩＤのリストにユーザＩＤが１つ以上存在するかどうかを判断する。ステップＳ２５３で“ＮＯ”であれば、つまりキャラクタが存在しなければ、そのままステップＳ２６１に進む。一方、ステップＳ２５３で“ＹＥＳ”であれば、つまりキャラクタが存在すれば、ステップＳ２５５で、＜ｃａｓｔ＞内に、＜ｐｍ  ｉｄ＝””ｔｙｐｅ＝””ｌｏｃａｔｉｏｎ＿ｘ＝””ｌｏｃａｔｉｏｎ＿ｙ＝””／を追加する。
【０１０８】
次にステップＳ２５７で、キャラクタの名前をｉｄ属性に、キャラクタの種類（キュラクタＩＤ）をｔｙｐｅ属性に、キャラクタの表示位置のｘ座標をｌｏｃａｔｉｏｎ＿ｘに、ｙ座標をｌｏｃａｔｉｏｎ＿ｙにそれぞれ挿入する。つまり、対応する箇所の２つのダブルクォーテンションマーク内に、該当する内容をそれぞれ入力するのである。以下、この実施例において同様である。
【０１０９】
そして、ステップＳ２５９で、他のキャラクタが存在するかどうかを判断する。ステップＳ２５９で“ＹＥＳ”であれば、つまり他のキャラクタが存在する場合には、当該キャラクタについてステップＳ２５５およびステップＳ２５７の処理を実行する。一方、ステップＳ２５９で“ＮＯ”であれば、つまり他のキャラクタが存在しなければ、ステップＳ２６１に進む。
【０１１０】
ステップＳ２６１では、親ノードに対する発言の最後の状態で、すなわち話題内で最後に発言された状態において、表示（提示）されているすべてのウェブコンテンツについてのＵＲＬのリストを作成する。次にステップＳ２６３では、１つ以上のＵＲＬが存在するかどうかを判断する。ステップＳ２６３で“ＮＯ”であれば、つまりＵＲＬが存在しなければ、＜ｃａｓｔ＞要素として＜ｐｍ＞エレメントおよび＜ｄｍ＞エレメントの挿入処理をリターンする。
【０１１１】
一方、ステップＳ２６３で“ＹＥＳ”であれば、つまりＵＲＬが存在すれば、ステップＳ２６５で、＜ｃａｓｔ＞内に＜ｄｍ  ｕｒｌ＝””／＞を追加し、ステップＳ２６７で、ウェブコンテンツのＵＲＬをｕｒｌ属性に挿入する。
【０１１２】
そして、ステップＳ２６９では、他のウェブコンテンツが存在するかどうかを判断する。ステップＳ２６９で“ＹＥＳ”であれば、つまり他のウェブコンテンツが存在する場合には、当該ウェブコンテンツについてステップＳ２６５およびステップＳ２６７の処理を実行する。一方、ステップＳ２６９で“ＮＯ”であれば、つまり他のウェブコンテンツが存在しなければ、＜ｃａｓｔ＞要素として＜ｐｍ＞エレメントおよび＜ｄｍ＞エレメントの挿入処理をリターンする。
【０１１３】
図２５は、＜ｓｃｒｉｐｔ＞要素として＜ｓｐｅｅｃｈ＞エレメントの追加処理（ステップＳ２１７）を示すフロー図である。図２５に示すように、ＰＣ１６が＜ｓｃｒｉｐｔ＞要素として＜ｓｐｅｅｃｈ＞エレメントの追加処理を開始すると、ステップＳ２７１で、＜ｓｃｒｉｐｔ＞内に、＜ｓｐｅｅｃｈ  ｕｔｔｅｒａｎｃｅ＝””ｐｅｒｆｏｒｍａｔｉｖｅ＝””ａｎｉｍａｔｉｏｎ＝””／＞を追加する。そして、ステップＳ２７３で、発話内容（テキスト）をｕｔｔｅｒａｎｃｅ属性に、発話内容の種類（遂行動詞）をｐｅｒｆｏｒｍａｔｉｖｅ属性に、実行されるアニメーションの名前をａｎｉｍａｔｉｏｎ属性に、それぞれ挿入して、＜ｓｃｒｉｐｔ＞要素として＜ｓｐｅｅｃｈ＞エレメントの追加処理をリターンする。
【０１１４】
なお、アニメーションの名前とは、遂行動詞（感情の種類および態度の種類についても同じ）のそれぞれに対応して割り当てられたアニメーションの名称（名前）であり、当該コミュニティの設計者或いは開発者等によって予め決定される。
【０１１５】
図２６は、＜ｓｃｒｉｐｔ＞要素として＜ｆｅｅｌｉｎｇ＞エレメントの追加処理（ステップＳ２２９）を示すフロー図である。図２６に示すように、ＰＣ１６が＜ｓｃｒｉｐｔ＞要素として＜ｆｅｅｌｉｎｇ＞エレメントの追加処理を開始すると、ステップＳ２８１で、＜ｓｃｒｉｐｔ＞内に、＜ｆｅｅｌｉｎｇ  ｔｙｐｅ＝””ａｎｉｍａｔｉｏｎ＝””／＞を追加する。そして、ステップＳ２８３で、感情の種類をｔｙｐｅ属性に、実行されるアニメーションの名前をａｎｉｍａｔｉｏｎ属性に、それぞれ挿入して、＜ｓｃｒｉｐｔ＞要素として＜ｆｅｅｌｉｎｇ＞エレメントの追加処理をリターンする。
【０１１６】
図２７は、＜ｓｃｒｉｐｔ＞要素として＜ａｔｔｉｔｕｄｅ＞エレメントの追加処理（ステップＳ２３３）を示すフロー図である。図２７に示すように、ＰＣ１６が＜ｓｃｒｉｐｔ＞要素として＜ａｔｔｉｔｕｄｅ＞エレメントの追加処理を開始すると、ステップＳ２９１で、＜ｓｃｒｉｐｔ＞内に、＜ｓｐｅｅｃｈ  ｏｐｐｏｓｉｔｅ＝””ｔｙｐｅ＝””ｄｉｓｔａｎｃｅ＝””ａｎｉｍａｔｉｏｎ＝””／＞を追加する。そして、ステップＳ２９３で、態度を取る相手のユーザＩＤ（またはキャラクタＩＤ）をｏｐｐｏｓｉｔｅ属性に、態度の種類をｔｙｐｅ属性に、相手との距離をｄｉｓｔａｎｃｅ属性に、実行されるアニメーションの名前をａｎｉｍａｔｉｏｎ属性に、それぞれ挿入して、＜ｓｃｒｉｐｔ＞要素として＜ａｔｔｉｔｕｄｅ＞エレメントの追加処理をリターンする。
【０１１７】
図２８は、＜ｓｃｒｉｐｔ＞要素として＜ｃｉｔａｔｉｏｎ＞エレメントの追加処理（ステップＳ２３７）を示すフロー図である。図２８に示すように、ＣＰＵ１６が＜ｓｃｒｉｐｔ＞要素として＜ｃｉｔａｔｉｏｎ＞エレメントの追加処理を開始すると、ステップＳ３０１で、＜ｓｃｒｉｐｔ＞内に、＜ｃｉｔａｔｉｏｎ  ｕｒｌ＝””／＞を追加する。そして、ステップＳ３０３で、引用するウェブコンテンツのＵＲＬをｕｒｌ属性に挿入して、＜ｓｃｒｉｐｔ＞要素として＜ｃｉｔａｔｉｏｎ＞エレメントの追加処理をリターンする。
【０１１８】
図２９は、＜ｓｃｒｉｐｔ＞要素として＜ｃｏｍｍｅｎｔ＞エレメントの追加処理（ステップＳ２３９）を示すフロー図である。図２９に示すように、ＣＰＵ１６が＜ｓｃｒｉｐｔ＞要素として＜ｃｏｍｍｅｎｔ＞エレメントの追加処理を開始すると、ステップＳ３１１で、＜ｓｃｒｉｐｔ＞内に、＜ｃｏｍｍｅｎｔ  ｔａｒｇｅｔ＝””ｕｔｔｅｒａｎｃｅ＝””／＞を追加する。そして、ステップＳ３１３で、コメントする対象のウェブコンテンツのＩＤ（ウェブコンテンツＩＤ）をｔａｒｇｅｔ属性に、発話内容をｕｔｔｅｒａｎｃｅ属性に、それぞれ挿入して、＜ｓｃｒｉｐｔ＞要素として＜ｃｏｍｍｅｎｔ＞エレメントの追加処理をリターンする。
【０１１９】
なお、プロキシ処理においては省略したが、ウェブコンテンツＩＤは、コメントコンポーネント１０８の直前に追加されたＵＲＬコンポーネント１０６の入力欄１０６ｂに記述されるＵＲＬに対応づけられたウェブコンテンツの識別情報であり、発言エディタ７０または２００上には現れないが、入力欄１０６ｂに入力されたＵＲＬのラベルとして付されている。
【０１２０】
図３０および図３１は、発言の再生処理（ステップＳ２７）を示すフロー図である。図３０に示すように、ＰＣ１６が発言の再生処理を開始すると、ステップ３２１で、選択された発言のシナリオ情報を読み込む。続くステップＳ３２３で、後述する会話状態の初期化処理（図３２、図３３参照）を実行して、ステップＳ３２５で、＜ｓｃｒｉｐｔ＞要素内の最初のエレメントを読み出し、ステップＳ３２７で、読み出したエレメントの種類を判別する。
【０１２１】
続くステップＳ３２９では、ｓｐｅｅｃｈエレメントかどうかを判断する。ステップＳ３２９で“ＹＥＳ”であれば、つまりｓｐｅｅｃｈエレメントであれば、ステップＳ３３１で、ａｎｉｍａｔｉｏｎ属性に示されたアニメーションを実行し、ｕｔｔｅｒａｎｃｅ属性の内容を吹き出しと合成音声とを再生して、図３１に示すステップＳ３４７に進む。
【０１２２】
図６は、表示部３４に表示される或る発言を再生した場合の状態を示す図解図である。この図６を参照して、当該発言を投稿したユーザＡの使用する第１キャラクタ３２ａは、コンテンツ表示部３２の前面に表示され、考える（悩む）ような表情するとともに、腕を組む動作をする。また、発話内容である“なぜでしょう？”というテキストが吹き出し表示され、スピーカからその内容の合成音声が出力される。また、当該話題に登場する他のユーザのキャラクタとして、第２キャラクタ３２ｂおよび第３キュラクタがコンテンツ表示部３２の前面に表示される。
【０１２３】
つまり、図６に示す例では、選択された発言に含まれるエレメントがｓｐｅｅｃｈエレメントであり、ａｎｉｍａｔｉｏｎ属性には“ｒｅｊｅｃｔ（〜と拒絶する）”が記述され、ｕｔｔｅｒａｎｃｅ属性には“なぜでしょう？”に相当するテキストデータが記述されているのである。
【０１２４】
一方、ステップＳ３２９で“ＮＯ”であれば、つまりｓｐｅｅｃｈエレメントでなければ、ステップＳ３３３で、ｆｅｅｌｉｎｇエレメントかどうかを判断する。ステップＳ３３３で“ＹＥＳ”であれば、つまりｆｅｅｌｉｎｇエレメントであれば、ステップＳ３３５で、ａｎｉｍａｔｉｏｎ属性に示されたアニメーションを実行してからステップＳ３４７に進む。一方、ステップＳ３３３で“ＮＯ”であれば、つまりｆｅｅｌｉｎｇエレメントでなければ、図３１に示すステップＳ３３７で、ａｔｔｉｔｕｄｅエレメントかどうかを判断する。
【０１２５】
ステップＳ３３７で“ＹＥＳ”であれば、つまりａｔｔｉｔｕｄｅエレメントであれば、ステップＳ３３９で、ｏｐｐｏｓｉｔｅ属性に示されたキャラクタに対して、ｄｉｓｔａｎｃｅ属性で示された距離（表示位置）に移動し、ａｎｉｍａｔｉｏｎ属性に示されたアニメーションを実行する。一方、ステップＳ３３７で“ＮＯ”であれば、つまりａｔｔｉｔｕｄｅエレメントでなければ、ステップＳ３４１で、ｗｅｂエレメントかどうかを判断する。
【０１２６】
ステップＳ３４１で“ＹＥＳ”であれば、つまりｗｅｂエレメントであれば、ステップＳ３４３で、ｕｒｌ属性に示されたウェブコンテンツを別ウインドウすなわちコンテンツ表示部３２に開く（表示する）。ただし、ウェブコンテンツが画像データである場合には、コンテンツ表示部３２の前面に別ウインドウで開く。一方、ステップＳ３４１で“ＮＯ”であれば、つまりｗｅｂエレメントでなければ、ｃｏｍｍｅｎｔエレメントであると判断して、ステップＳ３４５で、ｔａｒｇｅｔ属性に示されたウェブコンテンツの横にキャラクタを移動し、ｕｔｔｅｒａｎｃｅ属性の内容を吹き出しで表示し、当該内容の音声合成をスピーカから出力する。
【０１２７】
そして、ステップＳ３４７では、＜ｓｃｒｉｐｔ＞要素内の最後のエレメントかどうかを判断する。つまり、再生指示を入力した発言或いは登録されたばかりの発言の内容をすべて再生したかどうかを判断する。ステップＳ３４７で“ＮＯ”であれば、つまり最後のエレメントでなければ、ステップＳ３４９で、次のエレメントを読み出して、図３０に示したステップＳ３２７に戻る。一方、ステップＳ３４７で“ＹＥＳ”であれば、つまり最後のエレメントであれば、発言の再生処理をリターンする。
【０１２８】
図３２および図３３は、会話状態の初期化処理（ステップＳ３２３）を示すフロー図である。図３２に示すように、ＰＣ１６が会話状態の初期化処理を開始すると、ステップＳ３５１で、＜ｃａｓｔ＞要素内容の最初のｐｍエレメントを読み出し、ステップＳ３５３で、ｉｄ属性のキャラクタが出現済みかどうかを判断する。ステップＳ３５３で“ＹＥＳ”であれば、つまりｉｄ属性のキャラクタが出現済みであれば、そのままステップＳ３５７に進む。一方、ステップＳ３５３で“ＮＯ”であれば、つまりｉｄ属性のキャラクタが出現済みでなければ、ステップＳ３５５で、画面外すなわちコンテンツ表示部３２および表示部３４の外にキャラクタを出現させて、ステップＳ３５７に進む。
【０１２９】
なお、ｉｄ属性には、キャラクタの名前が記述されるため、当該キャラクタの名前に対応して記述されるキャラクタＩＤをユーザ情報から取得し、取得したキャラクタＩＤが示すキャラクタが出現される。
【０１３０】
ステップＳ３５７では、出現させたキャラクタを、ｌｏｃａｔｉｏｎ＿ｘ，ｌｏｃａｔｉｏｎ＿ｙ属性の示す座標に移動させる。続くステップＳ３５９では、最後のｐｍエレメントかどうかを判断する。つまり、当該話題に参加しているユーザが使用するキャラクタをすべて出現させたかどうかを判断する。ステップＳ３５９で“ＹＥＳ”であれば、つまり最後のｐｍエレメントであれば、そのままステップＳ３６３に進む。一方、ステップＳ３５９で“ＮＯ”であれば、つまり最後のｐｍエレメントでなければ、ステップＳ３６１で、次のｐｍエレメントを読み出し、ステップＳ３５３に戻る。
【０１３１】
ステップＳ３６３では、＜ｃａｓｔ＞要素内容の最初のｄｍエレメントを読み出し、図３３に示すステップＳ３６５で、ｕｒｌ属性のウェブコンテンツが出現済みかどうかを判断する。ステップＳ３６５で“ＹＥＳ”であれば、つまりｕｒｌ属性のウェブコンテンツが出現済みであれば、そのままステップＳ３６９に進む。一方、ステップＳ３６５で“ＮＯ”であれば、つまりｕｒｌ属性のウェブコンテンツが出現済みでなければ、ステップＳ３６７で、別ウインドにウェブコンテンツを表示してからステップＳ３６９に進む。
【０１３２】
ステップＳ３６９では、最後のｄｍエレメントかどうかを判断する。つまり、当該話題に含まれるウェブコンテンツをすべて表示したかどうかを判断する。ステップＳ３６９で“ＹＥＳ”であれば、つまり最後のｄｍエレメントであれば、そのままステップＳ３７３に進む。一方、ステップＳ３６９で“ＮＯ”であれば、つまり最後のｄｍエレメントでなければ、ステップＳ３７１で、次のｄｍエレメントを読み出して、ステップＳ３６５に戻る。
【０１３３】
なお、当該話題に複数のウェブコンテンツが含まれる場合には、コンテンツ表示部３２の前面であり、キャラクタ（図６では、第１キャラクタ３２ａ、第２キャラクタ３２ｂ、第３キャラクタ３２ｃ）の背面に別ウィンドウを開いて、重ねて表示するようにすればよい。
【０１３４】
ステップＳ３７３では、＜ｓｃｒｉｐｔ＞要素内容のａｃｔｏｒ属性の示すキャラクタが出現済みかどうかを判断する。ステップＳ３７３で“ＹＥＳ”であれば、つまり、＜ｓｃｒｉｐｔ＞要素内容のａｃｔｏｒ属性の示すキャラクタが出現済みであれば、そのまま会話状態の初期化処理をリターンする。一方、ステップＳ３７３で“ＮＯ”であれば、つまり＜ｓｃｒｉｐｔ＞要素内容のａｃｔｏｒ属性の示すキャラクタが出現済みでなければ、ステップＳ３７５で、ａｃｔｏｒ属性の示すキャラクタを画面外すなわちコンテンツ表示部３２および表示部３４の外に出現させ、ステップＳ３７７で、当該キャラクタを、ｌｏｃａｔｉｏｎ＿ｘ，ｌｏｃａｔｉｏｎ＿ｙ属性の示す座標に移動させて、会話状態の初期化処理をリターンする。
【０１３５】
図３４に示すように、サーバ１２は発言データの登録処理を開始すると、ステップＳ３８１で、投稿された発言の種類を判別する。続くステップＳ３８３では、新規話題かどうかを判断する。ここで、新規話題かどうかは、発言エディタ７０または発言エディタ２００のいずれによって、発言が投稿されたかで容易に知ることができる。ステップＳ３８３で“ＹＥＳ”であれば、つまり新規話題であれば、ステップＳ３８５で、発言ＤＢ２４に新しい木構造のルートノード（親ノード）として登録して、ステップＳ３９３に進む。つまり、ステップＳ３８５では、新しいスレッドデータを作成し、発言ＤＢ２４に登録する。このとき、ラベル付きの話題フォルダが作成され、当該話題フォルダに話題のデータすなわち発言データが記憶される。
【０１３６】
一方、ステップＳ３８３で“ＮＯ”であれば、つまり新規話題でなければ、ステップＳ３８７で、発言ＤＢ２４に発言作成時における直前の発言の子ノードとして登録する。つまり、直前の発言が話題であれば、場面フォルダを作成するとともに、当該場面フォルダ内にラベル付きのコメントのデータ（発言データ）を記憶する。ただし、直前の発言がコメント或いはリアクションであれば、それに続く発言（リアクション）として、ラベル付きのリアクションのデータ（発言データ）を既に存在する場面フォルダ内に記憶する。
【０１３７】
続くステップＳ３８９では、後述する発言のシナリオ情報の解析処理（図３５および図３６参照）を実行し、次いで、ステップＳ３９１において、後述するリンクデータの解析処理（図３７および図３８参照）を実行して、ステップＳ３９３に進む。
【０１３８】
ステップＳ３９３では、話題の木構造と登録された発言のシナリオ情報とを含むＨＴＭＬデータを作成し、ステップＳ３９５で、作成したＨＴＭＬデータをＰＣ１６に送信して、発言データの登録処理をリターンする。
【０１３９】
なお、後述するように、発言のシナリオ情報の解析処理およびリンクデータの解析処理は、処理に比較的時間がかかるため、サーバの管理者等の指示に従って、別途実行するようにしてもよい。
【０１４０】
図３５および図３６は、発言のシナリオ情報の解析処理（ステップＳ３８９）を示すフロー図である。図３５に示すように、サーバ１２が発言のシナリオ情報の解析処理を開始すると、ステップＳ４０１で、＜ｓｃｒｉｐｔ＞要素内の最初のエレメントを読み出し、ステップＳ４０３で、エレメントの種類を判別する。続くステップＳ４０５では、ａｔｔｉｔｕｄｅエレメントかどうかを判断する。ステップＳ４０５で“ＹＥＳ”であれば、つまりａｔｔｉｔｕｄｅエレメントであれば、ステップＳ４０７で、ｏｐｐｏｓｉｔｅ属性に示されたユーザを「発言相手メモリ」に登録する。この発言相手メモリは、サーバ１２に設けられるＨＤＤ１２ａの記憶領域の一部である。そして、ステップＳ４０９では、話題の木構造における祖先ノードの中で、「発言相手メモリ」に登録されたユーザによる一番近い発言に対し、ａｔｔｉｔｕｄｅエレメントをプロパティとしたリンクデータを作成して、図３６に示すステップＳ４３３に進む。
【０１４１】
ここで、先祖ノードとは、話題に含まれる子ノードのうち、今回登録された発言より前に発言ＤＢ２４に登録された子ノードをいう。また、リンクデータとは、個々の発言をノードとする有向グラフでの新しい辺（矢印）をいい、この辺にエレメントが属性情報として記憶される。以下、同様である。さらに、一番近い発言とは、今回登録した発言の直前の発言をいう。
【０１４２】
一方、ステップＳ４０５で“ＮＯ”であれば、つまりａｔｔｉｔｕｄｅエレメントでなければ、ステップＳ４１１で、ｗｅｂエレメントかどうかを判断する。ステップ４１１で“ＹＥＳ”であれば、つまりｗｅｂエレメントであれば、ステップＳ４１３で、ｕｒｌ属性に示されたＵＲＬを「発言対象メモリ」に登録して、ステップＳ４３３に進む。ここで、発言対象メモリは、サーバ１２に設けられるＨＤＤ１２ａの記憶領域の一部であり、発言相手メモリとは異なる領域である。一方、ステップＳ４１１で“ＮＯ”であれば、つまりｗｅｂエレメントでなければ、ステップＳ４１５で、ｆｅｅｌｉｎｇエレメントかどうかを判断する。
【０１４３】
ステップＳ４１５で“ＹＥＳ”であれば、つまりｆｅｅｌｉｎｇエレメントであれば、ステップＳ４１７で、ｆｅｅｌｉｎｇエレメントをプロパティとした自身へのリンクデータを作成し、ステップＳ４３３に進む。一方、ステップＳ４１５で“ＮＯ”であれば、つまりｆｅｅｌｉｎｇエレメントでなければ、図３６に示すステップＳ４１９で、ｓｐｅｅｃｈエレメントかどうかを判断する。
【０１４４】
ステップＳ４１９で“ＮＯ”であれば、つまりｓｐｅｅｃｈエレメントでなければ、ｃｏｍｍｅｎｔエレメントであると判断して、ステップＳ４２１で、ｔａｒｇｅｔ属性に示されたウェブコンテンツに対し、ｃｏｍｍｅｎｔエレメントをプロパティとしてリンクデータを作成し、ステップＳ４３３に進む。一方、ステップＳ４１９で“ＹＥＳ”であれば、つまりｓｐｅｅｃｈエレメントであれば、ステップＳ４２３で、発言対象メモリにデータが在るかどうかを判断する。
【０１４５】
ステップＳ４２３で“ＹＥＳ”であれば、つまり発言対象メモリにデータがあれば、ステップＳ４２５で、「発言対象メモリ」に在るウェブコンテンツに対し、ｓｐｅｅｃｈエレメントをプロパティとしたリンクデータを作成し、「発言対象メモリ」を消去して、ステップＳ４３３に進む。一方、ステップＳ４２３で“ＮＯ”であれば、つまり発言対象メモリにデータがなければ、ステップＳ４２７で、発言相手メモリにデータが在るかどうかを判断する。
【０１４６】
ステップＳ４２７で“ＹＥＳ”であれば、つまり発言相手メモリにデータがあれば、ステップＳ４２９で、話題の木構造の中に祖先ノードの中で「発言相手メモリ」に登録されたユーザによる一番近い発言に対し、ｓｐｅｅｃｈエレメントをプロパティとしたリンクデータを作成し、ステップＳ４３３に進む。一方、ステップＳ４２７で“ＮＯ”であれば、つまり発言相手メモリにデータがなければ、ステップＳ４３１で、ｓｐｅｅｃｈエレメントをプロパティとした自身へのリンクデータを作成して、ステップＳ４３３に進む。
【０１４７】
ステップＳ４３３では、最後のエレメントかどうかを判断する。つまり、＜ｓｃｒｉｐｔ＞要素内のすべてのエレメントについて、解析処理を終了したかどうかを判断する。ステップＳ４３３で“ＮＯ”であれば、つまり最後のエレメントでなければ、ステップＳ４３５で、次のエレメントを読み出して、図３５に示したステップＳ４０３に戻る。一方、ステップＳ４３３で“ＹＥＳ”であれば、つまり最後のエレメントであれば、発言のシナリオ情報の解析処理をリターンする。
【０１４８】
図３７および図３８は、リンクデータの評価処理（ステップＳ３９１）を示すフロー図である。図３７に示すように、サーバ１２がリンクデータの評価処理を開始すると、ステップＳ４４１で、最初のリンクデータについてのプロパティの種類を判別し、ステップＳ４４３で、ｓｐｅｅｃｈエレメントかどうかを判断する。ステップＳ４４３で“ＹＥＳ”であれば、つまりｓｐｅｅｃｈエレメントであれば、ステップＳ４４５で、ｐｅｒｆｏｒｍａｔｉｖｅ属性を読み出し、ステップＳ４５５に進む。一方、ステップＳ４４３で“ＮＯ”であれば、つまりｓｐｅｅｃｈエレメントでなければ、ステップＳ４４７で、ｆｅｅｌｉｎｇエレメントかどうかを判断する。
【０１４９】
ステップＳ４４７で“ＹＥＳ”であれば、つまりｆｅｅｌｉｎｇエレメントであれば、ステップＳ４４９で、ｔｙｐｅ属性を読み出し、ステップＳ４５５に進む。一方、ステップＳ４４７で“ＮＯ”であれば、つまりｆｅｅｌｉｎｇエレメントでなければ、ステップＳ４５１で、ａｔｔｉｔｕｄｅエレメントかどうかを判断する。ステップＳ４５１で“ＹＥＳ”であれば、つまりａｔｔｉｔｕｄｅエレメントであれば、ステップＳ４５３で、ｔｙｐｅ属性を読み出しし、ステップＳ４５５に進む。
【０１５０】
ステップＳ４５５では、図４１に示す点数表を用いて点数を求め、ステップＳ４５９に進む。この点数表は予め設計者或いは開発者が決定したものであり、たとえば、サーバ１２のＨＤＤ１２ａに記憶される。ただし、図４１に示す点数表は単なる一例であり、実際にはさらに多数の遂行動詞、感情（情動）の種類および態度の種類についての点数が記述される。また、点数表では、遂行動詞、感情の種類および態度の種類のそれぞれについて、肯定的、否定的、驚き度の項目を設けて、０または１の点数を付けてある。ここで、点数「０」は肯定度、否定度、驚き度がないことを意味し、点数「１」は肯定度、否定度、驚き度があることを意味する。たとえば、遂行動詞“〜と賛成する”では、肯定度が点数「１」であり、否定度および驚き度が点数「０」である。また、感情の種類“感激”では、肯定度および驚き度が点数「１」であり、否定度が点数「０」である。さらに、態度の種類“回避的”では、否定度が点数「１」であり、肯定度および驚き度が点数「０」である。
【０１５１】
一方、ステップＳ４５１で“ＮＯ”であれば、つまりａｔｔｉｔｕｄｅエレメントでなければ、ｃｏｍｍｅｎｔエレメントであると判断し、ステップＳ４５７で、対象のウェブコンテンツのコメントリストにｕｔｔｅｒａｎｃｅ属性を追加して、ステップＳ４５９に進む。
【０１５２】
ステップＳ４５９では、最後のリンクデータかどうかを判断する。つまり、すべてのリンクデータについて点数を求めたかどうかを判断する。ステップＳ４５９で“ＮＯ”であれば、つまり最後のリンクデータでなければ、ステップＳ４６１で次のリンクデータについてのプロパティの種類を判別して、ステップＳ４４３に戻る。一方、ステップＳ４５９で“ＹＥＳ”であれば、つまり最後のリンクデータであれば、図３８に示すステップＳ４６３で、後述するリンク先の発言やウェブコンテンツの評価値の修正処理（図３９参照）を実行し、ステップＳ４６５で、後述するユーザ全員の評価値の修正処理（図４０参照）を実行する。
【０１５３】
続くステップＳ４６７では、評価、コメントを編集して、ランキングリストをＨＴＭＬ形式で作成し、ステップＳ４６９で、ＰＣ１６から当該リストの送信要求があるかどうかを判断する。ステップＳ４６９で“ＮＯ”であれば、つまりリストの送信要求がなければ、そのままリンクデータの評価処理をリターンする。一方、ステップＳ４６９で“ＹＥＳ”であれば、つまりリストの送信要求があれば、ステップＳ４７１で、作成したリストをＰＣ１６に送信して、リンクデータの評価処理をリターンする。
【０１５４】
図示等は省略するが、作成したリストがＰＣ１６に送信されると、ＰＣ１６はディスプレイに当該リストを表示する。つまり、ユーザが投稿した話題についての情報性や当該話題を投稿したユーザについての他人の関心度や興味度などの評価を数値化するので、ユーザは自身が投稿した話題（発言）や自分自身についての客観的な評価を知ることができる。
【０１５５】
図３９は、リンク先の発言やウェブコンテンツの評価値の修正処理（ステップＳ４６３）を示すフロー図である。図３９に示すように、サーバ１２がリンク先の発言やウェブコンテンツの評価値の修正処理を開始すると、ステップＳ４８１で、ｐｅｆｏｒｔｉｖｅやｔｙｐｅの肯定度・否定度・驚き度に、後述するユーザ会員の評価値の修正処理で算出するユーザの評価値（ユーザ評価値）Ｖｎを乗じた値を算出する。続くステップＳ４８３では、リンク先の発言やウェブコンテンツの評価値に新しい発言による値を加算する。そして、ステップＳ４８５で、修正した評価値を出力して、リンク先の発言やウェブコンテンツの評価値の修正処理をリターンする。
【０１５６】
図４０は、ユーザ会員の評価値の修正処理（ステップＳ４６５）を示すフロー図である。図４０に示すように、サーバ１２はユーザ会員の評価値の修正処理を開始すると、ステップＳ４９１で、それぞれのユーザに対し、ユーザの全発言についての肯定度の合計値から否定度の合計値を引いた値Ｖを算出する。次にステップＳ４９３で、最大値Ｖｍａｘ  と最小値Ｖｍｉｎ  を検出し、ステップＳ４９５で、正規化されたユーザの評価値Ｖｎを数１に従って算出する。
【０１５７】
【数１】
Ｖｎ＝（Ｖ−Ｖｍｉｎ  ）／（Ｖｍａｘ  −Ｖｍｉｎ  ）
そして、ステップＳ４９７で、算出した評価値Ｖｎを出力して、ユーザ会員の評価値の修正処理をリターンする。この評価値Ｖｎが上述したリンクデータの解析処理のステップＳ４８１において用いられる。つまり、ステップＳ４８１においては、前回算出した評価値Ｖｎが用いられるのである。
【０１５８】
この実施例によれば、或るユーザが投稿した話題に対する他のユーザの発言に含まれる非言語情報に基づいて当該話題の評価をするので、その評価に基づいて自己表現の自由なコミュニティ環境における社会的なコミュニケーションの構造を解析することができる。さらには、そのコミュニケーションの構造に基づいてコミュニケーションの内容を解析することができる。
【０１５９】
なお、この実施例で示した評価値の算出方法は単なる一例であり、これに限定される必要はない。
【０１６０】
また、リンクデータの解析処理および評価値の算出処理をサーバで実行するようにしたが、発言ＤＢからスレッドデータを読み出してＰＣ側でこれらの処理を実行するようにしてもよい。
【０１６１】
さらに、この実施例では、投稿された話題についての評価値を算出するようにしてあるが、コメントやリアクションのような発言についての評価値を算出するようにしてもよい。たとえば、所望のコメントやリアクションを選択して、リンクデータの解析処理および評価値の算出処理を実行させることにより、選択されたコメントやリアクションに続く（対する）発言の非言語情報に基づいて、選択されたコメントやリアクションについての評価値を算出することができる。
【図面の簡単な説明】
【図１】この発明のコミュニティ環境提供システムの一例を示す図解図である。
【図２】図１実施例に示すデータベースの内容の一例を示す図解図である。
【図３】図１および図２に示す発言データベースのデータ構造の一例を示す図解図である。
【図４】図１実施例に示すサーバによって提供されるコミュニティのウェブページの一例を示す図解図である。
【図５】図１実施例に示すサーバによって提供されるコミュニティのウェブページの他の一例を示す図解図である。
【図６】図１実施例に示すサーバによって提供されるコミュニティのウェブページのその他の一例を示す図解図である。
【図７】図１実施例に示すサーバによって提供されるコミュニティのウェブページにおいて、発言を投稿する場合の発言エディタの一例を示す図解図である。
【図８】図１実施例に示すサーバによって提供されるコミュニティのウェブページにおいて、話題を投稿する場合の発言エディタの一例を示す図解図である。
【図９】図１実施例に示すサーバによって提供されるコミュニティにおけるサーバとＰＣとの全体処理の一部を示すフロー図である。
【図１０】図１実施例に示すサーバによって提供されるコミュニティにおけるサーバとＰＣとの全体処理の他の一部を示すフロー図である。
【図１１】図１実施例に示すＰＣの発言の作成と投稿処理の一部を示すフロー図である。
【図１２】図１実施例に示すＰＣの発言の作成と投稿処理の他の一部を示すフロー図である。
【図１３】図１実施例に示すＰＣの発言内容の入力処理の一部を示すフロー図である。
【図１４】図１実施例に示すＰＣの発言内容の入力処理の他の一部を示すフロー図である。
【図１５】図１実施例に示すＰＣの発話内容の入力処理を示すフロー図である。
【図１６】図１実施例に示すＰＣの感情の選択処理を示すフロー図である。
【図１７】図１実施例に示すＰＣの態度の選択処理を示すフロー図である。
【図１８】図１実施例に示すＰＣのＵＲＬの入力処理を示すフロー図である。
【図１９】図１実施例に示すＰＣの画像ファイルの選択処理を示すフロー図である。
【図２０】図１実施例に示すＰＣのコメントの入力処理を示すフロー図である。
【図２１】図１実施例に示すサーバのプロキシ処理を示すフロー図である。
【図２２】図１実施例に示すＰＣのシナリオ情報の作成処理の一部を示すフロー図である。
【図２３】図１実施例に示すＰＣのシナリオ情報の作成処理の他の一部を示すフロー図である。
【図２４】図１実施例に示すＰＣの＜ｃａｓｔ＞要素として＜ｐｍ＞エレメントおよび＜ｄｍ＞エレメントの挿入処理を示すフロー図である。
【図２５】図１実施例に示すＰＣの＜ｓｃｒｉｐｔ＞要素として＜ｓｐｅｅｃｈ＞エレメントの追加処理を示すフロー図である。
【図２６】図１実施例に示すＰＣの＜ｓｃｒｉｐｔ＞要素として＜ｆｅｅｌｉｎｇ＞エレメントの追加処理を示すフロー図である。
【図２７】図１実施例に示すＰＣの＜ｓｃｒｉｐｔ＞要素として＜ａｔｔｉｔｕｄｅ＞エレメントの追加処理を示すフロー図である。
【図２８】図１実施例に示すＰＣの＜ｓｃｒｉｐｔ＞要素として＜ｃｉｔａｔｉｏｎ＞エレメントの追加処理を示すフロー図である。
【図２９】図１実施例に示すＰＣの＜ｓｃｒｉｐｔ＞要素として＜ｃｏｍｍｅｎｔ＞エレメントの追加処理を示すフロー図である。
【図３０】図１実施例に示すＰＣの発言の再生処理の一部を示すフロー図である。
【図３１】図１実施例に示すＰＣの発言の再生処理の他の一部を示すフロー図である。
【図３２】図１実施例に示すＰＣの会話状態の初期化処理の一部を示すフロー図である。
【図３３】図１実施例に示すＰＣの会話状態の初期化処理の他の一部を示すフロー図である。
【図３４】図１実施例に示すサーバの発言データの登録処理を示すフロー図である。
【図３５】図１実施例に示すサーバの発言のシナリオ情報の解析処理の一部を示すフロー図である。
【図３６】図１実施例に示すサーバの発言のシナリオ情報の解析処理の他の一部を示すフロー図である。
【図３７】図１実施例に示すサーバのリンクデータの評価処理の一部を示すフロー図である。
【図３８】図１実施例に示すサーバのリンクデータの評価処理の他の一部を示すフロー図である。
【図３９】図１実施例に示すサーバのリンク先の発言やウェブコンテンツの評価値の修正処理を示すフロー図である。
【図４０】図１実施例に示すサーバのユーザ会員の評価値の修正処理を示すフロー図である。
【図４１】図３７および図３８におけるリンクデータの評価処理に用いられる点数表の一例を示す図解図である。
【符号の説明】
１０  …コミュニティ環境提供システム
１２  …サーバ
１４  …ネットワーク
１６，１８  …ＰＣ
２０，２２，２４，２６  …データベース
【図１】
2004287613.tif 000003
【図２】
2004287613.tif 000004
【図３】
2004287613.tif 000005
【図４】
2004287613.tif 000006
【図５】
2004287613.tif 000007
【図６】
2004287613.tif 000008
【図７】
2004287613.tif 000009
【図８】
2004287613.tif 000010
【図９】
2004287613.tif 000011
【図１０】
2004287613.tif 000012
【図１１】
2004287613.tif 000013
【図１２】
2004287613.tif 000014
【図１３】
2004287613.tif 000015
【図１４】
2004287613.tif 000016
【図１５】
2004287613.tif 000017
【図１６】
2004287613.tif 000018
【図１７】
2004287613.tif 000019
【図１８】
2004287613.tif 000020
【図１９】
2004287613.tif 000021
【図２０】
2004287613.tif 000022
【図２１】
2004287613.tif 000023
【図２２】
2004287613.tif 000024
【図２３】
2004287613.tif 000025
【図２４】
2004287613.tif 000026
【図２５】
2004287613.tif 000027
【図２６】
2004287613.tif 000028
【図２７】
2004287613.tif 000029
【図２８】
2004287613.tif 000030
【図２９】
2004287613.tif 000031
【図３０】
2004287613.tif 000032
【図３１】
2004287613.tif 000033
【図３２】
2004287613.tif 000034
【図３３】
2004287613.tif 000035
【図３４】
2004287613.tif 000036
【図３５】
2004287613.tif 000037
【図３６】
2004287613.tif 000038
【図３７】
2004287613.tif 000039
【図３８】
2004287613.tif 000040
【図３９】
2004287613.tif 000041
【図４０】
2004287613.tif 000042
【図４１】
2004287613.tif 000043