図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に対応するコンセプトプロフィール・ページは、たとえば、選択可能な「チェックイン」アイコン(たとえば、クリック可能な「チェックイン」アイコンなど)、または選択可能な「お気に入りを追加」アイコンを含むことができる。同様に、ユーザがこれらのアイコンをクリックした後に、ソーシャルネットワーキング・システム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を形成することを想定している。
特定の実施形態において、ソーシャルネットワーキング・システム160は、さまざまなソーシャルグラフ・エンティティの互いのソーシャルグラフ・アフィニティ(social-graph affinity)(本明細書においては、「アフィニティ」と称する場合がある)を決定するようにしてもよい。アフィニティは、ユーザ、コンセプト、コンテンツ、アクション、広告、オンライン・ソーシャル・ネットワークと関連付けられた他のオブジェクト、またはこれらの任意適当な組み合わせ等、オンライン・ソーシャル・ネットワークと関連付けられた特定のオブジェクト間の関係または関心度の強度を表していてもよい。また、アフィニティは、サードパーティ・システム170等の適当なシステムと関連付けられたオブジェクトに関して決定されるようになっていてもよい。各ユーザ、主題、またはコンテンツの種類について、ソーシャルグラフ・エンティティの全体アフィニティが確立されるようになっていてもよい。全体アフィニティは、ソーシャルグラフ・エンティティと関連付けられたアクションまたは関係の継続監視に基づいて変化する場合がある。本開示は、特定の様態での特定のアフィニティの決定について記載するが、任意適当な態様での任意適当なアフィニティの決定を考慮している。
特定の実施形態において、ソーシャルネットワーキング・システム160は、アフィニティ係数(本明細書においては、「係数」と称する場合がある)を用いて、ソーシャルグラフ・アフィニティを測定または定量化するようにしてもよい。係数は、オンライン・ソーシャル・ネットワークと関連付けられた特定のオブジェクト間の関係の強度を表していてもよいし、定量化していてもよい。また、係数は、特定のアクションに対するユーザの関心に基づいてユーザが該アクションを実行する予測確率を評価する確率または機能を表していてもよい。このように、ユーザの将来的なアクションは、ユーザの先行アクションに基づいて予測されるようになっていてもよく、係数は、ユーザのアクションの履歴に基づいて、少なくとも部分的に計算されるようになっていてもよい。係数の使用により、オンライン・ソーシャル・ネットワーク内または外側の任意数のアクションを予測するようにしてもよい。限定ではなく一例として、これらのアクションは、メッセージの送信、コンテンツの投稿、もしくはコンテンツへのコメント等のさまざまな種類のコミュニケーション、プロフィール・ページ、メディア、もしくは他の適当なコンテンツに対するアクセスもしくは閲覧等のさまざまな種類の観察アクション、同じグループへの所属、同じ写真でのタグ付け、同じ場所でのチェックイン、もしくは同じイベントへの出席等の2つ以上のソーシャルグラフ・エンティティに関するさまざまな種類の一致情報、または他の適当なアクションを含んでいてもよい。本開示は、特定の様態でのアフィニティの測定について記載するが、任意適当な態様でのアフィニティの測定を考慮している。
特定の実施形態において、ソーシャルネットワーキング・システム160は、多様な因子を用いて係数を計算するようにしてもよい。これらの因子としては、たとえばユーザ・アクション、オブジェクト間の関係の種類、場所情報、他の適当な因子、またはこれらの任意の組み合わせが挙げられる。特定の実施形態において、係数の計算に際しては、異なる因子が異なって重み付けされていてもよい。各因子の重みは、固定されていてもよいし、たとえばユーザ、関係の種類、アクションの種類、ユーザの場所等に応じて変化するものであってもよい。重みに応じた因子の等級の組み合わせによって、ユーザの全体係数を決定するようにしてもよい。限定ではなく一例として、特定のユーザ・アクションに等級および重みの両方が割り当てられる一方、特定のユーザ・アクションと関連付けられた関係には、等級および相関重みが割り当てられていてもよい(たとえば、これにより、重みは合計で100%になる)。特定のオブジェクトに対するユーザの係数を計算するため、ユーザのアクションに割り当てられた等級は、たとえば全体係数の60%を構成していてもよく、一方、ユーザとオブジェクトとの間の関係は、全体係数の40%を構成していてもよい。特定の実施形態において、ソーシャルネットワーキング・システム160は、係数の計算に用いられるさまざまな因子の重みの決定に際して、たとえば情報アクセスからの時間、崩壊因子、アクセス頻度、情報との関係もしくは情報アクセスのあったオブジェクトとの関係、オブジェクトにつながっているソーシャルグラフ・エンティティとの関係、ユーザ・アクションの短期もしくは長期平均、ユーザ・フィードバック、他の適当な変数、またはこれらの任意の組み合わせ等の多様な変数を考慮するようにしてもよい。限定ではなく一例として、係数は、該係数の計算に際して、より最近のアクションがより関連するように、特定のアクションにより提供された信号の強度を時間とともに崩壊させる崩壊因子を含んでいてもよい。等級および重みは、係数の基準となるアクションの継続追跡に基づいて、継続的に更新されるようになっていてもよい。任意の種類のプロセスまたはアルゴリズムの採用により、各因子の等級および因子に割り当てられる重みの割り当て、組み合わせ、平均等を行うようにしてもよい。特定の実施形態において、ソーシャルネットワーキング・システム160は、履歴アクションおよび過去のユーザ応答またはさまざまなオプションへの曝露および応答の測定によりユーザから預かったデータによるトレーニングを受けた機械学習アルゴリズムを用いることにより、係数を決定するようにしてもよい。本開示は、特定の様態での係数の計算について記載するが、任意適当な態様での係数の計算を考慮している。
特定の実施形態において、ソーシャルネットワーキング・システム160は、ユーザのアクションに基づいて係数を計算するようにしてもよい。ソーシャルネットワーキング・システム160は、オンライン・ソーシャル・ネットワーク、サードパーティ・システム170、他の適当なシステム、またはこれらの任意の組み合わせにおけるこのようなアクションを監視するようにしてもよい。また、任意適当な種類のユーザ・アクションが追跡または監視されるようになっていてもよい。一般的なユーザ・アクションとしては、プロフィール・ページの閲覧、コンテンツの作成または投稿、コンテンツとの相互作用、画像のタグ付けまたは画像中でのタグ付け、グループへの加入、イベント出席者の一覧化および確認、場所でのチェックイン、特定ページのリンク付け、ページの作成、およびソーシャル・アクションを促進する他のタスクの実行が挙げられる。特定の実施形態において、ソーシャルネットワーキング・システム160は、特定種類のコンテンツを伴うユーザのアクションに基づいて係数を計算するようにしてもよい。コンテンツは、オンライン・ソーシャル・ネットワーク、サードパーティ・システム170、または別の適当なシステムと関連付けられていてもよい。コンテンツとしては、ユーザ、プロフィール・ページ、投稿、ニュース記事、ヘッドライン、インスタント・メッセージ、チャット・ルームでの会話、電子メール、広告、写真、映像、音楽、他の適当なオブジェクト、またはこれらの任意の組み合わせが挙げられる。ソーシャルネットワーキング・システム160は、ユーザのアクションを解析して、アクションのうちの1つまたは複数が主題、コンテンツ、他のユーザ等に対するアフィニティを示すか否かを判定するようにしてもよい。限定ではなく一例として、「コーヒー」またはその異形に関するコンテンツをユーザが頻繁に投稿している場合、ソーシャルネットワーキング・システム160は、コンセプト「コーヒー」に関してユーザが高い係数を有するものと判定するようにしてもよい。計算された全体係数に影響を及ぼし得る特定のアクションまたは特定種類のアクションには、他のアクションよりも高い重みおよび等級または高い重みもしくは等級が割り当てられていてもよい。限定ではなく一例として、第1のユーザが第2のユーザに電子メールを送る場合、該アクションの重みまたは等級は、第1のユーザが第2のユーザのユーザプロフィール・ページを単に閲覧する場合より高くてもよい。
特定の実施形態において、ソーシャルネットワーキング・システム160は、特定のオブジェクト間の関係の種類に基づいて係数を計算するようにしてもよい。ソーシャルネットワーキング・システム160は、ソーシャルグラフ200を参照することにより、係数の計算に際して、特定のユーザ・ノード202とコンセプト・ノード204とをつなぐエッジ206の数および種類または数もしくは種類を解析するようにしてもよい。限定ではなく一例として、(2人のユーザが結婚していることを表す)配偶者型のエッジでつながったユーザ・ノード202には、友達型のエッジでつながったユーザ・ノード202よりも高い係数が割り当てられていてもよい。言い換えると、特定ユーザのアクションおよび関係に割り当てられた重みに応じて、ユーザの友達に関するコンテンツよりもユーザの配偶者に関するコンテンツに対して高くなるように、全体アフィニティが決定されるようになっていてもよい。特定の実施形態において、別のオブジェクトとのユーザの関係は、該オブジェクトの係数の計算に関して、ユーザのアクションの重みおよび等級または重みもしくは等級に影響を及ぼしていてもよい。限定ではなく一例として、ユーザが第1の写真でタグ付けされているものの、単に第2の写真が好みである場合、ソーシャルネットワーキング・システム160は、第2の写真よりも第1の写真に関してユーザが高い係数を有するものと判定するようにしてもよい。コンテンツとのタグ付け型関係(tagged-in-type relationship)を有する場合には、コンテンツとの好み型関係(like-type relationship)を有する場合よりも、高い重みおよび等級または重みもしくは等級が割り当てられる可能性があるためである。特定の実施形態において、ソーシャルネットワーキング・システム160は、特定のオブジェクトとの、1人または複数の第2のユーザの関係に基づいて、第1のユーザの係数を計算するようにしてもよい。言い換えると、オブジェクトとの他のユーザのつながりおよび係数は、該オブジェクトに対する第1のユーザの係数に影響を及ぼし得る。限定ではなく一例として、第1のユーザが1人もしくは複数の第2のユーザとつながっている場合または1人もしくは複数の第2のユーザに関して高い係数を有する場合であって、これら第2のユーザが特定のオブジェクトとつながっている場合または特定のオブジェクトに関して高い係数を有する場合、ソーシャルネットワーキング・システム160は、該特定のオブジェクトに関して第1のユーザも相対的に高い係数を有するはずであるものと判定するようにしてもよい。特定の実施形態において、係数は、特定のオブジェクト間の分離度に基づいていてもよい。低い係数は、ソーシャルグラフ200において第1のユーザと間接的につながったユーザのコンテンツ・オブジェクトの関心を第1のユーザが共有する可能性の低下を表していてもよい。限定ではなく一例として、ソーシャルグラフ200においてより近い(すなわち、分離度がより低い)ソーシャルグラフ・エンティティは、ソーシャルグラフ200において遠く離れたエンティティよりも高い係数を有していてもよい。
特定の実施形態において、ソーシャルネットワーキング・システム160は、場所情報に基づいて係数を計算するようにしてもよい。地理的に互いに近いオブジェクトは、離れたオブジェクトよりも互いに関連性または関心が高いと考えられる。特定の実施形態において、特定のオブジェクトに対するユーザの係数は、ユーザと関連付けられた現在の場所(または、ユーザのクライアント・システム130の場所)に対するオブジェクトの場所の近接性に基づいていてもよい。第1のユーザは、該第1のユーザに近い他のユーザまたはコンセプトに、より関心を持っていてもよい。限定ではなく一例として、ユーザが空港から1.6キロメートル(1マイル)、ガソリンスタンドから3.2キロメートル(2マイル)である場合、ソーシャルネットワーキング・システム160は、ユーザに対する空港の近接性に基づいて、ガソリンスタンドよりも空港に関してユーザが高い係数を有するものと判定するようにしてもよい。
特定の実施形態において、ソーシャルネットワーキング・システム160は、係数情報に基づいて、ユーザに関する特定のアクションを実行するようにしてもよい。係数の使用により、特定のアクションに対するユーザの関心に基づいて、ユーザが該アクションを実行するか否かを予測するようにしてもよい。広告、検索結果、ニュース記事、メディア、メッセージ、通知、または他の適当なオブジェクト等、任意の種類のオブジェクトを生成またはユーザに提示する場合に、係数が用いられるようになっていてもよい。また、係数の利用により、このようなオブジェクトを必要に応じて順位付けおよび順序付けするようにしてもよい。このように、ソーシャルネットワーキング・システム160は、ユーザの関心および現在の状況に関する情報を提供して、ユーザがこのような関心情報を見つけられる可能性を高めるようにしてもよい。特定の実施形態において、ソーシャルネットワーキング・システム160は、係数情報に基づいてコンテンツを生成するようにしてもよい。コンテンツ・オブジェクトは、ユーザ固有の係数に基づいて提供または選択されるようになっていてもよい。限定ではなく一例として、係数の使用により、ユーザに対するメディアを生成するようにしてもよく、ユーザには、該ユーザが高い全体係数を有するメディア・オブジェクトが提示されるようになっていてもよい。限定ではなく別の例として、係数の使用により、ユーザに対する広告を生成するようにしてもよく、ユーザには、該ユーザが高い全体係数を有する広告オブジェクトが提示されるようになっていてもよい。特定の実施形態において、ソーシャルネットワーキング・システム160は、係数情報に基づいて検索結果を生成するようにしてもよい。特定のユーザに対する検索結果は、クエリを行っているユーザに対する検索結果と関連付けられた係数に基づいてスコア付けまたは順位付けがなされていてもよい。限定ではなく一例として、より係数が高いオブジェクトに対応する検索結果は、より係数が低いオブジェクトに対応する結果よりも検索結果ページ上で高く順位付けされていてもよい。
特定の実施形態において、ソーシャルネットワーキング・システム160は、特定のシステムまたはプロセスからの係数に関する要求に応答して、係数を計算するようにしてもよい。所与の状況においてユーザが取り得る(または、話題となり得る)有力なアクションを予測するため、ユーザに関して計算された係数を任意のプロセスが要求するようにしてもよい。また、要求には、係数の計算に用いられるさまざまな因子に使用する重み集合を含んでいてもよい。この要求は、オンライン・ソーシャル・ネットワーク上で動作するプロセス、(たとえば、API(Application Program Interface : アプリケーションプログラム・インターフェース)等の通信チャネルを介した)サードパーティ・システム170、または別の適当なシステムに由来していてもよい。要求に応答して、ソーシャルネットワーキング・システム160は、係数を計算するようにしてもよい(または、過去に計算されて格納されている場合は、係数情報にアクセスするようにしてもよい)。特定の実施形態において、ソーシャルネットワーキング・システム160は、特定のプロセスに関するアフィニティを測定するようにしてもよい。特定のオブジェクトまたはオブジェクト集合に関して、異なるプロセス(オンライン・ソーシャル・ネットワークの内部および外部の両方)が係数を要求するようにしてもよい。ソーシャルネットワーキング・システム160は、一定のアフィニティを要求した特定のプロセスに関連する該一定のアフィニティを提供するようにしてもよい。このように、各プロセスは、一定のアフィニティをプロセスが使用する異なるコンテキストに合わせて調整された該一定のアフィニティを受け取る。
ソーシャルグラフ・アフィニティおよびアフィニティ係数に関連して、特定の実施形態では、2006年8月11日に出願された米国特許出願公開第11/503093号明細書、2010年12月22日に出願された米国特許出願公開第12/977027号明細書、2010年12月23日に出願された米国特許出願公開第12/978265号明細書、および2012年10月1日に出願された米国特許出願公開第13/632869号明細書に開示の1つまたは複数のシステム、構成要素、要素、機能、方法、動作、またはステップを利用するようにしてもよく、それぞれを援用する。
特定の実施形態においては、オンライン・ソーシャル・ネットワークのコンテンツ・オブジェクトのうちの1つまたは複数がプライバシー設定と関連付けられていてもよい。オブジェクトのプライバシー設定(または、「アクセス設定」)は、たとえばオブジェクトとの関連、認証サーバ上の指標、別の適当な様態、またはこれらの任意の組み合わせ等、任意適当に格納されていてもよい。オブジェクトのプライバシー設定は、オンライン・ソーシャル・ネットワークを用いてオブジェクト(または、オブジェクトと関連付けられた特定の情報)にアクセス(たとえば、閲覧または共有)可能な方法を規定していてもよい。オブジェクトのプライバシー設定によって特定のユーザが該オブジェクトにアクセス可能な場合、このオブジェクトは、該ユーザに対して「視認可能」と記述されるようになっていてもよい。限定ではなく一例として、オンライン・ソーシャル・ネットワークのユーザは、ユーザプロフィール・ページ上の職歴情報にアクセス可能なユーザ集合を識別するユーザプロフィール・ページのプライバシー設定を規定することにより、他のユーザが該情報にアクセスできないようにしてもよい。特定の実施形態において、プライバシー設定は、オブジェクトと関連付けられた特定の情報へのアクセスを許可すべきでないユーザの「ブロックリスト」を規定していてもよい。言い換えると、ブロックリストは、オブジェクトを視認できない1人または複数のユーザまたはエンティティを規定していてもよい。限定ではなく一例として、ユーザは、自身と関連付けられた写真アルバムにアクセスできないユーザ集合を規定することにより、これらのユーザが写真アルバムにアクセスできないようにしてもよい(一方、場合によっては、ユーザ集合外の特定のユーザが写真アルバムにアクセスできるようにしてもよい)。特定の実施形態においては、プライバシー設定が特定のソーシャルグラフ要素と関連付けられていてもよい。ノードまたはエッジ等のソーシャルグラフ要素のプライバシー設定は、オンライン・ソーシャル・ネットワークを用いてソーシャルグラフ要素、ソーシャルグラフ要素と関連付けられた情報、またはソーシャルグラフ要素と関連付けられたコンテンツ・オブジェクトにアクセス可能な方法を規定していてもよい。限定ではなく一例として、特定の写真に対応する特定のコンセプト・ノード204は、写真でタグ付けされたユーザおよびその友達のみが写真にアクセス可能であることを規定したプライバシー設定を有していてもよい。特定の実施形態においては、プライバシー設定により、ソーシャルネットワーキング・システム160によるアクションの記録または他のシステム(たとえば、サードパーティ・システム170)とのアクションの共有に対して、ユーザがオプトインまたはオプトアウト可能であってもよい。特定の実施形態において、オブジェクトと関連付けられたプライバシー設定は、任意適当な粒度(granularity)のアクセス許可またはアクセス拒否を規定していてもよい。限定ではなく一例として、アクセスまたはアクセス拒否は、特定のユーザ(たとえば、自分のみ、ルームメイトのみ、および上司のみ)、特定の分離度の範囲内のユーザ(たとえば、友達または友達の友達)、ユーザ・グループ(たとえば、ゲーミングクラブ、家族)、ユーザ・ネットワーク(たとえば、特定の雇用主の従業員、特定の大学の学生または卒業生)、すべてのユーザ(「公開」)、ゼロ・ユーザ(「プライベート」)、サードパーティ・システム170のユーザ、特定のアプリケーション(たとえば、サードパーティ・アプリケーション、外部ウェブサイト)、他の適当なユーザもしくはエンティティ、またはこれらの任意の組み合わせに関して規定されていてもよい。本開示は、特定の様態での特定のプライバシー設定の使用について記載するが、任意適当な態様での任意適当なプライバシー設定の使用を考慮している。
特定の実施形態において、1つまたは複数のサーバ162は、プライバシー設定を実行する認証/プライバシー・サーバであってもよい。データ・ストア164に格納された特定のオブジェクトに対するユーザ(または、他のエンティティ)からの要求に応答して、ソーシャルネットワーキング・システム160は、該オブジェクトに関して、要求をデータ・ストア164に送信するようにしてもよい。この要求は、該要求と関連付けられたユーザを識別していてもよく、オブジェクトと関連付けられたプライバシー設定に基づいてオブジェクトへのアクセスの権限がユーザに与えられているものと認証サーバが判定した場合に、該ユーザ(または、ユーザのクライアント・システム130)にのみ送信されるようになっていてもよい。要求しているユーザがオブジェクトへのアクセスの権限を与えられていない場合、認証サーバは、要求されたオブジェクトがデータ・ストア164から読み出されないようにしてもよいし、または、要求されたオブジェクトがユーザに送信されないようにしてもよい。検索クエリのコンテキストにおいては、クエリを行っているユーザがオブジェクトへのアクセスの権限を与えられている場合にのみ、オブジェクトが検索結果として生成されるようになっていてもよい。言い換えると、オブジェクトは、クエリを行っているユーザが視認できる視認性を有している必要がある。オブジェクトは、ユーザが視認できない視認性を有する場合、検索結果から除外されるようになっていてもよい。本開示は、特定の様態でのプライバシー設定の実行について記載するが、任意適当な態様でのプライバシー設定の実行を考慮している。
本明細書に記載の通り、特定の実施形態において、ソーシャルネットワーキング・システムは、該ソーシャルネットワーキング・システムに投稿する気をターゲット・ユーザに引き起こさせるようにしてもよい。ソーシャルネットワーキング・システムは、ターゲット・ユーザ側での投稿意図の推測によって、投稿する気をターゲット・ユーザに起こさせるようにしてもよい。特定の実施形態において、推測された意図は、ターゲット・ユーザの実際の意図であってもよい。たとえば、ソーシャルネットワーキング・システムは、ターゲット・ユーザが該ソーシャルネットワーキング・システムに投稿したい旨を推測するようにしてもよく、ターゲット・ユーザは実際に、ソーシャルネットワーキング・システムに投稿したいと思っていてもよい。あるいは、特定の実施形態において、推測された意図は、ターゲット・ユーザの実際の意図でなくてもよい。たとえば、ソーシャルネットワーキング・システムは、ターゲット・ユーザが該ソーシャルネットワーキング・システムに投稿したい旨を推測するようにしてもよいが、ターゲット・ユーザは実際には、ソーシャルネットワーキング・システムに投稿したいと思っていなくてもよい。
特定の実施形態において、推測された意図は、ソーシャルネットワーキング・システムにより格納された1つもしくは複数の情報項目またはソーシャルネットワーキング・システムが利用可能な1つもしくは複数の情報項目に基づいていてもよい。ソーシャルネットワーキング・システムにより格納された情報項目の例としては、ターゲット・ユーザと関連付けられたソーシャルグラフ情報が挙げられる。ソーシャルネットワーキング・システムが利用可能な情報項目の例としては、ソーシャルネットワーキング・システムによるアクセスが可能であるとともに、1つもしくは複数のクライアント・システム、1つもしくは複数のサードパーティ・システム、1つもしくは複数のネットワーク、またはこれらの任意の組み合わせに格納された情報項目が挙げられる。特定の実施形態においては、ソーシャルネットワーキング・システムに情報項目が格納されるとともに、ソーシャルネットワーキング・システムが情報項目を利用可能であってもよい。特定の実施形態において、推測された意図は、ソーシャルネットワーキング・システムに格納された幾つかの情報項目および1つまたは複数のサードパーティ・システムに格納されたその他いくつかの情報項目に基づいていてもよい。特定の実施形態において、1つまたは複数のサードパーティ・システムに格納されたその他の情報項目のうちの1つまたは複数は、ソーシャルネットワーキング・システムにも格納されていてもよい。あるいは、特定の実施形態において、1つまたは複数のサードパーティ・システムに格納されたその他の情報項目のうちの1つまたは複数は、ソーシャルネットワーキング・システムには格納されていなくてもよい。
たとえば、特定の実施形態において、意図を推測可能な情報項目としては、ソーシャルグラフ情報(たとえば、ノードおよびエッジ、アフィニティ、ならびに分離度)、コンテンツ・オブジェクト、投稿、テキスト・データ、場所情報、メディア、ユーザプロフィール情報、時間的情報、およびプライバシー設定が挙げられるが、これらに限定されない。特定の実施形態において、情報項目のうちの1つまたは複数は、複数のカテゴリに分類されていてもよい。たとえば、情報項目のうちの1つまたは複数は、ソーシャルグラフ情報、投稿、およびメディアとして分類されていてもよい。あるいは、特定の実施形態において、情報項目のうちの1つまたは複数は、1つのカテゴリにだけ分類されていてもよい。
特定の実施形態において、推測された意図は、ソーシャルネットワークの1人または複数のユーザの1つまたは複数の視点に基づいていてもよい。たとえば、推測された意図は、ソーシャルネットワークの1人または複数のユーザに基づく仮想ユーザの視点に基づいていてもよい。特定の実施形態において、仮想ユーザは、ソーシャルネットワークのあらゆるユーザに基づいていてもよい。たとえば、限定ではないが、ソーシャルネットワークのあらゆるユーザに基づく仮想ユーザは、大晦日もしくは元日またはこれらに限定されない特定日前後の投稿意図を有するものと推測されるようになっていてもよい。限定ではなく別の例として、ソーシャルネットワークのあらゆるユーザに基づく仮想ユーザは、国家元首の葬儀もしくは世界的規模の自然災害またはこれらに限定されない特定の現行イベントに関する投稿意図を有するものと推測されるようになっていてもよい。
別の例として、特定の実施形態においては、推測された意図は、ソーシャルネットワークのユーザ部分集合に基づく仮想ユーザの視点に基づいていてもよい。特定の実施形態において、ユーザ部分集合は、1つもしくは複数の数値的限界、1つもしくは複数の時間的限界、1つもしくは複数の場所に基づく限界、1つもしくは複数の分離度、ターゲット・ユーザとユーザ部分集合を構成するユーザとの間の1つもしくは複数の所属係数、ターゲット・ユーザとユーザ部分集合を構成するユーザとの間の1つもしくは複数の共通点、またはこれらの任意の組み合わせ等の任意適当な手段により決定されるようになっていてもよいが、これらに限定されない。特定の実施形態において、共通点としては、場所、年齢、宗教もしくは信仰、教育、所属政党もしくは政治信念、または共通の関心(たとえば、食物、書籍、映画、または音楽の関心)等、ターゲット・ユーザとユーザ部分集合を構成するユーザとの間で共有される任意の特徴または特性が挙げられるが、これらに限定されない。たとえば、限定ではないが、ターゲット・ユーザと共通の関心を共有し、ターゲット・ユーザとの分離度が2以内であり、この1時間以内に共通の関心についてソーシャルネットワークに投稿を行ったソーシャルネットワーキング・システムの100人のユーザに基づく仮想ユーザは、共通の関心に関する投稿意図を有するものと推測されるようになっていてもよい。限定ではなく別の例として、ターゲット・ユーザとの年齢差が3歳以内であり、ターゲット・ユーザとの分離度が1以内であり、ターゲット・ユーザの場所から現時点で182.88メートル(200ヤード)以内である25人のユーザに基づく仮想ユーザは、上記場所または別の近隣場所に関する投稿意図を有するものと推測されるようになっていてもよい。
別の例として、特定の実施形態においては、推測された意図は、ターゲット・ユーザに基づく仮想ユーザの視点に基づいていてもよい。たとえば、限定ではないが、ターゲット・ユーザに基づく仮想ユーザは、ターゲット・ユーザのライフ・イベント(たとえば、関係の開始または血縁者の誕生もしくは死去)の記念日での投稿意図を有するものと推測されるようになっていてもよい。限定ではなく別の例として、ターゲット・ユーザに基づく仮想ユーザは、ターゲット・ユーザのクライアント・システムで1つまたは複数の新たな情報項目(たとえば、ターゲット・ユーザのカメラ付電話によって最近撮影された写真またはターゲット・ユーザのパソコンで最近識別された歌曲)が検出された場合に投稿意図を有するものと推測されるようになっていてもよい。限定ではなく別の例として、ターゲット・ユーザに基づく仮想ユーザは、ターゲット・ユーザの現在の場所がターゲット・ユーザの過去の場所と大幅に異なる場合(たとえば、ターゲット・ユーザの現在の場所が、ターゲット・ユーザが3時間前にいた過去の場所から1,931.21キロメートル(1,200マイル)離れている場合)に投稿意図を有するものと推測されるようになっていてもよい。
特定の実施形態において、ソーシャルネットワーキング・システムは、投稿意図推測の元となった情報項目のうちの1つまたは複数に関連する1つまたは複数の情報項目をアセンブルする(assemble)ようにしてもよい。特定の実施形態において、アセンブル済みの情報項目のうちの1つまたは複数は、投稿意図推測の元となった情報項目のうちの1つであってもよい。たとえば、限定ではないが、ターゲット・ユーザのクライアント・システムで検出された新たな情報項目に基づいて、ターゲット・ユーザに基づく仮想ユーザに投稿の意図があったと推測された場合、これら新たな情報項目のうちの1つまたは複数は、アセンブル済みの情報項目のうちの1つまたは複数であってもよい。別の実施形態において、アセンブル済みの情報項目のうちの1つまたは複数は、投稿意図推測の元となった情報項目のうちの1つではなく、投稿意図推測の元となった情報項目のうちの1つまたは複数に対して任意の方法で関連していてもよいし、またはつながっていてもよい。たとえば、限定ではないが、ソーシャルネットワーキング・システムのすべてのユーザに基づく仮想ユーザが大晦日に投稿する意図があったと推測された場合、アセンブルされた情報のうちの1つまたは複数は、大晦日に言及するかまたは関連する、ターゲット・ユーザとの分離度が1以内のユーザの投稿であってもよい。
特定の実施形態において、アセンブル済みの情報項目のうちの1つまたは複数は、時間的なつながり、物理的なつながり、ソーシャルネットワーキングつながり、またはこれらの任意の組み合わせに基づいて、投稿意図推測の元となった情報項目のうちの1つまたは複数に関連していてもよいし、またはつながっていてもよい。たとえば、限定ではないが、ターゲット・ユーザの過去の場所と大幅に異なるターゲット・ユーザの現在の場所に基づいて、ターゲット・ユーザに基づく仮想ユーザに投稿の意図があったと推測された場合、アセンブル済みの情報項目のうちの1つは、現在の場所に関するものであってもよい(すなわち、投稿意図推測の元となった情報項目のうちの1つと、アセンブル済みの情報項目のうちの1つとの間には、物理的なつながりが存在する)。別の例として、ターゲット・ユーザに基づく仮想ユーザがライフ・イベントの記念日に投稿する意図があったと推測された場合、アセンブル済みの情報項目のうちの1つは、ライフ・イベントの日前後に撮られた映像であってもよい(すなわち、投稿意図推測の元となった情報項目のうちの1つと、アセンブル済みの情報項目のうちの1つとの間には、時間的なつながりが存在する)。別の例として、ターゲット・ユーザとの年齢差が3歳以内であり、ターゲット・ユーザとの分離度が1以内であり、ターゲット・ユーザの場所から現時点で182.88メートル(200ヤード)以内である25人のユーザに基づく仮想ユーザが上記場所または別の近隣場所に関して投稿する意図があったと推測された場合、アセンブル済みの情報項目のうちの1つは、上記25人のユーザのうちの1人の写真であってもよい(すなわち、投稿意図推測の元となった情報項目のうちの1つと、アセンブル済みの情報項目のうちの1つとの間には、ソーシャルネットワーキングつながりが存在する)。
特定の実施形態において、アセンブル済みの情報項目のうちの1つまたは複数は、情報項目のアセンブルが始まる前に存在していてもよい。たとえば、限定ではないが、情報項目のうちの1つまたは複数は、ターゲット・ユーザのクライアント・システムに格納された写真または映像であり、ソーシャルネットワーキング・システムが情報項目のアセンブルを開始した時点で、該ソーシャルネットワーキング・システムにより読み出されるようになっていてもよい。別の実施形態において、アセンブル済みの情報項目のうちの1つまたは複数は、情報項目のアセンブルが始まった後にのみ存在していてもよい。たとえば、アセンブル済みの情報項目のうちの1つまたは複数は、投稿意図推測の元となった情報項目のうちの1つまたは複数に関連する1つまたは複数の情報項目に基づいて生成されたものであってもよい。たとえば、限定ではないが、ターゲット・ユーザと共通の関心を共有し、ターゲット・ユーザとの分離度が2以内であり、この1時間以内に共通の関心についてソーシャルネットワークに投稿を行ったソーシャルネットワーキング・システムの100人のユーザに基づく仮想ユーザが共通の関心に関する投稿意図を有するものと推測された場合、アセンブル済みの情報項目のうちの1つまたは複数は、共通の関心についてユーザが答えるように生成された質問であってもよい(たとえば、共通の関心がピザである場合は、「ピザを最後に食べたのはいつか」、「ピザを最後に食べたのはどこか」、または「最後に一緒にピザを食べたのは誰か」をユーザに尋ねるアセンブル済みの情報項目が生成されていてもよい)。限定ではなく別の例として、ターゲット・ユーザに基づく仮想ユーザがターゲット・ユーザのライフ・イベントの記念日での投稿意図を有するものと推測された場合、アセンブル済みの情報項目のうちの1つまたは複数は、ユーザがライフ・イベントに関して投稿するように生成されたテキスト記述であってもよい(たとえば、ライフ・イベントが結婚5周年である場合は、「この5年間がどれほど幸せだったかをシェア」という、アセンブル済みの情報項目が生成されていてもよい)。
特定の実施形態において、アセンブル済みの情報項目のうちの1つまたは複数は、ターゲット・ユーザへのプロンプト(prompt)に表示可能な情報項目であってもよい。特定の実施形態において、アセンブル済みの情報項目のうちの1つまたは複数は、ターゲット・ユーザへのプロンプトに表示可能であるとともに、ターゲット・ユーザへのプロンプトに表示できない情報項目と関連付けられた情報項目であってもよい。たとえば、限定ではないが、ソーシャルネットワーキング・システムのすべてのユーザに基づく仮想ユーザがハロウィーンに投稿する意図があったと推測された場合、この推測の基礎となった情報項目のうちの1つまたは複数は、ソーシャルネットワーキング・システムのソーシャルグラフのハロウィーン・コンセプト・ノードであってもよく、アセンブル済みの情報項目のうちの1つまたは複数は、ハロウィーン・コスチュームの写真であってもよい(たとえば、ハロウィーン・コスチュームの写真は、ソーシャルネットワーキング・システムのソーシャルグラフのハロウィーン・コンセプト・ノードと関連付けられている)。
特定の実施形態において、アセンブル済みの情報項目のうちの1つまたは複数は、1つまたは複数のプライバシー設定と関連付けられていてもよい。特定の実施形態において、プライバシー設定のうちの1つまたは複数は、ターゲット・ユーザのソーシャルネットワーキング・プロフィールまたは別のユーザのソーシャルネットワーキング・プロフィールと関連付けられていてもよい。たとえば、ターゲット・ユーザによってソーシャルネットワーキング・システムに投稿され、他のユーザとともにターゲット・ユーザによる再投稿を可能とするターゲット・ユーザのソーシャルネットワーキング・プロフィールのプライバシー設定と関連付けられた写真が、アセンブル済みの情報項目のうちの1つであってもよい。限定ではなく別の例として、別のユーザによってソーシャルネットワーキング・システムに投稿され、ターゲット・ユーザによる再投稿を可能とする上記他のユーザのソーシャルネットワーキング・プロフィールのプライバシー設定と関連付けられたステータス・アップデートが、アセンブル済みの情報項目のうちの1つであってもよい。特定の実施形態において、プライバシー設定のうちの1つまたは複数は、1つもしくは複数のクライアント・システムまたは1つもしくは複数のサードパーティ・システムと関連付けられていてもよい。たとえば、限定ではないが、ターゲット・ユーザの電話に格納され、ソーシャルネットワーキング・システムへの送信を可能とするターゲット・ユーザの電話のプライバシー設定と関連付けられた映像が、アセンブル済みの情報項目のうちの1つであってもよい。限定ではなく別の例として、サードパーティのサーバに格納され、ソーシャルネットワーキング・システムへの送信を可能とするサードパーティのサーバのプライバシー設定と関連付けられたものが、アセンブル済みの情報項目のうちの1つであってもよい。
特定の実施形態において、ソーシャルネットワーキング・システムは、アセンブル済みの情報項目のうちの1つまたは複数を表示するとともに、ソーシャルネットワーキング・システムへの投稿をターゲット・ユーザに勧めるプロンプトをターゲット・ユーザに送信するようにしてもよい。特定の実施形態において、プロンプトは、ターゲット・ユーザのクライアント・システムのディスプレイ(たとえば、ターゲット・ユーザのパソコンのモニタまたはターゲット・ユーザの電話のタッチスクリーン)に表示可能であってもよい。特定の実施形態において、プロンプトは、ディスプレイの全体に表示可能であってもよいし、または、ディスプレイの一部にのみ表示可能であってもよい。特定の実施形態において、プロンプトは、ターゲット・ユーザのクライアント・システムの標準または特定用途向けユーザ・インターフェースの全体にまたはその一部としてディスプレイに表示可能であってもよい。たとえば、限定ではないが、プロンプトは、ターゲット・ユーザのパソコン上で動作するサードパーティ・アプリケーションによりパソコンのモニタに表示されたユーザ・インターフェースの一部またはポップアップとして、ディスプレイに表示可能であってもよい。別の例として、プロンプトは、ターゲット・ユーザの電話のタッチスクリーンに表示されたロック画面の一部またはポップアップとして、ディスプレイに表示可能であってもよい。
特定の実施形態において、プロンプトは、ソーシャルネットワーキング・システム用のユーザ・インターフェースの一部として表示可能であってもよい。たとえば、限定ではないが、プロンプトは、ソーシャルネットワーキング・システム用のユーザ・インターフェースの全部または一部に広がっていてもよい。特定の実施形態において、ユーザ・インターフェースは、プロンプトがユーザ・インターフェースの全部または一部に広がった場合に暗くなってもよいし、またはフェードしてもよい。特定の実施形態において、プロンプトは、ユーザ・インターフェースの一部に組み込まれていてもよい。たとえば、限定ではないが、プロンプトは、ソーシャルネットワーキング・システム用のユーザ・インターフェースの一部としてターゲット・ユーザに表示されるニュースフィードに組み込まれていてもよい。特定の実施形態において、プロンプトは、ニュースフィードの如何なる部分に組み込まれていてもよい(たとえば、プロンプトは、ニュースフィードの最上部に組み込まれていてもよいし、ニュースフィード内の如何なる場所に埋め込まれていてもよい)。
特定の実施形態において、プロンプトは、プロンプトに表示されたアセンブル済みの情報項目の構成をターゲット・ユーザが変更し得るように動作可能なコンポーザ・ウィンドウを含んでいてもよい。たとえば、限定ではないが、コンポーザ・ウィンドウは、プロンプトに表示されたアセンブル済みの情報項目に含まれない1つまたは複数の新たな情報項目をターゲット・ユーザが追加し得るように動作可能であってもよい(たとえば、ターゲット・ユーザは、テキストをプロンプトに追加するようにしてもよいし、または、ソーシャルネットワークのユーザのタグをプロンプトに表示された写真に追加するようにしてもよい)。限定ではなく別の例として、コンポーザ・ウィンドウは、プロンプトに表示された1つまたは複数のアセンブル済みの情報をターゲット・ユーザが削除し得るように動作可能であってもよい(たとえば、ターゲット・ユーザは、プロンプトから映像を削除するようにしてもよい)。
特定の実施形態において、コンポーザ・ウィンドウは、プロンプトに表示されたアセンブル済みの情報項目のうちの1つまたは複数をターゲット・ユーザが編集または他の形で変更し得るように動作可能であってもよい。たとえば、限定ではないが、コンポーザ・ウィンドウは、ターゲット・ユーザが写真を編集または他の形で変更できるようにしてもよい(たとえば、写真の切り取り、写真に対するフィルタの追加もしくは削除、または写真に対するレイヤーの追加もしくは削除)。限定ではなく別の例として、コンポーザ・ウィンドウは、ターゲット・ユーザがテキストを編集または他の形で変更できるようにしてもよい(たとえば、プロンプトに表示されたアセンブル済みの情報項目のうちの1つが「ピザを最後に食べたのはどこか」をユーザに尋ねる質問であった場合、ユーザは、この質問を「ピザ・シャック(Pizza Shack)」という答えで置き換えるようにしてもよい)。
特定の実施形態において、プロンプトは、ソーシャルネットワーキング・システムへのプロンプトの投稿有無および投稿方法または投稿有無もしくは投稿方法をターゲット・ユーザが選定し得るように動作可能な1つまたは複数のコントロールを含んでいてもよい。たとえば、限定ではないが、コントロールのうちの1つまたは複数は、ソーシャルネットワーキング・システム内の素材の投稿先(たとえば、ターゲット・ユーザもしくは他のユーザのニュースフィードまたはターゲット・ユーザもしくは他のユーザのプロフィール・ページ)をターゲット・ユーザが選定し得るように動作可能であってもよい。限定ではなく別の例として、コントロールのうちの1つまたは複数は、プロンプトまたはアセンブルされてプロンプトでユーザに表示された情報項目もしくはユーザによってプロンプトに追加された情報項目のうちの1つもしくは複数と関連付けられた1つまたは複数のプライバシー設定の割り当て、削除、または変更をターゲット・ユーザが行い得るように動作可能であってもよい。特定の実施形態においては、プロンプトに対してデフォルトのプライバシー設定が存在していてもよい。たとえば、プロンプトのデフォルトのプライバシー設定は、投稿意図推測の元となった情報項目のいずれかまたはアセンブル済みの情報項目のいずれかと関連付けられた、最も限定的なプライバシー設定であってもよい。コントロールは、デフォルトのプライバシー設定から異なるプライバシー設定への変更をターゲット・ユーザが行うように動作可能であってもよい。
特定の実施形態において、プロンプトは、本明細書に記載の特徴のいずれかをそれぞれが含み得る任意数の表示ウィンドウを具備していてもよい。特定の実施形態において、プロンプトは、表示ウィンドウのうちの1つまたは複数を同時または別々に示すようにしてもよい。特定の実施形態において、プロンプトは、表示ウィンドウをディスプレイ上の同じ場所または異なる場所に示すようにしてもよい。
特定の実施形態において、プロンプトは、ソーシャルネットワーキング・システムに格納された1つもしくは複数のテンプレートまたはソーシャルネットワーキング・システムによりアクセス可能な1つもしくは複数のテンプレートに少なくとも部分的に基づいて生成されていてもよい。特定の実施形態においては、各テンプレートが特定種類のプロンプトと関連付けられていてもよい。たとえば、限定ではないが、ライフ・イベントと関連付けられた情報に少なくとも部分的に基づいて投稿意図が推測された場合は、ライフ・イベントと関連付けられたプロンプトの生成に用いられる特定のテンプレートが存在していてもよい。
特定の実施形態において、ソーシャルネットワーキング・システムは、ターゲット・ユーザのクライアント・システムから、プロンプトに対するターゲット・ユーザの1つまたは複数の反応の1つまたは複数の指標を受信するようにしてもよい。指標としては、たとえば、ターゲット・ユーザがプロンプトと相互作用したか否か、ターゲット・ユーザがプロンプトとの相互作用に要した時間、ターゲット・ユーザが情報項目を追加したか否か、ターゲット・ユーザがアセンブル済みの情報項目のいずれかを削除または編集したか否か、ターゲット・ユーザがソーシャルネットワーキング・システムへのプロンプトの投稿を選定したか否か、ターゲット・ユーザによるソーシャルネットワーキング・システムへのプロンプトの投稿方法、およびターゲット・ユーザが何らかのプライバシー設定の割り当て、削除、または変更を行ったか否かが挙げられる。特定の実施形態において、ソーシャルネットワーキング・システムは、ターゲット・ユーザの反応のうちの1つまたは複数を考慮して、プロンプトを投稿してもよいし、または、投稿しなくてもよい。たとえば、限定ではないが、情報項目の追加、投稿へのプライバシー設定の割り当て、およびターゲット・ユーザのプロフィール・ページにソーシャルネットワーキング・システムがプロンプトを投稿することの選定をユーザの反応が含んでいた場合、ソーシャルネットワーキング・システムは、プロンプトをターゲット・ユーザのプロフィール・ページに投稿し、割り当てられたプライバシー設定を投稿に追加するものの、追加された情報項目は含んでいなくてもよい。
特定の実施形態において、ターゲット・ユーザの反応は、ソーシャルネットワーキング・システムによって、将来的な1人または複数のターゲット・ユーザ側での将来的な投稿意図の推測に用いられるようになっていてもよい。特定の実施形態において、将来的な意図の推測には、投稿する気をターゲット・ユーザに引き起こさせる、任意の時点で用いられた任意の情報項目(たとえば、ターゲット・ユーザの意図の推測に用いられた情報項目、アセンブル済みの情報項目、プロンプト、プロンプトに対するターゲット・ユーザの反応、またはこれらの任意の組み合わせ)を考慮するようにしてもよい。将来的なターゲット・ユーザは、たとえば、将来的な投稿意図の推測に反応が用いられている同じターゲット・ユーザまたはソーシャルネットワーキング・システムの他のターゲット・ユーザであってもよい。
たとえば、限定ではないが、ターゲット・ユーザに基づく仮想ユーザがターゲット・ユーザのライフ・イベントの記念日での投稿意図を有するものと推測されたが、関連付けられたプロンプトの閲覧に応答してターゲット・ユーザが投稿を辞退した場合は、上記反応を用いることによって、ターゲット・ユーザの将来的な意図の決定に際して、該ターゲット・ユーザがライフ・イベントの将来的な記念日での投稿を意図する可能性が低くなるものと推測するようにしてもよい。特定の実施形態においては、これらの情報項目を用いて将来的なターゲット・ユーザ側での将来的な投稿意図を推測することが、さまざまな粒度のレベルで行われるようになっていてもよい。たとえば、上記ライフ・イベントが血縁者の命日であった場合は、ターゲット・ユーザの反応を用いることによって、ターゲット・ユーザの将来的な意図の決定に際して、該ターゲット・ユーザが血縁者の命日での投稿を将来的に意図する可能性が低くなるものと推測するようにしてもよいが、関係の開始の将来的な記念日にターゲット・ユーザに投稿の意図があるか否かの推測においては、上記反応が中立であってもよい。
限定ではなく別の例として、ターゲット・ユーザと共通の関心を共有し、ターゲット・ユーザとの分離度が2以内であり、この1時間以内に共通の関心についてソーシャルネットワークに投稿を行ったソーシャルネットワーキング・システムの100人のユーザに基づく仮想ユーザが共通の関心に関する投稿意図を有するものと推測されたが、関連付けられたプロンプトの閲覧に応答してターゲット・ユーザが投稿を辞退した場合は、上記反応の使用により、ターゲット・ユーザと共通の関心を共有する別の将来的なターゲット・ユーザの将来的な意図の決定に際して、ターゲット・ユーザが共通の関心についての投稿を意図する可能性が低くなるものと推測するようにしてもよい。
特定の実施形態においては、ソーシャルネットワーキング・システムによって、将来的なターゲット・ユーザに対する情報項目のアセンブルに、ターゲット・ユーザの1つまたは複数の反応が用いられるようになっていてもよい。特定の実施形態において、将来的な意図の推測には、投稿する気をターゲット・ユーザに引き起こさせる、任意の時点で用いられた任意の情報項目(たとえば、ターゲット・ユーザの意図の推測に用いられた情報項目、アセンブル済みの情報項目、プロンプト、プロンプトに対するターゲット・ユーザの反応、またはこれらの任意の組み合わせ)を考慮するようにしてもよい。将来的なターゲット・ユーザは、たとえば、将来的な投稿意図の推測に反応が用いられている同じターゲット・ユーザまたはソーシャルネットワーキング・システムの他のターゲット・ユーザであってもよい。
たとえば、限定ではないが、ターゲット・ユーザの1つまたは複数のクライアント・システムに格納された情報項目がアセンブル済みの情報項目であり、ユーザがこの情報項目を削除した場合は、上記反応の使用により、ターゲット・ユーザのクライアント・システムに格納された情報項目が該ターゲット・ユーザの将来的なアセンブル済みの情報項目となる可能性が低くなるようにしてもよい。特定の実施形態においては、これらの情報項目を用いて将来的なターゲット・ユーザの情報項目をアセンブルすることが、さまざまな粒度のレベルで行われるようになっていてもよい。たとえば、上記情報項目が写真であった場合は、上記反応の使用により、ターゲット・ユーザのクライアント・システムに格納された写真が該ターゲット・ユーザの将来的なアセンブル済みの情報項目となる可能性が低くなるようにしてもよいが、該ターゲット・ユーザの将来におけるターゲット・ユーザのクライアント・システムに格納された映像のアセンブルにおいては、上記反応が中立であってもよい。
図3は、ソーシャルネットワーキング・システムに投稿する気をユーザに引き起こさせる例示的な方法300を示している。この方法は、ステップ310で開始となり、1つまたは複数の情報項目に基づいて、ソーシャルネットワーキング・システムへのターゲット・ユーザの投稿意図を推測するようにしてもよい。ステップ320においては、投稿意図推測の元となった情報項目のうちの1つまたは複数に関連する1つまたは複数の情報項目をアセンブルするようにしてもよい。ステップ330においては、アセンブル済みの情報項目のうちの1つまたは複数を含む投稿プロンプトをターゲット・ユーザに送信するようにしてもよい。ステップ340においては、ターゲット・ユーザのクライアント・システムから、ターゲット・ユーザの1つまたは複数の反応の1つまたは複数の指標を受信するようにしてもよい。ステップ350aにおいては、将来的な1人または複数のターゲット・ユーザ側での将来的な投稿意図の推測にターゲット・ユーザの1つまたは複数の反応を使用するようにしてもよい。ステップ350bにおいては、将来的なターゲット・ユーザに対する情報項目のアセンブルに、ターゲット・ユーザの1つまたは複数の反応を使用するようにしてもよい。特定の実施形態では、図3の方法の1つまたは複数のステップを必要に応じて繰り返すようにしてもよい。本開示は、図3の方法の特定のステップが特定の順序で生じるものとして記載および図示するが、図3の方法の任意適当なステップの任意適当な順序での発生を考慮している。さらに、本開示は、図3の方法の特定のステップを含む、ソーシャルネットワーキング・システムに投稿する気をユーザに起こさせる例示的な方法を記載および図示するが、必要に応じて、図3の方法のステップのうちのすべてもしくは一部を含み得るか、または一切含み得ない任意適当なステップを含む、ソーシャルネットワーキング・システムに投稿する気をユーザに引き起こさせる任意適当な方法を考慮している。さらに、本開示は、図3の方法の特定のステップを実行する特定の構成要素、装置、またはシステムを記載および図示するが、図3の方法の任意適当なステップを実行する任意適当な構成要素、装置、またはシステムの任意適当な組み合わせを考慮している。
図4aは、アセンブル済みの情報項目を表示するとともに、ソーシャルネットワーキング・システムへの投稿をターゲット・ユーザに勧める例示的なプロンプト404を示している。本実施形態において、ターゲット・ユーザに基づく仮想ユーザは、ターゲット・ユーザのライフ・イベント(この場合は、3年前に始まった恋愛関係)の記念日での投稿意図を有するものと推測されている。プロンプト404は、例示的なソーシャルネットワーキング・ユーザ・インターフェース400に表示されたニュースフィードの最上部に表示されている。プロンプト404のほか、ニュースフィードには、(例示的な本実施形態においては例示的なプロンプト404に無関係の)ニュースフィード項目422が含まれている。プロンプト404は、アセンブル済みの情報項目406、408、410、412、414、416、および418を含む。アセンブル済みの情報項目406は、プロンプトの目的についてターゲット・ユーザに知らせるとともに、プロンプトを閲覧可能な人物(この場合は、ターゲット・ユーザのみ)をターゲット・ユーザに知らせるテキスト通知である。アセンブル済みの情報項目408は、ソーシャルネットワーキング・システムによって生成および読み出しの両方が行われたテキストである。「ジェーン(Jane)」、「2010年6月」、および「カリフォルニア州サンフランシスコ」は、ターゲット・ユーザによってソーシャルネットワーキング・システムに提供され、ソーシャルネットワーキング・システムに格納されたテキスト情報項目である。その他のテキスト情報項目は、プロンプトの種類(この場合は、ライフ・イベント)に固有のテンプレートからソーシャルネットワーキング・システムによって生成されたものである。アセンブル済みの情報項目410、412、414、416、および418は、画像情報項目である。アセンブル済みの情報項目410、412、および414は、ソーシャルネットワーキング・システムから読み出されたものである。アセンブル済みの情報項目416は、ターゲット・ユーザのクライアント・システムから読み出されたものである。アセンブル済みの情報項目418は、サードパーティ・システムから読み出されたものである。コントロール420は、ソーシャルネットワーキング・システムにプロンプトを投稿するか否かをターゲット・ユーザが選定し得るように動作可能なコントロールである。
図4bは、プロンプト404と関連付けられた例示的なコンポーザ・ウィンドウ422を示している。図4aに示すコントロール420をクリックした後、ターゲット・ユーザは、ソーシャルネットワーキング・ユーザ・インターフェース400の一部に広がったウィンドウであるコンポーザ・ウィンドウ422を閲覧する。プロンプト404の一部は、ユーザにはフェードして見えるソーシャルネットワーキング・ユーザ・インターフェース400の視認可能な部分の一部として閲覧可能である。コンポーザ・ウィンドウ422は、プロンプト404に含まれたアセンブル済みの情報項目(information item)408、410、412、414、416、および418を含む。また、コンポーザ・ウィンドウ422は、ソーシャルネットワーキング・システムにより生成されたテキスト(この場合は、ターゲット・ユーザに尋ねた特定の質問)であるアセンブル済みの情報項目424を含む。また、コンポーザ・ウィンドウ422は、コントロール426、428、430、および432を含む。コントロール426は、新たな情報項目の追加またはアセンブル済みの画像情報項目410、412、414、416、および418の一部または全部の削除をターゲット・ユーザが行い得るように動作可能なコントロールである。コントロール428は、プロンプト404に基づいてソーシャルネットワーキング・システムに送信された投稿と関連付けられたプライバシー設定の割り当て、削除、または変更をターゲット・ユーザが行い得るように動作可能なコントロールである。コントロール430は、プロンプト404をソーシャルネットワーキング・システムにユーザが投稿し得るように動作可能である。コントロール432は、コンポーザ・ウィンドウ422をユーザが閉じ得るように動作可能である。
図4cは、ユーザがコントロール426をクリックした後のコンポーザ・ウィンドウ422を示している。ここで、コンポーザ・ウィンドウ422は、アセンブル済みの情報項目410、412、414、416、および418のテキスト記述であるアセンブル済みの情報項目434のほか、アセンブル済みの情報項目436、438、440、442、444、446、448、および450を含む。情報項目452および454は、アセンブルされてはいないものの、ターゲット・ユーザにより撮られた後、ターゲット・ユーザのクライアント装置に格納された写真である。コンポーザ・ウィンドウ422との相互作用により(具体的に、例示的な本実施形態においては、各情報項目をクリックすることにより)、ユーザは、ソーシャルネットワーキング・システムへの投稿に含める情報項目を選択することができる。チェックマークおよび各情報項目の周りの境界によって示されている通り、アセンブル済みの情報項目410、412、414、416、および418は、ターゲット・ユーザに対して自動的に選択される。ただし、ターゲット・ユーザは、これらの情報項目を選択しなくてもよいし、アセンブル済みの情報項目436、438、440、442、444、446、448、および450を選択するようにしてもよいし、情報項目452または454を選択するようにしてもよい。コントロール456は、選択した情報項目のみをユーザがソーシャルネットワーキング・システムへの投稿に含み得るように動作可能である。
図4dは、ユーザがコントロール456をクリックした後のコンポーザ・ウィンドウ422を示している。コンポーザ・ウィンドウ422は、アセンブル済みの情報項目408を再度表示する。ここで、ターゲット・ユーザがアセンブル済みの情報項目418を選択していないため、コンポーザ・ウィンドウ422は、アセンブル済みの情報項目410、412、414、および416のみを含む。さらに、情報項目のうちの1つが選択されていないため、アセンブル済みの情報項目410、412、414、および416の場所および大きさが変更されている。本実施形態においては、アセンブル済みの情報項目410、412、414、および416の場所および大きさがソーシャルネットワーキング・システムによって自動的に変更されているが、他の実施形態においては、情報項目の場所および大きさをユーザが変更することも可能である。図4bに示したアセンブル済みの情報項目424は、情報項目458によって置き換えられている。情報項目458は、ユーザによって入力されたテキストであり、アセンブル済みの情報項目424を介して尋ねられた質問への答えである。ターゲット・ユーザは、アセンブル済みの情報項目424をクリックした後に情報項目458のテキストを入力しているが、他の実施形態においては、その他さまざまな方法によってテキストを入力することも可能である。コントロール426、428、430、および432が表示されているが、これらは図4bでも表示されており、同じ機能を有している。たとえば、ターゲット・ユーザは、コントロール426をクリックした場合、図4cの表示と類似のコンポーザ・ウィンドウを再度見ることになる。コントロール428により一覧化された「友達」をユーザが有するため、ソーシャルネットワーキング・システムは、情報項目408、410、412、414、および416を含む投稿をターゲット・ユーザの友達のみが閲覧できるようにするプライバシー設定を適用することになる。他の実施形態において、ユーザは、コントロール428を操作することによって、任意数のプライバシー設定を選択するようにしてもよい。
図4eは、ユーザがソーシャルネットワーキング・システムに投稿した例示的な投稿460を示している。本実施形態においては、投稿460がターゲット・ユーザのタイムラインに投稿され、その結果として、ターゲット・ユーザのニュースフィードに現れている。本実施形態においては、過去に出現したプロンプト404と同じ場所に投稿460が現れているが、他の実施形態においては、ターゲット・ユーザのニュースフィードの異なる場所に投稿460が現れることも可能である。投稿406は、情報項目458ならびにアセンブル済みの情報項目408、410、412、414、および416を含む。
図5aは、アセンブル済みの情報項目を表示するとともに、ソーシャルネットワーキング・システムへの投稿をターゲット・ユーザに勧める例示的なプロンプト500を示している。本実施形態においては、ターゲット・ユーザとの分離度が1以内であり、プロンプト500に含まれるアセンブル済みの情報項目504として画像およびテキスト記述がユーザに提供された情報項目(本実施形態においては、リンク)をソーシャルネットワーキング・システムに投稿したソーシャルネットワーキング・システムの5人のユーザに基づいて、仮想ユーザがソーシャルネットワーキング・システムへの投稿意図を有するものと推測されている。また、プロンプト500は、プロンプトの目的についてテキストでユーザに知らせるアセンブル済みの情報項目502と、他のユーザによる、リンクを含んだソーシャルネットワーキング・システムへの投稿であるアセンブル済みの情報項目506、508、および510とを含む。プロンプト500には、該プロンプト500中のより多くのアセンブル済みの情報項目をユーザが閲覧し得るように動作可能なコントロール512も含まれる。また、プロンプト500は、コンポーザ・ウィンドウ514を含み、本実施形態においては、これによりターゲット・ユーザがテキストを入力することができる。コンポーザ・ウィンドウ514には、リンクに関してユーザに対して生成された質問であるアセンブル済みの情報項目516が含まれる。本実施形態において、ユーザは、アセンブル済みの情報項目516かまたはその付近をクリックすることにより、その情報項目516を情報項目で置き換えるようにしてもよい(この場合は、質問に答えるテキストを入力するようにしてもよい)。また、プロンプト500は、該プロンプト500に基づいてソーシャルネットワーキング・システムに送信された投稿と関連付けられたプライバシー設定の割り当て、削除、または変更をターゲット・ユーザが行うように動作可能なコントロール520を含む。本実施形態においては、「公開」というプライバシー設定が選択されており、ターゲット・ユーザの投稿をソーシャルネットワーキング・システムの全ユーザで共有することになる。また、プロンプト500は、該プロンプト500においてユーザに表示された幾つかの情報項目(この場合は、アセンブル済みの情報項目504および情報項目としてユーザにより入力された任意のテキスト)を共有するように動作可能なコントロール518を含む。
図5bは、ターゲット・ユーザがコントロール518を用いてソーシャルネットワーキング・システムに投稿した後に現れる例示的なプロンプト500を示している。プロンプト500は依然として、コントロール512のほか、アセンブル済みの情報項目502、504、506、508、および510をユーザに表示しているが、コンポーザ・ウィンドウ514は、もう表示されなくなっている。本実施形態においては、投稿がターゲット・ユーザのタイムライン上で共有されたことをターゲット・ユーザに知らせる情報項目524を含む通知ウィンドウ522で置き換えられている。さらに、通知ウィンドウ522は、情報項目524の表示を止めるように動作可能なコントロール526を含む。
図6は、例示的なコンピューティング・システムを示している。特定の実施形態においては、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」を意味する(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。
本開示の範囲は、当技術分野における標準的な技術者が理解するであろう、本明細書において記述されているまたは示されている例示的な実施形態に対するすべての変更、置換、変形、改変、および修正を包含する。本開示の範囲は、本明細書において記述されているまたは示されている例示的な実施形態に限定されない。その上、本開示は、本明細書におけるそれぞれの実施形態を、特定のコンポーネント、要素、機能、オペレーション、または工程を含むものとして記述し、示しているが、これらの実施形態のいずれも、当技術分野における標準的な技術者が理解するであろう、本明細書の任意の箇所において記述されているまたは示されているコンポーネント、要素、機能、オペレーション、または工程のうちの任意のものの任意の組合せまたは順列を含むことができる。さらに、特定の機能を実行するように適合されている、実行するようにアレンジされている、実行することができる、実行するように構成されている、実行することを可能にされている、実行するように機能できる、または実行するように機能する装置もしくはシステム、または装置もしくはシステムのコンポーネントへの添付の特許請求の範囲における言及は、その装置、システム、コンポーネント、またはその特定の機能が、アクティブ化されているか否か、オンにされているか否か、またはロック解除されているか否かを問わず、その装置、システム、またはコンポーネントが、そうするように適合されている、そうするようにアレンジされている、そうすることができる、そうするように構成されている、そうすることを可能にされている、そうするように機能できる、またはそうするように機能する限り、その装置、システム、コンポーネントを包含する。