(57)【要約】  一般的な一態様によれば、オフラインモードでメディアファイルを再生するための方法は、オンラインモードで動作するウェブブラウザによって、かつコンテンツサーバから、メディアファイル及び該メディアファイルに関連する少なくとも1つの広告を受信することを含む。この方法は、該メディアファイル及び該少なくとも1つの広告をローカルファイルシステムにキャッシュすることをさらに含む。また、この方法は、該キャッシュされたメディアファイルおよび該キャッシュされた少なくとも1つの広告をオフラインモードで再生することを含む。また、この方法は、オフラインモード中、該少なくとも1つの広告とのユーザ対話を検出することを備える。この方法は、オンラインモード時における更なる処理のために該ユーザ対話をキャッシュすることを含んでもよい。【選択図】図１
2013507721.tif 000002
【特許請求の範囲】
【請求項１】
オンラインモードで動作するウェブブラウザによって、かつコンテンツサーバから、メディアファイル及び該メディアファイルに関連する少なくとも1つの広告を受信すること、
前記メディアファイル及び前記少なくとも1つの広告を、ローカルファイルシステム内にキャッシュすること、
前記キャッシュされたメディアファイルおよび前記キャッシュされた少なくとも1つの広告を、オフラインモードで再生すること、
オフラインモード中に、該少なくとも1つの広告とのユーザ対話を検出すること、及び
前記ユーザ対話を、オンラインモード時における更なる処理のためにキャッシュすることを含む方法。
【請求項２】
前記ウェブブラウザによって、前記メディアファイル及び前記少なくとも1つの広告に関連するメタデータファイルを受信することをさらに含み、
前記メタデータファイルは、該メディアファイルに関し、該少なくとも1つの広告をいつ再生すべきかを示すタイミング情報を備える、請求項１に記載の方法。
【請求項３】
前記メディアファイルをキャッシュすることは、該メディアファイルを復号化すること、及び前記ローカルシステムの安全な部分に該メディアファイルを格納することを含む、請求項1又は2のいずれか一項に記載の方法。
【請求項４】
前記ユーザ対話をキャッシュすることは、前記ウェブブラウザがオンラインモードでの動作に復帰するとき、該ユーザ対話に関連するウェブアドレスにアクセスすべきことを該ウェブブラウザに示すことを含む、請求項1から3のいずれか一項に記載の方法。
【請求項５】
前記メディアファイルを再生することは、
該メディアファイルに関連する暗号化キーをデジタル権限管理モジュールから要求すること、
前記暗号化キーを用いて該メディアファイルを復号化すること、
メディアプレーヤに広告タイミング命令を付与すること、ここで前記広告タイミング命令は、該メディアファイルに関し、前記メディアプレーヤが、該メディアファイルの前記再生を一時停止し、代わりに少なくとも1つの広告を再生する1回以上のリストを含み、及び
該メディアプレーヤによって、該広告タイミング命令に従って、前記復号化されたメディアファイル及び少なくとも1つの広告を再生することを含む、請求項1から4のいずれか一項に記載の方法。
【請求項６】
前記ウェブブラウザは、オペレーティングシステムとして機能するように構成される、請求項1から5のいずれか一項に記載の方法。
【請求項７】
前記メディアファイルに関する満期イベントが発生した後、前記キャッシュされたメディアファイル及び該メディアファイルに関連する少なくとも1つの広告を削除することをさらに含む、請求項1から6のいずれか一項に記載の方法。
【請求項８】
オンラインモードでの動作時、前記コンテンツサーバにユーザの使用及びユーザ対話情報を報告することをさらに含む、請求項1から7のいずれか一項に記載の方法。
【請求項９】
受信することは、前記メディアファイルのファイル種別を検出し、前記ファイル種別に基づいて、該メディアファイルをキャッシュするか又はすぐに再生するかを決定することを含み、
再生することは、前記ユーザが、該メディアファイルを再生するアクセス権限を有するかどうか決定することを含む、請求項1から8のいずれか一項に記載の方法。  
【請求項１０】
オンラインモードおよびオフラインモードで動作するように構成された装置であって、オンラインモードで動作している時、該装置はコンテンツサーバに通信可能に接続され、オフラインで動作している時、該装置は前記コンテンツサーバに通信可能に接続されないものであって、
該コンテンツサーバから、メディアファイル及び前記メディアファイルに関連する少なくとも1つの広告を受信するように構成される、オペレーティングシステムと、
該メディアファイルおよび前記少なくとも1つの広告を、ローカルファイルシステム内に、キャッシュするように構成される、不揮発性メモリと、
該装置がオフラインモードで動作している間、前記キャッシュされたメディアファイル及び前記キャッシュされた少なくとも1つの広告を再生すること、
該装置がオフラインモードで動作している間、該少なくとも1つの広告とのユーザ対話を検出すること、及び
該装置がオンラインモードで動作している時における更なる処理のために前記ユーザ対話をキャッシュすることを行うように構成される、メディアプレーヤを備える、前記装置。
【請求項１１】
前記オペレーティングシステムは、前記コンテンツサーバから、前記メディアファイル及び前記少なくとも1つの広告に関連するメタデータファイルを受信するように、さらに構成され、
前記メタデータファイルは、該メディアファイルに関し、該少なくとも1つの広告をいつ再生すべきかを示すタイミング情報を含む、請求項10に記載の装置。
【請求項１２】
前記メディアファイルを復号化して前記ローカルファイルシステムの安全な部分に該メディアファイルを格納するように構成されるデジタル権限管理(DRM)モジュールをさらに含む、請求項10又は11のいずれか一項に記載の装置。
【請求項１３】
前記メディアプレーヤは、前記装置がオンラインモードでの動作に復帰したとき、前記ユーザ対話に関連するウェブアドレスにアクセスすべきであることを前記オペレーティングシステムに示す、請求項10から12のいずれか一項に記載の装置。
【請求項１４】
前記メディアプレーヤは、
前記メディアファイルに関連する暗号化キーを要求すること、
前記暗号化キーを用いて該メディアファイルを復号化すること、
広告タイミング命令を受信することであって、前記広告タイミング命令は、該メディアファイルに関し、該メディアプレーヤが該メディアファイルの再生を一時停止し、代わりに少なくとも1つの広告を再生する1回以上のリストを含むこと、及び
該広告タイミング命令に従って、前記復号化されたメディアファイル及び少なくとも1つの広告を再生すること、を行うように構成される、請求項10から13のいずれか一項に記載の装置。
【請求項１５】
前記オペレーティングシステムは、ウェブブラウザとして機能する、請求項10から14のいずれか一項に記載の装置。
【請求項１６】
前記メディアファイルに関する満期イベントが発生した後、前記キャッシュされたメディアファイル及び該メディアファイルに関連する少なくとも1つの広告を削除するように構成されるデジタル権限管理(DRM)モジュールをさらに備える、請求項10から15のいずれか一項に記載の装置。
【請求項１７】
前記オペレーティングシステムは、オンラインモードで動作している時、前記コンテンツサーバにユーザ使用及びユーザ対話情報を報告するように構成される、請求項10から16のいずれか一項に記載の装置。
【請求項１８】
前記オペレーティングシステムは、前記メディアファイルのファイル種別を検出し、該ファイル種別に基づいて、該メディアファイルをキャッシュすべきか、或いはすぐに再生すべきかを決定する、請求項10から17のいずれか一項に記載の装置。
【請求項１９】
有形に具現されるコンピュータ可読媒体であって、実行されるとき、メディア再生装置に
オンラインモードで動作する前記メディア再生装置によって、かつコンテンツサーバから、メディアファイル及び該メディアファイルに関連する少なくとも1つの広告を受信することと、
前記メディアファイル及び前記少なくとも1つの広告を、ローカルファイルシステム内にキャッシュすることと、
前記キャッシュされたメディアファイル及び前記キャッシュされた少なくとも1つの広告を、オフラインモードで再生することと、
オフラインモード中に、該少なくとも1つの広告とのユーザ対話を検出することと、
オンラインモード時における更なる処理のために前記ユーザ対話をキャッシュすることと、を行わせる実行可能なコードを含む、前記媒体。
【請求項２０】
実行可能なコードは、実行されるとき、メディア再生装置に
前記メディアファイル及び前記少なくとも1つの広告に関連するメタデータファイルを受信することであって、前記メタデータファイルは、該メディアファイルに関し、該少なくとも1つの広告をいつ再生すべきかを示すタイミング情報を備えることと、
該メディアファイルを復号化し、また該メディアファイルを前記ローカルファイルシステムの安全な部分に格納することと、を行わせる、請求項19に記載のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
本出願は、2009年10月13日に出願された「コンピューティングプラットフォームにおける電力管理及びデータキャッシング」(POWER MANAGEMENT AND DATA CACHING IN A COMPUTING PLATFORM)と題する米国仮出願第61/251,286号、並びに2010年6月30日に出願された「クラウドベースのメディアプレーヤ及びオフラインメディアアクセス」(CLOUD BASED MEDIA PLAYER AND OFFLINE MEDIA ACCESS)と題する米国仮出願第61/360,161号に対する優先権を米国特許法第119条(e)項に主張する、2010年10月12日に出願された「クラウドベースのメディアプレーヤ及びオフラインメディアアクセス」(CLOUD BASED MEDIA PLAYER AND OFFLINE MEDIA ACCESS)と題する米国仮出願第12/903,190の優先権を主張する継続出願である。これら従前に出願された出願の内容は、全体として引用によって本明細書中に組み込まれる。
【０００２】
(技術分野)  
本説明は、メディア又はコンテンツの格納及び再生に関し、より具体的には、オフライン使用のためのメディア及び広告のキャッシングに関する。
【背景技術】
【０００３】
(背景)
メディア制作及び公開において、「コンテンツ」という用語は、特定の文脈でのエンドユーザ/視聴者のための価値を付与し得る情報及び経験を含んでいる。コンテンツは、会議及び舞台パフォーマンスなどのライブイベントのほか、インターネット、テレビ、オーディオCDなど任意の媒体を経由して供給される。この用語は、さまざまな形態及びジャンルの情報を、管理可能な付加価値のあるメディア構成要素として識別及び定量化するために使用される。一般的に、「メディアファイル」という用語は、「コンテンツ」が含まれるファイルに対応する。さまざまな実施態様において、「メディアファイル」は、映画、テレビ番組、オーディオ書籍、電子書籍、音楽などを含み得る。
【０００４】
一般的に、メディア（映画やオーディオ書籍など）は、メディア会社のコンテンツサーバからユーザのデバイス（たとえば、コンピュータやスマートフォンなど）にストリームされ得る。メディアをストリームするとき、ユーザが即座に該メディアの消費（視聴など）を行うことが期待される。一般的に、メディアは、（一定のバッファリングが発生する場合はあるが）キャッシュされることはなく、メディアは消費されなければ、ユーザのデバイスから取り除かれる。さらに、メディアファイルがストリームされるためには、ユーザのデバイス及びコンテンツサーバは、一般的に、該メディアファイルのストリーミング期間中、通信を維持しなければならない。この2つのデバイス間のネットワーク通信が時間延長のために失われると、該ストリーミングは中止される。このようなメディアストリーミングサービスの例は、Hulu, NetflixによるInstant Watch, AmazonによるVideo on Demand (VoD), Pandoraなどを含んでいる。
【０００５】
場合によって、これらのストリーミングメディアファイルには広告が示されたり、又は含まれたりする。このような広告は、多くの場合、従来のテレビの広告モデルと類似している。ストリームされたメディア又はプログラムにおける一定の時点で、主なプログラムが中断又は停止されてもよく、また広告が再生されてもよい。
【発明の概要】
【課題を解決するための手段】
【０００６】
（要旨）
1つの一般的な態様によれば、オフラインモードでメディアファイルを再生するための方法は、オンラインモードで動作するウェブブラウザによって、かつコンテンツサーバから、メディアファイル及び該メディアファイルに関連する少なくとも1つの広告を受信することを含んでもよい。この方法は、ローカルファイルシステム内に、メディアファイル及び少なくとも1つの広告をキャッシュすることをさらに含んでもよい。また、この方法は、該キャッシュされたメディアファイル及び該キャッシュされた少なくとも1つの広告をオフラインモードで再生することを含んでもよい。また、この方法は、オフライン中に少なくとも1つの広告とのユーザ対話を検出することを含んでもよい。この方法は、オンラインモード時における更なる処理のために該ユーザ対話をキャッシュすることを含んでもよい。
【０００７】
もう1つの一般的な態様によれば、装置は、オペレーティングシステムと、デジタル権限管理(DRM)モジュールと、不揮発性メモリと、メディアプレーヤとを含んでもよい。この装置は、オンラインモード及びオフラインモードで動作するように構成されてもよく、オンラインモードでの動作時には該装置はコンテンツサーバと通信可能に接続される一方、オフラインモードでの動作時には該装置は該コンテンツサーバと通信可能に接続されることはない。このオペレーティングシステムは、コンテンツサーバから、メディアファイル及び該メディアファイルに関連する少なくとも1つの広告を受信するように構成されてもよい。このデジタル権限管理(DRM)モジュールは、メディアファイル及び少なくとも1つの広告をローカルファイルシステム内にキャッシュするように構成されてもよい。この不揮発性メモリは、該ローカルファイルシステムを格納するように構成されてもよい。このメディアプレーヤは、該装置がオフラインモードで動作中、該キャッシュされたメディアファイル及び該キャッシュされた少なくとも1つの広告を再生したり、該装置がオフラインモードで動作中、少なくとも1つの広告とのユーザ対話を検出したり、該装置がオンラインモードで動作している時における更なる処理のために該ユーザ対話をキャッシュしたりするように構成されてもよい。
【０００８】
もう1つの一般的な態様によれば、コンピュータ可読媒体が有形に具現されてもよく、メディア再生装置に、メディアファイル及び該メディアファイルに関連する少なくとも1つの広告を、オンラインモードで動作する該メディア再生装置によって、かつコンテンツサーバから、受信させる実行可能なコードを含んでよい。このメディア再生装置は、ローカルファイルシステム内に、メディアファイル及び少なくとも1つの広告をキャッシュしてもよい。該装置は、オフラインモードで、キャッシュされたメディアファイル及びキャッシュされた少なくとも1つの広告を再生してもよい。これらの命令は、該装置に、オフラインモード中に、該少なくとも1つの広告とのユーザ対話をさらに検出させるようにしてもよい。該装置は、オンラインモード時における更なる処理のために該ユーザ対話をキャッシュしてもよい。
【０００９】
実施態様は、以下の特徴のうちの1つ又はそれ以上を含むことができる。たとえば、ウェブブラウザは、メディアファイル及び少なくとも1つの広告に関連するメタデータファイルを受信することができ、該メタデータファイルは、メディアファイルに関して、該少なくとも1つの広告をいつ再生すべきかを示すタイミング情報を備える。このメディアファイルをキャッシュすることは、該メディアファイルを復号化することと、ローカルファイルシステムの安全な部分に該メディアファイルを格納することと、を含むことができる。ユーザ対話をキャッシュすることは、ウェブブラウザがオンラインモードでの操作に復帰したとき、ユーザ対話に関連するウェブアドレスにアクセスすべきであることを該ウェブブラウザに示すことを含むことができる。メディアファイルを再生することは、デジタル権限管理モジュールからメディアファイルに関連する暗号化キーを要求すること、該暗号化キーを用いて該メディアファイルを復号化すること、メディアプレーヤに広告タイミング命令を付与すること（該広告タイミング命令は、メディアファイルに関し、メディアプレーヤが、メディアファイルの再生を一時停止し、代わりに少なくとも1つの広告を再生する1回以上のリストを含む）、及び該メディアプレーヤにより、該広告タイミング命令に従って、復号化されたメディアファイル及び少なくとも1つの広告を再生することを含むことができる。
【００１０】
前記ウェブブラウザは、オペレーティングシステムとして機能するように構成することができる。前記キャッシュされたメディアファイル及び該メディアファイルに関連する前記少なくとも1つの広告は、該メディアファイルに関連する満期イベントの発生後に削除することができる。オンラインモードでの動作時、ユーザ使用及びユーザ対話情報をコンテンツサーバに報告することができる。前記メディアファイル及び該メディアファイルに関連する少なくとも1つの広告を受信することは、該メディアファイルのファイル種別を検出することと、該ファイル種別に基づき、該メディアファイルをキャッシュするか、或いはすぐに再生するかを決定することと、を含むことができ、該メディアファイルおよび該広告を再生することは、ユーザが、メディアファイルを再生するアクセス権限を有するかどうかを決定することを含む。
【００１１】
1つ以上の実施態様の詳細は、添付の図面及び以下の説明において記載される。その他の特徴は、説明及び図面、並びに請求項から明らかとなろう。
【００１２】
情報を格納して再生するためのシステム及び/又は方法は、実質的には前記図面のうちの少なくとも1つに関連して図示及び/又は説明される通りであって、より完全には請求項に記載される通りである。
【図面の簡単な説明】
【００１３】
【図１】開示された内容に従ったシステムの例示の実施態様のブロック図である。
【００１４】
【図２】開示された内容に従ったシステムの例示の実施態様のブロック図である。
【００１５】
【図３】開示された内容に従ったウェブブラウザの例示の実施態様の図である。
【００１６】
【図４】開示された内容に従ったメタデータファイルの例示の実施態様の図である。
【００１７】
【図５】開示された内容に従った使用データファイルの例示の実施態様の図である。
【００１８】
【図６】開示された内容に従ったメディアファイル及び広告ファイルの例示の実施態様の図である。
【００１９】
【図７】開示された内容に従った技法の例示の実施態様の流れ図である。
【００２０】
上記さまざまな図面における同様の参照符号は、同様の要素を示す。
【発明を実施するための形態】
【００２１】
（詳細な説明）
本明細書において説明されるのは、オンラインモード或いはオフラインモードのいずれかでデバイス、アプリケーション、又はウェブブラウザを操作するためのデバイス及び技法である。オンラインモードでは、該デバイスは、1つ以上のメディアファイル（たとえば、映画、テレビ番組、オーディオレコーディングなど）、並びに各種メディアファイルに関連する1つ以上の広告（たとえば、コマーシャル、テキスト広告、ウェブページなど）をダウンロード及びキャッシュしてもよい。オフラインモードでは、該デバイスは、キャッシュされたメディアファイル及び該メディアファイルに関連する広告を再生してもよい。該広告とのユーザの対話（たとえば、ハイパーリンクを選択することや該広告された製品を購買しようとすることなど）がキャッシュされてもよい。オンラインモードへ復帰すると、これらのユーザ対話が処理（たとえば、選択されたハイパーリンクの目的地をオープンすることやユーザの支払情報及び製品注文を提出することなど）されてもよい。但し、上記は数少ない例示に過ぎず、開示された内容はこれに限定されないと理解される。
【００２２】
図1は、本明細書において説明される技法と共に使用されうる、汎用コンピュータデバイス100及び汎用モバイルコンピュータデバイス150の例を示す。コンピューティングデバイス100は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、及びその他の適切なコンピュータのような、デジタルコンピュータのさまざまな形態を表すことが意図される。コンピューティングデバイス150は、携帯情報端末、携帯電話、スマートフォン、タブレット及びその他の類似するコンピューティングデバイスのような、モバイルデバイスのさまざまな形態を表すことが意図される。本明細書において示されるコンポーネント、それらの接続及び関係、並びにそれらの機能は、例示的なものに過ぎないことを意味しており、本文書において説明及び/又は特許請求の範囲に記載される本発明の実施態様を限定することを意味してはいない。
【００２３】
コンピューティングデバイス100は、プロセッサ102、メモリ104、ストレージデバイス106、メモリ104及び高速拡張ポート110に接続する高速インターフェイス108、並びに低速バス114及びストレージデバイス106に接続する低速インターフェイス112を含む。コンポーネント102、104、106、108、110、及び112は各々、さまざまなバスを使用して相互接続されており、共通のマザーボード上、又は必要に応じてその他の方法で取り付けられてもよい。プロセッサ102は、高速インターフェイス108に接続されたディスプレイ116のような、外部入出力デバイス上にグラフィカルユーザインターフェイス(GUI)のグラフィカル情報を表示するためにメモリ104又はストレージデバイス106に格納されている命令を含む、コンピューティングデバイス100内で実行する命令を処理することができる。その他の実施態様において、複数のプロセッサ及び/又は複数のバスが、必要に応じて、複数のメモリ及び複数のタイプのメモリと共に使用されてもよい。また、複数のコンピューティングデバイス100を、各々のデバイスが必要な操作の一部を提供するように(たとえば、サーババンク、ブレードサーバのグループ、又はマルチプロセッサシステムなどとして)接続してもよい。
【００２４】
メモリ104は、コンピューティングデバイス100内に情報を格納する。1つの実施態様において、メモリ104は揮発性メモリユニット(複数可)を含む。その他の実施態様において、メモリ104は不揮発性メモリユニット(複数可)を含む。メモリ104はまた、磁気又は光ディスクのような、別の形態のコンピュータ可読媒体であってもよい。
【００２５】
ストレージデバイス106は、コンピューティングデバイス100の大容量ストレージを提供することができる。１つの実施態様において、ストレージデバイス106は、フロッピーディスクデバイス、ハードディスクデバイス、光ディスクデバイス、又はテープデバイス、フラッシュメモリ又はその他の類似するソリッドステートメモリデバイス、若しくはストレージエリアネットワーク又は他の構成におけるデバイスを含むデバイスのアレイのような、コンピュータ可読媒体であってもよいか、又はコンピュータ可読媒体を含むことができる。コンピュータプログラム製品は、情報キャリアにおいて有形に具現されてもよい。コンピュータプログラム製品はまた、実行されるとき、上記で説明されるような1つ以上の方法を実行する命令を含むことができる。情報キャリアは、メモリ104、ストレージデバイス106、又はプロセッサ102上のメモリのような、コンピュータ又は機械可読の媒体である。
【００２６】
該高速コントローラ108は、コンピューティングデバイス100の帯域幅集約的な操作を管理し、低速コントローラ112は、低帯域幅集約的な操作を管理する。そのような機能の割り振りは、例示的なものに過ぎない。1つの実施態様において、高速コントローラ108は、メモリ104、ディスプレイ116(たとえば、グラフィックスプロセッサ又はアクセラレータを通じて)、及びさまざまな拡張カード(図示せず)を受け入れることができる高速拡張ポート110に接続される。実施態様において、低速コントローラ112は、ストレージデバイス106及び低速拡張ポート114に接続される。さまざまな通信ポート(たとえば、USB、ブルートゥース、イーサネット、無線イーサネット)を含むことができる低速拡張ポートは、キーボード、ポインティングデバイス、スキャナのような1つ以上の入出力デバイス、若しくは、たとえばネットワークアダプタを通じてスイッチ又はルータのようなネットワーキングデバイスに接続されてもよい。
【００２７】
コンピューティングデバイス100は、図に示されるように、多数のさまざまな形態で実施されてもよい。たとえば、標準サーバ120、又はそのようなサーバのグループで多数回実施されてもよい。コンピューティングデバイス100はまた、ラックサーバシステム124の一部として実施されてもよい。加えて、ラップトップコンピュータ122のようなパーソナルコンピュータにおいて実施されてもよい。あるいは、コンピューティングデバイス100からのコンポーネントは、デバイス150のようなモバイルデバイス(図示せず)の他のコンポーネントと組み合わされてもよい。そのようなデバイスは各々、コンピューティングデバイス100、150の1つ以上を含むことができ、システム全体は、相互に通信する複数のコンピューティングデバイス100、150で構成されてもよい。
【００２８】
コンピューティングデバイス150は、他のコンポーネントの中でも、プロセッサ152、メモリ164、ディスプレイ154のような入出力(I/O)デバイス、通信インターフェイス166、及び送受信機168を含む。デバイス150はまた、追加のストレージを提供するために、マイクロドライブ又はその他のデバイスのようなストレージデバイスを備えていてもよい。コンポーネント150、152、164、154、166、及び168は各々、さまざまなバスを使用して相互接続されており、いくつかのコンポーネントは、共通のマザーボード上、又は必要に応じてその他の方法で取り付けられてもよい。
【００２９】
プロセッサ152は、メモリ164に格納されている命令を含むコンピューティングデバイス150内の命令を実行することができる。プロセッサは、別個の複数のアナログ及びデジタルプロセッサを含むチップのチップセットとして実施されてもよい。プロセッサは、たとえば、ユーザインターフェイス、デバイス150によって実行されるアプリケーション、デバイス150による無線通信の制御のような、デバイス150のその他のコンポーネントの協調を提供することができる。
【００３０】
プロセッサ152は、ディスプレイ154に接続された制御インターフェイス158及びディスプレイインターフェイス156を通じてユーザと通信することができる。ディスプレイ154は、たとえば、TFT LCD(薄膜トランジスタ液晶ディスプレイ(Thin-Film-Transistor Liquid Crystal Display))又はOLED(有機発光ダイオード(Organic Light Emitting Diode))ディスプレイ、又はその他の適切なディスプレイ技術であってもよい。ディスプレイインターフェイス156は、ディスプレイ154にグラフィカル及びその他の情報をユーザに提示させるための適切な回路を備えることができる。制御インターフェイス158は、ユーザからコマンドを受信して、それらをプロセッサ152にサブミットするために変換することができる。加えて、外部インターフェイス162は、デバイス150がその他のデバイスと近隣エリア通信を行えるように、プロセッサ152との通信に提供されてもよい。外部インターフェイス162は、たとえば、一部の実施態様における有線通信のため、又はその他の実施態様における無線通信のために提供することができ、複数のインターフェイスもまた使用されてもよい。
【００３１】
メモリ164は、コンピューティングデバイス150内の情報を格納する。メモリ164は、コンピュータ可読媒体(複数可)、揮発性メモリユニット(複数可)、又は不揮発性メモリユニット(複数可)のうちの1つ以上として実施されてもよい。拡張メモリ174もまた、たとえばSIMM(Single In Line Memory Module)カードインターフェイスを含む拡張インターフェイス172を通じてデバイス150に提供され接続されてもよい。そのような拡張メモリ174は、デバイス150の追加のストレージスペースをもたらすことができるか、又はデバイス150のアプリケーション又はその他の情報を格納することもできる。特に、拡張メモリ174は、上記で説明されるプロセスを実行するか又は補足するための命令を含むことができ、機密保護情報もまた含むことができる。したがって、たとえば、拡張メモリ174は、デバイス150のセキュリティモジュールとして提供されてもよく、デバイス150を安全に使用できるようにする命令でプログラムされてもよい。加えて、ハッキング不可能な方法でSIMMカード上に識別情報を配置することなど、機密保護アプリケーションは、追加情報と共にSIMMカードを介して提供されてもよい。
【００３２】
たとえば、メモリは、後段で説明されるように、フラッシュメモリ及び/又はNVRAMメモリを含むことができる。1つの実施態様において、コンピュータプログラム製品は、情報キャリアにおいて有形に具現される。コンピュータプログラム製品は、実行されるとき、上記で説明されるような1つ以上の方法を実行する命令を含む。情報キャリアは、たとえば送受信機168又は外部インターフェイス162を介して受信されうる、メモリ164、拡張メモリ174、又はプロセッサ152上のメモリのような、コンピュータ又は機械可読の媒体である。
【００３３】
デバイス150は、必要に応じてデジタル信号処理回路を含むことができる通信インターフェイス166を通じて無線で通信することができる。通信インターフェイス166は、特にGSMボイスコール、SMS、EMS、又はMMSメッセージング、CDMA、TDMA、PDC、WCDMA、CDMA2000、又はGPRSのような、さまざまなモード又はプロトコルによる通信を提供することができる。そのような通信は、たとえば、無線周波数送受信機168を通じて行われてもよい。加えて、短距離通信は、ブルートゥース、WiFi、又はその他のそのような送受信機(図示せず)などを使用して行われてもよい。加えて、GPS(全地球測位システム(Global Positioning System))受信機モジュール170は、追加のナビゲーション及び位置に関連する無線データをデバイス150に提供することができ、このデータはデバイス150で稼働するアプリケーションによって必要に応じて使用されてもよい。
【００３４】
デバイス150はまた、ユーザから口頭の情報を受信してそれを使用可能なデジタル情報に変換することができるオーディオコーデック160を使用して音声により通信することもできる。オーディオコーデック160は同様に、たとえばデバイス150のハンドセットにおいて、スピーカ経由などにより、ユーザに可聴音を生成することができる。そのような音は、音声電話コールからの音を含むことができ、録音された音(たとえば、ボイスメッセージ、音楽ファイルなど)を含むことができ、またデバイス150で動作しているアプリケーションにより生成された音を含むこともできる。
【００３５】
コンピューティングデバイス150は、図に示されるように、多数のさまざまな形態で実施されてもよい。たとえば、コンピューティングデバイス150は、携帯電話180として実施されてもよい。コンピューティングデバイス150はまた、スマートフォン182、携帯情報端末、又はその他の類似するモバイルデバイスの一部として実施されてもよい。
【００３６】
図2は、開示された内容に従ったシステム200の例示の実施態様のブロック図である。1つの実施態様において、システム200は、コンテンツサーバ202と、メディアプレーヤ装置204とを含んでもよい。図示されているコンテンツサーバ202は1台だけであるが、該システムは、たとえば、このようなサーバを多数、各コンテンツプロバイダ(たとえば、Amazon, Netflix, Paramountなど)のために１台ずつ含んでもよいと理解される。同様に、単一のメディアプレーヤ装置204が図示されているが、システム200は、このようなデバイスを複数、可能ならばユーザ毎に1台より多く含んでもよいと理解される。
【００３７】
1つの実施態様において、コンテンツサーバ202はメディアファイル212を供給又は分散するように構成されてもよい。図示の目的のため、コンテンツサーバ202は、テレビ番組、或いは、より一般的にはビデオファイルを供給するように構成されてもよいが、任意の種類のメディアファイル（たとえば、オーディオ書籍、音楽、電子書籍、雑誌、映画など）を供給してもよいと理解される。
【００３８】
1つの実施態様において、メディアプレーヤ装置204は、アプリケーション220と、メディアプレーヤ222と、デジタル権限管理(DRM)モジュール224とを含んでもよい。さまざまな実施態様において、上記アプリケーション220は、メディアプレーヤ装置204のためのオペレーティングシステムとして機能してもよい。例示された実施態様において、アプリケーション220は、ウェブブラウザとして参照されているが、他のアプリケーション（たとえば、スタンドアロン式メディアプレーヤなど）を使用しうると理解される。但し、上記は数少ない例示に過ぎず、開示された内容はこれに限定されないと理解される。さらに、コンテンツデータベース(DB)230及び/又は暗号化キーDB226は、装置204によって含まれる不揮発性メモリ内に格納されてもよい。
【００３９】
さまざまな実施態様において、ユーザ290は、メディアプレーヤ装置204経由でメディアファイル212を視聴又は消費したい場合がある。このような実施態様において、上記ユーザは、アプリケーション220を使用してコンテンツサーバ202にアクセスしてもよい。この時点で、メディアプレーヤ装置204は、通信ネットワーク（たとえば、インターネットなど）に接続されてもよいし、また通信リンク206経由でコンテンツサーバ202と通信してもよい。この通信リンク206は、有線又は無線のいずれであっても、それらの組み合わせであってもよい。コンテンツサーバ202と、メディアプレーヤ装置204との間で、この通信リンク206が機能しているとき、メディアプレーヤ装置204又はアプリケーション220は、「オンラインモード」で動作中であると言ってよい。
【００４０】
この「オンライン」及び「オフライン」という用語は、コンピュータ技術及び遠隔通信に関して特定の意味を有する。一般的に、「オンライン」は、接続可能な状態を示すが、ここでは、コンテンツサーバ202及びメディアプレーヤ装置204が通信可能に接続されていることを示す。逆に、「オフライン」は、切断された状態、具体的にはコンテンツサーバ202及びメディアプレーヤ装置204が通信可能に接続されていないことを示す。尚、メディアプレーヤ装置204は、装置204がネットワークに接続されている場合でも「オフラインモード」で動作し、またコンテンツサーバ202と通信していない場合がある（たとえば、装置204は、外部デバイス又は内部設定などのいずれかによってコンテンツサーバ202からファイアウォールオフされているなど）ことに注意されたい。さらに、さまざまな実施態様において、メディアプレーヤ装置204は、オンラインモードとオフラインモードとの間の検出及び切り替え、及びその逆を自動的に行ってもよい。また、ネットワーク接続が既存し或いは可能であっても、ユーザは、モード間の切り替えを手動で行えるようにしてもよい。
【００４１】
実施例に戻って説明すると、アプリケーション220経由のユーザ290は、メディアファイル212が要求されていることをコンテンツサーバ202に通知してもよい。1つの実施態様において、ユーザ290は、装置204がオフラインモードであって、コンテンツサーバ202に接続されていないときにメディアファイル212が再生できるようにユーザ290がメディアファイル212をダウンロードしたいことを指定してもよい。さまざまな実施態様において、アプリケーション220は、メディアファイル212のファイル種別や他のインジケータ（たとえば、多目的インターネットメール・エクステンションズ(MIME)タイプなど）に基づいて、メディアファイル212がストリームされるか、「購入」としてダウンロードされるか、或いはキャッシュ可能なファイルとしてダウンロードされるかを決定するように構成されてもよい。
【００４２】
さまざまな実施態様において、コンテンツサーバ202は、メディアファイル212を供給しながら広告214を「再生」又は表示するように構成されてもよい。ストリーミングの場合、コンテンツサーバ202は、メディアファイル212及び広告214がストリーミングを終了するまでメディアファイル212の一部をストリームし、広告214をストリームし、それからメディアファイル212の第2の部分をストリームするなどのように構成されてもよい。上記で説明されるように、テレビ用語では、メディアファイル212のストリーミングは、「コマーシャルブレーク」を含んでもよい。一方、広告214は、メディアファイル付近で（たとえば、直下のバナーなどとして）空間的に表示されてもよいが、上記は数少ない例示に過ぎず、開示された内容はこれに限定されないと理解される。
【００４３】
また、さまざまな実施態様において、コンテンツサーバ202は、より多数の広告から広告214の一部を選択し、メディアファイル212に関連付けてもよい。さまざまな実施態様において、この選択は、メディアファイル212の内容、要求中のユーザ290、人口統計、メディアファイル212とは無関係の外部検討事項などに係るものでもよいが、上記は数少ない例示に過ぎず、開示された内容はこれに限定されないと理解される。
【００４４】
但し、オフラインアクセス又は再生のためにキャッシュされるようにダウンロードされたメディアファイル212の場合、コンテンツサーバ202は、メディアファイル212及び関連広告214を混合してもしなくてもよい。これについては、図6を参照して下記でさらに記述する。代わりに、1つの実施態様において、メディアファイル212及び関連広告214は、別々のファイルとしてダウンロードされてもよい。このような実施態様において、コンテンツサーバ202は、メディアファイル212及び広告214の再生に関する命令を含むメタデータファイル216を付与してもよい。これらのファイルの全ては、通信リンク206経由で装置204へ伝達されてもよいし、又はダウンロードされてもよい。
【００４５】
1つの実施態様において、コンテンツサーバ202は、複数のサブサーバ、たとえばメディアサーバ208及び広告又はアドサーバ210を含んでもよい。このような実施態様において、メディアサーバ208は、メディアファイル212を供給してもよい。同様に、アドサーバ210は、広告214を供給してもよい。メタデータファイル216は、メディアサーバ208によって部分的に供給されてもよく（たとえば、メディアファイル212に関するメタデータなど）、またメタデータファイル216の第2の部分（たとえば、広告関連のものなど）は、アドサーバ210から供給されてもよい。
【００４６】
さまざまな実施態様において、アプリケーション220は、メディアファイル212及び1つ以上の広告214、並びに、幾つかの実施態様においては、メタデータファイル216を受信してもよい。アプリケーション220は、これらのファイルをコンテンツデータベース230内に格納又はキャッシュしてもよい。さまざまな実施態様において、アプリケーション220は、受信されたファイルをコンテンツデータベース(DB)230内に格納又はキャッシュするようにDRMモジュール224に命令してもよい。
【００４７】
1つの実施態様において、コンテンツDB 230は、ローカルファイルシステムを含んでもよい。幾つかの実施態様において、メディアファイル212は、コンテンツサーバ202によって暗号化されてもよい。1つの実施態様において、DRMモジュール224又はアプリケーション220は、受信された暗号化メディアファイル212をコンテンツDB 230又はファイルシステム内に直接キャッシュしてもよい。もう1つの実施態様において、DRMモジュール224は、（たとえば、関連する暗号化キー228を使用して）該受信された暗号化メディアファイル212を復号化し、該復号化されたメディアファイルをコンテンツDB 230又はファイルシステム内にキャッシュしてもよい。
【００４８】
このような実施態様において、メディアファイル212は、復号化された状態で格納される場合、コンテンツDB 230は、それ自体が暗号化されてもよい。さまざまな実施態様において、これにより、メディアプレーヤ222又はDRMモジュール224は、共通又は単一の暗号化キー228を用いて、多様なメディアファイル212を再生又はアクセスすることが可能となる。さらに、暗号化されたコンテンツDB 230は、ユーザ290によって直接アクセスしないこともありうる装置204のファイルシステムの別の区画を含んでもよく、これによりメディアファイル212を違法コピーなどから保護している。もう1つの実施態様において、コンテンツDB 230は、別個の区画でなく、上記ファイルシステム上で暗号化されたファイルであってもよい。さらにもう1つの実施態様において、コンテンツDB 230は、複数のストレージデバイス（たとえば、不揮発性フラッシュメモリ、取り外し可能なフラッシュメモリ、USBドライブなど）の間で分散させてもよい。
【００４９】
さまざまな実施態様において、装置204は、復号化された状態及び/又は暗号化された状態の両方において複数のメディアファイル212を格納するように構成されてもよい。たとえば、第１のプロバイダ（たとえば、Amazon）からの第1のメディアファイルは、その提供された復号化された状態での格納を許容し、また第2のプロバイダ（たとえば、Netflix）は、そのメディアファイルの暗号化された状態での格納のみを許容する場合がある。このような実施態様において、全体としてコンテンツDB 230は上記で説明されるように暗号化され、その結果、上記第2のプロバイダのメディアファイルは2回暗号化されるが、そのうちの1回は、プロバイダの暗号化キー、もう1回は、コンテンツDB 230の一般的な暗号化キーによって行われる。
【００５０】
また、広告ファイル214及びメタデータファイル216も、コンテンツDB 230内にキャッシュされてもよい。又は、上記ファイルは、別個のDB又はファイルシステム（図示せず）内に格納又はキャッシュされてもよい。さまざまな実施態様において、これらのファイルは、暗号化又は復号化状態でキャッシュされてもよい。システム200の説明を判りやすくするため、これらのファイルは、関連するメディアファイル212と同一の方法で格納されているものとして説明されている。
【００５１】
つまり、ユーザ290は、コンテンツサーバ202とは、もはや装置204が通信可能に接続されていないオフラインモードに、メディアプレーヤ装置290を設定してもよい。ユーザ290は、オフラインアクセスのために事前にキャッシュされたメディアファイル212を視聴又は消費したい場合がある。ユーザ290は、ユーザ290が再生したいメディアファイル212を選択してもよい。さまざまな実施態様において、アプリケーション220は、ユーザ290が複数のキャッシュされたメディアファイルから1つのメディアファイル212を選択することを可能にするファイルシステムブラウザ又はメディアブラウザを含んでもよい。幾つかの実施態様において、このメディアブラウザは、プロバイダ（たとえば、Amazon, Netflix, ABC，Paramountなど）、ジャンル、日付、メディア種別（たとえば、映画、テレビ番組、オーディオ書籍など）によりメディアファイル212を編成してもよいが、上記は数少ない例示に過ぎず、開示された内容はこれに限定されないと理解される。
【００５２】
所望のメディアファイル212が一度選択されると、アプリケーション220又はそのメディアブラウザ部分は、DRMモジュール224又はメディアプレーヤ222に、所望のメディアファイル212にアクセスし、該ファイルを再生するように指示してもよい。1つの実施態様において、DRMモジュールは、暗号化キーデータベース(DB)226を含むか、又は該データベースへのアクセスを有してよい。暗号化キーDB 226は、暗号化されたメディアファイル212を復号化するために用いてもよい1つ以上の暗号化キー228を格納してもよい。DRMモジュール224は、メディアファイル212に関連する暗号化キー228、或いは暗号化されたコンテンツDB 230の場合、コンテンツDB 230を検索してもよい。DRMモジュール224は、メディアファイル212を復号化し、任意の関連するメタデータファイル216及び広告214にアクセス又は復号化してもよい。
【００５３】
DRMモジュール224は、メタデータファイル216にアクセスしてユーザ290が所望のメディアファイル212を再生する権限を有するかどうかを決定してもよい。たとえば、メタデータファイル216は、装置204がメディアファイル212を再生できる可能性に制約が加えられているかどうかを示してもよい。たとえば、制約としては、メディアファイル212が、特定の期間のみキャッシュ可能、特定の日付まで再生可能、特定の回数で、特定の地域で、特定の品質で（たとえば、ピクセル数、オーディオトラック数、ビットレートなど）再生可能であること、特定のポート（たとえば、メインディスプレイ、外部ビデオポート、ヘッドフォン経由だけなど）経由で再生されるなどの指定を含んでもよい。上記は数少ない例示に過ぎず、開示された内容はこれに限定されないと理解される。
【００５４】
さまざまな実施態様において、DRMモジュール224は、Trusted Platform Module(TPM)を含めても、利用してもよい。ここでは、TPMは、メディアファイルなどの情報を保護する暗号化キーを格納するように構成された信頼性のある暗号化処理装置を含む。ここで言う「TPM規格」という用語は、TPM規格バージョン1.2、それ以前又はそれ以降のものに対応する。TPMメインパーツ1, 2, 及び3、規格バージョン1.2,  レベル2リビジョン103,  2007年7月9日、ザ・トラステッドコンピューティンググループ (TPM Main Parts 1, 2, and 3, Specification version 1.2, Level 2 revision 103, July 9, 2007, The Trusted Computing Group)。
【００５５】
DRMモジュール224は、メディアプレーヤ222に1つ以上の再生制約、たとえば(最大ビットレートなど）を伝達してもよいし、又はメディアファイル212が再生できないこと（たとえば、再生期限が経過したこと）を伝達してもよい。メディアプレーヤ222は、DRMモジュール224により示された制約を満たすか否かに基づいてメディアファイル212を再生するように構成されてもよい。
【００５６】
さまざまな実施態様において、DRMモジュール224又はメディアプレーヤ222のいずれか一方は、関連するメタデータファイル216にアクセスして、どの広告214がメディアファイル212と関連し、これらの広告214をいかに再生すべきかを決定してもよい。さまざまな実施態様において、メタデータファイル216は、上記の標記を含んでもよい。メタデータファイル214の実施態様についてのより詳細な説明は、図4を参照して以下に行う。端的に言うと、メタデータファイル216は、メディアファイル212に関して、広告214を再生する回数、どの広告214を再生するか、これらの広告をどこで再生するか（たとえば、メディアファイルが再生されている画面の下、メディアファイルに入れ替わってなど）を含んでもよいが、上記は数少ない例示に過ぎず、開示された内容はこれに限定されないと理解される。
【００５７】
メディアプレーヤ222は、メディアファイル212を再生してもよい。さまざまな実施態様において、メディアプレーヤ222は、アプリケーション220の内部に埋め込まれているか、又はアプリケーション220内のメディアファイル212を再生してもよい。1つの実施態様において、メディアプレーヤ222又はDRMモジュール224は、メディアファイル212及び広告を再生リストに編成してもよい。このような実施態様において、メディアファイル212は、複数のファイルに分割されているか、又は該メディアプレーヤは、ある時点でメディアファイル212を再生することを開始するように構成されてもよい。
【００５８】
もう1つの実施態様において、メディアプレーヤ222は、広告214の再生の指定時刻までメディアファイル212を再生するように構成されてもよい。その時刻になると、メディアプレーヤ222は、たとえばメディアファイル212を一時停止して同ファイルをバックグランドに設定するか、或いはユーザ290への非表示を行うかして、メディアファイル212の再生を停止してよい。その後メディアプレーヤ222は、指定された広告214を再生してもよい。広告214が完了すると、メディアプレーヤは、以前停止した時点でメディアファイル212を再生することを再開してもよいし、或いは、メディアファイル212の一時停止解除を行ってメディアファイル212をフォアグランドに復帰させるか、さもなければ該メディアファイルをユーザ290に対して表示してもよい。
【００５９】
上記メディアファイル212及び広告の分離が時間的でなく空間的である、さらにもう1つの実施態様において、メディアプレーヤ222は、ユーザ290へのメディアファイル212及び広告214の再生又は表示を同時に行ってもよい。広告214の時間的な設定、並びに空間的な設定の両方を含む実施態様が意図され、開示された内容の範囲内である。
【００６０】
さまざまな実施態様において、広告214の1つ以上は、ユーザ290が該広告214又はその一部を選択でき、イベント又はアクションを発生させること（たとえば、ウェブページへの移動、ポールオプションの選択など）ができる点で対話型であり得る。これらのアクションの完了は、装置204がオンラインモードで動作されるときに可能であり得る。たとえば、ユーザ290が広告214上をクリックすることで、アプリケーション220は、オンラインモード時に広告214によって指摘されたウェブページを開けるようにしてもよい。しかし、装置204がオフラインモードで動作されるとき、該選択されたアクションの完了は可能でなくてもよく、或いは便宜なものであってもよい。
【００６１】
1つの実施態様において、オフラインモードでの動作時、ユーザ290の広告214との対話は、キャッシュされてもよい。メディアプレーヤ222又はアプリケーション220は、ユーザ290の広告214との対話を検出するように構成されてもよい。この対話は、使用ファイル232内又はコンテンツDB 230内に格納されてもよい。
【００６２】
1つの実施態様において、アプリケーション220がオンラインモードで再び動作しているとき、該アプリケーション220は、使用ファイル232を読み取ってユーザ290によって発生したアクションを完了すべきか（たとえば、ウェブページを開いたり、電子メールを送ったりなど）を決定するように構成されてもよい。もう1つの実施態様において、メディアプレーヤ222は、オフラインモード中にアプリケーション220に対話の報告を行ってもよく、該アプリケーション220は、次のオンラインモードが発生したときに実行するためのアクションを後に内部にキャッシュしても、キュー登録してもよい。
【００６３】
さまざまな実施態様において、使用ファイル232は、メディアファイル212についてのユーザ290の使用に関する情報を含んでもよい。たとえば、メディアファイル212を何度再生したか、メディアファイル212の再生中にユーザ290がどこで再生を停止したか（再開情報）などに関する情報が、使用ファイル232内に格納されてもよい。また、ユーザ290の広告214との対話に関する情報（たとえば、再生回数、クリックしたかどうかなど）が、使用ファイル232内に記録されて格納されてもよい。このような実施態様において、オンラインモードへ復帰したとき、又はその後コンテンツサーバ202にアクセスしたときに、使用ファイル232又はその一部は、コンテンツサーバ202又は該コンテンツサーバ202に関連するサーバに送信されてもよい。
【００６４】
幾つかの実施態様において、オンラインモードに復帰したとき、又はその後コンテンツサーバ202にアクセスしたとき、DRMモジュール224又は装置204は、キャッシュされたメディアファイル212のDRM状態を確認するように構成されてもよい。たとえば、DRMモジュール224は、ユーザ290又は装置204がメディアファイル212にアクセスしてキャッシュする権限を引き続き有することをコンテンツサーバ202で確認するように構成されてもよい。たとえば、ユーザ290は、コンテンツプロバイダとのサービスを切断した可能性があり、従ってコンテンツプロバイダ及びコンテンツサーバ202によって提供されたメディアファイル212に対する権限をもはや有さない場合があるが、上記は1つの例示に過ぎず、開示内容はこれに限定されないと理解される。このような実施態様において、メディアファイル212がキャッシュされることがコンテンツサーバ202によって許可されない場合、DRMモジュール224は、メディアファイル212とそれに関連する広告214、並びにメタデータファイル216を削除又は消去するように構成されてもよい。
【００６５】
さまざまな実施態様において、装置204又はDRMモジュール224は、オンラインモードへ復帰したとき、又はその後コンテンツサーバ202にアクセスしたとき、キャッシュされたメディアファイル212に関連する広告214を更新又は置換するように構成されてもよい。たとえば、広告主は、一定の期間（たとえば、7月4日の週末など）だけ広告を再生する契約を結び、コンテンツサーバ202は、より最近の広告により７月4日の広告を削除したい場合がある。このような実施態様において、広告214の変更又は更新は、以下に説明されるように、メディアファイル212に関連するメタデータファイル216の変更を含んでもよい。
【００６６】
このような実施態様において、装置204又はDRMモジュール224は、メディアファイル212に関する新しいメタデータファイル216をダウンロード又は受信してもよい。さまざまな実施態様において、この新しいメタデータファイル216は、キャッシュされた複数のメタデータファイルと統合されるべき該キャッシュされたメタデータファイルへの変更のみを含んでもよい。
【００６７】
図3は、開示内容に従ったウェブブラウザ300の例示の実施態様の概略図である。1つの実施態様において、ウェブブラウザ300は、各々がウェブページ又は他の文書を表示するように構成された複数のタブ310を含んでもよい。
【００６８】
図3は、コンテンツサーバ又はメディアプロバイダのウェブページの1つの実施態様も図示する。さまざまな実施態様において、このウェブページは、該コンテンツサーバから直接供給されてもよい。もう１つの実施態様において、このウェブページは、メディアプレーヤ装置のメディアプレーヤ構成によって行われるプレゼンテーションの一部であってもよい。ユーザインターフェイス(UI)要素306は、再生又は選択されているメディアファイルに関する文脈情報を表示するように構成されてもよい。この文脈情報は、キャッシュされたメタデータファイル内に組み込まれているか、或いはオンラインモードでの動作の場合は、コンテンツサーバからダウンロードされる。
【００６９】
ウェブブラウザは、メディアファイル及び広告が表示又は再生される（たとえば、HTML Videoタグなど）メディアプレーヤ要素302を表示するように構成されてもよい。オンラインモード時、コンテンツサーバは、メディアプレーヤ要素302にメディア及び関連ファイルをストリームしてもよい。オフラインモード時、メディアプレーヤ要素302によって、上記キャッシュされたメディア及び関連ファイルが表示されてもよい。
【００７０】
さまざまな実施態様において、広告は、メディアプレーヤ要素302内に表示されてもよい。たとえば、該広告は、テレビ番組のコマーシャルブレーク内に組み込んでもよい。幾つかの実施態様において、広告312は、別のUI要素内に表示されてもよい。この様な実施態様において、該広告は、メディアファイルと実質的に同時に表示されてもよく、メディアプレーヤ要素302内に表示されてもよい。但し、上記は数少ない例示に過ぎず、開示された内容はこれに限定されないと理解される。
【００７１】
1つの実施態様において、上記で説明されるように、オフラインモードでの動作時にメディアプレーヤ要素302内で広告が選択され、この選択によりウェブブラウザ300にアクションを起こさせる場合、このウェブブラウザ300は、アクションをキャッシュしてもよいし、或いはウェブブラウザ300がオンラインモードに復帰したときの後の実行のために該アクションをキュー登録してもよい。さまざまな実施態様において、この処理は、新しいタブ310を作成して、そこに上記アクションがキュー登録されるようにすることを含んでもよい。但し、上記は数少ない例示に過ぎず、開示された内容はこれに限定されないと理解される。
【００７２】
ウェブページ又はメディアプレーヤの表示は、ユーザに、メディアファイルに関して、どの権限を有したいかを示すことを許容するように構成される複数のボタン又はUI要素308を含んでもよい。たとえば、3つのボタンを設けて、ユーザがメディアファイルを再生又はストリームしたり、オフライン再生のためにメディアファイルをキャッシュしたり、或いはメディアファイルを購入又はライセンス化したりできるようにしてもよい。オフラインモードでは、UI要素308の幾つか（たとえば、再生又はストリーミングボタンなど）は、使用不可であってもよい。さらに、1つの実施態様において、UI要素308のうちの1つ以上は、ユーザがオフラインモードで広告を選択するときに作成されるキャッシュ可能なユーザ対話イベントと類似したキャッシュ可能なユーザ対話イベントを作成してもよい。たとえば、「購入」ボタンは、ウェブブラウザがオンラインモードに復帰すると、メディアファイルの購入を開始又は完了させる対話イベントを作成してもよい。
【００７３】
このような実施態様において、キャッシュされたメディアファイルの購入は、このメディアファイルからの広告の関連付けの撤去を含んでもよく、以前に関連付けされた広告なしでメディアファイルを再生できるようにしてもよい。1つの実施態様において、これらの広告は、ウェブブラウザがオフラインモードで動作していても、メディアファイルから分離させてもよい。もう1つの実施態様において、この分離は、ウェブブラウザがオンラインモードに復帰し、コンテンツサーバ又はプロバイダが、メディアファイルに対するライセンスの購入のための支払を受け入れた後にのみ発生してもよい。同様に、キャッシュされたメディアファイルの購入の結果として、他のアクションが実行されてもよい。たとえば、メディアファイルは、暗号化が解除され、ローカルファイルシステムのユーザアクセス可能な部分などに移動されてもよいが、上記は数少ない例示に過ぎず、開示された内容はこれに限定されないと理解される。
【００７４】
図4は、開示内容に従ったメタデータファイル400の例示の実施態様の概略図である。上記例示の実施態様において、メタデータファイル400は、拡張可能なマークアップ言語(XML)フォーマット内に編成される情報を含んでもよい。好ましい実施態様において、上記メタデータファイル400は、JavaScript Object Notation(JSON)配列でフォーマットされてもよい。但し、上記は数少ない例示に過ぎず、開示された内容はこれに限定されないと理解される。
【００７５】
1つの実施態様において、メタデータファイル400は、文脈情報を含む部分402を含んでもよい。この文脈情報部分402は、メディアファイル内に含まれるメディアに関する情報（たとえば、映画の題目、再生時間、俳優、ジャンル、配給元、スタジオ、公開日など）を含んでもよい。
【００７６】
さまざまな実施態様において、メタデータファイル400は、DRM情報を含む部分404を含んでもよい。このDRM情報部分404は、メディアファイルに関連するアクセス権限又は制約に関する情報を含んでもよい。たとえば、制約としては、メディアファイルが特定の期間のみキャッシュ可能、特定の日付まで再生可能、特定の回数、特定の地域内で、特定の品質で（たとえば、ピクセル数、オーディオトラック、ビットレートなど）再生可能であること、特定のポート（たとえば、メインディスプレイ、外部ビデオポート、ヘッドフォン経由など）経由で再生されるなどの指定を含んでもよい。図示された実施態様において、DRM情報部分404は、メディアファイルが追加又はキャッシュされた日付（05/18/2010）から６０日で再生不可となることを示している。但し、上記は数少ない例示に過ぎず、開示された内容はこれに限定されないと理解される。
【００７７】
幾つかの実施態様において、メタデータファイル400は、広告情報を含む部分406を含んでもよい。この広告情報部分406は、メディアファイルに関連する広告の関連付け及び再生に関する情報を含んでもよい。さまざまな実施態様において、広告情報部分406は、メディアファイルに関し、当該広告を再生すべき回数の一覧、どの広告を再生すべきか、或いは、どこで広告を再生すべきかなど（たとえば、メディアファイルが再生されている画面の下、メディアファイルに入れ替わってなど）を含んでもよいが、上記は数少ない例示に過ぎず、開示された内容はこれに限定されないと理解される。たとえば、図示された実施態様において、Flash Small Web Format(ad1.swf)ファイルはメディアファイルの再生中に20分再生され、ウェブページ(ad2.html)はメディアファイルの再生中に40分30秒表示又は「再生」される。ウェブページのad2.htmlの組み込みによって判るように一覧表示されるか、或いは明示的に参照される広告は、他の広告ファイル（たとえば、画像ファイルなど）を含んでもよいし、これらのファイルを参照してもよい。
【００７８】
図5は、開示された内容に従った使用データファイル500の例示の実施態様の概略図である。上記で説明されるように、さまざまな実施態様において、ウェブブラウザ又はメディアプレーヤ装置は、コンテンツプロバイダ又はコンテンツサーバに使用データを報告してもよい。図示された実施態様において、使用データファイル500は、拡張可能なマークアップ言語(XML)フォーマット内に編成される情報を含んでもよい。好ましい実施態様において、使用データファイル500は、JavaScript Object Notation(JSON)配列でフォーマットされてもよい。但し、各コンテンツプロバイダは、使用データファイル500が特定のフォーマットを含むことを所望する可能性がある。但し、上記は数少ない例示に過ぎず、開示された内容はこれに限定されないと理解される。
【００７９】
1つの実施態様において、使用データファイル500は、メディア使用部分502を含んでもよい。このメディア使用部分502は、ユーザのメディアファイル使用に関する情報（たとえば、再生回数、再開位置、レーティング、ブックマーク、注釈、メモなど）を含んでもよいが、上記は数少ない例示に過ぎず、開示された内容はこれに限定されないと理解される。
【００８０】
1つの実施態様において、使用データファイル500は、広告使用部分504を含んでもよい。この広告使用部分504は、ユーザの広告使用に関する情報を含んでもよい。たとえば、各広告は、（実質的に独自の識別子(UID)などを経由して）識別されてもよく、当該広告に関する使用情報が記録されてもよい。たとえば、上記広告が視聴又は再生されたかどうか、ユーザが広告の一部をクリック又は選択したかどうかなどが記録されてもよい。さまざまな実施態様において、広告使用部分504は、上記広告に関してキャッシュされたアクション（たとえば、購入要求、ウェブページ要求など）を含んでもよいが、上記で説明されるように、これらのユーザアクションの幾つかは、ウェブブラウザ経由でキャッシュ又はキュー登録されていてもよい。但し、上記は数少ない例示に過ぎず、開示された内容はこれに限定されないと理解される。
【００８１】
図6は、開示内容に従ったメディアファイル及び広告ファイルの例示の実施態様の概略図である。1つの実施態様において、コンテンツサーバは、統合されたメディアファイルと広告を含むメディアプレーヤ装置を提供するようにしてもよい（602）。このような実施態様において、該コンテンツサーバは、該広告がメディアファイルに「焼き付けられる」か、又は「押し込まれ」、単一の統合ファイルとしてメディアプレーヤによって視聴されるような統合ファイル602を生成してもよい。幾つかの実施態様において、該メディアファイル及び広告のさまざまな部分が、（たとえば、チャプターマーキングなどを経由して）識別可能であってもよい。
【００８２】
しかし、1つの好ましい実施態様において、メディアファイルおよび広告ファイルは、別々のファイルであってもよい（604）。このような実施態様において、メディアファイル608は、広告610（たとえば、広告601a, 610b, 及び610c）とは別々であってもよい。これは、コンテンツプロバイダがメディアファイルを一回作成するだけでよく、ダウンロードの時点で、どの広告ファイル610をメディアファイル608と関連付けるかを動的に決定できる点で有利である。さらに、これにより、コンテンツサーバは、メディアファイル608の更新又は再送を行わなくても、広告ファイル610だけを更新又は置換することができる。但し、上記は数少ない例示に過ぎず、開示された内容はこれに限定されないと理解される。
【００８３】
さまざまな実施態様において、別々のメディアファイルおよび広告ファイル604は、ダウンロードのため単一のファイルとしてカプセル化又はパッケージ化されてもよい。このような実施態様において、メディアプレーヤ装置は、該カプセル化された単一ファイルの受信時に個々のメディアファイル608および広告610をアンパック又は分割してもよい。さらに、さまざまな実施態様において、広告ファイル610自体（たとえば、広告610b）は、コンテナフォーマット（たとえば、マルチパート・ハイパーテキスト・マークアップテキスト言語（マルチパートHTML又はMHTML）ファイル）内に複数のファイル（たとえば、ウェブページおよび画像など）を含んでもよい。これらの広告ファイル610は、コンテナフォーマットに格納又はキャッシュされても、個々のファイルに分割されてもよい。
【００８４】
図7は、開示された内容に従った技法の例示の実施態様の流れ図である。さまざまな実施態様において、この技法700は、図2のようなシステムによって使用又は生成されてもよい。さらにまた、技法700の各部は、図3, 4, 5,又は6のような要素又はデータファイルによって使用又は生成されてもよい。但し、上記は数少ない例示に過ぎず、開示された内容はこれに限定されないと理解される。また、開示された内容は、技法700によって例示されたアクションの順序又は数に限定されないと理解される。
【００８５】
ブロック702は、1つの実施態様において、上記で説明されるように、メディアファイル及び該メディアファイルに関連する少なくとも1つの広告が受信されうることを図示している。さまざまな実施態様において、これらのファイルは、上記で説明されるように、コンテンツサーバから伝送又は送信されてもよい。幾つかの実施態様において、受信することは、上記で説明されるように、該メディアファイルのファイル種別を検出することと、該ファイル種別に基づいてメディアファイルをキャッシュするか又はすぐに再生するかを決定することと、を含んでもよい。さまざまな実施態様において、このブロックによって例示されたアクションのうちの1つ以上が、上記で説明されるように、図2の装置又はシステム、特に図2のウェブブラウザ又はメディアプレーヤ装置によって実行されてもよい。
【００８６】
ブロック704は、1つの実施態様において、上記で説明されるように、メディアファイル及び少なくとも1つの広告に関連するメタデータファイルが受信されうることを図示している。幾つかの実施態様において、上記で説明されるように、メタデータファイルは、メディアファイルに関し、少なくとも1つの広告をいつ再生するかを示すタイミング情報、或いは広告をどのように再生すべきかなどを含んでもよい。さまざまな実施態様において、このブロックによって例示されたアクションのうちの1つ以上が、上記で説明されるように、図2の装置又はシステム、特に図2のウェブブラウザ又はメディアプレーヤ装置によって実行されてもよい。
【００８７】
ブロック706は、1つの実施態様において、上記で説明されるように、メディアファイル及び少なくとも1つの広告が、オフライン使用のためにローカルファイルシステム内にキャッシュされてよいことを図示している。さまざまな実施態様において、メディアファイルをキャッシュすることは、上記で説明されるように、該メディアファイルを復号化することと、該ローカルシステムの安全な領域内にメディアファイルを格納することと、を含んでもよい。さまざまな実施態様において、このブロックによって例示されたアクション（複数可）のうちの1つ以上が、上記で説明されるように、図2の装置又はシステム、特に図2のDRMモジュール又はメディアプレーヤ装置によって実行されてもよい。
【００８８】
ブロック708は、1つの実施態様において、上記で説明されるように、ウェブブラウザ又はメディアプレーヤ装置がオフラインモードで動作中であっても、キャッシュされたメディアファイル及びキャッシュされた少なくとも1つの広告が再生されうることを図示している。幾つかの実施態様において、再生は、上記で説明されるように、ユーザがメディアファイルを再生するアクセス権限を有するかどうかを決定することを含んでもよい。
【００８９】
さまざまな実施態様において、再生は、上記で説明されるように、デジタル権限管理モジュールからメディアファイルに関連する暗号化キーを要求することを含んでもよい。また、再生は、上記で説明されるように、暗号化キーを用いてメディアファイルを復号化することも含み得る。1つの実施態様において、再生は、上記で説明されるように、メディアプレーヤに広告タイミング命令を付与することを含んでもよく、これらの広告タイミング命令は、メディアファイルに関し、該メディアプレーヤが該メディアファイルの再生を一時停止し、代わりに少なくとも1つの広告を再生する1回以上の回数の一覧を含む。また、再生は、上記で説明されるように、広告タイミング命令に従って該復号化されたメディアファイル及び少なくとも1つの広告を、メディアプレーヤによって再生することを含んでもよい。さまざまな実施態様において、このブロックによって例示されたアクション（複数可）のうちの1つ以上が、上記で説明されるように、図2の装置又はシステム、特に図2のDRMモジュール又はメディアプレーヤ装置によって実行されてもよい。
【００９０】
ブロック710は、1つの実施態様において、上記で説明されるように、オフラインモード中に少なくとも1つの広告とのユーザの対話が検出されうることを図示している。さまざまな実施態様において、このブロックによって例示されたアクション（複数可）のうちの1つ以上は、上記で説明されるように、図2の装置又はシステム、特に図2のウェブブラウザ又はメディアプレーヤ装置によって実行されてもよい。
【００９１】
ブロック712は、1つの実施態様において、上記で説明されるように、オンラインモード時における更なる処理のためにユーザ対話がキャッシュされうることを図示している。さまざまな実施態様において、該ユーザ対話をキャッシュすることは、上記で説明されるように、ウェブブラウザがオンラインモードでの動作に復帰するとき、ユーザ対話に関するウェブアドレスにアクセスすべきことを該ウェブブラウザに示すことを含む。さまざまな実施態様において、このブロックによって例示されたアクション（複数可）のうちの1つ以上は、上記で説明されるように、図2の装置又はシステム、特に図2のウェブブラウザ又はメディアプレーヤ装置によって実行されてもよい。
【００９２】
ブロック714は、1つの実施態様において、上記で説明されるように、該装置又はウェブブラウザがオンラインモードで動作時、ユーザ使用及びユーザ対話情報がコンテンツサーバに報告されうることを図示している。さまざまな実施態様において、このブロックによって例示されたアクション（複数可）のうちの1つ以上は、上記で説明されるように、図2の装置又はシステム、特に図2のウェブブラウザ又はDRMモジュールによって実行されてもよい。
【００９３】
ブロック716は、1つの実施態様において、上記で説明されるように、キャッシュされたメディアファイル及び該メディアファイルに関連した少なくとも1つの広告が、該メディアファイルに関連した満期イベントが発生した後に削除され得ることを図示している。さまざまな実施態様において、これは、上記で説明されるように、該装置がオンラインモード中にコンテンツサーバからの命令の結果として発生し得る。もう1つの実施態様において、これは、上記で説明されるように、メディアファイルに関連する（たとえば、メタデータファイル中の）情報によって、オフラインモードで動作中に、自動化された事象として発生することがある。さまざまな実施態様において、このブロックによって例示されたアクション(複数可)のうちの1つ以上は、上記で説明されるように、図2の装置又はシステム、特に図2のウェブブラウザ又はDRMモジュールによって実行されてもよい。
【００９４】
本明細書において説明されるシステム及び技法のさまざまな実施態様は、デジタル電子回路、集積回路、特殊設計のASIC(特殊用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はその組み合わせで具現されてもよい。それらのさまざまな実施態様は、ストレージシステムからデータ及び命令を受信してストレージシステムにデータ及び命令を送信するように接続された、特殊用途又は汎用であってもよい少なくとも１つのプログラマブルプロセッサと、少なくとも１つの入力デバイスと、少なくとも１つの出力デバイスとを含むプログラマブルシステム上で実行可能及び/又は解釈可能な１つ以上のコンピュータプログラムにおける実施態様を含み得る。
【００９５】
それらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、又はコードとも呼ばれる)は、プログラマブルプロセッサの機械命令を含み、高水準プロシージャ型及び/又はオブジェクト指向プログラミング言語において、及び/又はアセンブリ/機械語において実施されてもよい。本明細書において使用されるように、「機械可読媒体」、「コンピュータ可読媒体」という用語は、機械可読信号として機械命令を受信する機械可読媒体を含む、機械命令及び/又はデータをプログラマブルプロセッサに提供するために使用される任意のコンピュータプログラム製品、装置及び/又はデバイス(たとえば、磁気ディスク、光ディスク、メモリ、プログラマブル論理デバイス(PLD))を示す。「機械可読信号」という用語は、機械命令及び/又はデータをプログラマブルプロセッサに提供するために使用される任意の信号を示す。
【００９６】
ユーザとの対話を提供するため、本明細書において説明されるシステム及び技法は、情報をユーザに表示するための(たとえばCRT(ブラウン管)又はLCD(液晶ディスプレイ)モニタのような)表示デバイス、並びにキーボード及び(たとえばマウス又はトラックボールのような)ユーザがコンピュータに入力を行うことができるポインティングデバイスを有するコンピュータで実施されてもよい。その他の種類のデバイスも、ユーザとの対話を提供するために使用されてもよく;  たとえば、ユーザに提供されるフィードバックは(たとえば視覚フィードバック、聴覚フィードバック、又は触覚フィードバックのような)任意の形態の知覚的フィードバックであってもよく;ユーザからの入力は、音響、発語、又は触覚入力を含む任意の形態で受信されてもよい。
【００９７】
本明細書において説明されるシステム及び技法は(たとえばデータサーバのような)バックエンドコンポーネントを含むか、又は(たとえばアプリケーションサーバのような)ミドルウェアコンポーネントを含むか、又は(たとえばユーザが本明細書において説明されるシステム及び技法の実施態様と対話することができるグラフィカルユーザインターフェイス又はWebブラウザを有するクライアントコンピュータのような)フロントエンドコンポーネンとを含むか、若しくはそのようなバックエンド、ミドルウェア、又はフロントエンドコンポーネントの任意の組み合わせを含むコンピューティングシステムにおいて実施されてもよい。システムのコンポーネントは、(たとえば通信ネットワークのような)デジタルデータ通信の任意の形態又は媒体によって相互接続されてもよい。通信ネットワークの例は、ローカルエリアネットワーク(「LAN」)、ワイドエリアネットワーク(「WAN」)、及びインターネットを含む。
【００９８】
コンピューティングシステムは、クライアント及びサーバを含むことができる。クライアント及びサーバは一般に、相互に離れており、通常は通信ネットワークを通じて対話する。クライアントとサーバの関係は、それぞれのコンピュータで稼働し、相互にクライアント-サーバの関係を有するコンピュータプログラムによって生じる。
【００９９】
以上、多くの実施態様について説明してきた。但し、開示された内容の趣旨及び範囲から逸脱しない限り、様々な修正が成されうると理解される。
【０１００】
また、図に示される論理流れ図は、望ましい結果を得るためであれば、図示された特定の順序又は順番である必要はない。また、他のステップが行われてもよいし、又は記載された流れ図からステップが除外されてもよいし、また記載されたシステムに他のコンポーネントが追加されたり、又はそこから除外されたりしてもよい。従って、その他の実施態様は、以下の請求項の範囲内とする。
【０１０１】
本明細書において説明される様々な技法の実施態様は、デジタル電子回路、或いはコンピュータハードウェア、ファームウェア、ソフトウェア、或いはこれらの組み合わせにおいて具現してもよい。実施態様は、コンピュータプログラム製品、即ち、情報キャリア内、たとえば、機械可読のストレージデバイス又は拡散した信号において有形に具現されるコンピュータプログラムとして、データ処理装置、たとえばプログラマブルプロセッサ、コンピュータ、或いは複数のコンピュータの操作による実行のため、又は同操作を制御するように具現されてもよい。上記のコンピュータプログラムなどコンピュータプログラムは、コンパイル又は翻訳された言語を含めた、任意の形態のプログラミング言語でも書くことができ、スタンドアロンプログラム又はモジュールとして、構成要素、サブルーチン又はコンピューティング環境での使用に適した他のユニットを含む、任意の形態で配備することができる。コンピュータプログラムは、1つのコンピュータ上、或いは1つのサイトでの複数のコンピュータ上で実行されるか、又は複数のサイトに跨って分散されると共に通信ネットワークによる相互接続されるように配備することができる。
【０１０２】
方法ステップは、入力データ上での操作及び出力を生成することにより各機能を実行するコンピュータプログラムを実行する1つ以上のプログラマブルプロセッサによって行ってもよい。また、方法ステップは、特殊目的の論理回路、たとえばFGPA（フィールド・プログラマブル・ゲートアレイ）、或いはASIC（アプリケーション固有の集積回路）によって行ってもよく、装置は、これらの論理回路として具現されてもよい。
【０１０３】
コンピュータプログラムの実行に適したプロセッサは、例示によって、一般及び特殊目的両方のマイクロプロセッサと、任意の種類のデジタルコンピュータの1つ以上のプロセッサとを含む。一般的に、プロセッサは、読み込み専用のメモリ又はランダムアクセスメモリ、或いはその両方から命令及びデータを受信する。コンピュータの要素は、命令を実行するための少なくとも1つのプロセッサと、命令およびデータを格納するための1つ以上のメモリデバイスとを含んでもよい。一般的に、コンピュータは、データを格納するための1つ以上の大容量ストレージデバイス、たとえば磁気ディスク、光磁気ディスク、又は光ディスクを含んでもよく、これらのデバイスからのデータの受信又は転送のいずれか又は両方を行うように動作的に接続されてもよい。コンピュータプログラム命令及びデータを実施するのに適した情報キャリアは、例示によって、たとえばEPROM、EEPROM、及びフラッシュメモリデバイスなどの半導体メモリデバイス、たとえば、内部ハードディスク又はリムーバブルディスクなどの磁気ディスク、光磁気ディスク、並びにCD-ROM及びDVD-ROMディスクを含む、全ての形態の不揮発性メモリを含む。前記プロセッサおよび前記メモリは、特殊目的の論理回路によって補足されても、その内部に組み込まれてもよい。
【０１０４】
ユーザとの対話を提供するため、実施態様は、ディスプレイデバイス、たとえばユーザに情報を表示するための、ブラウン管(CRT)又は液晶表示(LCD)モニタと、ユーザがコンピュータへの入力を行えるキーボード及びポインティングデバイス、たとえばマウス又はトラックボールとを有するコンピュータ上で具現されてもよい。他の種類のデバイスも又、ユーザとの対話を提供するように使用することができ、たとえば該ユーザに供されるフィードバックは、任意の形態の感覚フィードバック、たとえば視覚フィードバック、聴覚フィードバック、及び触覚フィードバックの形態とすることができ、該ユーザからの入力は、聴覚、会話又は触覚入力を含む、任意の形態で受信することができる。
【０１０５】
実施態様は、たとえばデータサーバのようなバックエンドコンポーネントを含むか、又はたとえばアプリケーションサーバのようなミドルウェアコンポーネントを含むか、又はたとえばユーザが実施態様と対話することができるグラフィカルユーザインターフェイス又はWebブラウザを有するクライアントコンピュータのようなフロントエンドコンポーネンとを含むか、若しくはそのようなバックエンド、ミドルウェア、又はフロントエンドコンポーネントの任意の組み合わせを含むコンピューティングシステムにおいて実施されてもよい。コンポーネントは、たとえば通信ネットワークのようなデジタルデータ通信の任意の形態又は媒体によって相互接続されてもよい。通信ネットワークの例は、ローカルエリアネットワーク(LAN)、及びたとえばインターネットのようなワイドエリアネットワーク(WAN)を含む。
【０１０６】
説明された実施態様の特定の特徴が本明細書において説明されるように示されたが、当業者には多数の修正、代替、変更、及び等価が考案されよう。したがって、添付の特許請求の範囲は、すべてのそのような修正及び変更を、実施態様の範囲内に含まれるものとして扱うことが意図されていることを理解されたい。
【図１】
2013507721.tif 000003
【図２】
2013507721.tif 000004
【図３】
2013507721.tif 000005
【図４】
2013507721.tif 000006
【図５】
2013507721.tif 000007
【図６】
2013507721.tif 000008
【図７】
2013507721.tif 000009
【国際調査報告】
2013507721.tif 000010
2013507721.tif 000011
2013507721.tif 000012