図1は、ソーシャルネットワーキング・システムに関連付けられている例示的なネットワーク環境100を示している。ネットワーク環境100は、ネットワーク110によって互いにつながっているクライアント・システム130、ソーシャルネットワーキング・システム160、およびサードパーティ・システム170を含む。図1は、クライアント・システム130、ソーシャルネットワーキング・システム160、サードパーティ・システム170、およびネットワーク110の特定の構成を示しているが、本開示は、クライアント・システム130、ソーシャルネットワーキング・システム160、サードパーティ・システム170、およびネットワーク110の任意の適切な構成を想定している。限定ではなく、例として、クライアント・システム130、ソーシャルネットワーキング・システム160、およびサードパーティ・システム170のうちの複数は、ネットワーク110を迂回して、互いに直接つながることが可能である。別の例として、クライアント・システム130、ソーシャルネットワーキング・システム160、およびサードパーティ・システム170のうちの複数は、物理的にまたは論理的に、全体としてまたは部分的に互いに同一場所に配置されることが可能である。その上、図1は、特定の数のクライアント・システム130、ソーシャルネットワーキング・システム160、サードパーティ・システム170、およびネットワーク110を示しているが、本開示は、任意の適切な数のクライアント・システム130、ソーシャルネットワーキング・システム160、サードパーティ・システム170、およびネットワーク110を想定している。限定ではなく、例として、ネットワーク環境100は、複数のクライアント・システム130、ソーシャルネットワーキング・システム160、サードパーティ・システム170、およびネットワーク110を含むことができる。
本開示は、任意の適切なネットワーク110を想定している。限定ではなく、例として、ネットワーク110の1つまたは複数の部分は、アド・ホック・ネットワーク、イントラネット、エクストラネット、仮想プライベート・ネットワーク(VPN)、ローカル・エリア・ネットワーク(LAN)、ワイヤレスLAN(WLAN)、ワイド・エリア・ネットワーク(WAN)、ワイヤレスWAN(WWAN)、メトロポリタン・エリア・ネットワーク(MAN)、インターネットの一部分、公衆交換電話網(PSTN)の一部分、セルラー電話ネットワーク、またはこれらのうちの複数の組合せを含むことができる。ネットワーク110は、1つまたは複数のネットワーク110を含むことができる。
リンク150は、クライアント・システム130、ソーシャルネットワーキング・システム160、およびサードパーティ・システム170を通信ネットワーク110に、または互いに接続することができる。本開示は、任意の適切なリンク150を想定している。特定の実施形態においては、1つまたは複数のリンク150は、1つもしくは複数の有線リンク(たとえば、デジタル・サブスクライバ・ライン(DSL)もしくはデータ・オーバ・ケーブル・サービス・インタフェース仕様(DOCSIS)など)、ワイヤレス・リンク(たとえば、Wi−Fiもしくはワールドワイド・インターオペラビリティー・フォー・マイクロウェーブ・アクセス(WiMAX)など)、または光リンク(たとえば、同期光ネットワーク(SONET)もしくは同期デジタル階層(SDH)など)を含む。特定の実施形態においては、1つまたは複数のリンク150はそれぞれ、アド・ホック・ネットワーク、イントラネット、エクストラネット、VPN、LAN、WLAN、WAN、WWAN、MAN、インターネットの一部分、PSTNの一部分、セルラー・テクノロジーベースのネットワーク、衛星通信テクノロジーベースのネットワーク、別のリンク150、または複数のそのようなリンク150の組合せを含む。リンク150は、ネットワーク環境100の全体を通じて必ずしも同じである必要はない。1つまたは複数の第1のリンク150は、1つまたは複数の点において1つまたは複数の第2のリンク150とは異なることが可能である。
特定の実施形態においては、クライアント・システム130は、クライアント・システム130によって実装またはサポートされる適切な機能を実行することができる、ハードウェア、ソフトウェア、もしくは組み込みロジック・コンポーネント、または複数のそのようなコンポーネントの組合せを含む電子デバイスであることが可能である。限定ではなく、例として、クライアント・システム130は、デスクトップ・コンピュータ、ノートブック・コンピュータもしくはラップトップ・コンピュータ、ネットブック、タブレット・コンピュータなどのコンピュータ・システム、eブック・リーダ、GPSデバイス、カメラ、携帯情報端末(PDA)、ハンドヘルド電子デバイス、セルラー電話、スマートフォン、その他の適切な電子デバイス、またはそれらの任意の適切な組合せを含むことができる。本開示は、任意の適切なクライアント・システム130を想定している。クライアント・システム130は、クライアント・システム130のネットワーク・ユーザがネットワーク110にアクセスすることを可能にすることができる。クライアント・システム130は、自分のユーザがその他のクライアント・システム130のその他のユーザと通信することを可能にすることができる。
特定の実施形態においては、クライアント130は、MICROSOFT INTERNET EXPLORER、GOOGLE CHROME、またはMOZILLA FIREFOX(いずれも登録商標)などのウェブ・ブラウザ132を含むことができ、1つまたは複数のアドオン、プラグイン、またはTOOLBARもしくはYAHOO TOOLBAR(登録商標)などのその他の拡張を有することができる。クライアント・システム130のユーザは、ウェブ・ブラウザ132を特定のサーバ(サーバ162、またはサードパーティ・システム170に関連付けられているサーバなど)へ導くユニフォーム・リソース・ロケータ(URL)またはその他のアドレスを入力することができ、ウェブ・ブラウザ132は、ハイパー・テキスト転送プロトコル(HTTP)要求を生成して、そのHTTP要求をサーバに通信することができる。サーバは、そのHTTP要求を受け入れて、そのHTTP要求に応答して1つまたは複数のハイパー・テキスト・マークアップ言語(HTML)ファイルをクライアント・システム130に通信することができる。クライアント・システム130は、ユーザに提示するためにサーバからのHTMLファイルに基づいてウェブページをレンダリングすることができる。本開示は、任意の適切なウェブページ・ファイルを想定している。限定ではなく、例として、ウェブページは、特定のニーズに従って、HTMLファイル、拡張可能ハイパー・テキスト・マークアップ言語(XHTML)ファイル、または拡張可能マークアップ言語(XML)ファイルからレンダリングすることができる。そのようなページは、限定ではなく、例として、JAVASCRIPT(登録商標)、JAVA(登録商標)、MICROSOFT SILVERLIGHTで書かれたスクリプトなどのスクリプト、AJAX(Asynchronous JAVASCRIPT(登録商標) and XML)などのマークアップ言語とスクリプトの組合せなどを実行することもできる。本明細書においては、ウェブページへの参照は、適切な場合には、(そのウェブページをレンダリングするためにブラウザが使用することができる)1つまたは複数の対応するウェブページ・ファイルを含み、その逆もまた同様である。
特定の実施形態においては、ソーシャルネットワーキング・システム160は、オンライン・ソーシャル・ネットワークをホストすることができるネットワークアドレス可能なコンピューティング・システムであることが可能である。ソーシャルネットワーキング・システム160は、たとえば、ユーザプロフィール・データ、コンセプトプロフィール・データ、ソーシャルグラフ情報、またはオンライン・ソーシャル・ネットワークに関連したその他の適切なデータなどのソーシャルネットワーキング・データを生成すること、格納すること、受け取ること、および送信することが可能である。ソーシャルネットワーキング・システム160は、ネットワーク環境100のその他のコンポーネントによって直接、またはネットワーク110を介してアクセスされることが可能である。特定の実施形態においては、ソーシャルネットワーキング・システム160は、1つまたは複数のサーバ162を含むことができる。それぞれのサーバ162は、単一のサーバ、または複数のコンピュータもしくは複数のデータセンターにわたる分散サーバであることが可能である。サーバ162は、限定ではなく、例として、ウェブ・サーバ、ニュース・サーバ、メール・サーバ、メッセージ・サーバ、広告サーバ、ファイル・サーバ、アプリケーション・サーバ、Exchangeサーバ、データベース・サーバ、プロキシ・サーバ、本明細書において記述されている機能もしくはプロセスを実行するのに適している別のサーバ、またはそれらの任意の組合せなど、さまざまなタイプのものであることが可能である。特定の実施形態においては、それぞれのサーバ162は、サーバ162によって実装またはサポートされる適切な機能を実行するためのハードウェア、ソフトウェア、もしくは組み込みロジック・コンポーネント、または複数のそのようなコンポーネントの組合せを含むことができる。特定の実施形態においては、ソーシャルネットワーキング・システム164は、1つまたは複数のデータ・ストア164を含むことができる。データ・ストア164は、さまざまなタイプの情報を格納するために使用されることが可能である。特定の実施形態においては、データ・ストア164内に格納されている情報は、特定のデータ構造に従って編成されることが可能である。特定の実施形態においては、それぞれのデータ・ストア164は、リレーショナル・データベース、行のデータベース、相関関係データベース、あるいはその他の適切なデータベースであることが可能である。本開示は特定のタイプのデータベースを記述し、例示するが、本開示においては、任意の適切なタイプのデータベースが考えられる。特定の実施形態は、クライアント・システム130、ソーシャルネットワーキング・システム160、またはサードパーティ・システム170が、データ・ストア164内に格納されている情報を管理すること、取り出すこと、修正すること、追加すること、または削除することを可能にするインタフェースを提供することができる。
特定の実施形態においては、ソーシャルネットワーキング・システム160は、1つまたは複数のソーシャルグラフを1つまたは複数のデータ・ストア164内に格納することができる。特定の実施形態においては、ソーシャルグラフは、複数のノード(複数のユーザ・ノード(それぞれが、特定のユーザに対応している)、または複数のコンセプト・ノード(それぞれが、特定のコンセプトに対応している)を含むことができる)と、ノード同士をつなげる複数のエッジとを含むことができる。ソーシャルネットワーキング・システム160は、オンライン・ソーシャル・ネットワークのユーザに、その他のユーザと通信および対話する能力を提供することができる。特定の実施形態においては、ユーザたちは、ソーシャルネットワーキング・システム160を介してオンライン・ソーシャル・ネットワークに参加し、次いで、自分たちがつながりたいと望むソーシャルネットワーキング・システム160のその他の複数のユーザにつながり(すなわち、関係)を付加することができる。本明細書においては、「友達」という用語は、ユーザがソーシャルネットワーキング・システム160を介して、つながり、関連付け、または関係を形成しているソーシャルネットワーキング・システム160のその他の任意のユーザを指すことができる。
特定の実施形態においては、ソーシャルネットワーキング・システム160は、ソーシャルネットワーキング・システム160によってサポートされるさまざまなタイプのアイテムまたはオブジェクトに関してアクションを取る能力をユーザに提供することができる。限定ではなく、例として、それらのアイテムおよびオブジェクトは、ソーシャルネットワーキング・システム160のユーザが属することが可能であるグループもしくはソーシャル・ネットワーク、ユーザが関心を抱く可能性があるイベントもしくはカレンダー・エントリー、ユーザが使用することができるコンピュータベースのアプリケーション、ユーザがサービスを介してアイテムを購入もしくは販売することを可能にするトランザクション、ユーザが実行することができる広告との対話、またはその他の適切なアイテムもしくはオブジェクトを含むことができる。ユーザは、ソーシャルネットワーキング・システム160において、またはサードパーティ・システム170の外部システム(ソーシャルネットワーキング・システム160とは別個のものであって、ネットワーク110を介してソーシャルネットワーキング・システム160に結合されている)によって表されることが可能である任意のものと対話することができる。
特定の実施形態においては、ソーシャルネットワーキング・システム160は、さまざまなエンティティ同士をリンクできることが可能である。限定ではなく、例として、ソーシャルネットワーキング・システム160は、ユーザたちが互いに対話すること、ならびにサードパーティ・システム170もしくはその他のエンティティからのコンテンツを受け取ることを可能にすることができ、またはユーザたちがアプリケーション・プログラミング・インタフェース(API)もしくはその他の通信チャネルを通じてこれらのエンティティと対話することを可能にすることができる。
特定の実施形態においては、サードパーティ・システム170は、1つもしくは複数のタイプのサーバ、1つもしくは複数のデータ・ストア、1つもしくは複数のインタフェース(APIを含むが、それには限定されない)、1つもしくは複数のウェブ・サービス、1つもしくは複数のコンテンツ・ソース、1つもしくは複数のネットワーク、または(たとえば、サーバが通信することができる)その他の任意の適切なコンポーネントを含むことができる。サードパーティ・システム170は、ソーシャルネットワーキング・システム160を運営しているエンティティとは異なるエンティティによって運営されることが可能である。しかしながら、特定の実施形態においては、ソーシャルネットワーキング・システム160およびサードパーティ・システム170は、ソーシャルネットワーキング・システム160またはサードパーティ・システム170のユーザにソーシャルネットワーキング・サービスを提供するために互いに連携して機能することができる。この意味において、ソーシャルネットワーキング・システム160は、サードパーティ・システム170などのその他のシステムがインターネットを介してソーシャルネットワーキング・サービスおよび機能をユーザに提供するために使用することができるプラットフォーム、またはバックボーンを提供することができる。
特定の実施形態においては、サードパーティ・システム170は、サードパーティ・コンテンツ・オブジェクト・プロバイダを含むことができる。サードパーティ・コンテンツ・オブジェクト・プロバイダは、コンテンツ・オブジェクトの1つまたは複数のソースを含むことができ、それらのソースは、クライアント・システム130に通信されることが可能である。限定ではなく、例として、コンテンツ・オブジェクトは、ユーザにとって関心がある物またはアクティビティに関する情報、たとえば、映画の開始時刻、映画のレビュー、レストランのレビュー、レストランのメニュー、製品の情報およびレビュー、またはその他の適切な情報などを含むことができる。限定ではなく、別の例として、コンテンツ・オブジェクトは、インセンティブ・コンテンツ・オブジェクト、たとえば、クーポン、ディスカウント・チケット、ギフト券、またはその他の適切なインセンティブ・オブジェクトを含むことができる。
特定の実施形態においては、ソーシャルネットワーキング・システム160はまた、ユーザによって生成されたコンテンツ・オブジェクトを含み、それらのコンテンツ・オブジェクトは、ソーシャルネットワーキング・システム160とのユーザの対話を高めることができる。ユーザによって生成されたコンテンツは、ユーザがソーシャルネットワーキング・システム160に付加、アップロード、送信、または「ポスト」することができる任意のものを含むことができる。限定ではなく、例として、ユーザは、クライアント・システム130からソーシャルネットワーキング・システム160へポストを通信する。ポストは、ステータス更新もしくはその他のテキスト・データ、ロケーション情報、写真、ビデオ、リンク、音楽、またはその他の類似したデータもしくはメディアなどのデータを含むことができる。コンテンツは、ニュースフィードまたはストリームなどの「通信チャネル」を通じてサードパーティによってソーシャルネットワーキング・システム160に付加されることも可能である。
特定の実施形態においては、ソーシャルネットワーキング・システム160は、さまざまなサーバ、サブシステム、プログラム、モジュール、ログ、およびデータ・ストアを含むことができる。特定の実施形態においては、ソーシャルネットワーキング・システム160は、ウェブ・サーバ、アクション・ロガー、API要求サーバ、関連性およびランキング・エンジン、コンテンツ・オブジェクト分類子、通知コントローラ、アクション・ログ、サードパーティ・コンテンツ・オブジェクト露出ログ、推測モジュール、認可/プライバシー・サーバ、検索モジュール、広告ターゲティング・モジュール、ユーザインタフェース・モジュール、ユーザプロフィール・ストア、つながりストア、サードパーティ・コンテンツ・ストア、またはロケーション・ストアのうちの1つまたは複数を含むことができる。ソーシャルネットワーキング・システム160は、適切なコンポーネント、たとえば、ネットワーク・インタフェース、セキュリティー・メカニズム、ロード・バランサ、フェイルオーバ・サーバ、管理およびネットワークオペレーション・コンソール、その他の適切なコンポーネント、またはそれらの任意の適切な組合せを含むこともできる。特定の実施形態においては、ソーシャルネットワーキング・システム160は、ユーザ・プロフィールを格納するための1つまたは複数のユーザプロフィール・ストアを含むことができる。ユーザ・プロフィールは、たとえば、経歴情報、人口統計学的情報、挙動情報、ソーシャルな情報、またはその他のタイプの記述的情報、たとえば、職業経験、学歴、趣味もしくは好み、関心、親近感、またはロケーションを含むことができる。関心情報は、1つまたは複数のカテゴリに関連した関心を含むことができる。カテゴリは、一般的または具体的であることが可能である。限定ではなく、例として、ユーザが、あるブランドの靴に関する記事に対して「いいね!」を表明した場合には、カテゴリは、そのブランド、または「靴」もしくは「衣類」という一般的なカテゴリであることが可能である。ユーザに関するつながり情報を格納するために、つながりストアが使用されることが可能である。つながり情報は、類似のもしくは共通の職業経験、グループ・メンバーシップ、趣味、学歴を有しているか、または何らかの形で関連しているか、もしくは共通の属性を共有しているユーザ同士を示すことができる。つながり情報は、さまざまなユーザおよびコンテンツ(内部および外部の両方)の間におけるユーザ定義のつながりを含むこともできる。ネットワーク110を介してソーシャルネットワーキング・システム160を1つもしくは複数のクライアント・システム130または1つもしくは複数のサードパーティ・システム170にリンクさせるために、ウェブ・サーバが使用されることが可能である。ウェブ・サーバは、ソーシャルネットワーキング・システム160と、1つまたは複数のクライアント・システム130との間においてメッセージを受け取って回送するためにメール・サーバまたはその他のメッセージング機能を含むことができる。API要求サーバは、サードパーティ・システム170が、1つまたは複数のAPIを呼び出すことによってソーシャルネットワーキング・システム160からの情報にアクセスすることを可能にすることができる。ソーシャルネットワーキング・システム160の上のまたは外のユーザのアクションに関してウェブ・サーバから通信を受け取るために、アクション・ロガーが使用されることが可能である。アクション・ログとともに、サードパーティコンテンツ・オブジェクトへのユーザの露出についてのサードパーティコンテンツオブジェクト・ログが保持されることが可能である。通知コントローラは、コンテンツ・オブジェクトに関する情報をクライアント・システム130に提供することができる。情報は、通知としてクライアント・システム130へ押し出されることが可能であり、または情報は、クライアント・システム130から受け取られた要求に応答してクライアント・システム130から引き出されることが可能である。ソーシャルネットワーキング・システム160のユーザの1つまたは複数のプライバシー設定を実施するために、認可サーバが使用されることが可能である。ユーザのプライバシー設定は、ユーザに関連付けられている特定の情報がどのように共有されることが可能であるかを特定する。認可サーバは、ユーザが、たとえば、適切なプライバシー設定を設定することなどによって、自分のアクションをソーシャルネットワーキング・システム160によって記録されること、またはその他のシステム(たとえば、サードパーティ・システム170)と共有されることのオプトインまたはオプトアウトを行うことを可能にすることができる。サードパーティ・システム170などのサードパーティから受け取られたコンテンツ・オブジェクトを格納するために、サードパーティコンテンツオブジェクト・ストアが使用されることが可能である。ユーザに関連付けられているクライアント・システム130から受け取られたロケーション情報を格納するために、ロケーション・ストアが使用されることが可能である。広告価格設定モジュールが、ソーシャルな情報、現在時刻、ロケーション情報、またはその他の適切な情報を組み合わせて、関連がある広告を、通知の形式でユーザに提供することができる。
図2は、例示的なソーシャルグラフ200を示している。特定の実施形態においては、ソーシャルネットワーキング・システム160は、1つまたは複数のソーシャルグラフ200を1つまたは複数のデータ・ストア内に格納することができる。特定の実施形態においては、ソーシャルグラフ200は、複数のノード(複数のユーザ・ノード202、または複数のコンセプト・ノード204を含むことができる)と、ノード同士をつなげる複数のエッジ206とを含むことができる。図2において示されている例示的なソーシャルグラフ200は、教示上の目的から、2次元のビジュアル・マップ表示で示されている。特定の実施形態においては、ソーシャルネットワーキング・システム160、クライアント・システム130、またはサードパーティ・システム170は、適切なアプリケーションに関してソーシャルグラフ200および関連したソーシャルグラフ情報にアクセスすることができる。ソーシャルグラフ200のノードおよびエッジは、データ・オブジェクトとして、たとえば(ソーシャルグラフ・データベースなどの)データ・ストア内に格納されることが可能である。そのようなデータ・ストアは、ソーシャルグラフ200のノードまたはエッジの1つまたは複数の検索可能なまたはクエリ可能なインデックスを含むことができる。
特定の実施形態においては、ユーザ・ノード202は、ソーシャルネットワーキング・システム160のユーザに対応することができる。限定ではなく、例として、ユーザは、ソーシャルネットワーキング・システム160と、またはソーシャルネットワーキング・システム160を介して対話または通信する個人(人間のユーザ)、エンティティ(たとえば、企業、ビジネス、もしくはサードパーティ・アプリケーション)、または(たとえば、個人もしくはエンティティの)グループであることが可能である。特定の実施形態においては、あるユーザがソーシャルネットワーキング・システム160とのアカウントに登録した場合には、ソーシャルネットワーキング・システム160は、そのユーザに対応するユーザ・ノード202を作成し、そのユーザ・ノード202を1つまたは複数のデータ・ストア内に格納することができる。本明細書において記述されているユーザおよびユーザ・ノード202は、適切な場合には、登録されているユーザ、および登録されているユーザに関連付けられているユーザ・ノード202を指すことができる。追加として、または代替として、本明細書において記述されているユーザおよびユーザ・ノード202は、適切な場合には、ソーシャルネットワーキング・システム160に登録されていないユーザを指すことができる。特定の実施形態においては、ユーザ・ノード202は、ユーザによって提供された情報、またはソーシャルネットワーキング・システム160を含むさまざまなシステムによって収集された情報に関連付けられることが可能である。限定ではなく、例として、ユーザは、自分の名前、プロフィール画像、連絡先情報、生年月日、性別、婚姻状況、家族状況、勤務先、学歴、好み、関心、またはその他の人口統計学的情報を提供することができる。特定の実施形態においては、ユーザ・ノード202は、ユーザに関連付けられている情報に対応する1つまたは複数のデータ・オブジェクトに関連付けられることが可能である。特定の実施形態においては、ユーザ・ノード202は、1つまたは複数のウェブページに対応することができる。
特定の実施形態においては、コンセプト・ノード204は、コンセプトに対応することができる。限定ではなく、例として、コンセプトは、場所(たとえば、映画館、レストラン、ランドマーク、もしくは都市など)、ウェブサイト(たとえば、ソーシャルネットワーク・システム160に関連付けられているウェブサイト、もしくはウェブアプリケーション・サーバに関連付けられているサードパーティ・ウェブサイトなど)、エンティティ(たとえば、人、企業、グループ、スポーツ・チーム、もしくは有名人など)、ソーシャルネットワーキング・システム160内に、もしくはウェブアプリケーション・サーバなどの外部サーバ上に配置されることが可能であるリソース(たとえば、オーディオ・ファイル、ビデオ・ファイル、デジタル写真、テキスト・ファイル、構造化されたドキュメント、もしくはアプリケーションなど)、物的もしくは知的財産(たとえば、彫塑、絵画、映画、ゲーム、曲、アイディア、写真、もしくは執筆作品など)、ゲーム、アクティビティ、アイディアもしくは理論、別の適切なコンセプト、または複数のそのようなコンセプトに対応することができる。コンセプト・ノード204は、ユーザによって提供されたコンセプトの情報、またはソーシャルネットワーキング・システム160を含むさまざまなシステムによって収集された情報に関連付けられることが可能である。限定ではなく、例として、コンセプトの情報は、名前もしくはタイトル、1つもしくは複数のイメージ(たとえば、本の表紙のイメージ)、ロケーション(たとえば、住所もしくは地理的ロケーション)、(URLに関連付けられることが可能である)ウェブサイト、連絡先情報(たとえば、電話番号もしくはEメール・アドレス)、その他の適切なコンセプト情報、またはそのような情報の任意の適切な組合せを含むことができる。特定の実施形態においては、コンセプト・ノード204は、コンセプト・ノード204に関連付けられている情報に対応する1つまたは複数のデータ・オブジェクトに関連付けられることが可能である。特定の実施形態においては、コンセプト・ノード204は、1つまたは複数のウェブページに対応することができる。
特定の実施形態においては、ソーシャルグラフ200内のノードは、ウェブページ(「プロフィール・ページ」と呼ばれる場合もある)を表すこと、またはウェブページによって表されることが可能である。プロフィール・ページは、ソーシャルネットワーキング・システム160によってホストされること、またはソーシャルネットワーキング・システム160にとってアクセス可能であることが可能である。プロフィール・ページは、サードパーティ・サーバ170に関連付けられているサードパーティ・ウェブサイト上にホストされることも可能である。限定ではなく、例として、特定の外部ウェブページに対応するプロフィール・ページは、その特定の外部ウェブページであることが可能であり、そのプロフィール・ページは、特定のコンセプト・ノード204に対応することができる。プロフィール・ページは、その他のユーザのうちのすべてまたは選択されたサブセットによって閲覧できることが可能である。限定ではなく、例として、ユーザ・ノード202は、対応するユーザプロフィール・ページを有することができ、そのユーザプロフィール・ページにおいては、対応するユーザが、コンテンツを付加すること、言明を行うこと、またはその他の形で自分自身を表現することが可能である。限定ではなく、別の例として、コンセプト・ノード204は、対応するコンセプトプロフィール・ページを有することができ、そのコンセプトプロフィール・ページにおいては、1人または複数のユーザが、特にコンセプト・ノード204に対応するコンセプトに関連して、コンテンツを付加すること、言明を行うこと、または自分自身を表現することが可能である。
特定の実施形態においては、コンセプト・ノード204は、サードパーティ・システム170によってホストされているサードパーティ・ウェブページまたはリソースを表すことができる。サードパーティ・ウェブページまたはリソースは、数ある要素の中でも、コンテンツ、選択可能なもしくはその他のアイコン、または、アクションもしくはアクティビティを表す(たとえば、JAVASCRIPT(登録商標)、AJAX、もしくはPHPコードで実装されることが可能である)その他の対話可能なオブジェクトを含むことができる。限定ではなく、例として、サードパーティ・ウェブページは、「いいね!」、「チェックイン」、「食べる」、「推奨する」、または別の適切なアクションもしくはアクティビティなどの選択可能なアイコンを含むことができる。サードパーティ・ウェブページを閲覧しているユーザは、それらのアイコンのうちの1つ(たとえば、「食べる」)を選択することによってアクションを実行して、クライアント・システム130に、そのユーザのアクションを示すメッセージをソーシャルネットワーキング・システム160へ送信させることができる。そのメッセージに応答して、ソーシャルネットワーキング・システム160は、ユーザに対応するユーザ・ノード202と、サードパーティ・ウェブページまたはリソースに対応するコンセプト・ノード204との間においてエッジ(たとえば、「食べる」エッジ)を作成して、エッジ206を1つまたは複数のデータ・ストア内に格納することができる。
特定の実施形態においては、ソーシャルグラフ200内の1対のノードが、1つまたは複数のエッジ206によって互いにつながることが可能である。1対のノードをつなげるエッジ206は、それらの1対のノードの間における関係を表すことができる。特定の実施形態においては、エッジ206は、1対のノードの間における関係に対応する1つまたは複数のデータ・オブジェクトまたは属性を含むことまたは表すことが可能である。限定ではなく、例として、第1のユーザは、第2のユーザが第1のユーザの「友達」であるということを示すことができる。この表示に応答して、ソーシャルネットワーキング・システム160は、「友達要求」を第2のユーザに送信することができる。第2のユーザがその「友達要求」を承認した場合には、ソーシャルネットワーキング・システム160は、ソーシャルグラフ200内で第1のユーザのユーザ・ノード202を第2のユーザのユーザ・ノード202につなげるエッジ206を作成して、エッジ206をソーシャルグラフ情報としてデータ・ストア164のうちの1つまたは複数の中に格納することができる。図2の例においては、ソーシャルグラフ200は、ユーザ「A」のユーザ・ノード202と、ユーザ「B」のユーザ・ノード202との間における友達関係を示すエッジ206と、ユーザ「C」のユーザ・ノード202と、ユーザ「B」のユーザ・ノード202との間における友達関係を示すエッジとを含む。本開示は、特定のユーザ・ノード202同士をつなげる特定の属性を伴う特定のエッジ206を記述している、または示しているが、本開示は、ユーザ・ノード202同士をつなげる任意の適切な属性を伴う任意の適切なエッジ206を想定している。限定ではなく、例として、エッジ206は、友達関係、家族関係、ビジネスもしくは雇用関係、ファン関係、フォロワー関係、ビジター関係、サブスクライバ関係、上下関係、互恵的関係、非互恵的関係、別の適切なタイプの関係、または複数のそのような関係を表すことができる。その上、本開示は一般に、ノード同士をつながっているものとして記述しているが、本開示はまた、ユーザ同士またはコンセプト同士をつながっているものとして記述している。本明細書においては、つながっているユーザ同士またはコンセプト同士への言及は、適切な場合には、1つまたは複数のエッジ206によってソーシャルグラフ200内でつながっているそれらのユーザ同士またはコンセプト同士に対応するノード同士を指すことができる。
特定の実施形態においては、ユーザ・ノード202とコンセプト・ノード204との間におけるエッジ206は、ユーザ・ノード202に関連付けられているユーザによって、コンセプト・ノード204に関連付けられているコンセプトに対して実行された特定のアクションまたはアクティビティを表すことができる。限定ではなく、例として、図2において示されているように、ユーザは、コンセプトに対して「いいね!を表明すること」、「通うこと」、「プレイすること」、「聴くこと」、「料理すること」、「勤務すること」、または「観ること」を行った可能性があり、それらのそれぞれは、エッジタイプまたはサブタイプに対応することができる。コンセプト・ノード204に対応するコンセプトプロフィール・ページは、たとえば、選択可能な「チェックイン」アイコン(たとえば、クリック可能な「チェックイン」アイコンなど)、または選択可能な「お気に入りに追加(add to favorites)」アイコンを含むことができる。同様に、ユーザがこれらのアイコンをクリックした後に、ソーシャルネットワーキング・システム160は、それぞれのアクションに対応するユーザのアクションに応答して「お気に入り」エッジまたは「チェックイン」エッジを作成することができる。限定ではなく、別の例として、あるユーザ(ユーザ「C」)が、特定のアプリケーション(オンライン音楽アプリケーションであるSPOTIFY)を使用して特定の曲(「イマジン」)を聴く場合がある。このケースにおいては、ソーシャルネットワーキング・システム160は、そのユーザに対応するユーザ・ノード202と、その曲およびアプリケーションに対応するコンセプト・ノード204との間において、(図2に示されているような)「聴いた」エッジ206および「使用した」エッジを作成して、そのユーザがその曲を聴いてそのアプリケーションを使用したということを示すことができる。その上、ソーシャルネットワーキング・システム160は、その曲に対応するコンセプト・ノード204と、そのアプリケーションに対応するコンセプト・ノード204との間において、(図2に示されているような)「再生した」エッジ206を作成して、その特定の曲がその特定のアプリケーションによって再生されたということを示すことができる。このケースにおいては、「再生した」エッジ206は、外部アプリケーション(SPOTIFY)によって外部オーディオ・ファイル(「イマジン」という曲)に関して実行されたアクションに対応する。本開示は、ユーザ・ノード202とコンセプト・ノード204とをつなげる特定の属性を伴う特定のエッジ206について記述しているが、本開示は、ユーザ・ノード202とコンセプト・ノード204とをつなげる任意の適切な属性を伴う任意の適切なエッジ206を想定している。その上、本開示は、単一の関係を表すユーザ・ノード202とコンセプト・ノード204との間におけるエッジについて記述しているが、本開示は、1つまたは複数の関係を表すユーザ・ノード202とコンセプト・ノード204との間におけるエッジを想定している。限定ではなく、例として、エッジ206は、ユーザが特定のコンセプトに対して「いいね!」を表明しているということ、およびその特定のコンセプトを使用したということの両方を表すことができる。あるいは、別のエッジ206は、(図2において、ユーザ「E」を表すユーザ・ノード202と、「SPOTIFY」を表すコンセプト・ノード204との間において示されているような)ユーザ・ノード202とコンセプト・ノード204との間におけるそれぞれのタイプの関係(または、単一の関係が複数集まったもの)を表すことができる。
特定の実施形態においては、ソーシャルネットワーキング・システム160は、ソーシャルグラフ200内でユーザ・ノード202とコンセプト・ノード204との間においてエッジ206を作成することができる。限定ではなく、例として、(たとえば、ユーザのクライアント・システム130によってホストされているウェブ・ブラウザまたは専用のアプリケーションを使用することなどによって)コンセプトプロフィール・ページを閲覧しているユーザは、「いいね!」アイコンをクリックまたは選択することにより、コンセプト・ノード204によって表されているコンセプトを自分が気に入っているということを示すことができ、その「いいね!」アイコンをクリックまたは選択することは、ユーザのクライアント・システム130に、そのコンセプトプロフィール・ページに関連付けられているそのコンセプトをそのユーザが気に入っているということを示すメッセージをソーシャルネットワーキング・システム160へ送信させることができる。そのメッセージに応答して、ソーシャルネットワーキング・システム160は、そのユーザとコンセプト・ノード204との間における「いいね!」エッジ206によって示されているように、そのユーザに関連付けられているユーザ・ノード202とコンセプト・ノード204との間においてエッジ206を作成することができる。特定の実施形態においては、ソーシャルネットワーキング・システム160は、エッジ206を1つまたは複数のデータ・ストア内に格納することができる。特定の実施形態においては、エッジ206は、特定のユーザ・アクションに応答してソーシャルネットワーキング・システム160によって自動的に形成されることが可能である。限定ではなく、例として、第1のユーザが、画像をアップロードすること、映画を観ること、または曲を聴くことを行った場合には、エッジ206は、第1のユーザに対応するユーザ・ノード202と、それらのコンセプトに対応するコンセプト・ノード204との間において形成されることが可能である。本開示は、特定の様式で特定のエッジ206を形成することについて記述しているが、本開示は、任意の適切な様式で任意の適切なエッジ206を形成することを想定している。
特定の実施形態においては、広告は、1つまたは複数のウェブページ上に、1つまたは複数の電子メール内に、またはユーザによって要求された検索結果と関連して提示される、(HTMLリンクすることができる)テキスト、(HTMLリンクすることができる)1つまたは複数の画像、1つまたは複数のビデオ、オーディオ、1つまたは複数のADOBE FLASHファイル、これらの適切な組み合わせ、または任意の適切なデジタル形式の他の任意の適切な広告であることが可能である。付加的に、あるいはこれに代えて、広告は、1つまたは複数のスポンサー記事(sponsored story)(例えば、ソーシャルネットワーキング・システム160上のニュースフィードまたはティッカー・アイテム)であることが可能である。スポンサー記事は、例えば、ソーシャル・アクションを、ユーザのプロファイル・ページもしくは他のページの所定のエリア内に提示してもらう、広告主と関連付けられた付加的な情報とともに提示してもらう、他のユーザのニュースフィードもしくはティッカー(ticker)内で格上げもしくは他の方法で強調してもらう、または他の方法でプロモートしてもらうことによって、広告主がプロモートする、(ページに「いいね」を表明する、ページ上のポストに「いいね」を表明するもしくはコメントする、ページと関連付けられたイベントに対する返事を求める、ページ上にポストされた質問に投票する、場所にチェックインする、アプリケーションを使用するもしくはゲームをプレイする、またはウェブサイトに「いいね」を表明するもしくはそれをシェアするなどの)ユーザによるソーシャル・アクションであることが可能である。広告主は、ソーシャル・アクションをプロモートしてもらったことに対して支払いを行うことができる。限定ではなく、例として、広告は、検索結果ページの検索結果の間に含めることができ、その場合、スポンサード・コンテンツ(sponsored content)は、非スポンサード・コンテンツよりも上位にプロモートされる(promoted)。
特定の実施形態においては、広告を、ソーシャルネットワーキング・システムのウェブページ、サードパーティのウェブページ、または他のページ内に表示することを要求することができる。広告は、ページ最上部のバナー・エリア内、ページ側部のカラム内、ページのGUI内、ポップアップ・ウィンドウ内、ドロップダウン・メニュー内、ページの入力フィールド内、ページのコンテンツ最上部の上、またはページに関する別の場所など、ページの専用部分内に表示することができる。付加的に、あるいはこれに代えて、広告は、アプリケーション内に表示することができる。広告は、専用ページ内に表示することができ、ユーザに広告と対話すること、または広告を見ることを要求し、その後で、ユーザは、ページにアクセスすること、またはアプリケーションを利用することができる。ユーザは、例えば、ウェブ・ブラウザを通して広告を見ることができる。
ユーザは、任意の適切な方法で広告と対話することができる。ユーザは、広告をクリックすること、または他の方法で選択することができる。広告を選択することによって、ユーザ(またはユーザによって使用されているブラウザもしくは他のアプリケーション)は、広告と関連付けられたページに導かれることが可能である。広告と関連付けられたページにおいて、ユーザは、広告と関連付けられた製品もしくはサービスを購入すること、広告と関連付けられた情報を受け取ること、または広告と関連付けられたニュースレターの購読を申し込むことなど、付加的なアクションを取ることができる。オーディオまたはビデオを備える広告は、(「プレイ・ボタン」などの)広告のコンポーネントを選択することによって再生することができる。これに代えて、広告を選択することによって、ソーシャルネットワーキング・システム160は、ユーザの特定のアクションを実行すること、または変更することができる。
広告は、ユーザが対話することができる、ソーシャルネットワーキング・システム機能も含むことができる。限定ではなく、例として、広告は、エンドースメント(endorsement)と関連付けられたアイコンまたはリンクを選択することによって、ユーザが広告に「いいね」を表明すること、または他の方法で支持することを可能にすることができる。限定ではなく、別例として、広告は、ユーザが広告主に関連するコンテンツを(例えば、問い合わせを実行することによって)検索することを可能にすることができる。同様に、ユーザは、(ソーシャルネットワーキング・システム160を通して)別のユーザと広告をシェアすること、または(ソーシャルネットワーキング・システム160を通して)広告と関連付けられたイベントに対する返事を求めることができる。付加的に、あるいはこれに代えて、広告は、ユーザに向けられたソーシャルネットワーキング・システムのコンテキストを含むことができる。限定ではなく、例として、広告は、広告の主題と関連付けられたアクションを取った、ソーシャルネットワーキング・システム160内のユーザの友人についての情報を表示することができる。
特定の実施形態においては、ソーシャルネットワーキング・システム160は、様々なソーシャルグラフ・エンティティ相互の(本明細書では「アフィニティ(affinity)」と呼ばれる)ソーシャルグラフ・アフィニティを決定することができる。アフィニティは、ユーザ、コンセプト、アクション、広告、オンライン・ソーシャル・ネットワークと関連付けられた他のオブジェクト、またはそれらの任意の適切な組み合わせなど、オンライン・ソーシャル・ネットワークと関連付けられた特定のオブジェクト間の関係の強さまたは関心のレベルを表すことができる。アフィニティは、サードパーティ・システム170または他の適切なシステムと関連付けられたオブジェクトに関して決定することもできる。各ユーザ、主題、またはコンテンツのタイプについてのソーシャルグラフ・エンティティのための全体的アフィニティを確立することができる。全体的アフィニティは、ソーシャルグラフ・エンティティと関連付けられたアクションまたは関係の継続的モニタリングに基づいて変化することがある。本開示は、特定の方法で特定のアフィニティを決定することについて説明するが、本開示は、任意の適切な方法で任意の適切なアフィニティを決定することを企図している。
特定の実施形態においては、ソーシャルネットワーキング・システム160は、(本明細書では「係数」と呼ばれる)アフィニティ係数を使用して、ソーシャルグラフ・アフィニティを測定または定量化することができる。係数は、オンライン・ソーシャル・ネットワークと関連付けられた特定のオブジェクト間の関係の強さを表すこと、または定量化することができる。係数は、アクションに対するユーザの関心に基づいて、ユーザが特定のアクションを実行する確率、または予想確率を測定する関数も表すことができる。このように、ユーザの将来のアクションは、ユーザの以前のアクションに基づいて予想することができ、その場合、係数は、少なくとも部分的にユーザのアクションの履歴から計算することができる。係数は、オンライン・ソーシャル・ネットワークの内部または外部で行うことができる、任意の数のアクションを予想するために使用することができる。限定ではなく、例として、これらのアクションは、メッセージを送信する、コンテンツをポストする、もしくはコンテンツにコメントするなど、様々なタイプの通信、プロファイル・ページ、メディア、もしくは他の適切なコンテンツにアクセスする、もしくはそれらを見るなど、様々なタイプの観察アクション、同じグループ内に存在する、同じ写真内でタグ付けされている、同じ場所にチェックインしている、もしくは同じイベントに出席しているなど、2つ以上のソーシャルグラフ・エンティティについての様々なタイプの一致情報、または他の適切なアクションを含むことができる。本開示は、特定の方法でアフィニティを測定することについて説明するが、本開示は、任意の適切な方法でアフィニティを測定することを企図している。
特定の実施形態においては、ソーシャルネットワーキング・システム160は、係数を計算するために、様々な因子を使用することができる。これらの因子は、例えば、ユーザ・アクション、オブジェクト間の関係のタイプ、場所情報、他の適切な因子、またはそれらの任意の組み合わせを含むことができる。特定の実施形態においては、係数を計算するとき、異なる因子には異なる重みを与えることができる。各因子に対する重みは、静的であることが可能であり、または重みは、例えば、ユーザ、関係のタイプ、アクションのタイプ、およびユーザの場所などに従って変化することができる。ユーザについての全体的係数を決定するために、因子に対する評価は、それらの重みに従って組み合わせることができる。限定ではなく、例として、特定のユーザ・アクションには、評価および重みの両方を割り当てることができ、一方、特定のユーザ・アクションと関連付けられた関係には、評価および相関する重みが割り当てられる(例えば、そのため、重みは合計で100%である)。特定のオブジェクトに対するユーザの係数を計算するために、ユーザのアクションに割り当てられる評価は、例えば、全体的係数の60%を含むことができ、一方、ユーザとオブジェクトの間の関係は、全体的係数の40%を含むことができる。特定の実施形態においては、ソーシャルネットワーキング・システム160は、係数を計算するために使用される様々な因子についての重みを決定するときに、例えば、情報がアクセスされて以降の時間、減衰因子、アクセスの頻度、情報に対する関係、もしくはそれについての情報がアクセスされたオブジェクトに対する関係、オブジェクトにつなげられたソーシャルグラフ・エンティティに対する関係、ユーザ・アクションの短期もしくは長期平均、ユーザ・フィードバック、他の適切な変数、またはそれらの任意の組み合わせなど、様々な変数を考慮することができる。限定ではなく、例として、係数は、係数を計算するときに、より最近のアクションがより大きい関連性を有するように、特定のアクションによって提供される信号の強度を時間につれて減衰させる減衰因子を含むことができる。評価および重みは、係数がそれに基づくアクションの継続的な追跡に基づいて、継続的に更新することができる。各因子に対する評価および因子に割り当てられる重みの割り当て、組み合わせ、および平均などを行うために、任意のタイプの工程またはアルゴリズムを利用することができる。特定の実施形態においては、ソーシャルネットワーキング・システム160は、アクション履歴および過去のユーザ応答上で、またはユーザに様々な選択肢を体験させ、応答を測定することによって、ユーザから集められたデータ上でトレーニングされた機械学習アルゴリズムを使用して、係数を決定することができる。本開示は、特定の方法で係数を計算することについて説明するが、本開示は、任意の適切な方法で係数を計算することを企図している。
特定の実施形態においては、ソーシャルネットワーキング・システム160は、ユーザのアクションに基づいて、係数を計算することができる。ソーシャルネットワーキング・システム160は、オンライン・ソーシャル・ネットワーク、サードパーティ・システム170、他の適切なシステム、またはそれらの任意の組み合わせにおいて、そのようなアクションをモニタリングすることができる。ユーザ・アクションの任意の適切なタイプを、追跡すること、またはモニタリングすることができる。典型的なユーザ・アクションは、プロファイル・ページを見ること、コンテンツを作成またはポストすること、コンテンツと対話すること、グループに参加すること、イベントへの出席者を列挙して確認すること、場所にチェックインすること、特定のページに「いいね」を表明すること、ページを作成すること、およびソーシャル・アクションを容易にする他のタスクを実行することを含む。特定の実施形態においては、ソーシャルネットワーキング・システム160は、特定のタイプのコンテンツに対するユーザのアクションに基づいて、係数を計算することができる。コンテンツは、オンライン・ソーシャル・ネットワーク、サードパーティ・システム170、または別の適切なシステムと関連付けることができる。コンテンツは、ユーザ、プロファイル・ページ、ポスト、ニュース記事、ヘッドライン、インスタント・メッセージ、チャット・ルーム会話、電子メール、広告、ピクチャ、ビデオ、音楽、他の適切なオブジェクト、またはそれらの任意の組み合わせを含むことができる。ソーシャルネットワーキング・システム160は、アクションの1つまたは複数が、主題、コンテンツ、および他のユーザなどに対するアフィニティを示すかどうかを決定するために、ユーザのアクションを分析することができる。限定ではなく、例として、ユーザが、「コーヒー」またはその変形に関するポスト・コンテンツを頻繁に作成する場合、ソーシャルネットワーキング・システム160は、ユーザがコンセプト「コーヒー」に関して高い係数を有すると決定することができる。特定のアクションまたは特定のタイプのアクションには、他のアクションよりも高い重みおよび/または評価を割り当てることができ、そのことは、計算される全体的係数に影響を及ぼすことができる。限定ではなく、例として、第1のユーザが、第2のユーザに電子メールを送った場合、そのアクションに対する重みまたは評価は、第1のユーザが、第2のユーザについてのユーザ・プロファイル・ページを単純に見た場合よりも高くすることができる。
特定の実施形態においては、ソーシャルネットワーキング・システム160は、特定のオブジェクト間の関係のタイプに基づいて、係数を計算することができる。ソーシャルグラフ200を参照すると、ソーシャルネットワーキング・システム160は、係数を計算するときに、特定のユーザ・ノード202とコンセプト・ノード204とをつなぐエッジ206の数および/またはタイプを分析することができる。限定ではなく、例として、(2人のユーザが結婚していることを表す)配偶者タイプ・エッジによってつなげられたユーザ・ノード202には、友人タイプ・エッジによってつなげられたユーザ・ノード202よりも高い係数を割り当てることができる。言い換えると、特定のユーザについてのアクションおよび関係に割り当てられた重みに応じて、全体的アフィニティは、ユーザの友人についてのコンテンツに対してよりも、ユーザの配偶者についてのコンテンツに対してのほうがより高くなるように決定することができる。特定の実施形態においては、ユーザが有する別のオブジェクトとの関係は、そのオブジェクトについての係数を計算することに関して、ユーザのアクションの重みおよび/または評価に影響を及ぼすことがある。限定ではなく、例として、ユーザが第1の写真内でタグ付けされているが、第2の写真にのみ「いいね」を表明している場合、コンテンツとのタグ付けタイプの関係を有することには、コンテンツとの「いいね」タイプの関係を有することよりも高い重みおよび/または評価を割り当てることができるので、ソーシャルネットワーキング・システム160は、ユーザが第2の写真よりも第1の写真に関してより高い係数を有すると決定することができる。特定の実施形態においては、ソーシャルネットワーキング・システム160は、1人または複数人の第2のユーザが有する特定のオブジェクトとの関係に基づいて、第1のユーザについての係数を計算することができる。言い換えると、他のユーザが有するオブジェクトとのつながりおよび係数は、そのオブジェクトについての第1のユーザの係数に影響を及ぼすことがある。限定ではなく、例として、第1のユーザが、1人または複数人の第2のユーザにつなげられ、または1人または複数人の第2のユーザについて高い係数を有し、それらの第2のユーザが、特定のオブジェクトにつなげられ、または特定のオブジェクトについて高い係数を有する場合、ソーシャルネットワーキング・システム160は、第1のユーザも特定のオブジェクトについて相対的に高い係数を有するべきであると決定することができる。特定の実施形態においては、係数は、特定のオブジェクト間の隔たりの次数に基づくことができる。より低い係数は、第1のユーザが、ソーシャルグラフ200において第1のユーザに間接的につなげられたユーザのコンテンツ・オブジェクトに対する関心を共有する可能性が低いことを表すことができる。限定ではなく、例として、ソーシャルグラフ200においてより近い(すなわち、隔たりの次数がより少ない)ソーシャルグラフ・エンティティは、ソーシャルグラフ200においてより遠く離れたエンティティよりも高い係数を有することができる。
特定の実施形態においては、ソーシャルネットワーキング・システム160は、場所情報に基づいて、係数を計算することができる。互いに地理的により近いオブジェクトは、より遠いオブジェクトよりも互いに大きい関連性または大きい関心があると見なすことができる。特定の実施形態においては、特定のオブジェクトに対するユーザの係数は、ユーザと関連付けられた現在の場所(またはユーザのクライアント・システム130の場所)に対するオブジェクトの場所の近接性に基づくことができる。第1のユーザは、第1のユーザにより近い他のユーザまたはコンセプトに対してより大きい関心を有することがある。限定ではなく、例として、ユーザが空港から1.6km(1マイル)、ガソリン・ステーションから3.2km(2マイル)の所にいる場合、ソーシャルネットワーキング・システム160は、ユーザに対する空港の近接性に基づいて、ガソリン・ステーションよりも空港に対してより高い係数を有すると決定することができる。
特定の実施形態においては、ソーシャルネットワーキング・システム160は、係数情報に基づいて、ユーザに関する特定のアクションを実行することができる。係数は、アクションに対するユーザの関心に基づいて、ユーザが特定のアクションを実行するかどうかを予想するために使用することができる。係数は、広告、検索結果、ニュース記事、メディア、メッセージ、通知、または他の適切なオブジェクトなど、任意のタイプのオブジェクトを生成するときに、またはそれらをユーザに提示するときに使用することができる。係数は、適切な場合は、そのようなオブジェクトをランク付けし、順序付けるために利用することもできる。このように、ソーシャルネットワーキング・システム160は、ユーザの関心および現在の状況に関連する情報を提供して、ユーザが、そのような関心のある情報を見つける可能性を高めることができる。特定の実施形態においては、ソーシャルネットワーキング・システム160は、係数情報に基づいて、コンテンツを生成することができる。コンテンツ・オブジェクトは、ユーザ固有の係数に基づいて提供すること、または選択することができる。限定ではなく、例として、係数は、ユーザのためのメディアを生成するために使用することができ、その場合、ユーザには、ユーザがメディア・オブジェクトに関して高い全体的係数を有するメディアを提示することができる。限定ではなく、別例として、係数は、ユーザのための広告を生成するために使用することができ、その場合、ユーザには、ユーザが広告されるオブジェクトに関して高い全体的係数を有する広告を提示することができる。特定の実施形態においては、ソーシャルネットワーキング・システム160は、係数情報に基づいて、検索結果を生成することができる。特定のユーザについての検索結果は、問い合わせユーザに関する検索結果と関連付けられた係数に基づいてスコア付けすることができ、またはランク付けすることができる。限定ではなく、例として、より高い係数を有するオブジェクトに対応する検索結果は、検索結果ページにおいて、より低い係数を有するオブジェクトに対応する結果よりも高くランク付けすることができる。
特定の実施形態においては、ソーシャルネットワーキング・システム160は、特定のシステムまたは工程からの係数を求める要求に応答して、係数を計算することができる。与えられた状況においてユーザが取る(またはその対象になる)可能性の高いアクションを予想するために、任意の工程は、ユーザについての計算された係数を要求することができる。要求は、係数を計算するために使用される様々な因子に対して使用する1組の重みも含むことができる。この要求は、オンライン・ソーシャル・ネットワーク上で動作する工程から、(例えば、APIもしくは他の通信チャネルを介して)サードパーティ・システム170から、または別の適切なシステムから供給されることができる。要求に応答して、ソーシャルネットワーキング・システム160は、係数を計算すること(または以前に計算され、記憶されている場合は、係数情報にアクセスすること)ができる。特定の実施形態においては、ソーシャルネットワーキング・システム160は、特定の工程に関するアフィニティを測定することができる。(オンライン・ソーシャル・ネットワークの内部および外部の両方の)異なる工程が、特定のオブジェクトまたは1組のオブジェクトについての係数を要求することができる。ソーシャルネットワーキング・システム160は、アフィニティの測定を要求した特定の工程に関連するアフィニティの測定を提供することができる。このように、各工程は、工程がアフィニティの測定を使用する異なる状況に適合させられたアフィニティの測定を受け取る。
ソーシャルグラフ・アフィニティおよびアフィニティ係数との関連において、特定の実施形態は、各々が本願明細書に援用する、2006年8月11日に出願された米国特許出願第11/503093号、2010年12月22日に出願された米国特許出願第12/977027号、2010年12月23日に出願された米国特許出願第12/978265号、および2012年10月1日に出願された米国特許出願第13/632869号において開示されている、1つまたは複数のシステム、コンポーネント、要素、機能、方法、動作、または工程を利用することができる。
図3は、モバイル・デバイス130または他の任意のクライアント・システム130上に表示することができる例示的な番組ガイド310を示している。いくつかの実施形態においては、番組ガイド310は、ソーシャルグラフ200を使用して、ソーシャルネットワーキング・システム160によって生成され、ユーザに表示するパーソナライズされた1組の利用可能なメディア・コンテンツである。例えば、番組ガイド310は、ユーザに利用可能なメディア・コンテンツ(例えば、番組)を、ユーザおよびメディア・コンテンツに関連するソーシャル・コンテンツとともに含むことができる。
一般に、番組ガイド310は、任意のクライアント・システム130上に表示される利用可能なコンテンツをユーザが見て選択するための容易で便利な方法を提供する。いくつかの実施形態においては、番組ガイド310は、ユーザの関心に従って、複数の配信元(例えば、ネットフリックス(NetFlix)、フールー(Hulu)、アマゾン・ビデオ(Amazon Video)、およびユーチューブ(YouTube)などのオーバ・ザ・トップ(OTT)コンテンツ・プロバイダ、コムキャスト(Comcast)、タイム・ワーナ(Time Warner)、AT&T Uヴァース(AT&T U−verse)、およびディッシュ・ネットワーク(Dish Network)などのマルチプル・システム・オペレータ(MSO)、オンデマンド番組配信、DVR、サードパーティ・インターネット・サイト、他のケーブル・プロバイダなど)からコンテンツを集めて、利用可能なメディア・コンテンツの便利なリストにまとめることができる。ユーザは、コンテンツがどこから配信されるか、またはどのチャンネルがコンテンツと関連付けられるかについて知っている必要はない。代わりに、ユーザは、特定の番組のための番組ガイド・エントリ320を単にタップすれば、または他の方法で選択すれば、図4に示され、以下で説明されるような、特定の番組のための番組ページ410を提示してもらうことができる。その後、ユーザは、選択された番組についての情報を見ることができ、番組を視聴し始めるために、番組ページ410上の選択項目を選択することができる。その後、番組は、ユーザのスマートフォンまたはユーザのTVなど、任意のクライアント・システム130上に表示することができる。
番組ガイド310は、任意のクライアント・システム130上で視聴することができる任意の利用可能なコンテンツを含むことができる。例えば、番組ガイド310は、一般にセット・トップ・ボックス(STB)を使用して選択される、MSOからのコンテンツを含むことができる。番組ガイド310は、フールーおよびネットフリックスなどのOTTプロバイダからのコンテンツも含むことができる。番組ガイド310内のコンテンツは、オンデマンド・コンテンツであることも可能であり、オンデマンド・コンテンツを視聴するための価格の標識(indication)を含むことができる。いくつかの実施形態においては、番組ガイド310は、例えば、ソーシャルネットワーキング・システム160のモバイル・アプリケーションを使用して、モバイル・デバイス130上に表示することができる。
番組ガイド310は、番組ガイド・エントリ320(例えば、この例では番組ガイド・エントリ320a〜320c)を含む。各番組ガイド・エントリ320は、メディア・コンテンツ画像330と、ソーシャル・コンテンツ340と、1つまたは複数のユーザ選択可能な選択項目350と、放送時間360とを含むことができる。各番組ガイド・エントリ320のソーシャル・コンテンツ340は、番組ガイド・エントリ320のメディア・コンテンツに関連し、ソーシャルグラフ200を使用して、ソーシャルネットワーキング・システム160によって生成される。
メディア・コンテンツ画像330は、番組ガイド・エントリ320のメディア・コンテンツと関連付けられた任意の画像またはグラフィックであることが可能である。いくつかの実施形態においては、メディア・コンテンツ画像330は、番組ガイド・エントリ320のメディアと関連付けられたビデオからキャプチャされた画像であることが可能である。例えば、メディア・コンテンツ画像330aは、番組ガイド・エントリ320aのTV番組「イン・ザ・シティ(In the City)」からキャプチャされた画像であることが可能である。いくつかの実施形態においては、メディア・コンテンツ画像330は、番組ガイド・エントリ320のメディア・コンテンツと関連付けられたエンティティ(entity)によって提供されたカバー画像であることが可能である。例えば、特定の映画スタジオが、番組ガイド・エントリ320cの映画「テイク・ア・チャンス(Take a Chance)」を制作した場合、映画スタジオは、映画のカバー画像として使用するための特定の画像をソーシャルネットワーキング・システム160に提供すること、または他の方法で示すことができる。その場合、ソーシャルネットワーキング・システム160は、カバー画像にアクセスし、番組ガイド310内で映画を表すために、それをメディア・コンテンツ画像330として使用することができる。
ソーシャル・コンテンツ340は、ソーシャルグラフ200からソーシャルネットワーキング・システム160によって決定された番組ガイド・エントリ320のメディア・コンテンツと関連付けられた任意のソーシャル・コンテンツである。いくつかの実施形態においては、ソーシャル・コンテンツ340は、ソーシャルネットワーキング・システム160の何人の他のユーザが番組ガイド・エントリ320のメディア・コンテンツを視聴したか、そのメディア・コンテンツに「いいね」を表明したか、そのメディア・コンテンツをシェアしたか、またはそのメディア・コンテンツについてのコメントをポストしたかの標識を含むことができる。具体例として、図3の例示的な番組ガイド・エントリ320bについて考える。この例では、番組ガイド・エントリ320bのメディア・コンテンツは、「イージー・ストリート(Easy Street)」と呼ばれるTV番組である。ソーシャルネットワーキング・システム160は、ソーシャル・グラフ200に問い合わせを行って(query)、26人のユーザの友人が、TV番組「イージー・ストリート」に「いいね」を表明したと決定することができる。その後、「友人Aと25人の他の友人がこの番組に「いいね!」と言っています」と書かれた番組ガイド・エントリ320bのソーシャル・コンテンツ340aを生成し、「イージー・ストリート」についてのメディア・コンテンツ画像330bの近くに表示することができる。別例として、ソーシャルネットワーキング・システム160は、ソーシャルグラフ200に問い合わせを行って、2200人を超える他のユーザが「イージー・ストリート」に「いいね」を表明したと、また678人の他のユーザが「イージー・ストリート」をシェアしたと決定することができる。その後、「約2200人が「いいね!」678人がシェア」と書かれたソーシャル・コンテンツ340bを生成し、「イージー・ストリート」についてのメディア・コンテンツ画像330bの近くに表示することができる。いくつかの実施形態においては、ソーシャル・コンテンツ340は、フェイスパイル(facepile)340cも含むことができる。フェイスパイル340cは、ソーシャルグラフ200を使用して決定された、番組ガイド・エントリ320のメディア・コンテンツに「いいね」を表明した、ソーシャルネットワーキング・システム160の他のユーザ(例えば、友人)の、例えば、画像、アイコン、またはアバタを含むことができる。
ユーザ選択可能な選択項目350は、番組ガイド・エントリ320と関連付けられた1つまたは複数のアクションをユーザが実行することを可能にする任意の選択項目である。例えば、ユーザ選択可能な選択項目350は、番組ガイド・エントリ320のメディア・コンテンツに「いいね」を表明することを示すために、番組ガイド・エントリ320のメディア・コンテンツについてコメントするために、および番組ガイド・エントリ320のメディア・コンテンツをシェアするために、ユーザが選択することができる選択項目を含むことができる。選択されると、ユーザ選択可能な選択項目350は、ソーシャルネットワーキング・システム160内で任意の適切なアクションを引き起こすことができる。例えば、番組ガイド・エントリ320bのメディア・コンテンツ(すなわち、「イージー・ストリート」)に「いいね」を表明するために、ユーザがユーザ選択可能な選択項目350を選択した場合、ユーザが「イージー・ストリート」に「いいね」を表明していることを示すために、エッジ206をソーシャルグラフ200に追加することができる。別例として、「イージー・ストリート」をシェアするために、ユーザがユーザ選択可能な選択項目350を選択した場合、ユーザの友人たちのニュースフィード内に、ユーザが「イージー・ストリート」をシェアしたことを示すポストが現れることができる。
いくつかの実施形態においては、ユーザ選択可能な選択項目350は、リマインドおよび録画などの他の選択項目を含むことができる。例えば、番組ガイド・エントリ320内のユーザ選択可能な選択項目350として、「リマインド」を含めることができ、「リマインド」は、ユーザによって選択されると、番組ガイド・エントリ320のメディア・コンテンツが開始間近になったときに、ユーザに通知が送信されるようにすることができる。別例として、番組ガイド・エントリ320内のユーザ選択可能な選択項目350として、「録画」を含めることができ、「録画」は、ユーザによって選択されると、番組ガイド・エントリ320のメディア・コンテンツを録画するための命令が、DVRなどの別のデバイスに送信されるようにすることができる。いくつかの実施形態においては、ユーザ選択可能な選択項目350を使用して、各番組ガイド・エントリ320についての最上位アクション(例えば、再視聴、視聴、録画など)も定めることができる。
放送時間360は、番組ガイド・エントリ320のメディア・コンテンツを視聴することができる時間の標識である。例えば、番組ガイド・エントリ320aの放送時間360は、映画「イン・ザ・シティ」が1:00PMに開始し、3:00PMに終了することを示している。別例として、番組ガイド・エントリ320bの放送時間360は、TV番組「イージー・ストリート」が2:00PMに開始し、2:30PMに終了することを示している。
動作において、ソーシャルネットワーキング・システム160は、番組ガイド310を提供するために、1つまたは複数のコンテンツ配信元から利用可能なメディア・コンテンツを決定する。例えば、ソーシャルネットワーキング・システム160は、特定の地域にいる特定のユーザに利用可能なメディア・コンテンツを決定するために、MSO、OTT、または他のケーブル・プロバイダ(cable provider)に問い合わせを行うことができる。ある実施形態においては、ソーシャルネットワーキング・システム160は、番組ガイド310のために利用可能なメディア・コンテンツを決定するために、ユーザの利用登録情報(例えば、ユーザがどのケーブル・パッケージに利用登録されているか)を決定することができる。例えば、ユーザが、ある都市においてあるケーブル・プロバイダの基本ケーブルに利用登録している場合、ソーシャルネットワーキング・システム160は、その特定のケーブル・プロバイダおよび都市についての知られているチャンネルおよび番組のデータベースにアクセスすることができる。その後、ソーシャルネットワーキング・システム160は、クライアント・システム130において表示するために、利用可能なメディア・コンテンツを提供することができる。ある実施形態においては、番組ガイド310は、現在何が放送中か(すなわち、どんなTV番組および映画が現在利用可能で視聴できるか)、ならびに間もなく(例えば、30分、1時間、1日、1週間以内など)放送されるTV番組および映画を表示する。
いくつかの実施形態においては、ソーシャルネットワーキング・システム160は、APIを使用してMSOから利用可能なすべてのパッケージ(例えば、基本パッケージ、プラス、プレミアムなど)のリストを引き出す(pull)ことによって、ユーザが現在どのケーブル・パッケージに利用登録されているかを決定し、その後、セットアップ・ウィザード質問票を使用して、ユーザの現在の利用登録を決定することができる。例えば、ウィザードは、ユーザに「HBOは視聴可能ですか?」と質問することができる。ユーザの回答に基づいて、ソーシャルネットワーキング・システム160は、適切なロジックを使用して、ユーザの利用登録を決定することができる。例えば、ユーザが、HBOは視聴可能ではないと回答し、MSOから利用可能なパッケージのリストが、基本パッケージ以外のすべてのパッケージでHBOが利用可能であることを示している場合、ソーシャルネットワーキング・システム160は、ユーザが基本ケーブルを有していると決定することができる。いくつかの実施形態においては、ユーザが、HBOは視聴可能ではないことを示した場合、ソーシャルネットワーキング・システム160は、ユーザが視聴可能でない可能性が高い他のチャンネルのリストを決定し、「これらのチャンネルも視聴可能ではないと思われます。視聴可能ですか?」などとユーザに回答を促すことができる。
いくつかの実施形態においては、番組ガイド310のメディア・コンテンツは、ソーシャルネットワーキング・システム160によって決定されたユーザに対して推薦されたメディア・コンテンツである。一般に、推薦されたメディア・コンテンツは、ソーシャルグラフ200からの情報を使用して、関心およびソーシャル・コンテキストに基づいて決定することができる。そうするために、ソーシャルネットワーキング・システム160は、ソーシャルネットワーキング・システムの1人または複数人のユーザと関連付けられた情報を求めて、ソーシャルグラフ200に問い合わせを行う。ソーシャルグラフ200からの情報が取得されると、ソーシャルネットワーキング・システム160は、その情報を利用して、ユーザに推薦するメディア・コンテンツを決定することができる。推薦されるメディア・コンテンツの決定が、以下でより詳細に説明される。
ある実施形態においては、ソーシャルネットワーキング・システム160は、ソーシャル係数を利用して、番組ガイド310のために、推薦されるメディア・コンテンツを決定することができる。いくつかの実施形態は、本願明細書に援用する、「ソーシャルネットワーキング・システムにおけるコンテキスト的な関連性についてのアフィニティ予想(Contextually Relevant Affinity Prediction in a Social Networking System)」と題する米国特許出願第12/978265号において説明されているような係数を利用することができる。ソーシャルネットワーキング・システム160は、個々のユーザについての特定のメディア・コンテンツの係数を決定する際に、ソーシャルグラフ200からの以下の情報を利用することができる。
・特定のメディア・コンテンツに「いいね」を表明したユーザの友人の数
・特定のメディア・コンテンツに「いいね」を表明したソーシャルネットワーキング・システム160のユーザの総数
・特定のメディア・コンテンツを視聴したユーザの友人の数
・特定のメディア・コンテンツを視聴したソーシャルネットワーキング・システム160のユーザの総数
・嗜好アルゴリズム(例えば、特定のコンテンツに「いいね」を表明したユーザは、この他のコンテンツにも「いいね」を表明する)
その後、ソーシャルネットワーキング・システム160は、各コンテンツについてユーザと関連付けられた係数を決定するために、上記の情報を組み合わせることができる。例えば、特定のメディア・コンテンツを求めるソーシャルグラフ200への問い合わせが、以下の結果をもたらしたシナリオについて考える。
・特定のメディア・コンテンツに「いいね」を表明したユーザの友人の数=5
・特定のメディア・コンテンツに「いいね」を表明したソーシャルネットワーキング・システム160のユーザの総数=1000
・特定のメディア・コンテンツを視聴したユーザの友人の数=2
・特定のメディア・コンテンツを視聴したソーシャルネットワーキング・システム160のユーザの総数=250
これらの例示的な結果の組み合わせは、ユーザに対して、この特定のメディア・コンテンツの場合は、5+1000+2+250=1257という係数をもたらす。その後、ソーシャルネットワーキング・システム160は、ユーザについての他のメディア・コンテンツの係数を決定するために、同様の計算を実行する。ある実施形態においては、その後、ユーザについて、すべてのメディア・コンテンツの結果の係数がランク付けされる。その後、所定の数の上位にランク付けされたメディア・コンテンツを、番組ガイド310内で、推薦されるメディア・コンテンツとしてユーザに提示することができる。
上で説明されたように、ユーザに推薦するメディア・コンテンツを決定するために、ソーシャルネットワーキング・システム160によって、嗜好アルゴリズムを利用することができる。例えば、ソーシャルネットワーキング・システム160は、ユーザがソーシャルネットワーキング・システム160において視聴した、「いいね」を表明した、または他の方法で対話したメディア・コンテンツを最初に決定することができる。いくつかの実施形態においては、第1のメディア・コンテンツは、ソーシャルグラフ200を使用して決定することができる。第1のメディア・コンテンツが決定されると、次に、ソーシャルネットワーキング・システム160は、ソーシャルグラフ200を探索して、ソーシャルネットワーキング・システム160においてやはり第1のメディア・コンテンツを視聴した、その第1のメディア・コンテンツに「いいね」を表明した、またはその第1のメディア・コンテンツと他の方法で対話した他のユーザまたはユーザの友人を決定することができる。その後、ソーシャルネットワーキング・システム160は、決定されたユーザまたは友人がソーシャルネットワーキング・システム160において視聴した、「いいね」を表明した、または他の方法で対話した第2のメディア・コンテンツを求めて、ソーシャルグラフ200を探索することができる。その後、決定された第2のメディア・コンテンツを、番組ガイド310内で、推薦されるメディア・コンテンツとしてユーザに推薦することができる。いくつかの実施形態においては、ユーザにどのメディア・コンテンツを推薦すべきかを決定する際に、重み付け因子を利用することができる。例えば、ユーザの友人によって視聴された第2のメディア・コンテンツは、ユーザに対する推薦を決定する際に、友人でないユーザによって視聴された第2のメディア・コンテンツよりも高い重みを有することができる。
もっぱら説明を目的とする例として、第1のユーザがかつてメディア・コンテンツ「ガレージ・トーク(Garage Talk)」に「いいね」を表明したシナリオについて考える。ソーシャルネットワーキング・システム160は、やはり「ガレージ・トーク」に「いいね」を表明した他のユーザまたは第1のユーザの友人を決定するために、ソーシャルグラフ200に問い合わせを行うことができる。例えば、ソーシャルネットワーキング・システム160は、友人AとユーザBも「ガレージ・トーク」に「いいね」を表明したと決定することができる。その後、ソーシャルネットワーキング・システム160は、やはり「ガレージ・トーク」に「いいね」を表明した他のユーザまたは友人によって「いいね」が表明された他のメディア・コンテンツを求めて、ソーシャルグラフ200に問い合わせを行うことができる。例えば、ソーシャルネットワーキング・システム160は、「ガレージ・トーク」に「いいね」を表明した友人AとユーザBが、「ショップ・ジャーナル(Shop Journal)」および「カーズ・ガロア(Cars Galore)」にも「いいね」を表明したと決定することができる。その後、ソーシャルネットワーキング・システム160は、「ショップ・ジャーナル」および「カーズ・ガロア」を第1のユーザに推薦されるメディア・コンテンツとして番組ガイド310内に表示することができる。例えば、友人Aは「ショップ・ジャーナル」に「いいね」を表明し、(第1のユーザの友人ではない)ユーザBは「カーズ・ガロア」に「いいね」を表明した場合、「ショップ・ジャーナル」は、番組ガイド310内で、「カーズ・ガロア」よりも上に現れることができる。
ある実施形態においては、ソーシャルネットワーキング・システム160は、推薦されるメディア・コンテンツとして番組ガイド310内に表示するために、流行のメディア・コンテンツまたは関連するメディア・コンテンツを決定することができる。例えば、ソーシャルネットワーキング・システム160は、流行っているメディア・コンテンツを決定するために、ポスト、「いいね」、またはソーシャルネットワーキング・システム160との他の任意の対話を分析することができる。流行っているメディア・コンテンツは、例えば、所定の期間内に最も多くの「いいね」を受け取った、または最も多く視聴されたコンテンツであることが可能である。その後、ソーシャルネットワーキング・システム160は、1つまたは複数の流行のメディア・コンテンツを推薦されるメディア・コンテンツとして番組ガイド310内に含めることができる。
番組ガイド310がクライアント・システム130上に表示されると、ユーザは、選択された番組ガイド・エントリ320のメディア・コンテンツについてのより多くの情報を見るために、任意の番組ガイド・エントリ320を選択するための選択項目を有する。例えば、ユーザは、「イン・ザ・シティ」についてのより多くの情報を見るために、TV番組「イン・ザ・シティ」についての番組ガイド310aをタッチ、タップ、または他の方法で選択することができる。番組ガイド・エントリ320が選択されると、番組ページ410が、クライアント・システム130上に表示される。例えば、ユーザが番組ガイド・エントリ320aを選択した場合、「イン・ザ・シティ」についての番組ページ410が、クライアント・システム130上でユーザに提示される。番組ページ410の特定の実施形態が、図4を参照して、以下でより詳細に説明される。
図4は、番組ガイド310の番組ガイド・エントリ320をユーザが選択したのに応答して表示することができる例示的な番組ページ410を示している。一般に、番組ページ410は、選択された番組ガイド・エントリ320の番組についての情報およびユーザ選択可能な選択項目を含む。この例では、番組ページ410は、TV番組「イン・ザ・シティ」についてのものであり、ユーザが番組ガイド・エントリ320aを選択したのに応答して提示される。他の実施形態においては、番組ページ410は、映画、スポーツ・イベント、およびビデオ・ゲームなど、他の任意のメディア・コンテンツについてのものであることが可能である。番組ページ410は、メディア・コンテンツ画像330と、以下でより詳細に説明されるような1つまたは複数のモジュール420とを含むことができる。特定の番組についての情報およびユーザ選択可能な選択項目は、一般に、モジュール420を使用して提示される。以下でさらに説明されるように、ソーシャルネットワーキング・システム160は、番組ページ410上にどのモジュール420が含まれるべきかを決定する。付加的に、ソーシャルネットワーキング・システム160は、いくつかの実施形態においては、番組ページ410上にモジュール420を提示する順序を決定することができる。
モジュール420は、特定の番組に関連する特定の目的専用の番組ページ410の任意の部分または領域である。例えば、モジュール420は、特定の番組についての情報(例えば、番組開始/終了時刻、チャンネルなど)をユーザに提示するためのエリアであることが可能である。別例として、モジュール420は、(例えば、特定の番組の視聴、特定の番組の評価などを行うための)特定の番組に関連する1つまたは複数の選択項目をユーザが選択することを可能にするエリアであることが可能である。モジュール420の具体例が、以下で説明される。
モジュール420aは、選択された番組についての基本情報を提示し、番組を視聴し始めるための選択項目をユーザに提供する放送モジュールである。例えば、放送モジュール420aのいくつかの実施形態は、示されるように、特定の番組と関連付けられた時刻(例えば、開始および/または終了時刻)と、特定の番組についての説明と、特定の番組のチャンネル番号と、特定の番組を視聴するためのユーザ選択可能な選択項目とを含む。番組についての説明は、番組シリーズについての全般的な説明、番組の特定の放映分についての説明、または他の任意の適切な説明を含むことができる。特定の番組を視聴するためのユーザ選択可能な選択項目は、ユーザの任意のクライアント・システム130上で特定の番組を再生し始めるための命令を送信することができ、または特定の番組を視聴することができるチャンネルに別のクライアント・システム130を同調させるための命令を送信することができる。いくつかの実施形態においては、放送モジュール420aは、どの番組ガイド・エントリ320についても表示されることが可能であり、メディア・コンテンツ画像330のすぐ下にある(すなわち、番組ページ410上の最初のモジュール420である)。
モジュール420bは、ユーザが特定の番組についての情報をソーシャルネットワーキング・システム160に提出することを可能にし、且つ1つまたは複数のユーザ選択可能な選択項目(例えば、ボタン)を提供するアクション・バー・モジュールである。例えば、アクション・バー・モジュール420bのいくつかの実施形態は、ユーザが特定の番組に「いいね」を表明することをソーシャルネットワーキング・システム160に示すことを可能にする「いいね」ボタンを含む。別例として、アクション・バー・モジュール420bのいくつかの実施形態は、ユーザが特定の番組をソーシャルネットワーキング・システム160の他のユーザとシェアすることを可能にする「シェア」ボタンを含む。いくつかの実施形態においては、ユーザが、アクション・バー・モジュール420b内のユーザ選択可能な選択項目を選択したとき、ソーシャルグラフ200内において、ユーザのユーザ・ノード202と、特定の番組に関連するソーシャルグラフ200内の1つまたは複数の他のコンセプト・ノード204との間に、1つまたは複数のエッジ206を生成することができる。例えば、ユーザが、番組「イン・ザ・シティ」に「いいね」を表明するために、アクション・バー・モジュール420b内のボタンを選択したとき、ソーシャルグラフ200内において、ユーザのユーザ・ノード202と、「イン・ザ・シティ」のためのコンセプト・ノード204との間に、「いいね」エッジ206を生成することができる。いくつかの実施形態においては、ソーシャルネットワーキング・システム160が、ソーシャルグラフ200内には、ユーザのユーザ・ノード202と、「イン・ザ・シティ」のためのコンセプト・ノード204との間にすでにエッジ206が存在すると決定した場合、アクション・バー・モジュール420bは、ユーザが以前に番組「イン・ザ・シティ」に「いいね」を表明したことを表すアイコンを表示することができる。
モジュール420cは、特定の番組に「いいね」を表明した、または特定の番組を視聴した、ソーシャルネットワーキング・システムの他のユーザの標識を含む、フェイスパイル・モジュールである。上で説明されたように、フェイスパイルは、ソーシャルグラフ200を使用して決定されるような、番組ガイド・エントリ320の特定の番組に「いいね」を表明した、ソーシャルネットワーキング・システム160の他のユーザ(例えば、友人)の画像、アイコン、またはアバタを含むことができる。フェイスパイル・モジュール420cは、フェイスパイルを、フェイスパイル内に示された友人とチャットするためのユーザ選択可能な選択項目とともに提示する。
モジュール420dは、特定の番組を評価するためのユーザ選択可能な選択項目を提供する評価モジュールである。例えば、評価モジュール420dは、ユーザが特定の番組を等級(例えば、最高を星5つとして星4つなど)で評価することを可能にする等級の視覚的な標識(例えば、数字、星など)を含むことができる。または、ユーザが以前に特定の番組を評価している場合、評価モジュール420dは、ユーザによる特定の番組についての以前の評価の標識を含むことができる。ユーザ評価は、評価モジュール420dまたは番組ページ410によってソーシャルネットワーキング・システム160に送信することができ、その場合、将来の使用のために、評価を記憶し、編集することができる。
モジュール420eは、ソーシャルネットワーキング・システム160の他のユーザによる特定の番組の編集された評価の標識を提供するレビュー・モジュールである。例えば、ソーシャルネットワーキング・システム160のすべての他のユーザが、特定の番組に、最高を星5つとして星3.5という平均評価を与えた場合、レビュー・モジュール420eは、図4に示されるような標識を提供することができる。いくつかの実施形態においては、レビュー・モジュール420eは、ソーシャルグラフ200から決定された、特定の番組が、ソーシャルネットワーキング・システム160のすべての他のユーザから、いくつの「いいね」、コメント、またはシェアを受け取ったかについての標識を提供することができる。
いくつかの実施形態においては、モジュール420は、ユーザがソーシャルネットワーキング・システム160の他のユーザとチャットするためのインタフェースを提供するチャット・モジュールを含むことができる。例えば、ユーザは、ソーシャルネットワーキング・システム160の他のユーザとのチャット・セッションを開始するために、チャット・モジュール420(またはチャット・モジュール420内のボタン)を選択することができる。チャット・セッションは、番組ページ410内に現れることができ、またはクライアント・システム130上の新しいインタフェース内で提示することができる。
いくつかの実施形態においては、モジュール420は、ユーザが特定の番組に関連する特定のコンテンツに票を投じるためのインタフェースを提供する投票モジュールを含むことができる。例えば、選択された番組が歌唱コンテストなどのコンテスト番組であるシナリオについて考える。このシナリオでは、番組ページ410は、ユーザが歌唱コンテストの出場者に票を投じることを可能にする投票モジュール420を含むことができる。ユーザの票は、投票モジュール420または番組ページ410によってソーシャルネットワーキング・システム160に送信することができ、その場合、票を記録し、歌唱コンテストの制作者などの第三者に提供することができる。
いくつかの実施形態においては、モジュール420は、1つまたは複数の表示された広告を含む広告モジュールを含むことができる。例えば、広告モジュール420は、選択された番組に関連する製品の1つまたは複数の広告を含むことができる。別例では、広告モジュール420は、特定の番組の最中に行われる、または特定の番組についての番組ページ410を見るユーザに示される、購入された1つまたは複数の広告を含むことができる。いくつかの実施形態においては、広告モジュール420は、ユーザによって選択可能であることが可能である。そのような実施形態においては、ユーザが、広告モジュール420、または広告モジュール420内のユーザ選択可能な選択項目を選択したときに、例えば、広告される製品と関連付けられたウェブサイトまたはアプリケーションにユーザを導くことができる。
いくつかの実施形態においては、モジュール420は、特定の番組と関連付けられたスポーツ情報を含むスポーツ・モジュールを含むことができる。例えば、選択された番組がスポーツ・イベントである場合、スポーツ・モジュール420は、番組ページ410内に現れることができ、スポーツ・イベントのリアルタイム・スコアを含むことができる。いくつかの実施形態においては、スポーツ・モジュール420は、選択されたスポーツ・イベントと関連付けられたファンタジ・スポーツ(fantasy sport)情報を含むことができる。いくつかの実施形態においては、スポーツ・モジュール420は、リアルタイムに更新することができる。特定のスポーツ情報が説明されたが、スポーツ・モジュール420は、選択されたスポーツ・イベントと関連付けられた任意の情報(例えば、オリンピックのメダル獲得数、間近に迫った試合についての情報など)を含むことができる。
動作において、ソーシャルネットワーキング・システム160は、番組ガイド310内における、特定の番組についての特定の番組ガイド・エントリ320のユーザによる選択を受信する。例えば、ユーザが「イン・ザ・シティ」についての番組ガイド・エントリ320aを選択すると、ソーシャルネットワーキング・システム160は、「イン・ザ・シティ」の選択の標識を受信する。その標識に応答して、「イン・ザ・シティ」についての番組ページ410が、ユーザに表示するために、ソーシャルネットワーキング・システム160によって提供される。提供される番組ページ410は、以下で説明されるようにソーシャルネットワーキング・システム160によって決定されたモジュール420を含む。
表示された番組ページ410内に含まれるモジュール420は、任意の適切なアルゴリズムまたは方法を使用して、ソーシャルネットワーキング・システム160によって決定される。いくつかの実施形態においては、ソーシャルネットワーキング・システム160は、番組ページ410上にどのモジュール420を表示すべきかを決定するために、選択された番組の分類を利用することができる。1例として、選択された番組が、野球の試合などのスポーツ・イベントである場合、ソーシャルネットワーキング・システム160は、スポーツ・イベントのための番組ページ410上にスポーツ・モジュール420が表示されるべきであると決定することができる。別例として、選択された番組が、歌唱コンテストである場合、ソーシャルネットワーキング・システム160は、歌唱コンテストのための番組ページ410上に投票モジュール420が表示されるべきであると決定することができる。
いくつかの実施形態においては、どの選択された番組ガイド・エントリ320に対しても、あるモジュール420を表示することができる。例えば、ある実施形態は、選択された番組についての情報を提供し、番組を視聴するためのユーザ選択可能な選択項目をユーザに提供するために、放送モジュール420aを常に表示することができる。別例として、ある実施形態は、ソーシャルネットワーキング・システム160内の他の人々(例えば、ユーザの友人)が特定の番組をどのように評価しているかについての知識をユーザに提供するために、レビュー・モジュール420eを常に表示することができる。いくつかの実施形態においては、どの選択された番組ガイド・エントリ320に対しても、広告モジュール420を表示することができる。
いくつかの実施形態においては、ソーシャルネットワーキング・システム160は、決定されたモジュール420を番組ページ410上に表示する順序を決定することができる。例えば、選択された番組をユーザの友人の誰も現在視聴していない場合、フェイスパイル・モジュール420cを番組ページ410の最下部に移動させることができる。別例として、選択された番組がスポーツ・イベントである場合、番組ページ410上において、スポーツ・モジュール420をより上方に移動させることができる。いくつかの実施形態においては、ソーシャルネットワーキング・システム160は、決定されたモジュール420を番組ページ410上に表示する順序を決定するために、例えば、ソーシャルグラフ200からの任意の適切なソーシャル信号を利用することができる。例えば、ソーシャルネットワーキング・システム160は、ユーザからの「いいね」、メッセージ、ポスト、以前の視聴など、または選択された番組と関連付けられたもしくは関連するユーザのつながりを求めて、ソーシャルグラフ200を探索することができる。その後、決定されたソーシャル信号は、決定されたモジュール420を番組ページ410上に表示する順序を決定するために利用することができる。例えば、ソーシャルグラフ200からのソーシャル信号が、ある人数のユーザの友人が選択された番組について現在チャットしていることを示した場合、番組ページ410上において、チャット・モジュール420をより上方に移動させることができる。別例として、ある人数のソーシャルネットワーキング・システム160の他のユーザが、選択された番組をあるレベルよりも高く(例えば、最高を星5つとして少なくとも星4つ)評価した場合、選択された番組の質をユーザに対して強調するために、番組ページ410上において、レビュー・モジュール420eをより上方に移動させることができる。本開示は、番組ページ410上におけるモジュール420の順序を決定するために、任意の適切なアルゴリズムまたは方法を利用することを予期している。
図5は、プラットフォーム番組ページを提供するための例示的な方法500を示している。方法は、工程510において開始することができ、利用可能なメディア・コンテンツが、1つまたは複数のコンテンツ配信源から決定される。いくつかの実施形態においては、メディア・コンテンツは、TV番組および映画を含む。いくつかの実施形態においては、利用可能なメディア・コンテンツは、上述されたようなMSO、OTT、または他の任意のプロバイダから利用可能なTV番組および映画を含む。いくつかの実施形態においては、利用可能なメディア・コンテンツは、現在放送されている、または近い将来に(例えば、次の30分、1時間、1日、1週間などに)放送される、任意のTV番組または映画である。いくつかの実施形態においては、利用可能なメディア・コンテンツは、上述されたように決定される。
工程520において、工程510からの利用可能なメディア・コンテンツの少なくとも一部が、ユーザの表示デバイス上に表示するために提供される。いくつかの実施形態においては、表示デバイスは、スマートフォン、TV、または他の任意のクライアント・システム130である。いくつかの実施形態においては、工程520は、番組ガイド310などの番組ガイド内に表示するための、利用可能なメディア・コンテンツの少なくとも一部を提供することを含む。いくつかの実施形態においては、利用可能なメディア・コンテンツは、番組ガイド・エントリ320などの番組ガイド・エントリ内に表示される。
工程530において、番組ガイド内の特定のエントリのユーザによる選択が受信される。いくつかの実施形態においては、選択は、ソーシャルネットワーキング・システム160などのソーシャルネットワーキング・システムによって受信され、または他の方法でアクセスされる。いくつかの実施形態においては、ユーザによって選択される特定のエントリは、特定の番組と関連付けられる。
工程540において、特定の番組のための複数のモジュールが決定される。いくつかの実施形態においては、決定されたモジュールの少なくとも1つは、ソーシャルグラフ200などのソーシャルネットワーキング・システムのソーシャルグラフからのソーシャル・コンテンツを含む。いくつかの実施形態においては、決定されたモジュールは、上述されたモジュール420などの任意の適切なモジュールから選択される。ある実施形態においては、工程540においてモジュールを決定するために、特定の番組の分類が利用される。
工程550において、工程530のユーザによる選択に応答して、表示デバイス上に表示するために、番組ページが提供される。いくつかの実施形態においては、番組ページは、上述の番組ページ410であり、工程540の決定されたモジュールを含む。いくつかの実施形態においては、番組ページのモジュールは、ソーシャルネットワーキング・システム160によって決定された特定の順序で表示される。
いくつかの実施形態においては、方法500は、付加的に、利用可能なメディア・コンテンツおよびソーシャルネットワーキング・システムの1人または複数人のユーザと関連付けられたソーシャル・コンテンツを求めて、ソーシャルネットワーキング・システムのソーシャルグラフに問い合わせを行うことを含むことができる。いくつかの実施形態においては、ソーシャルグラフは、ソーシャルグラフ200であり、複数のノードと、ノードをつなぐエッジとを含み、ノードは、各々がソーシャルネットワーキング・システムの特定のユーザと関連付けられたユーザ・ノードを含む。方法500は、表示デバイス上に利用可能なメディア・コンテンツとともに表示するために、ソーシャルグラフに問い合わされたソーシャル・コンテンツの少なくとも一部を提供することも含むことができる。いくつかの実施形態においては、ソーシャル・コンテンツは、利用可能なメディア・コンテンツを視聴したソーシャルネットワーキング・システムの他のユーザの数の標識、利用可能なメディア・コンテンツに「いいね」を表明したソーシャルネットワーキング・システムの他のユーザの数の標識、利用可能なメディア・コンテンツをシェアしたソーシャルネットワーキング・システムの他のユーザの数の標識、利用可能なメディア・コンテンツについてのコメントの数の標識、またはフェイスパイルのうちの1つまたは複数である。
特定の実施形態は、適切な場合は、図5の方法の1つまたは複数の工程を繰り返すことができる。本開示は、特定の順序で行われるものとして、図5の方法の特定の工程を説明し、図示したが、本開示は、任意の適切な順序で行われる図5の方法の任意の適切な工程を企図している。さらに、本開示は、図5の方法の特定の工程を実施する特定のコンポーネント、デバイス、またはシステムについて説明し、図示するが、本開示は、図5の方法の任意の適切な工程を実施する任意の適切なコンポーネント、デバイス、またはシステムの任意の適切な組み合わせを企図している。
図6は、例示的なコンピュータ・システム600を示している。特定の実施形態においては、1つまたは複数のコンピュータ・システム600が、本明細書において記述されているまたは示されている1つまたは複数の方法の1つまたは複数の工程を実行する。特定の実施形態においては、1つまたは複数のコンピュータ・システム600が、本明細書において記述されているまたは示されている機能を提供する。特定の実施形態においては、1つまたは複数のコンピュータ・システム600上で稼働するソフトウェアが、本明細書において記述されているもしくは示されている1つもしくは複数の方法の1つもしくは複数の工程を実行し、または本明細書において記述されているもしくは示されている機能を提供する。特定の実施形態は、1つまたは複数のコンピュータ・システム600の1つまたは複数の部分を含む。本明細書においては、コンピュータ・システムへの言及は、適切な場合には、コンピューティング・デバイスを包含することができ、またその逆も同様である。その上、コンピュータ・システムへの言及は、適切な場合には、1つまたは複数のコンピュータ・システムを包含することができる。
本開示は、任意の適切な数のコンピュータ・システム600を想定している。本開示は、任意の適切な物理的な形態を取るコンピュータ・システム600を想定している。限定ではなく、例として、コンピュータ・システム600は、組み込みコンピュータ・システム、システムオンチップ(SOC)、シングルボード・コンピュータ・システム(SBC)(たとえば、コンピュータオンモジュール(COM)もしくはシステムオンモジュール(SOM)など)、デスクトップ・コンピュータ・システム、ラップトップもしくはノートブック・コンピュータ・システム、インタラクティブ・キオスク、メインフレーム、コンピュータ・システムのメッシュ、モバイル電話、携帯情報端末(PDA)、サーバ、タブレット・コンピュータ・システム、またはこれらのうちの複数の組合せであることが可能である。適切な場合には、コンピュータ・システム600は、1つもしくは複数のコンピュータ・システム600を含むこと、単一型もしくは分散型であること、複数のロケーションにわたること、複数のマシンにわたること、複数のデータセンターにわたること、または、クラウド(1つもしくは複数のネットワーク内の1つもしくは複数のクラウド・コンポーネントを含むことができる)内に常駐することが可能である。適切な場合には、1つまたは複数のコンピュータ・システム600は、本明細書において記述されているまたは示されている1つまたは複数の方法の1つまたは複数の工程を、実質的な空間上のまたは時間上の制限を伴わずに実行することができる。限定ではなく、例として、1つまたは複数のコンピュータ・システム600は、本明細書において記述されているまたは示されている1つまたは複数の方法の1つまたは複数の工程をリアルタイムで、またはバッチ・モードで実行することができる。1つまたは複数のコンピュータ・システム600は、適切な場合には、本明細書において記述されているまたは示されている1つまたは複数の方法の1つまたは複数の工程を別々の時点で、または別々のロケーションで実行することができる。
特定の実施形態においては、コンピュータ・システム600は、プロセッサ602、メモリ604、ストレージ606、入力/出力(I/O)インタフェース608、通信インタフェース610、およびバス612を含む。本開示は、特定の数の特定のコンポーネントを特定の構成で有する特定のコンピュータ・システムについて記述し、示しているが、本開示は、任意の適切な数の任意の適切なコンポーネントを任意の適切な構成で有する任意の適切なコンピュータ・システムを想定している。
特定の実施形態においては、プロセッサ602は、コンピュータ・プログラムを構成している命令などの命令を実行するためのハードウェアを含む。限定ではなく、例として、命令を実行するために、プロセッサ602は、内部レジスタ、内部キャッシュ、メモリ604、またはストレージ606から命令を取り出し(またはフェッチし)、それらの命令をデコードして実行し、次いで、1つまたは複数の結果を内部レジスタ、内部キャッシュ、メモリ604、またはストレージ606に書き込むことができる。特定の実施形態においては、プロセッサ602は、データ、命令、またはアドレスのための1つまたは複数の内部キャッシュを含むことができる。本開示は、適切な場合には、任意の適切な数の任意の適切な内部キャッシュを含むプロセッサ602を想定している。限定ではなく、例として、プロセッサ602は、1つまたは複数の命令キャッシュ、1つまたは複数のデータ・キャッシュ、および1つまたは複数の変換ルックアサイド・バッファ(TLB)を含むことができる。命令キャッシュ内の命令は、メモリ604またはストレージ606内の命令のコピーであることが可能であり、命令キャッシュは、プロセッサ602によるそれらの命令の取り出しをスピードアップすることができる。データ・キャッシュ内のデータは、プロセッサ602において実行される命令が機能する際に基づくメモリ604もしくはストレージ606内のデータのコピー、プロセッサ602において実行される後続の命令によるアクセスのための、もしくはメモリ604もしくはストレージ606への書き込みのためのプロセッサ602において実行された以前の命令の結果、またはその他の適切なデータであることが可能である。データ・キャッシュは、プロセッサ602による読み取りオペレーションまたは書き込みオペレーションをスピードアップすることができる。TLBは、プロセッサ602のための仮想アドレス変換をスピードアップすることができる。特定の実施形態においては、プロセッサ602は、データ、命令、またはアドレスのための1つまたは複数の内部レジスタを含むことができる。本開示は、適切な場合には、任意の適切な数の任意の適切な内部レジスタを含むプロセッサ602を想定している。適切な場合には、プロセッサ602は、1つまたは複数の演算ロジック・ユニット(ALU)を含むこと、マルチコア・プロセッサであること、または1つもしくは複数のプロセッサ602を含むことが可能である。本開示は、特定のプロセッサについて記述し、示しているが、本開示は、任意の適切なプロセッサを想定している。
特定の実施形態においては、メモリ604は、プロセッサ602が実行するための命令、またはプロセッサ602が機能する際に基づくデータを格納するためのメイン・メモリを含む。限定ではなく、例として、コンピュータ・システム600は、命令をストレージ606または別のソース(たとえば、別のコンピュータ・システム600など)からメモリ604にロードすることができる。次いでプロセッサ602は、命令をメモリ604から内部レジスタまたは内部キャッシュにロードすることができる。命令を実行するために、プロセッサ602は、命令を内部レジスタまたは内部キャッシュから取り出し、それらの命令をデコードすることができる。命令の実行中または実行後に、プロセッサ602は、1つまたは複数の結果(それらは、中間の結果または最終的な結果である場合がある)を内部レジスタまたは内部キャッシュに書き込むことができる。次いでプロセッサ602は、それらの結果のうちの1つまたは複数をメモリ604に書き込むことができる。特定の実施形態においては、プロセッサ602は、(ストレージ606またはその他の場所ではなく)1つもしくは複数の内部レジスタもしくは内部キャッシュ内の、またはメモリ604内の命令のみを実行し、(ストレージ606またはその他の場所ではなく)1つもしくは複数の内部レジスタもしくは内部キャッシュ内の、またはメモリ604内のデータ上でのみ機能する。1つまたは複数のメモリ・バス(それらはそれぞれ、アドレス・バスおよびデータ・バスを含むことができる)は、プロセッサ602をメモリ604に結合することができる。バス612は、以降で記述されているような1つまたは複数のメモリ・バスを含むことができる。特定の実施形態においては、1つまたは複数のメモリ管理ユニット(MMU)が、プロセッサ602とメモリ604との間に常駐し、プロセッサ602によって要求されるメモリ604へのアクセスを容易にする。特定の実施形態においては、メモリ604は、ランダム・アクセス・メモリ(RAM)を含む。このRAMは、適切な場合には、揮発性メモリであることが可能である。適切な場合には、このRAMは、ダイナミックRAM(DRAM)またはスタティックRAM(SRAM)であることが可能である。その上、適切な場合には、このRAMは、シングルポートRAMまたはマルチポートRAMであることが可能である。本開示は、任意の適切なRAMを想定している。メモリ604は、適切な場合には、1つまたは複数のメモリ604を含むことができる。本開示は、特定のメモリについて記述し、示しているが、本開示は、任意の適切なメモリを想定している。
特定の実施形態においては、ストレージ606は、データまたは命令のためのマス・ストレージを含む。限定ではなく、例として、ストレージ606は、ハード・ディスク・ドライブ(HDD)、フロッピー(登録商標)・ディスク・ドライブ、フラッシュ・メモリ、光ディスク、光磁気ディスク、磁気テープ、またはユニバーサル・シリアル・バス(USB)ドライブ、またはこれらのうちの複数の組合せを含むことができる。ストレージ606は、適切な場合には、取り外し可能なまたは取り外し不能な(すなわち、固定された)媒体を含むことができる。ストレージ606は、適切な場合には、コンピュータ・システム600の内部または外部に存在することが可能である。特定の実施形態においては、ストレージ606は、不揮発性のソリッドステート・メモリである。特定の実施形態においては、ストレージ606は、読み取り専用メモリ(ROM)を含む。適切な場合には、このROMは、マスクプログラムROM、プログラマブルROM(PROM)、消去可能PROM(EPROM)、電気的消去可能PROM(EEPROM)、電気的書替え可能ROM(EAROM)、またはフラッシュ・メモリ、またはこれらのうちの複数の組合せであることが可能である。本開示は、任意の適切な物理的な形態を取るマス・ストレージ606を想定している。ストレージ606は、適切な場合には、プロセッサ602とストレージ606との間における通信を容易にする1つまたは複数のストレージ・コントロール・ユニットを含むことができる。適切な場合には、ストレージ606は、1つまたは複数のストレージ606を含むことができる。本開示は、特定のストレージについて記述し、示しているが、本開示は、任意の適切なストレージを想定している。
特定の実施形態においては、I/Oインタフェース608は、コンピュータ・システム600と1つまたは複数のI/Oデバイスとの間における通信のための1つまたは複数のインタフェースを提供するハードウェア、ソフトウェア、またはその両方を含む。コンピュータ・システム600は、適切な場合には、これらのI/Oデバイスのうちの1つまたは複数を含むことができる。これらのI/Oデバイスのうちの1つまたは複数は、人とコンピュータ・システム600との間における通信を可能にすることができる。限定ではなく、例として、I/Oデバイスは、キーボード、キーパッド、マイクロフォン、モニタ、マウス、プリンタ、スキャナ、スピーカ、スチル・カメラ、スタイラス、タブレット、タッチ・スクリーン、トラックボール、ビデオ・カメラ、別の適切なI/Oデバイス、またはこれらのうちの複数の組合せを含むことができる。I/Oデバイスは、1つまたは複数のセンサを含むことができる。本開示は、任意の適切なI/Oデバイス、およびそれらのI/Oデバイスのための任意の適切なI/Oインタフェース608を想定している。適切な場合には、I/Oインタフェース608は、プロセッサ602がこれらのI/Oデバイスのうちの1つまたは複数を駆動することを可能にする1つまたは複数のデバイス・ドライバまたはソフトウェア・ドライバを含むことができる。I/Oインタフェース608は、適切な場合には、1つまたは複数のI/Oインタフェース608を含むことができる。本開示は、特定のI/Oインタフェースについて記述し、示しているが、本開示は、任意の適切なI/Oインタフェースを想定している。
特定の実施形態においては、通信インタフェース610は、コンピュータ・システム600と、1つもしくは複数のその他のコンピュータ・システム600または1つもしくは複数のネットワークとの間における通信(たとえば、パケットベースの通信など)のための1つまたは複数のインタフェースを提供するハードウェア、ソフトウェア、またはその両方を含む。限定ではなく、例として、通信インタフェース610は、イーサネット(登録商標)もしくはその他の有線ベースのネットワークと通信するためのネットワーク・インタフェース・コントローラ(NIC)もしくはネットワーク・アダプタ、またはWI−FIネットワークなどのワイヤレス・ネットワークと通信するためのワイヤレスNIC(WNIC)もしくはワイヤレス・アダプタを含むことができる。本開示は、任意の適切なネットワーク、およびそのネットワークのための任意の適切な通信インタフェース610を想定している。限定ではなく、例として、コンピュータ・システム600は、アド・ホック・ネットワーク、パーソナル・エリア・ネットワーク(PAN)、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)、メトロポリタン・エリア・ネットワーク(MAN)、またはインターネットの1つまたは複数の部分、またはこれらのうちの複数の組合せと通信することができる。これらのネットワークのうちの1つまたは複数の1つまたは複数の部分は、有線またはワイヤレスであることが可能である。例として、コンピュータ・システム600は、ワイヤレスPAN(WPAN)(たとえば、ブルートゥースWPANなど)、WI−FIネットワーク、WI−MAXネットワーク、セルラー電話ネットワーク(たとえば、グローバル・システム・フォー・モバイル・コミュニケーションズ(GSM(登録商標))ネットワークなど)、またはその他の適切なワイヤレス・ネットワーク、またはこれらのうちの複数の組合せと通信することができる。コンピュータ・システム600は、適切な場合には、これらのネットワークのうちの任意のネットワークのための任意の適切な通信インタフェース610を含むことができる。通信インタフェース610は、適切な場合には、1つまたは複数の通信インタフェース610を含むことができる。本開示は、特定の通信インタフェースについて記述し、示しているが、本開示は、任意の適切な通信インタフェースを想定している。
特定の実施形態においては、バス612は、コンピュータ・システム600のコンポーネント同士を互いに結合するハードウェア、ソフトウェア、またはその両方を含む。限定ではなく、例として、バス612は、アクセラレイティッド・グラフィックス・ポート(AGP)もしくはその他のグラフィックス・バス、エンハンスト・インダストリー・スタンダード・アーキテクチャ(EISA)バス、フロントサイド・バス(FSB)、ハイパートランスポート(HT)インターコネクト、インダストリー・スタンダード・アーキテクチャ(ISA)バス、インフィニバンド・インターコネクト、ローピンカウント(LPC)バス、メモリ・バス、マイクロ・チャネル・アーキテクチャ(MCA)バス、ペリフェラル・コンポーネント・インターコネクト(PCI)バス、PCIエクスプレス(PCIe)バス、シリアル・アドバンスト・テクノロジー・アタッチメント(SATA)バス、ビデオ・エレクトロニクス・スタンダーズ・アソシエーション・ローカル(VLB)バス、または別の適切なバス、またはこれらのうちの複数の組合せを含むことができる。バス612は、適切な場合には、1つまたは複数のバス612を含むことができる。本開示は、特定のバスについて記述し、示しているが、本開示は、任意の適切なバスまたはインターコネクトを想定している。
本明細書においては、1つまたは複数の非一時的なコンピュータ可読記憶媒体は、適切な場合には、1つもしくは複数の半導体ベースのもしくはその他の集積回路(IC)(たとえば、フィールドプログラマブル・ゲート・アレイ(FPGA)もしくは特定用途向け集積回路(ASIC)など)、ハード・ディスク・ドライブ(HDD)、ハイブリッド・ハード・ドライブ(HHD)、光ディスク、光ディスク・ドライブ(ODD)、光磁気ディスク、光磁気ドライブ、フロッピー(登録商標)・ディスケット、フロッピー(登録商標)・ディスク・ドライブ(FDD)、磁気テープ、ソリッドステート・ドライブ(SSD)、RAMドライブ、セキュア・デジタル・カードもしくはドライブ、その他の任意の適切な非一時的なコンピュータ可読記憶媒体、またはこれらのうちの複数の組合せを含むことができる。非一時的なコンピュータ可読記憶媒体は、適切な場合には、揮発性、不揮発性、または揮発性と不揮発性の組合せであることが可能である。
本明細書においては、「または(もしくは)」は、包含的であり、排他的ではない(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。したがって、本明細書においては、「AまたはB」は、「A、B、またはその両方」を意味する(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。その上、「および(ならびに)」は、包括的および個別的の両方である(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。したがって、本明細書においては、「AおよびB」は、「まとめて、または個別に、AおよびB」を意味する(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。
本明細書では、「番組」は、任意の適切なメディア・コンテンツを含む。例えば、「番組」は、TV番組、映画、ビデオ・ゲーム、または他の任意のメディア・コンテンツを指すことができる。本明細書では、簡潔にするために「番組」が利用されるが、TV番組だけを指すことは意図されていない。
本開示の範囲は、当技術分野における標準的な技術者が理解するであろう、本明細書において記述されているまたは示されている例示的な実施形態に対するすべての変更、置換、変形、改変、および修正を包含する。本開示の範囲は、本明細書において記述されているまたは示されている例示的な実施形態に限定されない。その上、本開示は、本明細書におけるそれぞれの実施形態を、特定のコンポーネント、要素、機能、オペレーション、または工程を含むものとして記述し、示しているが、これらの実施形態のいずれも、当技術分野における標準的な技術者が理解するであろう、本明細書の任意の箇所において記述されているまたは示されているコンポーネント、要素、機能、オペレーション、または工程のうちの任意のものの任意の組合せまたは順列を含むことができる。さらに、特定の機能を実行するように適合されている、実行するようにアレンジされている、実行することができる、実行するように構成されている、実行することを可能にされている、実行するように機能できる、または実行するように機能する装置もしくはシステム、または装置もしくはシステムのコンポーネントへの添付の特許請求の範囲における言及は、その装置、システム、コンポーネント、またはその特定の機能が、アクティブ化されているか否か、オンにされているか否か、またはロック解除されているか否かを問わず、その装置、システム、またはコンポーネントが、そうするように適合されている、そうするようにアレンジされている、そうすることができる、そうするように構成されている、そうすることを可能にされている、そうするように機能できる、またはそうするように機能する限り、その装置、システム、コンポーネントを包含する。