(57)【特許請求の範囲】
【請求項１】
方法であって、
モバイル・コンピューティング装置が、該モバイル・コンピューティング装置の現在の所在地を決定すること、
前記モバイル・コンピューティング装置が、前記現在の所在地を決定したのに応答して、手動のユーザ入力を用いずに、前記現在の所在地に近い位置を有するユーザの複数の１次の友達のうちの１つまたは複数のためにソーシャル・ネットワーキング・システムのソーシャルグラフにアクセスすることであって、前記ユーザの１次の友達に対応するノードは、前記ソーシャルグラフにおける前記ユーザに対応する他のノードに結合されているエッジを有する、前記アクセスすること、
前記モバイル・コンピューティング装置が、前記現在の所在地に近い位置に関連付けられた前記ユーザの１つまたは複数の１次の友達を前記モバイル・コンピューティング装置のユーザ・インターフェースに表示すること、
前記モバイル・コンピューティング装置が、前記現在の所在地が前記ユーザの家の位置から少なくとも距離閾値だけ離れたことに応答して、前記現在の所在地に近い位置に関連付けられた前記ソーシャルグラフにおける１つまたは複数のコンセプトノードに対応する１つまたは複数の場所のリストを前記モバイル・コンピューティング装置のユーザ・インターフェースに表示すること、を備える方法。
【請求項２】
前記モバイル・コンピューティング装置が、前記ソーシャル・ネットワーキング・システムのソーシャルグラフにおいて、前記現在の所在地に対応する１つまたは複数のノードを識別すること、
前記モバイル・コンピューティング装置が、前記１つまたは複数のノードに関連付けられた情報および前記現在の所在地に関連する少なくとも１つのユーザ・インターフェース要素を備えるユーザ・インターフェースを前記モバイル・コンピューティング装置に表示すること、をさらに備える請求項１に記載の方法。
【請求項３】
前記ソーシャルグラフは、
複数のノードと該複数のノードを接続するエッジとを含み、
前記複数のノードは、
前記現在の所在地に対応する１つまたは複数のノードを含み、
前記ソーシャルグラフ内の少なくとも１つのノードが、前記モバイル・コンピューティング装置のユーザに対応する、請求項２に記載の方法。
【請求項４】
前記ユーザに対応する少なくとも１つのノードに接続された前記ソーシャルグラフ内の対応する複数のノードを有するユーザの近所にいる前記ソーシャル・ネットワーキング・システムの他のユーザの探索のサービスをさらに備える請求項３に記載の方法。
【請求項５】
前記ユーザ・インターフェース要素は、
辞書ツール、または
言語翻訳ツール、に対応する、請求項２に記載の方法。
【請求項６】
前記モバイル・コンピューティング装置が、前記モバイル・コンピューティング装置の前記ユーザ・インターフェースのユーザ・インターフェース要素の表示上の目立ちやすさを変更することをさらに備え、
前記ユーザ・インターフェース要素の表示上の目立ちやすさを変更することは、
前記ユーザ・インターフェース要素の表示サイズ、表示カラー、または表示位置を変更することを含む、請求項１に記載の方法。
【請求項７】
前記ユーザ・インターフェース要素は、
フレーム、ウィンドウ、および選択可能なアイコンのうちの１つまたは複数を含む、請求項２に記載の方法。
【請求項８】
前記方法は、
前記モバイル・コンピューティング装置によって、前記モバイル・コンピューティング装置の以前の所在地を決定することをさらに備え、
前記モバイル・コンピューティング装置の前記ユーザ・インターフェースが、現在の所在地に加えて、以前の所在地に少なくとも部分的に基づいて、変更される、請求項２に記載の方法。
【請求項９】
１つまたは複数のコンピュータ可読非一時記憶媒体であって、
モバイル・コンピューティング装置によって実行されたときに、
前記モバイル・コンピューティング装置が、前記モバイル・コンピューティング装置の現在の所在地を決定すること、
前記現在の所在地を決定したのに応答して、手動のユーザ入力を用いずに、前記現在の所在地に近い複数の位置を有するユーザの複数の１次の友達のうちの１つまたは複数のためにソーシャル・ネットワーキング・システムのソーシャルグラフにアクセスすることであって、前記ユーザの１次の友達に対応するノードは、前記ソーシャルグラフにおける前記ユーザに対応する他のノードに結合されているエッジを有する、前記アクセスすること、
前記現在の所在地に近い複数の位置に関連付けられた前記ユーザの１つまたは複数の１次の友達を前記モバイル・コンピューティング装置のユーザ・インターフェースに表示すること、
前記現在の所在地が前記ユーザの家の位置から少なくとも距離閾値だけ離れたことに応答して、前記現在の所在地に近い複数の位置に関連付けられた前記ソーシャルグラフにおける１つまたは複数のコンセプトノードに対応する１つまたは複数の場所のリストを前記モバイル・コンピューティング装置のユーザ・インターフェースに表示すること、を行うように動作可能なソフトウェアを実装する１つまたは複数のコンピュータ可読非一時記憶媒体。
【請求項１０】
前記ソフトウェアが、前記モバイル・コンピューティング装置によって実行されたときに、
前記ソーシャル・ネットワーキング・システムのソーシャルグラフにおいて、前記現在の所在地に対応する１つまたは複数のノードを識別すること、
前記１つまたは複数のノードに関連付けられた情報および前記現在の所在地に関連する少なくとも１つのユーザ・インターフェース要素を備えるユーザ・インターフェースを前記モバイル・コンピューティング装置に表示すること、を行うように動作可能である、請求項９に記載の１つまたは複数のコンピュータ可読非一時記憶媒体。
【請求項１１】
前記ソーシャルグラフは、
複数のノードと該複数のノードを接続するエッジとを含むグラフを含み、
前記複数のノードは、
前記現在の所在地に対応する１つまたは複数のノードを含み、
前記ソーシャルグラフ内の少なくとも１つのノードが、前記モバイル・コンピューティング装置のユーザに対応する、請求項１０に記載の１つまたは複数のコンピュータ可読非一時記憶媒体。
【請求項１２】
前記ソフトウェアが、前記モバイル・コンピューティング装置によって実行されたときに、
前記ユーザに対応する少なくとも１つのノードに接続された前記ソーシャルグラフ内の対応する複数のノードを有するユーザの近所にいる前記ソーシャル・ネットワーキング・システムの他のユーザの探索のサービスを行うようにさらに動作可能である、請求項１１に記載の１つまたは複数のコンピュータ可読非一時記憶媒体。
【請求項１３】
前記ユーザ・インターフェース要素は、
辞書ツール、または
言語翻訳ツール、に対応する、請求項１０に記載の１つまたは複数のコンピュータ可読非一時記憶媒体。
【請求項１４】
前記ソフトウェアが、前記モバイル・コンピューティング装置によって実行されたときに、前記モバイル・コンピューティング装置の前記ユーザ・インターフェース上のユーザ・インターフェース要素の表示上の目立ちやすさを変更するようにさらに動作可能である、請求項９に記載の１つまたは複数のコンピュータ可読非一時記憶媒体。
【請求項１５】
システムであって、
ユーザに関連付けられたモバイル・コンピューティング装置の１つまたは複数のプロセッサと、
前記１つまたは複数のプロセッサに接続され、かつ前記１つまたは複数のプロセッサにより実行可能な複数の命令を備えるメモリと、を備え、
前記１つまたは複数のプロセッサが、前記複数の命令を実行すると、
前記モバイル・コンピューティング装置が、該モバイル・コンピューティング装置の現在の所在地を決定すること、
前記現在の所在地を決定したのに応答して、手動のユーザ入力を用いずに、前記現在の所在地に近い複数の位置を有する前記ユーザの複数の１次の友達のうちの１つまたは複数のためにソーシャル・ネットワーキング・システムのソーシャルグラフにアクセスすることであって、前記ユーザの１次の友達に対応するノードは、前記ソーシャルグラフにおけるユーザに対応する他のノードに結合されているエッジを有する、前記アクセスすること、
前記現在の所在地に近い複数の位置に関連付けられた前記ユーザの１つまたは複数の１次の友達を前記モバイル・コンピューティング装置のユーザ・インターフェースに表示すること、
前記現在の所在地が前記ユーザの家の位置から少なくとも距離閾値だけ離れたことに応答して、前記現在の所在地に近い複数の位置に関連付けられた前記ソーシャルグラフにおける１つまたは複数のコンセプトノードに対応する１つまたは複数の場所のリストを前記モバイル・コンピューティング装置のユーザ・インターフェースに表示すること、を行うように動作可能である、システム。
【請求項１６】
前記サービスは、ロケーション・チェックインをさらに含み、
前記モバイル・コンピューティング装置が、前記ユーザ・インターフェースを介してユーザ入力を受け取ることに応答して、前記モバイル・コンピューティング装置の前記ユーザに対応するノードと、前記現在の所在地に近い位置に関連付けられた１つまたは複数の場所に対応する１つまたは複数のコンセプトノードのうちの１つとの間のエッジを作成することをさらに備える請求項４に記載された方法。
【請求項１７】
前記サービスは、写真アップロードサービスをさらに含み、
前記モバイル・コンピューティング装置が、該モバイル・コンピューティング装置のユーザ・インターフェースにおいて、前記ソーシャル・ネットワーキング・システムの写真アップロード・ツールを表示すること、
前記モバイル・コンピューティング装置が、前記現在の所在地に関連付けられた１つまたは複数の写真を前記ソーシャル・ネットワーキング・システムにアップロードすること、をさらに備える請求項４に記載の方法。
【請求項１８】
前記現在の所在地に対応する１つまたは複数のノードを識別することは、
前記モバイル・コンピューティング装置のユーザの１つまたは複数の１次の友達の前記ソーシャルグラフにおける１つまたは複数のノードにアクセスすること、を含み、
前記１つまたは複数の１次の友達は、前記現在の所在地に近い１つまたは複数の関連付けられた位置を有し、
前記方法は、
前記モバイル・コンピューティング装置が、前記現在の所在地に近い１つまたは複数の１次の友達を前記モバイル・コンピューティング装置のユーザ・インターフェースに表示することをさらに備える、請求項２に記載された方法。
【請求項１９】
１つまたは複数の位置は、該１つまたは複数の位置が前記現在の所在地の距離閾値内である場合に現在の所在地の近所にある、請求項２に記載の方法。
【請求項２０】
前記ユーザ・インターフェースは、
前記ソーシャル・ネットワーキング・システムに対するステータス更新のための選択可能なアイコン、複数のメッセージを読みかつ作成するための選択可能なアイコン、前記ソーシャル・ネットワーキング・システムにおいてロケーション・チェックインのための選択可能なアイコン、および複数のニュースフィード・ストーリのスクロール可能スタックを備え、
前記方法は、
前記モバイル・コンピューティング装置が、前記ロケーション・チェックインのための選択可能なアイコンの表示上の目立ちやすさを変更することをさらに備え、
前記目立ちやすさを変更することは、
前記ステータス更新のための選択可能なアイコン、前記複数のメッセージを読みかつ作成するための選択可能なアイコン、および前記複数のニュースフィード・ストーリのスクロール可能スタックの表示明度を低減することにより、前記ロケーション・チェックインのための選択可能なアイコンを目立たせることを含む、請求項１６の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般にモバイル・コンピューティング装置に関する。
【背景技術】
【０００２】
ソーシャル・ネットワーキング・ウェブサイトを含むことができるソーシャル・ネットワーキング・システムは、（人または組織などの）複数のユーザが、そのウェブサイトと対話すること、およびそのウェブサイトを通して互いに対話することを可能にすることができる。ソーシャル・ネットワーキング・システムは、ユーザからの入力を用いて、ユーザと関連付けられたユーザ・プロファイルを生成し、ソーシャル・ネットワーキング・システム内に記憶することができる。ユーザ・プロファイルは、人口統計情報、通信チャネル情報、およびユーザの個人的関心に関する情報を含むことができる。ソーシャル・ネットワーキング・システムは、また、ユーザからの入力を用いて、ソーシャル・ネットワーキング・システムの他のユーザとのユーザの関係についての記録を生成し、記憶することができ、および２者のユーザ間または３者以上のユーザ間のソーシャル対話を促進するサービス（例えば、ウォール・ポスト、フォト・シェアリング、イベント・オーガニゼーション、メッセージング、ゲーム、または広告）を提供することができる。
【０００３】
ソーシャル・ネットワーキング・システムは、１つまたは複数のネットワーク上で、そのサービスに関連するコンテンツまたはメッセージを、ユーザのモバイル装置または他のコンピューティング装置に送信することができる。ユーザは、また、ソーシャル・ネットワーキング・システム内の自らのユーザ・プロファイルおよび他のデータにアクセスするためのソフトウェア・アプリケーションを、自らのモバイル装置または他のコンピューティング装置上にインストールすることができる。ソーシャル・ネットワーキング・システムは、ユーザに接続された他のユーザのストーリを集約したニュースフィードなど、ユーザに表示するカスタマイズされた１組のコンテンツ・オブジェクトを生成することができる。
【０００４】
スマートフォン、タブレット・コンピュータ、またはラップトップ・コンピュータなどの、モバイル・コンピューティング装置は、その位置、方向、または向きを求める、ＧＰＳ受信機、コンパス、またはジャイロスコープなどの機能を含むことができる。そのようなデバイスは、また、ＢＬＵＥＴＯＯＴＨ通信、近距離通信（ＮＦＣ）、赤外線（ＩＲ）通信、またはワイヤレス・ローカル・エリア・ネットワーク（ＷＬＡＮ）もしくは携帯電話網との通信などの、ワイヤレス通信のための機能を含むことができる。そのようなデバイスは、また、１つまたは複数のカメラ、スキャナ、タッチスクリーン、マイクロフォン、あるいはスピーカを含むことができる。モバイル・コンピューティング装置はまた、ゲーム、ウェブ・ブラウザ、ソーシャル・ネットワーキング・アプリケーションなどの、ソフトウェア・アプリケーションを実行することができる。ソーシャル・ネットワーキング・アプリケーションを用いて、ユーザは、ユーザのソーシャル・ネットワーク内の他のユーザと接続し、通信し、情報を共有することができる。
【発明の概要】
【課題を解決するための手段】
【０００５】
特定の実施形態では、モバイル・コンピューティング装置は、モバイル・コンピューティング装置の現在の所在地または速度を決定することができる。現在の所在地または速度を決定したのに応答して、また手動のユーザ入力を用いずに、モバイル・コンピューティング装置は、現在の所在地または速度に少なくとも部分的に基づいて、モバイル・コンピューティング装置のユーザ・インターフェースを変更することができる。
【図面の簡単な説明】
【０００６】
【図１】ソーシャル・ネットワーキング・システムに関連する例示的ネットワーク環境を示す図。
【図２】例示的なソーシャル・グラフを示す図。
【図３】モバイル・コンピューティング装置のユーザ・インターフェースを変更するための例示的方法を示す図。
【図４Ａ】モバイル・コンピューティング装置の例示的ユーザ・インターフェースを示す図。
【図４Ｂ】モバイル・コンピューティング装置の例示的ユーザ・インターフェースを示す図。
【図４Ｃ】モバイル・コンピューティング・デバイスの例示的ユーザ・インターフェースを示す図。
【図４Ｄ】モバイル・コンピューティング装置の例示的ユーザ・インターフェースを示す図。
【図５】例示的コンピュータ・システムを示す図。
【発明を実施するための形態】
【０００７】
図１は、ソーシャル・ネットワーキング・システムに関連する例示的なネットワーク環境１００を示す。ネットワーク環境１００は、ネットワーク１１０によって互いに接続されたクライアント・システム１３０、ソーシャル・ネットワーキング・システム１６０、およびサード・パーティ・システム１７０を含む。図１はクライアント・システム１３０、ソーシャル・ネットワーキング・システム１６０、サード・パーティ・システム（third-party system）１７０、およびネットワーク１１０の特定の構成を示すが、本開示は、クライアント・システム１３０、ソーシャル・ネットワーキング・システム１６０、サード・パーティ・システム１７０、およびネットワーク１１０の任意の適切な構成を企図する。限定ではなく例として、ネットワーク１１０を迂回して、クライアント・システム１３０、ソーシャル・ネットワーキング・システム１６０、およびサード・パーティ・システム１７０のうちの２つ以上を互いに直接的に接続することができる。別の例として、クライアント・システム１３０、ソーシャル・ネットワーキング・システム１６０、およびサード・パーティ・システム１７０のうちの２つ以上を、物理的または論理的に、全体的または部分的に共に配置することができる。さらに、図１は特定の数のクライアント・システム１３０、ソーシャル・ネットワーキング・システム１６０、サード・パーティ・システム１７０、およびネットワーク１１０を示すが、本開示は、任意の適切な数のクライアント・システム１３０、ソーシャル・ネットワーキング・システム１６０、サード・パーティ・システム１７０、およびネットワーク１１０を企図する。限定ではなく例として、ネットワーク環境１００は、クライアント・システム１３０、ソーシャル・ネットワーキング・システム１６０、サード・パーティ・システム１７０、およびネットワーク１１０を含むことができる。
【０００８】
本開示は任意の適切なネットワーク１１０を企図する。限定ではなく例として、ネットワーク１１０のうちの１つまたは複数の部分は、アドホック・ネットワーク（ad hoc network）、イントラネット、エクストラネット、仮想プライベート・ネットワーク（virtual private network：ＶＰＮ）、ローカル・エリア・ネットワーク（local area network：ＬＡＮ）、ワイヤレスＬＡＮ（wireless LAN：ＷＬＡＮ）、広域ネットワーク（wide area network：ＷＡＮ）、ワイヤレスＷＡＮ（wireless WAN：ＷＷＡＮ）、大都市圏ネットワーク（metropolitan area network：ＭＡＮ）、インターネットの一部、公衆交換電話網（Public Switched Telephone Network：ＰＳＴＮ）の一部、携帯電話網、またはこれらの２つ以上の組合せを含むことができる。ネットワーク１１０は１つまたは複数のネットワーク１１０を含むことができる。
【０００９】
リンク１５０は、クライアント・システム１３０、ソーシャル・ネットワーキング・システム１６０、およびサード・パーティ・システム１７０を通信ネットワーク１１０に接続するか、または互いに接続することができる。本開示は任意の適切なリンク１５０を企図する。特定の実施形態では、１つまたは複数のリンク１５０は、１つまたは複数のワイヤーライン（wireline）（例えば、デジタル加入者線（Digital Subscriber Line：ＤＳＬ）またはData Over Cable Service Interface Specification（ＤＯＣＳＩＳ）など）、ワイヤレス（例えば、Ｗｉ−ＦｉまたはWorldwide Interoperability for Microwave Access（ＷｉＭＡＸ）など）、または光（例えば、同期光ネットワーク（Synchronous Optical Network：ＳＯＮＥＴ）または同期デジタル階層（Synchronous Digital Hierarchy：ＳＤＨ）など）リンクを含む。特定の実施形態では、１つまたは複数のリンク１５０はそれぞれ、アドホック・ネットワーク、イントラネット、エクストラネット、ＶＰＮ、ＬＡＮ、ＷＬＡＮ、ＷＡＮ、ＷＷＡＮ、ＭＡＮ、インターネットの一部、ＰＳＴＮの一部、セルラ技術ベースのネットワーク、衛星通信技術ベースのネットワーク、別のリンク１５０、または２つ以上のそのようなリンク１５０の組合せを含む。リンク１５０は、必ずしもネットワーク環境１００全体を通じて同一である必要はない。１つまたは複数の第１のリンク１５０は、１つまたは複数の点で１つまたは複数の第２のリンク１５０と異なることがある。
【００１０】
特定の実施形態では、クライアント・システム１３０は、ハードウェア、ソフトウェア、または埋め込み論理コンポーネント、もしくは２つ以上のそのようなコンポーネントの組合せを含み、クライアント・システム１３０によって実施またはサポートされる適切な機能を実行することが可能な、電子デバイスとすることができる。例として、限定することなしに、クライアント・システム１３０は、デスクトップ・コンピュータ、ノートブックもしくはラップトップ・コンピュータ、ネットブック、タブレット・コンピュータ、電子書籍リーダ、ＧＰＳデバイス、カメラ、携帯情報端末（ＰＤＡ）、ハンドヘルド電子デバイス、携帯電話、スマートフォン、他の適切な電子デバイス、またはそれらの任意の適切な組合せなどの、コンピュータ・システムを含むことができる。本開示は、任意の適切なクライアント・システム１３０を企図している。クライアント・システム１３０は、クライアント・システム１３０におけるネットワーク・ユーザが、ネットワーク１１０にアクセスすることを可能にすることができる。クライアント・システム１３０は、そのユーザが、他のクライアント・システム１３０における他のユーザと通信することを可能にすることができる。
【００１１】
特定の実施形態では、クライアント・システム１３０は、マイクロソフト・インターネット・エクスプローラ（ＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲ）、グーグル・クローム（ＧＯＯＧＬＥ  ＣＨＲＯＭＥ）、またはモジラ・ファイアフォックス（ＭＯＺＩＬＬＡ  ＦＩＲＥＦＯＸ）などの、ウェブ・ブラウザ１３２を含むことができ、ツールバー（ＴＯＯＬＢＡＲ）、またはヤフー・ツールバー（ＹＡＨＯＯ  ＴＯＯＬＢＡＲ）などの、１つまたは複数のアドオン、プラグイン、または他の拡張を有することができる。クライアント・システム１３０におけるユーザは、ウェブ・ブラウザ１３２に（サーバ１６２、またはサード・パーティ・システム１７０と関連付けられたサーバなど）特定のサーバの場所を示す、ユニフォーム・リソース・ロケータ（ＵＲＬ）または他のアドレスを入力することができ、ウェブ・ブラウザ１３２は、ハイパーテキスト転送プロトコル（ＨＴＴＰ）要求を生成し、ＨＴＴＰ要求をサーバに伝達することができる。サーバは、ＨＴＴＰ要求を受け入れ、ＨＴＴＰ要求に応答して、１つまたは複数のハイパーテキスト・マークアップ言語（ＨＴＭＬ）ファイルをクライアント・システム１３０に伝達することができる。クライアント・システム１３０は、サーバからのＨＴＭＬファイルに基づいて、ユーザに提示するためのウェブページを描画することができる。本開示は、任意の適切なウェブページ・ファイルを企図している。例として、限定することなしに、ウェブページは、特定の必要に従って、ＨＴＭＬファイル、拡張ハイパーテキスト・マークアップ言語（ＸＨＴＭＬ）ファイル、または拡張マークアップ言語（ＸＭＬ）ファイルから描画することができる。そのようなページは、例えば、限定することなく、ジャバスクリプト（ＪＡＶＡＳＣＲＩＰＴ）、ジャバ（ＪＡＶＡ）、マイクロソフト・シルバーライト（ＭＩＣＲＯＳＯＦＴ  ＳＩＬＶＥＲＬＩＧＨＴ）、マークアップ言語の組合せで書かれたスクリプト、およびエイジャックス（ＡＪＡＸ）（非同期ＪＡＶＡＳＣＲＩＰＴおよびＸＭＬ）などのスクリプトなどの、スクリプトも実行することができる。本明細書では、適切な場合は、ウェブページに対する言及は、（ブラウザがウェブページを描画するために使用することができる）１つまたは複数の対応するウェブページ・ファイルを包含し、逆もしかりである。
【００１２】
特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、オンライン・ソーシャル・ネットワークをホストすることができる、ネットワーク・アドレス可能なコンピューティング・システムとすることができる。ソーシャル・ネットワーキング・システム１６０は、例えば、ユーザ・プロファイル・データ、概念プロファイル・データ、ソーシャル・グラフ情報、またはオンライン・ソーシャル・ネットワークに関連する他の適切なデータなどの、ソーシャル・ネットワーキング・データを生成し、記憶し、受信し、送信することができる。ソーシャル・ネットワーキング・システム１６０は、ネットワーク環境１００の他のコンポーネントによって、直接的に、またはネットワーク１１０を介して、アクセスすることができる。特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、１つまたは複数のサーバ１６２を含むことができる。各サーバ１６２は、単一サーバとすることができ、または複数のコンピュータもしくは複数のデータ・センタに広がる分散サーバとすることができる。サーバ１６２は、例えば、限定することなく、ウェブ・サーバ、ニュース・サーバ、メール・サーバ、メッセージ・サーバ、広告サーバ、ファイル・サーバ、アプリケーション・サーバ、交換サーバ、データベース・サーバ、プロキシ・サーバ、本明細書で説明される機能もしくは工程を実行するのに適した別のサーバ、またはそれらの任意の組合せなど、様々なタイプとすることができる。特定の実施形態では、各サーバ１６２は、サーバ１６２によって実施またはサポートされる適切な機能を実行するための、ハードウェア、ソフトウェア、または埋め込み論理コンポーネント、もしくは２つ以上のそのようなコンポーネントの組合せを含むことができる。特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、１つまたは複数のデータ・ストア１６４を含むことができる。データ・ストア１６４は、様々なタイプの情報を記憶するために使用することができる。特定の実施形態では、データ・ストア１６４内に記憶される情報は、特定のデータ構造に従って編成することができる。特定の実施形態では、各データ・ストア１６４は、リレーショナル・データベース、列指向データベース（columnar database）、相関データベース、または他の適切なデータベースとすることができる。本発明は、特定のタイプのデータベースについて説明または図説するが、本開示は、任意の適切なタイプのデータベースを企図している。特定の実施形態は、クライアント・システム１３０、ソーシャル・ネットワーキング・システム１６０、またはサード・パーティ・システム１７０が、データ・ストア１６４内に記憶された情報を管理し、取り出し、変更し、追加し、または削除することを可能にする、インターフェースを提供することができる。
【００１３】
特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、１つまたは複数のデータ・ストア１６４内に１つまたは複数のソーシャル・グラフを記憶することができる。特定の実施形態では、ソーシャル・グラフは、（各々が特定のユーザに対応する）複数のユーザ・ノードまたは（各々が特定の概念に対応する）複数の概念ノードを含むことができる複数のノードと、ノードを接続する複数のエッジとを含むことができる。ソーシャル・ネットワーキング・システム１６０は、オンライン・ソーシャル・ネットワークのユーザに、他のユーザと通信および対話する能力を提供することができる。特定の実施形態では、ユーザは、ソーシャル・ネットワーキング・システム１６０を介してオンライン・ソーシャル・ネットワークに参加し、その後、自分が接続されたいソーシャル・ネットワーキング・システム１６０の多くの他のユーザへの接続（例えば、関係）を追加することができる。本明細書では、「友達」という用語は、ユーザがソーシャル・ネットワーキング・システム１６０を介して接続、関連付け、または関係を形成した、ソーシャル・ネットワーキング・システム１６０の他の任意のユーザを指すことができる。
【００１４】
特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、ソーシャル・ネットワーキング・システム１６０によってサポートされる、様々なタイプのアイテムまたはオブジェクトに対してアクションを取る能力を、ユーザに提供することができる。例として、限定することなしに、アイテムおよびオブジェクトは、ソーシャル・ネットワーキング・システム１６０のユーザが属すことができるグループもしくはソーシャル・ネットワーク、ユーザが関心をもつことがあるイベントもしくはカレンダ・エントリ、ユーザが使用することができるコンピュータ・ベースのアプリケーション、ユーザがサービスを介してアイテムを購入もしくは売却することを可能にするトランザクション、ユーザが実行することができる広告との対話、または他の適切なアイテムもしくはオブジェクトを含むことができる。ユーザは、ソーシャル・ネットワーキング・システム１６０内において表されることが可能な、またはソーシャル・ネットワーキング・システム１６０とは別の、ネットワーク１１０を介してソーシャル・ネットワーキング・システム１６０に結合される、サード・パーティ・システム１７０の外部システムによって表されることが可能な、どのようなものとも対話することができる。
【００１５】
特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、様々なエンティティを結び付けることが可能であり得る。例として、限定することなしに、ソーシャル・ネットワーキング・システム１６０は、ユーザが、互いに対話することに加えて、サード・パーティ・システム１７０もしくは他のエンティティからコンテンツを受信することを可能にすることができ、またはユーザが、これらのエンティティとアプリケーション・プログラミング・インターフェース（ＡＰＩ）もしくは他の通信チャネルを通して対話することを可能にすることができる。
【００１６】
特定の実施形態では、サード・パーティ・システム１７０は、１つもしくは複数のタイプのサーバ、１つもしくは複数のデータ・ストア、限定することなくＡＰＩを含む、１つもしくは複数のインターフェース、１つもしくは複数のウェブ・サービス、１つもしくは複数のコンテンツ・ソース、１つもしくは複数のネットワーク、または例えば、サーバが通信することができる、他の任意の適切なコンポーネントを含むことができる。サード・パーティ・システム１７０は、ソーシャル・ネットワーキング・システム１６０を実行するエンティティとは異なるエンティティによって実行することができる。しかしながら、特定の実施形態では、ソーシャル・ネットワーキング・システム１６０およびサード・パーティ・システム１７０は、ソーシャル・ネットワーキング・システム１６０またはサード・パーティ・システム１７０のユーザにソーシャル・ネットワーキング・サービスを提供するために、互いに連携して動作することができる。この意味で、ソーシャル・ネットワーキング・システム１６０は、サード・パーティ・システム１７０などの他のシステムが、インターネット全域のユーザにソーシャル・ネットワーキング・サービスおよび機能を提供するために使用することができる、プラットフォームまたはバックボーンを提供することができる。
【００１７】
特定の実施形態では、サード・パーティ・システム１７０は、サードパーティ・コンテンツ・オブジェクト・プロバイダを含むことができる。サード・パーティ・コンテンツ・オブジェクト・プロバイダは、クライアント・システム１３０に伝達することができるコンテンツ・オブジェクトの１つまたは複数のソースを含むことができる。例として、限定することなしに、コンテンツ・オブジェクトは、例えば、映画の上映時間、映画のレビュー、レストランのレビュー、レストランのメニュー、製品の情報およびレビュー、または他の適切な情報など、ユーザが関心をもっている物事または活動に関する情報を含むことができる。別の例として、限定することなしに、コンテンツ・オブジェクトは、クーポン、割引チケット、商品券、または他の適切なインセンティブ・オブジェクトなどの、インセンティブ・コンテンツ・オブジェクトを含むことができる。
【００１８】
特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、ユーザのソーシャル・ネットワーキング・システム１６０との対話を強化することができる、ユーザ生成のコンテンツ・オブジェクトも含むことができる。ユーザ生成のコンテンツは、ユーザがソーシャル・ネットワーキング・システム１６０に追加し、アップロードし、送信し、または「ポスト（post）」することができる、どのようなものも含むことができる。例として、限定することなしに、ユーザは、クライアント・システム１３０からソーシャル・ネットワーキング・システム１６０にポストを伝達する。ポストは、ステータス更新もしくは他のテキスト・データ、所在地情報、写真、ビデオ、リンク、音楽、または他の類似のデータもしくはメディアなどの、データを含むことができる。コンテンツは、ニュースフィードまたはストリームなどの「通信チャネル」を通して、サードパーティによってソーシャル・ネットワーキング・システム１６０に追加されることもある。
【００１９】
特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、様々なサーバ、サブシステム、プログラム、モジュール、ログ、およびデータ・ストアを含むことができる。特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、ウェブ・サーバ、アクション・ロガー、ＡＰＩ要求サーバ、関連性およびランキング・エンジン、コンテンツ・オブジェクト分類器、通知コントローラ、アクション・ログ、サードパーティ・コンテンツ・オブジェクト・エクスポージャ・ログ（third-party-content-object-exposure log）、推論モジュール（authorization/privacy server）、認可／プライバシ・サーバ、検索モジュール、広告ターゲティング・モジュール、ユーザ・インターフェース・モジュール、ユーザ・プロファイル・ストア、人脈ストア（connection store）、サードパーティ・コンテンツ・ストア、またはロケーション・ストアのうちの１つまたは複数を含むことができる。ソーシャル・ネットワーキング・システム１６０は、ネットワーク・インターフェース、セキュリティ・メカニズム、負荷バランサ（load balancer）、フェイルオーバ・サーバ、管理およびネットワーク運用コンソール（management-and-network-operations console）、他の適切なコンポーネント、またはそれらの任意の適切な組合せなど、適切なコンポーネントも含むことができる。特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、ユーザ・プロファイルを記憶するための１つまたは複数のユーザ・プロファイル・ストアを含むことができる。ユーザ・プロファイルは、例えば、伝記的情報、人口統計情報、挙動情報、ソーシャル情報、または職歴、学歴、趣味もしくは好み、関心、類縁性、もしくは所在地などの他のタイプの記述的情報を含むことができる。関心情報は、１つまたは複数のカテゴリに関連する関心を含むことができる。カテゴリは、一般的または具体的とすることができる。例として、限定することなしに、ユーザがあるブランドの靴についての記事に「いいね」を表明した場合、カテゴリは、そのブランドとすることができ、または「靴」もしくは「衣料」の一般的カテゴリとすることができる。人脈ストアは、ユーザについての接続情報を記憶するために使用することができる。接続情報は、類似もしくは共通の職歴、グループ・メンバーシップ、趣味、学歴を有する、または何らかの方法で関連し、もしくは共通の属性をシェアするユーザを示すことができる。接続情報は、様々なユーザと（内部および外部両方の）コンテンツとの間のユーザ定義の接続も含むことができる。ウェブ・サーバは、ソーシャル・ネットワーキング・システム１６０を、ネットワーク１１０を介して、１つもしくは複数のクライアント・システム１３０または１つまたは複数のサード・パーティ・システム１７０に結び付けるために使用することができる。ウェブ・サーバは、メール・サーバ、またはソーシャル・ネットワーキング・システム１６０と１つもしくは複数のクライアント・システム１３０との間でメッセージを受信および転送するための他のメッセージング機能を含むことができる。ＡＰＩ要求サーバは、サード・パーティ・システム１７０が、１つまたは複数のＡＰＩをコールすることによって、ソーシャル・ネッ���ワーキング・システム１６０の情報にアクセスすることを可能にすることができる。アクション・ロガーは、ソーシャル・ネットワーキング・システム１６０上での、またはその外でのユーザのアクションについての情報をウェブ・サーバから受信するために使用することができる。アクション・ログと併せて、サードパーティ・コンテンツ・オブジェクト・ログが、サードパーティ・コンテンツ・オブジェクトへのユーザ・エクスポージャに関して維持され得る。通知コントローラは、コンテンツ・オブジェクトに関する情報をクライアント・システム１３０に提供することができる。情報は、通知としてクライアント・システム１３０にプッシュされることができ、または情報は、クライアント・システム１３０から受信された要求に応答して、クライアント・システム１３０からプルされることができる。認可サーバは、ソーシャル・ネットワーキング・システム１６０のユーザの１つまたは複数のプライバシー設定を実施するために使用することができる。ユーザのプライバシー設定は、ユーザと関連付けられた特定の情報がどのようにシェアされ得るかを決定する。認可サーバは、ユーザが、例えば、適切なプライバシー設定を適切することなどによって、そのアクションが、ソーシャル・ネットワーキング・システム１６０によって記録されること、または他のシステム（例えば、サード・パーティ・システム１７０）とシェアされることを選択すること、または選択しないこと（opt in or opt out）を可能にすることができる。サードパーティ・コンテンツ・オブジェクト・ストアは、サード・パーティ・システム１７０などのサードパーティから受信されたコンテンツ・オブジェクトを記憶するために使用することができる。ロケーション・ストアは、ユーザと関連付けられたクライアント・システム１３０から受信された所在地情報を記憶するために使用することができる。広告価格設定モジュールは、関連性のある広告を通知の形態でユーザに提供するために、ソーシャル情報、現在時刻、所在地情報、または他の適切な情報を組み合わせることができる。
【００２０】
図２は、例示的ソーシャル・グラフ２００を示している。特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、１つまたは複数のデータ・ストア内に１つまたは複数のソーシャル・グラフ２００を記憶することができる。特定の実施形態では、ソーシャル・グラフ２００は、複数のユーザ・ノード２０２または複数の概念ノード２０４を含むことができる複数のノードと、ノードを接続する複数のエッジ２０６とを含むことができる。図２に示される例示的ソーシャル・グラフ２００は、教示目的で、２次元視覚マップ表現で示されている。特定の実施形態では、ソーシャル・ネットワーキング・システム１６０、クライアント・システム１３０、またはサード・パーティ・システム１７０は、ソーシャル・グラフ２００、および適切なアプリケーションについての関連するソーシャル・グラフ情報にアクセスすることができる。ソーシャル・グラフ２００のノードおよびエッジは、例えば、（ソーシャル・グラフ・データベースなどの）データ・ストア内にデータ・オブジェクトとして記憶することができる。そのようなデータ・ストアは、ソーシャル・グラフ２００のノードまたはエッジの１つまたは複数の検索可能なインデックスまたは問い合わせ可能なインデックスを含むことができる。
【００２１】
特定の実施形態では、ユーザ・ノード２０２は、ソーシャル・ネットワーキング・システム１６０のユーザに対応することができる。例として、限定することなしに、ユーザは、ソーシャル・ネットワーキング・システム１６０と、またはソーシャル・ネットワーキング・システム１６０を介して対話または通信を行う、個人（人間のユーザ）、エンティティ（例えば、企業、ビジネス、もしくはサードパーティ・アプリケーション）、または（例えば、個人もしくはエンティティの）グループとすることができる。特定の実施形態では、ユーザが、アカウントを求めてソーシャル・ネットワーキング・システム１６０に登録した場合、ソーシャル・ネットワーキング・システム１６０は、ユーザに対応するユーザ・ノード２０２を生成し、ユーザ・ノード２０２を１つまたは複数のデータ・ストア内に記憶することができる。本明細書で説明されるユーザおよびユーザ・ノード２０２は、適切な場合は、登録されたユーザおよび登録されたユーザと関連付けられたユーザ・ノード２０２を指すことができる。加えて、または代替として、本明細書で説明されるユーザおよびユーザ・ノード２０２は、適切な場合は、ソーシャル・ネットワーキング・システム１６０に登録されていないユーザを指すことができる。特定の実施形態では、ユーザ・ノード２０２は、ユーザによって提供された情報、またはソーシャル・ネットワーキング・システム１６０を含む様々なシステムによって収集された情報と関連付けることができる。例として、限定することなしに、ユーザは、自分の名前、プロファイル写真、連絡先情報、生年月日、性別、結婚歴、家族状態、勤務先、学歴、好み、関心、または他の人口統計情報を提供することができる。特定の実施形態では、ユーザ・ノード２０２は、ユーザと関連付けられた情報に対応する１つまたは複数のデータ・オブジェクトと関連付けることができる。特定の実施形態では、ユーザ・ノード２０２は、１つまたは複数のウェブページに対応することができる。
【００２２】
特定の実施形態では、概念ノード２０４は、概念に対応することができる。例として、限定することなしに、概念は、（例えば、映画館、レストラン、ランドマーク、もしくは都市などの）場所、（例えば、ソーシャル・ネットワーキング・システム１６０と関連付けられたウェブサイト、もしくはウェブ・アプリケーション・サーバと関連付けられたサードパーティ・ウェブサイトなどの）ウェブサイト、（例えば、人物、ビジネス、グループ、スポーツ・チーム、もしくは有名人などの）エンティティ、ソーシャル・ネットワーキング・システム１６０内もしくはウェブ・アプリケーション・サーバなどの外部サーバ上に配置することができる、（例えば、オーディオ・ファイル、ビデオ・ファイル、デジタル写真、テキスト・ファイル、構造化文書、もしくはアプリケーションなどの）リソース、（例えば、彫刻、絵画、映画、ゲーム、歌、アイデア、写真、もしくは著作物などの）物的もしくは知的財産、ゲーム、活動、アイデアもしくは理論、別の適切な概念、または２つ以上のそのような概念に対応することができる。概念ノード２０４は、ユーザによって提供された概念の情報、またはソーシャル・ネットワーキング・システム１６０を含む様々なシステムによって収集された情報と関連付けることができる。例として、限定することなしに、概念の情報は、名前もしくは題名、１つもしくは複数の画像（例えば、書籍の表紙の画像）、所在地（例えば、アドレスもしくは地理的所在地）、（ＵＲＬと関連付けることができる）ウェブサイト、連絡先情報（例えば、電話番号もしくは電子メール・アドレス）、他の適切な概念情報、またはそのような情報の任意の適切な組合せを含むことができる。特定の実施形態では、概念ノード２０４は、概念ノード２０４と関連付けられた情報に対応する１つまたは複数のデータ・オブジェクトと関連付けることができる。特定の実施形態では、概念ノード２０４は、１つまたは複数のウェブページに対応することができる。
【００２３】
特定の実施形態では、ソーシャル・グラフ２００内のノードは、（「プロファイル・ページ」と呼ばれることがある）ウェブページを表すこと、またはウェブページによって表されることができる。プロファイル・ページは、ソーシャル・ネットワーキング・システム１６０によってホストされること、またはソーシャル・ネットワーキング・システム１６０にアクセス可能とすることができる。プロファイル・ページは、サードパーティ・サーバ１７０と関連付けられたサードパーティ・ウェブサイト上でもホストされることができる。例として、限定することなしに、特定の外部ウェブページに対応するプロファイル・ページは、特定の外部ウェブページとすることができ、プロファイル・ページは、特定の概念ノード２０４に対応することができる。プロファイル・ページは、他のユーザのすべてによって、またはその選択されたサブセットによって閲覧可能とすることができる。例として、限定することなしに、ユーザ・ノード２０２は、対応するユーザが、コンテンツを追加し、宣言を行い、または他の方法で自らを表現することができる、対応するユーザ・プロファイル・ページを有することができる。別の例として、限定することなしに、概念ノード２０４は、１つまたは複数のユーザが、特に概念ノード２０４に対応する概念に関係して、コンテンツを追加し、宣言を行い、または自らを表現することができる、対応する概念プロファイル・ページを有することができる。
【００２４】
特定の実施形態では、概念ノード２０４は、サード・パーティ・システム１７０によってホストされるサードパーティ・ウェブページまたはリソースを表すことができる。サードパーティ・ウェブページまたはリソースは、他の要素の中でもとりわけ、コンテンツ、選択可能アイコンもしくは他のアイコン、またはアクションもしくは活動を表す（例えば、ＪａｖａＳｃｒｉｐｔ、ＡＪＡＸ、もしくはＰＨＰコードで実施することができる）他の対話可能オブジェクトを含むことができる。例として、限定することなしに、サードパーティ・ウェブページは、「いいね」、「チェックイン」、「食べる」、「推薦する」、または別の適切なアクションもしくは活動などの、選択可能なアイコンを含むことができる。サードパーティ・ウェブページを閲覧するユーザは、アイコンの１つ（例えば、「食べる」）を選択することによってアクションを実行し、クライアント・システム１３０に、ユーザのアクションを示すメッセージをソーシャル・ネットワーキング・システム１６０に送信させることができる。メッセージに応答して、ソーシャル・ネットワーキング・システム１６０は、ユーザに対応するユーザ・ノード２０２とサードパーティ・ウェブページまたはリソースに対応する概念ノード２０４との間にエッジ（例えば、「食べる」エッジ）を生成し、エッジ２０６を１つまたは複数のデータ・ストア内に記憶することができる。
【００２５】
特定の実施形態では、ソーシャル・グラフ２００内の１対のノードは、１つまたは複数のエッジ２０６によって互いに接続することができる。１対のノードを接続するエッジ２０６は、１対のノード間の関係を表すことができる。特定の実施形態では、エッジ２０６は、１対のノード間の関係に対応する１つまたは複数のデータ・オブジェクトまたは属性を含むこと、または表すことができる。例として、限定することなしに、第１のユーザは、第２のユーザが第１のユーザの「友達」であることを示すことができる。この指示に応答して、ソーシャル・ネットワーキング・システム１６０は、「友達要求」を第２のユーザに送信することができる。第２のユーザが「友達要求」を承認した場合、ソーシャル・ネットワーキング・システム１６０は、ソーシャル・グラフ２００内において、第１のユーザのユーザ・ノード２０２を第２のユーザのユーザ・ノード２０２に接続するエッジ２０６を生成し、エッジ２０６をソーシャル・グラフ情報としてデータ・ストアの１つまたは複数に記憶することができる。図２の例では、ソーシャル・グラフ２００は、ユーザ「Ａ」とユーザ「Ｂ」のユーザ・ノード２０２の間の友達関係を示すエッジ２０６、およびユーザ「Ｃ」とユーザ「Ｂ」のユーザ・ノード２０２の間の友達関係を示すエッジを含む。本開示は、特定のユーザ・ノード２０２を接続する、特定の属性を有する特定のエッジ２０６について説明または図説するが、本開示は、ユーザ・ノード２０２を接続する、任意の適切な属性を有する任意の適切なエッジ２０６を企図している。例として、限定することなしに、エッジ２０６は、友達関係、家族関係、仕事もしくは雇用関係、ファン関係、信奉者関係、訪問者関係、加入者関係、上司／部下関係、相互関係、非相互関係、別の適切なタイプの関係、または２つ以上のそのような関係を表すことができる。さらに、本開示は、一般に、接続されたものとしてノードを説明しているが、本開示は、接続されたものとしてユーザまたは概念も説明する。本明細書では、接続されたユーザまたは概念に対する言及は、適切な場合は、ソーシャル・グラフ２００内において１つまたは複数のエッジ２０６によって接続されたそれらのユーザまたは概念に対応するノードを指すことがある。
【００２６】
特定の実施形態では、ユーザ・ノード２０２と概念ノード２０４との間のエッジ２０６は、ユーザ・ノード２０２と関連付けられたユーザによって概念ノード２０４と関連付けられた概念に対して実行された特定のアクションまたは活動を表すことができる。例として、限定することなしに、図２に示されるように、ユーザは、概念に「いいね」を表明することができ、概念に「通った」こと、概念を「プレイした」こと、概念を「聴いた」こと、概念を「料理した」こと、概念で「働いた」こと、または概念を「鑑賞した」ことがあり、それらの各々は、エッジ・タイプまたはサブタイプに対応することができる。概念ノード２０４に対応する概念プロファイル・ページは、例えば、（例えば、クリック可能な「チェックイン」アイコンなどの）選択可能な「チェックイン」アイコン、または選択可能な「お気に入りに追加」アイコンを含むことができる。同様に、ユーザがこれらのアイコンをクリックした後、ソーシャル・ネットワーキング・システム１６０は、それぞれのアクションに対応するユーザのアクションに応答して、「お気に入り」エッジまたは「チェックイン」エッジを生成することができる。別の例として、限定することなしに、ユーザ（ユーザ「Ｃ」）は、特定のアプリケーション（オンライン音楽アプリケーションであるスポティファイ（ＳＰＯＴＩＦＹ））を使用して、特定の歌（「イマジン」）を聴くことができる。この場合、ソーシャル・ネットワーキング・システム１６０は、ユーザがその歌を聴いたこと、およびそのアプリケーションを使用したことを示すために、ユーザに対応するユーザ・ノード２０２と歌に対応する概念ノード２０４およびアプリケーションに対応する概念ノード２０４との間に、（図２に示されるように）「聴いた」エッジ２０６および「使用した」エッジを生成することができる。さらに、ソーシャル・ネットワーキング・システム１６０は、特定の歌を特定のアプリケーションによってプレイしたことを示すために、歌に対応する概念ノード２０４とアプリケーションに対応する概念ノード２０４との間に、（図２に示されるように）「プレイした」エッジ２０６を生成することができる。この場合、「プレイした」エッジ２０６は、外部オーディオ・ファイル（歌「イマジン（Ｉｍａｇｉｎｅ）」）に対して外部アプリケーション（ＳＰＯＴＩＦＹ）によって実行されたアクションに対応する。本開示は、ユーザ・ノード２０２および概念ノード２０４を接続する特定の属性を有する特定のエッジ２０６について説明するが、本開示は、ユーザ・ノード２０２および概念ノード２０４を接続する任意の適切な属性を有する任意の適切なエッジ２０６も企図している。さらに、本開示は、単一の関係を表すユーザ・ノード２０２と概念ノード２０４との間のエッジについて説明するが、本開示は、１つまたは複数の関係を表すユーザ・ノード２０２と概念ノード２０４との間のエッジを企図している。例として、限定することなしに、エッジ２０６は、特定の概念において、ユーザが「いいね」を表明したことと、ユーザが使用したことの両方を表すことができる。代替として、（図２に示されるように、ユーザ「Ｅ」のためのユーザ・ノード２０２と「ＳＰＯＴＩＦＹ」のための概念ノード２０４との間の）別のエッジ２０６は、ユーザ・ノード２０２と概念ノード２０４との間の各タイプの関係（または複数の単一の関係）を表すことができる。
【００２７】
特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、ソーシャル・グラフ２００内において、ユーザ・ノード２０２と概念ノード２０４との間にエッジ２０６を生成することができる。例として、限定することなしに、（例えば、ユーザのクライアント・システム１３０によってホストされるウェブ・ブラウザまたは専用アプリケーションを使用することによって）概念プロファイル・ページを閲覧するユーザは、「いいね」アイコンをクリックまたは選択することによって、概念ノード２０４によって表される概念に自分が「いいね」を表明したことを示すことができ、それは、ユーザのクライアント・システム１３０に、概念プロファイル・ページと関連付けられた概念にユーザが「いいね」を表明したことを示すメッセージをソーシャル・ネットワーキング・システム１６０に送信させることができる。メッセージに応答して、ソーシャル・ネットワーキング・システム１６０は、ユーザと概念ノード２０４との間の「いいね」エッジ２０６によって示されるように、ユーザと関連付けられたユーザ・ノード２０２と概念ノード２０４との間にエッジ２０６を生成することができる。特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、エッジ２０６を１つまたは複数のデータ・ストア内に記憶することができる。特定の実施形態では、エッジ２０６は、特定のユーザ・アクションに応答して、ソーシャル・ネットワーキング・システム１６０によって自動的に形成することができる。例として、限定することなしに、第１のユーザが、写真をアップロードした、映画を鑑賞した、または歌を聴いた場合、エッジ２０６が、第１のユーザに対応するユーザ・ノード２０２とそれらの概念に対応する概念ノード２０４との間に形成され得る。本開示は、特定のエッジ２０６を特定の方法で形成することについて説明するが、本開示は、任意の適切なエッジ２０６を任意の適切な方法で形成することを企図している。
【００２８】
加えて、任意の２つのノードの間の隔たりの程度は、一方のノードから他方のノードまでソーシャル・グラフを横断するのに必要とされるホップ（またはエッジ）の最小数として定義される。２つのノードの間の隔たりの程度は、ソーシャル・グラフ内における、２つのノードによって表されるユーザまたは概念の間の関連性の尺度と見なすことができる。
【００２９】
通常、コンピューティング装置上のソフトウェア・アプリケーション（またはオペレーティング・システム）のユーザ・インターフェースのレイアウトは、静的である。ユーザは、ユーザ・インターフェース内において１つまたは複数のユーザ・インターフェース要素を手動で選択することによって、レイアウトを変更することができる。例えば、ユーザは、タッチ・ジェスチャを実行して（またはマウス入力デバイスを使用して）、ユーザ・インターフェース内においてフレーム（もしくはウィンドウ）を移動するか、またはそのサイズを変更することができる。例えば、ユーザは、ユーザ・インターフェース内の選択可能なアイコンを選択して、ソフトウェア・アプリケーションのための入力フィールドを表示するフレーム（もしくはウィンドウ）を提示するか、または別のアプリケーションのユーザ・インターフェースに切り換えることができる。特定の実施形態は、ユーザからの手動の入力を用いずに、ユーザ・インターフェースを変更するための方法について説明する。特定の実施形態は、モバイル・コンピューティング装置の現在の所在地または速度に基づいて、モバイル・コンピューティング装置のユーザ・インターフェースを自動的に変更することができる。
【００３０】
図３は、モバイル・コンピューティング装置のユーザ・インターフェースを変更するための例示的方法３００を示している。方法３００は、モバイル・コンピューティング装置の１つまたは複数のプロセッサ上で動作するソフトウェア・アプリケーションまたはオペレーティング・システムによって実施することができる。モバイル・コンピューティング装置は、スマートフォン、タブレット・コンピュータ、ラップトップ・コンピュータ、または任意の適切なモバイル装置とすることができる。方法３００は、ステップ３１０において開始することができる。特定の実施形態では、ステップ３１０において、モバイル・コンピューティング装置は、モバイル・コンピューティング装置の現在の所在地または速度を決定することができる。例えば、モバイル・コンピューティング装置は、全地球測位システム（ＧＰＳ）信号、セルラ信号三角測量、または無線アクセス・ポイントの所在地に基づいて、現在の所在地を決定することができる。特定の実施形態は、モバイル・コンピューティング装置の所在地を決定するための任意の適切な方法を企図している。例えば、モバイル・コンピューティング装置は、ある期間にわたって所在地変化を計算することによって、モバイル装置の現在の速度を決定することができる。特定の実施形態は、モバイル・コンピューティング装置の速度を決定するための任意の適切な方法を企図している。
【００３１】
いくつかの実施形態では、モバイル・コンピューティング装置は、以前の所在地または速度に基づいて、現在の所在地または速度を決定することができる。モバイル・コンピューティング装置は、モバイル・コンピューティング装置内に記憶されている、またはソーシャル・ネットワーキング・システムなどのオンライン・サービスにおいて記憶されている、１つまたは複数の以前の所在地または速度にアクセスすることができる。例えば、モバイル・コンピューティング装置は、現在の所在地が以前の所在地と異なる（例えば、以前の所在地から約１．６ｋｍ（１マイル）超離れている）場合に、現在の所在地を決定することができる。以前の所在地は、現在の所在地の前に記録された所在地とすることができる。以前の所在地は、モバイル・コンピューティング装置のユーザと関連付けられた所在地（例えば、ユーザの家の所在地、ユーザの職場の所在地）とすることができる。別の例として、モバイル・コンピューティング装置は、モバイル・コンピューティング装置が、事前決定された期間（例えば、２０分）よりも長く時速約４．８ｋｍ（３マイル）超の速度を有し、現在は静止に近い速度を有する場合、現在の所在地を決定することができる。すなわち、モバイル・コンピューティング装置と関連付けられたユーザは、少なくとも事前決定された期間にわたって移動していた（運動中であった）ようだが、今はユーザの目的地（すなわち、現在の所在地）に到着している。
【００３２】
特定の実施形態では、ステップ３２０において、モバイル・コンピューティング装置は、現在の所在地または速度を決定したのに応答して、手動のユーザ入力を用いずに、現在の所在地または速度に少なくとも部分的に基づいて、モバイル・コンピューティング装置のユーザ・インターフェースを変更することができる。ユーザ・インターフェースは、モバイル・コンピューティング装置上のソフトウェア・アプリケーションのユーザ・インターフェースとすることができる。ユーザ・インターフェースは、モバイル・コンピューティング装置上のオペレーティング・システムのユーザ・インターフェース（例えば、モバイル・コンピューティング装置のホーム画面）とすることができる。
【００３３】
特定の実施形態では、モバイル・コンピューティング装置は、ユーザ・インターフェース上に表示するために、現在の所在地または速度に関連するユーザ・インターフェース要素を提供することによって、ユーザ・インターフェースを変更することができる。ユーザ・インターフェース要素は、モバイル・コンピューティング装置のユーザ・インターフェース上に表示するために提供される、フレーム、ウィンドウ、選択可能なアイコン、または任意の適切な要素とすることができる。例えば、モバイル・コンピューティング装置は、現在の所在地が、モバイル・コンピューティング装置のために事前設定された言語（例えば、英語）と異なる（またはモバイル・コンピューティング装置のユーザと関連付けられた言語と異なる）言語（例えば、フランス語）を用いる国または地域に対応することを決定することができる。現在の所在地がモバイル・コンピューティング装置のために事前設定された言語と異なる言語を有するのに応答して、モバイル・コンピューティング装置は、モバイル・コンピューティング装置のユーザ・インターフェース上に、辞書ツール（例えば、フランス語辞書）または言語翻訳ツール（例えば、フランス語から英語への翻訳ソフトウェア）のためのユーザ・インターフェースを備えるフレームを自動的に表示することができる。例えば、フレームは、モバイル・コンピューティング装置のユーザ・インターフェース内に自動的に挿入されるインライン・フレーム（例えば、ＨＴＭＬ  ｉフレーム）とすることができる。別の例として、フレームは、モバイル・コンピューティング装置のユーザ・インターフェースの上に自動的に配置される被覆フレームとすることができる。１実施形態では、ユーザ・インターフェース要素は、現在の所在地または速度に関連する１つまたは複数の広告を含むことができる。例えば、ユーザ・インターフェース要素は、現在の所在地の近くの商売の広告を含むことができる。別の例として、ユーザ・インターフェース要素は、現在の速度が事前決定された閾値（例えば、時速約１２０ｋｍ（７５マイル））を超える場合、スポーツ・カーの広告を含むことができる。
【００３４】
特定の実施形態では、ユーザ・インターフェース要素は、ソーシャル・ネットワーキング・システムのサービスと関連付けることができる。モバイル・コンピューティング装置は、現在の所在地または速度を決定したのに応答して、手動のユーザ入力を用いずに、現在の所在地または速度に関連するソーシャル・ネットワーキング・システムのサービスを決定し、表示するために、そのサービスのためのユーザ・インターフェース要素を提供することができる。モバイル・コンピューティング装置の現在の所在地または速度に関連するソーシャル・ネットワーキング・システムのサービスは、ロケーション・チェックイン、写真アップロード・ツール、現在の所在地の近所にいる他のユーザの探索、または現在の所在地の近所にあるモバイル・コンピューティング装置のユーザが関心をもつ場所の探索とすることができる。例えば、モバイル・コンピューティング装置は、現在の所在地または速度を決定したのに応答して、手動のユーザ入力を用いずに、モバイル・コンピューティング装置のユーザ・インターフェース上に、ソーシャル・ネットワーキング・システムにおけるロケーション・チェックインのためのユーザ・インターフェースを含むフレームを表示することができる。モバイル・コンピューティング装置のユーザは、ロケーション・チェックイン・ユーザ・インターフェースを介して、現在の所在地をソーシャル・ネットワーキング・システムに提示し（またはソーシャル・ネットワーキング・システムによって提供される近隣ロケーションのリストから選択し）、ソーシャル・ネットワーキング・システムに、ソーシャル・ネットワーキング・システムのソーシャル・グラフ内で、ユーザに対応するノードと現在の所在地に対応するノードとの間に「チェックイン」エッジを生成させることができる。
【００３５】
例えば、モバイル・コンピューティング装置は、現在の所在地または速度を決定したのに応答して、手動のユーザ入力を用いずに、モバイル・コンピューティング装置のユーザ・インターフェース上に、ソーシャル・ネットワーキング・システム（またはオンライン写真ホスティング・サービス）の写真アップロード・ツールのためのユーザ・インターフェースを含むフレームを表示することができる。モバイル・コンピューティング装置のユーザは、現在の所在地と関連付けられた写真（例えば、現在の所在地またはその近所においてモバイル・コンピューティング装置を用いて撮影された写真）をソーシャル・ネットワーキング・システムにアップロードするために、写真アップロード・ツールを使用することができる。
【００３６】
例えば、モバイル・コンピューティング装置は、現在の所在地または速度を決定したのに応答して、手動のユーザ入力を用いずに、現在の所在地の近所の（例えば３０．４メートル（１００フィート）以内の）所在地を有する、ユーザの１次の友達（first-degree friend）に関する、ソーシャル・ネットワーキング・システムのソーシャル・グラフにアクセスすることができる。ユーザの１次の友達に対応するノードは、ソーシャル・グラフ内で、ユーザに対応する別のノードに接続するエッジを有することができる。モバイル・コンピューティング装置は、モバイル・コンピューティング装置のユーザ・インターフェース上に、現在の所在地の近所にいるユーザの１次の友達を含むフレームを表示することができる。モバイル・コンピューティング装置のユーザは、（現在の所在地にいる）ユーザの近所にいる他のユーザを探索するために、フレームにアクセスすることができる。
【００３７】
例えば、モバイル・コンピューティング装置は、現在の所在地または速度を決定したのに応答して、手動のユーザ入力を用いずに、その所在地が現在の所在地の近所（例えば、約８００ｍ（半マイル）以内）である１つまたは複数の概念ノードを求めて、ソーシャル・ネットワーキング・システムのソーシャル・グラフにアクセスすることができる。モバイル・コンピューティング装置は、モバイル・コンピューティング装置のユーザ・インターフェース上に、現在の所在地の近所にある概念ノードの１つまたは複数に対応する場所（または概念）のリストを含むフレームを表示することができる。ユーザは、現在の所在地の近所にある関心がある場所を探索するために、フレームにアクセスすることができる。別の例として、モバイル・コンピューティング装置は、先に説明したように、速度変化に基づいて、モバイル・コンピューティング装置と関連付けられたユーザが新しい所在地（ユーザの目的地）に到着したことを決定することができる。（ユーザは自分の家の所在地付近の場所についてはすでに精通しているので）新しい所在地がユーザの家の所在地から少なくとも約８ｋｍ（５マイル）離れている場合に限って、モバイル・コンピューティング装置は、モバイル・コンピューティング装置のユーザ・インターフェース上に、新しい所在地の近所にある概念ノードの１つまたは複数に対応する場所（または概念）のリストを含むフレームを表示することができる。すなわち、１実施形態では、モバイル・コンピューティング装置は、現在の所在地および速度を決定したのに応答して、手動のユーザ入力を用いずに、現在の所在地および速度に少なくとも部分的に基づいて、モバイル・コンピューティング装置のユーザ・インターフェースを変更することができる。
【００３８】
図４Ａは、モバイル・コンピューティング装置の例示的ユーザ・インターフェース４００を示している。ユーザ・インターフェース４００は、ソーシャル・ネットワーキング・システムにアクセスするためのソフトウェア・アプリケーションのユーザ・インターフェースを含むことができる。ユーザ・インターフェース４００は、ソーシャル・ネットワーキング・システムに対するステータス更新のための選択可能なアイコン４１０と、メッセージを読み、作成するための選択可能なアイコン４２０と、ソーシャル・ネットワーキング・システムにおけるロケーション・チェックインのための選択可能アイコン４３０とを含むことができる。ユーザ・インターフェース４００は、ニュースフィード・ストーリのスクロール可能スタック４４０ａ、４４０ｂ、４４０ｃなども含むことができる。先に説明したように、モバイル・コンピューティング装置は、モバイル・コンピューティング装置の現在の所在地または速度を決定し、手動のユーザ入力を用いずに、現在の所在地または速度に少なくとも部分的に基づいて、ユーザ・インターフェース４００を変更することができる。例えば、現在の所在地が、モバイル・コンピューティング装置のために事前設定された言語（例えば、英語）と異なる言語（例えば、フランス語）に対応する場合、モバイル・コンピューティング装置は、手動のユーザ入力を用いずに、図４Ｂに示されるように、ユーザ・インターフェース４００内に、フランス語から英語への翻訳ツールのためのユーザ・インターフェースを含むインライン・フレーム４５０を表示することができる。別の例として、モバイル・コンピューティング装置は、手動のユーザ入力を用いずに、図４Ｃに示されるように、ユーザ・インターフェース４００上に、フランス語から英語への翻訳ツールのためのユーザ・インターフェースを含む被覆フレーム（overlying frame）４５１を表示することができる。モバイル・コンピューティング装置は、ユーザ・インターフェース４００の残り部分の表示明度を低減させることによって、インライン・フレーム４５０または被覆フレーム４５１を目立たせることもできる。
【００３９】
特定の実施形態では、モバイル・コンピューティング装置は、モバイル・コンピューティング装置の現在の所在地または速度を決定し、手動のユーザ入力を用いずに、モバイル・コンピューティング装置のユーザ・インターフェース上の（現在の所在地または速度に関連する）ユーザ・インターフェース要素の表示上の目立ちやすさを変更することによって、現在の所在地または速度に基づいて、モバイル・コンピューティング装置のユーザ・インターフェースを変更することができる。ユーザ・インターフェース要素は、モバイル・コンピューティング装置のユーザ・インターフェース上に表示するために提供される、フレーム、ウィンドウ、選択可能なアイコン、または任意の適切な要素とすることができる。現在の所在地または速度に関連するユーザ・インターフェース要素は、先に説明したように、辞書ツールまたは言語翻訳ツールに対応することができる。現在の所在地または速度に関連するユーザ・インターフェース要素は、先に説明したように、ロケーション・チェックイン、写真アップロード、現在の所在地の近所にいるユーザの探索、および現在の所在地の近所にある関心がある場所の探索など、ソーシャル・ネットワーキング・システムのサービスと関連付けることができる。例えば、モバイル・コンピューティング装置は、ユーザ・インターフェース４００内で、ソーシャル・ネットワーキング・システムへのロケーション・チェックインのための選択可能なアイコン４３０の表示上の目立ちやすさを変更することができる。モバイル・コンピューティング装置は、図４Ｄに示されるように、ユーザ・インターフェース４００の残り部分の表示明度を低減させることによって、選択可能なアイコン４３０を目立たせることができる。モバイル・コンピューティング装置は、ユーザ・インターフェース要素の表示サイズ、表示カラー、または表示位置を変更することによって、（現在の所在地または速度に関連する）ユーザ・インターフェース要素の表示上の目立ちやすさを変更することもできる。特定の実施形態は、現在の所在地または速度に関連するユーザ・インターフェース要素の表示上の目立ちやすさを変更するための任意の適切な方法を企図している。
【００４０】
特定の実施形態は、適切な場合、図３の方法の１つまたは複数のステップを反復することができる。本開示は、図３の方法の特定のステップが特定の順序で行われるものとして説明および図示するが、本開示は、任意の適切な順序で行われる図３の方法の任意の適切なステップを企図する。さらに、本開示は、図３の方法の特定のステップを実施する特定の構成要素、装置、またはシステムを説明および図示するが、本開示は、図３の方法の任意の適切なステップを実施する任意の適切な構成要素、装置、またはシステムの任意の適切な組合せを企図する。
【００４１】
図５は、例示的なコンピュータ・システム５００を示す。特定の実施形態では、１つまたは複数のコンピュータ・システム５００は、本明細書で説明または図示される１つまたは複数の方法の１つまたは複数のステップを実施する。特定の実施形態では、１つまたは複数のコンピュータ・システム５００は、本明細書で説明または図示される機能を提供する。特定の実施形態では、１つまたは複数のコンピュータ・システム５００上で実行中のソフトウェアが、本明細書で説明または図示される１つまたは複数の方法の１つまたは複数のステップを実施しまたは本明細書で説明または図示される機能を提供する。特定の実施形態は、１つまたは複数のコンピュータ・システム５００の１つまたは複数の部分を含む。本明細書では、適切な場合、コンピュータ・システムに対する参照はコンピューティング装置を包含し、逆も同様である。さらに、適切な場合、コンピュータ・システムに対する参照は、１つまたは複数のコンピュータ・システムを包含する。
【００４２】
本開示は、任意の適切な数のコンピュータ・システム５００を企図する。本開示は、任意の適切な物理的形態を取るコンピュータ・システム５００を企図する。限定ではなく例として、コンピュータ・システム５００は、組込みコンピュータ・システム、システム・オン・チップ（ＳＯＣ）、シングル・ボード・コンピュータ・システム（ＳＢＣ）（例えば、コンピュータ・オン・モジュール（ＣＯＭ）やシステム・オン・モジュール（ＳＯＭ）など）、デスクトップ・コンピュータ・システム、ラップトップもしくはノートブック・コンピュータ・システム、対話型キオスク、メインフレーム、コンピュータ・システムのメッシュ、携帯電話、携帯情報端末（ＰＤＡ）、サーバ、タブレット・コンピュータ・システム、またはこれらの２つ以上の組合せでよい。適切な場合、コンピュータ・システム５００は、１つまたは複数のコンピュータ・システム５００を含むことができ、一体型または分散型でよく、複数の場所にわたるものでよく、複数のマシンにわたるものでよく、複数のデータセンタにわたるものでよく、またはクラウド内に常駐することができ、クラウドは、１つまたは複数のネットワーク内の１つまたは複数のクラウド構成要素を含むことができる。適切な場合、１つまたは複数のコンピュータ・システム５００は、実質的な空間的または時間的な限定なしに、本明細書で説明または図示される１つまたは複数の方法の１つまたは複数のステップを実施することができる。限定ではなく例として、１つまたは複数のコンピュータ・システム５００は、本明細書で説明または図示される１つまたは複数の方法の１つまたは複数のステップをリアル・タイムに、またはバッチ・モードで実施することができる。適切な場合、１つまたは複数のコンピュータ・システム５００は、本明細書で説明または図示される１つまたは複数の方法の１つまたは複数のステップを異なる時刻または異なる場所で実施することができる。
【００４３】
特定の実施形態では、コンピュータ・システム５００は、プロセッサ５０２、メモリ５０４、ストレージ５０６、入力／出力（Ｉ／Ｏ）インターフェース５０８、通信インターフェース５１０、およびバス５１２を含む。本開示は、特定の構成の、特定の数の特定の構成要素を有する特定のコンピュータ・システムを説明および図示するが、本開示は、任意の適切な構成の、任意の適切な数の任意の適切な構成要素を有する任意の適切なコンピュータ・システムを企図する。
【００４４】
特定の実施形態では、プロセッサ５０２は、コンピュータ・プログラムを構成するような命令を実行するハードウェアを含む。限定ではなく例として、命令を実行するために、プロセッサ５０２は、内部レジスタ、内部キャッシュ、メモリ５０４、またはストレージ５０６から命令を取り出し（またはフェッチし）、その命令を復号化および実行し、次いで内部レジスタ、内部キャッシュ、メモリ５０４、またはストレージ５０６に１つまたは複数の結果を書き込むことができる。特定の実施形態では、プロセッサ５０２は、データ、命令、またはアドレスのための１つまたは複数の内部キャッシュを含むことができる。本開示は、適切な場合、任意の適切な数の任意の適切な内部キャッシュを含むプロセッサ５０２を企図する。限定ではなく例として、プロセッサ５０２は、１つまたは複数の命令キャッシュ、１つまたは複数のデータ・キャッシュ、および１つまたは複数の変換ルックアサイド・バッファ（translation lookaside buffer：ＴＬＢ）を含むことができる。命令キャッシュ内の命令は、メモリ５０４またはストレージ５０６内の命令のコピーでよく、命令キャッシュは、プロセッサ５０２によるそうした命令の検索を加速することができる。データ・キャッシュ内のデータは、プロセッサ５０２で実行中の命令が演算するためのメモリ５０４またはストレージ５０６内のデータ、プロセッサ５０２で実行中の後続の命令によるアクセスのために、またはメモリ５０４もしくはストレージ５０６に書き込むために、プロセッサ５０２で実行された以前の命令の結果、あるいは他の適切なデータのコピーでもよい。データ・キャッシュは、プロセッサ５０２による読取りまたは書込み演算を加速することができる。ＴＬＢはプロセッサ５０２のための仮想アドレス変換（virtual-address translation）を加速することができる。特定の実施形態では、プロセッサ５０２は、データ、命令、またはアドレス用の１つまたは複数の内部レジスタを含むことができる。本開示は、適切な場合、任意の適切な数の任意の適切な内部レジスタを含むプロセッサ５０２を企図する。適切な場合、プロセッサ５０２は、１つまたは複数の演算論理装置（arithmetic logic unit：ＡＬＵ）を含むことができ、マルチコア・プロセッサでよく、または１つまたは複数のプロセッサ５０２を含むことができる。本開示は特定のプロセッサを説明および図示するが、本開示は任意の適切なプロセッサを企図する。
【００４５】
特定の実施形態では、メモリ５０４は、プロセッサ５０２が実行するための命令、またはプロセッサ５０２が演算するためのデータを格納するメイン・メモリを含む。限定ではなく例として、コンピュータ・システム５００は、ストレージ５０６または別のソース（例えば、別のコンピュータ・システム５００など）からメモリ５０４に命令をロードすることができる。次いでプロセッサ５０２は、メモリ５０４から内部レジスタまたは内部キャッシュに命令をロードすることができる。命令を実行するために、プロセッサ５０２は、内部レジスタまたは内部キャッシュから命令を取り出し、その命令を復号化することができる。命令の実行中または実行後に、プロセッサ５０２は、１つまたは複数の結果（これは中間結果または最終結果でよい）を内部レジスタまたは内部キャッシュに書き込むことができる。次いでプロセッサ５０２は、そうした結果の１つまたは複数をメモリ５０４に書き込むことができる。特定の実施形態では、プロセッサ５０２は、（ストレージ５０６または他の場所ではなく）１つまたは複数の内部レジスタもしくは内部キャッシュ内、またはメモリ５０４内の命令のみを実行し、（ストレージ５０６または他の場所ではなく）１つまたは複数の内部レジスタもしくは内部キャッシュ内、またはメモリ５０４内のデータのみに対して演算する。１つまたは複数のメモリ・バス（これはそれぞれアドレス・バスおよびデータ・バスを含むことができる）が、プロセッサ５０２をメモリ５０４に結合することができる。バス５１２は、以下で説明するように、１つまたは複数のメモリ・バスを含むことができる。特定の実施形態では、１つまたは複数のメモリ管理ユニット（memory management unit：ＭＭＵ）が、プロセッサ５０２とメモリ５０４との間に常駐し、プロセッサ５０２によって要求されたメモリ５０４へのアクセスを可能にする。特定の実施形態では、メモリ５０４はランダム・アクセス・メモリ（ＲＡＭ）を含む。適切な場合、このＲＡＭは揮発性メモリでよい。適切な場合、このＲＡＭはダイナミックＲＡＭ（ＤＲＡＭ）またはスタティックＲＡＭ（ＳＲＡＭ）でよい。さらに、適切な場合、このＲＡＭは、単一ポートまたはマルチポートＲＡＭでよい。本開示は任意の適切なＲＡＭを企図する。適切な場合、メモリ５０４は、１つまたは複数のメモリ５０４を含むことができる。本開示は特定のメモリを説明および図示するが、本開示は任意の適切なメモリを企図する。
【００４６】
特定の実施形態では、ストレージ５０６は、データまたは命令用のマス・ストレージを含む。限定ではなく例として、ストレージ５０６は、ハード・ディスク・ドライブ（ＨＤＤ）、フロッピー（登録商標）・ディスク・ドライブ、フラッシュ・メモリ、光ディスク、光磁気ディスク、磁気テープ、またはユニバーサル・シリアル・バス（ＵＳＢ）ドライブ、あるいはこれらのうちの２つ以上の組合せを含むことができる。ストレージ５０６は、適切な場合、取外し可能または取外し不能（または固定）媒体を含むことができる。ストレージ５０６は、適切な場合、コンピュータ・システム５００の内部または外部でよい。特定の実施形態では、ストレージ５０６は不揮発性固体メモリである。特定の実施形態では、ストレージ５０６は読取り専用メモリ（ＲＯＭ）を含む。適切な場合、このＲＯＭは、マスクプログラムされたＲＯＭ、プログラマブルＲＯＭ（ＰＲＯＭ）、消去可能ＰＲＯＭ（ＥＰＲＯＭ）、電気消去可能ＰＲＯＭ（ＥＥＰＲＯＭ）、電気書換え可能ＲＯＭ（ＥＡＲＯＭ）、またはフラッシュ・メモリ、あるいはこれらのうちの２つ以上の組合せでよい。本開示は、任意の適切な物理的形態を有するマス・ストレージ５０６を企図する。適切な場合、ストレージ５０６は、プロセッサ５０２とストレージ５０６との間の通信を可能にする１つまたは複数のストレージ制御ユニットを含むことができる。適切な場合、ストレージ５０６は、１つまたは複数のストレージ５０６を含むことができる。本開示は特定のストレージを説明および図示するが、本開示は任意の適切なストレージを企図する。
【００４７】
特定の実施形態では、Ｉ／Ｏインターフェース５０８は、コンピュータ・システム５００と１つまたは複数のＩ／Ｏ装置との間の通信のための１つまたは複数のインターフェースを提供するハードウェア、ソフトウェア、またはその両方を含む。コンピュータ・システム５００は、適切な場合、これらのＩ／Ｏ装置のうちの１つまたは複数を含むことができる。これらのＩ／Ｏ装置のうちの１つまたは複数は、人とコンピュータ・システム５００との間の通信を可能にすることができる。限定ではなく例として、Ｉ／Ｏ装置は、キーボード、キーパッド、マイクロフォン、モニタ、マウス、プリンタ、スキャナ、スピーカ、スチル・カメラ、スタイラス、タブレット、タッチ・スクリーン、トラックボール、ビデオ・カメラ、別の適切なＩ／Ｏ装置、またはこれらのうちの２つ以上の組合せを含むことができる。Ｉ／Ｏ装置は１つまたは複数のセンサを含むことができる。本開示は、任意の適切なＩ／Ｏ装置およびそのための任意の適切なＩ／Ｏインターフェース５０８を企図する。適切な場合、Ｉ／Ｏインターフェース５０８は、プロセッサ５０２がこれらのＩ／Ｏ装置のうちの１つまたは複数を駆動することを可能にする１つまたは複数のデバイス・ドライバまたはソフトウェア・ドライバを含むことができる。Ｉ／Ｏインターフェース５０８は、適切な場合、１つまたは複数のＩ／Ｏインターフェース５０８を含むことができる。本開示は特定のＩ／Ｏインターフェースを説明および図示するが、本開示は任意の適切なＩ／Ｏインターフェースを企図する。
【００４８】
特定の実施形態では、通信インターフェース５１０は、コンピュータ・システム５００と、１つまたは複数の別のコンピュータ・システム５００あるいは１つまたは複数のネットワークとの間の通信（例えば、パケット・ベースの通信など）用の１つまたは複数のインターフェースを提供するハードウェア、ソフトウェア、またはその両方を含む。限定ではなく例として、通信インターフェース５１０は、イーサネット（登録商標）または他のワイヤ・ベースのネットワークと通信するネットワーク・インターフェース・コントローラ（network interface controller：ＮＩＣ）またはネットワーク・アダプタ、あるいはＷｉ−Ｆｉネットワークなどのワイヤレス・ネットワークと通信するワイヤレスＮＩＣ（wire-based network or a wireless：ＷＮＩＣ）またはワイヤレス・アダプタを含むことができる。本開示は、任意の適切なネットワークおよびそのための任意の適切な通信インターフェース５１０を企図する。限定ではなく例として、コンピュータ・システム５００は、アドホック・ネットワーク、パーソナル・エリア・ネットワーク（ＰＡＮ）、ローカル・エリア・ネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）、大都市圏ネットワーク（metropolitan area network：ＭＡＮ）、またはインターネットの１つもしくは複数の部分、あるいはこれらのうちの２つ以上の組合せと通信することができる。これらのネットワークのうちの１つまたは複数の１つまたは複数の部分は、ワイヤードまたはワイヤレスでよい。１例を挙げると、コンピュータ・システム５００は、ワイヤレスＰＡＮ（ＷＰＡＮ）（例えば、ＢＬＵＥＴＯＯＴＨ  ＷＰＡＮなど）、Ｗｉ−Ｆｉネットワーク、ＷＩ−ＭＡＸネットワーク、携帯電話網（例えば、Global System for Mobile Communication（ＧＳＭ（登録商標））ネットワークなど）、または他の適切なワイヤレス・ネットワーク、あるいはこれらのうちの２つ以上の組合せと通信することができる。コンピュータ・システム５００は、適切な場合、これらのネットワークのいずれかに関する任意の適切な通信インターフェース５１０を含むことができる。通信インターフェース５１０は、適切な場合、１つまたは複数の通信インターフェース５１０を含むことができる。本開示は特定の通信インターフェースを説明および図示するが、本開示は任意の適切な通信インターフェースを企図する。
【００４９】
特定の実施形態では、バス５１２は、コンピュータ・システム５００の構成要素を互いに結合するハードウェア、ソフトウェア、またはその両方を含む。限定ではなく例として、バス５１２は、アクセラレーテッド・グラフィックス・ポート（Accelerated Graphics Port：ＡＧＰ）または他のグラフィックス・バス、Ｅｎｈａｎｃｅｄ  Ｉｎｄｕｓｔｒｙ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ（ＥＩＳＡ）バス、フロント・サイド・バス（ＦＳＢ）、ＨＹＰＥＲＴＲＡＮＳＰＯＲＴ（ＨＴ）相互接続、Ｉｎｄｕｓｔｒｙ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ（ＩＳＡ）バス、ＩＮＦＩＮＩＢＡＮＤ相互接続、低ピン・カウント（low-pin-count：ＬＰＣ）バス、メモリ・バス、Ｍｉｃｒｏ  Ｃｈａｎｎｅｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ（ＭＣＡ）バス、Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ（ＰＣＩ）バス、ＰＣＩ−Ｅｘｐｒｅｓｓ（ＰＣＩｅ）バス、ｓｅｒｉａｌ  ａｄｖａｎｃｅｄ  ｔｅｃｈｎｏｌｏｇｙ  ａｔｔａｃｈｍｅｎｔ（ＳＡＴＡ）バス、Ｖｉｄｅｏ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｓｔａｎｄａｒｄｓ  Ａｓｓｏｃｉａｔｉｏｎ  ｌｏｃａｌ（ＶＬＢ）バス、または別の適切なバス、あるいはこれらのうちの２つ以上の組合せを含むことができる。バス５１２は、適切な場合、１つまたは複数のバス５１２を含むことができる。本開示は特定のバスを説明および図示するが、本開示は、任意の適切なバスまたは相互接続を企図する。
【００５０】
本明細書では、コンピュータ可読非一時的記憶媒体は、適切な場合、１つまたは複数の半導体ベースの、または他の集積回路（ＩＣ）（例えば、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）または特定用途向けＩＣ（ＡＳＩＣ）など）、ハード・ディスク・ドライブ（ＨＤＤ）、ハイブリッド・ハード・ドライブ（ＨＨＤ）、光ディスク、光ディスクドライブ（ＯＤＤ）、光磁気ディスク、光磁気ドライブ、フロッピィ・ディスケット、フロッピィ・ディスク・ドライブ（ＦＤＤ）、磁気テープ、固体ドライブ（ＳＳＤ）、ＲＡＭドライブ、セキュア・デジタル・カードもしくはドライブ、任意の他の適切なコンピュータ可読非一時的記憶媒体、またはこれらの２つ以上の適切な組合せを含むことができる。コンピュータ可読非一時的記憶媒体は、適切な場合、揮発性、不揮発性、または揮発性と不揮発性の組合せでよい。
【００５１】
本明細書では、別段に明記されていない限り、または文脈によって示されていない限り、「または」は排他的ではなく包含的である。したがって、本明細書では、別段に明記されていない限り、または文脈によって示されていない限り、「ＡまたはＢ」は「Ａ、Ｂ、またはその両方」を意味する。さらに、別段に明記されていない限り、または文脈によって示されていない限り、「および」は協同および個々の両方である。したがって、本明細書では、別段に明記されていない限り、または文脈によって示されていない限り、「ＡおよびＢ」は、「ＡおよびＢが一緒に、または個別に」を意味する。
【００５２】
本開示の範囲は、当業者なら理解するはずである、本明細書で説明または図示される例示的実施形態に対するすべての変更、置換、変形、改変、および修正を包含する。本開示の範囲は、本明細書で説明または図示される例示的実施形態に限定されない。さらに、本開示は、本明細書のそれぞれの実施形態が特定の構成要素、要素、機能、動作、またはステップを含むものとして説明および図示するが、これらの実施形態のいずれも、当業者なら理解するはずである、本明細書のどこかで説明または図示される構成要素、要素、機能、動作、またはステップのいずれかの任意の組合せまたは置換を含むことができる。さらに、特定の機能を実施するように適合され、配置され、実施することが可能であり、実施するように構成され、実施することが可能にされ、実施するように動作可能である装置またはシステムあるいは装置またはシステムの構成要素に対する添付の特許請求の範囲での参照は、その装置、システム、または構成要素がそのように適合され、配置され、可能であり、構成され、可能にされ、動作可能にされる限り、その装置、システム、構成要素またはその特定の機能が活動化され、オンにされ、またはロック解除されるか否かに関わらず、その装置、システム、構成要素を包含する。
【図１】
0006488240.tif 000002
【図２】
0006488240.tif 000003
【図３】
0006488240.tif 000004
【図４Ａ】
0006488240.tif 000005
【図４Ｂ】
0006488240.tif 000006
【図４Ｃ】
0006488240.tif 000007
【図４Ｄ】
0006488240.tif 000008
【図５】
0006488240.tif 000009