(57)【特許請求の範囲】
【請求項１】
データ検索システムであって、
データ貯蔵部からデータオブジェクトを検索するためのデータサーバと、
共存サーバ及び少なくとも前記データサーバ及び前記共存サーバと情報交換することのできる前記少なくとも２つのデータ検索クライアントとを有し、かつ検索されたデータオブジェクトごとに一つの仮想場所を生成し、検索されたデータオブジェクトと仮想場所とを関連付けるための関連付け手段と、
各仮想場所に関連付けられた前記検索されたデータオブジェクトにアクセスする少なくとも２つのデータ検索クライアントが前記データオブジェクトにアクセスするために共存でき、かつ第１のデータ検索クライアントがデータオブジェクトにアクセスするときに生成され、前記データオブジェクトにアクセスするデータ検索クライアントがいなくなったときに消去される各仮想場所を前記共存サーバに提供する手段と、
前記共存できる仮想場所の提供に応答して、前記仮想場所に関連付けられた前記検索されたデータオブジェクトにアクセスする前記少なくとも２つのデータ検索クライアントを前記共存できる仮想場所のリストに加え、ユーザ間の情報交換を可能にする手段と、を含み、前記データ検索クライアントの各々は、オブジェクト関連付け手段を含み、前記オブジェクト関連付け手段は、前記検索されたデータオブジェクトを前記共存サーバの仮想場所の少なくとも１つに関連づけることにより、前記仮想場所において前記データオブジェクトの閲覧、修正、議論を管理させる、共存データ検索システム。
【請求項２】
前記関連付け手段が、
前記共存サーバは、前記データサーバと情報交換することができる、請求項１に記載の共存データ検索システム。
【請求項３】
前記共存サーバが、
各仮想場所に対して一つ存在するように可変の複数の場所プロセスと、
前記データ検索クライアントから前記場所プロセスへのコミュニケーションを提供するための管理プロセスとを含むことを特徴とする請求項１または２に記載の共存データ検索システム。
【請求項４】
前記オブジェクト関連付け手段が、新しい仮想場所に移動するための手段を含んでいることを特徴とする請求項１または請求項２のいずれかに記載の共存データ検索システム。
【請求項５】
データオブジェクトを貯蔵するデータ貯蔵部と、
前記データ貯蔵部から前記データオブジェクトを検索することのできるデータサーバと、
複数のデータ検索クライアントと、
少なくとも２つのデータ検索クライアントが前記データオブジェクトにアクセスするために前記データオブジェクトに関連付けられた少なくとも一つの仮想場所であって、前記データ検索クライアントが共存でき、前記データオブジェクトにアクセスするために共存でき、かつ第１のデータ検索クライアントがデータオブジェクトにアクセスするときに生成され、前記データオブジェクトにアクセスするデータ検索クライアントがいなくなったときに消去される各仮想場所を提供する共存サーバとを含み、
少なくとも２つの前記データ検索クライアントが、
前記共存サーバに対して個別のコミュニケーションチャネルを開く手段と、
前記仮想場所において検索されたデータオブジェクト閲覧、修正、議論を管理するように、前記検索されたデータオブジェクトをマッピングする手段と、
共存情報を表示する手段と、
前記仮想場所にマッピングされた前記検索されたデータオブジェクトにアクセスする前記少なくとも２つのデータ検索クライアントを該仮想場所のリストに加え、ユーザ間の情報交換を可能にする手段と、
前記データ検索クライアントの各々が、オブジェクト関連付け手段を含み、前記オブジェクト関連付け手段は、前記検索されたデータオブジェクトを前記共存サーバの仮想場所の少なくとも１つに関連づけることにより、前記仮想場所において前記データオブジェクトの閲覧、修正、議論を管理させており、該データ検索クライアントが終了されるとき、前記共存サーバにそれを通知する手段とを含むことを特徴とする共存データ検索システム。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、一般的にデータ検索システムに関する。特に、共存機能を有するデータ検索システム（共存データ検索システム）に関する。
【０００２】
【従来の技術】
データ検索システムは本分野では周知となっている。典型的なデータ検索システムを図１に示す。図１を参照すると、データ検索システムは、通常データサーバ１０と、複数のデータ検索クライアント１２とから構成されていることがわかる。データ検索クライアント１２は通常個々のコンピュータである。データ検索クライアント１２のコマンドによって、データサーバ１０は、データオブジェクト１６を貯蔵しているデータ貯蔵部（またはデータベース）１４にアクセスする。データオブジェクト１６は、通常情報ファイルである。データ検索クライアントとユーザ１７との情報交換（コミュニケーション）は、通常ディスプレー１８を通じて行われる。
【０００３】
図２を参照して通常のデータ検索の動作について説明する。ユーザ１７から、あるデータオブジェクト１６の検索命令（矢印１）を受け取ると、データ検索クライアント１２は、データサーバ１０に向けて要求を送る（矢印２）。データサーバ１０は、データ貯蔵部１４から、要求されたデータオブジェクト１６を検索し（矢印３）、データオブジェクト１６をデータ検索クライアント１２へと送る（矢印４）。
【０００４】
データ検索システムに組み込まれる追加的な機能として、データ管理機能がある。この機能によって、データ検索クライアント１２は、新しいデータオブジェクト１６を生成したり、検索されたデータオブジェクト１６の修正を行ったり、生成または修正されたデータオブジェクト１６をデータサーバ１０へと送り返して、データ貯蔵部１４に貯蔵したりすることができる。追加的な機能には許可機能もあり、それによってデータサーバ１０はクライアントの要求を受け付けたり拒絶したりする。
【０００５】
データ検索システムの例としては（この内いくつかは上述の追加的な機能にあたる）、ファイル伝送プロトコル（ＦＴＰ）、ハイパー伝送プロトコル（ＨＴＴＰ）、ゴファー（Ｇｏｐｈｅｒ）及びネットワークファイルシステム（ＮＦＳ）標準規格、ネットワークニュースサービス（ＮＮＴＰ）、米国Ｄｉｇｉｔａｌ  Ｅｌｅｃｔｒｉｃ  ＣｏｒｐｏｒａｔｉｏｎのＤＥＣノート、米国Ｌｏｔｕｓ  Ｉｎｃ．のＬｏｔｕｓノート、米国Ｎｏｖｅｌｌ  Ｉｎｃ．のＮｏｖｅｌｌ  ＮｅｔＷａｒｅ、及び米国Ｏｒａｃｌｅ社、Ｓｙｂａｓｅ社、Ｉｎｆｏｍｉｘ社などによって作られているリレーショナルデータベース管理システムなどがある。
【０００６】
【発明が解決しようとする課題】
本発明の目的は、共存機能を備えたデータ検索システムを提供することにある。それによって、同時に同じデータオブジェクトにアクセスした２人以上のユーザは、互いの存在に気付き、リアルタイムに互いに情報交換することができる。このデータ検索システムによると、あるドキュメントにアクセスしたユーザは、同じドキュメントに同じ時にアクセスしている他のユーザと、リアルタイムに、そのドキュメントについて討議することができる。
【０００７】
“共存（ｃｏ−ｐｒｅｓｅｎｃｅ）”とは、２人以上のユーザが、一ヶ所の“仮想場所”（“ｖｉｒｔｕａｌ  ｐｌａｃｅ”）に“存在”することができるようにする機能のことである。例えば、イリノイ大学の“ｔｈｅ  Ｎａｔｉｏｎａｌ  Ｃｅｎｔｅｒ  ｆｏｒ  Ｓｕｐｅｒｃｏｍｐｕｔｉｎｇ  Ａｐｐｌｉｃａｔｉｏｎｓ”によって開発された“ＣＯＬＬＡＧＥ”は、クライアント−サーバパッケージであり、共有されたホワイトボードへの共存を支援する。ユーザは、データオブジェクトをデータサーバから既にある“ＣＯＬＬＡＧＥセッション”へコピーし、このＣＯＬＬＡＧＥセッションでデータオブジェクトを操作する。他のユーザも、このＣＯＬＬＡＧＥセッションに参加すれば、同じデータオブジェクトを操作することができる。しかし、セッションに参加するには、ＣＯＬＬＡＧＥセッションの開かれている場所をあらかじめ知っておく必要がある。
【０００８】
“Ｔｈｅ  Ｉｎｔｅｒｎｅｔ  Ｒｅｌａｙ  Ｃｈａｔ”は、リアルタイムの、インターネット全体に渡る、マルチパーティの、テキストベースの相互交信ツーることができ、特定の話題に対して開かれた仮想的な“チャネル”に入ったり出たりすることができる。
【０００９】
複数人が参加することのできる“ＭＵＤｓ”（Ｍｕｌｔｉｐｌｅ−Ｕｓｅｒ  Ｄｕｎｇｅｏｎｓ）というゲームは、複数プレーヤ参加型ゲームの一つであり、そこでは相互に連結された場所という概念が提供され、各場所にはオブジェクトと他の場所に通じる通路とがある。プレーヤはある場所から他の場所へと移動することができ、“共存する”プレーヤと互いに連絡を取って、その場所にあるオブジェクトに対して対処する。
【００１０】
これらの共存システムは、仮想場所を提供し、そこで人々は情報交換することができる。しかし、このような共存システムによって提供される共存は、データと関連していない。すなわちデータオブジェクトの変更に伴って形成されたりするものではない。本発明は、これを提供するものである。
【００１１】
【課題を達成するための手段】
本発明の好適実施例に従うと、データ貯蔵部からデータオブジェクトを検索するデータサーバと、検索されたデータオブジェクトと仮想場所とを相互に関連付けるための関連付け手段とを含むデータ検索システムが提供される。この仮想場所によって、検索されるデータオブジェクトにアクセスするユーザは互いに共存することができる。
【００１２】
さらに、本発明の好適実施例の一つに従うと、前記関連付け手段は、共存サーバと、データサーバ及び共存サーバと情報交換することのできる少なくとも２つの共存データ検索クライアントとを含む。共存サーバは、データオブジェクトの一つと関連付けられた少なくとも一つの仮想場所を含む。共存データ検索クライアントはオブジェクト関連手段と、共存手段とを含む。オブジェクト関連手段はデータサーバから受け取ったデータオブジェクトを共存サーバ内の仮想場所の一つに関連付ける働きをする。共存手段は、この関連付けられた仮想場所に関連する他のユーザとの情報交換を可能にするものである。
【００１３】
別の方法として、本発明の第２の好適実施例では、関連付け手段は、やはり共存サーバと、少なくとも２つの共存データ検索クライアントとを含むが、この実施例では、共存サーバがデータサーバと情報交換する能力を有し、共存データ検索クライアントは共存サーバとのみ情報交換する。共存データ検索クライアントはオブジェクト関連手段と共存手段とを有し、オブジェクト関連手段は共存サーバから受け取ったデータオブジェクトを共存サーバ内の仮想場所の一つに関連付ける働きをし、共存手段は関連付けられた仮想場所に関連する他のユーザとの情報交換を可能にする。
【００１４】
本発明の前記好適実施例のいずれに於いても、共存サーバは、各仮想場所に対して一つ存在するように可変の複数の場所プロセス（ａ  ｃｈａｎｇｉｎｇ  ｐｌｕｒａｌｉｔｙ  ｏｆ  ｐｌａｃｅ  ｐｒｏｃｅｓｓｅｓ）と、共存データ検索クライアントから場所プロセスへのコミュニケーションを提供するための管理プロセスとを含んでもよい。
【００１５】
さらに、本発明の前記好適実施例のいずれに於いても、オブジェクト関連付け手段は、新しい仮想場所に移動するための手段を備えていてもよい。
【００１６】
最後に、本発明の第３の好適実施例に従うと、データ貯蔵部からデータオブジェクトを検索することのできるデータサーバと、複数のデータ検索クライアントとを含むデータ検索システムをアップグレードして共存データ検索システムにするための方法が提供される。この方法は、ａ）データオブジェクトの一つに関連する少なくとも一つの仮想場所を含む共存サーバを付け加える過程と、ｂ）少なくとも２つのデータ検索クライアントを以下の機能を加えることによりアップグレードする過程とを含む：
【００１７】
共存サーバに関連する個々のコミュニケーションチャネルを開く機能；
検索されたデータオブジェクトを仮想場所にマッピングする機能；
共存情報を表示する機能；
ユーザ間の情報交換を可能にする機能；
データ検索クライアントが終了したとき、共存サーバに知らせる機能。
【００１８】
【作用】
上述の共存データ検索システムによって、検索されるデータオブジェクトに同じ時にアクセスしているユーザは、互いに共存し、リアルタイムに情報交換することができる。
【００１９】
本発明は、以下の実施例と添付の図面とによって、より詳細に理解されるだろう。
【００２０】
【実施例】
まず、図３及び図４を参照されたい。図３及び図４には、本発明によるデータ検索システムが説明されている。本発明によるシステムは、従来技術と同様に、通常データサーバ１０とデータ貯蔵部１４とを備えている。さらにこのシステムは、本発明の好適実施例に従って、共存サーバ２０と、複数の共存データ検索クライアント２２とを含む。各共存データ検索クライアント２２は、データサーバ１０、共存サーバ２０、及び（ディスプレー１８を通して）ユーザ１７と情報交換することができる。
【００２１】
従来技術と同様に、各データ検索クライアント２２は、データサーバ１０を介してデータオブジェクト１６を要求し、データサーバ１０はデータ貯蔵部１４から要求されたデータオブジェクト１６を検索する。それと同時に、本発明の好適実施例に従って、共存データ検索クライアント２２は、特定のデータオブジェクト１６（例えばデータオブジェクト１６ａ）の検索を行ったという情報を共存サーバ２０へも通知する。それに応じて、共存サーバ２０は、データ検索クライアント２２を、検索されたデータオブジェクト１６ａに関連付けられた仮想場所２４に加える。クライアント２２は、検索されたデータオブジェクト１６ａ〜１６ｃを仮想場所２４ａ〜２４ｃに関連させる。
【００２２】
議論を明確にするため、共存サーバ２０が、データサーバ１０に保存されたデータオブジェクト１６の各々に対する仮想場所２４を管理することとしよう。理解されるように、共存サーバ２０は、第１ユーザがデータオブジェクト１６に現れたときに、要求によって仮想場所２４を生成し、また、誰もいなくなったときに仮想場所２４を消すことができる。
【００２３】
データ検索クライアント２２を通してデータオブジェクト１６にアクセスする全てのユーザは、アクセスするデータオブジェクト１６に関連付けられた仮想場所２４に加えられる。さらに、共存サーバ２０は各仮想場所２４に対してユーザ間コミュニケーション機能を提供し、それによってデータオブジェクト１６にアクセスしたユーザは、そう望むのであれば、その時点で同じデータオブジェクト１６を使用している他のユーザと情報交換することができる。共存サーバ２０によって、データオブジェクト１６に存在しているユーザ１７は、他の共存しているユーザの存在に気付きくことができ、さらに他のユーザとリアルタイムに情報交換するための手段を与えられる。ユーザ１７間の情報交換は、共存サーバ２０を介する情報交換が遅い場合には、クライアント−クライアントの情報交換とすることもできる。
【００２４】
共存サーバ２０で重要なことは、各データオブジェクトを仮想場所へと変えることであり、この仮想場所でユーザ１７は一緒になってデータオブジェクトを見たり、修正したり、あるいはそれについて議論したりすることができる。例えば、データサーバ１０に、ある製品に関する複数のマニュアルが含まれているとする。その時、その製品のベンダ（ｖｅｎｄｏｒ）は、ひとつの（または複数の）仮想場所に、マニュアルに関するアドバイザを置くことができたら便利であろう。そうすることによってこのアドバイザは、マニュアルを参照するユーザが、さらにつっこんだ内容を知りたいときや、ドキュメントを読んでもどのようにすればよいのかわからないときに、ユーザを支援することができる。
【００２５】
共存サーバ２０及び共存データ検索クライアント２２は、共存プロトコルに従うが、この共存プロトコルは、図４内の矢印３１〜３８によって例示されている。
【００２６】
ユーザ１７は、従来技術にて説明したプロトコル（矢印３１〜３５、図２の矢印１〜５と同様）に従って、データサーバ１０からデータオブジェクト１６ｄを検索する。同時に、共存データ検索クライアント２２は、共存サーバ２０内のデータオブジェクト１６ｄと関連付けられている仮想場所２４ｄに対して、ユーザ１７がデータオブジェクト１６ｄにアクセスしたというメッセージを送る（矢印３６）。（通常、データオブジェクト１６はデータサーバ１０に於いて、うまく決められた名前を持っている。クライアント２２は、同じまたは対応する名前を用いて対応する仮想場所２４を同定する。）仮想場所２４ｄは、ユーザを共存ユーザのリストに加え（３７過程）、そのメッセージを仮想場所２４ｄに入ったユーザを含む全ての共存ユーザに送信する。
【００２７】
データオブジェクト１６にいるユーザ１７が、共存ユーザ１７の一人に選択的にメッセージを送信したい場合、第１のユーザ１７は、共存データ検索クライアント２２と共存サーバ２０とを介して、関連する仮想場所２４へとメッセージを送る。仮想場所２４にて、メッセージはデータオブジェクト１６にいる選択されたユーザ１７へと中継される。
【００２８】
ユーザ１７がデータオブジェクト１６からいなくなるときは（同じまたは他のデータサーバ１０から他のデータオブジェクト１６の検索を行ったり、共存データ検索クライアント２２が閉じたりすることによる）、共存データ検索クライアント２２は、それを知らせるメッセージを仮想場所２４へ送る（矢印３６）。仮想場所２４は、それを受けて、ユーザ１７を共存ユーザのリストから消去すると共に、残っている共存ユーザ１７の全員にメッセージを送ってそのことを知らせる。
【００２９】
共存プロトコルは、共存データ検索クライアント２２によって実行される機能と、共存サーバ２０と仮想場所２４によって実行される機能に関して記述される。以下にそれぞれの機能の疑似コード（ｐｓｅｕｄｏｃｏｄｅ）を示す。
【００３０】
まず、ユーザＵは既にドキュメントＤ１をサーバＳ１から受け取っているとして、ユーザＵのクライアント２２に於ける疑似コードを以下に示す。
【００３１】
ユーザＵがサーバＳ２からドキュメントＤ２を要求したとき：
１．サーバＳ２からドキュメントＤ２の検索を試みる。
２．検索が成功の場合、“ＵはサーバＳ２の仮想場所Ｐ（Ｄ２）へと去った。”というメッセージを、ドキュメントＤ１に対応する共存サーバＣ（Ｓ１）内の仮想場所Ｐ（Ｄ１）に送る。
【００３２】
ユーザＵが、テキストＴを述べることを要求したとき：
“ＵはＴと言った。”というメッセージを共存サーバＣ（Ｓ２）へ送る。
【００３３】
“ユーザＶがサーバＳｋ内の仮想場所Ｐ（Ｄｊ）から入った（または、仮想場所Ｐ（Ｄｊ）へと去った）。”というメッセージを受け取ったとき：
その時その仮想場所内にいるユーザのリストをユーザＵに対して表示する。
【００３４】
“ＶがＴと言った”というメッセージを受け取ったとき：
“ＶがＴと言った”というメッセージをユーザＵに対して表示する。
【００３５】
次に、共存ユーザの集合をＣＰとし、共存サーバＣ（Ｓｉ）上の仮想場所Ｐ（Ｄｉ）に於ける疑似コードを以下に示す。
【００３６】
“ＵはサーバＳｋ内の仮想場所Ｐ（Ｄｊ）へと去った”というメッセージを受け取ったとき：
１．共存ユーザの集合ＣＰから、ユーザＵを消去する。
２．ＣＰ内の残りのユーザＶ全員に、“ＵはサーバＳｋ内の仮想場所Ｐ（Ｄｊ）へと去った”というメッセージを送る。
【００３７】
“ＵがサーバＳｋ内の仮想場所Ｐ（Ｄｊ）から入ってきた”というメッセージを受け取ったとき：
１．ユーザＵを共存ユーザの集合ＣＰに加える。
２．共存ユーザの集合ＣＰ内のユーザＶ全員に“ＵがサーバＳｋ内の仮想場所Ｐ（Ｄｊ）から入ってきた”というメッセージを送る。
【００３８】
“ＵがＴと言った”というメッセージを受け取ったとき：
“ＵがＴと言った”と言うメッセージを共存ユーザの集合ＣＰ内の全てのユーザに送る。
【００３９】
共存サーバ２０は、共存を実現するどのような方法でシステムに組み込まれれもよい。一実施例では、共存サーバ２０は、フラット並行Ｐｒｏｌｏｇ（ｆｌａｔ  ｃｏｎｃｕｒｒｅｎｔ  Ｐｒｏｌｏｇ：ＦＣＰ）と呼ばれる並行プログラミング言語を実行するＵｎｉｘプロセスとして組み込まれる。Ｈｏｕｒｉらに付与された米国特許第５，２２２，２２１号明細書（ここで言及したことにより、本出願の一部とされたい）に述べられているように、ＦＣＰ内部軽負荷プロセス機構（ｉｎｔｅｒｎａｌ  ｌｉｇｈｔ−ｗｅｉｇｈｔ  ｐｒｏｃｅｓｓ  ｍｅｃｈａｎｉｓｍ）を用いることにより、各仮想場所２４を、各々ＦＣＰプロセスの集まりとして形成される場所プロセス（ｐｌａｃｅ  ｐｒｏｃｅｓｓ）として組み込むことができる。各ＦＣＰプロセスは、上述の共存プロトコルに従う。
【００４０】
共存サーバ２０は、予め登録され、周知され、そのアイデンティティが共存データ検索クライアントに登録されているポートにてメッセージを受けとる。共存サーバ２０は、通常共存データ検索クライアント２２からメッセージを受け取り、それらのメッセージを適切な仮想場所２４に伝える。さらに、要求があれば、Ｕｎｉｘ管理プロセス（共存サーバ２０）は、データオブジェクト１６に最初のユーザがアクセスしたときにはいつでも羽のように軽い（ｆｅａｔｈｅｒｗｅｉｇｈｔ）プロセス（仮想場所２４）を生成することができる。また、関連する仮想場所２４に共存することをユーザが止めたときにはいつでもプロセスを消すこともできる。
【００４１】
理解されるように、共存サーバ２０との情報交換機能はデータ検索機能から独立しているため、本発明によるデータ検索システムは、共存機能を持たない標準的なデータ検索クライアント１２と共に動作することが可能である。
【００４２】
さらに理解されるように、本発明によるデータ検索システムは、既存の従来のデータ検索システムから容易に構築することができる。この既存システムからのアップグレード方法は、上述したような共存サーバ２０を加える過程と、データ検索クライアント１２をアップグレードして、共存データ検索クライアント２２にする過程とを含む。データ検索クライアント１２のアップグレードは、以下の機能を付加することによりなされる。
【００４３】
ａ）共存サーバ２０との付加的なコミュニケーションチャネルを開く機能、
ｂ）仮想場所２４に対してデータオブジェクト１６をマッピングする機能、
ｃ）共存情報を表示する機能、
ｄ）ユーザ１７間のリアルタイムコミュニケーションを可能にするための機能、
ｅ）クライアント２２が終了または閉鎖したときに共存サーバ２０に通知する機能。
【００４４】
理解されるように、アップグレードされていないデータ検索クライアントも、図３及び図４に示されている共存データ検索システム内で機能することが可能である。
【００４５】
次に、図５を参照されたい。図５は本発明の別の実施例を説明するための図である。この実施例では、データ検索システムは、前の実施例と同じ構成要素を含んでいるが、それらの要素は異なった組み合わされ方をしている。詳述すると、このデータ検索システムは、共存データ検索クライアント４０と、共存データ検索サーバ４２と備えており、また、従来技術と同様にデータサーバ１０及びデータ貯蔵部１４も備えている。
【００４６】
この別の実施例では、共存データ検索クライアント４０は共存データ検索サーバ４２とのみ情報交換する。即ち、共存データ検索サーバに対して、データ検索を要求したり、共存に必要なメッセージを送ったりする。要求を受け取った共存データ検索サーバ４２は、それらをデータサーバ１０へと伝える。共存データ検索サーバ４２は、仮想場所４４を含む。複数のサーバ４２が存在し、それらが各々関連するデータサーバ１０へのデータ検索要求を取り扱ってもよい。
【００４７】
以下にクライアント４０とサーバ４２との間のプロトコルを表す疑似コードを示す。
【００４８】
まず、ユーザＵはドキュメントＤ１をサーバＳ１内に持っているとして、ユーザＵのクライアント４０に於ける疑似コードを以下に示す。
【００４９】
ユーザＵがサーバＳ２からドキュメントＤ２を要求したとき：
１．“ＵはサーバＳ１内の場所Ｐ（Ｄ１）からの参入を要求する”というメッセージを共存サーバＣ（Ｓ２）内の場所Ｐ（Ｄ２）へと送る。
２．検索が成功の場合、“ＵはサーバＳ２の仮想場所Ｄ２へと去った。”というメッセージを、共存サーバＣ（Ｓ１）内の仮想場所Ｐ（Ｄ１）に送る。
【００５０】
ユーザＵが、テキストＴを述べることを要求したとき：
“ＵはＴと言った。”というメッセージを共存サーバＣ（Ｓ２）へ送る。
【００５１】
“ＶがサーバＳｉ内の仮想場所Ｐ（Ｄｊ）から入った（または、仮想場所Ｐ（Ｄｊ）へと去った）。”というメッセージを受け取ったとき：
その時仮想場所Ｐ（Ｄｊ）内にいる共存ユーザのリストをユーザＵに対して表示する。
【００５２】
“ＶがＴと言った”というメッセージを受け取ったとき：
ユーザＶからのメッセージをユーザＵに対して表示する。
【００５３】
次に、共存ユーザの集合をＣＰとし、共存サーバＣ（Ｓｉ）上の仮想場所Ｐ（Ｄｉ）に於ける疑似コードを以下に示す。
【００５４】
“ＵはサーバＳｋ内の仮想場所Ｐ（Ｄｊ）へと去った”というメッセージを受け取ったとき：
１．共存ユーザの集合ＣＰから、ユーザＵを消去する。
２．ＣＰ内の残りのユーザＶ全員に、“ＵはサーバＳｋ内の仮想場所Ｐ（Ｄｊ）へと去った”というメッセージを送る。
【００５５】
“ＵがサーバＳｋ内の仮想場所Ｐ（Ｄｊ）からの参入を要求する”というメッセージを受け取ったとき：
１．データサーバ１０からデータ検索を試みる。
２．データ検索が成功した場合：
ａ．ユーザＵのクライアント４２にデータを送る。
ｂ．共存ユーザの集合ＣＰにユーザＵを加える。
ｃ．共存ユーザの集合ＣＰ内のユーザＶ全員に“ＵがサーバＳｋ内の仮想場所Ｐ（Ｄｊ）から入ってきた”というメッセージを送る。
【００５６】
“ＵがＴと言った”というメッセージを受け取ったとき：
“ＵがＴと言った”と言うメッセージを共存ユーザの集合ＣＰ内の全てのユーザに送る。
【００５７】
当業者には理解されるように、本発明は、上記に例示され、述べられたことだけに限定されない。本発明の範囲は特許請求の範囲によって画定される。
【図面の簡単な説明】
【図１】図１は、従来のデータ検索システムの概念図である。
【図２】図２は、従来のデータ検索動作の一つを説明するための概念図である。
【図３】図３は、本発明の第１の好適実施例に従って構成され動作する共存サーバを備えたデータ検索システムの概念図である。
【図４】図４は、共存データ検索動作を説明する概念図である。
【図５】図５は、共存データ検索システムの別の実施例とその動作を説明する概念図である。
【符号の説明】
１  データ検索動作を説明するための矢印
２  データ検索動作を説明するための矢印
３  データ検索動作を説明するための矢印
４  データ検索動作を説明するための矢印
５  データ検索動作を説明するための矢印
１０  データサーバ
１２  データ検索クライアント
１６  データオブジェクト
１６ａ  データオブジェクトの一つ
１６ｂ  データオブジェクトの一つ
１６ｃ  データオブジェクトの一つ
１６ｄ  データオブジェクトの一つ
１７  ユーザ
１８  ディスプレー
２０  共存サーバ
２２  共存データ検索クライアント
２４  仮想場所
２４ａ  仮想場所の一つ
２４ｂ  仮想場所の一つ
２４ｃ  仮想場所の一つ
２４ｄ  仮想場所の一つ
３１  共存プロトコルを説明するための矢印
３２  共存プロトコルを説明するための矢印
３３  共存プロトコルを説明するための矢印
３４  共存プロトコルを説明するための矢印
３５  共存プロトコルを説明するための矢印
３６  共存プロトコルを説明するための矢印
３７  共存プロトコルを説明するための矢印
３８  共存プロトコルを説明するための矢印
４０  共存データ検索クライアント
４２  共存データ検索サーバ
４４  仮想場所
【図１】
0004222639.tif 000002
【図２】
0004222639.tif 000003
【図３】
0004222639.tif 000004
【図４】
0004222639.tif 000005
【図５】
0004222639.tif 000006