(57)【要約】      （修正有）【課題】電子的コンテンツを更新する際の好適な方法を提供する。【解決手段】クライアント・コンピューティング・デバイスがオンライン・サービスから遮断されたときに、コンピューティング・デバイスのユーザから、オンライン・サービスに関連する入力を受信する工程と、入力に基づいて、オンライン・サービスに関連する部分的に格納されたコンテンツを部分的に格納するかまたは修正する工程と、を含む。クライアント・コンピューティング・デバイスは、コンテンツと同時期に起きるデータを決定し、データをコンテンツと部分的に関連付ける。方法は、さらに、クライアント・コンピューティング・デバイスがオンライン・サービスに接続されたときに、部分的に格納されたか、または修正されたコンテンツと、コンテンツと部分的に関連するデータとをオンライン・サービスに自動的にアップロードする工程を含む。【選択図】図３
2018152109.tif 000002
【特許請求の範囲】
【請求項１】
方法であって、
クライアント・コンピューティング・デバイスが、前記クライアント・コンピューティング・デバイスのユーザからオンライン・サービスと関連する入力を受信する工程であって、前記クライアント・コンピューティング・デバイスは、前記入力が受信されるときに前記オンライン・サービスから遮断される、前記受信する工程と、
前記クライアント・コンピューティング・デバイスが、前記入力に基づいて前記オンライン・サービスと関連する部分的に格納されたコンテンツを部分的に格納するか、または修正する工程と、
前記クライアント・コンピューティング・デバイスが、前記コンテンツと同時期に起きるデータを決定する工程と、
前記クライアント・コンピューティング・デバイスが、前記データを前記コンテンツと部分的に関連付ける工程と、
前記クライアント・コンピューティング・デバイスが、前記クライアント・コンピューティング・デバイスが前記オンライン・サービスに接続されたとき、部分的に格納されたか、または修正されたコンテンツと、前記コンテンツに部分的に関連するデータとを前記オンライン・サービスに自動的にアップロードする工程と
を備える方法。
【請求項２】
部分的に格納されたコンテンツを修正する工程は、
前記コンテンツを編集すること、
前記コンテンツを消去すること、または
前記コンテンツを追加すること
の１つもしくは複数を含む、請求項１に記載の方法。
【請求項３】
前記オンライン・サービスは、ソーシャルネットワーキング・システムを含み、前記ソーシャルネットワーキング・システムは、複数のノード及び前記複数のノードを接続する複数のエッジを含むグラフを含み、前記グラフにおける少なくとも１つのノードは、前記ユーザに対応する、請求項１に記載の方法。
【請求項４】
前記グラフの少なくとも１つの他のノードは、１人もしくは複数の他のユーザの各々に対応しており、前記ユーザに対応する前記複数のノードの少なくとも１つ、及び前記他のユーザの１人に対応する前記複数のノードの少なくとも１つは、１つもしくは複数のエッジによって互いに接続されている、請求項３に記載の方法。
【請求項５】
前記自動的にアップロードされたコンテンツは、ソーシャル・ネットワークの１人または複数の他のユーザに表示される通知に関連付けられる、請求項４に記載の方法。
【請求項６】
前記データは、アップロードされたコンテンツを閲覧するか、または相互作用する前記オンライン・サービスの１人もしくは複数の他のユーザを識別するプライバシー設定を含む、請求項１に記載の方法。
【請求項７】
前記データは、前記入力が受信された時間を含む、請求項１に記載の方法。
【請求項８】
アップロードされたコンテンツは、以前にアップロードされたコンテンツの時間に関連する以前にアップロードされたコンテンツの集合に挿入され、挿入は、入力が受信された時間と以前にアップロードされたコンテンツの１つまたは複数の時間との比較に基づいて発生する、請求項７に記載の方法。
【請求項９】
前記アップロードされたコンテンツは、１つもしくは複数の画像を含み、前記以前にアップロードされたコンテンツは、１つもしくは複数の以前にアップロードされた画像を含む、請求項８に記載の方法。
【請求項１０】
前記データは、前記クライアント・コンピューティング・デバイスの位置についての情報を含む、請求項１に記載の方法。
【請求項１１】
前記クライアント・コンピューティング・デバイスが、前記ユーザによって少なくとも部分的に決定された設定に基づいて、クライアント・デバイスを前記オンライン・サービスに接続するかどうかを決定する工程をさらに含む、請求項１に記載の方法。
【請求項１２】
前記設定は、
前記クライアント・コンピューティング・デバイスと前記オンライン・サービスとの間の接続、
前記オンライン・サービスにアップロードされたデータ量、または
前記アップロードされたコンテンツの種類
の１つもしくは複数に基づく、請求項１１に記載の方法。
【請求項１３】
ソフトウェアを実装するコンピュータ読み取り可能で非一時的な１つもしくは複数の記憶媒体であって、前記ソフトウェアは、実行されたときに、
クライアント・コンピューティング・デバイスのユーザからオンライン・サービスと関連する入力を受信し、ここで、前記クライアント・コンピューティング・デバイスは、前記入力が受信されるときに前記オンライン・サービスから遮断され、
前記入力に基づいて前記オンライン・サービスに関連する部分的に格納されたコンテンツを部分的に格納するか、または修正し、
前記コンテンツと同時期に起きるデータを決定し、
前記データを前記コンテンツと部分的に関連付け、
前記クライアント・コンピューティング・デバイスが前記オンライン・サービスに接続されたとき、部分的に格納されたか、または修正されたコンテンツと、前記コンテンツに部分的に関連するデータとを前記オンライン・サービスに自動的にアップロードするように動作可能である、媒体。
【請求項１４】
前記オンライン・サービスは、ソーシャルネットワーキング・システムを含み、前記ソーシャルネットワーキング・システムは、複数のノード及び前記複数のノードを接続する複数のエッジを含むグラフを含み、前記グラフにおける少なくとも１つのノードは、前記ユーザに対応する、請求項１３に記載の媒体。
【請求項１５】
前記グラフの少なくとも１つの他のノードは、１人もしくは複数の他のユーザの各々に対応しており、前記ユーザに関連する前記ノードの少なくとも１つ、及び前記他のユーザの１人に対応する前記ノードの少なくとも１つは、１つもしくは複数のエッジによって互いに接続されている、請求項１４に記載の媒体。
【請求項１６】
前記自動的にアップロードされたコンテンツは、ソーシャル・ネットワークの１人または複数の他のユーザに表示される通知に関連付けられる、請求項１５に記載の媒体。
【請求項１７】
前記データは、アップロードされたコンテンツを閲覧するか、または相互作用する前記オンライン・サービスの１人もしくは複数の他のユーザを識別するプライバシー設定を含む、請求項１３に記載の媒体。
【請求項１８】
前記データは、前記入力が受信された時間を含む、請求項１３に記載の媒体。
【請求項１９】
前記データは、前記クライアント・コンピューティング・デバイスの位置についての情報を含む、請求項１３に記載の媒体。
【請求項２０】
システムであって、
１つもしくは複数のプロセッサと、
前記プロセッサと接続され、前記プロセッサによって実行可能な命令を含むメモリとを備え、
前記プロセッサは、命令を実行するときに、
クライアント・コンピューティング・デバイスのユーザからオンライン・サービスと関連する入力を受信し、ここで、前記クライアント・コンピューティング・デバイスは、前記入力が受信されるときに前記オンライン・サービスから遮断され、
前記入力に基づいて前記オンライン・サービスに関連する部分的に格納されたコンテンツを部分的に格納するか、または修正し、
前記コンテンツと同時期に起きるデータを決定し、
前記データを前記コンテンツと部分的に関連付け、
前記クライアント・コンピューティング・デバイスが前記オンライン・サービスに接続されたとき、部分的に格納されたか、または修正されたコンテンツと、前記コンテンツに部分的に関連するデータとを前記オンライン・サービスに自動的にアップロードするように動作可能である、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は一般に、電子的コンテンツを更新することに関する。
【背景技術】
【０００２】
ソーシャルネットワーキング・システム（ソーシャルネットワーキング・ウェブサイトを含むことができる）は、そのソーシャルネットワーキング・システムのユーザ（人または組織など）がそのソーシャルネットワーキング・システムと、およびそのソーシャルネットワーキング・システムを通じて互いに対話することを可能にすることができる。ソーシャルネットワーキング・システムは、ユーザからの入力を用いて、そのユーザに関連付けられているユーザ・プロフィールを作成して、ソーシャルネットワーキング・システム内に格納することができる。ユーザ・プロフィールは、人口統計学的情報、通信チャネル情報、およびユーザの個人的な関心に関する情報を含むことができる。ソーシャルネットワーキング・システムは、ユーザからの入力を用いて、そのユーザと、ソーシャルネットワーキング・システムのその他のユーザとの関係のレコードを作成および格納すること、ならびにサービス（たとえば、ウォール・ポスト、写真共有、イベント編成、メッセージング、ゲーム、または広告）を提供して、ユーザ同士の間における社会的な交流を容易にすることも可能である。
【０００３】
ソーシャルネットワーキング・システムは、そのサービスに関連したコンテンツまたはメッセージを、１つまたは複数のネットワークを介して、ユーザのモバイルまたはその他のコンピューティング・デバイスへ送信することができる。ユーザは、自分のユーザ・プロフィールおよびソーシャルネットワーキング・システム内のその他のデータにアクセスするためにソフトウェア・アプリケーションを自分のモバイルまたはその他のコンピューティング・デバイス上にインストールすることもできる。ソーシャルネットワーキング・システムは、ユーザにつながっているその他のユーザの集約されたストーリのニュースフィードなど、ユーザに表示するためのコンテンツ・オブジェクトのパーソナライズされたセットを生成することができる。
【発明の概要】
【０００４】
クライアント・コンピューティング・デバイスのユーザは、ネットワーク、または例えばソーシャルネットワーキング・サービスなどのそのネットワークによってアクセス可能なシステムに非接続となる体験をすることがある。オンライン・システムまたはサービスは、デバイスがオンライン・サービスに接続されていないときでさえ、クライアント・コンピューティング・デバイスのユーザがオンライン・システムまたはオンライン・サービスの少なくとも一部の部分的なコピーと相互作用することを可能にする関連した「オフライン」モードを有する。オフライン版及びオンライン版の表示は、完全にもしくは大部分が同一で、オンラインモードとオフラインモードとの間の遷移は途切れなく行われ、その結果、ユーザが接続に関わらず整合性のある方法でサービスと相互作用することを可能にすることによってユーザ体験が向上する。
【０００５】
コンテンツ及び関連したデータを用いてオンライン・サービスのオフライン・コピーを更新し、続いて電子的コンテンツ及び関連したデータをオンライン・サービスにアップロードするための方法は、クライアント・コンピューティング・デバイスがオンライン・サービスに接続されていないときに、オンライン・サービスと関連する入力を受信する工程を含む。クライアント・コンピューティング・デバイスに部分的に格納されたオンライン・サービスのコピーは、入力に基づいて追加されるか、または変更される。変更されたコンテンツ（例えば、入力が発生した時間、入力の時刻での、またはその時刻付近のクライアント・コンピューティング・デバイスの場所、及びコンテンツに関連付けられているコンテキストの少なくとも１つ等）と同時期に起きるデータは、コンテンツと関連付けられ、かつクライアント・コンピューティング・デバイスに格納される。クライアント・コンピューティング・デバイスが（例えば、ユーザの指示によって）オンライン・サービスに接続すると、オフラインの変更されたコンテンツ、部分的に格納されたコピーは、オンライン・サービスにアップロードされ、かつ同期される。アップロードされたコンテンツ、またはアップロードされたコンテンツについての通知は、オンライン・サービスの他のユーザに表示され、コンテンツを生成するユーザは、特定のアップロードの成功もしくは失敗について通知される。
【０００６】
上で開示された実施形態は単なる例であり、本開示の範囲はこれらに限定されない。特定の実施形態は、上で開示された実施形態のコンポーネント、要素、特性、機能、動作、または工程のすべて、もしくはいくつかを含むか、全く含まない。
【図面の簡単な説明】
【０００７】
【図１】ソーシャルネットワーキング・システムに関連付けられている例示的なネットワーク環境を示す図。
【図２】例示的なソーシャルグラフを示す図。
【図３】オンライン・サービスのオフライン・コピーをコンテンツ及び関連したデータで更新し、続いて電子的コンテンツ及び関連したデータをオンライン・サービスにアップロードするための例示的な方法を示す図。
【図４】例示的なコンピュータ・システムを示す図。
【発明を実施するための形態】
【０００８】
図１は、ソーシャルネットワーキング・システムに関連付けられている例示的なネットワーク環境１００を示している。ネットワーク環境１００は、ネットワーク１１０によって互いにつながっているクライアント・システム１３０、ソーシャルネットワーキング・システム１６０、およびサードパーティ・システム１７０を含む。図１は、クライアント・システム１３０、ソーシャルネットワーキング・システム１６０、サードパーティ・システム１７０、およびネットワーク１１０の特定の構成を示しているが、本開示は、クライアント・システム１３０、ソーシャルネットワーキング・システム１６０、サードパーティ・システム１７０、およびネットワーク１１０の任意の適切な構成を想定している。限定ではなく、例として、クライアント・システム１３０、ソーシャルネットワーキング・システム１６０、およびサードパーティ・システム１７０のうちの複数は、ネットワーク１１０を迂回して、互いに直接つながることが可能である。別の例として、クライアント・システム１３０、ソーシャルネットワーキング・システム１６０、およびサードパーティ・システム１７０のうちの複数は、物理的にまたは論理的に、全体としてまたは部分的に互いに同一場所に配置されることが可能である。その上、図１は、特定の数のクライアント・システム１３０、ソーシャルネットワーキング・システム１６０、サードパーティ・システム１７０、およびネットワーク１１０を示しているが、本開示は、任意の適切な数のクライアント・システム１３０、ソーシャルネットワーキング・システム１６０、サードパーティ・システム１７０、およびネットワーク１１０を想定している。限定ではなく、例として、ネットワーク環境１００は、複数のクライアント・システム１３０、ソーシャルネットワーキング・システム１６０、サードパーティ・システム１７０、およびネットワーク１１０を含むことができる。
【０００９】
本開示は、任意の適切なネットワーク１１０を想定している。限定ではなく、例として、ネットワーク１１０の１つまたは複数の部分は、アド・ホック・ネットワーク、イントラネット、エクストラネット、仮想プライベート・ネットワーク（ＶＰＮ）、ローカル・エリア・ネットワーク（ＬＡＮ）、ワイヤレスＬＡＮ（ＷＬＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、ワイヤレスＷＡＮ（ＷＷＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、インターネットの一部分、公衆交換電話網（ＰＳＴＮ）の一部分、セルラー電話ネットワーク、またはこれらのうちの複数の組合せを含むことができる。ネットワーク１１０は、１つまたは複数のネットワーク１１０を含むことができる。
【００１０】
リンク１５０は、クライアント・システム１３０、ソーシャルネットワーキング・システム１６０、およびサードパーティ・システム１７０を通信ネットワーク１１０に、または互いに接続することができる。本開示は、任意の適切なリンク１５０を想定している。特定の実施形態においては、１つまたは複数のリンク１５０は、１つもしくは複数の有線リンク（たとえば、デジタル・サブスクライバ・ライン（ＤＳＬ）もしくはデータ・オーバ・ケーブル・サービス・インタフェース仕様（ＤＯＣＳＩＳ）など）、ワイヤレス・リンク（たとえば、Ｗｉ−Ｆｉもしくはワールドワイド・インターオペラビリティー・フォー・マイクロウェーブ・アクセス（ＷｉＭＡＸ）など）、または光リンク（たとえば、同期光ネットワーク（ＳＯＮＥＴ）もしくは同期デジタル階層（ＳＤＨ）など）を含む。特定の実施形態においては、１つまたは複数のリンク１５０はそれぞれ、アド・ホック・ネットワーク、イントラネット、エクストラネット、ＶＰＮ、ＬＡＮ、ＷＬＡＮ、ＷＡＮ、ＷＷＡＮ、ＭＡＮ、インターネットの一部分、ＰＳＴＮの一部分、セルラー・テクノロジーベースのネットワーク、衛星通信テクノロジーベースのネットワーク、別のリンク１５０、または複数のそのようなリンク１５０の組合せを含む。リンク１５０は、ネットワーク環境１００の全体を通じて必ずしも同じである必要はない。１つまたは複数の第１のリンク１５０は、１つまたは複数の点において１つまたは複数の第２のリンク１５０とは異なることが可能である。
【００１１】
特定の実施形態においては、クライアント・システム１３０は、クライアント・システム１３０によって実装またはサポートされる適切な機能を実行することができる、ハードウェア、ソフトウェア、もしくは組み込みロジック・コンポーネント、または複数のそのようなコンポーネントの組合せを含む電子デバイスであることが可能である。限定ではなく、例として、クライアント・システム１３０は、デスクトップ・コンピュータ、ノートブック・コンピュータもしくはラップトップ・コンピュータ、ネットブック、タブレット・コンピュータなどのコンピュータ・システム、ｅブック・リーダ、ＧＰＳデバイス、カメラ、携帯情報端末（ＰＤＡ）、ハンドヘルド電子デバイス、セルラー電話、スマートフォン、その他の適切な電子デバイス、またはそれらの任意の適切な組合せを含むことができる。本開示は、任意の適切なクライアント・システム１３０を想定している。クライアント・システム１３０は、クライアント・システム１３０のネットワーク・ユーザがネットワーク１１０にアクセスすることを可能にすることができる。クライアント・システム１３０は、自分のユーザがその他のクライアント・システム１３０のその他のユーザと通信することを可能にすることができる。
【００１２】
特定の実施形態においては、クライアント１３０は、ＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲ、ＧＯＯＧＬＥ  ＣＨＲＯＭＥ、またはＭＯＺＩＬＬＡ  ＦＩＲＥＦＯＸなどのウェブ・ブラウザ１３２を含むことができ、１つまたは複数のアドオン、プラグイン、またはＴＯＯＬＢＡＲもしくはＹＡＨＯＯ  ＴＯＯＬＢＡＲなどのその他の拡張を有することができる。クライアント・システム１３０のユーザは、ウェブ・ブラウザ１３２を特定のサーバ（サーバ１６２、またはサードパーティ・システム１７０に関連付けられているサーバなど）へ導くユニフォーム・リソース・ロケータ（ＵＲＬ）またはその他のアドレスを入力することができ、ウェブ・ブラウザ１３２は、ハイパー・テキスト転送プロトコル（ＨＴＴＰ）要求を生成して、そのＨＴＴＰ要求をサーバに通信することができる。サーバは、そのＨＴＴＰ要求を受け入れて、そのＨＴＴＰ要求に応答して１つまたは複数のハイパー・テキスト・マークアップ言語（ＨＴＭＬ）ファイルをクライアント・システム１３０に通信することができる。クライアント・システム１３０は、ユーザに提示するためにサーバからのＨＴＭＬファイルに基づいてウェブページをレンダリングすることができる。本開示は、任意の適切なウェブページ・ファイルを想定している。限定ではなく、例として、ウェブページは、特定のニーズに従って、ＨＴＭＬファイル、拡張可能ハイパー・テキスト・マークアップ言語（ＸＨＴＭＬ）ファイル、または拡張可能マークアップ言語（ＸＭＬ）ファイルからレンダリングすることができる。そのようなページは、限定ではなく、例として、ＪＡＶＡＳＣＲＩＰＴ（登録商標）、ＪＡＶＡ（登録商標）、ＭＩＣＲＯＳＯＦＴ  ＳＩＬＶＥＲＬＩＧＨＴで書かれたスクリプトなどのスクリプト、ＡＪＡＸ（Ａｓｙｎｃｈｒｏｎｏｕｓ  ＪＡＶＡＳＣＲＩＰＴ（登録商標）  ａｎｄ  ＸＭＬ）などのマークアップ言語とスクリプトの組合せなどを実行することもできる。本明細書においては、ウェブページへの参照は、適切な場合には、（そのウェブページをレンダリングするためにブラウザが使用することができる）１つまたは複数の対応するウェブページ・ファイルを含み、その逆もまた同様である。
【００１３】
特定の実施形態においては、ソーシャルネットワーキング・システム１６０は、オンライン・ソーシャル・ネットワークをホストすることができるネットワークアドレス可能なコンピューティング・システムであることが可能である。ソーシャルネットワーキング・システム１６０は、たとえば、ユーザプロフィール・データ、コンセプトプロフィール・データ、ソーシャルグラフ情報、またはオンライン・ソーシャル・ネットワークに関連したその他の適切なデータなどのソーシャルネットワーキング・データを生成すること、格納すること、受け取ること、および送信することが可能である。ソーシャルネットワーキング・システム１６０は、ネットワーク環境１００のその他のコンポーネントによって直接、またはネットワーク１１０を介してアクセスされることが可能である。特定の実施形態においては、ソーシャルネットワーキング・システム１６０は、１つまたは複数のサーバ１６２を含むことができる。それぞれのサーバ１６２は、単一のサーバ、または複数のコンピュータもしくは複数のデータセンターにわたる分散サーバであることが可能である。サーバ１６２は、限定ではなく、例として、ウェブ・サーバ、ニュース・サーバ、メール・サーバ、メッセージ・サーバ、広告サーバ、ファイル・サーバ、アプリケーション・サーバ、Ｅｘｃｈａｎｇｅサーバ、データベース・サーバ、プロキシ・サーバ、本明細書において記述されている機能もしくはプロセスを実行するのに適している別のサーバ、またはそれらの任意の組合せなど、さまざまなタイプのものであることが可能である。特定の実施形態においては、それぞれのサーバ１６２は、サーバ１６２によって実装またはサポートされる適切な機能を実行するためのハードウェア、ソフトウェア、もしくは組み込みロジック・コンポーネント、または複数のそのようなコンポーネントの組合せを含むことができる。特定の実施形態においては、ソーシャルネットワーキング・システム１６４は、１つまたは複数のデータ・ストア１６４を含むことができる。データ・ストア１６４は、さまざまなタイプの情報を格納するために使用されることが可能である。特定の実施形態においては、データ・ストア１６４内に格納されている情報は、特定のデータ構造に従って編成されることが可能である。特定の実施形態においては、それぞれのデータ・ストア１６４は、リレーショナル・データベース、カラムナデータベース（columnar database）、相関データベース（correlation database）、または他の適切なデータベースであることが可能である。本開示は、特定の種類のデータベースを記述するか、または図示しているが、本開示は、任意の適切な種類のデータベースを想定している。特定の実施形態は、クライアント・システム１３０、ソーシャルネットワーキング・システム１６０、またはサードパーティ・システム１７０が、データ・ストア１６４内に格納されている情報を管理すること、取り出すこと、修正すること、追加すること、または削除することを可能にするインタフェースを提供することができる。
【００１４】
特定の実施形態においては、ソーシャルネットワーキング・システム１６０は、１つまたは複数のソーシャルグラフを１つまたは複数のデータ・ストア１６４内に格納することができる。特定の実施形態においては、ソーシャルグラフは、複数のノード（複数のユーザ・ノード（それぞれが、特定のユーザに対応している）、または複数のコンセプト・ノード（それぞれが、特定のコンセプトに対応している）を含むことができる）と、ノード同士をつなげる複数のエッジとを含むことができる。ソーシャルネットワーキング・システム１６０は、オンライン・ソーシャル・ネットワークのユーザに、その他のユーザと通信および対話する能力を提供することができる。特定の実施形態においては、ユーザたちは、ソーシャルネットワーキング・システム１６０を介してオンライン・ソーシャル・ネットワークに参加し、次いで、自分たちがつながりたいと望むソーシャルネットワーキング・システム１６０のその他の複数のユーザにつながり（例えば、関係）を付加することができる。本明細書においては、「友達」という用語は、ユーザがソーシャルネットワーキング・システム１６０を介して、つながり、関連付け、または関係を形成しているソーシャルネットワーキング・システム１６０のその他の任意のユーザを指すことができる。
【００１５】
特定の実施形態においては、ソーシャルネットワーキング・システム１６０は、ソーシャルネットワーキング・システム１６０によってサポートされるさまざまなタイプのアイテムまたはオブジェクトに関してアクションを取る能力をユーザに提供することができる。限定ではなく、例として、それらのアイテムおよびオブジェクトは、ソーシャルネットワーキング・システム１６０のユーザが属することが可能であるグループもしくはソーシャル・ネットワーク、ユーザが関心を抱く可能性があるイベントもしくはカレンダー・エントリー、ユーザが使用することができるコンピュータベースのアプリケーション、ユーザがサービスを介してアイテムを購入もしくは販売することを可能にするトランザクション、ユーザが実行することができる広告との対話、またはその他の適切なアイテムもしくはオブジェクトを含むことができる。ユーザは、ソーシャルネットワーキング・システム１６０において、またはサードパーティ・システム１７０の外部システム（ソーシャルネットワーキング・システム１６０とは別個のものであって、ネットワーク１１０を介してソーシャルネットワーキング・システム１６０に結合されている）によって表されることが可能である任意のものと対話することができる。
【００１６】
特定の実施形態においては、ソーシャルネットワーキング・システム１６０は、さまざまなエンティティ同士をリンクできることが可能である。限定ではなく、例として、ソーシャルネットワーキング・システム１６０は、ユーザたちが互いに対話すること、ならびにサードパーティ・システム１７０もしくはその他のエンティティからのコンテンツを受け取ることを可能にすることができ、またはユーザたちがアプリケーション・プログラミング・インタフェース（ＡＰＩ）もしくはその他の通信チャネルを通じてこれらのエンティティと対話することを可能にすることができる。
【００１７】
特定の実施形態においては、サードパーティ・システム１７０は、１つもしくは複数のタイプのサーバ、１つもしくは複数のデータ・ストア、１つもしくは複数のインタフェース（ＡＰＩを含むが、それには限定されない）、１つもしくは複数のウェブ・サービス、１つもしくは複数のコンテンツ・ソース、１つもしくは複数のネットワーク、または（たとえば、サーバが通信することができる）その他の任意の適切なコンポーネントを含むことができる。サードパーティ・システム１７０は、ソーシャルネットワーキング・システム１６０を運営しているエンティティとは異なるエンティティによって運営されることが可能である。しかしながら、特定の実施形態においては、ソーシャルネットワーキング・システム１６０およびサードパーティ・システム１７０は、ソーシャルネットワーキング・システム１６０またはサードパーティ・システム１７０のユーザにソーシャルネットワーキング・サービスを提供するために互いに連携して機能することができる。この意味において、ソーシャルネットワーキング・システム１６０は、サードパーティ・システム１７０などのその他のシステムがインターネットを介してソーシャルネットワーキング・サービスおよび機能をユーザに提供するために使用することができるプラットフォーム、またはバックボーンを提供することができる。
【００１８】
特定の実施形態においては、サードパーティ・システム１７０は、サードパーティ・コンテンツ・オブジェクト・プロバイダを含むことができる。サードパーティ・コンテンツ・オブジェクト・プロバイダは、コンテンツ・オブジェクトの１つまたは複数のソースを含むことができ、それらのソースは、クライアント・システム１３０に通信されることが可能である。限定ではなく、例として、コンテンツ・オブジェクトは、ユーザにとって関心がある物またはアクティビティに関する情報、たとえば、映画の開始時刻、映画のレビュー、レストランのレビュー、レストランのメニュー、製品の情報およびレビュー、またはその他の適切な情報などを含むことができる。限定ではなく、別の例として、コンテンツ・オブジェクトは、インセンティブ・コンテンツ・オブジェクト、たとえば、クーポン、ディスカウント・チケット、ギフト券、またはその他の適切なインセンティブ・オブジェクトを含むことができる。
【００１９】
特定の実施形態においては、ソーシャルネットワーキング・システム１６０はまた、ユーザによって生成されたコンテンツ・オブジェクトを含み、それらのコンテンツ・オブジェクトは、ソーシャルネットワーキング・システム１６０とのユーザの対話を高めることができる。ユーザによって生成されたコンテンツは、ユーザがソーシャルネットワーキング・システム１６０に付加、アップロード、送信、または「ポスト」することができる任意のものを含むことができる。限定ではなく、例として、ユーザは、クライアント・システム１３０からソーシャルネットワーキング・システム１６０へポストを通信する。ポストは、ステータス更新もしくはその他のテキスト・データ、ロケーション情報、写真、ビデオ、リンク、音楽、またはその他の類似したデータもしくはメディアなどのデータを含むことができる。コンテンツは、ニュースフィードまたはストリームなどの「通信チャネル」を通じてサードパーティによってソーシャルネットワーキング・システム１６０に付加されることも可能である。
【００２０】
特定の実施形態においては、ソーシャルネットワーキング・システム１６０は、さまざまなサーバ、サブシステム、プログラム、モジュール、ログ、およびデータ・ストアを含むことができる。特定の実施形態においては、ソーシャルネットワーキング・システム１６０は、ウェブ・サーバ、アクション・ロガー、ＡＰＩ要求サーバ、関連性およびランキング・エンジン、コンテンツ・オブジェクト分類子、通知コントローラ、アクション・ログ、サードパーティ・コンテンツ・オブジェクト露出ログ、推測モジュール、認可／プライバシー・サーバ、検索モジュール、広告ターゲティング・モジュール、ユーザインタフェース・モジュール、ユーザプロフィール・ストア、つながりストア、サードパーティ・コンテンツ・ストア、またはロケーション・ストアのうちの１つまたは複数を含むことができる。ソーシャルネットワーキング・システム１６０は、適切なコンポーネント、たとえば、ネットワーク・インタフェース、セキュリティー・メカニズム、ロード・バランサ、フェイルオーバ・サーバ、管理およびネットワークオペレーション・コンソール、その他の適切なコンポーネント、またはそれらの任意の適切な組合せを含むこともできる。特定の実施形態においては、ソーシャルネットワーキング・システム１６０は、ユーザ・プロフィールを格納するための１つまたは複数のユーザプロフィール・ストアを含むことができる。ユーザ・プロフィールは、たとえば、経歴情報、人口統計学的情報、挙動情報、ソーシャルな情報、またはその他のタイプの記述的情報、たとえば、職業経験、学歴、趣味もしくは好み、関心、親近感、またはロケーションを含むことができる。関心情報は、１つまたは複数のカテゴリに関連した関心を含むことができる。カテゴリは、一般的または具体的であることが可能である。限定ではなく、例として、ユーザが、あるブランドの靴に関する記事に対して「いいね！」を表明した場合には、カテゴリは、そのブランド、または「靴」もしくは「衣類」という一般的なカテゴリであることが可能である。ユーザに関するつながり情報を格納するために、つながりストアが使用されることが可能である。つながり情報は、類似のもしくは共通の職業経験、グループ・メンバーシップ、趣味、学歴を有しているか、または何らかの形で関連しているか、もしくは共通の属性を共有しているユーザ同士を示すことができる。つながり情報は、さまざまなユーザおよびコンテンツ（内部および外部の両方）の間におけるユーザ定義のつながりを含むこともできる。ネットワーク１１０を介してソーシャルネットワーキング・システム１６０を１つもしくは複数のクライアント・システム１３０または１つもしくは複数のサードパーティ・システム１７０にリンクさせるために、ウェブ・サーバが使用されることが可能である。ウェブ・サーバは、ソーシャルネットワーキング・システム１６０と、１つまたは複数のクライアント・システム１３０との間においてメッセージを受け取って回送するためにメール・サーバまたはその他のメッセージング機能を含むことができる。ＡＰＩ要求サーバは、サードパーティ・システム１７０が、１つまたは複数のＡＰＩを呼び出すことによってソーシャルネットワーキング・システム１６０からの情報にアクセスすることを可能にすることができる。ソーシャルネットワーキング・システム１６０の上のまたは外のユーザのアクションに関してウェブ・サーバから通信を受け取るために、アクション・ロガーが使用されることが可能である。アクション・ログとともに、サードパーティコンテンツ・オブジェクトへのユーザの露出についてのサードパーティコンテンツオブジェクト・ログが保持されることが可能である。通知コントローラは、コンテンツ・オブジェクトに関する情報をクライアント・システム１３０に提供することができる。情報は、通知としてクライアント・システム１３０へ押し出されることが可能であり、または情報は、クライアント・システム１３０から受け取られた要求に応答してクライアント・システム１３０から引き出されることが可能である。ソーシャルネットワーキング・システム１６０のユーザの１つまたは複数のプライバシー設定を実施するために、認可サーバが使用されることが可能である。ユーザのプライバシー設定は、ユーザに関連付けられている特定の情報がどのように共有されることが可能であるかを特定する。認可サーバは、ユーザが、たとえば、適切なプライバシー設定を設定することなどによって、自分のアクションをソーシャルネットワーキング・システム１６０によって記録されること、またはその他のシステム（たとえば、サードパーティ・システム１７０）と共有されることのオプトインまたはオプトアウトを行うことを可能にすることができる。サードパーティ・システム１７０などのサードパーティから受け取られたコンテンツ・オブジェクトを格納するために、サードパーティコンテンツオブジェクト・ストアが使用されることが可能である。ユーザに関連付けられているクライアント・システム１３０から受け取られたロケーション情報を格納するために、ロケーション・ストアが使用されることが可能である。広告価格設定モジュールが、ソーシャルな情報、現在時刻、ロケーション情報、またはその他の適切な情報を組み合わせて、関連がある広告を、通知の形式でユーザに提供することができる。
【００２１】
図２は、例示的なソーシャルグラフ２００を示している。特定の実施形態においては、ソーシャルネットワーキング・システム１６０は、１つまたは複数のソーシャルグラフ２００を１つまたは複数のデータ・ストア内に格納することができる。特定の実施形態においては、ソーシャルグラフ２００は、複数のノード（複数のユーザ・ノード２０２、または複数のコンセプト・ノード２０４を含むことができる）と、ノード同士をつなげる複数のエッジ２０６とを含むことができる。図２において示されている例示的なソーシャルグラフ２００は、教示上の目的から、２次元のビジュアル・マップ表示で示されている。特定の実施形態においては、ソーシャルネットワーキング・システム１６０、クライアント・システム１３０、またはサードパーティ・システム１７０は、適切なアプリケーションに関してソーシャルグラフ２００および関連したソーシャルグラフ情報にアクセスすることができる。ソーシャルグラフ２００のノードおよびエッジは、データ・オブジェクトとして、たとえば（ソーシャルグラフ・データベースなどの）データ・ストア内に格納されることが可能である。そのようなデータ・ストアは、ソーシャルグラフ２００のノードまたはエッジの１つまたは複数の検索可能なまたはクエリ可能なインデックスを含むことができる。
【００２２】
特定の実施形態においては、ユーザ・ノード２０２は、ソーシャルネットワーキング・システム１６０のユーザに対応することができる。限定ではなく、例として、ユーザは、ソーシャルネットワーキング・システム１６０と、またはソーシャルネットワーキング・システム１６０を介して対話または通信する個人（人間のユーザ）、エンティティ（たとえば、企業、ビジネス、もしくはサードパーティ・アプリケーション）、または（たとえば、個人もしくはエンティティの）グループであることが可能である。特定の実施形態においては、あるユーザがソーシャルネットワーキング・システム１６０とのアカウントに登録した場合には、ソーシャルネットワーキング・システム１６０は、そのユーザに対応するユーザ・ノード２０２を作成し、そのユーザ・ノード２０２を１つまたは複数のデータ・ストア内に格納することができる。本明細書において記述されているユーザおよびユーザ・ノード２０２は、適切な場合には、登録されているユーザ、および登録されているユーザに関連付けられているユーザ・ノード２０２を指すことができる。追加として、または代替として、本明細書において記述されているユーザおよびユーザ・ノード２０２は、適切な場合には、ソーシャルネットワーキング・システム１６０に登録されていないユーザを指すことができる。特定の実施形態においては、ユーザ・ノード２０２は、ユーザによって提供された情報、またはソーシャルネットワーキング・システム１６０を含むさまざまなシステムによって収集された情報に関連付けられることが可能である。限定ではなく、例として、ユーザは、自分の名前、プロフィール画像、連絡先情報、生年月日、性別、婚姻状況、家族状況、勤務先、学歴、好み、関心、またはその他の人口統計学的情報を提供することができる。特定の実施形態においては、ユーザ・ノード２０２は、ユーザに関連付けられている情報に対応する１つまたは複数のデータ・オブジェクトに関連付けられることが可能である。特定の実施形態においては、ユーザ・ノード２０２は、１つまたは複数のウェブページに対応することができる。
【００２３】
特定の実施形態においては、コンセプト・ノード２０４は、コンセプトに対応することができる。限定ではなく、例として、コンセプトは、場所（たとえば、映画館、レストラン、ランドマーク、もしくは都市など）、ウェブサイト（たとえば、ソーシャル・ネットワーク・システム１６０に関連付けられているウェブサイト、もしくはウェブアプリケーション・サーバに関連付けられているサードパーティ・ウェブサイトなど）、エンティティ（たとえば、人、企業、グループ、スポーツ・チーム、もしくは有名人など）、ソーシャルネットワーキング・システム１６０内に、もしくはウェブアプリケーション・サーバなどの外部サーバ上に配置されることが可能であるリソース（たとえば、オーディオ・ファイル、ビデオ・ファイル、デジタル写真、テキスト・ファイル、構造化されたドキュメント、もしくはアプリケーションなど）、物的もしくは知的財産（たとえば、彫塑、絵画、映画、ゲーム、曲、アイディア、写真、もしくは執筆作品など）、ゲーム、アクティビティ、アイディアもしくは理論、別の適切なコンセプト、または複数のそのようなコンセプトに対応することができる。コンセプト・ノード２０４は、ユーザによって提供されたコンセプトの情報、またはソーシャルネットワーキング・システム１６０を含むさまざまなシステムによって収集された情報に関連付けられることが可能である。限定ではなく、例として、コンセプトの情報は、名前もしくはタイトル、１つもしくは複数のイメージ（たとえば、本の表紙のイメージ）、ロケーション（たとえば、住所もしくは地理的ロケーション）、（ＵＲＬに関連付けられることが可能である）ウェブサイト、連絡先情報（たとえば、電話番号もしくはＥメール・アドレス）、その他の適切なコンセプト情報、またはそのような情報の任意の適切な組合せを含むことができる。特定の実施形態においては、コンセプト・ノード２０４は、コンセプト・ノード２０４に関連付けられている情報に対応する１つまたは複数のデータ・オブジェクトに関連付けられることが可能である。特定の実施形態においては、コンセプト・ノード２０４は、１つまたは複数のウェブページに対応することができる。
【００２４】
特定の実施形態においては、ソーシャルグラフ２００内のノードは、ウェブページ（「プロフィール・ページ」と呼ばれる場合もある）を表すこと、またはウェブページによって表されることが可能である。プロフィール・ページは、ソーシャルネットワーキング・システム１６０によってホストされること、またはソーシャルネットワーキング・システム１６０にとってアクセス可能であることが可能である。プロフィール・ページは、サードパーティ・サーバ１７０に関連付けられているサードパーティ・ウェブサイト上にホストされることも可能である。限定ではなく、例として、特定の外部ウェブページに対応するプロフィール・ページは、その特定の外部ウェブページであることが可能であり、そのプロフィール・ページは、特定のコンセプト・ノード２０４に対応することができる。プロフィール・ページは、その他のユーザのうちのすべてまたは選択されたサブセットによって閲覧できることが可能である。限定ではなく、例として、ユーザ・ノード２０２は、対応するユーザプロフィール・ページを有することができ、そのユーザプロフィール・ページにおいては、対応するユーザが、コンテンツを付加すること、言明を行うこと、またはその他の形で自分自身を表現することが可能である。限定ではなく、別の例として、コンセプト・ノード２０４は、対応するコンセプトプロフィール・ページを有することができ、そのコンセプトプロフィール・ページにおいては、１人または複数のユーザが、特にコンセプト・ノード２０４に対応するコンセプトに関連して、コンテンツを付加すること、言明を行うこと、または自分自身を表現することが可能である。
【００２５】
特定の実施形態においては、コンセプト・ノード２０４は、サードパーティ・システム１７０によってホストされているサードパーティ・ウェブページまたはリソースを表すことができる。サードパーティ・ウェブページまたはリソースは、数ある要素の中でも、コンテンツ、選択可能なもしくはその他のアイコン、または、アクションもしくはアクティビティを表す（たとえば、ＪＡＶＡＳＣＲＩＰＴ（登録商標）、ＡＪＡＸ、もしくはＰＨＰコードで実装されることが可能である）その他の対話可能なオブジェクトを含むことができる。限定ではなく、例として、サードパーティ・ウェブページは、「いいね！」、「チェックイン」、「食べる」、「推奨する」、または別の適切なアクションもしくはアクティビティなどの選択可能なアイコンを含むことができる。サードパーティ・ウェブページを閲覧しているユーザは、それらのアイコンのうちの１つ（たとえば、「食べる」）を選択することによってアクションを実行して、クライアント・システム１３０に、そのユーザのアクションを示すメッセージをソーシャルネットワーキング・システム１６０へ送信させることができる。そのメッセージに応答して、ソーシャルネットワーキング・システム１６０は、ユーザに対応するユーザ・ノード２０２と、サードパーティ・ウェブページまたはリソースに対応するコンセプト・ノード２０４との間においてエッジ（たとえば、「食べる」エッジ）を作成して、エッジ２０６を１つまたは複数のデータ・ストア内に格納することができる。
【００２６】
特定の実施形態においては、ソーシャルグラフ２００内の１対のノードが、１つまたは複数のエッジ２０６によって互いにつながることが可能である。１対のノードをつなげるエッジ２０６は、それらの１対のノードの間における関係を表すことができる。特定の実施形態においては、エッジ２０６は、１対のノードの間における関係に対応する１つまたは複数のデータ・オブジェクトまたは属性を含むことまたは表すことが可能である。限定ではなく、例として、第１のユーザは、第２のユーザが第１のユーザの「友達」であるということを示すことができる。この表示に応答して、ソーシャルネットワーキング・システム１６０は、「友達要求」を第２のユーザに送信することができる。第２のユーザがその「友達要求」を承認した場合には、ソーシャルネットワーキング・システム１６０は、ソーシャルグラフ２００内で第１のユーザのユーザ・ノード２０２を第２のユーザのユーザ・ノード２０２につなげるエッジ２０６を作成して、エッジ２０６をソーシャルグラフ情報としてデータ・ストア１６４のうちの１つまたは複数の中に格納することができる。図２の例においては、ソーシャルグラフ２００は、ユーザ「Ａ」のユーザ・ノード２０２と、ユーザ「Ｂ」のユーザ・ノード２０２との間における友達関係を示すエッジ２０６と、ユーザ「Ｃ」のユーザ・ノード２０２と、ユーザ「Ｂ」のユーザ・ノード２０２との間における友達関係を示すエッジとを含む。本開示は、特定のユーザ・ノード２０２同士をつなげる特定の属性を伴う特定のエッジ２０６を記述している、または示しているが、本開示は、ユーザ・ノード２０２同士をつなげる任意の適切な属性を伴う任意の適切なエッジ２０６を想定している。限定ではなく、例として、エッジ２０６は、友達関係、家族関係、ビジネスもしくは雇用関係、ファン関係、フォロワー関係、ビジター関係、サブスクライバ関係、上下関係、互恵的関係、非互恵的関係、別の適切なタイプの関係、または複数のそのような関係を表すことができる。その上、本開示は一般に、ノード同士をつながっているものとして記述しているが、本開示はまた、ユーザ同士またはコンセプト同士をつながっているものとして記述している。本明細書においては、つながっているユーザ同士またはコンセプト同士への言及は、適切な場合には、１つまたは複数のエッジ２０６によってソーシャルグラフ２００内でつながっているそれらのユーザ同士またはコンセプト同士に対応するノード同士を指すことができる。
【００２７】
特定の実施形態においては、ユーザ・ノード２０２とコンセプト・ノード２０４との間におけるエッジ２０６は、ユーザ・ノード２０２に関連付けられているユーザによって、コンセプト・ノード２０４に関連付けられているコンセプトに対して実行された特定のアクションまたはアクティビティを表すことができる。限定ではなく、例として、図２において示されているように、ユーザは、コンセプトに対して「いいね！を表明すること」、「通うこと」、「プレイすること」、「聴くこと」、「料理すること」、「勤務すること」、または「観ること」を行った可能性があり、それらのそれぞれは、エッジタイプまたはサブタイプに対応することができる。コンセプト・ノード２０４に対応するコンセプトプロフィール・ページは、たとえば、選択可能な「チェックイン」アイコン（たとえば、クリック可能な「チェックイン」アイコンなど）、または選択可能な「お気に入りに追加」アイコンを含むことができる。同様に、ユーザがこれらのアイコンをクリックした後に、ソーシャルネットワーキング・システム１６０は、それぞれのアクションに対応するユーザのアクションに応答して「お気に入り」エッジまたは「チェックイン」エッジを作成することができる。限定ではなく、別の例として、あるユーザ（ユーザ「Ｃ」）が、特定のアプリケーション（オンライン音楽アプリケーションであるＳＰＯＴＩＦＹ）を使用して特定の曲（「イマジン」）を聴く場合がある。このケースにおいては、ソーシャルネットワーキング・システム１６０は、そのユーザに対応するユーザ・ノード２０２と、その曲およびアプリケーションに対応するコンセプト・ノード２０４との間において、（図２に示されているような）「聴いた」エッジ２０６および「使用した」エッジを作成して、そのユーザがその曲を聴いてそのアプリケーションを使用したということを示すことができる。その上、ソーシャルネットワーキング・システム１６０は、その曲に対応するコンセプト・ノード２０４と、そのアプリケーションに対応するコンセプト・ノード２０４との間において、（図２に示されているような）「再生した」エッジ２０６を作成して、その特定の曲がその特定のアプリケーションによって再生されたということを示すことができる。このケースにおいては、「再生した」エッジ２０６は、外部アプリケーション（ＳＰＯＴＩＦＹ）によって外部オーディオ・ファイル（「イマジン」という曲）に関して実行されたアクションに対応する。本開示は、ユーザ・ノード２０２とコンセプト・ノード２０４とをつなげる特定の属性を伴う特定のエッジ２０６について記述しているが、本開示は、ユーザ・ノード２０２とコンセプト・ノード２０４とをつなげる任意の適切な属性を伴う任意の適切なエッジ２０６を想定している。その上、本開示は、単一の関係を表すユーザ・ノード２０２とコンセプト・ノード２０４との間におけるエッジについて記述しているが、本開示は、１つまたは複数の関係を表すユーザ・ノード２０２とコンセプト・ノード２０４との間におけるエッジを想定している。限定ではなく、例として、エッジ２０６は、ユーザが特定のコンセプトに対して「いいね！」を表明しているということ、およびその特定のコンセプトを使用したということの両方を表すことができる。あるいは、別のエッジ２０６は、（図２において、ユーザ「Ｅ」を表すユーザ・ノード２０２と、「ＳＰＯＴＩＦＹ」を表すコンセプト・ノード２０４との間において示されているような）ユーザ・ノード２０２とコンセプト・ノード２０４との間におけるそれぞれのタイプの関係（または、単一の関係が複数集まったもの）を表すことができる。
【００２８】
特定の実施形態においては、ソーシャルネットワーキング・システム１６０は、ソーシャルグラフ２００内でユーザ・ノード２０２とコンセプト・ノード２０４との間においてエッジ２０６を作成することができる。限定ではなく、例として、（たとえば、ユーザのクライアント・システム１３０によってホストされているウェブ・ブラウザまたは専用のアプリケーションを使用することなどによって）コンセプトプロフィール・ページを閲覧しているユーザは、「いいね！」アイコンをクリックまたは選択することにより、コンセプト・ノード２０４によって表されているコンセプトを自分が気に入っているということを示すことができ、その「いいね！」アイコンをクリックまたは選択することは、ユーザのクライアント・システム１３０に、そのコンセプトプロフィール・ページに関連付けられているそのコンセプトをそのユーザが気に入っているということを示すメッセージをソーシャルネットワーキング・システム１６０へ送信させることができる。そのメッセージに応答して、ソーシャルネットワーキング・システム１６０は、そのユーザとコンセプト・ノード２０４との間における「いいね！」エッジ２０６によって示されているように、そのユーザに関連付けられているユーザ・ノード２０２とコンセプト・ノード２０４との間においてエッジ２０６を作成することができる。特定の実施形態においては、ソーシャルネットワーキング・システム１６０は、エッジ２０６を１つまたは複数のデータ・ストア内に格納することができる。特定の実施形態においては、エッジ２０６は、特定のユーザ・アクションに応答してソーシャルネットワーキング・システム１６０によって自動的に形成されることが可能である。限定ではなく、例として、第１のユーザが、画像をアップロードすること、映画を観ること、または曲を聴くことを行った場合には、エッジ２０６は、第１のユーザに対応するユーザ・ノード２０２と、それらのコンセプトに対応するコンセプト・ノード２０４との間において形成されることが可能である。本開示は、特定の様式で特定のエッジ２０６を形成することについて記述しているが、本開示は、任意の適切な様式で任意の適切なエッジ２０６を形成することを想定している。
【００２９】
特定の実施形態においては、オンライン・ソーシャル・ネットワークの１つもしくは複数のコンテンツ・オブジェクトは、プライバシー設定と関連付けられる。オブジェクトに関するプライバシー設定（または「アクセス設定」）は、例えば、オブジェクトと関連して、認可サーバ上のインデックスにおいて、別の適切な方法で、またはこれらの任意の組み合わせによってなど、任意の適切な方法で格納される。オブジェクトのプライバシー設定は、オンライン・ソーシャル・ネットワークを利用して、オブジェクト（またはオブジェクトに関連付けられている特定の情報）がどのようにアクセスされ得る（例えば、閲覧される、または共有される）のかを設定する。オブジェクトに関するプライバシー設定が、特定のユーザがオブジェクトにアクセスすることを許可する場合、オブジェクトはユーザに対して「可視状態」として記述される。限定ではなく、例として、オンライン・ソーシャル・ネットワークのユーザは、ユーザのプロフィール・ページ上の職歴情報にアクセスし得る一組のユーザを識別するユーザのプロフィール・ページに関するプライバシー設定を設定し、このようにすることで他のユーザを情報にアクセスすることから除外する。特定の実施形態においては、プライバシー設定は、オブジェクトに関連付けられているある情報にアクセスすることを許可すべきでないユーザの「ブロックリスト」を設定する。換言すれば、ブロックリストは、オブジェクトが不可視状態となる１人もしくは複数のユーザまたはエンティティを設定にする。限定ではなく、例として、ユーザは、ユーザに関連付けられている写真アルバムにアクセスできない一組のユーザを設定にすることで、これらのユーザを写真アルバムにアクセスすることから除外する（同時に場合によっては、一組のユーザに含まれないあるユーザが写真アルバムにアクセスすることを許可する）。特定の実施形態においては、プライバシー設定は、特定のソーシャルグラフ要素と関連付けられる。ノードまたはエッジなどのソーシャルグラフ要素のプライバシー設定は、ソーシャルグラフ要素、ソーシャルグラフ要素に関連付けられている情報、またはソーシャルグラフ要素に関連付けられているコンテンツ・オブジェクトがオンライン・ソーシャル・ネットワークを使用してどのようにアクセスすることができるのかを設定にする。限定ではなく、例として、特定の写真に対応する特定のコンセプト・ノード２０４は、写真が写真にタグ付けされたユーザ及びユーザの友人のみによってアクセスされ得ることを設定にするプライバシー設定を有する。特定の実施形態においては、プライバシー設定は、ユーザのアクションがソーシャルネットワーキング・システム１６０によってロギングされるか、または他のシステム（例えば、サードパーティ・システム１７０）と共有されることについてユーザがオプトインまたはオプトアウトすることを可能にする。特定の実施形態においては、オブジェクトに関連付けられているプライバシー設定は、任意の適切な許可アクセスまたはアクセスの拒否の精度を設定にする。限定ではなく、例として、アクセスまたはアクセスの拒否は、特定のユーザ（例えば、自分のみ、自分のルームメイト、及び自分の上司）、特定の程度の広がりの中にいるユーザ（例えば、友人、または友人の友人）、ユーザのグループ（例えば、ゲームクラブ、家族）、ユーザのつながり（例えば、特定の雇用者の従業員、特定の大学の学生または同窓生）、全てのユーザ（「パブリック」）、ユーザなし（「プライベート」）、サードパーティ・システム１７０のユーザ、特定のアプリケーション（例えば、サードパーティ・アプリケーション、外部のウェブサイト）、他の適切なユーザまたはエンティティ、もしくはこれらの任意の組み合わせに関して設定にされる。本開示は、特定の方法による特定のプライバシー設定の使用を説明するが、本開示は、任意の適切な方法による任意の適切なプライバシー設定の使用を想定している。
【００３０】
特定の実施形態においては、１つもしくは複数のサーバ１６２は、プライバシー設定を実行するための認可サーバまたはプライバシー・サーバである。データ・ストア１６４に格納された特定のオブジェクトに関するユーザ（または他のエンティティ）からの要求に応じて、ソーシャルネットワーキング・システム１６０は、オブジェクトに関する要求をデータ・ストア１６４に送信する。認可サーバが、オブジェクトに関連付けられているプライバシー設定に基づいて、ユーザがオブジェクトにアクセスすることが許可されていると判定した場合、要求によって、要求と関連付けられているユーザが識別され、その要求がユーザ（またはユーザのクライアント・システム１３０）にのみ送信される。要求するユーザがオブジェクトにアクセスすることが許可されない場合、認可サーバは、要求されたオブジェクトがデータ・ストア１６４から取り出されることを防止するか、または要求されたオブジェクトがユーザに送信されることを防止する。検索クエリのコンテキストにおいて、クエリを行うユーザがオブジェクトにアクセスすることが許可される場合、オブジェクトは検索結果としてのみ生成される。換言すれば、オブジェクトは、クエリを行うユーザに対して可視である視認性を有している必要がある。オブジェクトが、ユーザに対して不可視である視認性を有する場合、オブジェクトは検索結果から除外される。本開示は、特定の方法によるプライバシー設定の実行を説明するが、本開示は、任意の適切な方法によるプライバシー設定の実行を想定している。
【００３１】
クライアント・コンピューティング・デバイスのユーザは、例えば、上記の任意のネットワーク１１０または任意のサードパーティ・システム１７０もしくはソーシャルネットワーキング・システム１６０などのネットワークによってアクセス可能なネットワークまたはシステムに非接続であるという体験をすることがある。特定の実施形態においては、クライアント・コンピューティング・デバイスは、モバイル・コンピューティング・デバイスである。特定の実施形態においては、非接続は、ネットワーク毎に生じ得る。例えば、クライアント・コンピューティング・デバイスは、セルラー方式に基づくネットワークまたはＧＰＳのネットワークへの接続を有する一方で、Ｗｉ−Ｆｉネットワークと非接続となり得る。
【００３２】
システムに関連付けられているオンライン・システムまたはサービスは、クライアント・コンピューティング・デバイスのユーザがオンライン・システムまたはサービスの少なくとも一部の部分的なコピーと相互作用することを可能にする関連した「オフライン」モードを有する。例えば、クライアント・コンピューティング・デバイスは、一定期間ごとに、またはユーザもしくはサーバの要求で、例えば、ユーザのプロフィール（及びコンテンツ、ポスト、またはニュースフィードのアイテムなどの任意の関連した情報）、ユーザと他のユーザもしくはエンティティとの間のつながり、ユーザによって作成されたポスト、ユーザによって閲覧されるか、生成されるか、もしくは関連付けられるコンテンツ、またはソーシャルネットワーキング・サービスの任意の他の適切な部分など、ソーシャルネットワーキング・サービスの少なくとも一部の部分的なコピーを格納する。特定の実施形態においては、オフラインモードは、ユーザか、イベントか、またはその両方によって切り替えられる。例えば、飛行機に乗っているユーザは、オフラインモードをアクティブにし、関連するオンライン・サービスの部分的なコピーと相互作用する。別の例として、例えばセルラーデータを保存しようとするユーザは、Ｗｉ−Ｆｉ接続が設立されるまで、オフラインモードにおいて発生するべきであるサービスとの特定の相互作用（ネットワークに格納されるのではなく、部分的に格納されるコピーに対してなされる相互作用）を識別する。別の例として、ユーザは、オフラインモードにおいて相互作用が起きるべきである１つもしくは複数の種類のネットワークを介して使用されるデータ量またはデータ割合を識別する。本開示は、サービスとの１つもしくは複数の相互作用がオフラインモードにおいて発生するべきかどうかの判定をするための、任意の適切なユーザの指示を含む、任意の適切なイベントの使用を想定している。
【００３３】
図３は、コンテンツ及び関連したデータを用いてオンライン・サービスのオフライン・コピーを更新し、続いて電子的コンテンツ及び関連したデータをオンライン・サービスにアップロードするための例示的な方法３００を示す。方法は、工程３１０において開始され、オンライン・サービスに関連付けられているクライアント・コンピューティング・デバイスのユーザからの入力が、クライアント・コンピューティング・デバイスがオンライン・サービスから遮断された時点で受信される。入力は、例えば、タイプされるか、または表記された文字か、グラフィカル・ユーザ・インタフェースの１つもしくは複数のコンポーネント（例えば、オンライン・サービスに関連付けられているグラフィカルボタン、バナー、画像、広告など）との相互作用か、音声起動の入力、ジェスチャー入力か、またはこれらの任意の適切な組み合わせなどの任意の適切な入力であり得る。上述したように、クライアント・コンピューティング・デバイスが１つもしくは複数の特定のネットワーク接続を介してオンライン・サービスにアクセスしていないとき（その接続がクライアント・コンピューティング・デバイスのユーザによって無効にされたときも含む）、クライアント・コンピューティング・デバイスが他の目的に関してこれらのネットワーク接続を使用しているときでさえ、クライアント・コンピューティング・デバイスはオンライン・サービスから遮断されていると見なされる。
【００３４】
方法は、工程３２０によって示すように、入力に基づいてオンライン・サービスに関連する部分的に格納されたコンテンツの格納及び修正を含む。例として、オンライン・サービスは、ソーシャルネットワーキング・システムに関連付けられているソーシャルネットワーキング・サービスであり得る。入力は、ソーシャルネットワーキング・サービスとの任意の適切な相互作用であり、例えば、ユーザのプロフィールに対するコンテンツをポストすること、ポストまたは写真におけるつながりのタグ付け、新たなつながりの要求または現在のつながりの変更、ユーザのパフォーマンスの表示（例えば、エンティティもしくはコンテンツに対する「いいね」）、他のエンティティとの通信手段の作成、または（ここでより十分に説明した任意の適切な機能を含む）任意の他の適切なソーシャルネットワーキング・サービスの機能などがある。この例において、コンテンツは、例えば、部分的に格納されたプロフィールにおけるポストされたコンテンツを含むことによって、部分的に格納されたプロフィールのコピーに格納される。別の例として、入力は、編集すること、現在のコンテンツに追加すること、または現在のコンテンツから削除することであり、例えば、１つもしくは複数の写真を写真アルバムに追加すること、またはユーザと別のエンティティとの間の以前のつながりをソーシャルネットワーキング・サービスに関連付けられているグラフから削除することなどがある。この例において、コンテンツは、例えば、部分的に格納された写真アルバムまたはグラフを修正することによって、ソーシャルネットワーキング・システムの部分的なコピー（またはコピーの一部）において修正される。本開示は、任意の適切なオンライン・サービスに関連付けられているクライアント・コンピューティング・デバイスの任意の適切なコンテンツを修正する任意の適切な入力を想定している。
【００３５】
工程３３０では、部分的に格納されたか、または修正された工程３２０のコンテンツと同時期に起きるデータが決定される。部分的に格納されたか、または修正されたコンテンツと同時期に起きるデータは、コンテンツが部分的に格納されたか、または修正された時間または場所と関連付けられているデータを含む。例えば、データは、オフライン・コンテンツが生成された時間を含む。別の例として、ソーシャルネットワーキング・サービスのコンテキストにおいて、データは、コンテンツがオフラインのポストに関して提出された時間を含む。別の例として、データは、部分的に格納されたか、または修正されたコンテンツの記述、または識別を含む。例えば、ソーシャルネットワーキング・サービスのコンテキストにおいて、データは、例えば、写真に現れている個人の識別など、コンテンツに関連付けられているイベントもしくは人の識別を含む。代わりに、これらの識別は、ユーザによる入力であり、したがって、工程３２０において説明されたようなコンテンツであり得る。
【００３６】
特定の実施形態においては、データは、例えば、オフラインで生成されたコンテンツのオンラインでの視認性を管理するか、またはコンテンツと相互作用するユーザまたはエンティティを識別する１つもしくは複数のプライバシー設定を含む。例えば、オンラインで生成されたコンテンツをポストするために最後に使用されたプライバシー設定は、クライアント・コンピューティング・デバイスによって部分的にキャッシュされ、オフラインで生成されたコンテンツに適用される。オフラインで生成されたコンテンツがオンライン・サービスにアップロードされるときに、部分的にキャッシュされたプライバシー設定は、アップロードされたコンテンツに適用される。特定の実施形態では、ユーザは、部分的にキャッシュされたプライバシー設定を変更するか、または部分的にキャッシュされたプライバシー設定を生成し、そのプライバシー設定は、オンライン・サービスにアップロードされたコンテンツに適用される。特定の実施形態においては、プライバシー設定は、入力毎に適用される（すなわち、後の相互作用に適用される異なるプライバシー設定を用いてユーザとオフライン・サービスとの間の特定の相互作用に適用される）。特定の実施形態においては、プライバシー設定は、プライバシー設定が変更されるまで、生成された全てのオフライン・コンテンツに適用される。特定の実施形態においては、既定のプライバシー設定は、ユーザによって変更されるまで適用される。
【００３７】
特定の実施形態においては、データは位置情報を含む。例えば、位置情報は、推測の、または特定の地理的座標、または会社、構造物、ランドマーク、交差点、以前に保存した場所、一般的な場所の名前など、クライアント・コンピューティング・デバイスのユーザによって手動で入力された位置情報を含む。入力に関連付けられている物理的な位置は、クライアント・コンピューティング・デバイスがオンライン・サービスにアクセスした後、決定される。別の例として、位置情報は、１つもしくは複数のＧＰＳ信号によって決定される位置か、または１つもしくは複数のネットワークとの通信から得られる位置情報を含む。例えば、携帯電話は、セルラーネットワークとの通信を介して位置情報を決定し、その間にソーシャルネットワーキング・サービスは、ソーシャルネットワーキング・サービスのオンライン版を更新するために、（例えば、ユーザ設定による）Ｗｉ−Ｆｉ接続を要求する。このように、携帯電話がＷｉ−Ｆｉ信号に接続されるとき、セルラーネットワークを介して電話により以前に決定された位置情報は、オフラインで適切に生成されたコンテンツと共にソーシャルネットワーキング・サービスにアップロードされる。本開示は、部分的に格納されたか、または修正されたコンテンツと同時期に起きる、コンテンツと関連付けられている任意の適切なデータを想定している。
【００３８】
工程３４０では、工程３３０のデータは、関連するコンテンツとともに部分的に格納される。例えば、コンテンツが生成される時間は、クライアント・コンピューティング・デバイスにおいてコンテンツと関連付けられる。工程３５０では、クライアント・コンピューティング・デバイスがオンライン・サービスに接続されるとき、部分的に格納されたか、または修正されたコンテンツ、及びそのコンテンツと部分的に関連付けられているデータは、オンライン・サービスにアップロードされる。上述したように、特定の実施形態においては、「オンライン・サービスに接続されること」は、上記の任意のネットワーク１１０などの１つもしくは複数の特定のネットワークを介してオンライン・サービスに接続されることを含む。コンテンツのアップロードは、アップロードを開始するユーザによる入力、または特定のバンド幅またはバンド幅を超えてコンテンツをアップロードすることができるネットワーク接続の確立などの任意の適切なイベントに基づく。
【００３９】
特定の実施形態は、適切な場合には、図３の方法の１つまたは複数の工程を繰り返す。本開示は、図３の方法の特定の工程を、特定の順序で生じるものとして記述し、示しているが、本開示は、任意の適切な順序で生じる図３の方法の任意の適切な工程を想定している。その上、本開示は、図３の方法の特定の工程を含む、電子的なコンテンツ及び関連したデータをオンライン・サービスにアップロードするための例示的な方法を記述し、示しているが、本開示は、適切な場合には、図３の方法のすべての工程か、またはいくつかの工程を含むか、１つも含まない、任意の適切な工程を含む、電子的なコンテンツ及び関連したデータをオンライン・サービスにアップロードする任意の適切な方法を想定している。さらに、本開示は、図３の方法の特定の工程を実行する特定のコンポーネント、デバイス、またはシステムについて記述し、示しているが、本開示は、図３の方法の任意の適切な工程を実行する任意の適切なコンポーネント、デバイス、またはシステムの任意の適切な組合せを想定している。
【００４０】
オフラインモードにおいて生成されたコンテンツがアップロードされ、オンラインコンテンツと同期化された後、アップロードされたコンテンツは、オンライン・サービスの１人もしくは複数のユーザに表示される。特定の実施形態においては、表示は、工程３３０におけるコンテンツに関連付けられているデータに基づく。例えば、オフラインで生成された写真は、写真のコンテンツ、写真の場所、写真の取得時間などを識別するデータに基づいて、適切なオンラインの写真アルバムに配置される。例えば、写真がいつオンライン・サービスのオフライン・コピーにアップロードされたかを示すデータは、そのデータと、写真アルバムの他の写真がいつアップロードされたかを示す類似のデータとを比較することによって、写真アルバムの適切な場所に写真を挿入することに使用される。写真は、アップロードされた時間に従って、写真アルバムに順番に格納され、表示される。別の例として、ソーシャルネットワーキング・サービスへのポストは、「オフライン」のポストが作成された時間を示し、その時間に基づいて他のポストに関連して適切な位置にポストを挿入する。特定の実施形態においては、オンライン・サービスの他のユーザには、オフラインで生成されたコンテンツがアップロードされたことが通知される。例えば、オンライン・サービスがソーシャルネットワーキング・サービスである場合、ソーシャルネットワーキング・サービスのユーザには、例えばアップロードイベント及びアップロードされたコンテンツの少なくとも一方を記述するニュースフィードアイテムによってアップロードされたコンテンツが通知される。上述したように、アップロードされているユーザのコンテンツに関連付けられているプライバシー設定は、どのユーザ（もしいれば）がアップロードされたコンテンツ及びアップロードイベントの通知の少なくとも一方を見ることが許可されるかを決定する。本開示は、任意の適切なオンライン・サービスにアップロードされたコンテンツについての任意の適切な表示及び通知を想定している。
【００４１】
任意の適切なグラフィカル・ユーザ・インタフェースは、ソーシャルネットワーキング・サービスに関してオフラインモードと関連付けられる。特定の実施形態においては、インタフェースは、サービスがオフラインモード対オンラインモードであることを視覚的に表示する。例えば、ソーシャルネットワーキング・サービスは、ユーザがオフラインモードにおいてポストしていることを表示する。特定の実施形態においては、インタフェースは、オフラインモードにおいてどの特徴または機能がユーザに使用可能かを説明するか、または示す。例えば、ソーシャルネットワーキング・サービスに関するインタフェースは、ポスト、タグ付け、写真のアップロードなどが、ソーシャルネットワーキング・サービスのオフラインモードにおいてユーザに使用可能かどうかを示す。特定の実施形態においては、インタフェースは、オンライン・サービスにアップロードされたコンテンツのキューを示し、そのキューにおけるコンテンツの全てまたはいくつかは、アップロードよりも先に変更される。例えば、ソーシャルネットワーキング・サービスにおいて生成されたオフラインのポストは、アップロードよりも先にキューに入れられ、ユーザは、アップロードよりも先にこれらのポストを編集するか、消去するか、追加するか、そうでなければ修正する。特定の実施形態においては、コンテンツが成功裏にアップロードされたとき、またはアップロードが失敗であったとき、インタフェースはユーザに通知する。
【００４２】
図４は、例示的なコンピュータ・システム４００を示している。特定の実施形態においては、１つまたは複数のコンピュータ・システム４００が、本明細書において記述されているまたは示されている１つまたは複数の方法の１つまたは複数の工程を実行する。特定の実施形態においては、１つまたは複数のコンピュータ・システム４００が、本明細書において記述されているまたは示されている機能を提供する。特定の実施形態においては、１つまたは複数のコンピュータ・システム４００上で稼働するソフトウェアが、本明細書において記述されているもしくは示されている１つもしくは複数の方法の１つもしくは複数の工程を実行し、または本明細書において記述されているもしくは示されている機能を提供する。特定の実施形態は、１つまたは複数のコンピュータ・システム４００の１つまたは複数の部分を含む。本明細書においては、コンピュータ・システムへの言及は、適切な場合には、コンピューティング・デバイスを包含することができ、逆も同様である。その上、コンピュータ・システムへの言及は、適切な場合には、１つまたは複数のコンピュータ・システムを包含することができる。
【００４３】
本開示は、任意の適切な数のコンピュータ・システム４００を想定している。本開示は、任意の適切な物理的な形態を取るコンピュータ・システム４００を想定している。限定ではなく、例として、コンピュータ・システム４００は、組み込みコンピュータ・システム、システムオンチップ（ＳＯＣ）、シングルボード・コンピュータ・システム（ＳＢＣ）（たとえば、コンピュータオンモジュール（ＣＯＭ）もしくはシステムオンモジュール（ＳＯＭ）など）、デスクトップ・コンピュータ・システム、ラップトップもしくはノートブック・コンピュータ・システム、インタラクティブ・キオスク、メインフレーム、コンピュータ・システムのメッシュ、モバイル電話、携帯情報端末（ＰＤＡ）、サーバ、タブレット・コンピュータ・システム、またはこれらのうちの複数の組合せであることが可能である。適切な場合には、コンピュータ・システム４００は、１つもしくは複数のコンピュータ・システム４００を含むこと、単一型もしくは分散型であること、複数のロケーションにわたること、複数のマシンにわたること、複数のデータセンターにわたること、または、クラウド（１つもしくは複数のネットワーク内の１つもしくは複数のクラウド・コンポーネントを含むことができる）内に常駐することが可能である。適切な場合には、１つまたは複数のコンピュータ・システム４００は、本明細書において記述されているまたは示されている１つまたは複数の方法の１つまたは複数の工程を、実質的な空間上のまたは時間上の制限を伴わずに実行することができる。限定ではなく、例として、１つまたは複数のコンピュータ・システム４００は、本明細書において記述されているまたは示されている１つまたは複数の方法の１つまたは複数の工程をリアル・タイムで、またはバッチ・モードで実行することができる。１つまたは複数のコンピュータ・システム４００は、適切な場合には、本明細書において記述されているまたは示されている１つまたは複数の方法の１つまたは複数の工程を別々の時点で、または別々のロケーションで実行することができる。
【００４４】
特定の実施形態においては、コンピュータ・システム４００は、プロセッサ４０２、メモリ４０４、ストレージ４０６、入力／出力（Ｉ／Ｏ）インタフェース４０８、通信インタフェース４１０、およびバス４１２を含む。本開示は、特定の数の特定のコンポーネントを特定の構成で有する特定のコンピュータ・システムについて記述し、示しているが、本開示は、任意の適切な数の任意の適切なコンポーネントを任意の適切な構成で有する任意の適切なコンピュータ・システムを想定している。
【００４５】
特定の実施形態においては、プロセッサ４０２は、コンピュータ・プログラムを構成している命令などの命令を実行するためのハードウェアを含む。限定ではなく、例として、命令を実行するために、プロセッサ４０２は、内部レジスタ、内部キャッシュ、メモリ４０４、またはストレージ４０６から命令を取り出し（またはフェッチし）、それらの命令をデコードして実行し、次いで、１つまたは複数の結果を内部レジスタ、内部キャッシュ、メモリ４０４、またはストレージ４０６に書き込むことができる。特定の実施形態においては、プロセッサ４０２は、データ、命令、またはアドレスのための１つまたは複数の内部キャッシュを含むことができる。本開示は、適切な場合には、任意の適切な数の任意の適切な内部キャッシュを含むプロセッサ４０２を想定している。限定ではなく、例として、プロセッサ４０２は、１つまたは複数の命令キャッシュ、１つまたは複数のデータ・キャッシュ、および１つまたは複数の変換ルックアサイド・バッファ（ＴＬＢ）を含むことができる。命令キャッシュ内の命令は、メモリ４０４またはストレージ４０６内の命令のコピーであることが可能であり、命令キャッシュは、プロセッサ４０２によるそれらの命令の取り出しをスピードアップすることができる。データ・キャッシュ内のデータは、プロセッサ４０２において実行される命令が機能する際に基づくメモリ４０４もしくはストレージ４０６内のデータのコピー、プロセッサ４０２において実行される後続の命令によるアクセスのための、もしくはメモリ４０４もしくはストレージ４０６への書き込みのためのプロセッサ４０２において実行された以前の命令の結果、またはその他の適切なデータであることが可能である。データ・キャッシュは、プロセッサ４０２による読み取りオペレーションまたは書き込みオペレーションをスピードアップすることができる。ＴＬＢは、プロセッサ４０２のための仮想アドレス変換をスピードアップすることができる。特定の実施形態においては、プロセッサ４０２は、データ、命令、またはアドレスのための１つまたは複数の内部レジスタを含むことができる。本開示は、適切な場合には、任意の適切な数の任意の適切な内部レジスタを含むプロセッサ４０２を想定している。適切な場合には、プロセッサ４０２は、１つまたは複数の演算ロジック・ユニット（ＡＬＵ）を含むこと、マルチコア・プロセッサであること、または１つもしくは複数のプロセッサ４０２を含むことが可能である。本開示は、特定のプロセッサについて記述し、示しているが、本開示は、任意の適切なプロセッサを想定している。
【００４６】
特定の実施形態においては、メモリ４０４は、プロセッサ４０２が実行するための命令、またはプロセッサ４０２が機能する際に基づくデータを格納するためのメイン・メモリを含む。限定ではなく、例として、コンピュータ・システム４００は、命令をストレージ４０６または別のソース（たとえば、別のコンピュータ・システム４００など）からメモリ４０４にロードすることができる。次いでプロセッサ４０２は、命令をメモリ４０４から内部レジスタまたは内部キャッシュにロードすることができる。命令を実行するために、プロセッサ４０２は、命令を内部レジスタまたは内部キャッシュから取り出し、それらの命令をデコードすることができる。命令の実行中または実行後に、プロセッサ４０２は、１つまたは複数の結果（それらは、中間の結果または最終的な結果である場合がある）を内部レジスタまたは内部キャッシュに書き込むことができる。次いでプロセッサ４０２は、それらの結果のうちの１つまたは複数をメモリ４０４に書き込むことができる。特定の実施形態においては、プロセッサ４０２は、（ストレージ４０６またはその他の場所ではなく）１つもしくは複数の内部レジスタもしくは内部キャッシュ内の、またはメモリ４０４内の命令のみを実行し、（ストレージ４０６またはその他の場所ではなく）１つもしくは複数の内部レジスタもしくは内部キャッシュ内の、またはメモリ４０４内のデータ上でのみ機能する。１つまたは複数のメモリ・バス（それらはそれぞれ、アドレス・バスおよびデータ・バスを含むことができる）は、プロセッサ４０２をメモリ４０４に結合することができる。バス４１２は、以降で記述されているような１つまたは複数のメモリ・バスを含むことができる。特定の実施形態においては、１つまたは複数のメモリ管理ユニット（ＭＭＵ）が、プロセッサ４０２とメモリ４０４との間に常駐し、プロセッサ４０２によって要求されるメモリ４０４へのアクセスを容易にする。特定の実施形態においては、メモリ４０４は、ランダム・アクセス・メモリ（ＲＡＭ）を含む。このＲＡＭは、適切な場合には、揮発性メモリであることが可能である。適切な場合には、このＲＡＭは、ダイナミックＲＡＭ（ＤＲＡＭ）またはスタティックＲＡＭ（ＳＲＡＭ）であることが可能である。その上、適切な場合には、このＲＡＭは、シングルポートＲＡＭまたはマルチポートＲＡＭであることが可能である。本開示は、任意の適切なＲＡＭを想定している。メモリ４０４は、適切な場合には、１つまたは複数のメモリ４０４を含むことができる。本開示は、特定のメモリについて記述し、示しているが、本開示は、任意の適切なメモリを想定している。
【００４７】
特定の実施形態においては、ストレージ４０６は、データまたは命令のためのマス・ストレージを含む。限定ではなく、例として、ストレージ４０６は、ハード・ディスク・ドライブ（ＨＤＤ）、フロッピー（登録商標）・ディスク・ドライブ、フラッシュ・メモリ、光ディスク、光磁気ディスク、磁気テープ、またはユニバーサル・シリアル・バス（ＵＳＢ）ドライブ、またはこれらのうちの複数の組合せを含むことができる。ストレージ４０６は、適切な場合には、取り外し可能なまたは取り外し不能な（すなわち、固定された）媒体を含むことができる。ストレージ４０６は、適切な場合には、コンピュータ・システム４００の内部または外部に存在することが可能である。特定の実施形態においては、ストレージ４０６は、不揮発性のソリッドステート・メモリである。特定の実施形態においては、ストレージ４０６は、読み取り専用メモリ（ＲＯＭ）を含む。適切な場合には、このＲＯＭは、マスクプログラムＲＯＭ、プログラマブルＲＯＭ（ＰＲＯＭ）、消去可能ＰＲＯＭ（ＥＰＲＯＭ）、電気的消去可能ＰＲＯＭ（ＥＥＰＲＯＭ）、電気的書替え可能ＲＯＭ（ＥＡＲＯＭ）、またはフラッシュ・メモリ、またはこれらのうちの複数の組合せであることが可能である。本開示は、任意の適切な物理的な形態を取るマス・ストレージ４０６を想定している。ストレージ４０６は、適切な場合には、プロセッサ４０２とストレージ４０６との間における通信を容易にする１つまたは複数のストレージ・コントロール・ユニットを含むことができる。適切な場合には、ストレージ４０６は、１つまたは複数のストレージ４０６を含むことができる。本開示は、特定のストレージについて記述し、示しているが、本開示は、任意の適切なストレージを想定している。
【００４８】
特定の実施形態においては、Ｉ／Ｏインタフェース４０８は、コンピュータ・システム４００と１つまたは複数のＩ／Ｏデバイスとの間における通信のための１つまたは複数のインタフェースを提供するハードウェア、ソフトウェア、またはその両方を含む。コンピュータ・システム４００は、適切な場合には、これらのＩ／Ｏデバイスのうちの１つまたは複数を含むことができる。これらのＩ／Ｏデバイスのうちの１つまたは複数は、人とコンピュータ・システム４００との間における通信を可能にすることができる。限定ではなく、例として、Ｉ／Ｏデバイスは、キーボード、キーパッド、マイクロフォン、モニタ、マウス、プリンタ、スキャナ、スピーカ、スチル・カメラ、スタイラス、タブレット、タッチ・スクリーン、トラックボール、ビデオ・カメラ、別の適切なＩ／Ｏデバイス、またはこれらのうちの複数の組合せを含むことができる。Ｉ／Ｏデバイスは、１つまたは複数のセンサを含むことができる。本開示は、任意の適切なＩ／Ｏデバイス、およびそれらのＩ／Ｏデバイスのための任意の適切なＩ／Ｏインタフェース４０８を想定している。適切な場合には、Ｉ／Ｏインタフェース４０８は、プロセッサ４０２がこれらのＩ／Ｏデバイスのうちの１つまたは複数を駆動することを可能にする１つまたは複数のデバイス・ドライバまたはソフトウェア・ドライバを含むことができる。Ｉ／Ｏインタフェース４０８は、適切な場合には、１つまたは複数のＩ／Ｏインタフェース４０８を含むことができる。本開示は、特定のＩ／Ｏインタフェースについて記述し、示しているが、本開示は、任意の適切なＩ／Ｏインタフェースを想定している。
【００４９】
特定の実施形態においては、通信インタフェース４１０は、コンピュータ・システム４００と、１つもしくは複数のその他のコンピュータ・システム４００または１つもしくは複数のネットワークとの間における通信（たとえば、パケットベースの通信など）のための１つまたは複数のインタフェースを提供するハードウェア、ソフトウェア、またはその両方を含む。限定ではなく、例として、通信インタフェース４１０は、イーサネット（登録商標）もしくはその他の有線ベースのネットワークと通信するためのネットワーク・インタフェース・コントローラ（ＮＩＣ）もしくはネットワーク・アダプタ、またはＷＩ−ＦＩネットワークなどのワイヤレス・ネットワークと通信するためのワイヤレスＮＩＣ（ＷＮＩＣ）もしくはワイヤレス・アダプタを含むことができる。本開示は、任意の適切なネットワーク、およびそのネットワークのための任意の適切な通信インタフェース４１０を想定している。限定ではなく、例として、コンピュータ・システム４００は、アド・ホック・ネットワーク、パーソナル・エリア・ネットワーク（ＰＡＮ）、ローカル・エリア・ネットワーク（ＬＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、またはインターネットの１つまたは複数の部分、またはこれらのうちの複数の組合せと通信することができる。これらのネットワークのうちの１つまたは複数の１つまたは複数の部分は、有線またはワイヤレスであることが可能である。例として、コンピュータ・システム４００は、ワイヤレスＰＡＮ（ＷＰＡＮ）（たとえば、ブルートゥースＷＰＡＮなど）、ＷＩ−ＦＩネットワーク、ＷＩ−ＭＡＸネットワーク、セルラー電話ネットワーク（たとえば、グローバル・システム・フォー・モバイル・コミュニケーションズ（ＧＳＭ（登録商標））ネットワークなど）、またはその他の適切なワイヤレス・ネットワーク、またはこれらのうちの複数の組合せと通信することができる。コンピュータ・システム４００は、適切な場合には、これらのネットワークのうちの任意のネットワークのための任意の適切な通信インタフェース４１０を含むことができる。通信インタフェース４１０は、適切な場合には、１つまたは複数の通信インタフェース４１０を含むことができる。本開示は、特定の通信インタフェースについて記述し、示しているが、本開示は、任意の適切な通信インタフェースを想定している。
【００５０】
特定の実施形態においては、バス４１２は、コンピュータ・システム４００のコンポーネント同士を互いに結合するハードウェア、ソフトウェア、またはその両方を含む。限定ではなく、例として、バス４１２は、アクセラレイティッド・グラフィックス・ポート（ＡＧＰ）もしくはその他のグラフィックス・バス、エンハンスト・インダストリー・スタンダード・アーキテクチャ（ＥＩＳＡ）バス、フロントサイド・バス（ＦＳＢ）、ハイパートランスポート（ＨＴ）インターコネクト、インダストリー・スタンダード・アーキテクチャ（ＩＳＡ）バス、インフィニバンド・インターコネクト、ローピンカウント（ＬＰＣ）バス、メモリ・バス、マイクロ・チャネル・アーキテクチャ（ＭＣＡ）バス、ペリフェラル・コンポーネント・インターコネクト（ＰＣＩ）バス、ＰＣＩエクスプレス（ＰＣＩｅ）バス、シリアル・アドバンスト・テクノロジー・アタッチメント（ＳＡＴＡ）バス、ビデオ・エレクトロニクス・スタンダーズ・アソシエーション・ローカル（ＶＬＢ）バス、または別の適切なバス、またはこれらのうちの複数の組合せを含むことができる。バス４１２は、適切な場合には、１つまたは複数のバス４１２を含むことができる。本開示は、特定のバスについて記述し、示しているが、本開示は、任意の適切なバスまたはインターコネクトを想定している。
【００５１】
本明細書においては、１つまたは複数の非一時的なコンピュータ可読記憶媒体は、適切な場合には、１つもしくは複数の半導体ベースのもしくはその他の集積回路（ＩＣ）（たとえば、フィールドプログラマブル・ゲート・アレイ（ＦＰＧＡ）もしくは特定用途向け集積回路（ＡＳＩＣ）など）、ハード・ディスク・ドライブ（ＨＤＤ）、ハイブリッド・ハード・ドライブ（ＨＨＤ）、光ディスク、光ディスク・ドライブ（ＯＤＤ）、光磁気ディスク、光磁気ドライブ、フロッピー（登録商標）・ディスケット、フロッピー（登録商標）・ディスク・ドライブ（ＦＤＤ）、磁気テープ、ソリッドステート・ドライブ（ＳＳＤ）、ＲＡＭドライブ、セキュア・デジタル・カードもしくはドライブ、その他の任意の適切な非一時的なコンピュータ可読記憶媒体、またはこれらのうちの複数の組合せを含むことができる。非一時的なコンピュータ可読記憶媒体は、適切な場合には、揮発性、不揮発性、または揮発性と不揮発性の組合せであることが可能である。
【００５２】
本明細書においては、「または（もしくは）」は、包含的であり、排他的ではない（ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く）。したがって、本明細書においては、「ＡまたはＢ」は、「Ａ、Ｂ、またはその両方」を意味する（ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く）。その上、「および（ならびに）」は、包括的および個別的の両方である（ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く）。したがって、本明細書においては、「ＡおよびＢ」は、「まとめて、または個別に、ＡおよびＢ」を意味する（ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く）。
【００５３】
本開示の範囲は、当技術分野における標準的な技術者が理解するであろう、本明細書において記述されているまたは示されている例示的な実施形態に対するすべての変更、置換、変形、改変、および修正を包含する。本開示の範囲は、本明細書において記述されているまたは示されている例示的な実施形態に限定されない。その上、本開示は、本明細書におけるそれぞれの実施形態を、特定のコンポーネント、要素、特徴、機能、オペレーション、または工程を含むものとして記述し、示しているが、これらの実施形態のいずれも、当技術分野における標準的な技術者が理解するであろう、本明細書の任意の箇所において記述されているまたは示されているコンポーネント、要素、特徴、機能、オペレーション、または工程のうちの任意のものの任意の組合せまたは順列を含むことができる。さらに、特定の機能を実行するように適合されている、実行するようにアレンジされている、実行することができる、実行するように構成されている、実行することを可能にされている、実行するように機能できる、または実行するように機能する装置もしくはシステム、または装置もしくはシステムのコンポーネントへの添付の特許請求の範囲における言及は、その装置、システム、コンポーネント、またはその特定の機能が、アクティブ化されているか否か、オンにされているか否か、またはロック解除されているか否かを問わず、その装置、システム、またはコンポーネントが、そうするように適合されている、そうするようにアレンジされている、そうすることができる、そうするように構成されている、そうすることを可能にされている、そうするように機能できる、またはそうするように機能する限り、その装置、システム、コンポーネントを包含する。
【図１】
2018152109.tif 000003
【図２】
2018152109.tif 000004
【図３】
2018152109.tif 000005
【図４】
2018152109.tif 000006
【手続補正書】
【提出日】平成30年6月15日(2018.6.15)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
方法であって、
オンライン・サービスに関連付けられたサーバコンピューティングデバイスが、クライアント・デバイスからオンライン・サービスのオフライン・バージョンに対して行われたユーザ入力に対応するデータを受信する工程であって、入力は、クライアント・デバイスがオンライン・サービスから切断された時間の間に前記クライアント・デバイスに提供されたものである、前記受信する工程と、
前記サーバコンピューティングデバイスが、前記入力が行われたときの前記クライアント・デバイスの位置を決定する工程と、
前記サーバコンピューティングデバイスが、前記ユーザ入力に対応するデータと、前記入力がなされたときの前記クライアント・デバイスの位置とに少なくとも部分的に基づいて、前記オンライン・サービスのオンライン・バージョンに関連するコンテンツを格納または修正する工程とを備える方法。
【請求項２】
格納されたコンテンツアイテムのインスタンスを修正する工程は、
前記コンテンツを編集すること、
前記コンテンツを消去すること、または
前記コンテンツを追加すること
の１つもしくは複数を含む、請求項１に記載の方法。
【請求項３】
前記オンライン・サービスは、ソーシャルネットワーキング・システムを含み、前記ソーシャルネットワーキング・システムは、複数のノード及び前記複数のノードを接続する複数のエッジを含むグラフを含み、前記グラフにおける少なくとも１つのノードは、前記ユーザに対応する、請求項１に記載の方法。
【請求項４】
前記グラフの少なくとも１つの他のノードは、１人もしくは複数の他のユーザの各々に対応しており、前記ユーザに対応する前記複数のノードの少なくとも１つ、及び前記他のユーザの１人に対応する前記複数のノードの少なくとも１つは、１つもしくは複数のエッジによって互いに接続されている、請求項３に記載の方法。
【請求項５】
格納されるか、または修正されたコンテンツは、ソーシャル・ネットワークの１人または複数の他のユーザに表示される通知に関連付けられる、請求項４に記載の方法。
【請求項６】
前記データは、アップロードされたコンテンツを閲覧するか、または相互作用する前記オンライン・サービスの１人もしくは複数の他のユーザを識別するプライバシー設定を含む、請求項１に記載の方法。
【請求項７】
格納されるか、または修正されたコンテンツは、１つもしくは複数の画像を含む、請求項１に記載の方法。
【請求項８】
格納されるか、または修正されたコンテンツアイテムに前記位置を関連付けることをさらに含む、請求項１に記載の方法。
【請求項９】
ソフトウェアを実装するコンピュータ読み取り可能で非一時的な１つもしくは複数の記憶媒体であって、前記ソフトウェアは、実行されたときに、
クライアント・デバイスからオンライン・サービスのオフライン・バージョンに対して行われたユーザ入力に対応するデータを受信し、ここで、入力は、クライアント・デバイスがオンライン・サービスから切断された時間の間に前記クライアント・デバイスに提供されたものであり、
前記入力が行われたときの前記クライアント・デバイスの位置を決定し、
前記ユーザ入力に対応するデータと、前記入力がなされたときの前記クライアント・デバイスの位置とに少なくとも部分的に基づいて、前記オンライン・サービスのオンライン・バージョンに関連するコンテンツを格納または修正するように動作可能である、媒体。
【請求項１０】
格納されたコンテンツアイテムのインスタンスを修正することは、
前記コンテンツを編集すること、
前記コンテンツを消去すること、または
前記コンテンツを追加すること
の１つもしくは複数を含む、請求項９に記載の媒体。
【請求項１１】
前記オンライン・サービスは、ソーシャルネットワーキング・システムを含み、前記ソーシャルネットワーキング・システムは、複数のノード及び前記複数のノードを接続する複数のエッジを含むグラフを含み、前記グラフにおける少なくとも１つのノードは、前記ユーザに対応する、請求項９に記載の媒体。
【請求項１２】
前記グラフの少なくとも１つの他のノードは、１人もしくは複数の他のユーザの各々に対応しており、前記ユーザに関連する前記ノードの少なくとも１つ、及び前記他のユーザの１人に対応する前記ノードの少なくとも１つは、１つもしくは複数のエッジによって互いに接続されている、請求項１１に記載の媒体。
【請求項１３】
格納されるか、または修正されたコンテンツは、ソーシャル・ネットワークの１人または複数の他のユーザに表示される通知に関連付けられる、請求項１２に記載の媒体。
【請求項１４】
前記データは、アップロードされたコンテンツを閲覧するか、または相互作用する前記オンライン・サービスの１人もしくは複数の他のユーザを識別するプライバシー設定を含む、請求項９に記載の媒体。
【請求項１５】
格納されるか、または修正されたコンテンツは、１つもしくは複数の画像を含む、請求項９に記載の媒体。
【請求項１６】
前記ソフトウェアは、実行されたときに、格納されるか、または修正されたコンテンツアイテムに前記位置を関連付けるようにさらに動作可能である、請求項９に記載の媒体。
【請求項１７】
システムであって、
１つもしくは複数のプロセッサと、
前記プロセッサと接続され、前記プロセッサによって実行可能な命令を含むメモリとを備え、
前記プロセッサは、命令を実行するときに、
クライアント・デバイスからオンライン・サービスのオフライン・バージョンに対して行われたユーザ入力に対応するデータを受信し、ここで、入力は、クライアント・デバイスがオンライン・サービスから切断された時間の間に前記クライアント・デバイスに提供されたものであり、
前記入力が行われたときの前記クライアント・デバイスの位置を決定し、
前記ユーザ入力に対応するデータと、前記入力がなされたときの前記クライアント・デバイスの位置とに少なくとも部分的に基づいて、前記オンライン・サービスのオンライン・バージョンに関連するコンテンツを格納または修正するように動作可能である、システム。
【請求項１８】
格納されたコンテンツアイテムのインスタンスを修正することは、
前記コンテンツを編集すること、
前記コンテンツを消去すること、または
前記コンテンツを追加すること
の１つもしくは複数を含む、請求項１７に記載のシステム。
【請求項１９】
前記オンライン・サービスは、ソーシャルネットワーキング・システムを含み、前記ソーシャルネットワーキング・システムは、複数のノード及び前記複数のノードを接続する複数のエッジを含むグラフを含み、前記グラフにおける少なくとも１つのノードは、前記ユーザに対応する、請求項１７に記載のシステム。
【請求項２０】
前記グラフの少なくとも１つの他のノードは、１人もしくは複数の他のユーザの各々に対応しており、前記ユーザに関連する前記ノードの少なくとも１つ、及び前記他のユーザの１人に対応する前記ノードの少なくとも１つは、１つもしくは複数のエッジによって互いに接続されている、請求項１９に記載のシステム。