(57)【要約】【課題】  多数のノウボットサービスステーションのコンピュータ（５６ａ、５６ｂ）からなるネットワーク上にてタスクが実行され得る。【解決手段】  コンピュータ（５６ａ、５６ｂ）の各々にて、ノウボットプログラム（５４ａ、５４ｂ）が受理され、通信リンク上に送信される。また、ノウボットプログラムはノウボットサービス環境(５０)にて記憶され、かつ、生成される。各ノウボットプログラム（５４ａ、５４ｂ）は、全体として一意的な識別子、ネットワークを介して経路を定義するナビゲーション情報、および、実行すべきタスクに関する情報を有している。ノウボットプログラム（５４ａ、５４ｂ）は、互いにおよび他のネットワーク資源と、ノウボット使節規則の認可を介して相互作用し、かつ、場合によっては品物を購入したり、契約を結び、かつ、ノウボット交換カレンシーによりサービスをすることができる。ノウボットフレームワーク（２８）中の自己認証式のノウボットサービスステーション（５６ａ、５６ｂ、…）は、ノウボットプログラム（５４ａ、５４ｂ）を生成するとともに認証し、データを保護し、記述された期間および状況にしたがって、ネットワーク環境におけるその適用を制御する。【選択図】  図１
2005141762.tif 000002
【特許請求の範囲】
【請求項１】
通信リンクにより相互接続された複数のコンピュータからなるネットワーク上でタスクを実行可能にする方法であって、各コンピュータにて、
通信リンク上のノウボットプログラムであって、各々が全体において一意的な識別子、ネットワークを介した経路を定義するナビゲーション情報および実行すべきタスクに関する情報を含むノウボットプログラムを受理し、
当該ノウボットプログラムに関連するタスクの実行を進め、
ノウボットプログラムを記憶し、
ノウボットプログラムを作り出し、かつ、
通信リンク上にノウボットプログラムを送信することを特徴とする方法。
【請求項２】
通信リンクにより相互接続された複数のコンピュータからなるネットワーク上のコンピュータが分散ノウボットサービス環境に関与できるようにするための方法であって、各コンピュータにて、
通信リンク上のノウボットプログラムであって、各々が全体において一意的な識別子、ネットワークを介した経路を定義するナビゲーション情報および実行すべきタスクに関する情報を含むノウボットプログラムを受理し、
当該ノウボットプログラムに関連するタスクの実行を進め、
ノウボットプログラムを記憶し、
ノウボットプログラムを作り出し、かつ、
通信リンク上にノウボットプログラムを送信することを特徴とする方法。
【請求項３】
タスクを実行するためのコンピュータベースの方法であって、
共同的な複数のタスクを実行するために独立かつ異質のシステムを相互接続することを特徴とする方法。
【請求項４】
当該コンピュータにて関係者に相互作用し、当該関係者が、実行すべきタスクを定義できるようにし、
ノウボットプログラムのうちの一つに、定義されたタスクに関連する情報を組み込むことを特徴とする請求の範囲第１項または第２項に記載の方法。
【請求項５】
関係者が人を含むことを特徴とする請求の範囲第４項に記載の方法。
【請求項６】
関係者が、コンピュータ上で作動する手順を含むことを特徴とする請求の範囲第４項に記載の方法。
【請求項７】
関係者が、コンピュータ上で作動するノウボットプログラムを含むことを特徴とする請求の範囲第４項に記載の方法。
【請求項８】
さらに、コンピュータにて、ノウボットプログラム中に収容されたタスク情報を解釈することを特徴とする請求の範囲第１項または第２項に記載の方法。
【請求項９】
タスクの実行を進めるステップが、ディジタルオブジェクトの収納庫との相互作用を含むことを特徴とする請求の範囲第１項または第２項に記載の方法。
【請求項１０】
タスクの実行を進めるステップが、情報或いは他のデータのデータベースに質問をなすことを含むことを特徴とする請求の範囲第１項または第２項に記載の方法。
【請求項１１】
実行すべきタスクに関する情報が、解釈可能或いは実行可能なインストラクションを含むことを特徴とする請求の範囲第１項または第２項に記載の方法。
【請求項１２】
タスクの実行を進めるステップが、記憶されたエキスパートの知識への適用を含むことを特徴とする請求の範囲第１項または第２項に記載の方法。
【請求項１３】
ノウボットプログラムが、ディジタルオブジェクトの形態でデータを収容することを特徴とする請求の範囲第１項または第２項に記載の方法。
【請求項１４】
ディジタルオブジェクトが、プロトコル変換情報を含むことを特徴とする請求の範囲第13項に記載の方法。
【請求項１５】
タスクの実行を進めるステップが、プロトコル変換を含むことを特徴とする請求の範囲第１項または第２項に記載の方法。
【請求項１６】
タスクの実行を進めるステップが、タスクに関連するサービスを提供する他の位置を特定するディレクトリサービスの提供を含むことを特徴とする請求の範囲第１項または第２項に記載の方法。
【請求項１７】
タスクの実行を進めるステップが、セキュリティの決定をなすことを含むことを特徴とする請求の範囲第１項または第２項に記載の方法。
【請求項１８】
タスクの実行を進めるステップが、「新しいこと(What's new)」のサービスの提供を含むことを特徴とする請求の範囲第１項または第２項に記載の方法。
【請求項１９】
タスクの実行を進めるステップが、「切り抜き」サービス或いは「要約」サービスの提供を含むことを特徴とする請求の範囲第１項または第２項に記載の方法。
【請求項２０】
タスクの実行を進めるステップが、ノウボットプログラムのバージョンを管理するためのバージョン制御サービスの提供を含むことを特徴とする請求の範囲第１項または第２項に記載の方法。
【請求項２１】
タスクの実行を進めるステップが、ノウボットプログラムの構造を決定し、その要素へアクセスすることを含むことを特徴とする請求の範囲第１項または第２項に記載の方法。
【請求項２２】
タスクの実行を進めるステップが、他の位置にて実行が生じたことをユーザに示すことなく、他の場所でタスクの実行を得ることにより、ユーザの行為に応答することを含むことを特徴とする請求の範囲第１項または第２項に記載の方法。
【請求項２３】
タスクの実行を進めるステップが、存在する仕事から派生する仕事を作り出すことを含むことを特徴とする請求の範囲第１項または第２項に記載の方法。
【請求項２４】
タスクの実行を進めるステップが、他のノウボットプログラムの生成を含むことを特徴とする請求の範囲第１項または第２項に記載の方法。
【請求項２５】
タスクの実行を進めるステップが、源のノウボットプログラムから、同一或いは異なる位置にあるターゲットのノウボットプログラムにメッセージを通すことを含むことを特徴とする請求の範囲第１項または第２項に記載の方法。
【請求項２６】
同一のメッセージが複数のノウボットプログラムを通ることを特徴とする請求の範囲第25項に記載の方法。
【請求項２７】
ネットワークの通信チャンネルを介して遠隔データベースの局地的なクエリーを実行するための方法であって、当該局地的なクエリーが、クエリープロトコルに従っており、かつ、遠隔データベースが、データベースプロトコルに従ったクエリーに応答し、前記方法が、
局地的なクエリーに基づき、かつ、ノウボットプログラムのプロトコルに従ったノウボットプログラムを局地的に生成し、
ネットワークの通信チャンネルを介して遠隔データベースにノウボットプログラムを送信し、
遠隔データベースにて、データベースプロトコルにしたがってデータベースに質問をすることにより、ノウボットプログラムに応答し、
ノウボットプログラムのプロトコルにしたがった戻りのノウボットプログラム中で、遠隔データベースからのクエリーの結果を戻すことを特徴とする方法。
【請求項２８】
さらに、
戻りのノウボットプログラムを局地的に受理して、
戻りのノウボットプログラム中に収容された結果に基づき、ユーザに結果を提供することを特徴とする請求の範囲第27項に記載の方法。
【請求項２９】
さらに、
局地的なクエリーに基づき、かつ、ノウボットプログラムのプロトコルに従った付加的なノウボットプログラムを生成し、
付加的なノウボットプログラムの各々を、他のデータベースに送信し、
他のデータベースの各々にて、当該他のデータベースに質問をすることにより、対応するノウボットプログラムに応答し、
ノウボットプログラムのプロトコルにしたがった戻りのノウボットプログラム中で、他のデータベースの各々からのクエリーの結果を戻すことを特徴とする請求の範囲第27項に記載の方法。
【請求項３０】
さらに、
戻りのノウボットプログラムを局地的に受理して、
戻りのノウボットプログラム中に収容された結果を処理して、ユーザに矛盾のない提示を提供することを特徴とする請求の範囲第27項に記載の方法。
【請求項３１】
ユーザへの矛盾のない提示が、付加的な戻りのノウボットプログラムが受理されるのにしたがって更新されることを特徴とする請求の範囲第30項に記載の方法。
【請求項３２】
前記処理が、冗長な情報の除去を含むことを特徴とする請求の範囲第30項に記載の方法。
【請求項３３】
戻りのノウボットプログラムが、元のノウボットプログラムの修正されたバージョンであることを特徴とする請求の範囲第27項に記載の方法。
【請求項３４】
付加的なノウボットプログラムが局地的に生成され、ネットワークの通信チャンネルを介して送信されることを特徴とする請求の範囲第27項に記載の方法。
【請求項３５】
付加的なノウボットプログラムが局地的に送信され、元のノウボットプログラムに対応する戻りのノウボットプログラムが局地的に受理されることを特徴とする請求の範囲第27項に記載の方法。
【請求項３６】
クエリープロトコルが、ユーザにより完成される表示形態を含むことを特徴とする請求の範囲第27項に記載の方法。
【請求項３７】
ノウボットプログラムのプロトコルが、クエリープロトコルおよびデータベースプロトコルと異なることを特徴とする請求の範囲第27項に記載の方法。
【請求項３８】
ノウボットプログラムのプロトコルが、実行可能で解釈可能なプログラム言語のシンタックスを含むことを特徴とする請求の範囲第27項に記載の方法。
【請求項３９】
ノウボットプログラムが、実行可能で解釈可能なプログラム言語のエントリーおよびナビゲーションの部分を含むことを特徴とする請求の範囲第27項に記載の方法。
【請求項４０】
ノウボットプログラムが、ネットワークをナビゲーションすることにより遠隔データベースの場所に到達し、かつ、メッセージのナビゲーションの部分が、当該ナビゲーションに関する情報を含むことを特徴とする請求の範囲第39項に記載の方法。
【請求項４１】
さらに、遠隔データベースの場所にて、クエリーの実行ステータスを示すステータスノウボットプログラムを送信することを特徴とする請求の範囲第27項に記載の方法。
【請求項４２】
さらに、
遠隔データベースにて、ノウボットプログラムを実行して、所定のデータベースのクエリーを決定し、データベースへの質問の間、ノウボットプログラムを記憶し、データベースへの質問及びノウボットプログラム中に収容された制御情報に基づく結果を戻すことを制御する特徴とする請求の範囲第27項に記載の方法。
【請求項４３】
さらに、
局地的にノウボットサービスステーションを用いて、ノウボットプログラムを作成し、送信し、受信し、かつ、消去することを特徴とする請求の範囲第27項に記載の方法。
【請求項４４】
さらに、
遠隔データベースの場所にて、ノウボットサービスステーションを用いて、ノウボットプログラムを作成し、送信し、受信し、制御し、処理し、かつ、消去することを特徴とする請求の範囲第27項に記載の方法。
【請求項４５】
さらに、
局地的なクエリーに基づきのノーボットプログラムを送信すべき遠隔データベースを局地的かつ自動的に選択することを特徴とする請求の範囲第27項に記載の方法。
【請求項４６】
ノウボットプログラムを送信するステップが、ノウボットプログラムを、電子メールプロトコル、ファイル転送プロトコル、或いは、ネットワーク上の他の通信方法に順応させることを含むことを特徴とする請求の範囲第27項に記載の方法。
【請求項４７】
さらに、
ノウボットプログラムのプロトコルに、変換情報を含めることを特徴とする請求の範囲第27項に記載の方法。
【請求項４８】
ノウボットプログラムが、さらに、認証情報を含むことを特徴とする請求の範囲第１項または第２項に記載の方法。
【請求項４９】
ノウボットプログラムが、さらに、スケジューリング情報を含むことを特徴とする請求の範囲第１項または第２項に記載の方法。
【請求項５０】
ノウボットプログラムが、さらに、支払情報を含むことを特徴とする請求の範囲第１項または第２項に記載の方法。
【請求項５１】
ノウボットプログラムが、持続性を備えたことを特徴とする請求の範囲第１項または第２項に記載の方法。
【請求項５２】
通信リンクにより相互接続された複数のコンピュータからなるネットワーク上でタスクを実行可能にする装置であって、
ネットワーク上のコンピュータの各々にて、コンピュータ上で稼動するソフトウェアの形態のノウボットサービスステーションを含むノウボットサービス環境を備え、当該サービスステーションが、
通信リンク上のノウボットプログラムであって、各々が全体において一意的な識別子、ネットワークを介した経路を定義するナビゲーション情報および実行すべきタスクに関する情報を含むノウボットプログラムを受理し、
当該ノウボットプログラムに関連するタスクの実行を進行させ、
ノウボットプログラムを記憶し、
ノウボットプログラムを作り出し、かつ、
通信リンク上にノウボットプログラムを送信するサービスを提供するように構成されたことを特徴とする装置。
【請求項５３】
通信リンクにより相互接続された複数のコンピュータからなるネットワーク上のコンピュータが分散ノウボットサービス環境に関与できるようにするための装置であって、
コンピュータ上で稼動するソフトウェアの形態のノウボットサービスステーションを備え、当該サービスステーションが、
自己を認証し、
他のノウボットサービスステーションから受理したノウボットクーリエを認証し、
通信リンク上のノウボットプログラムであって、各々が全体において一意的な識別子、ネットワークを介した経路を定義するナビゲーション情報および実行すべきタスクに関する情報を含むノウボットプログラムを受理するとともに、実行すべきタスクに関する情報を受理し、
当該ノウボットプログラムに関連するタスクの実行を進め、
ノウボットプログラムを記憶し、
ノウボットプログラムを作り出し、かつ、
通信リンク上にノウボットプログラムを送信するサービスを提供するように構成されたことを特徴とする装置。
【請求項５４】
ネットワークの通信チャンネルを介して遠隔の知識ベースのシステムの局地的なクエリーを実行するための方法であって、当該局地的なクエリーが、クエリープロトコルに従っており、かつ、遠隔の知識ベースのシステムが、知識ベースのシステムプロトコルに従ったクエリーに応答し、前記方法が、
局地的なクエリーに基づき、かつ、ノウボットプログラムのプロトコルに従ったノウボットプログラムを局地的に生成し、
ネットワークの通信チャンネルを介して遠隔の知識ベースのシステムにノウボットプログラムを送信し、
遠隔の知識ベースのシステムにて、知識ベースのシステムプロトコルにしたがって当該知識ベースのシステムに質問をすることにより、ノウボットプログラムに応答し、
ノウボットプログラムのプロトコルにしたがった戻りのノウボットプログラム中で、遠隔の知識ベースからのクエリーの結果を戻すことを特徴とする方法。
【請求項５５】
遠隔システムからディジタルオブジェクトを検索する方法であって、
遠隔システムが、ノウボットプログラムにオブジェクトを組み込み、
ノウボットプログラムが、局地システムに送信されて、そこに記憶され、
局地的な関係者が、ノウボットプログラムを介して、当該ディジタルオブジェクトにアクセスし、
ノウボットプログラムが、当該オブジェクトへのアクセスに対する付加的な認証および／または支払を求めて、ディジタルオブジェクトの一部へのアクセスを制限し、当該オブジェクトの所有者に、当該オブジェクトへの行為が実行されるのにしたがって通知がなされることを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分散タスクの実行に関する。
【発明の開示】
【０００２】
（用語の解説）
利便のために、以下に、主たるテキストにて使用されるある用語の補足説明である簡単な用語の解説を記述する。
【０００３】
「ネットワーク」とは、コンピュータおよびこれらを相互接続する通信媒体の組である。
【０００４】
「パケット」とは、分散システム内でデータを伝達するための基本的な容器であり、これは、典型的には、発送にて用いられるアドレス情報を含んでいる。
【０００５】
「プロトコル」とは、ストラクチャ、フォーマット、処理および／または機能を定義した一般に合意されたルールの組であり、分散システムの要素が互いに通信するためにこれが守られなければならない。
【０００６】
「資源」とは、分散システム内のある位置でアクセス可能な情報或いはサービスである。
【０００７】
「ディジタルオブジェクト」とは、一般には、（事実上任意の種類の情報のディジタル表現を含む）ディジットのシーケンスを意味し、これには、その「ハンドル」と称される、関連する一意的な識別子が含まれる。
【０００８】
「収納庫(repository)」とは、ディジタルオブジェクトを記憶し、適応可能な期間および状況にしたがって、ネットワークを経てこれらをアクセス可能にする資源である。
【０００９】
「データベース」とは、質問（クエリー）を解析して回答を与えるように構成された情報の組織体である。ディジタルオブジェクト自体が、データベースまたはデータベースの要素を含み得る。
【００１０】
「権利保有者」とは、ディジタルオブジェクトの法的に行使可能な「権利」を有する人或いは存在をいう。
【００１１】
「分散システム」には、ノウボット(Knowbot)システム、並びに、磁気ディスク、光ディスクおよび紙の上でのデータのディジタル表現を含む他の大規模記憶媒体など、ノウボットシステムの外部にある構成部品が含まれる。
【００１２】
「ノウボットプログラム」とは、ある位置から他の位置に移動可能な、実行可能なコンピュータプログラムである。これには、タスクを実行するための一連のステップを定義する「インストラクションシーケンス」や他のデータが含まれる。
【００１３】
「クーリエ」は、分散システムを介して移動に従事するノウボットプログラムの事例を参照する場合に用いられる。
【００１４】
「ノウボットシステム」とは、コンピュータ間でノウボットプログラムを移動し、当該プログラムを実行し、必要に応じて、宛先のコンピュータ或いはネットワークにその結果を移動し、または、そこに記憶するシステム（プログラムを含む）をいう。
【００１５】
「ノウボットサービスステーション」とは、ネットワーク上の位置で作動し、かつ、ノウボットプログラムを生成し、記憶し、実行し、削除するなどの行為が可能なソフトウェアおよび／またはハードウェアをいう。
【００１６】
「ノウボットサービス環境」とは、ノウボットプログラムを取り扱うための媒体をいい、これは、ノウボットサービスステーションの集合物から構成される。
ノウボットシステムは、サービス環境を提供する。
【００１７】
「ノウボットフレームワーク」とは、タスク実行のためのカレンシー(currency)（ノウボットプログラム）およびプログラムを取り扱うための媒体（ノウボットサービス環境）を定義する概念的なモデルをいう。
【００１８】
「通知機関」とは、ノウボットプログラムにより実行される処理に関する情報を記憶するノウボットサービス環境の一部をいう。
【００１９】
「将来のノウボットプログラム」とは、ノウボットサービス環境の外部の源（source）から、ノウボットサービスステーションにより受け入れられたノウボットプログラムをいう。
【００２０】
最も基本的な意味において、本発明自体は、コンピュータ間でノウボットプログラムを作成し、記憶し、移動し、当該プログラムを実行し、必要に応じて、宛先のコンピュータにその結果を移動し、または、そこに記憶するシステム（これをノウボット（登録商標）システムと称する。）に関する。コンピュータのほとんどまたは全てが「オンライン」であり、一般的なコンピュータネットワーク環境の一部をなし得るが、そのコンセプトは、磁気ディスク、光ディスクおよび紙の上でのデータのディジタル表現（バーコードなど）を含む他の大規模記憶媒体など他の媒体を介したプログラムのオフラインの移動にも適用される。さらに、このシステム内のコンピュータは、全てのときに、存在するネットワークに接続されている必要はなく、この接続性は、ときおり、行ったり来たりするものである。「システム」というラベルは、全般的には、これらプログラムが生成され且つ管理され、これらが相互作用し、これらが記憶された情報と相互作用し、並びに、これらがシステムの一部をなすプログラムおよびコンピュータの定義の範囲外に存在すると考えられる人々やプログラムを含む、外部のシステムと相互作用するようなシステマチックな規則性を暗示している。
【００２１】
説明の便宜上、システムの一部或いは全てを引用する際に、「ノウボット(登録商標)システム」という用語を用いる（ノウボット(登録商標)は、ナショナルリサーチインセンティブ社の登録商標である）。このノウボット(登録商標)システムは、システムの部分であるコンピュータを当該システムの外部にあるコンピュータから識別することを可能にし、かつ、システムにより定義された手法によってのみ相互作用する、良く定義された境界を有する。ノウボットシステムの内部に存在するもの、および、その外部に存在するものの双方を、分散システムと称することができる。システムの内部にあると考えられる部分は、所定の手法のみによって、他の部分と相互作用する。適当な行為を定義する規則は、実際には、どのように構成部分が生成され、かつ、これが、システムの適切に機能する構成部分であると常に考えられるかを決定する仕様である。
【００２２】
ノウボット(登録商標)システムは、主として、ソフトウェアシステムであり、その構成部分は、所定の手法にて作動するプログラムである。ソフトウェアは、コンピュータベースの（ハードウェア）環境にて作動し、時折、ハードウェアの資源を生成し、割当て、管理する基本プログラムであるオペレーティングシステムと関連して作動する。ノウボット(登録商標)システムの基本設計の基礎には、以下の仮定が存在する。すなわち、システムが稼動しているコンピュータは、オペレーティングシステムの「頂点にて」作動するノウボット（登録商標）システムにより必要とされる機能を提供するオペレーティングシステムを有している。
【００２３】
任意のオペレーティングシステムがデータ通信（ネットワーク）環境を基礎とするコンピュータの組み込みをサポートし、かつ、オペレーティングシステムの全体の制御の下で、「時分割」で複数のプログラムが同時に作動することができる場合には、当該オペレーティングシステムは適切なものとなる。さらに、コンピュータ間で移動可能な（ノウボットプログラムと称される）プログラムは、十分な情報を収容し、これにより、所望のように実行を開始し或いは再開できなければならず、かつ、コンピュータが、インタープリタ、スケジューラ、記憶などの必要なサポート環境を提供しなければならない。ノウボット（登録商標）システムは、広汎なハードウェアおよびオペレーティングシステムの頂上に提供され得る。
【００２４】
また、ノウボット（登録商標）システムの一部をなすコンピュータが少なくとも間欠的に、共通の通信ネットワークに接続され、ノウボット（登録商標）システムの行為の規則にしたがって、時折、情報が一方のコンピュータから他のコンピュータに通過すると考える。
【００２５】
ノウボット（登録商標）システムは、種々で別個のシステムや資源、および、これらの間の相互接続システムとしてのサービスを、共通するオペレーティング環境にリンクする。ある一つのシステムおよびその資源に関する情報は、中間メカニズムを介して他のシステム、ノウボット（登録商標）システムに通信される。ノウボット（登録商標）システム自体により、関連するシステムおよび資源から識別されて、タスクを実行することができる。また、ノウボット（登録商標）システムは、これら関連するシステムおよび資源が与えられたタスクを実行することを容易にする。
【００２６】
以下に、我々は、ソフトウェア、ハードウェアおよび通信設備の集合体が、一緒になったときに、どのように組織されて、ノウボットとして機能されるかを記載した概念を説明する。実際に、これら概念の全ては、一連の所定の規則にしたがってふるまうソフトウェア加工品(artifact)に基づいている。これら加工品には、「ランニングプログラム」や、後のアクセスのための「収納庫」とは別に記憶された「ディジタルオブジェクト」が含まれる。本発明の概念は、全般的には、任意のあるハードウェア、通信ネットワーク或はオペレーティングシステムの仕様というよりも、むしろ、ソフトウェア加工物の定義および行為に基礎を置いている。しかしながら、所望により、所定の場合に、超ＬＳＩの技術が許すのであれば、ソフトウェアの一部或いは全部を、集積回路（たとえば半導体チップ）のシステムに置き換えても良い。
【００２７】
ノウボット（登録商標）プログラムは、与えられたマシンにて実行する基本的なソフトウェア要素である。ノウボット（登録商標）プログラムのある事例は、クーリエであり、あるコンピュータから他のコンピュータに移動するのにしたがって、或いは、外部世界と相互作用するときに、ノウボット（登録商標）プログラムによってその形態をなす。ノウボット（登録商標）プログラムは、種々の手法にて明確にされ得るキャリー情報（データ）を含むことができる。ノウボットプログラムの到着および出発を処理するため、ノウボット（登録商標）プログラムと他のノウボット（登録商標）プログラムとの間の情報交換のため、並びに、ノウボット（登録商標）プログラムを、「収納庫」と称される情報アクセスサブシステムを含むノウボット（登録商標）システムの他の部分と相互作用させ、かつ、人々や、可視的、可聴的または他の明白な表現によるものを含む外部のサブシステムと相互作用させるために、ノウボット（登録商標）システムにおいては準備がなされる。
【００２８】
ノウボット（登録商標）プログラムの重要な特徴は、権利所有者のためにデータを保護し、記述された用語や状況にしたがってその適用を制御し、かつ、データを解釈して、これを可視的、可聴的または他の手法で明白にし、かつ、人間の相互作用が、表現の選択に影響を与えられるようにすることにある。
【００２９】
ノウボット（登録商標）システムはソフトウェアベースのオープンアーキテクチャの相互接続構造を有しているため、他の高度に成功したインターネットとして知られているソフトウェアベースのオープンアーキテクチャの相互接続システムを論じるのに有用である。インターネットは、急速に発展した、数百万のコンピュータおよび数万のネットワークをともにリンクさせる「ネットワークの中のネットワーク」である。インターネットは、「パケット切換」環境によりコンピュータを互いにリンクするための最小限の一連の要求を介して、かつ、どのように、いつおよび何の形態の情報がインターネットの一部をなすコンピュータ間に交換されるかを統治するあるフォーマットおよび手続上の取極（プロトコル）に従うことにより実現される。
【００３０】
第１図に示すように、インターネット１０は、基本的には世界中の任意の場所に位置するコンピュータユーザのための通信フレームワーク１２を提供する。任意のコンピュータ１４ａは、共通に理解されるパケットプロトコル１６および共通に受け入れられるアドレススキーム１８にしたがうことにより、任意の他のユーザ１４ｂにディジタル情報を送信する。パケットプロトコルは、受容体のアドレスを含むディジタル情報を伝達する構造およびパケットの取り扱いのための最小限の規則の組を設定する。アドレススキームは、二重アドレスの防止を含むアドレス割当てのための最小限の規則を設定する。パケットプロトコルおよびアドレススキームにしたがうコンピュータは、パケットがその宛先に到着し、かつ、受容体が伝達されたディジタル情報をアクセス可能である点で、比較的確実である。その一方、インターネットフレームワークは、本質的には、パケットをフォーマットし、送信し、受信し、解体し、或いは組み立てる物理的なハードウェア／ソフトウェアネットワーク部品２０の定義を意図しておらず、その代わりに、ユーザ、ユーザのグループおよび販売者にこれら事項を委ねている。これにより、実行スキームおよび実行結果のためのオープンな分散マーケットが実現された。
【００３１】
パケットプロトコルのハードウェア／ソフトウェアの要求が最小限であり、かつ、これらの中で本質的には任意のディジタル情報が伝達されるため、経済的価値の交換のためにペーパーチェックが法的提供を与えるように、分散ネットワークを横断するディジタル情報の交換のためのカレンシー(currency)２２を提供している。インターネットフレームワークの曖昧なアドレススキームおよび他の態様は、連邦予約手形交換所(Federal Reserve clearinghouse)の曖昧なトランジットコードが手形交換のための一般的な媒体を提供するように、一般的媒体２４を提供する。しかしながら、（用紙のサイズや他の手形のプロトコルによる要求が満たされていれば）手形交換所がどのような手形が振り出され、配達され、受理され或いは使用されるかについて何ら制限を課していないのと同様に、インターネットフレームワークは、ユーザが生成し、送信し、受理し、および、使用するパケットにおける物理的なありさまに何ら制限を課していない。
【００３２】
（第１図の幾分脈絡を欠いた表示１２、２０により示唆された）物理的な手段からの広汎に分散されたネットワーク（すなわちフレームワーク）上のディジタル情報の交換のための媒体およびカレンシーを切断する考えは強力なものであり、かつ、インターネットの大いなる成功に向けられたものであった。これは、個人、非営利団体および営利団体が、手段の中央制御を要求されることなく、インターネットに関係し、インターネットにより利益を得ることができるからである。同時に、インターネットの共同社会は、共通に受け入れられるインターネットフレームワークにて具現化される原理を促進しかつこれを改善するために、絶え間なく努力している。これは、概念があらゆる源から作られ、これがテストされ、広汎な有用性が見出された場合には、この概念が最終的に受け入れられるフレームワークの一部となるような中央集権化を避けるようなプロセスを経て実現される。この概念において、提案された原理がフレームワークになり、かつ、広く適用されるか否かは、主としてこれらの品質による。
【００３３】
インターネットフレームワーク、および、これが実行される物理的なネットワークの他の強力な特徴は、他の通信フレームワークおよび他の物理的ネットワークと容易に共存できる能力にある。インターネットは、現在のところ、多くの異なるタイプのネットワークおよび通信媒体を受け入れる。原理的には、ほとんど全てのネットワークおよび通信媒体が、インターネットの一部をなし得る。
【００３４】
最後に、インターネットフレームワークは、高度に拡大可能であり、世界規模でユーザ数の拡張を比較的容易になすことができる。
【００３５】
（詳細な説明）
第２図に示すように、本発明は新規でより強力なフレームワーク（ノウボットフレームワーク２８と称する）が、（インターネットフレームワークの場合のように）単にディジタル情報を通信するためではなく、分散システム３２にて利用可能な資源（たとえば、インターネット或いは他のネットワーク）を利用して、ネットワーク関係者３０ａ、３０ｂのために実行されるタスクを有している。「ネットワーク関係者」という語句中に、我々は、実行すべきタスクを要求し得る全ての存在を含んでいる。これには、コンピュータおよびネットワーク中の他のハードウェアやソフトウェアをはじめ、スタンドアローンのパーソナルコンピュータおよび組織から独立したものが含まれる。「タスク」に関して、我々は、ネットワーク上の資源により実行され得る全てのものを意図している。タスクは、広範囲な複雑さを有することができ、典型的には、これらは、単に、ディジタル情報を含む単純なインターネットパケットの配達によりなされる種類のディジタル情報の通信以上のものを含む。特に、タスクは、しばしば、実行すべきタスクを要求した存在の位置から離れた位置にてなされる処理ステップを含む。
【００３６】
「資源」に関して、我々は、タスクの実行のために寄与可能な、ネットワーク上の全ての有用なものを意図している。これは、コンピュータソフトウェア、記憶されたディジタルオブジェクトおよび広汎なサービスを含むことができる。
【００３７】
ノウボットフレームワークは、いかなる任意の複雑さが実行されるタスクを有する「カレンシー」と、タスクの実行の一部をなすカレンシーを取り扱うための「媒体」との双方を定義する。このカレンシーはノウボットプログラムと称される。ノウボットプログラムは、関係者のために実行すべきタスクを実行するのに役立つネットワーク関係者の移動可能な使節（emissary）である。このタスクは、ユーザのシステムにおいて局地的に実行され、或いは、局地的および／または遠隔的に他の位置にて、他のシステムおよび資源との相互作用を含むことができる。ノウボットプログラムを取り扱うための媒体は、分散ノウボットサービス環境或いは単にノウボットサービス環境と称される。ノウボットサービス環境は、ネットワークのある場所にて稼動する、潜在的には無限の数の種々のいわゆるノウボットサービスステーション（ソフトウェアおよび／またはハードウェア）として分散される。ステーションは、ノウボットプログラムを生成し、記憶し、実行しかつ削除することができ、他の場合には、ノウボットプログラム自体により、または、行為をなすことを認証され或いは行為を認められたユーザにより決定されたように、ノウボットプログラム上の許可された行為をなすことができる。ノウボットフレームワークは、ノウボットプログラムの構造のための最小限の規則３８の組（たとえば、プログラムが実行すべきタスクに関するある情報を含んでいなければならないこと）と、ノウボットサービス環境にて実行される機能のための最小限の規則４０の組（たとえば、ノウボットプログラムを生成し、送信し、受信し、モニターしかつ削除可能な典型的なノウボットサービスステーション）とを定義する。
【００３８】
我々は、以下に、ノウボットプログラムおよびそのサービス環境に対して、いくつかの付加的な特定の原理を述べるが、全般的には、ノウボットフレームワークの強化は、インターネットフレームワークの場合と同様になされ、これは、ハードウェアおよびソフトウェアの手段に関する自由市場の力や、フレームワーク原理に関する、ノウボットユーザの共同社会内でのオープンスタンダードの発展プロセスによる。インターネットフレームワークのように、ノウボットフレームワークは、ネットワーク中でタスクを実行するための他の手法と自由に共存でき、かつ、容易に拡大可能であることが意図される。
【００３９】
一般に、ある態様において、本発明は、通信リンクにより相互接続された多数のコンピュータのネットワーク上で実行すべきタスクを可能とすることを特徴とする。また、これらコンピュータの一部或いは全部を、ネットワークの内部におくことができる。あるサービスステーションから他のサービスステーションに送信され、或いは、その環境から（いちおう）輸出されるノウボットプログラムを参照するときに、我々は、「クーリエ」という用語を用いる。各コンピュータにおいて、ノウボットプログラムは、通信リンク上で受信されかつ送信され、また、記憶されかつ生成され得る。また、ノウボットプログラムに関連するタスクの実行が進められ得る。各ノウボットプログラムは、全体において一意的な識別子と、（適用可能なときに）ネットワークを介した経路を定義するナビゲーション情報と、実行すべきタスクに関する情報を含む。互いにクローンであるノウボットプログラムは、同一の基本識別子を使用し、これらには、互いに識別するためのバージョンナンバまたは他の区切り文字(delimiter)が設けられる。
【００４０】
一般に、他の態様において、本発明は、通信リンクにより相互接続された多数のコンピュータのネットワーク上にあるコンピュータが、上に述べたステップにより、分散ノウボットサービス環境に関与できるようにすることを特徴とする。
【００４１】
本発明の手段は、１以上の以下の構成を備えることができる。
コンピュータの関係者（たとえば、人、プロセスまたはコンピュータ上で作動しているノウボットプログラム）は、実行すべきタスクを定義することができる。定義されたタスクに関連する情報は、ノウボットプログラムの一つに組み込まれる。ノウボットプログラムに収容されたタスク情報は解釈され得る。タスクの実行を進めるステップは以下のステップを含む。すなわち、付加的なノウボットプログラムを生成し、他のノウボットプログラムと相互作用し、ディジタルオブジェクトの収納庫に相互作用し、情報のデータベースに問い合わせ、プロトコルを変形し、当該タスクに関連するサービスを提供する他の位置を特定するディレクトリサービスを提供し、セキュリティを決定し、「新しいこと(what's new)」のサービスを提供し、新たに利用可能な情報を特定し、情報を抽出する「切り抜き(clipping)」サービスを提供し、ノウボットプログラムのバージョンを管理するためのバージョン制御サービスを提供し、実行が他の位置で生じたことを必然的にユーザに知らせることなく、他の位置でのタスクの実行を得ることによりユーザの行動に応答し、ノウボットプログラムの構成を決定するための方法（たとえば、ディジタルオブジェクトがノウボットプログラム内に収容され、要素をアクセスするかどうかを決定すること）を提供し、存在する仕事から派生する仕事を生成し、他のノウボットプログラム、ディジタルオブジェクト或いは他のデータを収容するノウボットプログラムを生成し、かつ、ソースノウボットプログラムからのメッセージを、異なる場所のターゲットノウボットプログラムに通す。
【００４２】
実行すべきタスクに関する情報は、解釈可能或いは実行可能なインストラクションを含んでも良い。ノウボットプログラムは、ディジタルオブジェクト或いはノウボットプログラムの形態のデータを含んでも良い（ノウボットプログラム自体がディジタルオブジェクトになり得る）。ディジタルオブジェクトは、プロトコル変換情報を含み得る。
【００４３】
一般に、他の態様において、本発明は、局地クエリーがクエリープロトコルに応じ、かつ、遠隔データベースがデータベースプロトコルにしたがったクエリーに応答するような、遠隔データベース（或いは遠隔の知識ベースのシステム）の局地クエリーをネットワークの通信チャンネルを介して実行することを特徴とする。ノウボットプログラムは、局地クエリーに基づき、かつ、ノウボットプログラムのプロトコルに応じて、局地的に生成される。ノウボットプログラムは、ネットワークの通信チャンネルを介して、遠隔データベースに送られる。遠隔データベースにおいては、データベースプロトコルにしたがってデータベースに質問することにより、ノウボットプログラムが役立てられる。クエリーの結果は、ノウボットプログラムプロトコルにしたがったリターンノウボットプログラム中で、遠隔データベースから戻される。
【００４４】
本発明の手段は、１以上の、以下に述べる特徴を備えることができる。リターンノウボットプログラムが局地的に受け入れられ、かつ、結果が、リターンノウボットプログラム中に収容された結果にしたがってユーザに与えられ得る。付加的なノウボットプログラムが生成されても良い。これは、局地クエリーに基づき、かつ、ノウボットプログラムプロトコルにしたがっている。付加的なノウボットプログラムの各々は、与えられたデータベース或いは収納庫上で並列的に働くことができ、或いは、他のデータベースに送られ得る。他のデータベースの各々にて、他のデータベースに質問することにより、対応するノウボットプログラムが役立てられる。他のデータベースの各々からのクエリーの結果は、ノウボットプログラムプロトコルにしたがったリターンノウボットプログラム中で戻される。リターンノウボットプログラム中に収容された結果は、局地的に処理され、矛盾のない表示がユーザに提供される。ユーザへの矛盾のない表示は、付加的なリターンノウボットプログラムが受理されるのにしたがって更新され得る。処理には、冗長情報の除去が含まれても良い。リターンノウボットプログラムは、オリジナルのノウボットプログラムの修正バージョンであっても良い。付加的なノウボットプログラムは、局地的に生成され、かつ、ネットワークの通信チャンネルを介して送信されても良い。ノウボットプログラムは、局地的に受理されるのと同様に生成され得る。
【００４５】
クエリープロトコルは、他のプログラムから得られ或いはユーザにより完成された、表示可能或いはマシンにより解釈可能な形態を有し得る。ノウボットプログラムプロトコルは、クエリープロトコルやデータベースプロトコルと異なっていても良い。ノウボットプログラムプロトコルは、実行可能なプログラム言語の同一性およびシンタックスを含んでいても良い。ノウボットプログラムは、実行可能なプログラム言語のエントリー(entry)およびナビゲーションのエントリーを含んでいても良い。ノウボットプログラムは、ネットワークを操縦することにより、遠隔データベースの場所に到達することができ、かつ、メッセージのナビゲーションの部分は操縦に関する情報を含み得る。遠隔データベースの場所は、機械により解釈可能な、および／または、自然言語（たとえば、英語）の形態のクエリーの実行状態を示すステータスノウボットプログラムを送信しても良い。遠隔データベースでは、ノウボットプログラムが、データベースに質問している期間中記憶されても良く、かつ、データベースに質問することおよびその結果を戻すことは、ノウボットプログラム内に収容された制御情報により制御されても良い。ノウボットサービスステーションは、ノウボットプログラムを生成し、送信し、受信しかつ削除するために用いることができる。遠隔データベースの場所では、ノウボットサービスステーションを、ノウボットプログラムを生成し、送信し、受信しかつ削除するために用いることができる。ノウボットプログラムが送信される遠隔データベースは、局地クエリーにより、局地的かつ自動的に決定される。ノウボットプログラムの送信は、ノウボットプログラムを、電子メールプロトコルまたはファイル転送プロトコル、或いは、ネットワーク上の他の通信方法に順応させることを含む。ノウボットプログラムプロトコルは、変換情報を含んでも良い。
【００４６】
ノウボットプログラムは、認証情報、スケジューリング情報、および、期間や状況の情報を含んでも良い。
本発明の他の効果や特徴は、以下の説明および請求の範囲から明らかになるであろう。
【発明を実施するための最良の形態】
【００４７】
第３図は、基本的には無限の数のノウボットプログラム５４ａ、５４ｂ、…を取り扱う広汎な種々の機能５２ａ、５２ｂ、…を提供し、かつ、各々が分散ネットワークのある場所にて作動するハードウェアおよびソフトウェアの形態をなす種々のノウボットサービスステーション５６ａ、５６ｂ、…を提供するノウボットサービス環境５０を示している。ノウボットサービスステーションの例は、個々のユーザのパーソナルコンピュータ（ＰＣ）やラップトップ（サービスステーション５６ａ）、ディジタルオブジェクトの供給者である関係者の収納庫やデータベースサーバ（サービスステーション５６ａ）、スマートカードや他のパーソナルディジタル機器や加工品、或いは、電話会社の中央局のスイッチ（サービスステーション５６ｂ）にて作動するソフトウェアを含んでいる。
【００４８】
第１１図に示すように、ノウボットサービス環境により提供すべき最も基本的な機能には、情報がどのように収集され、組織化され、エンドユーザ関係者に提示されるか、および、実行すべきタスクの要求がそのようにエンドユーザ関係者１７２から引き出されるのかを含む、集合および提示サービス１７０と、クエリーがどのように収納庫関係者１７６や他の資源に提示されるか、および、結果が提示のためにこれら資源に統合されるかを含む、検索および統合サービス１７４と、ノウボットプログラムやノウボットサービスステーションおよびそのパフォーマンスの真正さを証明し、かつ、ディジタルオブジェクトの権利を、記述された期間および状況にしたがって、これらプログラムおよびサービスステーションにより効果的に保護する保証／保護サービス１７８とが含まれる。これらサービスにつき、より以下により詳細に説明する。
【００４９】
（ノウボットサービスステーション）
ノウボットサービスステーションは、特別なシステムステータスの非常な柔軟さを備えた選ばれたユーザがサービスステーションを管理し、そのパフォーマンスを更新することを認める。しかし、このノウボットステーションは、オペレーションシステムに類似するが、関係者が随意にプログラムやファイルを作成し、随意にプログラムを作動させることは認めていない。一般に、サービスステーションは、関係者の仕様および／またはそれ自体の内部要求に応答して、ノウボットプログラムを作成する。将来のノウボットプログラムは、サービスステーションではないユーザのＰＣなどの外部源から到達することができ、かつ、ノウボット環境での使用のために認証され得る。また、将来のノウボットプログラムは、ＣＤ−ＲＯＭなどの外部媒体上に到達するようにしてもよい。また、サービスステーションは、他のサービスステーションから受理したノウボットプログラムを処理し、かつ、それ自体の環境にて、ノウボットプログラムを記憶し、管理する。
【００５０】
第４図に示すように、各サービスステーションにて実行される機能は、４つの主たるカテゴリーの範疇にある。すなわち、ｉ．ノウボットプログラムを生成し、送信し、受信し、認証し、実行し、記憶し、モニターし、かつ、削除することを含むノウボットプログラムの基本管理６０、ii．実行すべきタスクを定義する場合に関係者を補助し、実行したタスクの結果を、有用な形態でかつ有用なときに提供する、関係者６３との相互作用６２、iii.資源により理解されるフォーマットおよび時間で情報或いは行為のための要求を伝達すること、および、行為の情報や結果を処理することを含む、実行されるタスクを得るときに資源６５として働く関係者との相互作用６４、並びに、iv．他のサービスステーション６６と相互作用することや、適切かつ許されるときに、外部のおそらく信用できない行為の組を限定できるようにするためにノウボットフレームワークの一部ではないハードウェアやソフトウェアと相互作用することである。
【００５１】
ノウボットプログラム５４ｅないし５４ｐは、種々のメカニズム、たとえば、インターネットパケットにて輸送されることにより、ノウボットサービスステーションから、ノウボットサービス環境のノウボットサービスステーションまで通過することができる。また、ノウボットプログラム５４ｑないし５４ｔは、ある期間与えられたノウボットサービスステーションにとどまることができ、その意味でホストのノウボットサービスステーションは、ノウボットプログラムのための宿泊所および／または処理プラントとして考えられ得る。
【００５２】
第４図Ｂを参照すると、一般的なノウボットサービスステーションの全般的構造には、ノウボットプログラムのための保管庫６０と、（限定されるものではないが）PERL或いはPYTHONなどの言語にて書かれたノウボットプログラムを解釈するためのノウボットプログラムインタープリタ６２とが含まれる。コアノウボットオペレーティングシステム６８は、（以下に説明する）基本的なキー機能、および、ノウボットオペレーティングシステムアプリケーションプログラムインタフェース（ＡＰＩ）６４を提供する。このＡＰＩは、所定のインタフェースを提供し、これにより、アプリケーションプログラムが、オペレーティングシステムと相互作用するために容易に書かれることが可能となる。ノウボットオペレーティングシステム拡張ＡＰＩ６６は、拡張部(extension)７０にインタフェースを提供する。これら拡張部は、殆ど無限の種々の、たとえば自然言語処理などオペレーションシステムの基本機能を補足するサービスや機能を含み得る。
【００５３】
単純なノウボットサービスステーションは、基本機能の小さな組を実行できることのみが必要とされ、かつ、これらステーションは、ソフトウェアプログラムやＶＬＳＩチップの形態にて、簡単にかつ容易に実現され得る。他のより複雑なノウボットサービスステーションは、ネットワーク中のこれらの位置に適しており、かつ、これらが相互作用を期待される範囲に適するように種々の特殊な機能を有している。
【００５４】
最小限の基本的な機能性を備えた単純なノウボットサービスステーションにつき再度論ずる。第５図に示すように、ノウボットサービスステーションの中核は、ある種の交通警官およびステータスハンドラとして作動し、サービスステーション中の行為を監督するトランザクションマネージャ７０である。このトランザクションマネージャは、ノウボットプログラムがサービスステーションに到着した場合に、ノウボットプログラム受信機７２と相互作用し、かつ、出て行くノウボットプログラムが出発する場合に、ノウボットプログラム送信機７４と相互作用する。入力スケジューラ７６は、ノウボットプログラムの到着の軌跡を保持し、適切なときにサービスステーションにて取り扱われるためにスケジューリングされることを確実にする。出力スケジューラ７８は、同様に、サービスステーションから送信すべきノウボットプログラムの軌跡を保持し、これらが順調に送信されることを確実にする。
【００５５】
他の源から到着したノウボットプログラムは、受信機に直接進む。受信機はアクセス制御を提供し、到着したノウボットプログラムが適切にサービスステーションに入っていくかを評価する。そうであれば、受信機はプログラムを記憶部８２に記憶する。そうでない場合には、受信機は当該プログラムを処分し、或いは、関連する正しい作動をなす。局地的に生成された、たとえば、サービスステーションと同じ位置のシステム源からのノウボットプログラムは、トランスレータまたは特定部（スペシファイア：specifier）により生成され、さらに整理されるためにトランザクションマネージャに通される。トランザクションマネージャは、引き続いてなされる処理或いは送信のため、局地的に生成されたプログラムを記憶部に配置することもでき、或いは、即座に送るために送信機に直接手渡すこともできる。
【００５６】
入力スケジューラおよび出力スケジューラは、ノウボットプログラムが記憶部に入るときの各々に関してなすべき作動を決定する。作動には、即座にまたはある時間の後に、或いは、周期的に、さらには、他のイベントが生じた後のいずれかにプログラムにより呼び出されるステップを実行することが含まれる。このような処理を実行する時がくると、入力スケジューラは、トランザクションマネージャに通知する。プログラムを送信する時がくると、出力スケジューラは送信機に通知する。
【００５７】
トランザクションマネージャは、サーバステーション中の全てのトランザクションを管理し、ステータスを周期的にチェックする。トランザクションマネージャは、進行中のトランザクションの軌跡を保持し、他のサービスステーションに、ステータスおよびエラー状況を通知する。（通知を提供する一つの方法は、新たなノウボットプログラムを他のサービスステーションに送信することによる。）
【００５８】
トランザクションマネージャは、インタープリタ８４の助けを求め、ノウボットプログラムを実行する。これは、受理されたノウボットプログラムが、局地的ユーザや局地的な収納庫或いは他の場所に向けられることが意図されるか否かを決定するときに生じる場合がある。インタープリタは、プログラムを「解釈し」（たとえば、ノウボットプログラムを稼動して）、どのような作動をなすべきかを判断する。局地的ユーザに向けることを意図する場合には、解釈の結果はスペシファイアに通されて、次いで、ユーザとの通信がなされる。たとえば、スペシファイアは、どのような画像がスクリーン上に現れるか、或いは、与えられたタイプの多数の行為がユーザのためにどのようになされるかなど、提示事項を取り扱うことができる。この情報は、ノウボットプログラムから取り出され得る。
【００５９】
局地的な収納庫８６に向けることが意図される場合（たとえば、プログラムにより表わされるタスクが収納庫内のある情報をアクセスするものである場合）には、解釈されたノウボットプログラムは、どの収納庫をアクセスするかを決定するとともに、その実行法（たとえば、シリアルかパラレルか、粗さ(granularity)のレベル、および、どのように情報を命令し且つ組み合わせるか）を計画する。次いで、ノウボットプログラムは、当該プログラムに沿って、解釈の結果を、１以上のトランスレータに通し、トランスレータが収納庫と通信する。トランスレータは、プログラムにより表わされる要求を、局地的な収納庫の言語に変換する。局地的な収納庫は、直接要求を実行できるようにしても良い。他の場所に向けることが適切である場合には、トランザクションマネージャは、解釈の結果を、ネットワークを経て所望の場所に急送するために送信機に通す。所望の場所は、インターネットの場合には他のサービスステーションであろうが、収納庫、ゲートウェイ、或いは、ノウボットサービス環境の外部にある資源であっても良い。
【００６０】
収納庫の検索結果は、トランスレータを介して戻される。トランスレータは、これをフォーマットして記憶部８２に記憶し、かつ、トランザクションマネージャに通知する。トランザクションマネージャは、次いで、トランザクションの終了を記録し、出力スケジューラに進める。
【００６１】
出力スケジューラは、種々の返還の方針を提供する。通常は、結果はプログラムの形態で戻され、その場合に、送信機は、出力スケジューラにより指示されたときに、指示されたようにプログラムを送信する。さらに、結果は、他の媒体（たとえば、Ｅ−メイルやファイル転送）にて通信され、或いは、配達に適した「マークアップ(markup)言語」に利用できるようにされる。このマークアップ言語は、その構造を通知する情報からなる自己記述の形態をなし、このため、他の解釈が下流側にて可能である。結果はユーザに戻され、或いは、記憶または処理のための指定された中間の位置に戻される。
【００６２】
第６図に示すより複雑なシステムは、種々のユーザがアクセス可能なサービスを提供するために、収納庫９２ａ、９２ｂ、…に記憶されたディジタル情報の大規模なプロバイダにより使用可能である。ユーザは収納庫に含めるために材料を提供することを希望でき、或いは、収納庫に保持された情報（ディジタルオブジェクト、以下参照）にアクセスすることを希望できる。サービスプロバイダは、ゲートウェイを保持する。このゲートウェイは、多数のサーバ９４ａ、９４ｂ、…を有し、その中の少なくともいくつかは、収納庫およびゲートウェイの管理に関する他のソフトウェアとともに、ノウボットサービスステーション９６ａ、９６ｂ、…を有している。各サーバは、１以上のローカルエリアネットワーク（ＬＡＮ）と接続され、また、収納庫および一組のルータ９９ａ、９９ｂ、…に役立つ。各ルータは、たとえば、ダイヤルアップ、ワイヤレス、Ｘ．２５リンク或いはインターネットネットへの接続などを含む通信リンクを接続されている。
【００６３】
収納庫へのクエリーの作成を希望するユーザは、ノウボットプログラムを組み立て、これが、まず、適切なアドレスサーバ１０２に問い合わせて、収納庫のＩＰアドレスを決定し、クエリーに対して回答し、ルータ９９ｂに進む。ルータ９９ｂは、プログラムを、サーバの所定の一つに送信し、そこで、ノウボットサービスステーションは、所定の収納庫と相互作用して、クエリーを完了する。
【００６４】
また、結果は、ノウボットプログラムによりパッケージにされ、インターネットを介して戻される。
【００６５】
第６図のノウボットサービスステーションは、検索の要求や他の作動を同調させるために互いに相互作用する。
【００６６】
ノウボットプログラムの論理構造および作動 ノウボットプログラムの論理構造が、ネットワークを介したプログラムを助けてガイドするため、および、その作動のための命令を提供するために情報のフィールドの形態にて第７図に示されている。フィールドの正確な順序は重要ではなく、フィールドは、ノウボットがノウボットサービス環境を介して移動するのにしたがって、サービスステーションにより追加され或いは変更され得る。保管庫においては、種々の実行手段があり得るし、また、多くのフィールドは不必要であり省略することもあり得る。
【００６７】
第１のフィールドは、ノウボットサービス環境にて現在のところ存在する他のノウボットプログラムからこのノウボットプログラムを識別する、全体において一意的な識別子１１０である。これは、長期間にわたりノウボットプログラムを識別するのにも有用であってもよい。識別子の一部は、ノウボットプログラムを作成したノウボットサービスステーションの識別から派生している。識別子は、保管庫からノウボットプログラムを検索するために用いることができ、或いは、ノウボットプログラムを参照するために用いることもできる。一意的な識別子がセマンティック(semantics)を備えたものである場合には、当該プログラムを作成したノウボットサービスステーションは、セマンティックが何であるかを明らかにするためのタイプおよびバージョンのインジケータを提供し、或いは、この情報は、以下に説明するシステム、時間および日付のフィールドに収容され得る。
【００６８】
全体において一意的な識別子により、ノウボットプログラムの存在、位置および活性が適切に制御され或いは決定されつつ、ノウボットサービス環境に存在することができる。
【００６９】
次の（オプションの）フィールドは、ノウボットプログラムの真正さ、特に、ノウボットプログラムを考案したと主張する環境により、当該ノウボットプログラムが実際に作成されたことを確実にするために用いられる認証情報１１２である。また、必要であれば、ノウボットプログラムの一部或いは全部が、暗号化されていても良い。
【００７０】
次のフィールドはスケジューリング情報１１４を収容している。これは、いつ或いはどのくらい頻繁にノウボットプログラムにより表わされるタスクを実行すべきかに関連している。これは、当該フィールドに記述されたコストや時間の制限に依拠していても良い。また、このフィールドが、（エラー情報通知を含む）
【００７１】
必要なステータス情報を特定しても良い。このスケジューリング情報は、不足のない仕様の情報がプログラム中の他の位置にあると仮定している。スケジューリング情報は、たとえば、いつノウボットプログラムが機能を果たすか、どのくらいの期間だけノウボットプログラムが存在するか、および、いつどのようにしてノウボットプログラムがステータス情報を戻すべきかを示している。タスクをスタートさせるための命令のある例には、（ａ）「収納庫Ｘで明日の午後２時にこのノウボットプログラムを稼動させる」；ノウボットプログラムは収納庫内の稼働中のノウボットプログラムにリポートを戻す、（ｂ）「収納庫Ｙで毎日正午にこのノウボットプログラムを稼動させる」；結果は、いわゆるその日の新しいことになるであろう、（ｃ）「イベントＺが生じるまで待機し（たとえば、我々が使用したいカレンシーを知るまで）、次いで、当該イベントの結果を用いてノウボットプログラムを稼動させる」、（ｄ）「このノウボットプログラムを稼動し、イベントＷが生じた場合（たとえば、株価が１５未満になった場合）には、行為Ｑをなし（たとえば、売却する）、これが２０を超えた場合には購入する。」
【００７２】
ノウボットプログラム１７４は、また、他の起動の基準やトリガー状態を含んでいても良い。
【００７３】
次のフィールド、すなわち、ナビゲーション情報１１６には、ノウボットサービス環境におけるプログラムの将来のナビゲーション、および／または、プログラムによりなされたナビゲーションの経路のヒストリーが獲得されている。
【００７４】
次のフィールドである時間および状況１１８は、プログラムのために実行されたタスクに対する支払許可などの領域、或いは、使用期間および使用状況に関連している。この情報は、公開鍵の暗号や、支払許可のための等価なメカニズムの使用、並びに、他の期間および状況により保護される。支払情報は、許可されたクレジットの限度を示し、支払許可を確実にすることができ、かつ、この情報は、ノウボットプログラムに完全に収容しても良いし、ディジタルキャッシュ支払システムや他の電子支払メカニズムと協働しても良い。
【００７５】
次のフィールドである、システム、時間および作成の日付１２０は、プログラムがコピーされ、或いは、そのヒストリーの記録が必要な場合の追跡メカニズムを提供する。他のプログラムに組み込まれたプログラムはそれ自体のシステム、時間および作成日付を有する。このフィールドは、情報を取得可能なノウボットプログラムを特定しても良い。
【００７６】
次のフィールドである、オペレーション１２２は、典型的には、ノウボットプログラムの内容と協働する実行すべきインストラクションシーケンスを収容する。ノウボットサービスステーションにて解釈可能な任意の言語が認められる。インストラクションシーケンスは、自然言語（たとえば英語）を解釈するための自然言語理解プログラムと協働して用いられる自然言語のディジタル表示であり得る。インストラクションシーケンスの単純な形態は、フォーマットされた検索コマンド或いはアクセスコマンド、たとえば、「識別子Ｘを持つ物（オブジェクト）にアクセスせよ」或いは「特定の名称の人物によりかかれた物を検索せよ」というものである。また、インストラクションシーケンスは、たとえば、「自分を実行して、実行結果中の宛先の名前に結果を通せ」というような実行すべき処理を特定するものであっても良い。
【００７７】
次のフィールドである経路(path)１２４は、全般的には、最も最近にプログラムを取り扱ったサービスステーションを特定する。また、このフィールドは、プログラムが取り扱われた時間にしたがって、当該プログラムを先に取り扱った一連のサービスステーションに関する情報を含んでいても良い。以前および将来の軌道に関する不完全な情報を含み得るナビゲーションフィールドと異なり、パスフィールドは、実際に取られた経路（パス）の最終的な経路をもたらすことが意図される。
【００７８】
次のフィールドである、データ記述１２６は、全般的には、データごとの（ハンドルとして知られている）一意的な識別子、（以下に説明する）データの各部分のユーザに関連する権利、（必要であれば）リポート要求、および、インストラクションシーケンスを使用するための方向を含む。この方向は、実行可能なプログラムの形態をなしていても良い。
【００７９】
最後のフィールドであるデータ１２８は、以下に述べるもののうち１以上を含んでいる。
【００８０】
ａ．  我々がディジットのシーケンス（たとえば、二進数のディジットやビット）と定義したものであるディジタルオブジェクトおよび我々が「ハンドル」と称している関連する一意的な識別子である。ディジタルオブジェクトには、権利（たとえば著作権）、或いは、他の権利や利害関係を主張した情報や材料が組み込まれていても良い。また、ここには、ディジタルオブジェクト自体に関連する権利が有っても良い。したがって、ディジタルオブジェクトは、従来の著作（たとえば、文字や絵画）や、コンピュータユーザのための所望の表明を生成することができる、より広汎な任意のディジタル材料を含み得る。したがって、ディジタルオブジェクトは、プログラム、および、先に存在する一以上の著作に基づきまたはこれを組み込んだ他のデータを含み得る。ディジタルオブジェクトはネットワークを経て配布され、次いで、全体的或いは部分的にコンピュータスクリーン（或いは他の出力装置、たとえばプリンタ）上に表現され得る。ディジタルオブジェクトは、オーディオ、ビデオまたは３−Ｄの場面および加工物や、多くの異なる方法にて表現される可能性が有り且つその表現が始めて起こるようなビットシーケンスを含み得る。ディジタルオブジェクトにおいて主張される権利の通知に関して、権利とは、法令の下にて存在するもの（たとえば、著作権、特許権、トレードシークレット、商標権）或いは個人的な行為（たとえば、秘密、共同事業または交渉）の結果としてのものをいう。
【００８１】
ｂ．  ビットのシーケンス（おそらくは、データのタイプを備えている）
ｃ．  （ディジタルオブジェクトなど）他の存在への間接的な引用
ｄ．  上述したものの組
ｅ．  （組を含む）上述したものの組み合わせ
【００８２】
記述フィールドの内容により、ディジタルオブジェクトは、権利を完全に認識しつつ、かつ、その内容に関する許可を得て、独立して特定されかつ処理され得る。ディジタルオブジェクト自体がノウボットプログラムであっても良い。
【００８３】
ノウボットプログラムは、タスクを実行するために、必要に応じて互いに通信することができる。このような通信手段は以下の通りである。
【００８４】
１．マルチキャスト(multicast)通信は、複数の他のノウボットプログラムに到達させる場合やターゲットのノウボットプログラムの位置が前もって知らされていない場合に用いることができる。２．源のノウボットプログラムは、ターゲットを作り出したノウボットサービスステーションを介してメッセージを発送することより、当該メッセージをターゲットのノウボットプログラムに送信することができる。３．あるノウボットプログラムから他のノウボットプログラムに直接通信するために、所定のメカニズムを使用することができる。
【００８５】
ノウボットプログラムをどのように送受信するかを定義するプロトコル或いはプロトコルの組に加えて、システムは、メッセージをどのように送受信するかを定義するプロトコル或いはプロトコルの組を備えていても良い。ある場合には、メッセージを送信する方が、ノウボットプログラム自体を送信するよりも、むしろ効果的である場合がある。たとえば、ノウボットプログラムがノウボットサービスステーションに到達し、処理の前に、他のノウボットプログラムからのメッセージを待つ場合がある。
【００８６】
ノウボットプログラムは、ノウボットサービスステーションにて互いに相互作用することができる。ノウボットプログラムは、ノウボットサービスステーションにて増殖しても良い。ノウボットプログラムのクローンの各々は、その親や兄弟と独立して作動可能である。ノウボットプログラムおよびこれらのクローンは、その活動を同調させ、かつ、タスクを実行するのに協力しても良い。より一般には、任意のノウボットプログラムは、クローンであろうとなかろうと、任意の他のノウボットプログラムと同調して作動することができる。
【００８７】
ノウボットプログラムは持続性を持ち、すなわち、ノウボットプログラムは、ノウボット作動環境において用心深い存在を維持するという期待をもって生成され得る。通常は、持続性のあるノウボットプログラムは、特定のノウボットサービスステーションに存在するが、ノウボット作動環境中を絶え間なく移動する持続性のあるプログラムが存在していても良い。
【００８８】
単純なユーザのクエリーやシステムクエリーを伝達するノウボットプログラムは、複雑な検索手順を作り出し或いは他の分散タスクの実行する。いくつかの収納庫やデータベースに質問を与えて、全ての必要な部品を得て、検索や他のタスクの実行を満足しても良い。（収納庫は、複数のデータベースや知識ベースを収容していても良い。）これら部品は、単一の応答或いは複数の応答としてユーザに配布される。ある場合には、ユーザは部品の一部或いは全部を別に配布すべきことを求め、或いは、システムがこれを許可するであろう。
【００８９】
ノウボットプログラムは、クエリーや検索に対応していない、（おそらく、他のノウボットプログラム、収納庫、データベースおよび／または知識ベースと協働した）複雑なタスクを実行する場合がある。たとえば、ネットワーク中で、コンピュータ中で、或いは、コンピュータやネットワークの組において、プログラムの起動、パラメータの設定或いはソフトウェアパッチの挿入など何かが生じる場合がある。
【００９０】
（認証およびセキュリティ）
ノウボットサービス環境中のノウボットプログラムおよびノウボットサービスステーションは「資格のある存在」として特定される。これにより、全てのサービスステーションというわけではないが、システムの行為についてある保証が与えられる。また、種々の保証のレベルを特定することができる。あるサービスステーションでは、その資格は、ノウボットサービス環境中のサービスステーションの存在を登録することに相当する。このような登録をなす団体は、認証された場合を除きサービスステーションを変更しない（つまり、みだりに手を付けない）ことに同意するであろう。サービスステーションは、（たとえば、サービスステーションが変更され、或いは、その作動が修正される場合に）それ自体の完全性を決定するためのメカニズムを含み得る。
【００９１】
資格のあるサービスステーションに到達したノウボットプログラムは、プログラムを生じたサービスステーションや実行のコストを提供したサービスステーションの資格が受け入れ可能であるかどうかにかかわらず、資格のあるサービスステーションにて取り扱い可能となる。費用のかかる実行について、認証のため電子支払が必要な場合もある。権利（たとえば著作権）のあるディジタルオブジェクトや権利（たとえば契約或いは証文）に関するディジタルオブジェクトをアクセスする要求がある場合、ある信頼レベルにて資格のあるサービスステーションのみに、ノウボットプログラムを戻すことができる。プログラムに関するサービスステーションが資格があるか否かを決定するために、アクセスを実行するのに先立ってテストがなされても良い。或いは、より制限されていない案では、ディジタルオブジェクトに関して何がなされるかという点でプログラムを単純に制限しても良い。
【００９２】
ノウボットプログラムに関して、資格とは、資格のあるサービスステーションがプログラムの作成者であり、全体において一意的な識別子を当該プログラムに割り当て、関連する情報にしたがってノウボットプログラムのコピーを保持していることを単に意味するものであっても良い。ノウボットプログラムが削除されたときに、当該プログラムを作成したサービスステーションに、ステータスメッセージが戻される。このメッセージの配布は、当該ステーションが利用可能でない場合には延期される。長期間存在するノウボットプログラムおよび比較的短期間存在するノウボットプログラムを含む場合の通知のための他のメカニズムは、他のステーションに通知することにより、その貴任を転嫁する。
【００９３】
ノウボットプログラムを作り出したサービスステーションにより維持され、或いは、当該サービスステーションとアクセス可能な収納庫に記憶されたときに、当該ノウボットプログラム自体をディジタルオブジェクトとして見られるようにしても良い。ノウボットプログラムを、任意のサービスステーションにより削除できるようにしても良い。ノウボットプログラムがもはや保持する価値がないと考えられる場合には、ノウボットプログラムの記録を、これを作り出したサービスステーションにより削除できるようにしても良い。
【００９４】
ノウボットプログラムは、機密性或いは所有権の主張がなされたディジタルオブジェクトを、与えられたコンピュータにある間或いはネットワークを経て輸送されている間に要求し、および／または、受理することができる。公開鍵暗号などの従来からのネットワークセキュリティ技術を、輸送および記憶の際の保護のために用いることができる。ここに記載されたアプローチは、コンピュータ処理の間の、記載された処理を施されたディジタルオブジェクト或いは使用法の種別を保護するのに役立つ。ある情報の材料は、ネットワーク環境にある間、この形態の保護を有する要求をすることになるであろう。資格のあるサービスステーションのみが、この材料にアクセスするに足るだけの信頼がされるであろう。資格のあるサービスステーションに存在し、かつまた、資格のあるサービスステーション間を輸送されるノウボットプログラムは、信頼されるものと考えられる。全ての他の環境に存在し、かつまた、資格のあるサービスステーションの間を輸送されていないノウボットプログラムは、信頼されない存在であると仮定される。（戻りのパス（経路）において、）資格のある宛先のみが資格のあるノウボットプログラムを受理できるということを保証するために、ノウボットプログラムの源は認証されなければならない。暗号とともに認証のレベルは、システム内で特定されかつ維持されていても良い。
【００９５】
資格なしにサービスステーションおよびノウボットプログラムを使用することも可能であるが、知的所有権を保護する能力に関する保証がなされていないことになる。
【００９６】
有効なノウボットプログラム（たとえば、ノウボットプログラムたる必要な論理構造を有するもの）は、適切なノウボット構造を生成することができ、かつ、これを作り出すことができる他のソフトウェアへの適切なインタフェースの制限に適合することができる任意の関係するソフトウェアにより作り出され得る。プログラムを作る際に、インタフェースの関係者側には、制限をなすことができない。また、認証され或いは資格のあるノウボットプログラムが、認証され或いは資格のあるノウボットサービスステーションにより提供され或いは有効にされた場合には、ノウボット構造は、認証され或いは資格のあるノウボットプログラムの形態をなすことができる。ノウボットプログラム中のタスクの記述は、解釈可能な任意の言語、たとえば、PERLスクリプト、PYTHON、その他にて表現され得る。ノウボットサービスステーションは、複数の言語インタープリタをサポートしても良い。ある言語インタープリタが、他の言語にて表現されたノウボットプログラムの構造上の一部を解釈できても良い。いずれの場合にも、資格のあるノウボットプログラムは、資格のあるノウボットサービスステーションのみにより作成される。
【００９７】
資格のあるサービスステーションにて作動することにより、資格のあるノウボットプログラムは、ノウボットサービス環境において知的所有権を保護することができる。権利者が資格のないサービスステーションに、彼らの知的所有権を送信する意志がある場合に限り、資格のないプログラムからの情報の要求を満足させることができる。資格のないプログラムの間の通信やなされる行為の種別にあると考えられる技術的な制限は存在しない。したがって、資格のあるサービスステーションの外部に送信されたいかなる情報にも、資格のあるサービスステーションからのさらなる保証は与えられない。このような行為は、通常は、必要であれば権利者の許可の下でのみ、なされるであろう。このような許可は、期間および状況フィールドにて示されても良い。しかしながら、資格のあるサービスステーション内では、権利および権利の主張は、続けて保護されるであろう。
【００９８】
（記録保持）
各ノウボットプログラムは名前を含み、或いは、１以上のディジタルオブジェクトを示すことができる。これらは、一般には、権利および利害関係を持っている。プログラムには、どのオペレーションが各ディジタルオブジェクトで実行可能かを決定し、要求されたリポートを決定するための十分な情報が含まれている。
【００９９】
ノウボットプログラムは、収納庫の検索、これら自身のオペレーション、プログラム間の相互作用、および、収納庫への保管をなすことができる。また、これらを、資格のあるサービスステーションに送信することができる。権利者が許可したような場合には、これらを資格のないサービスステーションに送信することもできる。
【０１００】
各サービスステーションは、各ノウボットプログラムにて実行されたオペレーションの軌跡を保持する。また、各サービスステーションは、（ノウボットプログラムに収容された期間および状況にしたがった用法で）「通知機関」、ノウボットサービス環境のキーになる部分である論理的な分散システム、或いは、権利者の権利管理手法に適合するように、リポートを電子的に戻す。ある場合には、重要なイベントやオペレーションが発生する（たとえば、情報や権利のある材料に基づき、或いは、これらが組み込まれたノウボットプログラムのためのタスクが実行される）ごとに通知が要求されるであろう。他の場合には、周期的な（たとえば、月ごと或いはＮ個のイベントごとの）リポートのみが要求されるであろう。
【０１０１】
通知機関のシステムがネットワークから逸脱した場合には、局地的な情報の収集の後のリポートが依然として要求されるが、リポートの要求は中断される場合がある。或いは、要求された通知のレベルがありえないものである場合には、そのような環境の下でノウボットプログラムのために実行することが、ユーザに制限される場合がある。たとえば、ある応用例が時間に依存し、かつ、ネットワークを経た、収集システム（より一般には、権利管理システム）からの「電子的な許可」の補充に依拠していることがある。
【０１０２】
サービスステーションがネットワークから逸脱し、特定の期間内に再度接続されなかった場合には、サービスステーションが再度接続され、かつ、通知システムが更新されるまで、通知リポートを提供しなければならない全てのノウボットプログラムが、（たとえば、サービスステーション記憶部の制限により）作動不能にされる場合がある。或いは、この場合に関して、サービスステーションは権利者により認証され、当該権利者の任意の材料を含むノウボットプログラムの活性或いは当該ノウボットプログラムのリポートの制限を除去しても良い。また、ノウボットプログラムは、必要でないのなら、収集ステーションから切断された間に収集された全てのリポートを削除するようにしても良い。
【０１０３】
（応用例）
ノウボットフレームワークによれば、ネットワーク中の１以上のコンピュータに記憶された情報および当該１以上のコンピュータにて利用可能なサービスを利用する、事実上無限の応用例が可能である。これら応用例は、単一のコンピュータでの典型的な単純な情報のアクセス要求（たとえば、Jim DanielsにどのネットワークアドレスでＥ−メールを送信すべきか、或いは、Jim Daniels用の公開鍵はどれか？）、若しくは、遠隔サーバへの単一のコマンド（1999年３月３日の任意のときのワシントンＤＣ発サンディエゴ行の片道チケットの発行）に限定されない複雑なタスクを実行することができる。その代わりに、ノウボットプログラムにより、関係者が、情報を検索することができ、かつ、多数のコンピュータから蓄積し或いは多数のコンピュータにて実行される必要があり、かつ、計画中の後ろ側のステップが、当該計画中の前側のステップの結果に依存するようなタスクを実現することが可能となる。フレームワークにより、これら全てが、関係者にとってわかりやすく（或いは要求されれば通知付きで）実現することができる。
【０１０４】
ある広汎なクラスでの応用例では、情報に関する単一の関係者の要求に応答することを含む。この情報は、ネットワーク上の異なる遠隔位置に配置された独立したデータベースをアクセスし、かつ、ユーザに整然とした提示をなすための情報を組み立てることによってのみ、得ることができる。
【０１０５】
第８図の特定の例において、インターネットアドレスを得るための中央の登記機関がないと考える。局地コンピュータ１３０のユーザが他のユーザのインターネットアドレスを必要とする場合に、第１のユーザは、他のユーザを特定する単一の要求１３０を入力する。局地ノウボットサービスステーション１３８は、要求を解釈して、対応するノウボットプログラムを作り出し、当該ノウボットプログラムを、一連の他のコンピュータ１３２、１３４、１３６に送信する。これら他のコンピュータは、それぞれ、それ自体のノウボットサービスステーションを有し、かつ、ユーザアドレスディレクトリを維持するために知られている。（これは、局地コンピュータのサービスステーションが、このようなディレクトリを維持するコンピュータのアドレスのテーブルを持っているのであれば、前もって知ることができる。そうでなければ、サービスステーションは、まず、このようなテーブルを有していることが知られているコンピュータにノウボットプログラムを送信して、これ得る必要がある。）コンピュータ１３２、１３４、１３６上のディレクトリ１３８、１４０、１４２の各々は、それ自体のネーミングやアドレッシングの取極を有する傾向がある。コンピュータ１３０の サービスステーションは、ユーザのクエリーが共通のプロトコルにしたがって表現されるようにセットアップされていても良く、かつ、他のコンピュータのサービスステーションが、各ディレクトリにて共通のプロトコルから入ってくる要求を、ディレクトリに直接質問できるような形態に変換する変換ルーチンを備えていても良い。クエリーの結果は、次いで、ノウボットプログラムに挿入され、当該ノウボットプログラムは、次のディレクトリに進められる。サービスステーションの各々は、クエリーがそこで実行されている期間、ノウボットプログラムの「宿泊所」として一時的に機能する。
【０１０６】
ノウボットプログラムが一巡して、かつ、多数のアクセス結果を伝達するコンピュータ１３０に戻すときに、局地サービスステーションの拡張部或いは増進部が、共通プロトコルからの戻りを、情報の局地的表示に有用なフォーマットに変換する。また、局地サービスステーションの増進部は、これらを表示する前に、ユーザのパフォーマンスにしたがって、結果を組織化する。たとえば、ユーザは、入力の直近の更新に基づき、年代の逆の順序での表示を求めることができる。
【０１０７】
また、この表示に、各入力が見出されたデータベース或いは収納庫を示す表示の付加を求めることができる。
【０１０８】
ノウボットプログラムが、第８図に示すようなラウンドロビン方式にて検索を実行すること（すなわち、シリアルに、したがって、タスク管理を分権化すること）により、受け入れ可能性を長時間にすることができる。他の手法には、基本的に同時にコンピュータ１３２、１３４、１３６にいくつかのノウボットプログラムを送信し、（第８図の破線に示すように）元のコンピュータ１３０に、望むならば特定された時間制限内に、独立してこれらを戻すことが含まれる。このような情報を蓄積する並列的な手法（すなわち、集権的タスク管理）は、（しばしば起こるように）訪問すべきコンピュータの数が大きいときに、遅延を減少させるために、本質的に重要である。
【０１０９】
他の例では、局地コンピュータのユーザは、特定の外国長期国債の米ドルでの現在の価格を決めることを求める場合がある。ユーザは、この単純なクエリーが、実際には、外国通貨の価格を取って、現在の交換レートに基づきこれを米ドルに変換する必要があることに気付かない場合がある。局地ノウボットサービスステーションの拡張部或いは増進部は、取り出すべき情報の一つ一つを名づけることなく、ユーザが単に答えを求めるべき問題を表現すれば良いようなユーザインタフェースを提供する。サービスステーションは、１以上のノウボットプログラムを適切な遠隔ノードに送信し、必要な情報を取り出す。ひとたび情報が戻ると、局地サービスステーションの増進部は、現在の価格および変換レートを使用して、回答を決定し、この回答をユーザに配布する。（しかしながら、情報の一つ一つは必ずしも必要ではない。）貨幣の変換は、多くの両替の交換にて生じ得るため、ユーザは、１つ（所望により１以上）の近接しているが著しく異なる交換レートに基づき、或いは、いくつかの交換レートからの平均に基づき答えを得るであろう。
【０１１０】
この例において、ユーザは、サービスステーションがノウボットプログラムを使用して情報の行方不明の一片を得て、次いで計算を実行することを要求して、解決すべき問題を明確にする場合を考える。しかしながら、ユーザが、単に、非数学的な正確な言葉で、問題をはっきりと表現できるにすぎず、問題を数学的な形態に変換して、これを解決するのに助けが必要であるとすると、ユーザは、言葉にて、たとえば、「１９９９年に５，０００万ドルに達する世界中のＰＣＭＣＩＡモデムのドルでの販売見込みはどのくらいか？」というような質問を言葉にて入力することができる。第９図に示すように、局地コンピュータのサービスステーションの拡張部および増進部は、まず、ノウボットプログラム１５１を、エキスパートシステム１５３がある位置の遠隔サービスステーション１５２に送信する。このエキスパートシステム１５３は、製品のドルでの販売をどのように評価するかに関する知識を収容している。プログラムは、「以下の質問に答えるために、どのような情報を知る必要が有りますか：…？」という方針に沿って、クエリーを実行する。エキスパートシステム１５３は、「過去５年間の米国内での製品の販売、全世界の人口に対する米国の人口のパーセンテージ、および、特定の新たな技術に直面した際の製品の生育力の評価」というような回答を提供することができる。また、このような回答が、当該回答を見出したコンピュータのアドレスを与えたと考える（そうでなければ、ノウボットプログラムは他のコンピュータを訪れて、上述した情報を取得する）。ノウボットプログラムは、次いで、サービスステーション１５２の助けをかりて、情報が位置している場所の３つの他のコンピュータ１５４、１５６、１５８に向けられる３つの新たなノウボットプログラム１６０、１６２、１６４を生み出すことができる。プログラムはパラレル（並列的）に送信され得るし、或いは、単一のプログラムはシリアル（直列的）に送信され得る。ノウボットプログラム１６６、１６８、１７０にはめ込まれたサービスステーション１５２に情報が戻ったときに、サービスステーション１５４にて待機している元のノウボットプログラムにより、生み出された３つのプログラムが削除され、当該ノウボットプログラムが、サービスステーション１５０に結果を戻す。次いで、回答が作られて表示される。
【０１１１】
サービスステーションおよびノウボットプログラムは、当該ディジタルオブジェクトの作成者やこれに関する権利所有者によるネットワーク上での当該ディジタルオブジェクトの利用可能性を促進するように、コンピュータに配置されたディジタルオブジェクトへアクセス、当該ディジタルオブジェクトの使用、および、当該ディジタルオブジェクトの補償を制御するための贅沢なフレームワークを提供する。ディジタルオブジェクトに関する権利の通知に関して、権利とは、法令の下にて存在するもの（たとえば、著作権、特許権、トレードシークレット、商標権）或いは個人的な行為（たとえば、秘密、共同事業または交渉）の結果としてのものをいう。収納庫やディジタルオブジェクトの制御に関する付加的な情報は、本件と同一の譲受人に譲渡された1993年10月22日出願の米国特許出願第08／142,161号に記載され、当該出願は本願に組み込まれている。
【０１１２】
ディジタルオブジェクトの作成者或いは所有者は、典型的には、その使用、再生およびアクセスまたは実行が制御可能であることを希望することができ、また、これら行為を許可することに対する補償を希望することができる。たとえば、受信機１５０により解釈されたときに、そのデータがジョージワシントンの肖像を明らかに表わすディジタルオブジェクト（「ジョージワシントンデータ」）の所有者は、広告代理店による多数の使用よりも高校教師による単一の使用に、よりその変更を少なくするように希望する場合がある。高校に送信されたジョージワシントンデータが認証されていない第三者に送出されるのを防止するために、暗号化された(encrypted)バージョンのデータをネットワークに送信するノウボットプログラムは、高校のサービスステーションと相互作用することにより、暗号化されたデータのアクセスを特定のコンピュータに制限し、かつ、高校の特定の登録されたソフトウェアのコピーにて使用するように制限した指令を伝達することができる。
【０１１３】
また、ディジタルオブジェクトの作成者および所有者は、当該ディジタルオブジェクトのシステム用、再生および普及に関するレポート、たとえば、受理された支払の検索または支払のクロスチェックなどを受理しても良く、或いは、統計的な情報を保持するように求めても良い。ノウボットプログラムは、サービスステーションと相互作用して、このようなサービスを提供する。ジョージワシントンデータの例において、所有者は、当該データを運ぶノウボットプログラムにより運ばれるデータに価格スケジュールを添付しても良い。所有者のノウボットプログラムは、サービスステーションとの相互作用を介して、データの潜在的な使用に関して、購入したコンピュータと実際に交渉しても良い。或いは、価格を予め定めても良い。プログラムにより、ディジタルオブジェクトへのアクセスおよび所有者に対する新たな「購入」を報告しても良い。
【０１１４】
ノウボットプログラムは、ネットワーク上ですでに有用となっている、ディジタルオブジェクトに添付され或いはネットワークのいずれかの場所にて有用な支払スケジュールにしたがってディジタルオブジェクトのシステム用に対する支払を収集する支払メカニズムを使用しても良い（ノウボットプログラムは、収納庫に、パッケージ化されたディジタルオブジェクトおよび支払スケジュールを記憶することができる）。ジョージワシントンデータ１５０の所有者は、ネットワーク上で、銀行預金や資金残高を保持することができる。所有者のノウボットプログラムは、ディジタルオブジェクトの購入者との完全な取引に向けられ、ネットワーク上で、購入者から所有者の預金に、資金を転送することにより終了する。
【０１１５】
資金は、直接的なお金の転送、ディジタルキャッシュ或いはクレジットカード（たとえば、Visaやマスターカード）の請求の形をとることができる。さらに、他の信頼された認証サービスを使用することができる。
【０１１６】
また、ノウボットプログラムは、ユーザにより生成された派生的な仕事の一部として、ディジタルオブジェクトのシステム用を制御するように働くことができる。たとえば、ジョージワシントンデータの所有者は、解像度の減じられたバージョンの表示が、アメリカの歴史に関するオンラインの作品にて使用するために変更され、或いは、色付きのバージョンから白黒の表示が作られたりすることを認めるように選択することができる。ノウボットプログラムは、ネットワーク中の派生的な仕事へのアクセスを制御することができ、かつ、アクセス数を所有者に報告することができる。所有者は、上述したように、ノウボットプログラムが自動的に支払の取引の面倒をみるように、これを構成することができる。一般に、ノウボットプログラムは、派生的な仕事の派生の軌跡に関する情報を保持することができる。
【０１１７】
ノウボットプログラム自体が、現存する仕事に基づく派生的な仕事の生成に巻き込まれる場合がある。これには、ノウボットプログラムが新たな材料を、現存する仕事を作り直した現存する仕事に付加することが含まれる。
【０１１８】
ディジタルオブジェクトの所有者がその使用に対して支払を求めるのと同様に、ディジタルオブジェクトのユーザは、知らず知らずのうちに、ディジタルオブジェクトへのアクセスに対して、絶えられないほど高額な勘定を請求されることがないように、これを確実にすることを求める。話題に関する蓄積された情報を自動的に送出するノウボットプログラムは、自動的に、かつ、送り手の知識を要することなく、ネットワーク中の多数の遠隔位置にあるディジタルオブジェクトをアクセスするための手数料を請求することができる。たとえば、ユーザが、帆船に関する全ての利用可能な情報の一つを見つけ出し、これを購入するような効果を持つ、不注意なクエリーを作る場合がある。サービスモジュールは、要求者の側に位置するサービスステーションに含まれる。これは、サービスステーションにて始められたノウボットプログラムが、ユーザにて決定された総額よりも料金が高くなることを、スクリーンに表示するような形態にて防止することができる。或いは、これは、与えられた予算に対してアクセスのための最も好ましい一連の場所を選択する助けをすることができる。
【０１１９】
ノウボットプログラムの他の使用には、特定の患者の臨床データおよび医学データベースの組み合わせをアクセスすることがある。ある例では、ノウボットプログラムは、ネットワークから患者の体温および関連する情報を検索して、医学データベースにあるような基準として適用可能な体温と比較する。ノウボットプログラムが、患者に熱があると判断した場合には、ノウボットプログラムは、医学データベースの処置情報にアクセスして、同一の使命の全ての適切な処置スケジュールを見出すことができる。
【０１２０】
ノウボットプログラムは、ネットワークのサポートおよび援助するジョブのために使用することができる。たとえば、サービスステーションがデータベースと情報消費者との間の保護層として役立ち、データベースに過負荷を与えることや、データベースを損傷する可能性のあるインストラクションを防止することができる。また、ノウボットプログラムは、ネットワークの診断問題の手伝いをすることができる。ノウボットプログラムは、トラヒック、使用、および、システムのステータス情報を集めることができ、この情報に関するレポートを作成し、かつ、当該情報に基づき、ネットワークを修理することができる。
【０１２１】
ノウボットプログラムの問い合わせに対するデータベースゲートキーパー(gatekeeper)は、バッファ記憶にてノウボットの問い合わせを受理し、次いで、規則的な間隔で、当該問い合わせをデータベースに与え、当該データベースを含むシステムの過負荷を防止する。さらに、ゲートキーパーは、問い合わせを取り扱っている間にデータベースを損傷するおそれのあるインストラクションに対する、データベースのための保護層を提供するように設計されている。
【０１２２】
存在するデータベース装置および記憶装置は、新たなサービスステーションのソフトウェアおよびおそらくはハードウェアにしたがって更新され、存在する装置やデータの価値を損なうことなく、記憶装置との標準的なノウボットプログラムのインタフェースを提供する。
【０１２３】
サービスステーションから送信されたノウボットプログラムは、ルール、フレームおよびスクリプト、並びに、おそらく自然言語を用いて入力された知識を持つ知識ベースのシステムまたはエキスパートシステムを含み、或いは、これらに間接的にアクセスすることができる。
【０１２４】
ノウボットプログラムを、図書館資源の管理、資源の組織化、データストリームの特徴化、ディジタルオブジェクトの間の同調、ノウボットプログラム、ディジタルオブジェクトおよび他のデータの構造の決定、並びに、ディジタルオブジェクトの間のリンクの形成など、管理的なタスクのために使用しても良い。ノウボットプログラムが、入札の請求および管理の補助を含む、分散資源との相互作用の管理に巻き込まれる場合もある。たとえば、ノウボットプログラムは、多数の入札者に同じ質問を与え、ユーザのための回答を作り出すことができる。他の例では、ユーザは、ノウボットプログラムを認証して、コスト対品質の比率或いは同様な公式を用いて入札者を自動的に決定することができる。ユーザが、実質上、品質を気にしない場合には、ノウボットプログラムは、最も低い入札をユーザのために、自動的に選択する。或いは、ノウボットプログラムに、引き渡し時を考慮するように権能を与えても良い。
【０１２５】
ノウボットプログラムを、機密的な或いは秘密の情報を保護するために使用することができる。この場合に、期間および状況は、ユーザの特定および当該ユーザの知る必要性に基づくものとなる。
【０１２６】
ノウボットプログラムが、きちんとしたディレクトリサービスに巻き込まれる場合がある。ノウボットプログラムは、ユーザのプロファイルを取り出し、ユーザのためのディレクトリ情報を探し出し、ユーザのプロファイルが変化するのにしたがって情報を更新する。たとえば、ユーザのプロファイルが、ユーザの現在位置から車で５分の範囲にあるイタリア料理店へのユーザの興味を反映している場合には、ノウボットプログラムは、ユーザの位置が変化するのにしたがって、イタリア料理店に対するユーザディレクトリのエントリーを更新する。
【０１２７】
ノウボットサービスステーションは、情報提供者から情報消費者への譲歩の転送を促す第三者の付加価値サービスプロバイダを含むことができる。これら第三者のプロバイダは、情報交換所、カタログ配送者、ルータ(router)などがなり得る。また、ネットワーク上で利用可能な新たなサービスや資源に関する情報である「新しいこと(what's new)」のプロバイダ、ディジタルオブジェクトに関する同一性確認(identification)情報およびネットワーク中の他の情報を提供する参照情報サーバ、所望の情報に関する広汎な基準のみに基づき情報を見出すためにユーザやノウボットプログラムを助けるブラウジングサーバ(browsing server)、ユーザの元々の検索の質問を表現するために、適切なクエリーを作成する際に、ノウボットプログラムを助けるクエリーアドバイザ、或いは、データベース格付けサービスなどが、第三者のプロバイダであり得る。
【０１２８】
サービスプロバイダは、洗練されたコンピュータプログラム、たとえば、記載品質アナライザ、オイル探査アナライザ、特許出願アナライザなどを保持し、ネットワーク上で付加価値のあるサービスを提供するためにこれらを使用することができる。
【０１２９】
情報プロバイダにより作り出されたノウボットプログラムは、収納庫に情報を運び、かつ、配達の確認を情報プロバイダに戻す。
【０１３０】
第１０図を参照すると、ノウボットプログラムは入れ子状態となっており、第１のノウボットプログラム１６０が第２のノウボットプログラム１６２を収容し、これが、検索された情報１６４を保持している。第２のノウボットプログラムが検索された情報の制御アクセス（たとえば、認証された実行、保護の模写）の軌跡を保持することができるため、第２のノウボットプログラムは、制御アクセス（たとえば、実行、模写）に関して情報プロバイダの助けをする。また、第２のノウボットプログラムは、団体の検索アクセスの認証にしたがって検索された情報の軌跡を保持し、かつ、当該情報のアクセスを制限することができるため、第２のノウボットプログラムは、知的所有権の保護に役立つことができる。
【０１３１】
ノウボットプログラムは、システム或いはネットワークからの不正或いはごみになったデータや情報を排除する使命を有していても良い。ノウボットプログラムは、プログラムが不正のフォーマットを有していたり、或いは、その期限が切れていることを調べることができるサービスステーションの各々にて、サービスステーションからサービスステーションへと移動することにより、これを実現している。
【０１３２】
ノウボットプログラムは、異種のシステムやアプリケーションの間のプロトコル変換或いは他の解釈を提供することができる。変換処理において、介在するネットワークが役割を果たす必要がない。
【０１３３】
ネットワーク上でアクセス可能な刊行物を作ることを希望する大学のような情報プロバイダは、サービスステーションの一部として、ノウボットの付加価値を持つサービスモジュールをセットアップすることができる。モジュールは、ネットワークを経て（自然言語や構造化された分類法にて）アクセスされ、受理された入力は、記事のディジタル表示のための収納庫の検索をガイドし、潜在的消費者のノウボットプログラムに関連するデータを特定し、かつ、販売の交渉をするために使用される。消費者のノウボットプレーヤは、期間および状況に合意するか、或いは、購入の是非に関する決定をなすデータをユーザに送信することの要求のいずれかの能力を備えている。
【０１３４】
他の応用例において、ノウボットプレーヤは、プログラムを生成するストーリーボードを訪れ、次いで、要求されたストーリーボードを記憶する。次いで、ノウボットプログラムは、楽音生成プログラム、画像生成プログラム、テキスト生成プログラムおよびビデオ生成プログラムを訪れる。ユーザに戻されたノウボットプログラムには、（ときどきマルチメディア作品と称される）コンピュータプログラム、或いは、自動的に生成された成分のディジタル表示を組み込んだ作品の部分のディジタル表示が含まれる。他のディジタルオブジェクトを作り出すために、同様な手順を用いることができる。
【０１３５】
他の例では、ノウボットプログラムは、寝室用のベッドおよび居間用のテーブルを購入したいユーザのために機能する。ユーザの局地的サービスステーションは、ユーザの要求への質問の種別に関する知識、および、全般的にどこで情報を見出せるかに関する知識にアクセスする。サービスステーションは、ユーザからの寸法情報を得る相互作用プログラムを駆動して、誰がベッドおよびテーブルを製作したかを見出す必要を知る。サービスステーションは、ノウボットプログラムを送信して製作者を知り、多数の回答を受理する。
【０１３６】
他の例では、多数のノウボットプログラムが、他のプログラムの行為に対してどのように反応するかに関するインストラクションを含んでいる。これは、戦争ゲームのシミュレーションにて使用することができる。ノウボットプログラムは、別個の特性および能力を有するタンクに類似している。ここに、ノウボットプログラムは、シミュレーションの間ずっと存在する活性化された存在となる。
【０１３７】
このような手法は、新しい航空機など複雑なシステムのモデリングを手伝う際に利用することができる。航空機の各部、たとえば翼をモデリングするための計算は、独立してなされ、各部の相互作用は、ノウボットプログラムを介して管理される。
【０１３８】
データベースのクエリーの場合に、ノウボットプログラムは、ユーザにより記入されたフォームからの情報に対する要求をなし、次いで、検索すべき各データベースに関して、サービスステーション内の特定のシソーラスの助けをかりて、当該要求を、当該データベース用の適切なクエリーのフォーマットに変換するように作動する。
【０１３９】
或いは、各データベースが、情報に対する標準的なノウボットプログラムの要求を受理しかつこれを理解することができる標準的なノウボットインタフェースを有するサービスステーションと協働してもよい。ノウボットプログラムは、データベースのクエリーを作成する前に、ユーザの要求を標準的なフォーマットに変換するだけで良い。標準的なフォーマットを使用することは、情報検索能力の品質および完全性を維持するのに役立つ。また、これにより、データキャリアの存在が、情報の検索者と情報源とを接続するような、情報転送の際に、フォーマット変換動作に巻き込まれることなく、その仕事をなすことができる。したがって、キャリアの存在は、データサービスの消費者を最もコスト効果の高いサービスのプロバイダに自動的に接続することのように、単なるデータの配布に価値を付加することができる。
【図面の簡単な説明】
【０１４０】
【図１】インターネットフレームワークのブロックダイヤグラムである。
【図２】ノウボットフレームワークのブロックダイヤグラムである。
【図３】ノウボットサービス環境のブロックダイヤグラムである。
【図４Ａ】ノウボットサービスステーションのブロックダイヤグラムである。
【図４Ｂ】ノウボットサービスステーションのブロックダイヤグラムである。
【図５】トランザクションマネージャのブロックダイヤグラムである。
【図６】ゲートウェイのブロックダイヤグラムである。
【図７】ノウボットプログラムの内容のダイヤグラムである。
【図８】シリアルサーチおよびパラレルサーチの手法のブロックダイヤグラムである。
【図９】シリアルサーチおよびパラレルサーチの手法のブロックダイヤグラムである。
【図１０】ノウボットプログラムのダイヤグラムである。
【図１１】ノウボットサービス環境のブロックダイヤグラムである。
【図１】
2005141762.tif 000003
【図２】
2005141762.tif 000004
【図３】
2005141762.tif 000005
【図４Ａ】
2005141762.tif 000006
【図４Ｂ】
2005141762.tif 000007
【図５】
2005141762.tif 000008
【図６】
2005141762.tif 000009
【図７】
2005141762.tif 000010
【図８】
2005141762.tif 000011
【図９】
2005141762.tif 000012
【図１０】
2005141762.tif 000013
【図１１】
2005141762.tif 000014
【手続補正書】
【提出日】平成16年12月24日(2004.12.24)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
通信リンクにより相互接続された複数のコンピュータからなるネットワーク上でタスクを実行可能にする方法であって、各コンピュータにて、
通信リンク上のノウボットプログラムであって、各々が全体において一意的な識別子、ネットワークを介した経路を定義するナビゲーション情報および実行すべきタスクに関する情報を含むノウボットプログラムを受理し、
当該ノウボットプログラムに関連するタスクの実行を進め、
ノウボットプログラムを記憶し、
ノウボットプログラムを作り出し、かつ、
通信リンク上にノウボットプログラムを送信することを特徴とする方法。
【請求項２】
通信リンクにより相互接続された複数のコンピュータからなるネットワーク上のコンピュータが分散ノウボットサービス環境に関与できるようにするための方法であって、各コンピュータにて、
通信リンク上のノウボットプログラムであって、各々が全体において一意的な識別子、ネットワークを介した経路を定義するナビゲーション情報および実行すべきタスクに関する情報を含むノウボットプログラムを受理し、
当該ノウボットプログラムに関連するタスクの実行を進め、
ノウボットプログラムを記憶し、
ノウボットプログラムを作り出し、かつ、
通信リンク上にノウボットプログラムを送信することを特徴とする方法。
【請求項３】
タスクを実行するためのコンピュータベースの方法であって、
共同的な複数のタスクを実行するために独立かつ異質のシステムを相互接続することを特徴とする方法。
【請求項４】
ネットワークの通信チャンネルを介して遠隔データベースの局地的なクエリーを実行するための方法であって、当該局地的なクエリーが、クエリープロトコルに従っており、かつ、遠隔データベースが、データベースプロトコルに従ったクエリーに応答し、前記方法が、
局地的なクエリーに基づき、かつ、ノウボットプログラムのプロトコルに従ったノウボットプログラムを局地的に生成し、
ネットワークの通信チャンネルを介して遠隔データベースにノウボットプログラムを送信し、
遠隔データベースにて、データベースプロトコルにしたがってデータベースに質問をすることにより、ノウボットプログラムに応答し、
ノウボットプログラムのプロトコルにしたがった戻りのノウボットプログラム中で、遠隔データベースからのクエリーの結果を戻すことを特徴とする方法。
【請求項５】
通信リンクにより相互接続された複数のコンピュータからなるネットワーク上でタスクを実行可能にする装置であって、
ネットワーク上のコンピュータの各々にて、コンピュータ上で稼動するソフトウェアの形態のノウボットサービスステーションを含むノウボットサービス環境を備え、当該サービスステーションが、
通信リンク上のノウボットプログラムであって、各々が全体において一意的な識別子、ネットワークを介した経路を定義するナビゲーション情報および実行すべきタスクに関する情報を含むノウボットプログラムを受理し、
当該ノウボットプログラムに関連するタスクの実行を進行させ、
ノウボットプログラムを記憶し、
ノウボットプログラムを作り出し、かつ、
通信リンク上にノウボットプログラムを送信するサービスを提供するように構成されたことを特徴とする装置。
【請求項６】
通信リンクにより相互接続された複数のコンピュータからなるネットワーク上のコンピュータが分散ノウボットサービス環境に関与できるようにするための装置であって、
コンピュータ上で稼動するソフトウェアの形態のノウボットサービスステーションを備え、当該サービスステーションが、
自己を認証し、
他のノウボットサービスステーションから受理したノウボットクーリエを認証し、
通信リンク上のノウボットプログラムであって、各々が全体において一意的な識別子、ネットワークを介した経路を定義するナビゲーション情報および実行すべきタスクに関する情報を含むノウボットプログラムを受理するとともに、実行すべきタスクに関する情報を受理し、
当該ノウボットプログラムに関連するタスクの実行を進め、
ノウボットプログラムを記憶し、
ノウボットプログラムを作り出し、かつ、
通信リンク上にノウボットプログラムを送信するサービスを提供するように構成されたことを特徴とする装置。
【請求項７】
ネットワークの通信チャンネルを介して遠隔の知識ベースのシステムの局地的なクエリーを実行するための方法であって、当該局地的なクエリーが、クエリープロトコルに従っており、かつ、遠隔の知識ベースのシステムが、知識ベースのシステムプロトコルに従ったクエリーに応答し、前記方法が、
局地的なクエリーに基づき、かつ、ノウボットプログラムのプロトコルに従ったノウボットプログラムを局地的に生成し、
ネットワークの通信チャンネルを介して遠隔の知識ベースのシステムにノウボットプログラムを送信し、
遠隔の知識ベースのシステムにて、知識ベースのシステムプロトコルにしたがって当該知識ベースのシステムに質問をすることにより、ノウボットプログラムに応答し、
ノウボットプログラムのプロトコルにしたがった戻りのノウボットプログラム中で、遠隔の知識ベースからのクエリーの結果を戻すことを特徴とする方法。
【請求項８】
遠隔システムからディジタルオブジェクトを検索する方法であって、
遠隔システムが、ノウボットプログラムにオブジェクトを組み込み、
ノウボットプログラムが、局地システムに送信されて、そこに記憶され、
局地的な関係者が、ノウボットプログラムを介して、当該ディジタルオブジェクトにアクセスし、
ノウボットプログラムが、当該オブジェクトへのアクセスに対する付加的な認証および／または支払を求めて、ディジタルオブジェクトの一部へのアクセスを制限し、当該オブジェクトの所有者に、当該オブジェクトへの行為が実行されるのにしたがって通知がなされることを特徴とする方法。