(57)【特許請求の範囲】
【請求項１】
方法であって、
１つもしくは複数のサーバ・コンピューティング・デバイスが、ユーザと関連付けられたクライアント・コンピューティング・デバイスから特定の画像を含む構造化ドキュメントに対する要求を受信する工程と、
前記１つもしくは複数のサーバ・コンピューティング・デバイスが、前記特定の画像と関連付けられたデータ用のデータ・ストアにアクセスする工程であって、前記特定の画像と関連付けられたデータは、前記特定の画像上に作成されたコメントまたは前記特定の画像と関連付けられた嗜好の数を含む、前記アクセスする工程と、
前記１つもしくは複数のサーバ・コンピューティング・デバイスが、画像と関連付けされたユーザと１人または複数人の他のユーザとの間のソーシャル・グラフ親和性と、前記特定の画像と関連付けられた前記データの少なくともいくつかとに少なくとも部分的に基づいて、前記特定の画像に対応するテキスト文字列を前記構造化ドキュメントの代替テキストとして作成する工程であって、前記構造化ドキュメントの前記代替テキストは、前記特定の画像を表示することができない場合に前記特定の画像の代わりに表示されるように構成されたテキストであり、前記テキスト文字列は前記クライアント・コンピューティング・デバイスによって可聴的に読み出されるように構成される、前記テキスト文字列を作成する工程と、
１つもしくは複数のサーバ・コンピューティング・デバイスが、前記ユーザに対する提示のために前記特定の画像および前記テキスト文字列を有する前記構造化ドキュメントを前記クライアント・コンピューティング・デバイスに送信する工程と、を備える方法。
【請求項２】
前記テキスト文字列は、前記構造化ドキュメントにおける前記画像に対応するハイパーテキスト・マークアップ・ランゲージ（ＨＴＭＬ）の画像タグの代替テキストとして構成される、請求項１に記載の方法。
【請求項３】
前記画像と関連付けられた前記データは、前記画像の場所、前記画像の作者、または前記画像にタグ付けされた１人もしくは複数のユーザを含む、請求項１に記載の方法。
【請求項４】
前記画像と関連付けられた前記データは、ソーシャル・グラフの１つもしくは複数のノードに対応し、前記ソーシャル・グラフは、複数のユーザ・ノード及びコンセプト・ノード及び前記ノードを接続するエッジを含み、各ユーザ・ノードはソーシャル・ネットワーキング・システムのユーザに対応し、各コンセプト・ノードはソーシャル・ネットワーキング・システムのコンセプトに対応する、請求項１に記載の方法。
【請求項５】
前記テキスト文字列は、自然言語の話法で構成される、請求項１に記載の方法。
【請求項６】
前記テキスト文字列は、前記構造化ドキュメントのテキストコンテンツに基づいて構成される、請求項１に記載の方法。
【請求項７】
前記テキスト文字列は、前記クライアント・コンピューティング・デバイスのネットワークの接続タイプに基づいて構成される、請求項１に記載の方法。
【請求項８】
動作可能なソフトウェアを実装するコンピュータ読み取り可能で非一時的な１つもしくは複数の記憶媒体であって、前記ソフトウェアは、実行されたときに、
ユーザと関連付けられたクライアント・コンピューティング・デバイスから特定の画像を含む構造化ドキュメントに対する要求を受信し、
前記特定の画像と関連付けられたデータに関するデータ・ストアにアクセスし、ここで、前記特定の画像と関連付けられたデータは、前記特定の画像上に作成されたコメントまたは前記特定の画像と関連付けられた嗜好の数を含み、
画像と関連付けされたユーザと１人または複数人の他のユーザとの間のソーシャル・グラフ親和性と、前記特定の画像と関連付けられた前記データの少なくともいくつかとに少なくとも部分的に基づいて、前記特定の画像に対応するテキスト文字列を前記構造化ドキュメントの代替テキストとして作成し、ここで、前記構造化ドキュメントの前記代替テキストは、前記特定の画像を表示することができない場合に前記特定の画像の代わりに表示されるように構成されたテキストであり、前記テキスト文字列は、前記クライアント・コンピューティング・デバイスによって可聴的に読み出されるように構成され、
前記ユーザに対する提示のために前記特定の画像および前記テキスト文字列を有する前記構造化ドキュメントを前記クライアント・コンピューティング・デバイスに送信するように動作可能である、媒体。
【請求項９】
前記テキスト文字列は、前記構造化ドキュメントにおいて前記画像に対応するハイパーテキスト・マークアップ・ランゲージ（ＨＴＭＬ）の画像タグの代替テキストとして構成される、請求項８に記載の媒体。
【請求項１０】
前記画像と関連付けられた前記データは、前記画像の場所、前記画像の作者、または前記画像においてタグ付けされた１人もしくは複数のユーザを含む、請求項８に記載の媒体。
【請求項１１】
前記画像と関連付けられた前記データは、ソーシャル・グラフの１つもしくは複数のノードに対応し、ソーシャル・グラフは複数のユーザ・ノード及びコンセプト・ノード及び前記ノードを接続するエッジを含み、各ユーザ・ノードはソーシャル・ネットワーキング・システムのユーザに対応し、各コンセプト・ノードはソーシャル・ネットワーキング・システムのコンセプトに対応する、請求項８に記載の媒体。
【請求項１２】
前記テキスト文字列は、自然言語の話法で構成される、請求項８に記載の媒体。
【請求項１３】
前記テキスト文字列は、前記構造化ドキュメントのテキストコンテンツに基づいて構成される、請求項８に記載の媒体。
【請求項１４】
前記テキスト文字列は、前記クライアント・コンピューティング・デバイスのネットワークの接続タイプに基づいて構成される、請求項８に記載の媒体。
【請求項１５】
システムであって、
１つもしくは複数のプロセッサと、
前記プロセッサと接続され、前記プロセッサによって実行可能な命令を含むメモリとを備え、
前記プロセッサは、命令を実行するときに、
ユーザと関連付けられたクライアント・コンピューティング・デバイスから特定の画像を含む構造化ドキュメントに対する要求を受信し、
前記特定の画像と関連付けられたデータ用のデータ・ストアにアクセスし、ここで、前記特定の画像と関連付けられたデータは、前記特定の画像上に作成されたコメントまたは前記特定の画像と関連付けられた嗜好の数を含み、
画像と関連付けされたユーザと１人または複数人の他のユーザとの間のソーシャル・グラフ親和性と、前記特定の画像と関連付けられた前記データの少なくともいくつかとに少なくとも部分的に基づいて、前記特定の画像に対応するテキスト文字列を前記構造化ドキュメントの代替テキストとして作成し、ここで、前記構造化ドキュメントの前記代替テキストは、前記特定の画像を表示することができない場合に前記特定の画像の代わりに表示されるように構成されたテキストであり、前記テキスト文字列は前記クライアント・コンピューティング・デバイスによって可聴的に読み出されるように構成され、
前記ユーザに対する提示のために前記特定の画像および前記テキスト文字列を有する前記構造化ドキュメントを前記クライアント・コンピューティング・デバイスに送信するように動作可能である、システム。
【請求項１６】
前記テキスト文字列は、前記構造化ドキュメントにおいて前記画像に対応するハイパーテキスト・マークアップ・ランゲージ（ＨＴＭＬ）の画像タグの代替テキストとして構成される、請求項１５に記載のシステム。
【請求項１７】
前記画像と関連付けられた前記データは、前記画像の場所、前記画像の作者、または前記画像においてタグ付けされた１人もしくは複数のユーザを含む、請求項１５に記載のシステム。
【請求項１８】
前記画像と関連付けられた前記データは、ソーシャル・グラフの１つもしくは複数のノードに対応し、ソーシャル・グラフは複数のユーザ・ノード及びコンセプト・ノード及び前記ノードを接続するエッジを含み、各ユーザ・ノードはソーシャル・ネットワーキング・システムのユーザに対応し、各コンセプト・ノードはソーシャル・ネットワーキング・システムのコンセプトに対応する、請求項１５に記載のシステム。
【請求項１９】
前記テキスト文字列は、自然言語の話法で構成される、請求項１５に記載のシステム。
【請求項２０】
前記テキスト文字列は、前記構造化ドキュメントのテキストコンテンツに基づいて構成される、請求項１５に記載のシステム。
【請求項２１】
前記テキスト文字列は、前記ソーシャル・グラフ内の前記ノードの各々とユーザに対応するユーザ・ノードとの間の分離度に基づいて構成される、請求項４に記載の方法。
【請求項２２】
前記テキスト文字列は、前記ソーシャル・グラフ内の前記ノードの各々とユーザに対応するユーザ・ノードとの間のソーシャル・グラフ親和性に基づいて構成される、請求項４に記載の方法。
【請求項２３】
前記クライアント・コンピューティング・デバイスのネットワークの接続タイプまたは前記特定の画像をホストするサーバのネットワーク状態に基づいて、前記特定の画像を提示するための命令を前記クライアント・コンピューティング・デバイスに送信する工程をさらに含む、請求項１に記載の方法。
【請求項２４】
ユーザに関連するアクセス容易性要件に基づいて前記特定の画像を提示するための命令を前記クライアント・コンピューティング・デバイスに送信する工程をさらに含む、請求項１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この開示は、一般にユーザ・インタフェースに関する。
【背景技術】
【０００２】
ソーシャル・ネットワーキング・ウェブサイトを含むソーシャル・ネットワーキング・システムは、そのユーザ（人または組織）がソーシャル・ネットワーキング・システムと、またソーシャル・ネットワーキング・システムを通じて互いに対話することを可能にする。ソーシャル・ネットワーキング・システムは、ユーザからの入力と共に、ソーシャル・ネットワーキング・システム内でそのユーザに関連付けられているユーザ・プロフィールを作成し記憶する。ユーザ・プロフィールは、人口統計情報、通信チャネル情報、およびユーザの個人的関心に関する情報を含んでもよい。また、ソーシャル・ネットワーキング・システムは、ユーザからの入力と共に、ソーシャル・ネットワーキング・システムの他のユーザとのユーザの関係の記録を作成および記憶し、サービス（たとえば、ウォール投稿、写真の共有、イベントの主催、メッセージング、ゲーム、または広告）を提供し、ユーザ間またはユーザの間でのソーシャル対話を容易にする。
【０００３】
ソーシャル・ネットワーキング・システムは、１または複数のネットワークを通じて、そのサービスに関係するコンテンツまたはメッセージをユーザの移動体コンピューティング・デバイスまたは他のコンピューティング・デバイスに送信する。ユーザは、ソーシャル・ネットワーキング・システム内のそのユーザのユーザ・プロフィールおよび他のデータにアクセスするために、ユーザの移動体コンピューティング・デバイスまたは他のコンピューティング・デバイス上にソフトウェア・アプリケーションをインストールしてもよい。ソーシャル・ネットワーキング・システムは、ユーザに接続された他のユーザの集約されたストーリのニュースフィードなど、コンテンツ・オブジェクトのパーソナライズされたセットを生成し、ユーザに対して表示してもよい。
【発明の概要】
【０００４】
特定の実施形態は、ウェブ・ページに含まれる画像の代替テキストを動的に作成するための方法を説明する。１つもしくは複数のサーバは、クライアント・コンピューティング・デバイスから画像を含む構造化ドキュメントに対する要求を受信する。サーバは、画像と関連付けられたデータにアクセスする。サーバは、画像と関連付けられたデータに基づいて、画像に対応するとともにクライアント・コンピューティング・デバイスによって可聴的に読み出されるように構成されたテキスト文字列を作成する。サーバは、提示のためにテキスト文字列を有する構造化ドキュメントをクライアント・コンピューティング・デバイスに送信する。
【図面の簡単な説明】
【０００５】
【図１】ソーシャル・ネットワーキング・システムと関連する例示的なネットワーク環境を示す。
【図２】例示的なソーシャル・グラフを示す。
【図３】構造化ドキュメントに含まれる画像の代替テキストを動的に作成するための例示的な方法を示す。
【図４】例示的なコンピュータ・システムを示す。
【発明を実施するための形態】
【０００６】
図１は、ソーシャル・ネットワーキング・システムに関連付けられている例示的なネットワーク環境１００を示す。ネットワーク環境１００は、互いにネットワーク１１０によって接続されたユーザ１０１、クライアント・システム１３０、ソーシャル・ネットワーキング・システム１６０、およびサードパーティ・システム１７０を含む。図１は、ユーザ１０１、クライアント・システム１３０、ソーシャル・ネットワーキング・システム１６０、サードパーティ・システム１７０、およびネットワーク１１０の特定の構成を示すが、この開示は、ユーザ１０１、クライアント・システム１３０、ソーシャル・ネットワーキング・システム１６０、サードパーティ・システム１７０、およびネットワーク１１０の任意の好適な構成を企図する。限定するものとしてではなく一例として、クライアント・システム１３０、ソーシャル・ネットワーキング・システム１６０、およびサードパーティ・システム１７０の２以上は、ネットワーク１１０をバイパスして互いに直接的に接続されてもよい。別の例として、クライアント・システム１３０、ソーシャル・ネットワーキング・システム１６０、およびサードパーティ・システム１７０の２以上が、全体として、または部分的に互いに物理的に、または論理的に同じ場所にあってもよい。さらに、図１は、特定の数のユーザ１０１、クライアント・システム１３０、ソーシャル・ネットワーキング・システム１６０、サードパーティ・システム１７０、およびネットワーク１１０を示すが、この開示は、任意の好適な数のユーザ１０１、クライアント・システム１３０、ソーシャル・ネットワーキング・システム１６０、サードパーティ・システム１７０、およびネットワーク１１０を企図する。限定するものとしてではなく一例として、ネットワーク環境１００は、複数のユーザ１０１、クライアント・システム１３０、ソーシャル・ネットワーキング・システム１６０、サードパーティ・システム１７０、およびネットワーク１１０を含んでもよい。
【０００７】
特定の実施形態では、ユーザ１０１は、ソーシャル・ネットワーキング・システム１６０と、またはソーシャル・ネットワーキング・システム１６０を通じて対話、すなわち通信する個人（人間のユーザ）、エンティティ（たとえば、企業、事業者、またはサードパーティ・アプリケーション）、または（たとえば、個人またはエンティティの）グループであってよい。特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、オンライン・ソーシャル・ネットワークをホストするネットワークアドレス指定可能なコンピューティング・システムであってよい。ソーシャル・ネットワーキング・システム１６０は、たとえばユーザプロフィール・データ、コンセプトプロフィール・データ、ソーシャル・グラフ情報、またはオンライン・ソーシャル・ネットワークに関係する他の好適なデータなど、ソーシャル・ネットワーキング・データを生成、記憶、受信、および送信する。ソーシャル・ネットワーキング・システム１６０は、ネットワーク環境１００の他の構成要素によって、直接的に、またはネットワーク１１０を通じてアクセスされてもよい。特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、ユーザ１０１がたとえば適切なプライバシ設定を設定することによってなど、自分達のアクションをソーシャル・ネットワーキング・システム１６０によって記録させる、または他のシステム（たとえば、サードパーティ・システム１７０）と共有させることについてオプトインまたはオプトアウトすることを可能にする認可サーバ（または他の適切な構成要素）を含んでもよい。ユーザのプライバシ設定は、そのユーザに関連付けられているどの情報が記録されるか、そのユーザに関連付けられている情報がどのように記録されるか、そのユーザに関連付けられている情報がいつ記録されるか、そのユーザに関連付けられている情報を誰が記録するか、そのユーザに関連付けられている情報が誰と共有されるか、およびそのユーザに関連付けられている情報が何の目的で記録され共有されるかを決定することができる。認可サーバは、ブロッキング、データのハッシュ化、匿名化、または他の適切な技術を通じて、ソーシャル・ネットワーキング・システム３０のユーザの１以上のプライバシ設定を適切に実施するために用いられる。特定の実施形態では、サードパーティ・システム１７０は、ウェブサイトまたはアプリケーションをホストするネットワークアドレス指定可能なコンピューティング・システムであってよい。サードパーティ・システム１７０は、たとえば、ウェブ・ページ、テキスト、画像、映像、オーディオ、またはアプリケーションなど、サードパーティ・システム・データを生成、記憶、受信、および送信する。サードパーティ・システム１７０は、ネットワーク環境１００の他の構成要素によって、直接的に、またはネットワーク１１０を通じてアクセスされてもよい。特定の実施形態では、１または複数のユーザ１０１が１または複数のクライアント・システム１３０を使用し、ソーシャル・ネットワーキング・システム１６０またはサードパーティ・システム１７０にアクセスし、データを送り、それらからデータを受信してもよい。クライアント・システム１３０は、ソーシャル・ネットワーキング・システム１６０またはサードパーティ・システム１７０に直接的に、ネットワーク１１０を通じて、またはサードパーティ・システムを通じてアクセスしてもよい。限定するものとしてではなく一例として、クライアント・システム１３０は、サードパーティ・システム１７０にソーシャル・ネットワーキング・システム１６０を通じてアクセスしてもよい。クライアント・システム１３０は、たとえばパーソナル・コンピュータ、ラップトップ・コンピュータ、携帯電話、スマートフォン、またはタブレット・コンピュータなど、任意の好適なコンピューティング・デバイスであってよい。
【０００８】
この開示は、任意の好適なネットワーク１１０を企図する。限定するものとしてではなく一例として、ネットワーク１１０の１または複数の部分は、アドホック・ネットワーク、イントラネット、エクストラネット、仮想プライベート・ネットワーク（ＶＰＮ）、ローカル・エリア・ネットワーク（ＬＡＮ）、無線ＬＡＮ（ＷＬＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、無線ＷＡＮ（ＷＷＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、インターネットの一部分、公衆交換電話網（ＰＳＴＮ）の一部分、携帯電話ネットワーク、またはこれらの２以上の組合せを含んでもよい。ネットワーク１１０は、１または複数のネットワーク１１０を含んでもよい。
【０００９】
リンク１５０は、クライアント・システム１３０、ソーシャル・ネットワーキング・システム１６０、およびサードパーティ・システム１７０を通信ネットワーク１１０に、または互いに接続する。この開示は、任意の好適なリンク１５０を企図する。特定の実施形態では、１または複数のリンク１５０は、１または複数の有線（たとえば、デジタル加入者線（ＤＳＬ）またはＤＯＣＳＩＳ（Ｄａｔａ  Ｏｖｅｒ  Ｃａｂｌｅ  Ｓｅｒｖｉｃｅ  Ｉｎｔｅｒｆａｃｅ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ）など）、無線（たとえば、Ｗｉ−ＦｉまたはＷｉＭＡＸ（Ｗｏｒｌｄｗｉｄｅ  ｉｎｔｅｒｏｐｅｒａｂｉｌｉｔｙ  ｆｏｒ  Ｍｉｃｒｏｗａｖｅ  Ａｃｃｅｓｓ）など）、または光（たとえば、同期光ネットワーク（ＳＯＮＥＴ）または同期デジタル・ハイアラーキ（ＳＤＨ）など）リンクを含む。特定の実施形態では、１または複数のリンク１５０は、それぞれ、アドホック・ネットワーク、イントラネット、エクストラネット、ＶＰＮ、ＬＡＮ、ＷＬＡＮ、ＷＡＮ、ＷＷＡＮ、ＭＡＮ、インターネットの一部分、ＰＳＴＮの一部分、セルラ技術ベースのネットワーク、衛星通信技術ベースのネットワーク、別のリンク１５０、または２以上のそのようなリンク１５０の組合せを含む。リンク１５０は、必ずしもネットワーク環境１００全体を通じて同じであることを必要としない。１または複数の第１のリンク１５０は、１または複数の点で１または複数の第２のリンク１５０と異なってもよい。
【００１０】
図２は、例示的なソーシャル・グラフ２００を示す。特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、１または複数のソーシャル・グラフ２００を１または複数のデータ・ストア内に記憶する。特定の実施形態では、ソーシャル・グラフ２００は、複数のノード（複数のユーザ・ノード２０２または複数のコンセプト・ノード２０４を含んでもよい）と、それらのノードを接続する複数のエッジ２０６とを含んでもよい。図２に示されている例示的なソーシャル・グラフ２００は、説明のために、２次元の視覚マップ表現で示されている。特定の実施形態では、ソーシャル・ネットワーキング・システム１６０、クライアント・システム１３０、またはサードパーティ・システム１７０は、適切な用途のためにソーシャル・グラフ２００および関連するソーシャル・グラフ情報にアクセスする。ソーシャル・グラフ２００のノードおよびエッジは、データ・オブジェクトとして、たとえばデータ・ストア（ソーシャル・グラフ・データベースなど）内に記憶されてもよい。そのようなデータ・ストアは、ソーシャル・グラフ２００のノードまたはエッジの、１または複数の検索可能または照会可能なインデックスを含んでもよい。
【００１１】
特定の実施形態では、ユーザ・ノード２０２は、ソーシャル・ネットワーキング・システム１６０のユーザに対応する。限定するものとしてではなく一例として、ユーザは、ソーシャル・ネットワーキング・システム１６０と、またはソーシャル・ネットワーキング・システム１６０を通じて対話または通信する個人（人間のユーザ）、エンティティ（たとえば、企業、事業者、またはサードパーティ・アプリケーション）、または（たとえば、個人またはエンティティの）グループであってよい。特定の実施形態では、ユーザがアカウントをソーシャル・ネットワーキング・システム１６０に登録するとき、ソーシャル・ネットワーキング・システム１６０は、そのユーザに対応するユーザ・ノード２０２を作成し、そのユーザ・ノード２０２を１または複数のデータ・ストア内に記憶する。本明細書に記載のユーザおよびユーザ・ノード２０２は、適切な場合、登録されたユーザ、および登録されたユーザに関連付けられているユーザ・ノード２０２に及ぶ。それに加えて、または代替として、本明細書に記載のユーザおよびユーザ・ノード２０２は、適切な場合、ソーシャル・ネットワーキング・システム１６０に登録しなかったユーザに及ぶ。特定の実施形態では、ユーザ・ノード２０２は、ユーザによって提供された情報、またはソーシャル・ネットワーキング・システム１６０を含む様々なシステムによって収集された情報に関連付けられてもよい。限定するものとしてではなく一例として、ユーザは、自分の名前、プロフィール写真、連絡先情報、誕生日、性別、婚姻状態、家族状態、雇用、学歴、好み、関心、または他の人口統計情報を提供してもよい。特定の実施形態では、ユーザ・ノード２０２は、ユーザに関連付けられている情報に対応する１または複数のデータ・オブジェクトに関連付けられてもよい。特定の実施形態では、ユーザ・ノード２０２は、１または複数のウェブ・ページに対応してもよい。
【００１２】
特定の実施形態では、コンセプト・ノード２０４は、コンセプトに対応する。限定するものとしてではなく一例として、コンセプトは、場所（たとえば、映画館、レストラン、目印、または都市など）、ウェブサイト（たとえば、ソーシャル・ネットワーキング・システム１６０に関連付けられているウェブサイト、またはウェブアプリケーションサーバに関連付けられているサードパーティウェブサイトなど）、エンティティ（たとえば、人、事業者、グループ、スポーツチーム、または有名人など）、ソーシャル・ネットワーキング・システム１６０内、またはウェブアプリケーションサーバなど外部サーバ上に位置するリソース（たとえば、オーディオファイル、映像ファイル、デジタル写真、テキストファイル、構造化ドキュメント、またはアプリケーションなど）、実際の財産または知的財産（たとえば、彫刻、絵画、映画、ゲーム、楽曲、着想、写真、または書物など）、ゲーム、アクティビティ、着想もしくは理論、別の好適なコンセプト、または２以上のそのようなコンセプトに対応してもよい。コンセプト・ノード２０４は、ユーザによって提供されたコンセプトの情報、またはソーシャル・ネットワーキング・システム１６０を含む様々なシステムによって収集された情報に関連付けられてもよい。限定するものとしてではなく一例として、コンセプトの情報は、名前もしくはタイトル、１または複数の画像（たとえば、本の表紙の画像）、場所（たとえば、住所または地理的場所）、（ＵＲＬに関連付けられる）ウェブサイト、連絡先情報（たとえば、電話番号または電子メール・アドレス）、他の好適なコンセプト情報、またはそのような情報の任意の好適な組合せを含んでもよい。特定の実施形態では、コンセプト・ノード２０４は、コンセプト・ノード２０４に関連付けられている情報に対応する１または複数のデータ・オブジェクトに関連付けられてもよい。特定の実施形態では、コンセプト・ノード２０４は、１または複数のウェブ・ページに対応してもよい。
【００１３】
特定の実施形態では、ソーシャル・グラフ２００内のノードは、ウェブ・ページを表しても、ウェブ・ページによって表されてもよい（「プロフィール・ページ」と呼ばれる）。プロフィール・ページは、ソーシャル・ネットワーキング・システム１６０によってホストされ、またはそこからアクセス可能であってもよい。また、プロフィール・ページは、サードパーティ・システム１７０に関連付けられているサードパーティウェブサイト上でホストされてもよい。限定するものとしてではなく一例として、特定の外部ウェブ・ページに対応するプロフィール・ページは、その特定の外部ウェブ・ページであってもよく、プロフィール・ページが、特定のコンセプト・ノード２０４に対応してもよい。プロフィール・ページは、他のユーザのすべてまたは選択されたサブセットによって閲覧可能であってもよい。限定するものとしてではなく一例として、ユーザ・ノード２０２は、対応するユーザがコンテンツを追加し、宣言をし、または他の方法で自分を表現する、対応するユーザプロフィールページを有してもよい。限定するものとしてではなく別の例として、コンセプト・ノード２０４は、１または複数のユーザがコンセプト・ノード２０４に対応するコンセプトに特に関連してコンテンツを追加し、宣言をし、またはユーザ自身を表現する、対応するコンセプトプロフィールページを有してもよい。
【００１４】
特定の実施形態では、コンセプト・ノード２０４は、サードパーティ・システム１７０によってホストされるサードパーティ・ウェブ・ページまたはリソースを表す。サードパーティ・ウェブ・ページまたはリソースは、要素の中でもとりわけ、コンテンツ、選択可能なアイコンもしくは他のアイコン、またはアクションもしくはアクティビティを表す（たとえば、ＪａｖａＳｃｒｉｐｔ（登録商標）、ＡＪＡＸ、またはＰＨＰコードにより実装される）他の対話可能なオブジェクトを含んでもよい。限定するものとしてではなく一例として、サードパーティ・ウェブ・ページは、「いいね」、「チェックイン」、「食べる」、「推奨する」、または別の好適なアクションまたはアクティビティなど、選択可能なアイコンを含んでもよい。サードパーティ・ウェブ・ページを閲覧するユーザは、アイコンの１つ（たとえば、「食べる」）を選択することによって、アクションを行う。これによって、クライアント・システム１３０は、ユーザのアクションを示すメッセージをソーシャル・ネットワーキング・システム１６０へ送信する。ソーシャル・ネットワーキング・システム１６０は、メッセージに応答して、ユーザに対応するユーザ・ノード２０２とサードパーティ・ウェブ・ページまたはリソースに対応するコンセプト・ノード２０４との間にエッジ（たとえば、「食べる」エッジ）を作成し、エッジ２０６を１または複数のデータ・ストア内に記憶する。
【００１５】
特定の実施形態では、ソーシャル・グラフ２００内の１対のノードが、１または複数のエッジ２０６によって互いに接続されてもよい。１対のノードを接続するエッジ２０６は、その対のノード間の関係を表す。特定の実施形態では、エッジ２０６は、１対のノード間の関係に対応する１または複数のデータ・オブジェクトまたは属性を含み、または表してもよい。限定するものとしてではなく一例として、第１のユーザは、第２のユーザが第１のユーザの「友達」であることを示してもよい。この示したことに応答して、ソーシャル・ネットワーキング・システム１６０は、「友達要求」を第２のユーザに送信してもよい。第２のユーザが「友達要求」を確認した場合、ソーシャル・ネットワーキング・システム１６０は、ソーシャル・グラフ２００内で第１のユーザのユーザ・ノード２０２を第２のユーザのユーザ・ノード２０２に接続するエッジ２０６を作成し、エッジ２０６をソーシャル・グラフ情報としてデータ・ストア１６４の１または複数に記憶してもよい。図２の例では、ソーシャル・グラフ２００は、ユーザ「Ａ」とユーザ「Ｂ」とのユーザ・ノード２０２間の友達関係を示すエッジ２０６と、ユーザ「Ｃ」とユーザ「Ｂ」とのユーザ・ノード２０２間の友達関係を示すエッジとを含む。本開示は特定のユーザ・ノード２０２を接続する特定の属性を有する特定のエッジ２０６について記載し示しているが、本開示は、ユーザ・ノード２０２を接続する任意の好適な属性を有する任意の好適なエッジ２０６を企図する。限定するものとしてではなく一例として、エッジ２０６は、友達関係、家族関係、仕事関係もしくは雇用関係、ファン関係、フォロワー関係、ビジタ関係、加入者関係、主従関係、相互的関係、非相互的関係、別の好適なタイプの関係、または２以上のそのような関係を表してもよい。さらに、本開示は一般にノードを接続されているものとして記載しているが、本開示は、ユーザまたはコンセプトも接続されているものとして記載している。本明細書では、接続されているユーザまたはコンセプトへの言及は、適切な場合、ソーシャル・グラフ２００内で１または複数のエッジ２０６によって接続されているユーザまたはコンセプトに対応するノードに及ぶ。
【００１６】
特定の実施形態では、ユーザ・ノード２０２とコンセプト・ノード２０４との間のエッジ２０６は、コンセプト・ノード２０４に関連付けられているコンセプトに向かってユーザ・ノード２０２に関連付けられているユーザによって行われる特定のアクションまたはアクティビティを表してもよい。限定するものとしてではなく一例として、図２に示されているように、ユーザは、コンセプトに対して「いいね」と表明することができ、コンセプトに「通った」、コンセプトを「プレイした」、「聴いた」、「調理した」、コンセプトに「勤務した」、またはコンセプトを「見た」のであり、コンセプトのそれぞれは、エッジタイプまたはサブタイプに対応する。コンセプト・ノード２０４に対応するコンセプトプロフィールページは、たとえば、選択可能な「チェックイン」アイコン（たとえば、クリッカ可能な「チェックイン」アイコン）または選択可能な「お気に入りに追加」アイコンを含んでもよい。同様に、ユーザがこれらのアイコンをクリックした後、ソーシャル・ネットワーキング・システム１６０は、それぞれのアクションに対応するユーザのアクションに応答して「お気に入り」エッジ、または「チェックイン」エッジを作成する。限定するものとしてではなく別の例として、ユーザ（ユーザ「Ｃ」）は、特定のアプリケーション（オンラインミュージックアプリケーションであるＳＰＯＴＩＦＹ）を使用して特定の楽曲（「イマジン」）を聴く。この場合には、ソーシャル・ネットワーキング・システム１６０は、ユーザに対応するユーザ・ノード２０２と楽曲およびアプリケーションに対応するコンセプト・ノード２０４との間に「聴いた」エッジ２０６および「使用した」エッジ（図２に図示）を作成し、ユーザがその楽曲を聞き、そのアプリケーションを使用したことを示す。さらに、ソーシャル・ネットワーキング・システム１６０は、楽曲およびアプリケーションに対応するコンセプト・ノード２０４間に「プレイした」エッジ２０６（図２に図示）を作成し、特定の楽曲が特定のアプリケーションによってプレイされたことを示す。この場合には、「プレイした」エッジ２０６は、外部アプリケーション（ＳＰＯＴＩＦＹ）によって外部オーディオファイル（楽曲「イマジン」）に対して行われたアクションに対応する。本開示は、ユーザ・ノード２０２とコンセプト・ノード２０４とを接続する特定の属性を有する特定のエッジ２０６について記載しているが、本開示は、ユーザ・ノード２０２とコンセプト・ノード２０４とを接続する任意の好適な属性を有する任意の好適なエッジ２０６を企図する。さらに、本開示は、ユーザ・ノード２０２とコンセプト・ノード２０４の間の単一の関係を表すエッジについて記載しているが、本開示は、ユーザ・ノード２０２とコンセプト・ノード２０４との間の１または複数の関係を表すエッジを企図する。限定するものとしてではなく一例として、エッジ２０６は、ユーザが「いいね」と表明したこと、および特定のコンセプトを使用したことの両方を表してもよい。あるいは、別のエッジ２０６が、ユーザ・ノード２０２とコンセプト・ノード２０４（図２に示されているように、ユーザ「Ｅ」に関するユーザ・ノード２０２と「ＳＰＯＴＩＦＹ」に関するコンセプト・ノード２０４）との間の関係の各タイプ（または単一の関係の複数）を表してもよい。
【００１７】
特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、ソーシャル・グラフ２００内でユーザ・ノード２０２とコンセプト・ノード２０４との間にエッジ２０６を作成する。限定するものとしてではなく一例として、（たとえば、ウェブブラウザまたはユーザのクライアント・システム１３０によってホストされる専用アプリケーションを使用することによってなど）コンセプトプロフィールページを閲覧するユーザは、「いいね」アイコンをクリックまたは選択することによって、ユーザがコンセプト・ノード２０４によって表されたコンセプトに対して「いいね」と表明することを示す。これによって、ユーザのクライアント・システム１３０は、コンセプトプロフィールページに関連付けられているコンセプトに対してユーザが「いいね」と表明することを示すメッセージをソーシャル・ネットワーキング・システム１６０へ送信する。ソーシャル・ネットワーキング・システム１６０は、そのメッセージに応答して、ユーザとコンセプト・ノード２０４との間の「いいね」エッジ２０６によって示されているように、ユーザに関連付けられているユーザ・ノード２０２とコンセプト・ノード２０４との間にエッジ２０６を作成してもよい。特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、エッジ２０６を１または複数のデータ・ストア内に記憶してもよい。特定の実施形態では、エッジ２０６は、特定のユーザ・アクションに応答してソーシャル・ネットワーキング・システム１６０によって自動的に形成されてもよい。限定するものとしてではなく一例として、第１のユーザが写真をアップロードし、映画を見たか、または楽曲を聴いた場合、エッジ２０６は、第１のユーザに対応するユーザ・ノード２０２とそれらのコンセプトに対応するコンセプト・ノード２０４との間に形成されてもよい。本開示は、特定のエッジ２０６を特定の方法で形成することについて記載しているが、本開示は、任意の好適なエッジ２０６を任意の好適な方法で形成することを企図する。
【００１８】
さらに、任意の２つのノード間の分離度は、一方のノードから他方のノードにソーシャル・グラフを横断するために必要とされるホップ（またはエッジ）の最小数として定義される。２つのノード間の分離度は、ソーシャル・グラフ内の２つのノードによって表されるユーザ間またはコンセプト間の関連性の尺度と考えることができる。
【００１９】
特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、互いについて様々なソーシャルグラフ・エンティティのソーシャル・グラフ親和性（本明細書では「親和性」と呼ばれる）を決定してよい。親和性は、ユーザ、コンセプト、コンテンツ、アクション、広告、オンライン・ソーシャル・ネットワークに関連付けられている他のオブジェクト、またはそれらの任意の適切な組み合わせなど、オンライン・ソーシャル・ネットワークに関連付けられている特定のオブジェクト間における関係の強さまたは関心のレベルを表すことができる。また、親和性は、サードパーティ・システム１７０または他の適切なシステムに関連付けられているオブジェクトに関して決定されてもよい。各ユーザ、主題、またはコンテンツのタイプについて、ソーシャルグラフ・エンティティに対する総合親和性が確立されてもよい。総合親和性は、ソーシャルグラフ・エンティティに関連付けられているアクションまたは関係の継続的なモニタリングに基づき、変化し得る。本開示では特定の方式による特定の親和性の決定について記載するが、本開示では任意の適切な方式による任意の適切な親和性の決定が想定される。
【００２０】
特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、親和性係数（本明細書では「係数」と呼ばれる）を用いてソーシャル・グラフ親和性を測定または定量してよい。この係数は、オンライン・ソーシャル・ネットワークに関連付けられている特定のオブジェクト間の関係の強さを表してよい、または定量してよい。また、この係数は、ユーザが特定のアクションを行う予測される確率を測定する確率または関数を表してもよく、この確率または関数は、そのアクションについてのそのユーザの関心に基づく。このようにして、ユーザの将来のアクションは、ユーザの以前のアクションに基づいて予測されることができ、その係数は少なくとも部分的にはユーザのアクションの履歴により計算され得る。係数は、オンライン・ソーシャル・ネットワークの内外の任意の数のアクションを予測するために用いられてよい。限定ではなく一例として、これらのアクションは、メッセージの送信、コンテンツのポスト、またはコンテンツに対するコメントなど、様々なタイプの通信、プロフィール・ページ、メディア、または他の適切なコンテンツのアクセスまたは閲覧など、様々なタイプの観察アクション、同じグループにある、同じ写真にタグ付けされる、同じ場所においてチェックインされる、もしくは同じイベントに出席する、または他の適切なアクションなど、２つ以上のソーシャルグラフ・エンティティに関する様々なタイプの同時発生情報、または他の適切なアクションを含んでよい。本開示では特定の方式による特定の親和性の測定について記載するが、本開示では任意の適切な方式による親和性の測定が想定される。
【００２１】
特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、係数を計算するために様々な因子を用いてよい。これらの因子は、例えば、ユーザ・アクション、オブジェクト間の関係のタイプ、場所情報、他の適切な因子、またはそれらの任意の組み合わせを含んでよい。特定の実施形態では、係数を計算するとき、様々な因子に異なる重み付けを行ってもよい。各因子の重みは静的であってもよく、例えば、ユーザ、関係のタイプ、アクションのタイプ、ユーザの場所などによって変化してもよい。因子のための格付け、そのユーザに対する総合的な係数を決定するべく、それらの重みにしたがって組み合わせられてもよい。限定ではなく一例として、特定のユーザ・アクションには格付けおよび重みの両方が割り当てられる一方、その特定のユーザ・アクションに関連付けられている関係には、格付けと相互に関連する重みとが割り当てられる（例えば、したがって重みが計１００％になる）。特定のオブジェクトに対するユーザの係数を計算するために、そのユーザのアクションに割り当てられた格付けが、例えば、総合的な係数の６０％を含む一方、そのユーザとそのオブジェクトとの間の関係は、総合的な係数の４０％を含んでもよい。特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、係数を計算するために用いられる様々な因子の重みを決定するときに、例えば、情報がアクセスされてからの時間、減衰因子、アクセスの頻度、情報に対する関係またはそれに関する情報がアクセスされたオブジェクトに対する関係、オブジェクトに接続されたソーシャルグラフ・エンティティに対する関係、ユーザ・アクションの短期的または長期的な平均、ユーザ・フィードバック、他の適切な変数、またはそれらの任意の組み合わせなど、様々な変数を考慮してもよい。限定ではなく一例として、係数は、係数を計算するとき、より最近のアクションがより関連性を有するように、特定のアクションによって提供される信号の強さを時間とともに減衰させる減衰因子を含んでもよい。格付けおよび重みは、その係数が基づくアクションの継続的なトラッキングに基づいて、継続的に更新されてもよい。任意のタイプのプロセスまたはアルゴリズムが、各因子およびそれらの因子に割り当てられる重みの格付けの割当、結合、平均化などに用いられてよい。特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、履歴のアクションおよび過去のユーザ応答、またはデータを様々なオプションに晒し応答を測定することによってユーザから集められたデータに基づきトレーニングされた機械学習アルゴリズムを用いて、係数を決定してもよい。本開示では特定の方式による特定の係数の計算について記載するが、本開示では任意の適切な方式による係数の計算が想定される。
【００２２】
特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、ユーザのアクションに基づき係数を計算してもよい。ソーシャル・ネットワーキング・システム１６０は、オンライン・ソーシャル・ネットワーク上、サードパーティ・システム１７０上、他の適切なシステム上、またはそれらの任意の組み合わせ上において、そのようなアクションを監視してよい。任意の適切なタイプのユーザ・アクションのトラッキングまたは監視が行われてよい。典型的なユーザ・アクションには、プロフィール・ページを閲覧すること、コンテンツを作成またはポストすること、コンテンツと対話すること、グループに参加すること、イベントへの参加をリストまたは確認すること、場所にチェックインすること、特定のページに「いいね」と表明すること、ページを作成すること、およびソーシャル・アクションを行う他のタスクを実行することが含まれる。特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、特定のタイプのコンテンツを有するユーザのアクションに基づき、係数を計算してよい。コンテンツは、オンライン・ソーシャル・ネットワーク、サードパーティ・システム１７０、または別の適切なシステムに関連付けられてよい。コンテンツは、ユーザ、プロフィール・ページ、ポスト、ニュース・ストーリ、ヘッドライン、インスタント・メッセージ、チャット・ルーム会話、電子メール、広告、写真、動画、音楽、他の適切なオブジェクト、またはそれらの任意の組み合わせを含んでよい。ソーシャル・ネットワーキング・システム１６０は、ユーザのアクションを、そのアクションのうちの１つ以上が主題、コンテンツ、他のユーザなどに対する親和性を示すか否かを判定するために分析してよい。限定ではなく一例として、ユーザが、「コーヒー」またはその変形に関係するコンテンツを頻繁にポストする場合、ソーシャル・ネットワーキング・システム１６０は、ユーザがコンセプト「コーヒー」に関して高い係数を有すると決定してもよい。特定のアクションまたはアクションのタイプは、他のアクションよりも大きな重み、より高い格付け、またはその両方を割り当てられ、これが総合的な計算された係数に影響を与えてもよい。限定ではなく一例として、第１のユーザが第２のユーザに電子メールを送る場合、そのアクションに対する重みまたは格付けは、第１のユーザが単に第２のユーザのユーザ・プロファイル・ページを閲覧する場合よりも高くてもよい。
【００２３】
特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、特定のオブジェクトの間の関係のタイプに基づき係数を計算してもよい。ソーシャル・グラフ２００を参照すると、ソーシャル・ネットワーキング・システム１６０は、係数を計算するとき、特定のユーザ・ノード２０２およびコンセプト・ノード２０４を接続するエッジ２０６の数および／またはタイプを分析してもよい。限定ではなく一例として、配偶者タイプのエッジ（２人のユーザが結婚していることを表す）によって接続されているユーザ・ノード２０２は、友達タイプのエッジによって接続されているユーザ・ノード２０２より高い係数を割り当てられてもよい。換言すれば、特定のユーザのアクション及び関係に割り当てられた重みに応じて、総合親和性は、ユーザの友達に関するコンテンツに対するよりもユーザの配偶者に関するコンテンツに対してより高くなるように決定されてもよい。特定の実施形態では、ユーザが別のオブジェクトと有する関係は、そのオブジェクトについての係数の計算に関して重みおよび／またはユーザのアクションの格付けに影響を与えてもよい。限定ではなく一例として、ユーザが第１の写真にタグ付けされているが、第２の写真にいいねと表明しかしない場合、コンテンツに対してタグ付けタイプの関係を有することにはコンテンツに対していいねタイプの関係を有するよりも高い重みおよび／または格付けが割り当てられることから、ソーシャル・ネットワーキング・システム１６０は、ユーザが第２の写真より第１の写真に関して高い係数を有すると決定してもよい。特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、１以上の第２のユーザが特定のオブジェクトに対して有する関係に基づき、第１のユーザのための係数を計算してもよい。換言すれば、他のユーザがオブジェクトに対して有する接続および係数は、そのオブジェクトに対する第１のユーザの係数に影響を与えてもよい。限定ではなく一例として、第１のユーザが１以上の第２のユーザに接続されるか、１以上の第２のユーザに対する高い係数を有し、それらの第２のユーザが特定のオブジェクトに接続されるか、特定のオブジェクトに対する高い係数を有する場合、ソーシャル・ネットワーキング・システム１６０は、その特定のオブジェクトに対して第１のユーザが比較的高い係数を有するべきであると決定してもよい。特定の実施形態では、係数は特定のオブジェクト間の隔たりの程度に基づいてもよい。係数が低いほど、ソーシャル・グラフ２００において第１のユーザに間接的に接続されているユーザのコンテンツ・オブジェクトへの関心を第１のユーザが共有する見込みが減少することを表してもよい。限定ではなく一例として、ソーシャル・グラフ２００においてより近くにある（すなわち、より隔たりの程度が小さい）ソーシャルグラフ・エンティティ同士は、ソーシャル・グラフ２００においてより遠くにあるエンティティ同士よりも高い係数を有してもよい。
【００２４】
特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、場所情報に基づき係数を計算してもよい。互いに地理的に近くにあるオブジェクト同士は、より離れたオブジェクト同士よりも、より関連している、または互いにより高い関心を有すると考えられてよい。特定の実施形態では、特定のオブジェクトに対するユーザの係数は、そのユーザに関連付けられている現在の場所（またはそのユーザのクライアント・システム１３０の場所）に対するそのオブジェクトの場所の近接度に基づいてもよい。第１のユーザは、第１のユーザのより近くにある他のユーザまたはコンセプトに、より高い関心を有し得る。限定ではなく一例として、ユーザが空港から１マイル（約１．６ｋｍ）に位置し、ガソリン・スタンドから２マイル（約３．２ｋｍ）に位置する場合、ソーシャル・ネットワーキング・システム１６０は、そのユーザに対する空港の近接度に基づき、ユーザがガソリン・スタンドよりも空港に対しより高い係数を有すると決定してもよい。
【００２５】
特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、係数情報に基づきユーザに関する特定のアクションを行ってもよい。係数を用いて、ユーザが特定のアクションを行うか否かを、そのアクションについてのそのユーザの関心に基づき予測することができる。係数は、広告、検索結果、ニュース・ストーリ、メディア、メッセージ、通知、または他の適切なオブジェクトなど、ユーザに対する任意のタイプのオブジェクトを生成または提示するときに用いられてよい。また、適切な場合、係数は、そのようなオブジェクトのランクおよび順序を決定するためにも利用されて得る。このように、ソーシャル・ネットワーキング・システム１６０は、ユーザの関心および現在の状況に関連する情報を提供してもよく、それによって、それらがそのような関心を有する情報を見出す見込みを高める。特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、係数情報に基づきコンテンツを生成してもよい。コンテンツ・オブジェクトは、ユーザに特有の係数に基づき提供または選択されてもよい。限定ではなく一例として、係数はユーザに対するメディアを生成するために用いられてもよく、ユーザには、そのメディア・オブジェクトに関してそのユーザが高い総合係数を有するメディアが、提示される。限定ではなく別の一例として、限定ではなく一例として、係数はユーザに対する広告を生成するために用いられてもよく、ユーザには、その広告オブジェクトに関してそのユーザが高い総合係数を有する広告が、提示される。特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、係数情報に基づき検索結果を生成してもよい。特定のユーザのための検索結果は、問い合わせを行うユーザに関して検索結果に関連付けられている係数に基づき、得点またはランクを決定されてよい。限定ではなく一例として、より高い係数を有するオブジェクトに対応する検索結果は、より低い係数を有するオブジェクトに対応する結果よりも、検索結果のページにおいて、より高いランクを決定されてもよい。
【００２６】
特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、特定のシステムまたはプロセスからの係数の要求に応じて、係数を計算してもよい。ユーザが所与の状況において取り得る（あるいは対象となる）可能性の高いアクションを予測するために、任意のプロセスによって、ユーザの計算された係数が要求されてよい。また、この要求は、係数を計算するために用いられる様々な因子に用いる１組の重みを含んでもよい。この要求は、オンライン・ソーシャル・ネットワーク上で動作するプロセスから、サードパーティ・システム１７０から（例えば、ＡＰＩまたは他の通信チャンネルを介して）、または別の適切なシステムから届いてよい。要求に応じて、ソーシャル・ネットワーキング・システム１６０は、係数を計算してよい（または、係数が以前に計算され記憶されている場合、その係数情報にアクセスしてよい）。特定の実施形態では、ソーシャル・ネットワーキング・システム１６０は、特定のプロセスに関する親和性を測定してもよい。様々なプロセス（オンライン・ソーシャル・ネットワークに対して内外の両方）は、特定の１つのオブジェクトまたは複数のオブジェクトからなる組に対する係数を要求してもよい。ソーシャル・ネットワーキング・システム１６０は、親和性の尺度を要求した特定のプロセスに関連する親和性の尺度を提供してもよい。このように、各プロセスは、プロセスが親和性の尺度を用いる様々なコンテキストに適合する親和性の尺度を受信する。
【００２７】
ソーシャル・グラフ親和性および親和性係数に関して、特定の実施形態では、米国特許出願第１１／５０３０９３号（２００６年８月１１日提出）、米国特許出願第１２／９７７０２７号（２０１０年１２月２２日提出）、米国特許出願第１２／９７８２６５号（２０１０年１２月２３日受信）、および米国特許出願第１３／６３２８６９号、において開示されている１以上のシステム、構成要素、要素、機能、方法、動作、または工程を利用してよい。それらの文献の各々を引用によって本明細書に援用する。
【００２８】
ウェブ・ページなどの構造化ドキュメントは、ページレイアウトの情報、スクリプト、テキスト（例えば、ＡＳＣＩＩまたはＨＴＭＬ）等のページコンテンツ、メディアデータ（例えば、グラフィックス、写真、ビデオクリップ）、及び実行可能なコード・オブジェクト（例えば、ブラウザのウィンドウまたはブラウザのフレーム内で実行可能なゲーム）を含む。構造化ドキュメントは、ハイパーテキスト・マークアップ・ランゲージ（ＨＴＭＬ：Ｈｙｐｅｒｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）、エクステンシブル・マークアップ・ランゲージ（ＸＭＬ：Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）、エクステンシブル・ハイパーテキスト・マークアップ・ランゲージ（ＸＨＴＭＬ：Ｅｘｔｅｎｓｉｂｌｅ  Ｈｙｐｅｒｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）、ジャヴァスクリプト（ＪａｖａＳｃｒｉｐｔ）、ウェブジーエル（ＷｅｂＧＬ）、ＣＳＳアニメーション及びトランジション（ｔｒａｎｓｉｔｉｏｎｓ）を含むカスケーディング・スタイル・シート（ＣＳＳ：Ｃａｓｃａｄｉｎｇ  Ｓｔｙｌｅ  Ｓｈｅｅｔ）、及び高頻度のジャヴァ（Ｊａｖａ）などのランゲージ及び技術で具体化される。構造化ドキュメントは、構造化ドキュメント自身が多数の構造化ドキュメント及びコンテンツのリファレンスを含む。例えば、ウェブ・ページは、ユニフォーム・リソース・ロケーションズ（ＵＲＬｓ：Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｉｏｎｓ）、またはスクリプトコード（ｓｃｒｉｐｔ  ｃｏｄｅ）（例えば、ジャヴァスクリプト、ピーエイチピーＰＨＰ）、エイジャックス（ＡＪＡＸ））、もしくはその両方を組み込むことによって、ユーザイベント（例えば、マウスクリック、マウスオーバー）に応じて、グラフィカル・ユーザ・インタフェースにウェブ・ページを表示するアプリケーションにＵＲＬ及びスクリプトコードによって特定されるコンテンツを動的に取得させる１つもしくは複数のインライン・リファレンス（ｉｎｌｉｎｅ  ｒｅｆｅｒｅｎｃｅ）を含む。
【００２９】
ウェブ・ページなどの構造化ドキュメントは、ＨＴＭＬの〈ｉｍｇ〉タグを使用する画像を含む。その一方、〈ｉｍｇ〉タグも〈ｉｍｇ〉タグの代替属性を使用する代替テキストを含む。例えば、関連するＵＲＬ「ｗｗｗ．ｅｘａｍｐｌｅ．ｃｏｍ／ｐｉｃｔｕｒｅ．ｊｐｇ」と代替テキスト「ゴールデンゲートブリッジの写真（Ｐｉｃｔｕｒｅ  ｏｆ  Ｇｏｌｄｅｎ  Ｇａｔｅ  Ｂｒｉｄｇｅ）」とを有するゴールデンゲートブリッジの画像は、ウェブ・ページにおいて〈ｉｍｇ  ｓｒｃ＝”ｗｗｗ．ｅｘａｍｐｌｅ．ｃｏｍ／ｐｉｃｔｕｒｅ．ｊｐｇ”  ａｌｔ＝“Ｐｉｃｔｕｒｅ  ｏｆ  Ｇｏｌｄｅｎ  Ｇａｔｅ  Ｂｒｉｄｇｅ”〉として作成される。画像を表示に使用できない場合（例えば、画像のＵＲＬをホストするサーバが応答しない場合）、ウェブ・ページを表示するクライアント・コンピューティング・デバイスは、代替テキスト「ゴールデンゲートブリッジの写真」を表示する。
【００３０】
クライアント・コンピューティング・デバイスは、ウェブ・ページのテキストコンテンツ及び画像に対する代替テキストを（例えば、テキスト音声変換ソフトウェアプログラム、及びクライアント・コンピューティング・デバイスのスピーカを使用して）可聴的に読み出しつつ、画像を有するウェブ・ページを表示する。ウェブ・ページにおける画像の代替テキスト、及びウェブ・ページの他のテキストコンテンツを可聴的に読み出すことは、弱視者または視覚障害者（例えば、盲人）のユーザのアクセス容易性に関して有用である。例えば、上記のゴールデンゲートブジッジの画像を有するウェブ・ページを表示するクライアント・コンピューティング・デバイスは、ウェブ・ページの最初からテキストコンテンツを可聴的に読み出す。画像に到達すると同時に、クライアント・コンピューティング・デバイスは代替テキスト「ゴールデンゲートブリッジの写真」を可聴的に読み出す。このようにして、クライアント・コンピューティング・デバイスを使用する盲人は、ウェブ・ページのコンテンツを十分に知ることができる。ウェブ・ページを表示するクライアント・コンピューティング・デバイスを使用する盲人は、代替テキストがなくとも、ウェブ・ページにおける画像の前（及び後ろ）のテキストコンテンツと、テキストコンテンツ間において（画像の）ＵＲＬリンクの存在を示す可聴的に読み出された「リンク」とを聴き取り得る。
【００３１】
通常、ウェブ・ページにおける画像に対する代替テキストは固定されている。例えば、画像をホストするウェブサイトは画像の代替テキストを作成する。この代替テキストは、画像が存続している間、同じである。画像を有するウェブ・ページは、ウェブ・ページの他のコンテンツまたはウェブ・ページの閲覧者に関係なく、画像の代替テキストを直接的に含む。特定の実施形態は、ウェブ・ページに含まれる画像の代替テキストを動的に作成するための方法を説明する。特定の実施形態は、他にどのようなコンテンツがウェブ・ページに含まれているか等のコンテキスト情報か、またはウェブ・ページの閲覧者が誰であるかに基づいて、ウェブ・ページに含まれる画像の代替テキストを動的に作成する。
【００３２】
図３は、構造化ドキュメントに含まれる画像の代替テキストを動的に作成するための方法３００を示す。特定の実施形態は、構造化ドキュメントを提供する１つもしくは複数のサーバによって実行される（例えば、アプリケーションの）コンピューティング・プロセスによって具体化される。特定の実施形態は、上述したように、ソーシャル・ネットワーキング・システムの１つもしくは複数のサーバ・コンピューティング・デバイスによって実行されるコンピューティング・プロセスによって具体化される。
【００３３】
方法３００はステップ３１０において開始される。特定の実施形態においては、ステップ３１０において、ソーシャル・ネットワーキング・システムの１つもしくは複数のサーバは、クライアント・コンピューティング・デバイスから画像を含む構造化ドキュメントに対する要求を受信する。クライアント・コンピューティング・デバイスは、構造化ドキュメント（例えば、ウェブ・ページ）を表示するように構成されるデスクトップコンピュータ、ラップトップ・コンピュータ、タブレット・コンピュータ、スマートフォン、または任意の適切なクライアント・コンピューティング・デバイスである。クライアント・コンピューティング・デバイスは、特定のユーザ（例えば、構造化ドキュメントがサーバによって提供されるときの構造化ドキュメントの閲覧者）と関連付けられる。特定のユーザは、ソーシャル・ネットワーキング・システムのユーザである。画像は、任意の適切な形式（例えば、グラフィックス・インターチェンジ・フォーマット（Ｇｒａｐｈｉｃｓ  Ｉｎｔｅｒｃｈａｎｇｅ  Ｆｏｒｍａｔ）もしくはＧＩＦ形式、ジョイント・フォトグラフィック・エキスパート・グループ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）もしくはＪＰＥＧ形式、エクスチェンジャブル・イメージ・ファイル・フォーマット（Ｅｘｃｈａｎｇｅａｂｌｅ  Ｉｎｔｅｒｃｈａｎｇｅ  Ｆｏｒｍａｔ）もしくはＥｘｉｆ形式）の写真または任意の適切な画像ファイルである。画像は、ソーシャル・ネットワーキング・システムまたはサードパーティ・システムのデータ・ストアに記憶される。
【００３４】
特定の実施形態においては、画像はソーシャル・ネットワーキング・システムのソーシャル・グラフのコンセプト・ノードに対応している。画像に対応するコンセプト・ノードも画像と関連付けられた追加の情報を含む。例えば、コンセプト・ノードは、画像の作者（または出所）を含む。コンセプト・ノードは、画像の場所（例えば、場所の名前、一組の地理座標、郵便番号、など）を含む。コンセプト・ノードは、画像のタイムスタンプを含む。特定の実施形態は、画像に対応するコンセプト・ノードに含まれる任意の適切な情報を想定する。ソーシャル・ネットワーキング・システムは、ソーシャル・ネットワーキング・システムの１つもしくは複数のデータ・ストアに画像に対応するコンセプト・ノードを記憶する。
【００３５】
加えて、ソーシャル・グラフは、（画像に対応する）コンセプト・ノードを他のユーザまたはソーシャル・グラフのコンセプト・ノードに接続する１つもしくは複数のエッジを含む。例えば、ソーシャル・グラフはコンセプト・ノードをユーザ・ノードに接続するエッジを含み、ユーザ・ノードに対応するユーザを表すエッジは、コンセプト・ノードに対応する画像にタグ付けされる。ソーシャル・グラフは、コンセプト・ノードをユーザ・ノードに接続するエッジを含み、ユーザ・ノードに対応するユーザを表すエッジは、コンセプト・ノードに対応する画像にリンク付けする。ソーシャル・グラフは、（画像に対応する）コンセプト・ノードを（例えば、ソーシャル・ネットワーキング・システムのユーザによって）画像上に作成されたコメントを含む別のコンセプト・ノードに接続するエッジを含む。ソーシャル・グラフは、（画像に対応する）コンセプト・ノードを画像が関連づけられるイベントに対応する別のコンセプト・ノードに接続するエッジを含む。ソーシャル・グラフは、（画像に対応する）コンセプト・ノードを画像が属する写真アルバムに対応する別のコンセプト・ノードに接続するエッジを含む。特定の実施形態は、ソーシャル・グラフにおいて画像に対応するコンセプト・ノードに接続する任意の適切なエッジを想定している。ソーシャル・ネットワーキング・システムは、画像に対応するコンセプト・ノードに接続する１つもしくは複数のエッジをソーシャル・ネットワーキング・システムの１つもしくは複数のデータ・ストアに記憶する。
【００３６】
特定の実施形態においては、ステップ３２０で、サーバは、画像と関連付けられたデータ用のデータ・ストアにアクセスする。例えば、サーバは、作者、場所、タイムスタンプ、画像にタグ付けされた１人もしくは複数のユーザ、「いいね」の数、画像上に作成された１つもしくは複数のコメント、または画像を含むアルバムなど、画像と関連付けられたデータ用の、画像に対応するコンセプト・ノード、及び（上記したように）コンセプト・ノードを接続するエッジを記憶する１つもしくは複数のデータ・ストアにアクセスする。いくつかの実施形態においては、サーバは、画像と関連付けられたデータに関する画像のメタデータ（例えば、タイムスタンプ、コメント）にもアクセスする。サーバは、構造化ドキュメントの他のコンテンツ（例えば、テキストコンテンツ）に関してソーシャル・ネットワーキング・システム（またはサードパーティ・システム）の１つもしくは複数のデータ・ストアにもアクセスする。
【００３７】
特定の実施形態においては、ステップ３３０で、サーバは画像に対応するテキスト文字列（例えば、画像に関する代替テキスト）を作成する。テキスト文字列は、クライアント・コンピューティング・デバイスによって可聴的に読み出されるように構成されている。特定の実施形態においては、サーバは、画像と対応するテキスト文字列を自然言語の話法で作成する。特定の実施形態においては、サーバは、画像と関連付けられたデータの少なくともいくつかに少なくとも部分的に基づいてテキスト文字列を作成する。
【００３８】
例えば、画像と関連付けられたデータは、画像の作者（例えば、「ジョン（Ｊｏｈｎ）」）、画像の場所（例えば、「グランドキャニオン（Ｇｒａｎｄ  Ｃａｎｙｏｎ）」）、及び画像にタグ付けされた７人のユーザ（例えば、「Ａ」、「Ｂ」、「Ｃ」、「Ｄ」、「Ｅ」、及び「Ｇ」）を含む。サーバは、画像と関連付けられたデータに基づいて、「これはＡ、Ｂ、Ｃ、Ｆ、Ｅ、Ｆ、及びＧと一緒にいるジョンの写真である。（Ｔｈｉｓ  ｉｓ  Ｊｏｈｎ‘ｓ  ｐｈｏｔｏ  ｗｉｔｈ  Ａ，Ｂ，Ｃ，Ｄ，Ｅ，Ｆ，  ａｎｄ  Ｇ．）。この写真はグランドキャニオンで撮影された。（Ｔｈｅ  ｐｈｏｔｏ  ｗａｓ  ｔａｋｅｎ  ａｔ  Ｇｒａｎｄ  Ｃａｎｙｏｎ．）」などの画像に対応するテキスト文字列を英語の話法で作成する。
【００３９】
一実施形態においては、サーバによって作成されたテキスト文字列は、画像と関連付けられた１つもしくは複数のコメントを含む。例えば、パリのエトワール凱旋門（Ａｒｃ  ｄｅ  Ｔｒｉｏｍｐｈｅ）の画像と関連付けられたデータは、作者（「ビル（Ｂｉｌｌ）」）、画像にタグ付けされたユーザ（「マリー（Ｍａｒｒｙ）」）、「エトワール凱旋門」の場所、「シャンゼリゼ通りからのすばらしい眺め！（Ｇｒｅａｔ  ｖｉｅｗ  ｆｒｏｍ  Ａｖｅ  ｄｅｓ  Ｃｈａｍｐ−Ｒｌｙｓｅｅｓ！）」というコメントを含む。サーバは、「これはマリーと一緒にいるビルの写真である。（Ｔｈｉｓ  ｉｓ  Ｂｉｌｌ‘ｓ  ｐｈｏｔｏ  ｗｉｔｈ  Ｍａｒｙ．）。この写真はエトワール凱旋門で撮影され、「シャンゼリゼ通りからのすばらしい眺め！」というタイトルが付けられた。（Ｔｈｅ  ｐｈｏｔｏ  ｗａｓ  ｔａｋｅｎ  ａｔ  Ａｒｃ  ｄｅ  Ｔｒｉｏｍｐｈｅ，  ａｎｄ  ｅｎｔｉｔｌｅｄ  “Ｇｒｅａｔ  ｖｉｅｗ  ｆｒｏｍ  Ａｖｅ  ｄｅｓ  Ｃｈａｍｐ−Ｒｌｙｓｅｅｓ！”）」などの画像に対応する文字列でのコメントを含む。
【００４０】
特定の実施形態においては、画像と関連付けられたデータは、ソーシャル・グラフの１つもしくは複数のノード（ユーザ・ノードまたはコンセプト・ノード）に対応する。サーバは、ソーシャル・グラフにおける各ノードと特定のユーザに対応するユーザ・ノードとの間のソーシャル・グラフ近接度に基づいて、画像に対応するテキスト文字列を作成する。
【００４１】
特定の実施形態においては、サーバは、特定のユーザに対応するユーザ・ノードから特定の程度の離れた範囲内にあるソーシャル・グラフにおける１つもしくは複数のノード（ユーザ・ノードまたはコンセプト・ノード）と対応する画像と関連付けられたデータの一部のみを含む。例えば、上記の例示的なグランドキャニオンの画像においては、ユーザ「Ｄ」及び「Ｅ」は特定のユーザの第１の程度の友人であり、一方、他のユーザ（「Ａ」、「Ｂ」、「Ｃ」、「Ｆ」、及び「Ｇ」）はソーシャル・グラフにおいて第２の程度または第３程度以上特定のユーザから離れている。サーバは、「これはＤ、Ｅ、及び他の５人と一緒にいるジョンの写真である。この写真はグランドキャニオンで撮影された。」など、テキスト文字列において特定のユーザの第１の程度の友人のみを含む。このように、クライアント・コンピューティング・デバイスによって特定のユーザ（即ち、構造化ドキュメントの閲覧者）により関連のある情報のみが、テキスト文字列に含まれ、かつ特定のユーザに対して可聴的に読み出されるように構成される。
【００４２】
特定の実施形態においては、サーバは、画像と関連付けられたデータからの各ノードと特定のユーザとの間のソーシャル・グラフ近接度に基づいて、画像に対応するテキスト文字列を作成する。例えば、上記の例示的なグランドキャニオンの画像においては、サーバは、ユーザ「Ａ」、「Ｂ」、「Ｃ」、「Ｄ」、「Ｅ」、「Ｆ」、及び「Ｇ」を、特定のユーザとのそれらユーザ個々の親和性係数）に基づいて順位付けする。ユーザの順位付けの順番は、「Ｅ」、「Ａ」、「Ｂ」、「Ｄ」、「Ｃ」、「Ｇ」、及び「Ｆ」である。サーバは、「これはＥ、Ａ、Ｂ、及び他の４人と一緒にいるジョンの写真である。この写真はグランドキャニオンで撮影された。」など、特定のユーザに関するテキスト文字列において、上位に順位付けされたユーザ（例えば、上位３位に順位付けされたユーザ）を含むようにテキスト文字列を作成する。このように、クライアント・コンピューティング・デバイスによって特定のユーザにより密接な情報のみが、テキスト文字列に含められ、かつ特定のユーザに対して可聴的に読み出されるように構成される。
【００４３】
特定の実施形態においては、サーバは、構造化ドキュメントのテキストコンテンツに基づいてテキスト文字列を作成する。サーバは、構造化ドキュメントのテキストコンテンツについての言語に基づいてテキスト文字列を作成する。例えば、構造化ドキュメントのテキストコンテンツのいくつかまたは全てがスペイン語である場合、サーバは、上記の例示的なグランドキャニオンの画像に関して、「これはＡ、Ｂ、Ｃ、Ｄ、Ｅ、Ｆ、及びＧと一緒にいるジョンの写真である。（Ｅｓｔａ  ｅｓ  ｌａ  ｆｏｔｏ  ｄｅ  Ｊｏｈｎ  ｃｏｎ  Ａ，Ｂ，Ｃ，Ｄ，Ｅ，Ｆ  ｙ  Ｇ．）。この写真はグランドキャニオンで撮影された。（Ｌａ  ｆｏｔｏ  ｆｕｅ  ｔｏｍａｄａ  ｅｎ  ｅｌ  Ｇｒａｎｄ  Ｃａｎｙｏｎ．）」など、スペイン語でテキスト文字列を作成する。
【００４４】
サーバは、構造化ドキュメントの他のコンテンツで言及されたテキスト文字列の情報を省略する。例えば、構造化ドキュメントは、上記の例示的なグランドキャニオンの画像を含む写真アルバム（またはイベント）を含む。アルバムの「グランドキャニオン」の場所（このように画像の場所）が、構造化ドキュメントにおいて写真アルバム（またはイベント）とともに記述された場合、サーバは場所の情報無しで、テキスト文字列（例えば、「これはＡ、Ｂ、Ｃ、Ｄ、Ｅ、Ｆ、及びＧと一緒にいるジョンの写真である。」）を作成する。画像と関連付けられたデータが構造化ドキュメントの他の部分におけるテキストによって記述されている場合、サーバは画像に対応する空テキスト文字列を作成する（または画像に対応するテキスト文字列の作成をスキップする）。
【００４５】
特定の実施形態においては、サーバは、クライアント・コンピューティング・デバイスのネットワーク状態に基づいてテキスト文字列を作成する。例えば、画像に対応するテキスト文字列は、表示のためにクライアント・コンピューティング・デバイスに送信される構造化ドキュメントの全体のサイズを増加させるため、クライアント・コンピューティング・デバイスがネットワーク接続のバンド幅が制限されている（例えば、携帯接続）場合、テキスト文字列のサイズを低減することは好ましい。特定の実施形態においては、サーバは、クライアント・コンピューティング・デバイスのネットワーク状態（例えば、携帯接続、Ｗｉ−Ｆｉ接続、またはイーサネット接続）を判定する。クライアント・コンピューティング・デバイスのネットワーク接続のバンド幅が携帯接続などにより制限されている場合、サーバは、構造化ドキュメントに含まれる画像に対応するテキスト文字列のより縮小版を作成する。
【００４６】
例えば、サーバは、画像にタグ付けされたユーザの数人のみを含む（または全く含まない）ことによって、上記の例示的なグランドキャニオンの画像に対応するテキスト文字列のより縮小版（例えば、「これはＤ及びＧと一緒にいるジョンの写真である。この写真はグランドキャニオンで撮影された。」、または「これはグランドキャニオンで撮影されたジョンの写真である。」）を作成する。サーバは、上記のように、タグ付けされた各ユーザと特定のユーザとの間のソーシャル・グラフ近接度に基づいて、画像にタグ付けされたユーザの数人のみを含むことによってテキスト文字列のより縮小版を作成する。
【００４７】
サーバは、画像の場所の情報を省略することによって、上記の例示的なグランドキャニオンの画像に対応するテキスト文字列のより縮小版（例えば、「これはＡ、Ｂ、Ｃ、Ｄ、Ｅ、Ｆ及びＧと一緒にいるジョンの写真である。」）も作成する。
【００４８】
一実施形態においては、構造化ドキュメントを表示するクライアント・コンピューティング・デバイスのネットワーク接続のバンド幅が制限されている場合、サーバは、構造化ドキュメントに含まれた画像に対応する空テキスト文字列を作成する（または画像に対応するテキストの文字列の作成をスキップする）。
【００４９】
特定の実施形態においては、ステップ３４０で、サーバは、特定のユーザに対する提示のために、テキスト文字列を有する構造化ドキュメントをクライアント・コンピューティング・デバイスに送信する。クライアント・コンピューティング・デバイスによってホストされるウェブブラウザ（または構造化ドキュメントもしくはウェブ・ページを表示するように構成された任意の適切なアプリケーション）は、構造化ドキュメントを表示し、クライアント・コンピューティング・デバイスによってホストされるテキスト音声変換プログラム（または任意の適切なアプリケーション）は、画像に対応するテキスト文字列を含む、構造化ドキュメントのテキストコンテンツを（例えば、クライアント・コンピューティング・デバイスのスピーカを介して）可聴的に読み出す。一実施形態においては、ウェブブラウザ（または別の適切なアプリケーション）は、テキスト文字列を構造化ドキュメントにおける画像と隣接して表示するか、または（例えば、画像に関する見出しとして）画像と重ねて表示する。ウェブブラウザは、特定のユーザによるユーザイベント（例えば、マウスクリックイベント、マウスホバーオーバーイベント）に応じて、テキスト文字列を画像と隣接して表示するか、または画像と重なるように表示する。
【００５０】
特定の実施形態は、図３の方法の１つもしくは複数の適切なステップを繰り返し得る。この開示は、図３の方法の特定のステップが特定の順序で行われるものとして説明し、図示するが、この開示は、任意の適切な順序で行われるものとして図３の方法の任意の適切なステップを想定する。加えて、この開示は、図３の方法の特定のステップを実行する特定のコンポーネント、デバイス、またはシステムを説明し、図示するが、この開示は、図３の方法の任意の適切なステップを実行するコンポーネント、デバイス、またはシステムの任意の適切な組み合わせを想定する。
【００５１】
図４は、例示的なコンピュータ・システム４００を示す。特定の実施形態では、１または複数のコンピュータ・システム４００は、本明細書に記載され、または示されている１または複数の方法の１または複数のステップを実施する。特定の実施形態では、１または複数のコンピュータ・システム４００は、本明細書に記載され、または示されている機能を提供する。特定の実施形態では、１または複数のコンピュータ・システム４００上で動作するソフトウェアは、本明細書に記載され、または示されている１または複数の方法の１または複数のステップを実施し、または本明細書に記載され、または示されている機能を提供する。特定の実施形態は、１または複数のコンピュータ・システム４００の１または複数の部分を含む。本明細書では、コンピュータ・システムに言及することは、適切な場合、コンピューティング・デバイスを包含してもよく、逆も同様である。さらに、コンピュータ・システムに言及することは、適切な場合、１または複数のコンピュータ・システムを包含してもよい。
【００５２】
この開示は、任意の好適な数のコンピュータ・システム４００を企図する。この開示は、任意の好適な物理形態をとるコンピュータ・システム４００を企図する。限定するものとしてではなく一例として、コンピュータ・システム４００は、組込みコンピュータ・システム、システム・オン・チップ（ＳＯＣ）、シングルボード・コンピュータ・システム（ＳＢＣ）（たとえば、コンピュータ・オン・モジュール（ＣＯＭ）またはシステム・オン・モジュール（ＳＯＭ）など）、デスクトップ・コンピュータ・システム、ラップトップもしくはノートブック・コンピュータ・システム、対話キオスク、メインフレーム、コンピュータ・システムのメッシュ、移動体電話、携帯情報端末（ＰＤＡ）、サーバ、タブレット・コンピュータ・システム、またはこれらの２以上の組合せであってよい。適切な場合、コンピュータ・システム４００は、１または複数のコンピュータ・システム４００を含んでもよく、一元的なものであっても分散型であってもよく、複数の場所に跨ってもよく、複数のマシンに跨ってもよく、複数のデータ・センタに跨ってもよく、クラウド内にあってもよく、クラウドは、１または複数のネットワーク内で１または複数のクラウド・コンポーネントを含んでもよい。適切な場合、１または複数のコンピュータ・システム４００は、実質的な空間的または時間的制限なしに、本明細書に記載され、または示されている１または複数の方法の１または複数のステップを実施してもよい。限定するものとしてではなく一例として、１つまたは複数のコンピュータ・システム４００は、リアルタイムで、またはバッチ・モードで、本明細書に記載され、または示されている１または複数の方法の１または複数のステップを実施してもよい。１または複数のコンピュータ・システム４００は、適切な場合、異なる時に、または異なる場所で、本明細書に記載され、または示されている１または複数の方法の１または複数のステップを実施してもよい。
【００５３】
特定の実施形態では、コンピュータ・システム４００は、プロセッサ４０２、メモリ４０４、ストレージ４０６、入力／出力（Ｉ／Ｏ）インターフェース４０８、通信インターフェース４１０、およびバス４１２を含む。この開示は、特定の数の特定の構成要素を特定の構成で有する特定のコンピュータ・システムについて記載し示しているが、この開示は、任意の好適な数の任意の好適な構成要素を任意の好適な構成で有する任意の好適なコンピュータ・システムを企図する。
【００５４】
特定の実施形態では、プロセッサ４０２は、コンピュータ・プログラムを構成するものなど命令を実行するためのハードウェアを含む。限定するものとしてではなく一例として、命令を実行するために、プロセッサ４０２は、内部レジスタ、内部キャッシュ、メモリ４０４、またはストレージ４０６から命令を取り出し（またはフェッチし）、それらを復号および実行し、次いで、１または複数の結果を内部レジスタ、内部キャッシュ、メモリ４０４、またはストレージ４０６に書き込む。特定の実施形態では、プロセッサ４０２は、データ、命令、またはアドレス用に１または複数の内部キャッシュを含んでもよい。この開示は、適切な場合、任意の好適な数の任意の好適な内部キャッシュを含むプロセッサ４０２を企図する。限定するものとしてではなく一例として、プロセッサ４０２は、１または複数の命令キャッシュ、１または複数のデータ・キャッシュ、および１または複数の変換索引バッファ（ＴＬＢ）を含んでもよい。命令キャッシュ内の命令は、メモリ４０４またはストレージ４０６内の命令のコピーであってもよく、命令キャッシュは、プロセッサ４０２によるこれらの命令の取り出しを高速化する。データ・キャッシュ内のデータは、プロセッサ４０２にて実行される命令が操作するための、メモリ４０４またはストレージ４０６内のデータのコピー、プロセッサ４０２で実行される後続の命令によるアクセスための、またはメモリ４０４もしくはストレージ４０６に書き込むための、プロセッサ４０２で実行された以前の命令の結果、あるいは他の好適なデータであってもよい。データ・キャッシュは、プロセッサ４０２による読出しまたは書込み動作を高速化する。ＴＬＢは、プロセッサ４０２のために仮想アドレス変換を高速化する。特定の実施形態では、プロセッサ４０２は、データ、命令、またはアドレス用に１または複数の内部レジスタを含む。この開示は、適切な場合、任意の好適な数の任意の好適な内部レジスタを含むプロセッサ４０２を企図する。適切な場合、プロセッサ４０２は、１または複数の算術論理演算ユニット（ＡＬＵ）を含むことができ、マルチコア・プロセッサであってもよく、１または複数のプロセッサ４０２を含んでもよい。この開示は、特定のプロセッサについて記載し示しているが、この開示は、任意の好適なプロセッサを企図する。
【００５５】
特定の実施形態では、メモリ４０４は、プロセッサ４０２が実行するための命令、またはプロセッサ４０２が操作するためのデータを記憶するための主記憶装置を含む。限定するものとしてではなく一例として、コンピュータ・システム４００は、ストレージ４０６または別のソース（たとえば、別のコンピュータ・システム４００など）からメモリ４０４に命令をロードする。次いで、プロセッサ４０２は、メモリ４０４から内部レジスタまたは内部キャッシュに命令をロードする。命令を実行するために、プロセッサ４０２は、内部レジスタまたは内部キャッシュから命令を取り出し、それらを復号する。命令の実行中、または実行後、プロセッサ４０２は、１または複数の結果（中間結果であることも最終結果であることもある）を内部レジスタまたは内部キャッシュに書き込む。次いで、プロセッサ４０２は、それらの結果の１または複数をメモリ４０４に書き込む。特定の実施形態では、プロセッサ４０２は、１もしくは複数の内部レジスタもしくは内部キャッシュ内、または（ストレージ４０６もしくは他の場所ではなく）メモリ４０４内の命令だけを実行し、１もしくは複数の内部レジスタもしくは内部キャッシュ内、または（ストレージ４０６もしくは他の場所ではなく）メモリ４０４内のデータだけを操作する。１または複数のメモリ・バス（それぞれがアドレス・バスとデータ・バスを含むことがある）がプロセッサ４０２をメモリ４０４に結合してもよい。バス４１２は、下記に記載されているように、１または複数のメモリ・バスを含んでもよい。特定の実施形態では、１または複数のメモリ管理ユニット（ＭＭＵ）が、プロセッサ４０２とメモリ４０４との間に存在し、プロセッサ４０２によって要求されるメモリ４０４へのアクセスを容易にする。特定の実施形態では、メモリ４０４は、ランダム・アクセス・メモリ（ＲＡＭ）を含む。このＲＡＭは、適切な場合、揮発性メモリであり得る。適切な場合、このＲＡＭは、ダイナミックＲＡＭ（ＤＲＡＭ）またはスタティックＲＡＭ（ＳＲＡＭ）であってよい。さらに、適切な場合、このＲＡＭは、シングルポート型またはマルチポート型ＲＡＭであってよい。この開示は、任意の好適なＲＡＭを企図する。メモリ４０４は、適切な場合、１または複数のメモリ４０４を含んでもよい。この開示は、特定のメモリについて記載し示しているが、この開示は、任意の好適なメモリを企図する。
【００５６】
特定の実施形態では、ストレージ４０６は、データまたは命令用のマス・ストレージを含む。限定するものとしてではなく一例として、ストレージ４０６は、ハード・ディスク・ドライブ（ＨＤＤ）、フロッピー（登録商標）ディスク・ドライブ、フラッシュ・メモリ、光ディスク、光磁気ディスク、磁気テープ、もしくはユニバーサル・シリアル・バス（ＵＳＢ）ドライブ、またはこれらの２以上の組合せを含んでもよい。ストレージ４０６は、適切な場合、取外し式または非取外し式（または固定）媒体を含んでもよい。ストレージ４０６は、適切な場合、コンピュータ・システム４００に対して内部であっても外部であってもよい。特定の実施形態では、ストレージ４０６は、不揮発性のソリッドステート・メモリである。特定の実施形態では、ストレージ４０６は、読出し専用メモリ（ＲＯＭ）を含む。適切な場合、このＲＯＭは、マスクプログラムドＲＯＭ、プログラマブルＲＯＭ（ＰＲＯＭ）、消去可能ＰＲＯＭ（ＥＰＲＯＭ）、電気的消去可能ＰＲＯＭ（ＥＥＰＲＯＭ）、電気的書き換え可能ＲＯＭ（ＥＡＲＯＭ）、もしくはフラッシュ・メモリ、またはこれらの２以上の組合せであってよい。この開示は、任意の好適な物理形態をとるマス・ストレージ４０６を企図する。ストレージ４０６は、適切な場合、プロセッサ４０２とストレージ４０６の間の通信を容易にする１または複数のストレージ制御ユニットを含んでもよい。適切な場合、ストレージ４０６は、１または複数のストレージ４０６を含んでもよい。この開示は、特定のストレージについて記載し示しているが、この開示は、任意の好適なストレージを企図する。
【００５７】
特定の実施形態では、Ｉ／Ｏインターフェース４０８は、コンピュータ・システム４００と１または複数のＩ／Ｏデバイスとの間の通信のために１または複数のインターフェースを提供するハードウェア、ソフトウェア、またはその両方を含む。コンピュータ・システム４００は、適切な場合、これらのＩ／Ｏデバイスの１または複数を含んでもよい。これらのＩ／Ｏデバイスの１または複数は、人とコンピュータ・システム４００の間の通信を可能にする。限定するものとしてではなく一例として、Ｉ／Ｏデバイスは、キーボード、キーパッド、マイクロフォン、モニタ、マウス、プリンタ、スキャナ、スピーカ、スチル・カメラ、スタイラス、タブレット、タッチ・スクリーン、トラックボール、ビデオ・カメラ、別の好適なＩ／Ｏデバイス、またはこれらの２以上の組合せを含んでもよい。Ｉ／Ｏデバイスは、１または複数のセンサを含んでもよい。この開示は、任意の好適なＩ／Ｏデバイス、およびそれらのための任意の好適なＩ／Ｏインターフェース４０８を企図する。適切な場合、Ｉ／Ｏインターフェース４０８は、プロセッサ４０２がこれらのＩ／Ｏデバイスの１または複数を駆動することを可能にする１または複数のデバイスまたはソフトウェア・ドライバを含む。Ｉ／Ｏインターフェース４０８は、適切な場合、１または複数のＩ／Ｏインターフェース４０８を含んでもよい。この開示は、特定のＩ／Ｏインターフェースについて記載し示しているが、この開示は、任意の好適なＩ／Ｏインターフェースを企図する。
【００５８】
特定の実施形態では、通信インターフェース４１０は、コンピュータ・システム４００と１もしくは複数の他のコンピュータ・システム４００または１もしくは複数のネットワークとの間の通信（たとえば、パケットベースの通信など）のために１または複数のインターフェースを提供するハードウェア、ソフトウェア、またはその両方を含む。限定するものとしてではなく一例として、通信インターフェース４１０は、ＥＴＨＥＲＮＥＴ（登録商標）もしくは他の有線ベースのネットワークとの通信のためのインターフェース・コントローラ（ＮＩＣ）もしくはネットワーク・アダプタ、またはＷＩ−ＦＩネットワークなど無線ネットワークとの通信のための無線ＮＩＣ（ＷＮＩＣ）もしくは無線アダプタを含んでもよい。この開示は、任意の好適なネットワーク、およびそのための任意の好適な通信インターフェース４１０を企図する。限定するものとしてではなく一例として、コンピュータ・システム４００は、アドホック・ネットワーク、パーソナル・エリア・ネットワーク（ＰＡＮ）、ローカル・エリア・ネットワーク（ＬＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、またはインターネットの１もしくは複数の部分、あるいはこれらの２以上の組合せと通信する。これらのネットワークの１または複数のうちの１または複数の部分は、有線であっても無線であってもよい。一例として、コンピュータ・システム４００は、無線ＰＡＮ（ＷＰＡＮ）（たとえば、ＢＬＵＥＴＯＯＴＨ（登録商標）ＷＰＡＮなど）、ＷＩ−ＦＩネットワーク、ＷＩ−ＭＡＸネットワーク、携帯電話ネットワーク（たとえば、グローバル移動体通信システム（ＧＳＭ（登録商標））ネットワークなど）、もしくは他の好適な無線ネットワーク、またはこれらの２以上の組合せと通信する。コンピュータ・システム４００は、適切な場合、これらのネットワークのいずれかのための任意の好適な通信インターフェース４１０を含んでもよい。通信インターフェース４１０は、適切な場合、１または複数の通信インターフェース４１０を含んでもよい。この開示は、特定の通信インターフェースについて記載し示しているが、この開示は、任意の好適な通信インターフェースを企図する。
【００５９】
特定の実施形態では、バス４１２は、コンピュータ・システム４００の構成要素を互いに結合するハードウェア、ソフトウェア、またはその両方を含む。限定するものとしてではなく一例として、バス４１２は、アクセラレィティッド・グラフィックス・ポート（ＡＧＰ）もしくは他のグラフィックス・バス、ＥＩＳＡ（Ｅｎｈａｎｃｅｄ  Ｉｎｄｕｓｔｒｙ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ）バス、フロントサイド・バス（ＦＳＢ）、ＨＴ（ＨＹＰＥＲＴＲＡＮＳＰＯＲＴ）相互接続、ＩＳＡ（Ｉｎｄｕｓｔｒｙ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ）バス、インフィニバンド相互接続、ＬＰＣ（ｌｏｗ−ｐｉｎ−ｃｏｕｎｔ）バス、メモリ・バス、ＭＣＡ（Ｍｉｃｒｏ  Ｃｈａｎｎｅｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ）バス、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バス、ＰＣＩエクスプレス（ＰＣＩｅ）バス、ＳＡＴＡ（ｓｅｒｉａｌ  ａｄｖａｎｃｅｄ  ｔｅｃｈｎｏｌｏｇｙ  ａｔｔａｃｈｍｅｎｔ）バス、ＶＬＢ（Ｖｉｄｅｏ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｓｔａｎｄａｒｄｓ  Ａｓｓｏｃｉａｔｉｏｎ  ｌｏｃａｌ）バス、もしくは別の好適なバス、またはこれらの２以上の組合せを含んでもよい。バス４１２は、適切な場合、１または複数のバス４１２を含んでもよい。この開示は、特定のバスについて記載し示しているが、この開示は、任意の好適なバスまたは相互接続を企図する。
【００６０】
本明細書では、１または複数の非一時的コンピュータ可読記憶媒体は、適切な場合、１または複数の半導体ベースの、もしくは他の集積回路（ＩＣ）（たとえば、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）または特定用途向けＩＣ（ＡＳＩＣ））、ハード・ディスク・ドライブ（ＨＤＤ）、ハイブリッド・ハード・ドライブ（ＨＨＤ）、光ディスク、光ディスク・ドライブ（ＯＤＤ）、光磁気ディスク、光磁気ドライブ、フロッピー（登録商標）・ディスケット、フロッピー（登録商標）・ディスク・ドライブ（ＦＤＤ）、磁気テープ、ソリッドステート・ドライブ（ＳＳＤ）、ＲＡＭドライブ、セキュア・デジタル・カードもしくはセキュア・デジタル・ドライブ、任意の他の好適な非一時的コンピュータ可読記憶媒体、またはこれらの２以上の組合せを含んでもよい。非一時的コンピュータ可読記憶媒体は、適切な場合、揮発性、不揮発性、または揮発性と不揮発性の組合せであってよい。
【００６１】
本明細書では、「または（もしくは）」は、別段明確に示されていない限り、または別段文脈によって示されない限り、包括的（ｉｎｃｌｕｓｉｖｅ）であり、排他的なものではない。したがって、本明細書では、「ＡまたはＢ」は、別段明確に示されていない限り、または別段文脈によって示されない限り、「Ａ、Ｂ、またはその両方」を意味する。さらに、「および」は、別段明確に示されていない限り、または別段文脈によって示されない限り、共同であり、個別的でもある。したがって、本明細書では、「ＡおよびＢ」は、別段明確に示されていない限り、または別段文脈によって示されない限り、「ＡおよびＢを共同で、または個別的に」意味する。
【００６２】
この開示の範囲は、当業者であれば理解するであろう、本明細書に記載され、または示されている例示的な実施形態に対する変更、置換、変形、代替、および修正すべてを包含する。この開示の範囲は、本明細書に記載され、または示されている例示的な実施形態に限定されない。さらに、この開示は、それぞれの実施形態について、本明細書では、特定の構成要素、要素、機能、動作、またはステップを含むものとして記載し示しているが、これらの実施形態のいずれも、当業者であれば理解するであろう、本明細書のどこかに記載され、または示されている構成要素、要素、機能、動作、またはステップのいずれかの任意の組合せまたは並べ替えを含んでもよい。さらに、添付の特許請求の範囲において、特定の機能を実施するように適合された、するように配置された、することが可能な、するように構成された、することが可能である、するように動作可能である、またはするように動作する装置もしくはシステム、または装置もしくはシステムの構成要素に言及することは、その装置、システム、または構成要素がそのように適合され、配置され、動作可能であり、構成され、可能であり、動作可能であり、動作する限り、それ、またはその特定の機能が作動される、オンにされる、またはロック解除されるか否かにかかわらず、その装置、システム、構成要素を包含する。
【図１】
0006404910.tif 000002
【図２】
0006404910.tif 000003
【図３】
0006404910.tif 000004
【図４】
0006404910.tif 000005