(57)【要約】ウェブブラウザなどのアプリケーションは、検索クエリに応答して受信された検索結果、ウェブフィードから受信された記事のセット、ウェブページなどの外部文書を行うためのリンクを集合的に含むデータアイテムなど、データアイテムのセットを取得する。プレビュー機能性は、アプリケーションが、リンクに関連する文書のコンテンツをプリフェッチし、文書のイメージをプリレンダリングすることを可能にする。したがって、ユーザが、プレビューのためにリンクを選択する時に、プレビューは、選択されたリンクに対応するプリレンダリングされたイメージを読み取ることによってすばやく表示される。
2013517556.tif 000002
【特許請求の範囲】
【請求項１】
ウェブブラウザのグラフィカルユーザインターフェース内でページをプレビューするコンピュータ実装方法であって、前記ユーザインターフェースは、コンテンツエリアを有し、
前記ウェブブラウザによって、１つまたは複数のリモートサーバからデータアイテムのセットを取得するステップであって、前記セットが、ウェブページへのリンクを含むことと、
前記ウェブブラウザによって、複数の前記リンクのそれぞれについて、前記リンクに関連するウェブページを検索するステップと、
前記ウェブブラウザによって、前記検索されたページを閲覧するための前記ブラウザのユーザによる任意の選択の前に、前記検索されたウェブページをレンダリングするステップと、
前記ウェブブラウザによって、リンクをプレビューするための前記ユーザによる選択を受信するステップと、
前記ウェブブラウザによって、前記プレビューされるリンクに関連する前記レンダリングされたウェブページを前記コンテンツエリア内に表示するステップと
を含むことを特徴とするコンピュータ実装方法。
【請求項２】
データアイテムの前記セットは、検索クエリの実行に応答して検索エンジンから取得された検索結果を含み、複数の前記検索結果のそれぞれは、ウェブページへのリンクを有することを特徴とする請求項１に記載のコンピュータ実装方法。
【請求項３】
前記レンダリングされたページを表示するステップは、前記検索クエリからの単語を有する前記ページ内のコンテンツの一部が当初に可視になるように前記レンダリングされたページをスクロールするステップを含むことを特徴とする請求項２に記載のコンピュータ実装方法。
【請求項４】
ディスカッションストリームのテキストメッセージ内の前記検索クエリの単語の頻度の経時的な変化に少なくとも部分的に基づいて複数の前記検索クエリの人気のレベルの指示を表示するステップをさらに含むことを特徴とする請求項２に記載のコンピュータ実装方法。
【請求項５】
データアイテムの前記セットは、ウェブフィードからの記事を含み、前記記事は、ウェブページへの少なくとも１つのリンクを有することを特徴とする請求項１に記載のコンピュータ実装方法。
【請求項６】
データアイテムの前記セットは、ブロギングサービスからのテキストメッセージを含み、前記テキストメッセージは、ウェブページへの少なくとも１つのリンクを有することを特徴とする請求項１に記載のコンピュータ実装方法。
【請求項７】
前記コンテンツエリアとは別々のリストエリア内に前記リンクのリストを表示するステップをさらに含み、前記リンクをプレビューするための前記選択を受信するステップは、前記リンクに関連するユーザ入力アクションを受信するステップを含むことを特徴とする請求項１に記載のコンピュータ実装方法。
【請求項８】
前記ユーザ入力アクションは、入力フォーカスを前記リンクに移動させるキー押下げであることを特徴とする請求項７に記載のコンピュータ実装方法。
【請求項９】
前記ユーザ入力アクションは、前記リンクのマウスオーバおよび前記リンクのマウスクリックのうちの１つであることを特徴とする請求項７に記載のコンピュータ実装方法。
【請求項１０】
検索する前記ステップは、前記ユーザがページを閲覧する可能性が低いという判定に応答して前記ページを取出から除外するステップを含むことを特徴とする請求項１に記載のコンピュータ実装方法。
【請求項１１】
前記複数のリンクに関連する前記ウェブページは、前記ユーザのブラウジング履歴に少なくとも部分的に基づく順序で検索されることを特徴とする請求項１に記載のコンピュータ実装方法。
【請求項１２】
前記複数のリンクに関連する前記ウェブページは、複数の他のユーザのブラウジング履歴に少なくとも部分的に基づく順序で検索されることを特徴とする請求項１に記載のコンピュータ実装方法。
【請求項１３】
前記データアイテムのうちの少なくとも１つは、アクションを指定するユーザインターフェース要素をさらに含み、前記ユーザインターフェース要素を選択することは、前記少なくとも１つのデータアイテムに関連するコンテンツをソーシャルネットワーキングサイト上の前記ユーザのアカウントに追加させることを特徴とする請求項１に記載のコンピュータ実装方法。
【請求項１４】
前記データアイテムのうちの第１のデータアイテムは、検索エンジンから取得された検索結果であり、前記データアイテムのうちの第２のデータアイテムは、ソーシャルネットワーク上にポストされたコンテンツアイテムであることを特徴とする請求項１に記載のコンピュータ実装方法。
【請求項１５】
既に取出が進行中であるウェブページの個数に応答して前記検索するステップを遅延させるステップをさらに含むことを特徴とする請求項１に記載のコンピュータ実装方法。
【請求項１６】
ウェブブラウザのグラフィカルユーザインターフェース内でページをプレビューする実行可能なコンピュータプログラム命令が具現化されたコンピュータ可読記憶媒体であって、前記ユーザインターフェースは、コンテンツエリアを含み、前記コンピュータプログラム命令の動作が、
前記ウェブブラウザによって、１つまたは複数のリモートサーバからデータアイテムのセットを取得することであって、前記セットは、ウェブページへのリンクを含むことと、
前記ウェブブラウザによって、複数の前記リンクのそれぞれについて、前記リンクに関連するウェブページを検索することと、
前記ウェブブラウザによって、前記検索されたページを閲覧するための前記ブラウザのユーザによる任意の選択の前に、前記検索されたウェブページをレンダリングすることと、
前記ウェブブラウザによって、リンクをプレビューするための前記ユーザによる選択を受信することと、
前記ウェブブラウザによって、前記プレビューされるリンクに関連する前記レンダリングされたウェブページを前記コンテンツエリア内に表示することと
を含むことを特徴とするコンピュータ可読記憶媒体。
【請求項１７】
前記コンピュータプログラム命令の前記アクションは、前記コンテンツエリアとは別々のリストエリア内に前記リンクのリストを表示することをさらに含み、前記リンクをプレビューするための前記選択を受信することは、前記リンクに関連するユーザ入力アクションを受信することを含むことを特徴とする請求項１６に記載のコンピュータ可読記憶媒体。
【請求項１８】
前記複数のリンクに関連する前記ウェブページは、前記ユーザのブラウジング履歴に少なくとも部分的に基づく順序で検索されることを特徴とする請求項１６に記載のコンピュータ可読記憶媒体。
【請求項１９】
ウェブブラウザのグラフィカルユーザインターフェース内でページをプレビューするコンピュータシステムであって、前記ユーザインターフェースは、コンテンツエリアを含み、前記コンピュータシステムが、
コンピュータプロセッサと、
前記コンピュータプロセッサによって実行可能であり、
前記ウェブブラウザによって、データアイテムのセットを取得することであって、前記セットが、ウェブページへのリンクを含むことと、
前記ウェブブラウザによって、複数の前記リンクのそれぞれについて、前記リンクに関連するウェブページを検索することと、
前記ウェブブラウザによって、前記検索されたページを閲覧するための前記ブラウザのユーザによる任意の選択の前に、前記検索されたウェブページをレンダリングすることと、
前記ウェブブラウザによって、リンクをプレビューするための前記ユーザによる選択を受信することと、
前記ウェブブラウザによって、前記プレビューされるリンクに関連する前記レンダリングされたウェブページを前記コンテンツエリア内に表示することと
を含む動作を実行するコンピュータプログラムと
を含むことを特徴とするコンピュータシステム。
【請求項２０】
前記データアイテムのうちの少なくとも１つは、アクションを指定するユーザインターフェース要素をさらに含み、前記ユーザインターフェース要素を選択することは、前記少なくとも１つのデータアイテムに関連するコンテンツをソーシャルネットワーキングサイト上の前記ユーザのアカウントに追加させることを特徴とする請求項１９に記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、全般的にはソフトウェアシステムの分野に関し、より具体的には、ユーザがデータアイテムのセット内のリンクをよりすばやくブラウズ（ｂｒｏｗｓｅ）し、プレビューすることを可能にする技法に関する。
【背景技術】
【０００２】
ユーザが、インターネットを介して取得可能であり、ウェブブラウザなどのアプリケーションを介して閲覧することのできるウェブページおよび他のコンテンツのアイテムなど、ネットワークから取得可能な文書を調べる時に、ユーザは、通常、どの特定の文書がそのユーザにとって重要な情報を含むのかについて確信がない。したがって、ユーザは、すばやく文書をブラウズし、それが関連すると思われるかどうかを判定するために文書を急いで調べ、関連しない場合には別の文書に進む傾向がある。
【０００３】
ユーザが、重要なコンテンツを検索する時に、ほとんどの文書を短い時間の間だけ閲覧することを考慮すると、ユーザが文書プレビューを非常にすばやく取得することを可能にすることが有益であるはずである。ユーザに、さまざまな文書の間ですばやく簡単に推移するためのインターフェースを与えることが、同様に有益であるはずである。残念ながら、伝統的なウェブブラウザなど、ネットワークから取得可能な文書を閲覧するための従来のシステムは、所望の機能性を提供することができない。１つの例のシナリオとして、ユーザがリモート検索エンジンに検索クエリをサブミット（ｓｕｂｍｉｔ）し、クエリに対応する検索結果のセットを受信する、通常のインターネット検索の一部として行われるアクションを検討されたい。このシナリオでは、ユーザのウェブブラウザは、ブラウザコンテンツエリア内に検索結果を表示する。ユーザが、検索結果のうちの１つを調べることを望み、したがってそれに関連するリンクをクリックする時に、ブラウザは、そのリンクに関連する文書の要求を関連するコンテンツサーバにサブミットする。その後、ユーザは、文書（ならびに、イメージ、ビデオ、外部スクリプト、および類似物など、アイテムによって参照される任意のコンテンツ）がネットワークを介してユーザのコンピュータシステムに転送される間、およびブラウザがすべての受信されたコンテンツをアセンブル（ａｓｓｅｍｂｌｅ）し、レンダリングする間、待たなければならない。ネットワークの速度およびその上でブラウザが実行しつつあるシステムの速度に依存して、これが、顕著な長さの時間、たとえば数秒を要する可能性がある。そのような遅延は、ユーザが、そうではなく遅延がない場合に通常行うように関連するコンテンツを見つけるために多数の文書をすばやく閲覧するのを思いとどまらせるという点で、効率的なブラウジングの助けにはならない。
【０００４】
さらに、従来のブラウザは、文書の間で推移するための有効なインターフェースを提供することができない。検索結果は、通常、ブラウザのコンテンツエリア内に表示され、検索結果の１つをクリックするか他の形で選択することは、ブラウザのコンテンツエリアに、選択された検索結果に関連するコンテンツを表示させる。別の検索結果を閲覧するために、ユーザは、ブラウザの「戻る」ボタンを選択して、検索結果のリストに戻り、異なる検索結果をクリックしなければならない。このプロセスは、時間がかかるとわかる可能性があり、したがって、文書の間でのすばやいブラウジングに対する追加の妨害物である。
【発明の概要】
【０００５】
ウェブブラウザなどのアプリケーションは、検索クエリに応答して受信された検索結果、ウェブフィードから受信された記事のセット、ウェブページなどの外部文書へのリンクを集合的に含むデータアイテムなど、データアイテムのセットを取得する。プレビュー機能性は、アプリケーションが、リンクに関連する文書のコンテンツをプリフェッチし、文書のイメージをプリレンダリングすることを可能にする。したがって、ユーザが、プレビューのためにリンクを選択する時に、プレビューは、選択されたリンクに対応するプリレンダリングされたイメージを読み取ることによってすばやく表示される。
【０００６】
一実施形態では、コンテンツエリアを有するグラフィカルユーザインターフェースを有するウェブブラウザは、データアイテムのセットを取得し、セットは、ウェブページへのリンクを含む。その後、ウェブブラウザは、複数のリンクのそれぞれについて、リンクに関連するウェブページを検索し、検索されたページを閲覧するための任意のユーザ選択の前に、検索されたウェブページをレンダリングする。その後、ブラウザは、リンクをプレビューするためのユーザ選択を受信し、プレビューされるリンクに関連するレンダリングされたウェブページをコンテンツエリア内に表示する。
【図面の簡単な説明】
【０００７】
【図１】一実施形態によるコンピューティング環境１００を示す高水準ブロック図である。
【図２】一実施形態による、本発明を使用できるウェブブラウザアプリケーション１１１のウィンドウ内の例のユーザインターフェース２００を示すスクリーンショットである。
【図３Ａ】明示的な検索クエリの実行および異なる検索結果の選択に応答するユーザインターフェース２００内の変化を示す図である。
【図３Ｂ】明示的な検索クエリの実行および異なる検索結果の選択に応答するユーザインターフェース２００内の変化を示す図である。
【図３Ｃ】明示的な検索クエリの実行および異なる検索結果の選択に応答するユーザインターフェース２００内の変化を示す図である。
【図３Ｄ】明示的な検索クエリの実行および異なる検索結果の選択に応答するユーザインターフェース２００内の変化を示す図である。
【図４】リンクに関連する文書のすばやいプレビューを可能にするプレビューモジュール１１２のコンポーネントを示す図である。
【図５】一実施形態による、リンクをプレビューするために実行されるアクションを示す流れ図である。
【発明を実施するための形態】
【０００８】
図は、例示のみのために本発明の実施形態を示す。当業者は、次の説明から、本明細書で示される構造および方法の代替実施形態を、本明細書で説明される発明の原理から逸脱せずに使用できることをたやすく認めるであろう。
【０００９】
図１は、一実施形態によるコンピューティング環境１００の高水準ブロック図である。図１は、ネットワーク１４０によって接続されたクライアント１１０およびサーバ１２０を示す。クライアントは、ウェブブラウザなどのアプリケーション１１１を実行し、アプリケーション１１１は、サーバ１２０からデータアイテム（たとえば、検索結果、フィード記事、またはテキストメッセージ）を取得し、データアイテムは、ウェブページなどの文書へのリンクを含む。クライアント１１０は、さらに、リンクに関連する、サーバ１２０または他のネットワークから使用可能なソースから取得された文書のすばやいプレビューを可能にするプレビューモジュール１１２（図４に関して下でより詳細に説明する）を有する。一実施形態では、プレビューモジュール１１２は、アプリケーション１１１のコンポーネントであり、他の実施形態では、プレビューモジュール１１２は、アプリケーション１１１に固有であるのではなく、たとえばプラグインとして、複数のアプリケーション内に埋め込むことができる。図１は、単純さのために１つのクライアント１１０および１つのサーバ１２０だけを示すが、このそれぞれが任意の個数あることが可能であることを了解されたい。たとえば、クライアント１１０は、クエリに応答して検索結果を提供する検索エンジン、サブスクライブ（ｓｕｂｓｃｒｉｂｅ）されたコンテンツに対する更新を供給するフィードサーバ、および類似物など、異なるタイプの任意の個数の異なるサーバ１２０からデータアイテムを取得することができる。
【００１０】
ネットワーク１４０は、クライアント１１０とサーバ１２０との間の通信パスウェイを表す。一実施形態では、ネットワーク１４０は、標準インターネット通信技術および／またはプロトコルを使用する。したがって、ネットワーク１４０は、イーサネット（登録商標）、８０２．１１、サービス総合ディジタル網（ＩＳＤＮ）、非同期転送モード（ＡＴＭ）、その他などの技術を使用してデータを送信することができる。同様に、ネットワーク１４０上で使用されるネットワーキングプロトコルは、伝送制御プロトコル／インターネットプロトコル（ＴＣＰ／ＩＰ）、ハイパーテキスト転送プロトコル（ＨＴＴＰ）、シンプルメール転送プロトコル（ＳＭＴＰ）、ファイル転送プロトコル（ＦＴＰ）、ＸＭＰＰ（ｅｘｔｅｎｓｉｂｌｅ  ｍｅｓｓａｇｉｎｇ  ａｎｄ  ｐｒｅｓｅｎｃｅ  ｐｒｏｔｏｃｏｌ）などを含むことができる。ネットワーク１４０を介して交換されるデータを、ハイパーテキストマークアップ言語（ＨＴＭＬ）、ＸＭＬ（ｅｘｔｅｎｓｉｂｌｅ  ｍａｒｋｕｐ  ｌａｎｇｕａｇｅ）、ＪＳＯＮ（ＪａｖａＳｃｒｉｐｔ（登録商標）  ｏｂｊｅｃｔ  ｎｏｔａｔｉｏｎ）、ＲＳＳ（ｒｅａｌｌｙ  ｓｉｍｐｌｅ  ｓｙｎｄｉｃａｔｉｏｎ）フォーマット、その他を含む技術および／またはフォーマットを使用して表すことができる。さらに、すべてまたは一部のリンクを、ＳＳＬ（ｓｅｃｕｒｅ  ｓｏｃｋｅｔｓ  ｌａｙｅｒ）、ＴＬＳ（ｔｒａｎｓｐｏｒｔ  ｌａｙｅｒ  ｓｅｃｕｒｉｔｙ）、ＨＴＴＰＳ（ｓｅｃｕｒｅ  ＨＴＴＰ）、および／または仮想プライベートネットワーク（ＶＰＮ）などの従来の暗号化技術を使用して暗号化することができる。別の実施形態では、エンティティは、上で説明したものの代わりにまたはこれに加えて、カスタムのおよび／または専用のデータ通信技術を使用することができる。
【００１１】
図２は、一実施形態による、本発明を使用できるウェブブラウザアプリケーション１１１のウィンドウ内の例のユーザインターフェース２００のスクリーンショットである。ユーザインターフェース２００は、インターネットなどのネットワークを介して取得可能な、ウェブページなどの文書へのすばやく便利なアクセスを可能にする機能性を含む。より具体的には、ユーザインターフェース２００は、文書のコンテンツを表示するように構成されたコンテンツエリア２１０を含む。ユーザインターフェース２００は、さらに、任意の特定のネットワークからアクセス可能な文書をレンダリングするのに使用されない、コンテンツエリア２１０とは別々の、ブラウザ「クローム（登録商標）」２２０のエリアすなわち、ブラウザウィンドウの諸部分を含む。たとえば、図２のインターフェース内のクローム２２０のエリアは、ツールバー２８０、友人バー（Ｆｒｉｅｎｄｓ ｂａｒ）２７０、検索エリア２３０、フィード用のバー２４０、お気に入りサイト用のバー２５０、および保存された検索用のバー２６０を含む。クローム２２０のさまざまなエリアは、ユーザインターフェース２００の動作全体を通じて同一のサイズおよび位置で可視のままになることができ、または、ユーザアクションに応答してサイズを変更され、隠され、もしくは表示されることができる。さまざまなエリアの機能性を、これから詳細に説明する。
【００１２】
ツールバー２８０は、ブラウザコントロールエリア２８１を含み、ブラウザコントロールエリア２８１は、ブラウザ履歴内で前後に移動するための進むボタンおよび戻るボタン、現在表示されている文書をリフレッシュするための再読み込みボタン、コンテンツエリア２１０にデフォルト文書を表示させるホームボタン、表示される文書を指定するためのＵＲＬ入力エリア、特定の文書へのショートカットを含むお気に入りリスト、ならびに類似物などの従来のブラウザコントロールを含む。ツールバー２８０は、さらに、クエリ入力エリア２８２を含み、クエリ入力エリア２８２では、ユーザが、たとえばテキストクエリ単語を入力することによって、クエリを指定することができる。
【００１３】
検索エリア２３０は、検索結果２３２のセットを表示する。一実施形態では、検索エリア２３０は、さらに、現在の検索クエリ（たとえば、クエリ入力エリア２８２からのテキスト）を保存された検索エリア２６０に追加させる、ボタンまたはリンクなどのユーザインターフェース要素２３４を含む。一実施形態では、検索エリア２３０は、当初はユーザインターフェース２００内に表示されるのではなく、その代わりに、クエリ入力エリア２８２で指定されたクエリの実行に応答して現れ、後の時点にもう一度隠すことができる（たとえば、可視性トグルアイコン２３１を選択することによって明示的にまたはコンテンツエリア２１０内での表示のために検索結果２３２の１つを選択することによって暗黙のうちに）。一実施形態では、検索エリア２３０のサイズは、検索結果の個数に従って変化し、たとえば、検索エリアの高さは、多数の検索結果についてある最大サイズ（たとえば、ブラウザウィンドウの高さまたはスクリーンの高さ）まで増え、最大サイズに達した後には、スクロールバーが、使用可能なエリア内で可視ではない残りの検索結果を閲覧するために表示される。
【００１４】
各検索結果２３２は、あるデータソースから取得された文書（たとえば、ウェブページ）へのリンクを含み、さらに、検索クエリに関連するデータからのテキストの抜粋など、説明的情報を含むことができる。データソースは、インデックスに対して検索クエリを実行し、ページへのリンクを有する検索結果を提供する検索エンジン（たとえば、ＧＯＯＧＬＥ（登録商標）、ＹＡＨＯＯ（登録商標）、ＢＩＮＧ（登録商標））、ソーシャルネットワーク上のユーザのページへのポストなど、コンテンツアイテムを提供するソーシャルネットワーキングサイト（たとえば、ＦＡＣＥＢＯＯＫ（登録商標）、ＭＹＳＰＡＣＥ（登録商標））、テキストメッセージを提供するブロギングサービス（たとえば、ＴＷＩＴＴＥＲ（登録商標））、および類似物とすることができる。データソースを、データ自体を提供するエンティティとは異なるものとすることができる。たとえば、検索エンジンデータソースは、通常はその検索エンジン以外のエンティティによってホスティングされる文書へのリンクを提供する。
【００１５】
図２の実施形態では、検索結果２３２は、複数のデータソースから取得され、ブラウザは、クエリ入力エリア２８２に入力された検索クエリを各データソースにサブミットし、そこから取得される結果を集約する。一実施形態では、照会されるデータソースのセットが、固定され、他の実施形態では、このセットを、ユーザが、たとえば構成ファイルを変更することによって、またはブラウザのユーザインターフェース内でソースを指定することによって、指定することができる。図２では、集約された結果が、タブ２３５のセットを使用してグループ化され、各タブは、データソースのうちの１つに対応し、タブの１つを選択すること（たとえば、それをクリックすることによって）は、対応するデータソースから取得された検索結果だけを表示するようになっている。図２では、３つの架空のデータソースすなわち検索エンジン「Ｍｙ  ＳＥ」、ソーシャルネットワーク「Ｓｏｃ  Ｎｅｔ」、およびブロギングサービス「Ｃｈａｔｔｅｒ」に対応する３つのタブが図示され、「Ｍｙ  ＳＥ」タブが現在選択されており、したがって、表示される検索結果２３２は、対応する検索エンジンから取得された検索結果である。他の実施形態では、関連性スコアに従ってソートされた単一の検索リスト内で散在され、各検索結果が、データソースの関連する指示を表示し（たとえば、ソーシャルネットワーキングデータソースのテキスト「Ｓｏｃ  Ｎｅｔ」）、またはそれぞれがデータソースの関連する指示を含む見出しの下で順次表示されるグループのセットとしてなど、検索結果２３２を、他のグループ化で表示することができる。
【００１６】
一実施形態では、検索結果２３２は、ソーシャルネットワーキングサイト上のアクティビティなどの判断基準に基づいて、検索結果２３２がそこから来たデータソースの順序とは異なる順序で順序付けられる。たとえば、ソーシャルネットワーキングサイト上のユーザまたはユーザの友人が、そのソーシャルネットワーキングサイト上でお互いとＵＲＬ（ｕｎｉｆｏｒｍ  ｒｅｓｏｕｒｃｅ  ｌｏｃａｔｏｒ）またはマイクロブロギングサービスからのテキストメッセージを共有している場合には、そのＵＲＬまたはテキストメッセージの検索結果を、検索結果内で、検索エンジンによる他の形でのランキングよりも高くランクすることができる。これは、ユーザにより関連する順序で検索結果２３２を提示するために、ソーシャルネットワーキングサイトによって提供されるユーザに関するかなりの追加情報を活用する。
【００１７】
検索結果２３２がそこから来たデータソースの順序とは異なる順序で検索結果２３２をランキングするのに使用されるもう１つの判断基準は、ＴＷＩＴＴＥＲなどのマイクロブロギングサービスによって提供されるものなどの、ディスカッションストリーム（ｄｉｓｃｕｓｓｉｏｎ  ｓｔｒｅａｍ）内のＵＲＬの出現の頻度である。１つの特定の例として、ユーザがクエリを入力する時に、そのクエリに関連するマイクロブロギングサービスからのテキストメッセージが、取得され、これらのテキストメッセージに含まれるＵＲＬが、抽出され（かつ、それらが短縮された形である場合には、ＵＲＬ短縮サービスのＵＲＬ伸長機能性を使用して正規化され）、結果のＵＲＬのうちで最も頻繁であるものが、識別される。その後、これらのＵＲＬは、特に重要であると考えられ、これらのＵＲＬのうちの１つに対応する検索結果が、そうでなければランキングされるはずのものより高くランキングされる。
【００１８】
一実施形態では、ユーザによってクエリ入力エリア２８２に入力された検索クエリは、ディスカッションストリーム内のメッセージの分析に基づいて、人気のレベルに関連付けられる。１つの特定の例として、ブラウザ１１１内またはブラウザの代わりに実行するサービス内の論理は、クエリと一致するメッセージのセットを取得するためにマイクロブロギングサービスにクエリをサブミットし、メッセージを含む時間範囲（たとえば、最も古いメッセージの送信時刻から最新のメッセージの送信時刻まで）を識別し、その時間範囲をある個数Ｎ個の部分範囲に副分割し、各部分範囲に何個のメッセージが対応するのかを判定する。その後、各部分範囲内のメッセージの個数によって示される傾向に基づいて、この論理は、クエリに、人気レベルの対応する指示を割り当てる。たとえば、その単語が現在の瞬間まで経時的に増加して出現するクエリは、高いレベルの人気を有すると判定され得る。その後、この人気のレベルのインジケータをユーザインターフェース２００内に表示して、ユーザに、彼または彼女のクエリが他の人にどれほど人気があるのかを示すことができる。
【００１９】
一実施形態では、検索結果２３２は、検索結果の内容に対して行うことができるアクションに対応する、検索結果に隣接して配置されるクリック可能リンクなどの１つまたは複数のユーザインターフェース要素を含むことができる。可能なアクションは、たとえば、検索結果のタイプまたは検索結果のデータを提供するエンティティに基づくものとすることができる。たとえば、検索結果は、関連するデータを特定のソーシャルネットワーキングサイト上で共有させる、たとえば、ビデオを参照する検索結果をソーシャルネットワーキングサイト上のユーザのアカウントにポストする、「共有」アクションを有することができる。もう１つの例として、ソーシャルネットワーキングサイトにポストされたアイテムを表す検索結果は、ユーザがそのアイテムに関するコメントを入力することを可能にする「コメント」アクション、またはユーザがそのアイテムの賛同を指定することを可能にする「いいね」アクションを有することができる。さらなる例として、マイクロブロギングサービスからのメッセージなどのテキストメッセージを表す検索結果は、メッセージをユーザのサブスクライバの全員に送信する「再送信」アクション、またはオリジナルメッセージをポストした人だけに直接にメッセージを送信する「返信」アクションを有することができる。
【００２０】
一実施形態では、検索結果に関連するアクションは、アクションが行われるウェブサイトまたはアプリケーションのＡＰＩのメソッドを呼び出すことによって達成される（ＡＰＩは、たとえばウェブサービスとして実装される）。たとえば、検索結果に関連するデータの「共有」アクションを、そこでデータが共有されるソーシャルネットワーキングサイトのアイテムをポストするＡＰＩ関数を呼び出すことによって実行することができる。
【００２１】
検索結果２３２とユーザインターフェース２００の他の部分との間の相互作用を、下で図３Ａ〜３Ｄに関してより詳細に説明する。
【００２２】
フィードエリア２４０は、ブラウザがサブスクライブされるウェブフィードのセットのグラフィカル表現を表示し、フィードは、特定のデータソースから取得可能にされた新しい記事または他のデータアイテムを提供する。フィードは、フィードエリア２４０内でアイコン２４１によって表される。フィードへのサブスクリプション（およびフィードエリア２４０へのフィードの関連する追加）を、ユーザによって手動で、たとえばウェブページ上のＲＳＳフィードに関する「サブスクライブ」ボタンをクリックすることによって、マイクロブロギングサービスの所与のキーワードへのまたはソーシャルネットワーキングサイト上の所与のユーザのポストへの関心を示すことによって、および類似物によって達成することができる。あるいは、サブスクリプションを、自動的または半自動的とすることができ、たとえば、ブラウザ内の論理は、ユーザが、ＲＳＳフィードに関連するウェブページまたはウェブサイトを頻繁に訪れ、したがってフィードをフィードエリア２４０に追加することを記録し、またはそれを行うことのユーザによる許可を要求することができる。一実施形態では、フィードからのコンテンツの新しいアイテムが使用可能になる時に、ビジュアルインジケータは、新しいフィードコンテンツが閲覧のために使用可能であることを示すためにアイコン２４１上にまたは他の形でこれに視角的に関連して配置される。一実施形態では、アイコンの選択（たとえば、クリック）は、対応するフィードに関連するアイテムを表示する。たとえばアイテムを、コンテンツエリア２１０内または別々のウィンドウ内に表示することができる。
【００２３】
保存された検索エリア２６０は、ブラウザが周期的に実行する検索のセットを表示する。フィードエリア２４０のフィードと同様に、検索を、ユーザによって手動で追加し（たとえば、検索エリア２３０のユーザインターフェース要素２３４を選択することによって）、またはブラウザ内の論理によって自動的にもしくは半自動的に追加する（たとえば、クエリが過去に入力されたことを記録すること、またはユーザによってしばしば入力されるキーワードを含めることによって）ことができる。フィードエリア２４０と同様に、各保存された検索は、アイコン２５１によって表され、アイコン２５１のそれぞれを、検索について新しい結果が取得されたことを示す関連するビジュアルインジケータによって増補することができ、アイコンの選択は、新しい検索結果を表示する。
【００２４】
お気に入りサイトエリア２５０は、ユーザのお気に入りウェブサイトへのビジュアルリンクを提供し、アイテムのうちの１つをクリックするか他の形で選択することが、ブラウザに、そのウェブサイトをプレビューエリア２１０に表示させるようになっている。フィードエリア２４０および保存された検索エリア２６０と同様に、アイテムを、ユーザによって手動で追加でき、または、ブラウザによって自動的にもしくは半自動的に追加することができる（たとえば、ユーザがウェブサイトを頻繁に訪れることを記録することによって）。
【００２５】
友人バー２７０は、ブラウザのユーザがソーシャルネットワーキングシステム上で関連する、対応するソーシャルネットワーキングシステムのユーザを表示する。たとえば、友人バー２７０は、ＦＡＣＥＢＯＯＫ社ソーシャルネットワーキングシステムに対応することができ、ここで、このバーに表示されるユーザは、ＦＡＣＥＢＯＯＫ上のユーザの第１級の友人（ｆｉｒｓｔ−ｄｅｇｒｅｅ  ｆｒｉｅｎｄｓ）である。一実施形態では、バー２７０は、別々にグループ化されるか単一のセット内で混ぜ合わされるかのいずれかで、複数の異なるソーシャルネットワーキングシステムのユーザを表示する。一実施形態では、このバー内に表示されるユーザは、あるランキングメトリック（たとえば、ユーザと友人との間の対話の回数）による最高ランクの友人であり、ランキングの降順でソートされ、最高ランクがリストの最上部にある。バー２７０内の各ユーザは、対応するソーシャルネットワーキングサイトでのそのユーザの現在のプロファイル写真など、関連するアイコン２７１を有する。ユーザへの関心を示すこと（たとえば、ユーザのアイコン２７１の上でマウスカーソルをホバリングすることによって、またはアイコンをクリックすることによって）は、そのユーザの現在状況メッセージ、検索結果に関して上で説明したものなどのオプションの関連するアクションを伴う、そのユーザによってポストされた最近のコンテンツアイテムへのリンク、および類似物など、そのユーザに関連する追加情報を表示する。（たとえば）ユーザのアイコン２７１を右クリックし、結果のコンテキストメニューからアクションを選択することによるなど、アクションを、ユーザに関して行うこともできる。そのようなアクションは、少数の例を挙げると、そのユーザとのテキストチャットまたはビデオチャットを開始すること（またはこれに応答すること）、電子メッセージをそのユーザに送信すること、および他の通信指向のアクションを含むことができる。一実施形態では、友人バー２７０に表示されるデータは、検索結果に関して上で説明したように、対応するソーシャルネットワーキングサイトのＡＰＩを使用して取得され、操作される。
【００２６】
ユーザインターフェース２００が、純粋に例のためのものであり、他のユーザインターフェース構成を同等に使用できることを了解されたい。たとえば、クローム２２０のさまざまなエリアを、下縁に沿ってまたはメインブラウザウィンドウから別々に移動可能な（たとえば、ユーザによってメインウィンドウから「引きはがされた」後に）個々のフローティングウィンドウもしくはツールバーとしてなど、ユーザインターフェース２００の異なる位置に表示することができる。ユーザインターフェース２００は、上で説明されたすべてのコンポーネントを含む必要はなく、かつ／または説明されない追加のコンポーネントを含むことができる。さまざまなコンポーネントを、上で説明されたものとは異なる形で合併し、かつ／または分離することもでき、たとえば、クエリ入力２８２を、ツールバー２８０内ではなく検索エリア２３０内に配置することができる。
【００２７】
図３Ａ〜３Ｄに、明示的な検索クエリの実行および異なる検索結果の選択に応答するユーザインターフェース２００内の変化を示す。図３Ａでは、テキスト検索クエリ（すなわち、「Ｓｏｕｔｈ  Ａｆｒｉｃａｎ  ｐｅｎｇｕｉｎｓ（南アフリカペンギン）」が、クエリ入力エリア２８２に入力されているが、まだ実行されていない。その結果、コンテンツエリア２１０は、特定の検索結果を表示するのではなく、何であれ、最後に閲覧されたデータを表示する（単純さのために、この図では空白として図示）。一実施形態では、クエリが入力されつつある時に、提案されるクエリが、たとえば提案リストボックス２８３内に動的に表示される。そのような提案は、ユーザの検索履歴のうちの１つまたは複数と組み合わされたクエリ入力エリア内の現在のテキスト、ソーシャルネットワーキングサイト上のユーザの友人に関するデータ、およびユーザのウェブフィードデータに基づくものとすることができ、または、現在のクエリテキストに基づいて検索エンジンによって直接に供給される提案とすることができる。
【００２８】
図３Ｂは、検索クエリの実行の後のユーザインターフェース２００の状態を表す。検索結果エリア２３０が、検索クエリの実行に応答して現れており、以前に図３Ａでコンテンツエリア２１０によって占められた部分を占め、選択されたタブ２３５のデータソース（すなわち、「ＭｙＳＥ」という名前の仮定の検索エンジン）から導出された結果に対応する複数の検索結果２３２を表示する。第１の検索結果３３２ａは、スポンサードリンクを含み、第２の検索結果３３２ｂは、イメージサムネイルおよびオリジナルイメージへのリンクのセットを含み、第３の検索結果３３２ｃは、記事へのリンクを含み、第４の検索結果３３２ｄは、組織のウェブページへのリンクを含むなどである。
【００２９】
一実施形態では、ブラウザの論理は、スポンサードリンクを識別し（たとえば、データソースによってセットされる検索結果内のスポンサードリンクの配置の知識に基づいて）、初期フォーカスを割り当てる時にこれらをスキップする。したがって、たとえば、検索結果３３２ａのスポンサードリンクは、図３Ｂでスキップされ、初期フォーカスは、検索結果３３２ｂに対応するエリアの周囲のハイライトによって示されるように、検索結果３３２ｂに与えられている。したがって、コンテンツエリア２１０は、検索結果３３２ｂに関連するイメージサムネイルのセットを含むプレビューを表示する。
【００３０】
図３Ｃは、異なる検索結果が選択された後のユーザインターフェース２００の状態を表す。より具体的には、検索結果３３２ｃすなわち第２の非スポンサード検索結果が、現在選択されており、コンテンツエリア２１０に、検索結果３３２ｃのリンクに関連する記事のプレビューを表示させている。検索結果３３２ｂから検索結果３３２ｃへのフォーカスの推移は、ハイライトが前者から後者に移動することによってビジュアルに示される。一実施形態では、ある検索結果からのフォーカスの推移を、検索結果２３２の中で上または下にスクロールするために上矢印キーまたは下矢印キーを使用し、コンテンツエリア２１０にそれぞれ前の検索結果または次の検索結果を表示させることによるなど、単一のキーの押下げを用いて便利に達成することができる。同等に、推移を、検索結果のうちの１つの中でのマウスクリックによって達成し、フォーカスをその検索結果に移動させることができる。どの場合でも、コンテンツエリア２１０からの検索結果エリア２３０の分離は、検索結果エリア２３０内のフォーカスによって提供されるユーザの検索コンテキストを失わずに、検索結果の間でのすばやい遷移を可能にする。
【００３１】
一実施形態では、プレビューは、完全に対話型である。たとえば、プレビューされるウェブページの場合に、ウェブページは、従来のウェブブラウザと同様に解析され、レンダリングされる（下で図４に関して説明されるように、ページが表示のために選択される前に、レンダリングがバックグラウンドで実行されることを除いて）。したがって、スクリプトが実行され、アニメーションが表示され、リンクを選択できるなどである。別の実施形態では、たとえば通常はブラウザによって実行される、ウェブサイトのＨＴＭＬコードを解析することと、対応する文書オブジェクトモデルをメモリに格納することとによって作られる対話型表現ではなく、プレビューは、イメージファイルに格納された、プリレンダリングされたイメージである。一実施形態では、プレビューされるリンクが、検索クエリに応答して取得され、プレビューイメージが、コンテンツエリア２１０内におさめるには大きすぎる場合には、プレビューイメージは、検索クエリに最も関連すると思われる部分を当初に表示するように「スクロール」される。たとえば、ウェブページの各「ｄｉｖ」タグに、クエリに関する関連性スコアを割り当てることができ、ｄｉｖタグに対応するページの部分が可視になるようにするために、プレビューイメージをスクロールすることができる。その後、ユーザは、プレビューイメージに付随するスクロールバーを使用して、当初に可視ではないプレビューの他の部分を見ることができる。
【００３２】
図３Ｄは、たとえば現在フォーカスがある検索結果への関心を示すためにキーボードのエンターキーもしくはリターンキーを押すことによってまたは検索結果のうちの１つをダブルクリックすることによって、初期プレビューの後にさらに閲覧するために検索結果のうちの１つが指定された後の、ユーザインターフェース２００の状態を表す。結果として、検索結果エリア２３０は隠され、コンテンツエリア２１０は、検索結果に対応するウェブページを表示する。レンダリングされるプレビューが非対話型イメージである実施形態では、ウェブページは、ユーザがさらに閲覧するためにそれを指定した後に、コンテンツエリア２１０内で従来の形で解析され、表示され得る。
【００３３】
ユーザが検索結果に関連するコンテンツを閲覧することへの関心を示す前にそのコンテンツのプレビューを一緒に生成する、プレビューモジュール１１２のプリフェッチ機能性およびプリレンダリング機能性の使用に起因して、検索結果２３２のうちの１つの選択の後に、検索結果に対応する文書のプレビューを、コンテンツエリア２１０内ですばやく表示することができる。プレビュー機能性および検索結果の間での推移を、図４および５に関してさらに説明する。
【００３４】
リンクの間の推移およびリンクに関連する文書の関連するプレビューは、図３では明示的な検索クエリの文脈で説明されるが、推移およびプレビューが、他の文脈でも有用であることを了解されたい。たとえば、保存された検索に対する更新も、検索結果のセットをもたらし、そのリンクを、図３に関して上で議論されたものと同一の形を介して推移させ、プレビューすることができる。もう１つの例として、フィードすなわちマイクロブロギングサービスからのテキストメッセージは、検索結果セットに似て、複数のリンクを含むことができる。すなわち、フィードすなわちテキストメッセージからのニュースストーリは、リンクを介して複数のウェブページを参照することができ、このリンクのそれぞれが、ユーザにとって重要である可能性がある。したがって、埋め込まれたリンクを含むテキストメッセージ（たとえば）を閲覧する時に、キーボード上の上矢印キーおよび下矢印キーの押下げは、埋め込まれたリンクの間で移動し、主ブラウザウィンドウのコンテンツエリア２１０内でそれぞれに関連するプレビューを表示することができる。したがって、下で説明されるプリフェッチ機能性およびプリレンダリング機能性が、広い適用可能性を有し、明示的な検索クエリの検索結果に関連するリンクのプレビューに限定されないことを了解されたい。
【００３５】
図４に、リンクに関連する文書のすばやいプレビュー（以下では簡潔さのために単に「リンクのプレビュー」と称する）を可能にするプレビューモジュール１１２のコンポーネントを示す。プレビューモジュール１１２は、コンテンツキャッシュ４１０およびコンテンツフェッチモジュール４３０を含む。コンテンツフェッチモジュール４３０は、コンテンツキャッシュ４１０内のプレビューされるリンクに関連する文書のコンテンツを格納する。たとえば、リンクが、外部イメージまたは他の形の外部コンテンツを参照するウェブページを指す場合には、コンテンツフェッチモジュール４３０は、リンクによって参照されるウェブページデータおよび外部コンテンツをフェッチし、これをリンクに関連してコンテンツキャッシュ４１０内に格納することができる。一実施形態では、コンテンツフェッチモジュール４３０は、リンクのプレビューを生成するのに必要なコンテンツをフェッチし、格納するのみであり、プレビュー生成に必要な部分だけを保存するためにコンテンツを変更しまたはフィルタリングすることもできる。たとえば、あるリンクに関して生成されるプレビューが、単一の静的グラフィックである実施形態では、コンテンツフェッチモジュールは、オーディオコンテンツへの参照を無視し、参照されるビデオの単一のフレームだけを格納する。一実施形態では、コンテンツキャッシュ４１０は、クライアント１１０のメインメモリ内、たとえばブラウザアプリケーション１１１のメモリ空間内に配置されたインメモリキャッシュである。
【００３６】
一実施形態では、コンテンツフェッチモジュール４３０は、データとの対話のユーザの過去の履歴に基づいて、文書（たとえばウェブページ）に対応するリンクがユーザによって選択される可能性が高い順序で文書をフェッチする。これは、ユーザが文書をプレビューすることを望む時までに、その文書が既にフェッチされている確率を高める。たとえば、プレビューモジュール１１２は、ブラウザ履歴を分析し、かつ／またはユーザアクションのそれ自体の追跡を実行して、ユーザがどのサイトを最も頻繁に閲覧したのかおよびユーザが通常はリンクを上から下の順で調べるのかどうかなどを判定することができる。特定の例として、プレビューモジュール１１２が、ユーザがリンクを上から下の順で閲覧する傾向があり、しばしばある仮定のウェブサイト、ｍｙｓｉｔｅ．ｃｏｍからのコンテンツを閲覧する、検索クエリに関連する検索結果の場合に、コンテンツフェッチモジュール４３０は、ｍｙｓｉｔｅ．ｃｏｍへのリンクから開始し、対応する文書を上から下の順でフェッチし、その後、残りのリンクに対応する文書をやはり上から下の順でフェッチすることができる。もう１つの例として、プレビューモジュール１１２は、特定のタイプのコンテンツ（たとえば、リンク、写真）または特定の作成者によってポストされたコンテンツなど、ユーザがどのフィードコンテンツを閲覧する傾向があるのかを分析し、分析の結果を使用して、リンクをプリフェッチする順序を判定することができる。一実施形態では、文書がフェッチされる順序は、さらに、ユーザ自身の履歴に加えて、データとの他のユーザの対話の過去の履歴に基づく。たとえば、他のユーザのクライアント１１０が、それら自体のユーザ履歴データをサーバ１２０に送信でき、サーバ１２０は、その後、収集されたユーザ挙動を集約し、分析して、ユーザ挙動の幅広い傾向を判定することができる。その後、この要約された情報から引き出される結論を、フェッチの順序を判断する際に使用するためにクライアント１１０に送信することができる。たとえば、コンテンツフェッチモジュール４３０は、集約情報が、高いパーセンテージのユーザが特定のデータソースからのイメージファイルを閲覧することを示すと判定し、したがって、任意のそのようなイメージをフェッチ順の早期に配置することができる。
【００３７】
上で説明される実施形態では、フェッチが特定の順序で実行されるが、それでも、フェッチ要求を並列に実行することができる、すなわち、コンテンツフェッチモジュール４３０は、第１のリンクのフェッチを開始し、その後、第１のリンクがまだフェッチの過程にある間に第２のリンクのフェッチを開始することができる。一実施形態では、多くともある所定の個数のフェッチが、任意の所与の時に未解決であり、コンテンツフェッチモジュール４３０は、現在のフェッチのうちの１つが完了するまで、別のフェッチを開始するのを待つ。
【００３８】
一実施形態では、コンテンツフェッチモジュール４３０は、所与のタイプのデータアイテムに関する固定された個数の文書など（たとえば、データアイテムが検索要求である場合に１０文書、またはデータアイテムがウェブフィード記事である場合に３文書）、最大個数の文書をフェッチするのみである。一実施形態では、コンテンツフェッチモジュール４３０は、ある最大データ転送量を超えないようにするために、または他のアプリケーションによって現在実行されつつあるデータ転送の現在量に基づいて、文書をフェッチする速度を制限する。たとえば、コンテンツフェッチモジュール４３０は、フェッチおよび現在進行中の他のフェッチが３００ｋｂｐｓ超の帯域幅もしくは接続のデータ転送容量の５０％超または類似物を必要とする場合に、別の文書のフェッチを遅延させることができる。同様に、コンテンツフェッチモジュール４３０は、他のアプリケーションがネットワークに累積的に重くアクセスしている（たとえば、クライアント１１０のデータ転送容量の９０％を使用している）場合に、文書のフェッチを遅延させることができる。一実施形態では、コンテンツフェッチモジュール４３０は、各リンクにフィルタを適用して、それに関連する文書をフェッチすべきかどうかを判定する。たとえば、検索結果に関する１つのフィルタは、ユーザがスポンサードリンクに関連する文書を閲覧する可能性が低いという仮定のもとに、そのような文書を除外することができる。
【００３９】
プレビューモジュール１１２は、さらに、文書プレビューをレンダリングするコンテンツレンダリングモジュール４４０を含む。コンテンツレンダリングモジュール４４０は、コンテンツキャッシュ４１０内に格納された、所与のリンクに関連するコンテンツを入力としてとり、リンクを介してアクセス可能なデータを表すプレビューを生成する。たとえば、ウェブページの場合に、コンテンツレンダリングモジュール４４０は、ページを読み取り（この場合には、ネットワーク１４０ではなくコンテンツキャッシュ４１０から）、解析し、コンテンツキャッシュから任意の参照されるコンテンツを読み取り、そのコンテンツをレイアウトすることすなわち任意の参照されるコンテンツをページの関連部分に配置することによってページをレンダリングすることができる。
【００４０】
一実施形態では、コンテンツレンダリングモジュール４４０は、当初に不可視であるグラフィックスコンテキスト内でページをレンダリングする。したがって、コンテンツレンダリングモジュール４４０は、ユーザによって選択される前に複数のページをレンダリングすることができ、これらのページは、単純にこれらのページを可視にすることによってすばやく表示され得る。
【００４１】
もう１つの実施形態では、プレビューモジュール１１２は、さらに、コンテンツレンダリングモジュール４４０がレンダリングされたページのイメージを書き込むイメージリポジトリ４２０を含む。コンテンツキャッシュ４１０を、クライアント１１０のメインメモリ内のインメモリキャッシュとしておよび／またはレンダリングされたイメージの長期ストレージのためにクライアント上の二次ストレージとして実施することができる。一実施形態では、生成されるイメージは、データによって記述されるビジュアルコンテンツのすべてを含む。たとえば、リンクがウェブページを参照する場合には、リンクのイメージは、ブラウザ内でレンダリングされる時の所与の瞬間に現れる、そのウェブページのすべてのデータを含む。一実施形態では、イメージは、静的であり、ＢＭＰ、ＰＮＧ、ＪＰＧ、または類似物などのファイルフォーマットを有するファイル内に格納される。他の実施形態では、イメージは、さらに、アニメーションまたはサウンドなどのマルチメディア特徴を含むことができる。コンテンツレンダリングモジュール４４０は、結果のイメージを、それに対応するリンクに関連してイメージリポジトリ４２０内に保存する。
【００４２】
コンテンツフェッチモジュール４３０およびコンテンツレンダリングモジュール４４０が、別々のモジュールとして説明されるが、これらが、そのアクションを協力して実行できることを了解されたい。たとえば、モジュール４３０、４４０を、ページをフェッチし、ページを解析し、外部コンテンツへのページ参照を識別し、そのコンテンツをフェッチし、その後、フェッチされた外部コンテンツに基づいてページをレンダリングする、単一のモジュールとして実施することができる。
【００４３】
プレビューモジュール１１２は、さらに、コンテンツレンダリングモジュール４４０によって以前にプリレンダリングされた文書のプレビューを表示するプレビュー表示モジュール４５０を含む。たとえば、一実施形態では、プレビュー表示モジュール４５０は、以前にレンダリングされた文書のデータを含む不可視グラフィックスコンテキストを選択し、これをコンテンツ表示エリア２１０内に配置し、これを可視になるようにセットする。もう１つの実施形態では、プレビュー表示モジュール４５０は、イメージリポジトリ４２０から文書のレンダリングされたイメージを読み取り、これをコンテンツ表示エリア２１０内に表示する。
【００４４】
たとえば、戻って図３Ｃを参照すると、フォーカスが検索結果３３２ｃから移動された時に、プレビューモジュール１１２は、プレビューが、検索結果に対応するリンクについて既にレンダリングされているかどうかを判定する。そうである場合には、プレビュー表示モジュール４５０は、プレビューをコンテンツエリア２１０内に表示することによって、リンクをプレビューする。そうではない場合には、プレビュー表示モジュール４５０は、コンテンツフェッチモジュール４３０およびコンテンツレンダリングモジュール４４０に、プレビューを作らせ、その後にこれを表示するか、ブラウザ１１１に、従来のブラウザの形でリンクに対応する文書を解析させ、表示させるかのいずれかを行うことができる。
【００４５】
図５は、一実施形態による、リンクをプレビューするために実行されるアクションを示す流れ図である。ステップ５１０では、ブラウザ１１１が、ウェブページへのリンクを含むデータアイテム（たとえば、検索結果またはウェブフィード記事）のセットを取得する。たとえば、ブラウザは、実行のために検索エンジンにクエリをサブミットすることによって、検索結果のセットを取得することができる。検索結果は、ＧＯＯＧＬＥなどの検索エンジンによって提供される検索結果など、説明および文書へのリンクを有することができ、または、検索結果は、ＴＷＩＴＴＥＲなどのマイクロブロギングサービスによって提供されるテキストメッセージとすることができ、このテキストメッセージは、外部ウェブページまたは他の文書を参照する埋め込まれたリンクを有する。同様に、ブラウザ１１１は、ウェブフィードから１つまたは複数の新しい記事を取得することができ、この記事は、埋め込まれたリンクを有する。データアイテムは、図２の検索エリア２３０などのユーザインターフェース領域内に表示され、ここで、ユーザは、プレビューのためにリンクを選択することができる。
【００４６】
ステップ５２０では、プレビューモジュール１１２が、複数のリンクのそれぞれについて、リンクに関連するウェブページ（または他の文書）を検索する。上で議論したように、プレビューモジュール１１２は、データアイテムによって参照されるウェブページのすべてを検索する必要があるのではなく、リンクのうちのいくつかをフィルタアウトする、最大個数のリンクだけを検索する、および類似物を行うことができる。
【００４７】
ステップ５３０では、プレビューモジュール１１２が、検索されたウェブページを閲覧するための任意のユーザ選択の前に、検索されたウェブページをレンダリングし、たとえば、不可視グラフィックスコンテキスト内にページの対話版を作成し、またはイメージリポジトリ４２０内に格納されるレンダリングされたイメージファイルを作成する。ステップ５２０および５３０が、別個の順次アクションとして図示されているが、ステップ５３０が開始される前に、ステップ５２０が完了される必要はない。たとえば、リンクに関連するすべてのページが、それらのページのいずれかがレンダリングされる前に検索される必要があるのではなく、各連続するページ（および任意の参照される外部コンテンツ）が、次のページが検索される前に、取出５２０とレンダリング５３０（または部分的なレンダリング）との両方を受けることができる。
【００４８】
ステップ５４０では、プレビューモジュール１１２が、ステップ５１０で取得されたデータアイテムのリンクのうちの１つをプレビューするためのユーザ選択を受信する。たとえば、ユーザは、キーボード上の矢印キーもしくはタブキー、またはリンクの上でのホバリングなどのマウスアクションを使用して、データアイテムのセット内のあるリンクから別のリンクへフォーカスを移動することができる。
【００４９】
ステップ５５０では、プレビューモジュール１１２が、プレビューされるリンクに関連するレンダリングされたウェブページをコンテンツエリア２１０内に表示する。これは、プレビューされるリンクのプリレンダリングされたプレビューが作成済みであることを判定することと、そうである場合に、そのグラフィックスコンテキストを可視にセットすることによってまたはそれをイメージリポジトリ４２０から読み取ることによってなど、そのプレビューをコンテンツエリア内に表示することとを含む。
【００５０】
ステップ５１０〜５３０が実行された後に、ステップ５４０および５５０のプレビューすべきリンクのユーザ選択およびリンクのプレビューの結果の表示を、事実上瞬間的に、知覚できる遅延なしで実行することができる。これは、ユーザが、重要な内容を有するリンクを識別するためにデータアイテム内のさまざまなリンクをすばやくブラウズすることを可能にする。リンクがプレビューされるコンテンツエリア２１０とは別々のユーザインターフェースの部分（検索エリア２３０など）内のデータアイテムの表示は、さらに、ユーザがさまざまなリンクの間で簡単に推移し、単一のキー押し下げまたはマウスクリックを介してプレビューを得ることを可能にする。
【００５１】
本発明を、１つの可能な実施形態に関して特に詳細に説明した。当業者は、本発明を他の実施形態で実践できることを了解するであろう。まず、コンポーネントおよび変数の特定の命名、単語の大文字使用、属性、データ構造、または任意の他のプログラミング態様または構造的態様は、必須でも重要でもなく、本発明またはその特徴を実施する機構は、異なる名前、フォーマット、またはプロトコルを有することができる。また、本明細書で説明されるさまざまなシステムコンポーネントの間の機能性の特定の分割は、単に例のためのものであって必須ではなく、単一のシステムコンポーネントによって実行される機能を、その代わりに複数のコンポーネントによって実行することができ、複数のコンポーネントによって実行される機能を、その代わりに単一のコンポーネントによって実行することができる。
【００５２】
上の説明のいくつかの部分は、情報に対する動作のアルゴリズムおよび記号表現に関して本発明の特徴を提示する。これらのアルゴリズム的記述および表現は、データ処理技術の技量を有する者が彼らの作業の実質を他の当業者に最も有効に伝えるのに使用する手段である。これらの動作は、機能的にまたは論理的に記述されるが、コンピュータプログラムによって実施されると理解される。さらに、一般性を失わずに、時々、動作のこれらの配置をモジュールと称するか機能名によって呼ぶことが便利であることもわかっている。
【００５３】
上の議論から明白なように、そうではないと特に述べられない限り、この説明全体を通じて、「ｄｅｔｅｒｍｉｎｉｎｇ（判定）」、「ｄｉｓｐｌａｙｉｎｇ（表示）」、または類似物などの用語を利用する議論は、コンピュータシステムのメモリ、レジスタ、または他のそのような情報格納デバイス、情報伝送デバイス、もしくは情報表示デバイス内の物理的（電子）量として表されたデータを操作し、変換する、コンピュータシステムまたは類似する電子コンピューティングデバイスのアクションおよび処理を指すことを了解されたい。
【００５４】
本発明のある種の態様は、本明細書でアルゴリズムの形で説明される処理ステップおよび命令を含む。本発明の処理ステップおよび命令を、ソフトウェア、ファームウェア、またはハードウェアで実施でき、ソフトウェアで実施される時に、リアルタイムネットワークオペレーティングシステムによって使用される異なるプラットフォームに常駐するためにダウンロードし、そこから動作させることができることに留意されたい。
【００５５】
本発明は、本明細書の動作を実行する装置にも関する。この装置を、要求される目的のために特に構築することができ、または、この装置は、コンピュータによってアクセスできるコンピュータ可読媒体に格納されたコンピュータプログラムによって選択的にアクティブ化されまたは再構成される汎用コンピュータを含むことができる。そのようなコンピュータプログラムを、それぞれコンピュータシステムバスに結合された、フロッピディスク、光ディスク、ＣＤ−ＲＯＭ、光磁気ディスクを含む任意のタイプのディスク、読取り専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気カード、光カード、特定用途向け集積回路（ＡＳＩＣ）、または電子命令を格納するのに適する任意のタイプのコンピュータ可読記憶媒体などであるがこれに限定されないコンピュータ可読記憶媒体に格納することができる。さらに、クライアント１１０およびサーバ１２０などの本明細書で言及されるコンピュータは、単一のプロセッサを含むことができ、または、高められたコンピューティング容量のために複数プロセッサ設計を使用するアーキテクチャとすることができる。コンピュータは、二次記憶デバイス（たとえば、ハードディスク）、一次ストレージ（たとえば、ＲＡＭなどのメインメモリ）、ネットワークアクセスハードウェア（たとえば、ネットワークインターフェースカード）、および類似物などの従来のコンポーネントを含む。
【００５６】
本明細書で提示されるアルゴリズムおよび動作は、どの特定のコンピュータまたは他の装置にも固有に関係しない。さまざまな汎用システムを、本明細書の教示に従うプログラムと共に使用することもでき、または、要求される方法ステップを実行するためにより特殊化された装置を構築することが便利であることがわかる可能性がある。さまざまなこれらのシステムの要求される構造は、同等の変形形態と共に、当業者に明白であろう。さらに、本発明は、特定のプログラミング言語を参照して説明されるのではない。さまざまなプログラミング言語を使用して、本明細書で説明される本発明の教示を実施することができ、特定の言語への任意の言及が、使用可能性の発明および本発明の最良の態様のために提供されることを了解されたい。
【００５７】
本発明は、多数のトポロジにまたがるさまざまなコンピュータネットワークシステムによく適する。この分野の中で、大規模ネットワークの構成および管理は、インターネットなどのネットワークを介して異なるコンピュータおよびストレージデバイスに通信的に結合されたストレージデバイスおよびコンピュータを含む。
【００５８】
最後に、本明細書で使用される言語が、主に可読性および教育目的のために選択され、発明的主題を詳細に描写しまたはその範囲を定めるために選択されていない可能性があることに留意されたい。したがって、本発明の開示は、次の特許請求の範囲で示される本発明の範囲について、限定的ではなく例示的であることを意図されたものである。
【図１】
2013517556.tif 000003
【図２】
2013517556.tif 000004
【図３Ａ】
2013517556.tif 000005
【図３Ｂ】
2013517556.tif 000006
【図３Ｃ】
2013517556.tif 000007
【図３Ｄ】
2013517556.tif 000008
【図４】
2013517556.tif 000009
【図５】
2013517556.tif 000010
【国際調査報告】
2013517556.tif 000011