(57)【特許請求の範囲】
【請求項１】
複数のユーザにドキュメントの到着を通知する方法であって、
（ａ）中央サーバが前記複数のユーザそれぞれから、少なくとも１つの問合せタームをそれぞれ含む個別の問合せを受信するステップであって、各問合せタームはフィールド及びキーワードを含み、第１ユーザからの個別の問合せに含まれるフィールドは、第２ユーザからの個別の問合せに含まれるフィールドと異なるステップと、
（ｂ）前記複数のユーザそれぞれが、前記中央サーバの第１データベースにユーザ記録を記憶させるステップであって、前記ユーザ記録は、前記複数のユーザそれぞれからの個別の問合せが満たされたかどうかを示すように構成された指示フィールドを少なくとも含む、ステップと、
（ｃ）各個別の問合せに対して、前記少なくとも１つの問合せタームが、第２データベースに既に記憶されている他の問合せタームと異なるかどうかを判定し、前記少なくとも１つの問合せタームが、前記第２データベースに既に記憶されている前記他の問合せタームと異なると判定されたとき、前記第２データベースに新しい記録を生成し、該新しい記録に前記少なくとも１つの問合せタームと、前記少なくとも１つの問合せタームの問合せ識別フィールドを指すポインタとを記憶し、前記少なくとも１つの問合せタームが、前記第２データベースに既に記憶されている前記他の問合せタームと同一と判定されたとき、前記少なくとも１つの問合せタームを含む前記第２データベース内の記録を特定し、該特定された記録が、前記少なくとも１つの問合せタームの問合せ識別フィールドを指すポインタを含むように更新するステップと、
（ｄ）ドキュメントを受信するステップと、
（ｅ）前記ドキュメントの内容から抽出されたキーワードを含むドキュメントタームを生成するステップと、
（ｆ）前記中央サーバが、前記ドキュメントタームを前記第２データベースに記憶されている問合せタームと比較するステップと、
（ｇ）各個別の問合せに対して、前記ステップ（ｆ）において前記中央サーバが行った比較に基づいて、前記個別の問合せの前記少なくとも１つの問合せタームのすべてが満たされたかを判定するステップと、
（ｈ）各個別の問合せに対して、前記個別の問合せの前記少なくとも１つの問合せタームのすべてが満たされたとき、前記中央サーバが前記複数のユーザそれぞれに前記ドキュメントの到着についての通知を送信するステップと、
（ｉ）各個別の問合せに対して、前記個別の問合せの前記少なくとも１つの問合せタームのすべてが満たされたとき、前記ユーザ記録に含まれる指示フィールドが、前記複数のユーザそれぞれからの個別の問合せが満たされたことを示すように設定するステップと、
を有する方法。
【請求項２】
前記問合せタームに含まれるフィールドは予め定義された情報であり、前記ドキュメントタームに含まれる前記キーワードは該予め定義された情報に基づいて抽出される請求項１に記載の方法。
【請求項３】
前記キーワードは、前記ドキュメントのテキスト内容から抽出される請求項１に記載の方法。
【請求項４】
（ｊ）少なくとも１つの所定の条件が満たされたとき、前記第１データベースによって複数の更なるデータベースを生成するステップと、
（ｋ）前記複数の更なるデータベースのそれぞれに同時に前記（ｄ）−（ｉ）のステップを実行するステップと、
を更に有する請求項１に記載の方法。
【請求項５】
前記複数の更なるデータベースのうち１つが、前記複数の更なるデータベースのうち他のものとは異なる少なくとも１つの問合せタームを記憶する請求項２に記載の方法。
【請求項６】
（ｌ）前記複数の更なるデータベースのそれぞれについて、前記ドキュメントのコピーを生成するステップを更に有する請求項２に記載の方法。
【請求項７】
少なくとも、
前記ユーザの数が所定のユーザ数より多いか、
個別の問合せの個数が、所定の問合せ数より多いか、
ドキュメントの個数が、所定のドキュメント数より多いか、
前記少なくとも１つの問合せタームの個数が、所定の問合せターム数より多いか、
前記少なくとも１つの問合せ条件の個数が、所定の問合せ条件数より多いか、又は
前記少なくとも１つの満たされた条件の個数が、満たされた問合せ条件のある個数より多いときに、
前記少なくとも１つの所定の条件が満たされる請求項２に記載の方法。
【請求項８】
（ｍ）前記ユーザそれぞれに、個別の通知方法を関係付けるステップを更に有し、前記の通知ステップは、前記個別の通知方法を介して、前記ユーザそれぞれに通知するステップを含む請求項１に記載の方法。
【請求項９】
（ｎ）前記ユーザそれぞれが、前記個別の通知方法を選択するステップを更に有する請求項６に記載の方法。
【請求項１０】
前記個別の通知方法は、ファクシミリ送信、Ｅメールのメッセージ、及びページングの少なくとも１つを含む請求項６に記載の方法。
【請求項１１】
ドキュメントの到着を複数のユーザに通知するために、プロセッサによって実行され得る命令のセットを記憶するコンピュータ可読記憶媒体であって、該命令のセットは前記プロセッサによって実行されたとき、中央サーバに、
（ａ）前記複数のユーザそれぞれから、少なくとも１つの問合せタームをそれぞれ含む個別の問合せを受信するステップであって、各問合せタームはフィールド及びキーワードを含み、第１ユーザからの個別の問合せに含まれるフィールドは、第２ユーザからの個別の問合せに含まれるフィールドと異なるステップと、
（ｂ）前記複数のユーザそれぞれが、前記中央サーバの第１データベースにユーザ記録を記憶させるステップであって、該ユーザ記録は、前記複数のユーザそれぞれからの個別の問合せが満たされたかどうかを示すように構成された指示フィールドを少なくとも含む、ステップと、
（ｃ）各個別の問合せに対して、前記少なくとも１つの問合せタームが、第２データベースに既に記憶されている他の問合せタームと異なるかどうかを判定し、前記少なくとも１つの問合せタームが、前記第２データベースに既に記憶されている前記他の問合せタームと異なると判定されたとき、前記第２データベースに新しい記録を生成し、該新しい記録に前記少なくとも１つの問合せタームと、前記少なくとも１つの問合せタームの問合せ識別フィールドを指すポインタとを記憶し、前記少なくとも１つの問合せタームが、前記第２データベースに既に記憶されている前記他の問合せタームと同一と判定されたとき、前記少なくとも１つの問合せタームを含む前記第２データベース内の記録を特定し、該特定された記録が、前記少なくとも１つの問合せタームの問合せ識別フィールドを指すポインタを含むように更新するステップと、
（ｄ）ドキュメントを受信するステップと、
（ｅ）前記ドキュメントの内容から抽出されたキーワードを含むドキュメントタームを生成するステップと、
（ｆ）前記ドキュメントタームを前記第２データベースに記憶された問合せタームと比較するステップと、
（ｇ）各個別の問合せに対して、前記ステップ（ｆ）において行った比較に基づいて、前記個別の問合せの前記少なくとも１つの問合せタームのすべてが満足されているかどうかを判定するステップと、
（ｈ）各個別の問合せに対して、前記個別の問合せの前記少なくとも１つの問合せタームのすべてが満足されたとき、前記ユーザそれぞれに前記ドキュメントの到着についての通知を送信するステップと、
（ｉ）各個別の問合せに対して、前記個別の問合せの前記少なくとも１つの問合せタームのすべてが満たされたとき、前記ユーザ記録に含まれる指示フィールドが、前記複数のユーザそれぞれからの個別の問合せが満たされたことを示すように設定するステップと、
を実行させる、コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザの問合せに基づいてユーザにデータを供給するための方法及びシステムに関する。
【背景技術】
【０００２】
例えば証券会社や投資銀行のような金融研究のプロバイダは、投資家（例えば顧客、遠隔地の販売事務所、投資アドバイザー、仲買人、ポートフォリオマネージャーなど）に対して、グラフィックを豊富に含んだ研究レポートを作成し、印刷し更に配布するために多くの費用を費やしている。費用を削減しようとする研究プロバイダは、コンピュータからコンピュータへこれらのレポートを電子的に配布することを考えるであろう。電子的配布は一般に、ハードコピー配布方法に比べて費用の面で効率的である。例えばインターネットのような通信ネットワークは、世界各地の広い範囲の人々への情報の配布を可能とする。
【０００３】
この出願に参照として組み込まれるＫａｒａｅｖ等への米国特許第５，８０２，５１８号及びＭａｈｏｎｅｙ等への米国特許第５，８１９，２７１号は、電子的情報配布システムを記載しており、このシステムは遠隔地のユーザが、リポジトリサーバと呼ばれる中央サーバに電子形式で格納されている情報を受信し、これにアクセスし、かつ問合せすることを可能とする。ユーザは、例えばインターネットを介してリポジトリサーバと通信する。リポジトリサーバは、電子的形式で格納された情報の複数のデータベースを含みあるいはこれらと接続されている。
【０００４】
リポジトリサーバは一個又はそれ以上のコントリビュータワークステーションと接続されている。コントリビュータワークステーションから受信されたリポジトリサーバに格納される情報は、一個以上のドキュメントを含むファイルである。これらのドキュメントは通常、テキスト、データ、表、グラフ、表計算ソフト等、又はこれらの組み合わせを含んでおり、おそらく多くのフォーマットで構成されている。例えば写真、ビデオ、録音等の、デジタル形式で格納され得る如何なる情報も、コントリビュータワークステーションから受信したファイル中に格納することができる。コントリビュータワークステーションから受信したファイルは、中央サイトで、規定のフォーマット、例えば印刷可能なドキュメント、例えばＰＤＦフォーマットのような共通閲覧用フォーマットに変換され、その後リポジトリサーバに提供される。リポジトリサーバに提出された各ドキュメントは、そのドキュメントに関連する予め定義されたフィールドに基づいて組織された情報を含むドキュメントプロファイルを伴っていることがある。
【０００５】
各ユーザは、例えば、ペンティアム（登録商標）プロセッサとモデムを有するパーソナルコンピュータのようなユーザコンピュータを有している。ユーザコンピュータは、ローカル記憶装置を備えており、あるいは備えていない。ローカル記憶装置を持たないコンピュータの一例は、ネットワークコンピュータ、シンクライアント等である。ユーザはこのコンピュータを、例えばインターネット、イントラネット、エクストラネット及び／又はダイアルインアクセスを介してリポジトリサーバに接続する。
【０００６】
リポジトリサーバは、リポジトリサーバが最近受信しかつユーザがアクセスすることを認められている新しいドキュメントのリストを、ユーザに提供することができる。ユーザもまた、ユーザ自身の特定の探索範疇に適合するドキュメントのリストを要求することができる。その探索範疇に合致しかつユーザがアクセスすることを認められているドキュメントのリストは、ユーザコンピュータに提供される。ユーザはしたがって、これらのリストからドキュメントを選択し、要求しかつ見ることができる。
【０００７】
ウエブサーバは、リポジトリサーバ中の少なくとも２個のデータベースサーチエンジンに接続される。少なくとも１個のサーチエンジンが、テキストドキュメントの少なくともフルテキスト探索を実行する。少なくとももう１個のサーチエンジンが、少なくとも予め定義された情報フィールドを探索する。ユーザによってウエブサーバに探索が要求されると、どのような探索が要求されているのかが判定され、適切な問合せ（例えば予め定義されたフィールド上でのフルテキスト、探索）が構成され、適切なサーチエンジンに提出される。サーチエンジンは結果セットをウエブサーバに戻す。通常、結果セットは、問合せを満足するドキュメントであってかつユーザがアクセスすることを認められているドキュメントのリストを含んでいる。
【０００８】
例えば“ニュース”イベントのような外部イベントが発生した場合、ユーザ（例えば投資家）はそのニュースに適切に対応するために速やかに通知されねばならない。Ｋｒａｅｖの’５１８号特許及びＭａｈｏｎｅｙの’２７１号特許に記載されているシステムは、“格納された問合せ”方法を用いてユーザにイベントを通知している。“格納された問合せ”方法では、まずユーザの問合せを格納し、その後“格納された問合せ”を周期的に実行する。到着したドキュメントは既存の各ユーザプロファイルに対して整合される。各ユーザプロファイルは、例えばユーザが見ようと思うドキュメント又はニュースのタイプを識別する。この方法は、時間がかかる。したがって、ユーザの問合せに基づいてユーザにデータを提供する方法及びシステムの必要性が存在する。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】米国特許第５，８７３，０８１号明細書
【特許文献２】特開平６‐３２５０９３号公報
【特許文献３】特開平７‐３３４５２２号公報
【発明の概要】
【課題を解決するための手段】
【００１０】
本発明はドキュメントの到着をユーザに通知するための方法及びシステムを提供する。各問合せは各ユーザそれぞれから受信される。各問合せそれぞれは、少なくとも一個の問合せタームと少なくとも一個の問合せ条件を含んでいる。各問合せそれぞれに対して、少なくとも一個の問合せタームのそれぞれは、データベース中に格納されているほかの問合せタームに対してその一個の問合せタームがユニークである場合のみ、データベース中に格納される。
【００１１】
そのドキュメントに関連したドキュメントタームを含むドキュメントが受信される。ドキュメントタームは格納された問合せタームと比較される。各問合せそれぞれに対して、それぞれの問合せの少なくとも一個の問合せ条件のすべてが、ドキュメントタームと格納された問合せタームとの間の比較によって満足し得るか否かが決定される。各問合せそれぞれに対して、それぞれの問合せの少なくとも一個の問合せ条件のすべてが満足される場合、それぞれのユーザはドキュメントの到着を通知される。
【図面の簡単な説明】
【００１２】
【図１】本発明にかかるシステムの例示的実施形態を示す図である。
【図２】本発明にかかるシステムの別の例示的実施形態を示す図である。
【図３ａ】ドキュメント管理データベースの例示的実施形態を示す図である。
【図３ｂ】図３ａに示すドキュメント管理データベースのドキュメントタームを示す図である。
【図４ａ】ユーザプロファイルデータベースの例示的実施形態を示す図である。
【図４ｂ】図４ａに示すユーザプロファイルデータベースの問合せタームを示す図である。
【図５ａ】有限オートマトンデータベースの例示的実施形態を示す図である。
【図５ｂ】図５ａに示す有限オートマトンデータベースのＦＡＤタームを示す図である。
【図６】本発明にかかる方法の例示的実施形態を示す図である。
【図７】本発明にかかる有限オートマトンデータベースを生成するための方法の例示的実施形態を示す図である。
【図８】システムの効率を最適化するための方法の例示的実施形態を示す図である。
【図９】本発明にかかるシステムの別の例示的実施形態を示す図である。
【発明を実施するための形態】
【００１３】
＜全体的概観＞
図１は、本発明の例示的実施形態にかかるシステム１の全体的アーキテクチャーを示す。システム１は、ユーザコンピュータ１０とコントリビュートリワークステーション１５にネットワーク１２を介して接続された中央サーバ２を含む。通信ネットワーク１２は、例えば、インターネット、イントラネット、エクストラネット、従来からの電話ネットワーク、無線ネットワーク、ローカル又はワイドエリアネットワーク、仮想ネットワーク等を含んでいる。
【００１４】
コントリビュートリワークステーション１５におけるコントリビュータは、ドキュメント（例えば、データ、リサーチ等）をネットワーク１２を介して中央サーバ２に提供する（即ちコントリビュートする）。中央サーバ２はドキュメントを受信しかつ格納する。本発明に従って、新しく受信したドキュメントがユーザコンピュータ１０におけるユーザの興味を引いた場合、更にそのユーザがそれにアクセスすることを許されている場合、中央サーバ２はユーザに、規定の通知手続きに従って中央サーバ２にドキュメントが存在することを通知する。一旦ユーザが通知を受信すると、ユーザはネットワーク１２を介して中央サーバ２にアクセスし特定のドキュメントを検索することができる。
【００１５】
ここで使用されているように、“ユーザ”という用語は、本発明を介して情報（及び／又は通知）を受信し又はアクセスすることを許されている如何なるエンドユーザをも含み、これらは例えば、証券会社及び投資銀行の顧客、証券会社及び投資銀行の従業員、投資アドバイザー、ブローカー、銀行家、ポートフォリオ及びファンドマネージャ、ジャーナリスト、アナリスト、経済学者、大学教授、ＭＢＡの学生などである。勿論、本発明は、金融研究を提供するシステムにおける利用に限定されない。したがって、ユーザは、アクセス権を有するすべてのエンドユーザであってよい。更に、ドキュメントはコンピュータ装置、取引プログラム、報道機関、銀行、政府機関、等に提供できるものであることに注意する必要がある。
【００１６】
システム１の中央サーバ２は、少なくとも一個の記憶装置８５、プロセッサ８０（メモリ及びそのほかの周辺装置）及び通信設備８７（例えばモデム、ネットワークインターフェースカード等）を含むことができる。記憶装置８５は、ドキュメント管理データベース（“ＤＭＤ”）２００、ユーザプロファイルデータベース（“ＵＰＤ”）２２０及び有限オートマトンデータベース（“ＦＡＤ”）２５０を含むことができる。これらは以下に詳細に説明される。
【００１７】
＜ドキュメント管理データベース＞
ドキュメント管理データベースすなわちＤＭＤ２００は、ネットワーク１２を介してコントリビュートリワークステーション１５から受信したドキュメント及びドキュメント関連情報を記憶する。特に、図３ａを参照すると、ＤＭＤ２００は複数のドキュメント記録２０１を記憶する。ＤＭＤ２００の各ドキュメント記録２０１は、例えば参照フィールド２０５、ドキュメントフィールド２１０及び構築記録２１５を含んでもよい。参照フィールド２０５は、各ドキュメントに割り当てられる固有のドキュメント参照番号を含む。
【００１８】
ドキュメントフィールド２１０は、実際のドキュメントを含む。このドキュメントは、例えばニュースの話題、研究報告、朝の会議の原稿など、どのような既定データを含んでもよい。このドキュメントは、テキスト、データ、チャート、グラフ、スプレッドシートなど、もしくはそれらの組合せを含むことができ、また、たくさんの形式をとり得る。写真、ビデオ、音声録音物などの、デジタル形式で記憶できる情報を、ドキュメントに結びつけることができることは理解できよう。ドキュメントが適当にフォーマットされない場合は、中央サーバ２は、このドキュメントを、所定のフォーマットに変換してもよく、例えば、印刷可能なドキュメントに対して言えば、例えばＰＤＦフォーマットのような共通閲覧用フォーマットに変換してもよい。
【００１９】
中央サーバ２へ提出された各ドキュメントは、構造化レコード２１５に記録されたドキュメントプロファイルを付随させてもよい。ドキュメントプロファイルは、少なくとも１つのドキュメントターム３００に従って組織された情報を含む。図３ｂは、ドキュメントターム３００の典型的な実施例を示しており、このドキュメントターム３００は、例えば２つのフィールド、すなわち、第１ドキュメントフィールド３０５及び第２ドキュメントフィールド３１０を含んでもよい。第１ドキュメントフィールド３０５は既定フィールドを含むことができ、第２フィールド３１０はドキュメントから抽出されたキーワードを含むことができる。例えば、特定のタームがＩＢＭ（登録商標、以下同じ）社のことを言っている場合、この既定フィールドは「会社」であり、キーワードは「ＩＢＭ」ということになろう。ドキュメントターム３００は、「（会社（ＩＢＭ））」、「会社＝ＩＢＭ」あるいは「会社；ＩＢＭ」というように表せる。
【００２０】
既定フィールドは、例えば、株式のシンボル、会社名、特有の産業、地理上の位置、日付、ドキュメントタイプ、ドキュメントテキストなどでよい。当業者であれば、上記でリストされたものは典型的なものであって、ほかのフィールドについても想像できることが理解できよう。フィールドの利用可能性（ａｖａｉｌａｂｉｌｉｔｙ）は、例えばドキュメントのタイプに依存しており、所定の手順に従って瞬時に調整してもよい。
【００２１】
本発明は、既定フィールドに限定されるものではない。（複数の）さらなる既定フィールドを、ユーザに利用可能であってもよい。さらなる既定フィールドは、ドキュメントのどんな部分内におけるあるテキストを含んでもよい。それゆえ、中央サーバ２は、付随させたドキュメントプロファイルを補正することで、ドキュメントプロファイルを提供するコントリビュートリワークステーション１５によっては利用できない、さらなる既定フィールドを含めてもよい。更に、中央サーバ２に提出されたドキュメントにドキュメントプロファイルが全く付随しない場合は、中央サーバ２は、（複数の）既定フィールドと、（複数の）さらなる既定フィールドとを解析することによってドキュメントプロファイルを生成し、ドキュメントから対応する（複数の）キーワードを生成してもよい。
【００２２】
図３ａに示されるように、ドキュメント記録２０１は、例えば、「１０１０９４；ＩＢＭ．ｗｐｄ；シンボル（ＩＢＭ）、産業（ハードウェア）」を含んでもよい。ドキュメント記録２０１は、ドキュメント参照番号が１０１０９４であること、及び、ドキュメントがファイルＩＢＭ．ｗｐｄとして記憶装置８５に記憶されていることを示している。更に、ドキュメント記録２０１は、ドキュメントが、ドキュメントターム３００「シンボル（ＩＢＭ）、産業（ハードウェア）」を含むこと示している。
【００２３】
＜ユーザプロファイルデータベース＞
記憶装置８５は、ユーザプロファイルデータベースすなわちＵＰＤも記憶する。このＵＰＤは、各ユーザに関する特定情報を含む。図４ａは、ＵＰＤ２２０の例示的な実施例を示しており、このＵＰＤ２２０は、複数のユーザ記録２２１を含んでいる。各ユーザ記録２２１は、例えば４つのフィールド、すなわち、ユーザ識別フィールド２２５、問合せ識別フィールド２２８、問合せフィールド２３０及び通知フィールド２３５を含んでもよい。
【００２４】
ユーザ識別フィールド２２５は、ユーザを識別するための、ある所定の情報を含んでもよい。この情報は、例えば、ユーザの一意識別情報及び対応するパスワードを含んでもよい。更に、ユーザのアクセス権限を含んでもよい。図４ａは、２つのユーザ記録の例を示しており、一つはユーザ「ＸＹＺ」に関連し、もう一つはユーザ「ＡＢＳ」に関連する。
【００２５】
各ユーザ記録は、「ユーザ問合せ」を含んでもよく、このユーザ問合せは、例えばユーザが通知を受信したいドキュメントを選択する基準を論理表現形式で記述したものである。例えば、ユーザＸＹＺは、銘柄識別子（ticker symbol）であるＩＢＭとハードウェア産業とに関連する新しく届いた全ドキュメントの通知を受信することに興味がある。したがって、ユーザＸＹＺのユーザ記録に関連する問合せフィールド２３０は、例えば、論理表現「シンボル（ＩＢＭ）ＡＮＤ産業（ハードウェア）」を含むであろう。
【００２６】
この場合、「シンボル」は、既定のドキュメントタームである。例えば、ドキュメントの投稿者は、ドキュメントが銘柄識別子「ＩＢＭ」に関連することをドキュメントプロファイルに明記する。
【００２７】
しかし、ユーザ記録内の問合せは、既定のドキュメントタームに制限されない。例えば、問合せフィールド２３０内のほかの論理表現は、ドキュメント内のどこかに「ＩＢＭ」を含むあらゆるドキュメントの通知を受信することにユーザは興味があることを示す「テキスト（ＩＢＭ）」であってもよい。
【００２８】
ユーザ問合せは、一意の識別子が付されてもよい。図４ａに例示されるように、例えば、ユーザＸＹＺの問合せは、ユーザＸＹＺのユーザ記録の問合せ識別フィールド２２８に記憶され得る「１０１９１」が付される。
【００２９】
ユーザ記録は、各ユーザに対するいくつかのユーザ問合せを含んでもよい。図４ａに示されるように、例えば、ユーザＡＢＳについてのユーザ記録は、３つの問合せを含み、そのそれぞれは、固有の識別番号を有する。問合せ６７１９０は表現「シンボル（ＩＢＭ）」を含み、問合せ２６９８は表現「シンボル（ＡＰＰＬ）」を含み、問合せ１１０６７６は表現「シンボル（ＺＳＥ）」を含む。
【００３０】
通知フィールド２３５は、興味のあるドキュメントを中央サーバ２が受信したときをユーザに通知するために実行される特定の通知手順をユーザが示すことができるデータを含む。例えば、Ｅメール、ファックス、電話、無線通信などを介してユーザに通知することができる。ユーザは、特定の問合せに対し特定の通知メッセージを明記することができる。この通知メッセージは、例えば、ドキュメントタイトル、問合せターム３００、日付、ドキュメント参照番号などを含んでもよい。
【００３１】
この通知手順は、所定の状態の存在に従って変化してもよい。例えば、ドキュメントがある緊急情報を含む場合、ファックスを介してユーザに通知し、さもなければｅメールによってユーザに通知することができる。更に、リアルタイムに、周期的に、及び／又は所定のスケジュールに従って、ユーザに通知してもよい。更に、通知の形式は、できるだけ簡単に、ドキュメントのドキュメント番号及び到着時間を提供するか、ドキュメントそのもののコピーを提供することによる。通知の「タイミング」情報及び通知の「形式」情報は、例えば、各ユーザ記録に従ってＵＰＤ２２０に記憶しても、あるいは、別個のファイルもしくはデータベースに記憶してもよい。
【００３２】
図４ａに示すように、ユーザＸＹＺは、アドレス「ｕｓｅｒｘｙｚ＠ＸＹＺ．ｃｏｍ」へのＥメールメッセージを介して、問合せ「１０１９１」を満たすドキュメントを通知することを好む。加えて、ユーザＡＢＳは、ページャ（電話番号９１７−２０９−８８８８）を介して、問合せ「６７１９０」を満たすドキュメントを通知することを好む。ユーザＡＢＳはまた、ファックス送信（ファックス番号２１２−４２５−５１８８）を介して、問合せ「２６９８」もしくは「１１０６７６」を満たすドキュメントを通知することを好む。
【００３３】
ユーザはＵＰＤ２２０を更新できる。ユーザは、ネットワーク１２を介して中央サーバ２にアクセスすることができる。例えば適切な識別情報及びパスワードを提供したとき、中央サーバ２は、ユーザ（あるいは、そのユーザが例えばシステム管理者ならばほかのユーザ）に関連するユーザ記録２２１を、ユーザが生成し更新できるようにする。
【００３４】
上述のように、ユーザ問合せは、論理表現の形式をとる。図４ｂは、問合せターム３２０が、３つの部分、すなわち、第１問合せフィールド３２５、第２問合せフィールド３３０及び第３問合せフィールド３３５を実際に含んでもよいことを示している。上述のように、第１問合せフィールド３２５は、既定フィールド（あるいは、例えば「テキスト」のような「既定されていないフィールド」のターム）を含み、第２問合せフィールド３３０は特定のキーワードを含んでもよい。論理表現が１つより多い問合せターム３２０を有する場合、問合せターム３２０を、少なくとも１つの論理結合子（例えば、ＡＮＤ、ＯＲ、ＮＯＴなど）を使って結合してもよい。
【００３５】
第３の問合せフィールド３３５は、「１」もしくは「０」を含んでもよく、ここで、「１」は「真」を表し、「０」は「偽」を表す。デフォルトとして、ＵＰＤ２３０の問合せターム３２０のすべてが「０」に設定される。例えば、問合せターム３２０は、「シンボル；ＩＢＭ；０」を含んでもよく、これは、ユーザがシンボルＩＢＭを含む特定のドキュメントを検索していること、及び、この問合せタームは、検索されたドキュメントには見つからなかったことを示す。
【００３６】
＜有限オートマトンデータベース＞
記憶装置８５は、有限オートマトンデータベース（「ＦＡＤ」）２５０を記憶することもできる。ＦＡＤ２５０は、新しく受信されたドキュメントについてどのユーザに通知すべきかをシステムが迅速かつ効果的に判定することができる手段を提供するものである。ＦＡＤ２５０は、例えば、すべての（もしくは一部の）ユーザに対し検索タームを組み合わせることで、新しく受信されたドキュメントを迅速に処理することができる。
【００３７】
図５ａに示されるように、ＦＡＤ２５０は、複数のＦＡＤ記録２５１を含む。各記録２５１は、例えばタームフィールド２５５及びポインタフィールド２６０を含む。図５ｂに示されるように、ＦＡＤターム３５０は、第１問合せフィールド３２５（既定フィールド）、及び、問合せターム３２０の第２問合せフィールド３３０（キーワード）を含む。本発明の典型的な実施例によれば、ＦＡＤターム３５０は重複しない。ポインタフィールド２６０は、ＵＰＤ２２０の対応する問合せの問合せ識別フィールド２２８のポインタを記憶する。
【００３８】
図７は、本発明によるＦＡＤ２５０を生成する方法の典型的な実施例を示す。ユーザは、新しい問合せターム３２０の追加及び／又は既存の問合せターム３２０の削除によって、ＵＰＤ２２０を更新することができる（ステップ７００）。既存の問合せターム３２０のユーザ変更は、既存の問合せターム３２０の削除及び新しい問合せターム３２０の追加として解釈できる。
【００３９】
本発明の代表的な実施例によれば、もしユーザがＵＰＤ２２０（ステップ７０５）から既存の問合せ３２０を削除すると、中央サーバ２はＦＡＤ２５０の対応するＦＡＤレコード２５１がポインタフィールド２６０（ステップ７１５）に記憶された一つのポインタを有するか否かを判断する。ポインタフィールド２６０が１つのポインタだけを有する場合、それは対応するＦＡＤレコード２５１がユーザによって削除された問合せターム３２０だけを指示していることを示す。その結果、削除された問合せターム３２０に対応するＦＡＤレコード２５１が削除される（ステップ７２０）。ポインタフィールド２６０が一つ以上のポインタを有する場合には、削除された問合せターム３２０のポインタはポインタフィールド２６０から削除される（ステップ７２５）。
【００４０】
もし、ユーザが新たな問合せターム３２０をＵＰＤ２２０（ステップ７１０）に追加すると、中央サーバ２はすでにＦＡＤ２５０に存在するタームに対して新問合せタームの比較を行なう（ステップ７３５）。新問合せターム３２０がＦＡＤ２５０に存在しない場合、新ＦＡＤレコード２５１が生成される（ステップ７４０）。新ＦＡＤレコード２５１は第１の問合せフィールド３２５及び新問合せターム３２０の第２の問合せフィールド３３０を含んでもよい。更に、新問合せターム３２０の問合せ識別子はポインタフィールド２６０に記憶される。
【００４１】
しかしながら、ＦＡＤがすでに新問合せターム３２０を含む既存のＦＡＤレコード２５１を有する場合に、新ＦＡＤレコード２５１は生成されない（ステップ７３５）。その代わり、既存のＦＡＤレコード２５１のポインタフィールド２６０が更新される。特に、既存のＦＡＤレコード２５１のポインタフィールド２６０は、新問合せターム３２０の問合せ識別フィールド２２８を指示する追加のポインタを含んでもよい。
【００４２】
ＦＡＤ２５０は、（例えば、新問合せターム３２０の生成、及び／又は既存の問合せターム３２０の削除に関して）即座に更新される。ＦＡＤ２５０は、また周期的に更新されてもよく、又はバッチ処理において例えば１日に一度更新されてもよい。
【００４３】
＜新たなドキュメントの受信＞
図６は、コントリビュートリワークステーションから新ドキュメントを受信する際に図１のシステム１によって実行される代表的な処理を示している。
【００４４】
（例えば、ＩＢＭに関するある情報を含む）特定のドキュメントは、中央サーバ２によってコントリビュートリワークステーション１５から受信される。ドキュメントはネットワーク１２を介して受信されても、別に中央サーバ２に人手を使って配送されてもよい。
【００４５】
ひとたび、ドキュメントが受信されると、中央サーバ２はＤＭＤ２００内に新ドキュメントレコード２０１を生成する（ステップ６０５）。特に、前記ドキュメントは新ドキュメントレコード２０１のドキュメントフィールド２１０に記憶される。更に、参照番号がそのドキュメントに割り当てられ、ドキュメントレコード２０１の参照フィールド２０５に記憶される。ドキュメントプロファイルは、構築されたレコード２１５に記憶されるドキュメントターム３００（例えば、“シンボル（ＩＢＭ）”）を含むことができる。
【００４６】
中央サーバ２は、ＵＰＤ２２０の第３の問合せフィールド３３５のすべてを失敗として“０”に設定する（ステップ６１０）。次に、中央サーバ２は、ＦＡＤ２５０に記憶されたＦＡＤタームに対するドキュメントターム３００（例えば、“シンボル（ＩＢＭ）”）をチェックし（図５ａ参照）、それらが同じかどうか判断する（ステップ６１５）。もし、ドキュメントターム３００の第１ドキュメントフィールド３０５の内容がＦＡＤターム３５０の定義済みのフィールドと同じであり、且つ第２ドキュメントフィールド３１０の内容がＦＡＤターム３５０のキーワードと同じならば、ドキュメントターム３００はＦＡＤターム３５０と同一である。例えば、ドキュメントターム３００（“シンボル（ＩＢＭ）”）及びＦＡＤターム３５０（“シンボル（ＩＢＭ）”）は、同じ定義済みのフィールド“シンボル”と同じキーワード“ＩＢＭ”とを有する。したがって、ドキュメントターム３００とＦＡＤターム３５０とは同一である。
【００４７】
ドキュメントターム３００がＦＡＤターム３５０と同じ場合、（問合せターム３２０の第３問合せフィールド３３５に記憶された）ＦＡＤターム３５０に対応する評価タームは“１”に設定される（ステップ６２０）。さもなければ、評価タームは“０”のままである（ステップ６２５）。特に、問合せターム３２０とＦＡＤターム３５０との間のリンクが、ＦＡＤターム３５０のポインタフィールド２６０に記憶されたポインタを使って確立される。このポインタフィールド２６０は、ＵＰＤ２２０の何れの特定の問合せがドキュメント３００と同じＦＡＤターム３５０を含むかを指示する。
【００４８】
例えば、一旦中央サーバ２が、ＦＡＤターム３５０“シンボル（ＩＢＭ）”がドキュメントターム３００“シンボル（ＩＢＭ）”と同じであると判断すると、中央サーバ２はＦＡＤターム３５０“シンボル（ＩＢＭ）”のポインタフィールド２６０をチェックする。ポインタフィールド２６０（図５ａ参照）は、ＵＰＤ２２０の問合せ１０１９１及び問合せ６７１９０へのポインタを含む（図４ａ参照）。問合せ１０１９１及び６７１９０の対応する“シンボル（ＩＢＭ）”の評価タームは“１”に設定される。
【００４９】
すべてのドキュメントターム３００がチェックされると、中央サーバ２は評価処理を初期化する。中央サーバ２はＵＰＤ２２０のすべてのドキュメント問合せをチェックし、ドキュメント問合せの論理表現が有効か否かを判断する（ステップ６３０）。例えば、中央サーバ２は、ＵＰＤ２２０の問合せ１０１９１、６７１９０、２６９８、及び１１０６７６をチェックする（図４ａ参照）。この場合、問合せ６７１９０の論理表現だけが有効である。なぜなら、それがドキュメントターム３００“シンボル（ＩＢＭ）”と同じ唯一つのターム“シンボル（ＩＢＭ）”を含むからである。ここで、ドキュメントが問合せターム３００“産業（ハードウェア）”と同じドキュメントタームを含まないため、問合せ１０１９１は無効とされることに注意されたい。
【００５０】
ドキュメント問合せの論理表現が有効な場合、中央サーバ２は通知処理を初期化できる（ステップ６３５）。特に、中央サーバ２は問合せ６７１９０と関連するユーザへの通知処理を初期化できる。
【００５１】
前記通知処理は、通知フィールド２３５に記憶されたユーザの選択に基づいて、ユーザが関心を持つドキュメントがシステム１によって受信されたことをユーザに通知する。中央サーバ２は、ユーザ識別、ドキュメント引用番号、等（又は、ドキュメント自体）を含む通知メッセージを転送してもよい。一旦、ユーザに通知されると、そのユーザは、例えばネットワーク１２を介して、ドキュメントにアクセスすることができる。問合せ６７１９０を行なったユーザＡＢＳへの通知は、ページャ９１７−２０９−８８８８によって送信されてもよい。
【００５２】
システム１は、従来のキュー（例えば、マイクロソフト（登録商標）のメッセージキュー（ＭＳＭＱ）を使って生成される）を利用してもよく、一時的にそれに新たなドキュメント、ユーザの問合せ、等を記憶する。キューは、例えば到着する新ドキュメントの量が所定の量を超えるときに利用される。キューは、例えばネットワーク１２と中央サーバ２との間で新ドキュメントを記憶するため、システム１のいかなる規定された位置にも挿入され得る。
【００５３】
キューを利用するシステム１の利点は、システム１がそのコンポーネントの間の最適なバランスをとることができる点である。更に、例えばそのコンポーネントのどこかが一時的に障害となったときも、システム１の確実性や信頼性が増大する。障害において、障害コンポーネントの正常動作が回復した後の処理のために、キューは到着するドキュメントを蓄積できる。
【００５４】
（代替実施例）
本発明による別の代表的な実施例において、システム１’は複数のサーバを含む。特に、図２に示すように、システム１’は通信ネットワーク１２を介してユーザコンピュータ１０及びコントリビュートリワークステーション１５と通信する中央サーバ２’を含む。中央サーバ２’はＤＭＤ２００を記憶する。システム１’は、またユーザの通知処理を含むユーザ通知プリファレンスデータベース（“ＵＮＰＤ”）を記憶するプリファレンスサーバ７を含む。特に、ＵＮＰＤは、問合せ識別フィールド２２８と通知フィールド２３５とを含む。
【００５５】
更に、システム１’は、ユーザプロファイル問合せデータベース（“ＵＰＱＤ”）を記憶するプロファイルサーバ５を含む。ＵＰＱＤは識別フィールド２２５、問合せ識別フィールド２２８、及び通知フィールド２３５を含む。プロファイルサーバ５は、またＵＰＱＤの機能としてＦＡＤ２５０を生成する。
【００５６】
システム１’のマッチャサーバ２０は、一致生成のためにＦＡＤ２５０のＦＡＤターム３５０に対するＤＭＤ２００のドキュメントタームの比較を行う。マッチャサーバ２０は、何れのＵＰＱＤの論理表現が有効かを判断する。システム１’の通知サーバ２５は、論理表現を満足するユーザの問合せに対して対応するＵＮＰＤの通知処理を実行する。通知サーバ２５は、Ｅメールサーバ３０、ファックスサーバ３５、及び／又はページャサーバ４５を使って通知処理を実行する。
【００５７】
（別の実施例）
別の実施例では、システム１（及び／又はシステム１’）は、その性能を最適化するために自己モニター動作を含む方法を実行することが可能である。図８は、その最適化方法の実施例を示す。システム１は、自己モニター動作を実行して、それが所定の負荷しきい値に到達したか判定する（ステップ８００）。所定の負荷しきい値は、例えば、所定のボリュームのドキュメント、所定のボリュームのユーザ問合せ、所定のボリュームの一致、又は所定のボリュームの通知メッセージによって判定できる。
【００５８】
所定の負荷しきい値に到達したら（ステップ８０５）、システム１は所定の方法に従ってそれ自体を調整する（ステップ８１０）。特に、システム１は複数のミラーイメージシステムを生成でき、各ミラーイメージシステムはＤＭＤ２００、ＵＰＤ２２０及びＦＡＤ２５０を含むことができる。複数のミラーイメージシステムのそれぞれは、データベース２００，２２０，２５０の同一のコピーを有し、システム１の機能と同一の機能を実行することが可能である。各ミラーイメージシステムは、同時に（すなわち、並列に）動作することが可能である。このように、ミラーイメージシステムを使用することにより、リアルタイムのマッチングと通知の最適化が可能になる。
【００５９】
もし所定ボリュームのドキュメントが検出されたら、システム１は所定数のミラーイメージシステムを生成する。各ミラーイメージシステムは、ＵＰＤ２２０及びＦＡＤ２５０と同一のコピーを有しているが、ＤＭＤ２００は異なる。システム１のＤＭＤ２００は、例えば、ミラーイメージシステムの間で分割される。
【００６０】
同様に、所定のボリュームのユーザ問合せが検出されたら、システム１のユーザ問合せはミラーイメージシステムの間で分割される。更に、所定のボリュームの一致が検出されたら、システム１のＤＭＤ２００、ＵＰＤ２２０及びＦＡＤ２５０は、所定の方法に従って、ミラーイメージシステムの中で分割される。所定のボリュームの通知メッセージが検出されたら、通知の選択及び／又はＵＰＤ２２０はミラーイメージシステムの中で分割される。
【００６１】
システム１の特定のデータベースが等しく分割される必要のない点に注目する必要がある。替わりに、システム１の特定のデータベースは、所定の方法で分割されればよい。データベースのこのような分割の利点は、システム１の性能を最適化することである。図９は、本発明の、単一のＤＭＤ２００と複数のＵＰＤ２２０及びＦＡＤ２５０を有するシステム１”の更に別の実施例を示す。ＵＰＤ２２０及びＦＡＤ２５０は、単一のデータベースセットに結合される。各データベースセット及び／又は特定のデータベースは、中央サーバ２の記憶装置８５又は分離したサーバに記憶される。
【００６２】
上記のように、システム１”の各データベースセットは、ＵＰＤ２２０ｘ及び対応するＦＡＤ２５０ｘを有する。例えば、システム１”は、ＵＰＤ２２０Ａ及び対応するＦＡＤ２５０Ａを有するデータベースセットＡ、ＵＰＤ２２０Ｂ及び対応するＦＡＤ２５０Ｂを有するデータベースセットＢ、及びＵＰＤ２２０Ｃ及び対応するＦＡＤ２５０Ｃを有するデータベースセットＣを有する。ＵＰＤ２２０Ａ、２２０Ｂ及び２２０Ｃの組み合わせは、例えば、システム１のＵＰＤ２２０と同一である。
【００６３】
システム１”は、（例えば、上記のように）所定の負荷しきい値に達したときに、複数のデータベースセットを生成してもよい。例えば、所定のボリュームのユーザ問合せが検出されたら、システム１”はデータベースセットＡ，Ｂ及びＣを生成する。システム１”は、所定の方法に従って、ＵＰＤ２２０をＵＰＤ２２０Ａ，２２０Ｂ及び２２０Ｃに分割／分離する。ＵＰＤ２２０Ａ，２２０Ｂ及び２２０Ｃに基づいて、対応するＦＡＤ２５０Ａ，２５０Ｂ及び２５０Ｃが生成される。
【００６４】
ユーザが新しい問合せを出すと、新しい問合せは所定の条件に従って特定のデータベースセットに割り当てられる。例えば、ＵＰＤ２２０Ａが過負荷ならば（例えば、データベースセットＡの特定のパラメータが、ユーザ問合せ、ユーザプロファイル、有効論理表現などを超えたら）、新しい問合せがＵＰＤ２２０Ｂに割り当てられる。続いて、システム１”は、上記の所定の方法に従って、新しい問合せを伴うＦＡＤ２５０Ｂを生成する。
【００６５】
もし存在するデータベースセットＡ，Ｂ及びＣのすべてが過負荷であれば、システム１”はデータベースセットＡ，Ｂ及びＣと同一の構造を有する付加データベースセットＤを生成する。ＵＰＤ２２０Ｄ及びＦＤ２５０Ｄを有するデータベースセットＤは、新しい問合せを記憶する。更に、ＵＰＤ２２０Ａ，２２０Ｂ及び２２０Ｃの所定数の特定の問合せは、ＵＰＤ２２０Ｄに送られてシステム１”の性能を最適化する。例えば、システム１”は、特定のユーザの問合せ又は単一のデータベースセットにおいて同一のタームを有する問合せを記憶する。
【００６６】
システム１”は、システム１”の現在の（例えば、リアルタイムの）負荷に応じて、データベースセットの個数を増加させる。同様に、システム１”は、特定のデータベースセットの負荷が別の所定のしきい値負荷より小さければ、データベースセットの個数を削除するか又は調整する。例えば、データベースセットＡが１０００個の問合せを有し、データベースセットＢが８０００個の問合せを有し、データベースセットＣが３００個の問合せを有するならば、システム１”は、データベースセットＡ，Ｂ，Ｃのそれぞれが１１００個の問合せを有するように調整する。又は、システム１”は、データベースセットＣを除去し、データベースセットＡとＢの間で問合せを分割する。
【００６７】
従来のシステムと比較したときの本発明の１つの利点は、ユーザの問合せを順番に実行する替わりに並列に実行するシステム１の能力である。実際に、本発明は同時にユーザの問合せのマッチングを行うことを可能にする。これは、大きなボリュームの特定のドキュメント及びユーザの問合せを取り扱うシステムで有用である。
【図１】
0005395239.tif 000002
【図２】
0005395239.tif 000003
【図３ａ】
0005395239.tif 000004
【図３ｂ】
0005395239.tif 000005
【図４ａ】
0005395239.tif 000006
【図４ｂ】
0005395239.tif 000007
【図５ａ】
0005395239.tif 000008
【図５ｂ】
0005395239.tif 000009
【図６】
0005395239.tif 000010
【図７】
0005395239.tif 000011
【図８】
0005395239.tif 000012
【図９】
0005395239.tif 000013