JP4812747B2 - 情報を取り込み抽出する方法及びシステム - Google Patents

情報を取り込み抽出する方法及びシステム Download PDF

Info

Publication number
JP4812747B2
JP4812747B2 JP2007506583A JP2007506583A JP4812747B2 JP 4812747 B2 JP4812747 B2 JP 4812747B2 JP 2007506583 A JP2007506583 A JP 2007506583A JP 2007506583 A JP2007506583 A JP 2007506583A JP 4812747 B2 JP4812747 B2 JP 4812747B2
Authority
JP
Japan
Prior art keywords
event
article
events
computer
processor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2007506583A
Other languages
English (en)
Other versions
JP2007534057A5 (ja
JP2007534057A (ja
Inventor
ローレンス,スティーブン,アール.
マーマロス,デビッド
ワン,ニニアン
カーン,オマー,ハビブ
イオネスク,ミハイ,フローリン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US10/814,773 external-priority patent/US7941439B1/en
Application filed by Google LLC filed Critical Google LLC
Publication of JP2007534057A publication Critical patent/JP2007534057A/ja
Publication of JP2007534057A5 publication Critical patent/JP2007534057A5/ja
Application granted granted Critical
Publication of JP4812747B2 publication Critical patent/JP4812747B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9532Query formulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9538Presentation of query results

Description

本発明は検索エンジンに関連する。本発明は、特に、情報を取り込み抽出する方法及びシステムに関連する。
ユーザは、パーソナルコンピュータ、携帯情報端末、あるいは携帯電話等のクライアント装置により、電子メール、ウェブページ、ワープロ文書、スプレッドシート文書、インスタント・メッセンジャのメッセージ、及びプレゼンテーション文書等、多数のアーティクルを生成し、アクセスする。クライアント装置に連結され、クライアント装置によりアクセス可能であり、あるいは関連付けられている一以上の記憶装置上に記憶されているアーティクルもある。ユーザは、アーティクルを探して記憶装置上を検索したい場合がある。
従来のクライアント装置の検索アプリケーションは、クライアント装置のパフォーマンスを著しく低下させる場合がある。例えば、ある従来のクライアント装置検索アプリケーションは、一般的に、バッチ処理により全アーティクルをインデックス化するが、これにより、バッチ処理が行われている間、クライアント装置のパフォーマンスが著しく遅くなるおそれがある。更に、バッチ処理は周期的にのみ行われる。したがって、ユーザが検索を行うと、最も新しいアーティクルが結果に含まれない場合がある。更に、クライアント装置が動作していない時にスケジュール設定されていないためにバッチ処理が長期間行われない場合、クライアント装置に関連するアーティクルのインデックスは古くんってしまうことがある。また、従来のクライアント装置検索アプリケーションは、バッチ処理毎にインデックスを再構築したり、部分的なインデックスを新しく構築してクライアント装置のリソースを使用し得るマージ作業を行ったりしなければならない場合がある。また、従来のクライアント装置検索アプリケーションは、動作中に多大なシステムリソースを使用する場合があり、この結果、クライアント装置のパフォーマンスが遅くなる。
更に、従来のクライアント装置検索アプリケーションは、結果を生成するためにユーザからの明示的な検索クエリを必要とする場合があり、特定のアプリケーションファイルのファイル名や内容の調査に限定されてしまう場合がある。
本発明の実施例は、情報を取り込み、抽出する方法及びシステムから成る。一実施例において、検索エンジンは、クライアント装置上のアーティクルであって複数のクライアント・アプリケーションのうち少なくとも1のアプリケーションに関連付けることが可能なアーティクルとユーザの対話から成るイベントの発生時に該イベントをリアルタイムで取り込み、前記イベントをインデックス化するべきか否か決定し、前記イベントをインデックス化するべきである場合、前記イベントをインデックス化し、前記イベント及び前記アーティクルに関連する内容の少なくとも一部を記憶する方法を実施する。別の実施例において、検索エンジンは、クライアント装置上で発生する複数のイベントであって各々が複数のクライアント・アプリケーションのうち少なくとも1のアプリケーションに関連付けられるイベントを取り込み、該イベントのうち少なくともいくつかは該イベントの発生時にリアルタイムで取り込まれ、前記イベントのうち少なくともいくつかをインデックス化して記憶し、該インデックス化して記憶されたイベントは関連するアーティクルを有し、検索クエリを受け取り、前記検索クエリに関連するイベントから関連アーティクルを検索する方法を実施する。
これらの実施例は発明を限定あるいは定義するために言及するのではなく、発明の理解を助けるために提供されるものである。実施例は詳細な説明において説明し、そこで発明について更に説明する。本発明の様々な実施例により提供される利点は、本明細書を吟味することにより更に理解できるだろう。
これらの、及びその他の本発明の特徴、側面、及び利点は、添付図面を参照しながら以下の詳細な説明を読むことで、より良く理解できる。
いくつかの図面にわたって同様の要素が同一の番号により示される図面を参照すると、図1は本発明の一実施例を実施する環境の一例を示すブロック図である。図示されている環境は、クライアント側の検索エンジン構造の環境を表しているが、その他の実施例も可能である。図1のシステム100は、ネットワーク106上でサーバ装置150と通信を行うことが可能な複数のクライアント装置102a−nを有する。図示されているネットワーク106はインターネットから成る。その他の実施例では、イントラネット等、他のネットワークを代わりに用いることができる。更に、本発明の方法は、サーバ装置やネットワークと通信を行わない単一のクライアント装置内で実施することもできる。
図1に示される各クライアント装置102a−nはコンピュータ可読の媒体108を有する。図1に示す実施例は、プロセッサ110に連結されたランダムアクセスメモリ(RAM)108を有する。プロセッサ110は、メモリ108に格納されているコンピュータにより実行可能なプログラム指令を実行する。このようなプロセッサは、マイクロプロセッサ、ASIC、状態機械、あるいはその他のプロセッサにより構成することができ、カリフォルニア州サンタクララのインテル社やイリノイ州シャンバーグのモトローラ社のプロセッサ等、多数の好適なコンピュータプロセッサから任意に選択することができる。このようなプロセッサは、プロセッサにより実行されると該プロセッサにステップを実行させる指令を記憶するコンピュータ可読の媒体等の媒体を含めることができ、あるいはそのような媒体と通信状態にすることができる。コンピュータにより読み取り可能な媒体の例としては、クライアント102aのプロセッサ110等のプロセッサにコンピュータ可読の指示を供給することが可能な電子、光、磁気、その他の記憶あるいは伝送装置が挙げられるが、これらに限定されない。その他の好適な媒体の例としては、フレキシブル磁気ディスク、CD−ROM、DVD、磁気ディスク、メモリチップ、ROM、RAM、ASIC、コンフィギュアド・プロセッサ、あらゆる光学メディア、あらゆる磁気テープあるいはその他の磁気メディア、またはコンピュータのプロセッサが指示を読み取ることが可能なその他の媒体が挙げられるが、これらに限定されない。また、そのほか、様々な形態のコンピュータにより読み取り可能な媒体、例えばルータ、プライベートあるいは公共ネットワーク、あるいはその他の伝送装置あるいは経路も、有線か無線かに関わらず、コンピュータに指示を送信あるいは搬送することができる。例えば、C、C++、C#、ヴィジュアルベーシック、ジャバ、パイソン、パール、ジャバスクリプト等、任意の好適なコンピュータプログラム言語のコードにより指示を構成することができる。
クライアント装置102a−nはネットワーク106に連結することができるが、独立型の装置とすることもできる。また、クライアント装置102a−nには、マウス、CD−ROM、DVD、キーボード、表示装置、その他の入力あるいは出力装置等、多数の外部あるいは内部装置を設けることができる。クライアント装置102a−nとしては、例えば、パーソナルコンピュータ、デジタル・アシスタント、携帯情報端末、携帯電話、セルラー式電話、高度自動機能電話、ポケットベル、デジタル・タブレット、ラップトップコンピュータ、インターネット機器、及びその他のプロセッサをベースにした装置が挙げられる。一般に、クライアント装置102a−nは、一以上のクライアント・アプリケーション・プログラムをサポートできるマイクロソフト(登録商標)・ウィンドウズ(登録商標)あるいはリナックス等、任意の好適なオペレーティングシステム上で動作するプロセッサをベースにした任意の種類のプラットフォームとすることができる。例えば、クライアント装置102a−nは、クライアント・アプリケーション120としても知られるクライアント・アプリケーション・プログラムを実行するパーソナルコンピュータにより構成することができる。クライアント・アプリケーション120はメモリ108に格納することができ、例えば、クライアント装置によって実行可能なワードプロセシング・アプリケーション、スプレッドシート・アプリケーション、電子メールアプリケーション、インスタント・メッセンジャ・アプリケーション、プレゼンテーション・アプリケーション、インターネット・ブラウザ・アプリケーション、カレンダ/スケジュール管理アプリケーション、ビデオ再生アプリケーション、音声再生アプリケーション、画像表示アプリケーション、ファイル管理プログラム、オペレーティングシステム・シェル、及びその他のアプリケーションから構成することができる。また、クライアント・アプリケーションは、他のアプリケーションと対話したり他のアプリケーションにアクセスしたりするクライアント側アプリケーション(例えば、メールにアクセスするためにリモート電子メールサーバと対話するクライアント装置102a上で実行されるウェブブラウザ等)から構成することができる。
ユーザ112aは、クライアント装置102aの各種入力及び出力装置を介して、各種クライアント・アプリケーション120及びクライアント・アプリケーション120に関連するアーティクルと対話を行う。アーティクルとしては、例えば、ワープロ文書、スプレッドシート文書、プレゼンテーション文書、電子メール、インスタント・メッセンジャのメッセージ、データベースの項目、カレンダの項目、アポイントメントの項目、タスクマネージャの項目、ソースコード・ファイル、及びその他のクライアント・アプリケーション・内容・ファイル、メッセージ、項目、HTML、XML、XHTML等の各種フォーマットのウェブページ、ポータブル・ドキュメント・フォーマット(PDF)ファイル、及び、画像ファイル、音声ファイル、ビデオファイル等のメディアファイルや、その他の文書あるいは項目や、任意の好適な種類の文書、項目、情報のグループが挙げられる。
ユーザ112aがアーティクル、クライアント・アプリケーション120、及びクライアント装置102aとの間で相互作用(対話)を行うことにより、観察、記録、解析、あるいはその他の用途に使用できるイベントデータが作成される。イベントは、アーティクル、クライアント・アプリケーション120、あるいはクライアント装置102aに関連して発生し得る出来事、例えば、アーティクルにテキストを入力する、表示装置上にアーティクルを表示する、アーティクルを送信する、アーティクルを受信する、アーティクルを閉じる、クライアント・アプリケーション・プログラムを開く、アイドルタイム、プロセッサのロード、ディスク・アクセス、メモリ使用、クライアント・アプリケーション・プログラムをフォアグラウンドに持っていく、アプリケーションの画像表示の詳細を変更する(例えば、サイズの変更や最小化)、及びその他のアーティクル、クライアント・アプリケーションあるいはクライアント装置に関連する任意の出来事とすることができる。更に、電子メールを受信する、あるいはスケジュール設定されたタスクを実行する等、クライアント装置102aがユーザ112aと独立したアーティクルと相互作用(対話)する際にイベントデータを生成することができる。
また、クライアント装置102aのメモリ108は、キャプチャ・プロセッサ124、キュー126、及び検索エンジン122を含む。また、クライアント装置102aにデータ・ストア140を含めることもでき、またはデータ・ストア140と通信状態にすることもできる。キャプチャ・プロセッサ124はイベントを取り込み、該イベントをキュー126に渡すことができる。キュー126は取り込まれたイベントを検索エンジン122に渡すことができ、または検索エンジン122は新しいイベントをキュー126から検索することができる。一実施例において、キュー126に新しいイベントが到着すると、キュー126は検索エンジン122にその旨を通知し、検索エンジン122が該イベントを処理する準備ができると、検索エンジン122が該イベントをキュー126から抽出する。検索エンジンはイベントを受け取ると、該イベントを処理してデータ・ストア140に記憶することができる。検索エンジン122は、ユーザ112aから明示的なクエリを受け取るか、または暗黙なクエリを生成し、該クエリに応じてデータ・ストア140から情報を抽出することができる。別の実施例では、キューが検索エンジン122内に設けられる。また別の実施例においては、クライアント装置102aにキューを設けず、キャプチャ・プロセッサ14から検索エンジン122にイベントが直接渡される。その他の実施例によれば、イベントデータは情報交換プロトコルによって転送される。該情報交換プロトコルは、例えば、データ交換を容易にする任意の規則あるいは方法により構成することができ、例えば、拡張可能なマークアップ言語―遠隔手続き呼び出し(XML/RPC)、ハイパーテキスト転送プロトコル(HTTP)、シンプル・オブジェクト・アクセス・プロトコル(SOAP)、共有メモリ、ソケット、ローカルあるいはリモート手続き呼び出し、またはその他の任意の情報交換メカニズムのうちのいずれかにより構成することができる。
キャプチャ・プロセッサ124は、イベントに関連するイベントデータを識別し、コンパイルすることにより、イベントを取り込むことができる。イベントとしては、例えば、電子メールメッセージを送信あるいは受信すること、ユーザがウェブページを表示すること、ワープロ文書を保存すること、スプレッドシート文書を印刷すること、テキストを入力して電子メールを作成あるいは編集すること、プレゼンテーション・アプリケーションを開くこと、インスタント・メッセンジャー・アプリケーションを閉じること、キーを打つこと、マウスを動かすこと、テキストをクリップボードにコピーすること、ハイパーリンク上でマウスの動作を止めることが挙げられる。ユーザによるウェブページの表示というイベントに対応してキャプチャ・プロセッサ124により取り込まれるイベントデータは、例えば、該ウェブページのURL、ユーザがウェブページを表示した日時、元の形式あるいは処理後の形式のウェブページの内容、ユーザに表示されるウェブページのスナップショット、スクリーンショットのサムネイルバージョン、ウェブページあるいはウェブサイトに関連するアイコン等である。
図1に示す実施例において、キャプチャ・プロセッサ124は複数のキャプチャ要素から成る。例えば、図1のキャプチャ・プロセッサ124は、各アプリケーションに関連するイベントを取り込むために、各クライアント・アプリケーションに対して個々のキャプチャ要素を備える。また、キャプチャ・プロセッサ124は、ネットワークの動作、例えば、インスタント・メッセンジャのメッセージの受信や送信に関連するイベントデータを取り込むために、ネットワークの動作全体を監視する独立したキャプチャ要素を有する。また、図1のキャプチャ・プロセッサ124は、プロセッサの負荷、アイドルタイム、ディスクアクセス、使用中のクライアント・アプリケーション、使用可能なメモリ容量等、クライアント装置のパフォーマンスを監視する独立したライアント装置キャプチャ要素を有する。また、図1のキャプチャ・プロセッサ124は、ユーザによるキーの押下を監視して取り込む独立したキャプチャ要素、及びテキスト等、クライアント装置102aに対応する表示装置上に表示される項目を監視して取り込む独立したキャプチャ要素を有する。各キャプチャ要素は複数のクライアント・アプリケーションを監視することができ、複数のキャプチャ要素が単一のクライアント・アプリケーションの様々な側面を監視することができる。
一実施例において、キャプチャ・プロセッサ124は、各キャプチャ要素を介して、クライアント装置上の動作を監視することができ、また、イベント・スキーマ等、汎用イベント定義・登録メカニズムによりイベントを取り込むことができる。各キャプチャ要素は、自身のイベント・スキーマを定義することができ、あるいは予め定義されたものを用いることができる。イベント・スキーマは、キャプチャ要素が監視しているクライアント・アプリケーションや動作によって異なる。一般に、イベント・スキーマは、例えば、イベントに関連するイベントデータ(イベントの時間等)のフィールド、任意の関連アーティクル(タイトル等)や、任意の関連アーティクルの内容(文書の本文等)に関連するフィールドを提供することによりイベントのフォーマットを記述する。イベント・スキーマは、イベントに関連する任意のイベントデータのフォーマットを記述することができる。例えば、ユーザ112aによって受信される電子メールメッセージ・イベントのイベント・スキーマには、送信者、受信者あるいは受信者リスト、送信時間、送信データ、及びメッセージの内容を含めることができる。ユーザが見ているウェブページに対するイベント・スキーマには、ウェブページのURL、ウェブページが表示された時間、ユーザがウェブページを表示した時間の長さ、及びウェブページの内容を含めることができる。ユーザによって保存されているワープロ文書に対するイベント・スキーマには、文書のタイトル、保存した時間、文書のフォーマット、文書のテキスト、及び文書の場所を含めることができる。より一般的に、イベント・スキーマにはイベントの時間前後のシステムの状態を記述することができる。例えば、イベント・スキーマには、以前にユーザが見ていたウェブページに関連するウェブページ・イベントのURLを含めることができる。更に、イベント・スキーマには、複数の受信者を一覧表示するフィールドを含めることができる。また、イベント・スキーマには、必要であればアプリケーションにイベントデータを追加できるように付加フィールドを含めることができる。関連するイベント・スキーマに記述されているフィールドにイベントデータをコンパイルすることにより、イベントを取り込むことができる。
キャプチャ・プロセッサ124は、現在発生しているイベント(すなわち「リアルタイムイベント」)を取り込むことができるとともに、過去に発生したイベント(すなわち「過去イベント」)を取り込むことができる。リアルタイムイベントには、インデックス化できるものとインデックス化できないものがある。一実施例において、検索エンジン122はインデックス化できるリアルタイムイベントをインデックス化するが、インデックス化できないリアルタイムイベントはインデックス化しない。検索エンジン122は、イベントの重要度に基づき、イベントをインデックス化するか否か判断することができる。インデックス化できるリアルタイムイベントは、ウェブページを表示したり、ファイルをロードあるいは保存したり、インスタント・メッセージや電子メールを受信あるいは送信したりするような、アーティクルに関連するイベントであって、より重要度の高いイベントとすることができる。インデックス化できないイベントは、マウスを動かしたり、アーティクル中のテキストの一部分を選択したりするような、インデックス化して記憶するほど重要度が高くないと検索エンジン122によって判断され得るイベントである。あるいは、キャプチャ・プロセッサ124が、イベントの重要度が十分に高くないと判断して、キュー126に送らないようにしてもよい。この実施例では、キュー126の負担が減り、システムの速度が向上する。検索エンジン122は、インデックス化できないイベント及び/あるいはインデックス化できるイベントによって現在のユーザ状態を更新する。全てのリアルタイムイベントは、ユーザが現在行っていること(すなわち現在のユーザ状態)に関連し得る一方、インデックス化できるリアルタイムイベントはインデックス化してデータ・ストア140に記憶することができる。あるいは、検索エンジン122が全てのリアルタイムイベントをインデックス化することができる。リアルタイムイベントとしては、例えば、インスタント・メッセンジャのメッセージ等のアーティクルを送信あるいは受信すること、テキストの一部を選択したりウェブページの一部上でマウスを動かしたりしてアーティクルの一部を確認すること、電子メールに単語を入力たりワープロ文書中に文章を貼り付けたりしてアーティクルを変更すること、インスタント・メッセンジャのウィンドウを閉じたり現在表示されている電子メールメッセージを変更したりしてアーティクルを閉じること、ワープロ文書、ウェブページあるいは電子メール等のアーティクルをロードしたり、保存したり、開いたり、表示したりすること、MP3ファイルやその他の音声/ビデオファイルを聴いたり保存したりすること、ウェブページのブックマーク、プレゼンテーション文書の印刷、ワープロ文書の削除、スプレッドシート文書の移動等によりアーティクルのメタデータを更新することが挙げられる。
検索エンジン122のインストール前に発生したか、または、例えばクライアント装置102aの動作中は検索エンジン122が動作していなかったため、あるいはイベントが起きた時には特定の種類の過去イベントに対するキャプチャ要素が存在していなかったために取り込まれなかったイベントであるという点を除けば、過去イベントはインデックス化できるリアルタイムイベントと同様である。過去イベントは、例えば、ユーザが保存したワープロ文書、メディアファイル、プレゼンテーション文書、カレンダの項目、及びスプレッドシート文書や、ユーザの受信箱内の電子メール、ユーザのキャッシュ内のウェブページ、過去のインスタント・メッセンジャの会話、及びユーザがブックマークしたウェブページ等である。キャプチャ・プロセッサ124はメモリ108及びいずれかの関連データ記憶装置を定期的に巡回してキャプチャ・プロセッサ124によって取り込まれていないイベントを探すことにより、過去イベントを取り込むことができる。また、キャプチャ・プロセッサ124は、何らかのクライアント・アプリケーション、例えばウェブブラウザや電子メールアプリケーションにアーティクルやその他の関連情報の抽出を要求することにより、過去イベントを取り込むことができる。例えば、キャプチャ・プロセッサ124は、ウェブブラウザ・アプリケーションに、ユーザに関連する全ての電子メールメッセージを取得するように要求する。上記アーティクルは、メモリ108内やクライアント装置102aの記憶装置上に存在していない場合がある。例えば、電子メールアプリケーションがサーバ装置から電子メールを検索しなければならない場合がある。一実施例において、検索エンジン122は過去イベントをインデックス化する。
一実施例において、検索エンジン122は過去イベントを選択的に取り込み、インデックス化することができる。例えば、イベントに対するアーティクルに関連するアーティクル・データを、イベントを取り込みインデックス化するか否か判断する際に用いることができる。アーティクル・データは、例えば、アーティクルの場所、アーティクルのファイル種類、及びアーティクルに対するアクセスデータで構成することができる。一実施例においては、アーティクル・データを用いて取り込みスコアを決定することができ、該取り込みスコアが閾値と比較される。ある特定のイベントに対する取り込みスコアが閾値よりも大きい場合は、該イベントが取り込まれてインデックス化される。ある特定のイベントに対する取り込みスコアが閾値よりも小さい場合は、該イベントは取り込まれず、インデックス化もされない。同様に、検索エンジン122はリアルタイムイベントを選択的に取り込み、インデックス化することができる。
図1に示す実施例において、キャプチャ・プロセッサ124に取り込まれたイベントは、イベント・スキーマに記述された形式でキュー126に送られる。また、キャプチャ・プロセッサ124はパフォーマンスデータをキュー126に送る。パフォーマンスデータは、例えば、現在のプロセッサ負荷、所定の時間における平均プロセッサ負荷、アイドル時間、ディスクアクセス、使用中のクライアント・アプリケーション、及び使用可能なメモリ容量等である。また、パフォーマンスデータは専用のパフォーマンス監視要素によって供給することができ、該パフォーマンス監視要素のうち幾つかを例えば検索エンジンの一部とすることができる。キュー126内のパフォーマンスデータは、検索エンジン122及びキャプチャ・プロセッサ124のキャプチャ要素によって抽出することができる。例えば、キャプチャ要素はパフォーマンスデータを抽出して、キュー126に送るイベントの数、あるいは送られるイベントをどの程度詳細なものにするか(システムがビジー状態の時は、より少ない数のイベントや小さいサイズのイベントを送る)、あるいはイベントを送る頻度(システムがビジー状態の時や処理を待機しているイベントの数が多過ぎる場合は、より少ない頻度でイベントを送る)について、変更することができる。検索エンジン122は、パフォーマンスデータを用いて、いつ各種イベントをインデックス化するか、及びどのくらいの頻度で暗黙のクエリを発行するか決定することができる。
一実施例では、検索エンジン122がイベントを処理する準備ができるまで、キュー126がイベントを保持する。あるいは、キュー126は、イベントを検索エンジン122に供給する速度を決定する際に、パフォーマンスデータを用いる。キュー126は、ユーザ状態キュー及びインデックス・キューを含む1以上の独立したキューから構成することができる。インデックス・キューは、例えばインデックス化できるイベントを待ち行列に入れる。また、キュー126に1以上のキューを追加して設けてもよく、または単一のキューから構成することもできる。キュー126は、メモリマップファイルを用いた循環優先待ち行列として構成することができる。キューを、より優先度が高いイベントがより優先度が低いイベントより前に供給される複数優先待ち行列とすることもでき、他の要素が関心のあるイベントの種類を特定することもできる。一般に、リアルタイムイベントは過去イベントより優先度が高く、インデックス化できるイベントはインデックス化できないリアルタイムイベントよりも優先度が高い。キュー126については、その他の実施例も可能である。別の実施例において、クライアント装置102aはキュー126を持たない。この実施例では、キャプチャ・プロセッサから検索エンジン122にイベントが直接渡される。その他の実施例では、拡張可能なマークアップ言語―遠隔手続き呼び出し(XML/RPC)、ハイパーテキスト転送プロトコル(HTTP)、シンプル・オブジェクト・アクセス・プロトコル(SOAP)、共有メモリ、ソケット、ローカルあるいはリモート手続き呼び出し、またはその他の任意の情報交換メカニズムにより、キャプチャ要素と検索エンジンの間でイベントを搬送することができる。
検索エンジン122には、インデクサ130、クエリ・システム132及びフォーマッタ134を設けることができる。クエリ・システム132は、リアルタイムイベント及びパフォーマンスデータをキュー126から検索する。クエリ・システム132は、パフォーマンスデータ及びリアルタイムイベントを用いて現在のユーザ状態を更新し、暗黙のクエリを生成する。暗黙のクエリは、現在のユーザ状態に基づいて自動的に生成されるクエリとすることができる。また、クエリ・システム132は、ユーザ112aから明示的なクエリを受け取り、処理することができる。また、パフォーマンスデータは、検索エンジン122により可能な作業の量を決定する際に用いるため、検索エンジン122によってキュー126から抽出することができる。
図1の実施例において、インデックス化できるリアルタイムイベント及び過去イベント(インデックス化可能なイベント)は、インデクサ130によってキュー126から抽出される。あるいは、キュー126が、インデックス化可能なイベントをインデクサ130に送ってもよい。インデクサ130はインデックス化可能なイベントをインデックス化し、インデックス化したイベントをデータ・ストア140に送り、データ・ストア140に記憶することができる。データ・ストア140はいかなる種類のコンピュータ可読の媒体であってもよく、ハードドライブ等ようにクライアント装置102aと一体化して構成してもよいし、外部ハードドライブやその他のネットワーク106を介してアクセスされるデータ記憶装置のようにクライアント装置102aの外部に構成してもよい。データ・ストアは1以上の論理的あるいは物理的記憶領域とすることができる。一実施例では、データ・ストア140をメモリ108内に設けることができる。データ・ストア140は、データを記憶するために1つあるいは複数の方法を組み合わせて用いることができ、その方法としては例えばアレイ、ハッシュ・テーブル、リスト、ペア等が挙げられるが、これらに限定されるものではなく、また圧縮及び暗号化を用いることもできる。図1に示す実施例において、データ・ストアはインデックス142、データベース144及びリポジトリ146から成る。
一実施例において、インデクサ130がイベントを受け取ると、インデクサ130は、イベントに関連する単語(もし、あれば)、イベントの時間(もし、分かれば)、イベントに関連する画像(もし、あれば)、及び/あるいはイベントを定義する情報をイベントから判断する。インデクサ130は、イベントが以前に受け取ったイベントの重複であるか否か判断する。また、インデクサ130は、イベントが他のイベントに関連するか否か判断し、関連イベントにイベントを関連付ける。例えば、受け取った電子メールイベントに対して、インデクサ130は、同じ対話による他のメッセージイベントに該電子メールを関連付けることができる。その他の例として、インデクサ130はイベントを他のイベントに含まれるテキストあるいは他のイベントの時間に基づき該他のイベントに関連付けるこができる。同じ対話による電子メールは相互に関連付けて関連イベントオブジェクトとし、データ・ストア140に記憶することができる。
インデクサ130は、イベントに関連する単語及び位置情報を送り、データ・ストア140のインデックス142に加えることができる。イベントはデータベース144に送って記憶することができ、関連アーティクルの内容及び関連画像をリポジトリ146に記憶することができる。電子メールメッセージに関連する対話オブジェクトはデータベース144に記憶することができる。
図1に示す実施例において、ユーザ112aは明示的なクエリをクライアント装置102aに表示される検索エンジン・インターフェイスに入力することができ、検索エンジン122が該クエリを受け取る。また、検索エンジン122は、クエリ・システム132がリアルタイムイベントから判断することが可能な現在のユーザ状態に基づき暗黙のクエリを生成することができる。該クエリに基づき、クエリ・システム132はデータ・ストア140における関連情報を検索することができ、一組の結果を提供することができる。一実施例において、該一組の結果は、クライアント・アプリケーション120あるいはクライアント・アーティクルに関連するアーティクルのアーティクル識別子から成る。クライアント・アーティクルは、ユーザの電子メール、ワープロ文書、インスタント・メッセンジャのメッセージ、過去に表示されたウェブページ、その他のアーティクルや、クライアント装置102aあるいはユーザ112aに関連するアーティクルの一部等、ユーザ112aあるいはクライアント装置102aに関連するアーティクルである。アーティクルの識別子は、例えば、URL、ファイル名、リンク、アイコン、ローカルファイルへのパス、あるいはその他のアーティクルを識別できる任意の情報とすることができる。別の実施例において、一組の結果は、ネットワーク106上にあるアーティクルや、サーバ装置上の検索エンジンによって検索されるネットワーク・アーティクルのアーティクル識別子から成る。ネットワーク・アーティクルは、ユーザ112aにより過去に表示されたことがないウェブページ等、ユーザ112aによって過去に表示されたことがない、あるいは参照されたことがないネットワーク106上のアーティクルを含む。
フォーマッタ134は、検索エンジン122のクエリ・システム132から一組の検索結果を受け取り、表示プロセッサ128への出力用に該結果をフォーマットすることができる。一実施例において、フォーマッタ134は結果をXML、HTML、あるいはタブで境界が明示されたテキストをフォーマットすることができる。表示プロセッサ128はメモリ108内に設けることができ、クライアント装置102aに対応する表示装置上における一組の結果の表示を制御することができる。表示プロセッサ128は様々な要素から構成することができる。例えば、一実施例では、情報の要求を受け取り、ハイパーテキスト・マークアップ言語(HTML)ページを構築し送信することにより応答するハイパーテキスト転送プロトコル(HTTP)サーバから表示プロセッサ128が構成される。このような実施例において、HTTPサーバはアパッチ・ウェブサーバの縮小版から成る。表示プロセッサ128は、一組のAPIに関連付けられ、各種アプリケーションが結果を受け取って各種フォーマットで表示できるようにすることができる。表示APIは、例えば ウィンドウズ・メッセージング、DLLエクスポート、COMインターフェース、VB、JAVA、.NETライブラリ、あるいはウェブサービス等、各種方法で実現される。
クライアント装置102a−nを介して、ユーザ112a−nはネットワーク上で相互に通信を行うとともに、ネットワーク106に連結された他のシステムや装置と通信を行うことができる。図1に示すように、サーバ装置150をネットワーク160に連結することができる。図1に示す実施例において、検索エンジン122は、明示的なクエリあるいは暗黙のクエリあるいはその両方から成る検索クエリをサーバ装置150に送信することができる。また、ユーザ112aは、検索エンジン・インターフェイスに検索クエリを入力することができ、該クエリはクライアント装置102aによりネットワーク106を介してサーバ装置150に送信することができる。別の実施例において、上記クエリをプロキシサーバ(図示せず)に送ることができ、該プロキシサーバはクエリ信号をサーバ装置150に送信する。また、他の構成も可能である。
サーバ装置150には、Google(登録商標)検索エンジン等、検索エンジン・アプリケーションプログラムを実行するサーバを設けることができる。その他の実施例において、サーバ装置150は関連情報サーバあるいは広告サーバから構成することができる。クライアント装置102a−nと同様に、サーバ装置150にコンピュータ可読のプロセッサ162を設けることができる。単一のコンピュータシステムとして表されるサーバ装置150は、コンピュータプロセッサ網として構成することができる。サーバ装置150の例としては、サーバ、メインフレームコンピュータ、ネットワークコンピュータ、プロセッサをベースにしている装置、及び同様のシステムや装置が挙げられる。サーバ・プロセッサ160は、カリフォルニア州サンタクララのインテル社のプロセッサやイリノイ州シャンバーグのモトローラ社のプロセッサ等、多数のコンピュータプロセッサの中から任意に選択することができる。別の実施例では、サーバ装置150をクライアント装置上に設けることができる。また、別の実施例では、複数のサーバ装置150を設けることができる。
メモリ162は、ネットワーク検索エンジン170としても知られる検索アプリケーションプログラムを含む。検索エンジン170は、クライアント装置102aからの検索クエリに応じて、ネットワーク106から関連情報を検索することができる。そして、検索エンジン170は、ネットワーク106を介して一組の結果をクライアント装置102aに供給することができる。該一組の結果は、1以上のアーティクル識別子から構成することができる。アーティクル識別子としては、例えば、URL、ファイル名、リンク、アイコン、ローカルファイルのパス、あるいはその他のアーティクルを識別できる任意のものを用いることができる。一実施例では、アーティクルに関連するURLからアーティクル識別子を構成することができる。
一実施例では、サーバ装置150、あるいは関連する装置がネットワーク106を巡回して、ネットワーク106に接続されている他の装置あるいはシステムに記憶されているウェブページ等のアーティクルを検索し、該アーティクルをメモリ162内で、あるいは別のデータ記憶装置上でインデックス化している。なお、巡回の代わりに、または巡回と組み合わせて、アーティクルをインデックス化するその他の方法を用いることもできる。
なお、本発明の他の実施例は、図1に示すものとは異なる構造を有するシステムから成る。例えば、本発明のいくつかの他の実施例において、クライアント装置102aはネットワークに恒久的に連結されていない独立した装置である。図1に示すシステム100は単なる例示であり、図2及び図3に例示する方法を説明する際に用いられる。
本発明の実施例に従い様々な方法を実行することができる。例えば、一実施例では、クライアント装置上のアーティクルであって複数のクライアント・アプリケーションのうち少なくとも1つに関連付けることができるアーティクルとのユーザの対話から成るイベントの発生時に、検索エンジンが該イベントをリアルタイムで取り込み、前記イベントに少なくともある程度基づいて現在のユーザ状態を更新し、前記イベントをインデックス化するべきか否かを判断し、前記イベントをインデックス化するべきである場合は、前記イベント及び前記アーティクルに関連する内容の一部をインデックス化して記憶する。
別の実施例では、クライアント装置上で発生する複数のイベントであって各々が複数のクライアント・アプリケーションのうち少なくとも1のアプリケーションに関連するイベントを取り込み、該イベントのうち少なくともいくつかは該イベントの発生時にリアルタイムで取り込み、前記イベントのうち少なくともいくつかをインデックス化して記憶し、該インデックス化して記憶されたイベントは関連するアーティクルを有し、検索クエリを受け取り、前記検索クエリに関連するイベントから関連アーティクルを検索する。また、検索エンジンは、関連するアーティクルから一組の検索結果を生成することができる。一実施例において、前記検索クエリはユーザによって入力される。別の実施例において、リアルタイムイベントから決定される現在のユーザ状態に基づき、前記検索エンジンによって前記検索クエリが生成される。
別の実施例では、クライアント装置上のアーティクルであって複数のクライアント・アプリケーションのうち少なくとも1のアプリケーションに関連付けることが可能なアーティクルとユーザの対話からそれぞれ成る複数のリアルタイムイベントの発生時に該リアルタイムイベントをリアルタイムで取り込み、過去に発生した複数の過去イベントであって各々がクライアント装置のアーティクルとユーザの対話から成る過去イベントを取り込み、前記アーティクルは複数のクライアント・アプリケーションのうち少なくとも1のアプリケーションに関連付けることが可能なアーティクルであり、各イベントに対して、該イベントをインデックス化するべきか否か決定し、前記イベントをインデックス化するべきである場合、前記イベントをインデックス化し、前記イベント及び前記アーティクルに関連する内容の少なくとも一部を記憶する。
別の実施例では、クライアント装置上のアーティクルであって複数のクライアント・アプリケーションのうち少なくとも1のアプリケーションに関連付けることが可能なアーティクルとユーザの対話から成るイベントの発生時に該イベントをリアルタイムで取り込み、前記イベントに少なくともある程度基づいて現在のユーザ状態を更新し、前記イベントをインデックス化し、前記イベント及び前記アーティクルに関連する内容の少なくとも一部を記憶する。この実施例において、イベントはリアルタイムイベントでもよいし、過去イベントでもよい。
別の実施例では、クライアント装置上で発生する複数のイベントであって各々が複数のクライアント・アプリケーションのうち少なくとも1のアプリケーションに関連付けられるイベントを取り込み、前記イベントのうち少なくともいくつかをインデックス化して記憶し、該インデックス化して記憶されたイベントは関連するアーティクルを有し、複数のネットワーク・アーティクルをインデックス化し、検索クエリを受け取り、前記検索クエリに少なくともある程度基づいて、関連するクライアント・アーティクル及びネットワーク・アーティクルを検索する。この実施例において、検索クエリは少なくとも1のリアルタイムイベントに少なくともある程度基づいて暗黙的に生成することができる。
図2は、本発明の実施例に従い、イベントを取り込んで処理する方法の一例である方法200を示す。上述の実施例の説明から本発明の他の実施例における方法を実施する様々な方法があることが分かるように、上記方法は一例として示すものである。図2に示す方法は各種システムのうち任意のものによって実行あるい実施することができる。方法200は、以下の説明では図1に例示されるシステム100によって実行されるものであり、図2の方法例を説明する際にシステム100の各種要素を参照する。
キャプチャ・プロセッサ124は202でイベントを取り込む。該イベントはリアルタイムイベントでも、過去イベントでもよい。キャプチャ・プロセッサ124は、イベントの発生時に該イベントに関連するイベントデータを識別してコンパイルすることによりリアルタイムイベントを取り込むことができる。キャプチャ・プロセッサ124は、例えば、メモリ108あるいはクライアント装置112aの対応データ記憶装置を定期的に巡回して、以前に取り込まれたことがないアーティクルを探すか、クライアント・アプリケーションからアーティクルやデータを受け取りイベントに関連するイベントデータを識別してコンパイルすることにより、過去イベントを取り込むことができる。キャプチャ・プロセッサ124には、各クライアント・アプリケーション、ネットワーク・モニタリング、パフォーマンスデータの取り込み、キーストロークの取り込み、表示の取り込みに対して、それぞれキャプチャ要素を設けることができる。一実施例において、キャプチャ要素は、過去に定義してクライアント装置102aに登録したイベント・スキーマ等、汎用イベント定義メカニズムによりイベントを取り込み、あるいは表すことができる。
204で、キャプチャ・プロセッサ124は取り込まれたイベントがインデックス化できるイベントであるか否か判断する。上述のように、リアルタイムイベントの中にはインデックス化できないものがある(インデックスできないリアルタイムイベント)。一実施例では、インデックス化できないリアルタイムイベントを用いて現在のユーザ状態を更新するが、該リアルタイムイベントは、例えば、アーティクルの一部を調べること、アーティクルを変更すること、あるいはアーティクルを閉じることである。この実施例において、インデックスできないイベントはインデクサ130によってインデックスされず、送られて記憶されることもない。インデックス化できるイベントは、インデックス化できるリアルタイムイベント、あるいは過去イベントとすることができる。インデックス化できるイベントとしては、例えば、電子メールメッセージの受信、ウェブページの表示、ワープロ文書の保存、インスタント・メッセンジャ・メッセージの送信が挙げられる。
インデックス化できるイベントであると判断されると、206で、該イベントがインデックス化できるイベントである旨の通知とともに、該イベントをキャプチャ・プロセッサ124によってキュー126に送ることができる。図2に示す実施例において、インデックス化できるリアルタイムイベントはキュー126内のユーザ状態キュー及びインデックス・キューの両方に送られ、過去イベントがキュー126内のインデックス・キューに送られる。あるいは、演算時間を節約するために、インデックス化できるリアルタイムイベントをユーザ状態キューに送らなくてもよい。キャプチャ・プロセッサ124は、イベント・スキーマに記述されたフォーマットでイベントをキュー126に送ることができる。イベントがインデックス化できないイベントであると判断されると、206で、該イベントをインデックス化しない旨の通知とともに、該インデックス化できないイベントをキャプチャ・プロセッサ124によってキュー126のユーザ状態キューに送ることができる。別の実施例では、ブロック206の前後または前か後に、ブロック204を実行する。例えば、キャプチャ・プロセッサ124によってインデックス化できるイベントであるか否か判断することができるイベントもあれば、インデクサ130によってインデックス化できるイベントであるか否か判断することができるイベントもある。
一実施例では、検索エンジンがイベントを受け取る準備ができるまで、キュー126が該イベントを保持する。イベントデータに基づき、キュー126上でイベントを処理について優先順に配置することができる。例えば、キュー126は、リアルタイムイベントよりも低い処理の優先順位を過去イベントに付与する。一実施例において、インデクサ130は、別のイベントを処理する準備ができると、キュー126内のインデックス・キューからイベントを抽出することができる。クエリ・システム132は、ユーザ状態を更新する準備ができると、キュー126のユーザ状態キューからイベントを抽出することができる。取り込まれたイベントから得られる位置情報を用いてユーザ状態を更新することができる。別の実施例では、キューを使用せず、キャプチャ・プロセッサ124から検索エンジン122にイベントが直接送られる。
208で、インデクサ130はイベントをインデックス化し、記憶する。インデクサ130は、イベントを処理する準備ができると、キュー126からイベントを抽出する。一実施例において、インデクサ130はイベントが重複イベントか否か判断し、重複イベントでない場合は、イベントIDをイベントに付与する。また、インデクサ130は、イベントを関連イベントに関連付けることができる。図2に示す実施例において、インデクサ130はイベントに関連するインデックス化可能な単語、イベントに関連する日時、イベントに関連する他のデータをイベント・スキーマから決定することができる。インデクサ130は、インデックス142に含まれるインデックス化可能な単語にイベントIDを関連付けるこができる。イベントはデータベース144に記憶することができ、イベントの内容はリポジトリ146に記憶することができる。検索エンジンによってインデックス化されて記憶されるイベントを取り込むことにより、ユーザ122aはクライアント装置102a上のアーティクルを検索することができ、検索エンジンがクライアントし102a上のアーティクルを自動的に検索することができる。
図3は、本発明の実施例に従い、クライアント装置上のアーティクルの場所を特定して抽出する方法の一例である方法300を示す。上述の実施例の説明から本発明の他の実施例の方法を実行する様々な方法があることが分かるように、上記方法は一例として示すものである。図3に示す方法は各種システムのうち任意のものによって実行あるいは実施することができる。方法300は、以下の説明では図1に例示されるシステム100によって実行されるものであり、システム100の各種要素は図3の方法例を説明する際に参照される。
302で、クエリ・システム132は検索クエリを受け取る。該クエリは明示的なクエリでもよいし、暗黙のクエリでもよい。明示的なクエリは、ユーザがクライアント装置102a上に表示された検索エンジン・インターフェイスにクエリの語を入力することにより生成することができる。暗黙のクエリは、現在のユーザ状態に基づき、クエリ・システム132によって生成することができる。例えば、ユーザ112aは、「月例予算会議の議題」という語を検索エンジン・インターフェイスに入力することができる。あるいは、ユーザ112aは、「月例予算会議の議題」という語を、ユーザ112aが作成中である電子メールに入力することができる。キャプチャ・プロセッサ124がこのコンテクスト・イベントを取り込むことができ、クエリ・システム132が該イベントを受け取ることができる。クエリ・システム132は、このコンテクスト・イベントで取り込まれた語に基づき、検索クエリを生成することができる。
304で、クエリ・システム132は検索クエリに関するアーティクルを検索する。クエリ・システム132は、検索クエリの単語をインデックス142内にある単語と一致検索することにより、関連アーティクルを検索することができる。例えば、クエリ・システム132は、クエリの単語をインデックス142内の単語と一致検索することができる。一致した単語から、クエリ・システム132は一致した単語に関連するイベントIDに基づき、単語に関連するイベントであってデータベース144に記憶されているイベントを決定することができる。該イベントから、クエリ・システム132は、イベントに関連するアーティクルを決定することができる。該アーティクルはリポジトリ146に記憶することができる。例えば「月例予算会議の議題」という検索クエリに対して、クエリ・システム132は、該クエリの単語を含む各種クライアン・アプリケーションから各種アーティクル、電子メール、プレゼンテーション文書、ワープロ文書、スプレッドシート文書、及びクエリの単語一致するその他のアーティクルを検索することができる。また、クエリは時間を指定することもでき、クエリ・システム132はクエリの時間に関連するアーティクルを検索することができる。また、クエリはイベントの種類を指定することもでき、クエリ・システム132は特定の種類のアーティクル、例えばワープロ文書ファイルや電子メールメッセージを検索することができる。また、クエリ・システム132は、検索エンジン170からクエリに関連するネットワーク・アーティクルを抽出することもできる。
306で、クエリ・システム132は、検索したアーティクルに基づき一組の検索結果を生成する。一実施例において、クエリ・システム132は、アーティクルに対するユーザの好みを示す各種信号に基づき、検索したアーティクルを並べ替え、順位付けする。一組の検索結果には、様々なクライアント・アプリケーション120に関連するアーティクルのアーティクル識別子及びネットワーク・アーティクルの識別子を順位付けしたリストを含めることができる。また、各リンクにはアーティクルの概要及びアーティクルに関連する画像を含めることもできる。
308で、一組の検索結果はフォーマッタ134によりフォーマットされる。一実施例において、フォーマッタ134は一組の検索結果をXMLあるいはHTMLでフォーマットすることができる。310で、一組の検索結果は表示プロセッサ128によりクライアント装置102a上に表示される。例えば、一組の検索結果を、クライアント装置102aに関連する表示装置上に表示することができる。一組の検索結果が暗黙のクエリに応じて生成されている場合、表示プロセッサ128は一組の暗黙の検索結果を表示する適当な時間を決定する。そして、ユーザ112aはアーティクルに対するアーティクル識別子を選択し、関連アーティクルを表示装置上に表示させることができる。
図示されている環境はクライアント側の検索エンジン構造の実施例を表している。独立型のクライアント装置やネットワーク検索エンジン等、その他の実施例も可能である。
上述の説明において多数の具体例を示したが、これらの具体例は本発明の範囲を限定するものではなく、開示した実施例を単に例示するものである。例えば、アーティクル及びイベントの例は説明のために示したものであり、限定的なものではない。当業者であれば本発明の範囲内で可能な多数の変形例を想定するであろう。
本発明の一実施例が動作可能な環境の一例を示す図である。 本発明の一実施例において、クライアント装置に対応するイベントデータを取り込み、処理する方法の一例を示すフローチャートである。 本発明の一実施例において、イベントに関連するアーティクルを検索する方法の一例を示すフロー図である。

Claims (33)

  1. 情報を取り込み抽出するために、コンピュータによって実行される方法であって、
    クライアント装置上のアーティクルとユーザの相互作用から成るイベントを、プロセッサの処理によって、取り込むステップと、
    前記イベントがインデックス化できイベントであるか否かを、プロセッサの処理によって、判定するステップと、
    インデックス化できると判定されたイベントに応じて、プロセッサの処理によって、
    前記イベントがリアルタイムイベント又は過去イベントであるかに応じて該イベントに優先度を割り当てることと、
    メモリ内の優先待ち行列に前記インデックス化できるイベントを入れることと、
    前記優先待ち行列内の前記インデックス化できるイベントを、該イベントに対して割り当てられた優先度に応じて、インデックス内にインデックス化すること、
    を行うステップと、ここで、より高い優先度が割り当てられたイベントは、より低い優先度が割り当てられたイベントより前にインデックス化されるようになっており、
    インデックス化できないと判定されたイベント応じて、プロセッサの処理によって、
    メモリ内のユーザ状態キュー内に前記インデックス化できないイベントを入れることと、
    前記ユーザ状態キューから前記インデックス化できないイベントを抽出すること、
    を行い、該抽出したインデックス化できないイベントに基づき最新のユーザ状態が示されるようにした、ステップと
    を具備する方法。
  2. 前記アーティクルはクライアント側アプリケーションに関連する請求項1に記載の方法。
  3. 前記イベントは予め定義されたイベント・スキーマ形式で取り込まれる請求項1又は2に記載の方法。
  4. 前記アーティクルとユーザの相互作用は、プロセッサの処理によって、前記アーティクルをロードするステップを含む請求項1乃至3のいずれかに記載の方法。
  5. 前記アーティクルとユーザの相互作用は、プロセッサの処理によって、前記アーティクルを保存するステップを含む請求項1乃至3のいずれかに記載の方法。
  6. 前記アーティクルとユーザの相互作用は、プロセッサの処理によって、前記アーティクルを表示するステップを含む請求項1乃至5のいずれかに記載の方法。
  7. 前記アーティクルとのユーザの相互作用は、プロセッサの処理によって、前記アーティクルのメタデータを更新するステップを含む請求項1乃至6のいずれかに記載の方法。
  8. 前記アーティクルの前記メタデータを更新するステップは、前記アーティクルをブックマークするステップを含む請求項7に記載の方法。
  9. 前記アーティクルの前記メタデータを更新するステップは、前記アーティクルを印刷するステップを含む請求項7に記載の方法。
  10. 前記アーティクルの前記メタデータを更新するステップは、前記アーティクルを削除するステップを含む請求項7に記載の方法。
  11. 前記アーティクルの前記メタデータを更新するステップは、前記アーティクルを移動させるステップを含む請求項7に記載の方法。
  12. 更に、
    プロセッサの処理によって、検索クエリを受け取るステップと、
    プロセッサの処理によって、前記イベントが前記索クエリに関連するか否かを、前記インデックスを検索することで決定するステップと、
    前記索クエリに関連する前記イベントに応じて、プロセッサの処理によって、前記アーティクルに基づいて索結果を生成するステップと、
    を具備する請求項1乃至11のいずれかに記載の方法。
  13. 前記索クエリはユーザによって入力されるものである請求項12に記載の方法。
  14. 更に、プロセッサの処理によって、前記索クエリに関連するネットワーク・アーティクルを検索するステップを具備する請求項12又は13に記載の方法。
  15. 前記アーティクルに基づいて前記検索結果を生成するステップは、前記アーティクル及び前記ネットワーク・アーティクルに基づいて前記検索結果を生成するステップを含む請求項14に記載の方法。
  16. 前記イベントがリアルタイムイベント又は過去イベントであるかに応じて該イベントに優先度を割り当てることは、前記リアルタイムイベントに対してより高い優先度を割り当て、前記過去イベントに対してより低い優先度を割り当てることを特徴とする請求項1乃至15のいずれかに記載の方法。
  17. コンピュータで実行可能なプログラムを記憶したコンピュータ読み取り可能な媒体であって、このコンピュータプログラムは、コンピュータに、
    ライアント装置上のアーティクとユーザの相互作用から成るイベントを取り込む手順と
    前記イベントがインデックス化できイベントであるか否かを判定する手順と、
    インデックス化できると判定されたイベントに応じて、
    前記イベントがリアルタイムイベント又は過去イベントであるかに応じて該イベントに優先度を割り当てることと、
    メモリ内の優先待ち行列に前記インデックス化できるイベントを入れることと、
    前記優先待ち行列内の前記インデックス化できるイベントを、該イベントに対して割り当てられた優先度に応じて、インデックス内にインデックス化すること、
    を行う手順と、ここで、より高い優先度が割り当てられたイベントは、より低い優先度が割り当てられたイベントより前にインデックス化されるようになっており、
    インデックス化できないと判定されたイベント応じて、
    メモリ内のユーザ状態キュー内に前記インデックス化できないイベントを入れることと、
    前記ユーザ状態キューから前記インデックス化できないイベントを抽出すること、
    を行い、該抽出したインデックス化できないイベントに基づき最新のユーザ状態が示されるようにした、手順と、
    を実行させるためのプログラムである、コンピュータ読み取り可能な媒体。
  18. 前記アーティクルはクライアント側アプリケーションに関連する請求項17に記載のコンピュータ読み取り可能な媒体。
  19. 前記イベントは予め定義されたイベント・スキーマ形式で取り込まれる請求項17又は18に記載のコンピュータ読み取り可能な媒体。
  20. アーティクルとユーザの相互作用は、前記アーティクルをロードすることを含む請求項17乃至19のいずれかに記載のコンピュータ読み取り可能な媒体。
  21. 前記アーティクルとユーザの相互作用は、前記アーティクルを保存することを含む請求項17乃至19のいずれかに記載のコンピュータ読み取り可能な媒体。
  22. 前記アーティクルとユーザの相互作用は、前記アーティクルを表示することを含む請求項17乃至20のいずれかに記載のコンピュータ読み取り可能な媒体。
  23. 前記アーティクルとのユーザの相互作用は、前記アーティクルのメタデータを更新することを含む請求項17乃至22のいずれかに記載のコンピュータ読み取り可能な媒体。
  24. 前記アーティクルの前記メタデータを更新する際には、前記アーティクルをブックマークする請求項23に記載のコンピュータ読み取り可能な媒体。
  25. 前記アーティクルの前記メタデータを更新する際には、前記アーティクルを印刷する請求項23に記載のコンピュータ読み取り可能な媒体。
  26. 前記アーティクルの前記メタデータを更新する際には、前記アーティクルを削除する請求項23に記載のコンピュータ読み取り可能な媒体。
  27. 前記アーティクルの前記メタデータを更新する際には、前記アーティクルを移動させる請求項23に記載のコンピュータ読み取り可能な媒体。
  28. 前記コンピュータプログラムは、更に、コンピュータに、
    索クエリを受け取る手順と、
    前記イベントが前記索クエリに関連するか否かを、前記インデックスを検索することで決定する手順と、
    前記索クエリに関連する前記イベントに応じて、前記アーティクルに基づいて索結果を生成する手順と、
    を実行させるものである、請求項17乃至27のいずれかに記載のコンピュータ読み取り可能な媒体。
  29. 前記索クエリはユーザによって入力される請求項28に記載のコンピュータ読み取り可能な媒体。
  30. 前記コンピュータプログラムは、更に、コンピュータに、前記索クエリに関連するネットワーク・アーティクルを検索する手順を実行させるものである請求項28又は29に記載のコンピュータ読み取り可能な媒体。
  31. 前記アーティクルに基づいて前記検索結果を生成する手順は、前記アーティクル及び前記ネットワーク・アーティクルに基づいて前記検索結果を生成することを含む請求項30に記載のコンピュータ読み取り可能な媒体。
  32. 前記イベントがリアルタイムイベント又は過去イベントであるかに応じて該イベントに優先度を割り当てることは、前記リアルタイムイベントに対してより高い優先度を割り当て、前記過去イベントに対してより低い優先度を割り当てることを特徴とする請求項17乃至31のいずれかに記載のコンピュータ読み取り可能な媒体。
  33. 情報を取り込み抽出するためのシステムであって、
    ユーザ状態キュー及び優先待ち行列を含むキューを記憶するメモリと、
    イベント取り込むように構成されたキャプチャ・プロセッサと、ここで、前記イベントはクライアント装置上のアーティクルとユーザの相互作用から成り、前記キャプチャ・プロセッサは更に、前記イベントがインデックス化できイベントであるか否かを判定するように構成され、更に、
    前記キャプチャ・プロセッサは、インデックス化できると判定されたイベントに応じて、前記インデックス化できるイベントがリアルタイムイベント又は過去イベントであるかを判定し、該イベントがリアルタイムイベント又は過去イベントであるかに応じて該イベントに優先度を割り当て、前記優先待ち行列に前記インデックス化できるイベントを入れるように構成されており、更に、
    前記キャプチャ・プロセッサは、インデックス化できないと判定されたベントに応じて、前記ユーザ状態キュー内に前記インデックス化できないイベントを入れるように構成されており、
    前記優先待ち行列内の前記インデックス化できるイベントを、該イベントに対して割り当てられた優先度に応じて、インデックス内にインデックス化するように構成されたインデックス化手段と、ここで、より高い優先度が割り当てられたイベントは、より低い優先度が割り当てられたイベントより前にインデックス化されるようになっており、
    前記ユーザ状態キューから前記インデックス化できないイベントを抽出するように構成され、該抽出したインデックス化できないイベントに基づき最新のユーザ状態が示されるようにした、キューシステムと
    を具備するシステム。
JP2007506583A 2004-03-31 2005-03-30 情報を取り込み抽出する方法及びシステム Active JP4812747B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US10/814,773 US7941439B1 (en) 2004-03-31 2004-03-31 Methods and systems for information capture
US10/814,773 2004-03-31
US10/881,584 US7725508B2 (en) 2004-03-31 2004-06-30 Methods and systems for information capture and retrieval
US10/881,584 2004-06-30
PCT/US2005/010985 WO2005098594A2 (en) 2004-03-31 2005-03-30 Methods and systems for information capture and retrieval

Publications (3)

Publication Number Publication Date
JP2007534057A JP2007534057A (ja) 2007-11-22
JP2007534057A5 JP2007534057A5 (ja) 2011-07-21
JP4812747B2 true JP4812747B2 (ja) 2011-11-09

Family

ID=35456163

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007506583A Active JP4812747B2 (ja) 2004-03-31 2005-03-30 情報を取り込み抽出する方法及びシステム

Country Status (6)

Country Link
US (1) US7725508B2 (ja)
EP (1) EP1745360B1 (ja)
JP (1) JP4812747B2 (ja)
AT (1) ATE509319T1 (ja)
ES (1) ES2373297T3 (ja)
WO (1) WO2005098594A2 (ja)

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10635723B2 (en) * 2004-02-15 2020-04-28 Google Llc Search engines and systems with handheld document data capture devices
US7912904B2 (en) 2004-03-31 2011-03-22 Google Inc. Email system with conversation-centric user interface
US7814155B2 (en) 2004-03-31 2010-10-12 Google Inc. Email conversation management system
US7269621B2 (en) 2004-03-31 2007-09-11 Google Inc. Method system and graphical user interface for dynamically updating transmission characteristics in a web mail reply
US9819624B2 (en) 2004-03-31 2017-11-14 Google Inc. Displaying conversations in a conversation-based email system
US8712986B2 (en) * 2004-04-07 2014-04-29 Iac Search & Media, Inc. Methods and systems providing desktop search capability to software application
US8156116B2 (en) 2006-07-31 2012-04-10 Ricoh Co., Ltd Dynamic presentation of targeted information in a mixed media reality recognition system
US9373029B2 (en) 2007-07-11 2016-06-21 Ricoh Co., Ltd. Invisible junction feature recognition for document security or annotation
US8825682B2 (en) 2006-07-31 2014-09-02 Ricoh Co., Ltd. Architecture for mixed media reality retrieval of locations and registration of images
US8838591B2 (en) 2005-08-23 2014-09-16 Ricoh Co., Ltd. Embedding hot spots in electronic documents
US9405751B2 (en) 2005-08-23 2016-08-02 Ricoh Co., Ltd. Database for mixed media document system
US8856108B2 (en) 2006-07-31 2014-10-07 Ricoh Co., Ltd. Combining results of image retrieval processes
US9384619B2 (en) 2006-07-31 2016-07-05 Ricoh Co., Ltd. Searching media content for objects specified using identifiers
US8868555B2 (en) 2006-07-31 2014-10-21 Ricoh Co., Ltd. Computation of a recongnizability score (quality predictor) for image retrieval
US9530050B1 (en) 2007-07-11 2016-12-27 Ricoh Co., Ltd. Document annotation sharing
US8176054B2 (en) 2007-07-12 2012-05-08 Ricoh Co. Ltd Retrieving electronic documents by converting them to synthetic text
US7702673B2 (en) 2004-10-01 2010-04-20 Ricoh Co., Ltd. System and methods for creation and use of a mixed media environment
US7812986B2 (en) 2005-08-23 2010-10-12 Ricoh Co. Ltd. System and methods for use of voice mail and email in a mixed media environment
US8156115B1 (en) 2007-07-11 2012-04-10 Ricoh Co. Ltd. Document-based networking with mixed media reality
US8965145B2 (en) 2006-07-31 2015-02-24 Ricoh Co., Ltd. Mixed media reality recognition using multiple specialized indexes
US9171202B2 (en) 2005-08-23 2015-10-27 Ricoh Co., Ltd. Data organization and access for mixed media document system
US8949287B2 (en) 2005-08-23 2015-02-03 Ricoh Co., Ltd. Embedding hot spots in imaged documents
US20060259511A1 (en) * 2005-05-13 2006-11-16 Yahoo! Inc. Media object organization across information management services
US8086605B2 (en) * 2005-06-28 2011-12-27 Yahoo! Inc. Search engine with augmented relevance ranking by community participation
US8533199B2 (en) * 2005-12-14 2013-09-10 Unifi Scientific Advances, Inc Intelligent bookmarks and information management system based on the same
ES2303422B1 (es) * 2005-12-19 2009-06-23 Universidad De Zaragoza Sistema y procedimiento de registro y certificacion de la actividad y/o comunicacion entre terminales.
US7680763B2 (en) * 2005-12-21 2010-03-16 International Business Machines Corporation Administration of resources in system-wide search systems
US20070174384A1 (en) * 2006-01-25 2007-07-26 John Abd-El-Malek Sidebar communication system and method
US7478182B2 (en) * 2006-01-31 2009-01-13 Schweig Marc E Keyboard, mouse, and video (KVM) session capture system that stores and can playback portions of live KVM session via forensic capture module
US20080016023A1 (en) * 2006-07-17 2008-01-17 The Mathworks, Inc. Storing and loading data in an array-based computing environment
US20080021902A1 (en) * 2006-07-18 2008-01-24 Dawkins William P System and Method for Storage Area Network Search Appliance
US9063952B2 (en) 2006-07-31 2015-06-23 Ricoh Co., Ltd. Mixed media reality recognition with image tracking
US8201076B2 (en) 2006-07-31 2012-06-12 Ricoh Co., Ltd. Capturing symbolic information from documents upon printing
US8676810B2 (en) * 2006-07-31 2014-03-18 Ricoh Co., Ltd. Multiple index mixed media reality recognition using unequal priority indexes
US9020966B2 (en) 2006-07-31 2015-04-28 Ricoh Co., Ltd. Client device for interacting with a mixed media reality recognition system
AU2011253732B2 (en) * 2006-07-31 2012-09-20 Microsoft Corporation Temporal ranking of search results
US8489987B2 (en) 2006-07-31 2013-07-16 Ricoh Co., Ltd. Monitoring and analyzing creation and usage of visual content using image and hotspot interaction
US7849079B2 (en) * 2006-07-31 2010-12-07 Microsoft Corporation Temporal ranking of search results
US9176984B2 (en) 2006-07-31 2015-11-03 Ricoh Co., Ltd Mixed media reality retrieval of differentially-weighted links
US7945434B2 (en) * 2007-03-22 2011-05-17 Progress Software Corporation Non-intrusive event capturing for event processing analysis
US8429194B2 (en) * 2008-09-15 2013-04-23 Palantir Technologies, Inc. Document-based workflows
US9378472B2 (en) * 2008-12-22 2016-06-28 Adobe Systems Incorporated Systems and methods for enabling and configuring tracking of user interactions on computer applications
US8296276B2 (en) * 2008-12-22 2012-10-23 Microsoft Corporation Scope based indexing prioritization
US8667026B1 (en) 2009-01-22 2014-03-04 American Express Travel Related Services Company, Inc. Method and system for ranking multiple data sources
CN102467365A (zh) * 2010-10-29 2012-05-23 国际商业机器公司 提供帮助信息的方法和装置
US9465866B2 (en) * 2011-06-09 2016-10-11 International Business Machines Corporation Task context recovery
CN102880618A (zh) * 2011-07-15 2013-01-16 国际商业机器公司 用于网页文档搜索的方法及系统
US8583654B2 (en) 2011-07-27 2013-11-12 Google Inc. Indexing quoted text in messages in conversations to support advanced conversation-based searching
US9058331B2 (en) 2011-07-27 2015-06-16 Ricoh Co., Ltd. Generating a conversation in a social network based on visual search results
WO2013154542A1 (en) * 2012-04-10 2013-10-17 Empire Technology Development Llc Distilling popular information of a web page
US9805078B2 (en) * 2012-12-31 2017-10-31 Ebay, Inc. Next generation near real-time indexing
US9659043B2 (en) * 2013-02-07 2017-05-23 Enigma Technologies, Inc. Data system and method
US9372898B2 (en) * 2014-07-17 2016-06-21 Google Inc. Enabling event prediction as an on-device service for mobile interaction
CN113626462B (zh) * 2021-07-15 2022-11-15 北京百度网讯科技有限公司 即时通讯对象的搜索方法、装置、电子设备和存储介质
US11797486B2 (en) 2022-01-03 2023-10-24 Bank Of America Corporation File de-duplication for a distributed database

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000099441A (ja) * 1998-09-25 2000-04-07 Fujitsu Ltd 情報を調整して提示する情報提示装置および方法
JP2003242176A (ja) * 2001-12-13 2003-08-29 Sony Corp 情報処理装置および方法、記録媒体、並びにプログラム
JP2003296365A (ja) * 2002-03-29 2003-10-17 Sony Corp 情報処理装置および方法、記録媒体、並びにプログラム
JP2004062451A (ja) * 2002-07-26 2004-02-26 Sharp Corp 情報提示方法、情報提示装置、情報提示プログラム、情報提示プログラムを記録したコンピュータ読み取り可能な記録媒体、スケジュール管理方法

Family Cites Families (173)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US669738A (en) * 1898-08-06 1901-03-12 Elihu Thomson Vapor-generator.
US4410957A (en) 1980-11-20 1983-10-18 International Business Machines Corporation Keystroke queueing system
US6978277B2 (en) 1989-10-26 2005-12-20 Encyclopaedia Britannica, Inc. Multimedia search system
US5321838A (en) 1991-02-28 1994-06-14 Hensley Billy W Event capturing for computer software evaluation
US5555346A (en) 1991-10-04 1996-09-10 Beyond Corporated Event-driven rule-based messaging system
US5280612A (en) 1991-11-26 1994-01-18 International Business Machines Corporation Multiple version database concurrency control system
JPH06237300A (ja) 1992-12-23 1994-08-23 American Teleph & Telegr Co <Att> 電気通信網内における位置に固有なメッセージサービス
JP3147572B2 (ja) 1993-03-22 2001-03-19 株式会社日立製作所 プログラム生成方法
US5623652A (en) 1994-07-25 1997-04-22 Apple Computer, Inc. Method and apparatus for searching for information in a network and for controlling the display of searchable information on display devices in the network
US5592378A (en) 1994-08-19 1997-01-07 Andersen Consulting Llp Computerized order entry system and method
JP2626598B2 (ja) 1994-11-25 1997-07-02 日本電気株式会社 グラフィカルユーザインタフェースを有する対話システムの操作性評価装置
US5748954A (en) * 1995-06-05 1998-05-05 Carnegie Mellon University Method for searching a queued and ranked constructed catalog of files stored on a network
US5701469A (en) * 1995-06-07 1997-12-23 Microsoft Corporation Method and system for generating accurate search results using a content-index
US5907836A (en) 1995-07-31 1999-05-25 Kabushiki Kaisha Toshiba Information filtering apparatus for selecting predetermined article from plural articles to present selected article to user, and method therefore
US5881315A (en) 1995-08-18 1999-03-09 International Business Machines Corporation Queue management for distributed computing environment to deliver events to interested consumers even when events are generated faster than consumers can receive
US6477585B1 (en) 1995-08-18 2002-11-05 International Business Machines Corporation Filter mechanism for an event management service
US5742816A (en) 1995-09-15 1998-04-21 Infonautics Corporation Method and apparatus for identifying textual documents and multi-mediafiles corresponding to a search topic
DE19547210A1 (de) * 1995-12-18 1997-06-19 Basf Ag 1,7-Disubstituierte Perylen-3,4,9-10-tetracarbonsäuren, deren Dianhydride und Diimide
US5964839A (en) 1996-03-29 1999-10-12 At&T Corp System and method for monitoring information flow and performing data collection
US6581056B1 (en) 1996-06-27 2003-06-17 Xerox Corporation Information retrieval system providing secondary content analysis on collections of information objects
US5961610A (en) 1996-08-13 1999-10-05 General Electric Company Systems, methods and apparatus for generating and controlling display of medical images
US6370563B2 (en) 1996-09-30 2002-04-09 Fujitsu Limited Chat system terminal device therefor display method of chat system and recording medium
GB2331166B (en) 1997-11-06 2002-09-11 Ibm Database search engine
US6199073B1 (en) 1997-04-21 2001-03-06 Ricoh Company, Ltd. Automatic archiving of documents during their transfer between a peripheral device and a processing device
JP3008872B2 (ja) 1997-01-08 2000-02-14 日本電気株式会社 Guiシステム自動操作装置および操作マクロ実行装置
US6006222A (en) 1997-04-25 1999-12-21 Culliss; Gary Method for organizing information
US6282548B1 (en) * 1997-06-21 2001-08-28 Alexa Internet Automatically generate and displaying metadata as supplemental information concurrently with the web page, there being no link between web page and metadata
US5893093A (en) 1997-07-02 1999-04-06 The Sabre Group, Inc. Information search and retrieval with geographical coordinates
US6182068B1 (en) 1997-08-01 2001-01-30 Ask Jeeves, Inc. Personalized search methods
US6078916A (en) 1997-08-01 2000-06-20 Culliss; Gary Method for organizing information
US6014665A (en) 1997-08-01 2000-01-11 Culliss; Gary Method for organizing information
US6865715B2 (en) 1997-09-08 2005-03-08 Fujitsu Limited Statistical method for extracting, and displaying keywords in forum/message board documents
US6073130A (en) 1997-09-23 2000-06-06 At&T Corp. Method for improving the results of a search in a structured database
US5956722A (en) 1997-09-23 1999-09-21 At&T Corp. Method for effective indexing of partially dynamic documents
US5970249A (en) 1997-10-06 1999-10-19 Sun Microsystems, Inc. Method and apparatus for performing byte-code optimization during pauses
US6779030B1 (en) 1997-10-06 2004-08-17 Worldcom, Inc. Intelligent network
US6061678A (en) 1997-10-31 2000-05-09 Oracle Corporation Approach for managing access to large objects in database systems using large object indexes
AU757557B2 (en) 1997-11-13 2003-02-27 Intellectual Ventures I Llc File transfer system
US6055579A (en) 1997-11-17 2000-04-25 Silicon Graphics, Inc. Distributed control and synchronization of multiple data processors using flexible command queues
US6289342B1 (en) 1998-01-05 2001-09-11 Nec Research Institute, Inc. Autonomous citation indexing and literature browsing using citation context
US6346952B1 (en) 1999-12-01 2002-02-12 Genesys Telecommunications Laboratories, Inc. Method and apparatus for summarizing previous threads in a communication-center chat session
US7233948B1 (en) 1998-03-16 2007-06-19 Intertrust Technologies Corp. Methods and apparatus for persistent control and protection of content
US7372976B2 (en) 1998-04-16 2008-05-13 Digimarc Corporation Content indexing and searching using content identifiers and associated metadata
US6263348B1 (en) 1998-07-01 2001-07-17 Serena Software International, Inc. Method and apparatus for identifying the existence of differences between two files
US6604236B1 (en) 1998-06-30 2003-08-05 Iora, Ltd. System and method for generating file updates for files stored on read-only media
US6275820B1 (en) * 1998-07-16 2001-08-14 Perot Systems Corporation System and method for integrating search results from heterogeneous information resources
US6226630B1 (en) 1998-07-22 2001-05-01 Compaq Computer Corporation Method and apparatus for filtering incoming information using a search engine and stored queries defining user folders
US6119147A (en) 1998-07-28 2000-09-12 Fuji Xerox Co., Ltd. Method and system for computer-mediated, multi-modal, asynchronous meetings in a virtual space
RU2138076C1 (ru) 1998-09-14 1999-09-20 Закрытое акционерное общество "МедиаЛингва" Система поиска информации в компьютерной сети
US6275957B1 (en) 1998-09-21 2001-08-14 Microsoft Corporation Using query language for provider and subscriber registrations
US6363373B1 (en) 1998-10-01 2002-03-26 Microsoft Corporation Method and apparatus for concept searching using a Boolean or keyword search engine
US6380924B1 (en) 1998-10-22 2002-04-30 Young Yee Mouse/keyboard capture recorder (MCR) apparatus and methodology
US6446076B1 (en) 1998-11-12 2002-09-03 Accenture Llp. Voice interactive web-based agent system responsive to a user location for prioritizing and formatting information
US6826553B1 (en) 1998-12-18 2004-11-30 Knowmadic, Inc. System for providing database functions for multiple internet sources
US6199067B1 (en) 1999-01-20 2001-03-06 Mightiest Logicon Unisearch, Inc. System and method for generating personalized user profiles and for utilizing the generated user profiles to perform adaptive internet searches
US6341371B1 (en) 1999-02-23 2002-01-22 International Business Machines Corporation System and method for optimizing program execution in a computer system
US6401239B1 (en) 1999-03-22 2002-06-04 B.I.S. Advanced Software Systems Ltd. System and method for quick downloading of electronic files
US6490577B1 (en) 1999-04-01 2002-12-03 Polyvista, Inc. Search engine with user activity memory
US6175830B1 (en) 1999-05-20 2001-01-16 Evresearch, Ltd. Information management, retrieval and display system and associated method
US7225182B2 (en) 1999-05-28 2007-05-29 Overture Services, Inc. Recommending search terms using collaborative filtering and web spidering
US6467052B1 (en) 1999-06-03 2002-10-15 Microsoft Corporation Method and apparatus for analyzing performance of data processing system
US6592627B1 (en) 1999-06-10 2003-07-15 International Business Machines Corporation System and method for organizing repositories of semi-structured documents such as email
US6560655B1 (en) 1999-06-22 2003-05-06 Microsoft Corporation Synchronization manager for standardized synchronization of separate programs
US6873982B1 (en) 1999-07-16 2005-03-29 International Business Machines Corporation Ordering of database search results based on user feedback
JP3791879B2 (ja) 1999-07-19 2006-06-28 富士通株式会社 文書要約装置およびその方法
US6853950B1 (en) 1999-07-20 2005-02-08 Newsedge Corporation System for determining changes in the relative interest of subjects
US6532023B1 (en) 1999-08-12 2003-03-11 International Business Machines Corporation Recording selected applet events of a user interaction sequence
US6631345B1 (en) * 1999-08-12 2003-10-07 International Business Machines Corporation Recording, storing, and emulating user interaction events
US6513036B2 (en) 1999-08-13 2003-01-28 Mindpass A/S Method and apparatus for searching and presenting search result from one or more information sources based on context representations selected from the group of other users
US6321228B1 (en) 1999-08-31 2001-11-20 Powercast Media, Inc. Internet search system for retrieving selected results from a previous search
US6681247B1 (en) 1999-10-18 2004-01-20 Hrl Laboratories, Llc Collaborator discovery method and system
US6526405B1 (en) 1999-12-17 2003-02-25 Microsoft Corporation Determining similarity between event types in sequences
US6480837B1 (en) 1999-12-16 2002-11-12 International Business Machines Corporation Method, system, and program for ordering search results using a popularity weighting
US6981040B1 (en) 1999-12-28 2005-12-27 Utopy, Inc. Automatic, personalized online information and product services
US6662226B1 (en) * 2000-01-27 2003-12-09 Inbit, Inc. Method and system for activating and capturing screen displays associated with predetermined user interface events
US6834308B1 (en) 2000-02-17 2004-12-21 Audible Magic Corporation Method and apparatus for identifying media content presented on a media playing device
US6877027B1 (en) 2000-02-19 2005-04-05 Hewlett-Packard Development Company, L.P. System and method for providing synchronization verification of multiple applications across remote systems
US6691175B1 (en) 2000-02-25 2004-02-10 Sun Microsystems, Inc. Method and apparatus for managing data propagation between software modules
US20020049608A1 (en) 2000-03-03 2002-04-25 Hartsell Neal D. Systems and methods for providing differentiated business services in information management environments
US6728763B1 (en) 2000-03-09 2004-04-27 Ben W. Chen Adaptive media streaming server for playing live and streaming media content on demand through web client's browser with no additional software or plug-ins
US6665715B1 (en) 2000-04-03 2003-12-16 Infosplit Inc Method and systems for locating geographical locations of online users
GB2361555A (en) 2000-04-17 2001-10-24 Apama Inc Method of evaluating queries against received event information
US7500249B2 (en) 2000-05-02 2009-03-03 Sun Microsystems, Inc. Cluster event service method and system
US6697838B1 (en) 2000-05-03 2004-02-24 Software Leader, Llc Method and system for annotating information resources in connection with browsing, in both connected and disconnected states
GB0012354D0 (en) 2000-05-22 2000-07-12 Nokia Networks Oy A method and system for providing location dependent information
WO2001093096A2 (en) 2000-05-30 2001-12-06 Koki Uchiyama Distributed monitoring system providing knowledge services
US6711572B2 (en) 2000-06-14 2004-03-23 Xosoft Inc. File system for distributing content in a data network and related methods
US6990513B2 (en) 2000-06-22 2006-01-24 Microsoft Corporation Distributed computing services platform
GB0016974D0 (en) 2000-07-12 2000-08-30 Univ Salford The Document retrieval system
US7035852B2 (en) * 2000-07-21 2006-04-25 International Business Machines Corporation Implementing a message queuing interface (MQI) indexed queue support that adds a key to the index on put commit
US7080073B1 (en) 2000-08-18 2006-07-18 Firstrain, Inc. Method and apparatus for focused crawling
US6907577B2 (en) 2000-09-06 2005-06-14 Trace Tervo System and method for accessing screen fields, functions and programs using a simple single key stroke
US6934740B1 (en) 2000-09-19 2005-08-23 3Com Corporation Method and apparatus for sharing common data objects among multiple applications in a client device
US6614729B2 (en) 2000-09-26 2003-09-02 David D. Griner System and method of creating digital recordings of live performances
US20020042789A1 (en) 2000-10-04 2002-04-11 Zbigniew Michalewicz Internet search engine with interactive search criteria construction
US7680672B2 (en) 2000-10-20 2010-03-16 Adobe Systems, Incorporated Event collection architecture
US20020073076A1 (en) 2000-12-11 2002-06-13 Yongjie Xu System and method for enabling off-line database functionality
WO2002050703A1 (en) 2000-12-15 2002-06-27 The Johns Hopkins University Dynamic-content web crawling through traffic monitoring
US7136881B2 (en) 2000-12-15 2006-11-14 International Business Machines Corporation Method and system for processing directory events
US7440943B2 (en) 2000-12-22 2008-10-21 Xerox Corporation Recommender system and method
US6983310B2 (en) 2000-12-29 2006-01-03 International Business Machines Corporation System and method for providing search capabilties on a wireless device
US6772143B2 (en) 2001-01-02 2004-08-03 Sprint Spectrum L.P. Method and system for managing messages
US20020091972A1 (en) 2001-01-05 2002-07-11 Harris David P. Method for predicting machine or process faults and automated system for implementing same
US6714939B2 (en) 2001-01-08 2004-03-30 Softface, Inc. Creation of structured data from plain text
US20020091568A1 (en) 2001-01-10 2002-07-11 International Business Machines Corporation Personalized profile based advertising system and method with integration of physical location using GPS
US6658423B1 (en) 2001-01-24 2003-12-02 Google, Inc. Detecting duplicate and near-duplicate files
US7168093B2 (en) 2001-01-25 2007-01-23 Solutionary, Inc. Method and apparatus for verifying the integrity and security of computer networks and implementation of counter measures
US20030055828A1 (en) 2001-03-29 2003-03-20 Koch Kevin S. Methods for synchronizing on-line and off-line transcript projects
US7856420B2 (en) 2001-04-19 2010-12-21 Hewlett-Packard Development Company, L.P. Zero latency enterprise enriched publish/subscribe
US20020184406A1 (en) 2001-05-29 2002-12-05 International Business Machines Corporation Method and system for handling window-based graphical events
US7293014B2 (en) 2001-06-18 2007-11-06 Siebel Systems, Inc. System and method to enable searching across multiple databases and files using a single search
MXPA03011976A (es) 2001-06-22 2005-07-01 Nervana Inc Sistema y metodo para la recuperacion, manejo, entrega y presentacion de conocimientos.
US20040230572A1 (en) 2001-06-22 2004-11-18 Nosa Omoigui System and method for semantic knowledge retrieval, management, capture, sharing, discovery, delivery and presentation
US6802055B2 (en) 2001-06-27 2004-10-05 Microsoft Corporation Capturing graphics primitives associated with any display object rendered to a graphical user interface
US20030028506A1 (en) 2001-06-29 2003-02-06 Lin Yu Deferred index building systems, methods and computer program products for storing temporally spaced apart bursts of data records in a database
CN1547720A (zh) 2001-07-05 2004-11-17 产生并传送商业事件的系统和方法
US20030018521A1 (en) 2001-07-17 2003-01-23 International Business Machines Corporation Advertising based upon events reported from a GPS enabled event report system
US8285701B2 (en) 2001-08-03 2012-10-09 Comcast Ip Holdings I, Llc Video and digital multimedia aggregator remote content crawler
US7082365B2 (en) 2001-08-16 2006-07-25 Networks In Motion, Inc. Point of interest spatial rating search method and system
JP2003067306A (ja) * 2001-08-24 2003-03-07 Hitachi Ltd 電子メールの蓄積管理方法
US7076483B2 (en) 2001-08-27 2006-07-11 Xyleme Sa Ranking nodes in a graph
US7328242B1 (en) 2001-11-09 2008-02-05 Mccarthy Software, Inc. Using multiple simultaneous threads of communication
CA2467404A1 (en) 2001-11-15 2003-05-30 Visto Corporation System and methods for asychronous synchronization
US7363590B2 (en) 2001-11-27 2008-04-22 International Business Machines Corporation Calendar bar interface for electronic mail interaction
US20030131061A1 (en) 2001-11-28 2003-07-10 Active Buddy, Inc. Transparent proxy server for instant messaging system and methods
US20030123442A1 (en) 2001-12-27 2003-07-03 Drucker Benjamin T. Distributed usage metering of multiple networked devices
US6947924B2 (en) 2002-01-07 2005-09-20 International Business Machines Corporation Group based search engine generating search results ranking based on at least one nomination previously made by member of the user group where nomination system is independent from visitation system
CN1186737C (zh) 2002-02-05 2005-01-26 国际商业机器公司 对尚未访问的网页进行基于路径的排队的方法和系统
US20030154071A1 (en) 2002-02-11 2003-08-14 Shreve Gregory M. Process for the document management and computer-assisted translation of documents utilizing document corpora constructed by intelligent agents
US7062592B2 (en) * 2002-03-25 2006-06-13 Intel Corporation Selecting a queue for service in a queuing system
US7016919B2 (en) 2002-03-29 2006-03-21 Agilent Technologies, Inc. Enterprise framework and applications supporting meta-data and data traceability requirements
US7096255B2 (en) 2002-05-21 2006-08-22 Bellsouth Intellectual Property Corp. System and method for providing a roster list of temporary contacts having expiration periods designated by a user in an instant messaging environment
US7016914B2 (en) * 2002-06-05 2006-03-21 Microsoft Corporation Performant and scalable merge strategy for text indexing
US6968509B1 (en) 2002-06-05 2005-11-22 Microsoft Corporation Recording of user-driven events within a computer application
US20040002959A1 (en) 2002-06-26 2004-01-01 International Business Machines Corporation Method and system for providing context sensitive support for data processing device user search requests
US20040003038A1 (en) 2002-06-27 2004-01-01 Microsoft Corporation Live content processing for online presentation
JP4452012B2 (ja) 2002-07-04 2010-04-21 ヒューレット・パッカード・カンパニー 文書の特有性評価方法
US7099887B2 (en) 2002-08-08 2006-08-29 International Business Machines Corporation Hierarchical environments supporting relational schemas
US20040031027A1 (en) 2002-08-08 2004-02-12 Hiltgen Daniel K. System for updating diverse file versions
US20070022155A1 (en) 2002-08-22 2007-01-25 Owens David H Method and system for integrating enterprise software applications with desktop software applications
US7496559B2 (en) 2002-09-03 2009-02-24 X1 Technologies, Inc. Apparatus and methods for locating data
US7933957B2 (en) 2002-09-17 2011-04-26 At&T Intellectual Property Ii, L.P. Tracking email and instant messaging (IM) thread history
WO2004027576A2 (en) * 2002-09-18 2004-04-01 Netezza Corporation Asymmetric data streaming architecture having autonomous and asynchronous job processing unit
US20040064447A1 (en) 2002-09-27 2004-04-01 Simske Steven J. System and method for management of synonymic searching
US7254573B2 (en) 2002-10-02 2007-08-07 Burke Thomas R System and method for identifying alternate contact information in a database related to entity, query by identifying contact information of a different type than was in query which is related to the same entity
US7360096B2 (en) 2002-11-20 2008-04-15 Microsoft Corporation Securely processing client credentials used for Web-based access to resources
GB0228447D0 (en) 2002-12-06 2003-01-08 Nicholls Charles M System for detecting and interpreting transactions events or changes in computer systems
US20040133560A1 (en) 2003-01-07 2004-07-08 Simske Steven J. Methods and systems for organizing electronic documents
US20040187075A1 (en) 2003-01-08 2004-09-23 Maxham Jason G. Document management apparatus, system and method
US6864901B2 (en) 2003-02-11 2005-03-08 Academia Sinica Real-time screen recording system
US20040193596A1 (en) * 2003-02-21 2004-09-30 Rudy Defelice Multiparameter indexing and searching for documents
US7930301B2 (en) 2003-03-31 2011-04-19 Microsoft Corporation System and method for searching computer files and returning identified files and associated files
US7467390B2 (en) 2003-04-01 2008-12-16 International Business Machines Corporation Enhanced staged event-driven architecture
US7480716B2 (en) 2003-04-28 2009-01-20 International Business Machines Corporation Non-invasive collection of data
US7412491B2 (en) 2003-04-30 2008-08-12 International Business Machines Corporation Method and apparatus for enhancing instant messaging systems
US7694223B2 (en) 2003-06-04 2010-04-06 Sony Computer Entertainment Inc. Methods and systems for recording user actions in computer programs
US7668888B2 (en) 2003-06-05 2010-02-23 Sap Ag Converting object structures for search engines
US20040255301A1 (en) 2003-06-13 2004-12-16 Andrzej Turski Context association schema for computer system architecture
US7162473B2 (en) 2003-06-26 2007-01-09 Microsoft Corporation Method and system for usage analyzer that determines user accessed sources, indexes data subsets, and associated metadata, processing implicit queries based on potential interest to users
US7577939B2 (en) 2003-06-27 2009-08-18 International Business Machines Corporation Method, system and program product for sharing source code over a network
US7565425B2 (en) 2003-07-02 2009-07-21 Amazon Technologies, Inc. Server architecture and methods for persistently storing and serving event data
US7330536B2 (en) 2003-09-05 2008-02-12 Emc Corporation Message indexing and archiving
US7454417B2 (en) 2003-09-12 2008-11-18 Google Inc. Methods and systems for improving a search ranking using population information
US20050060719A1 (en) 2003-09-12 2005-03-17 Useractive, Inc. Capturing and processing user events on a computer system for recording and playback
US7487235B2 (en) 2003-09-24 2009-02-03 Dell Products L.P. Dynamically varying a raid cache policy in order to optimize throughput
US7499974B2 (en) 2003-09-30 2009-03-03 International Business Machines Corporation Instant message user management
US20050080866A1 (en) 2003-10-14 2005-04-14 Kent Larry G. Selectively displaying time indications for instant messaging (IM) messages
US7457872B2 (en) 2003-10-15 2008-11-25 Microsoft Corporation On-line service/application monitoring and reporting system
US8150923B2 (en) 2003-10-23 2012-04-03 Microsoft Corporation Schema hierarchy for electronic messages
US20050114487A1 (en) 2003-11-12 2005-05-26 Jin Peng Notification framework and method of distributing notification
US7475406B2 (en) 2003-12-15 2009-01-06 International Business Machines Corporation Event notification structure for dynamically aggregated logical components
US7383307B2 (en) 2004-01-07 2008-06-03 International Business Machines Corporation Instant messaging windowing for topic threads
US7194451B2 (en) 2004-02-26 2007-03-20 Microsoft Corporation Database monitoring system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000099441A (ja) * 1998-09-25 2000-04-07 Fujitsu Ltd 情報を調整して提示する情報提示装置および方法
JP2003242176A (ja) * 2001-12-13 2003-08-29 Sony Corp 情報処理装置および方法、記録媒体、並びにプログラム
JP2003296365A (ja) * 2002-03-29 2003-10-17 Sony Corp 情報処理装置および方法、記録媒体、並びにプログラム
JP2004062451A (ja) * 2002-07-26 2004-02-26 Sharp Corp 情報提示方法、情報提示装置、情報提示プログラム、情報提示プログラムを記録したコンピュータ読み取り可能な記録媒体、スケジュール管理方法

Also Published As

Publication number Publication date
EP1745360B1 (en) 2011-05-11
ES2373297T3 (es) 2012-02-02
US7725508B2 (en) 2010-05-25
EP1745360A4 (en) 2008-04-23
WO2005098594A3 (en) 2007-06-28
ATE509319T1 (de) 2011-05-15
JP2007534057A (ja) 2007-11-22
WO2005098594A2 (en) 2005-10-20
EP1745360A2 (en) 2007-01-24
US20050234848A1 (en) 2005-10-20

Similar Documents

Publication Publication Date Title
JP4812747B2 (ja) 情報を取り込み抽出する方法及びシステム
AU2005231112B2 (en) Methods and systems for structuring event data in a database for location and retrieval
US10180980B2 (en) Methods and systems for eliminating duplicate events
US9836544B2 (en) Methods and systems for prioritizing a crawl
US7941439B1 (en) Methods and systems for information capture
US8275839B2 (en) Methods and systems for processing email messages
US7333976B1 (en) Methods and systems for processing contact information
US9672232B1 (en) Systems and methods for selectively storing event data
US7580568B1 (en) Methods and systems for identifying an image as a representative image for an article
US20050234929A1 (en) Methods and systems for interfacing applications with a search engine
US7707142B1 (en) Methods and systems for performing an offline search
US7412708B1 (en) Methods and systems for capturing information
US20080059419A1 (en) Systems and methods for providing search results
US20090276408A1 (en) Systems And Methods For Generating A User Interface
US7680888B1 (en) Methods and systems for processing instant messenger messages
US7499958B1 (en) Systems and methods of replicating all or part of a data store
US8631076B1 (en) Methods and systems for associating instant messenger events
US7581227B1 (en) Systems and methods of synchronizing indexes
US9959300B1 (en) Systems and methods for article location and retrieval

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080327

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080327

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100615

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101130

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110225

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110304

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110325

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110401

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110420

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110427

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110530

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20110530

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110802

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110823

R150 Certificate of patent or registration of utility model

Ref document number: 4812747

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140902

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250