(57)【要約】本明細書には、一群の資源を配置および更新するコンテンツ管理を提供する技術が開示されている。コンテンツ管理を提供するシステムは、一群の資源のうちのローカルデバイスから、そのローカルデバイスを一意に識別するカノニカルユニフォームリソースロケータ（URL）を含むローカルコンテンツリクエストを受け取るように構成されたウェブサーバまたは他の装置を含むことができる。さらに、このローカルコンテンツリクエストを分析して、このＵＲＬが１つまたは複数の書換え規則に整合しているかどうかを判定し、この分析に基づいて、このローカルコンテンツリクエストに対する応答を策定し、策定された応答を伝送するように、このウェブサーバを構成することができる。【選択図】図１
2018538598.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータ実行可能命令を記憶している非一時的コンピュータ可読記憶媒体であって、
前記コンピュータ実行可能命令がコンピュータによって実行されたときに、
一群の資源のうちのローカルデバイスから、前記ローカルデバイスを一意に識別するカノニカルユニフォームリソースロケータ（URL）を含むローカルコンテンツリクエストを受け取ることと、
前記ローカルコンテンツリクエストを分析して、前記カノニカルＵＲＬが１つまたは複数の書換え規則と整合しているかどうかを判定することと、
前記分析に基づいて、前記ローカルコンテンツリクエストに対する応答を策定することと、
前記策定された応答を伝送することと、
を前記コンピュータに実行させる、非一時的コンピュータ可読記憶媒体。
【請求項２】
前記ローカルコンテンツリクエストは、定期的マニフェストリクエストを含み、前記定期的マニフェストリクエストは、前記ローカルデバイスに関連付けられた資源のマニフェストを識別する、請求項１に記載の非一時的コンピュータ可読記憶媒体。
【請求項３】
前記応答を策定することは、前記ローカルデバイスに関連付けられた資源の第２のセットのマニフェストを含む更新されたマニフェストを生成することを含む、請求項２に記載の非一時的コンピュータ可読記憶媒体。
【請求項４】
前記ローカルコンテンツリクエストは、資源の前記マニフェストの中で識別された少なくとも１つの資源を求めるリクエストを含む、請求項２に記載の非一時的コンピュータ可読記憶媒体。
【請求項５】
前記策定された応答を伝送することは、前記少なくとも１つの資源を伝送することを含む、請求項４に記載の非一時的コンピュータ可読記憶媒体。
【請求項７】
プロセッサと、
前記プロセッサによって実行可能な命令を記憶している非一時的コンピュータ可読記憶媒体と、を備え、
前記非一時的コンピュータ可読記憶媒体は、前記実行可能な命令が実行されたときに、
前記装置を一意に識別するカノニカルユニフォームリソースロケータ（URL）を含むローカルコンテンツリクエストを生成することと、
前記ローカルコンテンツリクエストに対する応答であって、前記装置に関連付けられた資源のマニフェストと新たなコンテンツとのうちの少なくとも一方を含む応答を受け取ることと、
を構成するウェブサービスを前記プロセッサに実行させる、装置。
【請求項８】
前記プロセッサと動作可能に通信しているディスプレイデバイスをさらに備え、
前記ウェブサービスは、
前記新たなコンテンツを表示するよう前記ディスプレイデバイスに指示する
ようにさらに構成されている、請求項７に記載の装置。
【請求項９】
前記プロセッサと動作可能に通信している販売機ハードウェアをさらに備え、
前記販売機ハードウェアは、前記ディスプレイデバイス上の前記新たなコンテンツが操作されたことに応答して食料製品または飲料製品を分配するように構成されている、請求項８に記載の装置。
【請求項１０】
前記プロセッサと動作可能に通信している飲料ファウンテン分配ハードウェアをさらに備え、
前記飲料ファウンテン分配ハードウェアは、前記ディスプレイデバイス上の前記新たなコンテンツが操作されたことに応答して飲料を分配するように構成されている、請求項８に記載の装置。
【請求項１１】
前記ウェブサービスは、第１のウェブサービスであり、
前記非一時的コンピュータ可読記憶媒体は、前記プロセッサによって実行可能なさらなる命令を記憶しており、前記さらなる命令が実行されたときに、
ウェブソケットまたはハイパーテキスト転送プロトコル（HTTP）を介して前記第１のウェブサービスと通信する
ように構成された第２のウェブサービスを前記プロセッサに実行させる、請求項７に記載の装置。
【請求項１２】
前記第１のウェブサービスは、食料製品または飲料製品を分配するよう前記第２のウェブサービスに指示するように構成されている、請求項１１に記載の装置。
【請求項１３】
前記プロセッサと動作可能に通信しているローカルコンテンツデータストアをさらに備え、
前記ウェブサービスは、さらに、
前記新たなコンテンツを前記ローカルコンテンツデータストアにキャッシュする
ように構成されている、請求項７に記載の装置。
【請求項１４】
前記ウェブサービスは、さらに、
前記受け取ったマニフェストが現在のマニフェストから変更されているかどうかを判定し、
前記マニフェストが変更されていると判定されたことに応答して、前記マニフェストの中で識別された資源が前記ローカルコンテンツデータストアにキャッシュされているかどうかを判定する
ように構成されている、請求項１３に記載の装置。
【請求項１５】
前記ウェブサービスは、さらに、
前記マニフェストの中で識別された前記資源が前記ローカルコンテンツデータストアにキャッシュされていると判定されたことに応答して、前記ローカルコンテンツデータストアから前記資源をロードする
ように構成されている、請求項１４に記載の装置。
【請求項１６】
前記ウェブサービスは、さらに、
前記マニフェストの中で識別された前記資源が前記ローカルコンテンツデータストアにキャッシュされていないと判定されたことに応答して、前記受け取ったマニフェストの中で識別された前記資源を要求するローカルコンテンツリクエストを生成する
ように構成されている、請求項１４に記載の装置。
【請求項１６】
一群の資源に対するコンテンツ管理を提供するコンピュータ実施方法であって、
前記一群の資源のうちの１つまたは複数のローカルデバイスへの新たなコンテンツの伝送を容易にするアプリケーションプログラミングインタフェース（API）をコンソールデバイスに対して公開し、
前記新たなコンテンツを受け取るために前記１つまたは複数のローカルデバイスのうちの少なくとも１つのローカルデバイスを識別するコンテンツ変更リクエストを前記コンソールデバイスから受け取り、
前記新たなコンテンツを受け取り、
前記少なくとも１つのローカルデバイスから生じたローカルコンテンツリクエストに応答して、前記少なくとも１つのローカルデバイスに前記新たなコンテンツを伝送する
ためのコンピュータ実施動作を実行することを含む、コンピュータ実施方法。
【請求項１７】
前記ローカルコンテンツリクエストは、前記少なくとも１つのローカルデバイスを一意に識別するカノニカルユニフォームリソースロケータ（URL）を含む、請求項１６に記載のコンピュータ実施方法。
【請求項１８】
前記新たなコンテンツは、広告コンテンツ、グラフィカルコンテンツまたはビデオコンテンツを含む、請求項１６に記載のコンピュータ実施方法。
【請求項１９】
前記１つまたは複数のローカルデバイスは、販売デバイス、飲料ファウンテン分配デバイスおよびデジタルビルボードデバイスを含む、請求項１６に記載のコンピュータ実施方法。
【請求項２０】
前記ＡＰＩは、さらに、ハイパーテキスト転送プロトコルによるＵＲＬのリルーティングを容易にする、請求項１６に記載のコンピュータ実施方法。
【発明の詳細な説明】
【技術分野】
【０００１】
商標
[0001]  ＣＯＣＡ−ＣＯＬＡ（登録商標）は、Ｔｈｅ  Ｃｏｃａ  Ｃｏｌａ  Ｃｏｍｐａｎｙ（米国ジョージア州アトランタ）の登録商標である。本明細書で使用されているその他の名称、シンボル、デザインまたはロゴも、Ｔｈｅ  Ｃｏｃａ−Ｃｏｌａ  Ｃｏｍｐａｎｙまたはその他の企業の登録商標、商標または製品名であり得る。
【０００２】
[0002]  本発明は、デジタルディスプレイおよびヒューマン−マシンインタフェースに関し、特に、一群のデジタルディスプレイ、ヒューマン−マシンインタフェース、ならびに他のグラフィカルディスプレイおよびデバイスにわたるコンテンツ管理を提供するシステムおよび方法に関する。
【背景技術】
【０００３】
[0003]  デジタルコンテンツは一般に、一群のデジタルディスプレイ、ヒューマン−マシンインタフェース、ならびに他のグラフィカルディスプレイおよびデバイスにわたって分散させることができる。デジタルコンテンツは、インストール手順中または修復手順中に、それぞれのデバイスで生成され、それぞれのデバイスに記憶されることがある。例えば、ユニバーサルシリアルバス（USB）大容量記憶デバイスなどのコンピュータ可読記憶媒体によって、新たなデジタルコンテンツまたは更新されたデジタルコンテンツが関連デバイスに転送されることがある。したがって、デバイス群のサイズが増大するにつれ、コンテンツの更新に関連したコストおよび労力は劇的に増大することになる。さらに、一群のデバイスにわたってコンテンツを管理するための全体の更新時間により、コンテンツ変更を適時に調整する際の難しさ、または所望のロールアウト期間（rollout period）もしくは調整されたコンテンツ更新の目標時間に関する難しさが増すことがある。
【発明の概要】
【０００４】
[0004]  本明細書でなされる開示は、これらの考慮事項およびその他の考慮事項に関して提示される。
【図面の簡単な説明】
【０００５】
【図１】[0005]本明細書に提示された一構成におけるコンテンツ管理システムの構成および動作の諸態様を示すシステムアーキテクチャ図である。
【０００６】
【図２】[0006]本明細書に開示された一構成におけるサーバインスタンス（server instance）の動作の諸態様を示すフロー図である。
【０００７】
【図３】[0007]本明細書に開示された一構成におけるローカルデバイスの動作の諸態様を示すフロー図である。
【０００８】
【図４】[0008]本明細書に開示された一構成におけるサーバコンピュータまたは他のコンピューティングデバイスの動作の諸態様を示す図である。
【０００９】
【図５】[0009]本明細書に開示された一構成におけるローカルデバイスの諸態様を示す図である。
【００１０】
【図６】[0010]本明細書に提示されたさまざまな技術の諸態様を実施する目的に利用することができるコンピューティングデバイスを実施する例示的なコンピュータハードウェアアーキテクチャを示すコンピュータアーキテクチャ図である。
【発明を実施するための形態】
【００１１】
[0011]  本明細書で使用されるように、用語「飲料形成ディスペンサ（beverage forming dispenser）」、「製品ディスペンサ」、「飲料ディスペンサ」、「ディスペンサ装置」、「販売デバイス」、「ディスペンサ」およびこれらの用語のその他の異形は、飲料、缶、ボトル、容器または他の飲料製品などの製品を分配するデバイスを指すことがある。
【００１２】
[0012]  本明細書で使用されるように、用語「製品」および「飲料」ならびにこれらの用語の複数形は同義語として使用され、どの用語が使用されていても、本発明の特定の特徴の範囲は限定されるべきではない。
【００１３】
[0013]  以下の詳細な説明は、コンテンツ管理を提供する技術を対象としている。本明細書に記載された技術を利用することによって、一群の資源上にコンテンツを配置し、またはコンテンツを更新する機能を提供するサーバインスタンス、アプリケーションプログラミングインタフェース（API）および関連するプログラムコードを実施することができる。
【００１４】
[0014]  この一群の資源は一般に、１つまたは複数のローカルデバイス、サーバコンピュータおよびコンソールデバイスまたは管理用デバイスを含むことができる。ローカルデバイスは、デジタルディスプレイまたは他のグラフィカルユーザインタフェースを有するように構成されることができる。デジタルディスプレイは、例えば広告、ビデオ、グラフィックおよびその他のデジタルコンテンツなどのデジタルコンテンツを表示することができる。ローカルデバイスは、本明細書に記載されたとおりにコンテンツを表示することができる少なくとも１つのデジタルディスプレイまたはその他のディスプレイ装置を備えるデジタルビルボード、混成アナログ／デジタルビルボード、飲料分配デバイス、販売デバイス、飲料冷却器およびその他のデバイスを含むことができる。ローカルデバイスは、ハイパーテキストマークアップランゲージの改訂第５版（HTML5）、ハイパーテキスト転送プロトコル（HTTP）などの確立された標準プロトコルに従ってコンテンツを受け取り、配列し、表示するように構成されたウェブブラウザまたは他のプログラムコード配列を含むことができる。ウェブブラウザはさらに、本明細書に記載されたデジタルコンテンツを取り出しかつ／または更新するように構成されたウェブサービスを実行することができる。ウェブブラウザはさらに、ＪａｖａＳｃｒｉｐｔオブジェクトノウテーション（JavaScript Object Notation）（JSON）を介したＪａｖａＳｃｒｉｐｔの実行など、本明細書に記載された操作の一部を実行することができるプログラム可能な１つまたは複数のスクリプトの実行を提供することができる。
【００１５】
[0015]  デジタルコンテンツは、本明細書に提示された方法論に従ってサーバコンピュータから供給することができる。サーバコンピュータは少なくとも、ネットワークまたはインターネットなどの一連のネットワークを介してローカルデバイスと定期的に通信することができる。この定期的な通信は、固定された期間または可変期間に基づいて実施することができる。いくつかの実装形態によれば、この定期的な通信はさらに、絶え間ない通信または一貫した通信を含むことができる。サーバコンピュータは、前記１つまたは複数のローカルデバイスから受け取ったローカルコンテンツリクエストを処理するために、１つまたは複数のサーバインスタンスをスピンアップすることができる。ローカルコンテンツリクエストは一般にローカルデバイスだけによって生成され、入来ローカルコンテンツリクエストを「聴取」かつ／または監視するように構成されたサーバコンピュータまたはサーバインスタンスによって処理される。
【００１６】
[0016]  サーバインスタンスは、コンテンツデリバリネットワーク（content delivery network）（CDN）として配列することができる。例えば、ＣＤＮは、ウェブページおよびその他のコンテンツをローカルコンテンツリクエストに基づいて送達する分散型サーバのシステムである。ローカルコンテンツリクエストは、リクエストを発行したローカルデバイスを識別するように配列することができ、サーバインスタンスは、ローカルコンテンツリクエストを処理して、適切な応答を決定することができる。例えば、サーバインスタンスは、ローカルデバイスに対する資源のマニフェスト（manifest）、ローカルデバイスに表示するコンテンツの索引ファイル、ローカルデバイスにおいて更新または表示する新たなコンテンツ、または他の同種の応答を返すことができる。応答、マニフェスト、索引、コンテンツ、およびサーバインスタンスとローカルデバイスの間の他の可能な伝送の特定の形態は、コンソールデバイスによって管理されている構成データに基づいて決定することができる。
【００１７】
[0017]  コンソールデバイスは、ラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータまたはその他のデバイスなどの適当なコンピューティングデバイスまたは装置である。コンソールデバイスを使用して、コンテンツ変更リクエストを発行し、新たなコンテンツまたは更新されたコンテンツを、サーバインスタンスにおいて公開されたＡＰＩを介してサーバコンピュータに提出することができる。ＡＰＩは、サーバコンピュータによって記憶または維持された所望のコンテンツにカノニカル（canonical）ユニフォームリソースロケータ（URL）情報をマップするマッピングデータベースを操作することによって、特定のコンテンツ変更リクエストを比較的に容易に提出することを可能にする。ＡＰＩはさらに、サーバコンピュータが記憶／維持する新たなコンテンツの提出を容易にする。本明細書に記載されたとおりにローカルデバイスに配布するため、新たなコンテンツにはサーバインスタンスもアクセス可能である。
【００１８】
[0018]  他のインタフェース技術および／または通信プロトコルを使用することによって、ＡＰＩおよびサーバインスタンスが提供する機能を本開示の範囲を逸脱することなく組み合わせることもできることを理解されたい。例えば、限定はされないが、特にＡＰＩとは呼ばれないソフトウェアまたはウェブインタフェースを介して、コンソールデバイスとサーバコンピュータの間の対話を容易にすることができる。他の機能を提供することもできる。コンテンツ管理を実施する上述のさまざまな構成要素およびプロセスに関する追加の詳細については、図１〜６に関して後に提示する。
【００１９】
[0019]  本明細書に提示された主題は、コンピュータプロセス、コンピュータ制御された装置、コンピューティングシステムまたは製造品、例えばコンピュータ可読記憶媒体として実施することができることを理解されたい。本明細書に記載された主題は、１つまたは複数のコンピューティングデバイス上で実行されるプログラムモジュールの一般的な文脈で提示されるが、別の実装形態は、他のタイプのプログラムモジュールと組み合わせて実行することができることを当業者は認識するであろう。プログラムモジュールは一般に、ルーチン、プログラム、構成要素、データ構造体、および特定のタスクを実行しまたは特定の抽象データ型を実施する他のタイプの構造体を含む。
【００２０】
[0020]  本明細書に記載された主題の諸態様は、マルチプロセッサシステム、マイクロプロセッサベースの民生用電子機器もしくはプログラム可能な民生用電子機器、ミニコンピュータ、メインフレームコンピュータ、ハンドヘルドコンピュータ、パーソナルデジタルアシスタント、ｅリーダ、移動電話デバイス、タブレットコンピューティングデバイス、専用ハードウェアデバイス、ネットワーク機器などを含む、本明細書に記載されたコンピュータシステム構成以外の他のコンピュータシステム構成上で、またはこのような他のコンピュータシステム構成に関連して実施することができることも当業者は理解するであろう。上で簡単に述べたように、本明細書に記載された構成は、分散コンピューティング環境で実施することができる。分散コンピューティング環境では、通信ネットワークを介してリンクされた遠隔コンピューティングデバイスによってタスクを実行することができる。分散コンピューティング環境では、ローカル記憶デバイスと遠隔記憶デバイスの両方にプログラムモジュールを置くことができる。
【００２１】
[0021]  以下の詳細な説明では添付図面を参照する。添付図面は、本明細書の部分を構成し、特定の構成または例を実例として示す。本明細書の図面は一定の尺度では描かれていない。これらのいくつかの図にわたって同様の参照番号は同様の要素を表す（本明細書では、これらの図が、「図（FIG.）」または「図（FIGS.）」として示されることがある）。
【００２２】
[0022]  図１は、本明細書に提示された一構成における、ローカルデバイス１２０に表示されたコンテンツのコンテンツ管理のためのコンソールデバイス１０４、サーバコンピュータ１１０およびローカルデバイス１２０の構成および動作の諸態様を示すシステムアーキテクチャ図である。簡単に上記したように、図１に示されているとおり、コンソールデバイス１０４の管理者１０２は、コンテンツ変更リクエスト１０６と、１つまたは複数のローカルデバイスに配布する新たなコンテンツ１０８とを作成することができる。
【００２３】
[0023]  一般に、コンテンツ変更リクエスト１０６は、コンソールデバイス１０４によって実行されるコンテンツ管理アプリケーションまたはユーザインタフェースによって簡単にできる。図示されてはいないが、コンテンツ管理アプリケーションは、特定のローカルデバイス、配布するコンテンツ、およびコンテンツの容易な配布を可能にする他の属性の比較的に容易な識別を可能にするように構成することができる。コンテンツ管理アプリケーションは、任意の適当なコンピュータプログラムまたはプログラムコードのセグメントによって具現化することができ、いくつかの実装形態によれば、コンテンツ管理アプリケーションは、一般的なユーザインタフェースまたはカスタマイズされたユーザインタフェースであってよい。
【００２４】
[0024]  いくつかの実装形態では、新たなコンテンツ１０８がコンソールデバイス１０４で生成され得る。別の実装形態では、新たなコンテンツがコンソールデバイス１０４の外部で生成され、コンソールデバイス１０４に転送される。新たなコンテンツ１０８のコンソールデバイスへの転送は、直接伝送、大容量記憶デバイスからの転送、インターネットを介した転送、電子メールの添付物としての転送または任意の他の適当な手段を含む、任意の望ましい手段によって容易にすることができる。新たなコンテンツ１０８は、例えば広告、ビデオ、グラフィック、ユーザとローカルデバイス１２０との対話を容易にするユーザインタフェースコンテンツおよび他のデジタルコンテンツなどのコンテンツを含むことができる。新たなコンテンツ１０８はさらに、非デジタルコンテンツのセグメント、または上に明示的に挙げられていない他の形態のコンテンツを含むことができる。コンソールデバイス１０４で新たなコンテンツが生成された後またはコンソールデバイス１０４に新たなコンテンツが転送された後、管理者１０２は、コンテンツ変更リクエスト１０６および／または新たなコンテンツ１０８をサーバコンピュータ１１０に送ることができる。
【００２５】
[0025]  図１に示すように、サーバコンピュータ１１０は、サーバコンピュータ１１０上で実行される少なくとも１つのサーバインスタンス１１４と、サーバコンピュータ１１０またはサーバインスタンス１１４のいずれかによって公開されているアプリケーションプログラミングインタフェース（API）１１２とを含むことができる。サーバインスタンス１１４は、適当な任意のコンピューティングインスタンスとすることができる。例えば、限定はされないが、適当なコンピューティングインスタンスは、サービスプロバイダネットワークによって提供されるクラウドベースのコンピューティングインスタンスを含むことができる。
【００２６】
[0026]  このようなクラウドベースのコンピューティングインスタンスは比較的によく知られており、サービスプロバイダネットワークの運営会社によって提供されているさまざまなタイプのインスタンスを含むことができる。少なくとも１つの実装形態によれば、サーバインスタンス１１４が、ＡＭＡＺＯＮ  ＷＥＢ  ＳＥＲＶＩＣＥＳおよび／またはＡＭＡＺＯＮ  ＴＥＣＨＮＯＬＯＧＩＥＳ，ＩＮＣＯＲＰＯＲＡＴＥＤによって提供されているＥＬＡＳＴＩＣ  ＣＯＭＰＵＴＥ  ＣＬＯＵＤ（EC2）インスタンスである。ＥＣ２インスタンスは、サービスプロバイダネットワークによって提供される望ましい任意のコンピューティングインスタンスを含むことができ、これには例えば、必要性または通信量に基づいてコンピューティング資源をスケーリングすることができるオンデマンドコンピューティングインスタンスが含まれる。その中に提示される技術の任意の所望の実装形態によっては他のコンピューティングインスタンスが適用可能であることもある。
【００２７】
[0027]  ＡＰＩ１１２は、ローカルデバイス１２０、サーバコンピュータ１１０およびコンソールデバイス１０４の相互間の通信を容易にするカスタマイズされたインタフェースとすることができる。ＡＰＩ１１２の中に記述されたルーチンにアクセスすることによって、コンソールデバイス１０４は、コンテンツ変更リクエスト１０６および新たなコンテンツ１０８をサーバコンピュータ１１０に提供することができる。コンテンツ変更リクエスト１０６および／または新たなコンテンツ１０８を受け取った後、ＡＰＩ１１２は、サーバコンピュータ１１０のファイルシステム１０９に記憶する規則変更１１６を生成することができる。いくつかの実装形態では、新たなコンテンツ１０８が、他の通信経路（図示せず）を通ってファイルシステム１０９上にロードされる。
【００２８】
[0028]  ファイルシステム１０９は、新たなコンテンツ１０８と、規則のデータベースまたは規則のマッピングとを記憶することができる適当な任意のファイルシステムを含むことができる。ファイルシステム１０９およびファイルシステム１０９の適用可能部分については図４を参照してより完全に説明する。加えて、単一のファイルシステムとして図示し説明したが、ファイルシステム１０９が２つ以上のファイルシステムを含んでもよいことを理解されたい。さらに、ファイルシステム１０９を拡張可能なファイルシステムとすることもできる。拡張可能なファイルシステムは、より多くの記憶資源に対する必要性または要望に基づいて使用可能な記憶域を増大させることができる、サービスプロバイダネットワークによって提供される記憶資源を含むことができる。そのような１つのファイルシステムが、ＡＭＡＺＯＮ  ＷＥＢ  ＳＥＲＶＩＣＥＳおよび／またはＡＭＡＺＯＮ  ＴＥＣＨＮＯＬＯＧＩＥＳ，ＩＮＣＯＲＰＯＲＡＴＥＤによって提供されているＳＩＭＰＬＥ  ＳＴＯＲＡＧＥ  ＳＯＬＵＴＩＯＮである。任意の所望の実装形態によっては他のファイルシステムが適用可能であることもある。
【００２９】
[0029]  ファイルシステム１０９内に規則変更１１６を実施し、新たなコンテンツ１０８を記憶した後、ファイルシステム１０９は、サーバインスタンス１１４から受け取ったサーバコンテンツリクエスト１１８を処理することができる。サーバコンテンツリクエスト１１８は例えば、新たなコンテンツ１０８を要求するリクエスト、古いコンテンツ（図示せず）を要求するリクエスト、またはファイルシステム１０９によって記憶された何らかの他の情報を要求するリクエストを含むことができる。サーバコンテンツリクエスト１１８を受け取り、処理した後、ファイルシステム１０９は、新たなコンテンツ１０８をサーバインスタンス１１４に提供することができる。
【００３０】
[0030]  別の例として、ＡＰＩ１１２は、規則変更１１６に基づいて、一組の書換え規則を、サーバインスタンス１１４内の構成ファイルとして書くことができる。その後、サーバインスタンス１１４は、その構成ファイル内の書換え規則を実行して、マッピングデータベース内に指定されたそのローカルデバイス１２０に対する所望のコンテンツを指すように、ローカルコンテンツＵＲＬを書き換えることができる。書換え規則およびマッピングデータベースについては図４を参照してより詳細に説明する。
【００３１】
[0031]  新たなコンテンツ１０８は一般に、ローカルデバイス１２０によって表示されるように機能することができる。一実装形態によれば、ローカルデバイス１２０は、システム１００によって管理される一群の資源のうちのローカルデバイスである。ローカルデバイス１２０は、本明細書に記載された技術に従ってコンテンツを表示するように配列された少なくとも１つのディスプレイデバイス１２４を含む。ディスプレイデバイス１２４は、例えば広告、ビデオ、グラフィック、ユーザインタフェースおよび他のデジタルコンテンツなど、新たなコンテンツ１０８を含むデジタルコンテンツを表示することができる。ディスプレイデバイス１２４は、アナログコンテンツを表示することもでき、典型的なデジタルディスプレイ以外の他のタイプのディスプレイを含むことができる。例えば、ディスプレイデバイス１２４は、伝統的なプラズマディスプレイパネル、液晶ディスプレイ（LCD）パネルまたはその他のデジタルディスプレイパネルを含むことができるが、物理的に３次元のディスプレイを可能にするように作動する１つまたは複数の可動部分を備える混成アナログ／デジタルディスプレイパネルを含むこともできる。ディスプレイデバイス１２４は、例えばタッチセンシティブディスプレイ、有機ＬＥＤベースのディスプレイ、または任意の他の適当なディスプレイもしくはディスプレイの組合せを含む、他の形態のディスプレイを含むこともできる。
【００３２】
[0032]  図１にさらに示されているように、ローカルデバイス１２０は、ハイパーテキストマークアップランゲージの改訂第５版（HTML5）、ハイパーテキスト転送プロトコル（HTTP）などの確立された標準プロトコルに従ってコンテンツを受け取り、配列し、表示するように構成されたウェブブラウザ１２８または他のプログラムコード配列を含むことができる。ウェブブラウザ１２８はさらに、本明細書に記載されたデジタルコンテンツを取り出しかつ／または更新するように構成されたウェブサービスを実行することができる。ウェブブラウザ１２８は加えて、ＪａｖａＳｃｒｉｐｔオブジェクトノウテーション（JSON）を介したＪａｖａＳｃｒｉｐｔおよび転送データの実行など、本明細書に記載された操作の一部を実行することができるプログラム可能な１つまたは複数のスクリプトの実行を提供することができる。
【００３３】
[0033]  ウェブブラウザ１２８は一般に、サーバインスタンス１１４および／またはサーバコンピュータ１１０に向けられたローカルコンテンツリクエスト１２２を生成するように配列される。ローカルコンテンツリクエスト１２２は、ローカルデバイス１２０に対する一意の識別またはＩＤを識別するカノニカルユニフォームリソースロケータ（URL）アドレスを含むことができる。例えば、カノニカルＵＲＬは一般に、「ｈｔｔｐ：／／ｓｅｒｖｅｒ．ｃｏｍ／ｌｏｃａｌ＿ｄｅｖｉｃｅ＿ＩＤ」の形態をとる。一群の資源のうちの他のローカルデバイスは、その関連ローカルデバイスを識別する一意のＩＤを有する以外は同じカノニカルＵＲＬを使用することができる。例えば、第２のローカルデバイスは、カノニカルＵＲＬ「ｈｔｔｐ：／／ｓｅｒｖｅｒ．ｃｏｍ／ｌｏｃａｌ＿ｄｅｖｉｃｅ＿ＩＤ＿２」を使用することができる。それに応じて、ローカルコンテンツリクエスト１２２は、本明細書に記載された一群の資源の中からそのローカルデバイス１２０を識別することができる。ローカルコンテンツリクエスト１２２を受け取り、処理した後、サーバインスタンス１１４は、その一意のＩＤに基づいて、コンテンツリクエスト１１９に対する応答を策定することができる。このコンテンツリクエスト１１９に対する応答は、使用可能な資源の索引およびマニフェストまたはその他の情報を含むことができる。コンテンツリクエスト１１９に対するこの応答を利用して、ウェブブラウザ１２８は、ローカルデバイス１２０上に配列されたローカルコンテンツデータストア１３２から、表示するコンテンツ１２６を取り出すことができる。表示するコンテンツ１２６は、適切に表示するようにディスプレイデバイス１２４に指示することができる。いくつかの実装形態によれば、表示するコンテンツ１２６が新たなコンテンツ１０８を含むことができる。さらに、表示するコンテンツ１２６は、コンテンツデータストア１３２に記憶されている以前にキャッシュされたコンテンツを含むことができる。このようにして、ウェブブラウザ１２８ならびに関連ウェブサービスおよび／またはスクリプティングモジュールは、コンテンツリクエスト１１９に対する応答の特定の配列に応じて、新たなコンテンツもしくは更新されたコンテンツを表示するように、または現在のコンテンツの表示をリフレッシュもしくは維持するように、ディスプレイデバイス１２４に指示することができる。
【００３４】
[0034]  上で述べたとおり、システム１００は、（ローカルデバイス１２０などの）複数のローカルデバイスを含む一群の資源の全体にわたるコンテンツ管理を提供することができる。コンテンツは、管理者１０２がコンソールデバイス１０４によって生成または提供することができる。コンソールデバイスは、公開されたＡＰＩ１１２を利用して、コンテンツ変更リクエスト１０６および新たなコンテンツ１０８を提出することができる。その後に、サーバコンピュータ１１０は、任意のリクエストするローカルデバイス１２０からのローカルコンテンツリクエスト１２２を、コンテンツリクエスト１１９に対する適切な応答が生成されるような態様で処理することができる。さらに、ディスプレイデバイス１２４によって表示するために、新たなコンテンツ１０８をローカルデバイス１２０に伝送することができる。以下では、サーバインスタンス１１４およびサーバコンピュータ１１０の動作ならびにローカルデバイス１２０の動作を、図２〜５を参照してより完全に説明する。
【００３５】
[0035]  図２は、本明細書に開示された一構成におけるサーバインスタンス１１４の動作の諸態様を示す流れ図である。図２に示されているように、方法２００は、サーバインスタンス１１４、または代替として個々のサーバシステムもしくは分散型サーバシステムによって実行される操作を含む。サーバインスタンス１１４は、ブロック２０２で、ローカルコンテンツリクエスト１２２を受け取ることができる。上で述べたとおり、ローカルコンテンツリクエスト１２２は、ローカルデバイス１２０によって生成され、サーバインスタンス１１４に向けられるリクエストとすることができる。ローカルコンテンツリクエスト１２２は、一意の識別子を使用することにより、ローカルデバイス１２０を一意に識別することができる。一実装形態によれば、この一意の識別子がカノニカルＵＲＬである。一意の他の識別子を実施することもできる。
【００３６】
[0036]  ローカルコンテンツリクエスト１２２を受け取った後、サーバインスタンス１１４は、ブロック２０４で、一組の書換え規則を分析して、整合した一意の識別子を決定することができる。整合した一意の識別子を決定した後、サーバインスタンス１１４は、ブロック２０６で、この分析に基づいて、リクエスタ（requestor）、すなわちローカルデバイス１２０に返す応答を策定することができ、方法２００はブロック２０８で終了することができる。
【００３７】
[0037]  書換え規則の分析は例えば、一組の書換え規則を精査および／または探索して、特定のＵＲＬが書換えリストに記載されているかどうかを判定することを含むことができる。そのＵＲＬに対する適切な書換えを決定した後、そのＵＲＬに対する資源のマニフェストおよび／または索引を、策定された応答に入れて返すことができる。加えて、新たなコンテンツ１０８または更新されたコンテンツを、策定された応答に入れて返すことができる。あるいは、整合した識別子が見つからない場合には、ローカルデバイスに表示する基本的なコンテンツを含む基本的な応答および／またはデフォルトの応答を生成することができる。
【００３８】
[0038]  上で述べたとおり、サーバインスタンス１１４および／またはサーバもしくは分散型サーバシステムは、一群の資源のうちのローカルデバイスから受け取ったローカルコンテンツリクエストを処理することができる。以下では、ローカルデバイスから見た操作を図３を参照して説明する。図３は、本明細書に開示された一構成におけるローカルデバイス１２０の動作の諸態様を示す流れ図である。
【００３９】
[0039]  示されているように、方法３００は、ウェブブラウザ１２８によってまたはローカルデバイス１２０で実行される他のアプリケーションによって実行される操作を含む。ウェブブラウザ１２８は、ブロック３０２で、ローカルコンテンツリクエスト１２２を生成および伝送することができる。ローカルコンテンツリクエスト１２２は、上で説明したとおりに配列することができ、ローカルデバイス１２０に対する一意の識別子を含むことができる。加えて、デジタルコンテンツ、新たなコンテンツ１０８、ネットワーク資源およびマニフェスト中に指定されたその他の資源を含む、特定の一組の資源を要求するように、ローカルコンテンツリクエスト１２２を配列することができる。動作中に、複数の資源リクエストを介してその一組の資源を取り出すことができる。それに応じて、ウェブブラウザ１２８は、ブロック３０４で、要求した資源を受け取ることができ、ブロック３０６で、受け取った資源をローカルにキャッシュすることができる。資源のこのキャッシングは、ローカルデバイス１２０のコンテンツデータストア１３２によって容易にすることができる。
【００４０】
[0040]  資源を受け取り、キャッシュした後、ウェブブラウザ１２８は、新たなコンテンツ１０８を表示し、かつ／または表示されたコンテンツを維持するように、ディスプレイデバイス１２４に指示することができる。加えて、ウェブブラウザ１２８は、ブロック３０８で、マニフェストリクエストを定期的に開始することができる。例えば、スクリプトが、ローカルコンテンツリクエスト１２２によって取り出された一組の資源のうちの１つの資源であることがある。このスクリプトはルーチンを実行することができ、このルーチンは、ウェブブラウザ１２８に、マニフェストを定期的に要求すること、そうでなければカノニカルＵＲＬを要求するリクエストを定期的に発行することを実行させる。マニフェストリクエストは一般に、ローカルコンテンツリクエスト１２２に含まれ、または個々のリクエストとして生成される。ウェブサーバ１２８が、このマニフェストリクエストを、所定の、予め定義されたおよび／または所望のスケジュールに従って生成および伝送することで、前記マニフェストリクエストを定期的なマニフェストリクエストとすることができる。例えば、一実装形態によれば、定期的マニフェストリクエストが１日に１回の周期で生成される。別の実装形態によれば、定期的マニフェストリクエストが１時間に１回の周期で生成される。別の実装形態によれば、定期的マニフェストリクエストが、固定された時間ごとに１回の周期で生成される。別の実装形態によれば、定期的マニフェストリクエストが、管理者１０２によって割り当てられた固定されたスケジュールに基づいて生成される。定期的マニフェストリクエストのこれらの例は全てを網羅したものではなく、定期的マニフェストリクエストのこれらの例が、あらゆる可能なおよび／もしくは所望の期間を含み、またはマニフェストリクエストを生成すると解釈すべきではない。
【００４１】
[0041]  定期的マニフェストリクエストの生成および伝送に応答して、ウェブブラウザ１２８は、ブロック３１０で、ローカルデバイス１２０に向けられたマニフェストを受け取ることができる。そのマニフェストは、資源のマニフェスト、およびローカルデバイス１２０に表示したいコンテンツを含むことができる。そのマニフェストはさらに、ローカルデバイス１２０に表示しないアイテムを含む、その他のアイテムを含むことができる。
【００４２】
[0042]  マニフェストを受け取った後、ウェブブラウザ１２８は、ブロック３１２からの受け取ったマニフェストとウェブブラウザ１２８のその時点で有効なマニフェストとの間に変更があるかどうかを判定することができる。変更がない場合、ウェブブラウザ１２８は、現在の状態または以前の状態にディスプレイデバイス１２４を維持し続けることができ、上で説明したようにマニフェストリクエストを定期的に生成および伝送することができる。
【００４３】
[0043]  あるいは、マニフェストに変更がある場合、ウェブブラウザ１２８は、ブロック３１４で、マニフェストの中の資源がローカルにキャッシュされているかどうかを判定することができる。それらの資源がローカルにキャッシュされている場合、ウェブブラウザは、ローカルキャッシュおよび／またはコンテンツデータストア１３２からそれらの資源をロードし、上で説明したような操作３０８〜３１２を繰り返すことができる。それらの資源がローカルにキャッシュされていない場合、ウェブブラウザ１２８は、ブロック３０２で、少なくとも１つの資源を要求する新たなローカルコンテンツリクエストを生成することができる。その後、ウェブブラウザ１２８は、上で説明したような操作３０２〜３１６を実行し続けることができ、新たなコンテンツまたは変更されたコンテンツを用いて、ディスプレイデバイス１２４を更新、リフレッシュおよび維持することができる。
【００４４】
[0044]  本明細書の説明のとおり、ウェブブラウザ１２８またはローカルデバイス１２０上で実行される他のアプリケーションは、新たなコンテンツ１０８を含む資源を要求し、定期的マニフェストリクエストを生成し、それによって、ディスプレイデバイス１２４におけるキャッシュされたコンテンツまたは新たなコンテンツの表示を調整することができる。現在の有効なマニフェストとは異なるマニフェストを返す定期的マニフェストリクエストに基づいて、新たなコンテンツまたは変更されたコンテンツを含むように、キャッシュされたコンテンツを更新することができる。
【００４５】
[0045]  加えて、マニフェストの変更が検出されたが、以前のディスプレイ構成からローカルにコンテンツがキャッシュされている場合には、キャッシュされたコンテンツをロードし、そのコンテンツを表示し、それによってネットワーク帯域幅の使用を減らすことができる。さらに、新たなコンテンツを表示したい場合には、定期的マニフェストリクエストが、ローカルデバイスのローカルコンテンツデータストアへの新たなコンテンツ１０８の調整されたダウンロードを容易にする。その後に、新たなコンテンツ１０８を、ディスプレイデバイス１２４によって表示することができる。以下では、一組の書換え規則およびマッピングデータベースに基づくローカルコンテンツリクエストの容易化を、図４を参照してより完全に説明する。
【００４６】
[0046]  図４は、本明細書に開示された一構成におけるサーバコンピュータ１１０’または他のコンピューティングデバイスの動作の諸態様を示す図である。サーバコンピュータ１１０’は一般に、動作と機能の両面においてサーバコンピュータ１１０と実質的に同様である。サーバコンピュータ１１０’は、ファイルシステム１０９と同様に配列されたファイルシステム１０９’を含む。ファイルシステム１０９’はコンテンツデータストア４０２を含む。コンテンツデータストア４０２は、新たなコンテンツ１０８、古いコンテンツおよび任意の他の適当なデータの保管場所である。ファイルシステム１０９’はさらに、一組の書換え規則４０６およびマッピングデータベース４１４を含む。この一組の書換え規則４０６は、ＵＲＬを書き換えるための適切な規則を規定したデータのセット、リスト、データベースまたは他の配列を含むことができる。
【００４７】
[0047]  ＵＲＬ書換えは、第１のＵＲＬを使用して資源にアクセスすることを要求する入来リクエストを、第２のＵＲＬにリルートするプロセスである。一実装形態によれば、第２のＵＲＬが第１のＵＲＬとは異なる。しかしながら、状況によっては、第２のＵＲＬが第１のＵＲＬと同じであることもある。少なくとも１つの実装形態によれば、ＵＲＬ書換えを容易にするために、ＡＰＡＣＨＥ  ＨＴＴＰ  ＳＥＲＶＥＲを通しておよび／またはＴＨＥ  ＡＰＡＣＨＥ  ＳＯＦＴＷＡＲＥ  ＦＯＵＮＤＡＴＩＯＮから入手可能な「ｍｏｄ＿ｒｅｗｒｉｔｅ」関数が使用される。他の形態のＵＲＬ書換えを、本明細書に開示された着想および技術に適用することもできる。
【００４８】
[0048]  ファイルシステム１０９’はさらにマッピングデータベース４１４を含む。マッピングデータベース４１４は、特定のコンテンツおよび特定のローカルデバイスに関するマッピング情報を記憶したデータベースとすることができる。例えば、マッピングデータベース４１４に記憶されたマッピング情報は、記憶されたどのコンテンツがどのローカルデバイスにマップされるのかを規定する。同じコンテンツに２つ以上のローカルデバイスをマップすることができる。さらに、それぞれのローカルデバイスを、個別化された異なるコンテンツまたはカスタマイズされた異なるコンテンツにマップすることもできる。さらに、配置された特定の資源群に応じたマッピングの任意の組合せが適用可能なことがある。
【００４９】
[0049]  サーバコンピュータ１１０’はさらに、サーバコンピュータ１１０’上で実行されるサーバインスタンス１１４’を含む。サーバインスタンス１１４’は、コンソールデバイス１０４などのコンソールデバイスが使用するためにＡＰＩ１１２’を公開することができる。サーバインスタンス１１４’は、サーバインスタンス１１４と実質的に同様のサーバインスタンスとすることができ、ＡＰＩ１１２’は、ＡＰＩ１１２と実質的に同様のＡＰＩとすることができる。
【００５０】
[0050]  サーバインスタンス１１４’は一般に、ネットワーク４０２またはインターネットなどの相互接続された一連のネットワークと動作可能に通信している。サーバインスタンス１１４’を、ローカルコンテンツＵＲＬ４０４またはローカルコンテンツリクエスト１２２を受け取るように構成することができる。ローカルコンテンツＵＲＬ４０４は、ローカルデバイス１２０などのリクエスタを一意に識別するカノニカルＵＲＬとすることができる。サーバインスタンス１１４’は、書換え規則４０６およびマッピングデータベース４１４を調べて、書き換えられたＵＲＬ４０８がローカルデバイス１２０に関連付けられているかどうかを判定することができる。例えば、適切なコンソールデバイス１０４および／または管理者１０２による指示の後に、書換え規則４１２を、書換え規則４０６および／またはマッピングデータベース４１４に適用することができる。
【００５１】
[0051]  別の例として、ＡＰＩ１１２’は、書換え規則４０６を、サーバインスタンス１１４’内の構成ファイルとして書くことができる。その後、サーバインスタンス１１４’は、その構成ファイル内の書換え規則を実行して、マッピングデータベース４１４内に指定されたようなそのローカルデバイス１２０に対する所望のコンテンツを指すように、ローカルコンテンツＵＲＬ４０４を書き換えることができる。
【００５２】
[0052]  適切な書換えＵＲＬ４０８を取り出した後、サーバインスタンス１１４’は、コンテンツデータストア４０２にアクセスしてコンテンツ４１０を取り出すことができる。サーバインスタンス１１４’は、適切な応答１１９’を策定し、その応答１１９’およびコンテンツ１１０をネットワーク４０２を介して伝送することができる。応答１１９’およびコンテンツ１１０は、ローカルコンテンツＵＲＬ４０４の中で識別されたローカルデバイスによって受け取られる。このようにして、サーバインスタンス１１４’およびサーバコンピュータ１１０’は、ローカルコンテンツＵＲＬおよびローカルコンテンツリクエストを受け取り、それらを処理して、適切な応答１１９’を決定する。次いで、それらの応答および／またはコンテンツ４１０を、関連付けられたローカルデバイス１２０に伝送することができる。以下では、ローカルデバイスの動作特性を図５を参照してより完全に説明する。
【００５３】
[0053]  図５は、本明細書に開示された一構成におけるローカルデバイス１２０’の諸態様を示す図である。示されているように、ローカルデバイス１２０’は、コンテンツを表示するためのディスプレイデバイス１２４を有するローカル飲料ディスペンサ、販売デバイスまたは任意の他のキオスク（kiosk）デバイスとすることができる。ローカルデバイス１２０’は、ビルボード、広告スクリーンまたは他の同様のデバイスとして配列することもできる。さらに、１つはまたは複数の可動特徴および／またはディスプレイデバイス１２４を備える作動したビルボードなどの混成アナログ／デジタルディスプレイデバイスとして、ローカルデバイス１２０’を配列することもできる。
【００５４】
[0054]  ローカルデバイス１２０’は一般に、コンピュータハードウェア５３２上に配置されたオペレーティングシステム（OS）５３０を含む。ＯＳおよびコンピュータハードウェアの動作については図６を参照して説明する。ローカルデバイス１２０’はさらに、ＯＳ５３０によって実行されるウェブサーバ５０２と動作可能に通信している販売ハードウェアおよび／または分配ハードウェアおよび／またはキオスク向けの他のハードウェア５３４を含むことができる。ウェブサーバ５０２は、販売／分配ハードウェア５３４およびウェブブラウザ１２８と通信するように構成された独立型のウェブサービスとすることができる。ウェブサーバ５０２は例えば、ウェブブラウザ１２８と、一実装形態によればセキュアなウェブソケットを介して、または別の実装形態によればＨＴＴＰを介して通信することができる。
【００５５】
[0055]  ウェブサーバ５０２とウェブブラウザ１２８は別個のサービスであるため、ネットワークに接続されていることがあるウェブブラウザ１２８間の直接通信が回避される。それに応じて、販売／分配ハードウェア５３４の動作のセキュリティは高まり、同時に、ディスプレイデバイス１２４によって提示されるコンテンツを更新するためのネットワーク通信は容易なままである。このようにして、ユーザとディスプレイデバイス１２４に提示されたインタフェースとの間の対話は、ウェブブラウザ１２８によってウェブサーバ５０２に提示される。ウェブサーバ５０２は、ディスプレイデバイス１２４の機能不良またはユーザの不正操作の影響を受けないプロセスに従って、これらの対話を処理して、飲料製品または他の製品を分配するよう販売／分配ハードウェア５３４に指示する。さらに、ウェブブラウザ１２８は、進行中のトランザクションまたは対話についての消費者メッセージを表示するようディスプレイデバイス１２４に指示することができるため、ハードウェア５３４による分配に関する情報をディスプレイデバイス１２４に表示することもできる。ローカルデバイス１２０の動作に関する他の情報を、ディスプレイデバイス１２４によって表示することもできる。
【００５６】
[0056]  上で述べたとおり、ブラウザ１２８として示されたウェブサービスを実施するウェブブラウザであって、それぞれのローカルデバイスにおいて限られた物理的対話だけが必要とされる、または物理的対話が必要とされない、１つまたは複数のローカルデバイスにわたりコンテンツを更新および／または管理する機能を提供するウェブブラウザを実施することができる。上で説明した特定の例の代替実装形態も可能であり、それらの代替実装形態も本開示の範囲に含まれる。さらに、異なる動作環境および異なるコンピューティングデバイスを使用して、本明細書に記載された機能の一部または全部を実施することができる。以下では、可能な動作環境およびコンピューティングデバイスの非限定的な例を、図６を参照してより完全に説明する。
【００５７】
[0057]  図６は、さまざまな要素を上述のとおりに実施するプログラム構成要素を実行することができるコンピュータ６００の例示的なコンピュータアーキテクチャを示す。図６に示されたコンピュータアーキテクチャは、従来のサーバコンピュータ、ワークステーション、デスクトップコンピュータ、ラップトップ、タブレット、ネットワーク機器、ｅリーダ、スマートホンまたはその他のコンピューティングデバイスを示し、図６に示されたコンピュータアーキテクチャを利用して、本明細書に提示されたいかなるソフトウェア構成要素も実行することができる。例えば、図６に示されたコンピュータアーキテクチャを利用して、図２〜５を参照して説明した機能および特徴ならびに／または関連機能を提供するソフトウェア構成要素を実行することができる。図６に示されたコンピュータアーキテクチャを利用して、コンソールデバイス１０４、またはコンピュータハードウェア５３２を含む本明細書に記載された他の任意のコンピューティングシステムを実施することもできる。
【００５８】
[0058]  コンピュータ６００は、ベースボード６０２または「マザーボード」を含む。ベースボード６０２は、システムバスまたは他の電気通信経路を経由して多数の構成要素またはデバイスを接続することができるプリント回路板である。例示的な一構成では、１つまたは複数の中央処理ユニット（CPU）６０４が、チップセット６０６とともに動作する。ＣＰＵ６０４は、コンピュータ６００の動作に必要な算術演算および論理演算を実行する標準プログラマブルプロセッサとすることができる。
【００５９】
[0059]  ＣＰＵ６０４は、スイッチング素子の操作によって１つの離散物理状態から次の離散物理状態に遷移することによって演算を実行する。スイッチング素子は、これらの状態を区別し、これらの状態を変化させる。スイッチング素子は一般に、２つの２値状態のうちの一方の２値状態を維持するフリップフロップなどの電子回路と、論理ゲートなどの１つまたは複数の別のスイッチング素子の状態の論理的組合せに基づいて出力状態を提供する電子回路とを含む。これらの基本的なスイッチング素子を組み合わせて、レジスタ、加算器−減算器、算術論理ユニット、浮動小数点ユニットなどを含むより複雑な論理回路を生成することができる。
【００６０】
[0060]  チップセット６０６は、ＣＰＵ６０４とベースボード６０２上の残りの構成要素およびデバイスとの間のインタフェースを提供する。チップセット６０６は、コンピュータ６００内のメインメモリとして使用されるＲＡＭ６０８に対するインタフェースを提供することができる。チップセット６０６はさらに、コンピュータ６００を起動させたり、さまざまな構成要素およびデバイス間で情報を転送したりするのを助ける基本的なルーチンを記憶する、リードオンリーメモリ（ROM）６１０または不揮発性ＲＡＭ（NVRAM）などのコンピュータ可読記憶媒体に対するインタフェースを提供することができる。ＲＯＭ８１０またはＮＶＲＡＭはさらに、本明細書に記載された構成に従ってコンピュータ６００を動作させるのに必要なその他のソフトウェア構成要素を記憶することができる。
【００６１】
[0061]  コンピュータ６００は、ローカルエリアネットワーク６２０、ネットワーク４０２などのネットワークを介した遠隔コンピューティングデバイスおよび遠隔コンピュータシステムとの論理接続を使用するネットワーク化された環境で動作することができる。チップセット６０６は、ギガビットＥｔｈｅｒｎｅｔアダプタなどのＮＩＣ６１２を介したネットワーク接続を提供する機能を含むことができる。ＮＩＣ６１２は、コンピュータ６００を、ネットワーク６２０を介して他のコンピューティングデバイスに接続することができる。コンピュータ６００内には、このコンピュータを他のタイプのネットワークおよび遠隔コンピュータシステムに接続する多数のＮＩＣ６１２が存在することができることを理解されたい。
【００６２】
[0062]  不揮発性記憶域をコンピュータ６００に提供する大容量記憶デバイス６１８にコンピュータ６００を接続することができる。大容量記憶デバイス６１８は、本明細書で既により詳細に説明したシステムプログラム、アプリケーションプログラム、その他のプログラムモジュールおよびデータを記憶することができる。チップセット６０６に接続された記憶コントローラ６１４を介して、大容量記憶デバイス６１８をコンピュータ６００に接続することができる。大容量記憶デバイス６１８は、１つまたは複数の物理記憶ユニットからなることができる。記憶コントローラ６１４は、シリアルアタッチドＳＣＳＩ（serial attached SCSI）（SAS）インタフェース、シリアルアドバンストテクノロジアタッチメント（SATA）インタフェース、ファイバチャネル（FC）インタフェース、またはコンピュータと物理記憶ユニットとを物理的に接続し、コンピュータと物理記憶ユニットとの間でデータを転送するその他のタイプのインタフェースを介して、それらの物理記憶ユニットとインタフェースすることができる。
【００６３】
[0063]  記憶されている情報を反映するように物理記憶ユニットの物理状態を変換することによって、コンピュータ６００は、大容量記憶デバイス６１８上にデータを記憶することができる。この説明の異なる実装形態では、この物理状態の具体的な変換がさまざまな因子に依存する。このような因子の例は、限定はされないが、物理記憶ユニットを実施する目的に使用される技術、大容量記憶デバイス６１８が１次記憶として特徴付けられているのかまたは２次記憶として特徴付けられているのか、などを含む。
【００６４】
[0064]  例えば、コンピュータ６００は、磁気ディスクドライブユニット内の特定の位置の磁気特性、光学記憶ユニット内の特定の位置の反射もしくは屈折特性、または固体記憶ユニット内の特定の個別構成要素の電気特性を変化させる命令を記憶コントローラ６１４を介して発行することによって、大容量記憶デバイス６１８に情報を記憶することができる。この説明の趣旨および範囲を逸脱しない物理媒体の他の変換も可能である。上記の例は、この説明を容易にするためだけに提供されたものである。コンピュータ６００はさらに、物理記憶ユニット内の１つまたは複数の特定の位置の物理状態または物理特性を検出することによって、大容量記憶デバイス６１８から情報を読み出すことができる。
【００６５】
[0065]  プログラムモジュール、データ構造またはその他のデータなどの情報を記憶したり取り出したりするために、コンピュータ６００は、上述の大容量記憶デバイス６１８に加えて、他のコンピュータ可読記憶媒体にアクセスすることができる。コンピュータ可読記憶媒体は、データの非一時的記憶を提供する、コンピュータ６００がアクセスできる使用可能な任意の媒体であることを当業者は理解されたい。
【００６６】
[0066]  一例として、コンピュータ可読記憶媒体は、限定はされないが、任意の方法または技術で実施された、取外しができる揮発性および不揮発性の媒体ならびに取外しができない揮発性および不揮発性の媒体を含むことができる。コンピュータ可読記憶媒体は、限定はされないが、ＲＡＭ、ＲＯＭ、消去可能なプログラマブルＲＯＭ（EPROM）、電気的に消去可能なプログラマブルＲＯＭ（EEPROM）、フラッシュメモリもしくは他の固体メモリ技術、コンパクトディスクＲＯＭ（CD-ROM）、デジタルバーサタイルディスク（DVD）、ハイディフィニションＤＶＤ（HD-DVD）、ＢＬＵ−ＲＡＹもしくは他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶装置、または所望の情報を非一時的に記憶する目的に使用することができる任意の他の媒体を含むことができる。
【００６７】
[0067]  大容量記憶デバイス６１８は、コンピュータ６００の動作を制御する目的に利用されるオペレーティングシステム５３０を記憶することができる。一構成によれば、このオペレーティングシステムが、ＬＩＮＵＸオペレーティングシステム、ＭＩＣＲＯＳＯＦＴ  ＣｏｒｐｏｒａｔｉｏｎのＷＩＮＤＯＷＳ（登録商標）  ＳＥＲＶＥＲオペレーティングシステムおよびＵＮＩＸオペレーティングシステムのうちの少なくとも１つのオペレーティングシステム、またはこれらオペレーティングシステムの変型オペレーティングシステムのうちの１つのオペレーティングシステムを含む。他のオペレーティングシステムを利用することもできることを理解されたい。大容量記憶デバイス６１８は、ウェブブラウザ１２８、サーバインスタンス１１４、ＡＰＩ１１２、ならびに／または上で説明した残りのソフトウェア構成要素およびデータのうちの任意のソフトウェア構成要素およびデータなど、コンピュータ６００によって利用される他のシステムまたはアプリケーションプログラムおよびデータを記憶することができる。大容量記憶デバイス６１８は、本明細書に特に識別されていない他のプログラムおよびデータ６５２を記憶することもできる。
【００６８】
[0068]  一構成では、大容量記憶デバイス６１８または他のコンピュータ可読記憶媒体が、コンピュータ実行可能命令を伴って符号化される。これらのコンピュータ実行可能命令は、コンピュータ６００にロードされたときに、そのコンピュータを、汎用コンピューティングシステムから、本明細書に記載された構成を実施することができる専用コンピュータに変換する。これらのコンピュータ実行可能命令は、上述のように状態間でＣＰＵ６０４がどのように遷移するのかを指定することでコンピュータ６００を変換する。一構成によれば、コンピュータ６００は、コンピュータ６００によって実行されたときに図１〜５に関して上で説明したさまざまなルーチンを実行するコンピュータ実行可能命令を記憶したコンピュータ可読記憶媒体にアクセスすることができる。コンピュータ６００はさらに、本明細書に記載された他のコンピュータ実施動作のうちのいずれかを実行するコンピュータ可読記憶媒体を含むことができる。
【００６９】
[0069]  コンピュータ６００はさらに、キーボード、マウス、タッチパッド、タッチスクリーン、容量性入力デバイスまたは他のタイプの入力デバイスなどのいくつかの入力デバイスから入力を受け取り、それらを処理する１つまたは複数の入力／出力コントローラ６１６を含むことができる。同様に、入力／出力コントローラ６１６は、コンピュータモニタ、フラットパネルディスプレイ、デジタルプロジェクタ、プリンタ、プロッタまたは他のタイプの出力デバイスなどのディスプレイに出力を提供することができる。コンピュータ６００は、図６に示された構成要素の全てを含まないことがあること、図６に明示されていない他の構成要素を含むことができること、または図６に示されたアーキテクチャとは全く異なるアーキテクチャを利用することができることが理解されよう。
【００７０】
[0070]  以上のことに基づいて、本明細書には、コンテンツ管理を提供する技術が提示されていることを理解されたい。さらに、本明細書に提示された主題は、コンピュータの構造的特徴、方法論的行為およびコンピュータ可読媒体に特有の言い回しで記述されているが、添付の特許請求の範囲に定義された発明は、必ずしも本明細書に記載された特定の特徴、行為または媒体だけに限定されるわけではないことが理解されるべきである。むしろそれらの特定の特徴、行為および媒体は、特許請求の範囲を実施する例示的な形態として開示される。
【００７１】
[0071]  上に記載された主題は、単なる例として提供されたものであり、限定するものと解釈すべきではない。さらに、特許請求される主題は、本開示の任意の部分に記載された何らかの欠点または全ての欠点を解決する実装形態だけに限定されない。図示し説明した例の構成および用途に従わず、以下の特許請求の範囲に記載された本発明の真の趣旨および範囲を逸脱しないさまざまな変更および改変を、本明細書に記載された主題に加えることができる。
【図１】
2018538598.tif 000003
【図２】
2018538598.tif 000004
【図３】
2018538598.tif 000005
【図４】
2018538598.tif 000006
【図５】
2018538598.tif 000007
【図６】
2018538598.tif 000008
【国際調査報告】
2018538598.tif 000009
2018538598.tif 000010