電子コンテンツを保護しかつ配信する方法
【課題】追跡能力を持つ、信頼性の高いコンテンツ・ダウンロード、および、安全なコンテンツ分散を確実にする電子コンテンツの分散および交換システムを提供する。
【解決手段】コンテンツはユーザに分散される。ユーザのコンテンツの購入は、コンテンツへのライセンスに対するものである。利用可能なコンテンツのリストが、ユーザに表示される。中央サーバが、コンテンツの購入を、ライセンス・データベースにログする。ユーザは、コンテンツをプレーし、再生を制御するクライアント・システムのユーザ・インターフェイスを介して、コンテンツにアクセスする。売り手は、特定のコンテンツに対する自分のライセンスを、買い手が入札する中央サーバに売りに出す。価格が合意されたとき、中央サーバは、ライセンス・データベース中のライセンス所有権を、新しい所有者に移し換える。
【解決手段】コンテンツはユーザに分散される。ユーザのコンテンツの購入は、コンテンツへのライセンスに対するものである。利用可能なコンテンツのリストが、ユーザに表示される。中央サーバが、コンテンツの購入を、ライセンス・データベースにログする。ユーザは、コンテンツをプレーし、再生を制御するクライアント・システムのユーザ・インターフェイスを介して、コンテンツにアクセスする。売り手は、特定のコンテンツに対する自分のライセンスを、買い手が入札する中央サーバに売りに出す。価格が合意されたとき、中央サーバは、ライセンス・データベース中のライセンス所有権を、新しい所有者に移し換える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータ環境における電子データパッケージの分散および交換に関する。より特定的には、本発明は、コンピュータ環境における、電子コンテンツの所有権並びに当該電子コンテンツの分散および交換の確立に関する。
【背景技術】
【0002】
コンピュータ・メインフレーム・システムまたはワールド・ワイド・ウェブのような、純粋にクライアント−サーバに基づいたシステムと、原子爆弾の爆発をモデル化する、または、暗号キーを解読するというような、複雑なコンピュータ問題を解決するために用いられるNetworks of Workstations (NOWS)のような、分散された純粋なシステムとの間には、自動化されたデータ処理システムの設計に関して、緊張状態が、存在する。
【0003】
クライアント−サーバ・システムは、サーバとクライアントとの間で、これらの責務が明確に分離されているので、広く使用されている。サーバは、それが、多数のクライアントのために、データの計算および記憶を行うので、しばしば、コスト高となり、また、特別に管理される。各クライアントは、そのシステムのユーザと対話するために必要とされるローカル・リソースしか持たないので、安価である。妥当な性能のネットワークが、サーバとクライアントとを接続するために想定される。これらのシステムの経済的なモデルは、クライアント・システムを展開する上での原価の増大を低くする集中化された管理・制御モデルである。
【0004】
しかしながら、このモデルは、考慮しなければならない相当の費用を必要とする。例えば、新しいクライアント・システムを加える場合の原価の増大が、極めて高いかもしれない。ネットワーク容量を追加することが、可能でなければならず、記憶装置、メモリ、および、コンピューティング・サイクルを含めて、そのクライアントをサポートするために、十分なコンピューティング・リソースが、利用可能でなければならず、そして、追加の操作に関わるオーバヘッドが、これらのリソースが追加されるために、各クライアントに対して必要になる。中央サーバが、より大きく、より複雑になるに連れて、これらの信頼性は、ずっと低くなる。最後に、サーバがシステム障害を起こすと、全てのクライアントが、サービスを受けられなくなる。
【0005】
分散されたシステムは、そのシステムのリソースが、各クライアントに分散され、これにより、クライアントの内部に、より複雑な機能を可能にすることができるので、広く使用されている。プログラムやデータへのアクセスは、これらが、クライアントにより所有されているので、ネットワーク自体にかかる負荷が軽減されるため、より高速である。ノードの障害は、そのノードにしか影響を与えないので、システムの信頼性は、より高い。多くの計算タスクが、独立して計算することができる部分に、容易に分割され、そして、これらの部分は、関与するシステム間に、安価に分散される。このことは、ネットワークの帯域幅要件も軽減させ、また、障害を持ったノードによる影響も限定される。
【0006】
他方、分散されたシステムは、管理するのが、より複雑であり、また、ハードウェアまたはソフトウェアの障害の原因を突き止めてそれを解決するのが、より困難であろう。
【0007】
テレビジョンの視聴は、クライアント−サーバ・システムとしてモデル化することができるが、これは、サーバからクライアントへのネットワークパスが、無限速度の意図・目的に対するものであり、また、クライアントからサーバへのパスが、ばらばらで、かつ、管理されないものである。これは、テレビジョン放送特性の当然の直接的な結果である。視聴者を新たに加える費用は、0であり、また、分散されたサービスは、他の全ての視聴者に分散されたサービスと同じである。
【0008】
テレビジョン番組を、インターネットのようなコンピュータ・ネットワークにより、または、ネットワークとして動作するローカル・ケーブル・テレビジョン設備により、配信させるため、多くの努力が、なされて来たし、また引き続きなされている。コンピュータ・ネットワークのポイント・トゥ・ポイント特性は、リソースを追加するための負担は、追加しようとする各視聴者に課せられるので、これらの努力は、扱いにくく、コスト高となる。クライアントのセットトップ・デバイスを通るビデオストリーミングの帯域幅を、視聴者が全て制御する、完全対話型のテレビジョンシステムは、さらにますます非経済的であることがわかっている。何故ならば、各クライアントに対するサーバリソースの専用化は、利益を発生させかつ管理することができるシステムのサイズを、直接、制限してしまうからである。
【0009】
しかしながら、テレビジョンの視聴者は、テレビジョンの視聴を選択および制御することに強い関心を示す。適切に分散されたデータベース管理システムが、本出願人が所有権を有する特許文献1に記述されている。以下に記述するように、それは、上述のアプローチを用いて多くの問題に取り組んでいる。分散されたデータベース管理システムは、クライアントが、そのローカル・データベースにデータを維持することを容易にし、かつ、そのローカル・データベースを、メインサーバ・データベースに同期させることを可能にする。これは、サーバと、そのクライアントとの間の安全なデータ伝送リンクも備えている。
【0010】
今日、多くの種類のコンテンツの電子分散への関心が、増大している。電子分散は、転送媒体としてインターネットのようなネットワークを用いて、1つのデジタル記憶収納庫から他の収納庫へコンテンツをコピーすることも含む。
【先行技術文献】
【特許文献】
【0011】
【特許文献1】米国特許第6,728,713号明細書
【特許文献2】米国特許第6,233,389号明細書
【特許文献3】米国特許第6,327,418号明細書
【特許文献4】米国特許第6,385,739号明細書
【特許文献5】米国特許第5,758,257号明細書
【非特許文献】
【0012】
【非特許文献1】「Cにおけるプロトコル、アルゴリズム、および、ソースコード(Protocols Algorithms, and Source Code in C)」、応用暗号技術(Applied Cryptography)、Bruce Schneier, John Wiley and Sons, 1995
【発明の概要】
【発明が解決しようとする課題】
【0013】
California州、Redwood CityのNapster社のファイル共有システム、および、(最初は、California州、San FranciscoのNullsoft社によって開発された)Gnutellaピア・トゥ・ピア・ファイル共有システムは、電子分散システムの原形的な例である。Napster社のクライアント・システムは、他のクライアント・システムと接触を持つためには、サーバに接続されていなければならない。他方、Gnutella社のものは、非中央集中化ピア・トゥ・ピア・ネットワーク・アプローチで、ここでは、各クライアントが、他のクライアントに直接接続され、それによって、全てのクライアントが互いにつなぎ合って、ネットワークを形成している。これらのタイプの分散システムは、以下のいくつかの問題点を有している。
・ これらは、自動化されていないので、このシステムにコンテンツを導入するためには、または、このシステムからコンテンツを抜き出すためには、直接対話する必要がある。
・ これらは信頼性に乏しい、即ち、長時間のダウンロードは、失敗するかもしれないし、データの完全性は、確立されていない、等 。
・ これらは、安全でない。認証(認証:情報にアクセスする資格の有無を認証する作業)方法も、データの安全方法も、典型的には、考慮されていない。
・ システム内の保護されたコンテンツに対して、著作権による制限を実施することが、難しい。
・ 保護されているコンテンツの販売および交換をサポートするための支払いシステムまたは商取引システムがない。
【0014】
追跡能力を持つ、信頼性の高いコンテンツ・ダウンロードを備えた電子コンテンツの分散および交換システムを提供することは、有益である。さらに、認証された、安全なコンテンツ分散管理システムを備えた電子コンテンツの分散および交換システムを提供することは、有益である。
【課題を解決するための手段】
【0015】
本発明は、電子コンテンツの分散および交換システムを提供する。このシステムは、クライアント・システムに、追跡能力を持つ、信頼性の高い電子コンテンツ・ダウンロードを提供する。さらに、本発明は、サーバとクライアントとの間の、認証された、安全なコンテンツ分散を確実にするシステムを提供する。
【0016】
本出願人が所有権を持つ米国特許第6,233,389号明細書に代表されるクライアント・デバイスは、本出願人が所有権を持つ米国特許第6,327,418号明細書に代表されるように、大量のビデオコンテンツを記憶するような、典型的には、中央ビデオ・サーバと関連した機能と、このコンテンツを要求に応じて選んで、再生する能力と、コンテンツの配送を完全に「VCR的に」制御することとを、提供する。
【0017】
本発明は、認証された、信頼性の高いコンテンツのダウンロード能力およびコンテンツの追跡能力を備えている。コンテンツは、本発明のアーキテクチャを介してユーザに分散される。ユーザは、クライアント・システム上のインターフェイスを介して、または、ウェブ・サイトを介して、コンテンツの購入を登録する。この商取引された購入は、コンテンツのライセンスに対するものであって、コンテンツ自体に対するものではない。利用可能なコンテンツのリストが、クライアント・システムまたはウェブ・サイトにより、ユーザに表示される。
【0018】
本発明の中央サーバが、コンテンツの購入を、ライセンス・データベースにログする。この購入は、電話通信サーバへのインターネット接続を介して直接に、または、クライアント・システムが、電話通信サーバを介して、本サービスとコンタクトするときに、バックホールされる(即ち、視聴オブジェクトが、クライアント・システムから収集されるときの)ログを介して、発生する。この購入の商取引は、本発明の中央サーバから、クリアリング・ハウス(取引所)の能力を備えた終端商取引サービスに伝送される。
【0019】
このコンテンツの電子コピーは、既に、クライアント・システムの隠されたエリアに、存在している場合もあるし、保護された放送チャンネルで反復されている(carousel)場合もあるし、中央データベースにおいてスライスで送出可能の状態に有る場合もあるし、または、インターネット上の安全なサーバ上に存在している場合がある。
【0020】
本発明は、データベース・オブジェクトを含むサーバ上に存在する中央データベースを提供する。複製されるオブジェクトは、スライスと呼ばれる分散パッケージに、集合される。スライスは、地理的な領域のような特定のドメイン内のクライアント、または、衛星トランスミッタの電波受信可能域下のクライアントに関係する、中央データベースの下位集合である。オブジェクトには、他のタイプのデータ内に、デジタル・コンテンツのアイテム、および/または、デジタル・コンテンツのアイテムをダウンロードすることができるネットワーク位置が、含まれる。
【0021】
デジタル・テレビジョン信号の非公開データ・チャンネルから、アナログ・テレビジョン信号の垂直帰線消去期間(VBI)上へのデータの変調により、モデムを用いたサーバとの直接接続を介した、サーバとのインターネット接続までの、標準的な現存する技術を用いて、スライスは、クライアント・デバイスに伝送され、クライアント・デバイスはその情報の一部を選んで、ローカルに保存する。
【0022】
放送チャンネルが保護されている場合には、コンテンツのスライス(単数または複数)は、スライスが放送信号上に変調される、局テレビジョン・トランスミッタと共存する機器上にコピーされる。これらのおよび同様の放送に基づく場合には、スライスは、「反復」される、即ち、スライスを記述するデータが、新しいスライスが伝送のために供給されてくるまで、絶えず反復される。
【0023】
ユーザは、クライアント・システムのユーザ・インターフェイスを介して、デジタル・コンテンツのアイテムにアクセスする。ユーザは、望むように、自分のクライアント・システムからライセンスされたコンテンツを、自由に再生することができ、また、それをどのように再生するか(例えば、休止、高速順送り、逆送りなど)については、自由に制御することができる。
【0024】
全てのライセンスが追跡されているので、万一、クライアント・システムが、故障しても、本発明のサービスは、どのコンテンツが、ライセンスされているかをライセンス・データベースから検証することができる。この結果、ユーザは、自分の新たなクライアント・システム上に、自分にライセンスされているコンテンツの新しいコピーを回復させることができる。このプロセスは、マニュアルで行うことも、本発明の自動サービスで行わせることもできる。クライアント・システムは、また、適切なコンテンツが、クライアント・システムに存在しているかを検証し、必要に応じて、コンテンツを削除したり、加えたりすることもできる。
【0025】
本発明のサービスは、権利所有者が、デジタル・コンテンツの種々のアイテムに対するライセンスを提供する株式取引に似た交換能力を提供する。
【0026】
売り手は、デジタル・コンテンツの特定のアイテムに対する自分のライセンス(単数または複数の)を、販売のために中央サーバに置くことができる。ユーザは、自分のクライアント・システムまたはウェブ・サイトを介して、売り出されているライセンスのリストを見ることができる。特定のコンテンツに対する売り手のライセンスに関心を持った買い手は、そのライセンスに入札する(値をつける)。この入札は、売り手と買い手とのそれぞれのクライアント・システムを介して、または、ウェブ・サイトを介して行うことができる。価格について合意がなされると、本発明の中央サーバは、ライセンス・データベース中にあるライセンス所有権を、新しい所有者に移換する。中央サーバは、売り手のクライアント・システムにそのコンテンツを削除するよう命令する。買い手のクライアント・システムは、そのコンテンツのコピーを受信する。
【0027】
本発明は、公の株式提供とほとんど同じように、コンテンツ・オリジネータが、クライアント・システムへの市場に、新マテリアルを売り出すことを可能にする。ユーザは、自分のクライアント・システムを介して、または、ウェブ・サイトを介して、その新マテリアルを購入する。
【0028】
本発明のクライアント・システムは、所有者のコンテンツ資産に対する本拠地として機能する。所有者が、自分の携帯デバイスに、特定のコンテンツのコピーを得たい場合、彼は、本発明のサービスに、その携帯デバイスの所有権を登録する必要がある。所有者は、携帯デバイスへのデジタル・コンテンツの特定のアイテムのコピーを要求し、本発明のサービスは、そのデバイスが、その所有者に登録されていること、および、その所有者が、そのコンテンツに対するライセンスを持っていることをチェックする。ひとたび、その情報が実証されれば、本発明のサービスは、(オプションとして、その所有者のクライアント・システムからのダウンロードにより)、そのコンテンツをその携帯デバイスで利用可能にする。
【0029】
所有者は、2つ以上のクライアント・システムを所有していてもよい。所有者は、その所有者が所有する他のクライアント・システムに対する認証情報を、各クライアント・システムに供給する本発明のサービスに、自分のクライアント・システムを登録する。これは、このサービスの必要なしに、クライアント・システムが、互いに認証することを可能にする。
【0030】
所有者が、1つのクライアント・システムから、他のクライアント・システムにコンテンツを転送したいとき、彼は、クライアント・システムの1つで、その転送を始めるだけでよい。クライアント・システムは、本サービスから与えられた認証情報を用いて、互いを認証し、次に、これら自身の間で、コンテンツのコピーを始める。
【0031】
本発明の他の態様および利点が、一例として、本発明の原理を例示する、添付の図面と組み合わせた以下の詳細な記述から明らかになる。
【図面の簡単な説明】
【0032】
【図1】本発明による分散されたテレビジョンの視聴管理システムの好適な一実施例の線図的なブロック図である。
【図2】プログラムに基づいたアクセスのためのコンピュータ記憶装置内の視聴オブジェクト構造の線図的なブロック図である。
【図3】視聴オブジェクトのスキーマが、プログラムに基づいたアクセスのために、どのように、コンピュータ記憶装置内に組み立てられるかを示す線図的なブロック図である。
【図4】番組に関する情報を記述する視聴オブジェクト間の関係のグラフの一例を示す線図的なブロック図である。
【図5】関心のある番組を決定するために視聴者の嗜好を処理するときに作成される関係のグラフの一例を示す線図的なブロック図である。
【図6】記録するための入力および記憶空間の番組予約を示す線図的なブロック図である。
【図7】図6に描かれたメカニズムを用いて記録を番組予約するステップを示すフローチャートである。
【図8】ブートストラップシステム構成を示す、本発明の好適な一実施例の線図的なブロック図である。
【図9A】ブートストラップ・コンポーネントの決定フローチャートである。
【図9B】ブートストラップ・コンポーネントの決定フローチャートである。
【図10】ソフトウェアインストール手続きの決定フローチャートである。
【図11】コンテンツ・ライセンスの商取引を管理して、コンテンツを分散させる本発明の好適な一実施例の線図的なブロック図である。
【図12】クライアント・システム上の歌プレーリスト・ユーザ・インターフェイスのスクリーンショットのダイアグラムである。
【図13】売り手と買い手との間のライセンスの移し換えを行なう本発明の好適な一実施例の線図的なブロック図である。
【図14】パブリッシャが、ユーザが購入する市場にライセンスを売りに出すことを可能にする本発明の好適な一実施例の線図的なブロック図である。
【図15】ユーザ・デバイスが、ライセンス・コンテンツのコピーを受信するために登録される本発明の好適な一実施例の線図的なブロック図である。
【発明を実施するための形態】
【0033】
本発明は、具体的には、電子コンテンツの分散および交換システムにおいて実施される。本発明による一システムは、クライアント・システムに、追跡能力を備えた信頼性の高い電子コンテンツ・ダウンロードを提供する。さらに、本発明は、サーバとクライアントとの間の、認証された、安全なコンテンツ分散を確実にするシステムを提供する。
【0034】
本発明は、テレビジョンの視聴情報の伝送および収集システムにおいて具体化される。このシステムは、テレビジョン番組を選択しかつそれを自動的にタイムシフトさせることができる個々の視聴者の能力を改善する一方、サービス・プロバイダには、視聴体験を向上させかつそれを方向付ける機会を提供する。本発明は、完全に分散されたシステムを記載している。このシステムにおいては、個々の視聴者に属する計算は、ローカル・クライアント・デバイスの内部で、その視聴者に対して個人的に行われる一方、視聴習慣、嗜好、または、購入に関する情報の信頼性の高い収集および伝達が提供される。
【0035】
テレビジョンの視聴情報のデータベース
図1は、本発明の線図的な大要を示す。本発明の中核は、中央サイト100におけるコンピュータ・システムと、極めて多数のクライアント・コンピューティング・システム101との間に、テレビジョンの視聴情報の分散データベースを維持するための方法および装置である。データベースの中央コピーの適切な下位集合を抽出するプロセスは、「スライシング」102と呼ばれ、結果として生じる「スライス」をクライアントに配送するプロセスは、「伝送」103と呼ばれ、視聴者に関する、または、視聴者のために収集された情報を中央サイトに配送するプロセスは、「収集」104と呼ばれ、収集された情報を処理して、新しいテレビジョン視聴オブジェクトまたはレポートを作成するプロセスは、「分析」107と呼ばれる。全ての場合において、1つのデータベースからのオブジェクトを、他のデータベースで再成する行為は、「複製」105と呼ばれる。配送される、または、収集されるデータ・アイテムは、「オブジェクト」106と称され、また、中央データベース、および、クライアント・デバイス内に含まれている、中央データベースの各複製された下位集合は、「オブジェクトベース」のデータベースである。このデータベース内のオブジェクトは、これらの意図されている用途を強調するために、「テレビジョン視聴オブジェクト」、「視聴オブジェクト」、または、単純に「オブジェクト」と、しばしば、称される。しかしながら、当業者であれば、オブジェクトが、如何なるタイプのデータであってもよいことは、容易に認識するであろう。
【0036】
視聴オブジェクトのデータベースは、本明細書に記述される複製活動とは、独立にまたは並行して、それが含んでいるオブジェクトに対する、一貫性を持つ要約ソフトウェア・アクセス・モデル(abstract software access model)を備えている。このインターフェイスを用いることによって、その下にある活動を気にすることなく、また、データベース中のオブジェクトおよびこれらの間の関係の一貫性を持ちかつ信頼性の高いビューが、常に維持されることを保証しながら、アプリケーションは、データベースにオブジェクトを、生成し、破壊し、読み出し、書き込み、そうでなければ、マニピュレートすることができる。
【0037】
基本的テレビジョン視聴オブジェクトの原理
図2を参照すると、テレビジョン視聴オブジェクトは、「属性」200の収合として組み立てられている。各属性は、タイプ201(例えば、整数、記号列、または、ブーリアン)、および、値202を持っている。属性タイプは、全て、データベースによりサポートされている基本タイプの固定されたプールから引き出される。
【0038】
オブジェクトの属性は、2つのグループ:その視聴オブジェクトの生成者または維持者によって供給される「基本」属性と、データベース内のメカニズムによって自動的に生成されかつ維持される「派生」属性とに区分される。基本属性は、オブジェクト自体の特性を記述する。派生属性は、オブジェクト間の関係を記述する。基本属性は、データベース間で複製されるが、派生属性は、複製されない。
【0039】
図3を参照すると、本発明によって定義される基本となるオブジェクト・タイプの小さな組み合わせがある。各オブジェクト・タイプは、「スキーマ」と呼ばれる、関連する属性300の特定の組み合わせとして表わされる。スキーマは、属性タイプ302、および、属性名303を含む、各属性タイプに対するテンプレート301を定める。実際のテレビジョン視聴オブジェクトは、そのオブジェクトに対してリソースを割り付け、そして、スキーマによって定められる、その属性に対して値を割り当てることによって生成される。例えば、「番組」スキーマは、その番組の製作者、監督、または、俳優、オンスクリーン・アイコン、番組コンテンツの複数行記述、その番組の編集者格付け等のような属性を含むことができる。物理的な番組オブジェクトは、それに対して記憶領域を割り付けることによって、そして、その属性を、現在問題とされているデータで満たすことによって、生成される。
【0040】
スキーマ・タイプと呼ばれる、全てのデータベースに対して、あらかじめ定められた1つの特別のオブジェクト・タイプがある。データベースによりサポートされている各スキーマは、スキーマ・オブジェクトによって表わされる。これは、アプリケーションが、データベースに「内観」を行なうこと、即ち、どのオブジェクト・タイプがサポートされているかということと、これらのスキーマとを、動的に見出すことを可能にする。これは、アプリケーション・ソフトウェアを非常に単純にし、スキーマが、変えられたか、加えられたか、または、削除されたときに、アプリケーション・ソフトウェアを変えることを不必要とする。スキーマ・オブジェクトは、本発明の方法の下では、他のすべての視聴オブジェクトと同じに扱われる。
【0041】
再度、図2を参照すると、データベース中の各オブジェクトには、そのデータベース内でユニークでなければならない「オブジェクトID」 203が割り当てられる。このオブジェクトIDは、各オブジェクトIDがユニークである限り、多くの形をとることができる。好適な一実施例の場合、処理速度と、許されるユニーク・オブジェクトの数との間の有用なトレードオフを与えるので、32ビット整数が、オブジェクトIDに用いられる。各オブジェクトには、また、現在のオブジェクトを参照している、そのデータベース中の他のオブジェクトの数を与える整数である「参照カウント」204が、含まれている。参照カウントが0であるオブジェクトは、データベース内に存続しないであろう(以下を参照のこと)。
【0042】
視聴オブジェクトの1つの特定のタイプは、「ディレクトリ」オブジェクトである。ディレクトリ・オブジェクトは、オブジェクトIDのリスト、および、そのオブジェクトに対して関連する簡単な名前を維持する。ディレクトリ・オブジェクトは、そのリストの一部として、他のディレクトリ・オブジェクトを含むことができ、また、「ルート」ディレクトリと呼ばれる、単一の際立ったオブジェクトがある。ルート・ディレクトリから開始して、関心のあるオブジェクトが見つかるまで継続してトラバースされるディレクトリ・オブジェクトの連続順は、そのオブジェクトに対する「パス」と呼ばれる。したがって、パスは、データベース内に存在する全てのディレクトリ・オブジェクトの間に生成される階層的名前空間内の特定の位置を示す。オブジェクトは、複数のパスによって参照することができる。これは、1つのオブジェクトが、多くの名前を持つことができることを意味する。視聴オブジェクトの参照カウントは、それを参照する各ディレクトリに対して、1だけインクリメントされる。
【0043】
データベースの一貫性および正確性の維持のための方法
本発明の好適な一実施例の特徴の1つは、各データベースの複製が、常に、内部的に一貫していること、および、この一貫性が、他のデータベースへの参照なしに、または、中央サイトへの接続の必要なしに、自動的に維持されることを確実にしていることである。伝送動作または収集動作が、適時に、または、如何なる保証された周期で、起こるという保証はない。例えば、クライアント・システムは、何ヶ月間も停止しているかもしれない。システムへの伝送が、最終的に可能となったときには、中央データベースおよびクライアント・データベースを完全に同期させるために必要なオブジェクトの全てを伝送することが不可能であったとしても、オブジェクトの複製は、常に、サーバデータベースの一貫性を持つ下位集合という結果にならなければならない。
【0044】
さらにより重大ことは、データベースが、使用されているまたは更新されている間に、安定した動作環境が、保証されない場合があることである。例えば、デバイスへの電力が、停止するかもしれない。本発明は、全てのデータベースの更新を、「トランザクション」として扱う。これは、全トランザクションが完了するか、または、そのいずれもが完了しないということを意味する。選ばれた特定の技術は、「2段コミット」と呼ばれる。ここでは、トランザクションの全ての要素が、検査されかつログされ、それに続いて、実際の更新が、行われる。当業者は、トランザクションが、個々のログに対して実施される標準的なジャーナリング技術と、ログを用いて、障害が生じたときに進行中だった部分の更新を繰り返すロール・フォワード技術との組み合わせが、この目的に十分であることを認識するであろう。
【0045】
全てのオブジェクトに必要とされる1つの派生属性は、そのオブジェクトの各変化とともに変化する「バージョン」である。バージョン属性は、単調に増加する整数として表わすこともできるし、または、バージョンの単調な順序付けを生成する他の表現として表わすこともできる。複製することができる各オブジェクトに対するスキーマは、このオブジェクトが複製されたオブジェクトのバージョンを示す「ソース・バージョン」と呼ばれる属性を含む。
【0046】
視聴オブジェクトの伝送は、全てのクライアントが、そのオブジェクトを受信することを保証しない。例えば、オブジェクトが放送されている間に、太陽黒点のような外的要因が、伝送シーケンスの一部を破壊するかもしれない。これらの問題を克服するために、視聴オブジェクトを連続的に再伝送することができる。これは、同じオブジェクトを、複数回、複製のために提示することができるということを意味する。(この場合)何の変化も実際には生じていないのに、バージョン番号がインクリメントされるので、複製されるべきオブジェクトが受信される度に、単純にデータベース・オブジェクトを更新することは不適切である。さらに、不必要の場合には、オブジェクトを更新するトランザクションを開始させないことが望ましい。相当のシステム・リソースが、トランザクションの間に消費される。
【0047】
この問題を解決するためには、2つのアプローチが、組み合わされる。第1に、ほとんどのオブジェクトは、「保存期限」と呼ばれる基本属性を持つ。保存期限とは、そのオブジェクトが、それを過ぎると、もはや有効でなくなり、廃棄されるべき期日および時刻である。新しいオブジェクトが受信されると、保存期限時がチェックされ、そして、そのオブジェクトは、保存期限が過ぎてしまっていれば、廃棄される。保存期限は、その伝送が、何らかの形態で遅延したオブジェクトを扱うが、保存期限が過ぎていない同じオブジェクトの複数の受信は扱わない。
【0048】
ソース・バージョン属性が、この問題を扱う。視聴オブジェクトが伝送されるとき、この属性は、ソース・オブジェクトの現在のバージョン属性からコピーされる。視聴オブジェクトが受信されたとき、受信されたオブジェクトのソース・バージョンが、現在のオブジェクトのソース・バージョンと比較される。新しいオブジェクトが、より高いソース・バージョン属性を持っていれば、それは、現在のオブジェクトにコピーされる。そうでなければ、それは、廃棄される。
【0049】
任意の特定のクライアント・システムに持たれる関心よりも、はるかに多数の視聴オブジェクトが伝送されると、仮定する。例えば、他のケーブル・システムに結ばれているクライアントは、特定のケーブル・システムのチャンネルを記述する「チャンネル」視聴オブジェクトには関心がない。新しいオブジェクトをデータベースに捕獲しかつ加えることは、オーバヘッドを必要とするので、受信したオブジェクトを、上述の属性に加えて、他の属性に関してもフィルタするのが有利であろう。本発明は、これを、オブジェクト・タイプおよび属性値に基づいたフィルタリング・プロセスを用いて遂行する。一実施の場合、このフィルタリング・プロセスは、恐らく、一連のコマンドのような、ある種の実行可能コードの実行に基づく。このコードは、種々のオブジェクト・タイプ、および、これらをどのようにフィルタしなければならないかということについての特定の知識を用いて書かれている。
【0050】
本発明の好適な一実施例の場合、「フィルタ」オブジェクトは、どの属性が必要であるかということ、どの属性が存在すべきでないかということ、または、データベースへの追加のために受け入れ可能にする属性に対する値の範囲を示す各オブジェクト・タイプに対して、定められる。当業者は、このフィルタオブジェクトが、ある形式で、恐らくは一連の実行可能コマンドとして、実行可能コードを含むであろうことを容易に認識するであろう。これらのコマンドは、フィルタされるオブジェクトの属性および属性値を検査しかつ比較する。これは、そのオブジェクトが、さらなる処理の対象であるべきかどうかを示す結果となる。
【0051】
視聴オブジェクトが、他のオブジェクトから独立していることはまれである。例えば、(特定チャンネルの特定時刻を記述する)「放映」オブジェクトは、(特定のテレビ番組を記述する)「番組」オブジェクトに従属する。一貫性を維持する上で重要な1つの観点は、新しい視聴オブジェクトを加えようとする前に、全ての従属オブジェクトが、既にデータベースに存在しているか、または、一回のトランザクションの一部として加えられることになるかのいずれかを確実にすることである。これは、「従属」属性と呼ばれる、新しい視聴オブジェクトの基本属性を用いることによって遂行される。この基本属性は、新しいオブジェクトが従属するオブジェクトのオブジェクトIDおよびソース・バージョンを単純にリストする。オブジェクトの新バージョン(同士)は、これらの新バージョンを定めるスキーマが、同じであるか、または、元のスキーマの属性の厳密な上位集合を持つという意味で、互換性があるものでなければならないことは、明らかである。
【0052】
新しい視聴オブジェクトが受信されると、最初に、そのオブジェクトの全ての従属性が存在しているか否かについて、データベースが、チェックされる。そのような従属性が存在していれば、そのオブジェクトが、データベースに加えられる。そうでなければ、その新しいオブジェクトは、「ステージに載せられ」、全ての従属オブジェクトが、ステージに載せられるまで、保持エリアに保存される。視聴オブジェクトの新しい組み合わせを、データベースに加えるためには、従属グラフが、オブジェクトIDとソース・バージョンとの両方に基づいて、ステージ・エリア内のオブジェクトと、データベース内に既に存在しているオブジェクトとの間で閉じていなければならないことは、明らかである。ひとたび、それが閉じられると(これは、全ての従属オブジェクトが、存在することを意味する)、新しいオブジェクトが、単一のアトミック・トランザクション(分割不可能なトランザクション:更新の全てが実行されるか、いずれも実行されないかの何れかになるトランザクション)で、データベースに加えられる。
【0053】
テレビジョン視聴オブジェクトの命名および発見
ディレクトリ・オブジェクトについては、前述した。図4に示されるように、ルート・パス400から開始し、かつ視聴オブジェクトへのあらゆる可能なパスを数えあげることによって形成されるディレクトリ・オブジェクトの収集および有向グラフが、「名前空間」と呼ばれる。オブジェクトを、特定のオブジェクトIDを知ることなしに見つけるためには、この名前空間内の1つ以上のパスが、それを参照していなければならない。例えば、アプリケーション・ソフトウェアが、オブジェクトIDにほとんど関心を持たず、代わって、そのソフトウェアは、パス(例えば、「/tv番組予約/今日」)によってオブジェクトを参照することを望む。この例の場合、参照される実際のオブジェクトは、システムのいかなる他の部分の変更も必要とせずに、毎日変化するであろう。
【0054】
オブジェクトへのパスを確立することができる1つの仕方は、そのオブジェクトに「パス名」基本属性を指定することである。このオブジェクトは、データベースに加えられ、そして、そのパスのコンポーネントを記述するディレクトリ・オブジェクトが、そのオブジェクトを加えるために、生成されるか、または、更新される。このような命名は、通常、複製メカニズムのデバッグにしか用いられない。各クライアント・システム上に複製された中央データベースの部分は、相異なるので、これらのデータベースの全ての複製に渡ってパス名を管理することを極めて困難である。従って、明示的なパスを設定することは、薦められない。
【0055】
データベース名前空間にオブジェクトを加えるための好適な一方法は、「インデクシング(指標付け)」と呼ばれる。本発明の好適な一実施例の場合、データベース名前空間にインデクシングするときに、どの属性が用いられるかを示す「インデクサ」オブジェクトが、各オブジェクト・タイプに対して定められる。当業者は、このインデクサオブジェクトが、ある形式で、恐らくは一連の実行可能コマンドとして、実行可能コードを含むであろうことを容易に認識するであろう。これらのコマンドは、インデクス(指標付け)されるオブジェクトの属性と属性値とを検査しかつ比較する。これは、結果的に、そのオブジェクトが、名前空間のどこに位置すべきかを示す。
【0056】
オブジェクト・タイプに基づいて、インデクサは、そのオブジェクトに結ばれた属性の特定の組み合わせを検査する。このような属性が発見されると、インデクサは、データベース内のディレクトリのグラフによって表わされる階層的名前空間内に、その属性の値に基づいて、自動的に、そのオブジェクトの名前を加える。再度、図4を参照すると、1つの番組オブジェクト401は、値「ジョン・ウェイン」を持つ「俳優」属性と、値「ジョン・フォード」を持つ「監督」属性との両方を持つことができる。ルート・ディレクトリは、「俳優による」402と「監督による」403との2つのサブディレクトリを示すかもしれない。次いで、インデクサが、両方とも同じオブジェクト401を参照するパス「/俳優による/ジョン・ウェイン」および「/監督による/ジョン・フォード」を、データベースに加える。
【0057】
このオブジェクト401を参照するディレクトリ・オブジェクトをリストする派生属性が、各オブジェクトに対して維持される。インデクサは、名前空間に、このオブジェクトに対するパスを加えるときに、このリストに、パスの最終的なディレクトリIDを加える。これは、オブジェクト・グラフの終結を確実にする。(何故なら)ひとたび、このオブジェクトが見つかったならば、データベース内のそのオブジェクトへの全ての参照も、これらが、パスであろうと、従属であろうと、見つかる。
【0058】
データベースにオブジェクトを加える、このユニークで新規な方法は、標準的なアプローチを超える著しい利点を持つ。インデクサは、オブジェクトが加えられるとき、そのオブジェクトを、データベースにソートする。したがって、特定のパスに関連されたオブジェクトのサーチは、整然と順序付けられたリストからの一連の選択になる。当業者であれば、それを効率的に実施することができる。
【0059】
オブジェクトのデータベースからの削除
データベースにオブジェクトを加えるためのルールが、重要である一方、データベースからオブジェクトを除去するためのルールも、一貫性と正確性の維持において重要である。例えば、オブジェクトを除去するための確固としたルールがなかったならば、データベースは、使われていないオブジェクトが蓄積するにつれて、時間とともに際限なく増大するであろう。
【0060】
データベースからオブジェクトを削除するための主要なルールは、参照のカウンティングに基づく。参照カウントが0まで落ちたオブジェクトは、即座に削除される。例えば、これは、オブジェクトが、データベースに残存するためには、ディレクトリ・オブジェクト、または、なんらかの他のオブジェクトが、それを参照していなければならないということを意味する。このルールは、削除されるオブジェクトに基づいて、終結している従属グラフ中の全てのオブジェクトに適用される。したがって、(ディレクトリのような)別のオブジェクトを参照しているオブジェクトが、削除されると、参照されている全てのオブジェクトの参照カウントが、デクリメントされ、そして、これらのオブジェクトも、0カウントになると同時に、同様に削除される、等々である。
【0061】
さらに、「リーパ」と呼ばれるデータベースからのオブジェクトを削除する自動プロセスもある。周期的に、このリーパは、データベース中の全てのオブジェクトを検査し、そして、さらに、オブジェクト・タイプに応じて、種々の属性および属性値を検査し、そしてそのオブジェクトが、データベースに保持されるべきか否かを決定する。例えば、保存期限属性が、そのオブジェクトは、もはや有効ではないことを示す場合には、リーパは、そのオブジェクトを削除するであろう。
【0062】
好適な一実施例の場合、上述のフィルタリング方法およびインデクシング方法と同様の(または、恐らくは同一の)方法を用いて、リーパが、代わりに、現在のオブジェクトのオブジェクト・タイプに関連したリーパ・オブジェクトにアクセスすることができる。これは、種々の種類の実行可能コード(恐らくは、一連の実行可能コマンド)を含むことができる。このコードが、現在のオブジェクトの属性および属性値を検査し、そしてそのオブジェクトが、削除されるべきか否かを決定する。
【0063】
参照カウントが0までデクリメントされているあらゆるオブジェクトを個々に削除するオーバヘッドは、極めて高くなるかもしれない。何故ならば、あらゆるこのような削除が、データベースとのトランザクションと言う結果になるからである。フォアグラウンドの動作が、最大速度を続けるように、オブジェクトをリープ(削除)する実行インパクトを制限することは、有益なことである。好適な一実施例の場合、これは、通常の不要部分整理(コレクション)方法に基づいた技術を用いて遂行される。
【0064】
例えば、参照カウントが0までデクリメントされているオブジェクトを削除するどころか、リーパは、何ら他のアクションも行わない。不要部分収集部と呼ばれるバックグラウンド・タスクが、周期的に、データベース内の各オブジェクトを検査する。このオブジェクトが、0の参照カウントを持っていれば、これは、削除されるべきオブジェクトのリストに加えられる。一実施例の場合、ひとたび、不要部分収集部が、データベース全体を検査してしまうと、それは、一回のトランザクションで、このようなオブジェクトを全て削除する。当業者であれば、オブジェクトが削除されている間、データベースへの他のアクセスが遅れるかもしれないから、この方法は、反面、かなり性能を低下させる結果になるかもしれないことを認識するであろう。さらに、全てのオブジェクトを適切に削除するためには、不要部分収集部がアクティブな間、データベースの変化を遅延させなければならないかもしれないので、性能は、さらに悪くなる結果となるかもしれない。
【0065】
好適な一実施例の場合、不要部分収集部は、パス内の一連のデータベースを検査する。ひとたび、特定の数のオブジェクトが、収集されると、これらのオブジェクトは、一回のトランザクションで削除される。当該プロセスは、全てのオブジェクトを検査してしまうまで継続される。並行する活動が、それ以前に検査されたオブジェクトを開放してしまうかもしれないので、この技術は、全てのガーベッジ・オブジェクトが、この検査プロセスの間に収集されることを保証しない。しかしながら、これらのオブジェクトは、次回、不要部分収集部が実行するときに発見されるであろう。各パスにおいて削除されるオブジェクトの数は、他のデータベース活動に対する性能が許容可能であるように調整することができる。
【0066】
分散されたテレビジョン視聴オブジェクト・データベース上の動作
分散された視聴オブジェクト・データベースの維持の考察
分散されたデータベースのインスタンスのなかで、テレビジョン視聴オブジェクトを複製するためには、必ず、信頼性が低くかつ安全でない分散チャンネルを介してオブジェクトを伝送しなければならない。
【0067】
例えば、オブジェクトが、ラジオまたはテレビジョンのような放送メカニズムを介して伝送される場合、データが、正確に、または、完全に伝送されるということは、保証されない。暴風雨のような天候が、その伝送においてドロップアウトを引き起こすかもしれない。他の妨害の原因には、他の放送信号、大型の機器、家庭用具などが挙げられる。
【0068】
当業者であれば、信頼性の低いチャンネルを介するデータ伝送を管理するための(反復伝送、誤り訂正コード等を含む)標準的な技術が、存在することを容易に認識するであろう。これらの技術は、伝送のために用いることのでき、また、これらの何れもまたは全部を如何なる特定の例においても用いることができる。
【0069】
複製されるべきオブジェクトは、効率化のために、本明細書において「スライス」と呼ばれる分散パッケージに、一緒に集められる。スライスとは、地理的な領域、または、衛星トランスミッタの電波受信可能域のような特定領域内のクライアントに関係する、テレビジョン視聴オブジェクト・データベースの下位集合である。
【0070】
これらのスライスの安全性は、極めて重要である。スライスは、データベースにオブジェクトを加えるために用いられ、これらは、データベースのユーザに価値の高いサービスを提供するため、および、非公開または秘密とみなすことができる情報を記憶するために用いられる。スライス伝送が放送により行われるため、スライスは、これらが伝送される際に、第三者によって容易にコピーされる可能性がある。これらの問題に対する現実的解決は、伝送の間、スライスを暗号化することである。本発明で利用される技術に関する最善の参考文献は、「Applied Cryptography: Protocols, Algorithms, and Source Code in C(応用暗号技術:Cにおけるプロトコル、アルゴリズム、および、ソースコード)」Bruce Schneier, John Wiley and Sons, 1995 である。
【0071】
本発明の好適な一実施例の場合、安全で、暗号化されたチャンネルが、米国特許第4,405,829号明細書に記述されている技術と同様の技術(しばしば、非対称キー暗号化として、ときには、公開/非公開キーペア暗号化として記述される)を用いて、確立される。当業者は、非対称キー暗号化に基づくプロトコルが、クライアント・デバイスの認証、および、情報の安全な分散化のための信頼性の高い効率的な基盤として機能することを認識するであろう。一般に、認証は、クライアント・システムと中央システムとの間の署名されたメッセージの交換により行われる。安全な分散化は、認証過程中に送られる短寿命の対称キーを用いて、全ての通信を暗号化することによって、行われる。
【0072】
安全性を成功させるためには、送信側と受信側が、暗号に使用される非対称キーペアに関し、前もって同意していることが必要である。このようなキーの分散化は、電子データを保護するためには、如何なる暗号システムにおいても最も弱いリンクである。これも本出願人が所有権を持つ、1999年7月19日に出願された、発明の名称「Self-Test Electronic Assembly and Test System(セルフテスト電子アセンブリおよびテストシステム)」の米国特許第6,385,739号明細書には、クライアント・デバイスが、製造プロセスの最終ステップに、非対称キーペアを自動的に作成するメカニズムが記述されている。このように作成された非公開キーは、そのキーが決して外部デバイスに漏れないように、クライアント・デバイス内に埋め込まれた安全なマイクロプロセッサ内に記憶される。このように作成された公開キーは、ローカルな製造システムに伝送され、このシステムは、安全なデータベース内に、このキーを、そのクライアントのシリアル番号とともに記録する。このデータベースは、その後、中央分散システムに安全に伝送されて、そこで、これは、クライアントとの安全な通信を行なうために用いられる。
【0073】
この非公開キーは、(非公開キーが、ロジックアナライザのような特別のツールを用いて認識されてしまう可能性がある)クライアント内の外部コンポーネントには、決して提示されないので、このユニークで新規なキー作成法は、キーの分散化についての問題を解決する。これに代えて、公開キーにより暗号化されたメッセージを解読するために、これを、安全なマイクロプロセッサ自体の内部でしか用いず、その後、これらの結果を、外部のコンポーネントに供給することもできる。
【0074】
本明細書を考察する以下の部分では、クライアント・システムと中央システムとの間の全ての通信が、上述のように認証され、そして、暗号化されていると、仮定する。
【0075】
クライアント・システムへの視聴オブジェクトの伝送
再度、図1を参照すると、本発明の好適な一実施例の場合、以下のステップが、スライスを用いて、中央データベースからテレビジョン視聴オブジェクトを「伝送すること」を構成する。
【0076】
1. クライアントの視聴デバイス域にスライスを伝送するには、多くのメカニズムが存在するであろう。例えば、スライスは、電話モデムまたはケーブルモデム109を介して、直接ダウンロードしても良いし、標準テレビジョン放送108の垂直帰線消去期間(VBI)のライン中に変調しても良いし、また、デジタル・テレビジョンの多重信号に非公開データ・チャンネルとして加えても良い。当業者は、デジタル情報を伝送することができる如何なるメカニズムも、テレビジョン視聴オブジェクト・データベースのスライスを伝送するために用いることができることを容易に理解するであろう。
【0077】
伝送のためのテレビジョン視聴オブジェクトを用意する最初のステップは、この特定の例に使用されるべき伝送メカニズムを認識することと、そのメカニズムのためにカスタム化されるデータベースの下位集合のスライスを生成することである。例えば、このデータベースは、国内の全番組に関するテレビジョン視聴オブジェクトを含むことができる。しかしながら、テレビジョン視聴オブジェクトが、ローカル・テレビジョン信号のVBI変調を用いて送られる場合には、番組を搬送するために用いられているテレビジョン放送の電波受信可能域内で視聴可能な番組に関するテレビジョン視聴オブジェクトしか、当該スライス内には含まれるべきではない。他方、テレビジョン視聴オブジェクトのいくつかが、特定地域領域に関する宣伝用マテリアルを含んでいる場合には、これらのオブジェクトは、他の地域領域に伝送されるべきではない。
【0078】
本発明の好適な一実施例の場合、伝送のためにデータベースを検索しかつスライスを作成する速度および周期は、コスト/パフォーマンスのトレードオフが実用的になるような任意の仕方で、調整可能である。いくつかの伝送方法に対しては、例えば、一日おき、または、毎時間、スライスを作成すれば良いかも知れない。
【0079】
各スライスを用意する最終ステップは、短寿命の対称キーを用いて、スライスを暗号化することである。安全なプロトコルを用いて認証されたクライアント・デバイスしか、この対称キーのコピーを持たないであろう。これは、これらのクライアント・デバイス(のみ)が、このスライスを解読し、かつ、その中のテレビジョン視聴オブジェクトにアクセスすることを可能にする。
【0080】
2. ひとたび、スライスが完成すると、スライスは、伝送メカニズムが、データを受け取りかつ送信することができる地点にコピーされる110。電話接続の場合、スライスは、各クライアントに、それがコールされたときに、データを供給する電話通信サーバ111に置かれる。テレビジョン放送が用いられる場合には、スライスは、局テレビジョン・トランスミッタと共存する機器上にコピーされる。スライスは、そこで信号上に変調される。これらのおよび同様の放送伝送に基づく場合、スライスは、「反復」される、即ち、新しいスライスが伝送のために供給されてくるまで、スライスを記述するデータは、絶えず反復される。
【0081】
データを搬送する信号が、各クライアントに信頼性高く到達するということが保証されないので、このスライスの反復放送は、必要である。クライアント・デバイスの電源が切れているかもしれないし、信号の受信に対する妨害が潜在的な。伝送されたスライスが、全てのクライアント・デバイスにおいて適切に受信されるという高い確率を達成するために、これらのスライスは、更新されたスライスが伝送に使用可能になるまで、絶えず再放送される。
【0082】
本発明の好適な一実施例においては、スライスの伝送には、テレビジョン信号のような放送メカニズムが用いられる。しかしながら、モデム接続またはインターネット接続のような接続ベースのメカニズムを介してダウンロードすることは、望ましい。接続ベースのメカニズムを用いることは、通常、時間ベースの使用料が必要になるので、スライスの伝送に費やされる時間は最小限にすることが、望ましい。
【0083】
これは、2ステップ・プロセスを用いて遂行される。接続が確立されると、クライアント・システムは、以前に受信されたスライスの一覧表を、電話通信サーバ111に送信する。サーバは、この一覧表を、そのクライアントが過去に処理したはずであるスライスのリストと比較する。処理されていなかったスライスは、このクライアント・システムに伝送される。
【0084】
3. スライスは、暗号化されたスライスを、一連の短く分けられたデータ・パケットに分割することにより、伝送される。これらのパケットは、クライアント・システムによって取得され、そして、そのシーケンスの全てのパケットが存在するようになるまで、ステージ・エリアに保持される。パケットは、スライスに再アセンブルされ、その後、それは、解読される。次に、このスライス内のテレビジョン視聴オブジェクトは、これらを利用可能にするためにフィルタ処理され、恐らく、ローカルなテレビジョン視聴オブジェクト・データベースに加えられる。このプロセスにより、テレビジョン視聴オブジェクトについての中央データベースの一部が、信頼性高く、クライアントに複製される。
【0085】
本発明は、データ・パケットが受信される時刻を追跡する。選択された時刻の期間よりも古いデータ・パケットは、周期的にステージ・エリアから除かれる。これは、スライスの全ての部分が伝送されるのを待つ間、無期限に空間(記憶空間)を消費しないようにするためである。
【0086】
特に、放送媒体によりオブジェクトを伝送する場合には、伝送されたデータにさまざまな種類のエラーが、生じるかもしれない。各データ・パケットには、誤り検出コード(例えば、パリティフィールドまたはCRCコード)が刻まれている。エラーが検出されると、そのデータ・パケットは、単純に廃棄される。放送の反復により、最終的には、適切に受信されるであろうデータ・パケットが再伝送される。したがって、如何なるサイズのスライスも、信頼性高く送信される。これは、全ての部分が適切に受信されるまで、クライアントにオブジェクトの部分を受信させることにより、達成される。
【0087】
4. クライアント・システムに、サービスに関連するデータ(特に、サービスの認証情報)を伝える、1つ以上の「特別の」スライスを伝送することもできる。視聴者が、彼の代金を支払っていない場合、または、他の動作上の理由から、クライアント・システムがプレミアム・サービスにアクセスすることを、サービス・プロバイダが制御することができることが重要である。
【0088】
特別のスライスの1つの特定のタイプには、「認証」オブジェクトが含まれる。認証オブジェクトは、一般に、特定のクライアントに関連する公開/非公開キーのペアに基づいた非対称キー暗号化を用いて暗号化される。安全なマイクロプロセッサが、埋め込まれている非公開キーを用いて、このスライスを成功裡に解読することができれば、このスライスは、別の認証オブジェクトが受信されるまでに許される時間遅延を示すオブジェクトと、短期間のみ有効な1つ以上の対称キーとを含むであろう。この遅延値は、クライアント・システムが、サービスの提供をいつ停止するかを示すデータベース中のタイムスタンプをリセットするために用いられる。これらの対称キーは、ローカルなテレビジョン視聴オブジェクト・データベースに記憶され、受信されるであろう新しいスライスの解読に用いられる。
【0089】
クライアントが、データベース内に設定されている時間までに適切な認証オブジェクトを受信しなかった場合には、それは、(サービス・プロバイダによって規定されているように)その視聴者に対するほとんどのサービスの提供を拒否することを開始する。さらに、認証オブジェクト内には、伝送されたスライスを解読するために必要な1個以上の寿命が有限のダウンロードキーが、含まれている。クライアント・システムが、自身を認証することができなければ、如何なるオブジェクトも解読することができないことは、明らかであろう。
【0090】
各認証スライスは、個々に作成され、そして伝送される。スライスが放送により伝送される場合には、関連する全ての認証が、他の全てのスライスと同じに扱われ、かつ、全ての他のデータと共に反復される。電話接続によるような直接伝送が用いられる場合には、そのクライアントに対する認証スライスしか、伝送されない。
【0091】
5. ひとたび、クライアント・デバイスが、完全なデータベース・スライスを受信すると、クライアント・デバイスは、前述の方法を用いて、その中に含まれている新しいオブジェクトを、データベースに加える。
【0092】
クライアント・システムからの情報の収集
再度、図1を参照すると、本発明の好適な一実施例の場合、以下のステップが、各クライアント・データベースからのテレビジョン視聴オブジェクトの「収集」を構成する。
【0093】
1. 視聴者が、自分が利用可能なテレビジョン・チャンネルを捜しているとき、クライアント・システムは、選択されたチャンネル、選択された時刻、そのチャンネルを視聴していた期間、VCR的アクション(例えば、休止、巻戻し)等の、関係情報を記録する。このデータは、ローカルなテレビジョン視聴オブジェクトに記憶される。
【0094】
さらに、視聴者は、利用可能な提供品または宣伝に関心を示すかもしれないし、または、アイテムの購入希望を示すかもしれない。この情報も、ローカルなテレビジョン視聴オブジェクトに記録される。
【0095】
さらに、クライアント・デバイスの動作の結果、テレビジョン視聴オブジェクトに記録しなければならない重要なデータが、発生するかもしれない。例えば、クライアントのハード・ディスク・ドライブからの読み出し中に、エラーが、生じるかもしれないし、また、デバイスの内部温度が、動作パラメータを超えるかもしれない。他の同種の情報には、オブジェクトの適切なダウンロードの失敗、さまざまなディスクベースの動作空間の消尽、急速な電源サイクリングがある。
【0096】
2. ある時点で(中間時点で、または周期的に)、クライアント・システムは、直接接続104(通常、電話接続および/またはインターネット接続)を介して、中央サイトにコンタクトする。クライアント・デバイスは、それの秘密キーで暗号化されている、それ自体を識別するバイト列を送信する。サーバは、そのクライアント・デバイスにマッチするテレビジョン視聴オブジェクトを、データベースからフェッチし、そしてそこに記憶されているキーを用いて、そのバイト列を解読する。同時に、サーバは、その秘密キーで暗号化されたバイト列をクライアントに送信し、クライアントに、そのセションのための新しい一回限りの暗号化キーを与える。
【0097】
両サイドは、通信のために、これらの認証メッセージを成功裡に解読しなければならない。この双方向ハンドシェークは、クライアントとサーバとの両方に、互いに他方が有効であることを保証するので、重要である。このような認証は、クライアント・システムに発生するかもしれない、さまざまな外部からの攻撃を回避するために必要である。例えば、通信が、認証されなかった場合、悪意のある者が、不正なテレビジョン視聴オブジェクト・データベースを持つ「偽の」中央サイトを生成して、クライアント・システムに有害な情報を提供するかもしれない。これは、正常でない動作の原因となる。以降の全ての通信は、一回限りのセションキーを用いて暗号化される。(情報が通り抜ける全ての機器による検証に対して、データ・トラフィックがオープンである)インターネットのようなネットワークを情報が通過するかもしれないので、暗号化された通信が、必要となる。収集された視聴オブジェクトには、非公開と思われる情報が、含まれているかもしれないので、この情報は、常に、完全に保護されていななければならない。
【0098】
認証過程が成功したと仮定すると、両当事者は、全二重方式電話線を、2つの一方向放送チャンネルとして扱う。新しいスライスが、クライアントに分散され、そして、収集されるべき視聴データが、送り返される。全てのデータが分散されると、接続が、終了する。
【0099】
当業者は、この接続が、システム内の全ての他のソフトウェアに対し透明である、標準のTCP/IPプロトコルを実行するインターネットのようなネットワークにより行えることを容易に理解するであろう。
【0100】
3. アップロードされた情報も、サーバによって同様に扱われるので、テレビジョン視聴オブジェクトが中央データベースに複製されるべきと仮定しよう。しかしながら、このサービスには多くのクライアントが存在するかもしれないので、アップロードされた視聴オブジェクトが多数存在するかもしれない。したがって、アップロードされたオブジェクトには、これらのソースに関する情報を含むナビゲート可能な属性が割り当てられる。次いで、このオブジェクトは、それが加えられるときに、データベース名前空間にユニークにインデクスされる。
【0101】
アップロードされた視聴オブジェクトは、すぐには、中央データベースに加えられない。その代わりに、これらは、後のデータベースの挿入のために待ち行列処理される。このステップにより、待ち行列処理が、クライアント・デバイスの接続パターンに依存しないことが可能になる。例えば、同時に多くのデバイスが接続されて、非常に多数のオブジェクトが生成されてしまう場合がある。これらのオブジェクトが、中央データベースに即座に加えられるとすると、全ての接続の効率が、低下し、接続時間が増加してしまう。電話のコールは、接続時間にしたがって請求されるので、接続時間が、負荷の関数として増加してしまうようなシステムは、如何なるものも認められない。
【0102】
このようにオブジェクトを中央データベースに即座に加えないことのもう1つの利点は、マシンまたはネットワークが、それらに障害が生じた場合の影響を受けにくいことである。さらに、視聴オブジェクトの処理速度および中央データベースへの追加速度は、コストの目標または性能の目標がサービス・プロバイダにより満たされるように、コンピュータ・システムとこれらの構成を変えることによって、制御することができる。
【0103】
さらにもう1つの利点は、それが、サービス動作を改善するために収集されるデータと、個々の視聴者を識別するデータとを分離するためのメカニズムを提供することである。法的な理由からこのような識別データを、非公開にしておくことと、個人個人が、受けるサービスの信頼性を高めることが、重要である。例えば、視聴者の視聴選択の記録を含む視聴オブジェクトに割り当てられる、ナビゲート可能な属性は、視聴者の郵便番号だけしか含んでいないかもしれない。この場合には、これらのオブジェクトを更に処理しても、個々のアイデンティティ(身元)に至るパスを構築することはできない。
【0104】
周期的なタスクが、サーバに、データベース上のこれらのオブジェクトから不要なものを選り分け、そして、これらを適切に廃棄させる。例えば、視聴者の行動を示すオブジェクトは、視聴者全体の行動モデルに集められるが、個々の視聴者を識別出来る情報は、廃棄される。動作上の情報を含むオブジェクトは、分析タスクに送られる。これは、顧客サービス担当の社員に潜在的な問題について警報をもたらすことになるかもしれない。商取引情報を含むオブジェクトは、その実現のために、商取引システムまたは売買システムに送られる。
【0105】
これらの活動の何れによっても、新しいテレビジョン視聴オブジェクトが、中央データベースに加えられるか、または、現存しているオブジェクトが、更新される結果が得られる。これらのオブジェクトは、最終的には、クライアント・デバイスに伝送される。したがって、このテレビジョンの視聴管理システムは、閉じたループであり、これは、如何なる数のクライアント・システムもサポートすることができる、自己維持型の複製データベースシステム105を生成する。
【0106】
クライアント・システムによるテレビジョン視聴オブジェクトの処理
テレビジョン視聴オブジェクトは、以下のタイプの情報:テレビジョン番組の解説および放映時刻;チャンネルの番号およびIDのような、ケーブル、衛星、放送信号の発信元情報;俳優、分野、放映時刻などのような視聴者の嗜好に関する情報;強化データベース・ソフトウェア、アプリケーション・ソフトウェア、オペレーティング・システム・ソフトウェアなどのようなソフトウェア;嗜好ベクトル、人口統計分析などのような統計モデル化情報;および、デジタルデータとして表わすことができる他の如何なる任意の情報も、含むことができる。
【0107】
番組ガイド・オブジェクトに適用される方法
番組ガイド・オブジェクトには、クライアント・システムのユーザが関心を持つ番組にチャンネル合わせをし、それを受信し、記録し、視聴するために、クライアント・システムにおいて実行されるソフトウェアが必要とし、かつ、全ての利用可能な番組およびチャンネルの中からデータベース内のオブジェクトによって記述されるものを選択するために必要とされる全ての情報が、含まれる。
【0108】
この番組ガイド情報は、サービス・プロバイダによって定期的に更新される。これは、プロバイダが、番組ガイド情報をなんらかの方法(例えば、放送番組情報等の情報を提供する業者から得ること)によって行われる。その後、このデータは、十分に理解されているソフトウェア技術を用いて、その情報が、相互に関連する視聴オブジェクトの収集データに減少するように処理される。
【0109】
再度、図4を参照すると、ここには、番組ガイド・オブジェクト間の典型的な関係が、示されている。テレビジョン「ネットワーク」オブジェクト407は、放送が、空中、ケーブル、衛星または他の適切な媒体の何れを介して行われるものであっても、テレビジョン番組の放送予約をしかつ放送する如何なる構成体でもある。テレビジョン「番組」オブジェクト401は、特定の番組、コマーシャル広告、局の宣伝、オープナ(番組の最初の出し物)、予告編または他の任意のテレビジョン信号の限定された部分のような、テレビジョン放送信号の任意の個々のセグメントの記述である。「放映」オブジェクト406は、番組が放送されるネットワークの放送番組の一部である。「チャンネルマップ」オブジェクトは、ネットワーク放送を、使用されている媒体の特定の放送チャンネルにマップする。例えば、衛星放送サービスのためのチャンネルマップ・オブジェクトには、この放送を収容するトランスポンダおよびデータストリームに関する情報が含まれる。前述の方法を用いて、この番組ガイドデータが、中央サイトからクライアント・システムに複製される。クライアント・システムのアプリケーション・ソフトウェアは、そのデータを用いて、テレビジョンの視聴を管理する。
【0110】
サービス・プロバイダは、また、なんらかの形で相互に関係する1組の番組ガイド・オブジェクトを記述する集合視聴オブジェクトを提供することができる。例えば、「スタートレック」の収集は、このブランド名に関連した全ての番組ガイド・オブジェクトへの参照を含むことができる。番組の如何なる組み合わせも、このように集合させることができることは、明らかである。集合オブジェクトは、ディレクトリに似ている。例えば、スタートレックの収集は、階層的名前空間において、「/ショーケース/スタートレック」で見つかる。集合オブジェクトは、番組ガイド・オブジェクトでもあるので、これらの集合オブジェクトを、集合オブジェクトを集合させるステップ等も含めて、同様にマニピュレートすることができる。
【0111】
クライアント・システムは、番組オブジェクトの収集を、さらに精巧にすることもできる。内部記憶装置に番組を獲得することができるシステムにおいては、獲得された各番組は、新しい番組ガイド・オブジェクトによって表わされ、視聴、集合化などに利用可能になる。視聴者のアクションにより、番組ガイド・オブジェクトが、生成される結果となることもある。例えば、視聴者が、いくつかの番組を選択して、新しい集合オブジェクトを生成することもできる。
【0112】
番組ガイド・オブジェクトのタイプに関する本記述は、全ての可能性を含むことを意味していない。本明細書には記述されていないが、本発明の基本的な方法から、やはり利益を享受する、番組ガイド・オブジェクトの様々な用途、および、これらを作成する方法も存在する。
【0113】
番組ガイド・オブジェクトは、以下の5つの仕方でアプリケーション・ソフトウェアに用いられる。
1. 最も簡単な場合では、視聴者が、ブラウザによりこれらのオブジェクトを閲覧して、現在のまたはすぐに利用可能となる番組を認識することを望むかもしれない。アプリケーション・ソフトウェアは、データベースによって記述されるオブジェクトの関係を、視聴者にとって便利でかつ有用な視聴可能なインターフェイスのなんらかの形式にマップする。視聴者は、ある特定の番組に関心があることを示すことができる。これは、その番組が放送されるときに、その番組をローカルな記憶装置に記録するというような、あるアプリケーションスに特有なアクションをもたらす。
【0114】
2. アプリケーション・ソフトウェアは、また、番組ガイド・オブジェクトを直接処理して、視聴者が関心を持つであろう番組を選ぶこともできる。このプロセスは、通常、以前に視聴された番組の統計モデルによる分析に基づいており、これにより、利用可能な全ての番組について優先順位が得られることになる。優先順位が最も高い番組は、その番組が放送されるときに、ローカルな記憶装置にその番組を記録するというような、アプリケーションに特有なアクションで処理させることができる。このようにして得られた優先順位の一部は、1の場合のように、追加的な選択のために、視聴者に提示することもできる。
【0115】
当業者は、以前の視聴履歴および視聴者が示す嗜好に基づいて、視聴者のために番組を選ぶ方法を主とした多くの従来技術(例えば、米国特許第5,758,257号明細書)が存在することを容易に理解するであろう。本出願に記述されている方法は、番組の放送に対する優先順位でも伝送に対する優先順位ではなく、番組の獲得に対する優先順位を提案し、かつ、番組が放送されるときについての時間制約が存在しないので、これらの従来技術に対してユニークで新規である。これらの方法のさらなる詳細は、後に、本明細書に記述される。
【0116】
一般に、獲得に関しては、視聴者自身が選択する番組選択が、最も高い優先順位を持ち、本明細書に記述される嗜好技術を用いて選ばれる番組が、それに続く。
【0117】
3. クライアント・システムは、テレビジョン放送の受信を可能にし、または、イントラネットまたはインターネットのようなネットワークによりウェブページにアクセスすることを可能にする、少数の入力を持つであろう。番組の予約方法を用いて、各入力がどのチャンネルに接続されるか、そして、接続の結果、獲得されたテレビジョン信号またはウェブページにより何がなされるかが、選択される。
【0118】
図6に示されるように、一般に、視聴者が関心を持つ番組は、番組ガイド・オブジェクトによって記述される如何なるチャンネルにおいても、かつ如何なる時にも、放送させることができる。さらに、関心のある番組は、イントラネットまたはインターネットのようなネットワークによるウェブページのユニバーサル・リソース・ロケータ(URL)とすることもできる。チャンネル・メタファは、特定のウェブ・サイトまたはページの位置、即ち、URLを記述するためにも用いられる。
【0119】
例えば、視聴者は、ウェブ・サイトのURLをチャンネルとして指定することによって、ウェブ・サイトに「同調」することができる。このチャンネルが選択されたときにはいつでも、そのウェブ・サイトが、表示される。ウェブページを、関心のある番組として指定することもできる。このウェブページのスナップショットは、あらかじめ定められた時刻に、受け取られかつ記録されるであろう。
【0120】
予約部は、入力として、(恐らくは、上記の場合のように作成された)番組視聴についての嗜好の優先順位が付されたリストを受け取る。その後、予約方法601が、このリストを、関心のある番組が、いつ実際に放送されるかを示す番組ガイド・オブジェクトのデータベースと、比較する。次に、それは、視聴者が選択したまたは導出された嗜好番組603に対して最適である、利用可能な記憶空間606に対する時刻607の予約を作成する。これらの方法のさらなる詳細が、後に、本明細書の記述において与えられる。
【0121】
4. 獲得された番組が視聴されるとき、その番組に関する付加情報を、(ある形式のオンスクリーンディスプレイ(OSD)が好ましい)任意の適切な技術を用いてディスプレイ上に重ねて、提供するために、マッチング番組ガイド・オブジェクトが、用いられる。このような情報には、番組名;元の放送の時刻、チャンネル、または、ネットワーク;保存期限時間;実行時間、または、他の情報を、含ませることができるが、これらに限定されるものではない。
【0122】
5. ライブ番組が視聴されるときには、アプリケーションは、マッチング番組ガイド・オブジェクトを見つけるために、現在の時刻、チャンネル、および、チャンネルマップを用いる。このオブジェクトからの情報が、上述のような任意の適切な技術を用いて、表示される。視聴者がチャンネルを変えたとき、新しい番組が始まるとき、コマーシャルによる中断の後の番組の再開時、視聴者による要求時、または、他の条件に基づいて、この情報は、自動的に表示させることもできる。
【0123】
6. 2の場合に記述した技術と同様の技術を用いて、アプリケーション・ソフトウェアは、視聴者が関心を持つであろう宣伝マテリアルを獲得することもできる。この情報は、視聴者が要求したときに提示することもできるし、また、ある都合のよい時点で、出力テレビジョン信号に自動的に挿入することもできる。例えば、放送中の番組の広告を、嗜好の優先順位がより高い、別の広告で置き換えることができる。1998年7月30日に出願された「Multimedia Time Warping System(マルチ媒体時間伸縮システム)」という名称の米国特許第6,233,389号明細書に記述されている時間伸縮装置(time-warping apparatus)を用いることによって、如何なるの時点においても、記憶されている如何なる番組をも、出力テレビジョン信号に挿入することが、可能である。この時間伸縮装置は、記憶されている番組がこの仕事をなすために挿入されている間、それに重ねられる番組を遅延させることを可能にする。
【0124】
好みの番組のリストを作成する方法
視聴者の嗜好は、いくつかの方法で得ることができる。視聴者は、ある番組の獲得を要求することができる。これは、これらの番組に対し、できる限り最高の優先順位を与えるという結果になる。この代わりに、視聴者は、視聴者インターフェイスを介して供給される従物(appurtenance)を用いて、恐らくは、特定の番組の宣伝スポットに応答して、または、番組の視聴中においてさえ、嗜好を選択することができる。最後に、視聴パターン:視聴された番組、視聴された、または、無視されたコマーシャル広告等から、嗜好を推定することもできる。
【0125】
どの場合においても、このような嗜好は、複製されたデータベースに記憶されているテレビジョン視聴オブジェクトに対応していなければならない。番組オブジェクトには、各特定の番組に関する多数の情報、例えば、題名、解説、監督、製作者、俳優、格付け等が含まれる。これらの情報は、番組オブジェクトに付された属性として記憶される。
【0126】
個々の各属性から、嗜好オブジェクトを作成することができる。このようなオブジェクトは、以下の情報を記憶する。
1. 俳優または監督に対する嗜好のような、嗜好アイテムのタイプ。
2. 複数のボタンの押下、または、他の手段によって示される可能性がある、視聴者によって与えられる嗜好の重み。
3. 他の嗜好との関連において静的に割り当てられる嗜好の重要度。例えば、俳優の嗜好が、監督の嗜好より重要であるということ。
4. 嗜好アイテムの実際の値。例えば、監督の名前。
【0127】
図5に示されるように、嗜好オブジェクトは、番組ガイド・オブジェクトに対して記述された階層と同様の階層として、データベースに記憶される。しかしながら、この階層は、嗜好が表されるにつれて、インクリメンタルに構成される 500。このように組み立てられた階層は、「直接的」嗜好、例えば、視聴者のアクション、または、推論された嗜好から導出された嗜好に基づく。
【0128】
同様の階層が、同じ嗜好オブジェクトを指す「間接的」嗜好に基づいて展開される 501。一般に、間接的嗜好は、集合オブジェクトに対する嗜好が作成されるときに作成され、かつ集合されたオブジェクトの収集によって導かれる直接的嗜好をさらに重み付けするために用いられる。間接的嗜好の階層を介して参照される嗜好オブジェクトは、集合オブジェクトの一部である、利用可能な番組オブジェクトを計数し、かつ、このようにして見つけられた各属性の嗜好オブジェクトを作成または更新することによって、作成または更新される 502。
【0129】
特定の嗜好503の重みは、0から始まる。その後、表現された嗜好の程度に基づいて(恐らくは、複数のボタン押下によって)、標準値が、加えられ、または、無関心が表現されたときには、標準値が減算される。嗜好が、集合視聴オブジェクトに基づいて表現される場合には、その集合されたオブジェクトに従属する全ての視聴オブジェクトによって作成される全ての嗜好が、同様に重み付けされる。したがって、該当する嗜好要素の新しい重み付けは、その前の重み付けから作成される。このプロセスは、表現することが許されている嗜好の程度によって制限されるので、全ての重み付けは、制限された範囲にはいる。
【0130】
本発明の好適な一実施例の場合、非線形の組み合わせを、嗜好アイテムの重み付けのために用いることができる。例えば、中央サイトによって供給される統計モデルを用いて、3つの属性に対して共同して極度に重み付けされている嗜好は、4番目の属性も、同様に、極度に重み付けされるべきであることを示していると、クライアントは、推論することができる。
【0131】
好ましい番組のリストは、以下のように作成される。
1. 可能な各番組オブジェクト属性をリストするテーブル504が、組み立てられ、そして、その属性に対して存在する如何なる嗜好オブジェクトも、そのエントリにリストされる。
【0132】
2. 嗜好アイテムが、俳優名のような記号列である場合には、その記号列に対する32ビットデジタル署名が、32ビットCRCアルゴリズムを用いて計算され、かつこの嗜好アイテムは、記号列自体ではなく、このテーブルアイテムによって記憶される。これは、2つの異なる記号列が、同じデジタル署名を作成するという危険をほとんどもたらさない。したがって、このことは、記号列の比較を行う必要が無いので、はるかに高速なテーブルの走査を可能にする。
【0133】
3. データベース中の各番組オブジェクトとこの番組の各属性とに対して、この属性が、テーブルにおいてルックアップされる。この属性が存在する場合には、この属性に対する嗜好オブジェクトのリストが、現在の番組オブジェクトの属性とマッチするかどうか検査される。マッチすれば、この嗜好オブジェクトに関連した重みが、その番組オブジェクトに関連した重み付けに加えられて、その番組に対する単一の重みが、生成される。
【0134】
4. 最後に、これらの番組オブジェクトは、各番組に対する総体的な重み付けに基づいて、ランク順序付けされ、これにより最高に好ましい番組から好ましい程度が最低の番組までの集合が得られる。
【0135】
この最終的な優先順位が付されたリストが与えられると、記録予約が、以下に記述する方法を用いて作成される。その結果、視聴者が非常に関心を持つ、記録された番組の収集が得られる。
【0136】
利用可能な記憶空間に対して記録予約するために適用される方法
前述したように、記録された番組は、一般に、保存期限日を持ち、その日以降その記録された番組は、クライアント記憶装置から除去されるであろう。視聴者は、番組を、もっと長く保存しなければならないということ(これは、視聴者が選択した期間だけ保存期限を遅らせる)を、いつでも指示することができる。本発明は、番組を記録するために利用可能な記憶装置を、「キャッシュ」と見る。視聴されなかった番組は、番組が、記録後すぐに見られなかった場合には、見られないであろうという仮定に基づいて、一定時間後に除去される。視聴された番組は、これらには、もはや関心が持たれないという仮定に基づいて、ただちに削除の候補になる。
【0137】
古い番組の記録および削除を適切に予約することによって、古い番組が削除され、新しい番組が加えられるので、より小さな記憶エリアを、はるかに大きくみなすことが可能である。さらに、リソースが利用可能であれば、推論された視聴者の嗜好に基づいた番組の記録を、予約することができる。これらは、「ファジイ」記録と呼ばれる。これにより得られるシステムでは、番組記憶エリアが、視聴者が関心を持つ番組で常に「満杯」である。つまり、何れの番組も、その場所が別の番組により置換されるか、または、視聴者自身が、それを削除するまで、除去されない。
【0138】
さらに、視聴者は、記録する番組をいつでも選択することができるので、その記録ウィンドウは、別の番組予約された記録と衝突するかもしれず、または、番組を記録しなければならないときに利用可能な十分な空間が、存在しないかもしれない。本発明には、このような衝突を解決するユニークで新規な方法が、含まれている。
【0139】
衝突は、2つの理由:記憶空間の不足、または、入力源の不足で発生し得る。本明細書に記述されるテレビジョンの視聴システムには、ビデオを記録するための限られた数の入力源、および、記録されるビデオを記憶するための容量が限られた、磁気ディスクのような、記憶媒体が、含まれている。かなりの期間にわたって放送されるテレビジョン番組を全て記録することは、不可能である。したがって、適正な番組を視聴可能にしておくためには、リソースが制限されていることにより発生する衝突を解決することが、鍵である。
【0140】
再度、図6を参照すると、本発明は、2つの予約、即ち、空間予約601と入力予約602とを維持している。空間予約は、現在記録されている番組と今後記録が予約されている番組との全てを、追跡する。任意の所定時刻に利用可能な空間の大きさは、占拠されている全ての空間(または、その時刻に占拠されているであろう空間)を合計し、そして、それを、番組を記憶するために利用可能な総容量から減算することによって、見出すことができる。推論された嗜好に基づいて記録(「ファジイ」記録)するように予約された番組は、この計算にカウントされない。このような番組は、自動的に、あらゆる衝突の決定を失っている。
【0141】
記録の開始から、それの保存期限が過ぎるまでの間の如何なる時点においても、番組を保持するための十分な空間が利用可能であるならば、その番組は、記録可能である 603。これに加えて、番組の終わりまでその番組を記録するために利用可能な入力がなければならない。入力予約602は、各入力源に対して開放されている時間帯と、占拠されている時間帯とを追跡する。本発明の好適な一実施例の場合、複数の入力源を、同一のサービスに用いることはできない。例えば、1つの入力を、デジタル・テレビジョン信号からのものとし、かつ、別の1つの入力を、異なる番組のアナログ・テレビジョン信号からのものとすることはできる。この場合、番組予約中、望みの番組を記録することができる入力だけしか、考慮されない。
【0142】
図7には、好適な一実施例における記録を予約するためにとられるステップを記述するフローチャートが、示されている。最初に、関心のある番組の放映が順序付けられたリストが、作成される 701。本発明の好適な一実施例は、記録ができるだけ早くなされるように、これらの放映を、時刻で順序付けしているが、如何なる特定の順序付けを、選ぶこともできる。次に、このリスト内の各放映702をチェックして、上述のような入力衝突703または空間衝突704が、生じるか否かを見る。その放映には、衝突が無いことが判ると、その番組は、記録のために予約される 705。
【0143】
衝突がある場合には、本発明の好適な一実施例では、入力衝突を持っていない番組の放映しか選択されない 706。再度、図6を参照すると、1つの記録の寿命が終わるまでに、他の番組が記録され、または、その保存期限が過ぎるので、利用可能な空間の大きさが変わり得るということは明らかである。その後、放映のリストは、好ましくは、記録候補の寿命の間に利用可能な空間の最少量により、ソートされる。他の順序付けを、選んでもよい。
【0144】
再度、図7を参照すると、各候補放映に対して、視聴者には、衝突する番組の保存期限日を短くするオプションがあることが示されている 708, 709。この順序付けの結果として、視聴者には、これらの選択が、番組予約された番組への影響が最小のものから最大のものまでの順に示されることになる 707。この順序付けを、用いるということは、本発明の必要条件ではない。
【0145】
視聴者が、保存期限時間を短くする全ての可能性を拒絶する場合には、最終ステップでは、入力衝突を持つ放映が選択され710、かつ最初の衝突解決過程におけるように、このような放映がソートされる711。その後、視聴者には、望みの番組を選ぶために、以前に予約された各記録を取り消すオプションが提示される 712, 713。もちろん、視聴者は、結局のところ、新しい番組は何も記録しないと決定することもできる 714。
【0146】
本発明の好適な一実施例の場合、全ての衝突が、できるだけ早期に解決される。このことは、視聴者に、何を記録するかについて、より多くの制御を与える。視聴者自身が、記録する番組を選択するときには、図7に記述されたアルゴリズムが、用いられて、ただちに、記録が予約され、かつ、発生する如何なる衝突も管理される。
【0147】
ひとたび、視聴者自身による選択がなされ、そして、視聴者が、それが記録されるべきであると通告していたのであれば、それは、視聴者の明示的な承認なしには、取り消されない。
【0148】
ファジイ記録は、クライアント・デバイスのバックグラウンド・タスクによって、周期的に予約される。前述したように、好ましい番組の優先順位を付けられたリストが与えられると、バックグラウンド番組予約部は、そのリストが空になるまで、または、記録の可能性がなくなってしまうまで、好ましい各番組を順番に予約することを試みる。他の予約された番組との衝突がないときのみ、好ましい番組が、予約される。既に予約されてしまっている好ましい番組は、第1に、それが、視聴者自身の選択と衝突した場合、および、第2に、視聴者の嗜好の変化によって、その時に記録することができるより優先順位の高い番組が識別された場合、の2つの条件下で削除することができる。
【0149】
記録が要求されている集合視聴オブジェクトを扱うときには、さらなる複雑さが発生する。衝突の解決を、このようなオブジェクトに対して、上述の方法によって扱ったならば、場合によっては、多数の衝突が、発生するかもしれない。これは、衝突を解決している視聴者に、困惑する、また、苛立たしい体験をもたらす。したがって、集合オブジェクトが、記録に選ばれる場合には、衝突は、現存する予約を選ぶことによって、自動的に解決される。
【0150】
本発明の好適な一実施例の場合、集合オブジェクトの記録に起因する衝突は、関与する番組の嗜好重み付けを用いて解決される。複数の衝突が、集合オブジェクトの特定の番組によって引き起こされた場合には、その番組は、その嗜好が、衝突している全ての番組の嗜好を超えたときしか記録されない。
【0151】
ソフトウェア・オブジェクトに適用される方法
クライアント・システムは、適切に動作するための複雑なソフトウェア環境を必要とする。オペレーティング・システムは、クライアント中のハードウェア・デバイスと、これらのデバイスをマニピュレートするソフトウェア・アプリケーションとの間の対話を管理する。テレビジョン視聴オブジェクト・データベースは、これとは別個のソフトウェア・アプリケーションによって管理される。時間伸縮ソフトウェア・アプリケーションは、さらに別のアプリケーションである。
【0152】
クライアントのハードウェア・デバイスで実行されるこれらのおよび他のソフトウェア・サブシステムには、新しい特色を加える、または、欠陥を訂正することが望ましい。本明細書に記述される方法を用いて、クライアント・システム・データベース内に、更新されたソフトウェア・モジュールを含む視聴オブジェクトを、複製することが可能である。ひとたび、このような更新されたソフトウェア・モジュールがクライアント・システム・データベースに存在すれば、以下のユニークで新規な方法を用いて、更新されたソフトウェアがインストールされ、かつ、クライアント・システムが、その新しいソフトウェアの実行を開始する。
【0153】
デバイスのソフトウェア環境は、電源が、最初に、そのデバイスに印加されたときに生じる、一連のステップとして、例示される。各ステップは、以下のステップが持つ適切なアプリケーションをサポートする状態情報を確立する。最後のステップは、デバイスを管理し、かつ視聴者と対話するアプリケーションを開始させる。これらのステップは、以下のとおりである。
【0154】
1. デバイス中の読み出し専用の、または、電気的にプログラム(書き込み)可能なメモリが、命令(インストラクション)の初期ブートストラップ(コンピュータを起動させる過程)シーケンスを保持している。これらの命令が、クライアント・デバイスの低レベルのパラメータを初期化し、ディスク記憶システムを初期化し、そして、ブートストラップ・ローダをそのディスクからメモリにロードすると、そのメモリに、実行が渡される。この初期ブートストラップは、それが、電気的にプログラム可能なメモリに存在している場合には、変更することができる。
【0155】
2. その後、第2ステージ・ブート・ローダが、ディスク・ドライブ上のオペレーティング・システムを見つけて、そのオペレーティング・システムをメモリにロードし、そして、このオペレーティング・システムに実行を渡す。このローダは、初期ローダによって容易に見つけられるように、ディスクの特定の位置に存在しなければならない。
【0156】
オペレーティング・システムは、必要なハードウェアおよびソフトウェアの初期化を行なう。その後、それは、ディスク・ドライブから視聴オブジェクト・データベース・ソフトウェアをロードして、アプリケーションの実行を開始する。時間伸縮ソフトウェアおよび視聴者対話ソフトウェアのような、他のアプリケーション・ソフトウェアも、ロードされて、始動される。このソフトウェアは、通常、オブジェクト・データベース、または、獲得されたテレビジョン番組とは別個の、ディスク上のエリアに位置する。
【0157】
新しいソフトウェアは、単純に、ディスク・ドライブ上の適切な場所にそれをコピーしかつデバイスを再起動させることによって、インストールされるのが、理想である。この動作は、特に家庭環境において、危険を伴う。電源が、ソフトウェアをコピーしている間に切れるかもしれず、これは、一貫しないソフトウェア・イメージおよび潜在的な動作上の問題を引き起こすかもしれない。新しいソフトウェアは、適切な動作を妨げる欠陥を持っているかもしれない。故障が、ディスク・ドライブに生じるかもしれず、これは、ソフトウェア・イメージを損なう。
【0158】
本発明の方法は、ディスク・ドライブにより記載されているが、当業者であれば、本明細書において記述される方法は、一般的に、如何なる永続的な記憶システムにも当てはまることを容易に認識するであろう。ディスク・ドライブおよび他の永続的な記憶システムは、通常、セクタと呼ばれる、固定サイズのブロックのシーケンスにフォーマットされる。「パーティション」は、記憶装置を論理的に独立したエリアに分割する、連続しかつオーバーラップしないこのシーケンスの下位集合である。
【0159】
図8を参照すると、本発明は、「ブート・セクタ」804と呼ばれる、ディスク・ドライブ803上の固定位置にある情報セクタを保持している。ブート・セクタ804は、初期ブートストラップ801が、ドライブ803のパーティショニングを理解するための、また、第2ステージ・ブート・ローダ806を見つけるための十分な情報を含んでいる。
【0160】
ディスクは、少なくとも7つのパーティションに仕切られている。第2ステージ・ブート・ローダのコピー806を保持するための専用の2つの小さなパーティション、オペレーティング・システム・カーネルのコピー807を保持する2つのパーティション、アプリケーション・ソフトウェアのコピー808を収容する2つのパーティション、および、スクラッチ・メモリ809として用いられる1つのパーティションが、ある。複製された(2重の)パーティションにおいては、パーティションの1つが、「プライマリ」とマークされ、もう1つが、「バックアップ」とマークされる表示が、ブート・セクタ805に記録される。
【0161】
当業者であれば、本明細書においては、冗長性に対し、2つのパーティションが、記述されているが、それ以上に複製されたパーティションを生成することによって、3重、4重、または、それ以上の冗長性を達成することができることを容易に認識するであろう。
【0162】
図9Aおよび9bを参照すると、起動901の直後に、初期ブートストラップ・コードが、ブート・セクタを読み出し 902、パーティション・テーブルをスキャンして、第2ステージ・ブート・ローダの「プライマリ」パーティションを見つける。その後、これは、このプログラム(第2ステージ・ブート・ローダ)を、メモリにロードすることを試みる 903。これが、例えば、ディスク・ドライブの故障によって、失敗すれば 904、ブート・ローダは、「バックアップ」パーティション内のプログラムを、メモリにロードすることを試みる 905。何れの試みが成功しても、ブート・ローダは、その後、このプログラムがロードされたパーティションの表示とともに、この新しくロードされたプログラムに、制御を渡す 906。
【0163】
同様に、第2ステージ・ブート・ローダは、パーティション・テーブルを読み出して、「プライマリ」オペレーティング・システム・カーネルを見つける 907。このカーネルをロードできなければ 908、「バックアップ」カーネルが、代わりに、ロードされる 909。何れの場合においても、上のステップから渡されたソース・パーティションに加えて、このソース・パーティションの表示とともに、制御が、このオペレーティング・システムに渡される 910。
【0164】
最後に、オペレーティング・システムが、アプリケーション・ソフトウェアを収容している「プライマリ」パーティションを見つけて、初期アプリケーションのロードを試みる 911。これが、失敗すると 912、オペレーティング・システムは、「バックアップ」パーティションを見つけて、それから、初期アプリケーションをロードする 913。このソース・パーティションの表示が、前のステップからのソース・パーティション情報に加えて、初期アプリケーションに渡される。この時点で、アプリケーション・ソフトウェアが、クライアント・システムで実行可能となり、正常な視聴管理動作が、開始する 914。
【0165】
この動作のシーケンスにより、ディスク・アクセス・エラーからの妥当なレベルの保護が実現される。これは、さらに、これらのいずれのレベルにおいても、新しいソフトウェアをインストールし、かつ信頼性高く動作させることを可能にする方法も可能にする。
【0166】
オブジェクト・データベース内の「インストーラ」視聴オブジェクトは、ソフトウェアのインストールの試みの状況を記録するために用いられる。これは、新しいソフトウェアをインストールする試みが進行中であるという表示を含めて、上述の3つのレベルの各々に対するパーティションの状態を記録する 915。この動作は、データベースのトランザクション特質により、信頼性が高い。
【0167】
図10に示されるように、3つのレベルのいずれにおいても新しいソフトウェア・イメージのインストールは、以下のように扱われる。新しいソフトウェア・イメージが、最初に、該当するバックアップ・パーティションにコピーされ 1001、ソフトウェアのインストールが進行中であるということが、データベースに表示される 1002。次に、パーティション・テーブル内のプライマリ・パーティションとバックアップ・パーティションとの表示が、交換され 1003、そして、システムが、再起動される 1004。最後に、制御が、初期アプリケーションに渡される。
【0168】
再度、図9Bを参照すると、このアプリケーションの最初のタスクは、インストーラ・オブジェクトを更新することである。各レベル921, 922を得るために、アプリケーションは、インストールが、処理されたか否かをチェックし 916, 917、そして、このレベルが、プライマリ・パーティションからロードオフされたことを確認する 918。そうであれば、このレベルのインストールは、成功しており、そして、インストーラ・オブジェクトが、更新されて、このレベルにおける成功が、示される 919。そうでなければ、このアプリケーションは、このレベルに対するバックアップ・パーティションを、プライマリ・パーティション上にコピーし、このレベルに対するインストーラ・オブジェクトに、失敗を示す 920。パーティションをコピーするということは、レベルに対して既に知られている真性のソフトウェアのバックアップコピーが、いつでも利用可能になっていることを保証するということである。
【0169】
本発明の好適な一実施例の場合、ソフトウェアのトップ・アプリケーション・レベルのインストールの終了処理を、アプリケーション環境の全ての部分が成功裡にロードされてしまうまで、遅延させて、それから開始することができる。これは、新しいソフトウェアに永久に切り替わる前に、アプリケーション環境の全ての部分が適切に働くことを補償する、さらなるレベルを提供する。
【0170】
動作状況オブジェクトに適用される方法
動作状況オブジェクトは、クライアント・システムの使用、性能、および、動作に関する情報が記録される、視聴オブジェクトの1つのクラスである。これらのオブジェクトは、中央サイトとの通信が確立されたときにはいつでも、中央サイトに収集される。
【0171】
以下の動作状況インディケータが、タイムスタンプととともに、後の収集のために記録される。
【0172】
1. 主として、リモート・コントロール・デバイスのボタンを押下する、視聴者のアクションが、記録される。各「ボタン押下」が、現在の時刻、および、現在の視聴者のコンテキスト(状況)のような、任意の他のコンテキスト情報と共に記録される。中央サイトでこのオブジェクトを後加工することによって、各アクションが取られたコンテキストを含めて、視聴者のアクションが、完全に追跡される。
【0173】
2. 番組の記録の開始または終了、または、視聴者の嗜好に基づいて記録する番組を選択する自動アクションが、記録される。さらに、獲得された番組の削除も、記録される。中央サイトにおけるこのオブジェクトの後加工によって、任意の時点において記憶装置に永続的な存在する番組を含めて、クライアント・システムが行った番組獲得アクションが、完全に追跡される。
【0174】
3. 受信、インストール、および、再起動後の結果を含むソフトウェア・インストール・アクションが、記録される。
【0175】
4. 電源の停止/再始動、デバイスの内部温度プロファイル、永続的な記憶装置アクセスエラー、メモリ・パリティ・エラー、および、プライマリ・パーティションの不具合を含むが、これらに限定されない種々の種類のハードウェアの異常。
【0176】
全てのアクションが、タイムスタンプとともに記録されるので、線形時間ベースの順序付けを用いて、クライアント・システムの動作を再現することが可能である。これは、アクションと動作を相関させるように順序付けられたイベントのリスト上で動作するマニュアル方法または自動方法の実現を可能にする。例えば、予期される自動アクションが、新しいソフトウェアを用いて再起動させた直後に、起動しなければ、この新しいソフトウェアは、欠陥を持っていると推論することができる。
【0177】
中央サイト・システムによるテレビジョン視聴オブジェクトの処理
テレビジョン視聴オブジェクトのソース
クライアント・システムは、テレビジョン視聴オブジェクトについて単一のソース(中央サイト)を持つ。中央サイト・オブジェクト・データベースは、以下のテレビジョン視聴オブジェクトについて多くのソースを持つ。
【0178】
1. 外部のソースから得られた番組ガイド情報は、処理されて、「番組」、「放映」、「チャンネル」、「ネットワーク」、および、他の関連するオブジェクトを示す、一貫性を持つ番組ガイド・オブジェクトの組み合わせを生成する。このオブジェクトの組み合わせは、従属性(「チャンネル」は「ネットワーク」に従属し、「放映」は「番組」に従属する)、および他の相関関係を持つ。完全な、一貫性を持つオブジェクトの組み合わせが準備されると、それは、アトミック・オペレーションとしてデータベースに加えられる。
【0179】
2. 新しいアプリケーションまたは既存のソフトウェアの改訂版を含む新しいソフトウェアは、最初、「ソフトウェア」視聴オブジェクトにまとめられる。上述したように、このソフトウェアは、動的にロードされるライブラリに従属するアプリケーションのように、相互従属性を持つことができる。これは、関与するソフトウェア・オブジェクトの相互関係に反映されなければならない。別の一例においては、各々が、異なるソフトウェア・オブジェクトを必要とする2つのタイプのクライアント・システムを使用することもできる。これらのソフトウェア・オブジェクトは、これらがターゲットにされるシステムのタイプを示す属性を持たなければならない。ひとたび、一貫性を持つオブジェクトの組み合わせが利用可能になれば、それは、アトミック・オペレーションとしてデータベースに加えられる。
【0180】
3. 各クライアント・システムは、その内部に埋め込まれたユニークな秘密キーを持つ。この秘密キーと組み合わされる公開キーが、クライアントタイプ、システムの記憶量などのような、クライアントに関する他の関係情報とともに、「クライアント」管理オブジェクトにロードされる。これらのオブジェクトは、必要なときに、認証オブジェクトを作成するために用いられる。
【0181】
4. 集合番組ガイド・オブジェクトが、同様に加えられる。しかしながら、この場合、集合オブジェクトは、データベース内に既に存在するプリミティブ番組ガイド・オブジェクトを参照しなければならない。さらに、テキスト記述、スクリーンベースのアイコン、および、他の情報属性のような他のオブジェクトが、集合オブジェクトに付加される。ひとたび、集合に対する一貫性を持つ付属オブジェクトの組み合わせが利用可能になれば、それは、アトミック・オペレーションとしてデータベースに加えられる。
【0182】
5. クライアント・システムから収集されたデータ。
【0183】
如何なる数の視聴オブジェクトのソースがあってもよいことは、間違いなく明らかであり、ここでの列挙は、単に最も基本的な可能なソースを示しているにすぎない。
【0184】
テレビジョン視聴オブジェクトでの動作
中央テレビジョン視聴オブジェクト・データベースでの多数の可能な動作がある。以下の例は、行なうことができる処理のタイプを示すことが目的であるが、起こり得る動作は、これらの例に限定されない。
【0185】
1. 種々の視聴オブジェクトを用いて、いくつかの関係する統計分析タスクを行なうことができる。
【0186】
1.1. 多数のアップロードされた動作状況オブジェクトを検査することによって、ハードウェアの信頼性の傾向と故障モードとの広範囲の分析を行うことが、可能である。例えば、クライアント・デバイスの内部温度と、期待されるMTBF(平均故障間隔)とを相関させることが可能である。
【0187】
1.2. 多数のアップロードされた視聴情報を検査することによって、クライアント・デバイスの種々の母集団に関する人口統計情報および心理学的情報を導出することが、可能である。例えば、クライアント・デバイスが存在する特定の郵便番号の範囲内で最も視聴されているTV番組を互いに相関させることが可能である。
【0188】
1.3. 同様に、多数の視聴情報オブジェクトを検査することによって、特定の番組に対する「格付け」値および「シェア」値を、既存の番組格付け方法と異なり、完全に自動化された方法で作成することが可能である。
【0189】
1.4. 視聴オブジェクト・データベースで行なうことができる統計分析タスクには、多くの他の例がある。これらの例は、本発明の適用性を制限するためのものではなく、一例として、行なうことのできる動作の範囲を例示するためのものである。
【0190】
2. 特別集合オブジェクトを、全ての利用可能な視聴オブジェクトのうちの1つ以上の属性に基づいて、自動的に作成することができる。
【0191】
このような作成は、通常、最初に、各視聴オブジェクトから、番組解説、俳優、監督などの関心が持たれる情報を抽出して、番組および属性の単純なテーブルを組み立てることによって行われる。次に、集合視聴オブジェクトが、1つ以上の属性を選び、その選ばれた属性が、なんらかの関係で組み合う番組を、その集合に、加えることによって作成される。その後、これらのオブジェクトは、恐らくは地理的な情報または他の情報に基づいて、伝送のために作成されるスライスに含められる。生成することができる、いくつかの集合の例は、以下のとおりである。
【0192】
2.1. 大都市における媒体リーグ・フットボール試合のようなイベントに基づく集合。この場合には、この都市のなか、または、周辺のクライアント・デバイスによって視聴可能な全ての番組が、収集され、そして、番組解説から、試合をするチーム名、コーチ名、主要選手名、スタジアム名などが探される。これに組み合う番組オブジェクトが、この集合に加えられ、この後、これは、この都市のなか、または、周辺の領域のクライアント・デバイスのみへの伝送のためにスライスされる。
【0193】
2.2. 多数の視聴者が共通に関心を持つ人に基づく集合。例えば、1つの集合を、これから1週間以内に放送される全ての「ジョン・ウェイン」の映画から組み立てることができる。
【0194】
2.3. 視聴行動に基づく集合を、作ることができる。この場合には、アップロードされた視聴オブジェクトが、視聴された番組のタイプ、視聴された実際の番組などのような、共通に関心のある要素を得るために走査される。例えば、この1週間に全てのクライアント・デバイス上で視聴された番組の「トップ10リスト」集合を、これらの番組の、続く1週間の放映を含めて作成することができる。
【0195】
2.4. 視聴者自身による選択に基づく集合。番組の視聴中に、恐らくは、4つの知覚属性(物語の筋、演技、演出、映画撮影技術)に基づいて、視聴者に、現在の番組に「投票する」機会を提示することが出来る。これは、後にアップロードされる視聴オブジェクトを作成する。この後、これらの投票が、くわしく調べられて、この番組の総体的な格付けが、決定され、それは、検討のために投票した人々に伝送される。
【0196】
2.5. 本発明の基本的な機能を、どのようにして、サービスオペレータが、クライアント・デバイスのユーザに、検討と選択とのために、関係のある番組の、あらかじめソートされ、あらかじめ選択されたグループを供給することを可能にすることについては、多くの他の例がある。これらの例は、本発明の適用性を制限するためのものではなく、一例として、行なうことのできる動作の範囲を例示するためのものである。
【0197】
3. 集合オブジェクトを作成するために、マニュアル方法を用いる(「オーサリング」と呼ばれることもあるプロセス)こともできる。この場合には、集合を生成する人は、その集合に明示的に加えるための番組を選ぶ。その後、それは、上述と同じように伝送される。
【0198】
集合番組オブジェクトが、さらに、嗜好の表現、または、他の情報の記録を可能にすることができることは、明らかである。これらの結果は、中央サイトにアップロードして、集合作成または統計分析などの次のラウンドの基礎を形成することができる。
【0199】
このフィードバック・ループは、サービス・プロバイダと、クライアント・デバイスを用いている全視聴者との間の回路を閉じる。このユニークで新規なアプローチは、サービス・プロバイダが、信頼性の高い、一貫性を持つサービス動作を維持すると同時に、個人個人が関心を持つテレビジョン番組の視聴を提示しかつプロモートするユニークで、人の心をつかむ形態を提供することによって、テレビジョン視聴の新しい形式を提供する。
【0200】
電子コンテンツ−所有権、売買、および保護
著作権法は、著作権で保護されたマテリアルが、印刷されている、または、なんらかの形態で明示されているオブジェクトを物理的に分散させることに、大いに、関与している。エンド・ユーザは、このマテリアルのコピーを購入する行為により、このマテリアルを使用するライセンス(認証)を取得する。コンテンツを電子的に分散させることも、これと同義であることは、しばしば認識されている。
【0201】
残念ながら、この見解には、重大な問題がある。コンテンツの電子コピーは、本質的に、自由になすことができ、このようなコピー行為を停止させることは、非常に困難である。本発明のシステムのような閉じたシステムのコピー作業は、このようなコピー作業を大いに制御することができるので、魅力的である。しかしながら、これは、次のような基本的な問題を提起する。クライアント・システムが、なんらかの理由で破壊されたとき、何が起こるか?この後、ユーザは、彼が支払ったコンテンツの公正な使用を断たれる。このユーザは、別の人に売ることができる物質的なオブジェクトの場合とは異なり、このようなコンテンツの二次取引に関与する機会も断たれる。
【0202】
公正な使用のコンセプトとは、このコンテンツを再生する、または、表示することができる如何なるパーソナルデバイスにおいても、購入者が、このようなデジタル・コンテンツを使用することが出来なければならないことを、意味する。ユーザが、このようにできる方法を提供することが、重要と思われる。
【0203】
上述の分散されたテレビジョンの視聴管理システムは、従来の電子分散システムが持つ多くの問題点を解決した、エンド・トゥ・エンド・システム・アーキテクチャおよび安全な分散管理システムである。これらの問題点のいくつかは、以下のとおりである。
【0204】
・ 従来の電子分散システムは、自動化されておらず、それによって、システムにコンテンツを導入するためには、または、システムからコンテンツを抜き取るためには、直接の対話を必要とする。
【0205】
・ 従来の電子分散システムは、信頼性に乏しい、即ち、長いダウンロードは、失敗するかもしれず、また、データの無欠性が、確立されていない、など。
【0206】
・ 従来の電子分散システムは、安全でない−認証方法またはデータ・安全性方法を、通常、伴っていない。
【0207】
・ システム内の保護されたコンテンツに対して、著作権による制限を実施することが、難しい。
【0208】
・ 保護されたコンテンツの販売および交換をサポートするための支払いシステムまたは商取引システムがない。
【0209】
再度、図1を参照すると、本発明は、認証された、信頼性の高いコンテンツをダウンロードする能力、および、追跡能力を備えている。上に言及したように、分散サーバ110からクライアント・システム101への視聴オブジェクトの伝送は、通常の放送伝送方法(衛星、ケーブル、アンテナ)、および、インターネットまたはイントラネットに直接、または、これらを渡って接続する接続ベースの伝送方法(電話モデム、イーサネット(登録商標)、ISDN、DSL、ケーブルなど)のような通信媒体を介して遂行される。
【0210】
分散サーバ110とクライアント・システム101との間のネットワーク接続を用いたときには、放送媒体を介する場合と同じシステム能力を、ブロードバンド・ネットワークを介して備えることができる。クライアント・システムは、記憶デバイス、例えば、デジタル・ビデオ・レコーダ(DVR)、を組み込んだセット・トップ・ボックス、コンピュータ、または、携帯デバイスを具備している。
【0211】
本発明のアーキテクチャは、電子的に分散されたデジタル・コンテンツを管理するためのシステムを提供する。本発明は、収益生成のための新たな機会を提供すると同時に、著作権所有者が、彼らの作品が公正に補償される必要性と、公正な使用の要求との両方を満たす。本発明は、また、デジタル・コンテンツの電子分散に基づく売買を管理するためのビジネス方法を促進する。
【0212】
テレビジョン視聴オブジェクトは、非常に多くの相異なるタイプのデータを含むことができる。例えば、上述のように、ソフトウェア視聴オブジェクトには、新しいアプリケーション、または、既存のソフトウェアの改訂版を含むソフトウェアが、含まれている。著作権で保護されるマテリアル(例えば、絵、ビデオ、音楽、e本など)と考えられるような他の電子コンテンツも、テレビジョン視聴オブジェクトに含ませることができる。テレビジョン視聴オブジェクトは、また、ウェブ指向のURLのような、デジタル・コンテンツへの「ポインタ」を含んでいてもよい。この場合、これらのポインタは、クライアント・デバイスによって、デジタル・コンテンツを個々に得るために用いられる。
【0213】
図11を参照すると、例えば、音楽を、本発明のアーキテクチャを介してユーザに分散させることができる。ユーザは、クライアント・システム1104のインターフェイスを介して、または、ウェブ・サイト1105を介して、歌の購入希望を登録する。利用可能な歌のリストが、クライアント・システムまたはウェブ・サイトを介して、ユーザに表示される。本発明の中央サーバ1102が、ライセンス・データベース1106に、歌の購入をログする。この購入は、電話通信サーバ1102へのインターネット接続を介して直接、または、クライアント・システム1104が、電話通信サーバ1102を介して、本サービスとコンタクトをとるときにバックホールされるログを介して(即ち、視聴オブジェクトが、クライアント・システムから収集されるときに)、発生させることができる。この購入の商取引は、本発明の中央サーバ1102から、クリアリング・ハウス能力を備えた終端商取引サービス1101に伝送される。
【0214】
この歌の電子コピーは、クライアント・システム1104の外部から隠されたエリアに、既に常駐させておくこともできるし、保護された放送チャンネル1103により反復させることもできるし、中央データベース1102において、スライス内で送り出される準備ができているようにすることもできるし、または、インターネット上の安全なサーバ1107上に常駐させておくこともできる。保護された放送チャンネル1103が、用いられる場合には、このコンテンツのスライス(単数または複数の)が、このスライスが放送信号上に変調される局テレビジョン・トランスミッタが共存している機器上にコピーされる。これらの放送指向および同様の放送指向の場合には、スライスは、「反復」される、即ち、このスライスを記述するデータが、新しいスライスが伝送のために供給されるまで、絶えず反復される。これは、エンド・ユーザに、信頼性の高いダウンロードの出現を供給するために必要である。
【0215】
図12を参照すると、この歌は、これが、クライアント・システム1104に常駐し、例えば、特別の音楽プレーリスト1201で利用可能になると、すぐさま、ユーザに「分散」される。このユーザは、クライアント・システムのユーザ・インターフェイスを介して、コンテンツにアクセスする。クライアント・システムは、リモート・コントロールまたはキーボードを介した、単純化されたユーザ・インターフェイスを介して、本発明を、使い易くする。ユーザは、望むように、自分のクライアント・システムから、ライセンスされたコンテンツを、自由に再生することができ、また、それをどのように再生するか(例えば、休止、高速順送り、逆送りなど)を、自由に制御することができる。
【0216】
この商取引された購入は、歌のライセンスに対するものであって、歌自体に対するものではない。本発明のオペレータは、商取引の取り扱いに対する手数料として、購入価格のわずかの部分を受け取ることができる。通常、本発明のオペレータは、分散の費用を負担しない。ユーザは、TVの定期視聴契約またはインターネット・アクセス・サービスによりコストを負担する。
【0217】
全てのライセンスが、追跡されているので、万一、クライアント・システムが、故障しても、本発明のサービスは、どの歌が、ライセンスされているかをライセンス・データベースから検証することができる。この結果、ユーザは、自分の新しいクライアント・システム上で、自分にライセンスされている歌の新しいコピーを抜き出すことができる。このプロセスは、マニュアルでも、本発明のサービスの自動機能としても、行わせることができる。クライアント・システムは、また、同様に、適切なコンテンツが、クライアント・システムに存在しているかを照合して、必要に応じて、コンテンツを削除したり、加えたりする。
【0218】
ライセンスは、今や、価値の高い商品を提示する。したがって、「歌の市場」が、生成される。本発明のサービスは、所有者が、種々の歌に対するライセンスを売りに出す株式取引に似た交換能力を備えている。このサービスは、わずかな商取引手数料、または、なんらかの他の報酬を規定することができる。
【0219】
図13を参照すると、売り手1303は、歌に対する自分のライセンスを、中央サーバ1301上に売りに出すことができる。ユーザは、自分のクライアント・システムまたはウェブ・サイトを介して、売り出されているライセンスのリストを見ることができる。歌に対する売り手1303のライセンスに関心を持った買い手1304は、そのライセンスに入札する(値をつける)。この入札は、売り手と買い手のそれぞれのクライアント・システムを介して、または、ウェブ・サイトを介して、行うことができる。価格が合意されたとき、本発明の中央サーバ1301は、ライセンス・データベース1302内にあるライセンス所有権を、新しい所有者に移し換え、オプションとして、その購入を終端商取引サーバ1305に通知する。中央サーバ1301は、このコンテンツを削除するように、売り手のクライアント・システム1303に命令する。この削除命令は、インターネット接続を介して、本発明のサービスに対するクライアント・システム1303の周期的なコールバックの間のコマンドとしてか、または、衛星のような放送媒体を介して送られるイベントとしてかのいずれかで起こすことができる。違法コピーが生成される可能性を回避するために、恐らくは、売り手のコピーが削除されてしまったことが確認された後で、買い手のクライアント・システム1304が、上述のように、この歌のコピーを受信する。
【0220】
図14を参照すると、本発明は、株式公募とほとんど同じように、歌のパブリッシャ1401(コンテンツ・オリジネータ)が、クライアント・システム1405への市場に、新マテリアルを売り出すことを可能にする。ユーザは、上述のように、自分のクライアント・システム1405を介して、または、ウェブ・サイト1406を介して、その新マテリアルを購入する。中央サーバ1402は、クリアリング・ハウス能力を備えた終端商取引サービス1407に、この購入を伝送する。この購入は、中央サーバ1402によって、ライセンス・データベース1403にログされる。
【0221】
需要および人気が、市場に売り出されるコピーの数を決める。アーティストの新しい歌を早く高値で売るために、限定数のコピーを売り出すことは、考えられる。企業が自社株を買い戻すのと同様に、パブリッシャは、安価なコピーを買い占めることによって、歌の値を増加させることができるかもしれない。
【0222】
特に歌に限定して、記述してきたが、当業者であれば、他の如何なる電子コンテンツ(例えば、ビデオ、e本、絵など)でも、を、本発明により管理することができることを容易に認識するであろう。
【0223】
公正な使用のサポート
図15を参照して、本発明のクライアント・システム1503を、所有者の媒体資産のための「本拠地」とみなしてみよう。所有者が、自分の携帯型のMP3プレーヤ1504に、歌のコピーを得たい場合、彼には、いくつかの方法がある。しかしながら、最初、彼は、クライアント・システム1503を登録したのと同じように、本発明のサービス1501に、MP3プレーヤ1504の所有権を登録する必要がある。
【0224】
各ユーザ・デバイス1504に対して、なんらかの形式で安全な認証能力が、与えられていると仮定しよう。そうすると、本発明が、どのように働くかを理解することは、簡単なことである。所有者は、デバイス1504上への歌のコピーを要求し、本発明のサービス1501は、ライセンス・データベース1502を用いて、デバイス1504が、その所有者に登録されていること、および、その所有者が、その歌に対するライセンスを持っていることをチェックする。ひとたび、この情報が実証されれば、本発明のサービス1501は、ダウンロードによる場合と同じように、この歌を、安全なサーバ1505から、デバイス1504上で利用可能にする。
【0225】
これに代えて、このチェッキングは、所有者のクライアント・システム1503内のソフトウェアによって得られる認証により、所有者の本拠地1503の中でローカルに扱われるかもしれない。そして、所有者のクライアント・システム1503が、デバイス1504にダウンロードを行う。このタイプのシステムでは、クライアント・システムおよびデバイスに、如何なるダウンロードにも先立って、本発明のサービスが、互いに他方が真正であることを通知しなければならないであろう。
【0226】
所有者は、2つ以上のクライアント・システム1503, 1506を所有していてもよい。所有者は、本発明のサービス1501に、これらの自分のクライアント・システムを登録する。サービス1501は、各クライアント・システム1503, 1506に、その所有者によって所有されている互いに他方のクライアント・システムに対する認証情報を供給する。これは、クライアント・システム1503, 1506が、サービス1501の必要なしに、互いに認証することを可能にする。
【0227】
所有者が、1つのクライアント・システム1503から、もう1つのクライアント・システム1506にコンテンツを転送したい場合、彼は、クライアント・システム1503, 1506のうちの1つから、その転送を始めるだけでよい。クライアント・システム1503, 1506は、サービス1501から与えられた認証情報を用いて、互いを認証し、次に、これら自身の間で、コンテンツのコピー作業を始める。所有者が、サービス1501に登録された複数のクライアント・システムを持つことができることは、明らかである。所有者は、自分のクライアント・システムのうちの選択されたクライアント・システムの間で、または、これらのすべての間で、コンテンツを転送することができる。このアプローチは、所有者が、1つの家のなかの複数の部屋で、または、異なる住宅で、コンテンツを再生することを可能にする。
【0228】
本発明は、本明細書において、好適な実施例を参照して記述されているが、当業者であれば、本発明の精神および範囲から逸脱することなく、他の応用で、本明細書において述べられた応用を置き換えることができることを容易に認識するであろう。したがって、本発明は、以下に含まれる請求項によってしか制限されるべきではない。
【0229】
関連出願の相互参照
本出願は、米国特許出願第09/422,139号(1999年10月20日受理)の一部継続出願であり、請求項は、米国仮特許出願第60/347,181号(2002年1月8日出願)および米国仮特許出願第60/434,767号(2002年12月18日出願)の利益を享受する。
【符号の説明】
【0230】
100: 中央サイト
101, 1104, 1405, 1503, 1506: クライアント・システム
102: スライシング
103: 伝送
104: 収集
105: 複製
106: オブジェクト(テレビジョン視聴オブジェクト)
107: 分析
108: テレビジョン放送
109: 接続ベースの伝送(電話モデム、ケーブルモデム)
110: 分散サーバ
111: 電話通信サーバ
601: 空間番組予約
602: 入力番組予約
1101, 1305, 1407: 商取引サーバ
1106, 1302, 1403, 1502: ライセンス・データベース
1504: ユーザ・デバイス
【技術分野】
【0001】
本発明は、コンピュータ環境における電子データパッケージの分散および交換に関する。より特定的には、本発明は、コンピュータ環境における、電子コンテンツの所有権並びに当該電子コンテンツの分散および交換の確立に関する。
【背景技術】
【0002】
コンピュータ・メインフレーム・システムまたはワールド・ワイド・ウェブのような、純粋にクライアント−サーバに基づいたシステムと、原子爆弾の爆発をモデル化する、または、暗号キーを解読するというような、複雑なコンピュータ問題を解決するために用いられるNetworks of Workstations (NOWS)のような、分散された純粋なシステムとの間には、自動化されたデータ処理システムの設計に関して、緊張状態が、存在する。
【0003】
クライアント−サーバ・システムは、サーバとクライアントとの間で、これらの責務が明確に分離されているので、広く使用されている。サーバは、それが、多数のクライアントのために、データの計算および記憶を行うので、しばしば、コスト高となり、また、特別に管理される。各クライアントは、そのシステムのユーザと対話するために必要とされるローカル・リソースしか持たないので、安価である。妥当な性能のネットワークが、サーバとクライアントとを接続するために想定される。これらのシステムの経済的なモデルは、クライアント・システムを展開する上での原価の増大を低くする集中化された管理・制御モデルである。
【0004】
しかしながら、このモデルは、考慮しなければならない相当の費用を必要とする。例えば、新しいクライアント・システムを加える場合の原価の増大が、極めて高いかもしれない。ネットワーク容量を追加することが、可能でなければならず、記憶装置、メモリ、および、コンピューティング・サイクルを含めて、そのクライアントをサポートするために、十分なコンピューティング・リソースが、利用可能でなければならず、そして、追加の操作に関わるオーバヘッドが、これらのリソースが追加されるために、各クライアントに対して必要になる。中央サーバが、より大きく、より複雑になるに連れて、これらの信頼性は、ずっと低くなる。最後に、サーバがシステム障害を起こすと、全てのクライアントが、サービスを受けられなくなる。
【0005】
分散されたシステムは、そのシステムのリソースが、各クライアントに分散され、これにより、クライアントの内部に、より複雑な機能を可能にすることができるので、広く使用されている。プログラムやデータへのアクセスは、これらが、クライアントにより所有されているので、ネットワーク自体にかかる負荷が軽減されるため、より高速である。ノードの障害は、そのノードにしか影響を与えないので、システムの信頼性は、より高い。多くの計算タスクが、独立して計算することができる部分に、容易に分割され、そして、これらの部分は、関与するシステム間に、安価に分散される。このことは、ネットワークの帯域幅要件も軽減させ、また、障害を持ったノードによる影響も限定される。
【0006】
他方、分散されたシステムは、管理するのが、より複雑であり、また、ハードウェアまたはソフトウェアの障害の原因を突き止めてそれを解決するのが、より困難であろう。
【0007】
テレビジョンの視聴は、クライアント−サーバ・システムとしてモデル化することができるが、これは、サーバからクライアントへのネットワークパスが、無限速度の意図・目的に対するものであり、また、クライアントからサーバへのパスが、ばらばらで、かつ、管理されないものである。これは、テレビジョン放送特性の当然の直接的な結果である。視聴者を新たに加える費用は、0であり、また、分散されたサービスは、他の全ての視聴者に分散されたサービスと同じである。
【0008】
テレビジョン番組を、インターネットのようなコンピュータ・ネットワークにより、または、ネットワークとして動作するローカル・ケーブル・テレビジョン設備により、配信させるため、多くの努力が、なされて来たし、また引き続きなされている。コンピュータ・ネットワークのポイント・トゥ・ポイント特性は、リソースを追加するための負担は、追加しようとする各視聴者に課せられるので、これらの努力は、扱いにくく、コスト高となる。クライアントのセットトップ・デバイスを通るビデオストリーミングの帯域幅を、視聴者が全て制御する、完全対話型のテレビジョンシステムは、さらにますます非経済的であることがわかっている。何故ならば、各クライアントに対するサーバリソースの専用化は、利益を発生させかつ管理することができるシステムのサイズを、直接、制限してしまうからである。
【0009】
しかしながら、テレビジョンの視聴者は、テレビジョンの視聴を選択および制御することに強い関心を示す。適切に分散されたデータベース管理システムが、本出願人が所有権を有する特許文献1に記述されている。以下に記述するように、それは、上述のアプローチを用いて多くの問題に取り組んでいる。分散されたデータベース管理システムは、クライアントが、そのローカル・データベースにデータを維持することを容易にし、かつ、そのローカル・データベースを、メインサーバ・データベースに同期させることを可能にする。これは、サーバと、そのクライアントとの間の安全なデータ伝送リンクも備えている。
【0010】
今日、多くの種類のコンテンツの電子分散への関心が、増大している。電子分散は、転送媒体としてインターネットのようなネットワークを用いて、1つのデジタル記憶収納庫から他の収納庫へコンテンツをコピーすることも含む。
【先行技術文献】
【特許文献】
【0011】
【特許文献1】米国特許第6,728,713号明細書
【特許文献2】米国特許第6,233,389号明細書
【特許文献3】米国特許第6,327,418号明細書
【特許文献4】米国特許第6,385,739号明細書
【特許文献5】米国特許第5,758,257号明細書
【非特許文献】
【0012】
【非特許文献1】「Cにおけるプロトコル、アルゴリズム、および、ソースコード(Protocols Algorithms, and Source Code in C)」、応用暗号技術(Applied Cryptography)、Bruce Schneier, John Wiley and Sons, 1995
【発明の概要】
【発明が解決しようとする課題】
【0013】
California州、Redwood CityのNapster社のファイル共有システム、および、(最初は、California州、San FranciscoのNullsoft社によって開発された)Gnutellaピア・トゥ・ピア・ファイル共有システムは、電子分散システムの原形的な例である。Napster社のクライアント・システムは、他のクライアント・システムと接触を持つためには、サーバに接続されていなければならない。他方、Gnutella社のものは、非中央集中化ピア・トゥ・ピア・ネットワーク・アプローチで、ここでは、各クライアントが、他のクライアントに直接接続され、それによって、全てのクライアントが互いにつなぎ合って、ネットワークを形成している。これらのタイプの分散システムは、以下のいくつかの問題点を有している。
・ これらは、自動化されていないので、このシステムにコンテンツを導入するためには、または、このシステムからコンテンツを抜き出すためには、直接対話する必要がある。
・ これらは信頼性に乏しい、即ち、長時間のダウンロードは、失敗するかもしれないし、データの完全性は、確立されていない、等 。
・ これらは、安全でない。認証(認証:情報にアクセスする資格の有無を認証する作業)方法も、データの安全方法も、典型的には、考慮されていない。
・ システム内の保護されたコンテンツに対して、著作権による制限を実施することが、難しい。
・ 保護されているコンテンツの販売および交換をサポートするための支払いシステムまたは商取引システムがない。
【0014】
追跡能力を持つ、信頼性の高いコンテンツ・ダウンロードを備えた電子コンテンツの分散および交換システムを提供することは、有益である。さらに、認証された、安全なコンテンツ分散管理システムを備えた電子コンテンツの分散および交換システムを提供することは、有益である。
【課題を解決するための手段】
【0015】
本発明は、電子コンテンツの分散および交換システムを提供する。このシステムは、クライアント・システムに、追跡能力を持つ、信頼性の高い電子コンテンツ・ダウンロードを提供する。さらに、本発明は、サーバとクライアントとの間の、認証された、安全なコンテンツ分散を確実にするシステムを提供する。
【0016】
本出願人が所有権を持つ米国特許第6,233,389号明細書に代表されるクライアント・デバイスは、本出願人が所有権を持つ米国特許第6,327,418号明細書に代表されるように、大量のビデオコンテンツを記憶するような、典型的には、中央ビデオ・サーバと関連した機能と、このコンテンツを要求に応じて選んで、再生する能力と、コンテンツの配送を完全に「VCR的に」制御することとを、提供する。
【0017】
本発明は、認証された、信頼性の高いコンテンツのダウンロード能力およびコンテンツの追跡能力を備えている。コンテンツは、本発明のアーキテクチャを介してユーザに分散される。ユーザは、クライアント・システム上のインターフェイスを介して、または、ウェブ・サイトを介して、コンテンツの購入を登録する。この商取引された購入は、コンテンツのライセンスに対するものであって、コンテンツ自体に対するものではない。利用可能なコンテンツのリストが、クライアント・システムまたはウェブ・サイトにより、ユーザに表示される。
【0018】
本発明の中央サーバが、コンテンツの購入を、ライセンス・データベースにログする。この購入は、電話通信サーバへのインターネット接続を介して直接に、または、クライアント・システムが、電話通信サーバを介して、本サービスとコンタクトするときに、バックホールされる(即ち、視聴オブジェクトが、クライアント・システムから収集されるときの)ログを介して、発生する。この購入の商取引は、本発明の中央サーバから、クリアリング・ハウス(取引所)の能力を備えた終端商取引サービスに伝送される。
【0019】
このコンテンツの電子コピーは、既に、クライアント・システムの隠されたエリアに、存在している場合もあるし、保護された放送チャンネルで反復されている(carousel)場合もあるし、中央データベースにおいてスライスで送出可能の状態に有る場合もあるし、または、インターネット上の安全なサーバ上に存在している場合がある。
【0020】
本発明は、データベース・オブジェクトを含むサーバ上に存在する中央データベースを提供する。複製されるオブジェクトは、スライスと呼ばれる分散パッケージに、集合される。スライスは、地理的な領域のような特定のドメイン内のクライアント、または、衛星トランスミッタの電波受信可能域下のクライアントに関係する、中央データベースの下位集合である。オブジェクトには、他のタイプのデータ内に、デジタル・コンテンツのアイテム、および/または、デジタル・コンテンツのアイテムをダウンロードすることができるネットワーク位置が、含まれる。
【0021】
デジタル・テレビジョン信号の非公開データ・チャンネルから、アナログ・テレビジョン信号の垂直帰線消去期間(VBI)上へのデータの変調により、モデムを用いたサーバとの直接接続を介した、サーバとのインターネット接続までの、標準的な現存する技術を用いて、スライスは、クライアント・デバイスに伝送され、クライアント・デバイスはその情報の一部を選んで、ローカルに保存する。
【0022】
放送チャンネルが保護されている場合には、コンテンツのスライス(単数または複数)は、スライスが放送信号上に変調される、局テレビジョン・トランスミッタと共存する機器上にコピーされる。これらのおよび同様の放送に基づく場合には、スライスは、「反復」される、即ち、スライスを記述するデータが、新しいスライスが伝送のために供給されてくるまで、絶えず反復される。
【0023】
ユーザは、クライアント・システムのユーザ・インターフェイスを介して、デジタル・コンテンツのアイテムにアクセスする。ユーザは、望むように、自分のクライアント・システムからライセンスされたコンテンツを、自由に再生することができ、また、それをどのように再生するか(例えば、休止、高速順送り、逆送りなど)については、自由に制御することができる。
【0024】
全てのライセンスが追跡されているので、万一、クライアント・システムが、故障しても、本発明のサービスは、どのコンテンツが、ライセンスされているかをライセンス・データベースから検証することができる。この結果、ユーザは、自分の新たなクライアント・システム上に、自分にライセンスされているコンテンツの新しいコピーを回復させることができる。このプロセスは、マニュアルで行うことも、本発明の自動サービスで行わせることもできる。クライアント・システムは、また、適切なコンテンツが、クライアント・システムに存在しているかを検証し、必要に応じて、コンテンツを削除したり、加えたりすることもできる。
【0025】
本発明のサービスは、権利所有者が、デジタル・コンテンツの種々のアイテムに対するライセンスを提供する株式取引に似た交換能力を提供する。
【0026】
売り手は、デジタル・コンテンツの特定のアイテムに対する自分のライセンス(単数または複数の)を、販売のために中央サーバに置くことができる。ユーザは、自分のクライアント・システムまたはウェブ・サイトを介して、売り出されているライセンスのリストを見ることができる。特定のコンテンツに対する売り手のライセンスに関心を持った買い手は、そのライセンスに入札する(値をつける)。この入札は、売り手と買い手とのそれぞれのクライアント・システムを介して、または、ウェブ・サイトを介して行うことができる。価格について合意がなされると、本発明の中央サーバは、ライセンス・データベース中にあるライセンス所有権を、新しい所有者に移換する。中央サーバは、売り手のクライアント・システムにそのコンテンツを削除するよう命令する。買い手のクライアント・システムは、そのコンテンツのコピーを受信する。
【0027】
本発明は、公の株式提供とほとんど同じように、コンテンツ・オリジネータが、クライアント・システムへの市場に、新マテリアルを売り出すことを可能にする。ユーザは、自分のクライアント・システムを介して、または、ウェブ・サイトを介して、その新マテリアルを購入する。
【0028】
本発明のクライアント・システムは、所有者のコンテンツ資産に対する本拠地として機能する。所有者が、自分の携帯デバイスに、特定のコンテンツのコピーを得たい場合、彼は、本発明のサービスに、その携帯デバイスの所有権を登録する必要がある。所有者は、携帯デバイスへのデジタル・コンテンツの特定のアイテムのコピーを要求し、本発明のサービスは、そのデバイスが、その所有者に登録されていること、および、その所有者が、そのコンテンツに対するライセンスを持っていることをチェックする。ひとたび、その情報が実証されれば、本発明のサービスは、(オプションとして、その所有者のクライアント・システムからのダウンロードにより)、そのコンテンツをその携帯デバイスで利用可能にする。
【0029】
所有者は、2つ以上のクライアント・システムを所有していてもよい。所有者は、その所有者が所有する他のクライアント・システムに対する認証情報を、各クライアント・システムに供給する本発明のサービスに、自分のクライアント・システムを登録する。これは、このサービスの必要なしに、クライアント・システムが、互いに認証することを可能にする。
【0030】
所有者が、1つのクライアント・システムから、他のクライアント・システムにコンテンツを転送したいとき、彼は、クライアント・システムの1つで、その転送を始めるだけでよい。クライアント・システムは、本サービスから与えられた認証情報を用いて、互いを認証し、次に、これら自身の間で、コンテンツのコピーを始める。
【0031】
本発明の他の態様および利点が、一例として、本発明の原理を例示する、添付の図面と組み合わせた以下の詳細な記述から明らかになる。
【図面の簡単な説明】
【0032】
【図1】本発明による分散されたテレビジョンの視聴管理システムの好適な一実施例の線図的なブロック図である。
【図2】プログラムに基づいたアクセスのためのコンピュータ記憶装置内の視聴オブジェクト構造の線図的なブロック図である。
【図3】視聴オブジェクトのスキーマが、プログラムに基づいたアクセスのために、どのように、コンピュータ記憶装置内に組み立てられるかを示す線図的なブロック図である。
【図4】番組に関する情報を記述する視聴オブジェクト間の関係のグラフの一例を示す線図的なブロック図である。
【図5】関心のある番組を決定するために視聴者の嗜好を処理するときに作成される関係のグラフの一例を示す線図的なブロック図である。
【図6】記録するための入力および記憶空間の番組予約を示す線図的なブロック図である。
【図7】図6に描かれたメカニズムを用いて記録を番組予約するステップを示すフローチャートである。
【図8】ブートストラップシステム構成を示す、本発明の好適な一実施例の線図的なブロック図である。
【図9A】ブートストラップ・コンポーネントの決定フローチャートである。
【図9B】ブートストラップ・コンポーネントの決定フローチャートである。
【図10】ソフトウェアインストール手続きの決定フローチャートである。
【図11】コンテンツ・ライセンスの商取引を管理して、コンテンツを分散させる本発明の好適な一実施例の線図的なブロック図である。
【図12】クライアント・システム上の歌プレーリスト・ユーザ・インターフェイスのスクリーンショットのダイアグラムである。
【図13】売り手と買い手との間のライセンスの移し換えを行なう本発明の好適な一実施例の線図的なブロック図である。
【図14】パブリッシャが、ユーザが購入する市場にライセンスを売りに出すことを可能にする本発明の好適な一実施例の線図的なブロック図である。
【図15】ユーザ・デバイスが、ライセンス・コンテンツのコピーを受信するために登録される本発明の好適な一実施例の線図的なブロック図である。
【発明を実施するための形態】
【0033】
本発明は、具体的には、電子コンテンツの分散および交換システムにおいて実施される。本発明による一システムは、クライアント・システムに、追跡能力を備えた信頼性の高い電子コンテンツ・ダウンロードを提供する。さらに、本発明は、サーバとクライアントとの間の、認証された、安全なコンテンツ分散を確実にするシステムを提供する。
【0034】
本発明は、テレビジョンの視聴情報の伝送および収集システムにおいて具体化される。このシステムは、テレビジョン番組を選択しかつそれを自動的にタイムシフトさせることができる個々の視聴者の能力を改善する一方、サービス・プロバイダには、視聴体験を向上させかつそれを方向付ける機会を提供する。本発明は、完全に分散されたシステムを記載している。このシステムにおいては、個々の視聴者に属する計算は、ローカル・クライアント・デバイスの内部で、その視聴者に対して個人的に行われる一方、視聴習慣、嗜好、または、購入に関する情報の信頼性の高い収集および伝達が提供される。
【0035】
テレビジョンの視聴情報のデータベース
図1は、本発明の線図的な大要を示す。本発明の中核は、中央サイト100におけるコンピュータ・システムと、極めて多数のクライアント・コンピューティング・システム101との間に、テレビジョンの視聴情報の分散データベースを維持するための方法および装置である。データベースの中央コピーの適切な下位集合を抽出するプロセスは、「スライシング」102と呼ばれ、結果として生じる「スライス」をクライアントに配送するプロセスは、「伝送」103と呼ばれ、視聴者に関する、または、視聴者のために収集された情報を中央サイトに配送するプロセスは、「収集」104と呼ばれ、収集された情報を処理して、新しいテレビジョン視聴オブジェクトまたはレポートを作成するプロセスは、「分析」107と呼ばれる。全ての場合において、1つのデータベースからのオブジェクトを、他のデータベースで再成する行為は、「複製」105と呼ばれる。配送される、または、収集されるデータ・アイテムは、「オブジェクト」106と称され、また、中央データベース、および、クライアント・デバイス内に含まれている、中央データベースの各複製された下位集合は、「オブジェクトベース」のデータベースである。このデータベース内のオブジェクトは、これらの意図されている用途を強調するために、「テレビジョン視聴オブジェクト」、「視聴オブジェクト」、または、単純に「オブジェクト」と、しばしば、称される。しかしながら、当業者であれば、オブジェクトが、如何なるタイプのデータであってもよいことは、容易に認識するであろう。
【0036】
視聴オブジェクトのデータベースは、本明細書に記述される複製活動とは、独立にまたは並行して、それが含んでいるオブジェクトに対する、一貫性を持つ要約ソフトウェア・アクセス・モデル(abstract software access model)を備えている。このインターフェイスを用いることによって、その下にある活動を気にすることなく、また、データベース中のオブジェクトおよびこれらの間の関係の一貫性を持ちかつ信頼性の高いビューが、常に維持されることを保証しながら、アプリケーションは、データベースにオブジェクトを、生成し、破壊し、読み出し、書き込み、そうでなければ、マニピュレートすることができる。
【0037】
基本的テレビジョン視聴オブジェクトの原理
図2を参照すると、テレビジョン視聴オブジェクトは、「属性」200の収合として組み立てられている。各属性は、タイプ201(例えば、整数、記号列、または、ブーリアン)、および、値202を持っている。属性タイプは、全て、データベースによりサポートされている基本タイプの固定されたプールから引き出される。
【0038】
オブジェクトの属性は、2つのグループ:その視聴オブジェクトの生成者または維持者によって供給される「基本」属性と、データベース内のメカニズムによって自動的に生成されかつ維持される「派生」属性とに区分される。基本属性は、オブジェクト自体の特性を記述する。派生属性は、オブジェクト間の関係を記述する。基本属性は、データベース間で複製されるが、派生属性は、複製されない。
【0039】
図3を参照すると、本発明によって定義される基本となるオブジェクト・タイプの小さな組み合わせがある。各オブジェクト・タイプは、「スキーマ」と呼ばれる、関連する属性300の特定の組み合わせとして表わされる。スキーマは、属性タイプ302、および、属性名303を含む、各属性タイプに対するテンプレート301を定める。実際のテレビジョン視聴オブジェクトは、そのオブジェクトに対してリソースを割り付け、そして、スキーマによって定められる、その属性に対して値を割り当てることによって生成される。例えば、「番組」スキーマは、その番組の製作者、監督、または、俳優、オンスクリーン・アイコン、番組コンテンツの複数行記述、その番組の編集者格付け等のような属性を含むことができる。物理的な番組オブジェクトは、それに対して記憶領域を割り付けることによって、そして、その属性を、現在問題とされているデータで満たすことによって、生成される。
【0040】
スキーマ・タイプと呼ばれる、全てのデータベースに対して、あらかじめ定められた1つの特別のオブジェクト・タイプがある。データベースによりサポートされている各スキーマは、スキーマ・オブジェクトによって表わされる。これは、アプリケーションが、データベースに「内観」を行なうこと、即ち、どのオブジェクト・タイプがサポートされているかということと、これらのスキーマとを、動的に見出すことを可能にする。これは、アプリケーション・ソフトウェアを非常に単純にし、スキーマが、変えられたか、加えられたか、または、削除されたときに、アプリケーション・ソフトウェアを変えることを不必要とする。スキーマ・オブジェクトは、本発明の方法の下では、他のすべての視聴オブジェクトと同じに扱われる。
【0041】
再度、図2を参照すると、データベース中の各オブジェクトには、そのデータベース内でユニークでなければならない「オブジェクトID」 203が割り当てられる。このオブジェクトIDは、各オブジェクトIDがユニークである限り、多くの形をとることができる。好適な一実施例の場合、処理速度と、許されるユニーク・オブジェクトの数との間の有用なトレードオフを与えるので、32ビット整数が、オブジェクトIDに用いられる。各オブジェクトには、また、現在のオブジェクトを参照している、そのデータベース中の他のオブジェクトの数を与える整数である「参照カウント」204が、含まれている。参照カウントが0であるオブジェクトは、データベース内に存続しないであろう(以下を参照のこと)。
【0042】
視聴オブジェクトの1つの特定のタイプは、「ディレクトリ」オブジェクトである。ディレクトリ・オブジェクトは、オブジェクトIDのリスト、および、そのオブジェクトに対して関連する簡単な名前を維持する。ディレクトリ・オブジェクトは、そのリストの一部として、他のディレクトリ・オブジェクトを含むことができ、また、「ルート」ディレクトリと呼ばれる、単一の際立ったオブジェクトがある。ルート・ディレクトリから開始して、関心のあるオブジェクトが見つかるまで継続してトラバースされるディレクトリ・オブジェクトの連続順は、そのオブジェクトに対する「パス」と呼ばれる。したがって、パスは、データベース内に存在する全てのディレクトリ・オブジェクトの間に生成される階層的名前空間内の特定の位置を示す。オブジェクトは、複数のパスによって参照することができる。これは、1つのオブジェクトが、多くの名前を持つことができることを意味する。視聴オブジェクトの参照カウントは、それを参照する各ディレクトリに対して、1だけインクリメントされる。
【0043】
データベースの一貫性および正確性の維持のための方法
本発明の好適な一実施例の特徴の1つは、各データベースの複製が、常に、内部的に一貫していること、および、この一貫性が、他のデータベースへの参照なしに、または、中央サイトへの接続の必要なしに、自動的に維持されることを確実にしていることである。伝送動作または収集動作が、適時に、または、如何なる保証された周期で、起こるという保証はない。例えば、クライアント・システムは、何ヶ月間も停止しているかもしれない。システムへの伝送が、最終的に可能となったときには、中央データベースおよびクライアント・データベースを完全に同期させるために必要なオブジェクトの全てを伝送することが不可能であったとしても、オブジェクトの複製は、常に、サーバデータベースの一貫性を持つ下位集合という結果にならなければならない。
【0044】
さらにより重大ことは、データベースが、使用されているまたは更新されている間に、安定した動作環境が、保証されない場合があることである。例えば、デバイスへの電力が、停止するかもしれない。本発明は、全てのデータベースの更新を、「トランザクション」として扱う。これは、全トランザクションが完了するか、または、そのいずれもが完了しないということを意味する。選ばれた特定の技術は、「2段コミット」と呼ばれる。ここでは、トランザクションの全ての要素が、検査されかつログされ、それに続いて、実際の更新が、行われる。当業者は、トランザクションが、個々のログに対して実施される標準的なジャーナリング技術と、ログを用いて、障害が生じたときに進行中だった部分の更新を繰り返すロール・フォワード技術との組み合わせが、この目的に十分であることを認識するであろう。
【0045】
全てのオブジェクトに必要とされる1つの派生属性は、そのオブジェクトの各変化とともに変化する「バージョン」である。バージョン属性は、単調に増加する整数として表わすこともできるし、または、バージョンの単調な順序付けを生成する他の表現として表わすこともできる。複製することができる各オブジェクトに対するスキーマは、このオブジェクトが複製されたオブジェクトのバージョンを示す「ソース・バージョン」と呼ばれる属性を含む。
【0046】
視聴オブジェクトの伝送は、全てのクライアントが、そのオブジェクトを受信することを保証しない。例えば、オブジェクトが放送されている間に、太陽黒点のような外的要因が、伝送シーケンスの一部を破壊するかもしれない。これらの問題を克服するために、視聴オブジェクトを連続的に再伝送することができる。これは、同じオブジェクトを、複数回、複製のために提示することができるということを意味する。(この場合)何の変化も実際には生じていないのに、バージョン番号がインクリメントされるので、複製されるべきオブジェクトが受信される度に、単純にデータベース・オブジェクトを更新することは不適切である。さらに、不必要の場合には、オブジェクトを更新するトランザクションを開始させないことが望ましい。相当のシステム・リソースが、トランザクションの間に消費される。
【0047】
この問題を解決するためには、2つのアプローチが、組み合わされる。第1に、ほとんどのオブジェクトは、「保存期限」と呼ばれる基本属性を持つ。保存期限とは、そのオブジェクトが、それを過ぎると、もはや有効でなくなり、廃棄されるべき期日および時刻である。新しいオブジェクトが受信されると、保存期限時がチェックされ、そして、そのオブジェクトは、保存期限が過ぎてしまっていれば、廃棄される。保存期限は、その伝送が、何らかの形態で遅延したオブジェクトを扱うが、保存期限が過ぎていない同じオブジェクトの複数の受信は扱わない。
【0048】
ソース・バージョン属性が、この問題を扱う。視聴オブジェクトが伝送されるとき、この属性は、ソース・オブジェクトの現在のバージョン属性からコピーされる。視聴オブジェクトが受信されたとき、受信されたオブジェクトのソース・バージョンが、現在のオブジェクトのソース・バージョンと比較される。新しいオブジェクトが、より高いソース・バージョン属性を持っていれば、それは、現在のオブジェクトにコピーされる。そうでなければ、それは、廃棄される。
【0049】
任意の特定のクライアント・システムに持たれる関心よりも、はるかに多数の視聴オブジェクトが伝送されると、仮定する。例えば、他のケーブル・システムに結ばれているクライアントは、特定のケーブル・システムのチャンネルを記述する「チャンネル」視聴オブジェクトには関心がない。新しいオブジェクトをデータベースに捕獲しかつ加えることは、オーバヘッドを必要とするので、受信したオブジェクトを、上述の属性に加えて、他の属性に関してもフィルタするのが有利であろう。本発明は、これを、オブジェクト・タイプおよび属性値に基づいたフィルタリング・プロセスを用いて遂行する。一実施の場合、このフィルタリング・プロセスは、恐らく、一連のコマンドのような、ある種の実行可能コードの実行に基づく。このコードは、種々のオブジェクト・タイプ、および、これらをどのようにフィルタしなければならないかということについての特定の知識を用いて書かれている。
【0050】
本発明の好適な一実施例の場合、「フィルタ」オブジェクトは、どの属性が必要であるかということ、どの属性が存在すべきでないかということ、または、データベースへの追加のために受け入れ可能にする属性に対する値の範囲を示す各オブジェクト・タイプに対して、定められる。当業者は、このフィルタオブジェクトが、ある形式で、恐らくは一連の実行可能コマンドとして、実行可能コードを含むであろうことを容易に認識するであろう。これらのコマンドは、フィルタされるオブジェクトの属性および属性値を検査しかつ比較する。これは、そのオブジェクトが、さらなる処理の対象であるべきかどうかを示す結果となる。
【0051】
視聴オブジェクトが、他のオブジェクトから独立していることはまれである。例えば、(特定チャンネルの特定時刻を記述する)「放映」オブジェクトは、(特定のテレビ番組を記述する)「番組」オブジェクトに従属する。一貫性を維持する上で重要な1つの観点は、新しい視聴オブジェクトを加えようとする前に、全ての従属オブジェクトが、既にデータベースに存在しているか、または、一回のトランザクションの一部として加えられることになるかのいずれかを確実にすることである。これは、「従属」属性と呼ばれる、新しい視聴オブジェクトの基本属性を用いることによって遂行される。この基本属性は、新しいオブジェクトが従属するオブジェクトのオブジェクトIDおよびソース・バージョンを単純にリストする。オブジェクトの新バージョン(同士)は、これらの新バージョンを定めるスキーマが、同じであるか、または、元のスキーマの属性の厳密な上位集合を持つという意味で、互換性があるものでなければならないことは、明らかである。
【0052】
新しい視聴オブジェクトが受信されると、最初に、そのオブジェクトの全ての従属性が存在しているか否かについて、データベースが、チェックされる。そのような従属性が存在していれば、そのオブジェクトが、データベースに加えられる。そうでなければ、その新しいオブジェクトは、「ステージに載せられ」、全ての従属オブジェクトが、ステージに載せられるまで、保持エリアに保存される。視聴オブジェクトの新しい組み合わせを、データベースに加えるためには、従属グラフが、オブジェクトIDとソース・バージョンとの両方に基づいて、ステージ・エリア内のオブジェクトと、データベース内に既に存在しているオブジェクトとの間で閉じていなければならないことは、明らかである。ひとたび、それが閉じられると(これは、全ての従属オブジェクトが、存在することを意味する)、新しいオブジェクトが、単一のアトミック・トランザクション(分割不可能なトランザクション:更新の全てが実行されるか、いずれも実行されないかの何れかになるトランザクション)で、データベースに加えられる。
【0053】
テレビジョン視聴オブジェクトの命名および発見
ディレクトリ・オブジェクトについては、前述した。図4に示されるように、ルート・パス400から開始し、かつ視聴オブジェクトへのあらゆる可能なパスを数えあげることによって形成されるディレクトリ・オブジェクトの収集および有向グラフが、「名前空間」と呼ばれる。オブジェクトを、特定のオブジェクトIDを知ることなしに見つけるためには、この名前空間内の1つ以上のパスが、それを参照していなければならない。例えば、アプリケーション・ソフトウェアが、オブジェクトIDにほとんど関心を持たず、代わって、そのソフトウェアは、パス(例えば、「/tv番組予約/今日」)によってオブジェクトを参照することを望む。この例の場合、参照される実際のオブジェクトは、システムのいかなる他の部分の変更も必要とせずに、毎日変化するであろう。
【0054】
オブジェクトへのパスを確立することができる1つの仕方は、そのオブジェクトに「パス名」基本属性を指定することである。このオブジェクトは、データベースに加えられ、そして、そのパスのコンポーネントを記述するディレクトリ・オブジェクトが、そのオブジェクトを加えるために、生成されるか、または、更新される。このような命名は、通常、複製メカニズムのデバッグにしか用いられない。各クライアント・システム上に複製された中央データベースの部分は、相異なるので、これらのデータベースの全ての複製に渡ってパス名を管理することを極めて困難である。従って、明示的なパスを設定することは、薦められない。
【0055】
データベース名前空間にオブジェクトを加えるための好適な一方法は、「インデクシング(指標付け)」と呼ばれる。本発明の好適な一実施例の場合、データベース名前空間にインデクシングするときに、どの属性が用いられるかを示す「インデクサ」オブジェクトが、各オブジェクト・タイプに対して定められる。当業者は、このインデクサオブジェクトが、ある形式で、恐らくは一連の実行可能コマンドとして、実行可能コードを含むであろうことを容易に認識するであろう。これらのコマンドは、インデクス(指標付け)されるオブジェクトの属性と属性値とを検査しかつ比較する。これは、結果的に、そのオブジェクトが、名前空間のどこに位置すべきかを示す。
【0056】
オブジェクト・タイプに基づいて、インデクサは、そのオブジェクトに結ばれた属性の特定の組み合わせを検査する。このような属性が発見されると、インデクサは、データベース内のディレクトリのグラフによって表わされる階層的名前空間内に、その属性の値に基づいて、自動的に、そのオブジェクトの名前を加える。再度、図4を参照すると、1つの番組オブジェクト401は、値「ジョン・ウェイン」を持つ「俳優」属性と、値「ジョン・フォード」を持つ「監督」属性との両方を持つことができる。ルート・ディレクトリは、「俳優による」402と「監督による」403との2つのサブディレクトリを示すかもしれない。次いで、インデクサが、両方とも同じオブジェクト401を参照するパス「/俳優による/ジョン・ウェイン」および「/監督による/ジョン・フォード」を、データベースに加える。
【0057】
このオブジェクト401を参照するディレクトリ・オブジェクトをリストする派生属性が、各オブジェクトに対して維持される。インデクサは、名前空間に、このオブジェクトに対するパスを加えるときに、このリストに、パスの最終的なディレクトリIDを加える。これは、オブジェクト・グラフの終結を確実にする。(何故なら)ひとたび、このオブジェクトが見つかったならば、データベース内のそのオブジェクトへの全ての参照も、これらが、パスであろうと、従属であろうと、見つかる。
【0058】
データベースにオブジェクトを加える、このユニークで新規な方法は、標準的なアプローチを超える著しい利点を持つ。インデクサは、オブジェクトが加えられるとき、そのオブジェクトを、データベースにソートする。したがって、特定のパスに関連されたオブジェクトのサーチは、整然と順序付けられたリストからの一連の選択になる。当業者であれば、それを効率的に実施することができる。
【0059】
オブジェクトのデータベースからの削除
データベースにオブジェクトを加えるためのルールが、重要である一方、データベースからオブジェクトを除去するためのルールも、一貫性と正確性の維持において重要である。例えば、オブジェクトを除去するための確固としたルールがなかったならば、データベースは、使われていないオブジェクトが蓄積するにつれて、時間とともに際限なく増大するであろう。
【0060】
データベースからオブジェクトを削除するための主要なルールは、参照のカウンティングに基づく。参照カウントが0まで落ちたオブジェクトは、即座に削除される。例えば、これは、オブジェクトが、データベースに残存するためには、ディレクトリ・オブジェクト、または、なんらかの他のオブジェクトが、それを参照していなければならないということを意味する。このルールは、削除されるオブジェクトに基づいて、終結している従属グラフ中の全てのオブジェクトに適用される。したがって、(ディレクトリのような)別のオブジェクトを参照しているオブジェクトが、削除されると、参照されている全てのオブジェクトの参照カウントが、デクリメントされ、そして、これらのオブジェクトも、0カウントになると同時に、同様に削除される、等々である。
【0061】
さらに、「リーパ」と呼ばれるデータベースからのオブジェクトを削除する自動プロセスもある。周期的に、このリーパは、データベース中の全てのオブジェクトを検査し、そして、さらに、オブジェクト・タイプに応じて、種々の属性および属性値を検査し、そしてそのオブジェクトが、データベースに保持されるべきか否かを決定する。例えば、保存期限属性が、そのオブジェクトは、もはや有効ではないことを示す場合には、リーパは、そのオブジェクトを削除するであろう。
【0062】
好適な一実施例の場合、上述のフィルタリング方法およびインデクシング方法と同様の(または、恐らくは同一の)方法を用いて、リーパが、代わりに、現在のオブジェクトのオブジェクト・タイプに関連したリーパ・オブジェクトにアクセスすることができる。これは、種々の種類の実行可能コード(恐らくは、一連の実行可能コマンド)を含むことができる。このコードが、現在のオブジェクトの属性および属性値を検査し、そしてそのオブジェクトが、削除されるべきか否かを決定する。
【0063】
参照カウントが0までデクリメントされているあらゆるオブジェクトを個々に削除するオーバヘッドは、極めて高くなるかもしれない。何故ならば、あらゆるこのような削除が、データベースとのトランザクションと言う結果になるからである。フォアグラウンドの動作が、最大速度を続けるように、オブジェクトをリープ(削除)する実行インパクトを制限することは、有益なことである。好適な一実施例の場合、これは、通常の不要部分整理(コレクション)方法に基づいた技術を用いて遂行される。
【0064】
例えば、参照カウントが0までデクリメントされているオブジェクトを削除するどころか、リーパは、何ら他のアクションも行わない。不要部分収集部と呼ばれるバックグラウンド・タスクが、周期的に、データベース内の各オブジェクトを検査する。このオブジェクトが、0の参照カウントを持っていれば、これは、削除されるべきオブジェクトのリストに加えられる。一実施例の場合、ひとたび、不要部分収集部が、データベース全体を検査してしまうと、それは、一回のトランザクションで、このようなオブジェクトを全て削除する。当業者であれば、オブジェクトが削除されている間、データベースへの他のアクセスが遅れるかもしれないから、この方法は、反面、かなり性能を低下させる結果になるかもしれないことを認識するであろう。さらに、全てのオブジェクトを適切に削除するためには、不要部分収集部がアクティブな間、データベースの変化を遅延させなければならないかもしれないので、性能は、さらに悪くなる結果となるかもしれない。
【0065】
好適な一実施例の場合、不要部分収集部は、パス内の一連のデータベースを検査する。ひとたび、特定の数のオブジェクトが、収集されると、これらのオブジェクトは、一回のトランザクションで削除される。当該プロセスは、全てのオブジェクトを検査してしまうまで継続される。並行する活動が、それ以前に検査されたオブジェクトを開放してしまうかもしれないので、この技術は、全てのガーベッジ・オブジェクトが、この検査プロセスの間に収集されることを保証しない。しかしながら、これらのオブジェクトは、次回、不要部分収集部が実行するときに発見されるであろう。各パスにおいて削除されるオブジェクトの数は、他のデータベース活動に対する性能が許容可能であるように調整することができる。
【0066】
分散されたテレビジョン視聴オブジェクト・データベース上の動作
分散された視聴オブジェクト・データベースの維持の考察
分散されたデータベースのインスタンスのなかで、テレビジョン視聴オブジェクトを複製するためには、必ず、信頼性が低くかつ安全でない分散チャンネルを介してオブジェクトを伝送しなければならない。
【0067】
例えば、オブジェクトが、ラジオまたはテレビジョンのような放送メカニズムを介して伝送される場合、データが、正確に、または、完全に伝送されるということは、保証されない。暴風雨のような天候が、その伝送においてドロップアウトを引き起こすかもしれない。他の妨害の原因には、他の放送信号、大型の機器、家庭用具などが挙げられる。
【0068】
当業者であれば、信頼性の低いチャンネルを介するデータ伝送を管理するための(反復伝送、誤り訂正コード等を含む)標準的な技術が、存在することを容易に認識するであろう。これらの技術は、伝送のために用いることのでき、また、これらの何れもまたは全部を如何なる特定の例においても用いることができる。
【0069】
複製されるべきオブジェクトは、効率化のために、本明細書において「スライス」と呼ばれる分散パッケージに、一緒に集められる。スライスとは、地理的な領域、または、衛星トランスミッタの電波受信可能域のような特定領域内のクライアントに関係する、テレビジョン視聴オブジェクト・データベースの下位集合である。
【0070】
これらのスライスの安全性は、極めて重要である。スライスは、データベースにオブジェクトを加えるために用いられ、これらは、データベースのユーザに価値の高いサービスを提供するため、および、非公開または秘密とみなすことができる情報を記憶するために用いられる。スライス伝送が放送により行われるため、スライスは、これらが伝送される際に、第三者によって容易にコピーされる可能性がある。これらの問題に対する現実的解決は、伝送の間、スライスを暗号化することである。本発明で利用される技術に関する最善の参考文献は、「Applied Cryptography: Protocols, Algorithms, and Source Code in C(応用暗号技術:Cにおけるプロトコル、アルゴリズム、および、ソースコード)」Bruce Schneier, John Wiley and Sons, 1995 である。
【0071】
本発明の好適な一実施例の場合、安全で、暗号化されたチャンネルが、米国特許第4,405,829号明細書に記述されている技術と同様の技術(しばしば、非対称キー暗号化として、ときには、公開/非公開キーペア暗号化として記述される)を用いて、確立される。当業者は、非対称キー暗号化に基づくプロトコルが、クライアント・デバイスの認証、および、情報の安全な分散化のための信頼性の高い効率的な基盤として機能することを認識するであろう。一般に、認証は、クライアント・システムと中央システムとの間の署名されたメッセージの交換により行われる。安全な分散化は、認証過程中に送られる短寿命の対称キーを用いて、全ての通信を暗号化することによって、行われる。
【0072】
安全性を成功させるためには、送信側と受信側が、暗号に使用される非対称キーペアに関し、前もって同意していることが必要である。このようなキーの分散化は、電子データを保護するためには、如何なる暗号システムにおいても最も弱いリンクである。これも本出願人が所有権を持つ、1999年7月19日に出願された、発明の名称「Self-Test Electronic Assembly and Test System(セルフテスト電子アセンブリおよびテストシステム)」の米国特許第6,385,739号明細書には、クライアント・デバイスが、製造プロセスの最終ステップに、非対称キーペアを自動的に作成するメカニズムが記述されている。このように作成された非公開キーは、そのキーが決して外部デバイスに漏れないように、クライアント・デバイス内に埋め込まれた安全なマイクロプロセッサ内に記憶される。このように作成された公開キーは、ローカルな製造システムに伝送され、このシステムは、安全なデータベース内に、このキーを、そのクライアントのシリアル番号とともに記録する。このデータベースは、その後、中央分散システムに安全に伝送されて、そこで、これは、クライアントとの安全な通信を行なうために用いられる。
【0073】
この非公開キーは、(非公開キーが、ロジックアナライザのような特別のツールを用いて認識されてしまう可能性がある)クライアント内の外部コンポーネントには、決して提示されないので、このユニークで新規なキー作成法は、キーの分散化についての問題を解決する。これに代えて、公開キーにより暗号化されたメッセージを解読するために、これを、安全なマイクロプロセッサ自体の内部でしか用いず、その後、これらの結果を、外部のコンポーネントに供給することもできる。
【0074】
本明細書を考察する以下の部分では、クライアント・システムと中央システムとの間の全ての通信が、上述のように認証され、そして、暗号化されていると、仮定する。
【0075】
クライアント・システムへの視聴オブジェクトの伝送
再度、図1を参照すると、本発明の好適な一実施例の場合、以下のステップが、スライスを用いて、中央データベースからテレビジョン視聴オブジェクトを「伝送すること」を構成する。
【0076】
1. クライアントの視聴デバイス域にスライスを伝送するには、多くのメカニズムが存在するであろう。例えば、スライスは、電話モデムまたはケーブルモデム109を介して、直接ダウンロードしても良いし、標準テレビジョン放送108の垂直帰線消去期間(VBI)のライン中に変調しても良いし、また、デジタル・テレビジョンの多重信号に非公開データ・チャンネルとして加えても良い。当業者は、デジタル情報を伝送することができる如何なるメカニズムも、テレビジョン視聴オブジェクト・データベースのスライスを伝送するために用いることができることを容易に理解するであろう。
【0077】
伝送のためのテレビジョン視聴オブジェクトを用意する最初のステップは、この特定の例に使用されるべき伝送メカニズムを認識することと、そのメカニズムのためにカスタム化されるデータベースの下位集合のスライスを生成することである。例えば、このデータベースは、国内の全番組に関するテレビジョン視聴オブジェクトを含むことができる。しかしながら、テレビジョン視聴オブジェクトが、ローカル・テレビジョン信号のVBI変調を用いて送られる場合には、番組を搬送するために用いられているテレビジョン放送の電波受信可能域内で視聴可能な番組に関するテレビジョン視聴オブジェクトしか、当該スライス内には含まれるべきではない。他方、テレビジョン視聴オブジェクトのいくつかが、特定地域領域に関する宣伝用マテリアルを含んでいる場合には、これらのオブジェクトは、他の地域領域に伝送されるべきではない。
【0078】
本発明の好適な一実施例の場合、伝送のためにデータベースを検索しかつスライスを作成する速度および周期は、コスト/パフォーマンスのトレードオフが実用的になるような任意の仕方で、調整可能である。いくつかの伝送方法に対しては、例えば、一日おき、または、毎時間、スライスを作成すれば良いかも知れない。
【0079】
各スライスを用意する最終ステップは、短寿命の対称キーを用いて、スライスを暗号化することである。安全なプロトコルを用いて認証されたクライアント・デバイスしか、この対称キーのコピーを持たないであろう。これは、これらのクライアント・デバイス(のみ)が、このスライスを解読し、かつ、その中のテレビジョン視聴オブジェクトにアクセスすることを可能にする。
【0080】
2. ひとたび、スライスが完成すると、スライスは、伝送メカニズムが、データを受け取りかつ送信することができる地点にコピーされる110。電話接続の場合、スライスは、各クライアントに、それがコールされたときに、データを供給する電話通信サーバ111に置かれる。テレビジョン放送が用いられる場合には、スライスは、局テレビジョン・トランスミッタと共存する機器上にコピーされる。スライスは、そこで信号上に変調される。これらのおよび同様の放送伝送に基づく場合、スライスは、「反復」される、即ち、新しいスライスが伝送のために供給されてくるまで、スライスを記述するデータは、絶えず反復される。
【0081】
データを搬送する信号が、各クライアントに信頼性高く到達するということが保証されないので、このスライスの反復放送は、必要である。クライアント・デバイスの電源が切れているかもしれないし、信号の受信に対する妨害が潜在的な。伝送されたスライスが、全てのクライアント・デバイスにおいて適切に受信されるという高い確率を達成するために、これらのスライスは、更新されたスライスが伝送に使用可能になるまで、絶えず再放送される。
【0082】
本発明の好適な一実施例においては、スライスの伝送には、テレビジョン信号のような放送メカニズムが用いられる。しかしながら、モデム接続またはインターネット接続のような接続ベースのメカニズムを介してダウンロードすることは、望ましい。接続ベースのメカニズムを用いることは、通常、時間ベースの使用料が必要になるので、スライスの伝送に費やされる時間は最小限にすることが、望ましい。
【0083】
これは、2ステップ・プロセスを用いて遂行される。接続が確立されると、クライアント・システムは、以前に受信されたスライスの一覧表を、電話通信サーバ111に送信する。サーバは、この一覧表を、そのクライアントが過去に処理したはずであるスライスのリストと比較する。処理されていなかったスライスは、このクライアント・システムに伝送される。
【0084】
3. スライスは、暗号化されたスライスを、一連の短く分けられたデータ・パケットに分割することにより、伝送される。これらのパケットは、クライアント・システムによって取得され、そして、そのシーケンスの全てのパケットが存在するようになるまで、ステージ・エリアに保持される。パケットは、スライスに再アセンブルされ、その後、それは、解読される。次に、このスライス内のテレビジョン視聴オブジェクトは、これらを利用可能にするためにフィルタ処理され、恐らく、ローカルなテレビジョン視聴オブジェクト・データベースに加えられる。このプロセスにより、テレビジョン視聴オブジェクトについての中央データベースの一部が、信頼性高く、クライアントに複製される。
【0085】
本発明は、データ・パケットが受信される時刻を追跡する。選択された時刻の期間よりも古いデータ・パケットは、周期的にステージ・エリアから除かれる。これは、スライスの全ての部分が伝送されるのを待つ間、無期限に空間(記憶空間)を消費しないようにするためである。
【0086】
特に、放送媒体によりオブジェクトを伝送する場合には、伝送されたデータにさまざまな種類のエラーが、生じるかもしれない。各データ・パケットには、誤り検出コード(例えば、パリティフィールドまたはCRCコード)が刻まれている。エラーが検出されると、そのデータ・パケットは、単純に廃棄される。放送の反復により、最終的には、適切に受信されるであろうデータ・パケットが再伝送される。したがって、如何なるサイズのスライスも、信頼性高く送信される。これは、全ての部分が適切に受信されるまで、クライアントにオブジェクトの部分を受信させることにより、達成される。
【0087】
4. クライアント・システムに、サービスに関連するデータ(特に、サービスの認証情報)を伝える、1つ以上の「特別の」スライスを伝送することもできる。視聴者が、彼の代金を支払っていない場合、または、他の動作上の理由から、クライアント・システムがプレミアム・サービスにアクセスすることを、サービス・プロバイダが制御することができることが重要である。
【0088】
特別のスライスの1つの特定のタイプには、「認証」オブジェクトが含まれる。認証オブジェクトは、一般に、特定のクライアントに関連する公開/非公開キーのペアに基づいた非対称キー暗号化を用いて暗号化される。安全なマイクロプロセッサが、埋め込まれている非公開キーを用いて、このスライスを成功裡に解読することができれば、このスライスは、別の認証オブジェクトが受信されるまでに許される時間遅延を示すオブジェクトと、短期間のみ有効な1つ以上の対称キーとを含むであろう。この遅延値は、クライアント・システムが、サービスの提供をいつ停止するかを示すデータベース中のタイムスタンプをリセットするために用いられる。これらの対称キーは、ローカルなテレビジョン視聴オブジェクト・データベースに記憶され、受信されるであろう新しいスライスの解読に用いられる。
【0089】
クライアントが、データベース内に設定されている時間までに適切な認証オブジェクトを受信しなかった場合には、それは、(サービス・プロバイダによって規定されているように)その視聴者に対するほとんどのサービスの提供を拒否することを開始する。さらに、認証オブジェクト内には、伝送されたスライスを解読するために必要な1個以上の寿命が有限のダウンロードキーが、含まれている。クライアント・システムが、自身を認証することができなければ、如何なるオブジェクトも解読することができないことは、明らかであろう。
【0090】
各認証スライスは、個々に作成され、そして伝送される。スライスが放送により伝送される場合には、関連する全ての認証が、他の全てのスライスと同じに扱われ、かつ、全ての他のデータと共に反復される。電話接続によるような直接伝送が用いられる場合には、そのクライアントに対する認証スライスしか、伝送されない。
【0091】
5. ひとたび、クライアント・デバイスが、完全なデータベース・スライスを受信すると、クライアント・デバイスは、前述の方法を用いて、その中に含まれている新しいオブジェクトを、データベースに加える。
【0092】
クライアント・システムからの情報の収集
再度、図1を参照すると、本発明の好適な一実施例の場合、以下のステップが、各クライアント・データベースからのテレビジョン視聴オブジェクトの「収集」を構成する。
【0093】
1. 視聴者が、自分が利用可能なテレビジョン・チャンネルを捜しているとき、クライアント・システムは、選択されたチャンネル、選択された時刻、そのチャンネルを視聴していた期間、VCR的アクション(例えば、休止、巻戻し)等の、関係情報を記録する。このデータは、ローカルなテレビジョン視聴オブジェクトに記憶される。
【0094】
さらに、視聴者は、利用可能な提供品または宣伝に関心を示すかもしれないし、または、アイテムの購入希望を示すかもしれない。この情報も、ローカルなテレビジョン視聴オブジェクトに記録される。
【0095】
さらに、クライアント・デバイスの動作の結果、テレビジョン視聴オブジェクトに記録しなければならない重要なデータが、発生するかもしれない。例えば、クライアントのハード・ディスク・ドライブからの読み出し中に、エラーが、生じるかもしれないし、また、デバイスの内部温度が、動作パラメータを超えるかもしれない。他の同種の情報には、オブジェクトの適切なダウンロードの失敗、さまざまなディスクベースの動作空間の消尽、急速な電源サイクリングがある。
【0096】
2. ある時点で(中間時点で、または周期的に)、クライアント・システムは、直接接続104(通常、電話接続および/またはインターネット接続)を介して、中央サイトにコンタクトする。クライアント・デバイスは、それの秘密キーで暗号化されている、それ自体を識別するバイト列を送信する。サーバは、そのクライアント・デバイスにマッチするテレビジョン視聴オブジェクトを、データベースからフェッチし、そしてそこに記憶されているキーを用いて、そのバイト列を解読する。同時に、サーバは、その秘密キーで暗号化されたバイト列をクライアントに送信し、クライアントに、そのセションのための新しい一回限りの暗号化キーを与える。
【0097】
両サイドは、通信のために、これらの認証メッセージを成功裡に解読しなければならない。この双方向ハンドシェークは、クライアントとサーバとの両方に、互いに他方が有効であることを保証するので、重要である。このような認証は、クライアント・システムに発生するかもしれない、さまざまな外部からの攻撃を回避するために必要である。例えば、通信が、認証されなかった場合、悪意のある者が、不正なテレビジョン視聴オブジェクト・データベースを持つ「偽の」中央サイトを生成して、クライアント・システムに有害な情報を提供するかもしれない。これは、正常でない動作の原因となる。以降の全ての通信は、一回限りのセションキーを用いて暗号化される。(情報が通り抜ける全ての機器による検証に対して、データ・トラフィックがオープンである)インターネットのようなネットワークを情報が通過するかもしれないので、暗号化された通信が、必要となる。収集された視聴オブジェクトには、非公開と思われる情報が、含まれているかもしれないので、この情報は、常に、完全に保護されていななければならない。
【0098】
認証過程が成功したと仮定すると、両当事者は、全二重方式電話線を、2つの一方向放送チャンネルとして扱う。新しいスライスが、クライアントに分散され、そして、収集されるべき視聴データが、送り返される。全てのデータが分散されると、接続が、終了する。
【0099】
当業者は、この接続が、システム内の全ての他のソフトウェアに対し透明である、標準のTCP/IPプロトコルを実行するインターネットのようなネットワークにより行えることを容易に理解するであろう。
【0100】
3. アップロードされた情報も、サーバによって同様に扱われるので、テレビジョン視聴オブジェクトが中央データベースに複製されるべきと仮定しよう。しかしながら、このサービスには多くのクライアントが存在するかもしれないので、アップロードされた視聴オブジェクトが多数存在するかもしれない。したがって、アップロードされたオブジェクトには、これらのソースに関する情報を含むナビゲート可能な属性が割り当てられる。次いで、このオブジェクトは、それが加えられるときに、データベース名前空間にユニークにインデクスされる。
【0101】
アップロードされた視聴オブジェクトは、すぐには、中央データベースに加えられない。その代わりに、これらは、後のデータベースの挿入のために待ち行列処理される。このステップにより、待ち行列処理が、クライアント・デバイスの接続パターンに依存しないことが可能になる。例えば、同時に多くのデバイスが接続されて、非常に多数のオブジェクトが生成されてしまう場合がある。これらのオブジェクトが、中央データベースに即座に加えられるとすると、全ての接続の効率が、低下し、接続時間が増加してしまう。電話のコールは、接続時間にしたがって請求されるので、接続時間が、負荷の関数として増加してしまうようなシステムは、如何なるものも認められない。
【0102】
このようにオブジェクトを中央データベースに即座に加えないことのもう1つの利点は、マシンまたはネットワークが、それらに障害が生じた場合の影響を受けにくいことである。さらに、視聴オブジェクトの処理速度および中央データベースへの追加速度は、コストの目標または性能の目標がサービス・プロバイダにより満たされるように、コンピュータ・システムとこれらの構成を変えることによって、制御することができる。
【0103】
さらにもう1つの利点は、それが、サービス動作を改善するために収集されるデータと、個々の視聴者を識別するデータとを分離するためのメカニズムを提供することである。法的な理由からこのような識別データを、非公開にしておくことと、個人個人が、受けるサービスの信頼性を高めることが、重要である。例えば、視聴者の視聴選択の記録を含む視聴オブジェクトに割り当てられる、ナビゲート可能な属性は、視聴者の郵便番号だけしか含んでいないかもしれない。この場合には、これらのオブジェクトを更に処理しても、個々のアイデンティティ(身元)に至るパスを構築することはできない。
【0104】
周期的なタスクが、サーバに、データベース上のこれらのオブジェクトから不要なものを選り分け、そして、これらを適切に廃棄させる。例えば、視聴者の行動を示すオブジェクトは、視聴者全体の行動モデルに集められるが、個々の視聴者を識別出来る情報は、廃棄される。動作上の情報を含むオブジェクトは、分析タスクに送られる。これは、顧客サービス担当の社員に潜在的な問題について警報をもたらすことになるかもしれない。商取引情報を含むオブジェクトは、その実現のために、商取引システムまたは売買システムに送られる。
【0105】
これらの活動の何れによっても、新しいテレビジョン視聴オブジェクトが、中央データベースに加えられるか、または、現存しているオブジェクトが、更新される結果が得られる。これらのオブジェクトは、最終的には、クライアント・デバイスに伝送される。したがって、このテレビジョンの視聴管理システムは、閉じたループであり、これは、如何なる数のクライアント・システムもサポートすることができる、自己維持型の複製データベースシステム105を生成する。
【0106】
クライアント・システムによるテレビジョン視聴オブジェクトの処理
テレビジョン視聴オブジェクトは、以下のタイプの情報:テレビジョン番組の解説および放映時刻;チャンネルの番号およびIDのような、ケーブル、衛星、放送信号の発信元情報;俳優、分野、放映時刻などのような視聴者の嗜好に関する情報;強化データベース・ソフトウェア、アプリケーション・ソフトウェア、オペレーティング・システム・ソフトウェアなどのようなソフトウェア;嗜好ベクトル、人口統計分析などのような統計モデル化情報;および、デジタルデータとして表わすことができる他の如何なる任意の情報も、含むことができる。
【0107】
番組ガイド・オブジェクトに適用される方法
番組ガイド・オブジェクトには、クライアント・システムのユーザが関心を持つ番組にチャンネル合わせをし、それを受信し、記録し、視聴するために、クライアント・システムにおいて実行されるソフトウェアが必要とし、かつ、全ての利用可能な番組およびチャンネルの中からデータベース内のオブジェクトによって記述されるものを選択するために必要とされる全ての情報が、含まれる。
【0108】
この番組ガイド情報は、サービス・プロバイダによって定期的に更新される。これは、プロバイダが、番組ガイド情報をなんらかの方法(例えば、放送番組情報等の情報を提供する業者から得ること)によって行われる。その後、このデータは、十分に理解されているソフトウェア技術を用いて、その情報が、相互に関連する視聴オブジェクトの収集データに減少するように処理される。
【0109】
再度、図4を参照すると、ここには、番組ガイド・オブジェクト間の典型的な関係が、示されている。テレビジョン「ネットワーク」オブジェクト407は、放送が、空中、ケーブル、衛星または他の適切な媒体の何れを介して行われるものであっても、テレビジョン番組の放送予約をしかつ放送する如何なる構成体でもある。テレビジョン「番組」オブジェクト401は、特定の番組、コマーシャル広告、局の宣伝、オープナ(番組の最初の出し物)、予告編または他の任意のテレビジョン信号の限定された部分のような、テレビジョン放送信号の任意の個々のセグメントの記述である。「放映」オブジェクト406は、番組が放送されるネットワークの放送番組の一部である。「チャンネルマップ」オブジェクトは、ネットワーク放送を、使用されている媒体の特定の放送チャンネルにマップする。例えば、衛星放送サービスのためのチャンネルマップ・オブジェクトには、この放送を収容するトランスポンダおよびデータストリームに関する情報が含まれる。前述の方法を用いて、この番組ガイドデータが、中央サイトからクライアント・システムに複製される。クライアント・システムのアプリケーション・ソフトウェアは、そのデータを用いて、テレビジョンの視聴を管理する。
【0110】
サービス・プロバイダは、また、なんらかの形で相互に関係する1組の番組ガイド・オブジェクトを記述する集合視聴オブジェクトを提供することができる。例えば、「スタートレック」の収集は、このブランド名に関連した全ての番組ガイド・オブジェクトへの参照を含むことができる。番組の如何なる組み合わせも、このように集合させることができることは、明らかである。集合オブジェクトは、ディレクトリに似ている。例えば、スタートレックの収集は、階層的名前空間において、「/ショーケース/スタートレック」で見つかる。集合オブジェクトは、番組ガイド・オブジェクトでもあるので、これらの集合オブジェクトを、集合オブジェクトを集合させるステップ等も含めて、同様にマニピュレートすることができる。
【0111】
クライアント・システムは、番組オブジェクトの収集を、さらに精巧にすることもできる。内部記憶装置に番組を獲得することができるシステムにおいては、獲得された各番組は、新しい番組ガイド・オブジェクトによって表わされ、視聴、集合化などに利用可能になる。視聴者のアクションにより、番組ガイド・オブジェクトが、生成される結果となることもある。例えば、視聴者が、いくつかの番組を選択して、新しい集合オブジェクトを生成することもできる。
【0112】
番組ガイド・オブジェクトのタイプに関する本記述は、全ての可能性を含むことを意味していない。本明細書には記述されていないが、本発明の基本的な方法から、やはり利益を享受する、番組ガイド・オブジェクトの様々な用途、および、これらを作成する方法も存在する。
【0113】
番組ガイド・オブジェクトは、以下の5つの仕方でアプリケーション・ソフトウェアに用いられる。
1. 最も簡単な場合では、視聴者が、ブラウザによりこれらのオブジェクトを閲覧して、現在のまたはすぐに利用可能となる番組を認識することを望むかもしれない。アプリケーション・ソフトウェアは、データベースによって記述されるオブジェクトの関係を、視聴者にとって便利でかつ有用な視聴可能なインターフェイスのなんらかの形式にマップする。視聴者は、ある特定の番組に関心があることを示すことができる。これは、その番組が放送されるときに、その番組をローカルな記憶装置に記録するというような、あるアプリケーションスに特有なアクションをもたらす。
【0114】
2. アプリケーション・ソフトウェアは、また、番組ガイド・オブジェクトを直接処理して、視聴者が関心を持つであろう番組を選ぶこともできる。このプロセスは、通常、以前に視聴された番組の統計モデルによる分析に基づいており、これにより、利用可能な全ての番組について優先順位が得られることになる。優先順位が最も高い番組は、その番組が放送されるときに、ローカルな記憶装置にその番組を記録するというような、アプリケーションに特有なアクションで処理させることができる。このようにして得られた優先順位の一部は、1の場合のように、追加的な選択のために、視聴者に提示することもできる。
【0115】
当業者は、以前の視聴履歴および視聴者が示す嗜好に基づいて、視聴者のために番組を選ぶ方法を主とした多くの従来技術(例えば、米国特許第5,758,257号明細書)が存在することを容易に理解するであろう。本出願に記述されている方法は、番組の放送に対する優先順位でも伝送に対する優先順位ではなく、番組の獲得に対する優先順位を提案し、かつ、番組が放送されるときについての時間制約が存在しないので、これらの従来技術に対してユニークで新規である。これらの方法のさらなる詳細は、後に、本明細書に記述される。
【0116】
一般に、獲得に関しては、視聴者自身が選択する番組選択が、最も高い優先順位を持ち、本明細書に記述される嗜好技術を用いて選ばれる番組が、それに続く。
【0117】
3. クライアント・システムは、テレビジョン放送の受信を可能にし、または、イントラネットまたはインターネットのようなネットワークによりウェブページにアクセスすることを可能にする、少数の入力を持つであろう。番組の予約方法を用いて、各入力がどのチャンネルに接続されるか、そして、接続の結果、獲得されたテレビジョン信号またはウェブページにより何がなされるかが、選択される。
【0118】
図6に示されるように、一般に、視聴者が関心を持つ番組は、番組ガイド・オブジェクトによって記述される如何なるチャンネルにおいても、かつ如何なる時にも、放送させることができる。さらに、関心のある番組は、イントラネットまたはインターネットのようなネットワークによるウェブページのユニバーサル・リソース・ロケータ(URL)とすることもできる。チャンネル・メタファは、特定のウェブ・サイトまたはページの位置、即ち、URLを記述するためにも用いられる。
【0119】
例えば、視聴者は、ウェブ・サイトのURLをチャンネルとして指定することによって、ウェブ・サイトに「同調」することができる。このチャンネルが選択されたときにはいつでも、そのウェブ・サイトが、表示される。ウェブページを、関心のある番組として指定することもできる。このウェブページのスナップショットは、あらかじめ定められた時刻に、受け取られかつ記録されるであろう。
【0120】
予約部は、入力として、(恐らくは、上記の場合のように作成された)番組視聴についての嗜好の優先順位が付されたリストを受け取る。その後、予約方法601が、このリストを、関心のある番組が、いつ実際に放送されるかを示す番組ガイド・オブジェクトのデータベースと、比較する。次に、それは、視聴者が選択したまたは導出された嗜好番組603に対して最適である、利用可能な記憶空間606に対する時刻607の予約を作成する。これらの方法のさらなる詳細が、後に、本明細書の記述において与えられる。
【0121】
4. 獲得された番組が視聴されるとき、その番組に関する付加情報を、(ある形式のオンスクリーンディスプレイ(OSD)が好ましい)任意の適切な技術を用いてディスプレイ上に重ねて、提供するために、マッチング番組ガイド・オブジェクトが、用いられる。このような情報には、番組名;元の放送の時刻、チャンネル、または、ネットワーク;保存期限時間;実行時間、または、他の情報を、含ませることができるが、これらに限定されるものではない。
【0122】
5. ライブ番組が視聴されるときには、アプリケーションは、マッチング番組ガイド・オブジェクトを見つけるために、現在の時刻、チャンネル、および、チャンネルマップを用いる。このオブジェクトからの情報が、上述のような任意の適切な技術を用いて、表示される。視聴者がチャンネルを変えたとき、新しい番組が始まるとき、コマーシャルによる中断の後の番組の再開時、視聴者による要求時、または、他の条件に基づいて、この情報は、自動的に表示させることもできる。
【0123】
6. 2の場合に記述した技術と同様の技術を用いて、アプリケーション・ソフトウェアは、視聴者が関心を持つであろう宣伝マテリアルを獲得することもできる。この情報は、視聴者が要求したときに提示することもできるし、また、ある都合のよい時点で、出力テレビジョン信号に自動的に挿入することもできる。例えば、放送中の番組の広告を、嗜好の優先順位がより高い、別の広告で置き換えることができる。1998年7月30日に出願された「Multimedia Time Warping System(マルチ媒体時間伸縮システム)」という名称の米国特許第6,233,389号明細書に記述されている時間伸縮装置(time-warping apparatus)を用いることによって、如何なるの時点においても、記憶されている如何なる番組をも、出力テレビジョン信号に挿入することが、可能である。この時間伸縮装置は、記憶されている番組がこの仕事をなすために挿入されている間、それに重ねられる番組を遅延させることを可能にする。
【0124】
好みの番組のリストを作成する方法
視聴者の嗜好は、いくつかの方法で得ることができる。視聴者は、ある番組の獲得を要求することができる。これは、これらの番組に対し、できる限り最高の優先順位を与えるという結果になる。この代わりに、視聴者は、視聴者インターフェイスを介して供給される従物(appurtenance)を用いて、恐らくは、特定の番組の宣伝スポットに応答して、または、番組の視聴中においてさえ、嗜好を選択することができる。最後に、視聴パターン:視聴された番組、視聴された、または、無視されたコマーシャル広告等から、嗜好を推定することもできる。
【0125】
どの場合においても、このような嗜好は、複製されたデータベースに記憶されているテレビジョン視聴オブジェクトに対応していなければならない。番組オブジェクトには、各特定の番組に関する多数の情報、例えば、題名、解説、監督、製作者、俳優、格付け等が含まれる。これらの情報は、番組オブジェクトに付された属性として記憶される。
【0126】
個々の各属性から、嗜好オブジェクトを作成することができる。このようなオブジェクトは、以下の情報を記憶する。
1. 俳優または監督に対する嗜好のような、嗜好アイテムのタイプ。
2. 複数のボタンの押下、または、他の手段によって示される可能性がある、視聴者によって与えられる嗜好の重み。
3. 他の嗜好との関連において静的に割り当てられる嗜好の重要度。例えば、俳優の嗜好が、監督の嗜好より重要であるということ。
4. 嗜好アイテムの実際の値。例えば、監督の名前。
【0127】
図5に示されるように、嗜好オブジェクトは、番組ガイド・オブジェクトに対して記述された階層と同様の階層として、データベースに記憶される。しかしながら、この階層は、嗜好が表されるにつれて、インクリメンタルに構成される 500。このように組み立てられた階層は、「直接的」嗜好、例えば、視聴者のアクション、または、推論された嗜好から導出された嗜好に基づく。
【0128】
同様の階層が、同じ嗜好オブジェクトを指す「間接的」嗜好に基づいて展開される 501。一般に、間接的嗜好は、集合オブジェクトに対する嗜好が作成されるときに作成され、かつ集合されたオブジェクトの収集によって導かれる直接的嗜好をさらに重み付けするために用いられる。間接的嗜好の階層を介して参照される嗜好オブジェクトは、集合オブジェクトの一部である、利用可能な番組オブジェクトを計数し、かつ、このようにして見つけられた各属性の嗜好オブジェクトを作成または更新することによって、作成または更新される 502。
【0129】
特定の嗜好503の重みは、0から始まる。その後、表現された嗜好の程度に基づいて(恐らくは、複数のボタン押下によって)、標準値が、加えられ、または、無関心が表現されたときには、標準値が減算される。嗜好が、集合視聴オブジェクトに基づいて表現される場合には、その集合されたオブジェクトに従属する全ての視聴オブジェクトによって作成される全ての嗜好が、同様に重み付けされる。したがって、該当する嗜好要素の新しい重み付けは、その前の重み付けから作成される。このプロセスは、表現することが許されている嗜好の程度によって制限されるので、全ての重み付けは、制限された範囲にはいる。
【0130】
本発明の好適な一実施例の場合、非線形の組み合わせを、嗜好アイテムの重み付けのために用いることができる。例えば、中央サイトによって供給される統計モデルを用いて、3つの属性に対して共同して極度に重み付けされている嗜好は、4番目の属性も、同様に、極度に重み付けされるべきであることを示していると、クライアントは、推論することができる。
【0131】
好ましい番組のリストは、以下のように作成される。
1. 可能な各番組オブジェクト属性をリストするテーブル504が、組み立てられ、そして、その属性に対して存在する如何なる嗜好オブジェクトも、そのエントリにリストされる。
【0132】
2. 嗜好アイテムが、俳優名のような記号列である場合には、その記号列に対する32ビットデジタル署名が、32ビットCRCアルゴリズムを用いて計算され、かつこの嗜好アイテムは、記号列自体ではなく、このテーブルアイテムによって記憶される。これは、2つの異なる記号列が、同じデジタル署名を作成するという危険をほとんどもたらさない。したがって、このことは、記号列の比較を行う必要が無いので、はるかに高速なテーブルの走査を可能にする。
【0133】
3. データベース中の各番組オブジェクトとこの番組の各属性とに対して、この属性が、テーブルにおいてルックアップされる。この属性が存在する場合には、この属性に対する嗜好オブジェクトのリストが、現在の番組オブジェクトの属性とマッチするかどうか検査される。マッチすれば、この嗜好オブジェクトに関連した重みが、その番組オブジェクトに関連した重み付けに加えられて、その番組に対する単一の重みが、生成される。
【0134】
4. 最後に、これらの番組オブジェクトは、各番組に対する総体的な重み付けに基づいて、ランク順序付けされ、これにより最高に好ましい番組から好ましい程度が最低の番組までの集合が得られる。
【0135】
この最終的な優先順位が付されたリストが与えられると、記録予約が、以下に記述する方法を用いて作成される。その結果、視聴者が非常に関心を持つ、記録された番組の収集が得られる。
【0136】
利用可能な記憶空間に対して記録予約するために適用される方法
前述したように、記録された番組は、一般に、保存期限日を持ち、その日以降その記録された番組は、クライアント記憶装置から除去されるであろう。視聴者は、番組を、もっと長く保存しなければならないということ(これは、視聴者が選択した期間だけ保存期限を遅らせる)を、いつでも指示することができる。本発明は、番組を記録するために利用可能な記憶装置を、「キャッシュ」と見る。視聴されなかった番組は、番組が、記録後すぐに見られなかった場合には、見られないであろうという仮定に基づいて、一定時間後に除去される。視聴された番組は、これらには、もはや関心が持たれないという仮定に基づいて、ただちに削除の候補になる。
【0137】
古い番組の記録および削除を適切に予約することによって、古い番組が削除され、新しい番組が加えられるので、より小さな記憶エリアを、はるかに大きくみなすことが可能である。さらに、リソースが利用可能であれば、推論された視聴者の嗜好に基づいた番組の記録を、予約することができる。これらは、「ファジイ」記録と呼ばれる。これにより得られるシステムでは、番組記憶エリアが、視聴者が関心を持つ番組で常に「満杯」である。つまり、何れの番組も、その場所が別の番組により置換されるか、または、視聴者自身が、それを削除するまで、除去されない。
【0138】
さらに、視聴者は、記録する番組をいつでも選択することができるので、その記録ウィンドウは、別の番組予約された記録と衝突するかもしれず、または、番組を記録しなければならないときに利用可能な十分な空間が、存在しないかもしれない。本発明には、このような衝突を解決するユニークで新規な方法が、含まれている。
【0139】
衝突は、2つの理由:記憶空間の不足、または、入力源の不足で発生し得る。本明細書に記述されるテレビジョンの視聴システムには、ビデオを記録するための限られた数の入力源、および、記録されるビデオを記憶するための容量が限られた、磁気ディスクのような、記憶媒体が、含まれている。かなりの期間にわたって放送されるテレビジョン番組を全て記録することは、不可能である。したがって、適正な番組を視聴可能にしておくためには、リソースが制限されていることにより発生する衝突を解決することが、鍵である。
【0140】
再度、図6を参照すると、本発明は、2つの予約、即ち、空間予約601と入力予約602とを維持している。空間予約は、現在記録されている番組と今後記録が予約されている番組との全てを、追跡する。任意の所定時刻に利用可能な空間の大きさは、占拠されている全ての空間(または、その時刻に占拠されているであろう空間)を合計し、そして、それを、番組を記憶するために利用可能な総容量から減算することによって、見出すことができる。推論された嗜好に基づいて記録(「ファジイ」記録)するように予約された番組は、この計算にカウントされない。このような番組は、自動的に、あらゆる衝突の決定を失っている。
【0141】
記録の開始から、それの保存期限が過ぎるまでの間の如何なる時点においても、番組を保持するための十分な空間が利用可能であるならば、その番組は、記録可能である 603。これに加えて、番組の終わりまでその番組を記録するために利用可能な入力がなければならない。入力予約602は、各入力源に対して開放されている時間帯と、占拠されている時間帯とを追跡する。本発明の好適な一実施例の場合、複数の入力源を、同一のサービスに用いることはできない。例えば、1つの入力を、デジタル・テレビジョン信号からのものとし、かつ、別の1つの入力を、異なる番組のアナログ・テレビジョン信号からのものとすることはできる。この場合、番組予約中、望みの番組を記録することができる入力だけしか、考慮されない。
【0142】
図7には、好適な一実施例における記録を予約するためにとられるステップを記述するフローチャートが、示されている。最初に、関心のある番組の放映が順序付けられたリストが、作成される 701。本発明の好適な一実施例は、記録ができるだけ早くなされるように、これらの放映を、時刻で順序付けしているが、如何なる特定の順序付けを、選ぶこともできる。次に、このリスト内の各放映702をチェックして、上述のような入力衝突703または空間衝突704が、生じるか否かを見る。その放映には、衝突が無いことが判ると、その番組は、記録のために予約される 705。
【0143】
衝突がある場合には、本発明の好適な一実施例では、入力衝突を持っていない番組の放映しか選択されない 706。再度、図6を参照すると、1つの記録の寿命が終わるまでに、他の番組が記録され、または、その保存期限が過ぎるので、利用可能な空間の大きさが変わり得るということは明らかである。その後、放映のリストは、好ましくは、記録候補の寿命の間に利用可能な空間の最少量により、ソートされる。他の順序付けを、選んでもよい。
【0144】
再度、図7を参照すると、各候補放映に対して、視聴者には、衝突する番組の保存期限日を短くするオプションがあることが示されている 708, 709。この順序付けの結果として、視聴者には、これらの選択が、番組予約された番組への影響が最小のものから最大のものまでの順に示されることになる 707。この順序付けを、用いるということは、本発明の必要条件ではない。
【0145】
視聴者が、保存期限時間を短くする全ての可能性を拒絶する場合には、最終ステップでは、入力衝突を持つ放映が選択され710、かつ最初の衝突解決過程におけるように、このような放映がソートされる711。その後、視聴者には、望みの番組を選ぶために、以前に予約された各記録を取り消すオプションが提示される 712, 713。もちろん、視聴者は、結局のところ、新しい番組は何も記録しないと決定することもできる 714。
【0146】
本発明の好適な一実施例の場合、全ての衝突が、できるだけ早期に解決される。このことは、視聴者に、何を記録するかについて、より多くの制御を与える。視聴者自身が、記録する番組を選択するときには、図7に記述されたアルゴリズムが、用いられて、ただちに、記録が予約され、かつ、発生する如何なる衝突も管理される。
【0147】
ひとたび、視聴者自身による選択がなされ、そして、視聴者が、それが記録されるべきであると通告していたのであれば、それは、視聴者の明示的な承認なしには、取り消されない。
【0148】
ファジイ記録は、クライアント・デバイスのバックグラウンド・タスクによって、周期的に予約される。前述したように、好ましい番組の優先順位を付けられたリストが与えられると、バックグラウンド番組予約部は、そのリストが空になるまで、または、記録の可能性がなくなってしまうまで、好ましい各番組を順番に予約することを試みる。他の予約された番組との衝突がないときのみ、好ましい番組が、予約される。既に予約されてしまっている好ましい番組は、第1に、それが、視聴者自身の選択と衝突した場合、および、第2に、視聴者の嗜好の変化によって、その時に記録することができるより優先順位の高い番組が識別された場合、の2つの条件下で削除することができる。
【0149】
記録が要求されている集合視聴オブジェクトを扱うときには、さらなる複雑さが発生する。衝突の解決を、このようなオブジェクトに対して、上述の方法によって扱ったならば、場合によっては、多数の衝突が、発生するかもしれない。これは、衝突を解決している視聴者に、困惑する、また、苛立たしい体験をもたらす。したがって、集合オブジェクトが、記録に選ばれる場合には、衝突は、現存する予約を選ぶことによって、自動的に解決される。
【0150】
本発明の好適な一実施例の場合、集合オブジェクトの記録に起因する衝突は、関与する番組の嗜好重み付けを用いて解決される。複数の衝突が、集合オブジェクトの特定の番組によって引き起こされた場合には、その番組は、その嗜好が、衝突している全ての番組の嗜好を超えたときしか記録されない。
【0151】
ソフトウェア・オブジェクトに適用される方法
クライアント・システムは、適切に動作するための複雑なソフトウェア環境を必要とする。オペレーティング・システムは、クライアント中のハードウェア・デバイスと、これらのデバイスをマニピュレートするソフトウェア・アプリケーションとの間の対話を管理する。テレビジョン視聴オブジェクト・データベースは、これとは別個のソフトウェア・アプリケーションによって管理される。時間伸縮ソフトウェア・アプリケーションは、さらに別のアプリケーションである。
【0152】
クライアントのハードウェア・デバイスで実行されるこれらのおよび他のソフトウェア・サブシステムには、新しい特色を加える、または、欠陥を訂正することが望ましい。本明細書に記述される方法を用いて、クライアント・システム・データベース内に、更新されたソフトウェア・モジュールを含む視聴オブジェクトを、複製することが可能である。ひとたび、このような更新されたソフトウェア・モジュールがクライアント・システム・データベースに存在すれば、以下のユニークで新規な方法を用いて、更新されたソフトウェアがインストールされ、かつ、クライアント・システムが、その新しいソフトウェアの実行を開始する。
【0153】
デバイスのソフトウェア環境は、電源が、最初に、そのデバイスに印加されたときに生じる、一連のステップとして、例示される。各ステップは、以下のステップが持つ適切なアプリケーションをサポートする状態情報を確立する。最後のステップは、デバイスを管理し、かつ視聴者と対話するアプリケーションを開始させる。これらのステップは、以下のとおりである。
【0154】
1. デバイス中の読み出し専用の、または、電気的にプログラム(書き込み)可能なメモリが、命令(インストラクション)の初期ブートストラップ(コンピュータを起動させる過程)シーケンスを保持している。これらの命令が、クライアント・デバイスの低レベルのパラメータを初期化し、ディスク記憶システムを初期化し、そして、ブートストラップ・ローダをそのディスクからメモリにロードすると、そのメモリに、実行が渡される。この初期ブートストラップは、それが、電気的にプログラム可能なメモリに存在している場合には、変更することができる。
【0155】
2. その後、第2ステージ・ブート・ローダが、ディスク・ドライブ上のオペレーティング・システムを見つけて、そのオペレーティング・システムをメモリにロードし、そして、このオペレーティング・システムに実行を渡す。このローダは、初期ローダによって容易に見つけられるように、ディスクの特定の位置に存在しなければならない。
【0156】
オペレーティング・システムは、必要なハードウェアおよびソフトウェアの初期化を行なう。その後、それは、ディスク・ドライブから視聴オブジェクト・データベース・ソフトウェアをロードして、アプリケーションの実行を開始する。時間伸縮ソフトウェアおよび視聴者対話ソフトウェアのような、他のアプリケーション・ソフトウェアも、ロードされて、始動される。このソフトウェアは、通常、オブジェクト・データベース、または、獲得されたテレビジョン番組とは別個の、ディスク上のエリアに位置する。
【0157】
新しいソフトウェアは、単純に、ディスク・ドライブ上の適切な場所にそれをコピーしかつデバイスを再起動させることによって、インストールされるのが、理想である。この動作は、特に家庭環境において、危険を伴う。電源が、ソフトウェアをコピーしている間に切れるかもしれず、これは、一貫しないソフトウェア・イメージおよび潜在的な動作上の問題を引き起こすかもしれない。新しいソフトウェアは、適切な動作を妨げる欠陥を持っているかもしれない。故障が、ディスク・ドライブに生じるかもしれず、これは、ソフトウェア・イメージを損なう。
【0158】
本発明の方法は、ディスク・ドライブにより記載されているが、当業者であれば、本明細書において記述される方法は、一般的に、如何なる永続的な記憶システムにも当てはまることを容易に認識するであろう。ディスク・ドライブおよび他の永続的な記憶システムは、通常、セクタと呼ばれる、固定サイズのブロックのシーケンスにフォーマットされる。「パーティション」は、記憶装置を論理的に独立したエリアに分割する、連続しかつオーバーラップしないこのシーケンスの下位集合である。
【0159】
図8を参照すると、本発明は、「ブート・セクタ」804と呼ばれる、ディスク・ドライブ803上の固定位置にある情報セクタを保持している。ブート・セクタ804は、初期ブートストラップ801が、ドライブ803のパーティショニングを理解するための、また、第2ステージ・ブート・ローダ806を見つけるための十分な情報を含んでいる。
【0160】
ディスクは、少なくとも7つのパーティションに仕切られている。第2ステージ・ブート・ローダのコピー806を保持するための専用の2つの小さなパーティション、オペレーティング・システム・カーネルのコピー807を保持する2つのパーティション、アプリケーション・ソフトウェアのコピー808を収容する2つのパーティション、および、スクラッチ・メモリ809として用いられる1つのパーティションが、ある。複製された(2重の)パーティションにおいては、パーティションの1つが、「プライマリ」とマークされ、もう1つが、「バックアップ」とマークされる表示が、ブート・セクタ805に記録される。
【0161】
当業者であれば、本明細書においては、冗長性に対し、2つのパーティションが、記述されているが、それ以上に複製されたパーティションを生成することによって、3重、4重、または、それ以上の冗長性を達成することができることを容易に認識するであろう。
【0162】
図9Aおよび9bを参照すると、起動901の直後に、初期ブートストラップ・コードが、ブート・セクタを読み出し 902、パーティション・テーブルをスキャンして、第2ステージ・ブート・ローダの「プライマリ」パーティションを見つける。その後、これは、このプログラム(第2ステージ・ブート・ローダ)を、メモリにロードすることを試みる 903。これが、例えば、ディスク・ドライブの故障によって、失敗すれば 904、ブート・ローダは、「バックアップ」パーティション内のプログラムを、メモリにロードすることを試みる 905。何れの試みが成功しても、ブート・ローダは、その後、このプログラムがロードされたパーティションの表示とともに、この新しくロードされたプログラムに、制御を渡す 906。
【0163】
同様に、第2ステージ・ブート・ローダは、パーティション・テーブルを読み出して、「プライマリ」オペレーティング・システム・カーネルを見つける 907。このカーネルをロードできなければ 908、「バックアップ」カーネルが、代わりに、ロードされる 909。何れの場合においても、上のステップから渡されたソース・パーティションに加えて、このソース・パーティションの表示とともに、制御が、このオペレーティング・システムに渡される 910。
【0164】
最後に、オペレーティング・システムが、アプリケーション・ソフトウェアを収容している「プライマリ」パーティションを見つけて、初期アプリケーションのロードを試みる 911。これが、失敗すると 912、オペレーティング・システムは、「バックアップ」パーティションを見つけて、それから、初期アプリケーションをロードする 913。このソース・パーティションの表示が、前のステップからのソース・パーティション情報に加えて、初期アプリケーションに渡される。この時点で、アプリケーション・ソフトウェアが、クライアント・システムで実行可能となり、正常な視聴管理動作が、開始する 914。
【0165】
この動作のシーケンスにより、ディスク・アクセス・エラーからの妥当なレベルの保護が実現される。これは、さらに、これらのいずれのレベルにおいても、新しいソフトウェアをインストールし、かつ信頼性高く動作させることを可能にする方法も可能にする。
【0166】
オブジェクト・データベース内の「インストーラ」視聴オブジェクトは、ソフトウェアのインストールの試みの状況を記録するために用いられる。これは、新しいソフトウェアをインストールする試みが進行中であるという表示を含めて、上述の3つのレベルの各々に対するパーティションの状態を記録する 915。この動作は、データベースのトランザクション特質により、信頼性が高い。
【0167】
図10に示されるように、3つのレベルのいずれにおいても新しいソフトウェア・イメージのインストールは、以下のように扱われる。新しいソフトウェア・イメージが、最初に、該当するバックアップ・パーティションにコピーされ 1001、ソフトウェアのインストールが進行中であるということが、データベースに表示される 1002。次に、パーティション・テーブル内のプライマリ・パーティションとバックアップ・パーティションとの表示が、交換され 1003、そして、システムが、再起動される 1004。最後に、制御が、初期アプリケーションに渡される。
【0168】
再度、図9Bを参照すると、このアプリケーションの最初のタスクは、インストーラ・オブジェクトを更新することである。各レベル921, 922を得るために、アプリケーションは、インストールが、処理されたか否かをチェックし 916, 917、そして、このレベルが、プライマリ・パーティションからロードオフされたことを確認する 918。そうであれば、このレベルのインストールは、成功しており、そして、インストーラ・オブジェクトが、更新されて、このレベルにおける成功が、示される 919。そうでなければ、このアプリケーションは、このレベルに対するバックアップ・パーティションを、プライマリ・パーティション上にコピーし、このレベルに対するインストーラ・オブジェクトに、失敗を示す 920。パーティションをコピーするということは、レベルに対して既に知られている真性のソフトウェアのバックアップコピーが、いつでも利用可能になっていることを保証するということである。
【0169】
本発明の好適な一実施例の場合、ソフトウェアのトップ・アプリケーション・レベルのインストールの終了処理を、アプリケーション環境の全ての部分が成功裡にロードされてしまうまで、遅延させて、それから開始することができる。これは、新しいソフトウェアに永久に切り替わる前に、アプリケーション環境の全ての部分が適切に働くことを補償する、さらなるレベルを提供する。
【0170】
動作状況オブジェクトに適用される方法
動作状況オブジェクトは、クライアント・システムの使用、性能、および、動作に関する情報が記録される、視聴オブジェクトの1つのクラスである。これらのオブジェクトは、中央サイトとの通信が確立されたときにはいつでも、中央サイトに収集される。
【0171】
以下の動作状況インディケータが、タイムスタンプととともに、後の収集のために記録される。
【0172】
1. 主として、リモート・コントロール・デバイスのボタンを押下する、視聴者のアクションが、記録される。各「ボタン押下」が、現在の時刻、および、現在の視聴者のコンテキスト(状況)のような、任意の他のコンテキスト情報と共に記録される。中央サイトでこのオブジェクトを後加工することによって、各アクションが取られたコンテキストを含めて、視聴者のアクションが、完全に追跡される。
【0173】
2. 番組の記録の開始または終了、または、視聴者の嗜好に基づいて記録する番組を選択する自動アクションが、記録される。さらに、獲得された番組の削除も、記録される。中央サイトにおけるこのオブジェクトの後加工によって、任意の時点において記憶装置に永続的な存在する番組を含めて、クライアント・システムが行った番組獲得アクションが、完全に追跡される。
【0174】
3. 受信、インストール、および、再起動後の結果を含むソフトウェア・インストール・アクションが、記録される。
【0175】
4. 電源の停止/再始動、デバイスの内部温度プロファイル、永続的な記憶装置アクセスエラー、メモリ・パリティ・エラー、および、プライマリ・パーティションの不具合を含むが、これらに限定されない種々の種類のハードウェアの異常。
【0176】
全てのアクションが、タイムスタンプとともに記録されるので、線形時間ベースの順序付けを用いて、クライアント・システムの動作を再現することが可能である。これは、アクションと動作を相関させるように順序付けられたイベントのリスト上で動作するマニュアル方法または自動方法の実現を可能にする。例えば、予期される自動アクションが、新しいソフトウェアを用いて再起動させた直後に、起動しなければ、この新しいソフトウェアは、欠陥を持っていると推論することができる。
【0177】
中央サイト・システムによるテレビジョン視聴オブジェクトの処理
テレビジョン視聴オブジェクトのソース
クライアント・システムは、テレビジョン視聴オブジェクトについて単一のソース(中央サイト)を持つ。中央サイト・オブジェクト・データベースは、以下のテレビジョン視聴オブジェクトについて多くのソースを持つ。
【0178】
1. 外部のソースから得られた番組ガイド情報は、処理されて、「番組」、「放映」、「チャンネル」、「ネットワーク」、および、他の関連するオブジェクトを示す、一貫性を持つ番組ガイド・オブジェクトの組み合わせを生成する。このオブジェクトの組み合わせは、従属性(「チャンネル」は「ネットワーク」に従属し、「放映」は「番組」に従属する)、および他の相関関係を持つ。完全な、一貫性を持つオブジェクトの組み合わせが準備されると、それは、アトミック・オペレーションとしてデータベースに加えられる。
【0179】
2. 新しいアプリケーションまたは既存のソフトウェアの改訂版を含む新しいソフトウェアは、最初、「ソフトウェア」視聴オブジェクトにまとめられる。上述したように、このソフトウェアは、動的にロードされるライブラリに従属するアプリケーションのように、相互従属性を持つことができる。これは、関与するソフトウェア・オブジェクトの相互関係に反映されなければならない。別の一例においては、各々が、異なるソフトウェア・オブジェクトを必要とする2つのタイプのクライアント・システムを使用することもできる。これらのソフトウェア・オブジェクトは、これらがターゲットにされるシステムのタイプを示す属性を持たなければならない。ひとたび、一貫性を持つオブジェクトの組み合わせが利用可能になれば、それは、アトミック・オペレーションとしてデータベースに加えられる。
【0180】
3. 各クライアント・システムは、その内部に埋め込まれたユニークな秘密キーを持つ。この秘密キーと組み合わされる公開キーが、クライアントタイプ、システムの記憶量などのような、クライアントに関する他の関係情報とともに、「クライアント」管理オブジェクトにロードされる。これらのオブジェクトは、必要なときに、認証オブジェクトを作成するために用いられる。
【0181】
4. 集合番組ガイド・オブジェクトが、同様に加えられる。しかしながら、この場合、集合オブジェクトは、データベース内に既に存在するプリミティブ番組ガイド・オブジェクトを参照しなければならない。さらに、テキスト記述、スクリーンベースのアイコン、および、他の情報属性のような他のオブジェクトが、集合オブジェクトに付加される。ひとたび、集合に対する一貫性を持つ付属オブジェクトの組み合わせが利用可能になれば、それは、アトミック・オペレーションとしてデータベースに加えられる。
【0182】
5. クライアント・システムから収集されたデータ。
【0183】
如何なる数の視聴オブジェクトのソースがあってもよいことは、間違いなく明らかであり、ここでの列挙は、単に最も基本的な可能なソースを示しているにすぎない。
【0184】
テレビジョン視聴オブジェクトでの動作
中央テレビジョン視聴オブジェクト・データベースでの多数の可能な動作がある。以下の例は、行なうことができる処理のタイプを示すことが目的であるが、起こり得る動作は、これらの例に限定されない。
【0185】
1. 種々の視聴オブジェクトを用いて、いくつかの関係する統計分析タスクを行なうことができる。
【0186】
1.1. 多数のアップロードされた動作状況オブジェクトを検査することによって、ハードウェアの信頼性の傾向と故障モードとの広範囲の分析を行うことが、可能である。例えば、クライアント・デバイスの内部温度と、期待されるMTBF(平均故障間隔)とを相関させることが可能である。
【0187】
1.2. 多数のアップロードされた視聴情報を検査することによって、クライアント・デバイスの種々の母集団に関する人口統計情報および心理学的情報を導出することが、可能である。例えば、クライアント・デバイスが存在する特定の郵便番号の範囲内で最も視聴されているTV番組を互いに相関させることが可能である。
【0188】
1.3. 同様に、多数の視聴情報オブジェクトを検査することによって、特定の番組に対する「格付け」値および「シェア」値を、既存の番組格付け方法と異なり、完全に自動化された方法で作成することが可能である。
【0189】
1.4. 視聴オブジェクト・データベースで行なうことができる統計分析タスクには、多くの他の例がある。これらの例は、本発明の適用性を制限するためのものではなく、一例として、行なうことのできる動作の範囲を例示するためのものである。
【0190】
2. 特別集合オブジェクトを、全ての利用可能な視聴オブジェクトのうちの1つ以上の属性に基づいて、自動的に作成することができる。
【0191】
このような作成は、通常、最初に、各視聴オブジェクトから、番組解説、俳優、監督などの関心が持たれる情報を抽出して、番組および属性の単純なテーブルを組み立てることによって行われる。次に、集合視聴オブジェクトが、1つ以上の属性を選び、その選ばれた属性が、なんらかの関係で組み合う番組を、その集合に、加えることによって作成される。その後、これらのオブジェクトは、恐らくは地理的な情報または他の情報に基づいて、伝送のために作成されるスライスに含められる。生成することができる、いくつかの集合の例は、以下のとおりである。
【0192】
2.1. 大都市における媒体リーグ・フットボール試合のようなイベントに基づく集合。この場合には、この都市のなか、または、周辺のクライアント・デバイスによって視聴可能な全ての番組が、収集され、そして、番組解説から、試合をするチーム名、コーチ名、主要選手名、スタジアム名などが探される。これに組み合う番組オブジェクトが、この集合に加えられ、この後、これは、この都市のなか、または、周辺の領域のクライアント・デバイスのみへの伝送のためにスライスされる。
【0193】
2.2. 多数の視聴者が共通に関心を持つ人に基づく集合。例えば、1つの集合を、これから1週間以内に放送される全ての「ジョン・ウェイン」の映画から組み立てることができる。
【0194】
2.3. 視聴行動に基づく集合を、作ることができる。この場合には、アップロードされた視聴オブジェクトが、視聴された番組のタイプ、視聴された実際の番組などのような、共通に関心のある要素を得るために走査される。例えば、この1週間に全てのクライアント・デバイス上で視聴された番組の「トップ10リスト」集合を、これらの番組の、続く1週間の放映を含めて作成することができる。
【0195】
2.4. 視聴者自身による選択に基づく集合。番組の視聴中に、恐らくは、4つの知覚属性(物語の筋、演技、演出、映画撮影技術)に基づいて、視聴者に、現在の番組に「投票する」機会を提示することが出来る。これは、後にアップロードされる視聴オブジェクトを作成する。この後、これらの投票が、くわしく調べられて、この番組の総体的な格付けが、決定され、それは、検討のために投票した人々に伝送される。
【0196】
2.5. 本発明の基本的な機能を、どのようにして、サービスオペレータが、クライアント・デバイスのユーザに、検討と選択とのために、関係のある番組の、あらかじめソートされ、あらかじめ選択されたグループを供給することを可能にすることについては、多くの他の例がある。これらの例は、本発明の適用性を制限するためのものではなく、一例として、行なうことのできる動作の範囲を例示するためのものである。
【0197】
3. 集合オブジェクトを作成するために、マニュアル方法を用いる(「オーサリング」と呼ばれることもあるプロセス)こともできる。この場合には、集合を生成する人は、その集合に明示的に加えるための番組を選ぶ。その後、それは、上述と同じように伝送される。
【0198】
集合番組オブジェクトが、さらに、嗜好の表現、または、他の情報の記録を可能にすることができることは、明らかである。これらの結果は、中央サイトにアップロードして、集合作成または統計分析などの次のラウンドの基礎を形成することができる。
【0199】
このフィードバック・ループは、サービス・プロバイダと、クライアント・デバイスを用いている全視聴者との間の回路を閉じる。このユニークで新規なアプローチは、サービス・プロバイダが、信頼性の高い、一貫性を持つサービス動作を維持すると同時に、個人個人が関心を持つテレビジョン番組の視聴を提示しかつプロモートするユニークで、人の心をつかむ形態を提供することによって、テレビジョン視聴の新しい形式を提供する。
【0200】
電子コンテンツ−所有権、売買、および保護
著作権法は、著作権で保護されたマテリアルが、印刷されている、または、なんらかの形態で明示されているオブジェクトを物理的に分散させることに、大いに、関与している。エンド・ユーザは、このマテリアルのコピーを購入する行為により、このマテリアルを使用するライセンス(認証)を取得する。コンテンツを電子的に分散させることも、これと同義であることは、しばしば認識されている。
【0201】
残念ながら、この見解には、重大な問題がある。コンテンツの電子コピーは、本質的に、自由になすことができ、このようなコピー行為を停止させることは、非常に困難である。本発明のシステムのような閉じたシステムのコピー作業は、このようなコピー作業を大いに制御することができるので、魅力的である。しかしながら、これは、次のような基本的な問題を提起する。クライアント・システムが、なんらかの理由で破壊されたとき、何が起こるか?この後、ユーザは、彼が支払ったコンテンツの公正な使用を断たれる。このユーザは、別の人に売ることができる物質的なオブジェクトの場合とは異なり、このようなコンテンツの二次取引に関与する機会も断たれる。
【0202】
公正な使用のコンセプトとは、このコンテンツを再生する、または、表示することができる如何なるパーソナルデバイスにおいても、購入者が、このようなデジタル・コンテンツを使用することが出来なければならないことを、意味する。ユーザが、このようにできる方法を提供することが、重要と思われる。
【0203】
上述の分散されたテレビジョンの視聴管理システムは、従来の電子分散システムが持つ多くの問題点を解決した、エンド・トゥ・エンド・システム・アーキテクチャおよび安全な分散管理システムである。これらの問題点のいくつかは、以下のとおりである。
【0204】
・ 従来の電子分散システムは、自動化されておらず、それによって、システムにコンテンツを導入するためには、または、システムからコンテンツを抜き取るためには、直接の対話を必要とする。
【0205】
・ 従来の電子分散システムは、信頼性に乏しい、即ち、長いダウンロードは、失敗するかもしれず、また、データの無欠性が、確立されていない、など。
【0206】
・ 従来の電子分散システムは、安全でない−認証方法またはデータ・安全性方法を、通常、伴っていない。
【0207】
・ システム内の保護されたコンテンツに対して、著作権による制限を実施することが、難しい。
【0208】
・ 保護されたコンテンツの販売および交換をサポートするための支払いシステムまたは商取引システムがない。
【0209】
再度、図1を参照すると、本発明は、認証された、信頼性の高いコンテンツをダウンロードする能力、および、追跡能力を備えている。上に言及したように、分散サーバ110からクライアント・システム101への視聴オブジェクトの伝送は、通常の放送伝送方法(衛星、ケーブル、アンテナ)、および、インターネットまたはイントラネットに直接、または、これらを渡って接続する接続ベースの伝送方法(電話モデム、イーサネット(登録商標)、ISDN、DSL、ケーブルなど)のような通信媒体を介して遂行される。
【0210】
分散サーバ110とクライアント・システム101との間のネットワーク接続を用いたときには、放送媒体を介する場合と同じシステム能力を、ブロードバンド・ネットワークを介して備えることができる。クライアント・システムは、記憶デバイス、例えば、デジタル・ビデオ・レコーダ(DVR)、を組み込んだセット・トップ・ボックス、コンピュータ、または、携帯デバイスを具備している。
【0211】
本発明のアーキテクチャは、電子的に分散されたデジタル・コンテンツを管理するためのシステムを提供する。本発明は、収益生成のための新たな機会を提供すると同時に、著作権所有者が、彼らの作品が公正に補償される必要性と、公正な使用の要求との両方を満たす。本発明は、また、デジタル・コンテンツの電子分散に基づく売買を管理するためのビジネス方法を促進する。
【0212】
テレビジョン視聴オブジェクトは、非常に多くの相異なるタイプのデータを含むことができる。例えば、上述のように、ソフトウェア視聴オブジェクトには、新しいアプリケーション、または、既存のソフトウェアの改訂版を含むソフトウェアが、含まれている。著作権で保護されるマテリアル(例えば、絵、ビデオ、音楽、e本など)と考えられるような他の電子コンテンツも、テレビジョン視聴オブジェクトに含ませることができる。テレビジョン視聴オブジェクトは、また、ウェブ指向のURLのような、デジタル・コンテンツへの「ポインタ」を含んでいてもよい。この場合、これらのポインタは、クライアント・デバイスによって、デジタル・コンテンツを個々に得るために用いられる。
【0213】
図11を参照すると、例えば、音楽を、本発明のアーキテクチャを介してユーザに分散させることができる。ユーザは、クライアント・システム1104のインターフェイスを介して、または、ウェブ・サイト1105を介して、歌の購入希望を登録する。利用可能な歌のリストが、クライアント・システムまたはウェブ・サイトを介して、ユーザに表示される。本発明の中央サーバ1102が、ライセンス・データベース1106に、歌の購入をログする。この購入は、電話通信サーバ1102へのインターネット接続を介して直接、または、クライアント・システム1104が、電話通信サーバ1102を介して、本サービスとコンタクトをとるときにバックホールされるログを介して(即ち、視聴オブジェクトが、クライアント・システムから収集されるときに)、発生させることができる。この購入の商取引は、本発明の中央サーバ1102から、クリアリング・ハウス能力を備えた終端商取引サービス1101に伝送される。
【0214】
この歌の電子コピーは、クライアント・システム1104の外部から隠されたエリアに、既に常駐させておくこともできるし、保護された放送チャンネル1103により反復させることもできるし、中央データベース1102において、スライス内で送り出される準備ができているようにすることもできるし、または、インターネット上の安全なサーバ1107上に常駐させておくこともできる。保護された放送チャンネル1103が、用いられる場合には、このコンテンツのスライス(単数または複数の)が、このスライスが放送信号上に変調される局テレビジョン・トランスミッタが共存している機器上にコピーされる。これらの放送指向および同様の放送指向の場合には、スライスは、「反復」される、即ち、このスライスを記述するデータが、新しいスライスが伝送のために供給されるまで、絶えず反復される。これは、エンド・ユーザに、信頼性の高いダウンロードの出現を供給するために必要である。
【0215】
図12を参照すると、この歌は、これが、クライアント・システム1104に常駐し、例えば、特別の音楽プレーリスト1201で利用可能になると、すぐさま、ユーザに「分散」される。このユーザは、クライアント・システムのユーザ・インターフェイスを介して、コンテンツにアクセスする。クライアント・システムは、リモート・コントロールまたはキーボードを介した、単純化されたユーザ・インターフェイスを介して、本発明を、使い易くする。ユーザは、望むように、自分のクライアント・システムから、ライセンスされたコンテンツを、自由に再生することができ、また、それをどのように再生するか(例えば、休止、高速順送り、逆送りなど)を、自由に制御することができる。
【0216】
この商取引された購入は、歌のライセンスに対するものであって、歌自体に対するものではない。本発明のオペレータは、商取引の取り扱いに対する手数料として、購入価格のわずかの部分を受け取ることができる。通常、本発明のオペレータは、分散の費用を負担しない。ユーザは、TVの定期視聴契約またはインターネット・アクセス・サービスによりコストを負担する。
【0217】
全てのライセンスが、追跡されているので、万一、クライアント・システムが、故障しても、本発明のサービスは、どの歌が、ライセンスされているかをライセンス・データベースから検証することができる。この結果、ユーザは、自分の新しいクライアント・システム上で、自分にライセンスされている歌の新しいコピーを抜き出すことができる。このプロセスは、マニュアルでも、本発明のサービスの自動機能としても、行わせることができる。クライアント・システムは、また、同様に、適切なコンテンツが、クライアント・システムに存在しているかを照合して、必要に応じて、コンテンツを削除したり、加えたりする。
【0218】
ライセンスは、今や、価値の高い商品を提示する。したがって、「歌の市場」が、生成される。本発明のサービスは、所有者が、種々の歌に対するライセンスを売りに出す株式取引に似た交換能力を備えている。このサービスは、わずかな商取引手数料、または、なんらかの他の報酬を規定することができる。
【0219】
図13を参照すると、売り手1303は、歌に対する自分のライセンスを、中央サーバ1301上に売りに出すことができる。ユーザは、自分のクライアント・システムまたはウェブ・サイトを介して、売り出されているライセンスのリストを見ることができる。歌に対する売り手1303のライセンスに関心を持った買い手1304は、そのライセンスに入札する(値をつける)。この入札は、売り手と買い手のそれぞれのクライアント・システムを介して、または、ウェブ・サイトを介して、行うことができる。価格が合意されたとき、本発明の中央サーバ1301は、ライセンス・データベース1302内にあるライセンス所有権を、新しい所有者に移し換え、オプションとして、その購入を終端商取引サーバ1305に通知する。中央サーバ1301は、このコンテンツを削除するように、売り手のクライアント・システム1303に命令する。この削除命令は、インターネット接続を介して、本発明のサービスに対するクライアント・システム1303の周期的なコールバックの間のコマンドとしてか、または、衛星のような放送媒体を介して送られるイベントとしてかのいずれかで起こすことができる。違法コピーが生成される可能性を回避するために、恐らくは、売り手のコピーが削除されてしまったことが確認された後で、買い手のクライアント・システム1304が、上述のように、この歌のコピーを受信する。
【0220】
図14を参照すると、本発明は、株式公募とほとんど同じように、歌のパブリッシャ1401(コンテンツ・オリジネータ)が、クライアント・システム1405への市場に、新マテリアルを売り出すことを可能にする。ユーザは、上述のように、自分のクライアント・システム1405を介して、または、ウェブ・サイト1406を介して、その新マテリアルを購入する。中央サーバ1402は、クリアリング・ハウス能力を備えた終端商取引サービス1407に、この購入を伝送する。この購入は、中央サーバ1402によって、ライセンス・データベース1403にログされる。
【0221】
需要および人気が、市場に売り出されるコピーの数を決める。アーティストの新しい歌を早く高値で売るために、限定数のコピーを売り出すことは、考えられる。企業が自社株を買い戻すのと同様に、パブリッシャは、安価なコピーを買い占めることによって、歌の値を増加させることができるかもしれない。
【0222】
特に歌に限定して、記述してきたが、当業者であれば、他の如何なる電子コンテンツ(例えば、ビデオ、e本、絵など)でも、を、本発明により管理することができることを容易に認識するであろう。
【0223】
公正な使用のサポート
図15を参照して、本発明のクライアント・システム1503を、所有者の媒体資産のための「本拠地」とみなしてみよう。所有者が、自分の携帯型のMP3プレーヤ1504に、歌のコピーを得たい場合、彼には、いくつかの方法がある。しかしながら、最初、彼は、クライアント・システム1503を登録したのと同じように、本発明のサービス1501に、MP3プレーヤ1504の所有権を登録する必要がある。
【0224】
各ユーザ・デバイス1504に対して、なんらかの形式で安全な認証能力が、与えられていると仮定しよう。そうすると、本発明が、どのように働くかを理解することは、簡単なことである。所有者は、デバイス1504上への歌のコピーを要求し、本発明のサービス1501は、ライセンス・データベース1502を用いて、デバイス1504が、その所有者に登録されていること、および、その所有者が、その歌に対するライセンスを持っていることをチェックする。ひとたび、この情報が実証されれば、本発明のサービス1501は、ダウンロードによる場合と同じように、この歌を、安全なサーバ1505から、デバイス1504上で利用可能にする。
【0225】
これに代えて、このチェッキングは、所有者のクライアント・システム1503内のソフトウェアによって得られる認証により、所有者の本拠地1503の中でローカルに扱われるかもしれない。そして、所有者のクライアント・システム1503が、デバイス1504にダウンロードを行う。このタイプのシステムでは、クライアント・システムおよびデバイスに、如何なるダウンロードにも先立って、本発明のサービスが、互いに他方が真正であることを通知しなければならないであろう。
【0226】
所有者は、2つ以上のクライアント・システム1503, 1506を所有していてもよい。所有者は、本発明のサービス1501に、これらの自分のクライアント・システムを登録する。サービス1501は、各クライアント・システム1503, 1506に、その所有者によって所有されている互いに他方のクライアント・システムに対する認証情報を供給する。これは、クライアント・システム1503, 1506が、サービス1501の必要なしに、互いに認証することを可能にする。
【0227】
所有者が、1つのクライアント・システム1503から、もう1つのクライアント・システム1506にコンテンツを転送したい場合、彼は、クライアント・システム1503, 1506のうちの1つから、その転送を始めるだけでよい。クライアント・システム1503, 1506は、サービス1501から与えられた認証情報を用いて、互いを認証し、次に、これら自身の間で、コンテンツのコピー作業を始める。所有者が、サービス1501に登録された複数のクライアント・システムを持つことができることは、明らかである。所有者は、自分のクライアント・システムのうちの選択されたクライアント・システムの間で、または、これらのすべての間で、コンテンツを転送することができる。このアプローチは、所有者が、1つの家のなかの複数の部屋で、または、異なる住宅で、コンテンツを再生することを可能にする。
【0228】
本発明は、本明細書において、好適な実施例を参照して記述されているが、当業者であれば、本発明の精神および範囲から逸脱することなく、他の応用で、本明細書において述べられた応用を置き換えることができることを容易に認識するであろう。したがって、本発明は、以下に含まれる請求項によってしか制限されるべきではない。
【0229】
関連出願の相互参照
本出願は、米国特許出願第09/422,139号(1999年10月20日受理)の一部継続出願であり、請求項は、米国仮特許出願第60/347,181号(2002年1月8日出願)および米国仮特許出願第60/434,767号(2002年12月18日出願)の利益を享受する。
【符号の説明】
【0230】
100: 中央サイト
101, 1104, 1405, 1503, 1506: クライアント・システム
102: スライシング
103: 伝送
104: 収集
105: 複製
106: オブジェクト(テレビジョン視聴オブジェクト)
107: 分析
108: テレビジョン放送
109: 接続ベースの伝送(電話モデム、ケーブルモデム)
110: 分散サーバ
111: 電話通信サーバ
601: 空間番組予約
602: 入力番組予約
1101, 1305, 1407: 商取引サーバ
1106, 1302, 1403, 1502: ライセンス・データベース
1504: ユーザ・デバイス
【特許請求の範囲】
【請求項1】
コンテンツについてのライセンスの購入を、ライセンス・データベースに登録するステップと、
ユーザに関連する新規なクライアント・システムの自動機能として、
どのコンテンツが前記ライセンス・データベース内の前記ユーザにライセンスされているかを確認するステップと、
前記ユーザにライセンスされているコンテンツを、前記ユーザに関連する前記新規なクライアント・システムに追加するステップとを、
備える方法。
【請求項2】
前記コンテンツを前記新規なクライアント・システムに追加するステップが、前記新規なクライアント・システムが、前記ユーザに登録されている他のクライアント・システムから前記コンテンツをダウンロードするステップを備える、請求項1に記載の方法。
【請求項3】
前記コンテンツを前記新規なクライアント・システムに追加するステップが、前記ユーザに登録されている他のクライアント・システムが、前記新規なクライアント・システムに前記コンテンツをダウンロードするステップを備える、請求項1に記載の方法。
【請求項4】
前記コンテンツを前記新規なクライアント・システムに追加するステップが、前記新規なクライアント・システムがサーバから前記コンテンツをダウンロードするステップを備える、請求項1に記載の方法。
【請求項5】
前記コンテンツを前記新規なクライアント・システムに追加するステップが、サーバが、前記新規なクライアント・システムに前記コンテンツをダウンロードするステップを備える、請求項1に記載の方法。
【請求項6】
前記コンテンツを前記新規なクライアント・システムに追加する前に、前記ユーザを前記新規なクライアント・システムの所有者として登録するステップを、さらに、備える、請求項1に記載の方法。
【請求項7】
少なくとも1個の購入が、前記新規なクライアント・システムのユーザ・インタフェースを介して取引され、かつ利用可能でライセンス可能な電子コンテンツのリストが、前記新規なクライアント・システムによって表示される、請求項1に記載の方法。
【請求項8】
前記新規なクライアント・システムに前記コンテンツを追加するステップが、前記新規なクライアント・システムが、保護された放送チャンネルから前記コンテンツを抽出するステップを備える、請求項1に記載の方法。
【請求項9】
前記新規なクライアント・システムに前記コンテンツを追加するステップが、前記新規なクライアント・システムが、前記コンテンツをスライスで受信するステップを備える、請求項1に記載の方法。
【請求項10】
前記新規なクライアント・システムが、前記コンテンツを再生する、請求項1に記載の方法。
【請求項11】
プロセッサを備え、かつ請求項1〜10の何れかに記載の方法を実行するように構成されている装置。
【請求項12】
請求項1〜10の何れかに記載の方法をコンピュータに実行させることが出来る命令のプログラムを保持する、コンピュータが読み出し可能なプログラム格納媒体。
【請求項1】
コンテンツについてのライセンスの購入を、ライセンス・データベースに登録するステップと、
ユーザに関連する新規なクライアント・システムの自動機能として、
どのコンテンツが前記ライセンス・データベース内の前記ユーザにライセンスされているかを確認するステップと、
前記ユーザにライセンスされているコンテンツを、前記ユーザに関連する前記新規なクライアント・システムに追加するステップとを、
備える方法。
【請求項2】
前記コンテンツを前記新規なクライアント・システムに追加するステップが、前記新規なクライアント・システムが、前記ユーザに登録されている他のクライアント・システムから前記コンテンツをダウンロードするステップを備える、請求項1に記載の方法。
【請求項3】
前記コンテンツを前記新規なクライアント・システムに追加するステップが、前記ユーザに登録されている他のクライアント・システムが、前記新規なクライアント・システムに前記コンテンツをダウンロードするステップを備える、請求項1に記載の方法。
【請求項4】
前記コンテンツを前記新規なクライアント・システムに追加するステップが、前記新規なクライアント・システムがサーバから前記コンテンツをダウンロードするステップを備える、請求項1に記載の方法。
【請求項5】
前記コンテンツを前記新規なクライアント・システムに追加するステップが、サーバが、前記新規なクライアント・システムに前記コンテンツをダウンロードするステップを備える、請求項1に記載の方法。
【請求項6】
前記コンテンツを前記新規なクライアント・システムに追加する前に、前記ユーザを前記新規なクライアント・システムの所有者として登録するステップを、さらに、備える、請求項1に記載の方法。
【請求項7】
少なくとも1個の購入が、前記新規なクライアント・システムのユーザ・インタフェースを介して取引され、かつ利用可能でライセンス可能な電子コンテンツのリストが、前記新規なクライアント・システムによって表示される、請求項1に記載の方法。
【請求項8】
前記新規なクライアント・システムに前記コンテンツを追加するステップが、前記新規なクライアント・システムが、保護された放送チャンネルから前記コンテンツを抽出するステップを備える、請求項1に記載の方法。
【請求項9】
前記新規なクライアント・システムに前記コンテンツを追加するステップが、前記新規なクライアント・システムが、前記コンテンツをスライスで受信するステップを備える、請求項1に記載の方法。
【請求項10】
前記新規なクライアント・システムが、前記コンテンツを再生する、請求項1に記載の方法。
【請求項11】
プロセッサを備え、かつ請求項1〜10の何れかに記載の方法を実行するように構成されている装置。
【請求項12】
請求項1〜10の何れかに記載の方法をコンピュータに実行させることが出来る命令のプログラムを保持する、コンピュータが読み出し可能なプログラム格納媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9A】
【図9B】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9A】
【図9B】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【公開番号】特開2012−22690(P2012−22690A)
【公開日】平成24年2月2日(2012.2.2)
【国際特許分類】
【出願番号】特願2011−166061(P2011−166061)
【出願日】平成23年7月28日(2011.7.28)
【分割の表示】特願2008−1590(P2008−1590)の分割
【原出願日】平成15年1月8日(2003.1.8)
【出願人】(502099382)ティヴォ インク (55)
【Fターム(参考)】
【公開日】平成24年2月2日(2012.2.2)
【国際特許分類】
【出願日】平成23年7月28日(2011.7.28)
【分割の表示】特願2008−1590(P2008−1590)の分割
【原出願日】平成15年1月8日(2003.1.8)
【出願人】(502099382)ティヴォ インク (55)
【Fターム(参考)】
[ Back to top ]