(57)【要約】いくつかの可能なフォーマット（260）のうちのどれか１つであってよい情報を確実に検索し、その後、この情報をいくつかの可能なフォーマットのうちのどれか1つで表示するシステム（200）。ユーザによって定義されたエージェント（240）は、ヒューリスティック・アルゴリズム（230）に基づいてターゲット・データを検索し、ターゲット・データを、特定のアプリケーションに最も適した任意の形式で再発行するのが可能な標準形式で記憶するのに用いられる。システム（200）は、デスクトップ・システム上で表示できる情報をインタネット上で得るのに特に適しているが、表示機能または計算機能が限られているアプリケーションにも適している。【選択図】図２
2004536398.tif 000002
【特許請求の範囲】
【請求項１】
複数の可能なフォーマットのうちのどれか1つである第1のデータ・セットを第1の所定のデータ源から検索する検索手段と、
前記第1のデータ・セットを分析し、前記第1のデータ・セットに含まれる第2のデータ・セットを選択する分析手段と、
前記第2のデータ・セットを定義済みの記憶フォーマットでデータ記憶装置に記憶する記憶手段であって、第1のデータ・セットのフォーマットが前記記憶フォーマットと異なる場合に前記第2のデータ・セットを前記記憶フォーマットにフォーマッティングする手段を含む記憶手段と、
前記第2のデータ・セットを前記データ記憶装置から再呼び出しし、表示フォーマットが前記記憶フォーマットと異なる場合に前記第2のデータ・セットを表示装置上に前記表示フォーマットで表示できるようにフォーマッティングする手段とを備える装置。
【請求項２】
前記検索手段、前記分析手段、前記記憶手段、および前記再呼出し手段はすべて、単一のコンピュータ装置上に存在し、かつ単一のコンピュータ装置上で実行される、請求項1に記載の装置。
【請求項３】
前記表示装置はテレビジョン・モニタであり、前記再呼出し手段は、ケーブル・セットトップ・ボックスに組み込まれている、請求項1に記載の装置。
【請求項４】
前記検索手段、前記分析手段、および前記記憶手段はすべて、ケーブル接続を介して前記セットトップ・ボックスとデータを交換する中央コンピュータ上に存在し、かつこの中央コンピュータ上で実行される、請求項3に記載の装置。
【請求項５】
前記第1のデータ・セットは、ホーム・ゲートウェイ・システムから得た装置の状態に関するデータを含む、請求項１に記載の装置。
【請求項６】
前記検索手段、前記分析手段、および前記記憶手段はすべて、インタネット上で前記ホーム・ゲートウェイ・システムと通信するコンピュータ上に存在し、かつこのコンピュータ上で実行される、請求項5に記載の装置。
【請求項７】
前記表示装置は、インタネット電話上のスクリーンであり、前記再呼出し手段は前記インタネット電話に組み込まれている、請求項1に記載の装置。
【請求項８】
前記検索手段、前記分析手段、および前記記憶手段はすべて、携帯電話網を介して前記インタネット電話とデータを交換する中央コンピュータ上に存在し、かつこの中央コンピュータ上で実行される、請求項7に記載の装置。
【請求項９】
前記表示装置はPDA上の画面である、請求項1に記載の装置。
【請求項１０】
前記第1の所定のデータ源は、外部装置に関するステータス情報を含み、前記第1のデータ・セットは前記ステータス情報を含む、請求項1に記載の装置。
【請求項１１】
前記分析手段は、
第1の方法を用いて、前記第2のデータ・セットとして選択される第1の候補を識別する第1の識別手段と、
前記第1の方法とは異なる第2の方法を用いて、前記第2のデータ・セットとして選択される第2の候補を識別する第2の識別手段と、
前記第2の方法および前記第1の方法とは異なる第3の方法を用いて、前記第2のデータ・セットとして選択される第3の候補を識別する第3の識別手段と、
前記第1、第2、および第3の識別手段に応答して、前記第1、第2、および第3の候補のうちの1つを前記第2のデータ・セットとして選択する選択手段とを備える、請求項1に記載の装置。
【請求項１２】
前記選択手段は、前記第1の識別手段に割り当てられた第1の重み、前記第2の識別手段に割り当てられた第2の重み、および前記第3の識別手段に割り当てられた第3の重みに基づいて前記第1、第2、および第3の候補のうちの1つを選択する、請求項11に記載の装置。
【請求項１３】
前記選択手段に応答して、前記選択手段によって選択された前記第2のデータ・セットと前記第1の候補との対応の程度に基づいて前記第1の重みを変更し、前記選択手段によって選択された前記第2のデータ・セットと前記第2の候補との対応の程度に基づいて前記第2の重みを変更し、前記選択手段によって選択された前記第2のデータ・セットと前記第3の候補との対応の程度に基づいて前記第3の重みを変更する手段をさらに備える、請求項12に記載の装置。
【請求項１４】
いくつかの可能なフォーマットのうちのどれか1つである第1のデータ・セットを第1の所定のデータ源から検索し、いくつかの可能なフォーマットのうちのどれか1つである第2のデータ・セットを第2の所定のデータ源から検索する検索手段と、
前記第1のデータ・セットを分析して、前記第1のデータ・セットに含まれる第1のデータ・サブセットを選択し、前記第2のデータ・セットを分析して、前記第2のデータ・セットに含まれる第2のデータ・サブセットを選択する分析手段と、
前記第1のデータ・サブセットおよび前記第2のデータ・サブセットを表示装置上に表示する手段であって、前記表示装置上での表示の必要に応じて前記第1のデータ・サブセットおよび前記第2のデータ・サブセットを再フォーマッティングする手段を含む手段とを備える装置。
【請求項１５】
前記第1の所定のデータ源はインタネット・リソースである、請求項14に記載の装置。
【請求項１６】
前記第2の所定のデータ源は企業イントラネット・リソースである、請求項14に記載の装置。
【請求項１７】
前記表示装置はコンピュータ・モニタである、請求項14に記載の装置。
【請求項１８】
前記表示装置はテレビジョン・モニタであり、前記表示手段はケーブル・セットトップ・ボックスに組み込まれている、請求項14に記載の装置。
【請求項１９】
前記表示装置は、インタネット電話上の画面である、請求項14に記載の装置。
【請求項２０】
前記表示装置はPDA上の画面である、請求項14に記載の装置。
【請求項２１】
前記第1のデータ・サブセットおよび前記第2のデータ・サブセットを定義済みの記憶フォーマットでデータ記憶装置に記憶する記憶手段をさらに備え、前記記憶手段は、第1のデータ・サブセットおよび第2のデータ・サブセットのフォーマットが前記記憶フォーマットと異なる場合に前記第1のデータ・サブセットおよび前記第2のデータ・サブセットをフォーマッティングする手段を含む、請求項14に記載の装置。
【請求項２２】
任意の元のフォーマットである第1のデータ・セットを所定のデータ源から検索するステップと、
前記第1のデータ・セットを分析して、前記第1のデータ・セットに含まれる第2のデータ・セットを選択するステップと、
前記第2のデータ・セットをデータ記憶装置に定義済みの記憶フォーマットで記憶するステップであって、前記元のフォーマットが前記記憶フォーマットと異なる場合に前記第2のデータ・セットを前記記憶フォーマットにフォーマッティングすることを含むステップと、
表示フォーマットが前記記憶フォーマットと異なる場合に前記第2のデータ・セットを前記表示フォーマットで表示できるようにフォーマッティングすることを含む、前記第2のデータ・セットを前記データ記憶装置から検索するステップとを含む方法。
【請求項２３】
経時的に変更されることがあるコンテントを有するデータ・コレクションからデータのサブセットを検索する方法であって、
前記データ・コレクションからデータのサブセットを検索する第1の方法に第1の重み係数を割り当てるステップと、
前記データ・コレクションからデータのサブセットを検索する第2の方法に第2の重み係数を割り当てるステップと、
前記データ・コレクションからデータのサブセットを検索する第3の方法に第3の重み係数を割り当てるステップと、
前記第1の方法を用いて前記データ・コレクションの第1の候補サブセットを判定し、前記第2の方法を用いて前記データ・コレクションの第2の候補サブセットを判定し、前記第3の方法を用いて前記データ・コレクションの第3の候補サブセットを判定するステップと、
前記第1、第2、および第3の重み係数に基づいて、前記第1、第2、および第3の候補サブセットを結果サブセットとして選択するステップと、
前記第1の候補サブセットが前記結果サブセットに一致するかどうかに基づいて前記第1の重み係数を調整し、前記第2の候補サブセットが前記結果サブセットに一致するかどうかに基づいて前記第2の重み係数を調整し、前記第3の候補サブセットが前記結果サブセットに一致するかどうかに基づいて前記第3の重み係数を調整するステップとを含む方法。
【発明の詳細な説明】
【技術分野】
【０００１】
発明の分野
本発明は概して、データを選択的に検索し表示することに関する。特に、本発明は、いくつかの可能なフォーマットのうちのどれか1つにおける元のデータからデータを選択的に検索し、その後、検索されたデータを、ユーザの必要または好みに応じていくつかの可能なフォーマットのどれか１つで表示することに関する。
【背景技術】
【０００２】
発明の背景
インタネットによって、考えられないほど大量の情報を検索し検討することができる。この情報は通常、様々なウェブ・ページのコンテントとして得ることができる。Google（商標名）などの検索エンジンは現在、ユーザから入力された問合せに応答して10億ページを優に超える数のウェブ・ページを検索する。このような探索エンジンは一般に、その目的を満たすが、ユーザは情報を見つけて検索することが必要になるたびに探索問合せを作成し入力する必要がある。これは、場合によっては、「エージェント」、「スパイダー」、「ボッツ」などと呼ばれる、データを検索するある種の自動プロセスによって不要になる。しかし、これらのプロセスは、少なくともその現在のインプリメンテーションでは欠点を有する。たとえば、インタネット上で得られるウェブ・ページ上の情報は、ネイティブ・フォーマットの点で様々である。これらの自動化プロセスは、このような情報源からデータを確実に検索するうえで難点を有することがある。
【０００３】
この情報にアクセスしそれを表示するのに用いることのできる装置の数も大幅に増加している。PC、エンタプライズ・サーバ、PDA、インタネット電話、ケーブルTVセットトップ・ボックス、およびホーム・ゲートウェイ・システムは、現在インタネット上で情報にアクセスするのに用いることのできる装置の例である。この場合も、これらの装置は、データを適切に表示するのに必要なフォーマットの点で様々である。さらに、これらの装置には、計算力およびメモリに関してかなり制限されているものがあり、かつそのような装置は様々なオペレーティング・システムを使用している。
【０００４】
したがって、最初はいくつかのフォーマットのうちのどれか１つであるデータを確実に検索することができ、その後、そのデータをいくつかの可能なフォーマットのうちのどれか１つで表示することができるシステムが必要である。同時に、このシステムは、小形であり、いくつかの可能なオペレーティング・システムおよび環境のうちのどれか１つの下で動作できることが望ましい。
【発明の開示】
【０００５】
本発明は、最初は様々なフォーマットのうちのどれか１つであるデータを検索し、そのデータをいくつかのフォーマットのうちのどれか１つで表現することのできるシステムを提供することによってこれらの要件を満たす。たとえば、データが最初、インタネット上でPCを用いてアクセスされるウェブ・ページ内にある場合、定義済みのエージェントを使用して、所定の技術を用いてデータが識別され、かつ追加のエージェントを使用して、このデータが、ユーザによって定義されたページ・ビューの一部として他のエージェントを用いることによって検索されたデータと一緒に表示できるようにフォーマッティングされる。
【発明を実施するための最良の形態】
【０００６】
好ましい実施形態の説明
本発明の一態様は、データまたはコンテントをインタネットから収集し、そのデータを再発行するシステムであり、この場合、収集は再発行にリンクされない。システムは、それが収集する必要のあるデータのフォーマットや、そのデータを最終的に再発行する必要のあるフォーマット（または複数のフォーマット）に関する事前の情報を必要としない。その代わり、システムは、収集プロセスにおいて出くわす可能性のあるいくつかの可能なフォーマットのうちのどれか１つを再フォーマッティングし、その後この標準フォーマットを再発行できるように様々なフォーマットのうちのどれかに変換する機能を有する。現在好ましい一実施形態では、収集機能、記憶機能、および再発行機能はすべて、ローカル・コンピュータ上で実行される。ケーブル・セットアップ・ボックスやインタネット電話のような他の実施形態では、これらの機能は、サーバ型装置とローカル・コンピュータ装置との間で分散させることができる。
【０００７】
次に図面を参照すると、同じまたは類似の要素を指すのに同じ参照符号が用いられており、図1は、本発明によるシステムが動作することのできる環境を示している。ユーザのローカル・コンピュータ110は、コンピュータ110上にロードされ、コンピュータ110上でアクティブである1つまたは複数のソフトウェア「エージェント」100を有している。ローカル・コンピュータ110は、Apple MAC、IBM-PCタイプ、UNIXオペレーティング・システムまたはLINUXオペレーティング・システムを使用するコンピュータ、パーソナル・デジタル・アシスタント（「PDA」）、インタネット電話、ケーブル・セットトップ・ボックス、またはユーザ入力を受け付け、インタネットにアクセスし、グラフィカル・コンテントまたはテキスト・コンテントを1人または複数のユーザに表示することのできる他のコンピュータ装置などであってよい。ローカル・コンピュータ110は、特に、ローカル・エリア・ネットワーク（LAN）ダイヤルアップ電話、デジタル加入者回線（DSL）、TI回線、ケーブル・モデム、または様々な無線接続を含む、任意の既知の接続130を介してインタネットなどのコンピュータ・ネットワーク120に接続されている。
【０００８】
コンピュータ・ネットワーク120は複数のデータ源140を含んでいる。いくつかまたはすべてのデータ源140は、エージェント100を用いてアクセスすることができ、場合によってここではターゲット・コンテントと呼ばれる所望の情報コンテントを含むウェブ・ページであってよい。ターゲット・データ源の可能な形式は、従来のウェブ・ページに限らず、HTMLドキュメント、XMLドキュメント、テキスト・ファイル、グラフィック・ファイル、メール・メッセージ、データベース・ファイル、および他の同様の種類のコンピュータ・ファイルを含んでよい。各エージェント100は、単一のデータ源140とのリンクを含んでいる。データ源140は、従来のウェブ・ブラウザによってアクセスすることができ、情報コンテントは、従来のウェブ・ブラウザによって読み取れるフォーマットである。
【０００９】
エージェント100は、全体的にユーザのコンピュータ110上に存在することができ、作動させられると、たとえば、データ源140の指定されたURLに位置するターゲット・ウェブ・ページをダウンロードするのに用いられる。多くのエージェント100は、単一のユーザのコンピュータ上でアクティブであり、多数の異なるターゲット・ウェブ・ページからターゲット・コンテントを検索することができる。
【００１０】
本発明によるシステムは、エージェント・ソフトウェアおよび／またはデータのユーザが位置するローカル・コンピュータ上にのみシステムが存在し、かつこのコンピュータ上でのみシステムを実行することができるので特に有利である。エージェントを機能させるのに、他のコンピュータ上でエージェント・ルーチンを実行する必要はなく、エージェント・ソフトウェアがその機能を実行するには、リモート・コンピュータ上に記憶されている情報にアクセスするだけでよい。エージェントは、1つまたは複数の特定のリモート位置からコンテントを検索し、フォーマッティングし、記憶することによって個々のユーザ用のパーソナル・インタネット・ポータルを作成するのに用いることができる。次いで、記憶されたコンテントを、多数の異なるリモート位置から得たコンテントを単一のローカル・ページ上に表すパーソナル・パブリケーションに含めることができる。
【００１１】
本発明は、適切にプログラムされたコンピューティング装置上で実施することができる。このような場合、プログラミングは好ましくは、積層アーキテクチャまたは層化アーキテクチャを有する。言い換えれば、アプリケーションの設計は好ましくは、様々な機能層に区分される。1つのこのようなインプリメンテーションが図2に示されている。アーキテクチャのベースにオペレーティング・システム200がある。アプリケーションは、数種類のオペレーティング・システムのうちのどれとでも働くことができるように、すなわち、オペレーティング・システムに依存しないように設計することができ、したがって、オペレーティング・システムは、Macintosh(R)、Windows32(R)、LINUX、Solaris、Posix 1.1のような任意の従来のオペレーティング・システムであってよい。
【００１２】
アプリケーション・アーキテクチャにおける次の層は好ましくは、オペレーティング・システムとのインタフェースをとるインタフェース層すなわち「グルー」層210である。インタフェース層210は、オペレーティング・システム200からのコマンドを上位レベル関数用のコマンドに変換する。同様に、逆方向では、インタフェース層210は上位レベル関数からのコマンドをオペレーティング・システム・コマンドに変換する。これによって、アプリケーションは、適切なインタフェースが与えられれば、修正なしにあらゆる種類のオペレーティング・システム上に存在することができる。
【００１３】
モジュール層220は、ファイル入出力モジュール221、ネットワーク入出力モジュール222、HTMLツール・モジュール223、XMLツール・モジュール224、文字列処理モジュール225、実行ストリング・モジュール226、構成スクリプト・モジュール227、データベース管理（DBMS）モジュール228のような基本関数用のモジュールを含んでいる。空白のボックス229は、この可能なモジュールのリストが網羅的なものではなく、所与のアプリケーションの要件に応じて異なるまたは追加のモジュールを含めてよいことを示すものである。
【００１４】
アクション・エンジン層230は、モジュールのインプリメンテーションの詳細を各モジュール間で互いに隠し、かつアプリケーションの他の層から隠すことによって、モジュール層220における各モジュールの相互運用性および拡張性を実現する。モジュール層220における各モジュールは、アプリケーション・プログラム内で実施することも、アプリケーションのスクリプト作成言語におけるスクリプトとして実施することも、アプリケーションに動的に併合される様々なプラグイン・モジュールとして実施することもできる。
【００１５】
層240は、タスク・スケジューリング・モジュール242、HTTPサーバ・モジュール244、スクリプト・ディスプレイ作成モジュール246などの上位レベル管理関数用のモジュールを備えている。
【００１６】
本発明の他の目標は、アプリケーションが「表示に対して寛容」であり、すなわち、アプリケーションが収集した情報を、ユーザが必要とするあらゆるフォーマットまたはユーザの所望のあらゆるフォーマットで表示できることである。この目標を実現するために、上位のモジュール層から得たデータをHTML、XML、テキスト、WML、DBMS、その他のフォーマットのようないくつかの従来のフォーマットのうちのどれか１つでレンダリングすることのできるレンダリング層250が設けられている。レンダリングされたデータは、それが表示される前の最終的な処理を施せるように表示モジュール層260内のモジュールに渡される。
【００１７】
図2に示されているようなシステムの動作は機能的には、ユーザなどによって定義され、ある指定された関数を実行するかまたはそのような関数を実行するのに用いることのできる様々なエージェントの動作とみなすことができる。エージェントは、エージェント関数（たとえば、データ検索や表示）を実施するときに他のプログラムによって用いられるデータ、または実行可能なプログラミング命令、またはデータとプログラミング命令の組合せで構成することができる。
【００１８】
図3、4、および5は、3つの主要な種類のソフトウェア・エージェントの構造を示している。
【００１９】
図3は、最終的に2つの関連する種類、すなわちスマート・エージェントと検索エージェントの一方であってよいエージェント100の一般的なアーキテクチャを示している。図3は、エージェント100の様々な部分の特有性を示しており、一般的なプログラミングが図の下部に、特有の命令が図の上部に示されている。
【００２０】
現在のエージェント100を他のエージェントと区別する命令は、コンピュータ110のユーザ・インタフェース310を用いてエージェント・ビルダ・プログラム300に入力される。エージェント・ビルダ・プログラム300は、入力された命令をスマート・エージェント情報に変換する。スマート・エージェント情報320は基本的に、他のエージェント・ソフトウェア・モジュールによって用いることのできるパラメータを有するデータである。
【００２１】
すべてのエージェント100はファウンデーション330を含んでいる。ファウンデーション330は、エージェントがその関数を実行するのに用いる様々なエージェント・ツールおよびライブラリ関数を含んでいる。ツールおよびライブラリ関数は、たとえば、ターゲット・ウェブ・サイトを要求しスマート・エージェント情報320によって指定されるURLから検索する関数、より大きなプログラム関数を実施するために組み合わせることのできる他の一般的なプログラミング・ルーチンなどを含んでよい。このファウンデーション330は、機能的に図2の層220に対応する。ファウンデーション330は、以下に詳しく説明するように、通信プロトコルならびにHTML解析ルーチンおよびRSS解析ルーチンをさらに含んでいる。
【００２２】
スマート・エージェント・エンジン340は、ファウンデーション330要素を用いて、スマート・エージェント情報320に基づいてエージェント100のプログラム命令を作成する。スマート・エージェント・エンジン340は、スマート・エージェント情報320から与えられる問題にツールおよびライブラリ・ルーチンを適用する定義済みのプロセスを含んでいる。スマート・エージェントは、エージェント・ソフトウェアの基本的なエージェントである。スマート・エージェントは、全体的に図2のアクション・エージェント層230に対応する。
【００２３】
検索エージェントは、検索エージェント情報350を含んでいる。検索エージェント情報350は、検索項目やユーザ名／パスワードの組合せのような他の情報を入力するためのプレースホルダをスマート・エージェント情報320に追加する。検索エージェントは、特にインデックス付けされた検索可能な情報を与える既知のリモート・サイト（たとえば、ウェブ・サイト）から検索結果を検索するのに用いることができる。検索エージェント情報350は、スマート・エージェント・エンジン340によって作成されたプログラムに追加の命令を追加させる。
【００２４】
カスタム・エージェント・モジュール400は、図4に示されているように、ファウンデーション330と直接対話し、ファウンデーション330上に形成されている。カスタム・エージェント・モジュール400は、ファウンデーション330の要素を用いてプログラム・プロセスを作成し動作させるエンジン410を含んでいる。カスタム・エージェント・モジュール200は、基本的なスマート・エージェント・エンジン340ではイネーブルできない専用関数を組み込んでいる。
【００２５】
RSS型エンジン100が図5に示されている。インタネット上のいくつかのサイトは、XMLの特定の構造化形式であるRSSと呼ばれるフォーマットの情報を含んでいる。RSSフォーマットは、非常に特定的なフォーマットであり、RSSフォーマットのすべてのデータは常に、同じ構造を有している。RDFと呼ばれる他の類似のフォーマットがある。
【００２６】
RSS型エージェントは、上述の図3のスマート・エージェントの簡略化されたバージョンである。RSS型エージェント100は、RSSやRDFのような所定の既知の構造に記憶された任意のコンテントを検索するのに用いることができる。
【００２７】
RSS型エージェント100は、スマート・エージェントと同様にファウンデーション330を含んでいるが、RSSエージェント・エンジン500およびRSSエージェント情報510は簡略化されている。RSSエージェント情報510は、単に検索すべき所望のRSSフォーマットのURL位置から成っている。RSSエージェント・エンジン500は、RSSエージェント情報510内のURL位置によってのみ修正されるRSSフォーマットのコンテントを特定的に検索し記憶するように設計されたプログラム命令を含んでいる。
【００２８】
ターゲットがウェブ・サイトである例において情報コンテントを検索するエージェント100を作成するステップが図6のフローチャートに示されている。第1のステップ600では、ユーザ・インタフェース310上のアプリケーション・ウィンドウ上で、エージェント・タイプが、たとえば基本的なスマート・エージェント、検索エージェント、カスタム・エージェント、RSSエージェントなどとして指定される。次のステップ610では、ユーザ・インタフェース310およびエージェント・ビルダ300を用いてエージェント100に対してウェブ・サイトのターゲット・ページのURLが識別される（210）。次いで、次のステップ620で、ターゲット・ページのテキストおよびHTMLがダウンロードされ、全体的にローカル・マシン上に記憶される。
【００２９】
ターゲットURLが識別されると、任意に、ステップ630で、ターゲット・ウェブ・ページのコンテントをユーザ・インタフェース310によってブラウザ・ウィンドウ内に表示し参照することができる。
【００３０】
手順の主要なフローに戻ると、次いで次のステップ640で、エージェント・ビルダ115によってターゲット・ページが解析され（217）、ターゲット・ページの構造が判定される。構文および構造は、エージェント・ビルダ300によって分析され分解され、解析ツリーが構築される。解析ツリーは、HTML構文に関連する公知の意味を用いてターゲット・ウェブ・ページに存在するすべての主要な構造要素を表す。元のターゲット・ページの階層は、ターゲット・ドキュメント上に存在する各構造要素に対応するノードと一緒に判定される。プレーン・テキスト、画像参照、および他のすべてのウェブ・ページ構成要素は、それらをターゲット・ページ定義内に密閉し、かつ解析ツリー構造に木の要素として含められるHTML構文要素に関係付けされる。画像および非テキスト要素は、ターゲット・ウェブ・ページを検索するのに必要なHTTP（Hypertext Transmission Protocol）トランザクションとは異なる別個のHTTPトランザクションの結果であるので、好ましくはダウンロードされないことに留意されたい。
【００３１】
すべての場合に、ターゲット・ページから得られた元のHTMLフォーマッティング情報、構造情報、およびコンテントは、ターゲット・ページの元のバージョンを機能的に等価の形式で再作成するのを可能にする形式に維持される。
【００３２】
次に、650と指定されたステップで、スマート・エージェント、検索エージェント、およびカスタム・エージェントに対して、ウェブ・ページのターゲット・コンテントが、ユーザによって選択され、2つのステップでエージェントに対して識別される。ユーザは、ターゲット・コンテントの開始部分の所の固有のテキストを選択し、エージェント100に対してテキストを識別する。このテキストは、ターゲット・コンテントの開始マーカー・テキストと呼ばれる。次いで、ターゲット・コンテントの終了部分近くの第2の固有のテキストが選択され、エージェント100に対して識別される。このテキストは終了マーカー・テキストと呼ばれる。
【００３３】
開始・終了マーカー・テキストは、ターゲット・ウェブ・ページの、ユーザの所望のコンテントを含む部分を識別する。この構造に存在する実際のテキスト・コンテントは周期的に変更されることがあり、マーカー・テキストは、ターゲット・コンテントが最初、ウェブ・サイト上に位置していたターゲット・ページ内の構造を識別するのにのみ用いられる。
【００３４】
ターゲット・コンテント内の開始マーカー・テキストおよび終了マーカー・テキストの識別は、少なくとも3つの方法で行われる。ユーザは、ユーザ・インタフェース310上のエージェント・ビルダ・アプリケーション・ウィンドウにマーカー・テキストを手動で入力することによってテキストを識別することも、ターゲット・ウェブ・ページを表示するブラウザ・ウィンドウ内のテキストを選択し、エージェント・ビルダ300に選択されたテキストを検索させ、識別のための入力に用いることもできる。
【００３５】
開始・終了マーカー・テキストは、プレーン・テキスト、形式化されたテキスト、タグやコメントなどのHTML構文要素、またはターゲット・ウェブ・ページに含まれている他の任意のテキスト・ベースの情報で構成することができる。
【００３６】
すべての場合に、開始・終了マーカー・テキストは、エージェント・ビルダ300がウェブ・ページ構造および構文内のターゲット・コンテントの実際の物理的位置を判定するための開始点として用いることのできる、ターゲット・ウェブ・ページの厳密な構造内の、人間が読め取れる近似的な位置を識別するのに用いられる。人間が読み取って識別することのできる位置は、関心対象の領域全体を定める、ターゲット・ページから得たコンテントの単一のブロックで構成しても、関心対象の領域用の開始・終了マーカー・テキストとみなすべきテキストの不連続領域で構成してもよい。
【００３７】
開始・終了マーカー・テキストに用いられる固有のテキストは、厳密にコンテントの開始部分または終了部分に存在する必要はない。エージェント・ビルダ300は、ターゲット・ページ内の識別されたテキストをマーカー・テキストと突き合わせ、ターゲット・ウェブ・ページのどの部分が選択される部分であるかを判定するアルゴリズムを含んでいる。
【００３８】
マーカー・テキストは、ユーザによって識別されたテキストの大文字と小文字を区別しないバージョンに修正され、すべての不要な白スペースおよび中間フォーマッティングは削除される。次いで、600として指定された次のステップで、エージェント・ビルダ300は、解析ツリーにおいて、マーカー・テキストに一致するテキスト・ベースのコンテントのシーケンスを検索する。マーカー・テキストは、解析ツリーの複数のノードにまたがることができ、介在するHTMLフォーマッティング・タグによって物理的に分離することができる。エージェント・ビルダ300は、解析ツリー内の構造情報を用いて生HTML情報からコンテント指向情報の線形ストリームを再アセンブルすることができる。コンテント・ストリームは、修正されたマーカー・テキストと比較され、正しい構造が見つかったことが確認される。
【００３９】
解析の一例として、以下は簡単なHTMLドキュメントの構造を表していると仮定されたい。
【００４０】
2004536398.tif 000003
図7は、この構造の結果として得られる解析ツリー700がどのようなものになるかを示している。したがって、ユーザが開始マーカー・テキストを「火曜日」、終了マーカー・テキストを「ヘッドライン」として指定した場合、エージェント・ビルダ300は、解析ツリー700においてこのテキストを有する構造の位置を判定する。エージェント・ビルダ300は、開始マーカー・テキストが第1のテーブル710の第1の行720の第1のセルに含まれており、終了マーカー・テキストが第1のテーブル710の第1の行720の第2のセル724にあるのを認める。エージェント・ビルダ300は次いで、HTMLの有用で構文的に正しいフラグメントをターゲット・ページから抽出するエージェント100を構築するには、第1の行720内の両方のセル722、724のコンテントを抽出しなければならないと判定する。エージェント・ビルダ300は、周囲のHTMLフォーマッティングおよび要素も抽出し、抽出されたコンテントを完全な独立HTMLエンティティにする。したがって、結果として得られる抽出されたコンテントは、以下の構造を有する独立HTMLテーブルになる。
【００４１】
2004536398.tif 000004
第2のテーブル行は、ターゲット・コンテントから除外される。というのは、このテーブル行は、同じテーブルの一部であるにもかかわらず、ターゲット・オブジェクト、すなわち第1の行の外側にあったからである。
【００４２】
ターゲット・ページにおいてマーカー・テキストが見つかった後、解析ツリー内の構造位置が記憶される。これは、開始マーカー・テキストと終了マーカー・テキストの両方について行われる。
【００４３】
エージェント100がRSSエージェントである場合、RSSコンテントはその全体が取り出されるので開始・終了マーカー・テキストは必要ではない。RSSコンテントは、所望のコンテント全体に対応し、したがって、他の非RSSコンテントとは異なり、ターゲット・ウェブ・ページの識別しなければならない部分には存在しない。したがって、RSSエージェントについてはステップ650および660を飛ばすことができる。
【００４４】
図6に戻ると、解析ツリーにおいて開始マーカー・テキスト位置および終了マーカー・テキスト位置が識別されると、エージェント・ビルダ300は次のステップ670で、構造・統計情報、すなわち、後で、後述のコンテントを識別する方法を実行するために必要になるエージェント・データを自動的に生成する。したがって、エージェント・ビルダ300ソフトウェアは、一定のターゲットURL上の場合によっては変更されるターゲット・コンテントを含む構造を識別する際に用いることのできるエージェントを生成することが明らかである。
【００４５】
エージェント・ビルダ300は、解析ツリー階層内を往復して、すべての開始・終了マーカー・テキストを含む共通の構造要素を判定する。次いで、ターゲット・ページの将来の変更されたバージョンにおいて同じ位置を識別するのに用いられるデータが生成される。この機能によって、変更されるコンテントをターゲット・ページの同じ位置から繰り返し正確に検索するのにこのエージェントを用いることができる。このデータは後で、ファウンデーション330要素を用いたエージェント実行プロセス（後述）のダウンロード・ステップ、分析ステップ、および抽出ステップを自動化するプログラム命令と一緒に使用される。結果として得られたエージェント100は将来使用できるように記憶される。
【００４６】
上記で指摘したように、エージェントの1つの役割は、エージェントが作成されたときに指定されたリソースからデータを検索することである。データを取り出すこの機能は、所望のデータがリソースの構造内のどこに存在する可能性が高いかを確認し、次いでこのデータを検索することによって行われる。これを行う1つの比較的簡単な方法では、文字列整合またはパターン整合が用いられる。この方法では、検索すべきデータの直前に必ず第1の所与の文字列があり、その直後に必ず第2の所与の文字列があるか、または検索すべきデータは常に所定のパターンに一致すると仮定される。この仮定が妥当である場合、所望のデータの検索は、一致する文字列またはパターンを見つけてそれらの間のデータを取り込むことに過ぎない。
【００４７】
残念なことに、通常、所望のデータおよび所望のデータを括る文字列には変更が多すぎて、文字列整合やパターン整合を確実に働かせることはできない。したがって、本発明では、いくつかの方法を組み合わせて確実な検索を行うことが好ましい。具体的には、本発明では、いくつかの方法を連携させることが好ましい。各方法は、結果として検索すべきデータのあるセグメントを識別する。アプリケーションは次いで、様々な結果を集計し、ターゲット・データを含む可能性が最も高いコンセンサス結果を求める。
【００４８】
現在好ましい実施形態では、システムは、結果に関する各方法による「投票」を行い、以前の判定において結果に対する各方法のボートがどれだけ寄与したかに応じて投票を重み付けすることによって結果を集計する。言い換えれば、所与の方法によって生成された結果が個々に最終的なコンセンサス結果に一致するという点でこの方法が寄与した場合、この結果には、将来の投票においてより大きな重みが割り当てられる。逆に、所与の方法によって生成された結果が個々に最終的なコンセンサス結果に一致しなかったという点でこの方法が寄与しなかった場合、この結果には、将来の投票においてより小さな重みが割り当てられる。このようにして、正しい方法である可能性がより高いことが証明された方法には投票においてより大きな重みが与えられ、一方、信頼できるデータ源であることが証明されないデータ源にはより小さな重みが与えられる。これによって手順の全体的な性能が向上し、一方、システムは、ある方法が他の方法よりも有効である様々なデータ・タイプに適応することができる。
【００４９】
したがって、好ましい方法は、一連の技術を定義し、それらの結果を組み合わせる方法である。このことが図8に示されている。第1に、ステップ810、820、および830で、解析ツリー上の所望のコンテントの位置は、いくつかの異なる方法によって判定される。この図は、3つの方法の使用を示しているが、当業者には、この数が任意であり、これよりも多くの方法を使用できることが明らかになろう。さらに、これらのステップは、同時に行っても、順次行ってもよい。
【００５０】
様々な方法がその判定を下すと、最終的な「勝者」は、ステップ840で、重み付けされた投票によって判定される。各方法には、その結果が過去における勝者にどれだけ一致したかに基づいて特定の重みが割り当てられる。システムはステップ850で、投票の結果に基づいて選択を行う。同時にまたは後で、ステップ860において、システムは最も新しい投票に基づいて重み付けを調整する。
【００５１】
１つの技術は、システムが定義済みの開始文字列および終了文字列を探す、上述のような簡単な文字列整合である。第2の可能な方法は、検索される候補コンテントの絶対位置および長さを調べることである。第3の可能な方法は、所望のデータの周囲の一致するコンテントを検索することである。第4の方法は、ファジー・エキスパート・システムやニューラル・ネットワークのようなより複雑なパターン整合技術を用いて所望のデータを識別することである。当業者には、いくつかの個々の方法のうちのどれでも使用できることが容易に明らかになろう。しかし、選択された個々の方法にかかわらず、方法の全体的な有効性に寄与するのは、結果を組み合わせて重み付けされたコンセンサスを形成し、経時的な所望のデータの変更にこの重み付けを動的に適応させる能力である。
【００５２】
図9に示されている特定の方法の例について説明する。まずステップ900で、スケジューリング・アプリケーションによって、あるいはユーザによって手動でエージェント100が作動させられ、エージェント情報120に記憶されているURLにあるターゲット・ページが検索される。ターゲット・ウェブ・ページの現在のバージョンがエージェント100によってローカル・コンピュータ110のメモリにダウンロードされる。次いで、ステップ910でターゲット・ウェブ・ページが分析され解析ツリー表現に変換される。
【００５３】
次のステップ920および930で、エージェント作成によって生成されたエージェント・データおよび統計を用いて、ウェブ・ページの現在のバージョンにおける構造位置にある現在のコンテントにかかわらず、解析ツリーにおける、ターゲット・コンテントが最初に見つかった構造位置が見つけられる。次いで、ターゲット・コンテントは、全体的な方法において投票される候補の1つとして用いられる。
【００５４】
エージェントの他の役割には、企業データベースの問合せ、デスクトップ・アプリケーションのアクセス、eメール・メッセージからのデータの検索、あるいはインタネット／イントラネットを介してアクセスできる任意の情報源または装置との対話が含まれるが、これらに限らない。しかし、当業者には、エージェント・ベースの他の動作を実行できることが容易に明らかになろう。
【００５５】
検索されたページの構造においてターゲット・コンテントが識別されると、コンテント・テキストが抽出され、HTMLコンテントが、検索されたページの現在のバージョンにおいてコンテント・テキストを囲む構造に基づいて、コンテント・テキストの周りに再生成される。元のターゲット・ドキュメントの、エージェント100を作成するのに用いられた構造は、この構造が、ターゲット・ページの現在のバージョンを検索し評価するためにエージェントによって用いられるプログラム命令を生成するのに用いられたのであれば、評価ステップにのみ関連する。
【００５６】
構造位置が見つからないかまたは最初にプログラムされたエージェント情報から変更されている場合、エージェント100は、解析ツリーを評価してターゲット・コンテントの現在の位置の判定を試みる。検索されるターゲット・ページの評価は、HTMLドキュメントの標準構文から導かれる一連の規則に基づいて行われる。ターゲット・コンテント領域は、それがターゲット・ページから完全に除去されていないかぎり、定義によって、ある1組の階層HTMLタグ内に含まれる。ソフトウェア・エージェント100は、これらのタグ、それらの関係、ならびに適切な構文および意味の知識を具体化する。エージェント100は、この知識を用いて、ターゲット・コンテント構造がターゲット・ページ内のどこに移動されたかを判定することができ、あるいはターゲット・コンテント構造は単に、このようなアルゴリズムの作用を受けるデータであってもよい。
【００５７】
ターゲット・データが判定された後、このデータを検索し、それを表示するのに用いることのできる形式で記憶する必要がある。データをローカル・オブジェクト・データベースまたはリモート・オブジェクト・データベース（ODB）に標準形式で記憶することが現在好ましい。標準形式用の現在好ましい構造は、コレクションのタイトル、コレクションが作成された日付、およびコレクションに関連するURLを含んでよい「コレクション」としての構造である。コレクションは、1つまたは複数を表示することができる複数の項目の形式のコンテントも含む。ターゲット・データは、検索された後、標準形式に変換される標準形式は、所望のフォーマットまたはモードでデータを表示するための基礎として用いられる。
【００５８】
たとえば、コレクションは以下のフォーマットを有してよい。
【００５９】
コレクション
日付
タイトル
URL
画像
項目
項目1
タイトル
URL
本文
項目2
タイトル
URL
本文
したがって、エージェントは、インタネット、イントラネット、ローカル・データベースまたはリモート・データベース、ローカル・マシンウェブ・ページのアプリケーションおよびデータ、またはデータを探す手段として定義されているものにアクセスするのに用いられる。これらの様々なデータ源から得たデータは次いで、オブジェクト・データベースに標準形式でリアルタイムに記憶される。
【００６０】
アプリケーションがどのように動作すべきかを判定する再に用いるデータもODB内に存在する。ODBに記憶されているデータは、ユーザによるエージェントの指定の結果と、ユーザの好みである。このデータには、表示テンプレートの構造および構成に関する情報、表示の好ましい見た目および印象に関するユーザの指定などが含まれる。
【００６１】
一例として、ユーザは、あるデータが標準ウェブ・ページ・フォーマットで表示されることを望む場合がある。標準ページ・フォーマットは、バナー用の標準テンプレートおよびサイドバー用の標準テンプレートを有してよい。このユーザの好みと、バナー・テンプレートおよびサイドバー・テンプレートは、ODBに記憶され、検索されたデータを所望のフォーマットで表示するときにアプリケーションによって使用される。
【００６２】
データは、様々な形式で同時にかつ直ちに発行することもできる。エージェント・データは、eメールに組み込まれeメールで送信されることによって発行することができる。同時に、データをコンピュータ表示画面上のアプリケーション・ウィンドウに表示することができる。データをどのように表示または発行すべきかを指定するテンプレートと、データ自体は、ODBに記憶される。
【００６３】
すべてのデータを標準形式で記憶することによって、アプリケーションのエージェントおよび他のすべての構成要素を用いて、データが検索されたリソースの元の位置や種類にかかわらず、検索されたデータを処理することができる。
【００６４】
エージェント100の主要な利点は、複数のエージェント100を用いて多数の異なるリモート・データ源から高速にターゲット・コンテントを検索し、次いですべてのターゲット・コンテントを単一のアプリケーション・ウィンドウ・ページに表示できることである。
【００６５】
検索されたターゲット・コンテントは、ソフトウェア・エージェント・アプリケーション100に知られているフォーマットでローカル・ユーザのコンピュータ110上に記憶される。検索されるターゲット・コンテントは、ユーザのコンピュータ110上に標準フォーマットで記憶され、表示プログラムによって繰り返しアクセスすることのできるデータである。このデータには、コンテント・テキストおよびHTMLフォーマット情報が含まれる。
【００６６】
発行テンプレートと呼ばれる1つまたは複数の定義済みの表示構造を用いて、記憶されているターゲット・コンテントを、新聞、ウェブ・ポータルのような様々なフォーマットを有するパーソナル・ウェブ・ページに構成することができる。発行テンプレートは、記憶されているターゲット・コンテントの特定の部分にアクセスし、それをブラウザ・ウィンドウなどのユーザ・アプリケーション・ウィンドウに表示するための命令によってプログラムされる。
【００６７】
一例として、5つのエージェントが、リモート・インタネット・ウェブ・サイト上で利用できる5つの雑誌および新聞における各話題の現在のニュースの見出しおよび冒頭のパラグラフから成るコンテントを検索するようにプログラムされている。スケジューリング・アプリケーションは各エージェントを1時間おきに作動させる。5つのエージェントはそれぞれ、そのプログラムされた命令を実行し、5つのニュース供給源の各々からターゲット・コンテントを検索し、ユーザのコンピュータ110上でフォーマッティングし、ユーザのコンピュータ110上に記憶する。ターゲット・コンテントが記憶された後、ユーザは、各ニュースから得た見出しのみをページ上のニュース自体のセクションにおいて3つのコラムに表示する発行テンプレートを選択する。検索されたターゲット・コンテントの一部であるが望ましくない、その話題の関連する第1のパラグラフは、選択された発行テンプレートでは表示されない。テンプレートは、各ニュースから得たコンテントをどこから開始するかと、ターゲット・コンテント・テキストのどの構成要素を表示するかを指定する。テンプレートは、コンテントが検索されたURL、コンテントが検索された時間（コンテントが新しいか古いかを示す）、コンテント・プロバイダ名などの情報を表示することもできる。
【００６８】
したがって、エージェント100および発行テンプレートは、単一のソフトウェア・アプリケーションにおいて組み合わせて使用されると、変更されるターゲット・コンテントを検索しターゲット・コンテントを簡潔で有用な方法で表示する手段を提供する。このようなソフトウェア・アプリケーションは、ユーザがターゲット・ウェブ・ページから望ましい情報のみを検索し、ユーザに関心のない望ましくないコンテントを排除するのを可能にすることができる。アプリケーションは、ローカル・ユーザのコンピュータ上で実行され、インタネット接続さえあればターゲット・コンテントを検索できるので、比較的高速に動作する。ターゲット・コンテントが検索された後、すべての動作を完全にユーザのコンピュータ上で行うことができ、インタネットとの対話は必要とされない。
【００６９】
エージェントは、記憶されている出力を、現在知られている、任意の標準的なテキスト・ベースのフォーマットで生成するのを可能にするコンテント生成機能をイネーブルする。エージェントは、標準ネットワーク・プロトコルをeメール、HTTP、FTPのような様々なネットワーク・サービスと一緒に用いて通信を可能にするゲートウェイ・インタフェースを含んでよい。エージェントは、XML、HTML、WML／WAPのような様々な種類のフォーマット間の変換を行う変換データおよびサービスを含んでもよい。
【００７０】
エージェント・ソフトウェア（すなわち、エージェントに組み込まれているかまたはエージェント上で動作するソフトウェア）は、任意のオペレーティング・システムのアプリケーション・レベルで実行される。エージェント・ソフトウェアは、ウェブ・ブラウザおよびワード・プロセッサ、スプレッドシート、ゲームのようなユーザがアクセスできる他の任意のアプリケーションとのピア・アプリケーションである。エージェント・ソフトウェアは、ウェブ・ブラウザ・ソフトウェアの媒介として働き、ブラウザがエージェント・ソフトウェアと通信するのを可能にすると共に、その後のリモートURLへの下流側HTTP要求に関してブラウザの代わりにプロキシとして働くことができる。エージェント・ソフトウェアは、ローカル・コンピュータ110上のブラウザに対するウェブ・コンテントのサーバとしても働く。エージェント・ソフトウェアは、完全にローカル・コンピュータ110上で実施することができる。
【００７１】
次に、本発明の動作をいくつかの特定のアプリケーションに関して説明する。本発明の原則を他のアプリケーションでも具体化できることが当業者には容易に理解されよう。したがって、以下の例は、制限的なものではなく例示的なものとみなすべきである。
【００７２】
図10は、企業環境における本発明によるシステムの現在好ましい実施形態の実現形態を示している。企業ネットワーク1010は、ネットワーク1010上の個々のパーソナル・コンピュータ1020にネットワーク接続1030を通して接続されている。企業ネットワーク1010は、企業売上データ、財務データ、住所録のような様々なイントラネット・リソース1040にも接続されている。企業ネットワーク1010はファイアウォール1050を通してインタネットにも接続されている。
【００７３】
本発明によって動作するようになっているパーソナル・コンピュータ1020は、インタネット上のリソース、イントラネット・リソース、およびパーソナル・コンピュータ自体上のリソースから企業ネットワーク1010を通じてデータを検索することができる。したがって、パーソナル・コンピュータのユーザは、様々なデータ源からの情報を同時に表示するディスプレイにアクセスすることができる。
【００７４】
顧客またはクライアントのパーソナル・コンピュータ1060上で本発明による方法を実施するのも有用である。顧客またはクライアントのパーソナル・コンピュータ1060は、エージェントを用いて、インタネットから直接情報を収集するか、または企業がその顧客またはクライアントに対して利用可能にするイントラネット・リソースから情報を収集するように構成することができる。企業は、顧客またはクライアントにエージェントを供給することができ、かつ表示に固有の見た目および印象を与える「スキン」を供給することもできる。このようにして、企業は、実際に、画面が生成され、データが顧客またはクライアントのパーソナル・コンピュータ上に存在するソフトウェアによって検索されるときに、顧客またはクライアントが特に顧客またはクライアント向けに設計されたポータルを通じてネットワークにアクセスする場合と同様に表示を行うことができる。
【００７５】
図11は、ケーブルTVシステムのセットトップ・ボックスに関する本発明によるシステムの現在好ましい実施形態の実現形態を示している。図11はケーブルTVシステムを示しているが、当業者には、衛星放送テレビジョンや直接放送テレビジョンのような他の中央プログラミング配信システムに本発明の原則を適用できることが容易に理解されよう。図11に示されているシステムでは、ケーブル・プロバイダ1100は、ビデオおよびコンピュータ・データをケーブル・システム1120を通じてセットトップ・ボックス1110に供給する。ケーブル・プロバイダ1100は、その顧客にテレビジョン・プログラミングを供給するだけでなく、インタネットへのアクセスも可能にする。通常、ユーザは、遠隔制御装置1130を用いてインタネット上の様々なリソースにアクセスし、検索されたデータのグラフィカル・ディスプレイがテレビジョン・セット1140上に表示される。図11に示されているシステムでは、セットトップ・ボックス1110は、エージェントを実行してインタネットから特定のデータを検索し、そのデータを定義済みのフォーマットでテレビジョン・セット1140上に表示する本発明による機能を備えている。
【００７６】
ケーブル・プロバイダ1100の観点からすると、中央でエージェントを生成し（150）、そのエージェントをケーブル・システム1120を通じてセットトップ・ボックス1110に配信すると有利である場合がある。このように、ケーブル・プロバイダは、顧客がどのようにインタネットにアクセスするかをある程度制御することができる。ケーブル・プロバイダは、ケーブル・プロバイダの顧客に優先的に利用可能にしたいインタネット・リソースに料金を課すことができる。さらに、コンピュータ・データを表示する標準的なTVの能力が限られている場合、本発明によるシステムは、最初はいくつかの可能なフォーマットのうちのどれか1つであるデータを直ちに、テレビジョン画面上に表示するのに最も適したフォーマットに再フォーマッティングすることができるという利点をもたらす。
【００７７】
実際、ケーブル・サービス・プロバイダ1100は、データの収集および記憶を中央のリソースに実行させ、次いで、データの表示のみをローカルに分散的に実行させるのを望む場合がある。本発明によるシステムの1つの利点は、エージェント生成／収集／記憶／表示のためのフォーマッティングに関する機能をすべてローカルに行うことができ、またあるアプリケーションの必要に応じてこれらの作業を分割し分配することができることである。
【００７８】
図12は、WAPによる携帯電話を用いる携帯電話システムに関する本発明によるシステムの現在好ましい実施形態の実現形態を示している。図12に示されているシステムでは、携帯電話サービス・プロバイダ1200がインタネットへのアクセスを可能にする。通常、セルラー通信装置1210（携帯電話、またはセルラー・モデムなどの通信装置を備えるパーソナル・デジタル・アシスタント（PDA）であってよい）は、装置の入力制御装置を用いてインタネット上のリソースにアクセスする。しかし、図12に示されているシステムでは、セルラー通信装置1210は、エージェントを実行してインタネットから特定のデータを検索し、そのデータを定義済みのフォーマットでディスプレイ1220上に表示する本発明による埋め込み機能を有している。ケーブル・システムに適用される場合と同様に、中央サービス・プロバイダ、この場合には、携帯電話サービス・プロバイダ1200が、中央でエージェントを生成し（1230）、そのエージェントを放送電波を介してまたは初期プログラミング・セッション中にセルラー通信装置1210に配信すると有利である場合がある。携帯電話サービス・プロバイダ1200は、携帯電話サービス・プロバイダの顧客に優先的に利用可能にしたいインタネット・リソースに料金を課すことができる。さらに、ケーブルの例と同様に、コンピュータ・データを表示する標準携帯電話ディスプレイまたはPDAの能力は限られている。本発明よるシステムは、最初は、一部のフォーマットは携帯電話ディスプレイ上での表示に適合しないいくつかの可能なフォーマットのうちのどれか1つであるデータを直ちに、携帯電話またはPDA上に表示するのにより適したフォーマットに再フォーマッティングすることができるという利点をもたらす。
【００７９】
したがって、携帯電話環境も、コレクション／記憶／収集機能を分配すると有利な場合がある環境の一例である。システムは、これらの機能をすべて、中央で実行するのではなくローカルに実行するのを可能にするが、携帯電話環境では、サービス・プロバイダは、収集機能および記憶機能を中央サービス・プロバイダのレベルで実行させ、表示機能のみをローカル・ユーザ・レベルで実行させることを望むことがある。
【００８０】
図13に示されているように、家庭またはその他の施設の所有者は、たとえば、「スマート・ホーム」環境や「ホーム・ゲートウェイ」環境においてコンピュータ1320と対話するライト、サーモスタット、ドア・ロック、警報システムなどの装置を有することがある。装置1310は、装置の現在の状態（たとえば、「オフ」、「オン」）を示すデータ信号をコンピュータ1320に供給することができ、コンピュータ1320は、装置1310に制御信号を送信して装置1310にその状態を変更させることができる。この環境では、コンピュータ1320は好ましくは、インタネット上でアクセス可能なウェブ・ページに様々な装置状態を公開する機能を有する。たとえば、ウェブ・ページは、家の間取り図の形をとることができ、データは、間取り図上の、家庭内のそれぞれの装置の実際の物理的位置に対応する位置に表示される現在の状態を示す。第2のコンピューティング装置、たとえばPC、PDA、ケーブル・セットトップ・ボックス、インタネット電話などは、データを含むウェブ・ページ・データにアクセスし、家庭内の装置の状態に関する情報をリモート・ユーザに与えることができる。ユーザは、場合によっては、ウェブ・ページ上の指定されたフィールドに情報を入力することによって装置を制御することができる。場合によっては、防犯カメラすなわち「ナニー・カム」からのビデオ・データをウェブ・ページに含めることができる。
【００８１】
したがって、本発明によるシステムは好ましくは、絶えず動作する持続的なエンジンを含むため、装置の状態などに関する情報を収集するエージェントを構成することができる。システムは場合によっては、所与の入力に対して応答させることができる。たとえば、事前に指定されたウェブ・ページ上のコンテントが変更されたことに応答してあるイベントを生じさせることができる（ライトを点灯する、ドアのロックを解除する）。
【００８２】
本発明の原則の適用を例示するために本発明の特定の実施形態を図示し詳しく説明したが、本発明をこのような原則から逸脱せずに他の方法で実施できることが理解されよう。
【図面の簡単な説明】
【００８３】
【図１】本発明によるエージェントのローカル・ユーザとデータ源のネットワークとの関係を示す図である。
【図２】本発明を実施するプログラミングの現在好ましいアーキテクチャを示す図である。
【図３】本発明のソフトウェア・エージェントの現在好ましいアーキテクチャの図である。
【図４】本発明によるカスタム・エージェントの現在好ましいアーキテクチャの図である。
【図５】本発明によるRSS型エージェントの現在好ましいアーキテクチャの図である。
【図６】本発明によってエージェントを作成する現在好ましいアーキテクチャのフローチャートである。
【図７】ターゲット・ページを作成するために本発明によるエージェントによって作成された解析ツリーの図である。
【図８】ターゲット・コンテントを識別する、本発明による現在好ましい全体的な方法を示すフローチャートである。
【図９】図８の方法の一部として用いることのできる候補ターゲット・コンテントを識別する一方法の動作を示すフローチャートである。
【図１０】エンタプライズ・サーバ・アプリケーションにおける本発明によるシステムの図である。
【図１１】ケーブル・テレビジョン・システムにおける本発明によるシステムの図である。
【図１２】携帯電話アプリケーションにおける本発明によるシステムの図である。
【図１３】「スマート・ホーム」またはホーム・ゲートウェイ・アプリケーションにおける本発明によるシステムの図である。
【図１】
2004536398.tif 000005
【図２】
2004536398.tif 000006
【図３】
2004536398.tif 000007
【図４】
2004536398.tif 000008
【図５】
2004536398.tif 000009
【図６】
2004536398.tif 000010
【図７】
2004536398.tif 000011
【図８】
2004536398.tif 000012
【図９】
2004536398.tif 000013
【図１０】
2004536398.tif 000014
【図１１】
2004536398.tif 000015
【図１２】
2004536398.tif 000016
【図１３】
2004536398.tif 000017
【国際公開パンフレット】
2004536398.tif 000018
2004536398.tif 000019
2004536398.tif 000020
2004536398.tif 000021
2004536398.tif 000022
2004536398.tif 000023
2004536398.tif 000024
2004536398.tif 000025
2004536398.tif 000026
2004536398.tif 000027
2004536398.tif 000028
2004536398.tif 000029
2004536398.tif 000030
2004536398.tif 000031
2004536398.tif 000032
2004536398.tif 000033
2004536398.tif 000034
2004536398.tif 000035
2004536398.tif 000036
2004536398.tif 000037
2004536398.tif 000038
2004536398.tif 000039
2004536398.tif 000040
2004536398.tif 000041
2004536398.tif 000042
2004536398.tif 000043
2004536398.tif 000044
2004536398.tif 000045
2004536398.tif 000046
2004536398.tif 000047
2004536398.tif 000048
2004536398.tif 000049
2004536398.tif 000050
2004536398.tif 000051
2004536398.tif 000052
2004536398.tif 000053
2004536398.tif 000054
2004536398.tif 000055
2004536398.tif 000056
【国際調査報告】
2004536398.tif 000057
2004536398.tif 000058