(57)【特許請求の範囲】
【請求項１】
ソーシャル情報を供給するための方法であって、
ソーシャルネットワーキングシステム内のノードを定義するために、ウェブページからの情報にアクセスするステップであって、前記ウェブページは、該ソーシャルネットワーキングシステムに関連付けられたドメインとは異なるドメインに関連付けられている前記ステップと、
前記ソーシャルネットワーキングシステム内のノードを生成するステップであって、該生成されるノードは前記アクセスされた情報によって少なくとも部分的に定義されるものである前記ステップと、
前記ソーシャルネットワーキングシステム内の前記ノードを維持管理し、かつ、該ノードと該ソーシャルネットワーキングシステムによって維持管理される１以上の他のノードとのコネクションを維持管理するステップと、
前記ノードに関連した行動を実行するように、前記ソーシャルネットワーキングシステムの１以上のユーザからリクエストを受信するステップと、
前記ソーシャルネットワーキングシステムにより、１以上のユーザの前記ノードとのインタラクションに関連付けられた情報を記憶するステップと
を備える方法。
【請求項２】
前記ノードに関連したユーザの行動を、該ユーザがコネクションを確立している前記ソーシャルネットワーキングシステムの１以上の他のユーザ宛のストリームで伝達するステップと、
前記ノードに関連した行動を実行したユーザのために、該ユーザと前記ノード間の親近性を更新するステップと、
前記ノードに関連した行動を実行したユーザのプロフィールを、前記ユーザが行動を実行したことを反映するように更新するステップと、
前記ノードに関して記憶した情報を、ユーザが前記ノードに関連付けられた行動を実行したことを反映するように更新するステップと
をさらに備え、
ここで、ソーシャルネットワーキングシステム内の前記ノードは、当該ソーシャルネットワーキングシステム内のコンテンツのページを表すものであり、且つ、
前記行動は、前記ページへの関心をユーザが表明すことであり、
前記ノードに関連付けられた前記ページへの関心をユーザが表明することに応じて、該ユーザのプロフィールを前記表明した関心で更新するステップ
をさらに備える請求項１に記載の方法。
【請求項３】
ソーシャルネットワーキングシステム内の前記ノードは、イベントを表すものであり、
前記行動は、ユーザが前記イベントの参加を確認するものであることを特徴とする請求項１に記載の方法。
【請求項４】
前記ソーシャルネットワーキングシステム内のノードは、場所を表すものであり、
前記行動は、ユーザが前記場所での該ユーザの存在を確認するものであることを特徴とする請求項１に記載の方法。
【請求項５】
前記ウェブページからの情報にアクセスする前記ステップは、
ウェブページのマークアップ言語ドキュメントを取得するステップと、
前記マークアップ言語ドキュメント内の１以上のタグを特定するステップと
を備え、前記タグは前記アクセスした情報を含む前記ステップであって、前記１以上のタグは、前記ノードのタイプ、前記ノードの名称、前記ノードに関連付けられたテキスト形式の説明、前記ノードに関連付けられたロケーション 情報、前記ノードの固有識別子、前記ノードのアドミニストレーターとして指定された前記ソーシャルネットワーキングシステムの１以上のユーザのアイデン ティティ、からなるグループから選択される少なくとも１つの情報アイテムを含む、請求項１乃至４のいずれかに記載の方法。
【請求項６】
前記アクセスした情報は前記ノードタイプの定義を含み、
ユーザが前記ノードタイプに基づいて前記ノードと関連付けを実行することのできる１以上の行動を制限するステップをさらに備える請求項１乃至５のいずれかに記載の方法。
【請求項７】
前記アクセスした情報は前記ノードに関連付けられたテキスト形式の説明を含み、
前記ノードに関して前記ソーシャルネットワーキングシステムで前記テキスト形式の説明を表示するステップをさらに備える請求項１乃至５のいずれかに記載の方法。
【請求項８】
前記アクセスした情報は、前記ノードのアドミニストレーターとして指定された前記ソーシャルネットワーキングシステムの１以上のユーザのアイデンティティを含み、
前記ノードのためにアドミニストレーターとして指定された１以上のユーザが、前記ソーシャルネットワーキングシステムにより記憶されたノードに関する情報を更新できるようにするインタフェースを提供するステップをさらに備える請求項１乃至５のいずれかに記載の方法。
【請求項９】
ユーザ装置からウェブページに関連付けられたリクエストを受けとることに応じて前記ノードを生成するステップと、前記ウェブページに関連付けられたノードが存在しないことを判断するステップとをさらに備える請求項１乃至８のいずれかに記載の方法。
【請求項１０】
ソーシャル情報を提供する方法であって、
ソーシャルネットワーキングシステムのサーバで、マークアップ言語ドキュメント内の命令に基づく情報のリクエストを受信するステップであって、前記情報 のリクエストは、前記ソーシャルメットワーキングシステムのドメインとは異なるサードパーティーウェブサイトのドメイン内にあるサードパーティーウェブサイトのウェブページのリクエストに応答するものであり、前記マークアップ言語ドキュメントは、前記ソーシャルネットワーキングシステムから取得した情報を含む前記ウェブページ内にフレームを作成する命令を含む前記ステップと、
前記サードパーティーウェブサイトの前記ウェブページに関連したノードが前記ソーシャルメットワーキングシステム内に存在していないことを判断するステップと、
前記ソーシャルメットワーキングシステムによって前記ウェブページ内の１以上のタグからの情報にアクセスするステップと、
前記アクセスされた情報に少なくとも部分的に基づいて、前記ソーシャルメットワーキングシステム内の新しいノードを生成するステップと、
前記リクエストされた情報を判断するステップであって、前記情報は、ユーザが前記ソーシャルネットワーキングシステム内のノードとインタラクトできるようにする情報である前記ステップと、
前記ウェブページの前記フレームに表示する情報を送るステップと、
ユーザにより前記ノードとインタラクトするリクエストを受信するステップと、
前記ソーシャルネットワーキングシステムでインタラクションを記憶するステップと
を備える方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的にソーシャルネットワークサービスに関し、特にソーシャルグラフがソーシャルネットワーキングシステム外のウェブページを含み得るソーシャルネットワーキング環境に関する。
【背景技術】
【０００２】
ソーシャルネットワーキングシステムが近年普及している、前記システムはユーザが他のユーザらと繋がってコミュニケーションすることのできる有用な環境を提供する。様々な異なるタイプのソーシャルネットワーキングシステムが存在するけれども、これらのシステムは、ユーザがソーシャルネットワークを決めて当該ソーシャルネットワークとインタラクトする（interact；相互作用する／やりとりする）ことを可能にするメカニズムを通常提供する。この明細書において、ユーザは個人エンティティ（entity；実体、存在）又は他エンティティ、例えば企業又は他の非個人エンティティであり得る。それ故、友人間でソーシャルコミュニケーションできるようにしている場合、ソーシャルネットワーキングシステムは潜在的な顧客に関与する様々なビジネスツールになり得る。商業目的がなくとも、ソーシャルネットワーキングシステムは他タイプのエンティティがメッセージを広げることを可能にする。例えば、非個人エンティティは、該非個人エンティティがコミュニケーションを受信し関心あるユーザのグループに伝えるフォーラムを提供できるようにする、他ユーザが参加できる（又は“ファン”になる）ページ又はグループを設定する。
【０００３】
ソーシャルネットワーキングシステムによって追跡され保持される有用なソーシャル情報は、複数のエッジにより相互に結びつけられた複数のノードを含む“ソーシャルグラフ”に関して考えられ得る。ソーシャルグラフ内の各ノードは、他ノードに従って動作できる及び／又は他ノードにより動作される何かを示し得る。ノードの一般的な例は、ユーザ、非個人エンティティ、コンテンツアイテム、グループ、イベント、メッセージ、コンセプト、及びソーシャルネットワーキングシステム内のオブジェクトによって示され得る他のものを含む。ソーシャルグラフ内の２つのノード間の１つのエッジは、他ノード上でそれらノードの１つによって実行された動作によって生じ得る、前記２つのノード間のコネクション（connection；繋がり）の特別な種類を示す。
【０００４】
例えば、一人のユーザがソーシャルネットワーキングシステムにおいて他のユーザとのコネクションを確立する場合に、当該二人のユーザらはノードとして示され、彼らの間のエッジは確立されたコネクションを示す。この例を続けて、それらユーザの一人はソーシャルネットワーキングシステム内の他ユーザへメッセージを送信し得る。前記メッセージを送信するこの動作はそれら２つのノード間の他エッジであり、ソーシャルネットワーキングシステムによって追跡され得る。前記メッセージ自身は、ノードとして取り扱われ得る。他の例において、あるユーザは他ユーザを、ソーシャルネットワーキングシステムにより維持管理される画像にタグ付け得る。このタグ付け動作は、ノードである各ユーザらと画像との間のエッジのみならず、そのユーザ間のエッジも生成する。さらに他の例において、ユーザがイベントへの参加を確認した場合に、そのユーザとそのイベントはノードであり、前記イベント参加はエッジである。ソーシャルグラフを用いるゆえに、ソーシャルネットワーキングシステムは、多くの異なるタイプのオブジェクトとそれらオブジェクト間のインタラクション（interaction: 相互作用）とコネクションを追跡し続けて、それにより社会的に関連する情報の極めて豊かな記憶を保持し続ける。
【０００５】
社会的に関連する情報を追跡するソーシャルネットワーキングシステムの能力の１つの限界は、異なるオブジェクトを示す能力とそれらの間でどんなインタラクションも追跡する能力である。この問題は、本明細書のソーシャルグラフの論議の文脈の中で理解され得る。まず第１にノードによって示されないものがある場合、ソーシャルネットワーキングシステムがそれらノード間のエッジを追跡することのできるように、他ノードはそれとインタラクトすることができない。例えば、ユーザがソーシャルネットワーキングシステム外の製品を購入したかどうかを追跡するのが好ましい場合、ノードとしてその製品を追跡する必要のある情報がソーシャルネットワーキングシステムに提供されるべきである。しかしながら、ソーシャルネットワーキングシステムによって効果的に用いられ得るような、この情報を提供するのに有効なメカニズムがない。それ故に、必要とされるものは、ソーシャルネットワーキングシステムが社会的に関連する多種多様な物事の情報を追跡することのできるように、ソーシャルグラフの拡張を容易にするメカニズムである。
【発明の概要】
【０００６】
ソーシャルネットワーキングシステムが、オブジェクトとそれらのインタラクションに関して社会的に関連する情報を追跡することのできるように、本発明の実施形態は、ノードをソーシャルグラフに組み込むための適応性あるメカニズムを提供する。特に、本発明の実施形態は、ノードがウェブページ（又はＵＲＬ、ＵＲＩ、あるいはインターネットや他のネットワーク上の任意のアドレスによって示されるもの）との関連によって定義されることを可能にする。ウェブページは、ソーシャルネットワーキングシステムのドメイン外にあってもよい。何でもウェブページにより示すことができ、ウェブページは人、場所、あるいは他の物事を示すように簡単に生成され得るから、インターネット上の任意の場所にソーシャルグラフを効果的に拡大する。
【０００７】
一実施形態において、ウェブページはソーシャルネットワーキングシステム内のノードと関連付けられる。ウェブページは、ウェブブラウザアプリケーションがレンダリングしてユーザ装置上にウェブページを表示するのに用いることのできる、マークアップ言語ドキュメントによりエンコードされる。マークアップ言語ドキュメントは、ノードに関するメタ情報を含む１以上のタグを有する。タグは、テキスト形式のタイトル、ラベル、ノード、ノードの固有識別子、マイクロフォーマット、及び／又はノードに関する説明、同様の他の情報、例えばノードタイプを提供する。ソーシャルネットワーキングシステムは、マークアップ言語ドキュメントからタグを取得し、ウェブページのノードに関して情報を記憶する。このように、ソーシャルネットワーキングシステム内のノードは、ウェブページに含まれる情報に基づいて生成され定義され得る。ウェブページは、ソーシャルネットワーキングシステムのドメイン外にあってもよく、ソーシャルネットワーキング運営者（operator）以外のエンティティによって運営し得る。だから、サードパーティー（第三者）は、ソーシャルネットワーキングシステムによって用いられるノードを定義、生成、維持管理することができる。これは事実上、サードパーティの開発者にソーシャルグラフを公開して、複雑かつ豊かなソーシャルグラフのさらなる開発と定義を促す。
【０００８】
使用の際に、一実施形態において、ユーザ装置はウェブサーバからウェブページを要求する、前記ウェブページはソーシャルネットワーキングシステム外にあって該システムから切り離されていてもよい。サーバは、ユーザ装置で動作しているブラウザアプリケーションのための命令を含むマークアップ言語ドキュメントを、ソーシャルネットワーキングシステムから取得したウェブページ情報に組み込むため、ユーザ装置に送信する。一実施形態において、前記命令は、ソーシャルネットワーキングシステム（例えばｉｆｒａｍｅ［インラインフレーム］）から直接的に引き出したコンテンツを含むフレームを前記ウェブページ内に生成する。ソーシャルネットワーキングシステムによって提供されるフレームのコンテンツは、ユーザがノードと関連付けることを可能にするアクションボタンを有する。このアクション（行動）はノードタイプに依存し得る、例えばファンになること又はファンページノードにリンクすること、ノードに関連付けられたグループや関心に加わること、ノードに関連付けられたレビューを投稿すること、ノードと結びつけること、他のユーザとノードを共有すること、イベントノードへの参加を確認すること、ロケーションノードにチェックインすること、メディアアイテムノードにコメントすることなどであり、これらはほんの一例を挙げたにすぎない。フレームは、例えばアクションを実行した、ソーシャルネットワーキングシステム内の１以上のユーザのコネクション指示など、該ユーザ及びノードに関連するソーシャル情報を含み得る。
【０００９】
フレームはソーシャルネットワーキングシステムとの直接インタフェースであるから、ソーシャルネットワーキングシステム上でユーザはいつもどおりに、アクションを実行するためにアクションボタンを選択し得る。外部ウェブサイトは、アクションが行われたことあるいはユーザアイデンティティでさえも知る必要がない。一旦アクションがユーザによって行われると、ソーシャルネットワーキングシステムは、ユーザがソーシャルネットワーキングシステム内のノードとインタラクトしたときのように対処し得る。例えば、ソーシャルネットワーキングシステムは、ノードとの関連を追加するようにユーザプロフィールを更新すること、ユーザコネクションにアクションを提供すること、及び／又はユーザがソーシャルネットワーキングシステム内のノードとインタラクトするときに割り当てられるレスポンスの組み合わせを提供することができる。
【００１０】
したがって、本発明の実施形態は、ソーシャルネットワーキングシステムによって用いられるソーシャルグラフが、ウェブページによって示され得るどんなものでも含むことを可能にする。これはまた、ユーザがソーシャルネットワーキングシステムのドメイン外のソーシャルグラフ内のノードと簡単にインタラクトできるようにする。最後に、これは、もとのソーシャルネットワーキングシステムへと広められるように、ウェブページを示すノードとのユーザインタラクションを可能にし、それから様々な目的（例えば、アクティビティフィードを送ること、ターゲット広告を行うことなど）のために結果として生じる社会的に関連する情報を用い得る。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態に係る、パーソナライズされたコンテンツをソーシャルネットワーキングシステムのユーザに提供するシステムネットワーク概略図である。
【００１２】
【図２】本発明の実施形態に係る、ソーシャルネットワーキングシステムの概略図である。
【００１３】
【図３】本発明の実施形態に係る、ソーシャルネットワーキングシステム外のノードとインタラクトするためのフレームを含む外部ウェブサイトのウェブページである。
【００１４】
【図４】本発明の実施形態に係る、ソーシャルネットワーキングシステム外の多数ノードとインタラクトするための多数フレームを含む外部ウェブサイトのウェブページである。
【００１５】
【図５】本発明の実施形態に係る、ソーシャルネットワーキングシステム外のノードとインタラクトする処理のインタラクション概略図である。
【００１６】
図は、説明だけを目的として本発明の各種の実施の形態を示す。当該分野の技術者には言うまでもなく、本明細書で説明する構造および方法の代替の実施の形態が、本明細書で説明する本発明の原理から逸脱することなく利用できることは、以下の説明から直ちに理解されよう。
【発明を実施するための形態】
【００１７】
ソーシャルネットワーキングシステムアーキテクチャの概要
図１は、ソーシャルネットワーキングシステム１３０のユーザにパーソナライズされたコンテンツを提供するシステム１００の一実施形態のネットワーク構成図である。システム１００は、１以上のユーザ装置１１０、1以上の外部ウェブサイト１２０、ソーシャルネットワーキングシステム１３０及びウェブサイト１４０を含む。例図の目的のために、図１により示されるシステム１００の一実施形態は、たった１つの外部ウェブサイト１２０とたった１つのユーザ装置１１０とを含んでなる。しかしながら、他の実施形態において、システム１００は、より多くのユーザ装置１１０及び／又はより多くの外部ウェブサイト１２０を含み得る。ある実施形態において、ソーシャルネットワーキングシステム１３０はソーシャルネットワークプロバイダにより運営される、これに対し外部ウェブサイト１２０は異なるエンティティにより運営され得るという点でソーシャルネットワーキングシステム１３０と区別される。様々な実施形態において、しかしながら、ソーシャルネットワーキングシステム１３０及び外部ウェブサイト１２０は、ソーシャルネットワーキングシステム１３０のユーザにソーシャルネットワーキングサービスを提供するように連携して運営される。この意味では、ソーシャルネットワーキングシステム１３０はプラットフォーム、またはバックボーン、他のシステム、例えば外部ウェブサイト１２０を提供し、ソーシャルネットワーキングサービスと機能をユーザにインターネットを通じて提供するのに用いられ得る。
【００１８】
ユーザ装置１１０はユーザからの入力を受け取ることができ、ネットワーク１４０を介してデータを伝送及び受信することができる１以上のコンピュータ装置を含む。例えば、ユーザ装置１１０は、デスクトップコンピュータ、ラップトップコンピュータ、スマートフォン、パーソナルデジタルアシスタント（ＰＤＡ）、または計算機能とデータ通信能力を含む他のどんな装置であってもよい。ユーザ装置１１０は、有線と無線の通信システムの両方を使用して、外部ウェブサイト１２０及びソーシャルネットワーキングシステム１３０と、ローカルエリア及び／又はワイドエリアネットワークの任意の組み合わせを備え得るネットワーク１４０を介して通信するように構成される。
【００１９】
一実施形態において、ユーザ装置１１０は、ブラウザアプリケーション１２０を用いて、外部ウェブサイト１２０又はソーシャルネットワーキングシステム１３０から受信したマークアップ言語ドキュメント１１６を処理することにより、外部ウェブサイト１２０から又はソーシャルネットワーキングシステム１３０からのコンテンツを表示する。マークアップ言語ドキュメント１１６は、コンテンツと、コンテンツの書式設定（フォーマット）あるいはコンテンツの提示（プレゼンテーション）を記述している１以上の命令を特定する。マークアップ言語ドキュメント１１６に含まれる命令を実行することにより、ブラウザアプリケーション１１２は、マークアップ言語ドキュメント１１６によって記述される書式設定又は提示を利用して、特定されたコンテンツを表示する。例えば、マークアップ言語ドキュメント１１６は、外部ウェブサイト１２０及び／又はソーシャルネットワーキングシステム１３０から取得した、テキスト及び／又は画像データを含む多数のフレームを有するウェブページを生成し表示するための命令を含む。様々な実施形態において、マークアップ言語ドキュメント１１６は、拡張可能なマークアップ言語（ＸＭＬ）データ、拡張可能なハイパーテキストマークアップ言語（ＸＨＴＭＬ）のデータ、あるいはその他のマークアップ言語データを含むデータファイルを備える。
【００２０】
一実施形態において、ユーザ装置１１０は、ユーザ装置１１０のユーザがソーシャルネットワーキングシステム１３０にログインしているかどうかを示すデータを含んでいるクッキー（Cookie）１１４を含む。クッキー１１４は、コンピュータ装置１１０のユーザが該ユーザ装置１１０がソーシャルネットワーキングシステム１３０とデータを交換するアクティブなセッションに関与しているかどうかを示し、ソーシャルネットワーキングシステム１３０からユーザ装置１１０に通信されたデータの変更を許可する。ユーザ装置１１０間でデータを交換する際のクッキー１１４の使用が、ソーシャルネットワーキングシステム１３０及び／又は外部ウェブサイト１２０がさらに図５に関連して以下に説明される。
【００２１】
外部ウェブサイト１２０は、ネットワーク１４０を用いてユーザ装置１１０に伝達される１以上のウェブページ１２２を含む１以上のウェブサーバを備える。前記外部ウェブサイト１２０は、ソーシャルネットワーキングシステム１３０と区別される。例えば、外部ウェブサイト１２０は、ソーシャルネットワーキングウェブサイトが別のソーシャルネットワーキングドメインに関連付けられている場合、ファーストドメインに関連付けられる。外部ウェブサイト１２０に含まれるウェブページ１２２は、上述したように、コンテンツを特定するマークアップ言語ドキュメント、出力形式を指定する命令又は特定されたコンテンツの提示を含むマークアップ言語ドキュメントを備える。
【００２２】
マークアップ言語ドキュメント１１６は、マークアップ言語ドキュメント１１６によって描写されるウェブページ１２２と、以下にさらに説明されるソーシャルネットワーキングシステム１３０内のノードを関連付けるメタ情報を有する１以上のタグを含む。前記タグは、テキスト形式のタイトル、ラベル、及び／又はソーシャルネットワーキングシステム１３０内のノードに関する説明、同様の他の情報、例えばタイトル、ラベル、固有識別子、マイクロフォーマットなど、及び／又はノードに関する説明、同様の他の情報、例えばノードタイプなどを提供し得る。前記タグは、ウェブページ１２２を構成するマークアップ言語ドキュメント１１６内の前記情報に基づいて、ソーシャルネットワーキングシステム１３０内のノードの作成を可能にする。ウェブページ１２２は、ソーシャルネットワーキングシステム１３０のドメイン外にある外部ウェブサイト１２０によって維持管理されてもよいし、ソーシャルネットワーキングシステム１３０の運営者以外のエンティティによって運営されてもよいけれども、以下に説明するように、マークアップ言語ドキュメント１１６内の前記タグは、外部ウェブサイト１２０がソーシャルネットワーキングシステム１３０によって用いられるノードを定義、生成、及び維持管理できるようにする。
【００２３】
一実施形態において、ウェブページ１２２は、ユーザ装置１１０のブラウザアプリケーション１１２によって実行されたときに、ソーシャルネットワーキングシステム１３０からデータを取得し、該ソーシャルネットワーキングシステム１３０から取得した前記情報を表示するようにするための命令群を備えるウィジェット（widget）１２４を含む。例えば、前記ウィジェット１２４は、ウェブページ１２２内にフレームを生成するソーシャルネットワーキングシステム１３０に関連付けられた命令を備える、該ウェブページ１２２はソーシャルネットワーキングシステム１３０からの情報を含む。したがって、前記ウィジェット１２４は、外部ウェブサイト１２０からのウェブページ１２２が、当該ウェブページ１２２がユーザ装置１１０のブラウザアプリケーション１１２によりレンダリングされ表示されたときに、ソーシャルネットワーキングウェブサイト１３０からパーソナライズされたコンテンツを提供できるようにする。前記ウィジェット１２４はまた、ウェブページ１２２内に生成されたフレーム内のコンテンツとインタラクトすることにより、ユーザがソーシャルネットワーキングウェブサイトからのコンテンツとインタラクトできるようにする。
【００２４】
ソーシャルネットワーキングシステム１３０は、ソーシャルネットワーク、又はソーシャルグラフを記憶する１以上のコンピュータ装置を備えており、多数のユーザを備え、ソーシャルネットワークの他のユーザらとコミュニケーションしたりインタラクトしたりする能力をもつソーシャルネットワークのユーザを提供する。ソーシャルネットワーキングシステム１３０は、さらに図２と併せて以下に説明される。使用の際に、ユーザはソーシャルネットワーキングシステム１３０に参加して、ソーシャルネットワーキングシステム１３０の他のユーザ、結び付けられるのを望むユーザらにコネクションを追加する。ここで用いられるように、用語"友人"は、ユーザがソーシャルネットワーキングシステム１３０を介してコネクション、関連性、または関係を形成しているユーザである、ソーシャルネットワーキングシステム１３０の他ユーザのことをいう。
【００２５】
複数のコネクションが、ユーザによって明示的に追加されてもよいし、ユーザの一般的特性（例えば、同じ教育機関の同窓生であるユーザ）に基づいて、ソーシャルネットワーキングシステム１３０によって自動的に生成されてもよい。例えば、第１ユーザは友人になりたい特定の他のユーザを具体的に選択する。ソーシャルネットワーキングシステム１３０内のコネクションは通常双方向であるが、必ずしも必要ではない、だから用語 "ユーザ"と"友人"は視点次第である。ソーシャルネットワーキングシステム１３０のユーザ達との間のコネクションは、通常双方又は"相互"であるが、コネクションはまた一方又は"一方通行"であり得る。例えば、ボブとジョーがソーシャルネットワーキングシステム１３０の両ユーザであり互いに結び付けられている場合、ボブとジョーは互いに相手のコネクションである。他方、ボブは、ジョーによってソーシャルネットワーキングシステムに通信されたデータを表示するためにジョーに結び付けられることを望むが、ジョーが相互のコネクションを形成することを望まない場合、一方的なコネクションが確立され得る。ユーザ間のコネクションは直接的に結びつけられ得る、しかしながら、ソーシャルネットワーキングシステムのいくつかの実施形態は、前記コネクションが１以上のコネクションレベル又は階級レベル又は分離レベルを介して間接的であることを認める。
【００２６】
ユーザ間のコネクションを確立し維持し、ユーザ間のインタラクション（interaction: 相互作用）を可能にすることに加えて、ソーシャルネットワーキングシステム１３０は、ソーシャルネットワーキングシステム１３０によってサポートされる様々なタイプのアイテム（item: 項目、品目、種目）のアクション（action: 行動、行為、動作）を実行する能力をユーザに提供する。これらのアイテムは、ソーシャルネットワーキングシステムのユーザが属しているかもしれない、グループまたはネットワーク（ここで、"ネットワーク"は物理的な通信ネットワークに言及しないが、正しくは人々、エンティティ、概念のソーシャルネットワーク）、ユーザが関心あるかもしれないイベントやカレンダーエントリ、ユーザがソーシャルネットワーキングシステム１３０を介して使用するかもしれないコンピュータベースのアプリケーション、ユーザがソーシャルネットワーキングシステムを介して売買できるようにするトランザクション、ユーザがソーシャルネットワーキングシステムをオンオフし得る広告とのインタラクションを含み得る。これらは単に、ユーザがソーシャルネットワーキングシステム上で作動し得るアイテムのいくつかの例であり、多くの他の例がありうる。ユーザは、ソーシャルネットワーキングシステム１３０内で表すことのできるもの、又はソーシャルネットワーキングシステム１３０から切り離され、ネットワーク１４０を介してソーシャルネットワーキングシステム１３０に接続される外部ウェブサイト１２０内で表すことのできるもの、とインタラクトすることができる。
【００２７】
ソーシャルネットワーキングシステム１３０はまた、様々なエンティティとリンクすることができる。例えば、ソーシャルネットワーキングシステム１３０は、ＡＰＩ又は他の通信チャネルを通じて外部ウェブサイト１２０や他のエンティティと同様に、ユーザが互いにインタラクトすることのできるようにする。このようにして、ソーシャルネットワーキングシステム１３０は、複数のエッジによって相互に結びつけられた複数のノードからなる"ソーシャルグラフ"を生成し維持管理する。該ソーシャルグラフ内の各ノードは、別のノードに影響し得る及び／又は別のノードによって影響され得るエンティティを象徴している。このソーシャルグラフは、様々なタイプのノードを含んでいてもよい。ノードタイプの例としては、ユーザ、非個人エンティティ、コンテンツアイテム、ウェブページ、グループ、イベント、メッセージ、コンセプト、及びソーシャルネットワーキングシステム１３０内のオブジェクトによって示され得る他のものを含む。ソーシャルグラフ内の２つのノード間のエッジは、他ノード上でノードの１つによって実行されたアクションに起因し得る、２つのノード間の特定タイプのコネクションを示す。例えば、第１ユーザが第２ユーザを友人として認める場合、ソーシャルグラフ内のエッジは第１ユーザを示すノードと第２ユーザを示す第２ノードとを結びつけるように生成される。様々なノードが互いをインタラクトするように、ソーシャルネットワーキングシステム１３０は、インタラクションを反映するように様々なノードを結びつけるエッジを変更する。
【００２８】
ソーシャルネットワーキングシステム１３０はまた、ソーシャルネットワーキングシステム１３０とのユーザインタラクションを向上するユーザ生成コンテンツを含む。ユーザ生成コンテンツは、ユーザがソーシャルネットワーキングシステム１３０に、アップロード、送信、又は"投稿（post）"を追加することのできる、どんなものも含む。例えば、ユーザはユーザ装置１００からソーシャルネットワーキングシステム１３０へ投稿を送信する。投稿は、例えばステイタス更新やその他テキストデータ、ロケーション情報、写真、ビデオ、リンク、音楽またはその他の同様のデータ及び／又はメディアなどを含み得る。コンテンツはまた、ニュースフィードやストリームなどの"通信チャネル"を通じて、サードパーティによってソーシャルネットワーキングシステム１３０に加えられ得る。コンテンツ "アイテム"は、ソーシャルネットワーキングシステム１３０内のオブジェクトとして表されたコンテンツ単体を示す。このように、ソーシャルネットワーキングシステム１３０のユーザは、様々な通信チャネルを通じて、様々なメディアタイプのテキスト及びコンテンツアイテムを投稿することによって、お互いとのユーザインタラクションを高めること、またユーザがソーシャルネットワーキングシステム１３０とインタラクトする頻度を増すことによって、お互いとコミュニケーションを取り合うことが促される。
【００２９】
図２は、ソーシャルネットワーキングシステム１３０の一実施形態の概略図である。図２に示されるソーシャルネットワーキングウェブサイト１３０の実施例は、ウェブサーバ２１０、アクションロガー２１５、ＡＰＩリクエストサーバ２２０、アクションログ２３０、ユーザプロフィール記憶装置２４０、及びコネクション記憶装置２４５を含む。他の実施形態において、ソーシャルネットワーキングウェブサイト１３０は、追加の、少数の、あるいは異なる様々なアプリケーションモジュールを含んでいてもよい。従来のコンポーネント、例えばネットワークインタフェース、セキュリティメカニズム、ロードバランサ、フェイルオーバーサーバ、マネジメント及びネットワークオペレーションコンソールなどとその他同種のものは、このシステムの詳細を不明瞭にしないために示されない。
【００３０】
図１に関連して上述したように、ソーシャルネットワーキングシステム１３０は、ここに説明するように、ユーザがコミュニケーションしたり又は別の方法で互いにインタラクトしたりしてコンテンツを利用可能にする計算システムを備える。ソーシャルネットワーキングシステム１３０は、ソーシャルネットワークのユーザを記述しているユーザプロフィールを記憶する。前記ユーザプロフィールは、バイオグラフィック、デモグラフィック、他タイプの記述情報、例えば職歴、学歴、趣味や嗜好、場所（location）などを含む。ソーシャルネットワーキングシステム１３０はさらに、コネクション記憶装置２４５内の異なるユーザ間の１以上のコネクションを記述しているデータを記憶する。コネクション情報は、類似または共通の職歴、グループメンバーシップ、趣味、又は学歴を有するユーザを示し得る。さらに、ソーシャルネットワーキングシステム１３０は異なるユーザ間のユーザ定義コネクションを含み、ユーザが他のユーザとの関係を明示できるようにしている。例えば、ユーザ定義コネクションは、ユーザがそのユーザの現実の関係、例えば友人、同僚、パートナーなどに似た他のユーザとの関係を生成できるようにする。ユーザは、所定のコネクションタイプから選択し得るし、必要に応じてユーザ独自のコネクションタイプを定義し得る。
【００３１】
ウェブサーバ２１０は、ソーシャルネットワーキングシステムを１以上のユーザ装置及び／又は１以上の外部ウェブサイト２１０に、ネットワーク２４０を介してリンクする。ウェブサーバ２１０はウェブページを、他のウェブ関連のコンテンツ例えばｊａｖａ、Ｆｌａｓｈ、ＸＭＬなどと同様に、提供する。ウェブサーバ２１０は、ソーシャルネットワーキングシステム１３０と１以上のユーザ装置１１０との間でメッセージを受信し回覧するための、メールサーバ又は他のメッセージング機能を含んでいてもよい。前記メッセージは、インスタントメッセージ、キューメッセージ（例えば、電子メール）、テキスト及びＳＭＳメッセージ、又は他の適切なメッセージ形式であり得る。
【００３２】
アプリケーションプログラミングインタフェース（ＡＰＩ）リクエストサーバ２２０は、１以上のＡＰＩを呼び出すことによって、１以上の外部ウェブサイト１２０がソーシャルネットワーキングシステム１３０からの情報にアクセスできるようにする。ＡＰＩリクエストサーバ２２０はまた、複数のＡＰＩを呼び出すことによって、外部ウェブサイト１２０がソーシャルネットワーキングウェブサイトに情報を送信できるようにする。例えば、外部ウェブサイト１２０はネットワーク１４０を介してソーシャルネットワーキングシステム１３０にＡＰＩリクエストを送信し、ＡＰＩリクエストサーバ２は該ＡＰＩリクエストを受信する。ＡＰＩリクエストサーバ２２０は、当該ＡＰＩリクエストサーバ２２０がネットワーク１４０を介して外部ウェブサイト１２０に伝達する適切な応答を生成するように、ＡＰＩリクエストに関連付けられているＡＰＩを呼び出すことによってそのリクエストを処理する。例えば、ＡＰＩリクエストに応じて、ＡＰＩリクエストサーバ２２０はユーザに関連するデータを収集し、該収集したデータを外部ウェブサイト１２０に伝える。
【００３３】
アクションロガー２１５は、ソーシャルネットワーキングシステム１３０上の及び／又はソーシャルネットワーキングシステム１３０外のユーザアクションに関する、ウェブサーバ２１０からの通信を受信することが可能である。アクションロガー２１５はユーザアクションに関する情報とともにアクションログ２３０を移し入れ、ソーシャルネットワーキングシステム１３０が、ソーシャルネットワーキングシステム１３０内及びソーシャルネットワーキングシステム１３０外で、そのユーザによって行われた様々なアクションを追跡できるようにする。特定ユーザが他のユーザに関して行うどのアクションもが、アクションログ２３０や類似のデータベースや他のデータリポジトリに保持された情報を通じて、各ユーザプロフィールに関連付けられる。ソーシャルネットワーク１３０内でユーザによって行われ、特定され記憶されるアクションの例は、例えば、他のユーザにコネクションを追加すること、他のユーザにメッセージを送信すること、他のユーザからのメッセージを受信すること、他のユーザに関連付けられたコンテンツを見ること、他のユーザや他のユーザに関連付けられた他のアクションによって投稿されたイベントに参加すること、を含み得る。ユーザがソーシャルネットワーキングシステム１３０内でアクションを行うと、そのアクションはアクションログ２４０に記録される。一実施形態において、ソーシャルネットワーキングシステムはエントリデータベースのようにアクションログ２３０を保持する。あるアクションがソーシャルネットワーキングシステム１３０内で行われていると、当該アクションのエントリがアクションログ２３０に追加される。
【００３４】
さらに、ユーザアクションは、例えばソーシャルネットワーキングシステム１３０から切り離されている外部ウェブサイト１２０のような、ソーシャルネットワーキングシステム１３０外のエンティティに関連付けられ得る。例えば、アクションロガー２１５は、外部ウェブサイト１２０とのユーザインタラクションを記述するデータをウェブサーバ２１０から受信する。ユーザが外部ウェブサイト１２０とインタラクトするアクションの例としては、ユーザが外部ウェブサイト１２０又は別のエンティティにおいて関心を表明すること、ユーザが外部ウェブサイト１２０内で外部ウェブサイト１２０又はウェブページ１２２を明確にするコメントをソーシャルネットワーキングシステム１３０に投稿すること、ユーザがソーシャルネットワーキングシステム１３０にユニフォームリソースロケータ（ＵＲＬ）や外部ウェブサイト１２０に関連付けられた他の識別子を投稿すること、ユーザが外部ウェブサイト１２０に関連する或るユーザによって外部ウェブサイト１２０又は他のアクションに関連付けられたイベントに参加することを含み得る。このように、アクションログ２４０は、ソーシャルネットワーキングシステム（１３０）ユーザと該ソーシャルネットワーキングシステム１３０から切り離された外部ウェブサイト１２０との間のインタラクションを記述しているアクションを含み得る。
【００３５】
承認サーバ２３５は、ソーシャルネットワーキングシステム１３０のユーザの１以上のプライバシー設定を実施する。ユーザプライバシー設定は、どのようにしてユーザに関連付けられた特定情報が共有され得るかを決定する。プライバシー設定は、ユーザに関連付けられた特定情報の明細と、当該エンティティあるいは情報が共有され得るエンティティの明細を備える。情報が共有され得るエンティティの例としては、他のユーザ、アプリケーション、外部ウェブサイト１２０又は潜在的に情報にアクセスできるエンティティを含む。ユーザにより共有され得る情報は、プロフィール写真、そのユーザに関連付けられた電話番号、そのユーザによって行われたアクション、例えばコネクションの追加，ユーザプロフィール情報の変更などのアクション、といったようなユーザプロフィール情報を備える。
【００３６】
プライバシー設定の明細は、異なる細分化レベルで提供されてよい。例えば、プライバシー設定は、他ユーザと共有されるように詳細な情報を特定し得る。例えば、プライバシー設定は勤務先電話番号又は関係付けられた情報の具体的な１セット、例えばプロフィール写真、自宅電話番号、及びステイタスを含む個人情報などを特定する。別の例において、プライバシー設定は、そのユーザに関連付けられたすべての情報に適用し得る。また、特定情報にアクセス可能な複数エンティティの１セットの明細も、様々な細分化レベルで特定され得る。情報が共有され得る様々なエンティティセットは、例えば、そのユーザのすべての友人、友人達のすべての友人、すべてのアプリケーション、すべての外部ウェブサイト１２０又はすべての外部システムを含み得る。一実施形態では、前記複数エンティティの１セットの前記明細がエンティティ一覧を備えるようになっており、例えば、ユーザは或る情報にアクセスするのを許された外部ウェブサイト１２０のリストを提供し得る。別の実施形態では、前記明細が、前記情報にアクセスするのを許されない除外エンティティを伴う複数エンティティの１セットを備えるようにしてよい。例えば、あるユーザは、すべての外部ウェブサイト１２０が該ユーザのワーク情報にアクセスできるようにしてよいが、該ワーク情報にアクセスすることが許されない外部ウェブサイト１２０のリストを明示してもよい。或る実施形態では、或る情報にアクセスすることが許されない除外エンティティのリストを、ブロックリストと言う。ユーザによって明示されたブロックリストに属する外部ウェブサイト１２０などの外部システムは、プライバシー設定において明示された情報へのアクセスがブロック（阻止）される。なお、情報の明細の細分化と情報を共有するエンティティの明細の細分化との様々な組み合わせが可能である。すなわち、すべての個人情報が友人と共有され得る一方で、すべてのワーク情報が友人の友人と共有され得る。
【００３７】
例えば、ユーザプライバシー設定は、そのユーザの勤務先電話番号とそのユーザの携帯電話番号へのアクセスが許可された第１フレンドを示し、その一方で第１フレンドがそのユーザに関する他の情報、例えばそのユーザのプロフィール写真やそのユーザの友人リストにアクセスできないようにする。しかしながら、ユーザプライバシー設定は、第二フレンドがそのユーザの友人リストへのアクセスを許されていることを示す。あるユーザに関連付けられた情報は、新しい友達を追加するアクションなどのようなユーザによって行われるアクション（３３０）を含む。ユーザ１３０は、他のユーザ又はアプリケーションがユーザ１３０に関連付けられた情報へアクセスするのを完全にブロックすることができる。ユーザ１３０によってブロックされるユーザ又はアプリケーションは、ユーザ１３０に関連付けられた情報へのアクセス権を有しない。
【００３８】
承認サーバ２３５は、ユーザに関連付けられた特有情報がユーザの友人、外部ウェブサイト１２０及び／又は他のアプリケーションとエンティティによりアクセスされ得るかどうか、を判断するロジックを備える。例えば、外部ウェブサイト１２０に関連付けられたＵＲＬに関するユーザコメントにアクセスしようとする外部ウェブサイト１２０は、ユーザの勤務先電話番号にアクセスするために、承認サーバ２３５から承認を得なければならない。ユーザプライバシー設定に基づいて、承認サーバ２３５は、他のユーザ、外部ウェブサイト１２０、アプリケーション又は他のエンティティが、ユーザによって行われたアクションに関する情報を含む該ユーザに関連付けられた情報にアクセスするのを許可されているかどうかを判断する。例えば、承認サーバ２３５は、外部ウェブサイト１２０に関連付けられたＵＲＬに関するユーザコメントが、外部ウェブサイト１２０によりアクセスされ得るかどうかを判断するのに、ユーザプライバシー設定を用いる。これは、ユーザプライバシー設定が、そのユーザのアクション又はそのユーザに関連付けられた他のデータに関するデータを受信するのを許される、他のユーザ、又は他のエンティティを指定することを可能にする。
【００３９】
さらに、ソーシャルネットワーキングシステム１３０は、ソーシャルネットワーキングシステム１３０を使ってユーザがインタラクトする複数のオブジェクトに関するデータを維持管理する。このデータを維持管理するために、ユーザプロフィール記憶装置２４０とコネクション記憶装置２４５は、ソーシャルネットワーキングシステム１３０によって維持管理される対応するオブジェクトタイプのインスタンスを記憶する。各オブジェクトタイプは、オブジェクトタイプにふさわしい情報を記憶するのに適した情報フィールドを有する。例えば、ユーザプロフィール記憶装置２４０は、ユーザプロフィールを記述するのに適したフィールドを持つデータ構造を備える。特有のタイプの新しいオブジェクトが生成されると、ソーシャルネットワーキングシステム１３０は、対応するタイプの新しいデータ構造を初期化し、これに固有オブジェクト識別子を割り当て、必要に応じてオブジェクトにデータを追加し始める。これは、例えば、ユーザがソーシャルネットワーキングシステム１３０のユーザになるときに、ソーシャルネットワーキングシステム１３０がユーザプロフィール記憶装置２４０内にユーザプロフィールの新しいインスタンスを生成し、前記ユーザプロフィールに固有識別子を割り当てて、ユーザによって提供される情報とともにユーザプロフィールのフィールドを設定開始する、ことを生じさせるかもしれない。
【００４０】
コネクション記憶装置２４５は、あるユーザの他のユーザへのコネクション、外部ウェブサイト１２０へのコネクション又は他のエンティティへのコネクションを記述するのに適したデータ構造を含む。コネクション記憶装置２４５はまた、コネクションタイプとあるユーザのコネクションとを関連付けて、これはそのユーザのプライバシー設定と併せて用いられ、さらには上述したように、そのユーザに関する情報へのアクセスを制限するために用いられる。
【００４１】
コネクション記憶装置２４５、ユーザプロフィール記憶装置２４０及びアクションログ２３０に記憶されたデータは、ソーシャルネットワーキングシステム１３０が、ノードに繋がれている様々なオブジェクトとエッジを特定するために、異なるオブジェクト間の関係を特定するために、ノードを用いるソーシャルグラフを生成することを可能にする。ソーシャルグラフ内の２つのノード間の１つのエッジは、他ノード上のノードの１つによって行われたアクションに起因し得る２つのノード間のコネクションの特有な性質を示す。
【００４２】
例えば、第１ユーザがソーシャルネットワーキングシステム内の第２ユーザとコネクションを確立する場合、ユーザプロフィール記憶装置２４０からの前記第１ユーザのユーザプロフィール及び前記第２ユーザのユーザプロフィールはソーシャルグラフ内のノードとして動作し得る。コネクション記憶装置２４５によって記憶される第１ユーザと第２ユーザ間のコネクションは、第１ユーザと第２ユーザとに関連付けられたノード間のエッジである。この例の場合、第２ユーザはソーシャルネットワーキングシステム１３０内の第１ユーザ、アクションロガー２１５によって特定されアクションログ２３０に記憶された第１ユーザにメッセージを送信する。記憶された前記メッセージを送信するアクションは、第１ユーザと第２ユーザを示すソーシャルグラフ内の２つのノード間の別のエッジである。さらに、前記メッセージ自体はアクションログ２３０から特定され得て、前記第１ユーザを示すノードと前記第２ユーザを示すノードに接続された他ノードとしてソーシャルグラフ内に含まれ得る。
【００４３】
別の例において、第１ユーザは、ソーシャルネットワーキングシステム１３０によって維持管理されている画像内の（又は、もうひとつの方法として、ソーシャルネットワーキングシステム１３０外の別のシステムによって維持管理されている画像内の）第２ユーザをタグ付けるかもしれない。前記画像は、それ自身をソーシャルネットワーキングシステム１３０内のノードで示し得る。このタグ付けアクションは、ソーシャルグラフ内のノードである各々のユーザと画像間のエッジを生成するのと同様に、第１ユーザと第２ユーザ間のエッジを生成し得る。さらに別の例において、あるユーザがイベントへの参加を確認する場合に、そのユーザとそのアクションは前記ユーザプロフィール記憶装置２４０から取得されたノードであり、ここで前記イベント参加はアクションログ２３０から取り出され得る前記ノード間のエッジである。ソーシャルグラフを生成し維持管理することにより、ソーシャルネットワーキングシステム１３０は、多くの異なるタイプのオブジェクトとそのインタラクションとそれらのオブジェクト間のコネクションを記述しているデータを含み、社会的に関連する情報の豊富なソースを提供する。
外部ウェブサイトのウェブページ構造とウェブページコンテンツ
【００４４】
図３は、外部ウェブサイト１２０のウェブページ１２２の一実施形態である。ウェブページ１２２は、ウェブページ１２２に関連付けられたソーシャルグラフ内のノードとインタラクトするためのフレーム３２０を含み、ソーシャルグラフを維持管理しているソーシャルネットワーキングシステム１３０外にある。ウェブページ１２２はコンテンツ３１０、例えばテキストデータ、ビデオデータ、画像データ又はユーザ装置１１０上で動作するブラウザアプリケーション１２２を使ってプレゼンテーションするための他のデータなどを含む。ウェブページ１２２はまた、コンテンツ３１０の書式設定やプレゼンテーションを記述する１以上の命令を含む。ユーザ装置１１０上で動作しているブラウザアプリケーション１１２が、ウェブページ１２２に含まれた命令を実行すると、該ブラウザアプリケーション１１２は、特定したコンテンツ３１０を前記ウェブページ１２２により記述された書式やプレゼンテーションを用いて表示する。
【００４５】
一実施形態において、ウェブページ１２２は、コンテンツ３１０及びコンテンツ３１０をフォーマットしたり提示したりするための命令を含んでなるマークアップ言語ドキュメント１１６を備える。様々な実施形態において、マークアップ言語ドキュメント１１６は、拡張可能マークアップ言語（ＸＭＬ）データ、拡張可能ハイパーテキストマークアップ言語（ＸＨＴＭＬ）データ又はその他のマークアップ言語データを含むデータファイルからなる。コンテンツ３１０及びコンテンツ３１０をフォーマットしたり提示したりするための命令に加えて、ウェブページ１２２をも含んでなるマークアップ言語ドキュメント１１６は、１以上のタグ、該ウェブページ１２２に関連付けられたソーシャルネットワーキングシステムによって維持管理されるソーシャルグラフ内のノードに関するメタ情報を含んでなるタグを含む。前記タグは、複数のテキスト形式のタイトル、複数のラベル、及び／又はノードに関する複数の説明、同様の他の情報、例えばタイトル、ラベル、固有識別子、マイクロフォーマット、及び／又はノードに関する説明、同様の他の情報、例えばノードタイプを提供する。ソーシャルネットワーキングシステム１３０は、マークアップ言語ドキュメント１１６から前記タグを取得し、ウェブページ１２２のノードに関してそれらの情報を記憶する。前記タグは、ソーシャルネットワーキングシステム１３０が、ウェブページ１２２内に含められた情報に基づきソーシャルグラフ内にノードを生成し定義できるようにする。ウェブページ１２２はソーシャルネットワーキングシステム１３０のドメイン外であるかもしれず、またソーシャルネットワーキングシステム１３０の運営者以外のエンティティによって動作されるかもしれないので、前記タグは、サードパーティ（第三者）がソーシャルネットワーキングシステム１３０によって使用されるノードを、定義、生成、維持管理できるようにする。
【００４６】
ウェブページ１２２をエンコードするマークアップ言語ドキュメント１１６に含まれる１以上のタグによって提供されるノードに関する情報の例は、限定されないが以下を含む、タイトル、ラベル、固有識別子、マイクロフォーマット、及び／又はノードに関する説明、同様の他の情報、例えばノードタイプ、１以上のノードアドミニストレーターを特定する１以上のソーシャルネットワーキングシステムユーザ識別子、及び／又はノードに関連付けられたロケーション情報などを含む。タイトル（title）タグは、ソーシャルネットワーキングシステム１３０やウィジェット１２４がノードにアクセスするときに示されるように、テキスト文字列を特定する。同様に、キーワード（keyword）タグは、ウェブページ１２２を特定している１以上のキーワードを特定しているテキスト情報を含み、及び／又は説明（description）タグは、ノードが存在する場合にソーシャルネットワーキングシステム１２２により又はウィジェット１２４により表示されるウェブページ１２２を説明しているテキスト情報を備える。イメージ（image）タグは、ノードが存在する場合にソーシャルネットワーキングシステム１２２により又はウィジェット１２４により表示された画像を特定し得る。さらに、標準タグは標準的なユニフォームリソースロケータ（ＵＲＬ）、又はウェブページ１２２を指定する他のウェブ識別子を特定する。
【００４７】
アドミニストレーター（administrator）タグは、１以上のソーシャルネットワーキングシステム１３０のユーザ識別子、ウェブページ１２２に関連付けられたノードを生成及び／又は維持管理する能力を持つソーシャルネットワーキングシステム１３０のユーザを指定する識別子を含む。前記アドミニストレータータグは、ソーシャルネットワーキングシステム１３０外のユーザが、ソーシャルネットワーキングシステム１３０により用いられるノードを生成し維持管理することを潜在的に認め、サードパーティ開発者にソーシャルグラフを効果的に公開し、複雑で豊かなソーシャルグラフのさらなる開発と定義を奨励する。一実施形態において、ソーシャルネットワーキングシステム１３０は、アドミニストレータータグにより指定されたユーザ識別子をユーザインタフェースに供給し、ウェブページ１２２に関連付けられたノードの変更を容易にする。
【００４８】
１以上のマイクロフォーマット（microformat）タグは、セマンティクス（semantics）をマークアップ言語ドキュメント１１６に含まれる他のマークアップ（markup）タグに添付して、前記マークアップタグにより特定される情報が自ソーシャルネットワーキングシステム１３０によって自動的に処理されるようにする。マイクロフォーマットタグは、ソーシャルネットワーキングシステム１３０内のノードを記述しているデータが、又はソーシャルネットワーキングシステム１３０内のノードによって示されるオブジェクトを記述しているデータが、標準化されるのを認める。さらに、１以上のマイクロフォーマットタグは、ソーシャルネットワーキングシステム１３０が、ノードタイプをより詳しく識別するために又はタイプをノードと関連付けるために、ウェブページ１２２から取得する情報を増やし得る。例えば、マイクロフォーマットタグを用いてウェブページ１２２から取得した追加情報は、ウェブページ１２２に関連付けられたノードに繋がれたソーシャルネットワーキングシステム１３０の??ユーザらの関心についてより知るように、ソーシャルネットワーキングシステム１３０がウェブページ１２２からのデータを使用できるようにし得る。同様に、ロケーション（location）タグは、ウェブページ１２２に関連付けられた場所に関する情報をソーシャルネットワーキングシステム１３０に提供する。例えば、ロケーションタグは、ウェブページ１２２に関連付けられた１以上の住所を特定する。
【００４９】
ノードタイプ（node type）タグは、ソーシャルネットワーキングサイトにより生成されウェブページ１２２に関連付けられたノードのタイプを特定する。ソーシャルネットワーキングシステム１３０は、異なるアクションが異なるタイプのノード上で実行され得るように、ノードタイプタグは、ウェブページ１２２に関連付けられたノードとインタラクトするソーシャルネットワーキングシステム１３０のユーザらのカスタマイズ方法を与える。一実施形態において、ノードタイプタグは、ソーシャルネットワーキングシステム１３０により維持管理されるリストから選択された１以上の値を含む。例えば、ノードタイプタグは、ユーザ、非個人エンティティ、コンテンツアイテム、グループ、イベント、メッセージ、コンセプト、スポーツチーム、ブログ、活動、ウェブサイト、映画、ミュージシャン、ホテル、大学、政府機関、レストラン、会社、ランドマーク、バー、場所又はソーシャルネットワーキングシステム１３０内のオブジェクトによって示され得る他のもの、を特定する値を含む。
【００５０】
一実施形態において、多数のノードタイプタグがウェブページ１２２に含まれており、もしくは１つのノードタイプタグが多数の値を含んでおり、それゆえに、ソーシャルネットワーキングシステム１３０は、ウェブページ１２２に関連付けられた異なるタイプのノードを生成する。例えば、マラソンを特定するウェブページ１２２は、イベント、非個人エンティティと場所を特定するノードタイプタグを含み得る。これは、ソーシャルネットワーキングシステム１３０に３つの異なるノード、各々がウェブページ１２２に関連付けられた、イベントタイプを有する第１ノード、非個人エンティティタイプを有する第２ノード及びロケーションタイプを有する第３ノードを生成させる。該ソーシャルネットワークシステム１３０は、以下に詳述するように、ノードタイプに応じて、ユーザらが各ノード上で異なるアクションを行うことを可能にする。別の実施形態において、ソーシャルネットワーキングシステム１３０は、異なるノードタイプのプロパティを有するたった１つのノードを生成する。上述の例において、イベントタイプを有するノード、非個人エンティティタイプを有するノード及びロケーションタイプを有するノードを生成するというよりはむしろ、生成されるイベントタイプを有するノード、非個人エンティティタイプを有するノード及びロケーションタイプを有するノードの各プロパティを有するたった１つのノードが生成される。
【００５１】
ウェブページ１２２はまた、ソーシャルネットワーキングシステム１３０に関連付けられたドメイン内のユニフォームリソースロケータ（ＵＲＬ）を呼び出すフレーム３２０を含む。フレーム３２０は、ウェブページ１２２をエンコードするマークアップ言語ドキュメント１１６に含まれたウィジェット１２４を実行するユーザ装置１１０上で動作しているブラウザアプリケーション１１２によってレンダリングされる。１以上の命令を備えるウィジェット１２４は、ブラウザアプリケーション１１２によって実行されたときに、フレーム３２０、ウェブページ１２２内にフレームを生成し、当該フレーム３２０内にソーシャルネットワーキングシステムからの情報を含める。一実施形態において、フレーム３２０は、ソーシャルネットワーキングシステム１３０から取得されたデータを含んでいるｉｆｒａｍｅ（インラインフレーム）である。
【００５２】
フレーム３２０は、ソーシャルネットワーキングシステム１３０によって維持管理されるノードに関連付けられたソーシャルネットワーキングシステム１３０からのデータと、ウィジェット１２４により指定された、ＵＲＬあるいは他のウェブ識別子に関連付けられたソーシャルネットワーキングシステム１３０からのデータを含む。例えば、ブラウザアプリケーション１１２がウィジェット１２４を実行すると、ＵＲＬ又は他のウェブ識別子を含むコンテンツリクエストが、ブラウザアプリケーション１１２からソーシャルネットワーキングシステム１３０に伝達される。ソーシャルネットワーキングシステム１３０は、コンテンツリクエストのＵＲＬ又は他のウェブ識別子に関連付けられたノードを特定し、該特定したノードに関する情報をブラウザアプリケーション１１２に伝達し、かつフレーム３２０に前記情報を表示する。一実施形態において、ウィジェット１２４は１以上のパラメータをソーシャルネットワーキングシステム１３０に伝達する。前記パラメータは、ウェブページ１２２がフレーム３２０をカスタマイズできるようにする。例えば、パラメータはフレーム３２０の高さ及び／又は幅を定める。
【００５３】
一実施形態において、フレーム３２０は１以上のアクションボタン３３０を含み、またソーシャルネットワーキングシステム１３０からのソーシャル情報３４０を含むかもしれず、ユーザがフレーム３２０に表示されるコンテンツに関連付けられたノードに関して特定アクションを行うことのできるようにする。１以上のアクションボタン３３０は、ユーザがフレーム３２０に表示されるコンテンツに関連付けられたノードに関して特定アクションを行うことを認める。特定アクションは、フレーム３２０内のコンテンツに関連付けられたノードのタイプによって決まり得る。例えば、ノードがイベントタイプを有する場合、アクションボタン３３０はユーザがイベントへの参加を示すことのできるようにする。ノードがエンティティタイプを有する場合、アクションボタン３３０はユーザがエンティティへの関心を示すことのできるようにする。ノードがロケーションタイプを有する場合、アクションボタン３３０はユーザがチェックイン又は別の方法でその場所でユーザの存在を示すことのできるようにする。このようにして、アクションボタン３３０は、ソーシャルネットワーキングシステム１３０のユーザが、フレーム３２０によって提示されたソーシャルネットワーキングシステム１３０内のノードとの１以上のインタラクションを実行することのできるようにする。
【００５４】
フレーム３２０はまた、ソーシャルネットワーキングシステム１３０から取得したソーシャル情報３４０を含むかもしれず、該フレーム３２０のコンテンツがソーシャルネットワーキングシステム１３０の特定されたユーザをパーソナライズできるようにする。例えば、ソーシャル情報３３０は、ソーシャルネットワーキングシステム１３０の特定されたユーザの友人の数、アクションボタン３３０に関連付けられたアクションを行っている友人の数を特定する、またはソーシャルネットワーキングシステム１３０の特定されたユーザの１以上の特定の友人、アクションボタン３３０に関連付けられたアクションを行っている友人を特定する。例として、アクションボタン３３０が、ユーザがエンティティタイプのノードに関心を示すことのできるようにする場合、ソーシャル情報３４０は、エンティティタイプのノードに関心を示したユーザの友人の数を特定し得る。さらに、アクションボタン３３０が、ユーザがイベントタイプのノードに関連付けられたイベントに参加しているであろうことを示すことのできるようにする場合、ソーシャル情報３４０は、イベントに参加するであろうことを示したユーザの特定の友人を特定し得る。ソーシャル情報３４０は、特定されたユーザの友人にパーソナライズされ得る、またはソーシャルネットワーキングシステム１３０のユーザが特定され得なかった場合に、すべてのユーザから取得される情報であり得る。
【００５５】
図４は、ソーシャルネットワーキングシステム外のウェブページ４００に関連付けられた複数のノードとインタラクトするための、複数のフレーム４１０Ａ、４１０Ｂ、４１０Ｃを含む外部ウェブサイト１２０の一実施形態のウェブページ４００である。一実施形態において、ウェブページ４００は、ソーシャルネットワーキングウェブサイト１３０のソーシャルグラフ内のノードに関連付けられた各アイテムと共に、多数のアイテムを特定しているコンテンツを含む。フレーム４１０Ａ、４１０Ｂ、４１０Ｃは各アイテムの隣に表示され、該アイテムに関連付けられたソーシャルネットワーキングシステム１３０からのコンテンツを含んでいる。
【００５６】
例えば、ウェブページ４００はオンライン小売店によって維持管理されており、そのオンライン小売店から購入するための多数のアイテムを特定しているリンクを表示する。購入用の各アイテムはソーシャルネットワーキングシステム１３０のソーシャルグラフ内のノードに関連付けられ、ウェブページ４００は多数のウィジェット１２４、特定された購入用アイテムに関連付けられた各ウィジェットを含む。第１アイテムに関連付けられたウィジェットは、該第１アイテムに関連付けられたウェブページのＵＲＬや他のウェブ識別子を含んでいる第１コンテンツリクエストを、ソーシャルネットワーキングシステム１３０に伝える。前記リクエストはこのように、第１アイテムに関連付けられたウェブページのＵＲＬや他のウェブ識別子に関連付けられたノードを特定し、第１ノードに関する情報をブラウザアプリケーション１１２に伝え、ブラウザアプリケーション１１２は第１フレーム４１０Ａ内に前記情報を表示する。同様に、第２と第３のウィジェット１２４は第２と第３のコンテンツリクエストを、それぞれ、第２アイテムと第３アイテム、それぞれ、に関連付けられたウェブページのＵＲＬを特定するソーシャルネットワーキングシステム１３０に伝える。第２アイテムに関連付けられたノードと第３アイテムに関連付けられたノードのために、ソーシャルネットワーキングシステム１３０から受信したコンテンツは、それぞれ、第２フレーム４１０Ｂと第３フレーム４１０ｂに表示される。例えば、あるアイテムに関連付けられたウィジェット１２４は、製品ページをオンライン小売店内で特定するＵＲＬをソーシャルネットワーキングシステム１３０に伝える。
【００５７】
フレーム４１０Ａ、４１０Ｂ、４１０Ｃは１以上のアクションボタンを含むかもしれず、ユーザがウェブページ４００によって表示されるアイテムに関連付けられたグラフ上でノードとインタラクトすることのできるようにする。例えば、オンライン小売店は、購入用に異なるアイテムを特定しているフレーム４１０Ａ、４１０Ｂ、４１０Ｃを提示でき、フレーム４１０Ａ、４１０Ｂ、４１０Ｃ内のアクションボタン４２０Ａ、４２０Ｂ、４２０Ｃは、ユーザが購入用アイテムにコメントしたりアイテムへの関心を表明したりできるようにする。
【００５８】
別の例として、ウェブページ４００は、多数の映画を一覧表示する映画レビュー又は映画レンタルサイトにより維持管理され、各映画用の個々のウェブページを維持管理する。ウェブページ４００は、各映画に関連付けられたフレーム４１０Ａ、４１０Ｂ、４１０Ｃとともに異なる映画に関連付けられたウェブページにアクセスするためのリンクを含み得る。フレーム４１０Ａ、４１０Ｂ、４１０Ｃは、異なる映画に関連付けられた複数のＵＲＬや異なるウェブページ識別子をソーシャルネットワーキングシステム１３０に伝える様々なウィジェット１２４によって生成される。フレーム４１０Ａ、４１０Ｂ、４１０Ｃは、１以上のアクションボタン４２０Ａ、４２０Ｂ、４２０Ｃをそれぞれ含むかもしれず、ユーザが映画に関連付けられたウェブページに関連付けられたソーシャルネットワーキングシステム１３０内のノードとインタラクトできるようにする。例えば、各フレーム４１０Ａ、４１０Ｂ、４１０Ｃは、ユーザがソーシャルネットワーキングシステム１３０内のノードに関連付けられた映画に関心を示すことを許すアクションボタン４２０Ａ、４２０Ｂ、４２０Ｃを含み得る。
【００５９】
さらなる例において、ウェブページ４００はレストラン予約ウェブサイトによって維持管理され、多数の空いている予約を表示する。フレーム４１０Ａ、４１０Ｂ、４１０Ｃはそれぞれ表示された予約に近接されており、空いている予約に対応するウェブページに関連付けられたソーシャルグラフ内のノードに関連付けられたソーシャルネットワーキングシステム１３０からのコンテンツを含む。アクションボタン４２０Ａ、４２０Ｂ、４２０Ｃは、ユーザが空いている予約に関連付けられたノードとインタラクトできるようにする。しかしながら、図３に関連して上述したように、アクションボタン４２０Ａ、４２０Ｂ、４２０Ｃによって実行されるアクションは、ノードタイプによって決まる。例えば、第１予約がロケーションノードに関連付けられる場合、第１アクションボタン４２０Ａとのインタラクションは、ユーザが第１予約に関連付けられた場所への到着を示すためにチェックインすることのできるようにする。第２予約がイベントノードに関連付けられる場合、第２アクションボタン４２０Ｂとのインタラクションは、ユーザが参加しているイベントを示すことのできるようにする。
ソーシャルネットワーキングシステム外のウェブページに関連付けられたノードとのインタラクション
【００６０】
初めに、ソーシャルネットワーキングシステム１３０は、ソーシャルネットワーキングシステム１３０外のウェブページ１２２に関連付けられたノードを生成する。ノードが生成されると、ウェブページ１２２はソーシャルネットワーキングシステム１３０によって維持管理されるソーシャルグラフに含まれており、該ソーシャルグラフをサードパーティの開発者に効果的に公開し、複雑かつ豊かなソーシャルグラフのさらなる開発と定義を促す。
【００６１】
外部ウェブサイト１２０の運営者は、図１に関連して上述したウィジェット１２４を含むウェブページ１２２をエンコードするマークアップ言語ドキュメント１１６を生成する。マークアップ言語ドキュメント１１６はまた、図３に関連して上述したように１以上のタグを含み得る。ソーシャルネットワーキングシステム１３０は、ウェブページをエンコードするマークアップ言語ドキュメント１１６を要求し受信して、該マークアップ言語ドキュメント１１６内のタグから情報を抽出し記録する。タグから抽出された情報はソーシャルネットワーキングシステム１３０によって新しいノードを生成するのに用いられ、そして前記タグから抽出された情報はソーシャルネットワーキングシステム１３０内に記憶される。例えば、ソーシャルネットワーキングシステム１３０は、ノードタイプタグにより特定されたタイプと、マークアップ言語ドキュメントに含まれるタイトルタグ、キーワードタグ、説明タグとアドミニストレータータグから抽出された記憶データを有するノードを生成する。マークアップ言語ドキュメント１１６がどのタグも含まない場合、ソーシャルネットワーキングシステム１３０は所定タイプのノードを生成し、該生成したノード内の記憶のためのデータを特定するようにマークアップ言語ドキュメント１１６を解析し得る。
【００６２】
ソーシャルネットワーキングシステム１３０は、様々なタイプのイベントに応じて、ウェブページ１２２をエンコードするマークアップ言語ドキュメント１１６を要求し得る。例えば、ウェブページ１２２の運営者又はウェブページ１２２を含む外部ウェブサイトの運営者は、ウェブページ１２２に関連付けられたノードを生成するように、ソーシャルネットワーキングシステム１３０にリクエストを送る。例えば、ソーシャルネットワーキングシステム１３０内のユーザインタフェースは、ウェブページに関連付けられたノードを生成するためにリクエストを受信し得る。別の例において、ソーシャルネットワーキングシステム１３０は、ウェブページ１２２がブラウザ１１２により最初にロードされるときに、当該ウェブページ１２２をエンコードするマークアップ言語ドキュメント１１６を要求し、またソーシャルネットワーキングシステム１３０は、ブラウザ１１２が前記ウェブページ１２２に含まれるウィジェット１２４を実行するときに、コンテンツリクエストを受信する。他の例として、ウィジェット１２４により生成されたフレーム内のアクションボタンとの最初のインタラクションの受信に応じて、ソーシャルネットワーキングシステム１３０は、該ソーシャルネットワーキングシステム１３０がウェブページ１２２に関連付けられたノードが現在存在しないと判断するならば、前記ウェブページ１２２をエンコードするマークアップ言語ドキュメント１１６を要求する。
【００６３】
一旦、ソーシャルネットワーキングシステム１３０がウェブページ１２２に関連付けられたノードを記憶すれば、ソーシャルネットワーキングシステム１３０のユーザは、ウェブページ１２２とインタラクトすることによってノードとインタラクトし得る。図５は、本発明の実施形態に係る、ソーシャルネットワーキングシステム１３０外のノードとインタラクトする処理のインタラクション概略図である。図５により示される実施形態において、外部ウェブサイト１２０はソーシャルネットワーキングシステム１３０から切り離されている。最初に、ユーザ装置１１０は、外部ウェブサイト１２０からウェブページ１２２をリクエストする（５１０）。例えば、ユーザ装置１１０のユーザは、ユーザ装置１１０上で動作しているブラウザアプリケーション１１２内のウェブページ１１２に関連付けられた、ユニフォームリソースロケータ（ＵＲＬ）又は他の識別子を入力する。ブラウザアプリケーション１１２は、受信したＵＲＬ又は他の識別子と関連付けられた外部ウェブサイト１２０を特定し、該特定した外部ウェブサイト１２０から、前記受信したＵＲＬ又は他の識別子に関連付けられたウェブページ１２２をリクエストする（５１０）。
【００６４】
ウェブページ１２２のリクエストの受信後、外部ウェブサイト１２０はローカル記憶されたデータを用いて、前記要求されたウェブページ１２２を生成する。例えば、外部ウェブサイト１２０は、記憶済みのデータに基づいてウェブページ１２２のコンテンツ及び書式を記述しているマークアップ言語ドキュメント１１６を生成する。外部ウェブサイト１２０は、ユーザ装置１１０のブラウザアプリケーション１１２によって実行されたときに、ソーシャルネットワーキングシステム１３０からデータを取得し、ソーシャルネットワーキングシステム１３０から前記取得した情報を表示する命令を有してなるウィジェット１２４を含む。例えば、ウィジェット１２４は、ソーシャルネットワーキングシステム１３０に関連付けられた命令、ソーシャルネットワーキングシステム１３０からの情報を含むウェブページ１２２内でフレームを生成するものを含む。したがって、ウィジェット１２４は、外部ウェブサイト１２０からのウェブページ１２２が、前記ウェブページ１２２がユーザ装置１１０のブラウザアプリケーション１１２によってレンダリングされ表示されたときに、ソーシャルネットワーキングウェブサイト１３０からのパーソナライズされたコンテンツを提供できるようにする。ウィジェット１２４はまた、ウェブページ１２２内に生成されたフレーム内のコンテンツとインタラクトすることにより、ユーザがソーシャルネットワーキングウェブサイト１３０からのコンテンツとインタラクトできるようにする。ウィジェット１２４は、外部ウェブサイト１２０からのウェブページ１２２に関連付けられた、ユニフォームリソースロケータ（ＵＲＬ）又は他のウェブページ識別子を含み、ユーザ装置１１０のブラウザ１１２でフレームやｉｆｒａｍｅの提示を記述している１以上のパラメータを含み得る。一実施形態において、ウィジェット１２４に含まれるＵＲＬは、要求されたウェブページ１２２のＵＲＬと同じである。別の例において、ウィジェット１２４に含まれるＵＲＬは、要求されたウェブページ１２２外のウェブページに関連付けられたＵＲＬである。
【００６５】
外部ウェブサイト１２０は、生成したウェブページ１２２を記述しておりまたウィジェット１２４を含んでいるマークアップ言語ドキュメント１１６を、ネットワーク１４０を通じてユーザ装置１１０に送信する（５２０）。マークアップ言語ドキュメント１１６の受信後、ブラウザ１１２は、前記マークアップ言語ドキュメント１１６に含まれるコンテンツ及びフォーマット命令に基づいてウェブページ１２２をレンダリングする（５２５）。ウェブページ１２２をレンダリングすることに加えて（５２５）、ユーザ装置１１０内のブラウザ１１２は、ウェブページ１２２内にフレームを生成するようにウィジェット１２４を実行する（５３０）。ウィジェット１２４の実行はまた、ソーシャルネットワーキングシステム１３０からのコンテンツを、ネットワーク１４０を通じてフレーム内に含めるため、ブラウザ１１２にリクエストさせる（５４０）。ウィジェット１２４に含まれるＵＲＬ、または他のウェブ識別子は、ウィジェット１２４に含まれるＵＲＬに関連付けられたノードからのコンテンツをリクエストするために（５４０）、ソーシャルネットワーキングシステム１３０に伝達される。一実施形態において、ブラウザ１１２はまた、前記要求されたコンテンツのさらなるカスタマイズを可能にするように、フレーム内に含めるコンテンツがリクエストされた場合に（５４０）、ウィジェット１２４からの１以上のパラメータを特定し、前記特定したパラメータをソーシャルネットワーキングシステム１３０に伝送する。
【００６６】
ブラウザ１１２からのコンテンツリクエストを受信することに対応して、ソーシャルネットワーキングシステム１３０はユーザ装置１１０をクッキー１１４のためにチェックする（５４５）。ソーシャルネットワーキングシステム１３０がクッキー１１４をチェックすることに応じて（５４５）、ユーザ装置１１０はクッキー１１４、又はクッキー１１４に関連付けられたメッセージを、ソーシャルネットワーキングシステム１３０に送信する（５５０）。一実施形態において、クッキー１１４の存在は、コンピュータ装置１１０のユーザがソーシャルネットワーキングシステム１３０のユーザ（例えば、そのユーザはソーシャルネットワーキングシステム１３０で有効なアカウントを持つ）であるかどうかを示す。コンピュータ装置１１０のユーザがソーシャルネットワーキングシステム１３０のユーザである場合、クッキー１１４は、そのユーザがソーシャルネットワーキングシステム１３０にログインしているかどうか（例えば、そのユーザがソーシャルネットワーキングシステム１３０で現在有効なセッションを有するか否か）を示す情報を備え得る。ユーザ装置１１０をクッキー１１４のためにチェックすることは（５４５）、このようにしてソーシャルネットワーキングシステム１３０がユーザセッションを認証することのできるようにする。他の実施形態において、ソーシャルネットワーキングシステム１３０は、そのユーザがソーシャルネットワーキングシステム１３０のユーザであるかどうかを、例えば、ユーザがソーシャルネットワーキングシステム１３０にログインしているかどうかを判断することなく、クッキーの存在をチェックすることによって（５４５）、単に判断し得る。クッキーは、ユーザ及び／又はユーザセッションを認証するためにここに記述されるけれども、ユーザ又はセッションの特定や認証の他の方法が用いられ得る（例えば、物理的なトークンを認識する）。
【００６７】
受信したクッキー１１４に関連付けられたユーザが認証されている場合、ソーシャルネットワーキングシステム１３０は、フレームに含めるコンテンツ、前記受信したクッキー１１４に関連付けられたユーザに基づいてパーソナライズされたコンテンツを生成する（５５５）。例えば、ソーシャルネットワーキングシステム１３０は、ウィジェット１２４内に含まれるＵＲＬに関連付けられ且つ特定されたユーザの友人に関連付けられた複数のアクション、１つのノードを記述しているソーシャル情報を生成する（５５５）。例えば、生成されたソーシャル情報は、ノードに関係している特定タイプのアクションを最近行っている前記特定されたユーザの友人の数を特定したり、又はノードに関係している特定されたタイプのアクションを最近行っているユーザの特定の友人を特定する。別の例において、ソーシャルネットワーキングシステム１３０は、前記特定されたユーザに関連付けられたソーシャル情報を追加することなく、ウィジェット１２４に含まれたＵＲＬに関連付けられたノードからデータを抽出することによって、コンテンツを生成する（５５５）。例えば、ソーシャルネットワーキングシステム１３０は、ノードからタイトル、説明と画像を割り出す。さらに、ソーシャルネットワーキングシステム１３０は、フレーム内に含める１以上のアクションボタンを生成する。１以上のアクションボタンは、図３と図４に関連して上述したように、ノードタイプによって決まり、ユーザが１以上のアクションボタンとインタラクトすることによって、ウィジェット１２４に含まれるＵＲＬに関連付けられたノードとインタラクトできるようにする。
【００６８】
ソーシャルネットワーキングシステム１３０が、受信したクッキー１１４に関連付けられたユーザがウィジェット１２４に含まれるＵＲＬに関連付けられたノードに記憶されたアドミニストレーターユーザ識別子と一致することを判断する場合、ソーシャルネットワーキングシステム１３０は、フレームによる提示のための管理コンテンツを生成する（５５０）。ウェブページ１２２をエンコードするマークアップ言語ドキュメント１１６に含まれるアドミニストレータータグは、ウェブページ１２２に関連付けられたノードを生成及び／又は維持管理する能力を持つソーシャルネットワーキングシステム１３０のユーザを指定する。したがって、ソーシャルネットワーキングシステム１３０がアドミニストレーターユーザ識別子に関連付けられたユーザを特定するときに、ソーシャルネットワーキングシステム１３０は、ユーザがウィジェット１２４に含まれるＵＲＬに関連付けられたノードを変更することを可能とするコンテンツを生成する（５５５）。例えば、ソーシャルネットワーキングシステム１３０は、フレームを介してユーザによってアクセスされたときに、前記ユーザをデバッグページに案内するリンクを生成する（５５５）。別の例において、ソーシャルネットワーキングシステム１３０は、フレームを用いた表示のためにウィジェット１２４に含まれるＵＲＬに関連付けられたノードからデバッグ情報を生成する（５５５）。例えば、ソーシャルネットワーキングシステム１３０は、ウェブページ１２２をエンコードするマークアップ言語ドキュメント１１６から欠落しているタグを特定し、ユーザが欠落しているタグを入力する又は既存のタグを変更することのできるようにする。
【００６９】
しかしながら、ソーシャルネットワーキングシステム１３０が受信したクッキー１１４に関連付けられたユーザを認証できない場合には、ソーシャルネットワーキングシステム１３０は、ユーザが認証情報を入力するようにプロンプトをユーザ装置１１０に伝える。別の例において、ソーシャルネットワーキングシステム１３０は、ソーシャル情報を追加することなしに、ウィジェット１２４に含まれるＵＲＬに関連付けられたノードからデータを抽出することによってコンテンツを生成する（５５５）。別の実施形態において、ソーシャルネットワーキングシステム１３０は、ウィジェット１２４に含まれるＵＲＬに関連付けられたノードからデータを抽出し、特定されたノードに関係しているソーシャルネットワーキングシステム１３０のユーザによって行われたアクションを決定することによってコンテンツを生成する（５５５）。例えば、ソーシャルネットワーキングシステム１３０は、ソーシャルネットワーキングシステム１３０のユーザによって利用される前記特定されたノードに関係している直近の行動を特定し得る。したがって、ソーシャルネットワーキングシステム１３０が受信したクッキー１１４に関連付けられたユーザに関連付けられた認証情報を受信するまで、ソーシャルネットワーキングシステム１３０によって生成されたコンテンツは（５５５）、前記特定されたノードに関係している、前記受信したクッキー１１４に関連付けられたユーザの友人達によって実行されたアクションを記述するソーシャル情報を含まない。クッキー１１４に関連付けられたユーザに関連付けられた認証情報を受信し確認した後、ソーシャルネットワーキングシステム１３０は、上述したように、フレーム内に含めるソーシャル情報を生成し得る（５５５）、それはクッキー１１６に関連付けられたユーザのためにパーソナライズされる。
【００７０】
同様に、ユーザ装置１１０がクッキー１１４をソーシャルネットワーキングシステム１３０に送信しない場合（５５０）、ユーザ装置１１０は、ウィジェット１２４に含まれるＵＲＬから情報を抽出することにより、フレーム内に含めるコンテンツを生成する（５５５）。一実施形態において、前記生成されたコンテンツはまた、ソーシャルネットワーキングシステム１３０のユーザにより行われ且つウィジェット１２４に含まれるＵＲＬに関連付けられたノードに関連付けられた、１以上のアクションを含み得る。一実施形態において、ソーシャルネットワーキングシステム１３０はまた、フレーム内のソーシャルネットワーキングシステム１３０に参加するためのプロンプトを含む。
【００７１】
ソーシャルネットワーキングシステム１３０は次に、フレームコンテンツをユーザ装置１１０にネットワーク１４０を通じて送信する（５６０）。ユーザ装置１１０に含まれるブラウザアプリケーション１１２は次に、フレームを用いて、ソーシャルネットワーキングシステム１３０から受信したコンテンツを用いて、レンダリングを行い（５６５）、フレーム内に表示されたソーシャルネットワーキングシステム１３０からのコンテンツと共に、ウェブページ１２２及びフレームを表示する（５７０）。前記フレームは、ソーシャルネットワーキングシステム１３０によって生成された１以上のアクションボタンを含む。
【００７２】
アクションボタンとインタラクトしているユーザ装置１１０のユーザによって、アクションが選択されると（５７５）、選択されたアクションがソーシャルネットワーキングシステム１３０にネットワーク１４０を介して伝送される。アクションボタンとインタラクトすることによってアクションを選択することは（５７５）、ユーザがソーシャルネットワーキングシステム１３０の中からノード内でコミュニケーションしているかのように、ウィジェット１２４によって特定されるＵＲＬに関連付けられたノードとユーザがインタラクトできるようにする。外部ウェブサイト１２０は、アクションが実行されたこと、あるいはユーザの身元さえ知る必要がない。ソーシャルネットワーキングシステム１３０はそれから、ユーザとウィジェット１２４により特定されたＵＲＬに関連付けられたノードとの間のアクションを記録し（５８０）、ユーザがソーシャルネットワーキングシステム１３０の中からノードとインタラクトしているかのように、ソーシャルネットワーキングシステム１３０が対処できるようにする。このように、フレーム３２０内のアクションボタン３３０を用いて、ウィジェット１２４により特定されたＵＲＬに関連付けられたノードとインタラクトすることによって、ユーザによって行われるアクションは、ソーシャルネットワーキングシステム１３０の中からのノードとの他ユーザのインタラクションに相当する。ソーシャルネットワーキングシステム１３０内の他ノードとのユーザインタラクションと同様に、このインタラクションは、ユーザと該ユーザがインタラクトしたノード間のエッジを生成し得る。記憶されるエッジは、そのノードと前記ユーザ（ここで、ユーザはノードによって提示される）間の繋がりに関する有用なコンテキスト情報を提供する。
【００７３】
一実施形態において、ユーザがノードとインタラクトできるようにするアクションボタン又は他ユーザインタラクトは、フレーム内というよりむしろ、サードパーティーウェブページのドメイン内にあるウェブページの一部上であるかもしれない。このような実施形態において、サードパーティーウェブサイト１２０は、このアクションをソーシャルネットワーキングシステム１３０に伝える必要がある、そのためにアクションは記録され得る。このような実施形態において、ソーシャルネットワーキングシステム１３０は１以上のＡＰＩを提供し得る、サードパーティーウェブサイト１２０はこれらのようなコミュニケーションをソーシャルネットワーキングシステム１３０に送信するのに用いられ得る。別の実施形態において、この情報をサードパーティーウェブサイト１２０からソーシャルネットワーキングシステム１３０に伝えるための他の適切なメカニズムが用いられ得る。
【００７４】
ユーザとノード間のアクションを記録すること（５８０）に加えて、ソーシャルネットワーキングシステム１３０はアクションタイプに従属する追加アクションを行い得る。例えば、フレーム内で選択された（５７５）アクションが、ユーザがノードへの関心を表明することである場合、前記アクションはソーシャルネットワーキングシステム１３０によって記録され（５８０）、ユーザに関連付けられたフィード（feed）に公開され得る、そしてユーザのプロフィールはユーザとノード間のアフィリエイション（affiliation）を含めるように更新され得る。別の例として、フレーム内で選択された（５７５）アクションが、ユーザがある場所にいることを示すことである場合、前記アクションはユーザによって行われたアクションを記述するフィードに公開されて、ユーザの友人達に伝達され得る。さらに、フレーム内で選択された（５７５）アクションが、ユーザがイベントへの参加を示すことである場合、前記アクションは記録され（５８０）、ユーザカレンダーに追加されて、該ユーザによって行われたアクションを記述するフィードに公開される。
【００７５】
また、選択されたアクションを記録した後（５８０）、ソーシャルネットワーキングシステム１３０は、ウィジェット１２４によって特定されたＵＲＬに関連付けられたノードに関連付けられたエンティティが、ウィジェット１２４により特定されたＵＲＬに関連付けられたノードに関連するアクションを実行したもとのユーザ達へコミュニケーションを公開できるようにする。例えば、ユーザがウィジェット１２４により特定されたＵＲＬに関連付けられたノードへの関心を示す場合、前記ウィジェットによって特定されたＵＲＬのアドミニストレーターは、ソーシャルネットワーキングシステム１３０を介してもとのユーザへコミュニケーションを公開し得る。さらに、ソーシャルネットワーキングシステムは、前記選択したアクションがソーシャルネットワーキングシステム１３０によって行われたことを確認するように、フレームを介してユーザにメッセージを伝える、又はソーシャルネットワーキングシステム１３０に権限を与えるように、ユーザの友人達にアクションが行われたことを知らせるように、フレームを介してユーザにメッセージを伝える。
【００７６】
したがって、ソーシャルネットワーキングシステム１３０によって維持管理されるソーシャルグラフは、ウェブページによって表される何かを含み得る。ソーシャルグラフによって記憶されるデータ量を増加することに加えて、これは、ソーシャルネットワーキングシステム１３０のユーザが、ソーシャルネットワーキングシステム１３０に関連付けられたドメイン外なのに、ソーシャルグラフ内のノードと容易にインタラクトできるようにする。例えば、外部ウェブサイト１２０から取り出されたウェブページ１２２を見ながら、ユーザは外部ウェブサイト１２０からウェブページ１２２に関連付けられたソーシャルグラフのノードとインタラクトし得る。ユーザとウェブページを示すノード間のインタラクションはもとのソーシャルネットワーキングシステム１３０へと広められ、ソーシャルネットワーキングシステム１３０はその後、様々な目的（例えば、ポスティングアクティビティフィード、ターゲティング広告など）のインタラクションから社会的に関連するデータを用いるかもしれない。
概要
【００７７】
本発明の実施形態の上記説明は、説明の目的で示されたものである。開示されている形態そのもので本発明を網羅することも限定することも意図されていない。当業者は、本開示を踏まえて、多くの変更および変形が可能であることを理解できる。
【００７８】
本開示のいくつかの部分は、本発明の実施形態を、情報処理のアルゴリズム及び記号的表現に特有の言葉で記述した。これらアルゴリズム的記述及び記号的表現は、データ処理技術の当業者において、他の当業者に彼らの仕事の要旨を効果的に伝えるために、一般的に使われている。これらの動作は、機能的に、コンピュータ処理的に、又は、論理的に記述されたが、コンピュータプログラム又は同等な電子回路、マイクロコードなどにより実装できることは理解できる。更に、一般性を失することなしに、これらの動作の配置をモジュールとして適用することが時として便利なことは証明されている。上述した動作及び関連するモジュールは、ソフトウェア、ファームウェア、ハードウェア又はそれらの組み合わせにより実施できる。
【００７９】
上述したステップ、動作又は処理のいずれも、１以上のハードウェア又はソフトウェアモジュール単独で又は他の装置と組み合わせて、実装及び実行できる。一実施形態において、ソフトウェアモジュールは、上述したいずれの又は全てのステップ、動作、又は処理を実行するために、コンピュータプロセッサによって実行されるコンピュータプログラムコードを収納したコンピュータで読み取り可能な媒体を含むコンピュータプログラム製品として実装される。
【００８０】
本発明の実施形態は、本明細書に記載する動作を行う装置に関するものでもよい。この装置は必要な目的のために特別に構成されたものでもよく、及び／又はコンピュータに記憶されたコンピュータプログラムにより選択的に起動または再構成される汎用計算装置を備えてもよい。このようなコンピュータプログラムは、一時的でない、電子的命令を記憶するのに適した、コンピュータシステムバスに連結される、有形のコンピュータ読み取り可能記憶媒体または如何なる種類の媒体に記憶してもよい。更に、本明細書で参照する如何なる計算システムも、単一のプロセッサを含むか、計算能力を増大する目的で複数プロセッサによる設計を採用したアーキテクチャであってもよい。
【００８１】
本発明の実施形態は、本明細書に記載のコンピュータ処理によって製造された製品に関するものでもよい。このような製品は、一時的でない、有形のコンピュータ読み取り可能記憶媒体に格納されており、本明細書に記載されたコンピュータプログラム製品又はその他データの組み合わせの実施形態を含み得る、コンピュータ処理から得られる情報から構成されていてもよい。
【００８２】
最後に、明細書で用いられている文言は、主として、読み易さおよび教示目的のために選択されており、発明の主題を描写又は制限するために選択されたのではない。したがって、発明の対象の範囲は詳細な説明によって限定されるのではなく、むしろ、これに基づく特許出願に係る請求項により限定される。したがって、本発明の実施形態の開示は、説明を目的としており、以下の特許請求の範囲で明らかにされる本発明の範囲を限定しない。
【図１】
0005898673.tif 000002
【図２】
0005898673.tif 000003
【図３】
0005898673.tif 000004
【図４】
0005898673.tif 000005
【図５】
0005898673.tif 000006