(58)【調査した分野】(Int.Cl.,DB名)
ソーシャル・ネットワーキング・システムにおいてソーシャルグラフを維持する工程であって、前記ソーシャルグラフはエッジオブジェクトを含み、各エッジオブジェクトは、1つまたは複数のアクションタイプを有する1つまたは複数のアクションを表すとともに、前記ソーシャルグラフの2つ以上のグラフオブジェクト間の関係を示す、前記工程と、
前記ソーシャル・ネットワーキング・システムのユーザのためのプライバシ設定を維持する工程であって、前記プライバシ設定は、サード・パーティ・アプリケーションによってアクセス可能な前記ユーザに関連付けられたエッジオブジェクトの1つまたは複数のアクションタイプを指定し、前記サード・パーティ・アプリケーションは、前記ソーシャル・ネットワーキング・システムとは別個のエンティティによって維持される、前記工程と、
複数のソースから前記ユーザに関連付けられたエッジオブジェクトを受け取る工程と、
前記サード・パーティ・アプリケーションから前記ユーザに関連付けられた前記エッジオブジェクトに関する情報の要求を受け取る工程と、
前記プライバシ設定に従って、前記ユーザに関連付けられた前記ソーシャルグラフの1つまたは複数のエッジオブジェクトに関するデータを集約する工程であって、集約された前記データは、1つ以上のプライバシ設定によって前記サード・パーティ・アプリケーションに対してアクセス可能として指定されるアクションタイプを有するエッジオブジェクトに関する情報を識別することを含む、前記工程と、
集約された前記データを前記サード・パーティ・アプリケーションに提供する工程と、を備える方法。
前記サード・パーティ・アプリケーションからの前記要求は前記1つまたは複数のアクションタイプを有する閾値数のアクションを指定し、前記ソーシャルグラフの1つまたは複数のエッジオブジェクトに関するデータを集約する前記工程は、前記1つまたは複数のアクションタイプを有するとともに前記ユーザについて前記閾値数以上のアクションを記述するエッジオブジェクトからのデータを集約する工程をさらに含む、請求項4に記載の方法。
前記1つまたは複数のアクションタイプのうちの少なくとも1つは、前記ソーシャル・ネットワーキング・システムの外部のエンティティによって定義される、請求項4に記載の方法。
前記1つまたは複数のエッジオブジェクトのうちの少なくとも1つのエッジオブジェクトは、前記ユーザのアクティビティと前記ユーザの少なくとも1つの接続とを記述する、請求項4に記載の方法。
ソーシャル・ネットワーキング・システムにおいて前記ソーシャル・ネットワーキング・システムのユーザのアクションに関するデータを維持する工程であって、前記アクションはアクションタイプを有する、前記工程と、
前記ソーシャル・ネットワーキング・システムのユーザのためのプライバシ設定を維持する工程であって、前記プライバシ設定は、サード・パーティ・アプリケーションによってアクセス可能な前記ユーザに関連付けられた1つまたは複数のアクションタイプを指定し、前記サード・パーティ・アプリケーションは、前記ソーシャル・ネットワーキング・システムとは別個のエンティティによって維持される、前記工程と、
複数のソースから前記ユーザのアクションを受け取る工程と、
前記サード・パーティ・アプリケーションから前記ユーザの前記アクションに関する情報の要求を受け取る工程と、
前記プライバシ設定に従って前記ユーザのアクションに関するデータからの情報を集約する工程と、
前記プライバシ設定に従って、前記ユーザのアクションに関するデータから情報を集約する工程であって、集約された前記データは、1つ以上のプライバシ設定によって前記サード・パーティ・アプリケーションに対してアクセス可能として指定されるアクションタイプを有するエッジオブジェクトに関する情報を識別することを含む、前記工程と、
集約された前記情報を前記サード・パーティ・アプリケーションに提供する工程と、
を備える方法。
【発明を実施するための形態】
【0009】
各図に描かれている本開示の様々な実施形態は例示のためのものにすぎない。以下の考察を読めば、本明細書で記述する開示の原理を逸脱することなく、本明細書で例示する構造および方法の代替の実施形態が用いられうることを、当業者は容易に理解するであろう。
【0010】
概要
ソーシャル・ネットワーキング・システムはそのユーザに、ソーシャル・ネットワーキング・システムの他のユーザとコミュニケーションをとり、対話する能力を提供する。ユーザは、ソーシャル・ネットワーキング・システムに参加し、ユーザが接続されることを望む何人かの他のユーザへの接続を追加する。ソーシャル・ネットワーキング・システムのユーザは、ユーザプロフィールとして記憶されるユーザを記述する情報を提供することができる。例えば、ユーザは、ユーザの年齢、性別、地理的位置(ロケーション)、学歴、職歴などを提供することができる。ユーザによって提供された情報は、ソーシャル・ネットワーキング・システムによって、ユーザへ情報を誘導するのに使用されうる。例えば、ソーシャル・ネットワーキング・システムは、ソーシャルグループ、イベント、および潜在的な友人をユーザに推奨しうる。またソーシャル・ネットワーキング・システムは、ユーザが、有名人、趣味、スポーツチーム、書籍、音楽などといった概念への興味を明確に表明できるようにすることもできる。これらの興味は、広告の的を絞ることと、共有される興味に基づいてソーシャル・ネットワーキング・システムの他のユーザに関する関連ストーリーを示すことによりソーシャル・ネットワーキング・システム上でのユーザ体験をパーソナル化することとを含めて、無数の方法で使用されうる。
【0011】
ソーシャルグラフは、ソーシャル・ネットワーキング・システム上に記憶されたエッジによって接続されたノードを含む。ノードはユーザおよびソーシャル・ネットワーキング・システムのオブジェクト、例えば概念およびエンティティを具現化したウェブページを含み、エッジは各ノードを接続する。エッジは2つのノード間の特定の相互作用、例えば、ユーザが「アメリカズ・カップ(America’s Cup)」に関する別のユーザによって共有されるニュース記事への興味を表明した場合にそのことを表す。ソーシャルグラフは、ソーシャル・ネットワーキング・システムのユーザ間の対話、ならびにソーシ
ャル・ネットワーキング・システムのユーザとオブジェクトとの対話を、これらの対話を表すノードおよびエッジとして情報を記憶することによって記録しうる。カスタム・グラフ・オブジェクト・タイプおよびカスタム・グラフ・アクション・タイプが、グラフオブジェクトおよびグラフアクションの属性を定義するために、サードパーティ開発者およびソーシャル・ネットワーキング・システムの管理者によって定義されうる。例えば、映画のためのグラフオブジェクトは、題名、俳優、監督、プロデューサ、年などといった、いくつかの定義されたオブジェクトプロパティを有しうる。「購入する」といったグラフ・アクション・タイプが、ソーシャル・ネットワーキング・システムの外部のウェブサイト上でサードパーティ開発者によって、ソーシャル・ネットワーキング・システムのユーザによって実行されたカスタムアクションを報告するのに使用されうる。このように、ソーシャルグラフは「開放」されていてよく、サードパーティ開発者が外部ウェブサイト上でカスタム・グラフ・オブジェクトおよびカスタム・グラフ・アクションを作成し、使用することを可能にする。
【0012】
サードパーティ開発者は、ソーシャル・ネットワーキング・システムのユーザが、ソーシャル・ネットワーキング・システムの外部のウェブサイト上でホストされるウェブページへの興味を表明できるようにすることができる。これらのウェブページは、ウィジェット、ソーシャルプラグイン、プログラマブル論理、またはコードスニペット、例えばインラインフレーム(iframe)をウェブページに埋め込んだ結果として、ソーシャル・ネットワーキング・システム内のページオブジェクトとして表されうる。ウェブページで具現化されうるいかなる概念も、このようにソーシャル・ネットワーキング・システム上のソーシャルグラフ内のノードとなりうる。その結果、ユーザは、「ジャスティン・ビーバー(Justin Bieber)」といったキーワードまたはキーフレーズに関連したソーシャル・ネットワーキング・システムの外部の多くのオブジェクトと対話しうる。オブジェクトとの対話の各々が、ソーシャル・ネットワーキング・システムによりエッジとして記録されうる。サードパーティ開発者によるカスタム・オブジェクト・タイプおよびカスタム・アクション・タイプの定義を可能にすることについては、参照により本明細書に組み込まれる、2011年9月21日に出願された、「Structured Objects and Actions on a Social Networking
System」、米国特許出願第13/239340号明細書に記載されている。
【0013】
ソーシャル・ネットワーキング・システムは、ユーザがサード・パーティ・アプリケーションに、アクションタイプに基づくユーザデータの集約へアクセス権を付与できるようにすることができる。先進的なサード・パーティ・アプリケーションは、ユーザにパーソナル化コンテンツを提供するためにこのデータを集約しうる。例えば、サード・パーティ・アプリケーションは、アクションタイプ「購入する」に基づいてユーザデータの集約を検索しうる。このデータを用いて、サード・パーティ・アプリケーションは、ユーザの購入アクティビティの分析を生成しうる。
【0014】
別の実施形態では、ソーシャル・ネットワーキング・システムは、オブジェクトタイプまたはオブジェクトプロパティに基づいてユーザデータを集約しうる。サード・パーティ・アプリケーションは、ユーザデータの要求において1つまたは複数のオブジェクトタイプおよび/または1つまたは複数のオブジェクト特徴を指定しうる。例えば、サード・パーティ・アプリケーションは、曲オブジェクトがオブジェクトプロパティとして関連付けられたアーティストオブジェクトを有するために、特定のアーティストからの曲を聴いているユーザに関するデータにアクセスしうる。同様に、サード・パーティ・アプリケーションは、曲オブジェクトがジャンルオブジェクトに関連付けられているために、ポップミュージックといったあるジャンル内の任意の曲の閾値数回の再生に基づいてユーザに関するデータにアクセスしうる。またソーシャル・ネットワーキング・システムは、サード・パーティ・アプリケーションが、曲の再生の所定回数および過去においてコンサートホー
ルに少なくとも1回チェックインしたといった、複数の異なるタイプのアクションに関する集約を指定できるようにすることもできる。つまり、ソーシャル・ネットワーキング・システムにおけるオブジェクトは、オブジェクトのタイプに基づいて変化するオブジェクトに関連付けられてメタデータを有する。ソーシャル・ネットワーキング・システムは、サード・パーティ・アプリケーションがこれらのオブジェクトプロパティの集約、すなわちオブジェクトの特徴を検索できるようにすることができる。
【0015】
図1に、一実施形態における、サード・パーティ・アプリケーションにアクションタイプに基づいて集約されたデータを提供するプロセスのハイ・レベル・ブロック図を示す。ソーシャル・ネットワーキング・システム130の集約モジュール132は、あるアクションのタイプについてユーザに関する情報の要求に応答する。要求はユーザのユーザ識別子を含み、1つまたは複数のアクションタイプを指定しうる。集約モジュール132は要求に対し、要求で指定された1つまたは複数のアクションタイプに基づいて集約された集約ユーザデータ160で応答する。例えば、集約ユーザデータ160は、「ランニング」、「水泳」、および「自転車」というアクションタイプに基づいて集約されうる。集約ユーザデータ160は、指定されたアクションタイプに関連付けられたコンテンツオブジェクト138およびエッジオブジェクト138からの情報を含む。例えば、集約データは、「ランニング」、「水泳」、および「自転車」というアクションタイプを有するエッジオブジェクトからのものとすることができる。ソーシャル・ネットワーキング・システム130上のコンテンツオブジェクト136は、ソーシャル・ネットワーキング・システム130のユーザによって作用されうる。コンテンツオブジェクト136は、ページ投稿、近況の更新、ニュースフィードストーリー、写真、ビデオ、リンク、共有コンテンツアイテム、ゲームアプリケーションの成績、地元企業でのチェックインイベントなどといった、ソーシャル・ネットワーキング・システム130上の任意のタイプのオブジェクトを含みうる。ユーザとコンテンツオブジェクト130との間の対話は、ユーザ、コンテンツオブジェクト136、および実行されたアクションのタイプに関する情報の特定を含む、対話に関する情報を含むエッジオブジェクト138を生成する。一実施形態では、ソーシャル・ネットワーキング・システム130上のコンテンツオブジェクト136は、ソーシャル・ネットワーキング・システム130上にインストールされた特定のアプリケーションを介してソーシャル・ネットワーキング・システム130のユーザによって作用されうる。
【0016】
いくつかの実施形態では、集約モジュール132は、オブジェクトタイプおよび/またはオブジェクト特徴を指定する要求に応答する。集約モジュール132は指定されたオブジェクトタイプおよび/またはオブジェクト特徴に基づいて集約された集約ユーザデータで応答する。例えば、集約モジュール132は、ユーザのチェックイン、投稿画像、コメント、「いいね!」、および貼られたリンクに関する情報で応答しうる。
【0017】
いくつかの実施形態では、ソーシャル・ネットワーキング・システム130のパブリッシャモジュール134は、ソーシャル・ネットワーキング・システムに公開するためにパーソナル化コンテンツ161を受け取りうる。パーソナル化コンテンツは集約ユーザデータ160に基づいて生成される。いくつかの実施形態では、パブリッシャモジュール134は、集約ユーザデータ160に関するニュースストーリーを受け取る。例えば、サード・パーティ・アプリケーション112はパブリッシャモジュール134へ、ユーザのランニングアクティビティ、水泳アクティビティ、および自転車アクティビティに関して示すチャートを含むニュースストーリーを送信しうる。いくつかの実施形態では、パブリッシャモジュール134は、コンポーザインターフェース入力を受け取る。コンポーザインターフェース入力は、集約ユーザデータ160に関連したテキスト、ビデオ、または画像を含みうる。例えば、コンポーザインターフェースは、ユーザの最近のランニングアクティビティ、水泳アクティビティ、および自転車アクティビティに関する統計を含む近況メッセージ更新を含みうる。パーソナル化コンテンツは、ニュースフィード、プロフィールペ
ージ、アプリケーション特有のページといった、ソーシャル・ネットワーキング・システムの1つまたは複数のページに公開されうる。
【0018】
集約ユーザデータ160に含まれる個別のアクション、エッジおよび/またはオブジェクトは個別にアクセスされてよく、集約ユーザデータ160ならびにそのオブジェクトまたはアクションの個別の集約が、集約ならびに集約に含まれる様々なオブジェクトおよび/またはアクションへのアクセスを許可することを可能にする。例えば、「ランニング」、「水泳」、および「睡眠」というアクションタイプに基づく集約ユーザデータ160は、「楽しみ」、「水泳」、および「睡眠」という指定のアクションタイプに関連付けられたコンテンツオブジェクト136およびエッジオブジェクト138からの情報を含む。サード・パーティ・アプリケーション112は、ユーザデバイス110に含まれていてよく、後述するように、集約ユーザデータ160内のコンテンツオブジェクト136および/またはエッジオブジェクト138にアクセスすることにより、ユーザのためのパーソナル化コンテンツを生成しうる。ユーザは、異なる許可を集約ユーザデータ160内のコンテンツオブジェクト136および/またはエッジオブジェクト138に関連付けることにより、集約ユーザデータ160内のオブジェクトへのサード・パーティ・アプリケーションのアクセスを規制しうる。例えばユーザは、フィットネストレーニングのサード・パーティ・アプリケーション112に、「ランニング」および「水泳」のアクションタイプに関連付けられたコンテンツオブジェクト136および/またはエッジオブジェクト138へのアクセスを許可し、その一方で、フィットネストレーニングのサード・パーティ・アプリケーション112が、「睡眠」アクションタイプに関連付けられたコンテンツオブジェクト136またはエッジオブジェクト128にアクセスするのを妨げることができる。
【0019】
ユーザデバイス110は、ソーシャル・ネットワーキング・システム130からの集約ユーザデータ160に基づいてユーザのためのパーソナル化コンテンツを生成するサード・パーティ・アプリケーション112を含む。前述のように、集約ユーザデータ160は、アクションタイプ、オブジェクトタイプ、オブジェクトプロパティ、またはそれらの任意の組み合わせに基づいて集約されうる。例えば、サード・パーティ・アプリケーション112は、「ランニング」というアクションタイプに基づいて集約されたデータを要求するソーシャル・ネットワーキング・システム130への要求を送りうる。要求に応答して、サード・パーティ・アプリケーション112は、「ランニング」というアクションタイプを有するエッジオブジェクトに関連付けられたソーシャル・ネットワーキング・システム130によって維持される1つまたは複数のオブジェクトからデータを受け取りうる。サード・パーティ・アプリケーション112は、前述のように、集約ユーザデータ160を使用してユーザのためのパーソナル化コンテンツを生成しうる。
【0020】
外部システム120は、ソーシャル・ネットワーキング・システム130および/またはユーザデバイス110と通信するための命令を含むウィジェット124を備えるウェブページ122を含む。ウィジェット124は、アクションタイプ、オブジェクトタイプ、オブジェクトプロパティ、またはそれらの任意の組み合わせに基づいて集約された集約ユーザデータを取得しうる。ウィジェット124はこのデータを使用して、ユーザに表示すべきパーソナル化コンテンツを生成しうる。
【0021】
上記方法を用いて、ソーシャル・ネットワーキング・システムは、サード・パーティ・アプリケーション112およびサード・パーティ・ウェブサイトが、ソーシャル・ネットワーキング・システムによって取り込まれた対話に基づいて集約されたデータを取り出せるようにすることができる。これらの対話はソーシャル・ネットワーキング・システム内で行われうるものであり、例えば、メッセージ、掲示板、およびコメントによるソーシャル・ネットワーキング・システムの他のユーザとの対話、アプリケーション対話、ならびに、ビデオおよび写真のアップロードや、ソーシャル・ネットワーキング・システム上の
ゲームアプリケーションとの対話といった、ソーシャル・ネットワーキング・システム上のオブジェクトとの他の対話などである。またユーザ対話は、ランニングワークアウトを完了する、全国にわたる自動車旅行を完了する、再生リストに記載された曲を再生するといったように、ソーシャル・ネットワーキング・システムの外部でも実行されうる。
【0022】
図1およびその他の図では、類似の要素を識別するのに類似の参照番号を使用している。参照番号の後の文字、例えば「160−1」は、そのテキストが、明確にその特定の参照番号を有する要素を指すことを示している。後部の文字が付かないテキスト中の参照番号、例えば「160」は、その参照番号を持つ図中の要素のいずれかまたはすべてを指す(例えば、テキスト中の「160」は、図中の参照番号「160−1」および/または「160−2」を指す)。
【0023】
システムアーキテクチャ
図2は、本開示の実施形態による、ユーザの対話に基づいて集約されたユーザのデータにサード・パーティ・アプリケーションがアクセスすることを可能にするのに適したシステム環境200を例示するハイ・レベル・ブロック図である。システム環境は、1つまたは複数のユーザデバイス110、ソーシャル・ネットワーキング・システム130、ネットワーク204、および1つまたは複数の外部システム120を備える。代替の構成では、異なるモジュールおよび/または追加モジュールがシステムに含まれうる。例示のために、
図2で示すシステム環境200の実施形態は、単一の外部システム120および単一のユーザデバイス110を含んでいる。しかし、他の実施形態では、システム環境200は、より多くのユーザデバイス110および/またはより多くの外部システム120を含みうる。
【0024】
ユーザデバイス110は、ユーザ入力を受け取ることができ、ネットワーク204を介してデータを送受信することができる1つまたは複数のコンピューティングデバイスを備える。一実施形態では、ユーザデバイス110は、例えば、Microsoft WINDOWS(登録商標)互換のオペレーティングシステム(OS)、Apple OS X、および/またはLINUX(登録商標)ディストリビューションを実行する従来のコンピュータシステムである。別の実施形態では、ユーザデバイス110は、携帯情報端末(PDA)、携帯電話、スマートフォンなどといった、コンピュータ機能を有するデバイスとすることができる。ユーザデバイス110は、ネットワーク204を介して通信するように構成されている。ユーザデバイス110はアプリケーション、例えば、ユーザデバイス110のユーザがソーシャル・ネットワーキング・システム130と対話することを可能にするブラウザアプリケーションを実行することができる。別の実施形態では、ユーザデバイス110は、iOS 4やANDROID(登録商標)といった、ユーザデバイス110の固有のオペレーティングシステム上で行うアプリケーション・プログラミング・インターフェース(API)によってソーシャル・ネットワーキング・システム130と対話する。
【0025】
一実施形態では、ネットワーク204は、標準的な通信技術および/またはプロトコルを使用する。よって、ネットワーク204は、ETHERNET(登録商標)802.11、WiMAX(worldwide interoperability for microwave access)、3G、4G、CDMA、デジタル加入者線(DSL:digital subscriber line)などといった技術を用いたリンクを含むことができる。同様に、ネットワーク204上で使用されるネットワーキングプロトコルも、マルチプロトコル・ラベル・スイッチグループ(MPLS:multiprotocol label switching)、伝送制御プロトコル/インターネットプロトコル(TCP/IP:transmission control protocol/Internet protocol)、ユーザ・データグラム・プロトコル(U
DP:User Datagram Protocol)、ハイパーテキスト転送プロトコル(HTTP:hypertext transport protocol)、電子メール転送プロトコル(SMTP:simple mail transfer protocol)、およびファイル転送プロトコル(FTP:file transfer protocol)を含むことができる。ネットワーク204上で交換されるデータは、ハイパーテキストマークアップ言語(HTML:hypertext markup language)および拡張可能なマークアップ言語(XML:extensible markup language)を含む技術および/または書式を用いて表すことができる。加えて、リンクの全部または一部を、セキュア・ソケット・レイヤ(SSL:secure sockets layer)、トランスポート層セキュリティ(TLS:transport layer security)、およびインターネット・プロトコル・セキュリティ(IPsec:Internet Protocol security)といった従来の暗号化技術を用いて暗号化することもできる。
【0026】
図2は、ソーシャル・ネットワーキング・システム130のブロック図を含んでいる。ソーシャル・ネットワーキング・システム130は、ウェブサーバ208、ユーザ・プロフィール・ストア206、コンテンツストア212、エッジストア214、アクションロガー216、アクティビティログ218、認可サーバ222、集約モジュール132、およびパブリッシャモジュール134を含む。他の実施形態では、ソーシャル・ネットワーキング・システム130は、様々なアプリケーションのための追加のモジュール、より少数のモジュール、または異なるモジュールを含みうる。ネットワークインターフェース、セキュリティ機能、ロードバランサ、フェイルオーバサーバ、管理およびネットワーク動作コンソールなどといった従来の構成要素は、システムの詳細をあいまいにしないように図示されていない。
【0027】
ウェブサーバ208は、ネットワーク204を介して1つまたは複数のユーザデバイス110にソーシャル・ネットワーキング・システム130をリンクさせる。すなわち、ウェブサーバ208はウェブページ、ならびに、JAVA(登録商標)、Flash、XMLなどといった他のウェブ関連コンテンツのために機能する。ウェブサーバ208は、ソーシャル・ネットワーキング・システム130とユーザデバイス110との間のメッセージ、例えば、インスタントメッセージ、待ち行列メッセージ(例えば電子メール)、テキストおよびショート・メッセージ・サービス(SMS:Short message service)メッセージ、または任意の他の適切なメッセージング技術を用いて送信されるメッセージを受信し、経路指定する機能を提供しうる。ユーザは、コンテンツストア212に記憶された情報、例えば画像やビデオをアップロードするよう求めるウェブサーバ208への要求を送信することができる。加えて、ウェブサーバ208は、iOS、ANDROID(登録商標)、webOS、RIMといった固有のユーザデバイスオペレーティングシステムへ直接データを送信するAPI機能を提供してもよい。
【0028】
アクションロガー216は、ソーシャル・ネットワーキング・システム130上のユーザアクションおよび/またはソーシャル・ネットワーキング・システム130外のユーザアクションに関するウェブサーバ208からの通信を受信することができる。アクションロガー216はアクションログに、ユーザアクションを追跡するためのユーザアクションに関する情報を読み込む。そうしたアクションには、例えば特に、他方のユーザへの接続を追加する、他方のユーザへメッセージを送信する、画像をアップロードする、他方のユーザからのメッセージを読み取る、他方のユーザに関連付けられたコンテンツを閲覧する、別のユーザによって投稿されたイベントに参加するなどが含まれうる。加えて、他のオブジェクトと関連して記述されたいくつかのアクションも特定のユーザを対象としており、そのため、これらのアクションはそれらのユーザとも関連付けられる。
【0029】
アクションログ218は、ソーシャル・ネットワーキング・システム130によって、ソーシャル・ネットワーキング・システム130上、ならびにソーシャル・ネットワーキング・システム130へ情報を送り返す外部ウェブサイト上でのユーザのアクションを追跡するのに使用されうる。前述のように、ユーザは、投稿へのコメント、リンクの共有、およびモバイルデバイスによる物理的な場所へのチェックインを含めて、ソーシャル・ネットワーキング・システム130上の様々なオブジェクトと対話しうる。またアクションログ218は、外部ウェブサイト上でのユーザアクションも含みうる。例えば、主として高級靴を格安価格で販売する電子商取引ウェブサイトは、その電子商取引ウェブサイトがソーシャル・ネットワーキング・システムのユーザを識別することを可能にするソーシャルプラグインによってソーシャル・ネットワーキング・システム130のユーザを認識しうる。ソーシャル・ネットワーキング・システム130のユーザを一意に識別できるため、この高級靴再販業者のような電子商取引ウェブサイトは、これらのユーザに関する情報を、ユーザが電子商取引のウェブサイトを訪問する際に使用しうる。アクションログは、閲覧履歴、クリックされた広告、購入アクティビティ、および購買パターンを含む、これらユーザに関するデータを記録する。
【0030】
ユーザ・プロフィール・ストア206は、ユーザアカウント情報およびユーザについての他の関連情報を記憶する。ユーザ・プロフィール・ストア206に記憶されたユーザプロフィール情報は、ソーシャル・ネットワーキング・システム130のユーザを記述し、この記述は、実務経験、学歴、性別、趣味または好み、位置などといった、自己紹介、人口統計、および他のタイプの記述情報を含む。またユーザプロフィールは、ユーザによって提供される他の情報、例えば、画像やビデオなども記憶しうる。ある実施形態では、ユーザの画像は、画像に表示されたソーシャル・ネットワーキング・システム130のユーザの識別情報でタグ付けされうる。またユーザ・プロフィール・ストア206は、アクションログに記憶され、コンテンツストア212内のオブジェクトに対して実行されたアクションへの参照も維持しうる。
【0031】
エッジストア214は、ユーザとソーシャル・ネットワーキング・システム130上の他のオブジェクトとの間の接続を記述する情報を記憶する。あるエッジはユーザによって定義され、ユーザがユーザと他のユーザとの関係を指定できるようにする。例えばユーザは、友人、同僚、パートナなどといった、ユーザの実生活の関係に対応する他のユーザとのエッジを生成しうる。他のエッジは、例えば、ソーシャル・ネットワーキング・システム上のページへの興味を表明する、ソーシャル・ネットワーキング・システムの他のユーザとリンクを共有する、ソーシャル・ネットワーキング・システムの他のユーザによってなされた投稿にコメントするなど、ユーザがソーシャル・ネットワーキング・システム130内のオブジェクトと対話するときに生成される。エッジストア214は、オブジェクト、興味、および他のユーザについての親和性(affinity)スコアといった、エッジに関する情報を含むエッジオブジェクトを記憶する。親和性は、ユーザによって実行されたアクションに基づいてソーシャル・ネットワーキング・システム130内のオブジェクト、興味、および他のユーザについてのユーザの親和性を概算するために、ある期間にわたってソーシャル・ネットワーキング・システム130によって算出されうる。一実施形態では、ユーザと特定のオブジェクトとの間の複数の対話が、エッジストア214内のあるエッジオブジェクトに記憶されうる。例えば、レディー・ガガ(Lady Gaga)のアルバム「ボーン・ディス・ウェイ(Born This Way)」からの複数の曲を再生するユーザは、それらの曲についての複数のエッジオブジェクトを有するが、Lady Gagaについてはただ1つのエッジオブジェクトしか有しない。
【0032】
認可サーバ222は、ソーシャル・ネットワーキング・システム130のユーザの1つまたは複数のプライバシ設定を実施する。ユーザのプライバシ設定は、ユーザに関連付けられた特定の情報がどのように共有されうるか決定する。プライバシ設定は、ユーザに関
連付けられた特定の情報の指定および情報を共有しうる相手先の1つまたは複数のエンティティの指定を含む。情報を共有しうる相手先エンティティの例には、他のユーザ、アプリケーション、外部システム120またはその情報にアクセスしうる可能性を有する任意のエンティティが含まれうる。ユーザによって提供されうる情報は、プロフィール写真、ユーザに関連付けられた電話番号、ユーザの接続先、ユーザによって取られるアクション、例えば、接続先の追加、ユーザプロフィール情報の変更などといったユーザプロフィール情報を含む。
【0033】
プライバシ設定の指定は、異なる粒度で提供されうる。いくつかの実施形態では、プライバシ設定は、アクションタイプ、オブジェクトタイプ、オブジェクトプロパティ、またはそれらの任意の組み合わせを指定する。いくつかの実施形態では、プライバシ設定は、他のユーザと共有されるべき具体的な情報を特定する。例えば、プライバシ設定は、勤務先電話番号、または、プロフィール写真、自宅電話番号、近況といった特定の関連情報のセットを特定する。あるいは、プライバシ設定は、ユーザに関連付けられたすべての情報に適用されてもよい。特定の情報にアクセスできるエンティティのセットの指定も、様々な粒度で指定することができる。情報を共有しうる相手先の様々なエンティティのセットは、例えば、ユーザのすべての友人、友人のすべての友人、すべてのアプリケーション、またはすべての外部システム120を含みうる。ある実施形態は、エントリのセットの指定がエンティティの列挙を含むことを可能にし、例えばユーザは、ある情報へのアクセスが許可される外部システム120および/またはサード・パーティ・アプリケーションのリストを提供しうる。別の実施形態は、指定がエンティティのセットを、情報へのアクセスが許可されない例外と共に含むことを可能にする。例えばユーザは、すべての外部システム120がユーザの勤務先情報にアクセスすることを許可するが、勤務先情報へのアクセスを許可されない外部システム120のリストを指定することができる。ある実施形態は、ある情報へのアクセスを許可されない例外のリストをブロックリストと呼ぶ。ユーザによって指定されたブロックリストに属する外部システム120は、プライバシ設定で指定された情報へのアクセスを阻止される。情報の指定の粒度と情報が共有される相手先のエンティティの指定の粒度との様々な組み合わせが可能であること、すなわち、すべての個人情報が友人と共有されうるのに対し、すべての勤務先情報が友人の友人と共有されてもよいことに留意されたい。
【0034】
いくつかの実施形態では、認可サーバ222は、ユーザに関連付けられたサード・パーティ・アプリケーションごとまたはエンティティごとにユーザについてのプライバシ設定を記憶する。例えば、プライバシ設定は、特定のサード・パーティ・アプリケーションがアクセスすることができるアクションタイプ、オブジェクトタイプ、およびオブジェクトプロパティを指定する。いくつかの実施形態では、ユーザのためのプライバシ設定は、すべてのサード・パーティ・アプリケーションについてのプライバシ設定のセットを含む。例えば、プライバシ設定は、すべてのサード・パーティ・アプリケーションがアクセスしうるアクションタイプを指定しうる。
【0035】
いくつかの実施形態では、ユーザのためのプライバシ設定は、コンテンツを公開するための設定を記憶する。公開プライバシ設定は、サード・パーティ・アプリケーションがパーソナル化コンテンツをユーザの友人に公開してよいか、それともユーザだけに公開してよいか判定しうる。また公開プライバシ設定は、パーソナル化コンテンツがどのコミュニケーションチャンネルに公開されてよいかも指定しうる。例えば、パーソナル化コンテンツは、ニュースフィード、プロフィールページ、ユーザのアクティビティのタイムラインを含むプロフィールページ、アプリケーションページ、グループページ、ダッシュボードページ、メッセージ、または通知に公開されうる。認可サーバ22は、サード・パーティ・アプリケーションごとのプライバシ設定、またはユーザに関連付けられたすべてのサード・パーティ・アプリケーションについての単一のセットを含みうる。
【0036】
認可サーバ222は、ユーザに関連付けられたある情報が、ユーザの友人、外部システム120、および/または他のアプリケーションやエンティティによってアクセス可能かどうか判定するための論理を含む。サード・パーティ・アプリケーションまたは外部システム120は、1つまたは複数のアクションタイプ、1つまたは複数のオブジェクトタイプ、1つまたは複数のオブジェクトプロパティ、またはそれらの任意の組み合わせに基づいて集約されたユーザに関する情報にアクセスするために、認可サーバ222からの認可を必要としうる。ユーザのプライバシ設定に基づき、認可サーバ222は、別のユーザ、外部システム120、アプリケーションまたは別のエンティティが、ユーザによって取られたアクションに関する情報を含むユーザに関連付けられた情報へのアクセスを許可されるかどうか判定する。一実施形態では、認可サーバ22は、ユーザのプライバシ設定を使用して、サード・パーティ・アプリケーションまたは外部システム120が、1つまたは複数のアクションタイプ、1つまたは複数のオブジェクトタイプ、1つまたは複数のオブジェクトプロパティ、またはそれらの任意の組み合わせに基づいて集約されたユーザに関する情報にアクセスしてよいかどうか判定する。ユーザのプライバシ設定は、他のどのユーザ、アプリケーション、外部システムまたは他のエンティティが、ユーザのアクションまたはユーザに関連付けられた他の情報に関するデータの受信を許可されるか指定しうる。
【0037】
グラフアクションおよびグラフオブジェクトのための構造
図3は、本開示の実施形態による、グラフアクションおよびグラフアクションのグラフオブジェクトに対する関係を表す定義されたグラフ構造のハイ・レベル・ブロック図である。1つのアクションのみ、すなわち聴くアクション310のみが例示されているが、アクションの全領域がソーシャル・ネットワーキング・システム130内で定義に使用されうる。例えばユーザは、製品、音楽、スポーツの試合、映画といった様々なオブジェクトを読むこと、購入すること、販売すること、見ること、欲すること、再生すること、獲得すること、取得すること、推奨すること、見直すこと、訪問すること、およびそれらに対してコメントすることができる。ソーシャル・ネットワーキング・システム130の外部のエンティティは、ソーシャル・ネットワーキング・システム130上のソーシャルグラフへ公開するためにこれらのグラフアクションおよびグラフオブジェクトを定義しうる。グラフアクションおよびグラフオブジェクトは、ソーシャル・ネットワーキング・システム130上はもとより外部システム120上でもユーザによって実行されうる。
【0038】
図3に例示し、また先に論じたように、例示的実施形態は、インターネット・ラジオ・ウェブサイトといった外部システム120上で音楽を聴くことが関与する。聴くアクション310は、ネットワーク204に接続された独立型のデスクトップアプリケーション、ポッドキャスト、インターネットを介して放送している地上波ラジオ局、仮想音楽ロッカーウェブサイト、および音楽ストリーミング加入サービスウェブサイトを含む他の外部システム120について定義されうる。前述のように、いくつかの実施形態では、聴くアクション310といったアクションは、図示されてはいないが、再生リスト、ポッドキャスト、ストリーミングライブラリといった新しいオブジェクトが聴くアクション310によって作用されうるように、拡張可能なものとして定義することができる。聴くアクション310は、一実施形態では、ソーシャル・ネットワーキング・システム130によって提供されるツールを介してソーシャル・ネットワーキング・システム130の外部のエンティティによって定義され、ツールは、そのエンティティが、聴くアクション310タイプに関連付けられるタイプのオブジェクトを含めて、アクションプロパティを定義することを可能にする。ツールは、ソーシャル・ネットワーキング・システム130上のウェブページ上で新しいアクションタイプを公開することにより、ソーシャル・ネットワーキング・システム130の外部のエンティティがその新しいアクションタイプにアクセスできるようにすることができる。
【0039】
グラフオブジェクトは、ソーシャル・ネットワーキング・システム130の外部のエンティティにより、オブジェクトプロパティを含むように定義されうる。曲オブジェクト304のオブジェクトプロパティは、例えば、曲名、演奏時間、アーティストオブジェクト306、アルバムオブジェクト314、およびいくつかのジャンルオブジェクト316を含みうる。アーティストオブジェクト306のオブジェクトプロパティは、例えば、アーティスト名、アルバムオブジェクト314、いくつかのジャンルオブジェクト316、およびアーティスト生年オブジェクト308を含みうる。ラジオ局オブジェクト302は、アプリケーションによって作成される曲オブジェクト304との関連付けを含みうる。例えば、ラジオ局オブジェクト302は、ラジオ局オブジェクト302に関連付けられたラジオ局を聴いているユーザのために再生されるべき複数の曲オブジェクト304の再生リストを含みうる。一実施形態では、オブジェクトは、題名、内容、画像、およびURLといった標準オブジェクトプロパティを有する。他のオブジェクトプロパティは、ソーシャル・ネットワーキング・システム130の外部のエンティティによって定義されうる。このようにして、複数の異なるオブジェクトが相互に関連付けられうる。
【0040】
ラジオ局オブジェクト302は、「99.7 FM」や「ブリトニー・スピアーズ・チャンネル(Britney Spears Channel)」といった名前を有するものとして定義されうる。ラジオ局オブジェクト302は、企業によって所有されている、特定のインターネットURLでブロードキャストされているなどといったプロパティを含みうる。ラジオ局オブジェクト302は曲オブジェクト304にリンクされる。曲オブジェクト304は、ラジオ局で再生されたことのある1曲を表す。曲オブジェクト304はその曲を演奏するアーティストオブジェクト306にリンクされる。アーティストオブジェクト306は、そのアーティストが生まれた年を表すアーティスト生年オブジェクト308にリンクされうる。例えば、アーティストオブジェクト306が「ブリトニー・スピアーズ(Britney Spears)」を表していた場合には、そのアーティストオブジェクト306は「1981」と生年オブジェクト308にリンクされるはずである。というのは、サードパーティ開発者はBritney Spearsが1981年に生まれたことを知っているはずだからである。同様に、Britney Spearsの曲である「ティル・ザ・ワールド・エンズ(Till the World Ends9」の曲オブジェクト304の所有者は、この曲オブジェクト304を、「ファム・ファタール(Femme Fatale)」のアルバムオブジェクト314、ならびに「ポップ」、「ダンス−ポップ」、および「エレクトロポップ」のジャンルオブジェクト316とも関連付けるはずである。そうした情報は、データベースに記憶されたグラフオブジェクトに関する情報を用いて手動で定義され、または自動的に関連付けられうる。
【0041】
インターネット・ラジオ・ウェブサイトのためのサード・パーティ・アプリケーションは、一実施形態ではソーシャル・ネットワーキング・システム130によって提供されるツールを用いて、あるいは別の実施形態では、タグを用いたマークアップ言語ドキュメントとして外部システム120上のウェブページでオブジェクトを記述することによって、前述のラジオ局、曲、アーティスト、アーティストの生年、アルバム、およびジャンルのためのオブジェクトを定義しうる。聴くアクション310は、同じまたは別のサードパーティ開発者によって、またはソーシャル・ネットワーキング・システム130の管理者によって定義されうる。聴くアクション310は、ほとんどのアクションと同様に、アクションが行われた地理的位置を特定し、記録するために、位置オブジェクト312に関連付けることができる。また聴くアクション310は、アクションを実行しているユーザのユーザ・プロフィール・オブジェクト318とも関連付けることができる。最後に、聴くアクション310のプロパティは、聴くアクション310が何回実行されたかを特定するアグリゲータオブジェクト320を含みうる。一実施形態では、この実行されたアクションの回数は、ユーザごと、位置ごと、ユーザグループごと、またはソーシャル・ネットワー
キング・システム130内の任意の識別可能なノードごとに分類されうる。
【0042】
一例において、ソーシャル・ネットワーキング・システム130のユーザは、インターネット・ラジオ・ウェブサイトを訪問し、外部システム120上でホストされるそのインターネット・ラジオ・ウェブサイト上で取ったアクションを共有する許可をすでに与えていた。サード・パーティ・アプリケーションは、ユーザがラジオ局を聴取するといった、インターネット・ラジオ・ウェブサイト上でのアクションを実行する際に、ソーシャル・ネットワーキング・システム130でグラフ・オブジェクト・インスタンスを作成するために、マークアップ言語ドキュメントにおいてタグを符号化しうる。ユーザがインターネット・ラジオ・ウェブサイト上で音楽を聴く際に、聴くアクション310は、アクションログに記録され、またはユーザのユーザ・プロフィール・オブジェクト318に関連付けてソーシャル・ネットワーキング・システムへ伝達されうる。アクションログは、ユーザ識別子、グラフアクションのアクションタイプ、オブジェクト識別子、時間、日付、および他のメタデータ、例えば、オブジェクトプロパティや、ユーザが曲をどれ位聴いてからスキップしたかといったアクションプロパティ値を含みうる。ユーザがGPS機能を備えるモバイルデバイスを使用している場合、または地理的位置がそれ以外の方法で利用できる場合には、その位置の位置オブジェクト312が聴くアクション310に関連付けられうる。
【0043】
アグリゲータオブジェクト320は、アクションの実行回数を記録するために、聴くアクション310に関連付けられうる。一実施形態では、ラジオ局オブジェクト302、曲オブジェクト304、アーティストオブジェクト306、アルバムオブジェクト314、ジャンルオブジェクト316といった任意のオブジェクトが、集約されうるオブジェクトとして、サードパーティ開発者またはソーシャル・ネットワーキング・システムの管理者によって構成されうる。グラフ構造は完全にカスタマイズ可能であるため、集約、ならびに、合計、頻度、距離、平均、標準からの偏差値といった他の統計的機能が指定のオブジェクトに対して実行されうる。例えば、アーティストオブジェクト306によって表されるLady Gagaを聴くのに費やされた時間数といった興味深いデータが、構造化されたグラフアクションおよびグラフオブジェクトの単純な問合せから決定され、ソーシャル・ネットワーキング・システム130のユーザの任意のセットについて計算されうる。ユーザがラジオ局で曲を聴く際には、聴くアクション310は、その曲のリンクされたアーティストオブジェクト306、アルバムオブジェクト314、およびジャンルオブジェクト316はもとより、対応するラジオ局オブジェクト302、曲オブジェクト304とも関連付けられうる。アーティスト生年オブジェクト308は聴くアクション310に直接リンクされないが、代わりに、アーティストオブジェクト306に直接リンクされる。よって、特化された問合せを利用して、生年別にソートされた最も聴かれた上位アーティストといった興味深いデータの視覚化が生成されうる。
【0044】
集約ユーザデータの提供
図4Aに、一実施形態における、集約モジュール132のハイ・レベル・ブロック図をさらに詳細に例示する。集約モジュール132は、API要求モジュール140と応答モジュール137とを含む。これらのモジュールは、他のモジュールと連携して、アクションタイプ、オブジェクトタイプ、オブジェクトプロパティ、またはそれらの任意の組み合わせに基づいて集約されたユーザデータの要求に応答するように動作しうる。
【0045】
API要求モジュール136は、ユーザデータを求めるアプリケーション・プログラミング・インターフェース要求を受け取る。要求は、サード・パーティ・アプリケーションまたは外部システムによって送信されうる。要求は、ユーザ識別子および1つまたは複数のパラメータを含みうる。ユーザ識別子は、ユーザまたはユーザのユーザプロフィールを一意に識別する。パラメータは、1つまたは複数のアクションタイプ、1つまたは複数の
オブジェクトタイプ、1つまたは複数のオブジェクト特徴、またはそれらの任意の組み合わせを指定しうる。アクションタイプの例には、「聴く」、「再生する」、および「見る」が含まれる。オブジェクトタイプの例には、チェックイン、貼られたリンク、写真、近況メッセージ更新、音楽のジャンルまたは曲の再生回数が含まれる。いくつかの実施形態では、要求は、要求の送信者を識別する情報を含む。例えば、要求は、サード・パーティ・アプリケーションまたは外部システムを識別する情報を含みうる。
【0046】
API要求モジュール136は、要求の送信者が要求された情報へのアクセスを許可されているかどうか判定する。API要求モジュール136は、要求および要求パラメータの送信者を識別する情報を認可サーバ222へ送信する。API要求モジュール136が認可サーバ222から認可を受け取る場合、API要求モジュール136は要求を応答モジュール137へ送信する。そうでない場合、API要求モジュール136は、送信者が適切なアクセス権限を有しないことを示す送信者へのメッセージを送信する。あるいは、許可を要求しているユーザへダイアログボックスが提示されてもよい。
【0047】
応答モジュール137は、API要求内の1つまたは複数のパラメータに基づいてソーシャル・ネットワーキング・システムによって維持されるグラフオブジェクトからユーザのデータを集約し、集約ユーザデータを要求の送信者へ提供する。一実施形態では、「集約する」という用語は、要求された情報を検索して取り出し、収集し、または集中することを意味する。この場合、応答モジュール137は、グラフオブジェクトを検索して取り出し、次いで、グラフオブジェクトまたはグラフオブジェクトからの情報を要求の送信者へ送信する。例えば、要求モジュール137は、ユーザのランニングアクティビティに関する情報を含むグラフオブジェクトを検索して取り出し、そのグラフオブジェクトを要求の送信者へ送信しうる。一実施形態では、「集約する」という用語は、いくつかの情報セットに基づいて情報を決定することを意味する。よって、一実施形態では、集約情報は、いくつかの情報セットの組み合わせとしうる。この場合、応答モジュール137は、要求された情報を分析し、要求された情報に基づいて情報を決定する。決定された情報は、要求された情報の要約またはメトリックとしうる。例えば、要求された情報が、ユーザがある期間にわたってハイキングした距離を記述する場合、応答モジュール137は、要求された情報を集約してユーザが1週間にハイキングした平均距離に関する統計にすることができる。
【0048】
一実施形態では、応答モジュール137は、ソーシャル・ネットワーキング・システム130内の特定のノードおよびそのノードに関連したエッジの要求に応答する。例えば、オンライン音楽ストリーミングサービスのためのサード・パーティ・アプリケーションが、Justin Bieberに関連したユーザ対話を特定しようとする。その結果、オンライン音楽ストリーミングサービスのためのサード・パーティ・アプリケーションは、カスタム・アーティストック・オブジェクトをJustin Bieberと指定して、この情報を要求するAPI呼出を行うことになりうる。応答モジュール137は、一実施形態では、サード・パーティ・アプリケーションによって要求された書式のユーザ対話情報で応答しうる。別の実施形態では、応答モジュール137は、指定されたノードに関するエッジ情報の要求に対して、エッジタイプおよびユーザに関する情報を含む、指定されたノードとのユーザ対話に関するエッジ情報のリストで応答する。先進的なサード・パーティ・アプリケーションは、例えば、人口統計フィルタ、位置フィルタなどを含めて、ユーザ対話情報をフィルタリングするようにAPI呼出をカスタマイズしうる。
【0049】
一実施形態では、応答モジュール137は、特定のアクションタイプを有し、特定のオブジェクトプロパティを有するユーザ対話の要求に応答する。例えば、サード・パーティ・アプリケーションは、「聴く」というアクションタイプおよび「クラシック」というオブジェクトプロパティを指定したソーシャル・ネットワーキング・システムへのAPI呼
出を行うことによって、ユーザが聴いたクラシック音楽の曲に関する情報を要求する。別の例では、サード・パーティ・アプリケーションは、アクションタイプ「見る」およびオブジェクトプロパティ「アクション」を指定したAPI呼出を行うことによって、ユーザが好むアクション映画に関する情報を要求しうる。
【0050】
別の例では、応答モジュール137は、共通のオブジェクトプロパティを有するオブジェクトに対して実行された複数のタイプのアクションに関する情報の要求に応答する。例えば、Starbucksのためのサード・パーティ・アプリケーションが、Starbucksの所在地で、読む、飲む、滞在するなどといった任意の種類のアクションを実行したソーシャル・ネットワーキング・システムのユーザに関する情報を集めようとする。特定のStarbucksの各店舗はソーシャル・ネットワーキング・システム上で別々のノードを有するが、Starbucksの支店であり、コーヒーショップであるという共通のオブジェクトプロパティを共有しうる。その結果、それら複数のアクションタイプおよび複数のオブジェクトプロパティを含むいくつかのAPI呼出が受け取られることになりうる。いくつかの実施形態では、応答モジュール127は前述した集約オブジェクトを提供する。
【0051】
パーソナル化コンテンツの公開
図4Bに、一実施形態における、集約モジュール132のハイ・レベル・ブロック図をさらに詳細に例示する。グラフ・パブリッシャ・モジュール134は、コンポーザ入力モジュール150と、パーソナル化ストーリーモジュール152とを含む。これらのモジュールは連携して、集約ユーザデータに基づいて生成されるパーソナル化コンテンツをソーシャル・ネットワーキング・システムに公開するように動作しうる。
【0052】
グラフ・パブリッシャ・モジュール134は、パーソナル化コンテンツをソーシャル・ネットワーキング・システムに公開する。サード・パーティ・アプリケーションは、集約モジュール132によって提供されたユーザのデータの集約に基づいてユーザのためのパーソナル化コンテンツを生成しうる。いくつかの実施形態では、パーソナル化コンテンツを公開する前に、グラフ・パブリッシャ・モジュール134は、パーソナル化コンテンツを公開する許可を得るために認可サーバ222へ要求を送信する。ユーザのためのプライバシ設定は、どのエンティティがソーシャル・ネットワーキング・システムへのコンテンツの公開を許可されるか指定しうる。いくつかの実施形態では、ユーザのためのプライバシ設定は、パーソナル化コンテンツがどこで公開されてよく、だれがパーソナル化コンテンツを閲覧してよいかを指定する。いくつかの実施形態では、プライバシ設定は、ユーザの接続先(つながり)がコンテンツを閲覧してよいかどうか指定しうる。
【0053】
またプライバシ設定は、ユーザが、外部システム120による、サード・パーティ・アプリケーションによる、または任意の他のエンティティによる集約ユーザデータ、またはユーザに関連付けられた他のデータへのアクセスを規制することも可能にする。加えて、プライバシ設定は、様々なサード・パーティ・アプリケーションおよび/または外部システム120の間でのユーザに関連付けられたデータの共有も規制しうる。例えば、プライバシ設定は、サード・パーティ・アプリケーションがユーザに関連付けられた集約データにアクセスできるようにすると共に、そのサード・パーティ・アプリケーションが集約データを、プライバシ設定によって指定された1つまたは複数のさらに別のサード・パーティ・アプリケーションと共有できるようにすることもできる。サード・パーティ・アプリケーションおよび/または外部システム120の間でデータを共有することによって、サード・パーティ・アプリケーションまたは外部システム120は、ユーザに関するより正確な情報を維持するためにユーザに関する追加情報を利用することができる。一実施形態では、サード・パーティ・アプリケーションまたは外部システム120は、ユーザの集約データへのアクセスについて、ユーザがそうしたアクセスを許可するという条件で、ソー
シャル・ネットワーキング・システムに報酬を払う。
【0054】
グラフ・パブリッシャ・モジュール134は、パーソナル化コンテンツのタイプに基づいて選択される1つまたは複数のモジュールを介してパーソナル化コンテンツをソーシャル・ネットワーキング・システムに公開する。いくつかの実施形態では、パーソナル化コンテンツは、コンテンツがユーザにどのように提示されるべきかを指定する情報を含む。例えば、パーソナル化コンテンツは、パーソナル化コンテンツがニュースストーリーとして公開されるべきか、またはコンポーザインターフェースに挿入されるべきかを指定する情報を含みうる。一実施形態では、サード・パーティ・アプリケーションまたは外部システム120は、ソーシャル・ネットワーキング・システムへの公開のためのパーソナル化コンテンツを指定し、公開されたコンテンツへのアクセスを規制するプライバシ設定を指定しうる。例えば、サード・パーティ・アプリケーションによって公開されたコンテンツへのアクセスは、ユーザだけに制限され、またはユーザおよびユーザに接続された他のユーザだけに制限されうる。さらに別の例として、サード・パーティ・アプリケーションまたは外部システム120は、関連した主題を有する他のサード・パーティ・アプリケーションまたは外部システム120が、公開されたコンテンツにアクセスできるようにすることもできる。例えば、ビデオ・ストリーミング・アプリケーションは、他のビデオ・ストリーミング・アプリケーションが公開されたコンテンツにアクセスできるようにすることができる。サード・パーティ・アプリケーションまたは外部システム120によって指定されたプライバシ設定およびユーザによって指定されたプライバシ設定に従い、広告主は、公開されたコンテンツにアクセスするために、サード・パーティ・アプリケーション、外部システム120、ユーザおよび/またはソーシャル・ネットワーキング・システムのうちの1つまたは複数に報酬を支払うことができる。例えば、広告主は、公開された情報に基づいて広告の的を絞ることができる。
【0055】
グラフ・パブリッシャ・モジュール134は、パーソナル化コンテンツをコンポーザインターフェースに挿入するコンポーザ入力モジュール150を含む。パーソナル化コンテンツは、画像、リンク、ビデオ、テキスト、またはそれらの任意の組み合わせを含みうる。いくつかの実施形態では、コンポーザインターフェースは、近況メッセージ更新のためのコンテンツを受け入れる。コンポーザインターフェースによって生成されたコンテンツアイテムは、ユーザおよび/またはユーザの接続先に表示されうる。
【0056】
グラフ・パブリッシャ・モジュール134は、パーソナル化コンテンツをニュースストーリーとして公開するパーソナル化ストーリーモジュール152を含む。ニュースストーリーは、ユーザのニュースフィードに、および/またはユーザの接続先のニュースフィードに表示されうる。ニュースストーリーは、ユーザおよびユーザの接続先のうちの1つまたは複数にタグ付けしうる。例えば、ユーザがユーザの友人のうちの2人とサーフィンに出かけることを記述するニュースストーリーは、そのニュースストーリーにおいてユーザおよびユーザの友人にタグ付けしうる。
【0057】
パーソナル化コンテンツは集約ユーザデータへの洞察を提供しうる。例えば、集約ユーザデータがユーザのランニングアクティビティ、自転車アクティビティおよびハイキングアクティビティに関する場合、パーソナル化コンテンツは、ユーザのアクティビティに関する統計を含み、ユーザのための追加のアクションについての推奨を提供しうる。またパーソナル化コンテンツは、ユーザの目標に向けての成績および進捗状況を報告し、ユーザが目標に向けての進捗状況をより容易に確認し、または成績の達成を確定することができるようにしてもよい。
【0058】
パーソナル化コンテンツは、サード・パーティ・アプリケーションのページ、またはユーザのニュースフィード、プロフィールページ、またはユーザのアクティビティのタイム
ラインを含むページに表示されうる。あるいは、パーソナル化コンテンツは、通知または警告によってユーザに提示されうる。いくつかの実施形態では、パーソナル化コンテンツは、1つまたは複数のユーザ指定の基準が満たされたときにユーザに提示される。例えば、閾値に達したとき、目標が達成されたとき、マイルストーンに到達したとき、または任意の他の適切な基準が指定されたときに、パーソナル化コンテンツを含む通知がユーザに送信され、またはパーソナル化コンテンツがニュースフィードストーリーとしてユーザに、および/またはそのユーザに接続されたユーザに公開される。
【0059】
いくつかの実施形態では、パーソナル化コンテンツは、ユーザだけがアクセスを許可されているページに公開される。例えば、ユーザは1つまたは複数のサード・パーティ・アプリケーションから生成されたパーソナル化コンテンツを含む個人専用ページ(例えばダッシュボードページ)を有しうる。いくつかの実施形態では、パーソナル化コンテンツは、ユーザ情報と、ユーザの接続先といった他のユーザとの比較を提供する。例えば、パーソナル化コンテンツは、ユーザのランニングタイムがユーザの接続先のランニングタイムと比較してどうかを示すチャートを提示しうる。またパーソナル化コンテンツは、ユーザに接続された他のユーザにも表示されうる。例えば、パーソナル化コンテンツは、ソーシャル・ネットワーキング・システムでのユーザの接続先と、ユーザの接続先の接続先とに表示されうる。言い換えると、パーソナル化コンテンツは、ユーザの第1次および第2次の接続先に表示されうる。
【0060】
集約ユーザデータを提供するためのプロセス
図5に、サード・パーティ・アプリケーションにアクションタイプに基づいて集約されたユーザデータを提供するプロセス500の流れ図を示す。プロセス500は、1つまたは複数のプロセッサと非一時的メモリとを有するサーバシステム(例えばソーシャル・ネットワーキング・システム130)で実行される。非一時的メモリは、1つまたは複数のプロセッサによって実行されるべき1つまたは複数のプログラムを記憶する。1つまたは複数のプログラムはプロセス500のための命令を含む。
【0061】
このプロセス500では、ソーシャルグラフがソーシャル・ネットワーキング・システムによって維持される。ソーシャルグラフは、ソーシャル・ネットワーキング・システムのユーザのアクションに関するデータを含み、各アクションはアクションタイプを有する。より具体的には、ソーシャルグラフは、1つまたは複数のアクションタイプを有する1つまたは複数のアクションを表すエッジオブジェクトを含む。エッジオブジェクトは、ソーシャルグラフの2つ以上のグラフオブジェクトの間の関係を示す。エッジオブジェクトは、別のグラフオブジェクトとユーザとの対話に関する情報を記憶しうる。例えば、ユーザがニュースストーリーにコメントすると、ユーザのグラフオブジェクトとニュースストーリーのグラフオブジェクトとの間でエッジが作成され、または更新されうる。いくつかの実施形態では、ソーシャル・ネットワーキング・システムによって維持されるソーシャルグラフ内のエッジオブジェクトのうちの少なくとも1つが、ソーシャル・ネットワーキング・システムのユーザによって実行されたアクションに関する情報アイテムを記憶する。いくつかの実施形態では、ソーシャル・ネットワーキング・システムによって維持されるソーシャルグラフ内のエッジオブジェクトのうちの少なくとも1つが、ソーシャル・ネットワーキング・システムにおけるユーザの接続先の対話を記述する情報を含む。
【0062】
ソーシャル・ネットワーキング・システムのユーザのためのプライバシ設定が維持される(502)。プライバシ設定は、サード・パーティ・アプリケーションによってアクセス可能なユーザに関連付けられた1つまたは複数のアクションタイプを指定する。特に、プライバシ設定は、サード・パーティ・アプリケーションによってアクセス可能なユーザに関連付けられたエッジオブジェクトの1つまたは複数のアクションタイプを指定し、サード・パーティ・アプリケーションは、ソーシャル・ネットワーキング・システムとは別
個のエンティティによって維持される。プライバシ設定はユーザから受け取られうる。特に、ユーザのためのプライバシ設定はユーザによって指定されうる。例えばユーザは、「見た」、「再生した」、「聴いた」、および「共有した」というアクションに関連したユーザの対話に関する情報にサード・パーティ・アプリケーションがアクセスしうると指定することができる。ユーザは、異なるサード・パーティ・アプリケーションについて異なるプライバシ設定を指定することができる。例えばユーザは、第1のプライバシ設定のセットをあるサード・パーティ・アプリケーションに対して指定し、第2のプライバシ設定のセットを別のサード・パーティ・アプリケーションに対して指定することができる。いくつかの実施形態では、プライバシ設定は、サード・パーティ・アプリケーションによってアクセス可能なユーザに関連付けられた1つまたは複数のオブジェクトタイプを指定する。例えば、サード・パーティ・アプリケーションについてのプライバシ設定は、サード・パーティ・アプリケーションは、ユーザに関連付けられたコンテンツアイテム、イベント、およびメッセージにアクセスしうると指定することができる。いくつかの実施形態では、プライバシ設定は、1つまたは複数のオブジェクトプロパティを指定することができる。例えば、プライバシ設定は、レストランのタイプまたは映画のジャンルを指定することができる。
【0063】
ユーザに関連付けられたユーザアクションが複数のソースから受け取られる(504)。より具体的には、ユーザアクションに関する情報が複数のソースから受け取られ、各アクションはアクションタイプを有する。いくつかの実施形態では、ユーザのアクションに関する情報を含むエッジオブジェクトが複数のソースから受け取られる。複数のソースは、サード・パーティ・アプリケーションおよび外部システムを含みうる。いくつかの実施形態では、ユーザアクションは複数のソースから受け取られる。例えば、複数のソースは、少なくとも2つの異なるサード・パーティ・アプリケーションまたは少なくとも2つの異なる外部システムを含む。エッジオブジェクトは、ユーザまたはサード・パーティ・アプリケーションによってソーシャル・ネットワーキング・システムへ送信されうる。いくつかの実施形態では、エッジオブジェクトは、ソーシャル・ネットワーキング・システムによって維持されるソーシャルグラフから検索され、または特定される。いくつかの実施形態では、複数のソースは、プライバシ設定で指定されたサード・パーティ・アプリケーションを含まない。エッジオブジェクトは、ソーシャル・ネットワーキング・システム上、およびソーシャル・ネットワーキング・システム外でのユーザのアクティビティを記述する情報を含みうる。いくつかの実施形態では、エッジオブジェクトのうちの少なくとも1つが、ソーシャル・ネットワーキング・システムにおけるユーザの接続先のアクティビティを記述する情報を含む。
【0064】
サード・パーティ・アプリケーションからユーザのアクションに関する情報の要求が受け取られる(506)。より具体的には、サード・パーティ・アプリケーションからユーザに関連付けられたエッジオブジェクトに関する情報の要求が受け取られる。いくつかの実施形態では、要求はAPI呼出から受け取られる。いくつかの実施形態では、要求は1つまたは複数のアクションタイプを指定する。例えば要求は、「ランニング」、「水泳」、および「自転車」というアクションタイプのアクションタイプを指定しうる。いくつかの実施形態では、要求は1つまたは複数のオブジェクトタイプを指定する。例えば要求は、コンテンツアイテム、イベントおよび地理的位置を指定しうる。いくつかの実施形態では、要求は1つまたは複数のオブジェクトプロパティを指定する。例えば要求は地理的位置を指定しうる。いくつかの実施形態では、要求は1つまたは複数のオブジェクトタイプを指定しうる。例えば要求は、チェックイン、貼られたリンク、写真、および近況メッセージ更新を指定しうる。いくつかの実施形態では、要求は、アクションタイプとオブジェクトタイプとオブジェクトプロパティとの組み合わせを指定する。例えば要求は、「再生する」というアクションタイプと、「曲」というオブジェクトタイプと、曲のジャンルまたは曲の再生回数の閾値というオブジェクトプロパティとを指定しうる。いくつかの実施
形態では、要求で指定されたアクションタイプのうちの少なくとも1つが、ソーシャル・ネットワーキング・システムの外部のエンティティによって定義される。例えば、サード・パーティ・アプリケーションが「エクササイズ」というアクションタイプを指定しうる。
【0065】
ユーザに関連付けられたアクションのうちの1つまたは複数に関するデータがプライバシ設定に従って集約される(508)。いくつかの実施形態では、データは、プライバシ設定に従って、ユーザに関連付けられたソーシャルグラフの1つまたは複数のエッジオブジェクトから集約される。いくつかの実施形態では、データは、ユーザとの接続を確立しているユーザに関連付けられた1つまたは複数のエッジオブジェクトから集約される。言い換えると、データは、ユーザの接続先のアクティビティに関する情報を含む1つまたは複数のエッジオブジェクトから集約されうる。いくつかの実施形態では、データは、要求で指定されたアクションタイプ、オブジェクトタイプ、またはオブジェクトプロパティと一致する1つまたは複数のエッジオブジェクトから集約される。データは、アクションタイプ、オブジェクトタイプ、またはオブジェクトプロパティの組み合わせと一致する1つまたは複数のエッジオブジェクトから集約されうる。例えば、要求はアクション「再生する」を指定し、オブジェクトタイプは「曲」であり、オブジェクトプロパティは曲の再生回数の閾値を指定し、データは、ユーザによって閾値回数にわたって再生された曲オブジェクトから集約されうる。いくつかの実施形態では、データは、ソーシャル・ネットワーキング・システムにおけるユーザの接続先に関する情報を含む。例えば、要求が「〜と共に(with)」アクションタイプを指定すると、ソーシャル・ネットワーキング・システムは、ユーザと共にあったすべての人々のプロフィール情報を集約しうる。
【0066】
集約データはサード・パーティ・アプリケーションに提供される(510)。いくつかの実施形態では、集約データは、グラフオブジェクトとしてサード・パーティ・アプリケーションに提供される。
【0067】
パーソナル化コンテンツを公開するためのプロセス
図6に、パーソナル化コンテンツをソーシャル・ネットワーキング・システムに公開するプロセス600の流れ図を示す。プロセス600は、1つまたは複数のプロセッサと非一時的メモリとを有するサーバシステム(例えばソーシャル・ネットワーキング・システム130)で実行される。非一時的メモリは、1つまたは複数のプロセッサによって実行されるべき1つまたは複数のプログラムを記憶する。1つまたは複数のプログラムはプロセス600のための命令を含む。
【0068】
このプロセス600では、サード・パーティ・アプリケーションからユーザに関連付けられたアクションに関する情報の要求が受け取られる(602)。いくつかの実施形態では、サード・パーティ・アプリケーションからの要求は、ユーザに関連付けられたエッジオブジェクトに関する情報を要求する。要求は、1つまたは複数のアクションタイプ、1つまたは複数のオブジェクト・プロパティ・タイプ、1つまたは複数のオブジェクトプロパティ、またはそれらの任意の組み合わせを指定する。ユーザに関連付けられた1つまたは複数のアクションに関するデータがプライバシ設定に従って集約される。いくつかの実施形態では、データは、ユーザに関連付けられたソーシャルグラフの1つまたは複数のエッジオブジェクトから集約される。いくつかの実施形態では、データは、ユーザとの接続を確立しているユーザに関連付けられたソーシャルグラフの1つまたは複数のエッジオブジェクトから集約される。いくつかの実施形態では、データは、要求で指定されたアクションタイプ、オブジェクトタイプ、またはオブジェクトプロパティと一致する1つまたは複数のエッジオブジェクトから集約される。集約データはサード・パーティ・アプリケーションに提供される(606)。
【0069】
ユーザのためのパーソナル化コンテンツがサード・パーティ・アプリケーションから受け取られる(608)。サード・パーティ・アプリケーションは集約データを用いてパーソナル化コンテンツを生成する。いくつかの実施形態では、パーソナル化コンテンツは、集約データで記述されたユーザのアクティビティに関する統計を含む。例えば、集約データがユーザのランニングアクティビティに関する情報または洞察を含む場合、統計は、ユーザが1週間に走った平均距離を含みうる。いくつかの実施形態では、パーソナル化コンテンツは、目標に向けてのユーザの進捗状況を示す。例えばユーザは1ヵ月に約16km(10マイル)走るという目標を有し、パーソナル化コンテンツはその目標に向けてのユーザの進捗状況を示しうる。いくつかの実施形態では、パーソナル化コンテンツは、ユーザの接続先のうちの1つまたは複数に関する情報を含む。いくつかの実施形態では、パーソナル化は、ユーザのアクティビティとユーザの接続先のうちの1つまたは複数のアクティビティとの比較を含む。例えば、パーソナル化コンテンツは、ユーザのランニングタイムと接続先のランニングタイムとの比較を示しうる。
【0070】
いくつかの実施形態では、パーソナル化コンテンツはコンポーザインターフェースに挿入される。例えば、パーソナル化コンテンツは、近況メッセージ更新を投稿するためのコンポーザインターフェースに挿入されうる。いくつかの実施形態では、パーソナル化コンテンツはニュースストーリーに挿入され、ユーザのニュースフィードまたはプロフィールページに表示される。いくつかの実施形態では、ニュースストーリーはユーザの接続先に表示される。ニュースストーリーは、ニュースストーリーで言及された1つまたは複数のユーザにタグ付けしうる。
【0071】
パーソナル化コンテンツは、ソーシャル・ネットワーキング・システムによって維持されるソーシャルグラフ内のグラフオブジェクトとして記憶される(610)。いくつかの実施形態では、パーソナル化コンテンツを記憶するグラフオブジェクトは、集約データに関連付けられた1つまたは複数のエッジオブジェクトに関連付けられる。パーソナル化コンテンツは、ソーシャル・ネットワーキング・システムの1つまたは複数のページに公開されうる。例えば、ニュースストーリーは、ユーザだけが閲覧しうるページ(例えばダッシュボードページ)に公開されうる。
【0072】
動作例
図7は、集約データから生成されたパーソナル化コンテンツの公開の一例の相互作用図である。
図7の例では、サードパーティのビデオ・ストリーミング・アプリケーション705がソーシャル・ネットワーキング・システム130の集約データからパーソナル化コンテンツを生成するが、どんなサード・パーティ・アプリケーションまたは外部システム120がパーソナル化コンテンツを生成してもよい。ユーザは、サードパーティのビデオ・ストリーミング・アプリケーション705といったサードパーティのビデオ・ストリーミング・アプリケーションが、ユーザに関連付けられた指定のアクションタイプにアクセスすることを許可する1つまたは複数のプライバシ設定を維持する(710)。この例では、プライバシ設定は、サードパーティのビデオ・ストリーミング・アプリケーション705が、「閲覧した」、「購入した」、「見た」、「再生した」、「聴いた」、または「共有した」というアクションタイプにアクセスすることを許可する。ユーザが異なるサード・パーティ・アプリケーションによってアクセス可能なアクションタイプを異なる方法で規制することを可能にするさらに別のプライバシ設定がさらに別のサードパーティのビデオ・ストリーミング・アプリケーションについて維持されうる(710)。例えば、プライバシ設定は、さらに別のサードパーティのビデオ・ストリーミング・アプリケーションが、「見た」、「購入した」、または「再生した」というアクションタイプにアクセスすることを許可し、ユーザが、異なるサードパーティのビデオ・ストリーミング・アプリケーションにアクセス可能なアクションタイプをカスタマイズすることを可能にする。
【0073】
異なるアクションタイプを有する、ユーザに関連付けられたアクションが様々なソースから受け取られる(720)。例えば、「見た」アクションタイプを有するアクションが、ソーシャル・ネットワーキング・システムを介してビデオデータを閲覧しているユーザから受け取られ720、または「共有した」アクションタイプを有するアクションが、ユーザが他のソーシャル・ネットワーキング・システム・ユーザとビデオデータを共有するときに受け取られる(720)。またソーシャル・ネットワーキング・システム外で実行されたアクションも受け取られうる。例えば、オンラインのマーケットプレイスから映画または他のオンライン・ビデオ・コンテンツを購入するユーザは、「購入した」アクションタイプを有するアクションとして受け取られる(720)。
【0074】
サードパーティのビデオ・ストリーミング・アプリケーション705は、ユーザのアクションに関する情報を要求し725、ソーシャル・ネットワーキング・システムがサードパーティのビデオ・ストリーミング・アプリケーション705から要求を受け取ると、アクションタイプおよび/またはオブジェクトタイプが要求から抽出され、サードパーティのビデオ・ストリーミング・アプリケーションとの通信のためのデータを識別するのに使用される。例えば、サードパーティのビデオ・ストリーミング・アプリケーション705は、特定のアクションを検索するために、「買った」、「見た」、および「共有した」というアクションタイプを要求する(725)。要求には、サードパーティのビデオ・ストリーミング・アプリケーション705が検索して取り出すべきデータをさらに絞り込むことを可能にする追加情報が含まれうる。例えば、サードパーティのビデオ・ストリーミング・アプリケーション705は、ユーザが映画を見たムーブシアターの場所であるオブジェクトを識別するために映画館に関連付けられた地理的位置を指定し、またはユーザによって見られ、またはユーザによって買われたコンテンツに関連付けられたページを識別するためにソーシャル・ネットワーキング・システム内のページを識別しうる。
【0075】
要求内の基準を満たすデータが集約され730、サードパーティのビデオ・ストリーミング・アプリケーション705に提供される(735)。例えばデータは、ユーザが買った、見た、または共有したコンテンツを記述するデータを検索するために、「買った」、「見た」および「共有した」というアクションタイプを有するエッジオブジェクトから集約される(730)。同様に、ユーザが要求によって指定された地理的位置にいるときに見られたコンテンツが集約され730、ユーザが見た、または買ったコンテンツに関連付けられたページが集約され730、サードパーティのビデオ・ストリーミング・アプリケーション705に提供される(735)。
【0076】
集約データに基づき、サードパーティのビデオ・ストリーミング・アプリケーション705は、ユーザのためのパーソナル化コンテンツを生成する(740)。例えば、パーソナル化コンテンツは、ユーザが最も頻繁に見たビデオデータを識別し、指定時間中にユーザによって見られ、または共有されたコンテンツを識別し、またはユーザが指定された地理的位置にいた間に見られたコンテンツを識別する。いくつかの実施形態では、パーソナル化コンテンツは、指定されたリストの映画を見ることといった目標に向けてのユーザの進捗状況を示す。パーソナル化コンテンツは、1つまたは複数の指定された基準を満たす集約データに基づいて生成されうる(740)。例えば、サードパーティのビデオ・ストリーミング・アプリケーション705は、ユーザが特定の映画を見たこと、または特定の位置でチェックインしている間に指定された映画を見たことを集約データが示す場合に、パーソナル化コンテンツを生成する。
【0077】
サードパーティのビデオ・ストリーミング・アプリケーション705はパーソナル化コンテンツをソーシャル・ネットワーキング・システム130へ送信し745、ソーシャル・ネットワーキング・システム130はパーソナル化コンテンツを、ソーシャル・ネットワーキング・システム130によって維持されるソーシャルグラフ内のグラフオブジェク
トとして記憶する(750)。一実施形態では、ソーシャル・ネットワーキング・システム130はパーソナル化コンテンツを、近況メッセージ更新を投稿するためのインターフェースといったコンポーザインターフェースにも挿入する。加えて、パーソナル化コンテンツは、ユーザおよび/またはユーザに接続された他のユーザに公開760されてもよい。例えば、パーソナル化コンテンツは、ユーザまたはユーザに接続されたユーザに提示されるニュースフィード内のニュースストーリーとして含められ、ユーザへの通知として提供され、ユーザのプロフィールページ上に含められ、または任意の適切なやり方でユーザに提示されうる。
【0078】
前述のように、ユーザは、サードパーティのビデオ・ストリーミング・アプリケーション705がソーシャル・ネットワーキング・システム130を介して公開760してよいパーソナル化コンテンツを規制するプライバシ設定を維持しうる。例えば、プライバシ設定は、サードパーティのビデオ・ストリーミング・アプリケーションを、「買った」アクションタイプに基づくのではなく、「見た」アクションタイプに基づくパーソナル化コンテンツを公開すること760だけに制限しうる。追加のプライバシ設定は、追加のサードパーティのビデオ・ストリーミング・アプリケーションが、「見る」アクションタイプに基づくパーソナル化コンテンツを、そのユーザに接続されたユーザには公開するが760、そのユーザに接続されたユーザに接続されているもののそのユーザには接続されていないさらに別のユーザには公開しないことを許可しうる。
【0079】
要約
本発明の実施形態の以上の説明は例示のために提示したものであり、網羅的であることも、システムおよび方法を開示通りの形態に限定することも意図されていない。当業者は、上記の開示に照らして多くの改変および変形が可能であることを理解することができる。
【0080】
本明細書のいくつかの部分は、システムおよび方法の実施形態を、情報に対する操作のアルゴリズムおよび記号表現として記述している。これらのアルゴリズムの記述および表現は、データ処理分野の当業者によってその作業の内容を他の当業者に効果的に伝えるために一般に使用される。これらの操作は、機能的、計算的、または論理的に記述されているが、コンピュータプログラムまたは等価の電気回路、マイクロコードなどによって実装されるべきことが理解される。さらに、往々にして、一般性を失わずに、これらの操作の構成をモジュールと呼ぶことが好都合であることも判っている。前述の操作およびそれらに関連付けられるモジュールは、ソフトウェア、ファームウェア、ハードウェア、またはそれらの任意の組み合わせとして具現化されうる。
【0081】
本明細書で記述する工程、操作、またはプロセスのいずれも、1つまたは複数のハードウェアまたはソフトウェアモジュールを単独で、または他のデバイスと組み合わせて用いて実行され、または実装されうる。一実施形態では、ソフトウェアモジュールは、記述した工程、操作、またはプロセスのいずれかまたは全部を実行するためにコンピュータプロセッサによって実行されうる、コンピュータ・プログラム・コードを含むコンピュータ可読媒体を備えるコンピュータプログラム製品を用いて実装される。
【0082】
またシステムおよび方法の実施形態は、本明細書の操作を実行するための装置にも関連しうる。この装置は、必要とされる目的のために専用に構築されてよく、および/またはコンピュータに記憶されたコンピュータプログラムによって選択的にアクティブ化され、または再構成される汎用コンピューティングデバイスを備えていてもよい。そうしたコンピュータプログラムは、コンピュータ・システム・バスに結合されうる、非一時的な有形のコンピュータ可読記憶媒体、または電子命令を記憶するのに適した任意のタイプの媒体に記憶されうる。さらに、本明細書で言及した任意のコンピューティングシステムは、単
一のプロセッサを含んでいてもよく、計算能力を高めるために複数のプロセッサ設計を用いたアーキテクチャであってもよい。
【0083】
またシステムおよび方法の実施形態は、本明細書で記述した計算プロセスによって作り出される製品に関連したものであってもよい。そうした製品は、計算プロセスの結果として得られる情報を含んでいてよく、情報は、非一時的な有形のコンピュータ可読記憶媒体上に記憶され、本明細書で記述したコンピュータプログラム製品または他のデータ組み合わせの任意の実施形態を含みうる。
【0084】
最後に、本明細書で使用される言葉は主として、読みやすさと教示を目的として選択されたものであり、本発明の主題を正確に叙述し、またはその範囲を定めるために選択されたものではない場合もある。したがって、システムおよび方法システムおよび方法の範囲は、この詳細な説明によってではなく、むしろ本明細書に基づく出願時に発行される任意の特許請求の範囲によって限定されることが意図されている。したがって、システムおよび方法の実施形態の開示は、本発明の範囲を限定するもののではなく例示するためのものであり、本発明の範囲は添付の特許請求の範囲に記載される。
ソーシャル・ネットワーキング・システムは、サード・パーティ・アプリケーションが、アクションタイプおよび複数のオブジェクトに対するアクションタイプに対応するユーザのデータの集約に基づいてユーザデータを要求することを可能にする。ソーシャル・ネットワーキング・システムのユーザは、ユーザの情報のプライバシまたはアクセス可能性を、情報に関連付けられたアクションタイプに基づいて提供しうる(例えばユーザは、特定のアプリケーションに、あるタイプのすべてのアクションへのアクセスを、それらのアクションのソースにかかわらず許可してよい)。サード・パーティ・アプリケーションは、このアクセスした情報を使用することにより、ユーザのデータの集約に基づいてユーザのためのパーソナル化コンテンツを生成し、次いでパーソナル化コンテンツをソーシャル・ネットワーキング・システムに戻して公開しうる。