(57)【特許請求の範囲】
【請求項１】
コンテンツアイテムがクロスドメインアイフレームに含まれる場合のコンテンツ視認性を決定するためのコンピュータ実施方法であって、
ビューポートのサイズに関する外側境界を読み取ることを含めて、ブラウザに関連する前記ビューポートのウェブページ表示領域のサイズの第1の推定を決定するステップであって、前記第1の推定は、オペレーティングシステムとブラウザバージョンの様々な組合せに関するブラウザヘッダサイズ情報をさらに利用する、ステップと、
ブラウザから前記アイフレームに関するアイフレーム内側測定を読み取ることを含めて、前記ウェブページ表示領域内に表示するためのコンテンツアイテムのサイズに関する第2の推定を決定するステップと、
画面座標における前記ビューポートおよび前記アイフレームの位置を読み取ることによって、前記ウェブページ表示領域に対する前記コンテンツアイテムの位置を決定することを含めて、コンテンツアイテム視認性を決定するステップと、
前記視認性を報告するステップと
を備えるコンピュータ実施方法。
【請求項２】
前記第1の推定を決定するステップは、前記ウェブページ表示領域のサイズから1つまたは複数のクローム要素の推定されるサイズを引くステップを含む請求項1に記載の方法。
【請求項３】
コンテンツアイテム視認性を決定するステップは、前記ビューポートにおける1つまたは複数のクローム要素の推定されるサイズを補償するステップをさらに含む請求項1に記載の方法。
【請求項４】
前記第1の推定を決定するステップは、前記ビューポートの前記サイズからブラウザヘッダの推定されるサイズを引くステップを含む請求項1に記載の方法。
【請求項５】
前記第1の推定を決定するステップは、ブラウザヘッダおよびスクロールバーの推定されるサイズを引くステップを含む請求項1に記載の方法。
【請求項６】
前記第1の推定を決定するステップは、1つまたは複数のクローム要素の平均サイズを決定する統計解析を実行するステップをさらに含む請求項1に記載の方法。
【請求項７】
前記第2の推定を決定するステップは、前記コンテンツアイテムの前記サイズを、前記アイフレームの内側部分と同一のサイズであるものとして近似するステップを含む請求項1に記載の方法。
【請求項８】
前記コンテンツアイテムの前記位置を決定するステップは、前記ブラウザのAPIを使用して、前記ビューポートおよび前記アイフレームを画面座標において位置特定するステップをさらに含む請求項1に記載の方法。
【請求項９】
前記ブラウザは、Firefoxブラウザである請求項8に記載の方法。
【請求項１０】
コンテンツアイテム視認性を決定するステップは、前記ビューポートの前記位置と、前記ウェブページ表示領域の推定とによって定義される第1の長方形、および前記アイフレームの前記位置と、前記コンテンツアイテムの前記サイズとによって定義される第2の長方形という2つの長方形の重なり合いの面積を決定することによって、前記コンテンツアイテムのどれだけが目に見えるかを計算するステップをさらに含む請求項1に記載の方法。
【請求項１１】
前記視認性を報告するステップは、前記クロスドメインアイフレームに対する前記コンテンツアイテムの配信に関連してユーザに提示された際に前記コンテンツアイテムが目に見えたかどうかを、コンテンツスポンサに報告するステップをさらに含む請求項1に記載の方法。
【請求項１２】
前記コンテンツアイテムがクロスドメインアイフレーム内で表示されていると決定するステップをさらに含む請求項1に記載の方法。
【請求項１３】
前記コンテンツアイテムは、広告である請求項1に記載の方法。
【請求項１４】
実行されると、1つまたは複数のプロセッサに、
ビューポートのサイズに関する外側境界を読み取ることを含めて、ブラウザに関連する前記ビューポートのウェブページ表示領域のサイズの第1の推定を決定するステップであって、前記第1の推定は、オペレーティングシステムとブラウザバージョンの様々な組合せに関するブラウザヘッダサイズ情報をさらに利用する、ステップと、
ブラウザからアイフレームに関するアイフレーム内側測定を読み取ることを含めて、前記ウェブページ表示領域内に表示するためのコンテンツアイテムのサイズに関する第2の推定を決定するステップと、
画面座標における前記ビューポートおよび前記アイフレームの位置を読み取ることによって、前記ウェブページ表示領域に対する前記コンテンツアイテムの位置を決定することを含めて、コンテンツアイテム視認性を決定するステップと、
前記視認性を報告するステップと
を行わせる命令を含むコンピュータ可読記憶媒体。
【請求項１５】
前記第1の推定を決定するステップは、前記ウェブページ表示領域のサイズから1つまたは複数のクローム要素の推定されるサイズを引くステップを含む請求項14に記載のコンピュータ可読記憶媒体。
【請求項１６】
コンテンツアイテム視認性を決定するステップは、前記ビューポートにおける前記1つまたは複数のクローム要素の推定されるサイズを補償するステップをさらに含む請求項14に記載のコンピュータ可読記憶媒体。
【請求項１７】
前記第1の推定を決定するステップは、前記ビューポートの前記サイズからブラウザヘッダの推定されるサイズを引くステップを含む請求項14に記載のコンピュータ可読記憶媒体。
【請求項１８】
1つまたは複数のプロセッサと、
実行されると、前記1つまたは複数のプロセッサに、
ビューポートのサイズに関する外側境界を読み取ることを含めて、ブラウザに関連する前記ビューポートのウェブページ表示領域のサイズの第1の推定を決定するステップであって、前記第1の推定は、オペレーティングシステムとブラウザバージョンの様々な組合せに関するブラウザヘッダサイズ情報をさらに利用する、ステップと、
ブラウザからアイフレームに関するアイフレーム内側測定を読み取ることを含めて、前記ウェブページ表示領域内に表示するためのコンテンツアイテムのサイズに関する第2の推定を決定するステップと、
画面座標における前記ビューポートおよび前記アイフレームの位置を読み取ることによって、前記ウェブページ表示領域に対する前記コンテンツアイテムの位置を決定することを含めて、コンテンツアイテム視認性を決定するステップと、
前記視認性を報告するステップと
を行わせる命令を含む1つまたは複数のメモリ要素と
を備えるシステム。
【請求項１９】
前記第1の推定を決定するステップは、前記ウェブページ表示領域のサイズから1つまたは複数のクローム要素の推定されるサイズを引くステップを含む請求項18に記載のシステム。
【請求項２０】
コンテンツアイテム視認性を決定するステップは、前記ビューポートにおける前記1つまたは複数のクローム要素の推定されるサイズを補償するステップをさらに含む請求項18に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、参照により内容の全体が本明細書に組み込まれている、2013年3月18日に出願した米国仮特許出願第61/803,060号、および2013年3月28日に出願した米国特許出願第13/852,568号の優先権を主張するものである。
【０００２】
本明細書は、情報提示に関する。
【背景技術】
【０００３】
インターネットは、多種多様なリソースおよびその他のコンテンツに対するアクセスをもたらす。たとえば、ビデオファイルおよび/またはオーディオファイル、ならびに特定の主題または特定のニュース記事に関するウェブページが、インターネットを介してリソースとしてアクセス可能である。インターネットへのアクセスは、他のコンテンツ(たとえば、広告)を取り出して、ユーザに提示する機会ももたらす。その他のコンテンツは、パーソナルコンピュータ(PC)上、スマートフォン上、ラップトップコンピュータ上、タブレットコンピュータ上、または他のユーザデバイス上でユーザに提示され得る。
【０００４】
ユーザデバイス上で提示されるコンテンツの視認性は、ユーザデバイスのタイプ、およびコンテンツが表示される画面上の位置に依存し得る。また、視認性は、コンテンツが提示されるブラウザまたは他のアプリケーションのタイプにも依存し得る。
【発明の概要】
【課題を解決するための手段】
【０００５】
一般に、本明細書において説明される主題の1つの新規の態様は、コンテンツアイテムがクロスドメインアイフレームに含まれる場合のコンテンツ視認性を決定するためのコンピュータ実施方法を含む方法において実施され得る。この方法は、ビューポートのサイズに関する外側境界を読み取ることを含めて、ブラウザに関連するビューポートのウェブページ表示領域(webpage viewing area)のサイズの第1の推定を決定することを含む。この方法は、ブラウザからアイフレームに関するアイフレーム内側測定を読み取ることを含めて、そのウェブページ表示領域内に表示するためのコンテンツアイテムのサイズに関する第2の推定を決定することをさらに含む。この方法は、画面座標におけるビューポートおよびアイフレームの位置を読み取ることによって、そのウェブページ表示領域に対するコンテンツアイテムの位置を決定することを含めて、コンテンツアイテム視認性を決定することをさらに含む。この方法は、その視認性を報告することをさらに含む。
【０００６】
これら、およびその他の実施形態は各々、以下の特徴のうちの1つまたは複数をオプションとして含み得る。第1の推定を決定することは、ウェブページ表示領域のサイズから1つまたは複数のクローム要素の推定されるサイズを引くことを含み得る。コンテンツアイテム視認性を決定することは、ビューポートにおけるその1つまたは複数のクローム要素の推定されるサイズを補償することをさらに含み得る。その第1の推定を決定することは、ビューポートのサイズからブラウザヘッダの推定されるサイズを引くことを含み得る。第1の推定を決定することは、ブラウザヘッダおよびスクロールバーの推定されるサイズを引くことを含み得る。第1の推定を決定することは、その1つまたは複数のクローム要素の平均サイズを決定する統計解析を実行することをさらに含み得る。第2の推定を決定することは、コンテンツアイテムのサイズを、アイフレームの内側部分と同一のサイズであるものとして近似することを含み得る。コンテンツアイテムの位置を決定することは、ブラウザのAPIを使用して、ビューポートおよびアイフレームを画面座標において位置特定することをさらに含み得る。このブラウザは、Firefoxブラウザである。コンテンツアイテム視認性を決定することは、ビューポートの位置と、ウェブページ表示領域の推定とによって定義される第1の長方形、およびアイフレームの位置と、コンテンツアイテムのサイズとによって定義される第2の長方形という2つの長方形の重なり合いの面積を決定することによって、コンテンツアイテムのどれだけが目に見えるかを計算することをさらに含み得る。視認性を報告することは、クロスドメインアイフレームに対するコンテンツアイテムの配信に関連してユーザに提示された際にそのコンテンツアイテムが目に見えたかどうかを、コンテンツスポンサに報告することをさらに含み得る。この方法は、コンテンツアイテムがクロスドメインアイフレーム内で表示されていると決定することをさらに含み得る。そのコンテンツアイテムは、広告であり得る。
【０００７】
一般に、本明細書において説明される主題の別の新規の態様が、コンピュータ可読ストレージデバイスとして実体化され、命令を備えるコンピュータプログラム製品を含むコンピュータプログラム製品において実施され得る。それらの命令は、1つまたは複数のプロセッサによって実行されると、そのプロセッサに、ビューポートのサイズに関する外側境界を読み取ることを含めて、ブラウザに関連するビューポートのウェブページ表示領域のサイズの第1の推定を決定すること、ブラウザからアイフレームに関するアイフレーム内側測定を読み取ることを含めて、そのウェブページ表示領域内に表示するためのコンテンツアイテムのサイズに関する第2の推定を決定すること、画面座標におけるビューポートおよびアイフレームの位置を読み取ることによって、ウェブページ表示領域に対するコンテンツアイテムの位置を決定することを含めて、コンテンツアイテム視認性を決定すること、およびその視認性を報告することを行わせる。
【０００８】
これら、およびその他の実施形態は各々、オプションとして、次の特徴のうちの1つまたは複数を含み得る。第1の推定を決定することは、そのウェブページ表示領域のサイズから、1つまたは複数のクローム要素の推定されるサイズを引くことを含み得る。コンテンツアイテム視認性を決定することは、ビューポートにおけるその1つまたは複数のクローム要素の推定されるサイズを補償することをさらに含み得る。第1の推定を決定することは、ビューポートのサイズからブラウザヘッダの推定されるサイズを引くことを含み得る。
【０００９】
一般に、本明細書において説明される主題の別の新規の態様が、1つまたは複数のプロセッサと、命令を含む1つまたは複数のメモリ要素とを備えるシステムを含むシステムにおいて実施され得る。それらの命令は、実行されると、その1つまたは複数のプロセッサに、ビューポートのサイズに関する外側境界を読み取ることを含めて、ブラウザに関連するビューポートのウェブページ表示領域のサイズの第1の推定を決定すること、ブラウザからアイフレームに関するアイフレーム内側測定を読み取ることを含めて、そのウェブページ表示領域内に表示するためのコンテンツアイテムのサイズに関する第2の推定を決定すること、画面座標におけるビューポートおよびアイフレームの位置を読み取ることによって、ウェブページ表示領域に対するコンテンツアイテムの位置を決定することを含めて、コンテンツアイテム視認性を決定すること、およびその視認性を報告することを行わせる。
【００１０】
これら、およびその他の実施形態は各々、オプションとして、次の特徴のうちの1つまたは複数を含み得る。第1の推定を決定することは、ウェブページ表示領域のサイズから1つまたは複数のクローム要素の推定されるサイズを引くことを含み得る。コンテンツアイテム視認性を決定することは、ビューポートにおけるその1つまたは複数のクローム要素の推定されるサイズを補償することをさらに含み得る。
【００１１】
特定の実施形態は、次の利点のうちのいずれも実現しないこと、または1つもしくは複数を実現することが可能である。クロスドメインフレーム(たとえば、アイフレーム)内からのビューポート内のビューポートサイズおよびコンテンツアイテム(たとえば、広告)の位置の推定および/または測定が行われ得る。それらの測定は、トップウィンドウとのクロスドメインフレーム通信なしに、いくつかのブラウザ上で行われ得る。コンテンツアイテム(たとえば、広告)がいつ目に見えるかを決定することは、市場効率を高めることが可能である。コンテンツアイテムのビューに明確に関心のあるブランド関連のコンテンツスポンサ(たとえば、広告主)は、頻繁に見られるコンテンツアイテム配置の対価としてより多くを支払う用意があることが可能である。コンテンツアイテムの視認性を推定することが、その情報が直接に決定され得るので、パブリッシャが自発的に任意の技術を自ら展開することに依拠することなしに行われ得る。コンテンツアイテム視認性を推定すること/測定することに関連する計算は、リソースまたはブラウザパフォーマンスに大きな負担をかけることなく、衰退しつつある技術(たとえば、Flash)に依拠することもなく、行われ得る。
【００１２】
本明細書において説明される主題の1つまたは複数の実施形態の詳細は、添付の図面、および後段の説明に記載される。主題の他の特徴、態様、および利点は、その説明、それらの図面、および特許請求の範囲から明白となろう。
【図面の簡単な説明】
【００１３】
【図１】コンテンツを配信するための例示的な環境を示すブロック図である。
【図２】例示的なブラウザウィンドウと、その中に包含される要素とを示す図である。
【図３】ブラウザウィンドウを包含する例示的な画面領域を示す図である。
【図４】クロスドメインアイフレームに含まれるコンテンツアイテムに関するコンテンツ視認性を決定するための例示的なプロセスを示す流れ図である。
【図５】本開示において説明される方法、システム、およびプロセスを実施するのに使用され得る例示的なコンピュータシステムを示すブロック図である。
【００１４】
様々な図面における同様の参照符号および同様の名称は、同様の要素を指す。
【発明を実施するための形態】
【００１５】
本明細書は、たとえば、直接測定が可能ではない場合に、コンテンツアイテムの視認性を推定するための方法、プロセス、およびシステムを説明する。たとえば、一部の既存の従来の技法は、同一ドメインフレームからの測定、または他の直接測定技法などの直接測定を含み得る。本明細書において説明される技法は、たとえば、直接測定が可能でないシナリオにおいて、必要に応じて、推定を使用することを含めて、直接測定をシミュレートすることが可能である。
【００１６】
一部の実施形態において、コンテンツアイテムの視認性の推定を決定することが行われ得る。その推定は、ブラウザのビューポートのサイズ、コンテンツアイテムのサイズ、およびブラウザのビューポートに対するコンテンツアイテムの位置に基づくことが可能である。測定された値、および推定された値が、そのコンテンツアイテムがビュー内に(どれだけ)あるかどうかを決定するのに使用され得る。しかし、このアプローチは、コンテンツアイテムをレンダリングするコードが、たとえば、そのコンテンツアイテムを埋め込むウェブページとは異なるドメインを有するフレーム(たとえば、アイフレーム)内から実行されるように強制される場合、困難であり得る。たとえば、一部のブラウザセキュリティ制約はこれらのサイズおよび位置の1つまたは複数にアクセスすることを妨げ得る。
【００１７】
一部のブラウザは、コンテンツアイテム視認性を測定する/推定する目的でクロスドメインフレームセキュリティ制約を回避するのに役立つ専有のAPIを含み得る。それらのAPIは専有であるので、いずれのワールドワイドウェブコンソーシアム(W3C:World Wide Web Consortium)規格に含められることも、競合するブラウザによって提供されることも可能でないが、一部のブラウザ内で視認性推定ソリューションを提供することが可能である。
【００１８】
一般に、コンテンツアイテムの視認性の推定は、ビューポートのサイズ、コンテンツアイテムのサイズ、およびビューポートに対するコンテンツアイテムの位置に基づくことが可能である。コンテンツアイテムのサイズは、たとえば、コンテンツアイテムフレームは、ほとんど常に、コンテンツアイテムに合うようにサイズ設定されるので、推定される、または直接に測定されることが可能である。たとえば、パブリッシャが300×250ピクセルのコンテンツアイテムを所望する場合、そのコンテンツアイテムのためのコードは、同一の大きさを有する長方形フレームを描くことが可能である。一部の実施形態において、所与のフレームは、ほとんどの最新のブラウザにおいて利用可能な標準のWC3規格値であり得る、window.innerWidthおよびwindow.innerHeightなどのプロパティを読み取ることによって、そのフレーム自らのサイズを測定することが可能である。
【００１９】
ビューポートのサイズは、様々な様態で推定され得る。一部の実施形態において、ビューポートのサイズは、たとえば、window.outerWidthおよびwindow.outerHeightを測定することによって外側境界に基づいて、推定され得る。これらの呼出しは、ほとんどの最新のブラウザにおいて利用可能である。そのウィンドウ高さ値およびウィンドウ幅値は、ウェブコンテンツを提示するための利用可能なスペースを小さくする可能性がある要素によって占められる面積を含み得る。これらの要素の例には、スクロールバー、ユニバーサルリソースロケータ(URL)バー、ブックマークバー、および他のブラウザ「クローム」要素が含まれる。たとえば、コンテンツアイテムが目に見える、真のウェブページ表示領域は、これらのクローム要素を含まない。
【００２０】
一部の実施形態において、ウェブページ表示領域のより正確な推定が、たとえば、クローム要素の測定されたサイズ、または推定されたサイズに基づいて、補正係数を使用することによって実現され得る。たとえば、しばしば、誤差の最大の源であるクローム要素であり得る、ブラウザヘッダによって占められる面積、たとえば、ウェブページ表示領域とブラウザウィンドウとの間の相違に関して、補正が行われ得る。一部の実施形態において、ブラウザヘッダサイズは、window.outerHeightの履歴上の測定に基づく、たとえば、時とともに収集された統計データに基づくことが可能である。これらの値が、たとえば、document.documentElement.clientHeightを使用して、ビューポート高さの直接測定と比較され得る。その2つの値の差が、たとえば、多くの事例においてヘッダサイズを近似することが可能な、誤差を表し得る。
【００２１】
一部の実施形態において、オペレーティングシステムとブラウザバージョンの様々な組合せに関するヘッダサイズ情報が収集されて、記憶されることが可能である。記憶される値は、たとえば、控えめの推定を使用して決定され得る。すなわち、サンプリングされたヘッダの少なくとも80パーセントのサイズを表す80パーセンタイルヘッダサイズが記憶され得る。他のしきい値が選択されることも可能である。一部の実施形態において、ブラウザバージョンとオペレーティングシステム(OS)バージョンの主要な各組合せのパーセンタイルまたは他の何らかの統計的グループ分けに基づく値が、選択されることが可能である。たとえば、記憶される値は、80パーセンタイルサンプリングに基づくことが可能であり、すなわち、主要な各OS-ブラウザ組合せに関して、測定されたヘッダの80%より大きい高さである高さ値が選択されることが可能である。window.outerHeightからこの値を引くことが、ビューポートサイズのはるかに良好な推定をもたらすことが可能であり、この計算は、コンテンツアイテム視認性を監視している間に行われ得る。
【００２２】
たとえば、ビューポートに対する、コンテンツアイテムの位置は、様々な様態で決定され得る。一部の実施形態において、コンテンツアイテムの位置が直接に測定され得ない場合、ブラウザ提供の専有のプロパティまたは他のフィーチャが使用され得る。例として、Firefox特有のAPIが、window.screenX、window.screenY、window.mozInnerScreenX、およびwindow.mozInnerScreenYを計算するのに使用され得る。ScreenXおよびscreenは、モニタ画面座標におけるビューポートの位置(たとえば、左上隅)を与えることが可能であり、mozInnerScreenX/Yは、画面座標におけるフレームの位置(たとえば、左上隅)を与えることが可能である。これらの値をビューポート座標に正規化することは、フレーム位置からビューポート位置を引くことによって行われ得る。たとえば、画面座標においてブラウザの位置が(200,500)であり、フレームの位置が(250,510)である場合、コンテンツアイテムはビューポート座標において(50,10)に位置するという決定が行われ得る。
【００２３】
コンテンツアイテムのどれだけが目に見えるかを計算することは、様々な様態で実現され得る。一部の実施形態において、2つの長方形(たとえば、ブラウザウィンドウとフレーム)の重なり合いの面積は、ユーザの目に見えるコンテンツアイテムの部分を表し得る。一部の実施形態において、この面積をコンテンツアイテム全体の面積で割ることが、目に見えるコンテンツアイテムのパーセンテージを与えることが可能である。
【００２４】
一部の実施形態において、時間要素が、視認性を確立するために使用され得る。たとえば、一部のシステムは、コンテンツアイテム視認性に関して3ミリ秒標準測定を使用し、見られているとしてカウントされるためには、コンテンツアイテムの50%が目に見えなければならない。一部の実施形態において、標準は、コンテンツアイテムが、目に見えると見なされるには、1秒間、50%目に見えていなければならないことを指定し得る。この視認性標準を確立するのに、前述の計算が、毎秒、繰り返され得る。任意の2つの連続する計算が、コンテンツアイテムが少なくとも50%視認可能であることを示す場合、そのコンテンツアイテムは見られたと想定され得る。
【００２５】
一部の実施形態において、本明細書において説明される技法が、コンテンツアイテム視認性を測定すること/予測することに加えて、他の目的でも使用され得る。たとえば、これらの技法が、たとえば、ページロード時の視認性測定に基づいて、above-the-fold検出のために使用されることも可能である。別の例において、これらの技法が、たとえば、決して見られることのないコンテンツアイテム配置を識別することによって、スパム検出のために使用されることも可能である。
【００２６】
一部の実施形態において、スクロールバーの幅を測定し、次いで、該当する場合、そのサイズに合わせて補正することによって、より正確な位置推定が実現され得る。たとえば、スクロールバー幅の測定は、JavaScript(登録商標)メソッドを使用して、または他の様態で行われ得る。
【００２７】
一部の実施形態において、ヘッダ高さは、様々な様態で推定され得る。たとえば、それらの推定は、より控えめな値(たとえば、90パーセンタイル)を使用すること、より思い切った値(たとえば、60パーセンタイル)を使用すること、フラットな値(たとえば、150ピクセル)を使用することが可能である。一部の実施形態(限られた画面サイズを有するデバイス(たとえば、モバイルデバイス)上で提示するための実施形態などの)において、使用される推定は、クロームフィーチャのいずれも考慮しない、または限られた数のクロームフィーチャを考慮しないことが可能である。
【００２８】
図1は、コンテンツを配信するための例示的な環境100のブロック図である。例示的な環境100は、コンテンツを求める要求に応答してコンテンツを選択して、提供するためのコンテンツ管理システム110を含む。例示的な環境100は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、インターネット、または以上の組合せなどのネットワーク102を含む。ネットワーク102は、コンテンツソース104、ユーザデバイス106、コンテンツスポンサ108(たとえば、広告主)、パブリッシャ109、およびコンテンツ管理システム110を接続する。例示的な環境100は、数千のコンテンツソース104、ユーザデバイス106、コンテンツスポンサ108、およびパブリッシャ109を含み得る。
【００２９】
コンテンツソース104は、ネットワーク102を介して提供され得る任意のデータのリポジトリであり得る。コンテンツは、いくつかだけを挙げると、広告、HTMLコンテンツ、テキストコンテンツ、画像、およびビデオなどの様々な形態のコンテンツを含み得る。個々のコンテンツアイテムは、語、句、画像、ビデオ、およびサウンドを含むことが可能であり、埋め込まれた情報(メタ情報ハイパーリンクなどの)、および/または埋め込まれた命令(JavaScript(商標)スクリプトなどの)を含むことが可能である。
【００３０】
ユーザデバイス106は、ユーザの制御下にある電子デバイスであり、ネットワーク102を介してリソースを要求すること、および受信することができる。例示的なユーザデバイス106には、パーソナルコンピュータ(PC)、1つまたは複数のプロセッサが組み込まれた、もしくは結合されたテレビ、セットトップボックス、モバイル通信デバイス(たとえば、スマートフォン)、タブレットコンピュータ、およびネットワーク102を介してデータを送受信することができる他のデバイスが含まれる。ユーザデバイス106は、ネットワーク102を介してデータを送受信することを円滑にするウェブブラウザなどの1つまたは複数のユーザアプリケーションを通常、含む。
【００３１】
ユーザデバイス106は、コンテンツソース104からコンテンツを要求することが可能である。すると、コンテンツアイテムを表すデータが、ユーザデバイス106によって提示されるようにユーザデバイス106に提供され得る。
【００３２】
これらのコンテンツアイテムの検索を円滑にするのに、環境100は、コンテンツソース104に含まれる所与のコンテンツアイテムに関連する選択基準(たとえば、キーワード)を使用するなど、コンテンツアイテムを識別して、コンテンツアイテムにインデックスを付ける検索システム112を含み得る。
【００３３】
ユーザデバイス106は、ユーザデバイス106上で提示するためにコンテンツアイテムを探し出すクエリなどの検索クエリ116を、ネットワーク102を介して検索システム112にサブミットすることが可能である。これに応答して、検索システム112は、コンテンツソースにアクセスして、検索クエリ116に関係のあるコンテンツアイテムを識別する。コンテンツがユーザデバイス106によって要求されると、コンテンツ管理システム110が、コンテンツを求める要求を受信する。
【００３４】
その要求に含められたデータに少なくとも部分的に基づいて、コンテンツ管理システム110は、その要求に応答して提供されるのに適格であるコンテンツ(「適格のコンテンツアイテム」)を、従来の検索結果と一緒に選択することが可能である。たとえば、適格のコンテンツアイテムは、識別されたスペースの特性と合致する特性を有する適格の広告を含み得る。一部の実施形態において、適格のコンテンツアイテムの選択は、人口構成シグナルおよび行動シグナルなどのユーザシグナルにさらに依存し得る。
【００３５】
コンテンツ管理システム110は、競売の(または他の何らかの選択プロセスによる)結果に少なくとも部分的に基づいて提示されるように提供されるべき適格のコンテンツアイテムから選択することが可能である。たとえば、適格のコンテンツアイテムに関して、コンテンツ管理システム110は、コンテンツスポンサ108からオファーを受信し、その受信されたオファーに少なくとも部分的に基づいて(たとえば、競売の終わりの時点における最高の入札者に基づいて、またはオープン予約(open reservation)を満たすことと関係する基準などの他の基準に基づいて)、その受信されたオファーに応答するコンテンツを割り当てることが可能である。それらのオファーは、コンテンツスポンサのコンテンツの提示(または選択、もしくはコンテンツスポンサのコンテンツとの他の対話)のためにコンテンツスポンサが支払う用意のある金額を表す。たとえば、オファーは、CPM入札と呼ばれる、コンテンツアイテムの1000のインプレッション(impression)(すなわち、提示)ごとにコンテンツスポンサが支払う用意のある金額を指定することが可能である。代替として、オファーは、コンテンツアイテムの選択(すなわち、クリックスルー)、またはコンテンツアイテムの選択の後に続くコンバージョン(conversion)の対価としてコンテンツスポンサが支払う用意のある金額(たとえば、1エンゲージメント(engagement)当たりの費用)を指定することが可能である。たとえば、選択されるコンテンツアイテムは、オファーだけに基づいて、あるいはコンテンツパフォーマンスおよび/または他の要因から導き出された品質スコアなどの1つまたは複数の係数が掛けられた各コンテンツスポンサのオファーに基づいて、決定され得る。
【００３６】
コンテンツ管理システム110は、複数のエンジンを含み得る。たとえば、視認性推定エンジン121が、ユーザデバイス106上に提示されるコンテンツアイテムの視認性を推定することが可能である。
【００３７】
ユーザが、提供されたコンテンツアイテムと関係する特定のトランザクションまたはアクションを実行すると、コンバージョンが生じたとされ得る。コンバージョンを構成するものは、事例ごとに変わり得、様々な様態で決定され得る。たとえば、コンバージョンは、ユーザが、コンテンツアイテム(たとえば、広告)をクリックし、ウェブページに向かわされ、そのウェブページを離れるまでに購入を完了させると、生じることが可能である。また、コンバージョンは、ホワイトペーパ(white paper)をダウンロードすること、ウェブサイトの少なくとも所与の深度まで移動すること、少なくともある数のウェブページを閲覧すること、ウェブサイトまたはウェブページで少なくとも所定の時間を費やすこと、ウェブサイトで登録すること、またはメディアを体験することなどの任意の測定可能な、または観察可能なユーザアクションであるようにコンテンツプロバイダによって定義されることも可能である。コンバージョンを構成する他のアクションも使用され得る。
【００３８】
図2は、例示的なブラウザウィンドウ202、およびその中に包含される要素を示す。たとえば、ブラウザウィンドウ102は、ブラウザヘッダ204(たとえば、メニュー、ツールバー、および他のヘッダ要素を含む)と、ウェブページ表示領域206と、スクロールバー208aおよび208bとを包含する。一部の実施形態において、ブラウザウィンドウ202は、ブラウザヘッダ204および208a〜208bと一緒に、ウェブページ表示領域206のサイズを小さくし、このため、コンテンツが提示される面積を小さくし得る他の要素を包含し得る。このため、この例において、ブラウザウィンドウ202のサイズは、ウェブページ表示領域206のサイズの正確な表現を与えない可能性がある。図2の例は、ブラウザおよびブラウザ表示領域に関連するが、同一の種類の技法が、ウェブページおよびウェブページ表示領域に関して使用され得る。
【００３９】
ウェブページ表示領域206のより正確なサイズを決定するために、たとえば、ブラウザウィンドウ202の知られている、または推定されるサイズ、および他の情報との関係で、調整が行われ得る。一部の実施形態において、それらの調整は、情報が利用可能である一般的なブラウザおよび/または主要なブラウザに関する知られているメニュー/ツールバー要素サイズおよびスクロールバー要素サイズに基づくことが可能である。たとえば、様々なブラウザ、および様々なバージョンのオペレーティングシステムに関してメニュー/ツールバーおよびスクロールバーのサイズおよび位置を実験すること、およびサンプリングすることによって、ウェブページ表示領域を推定するブラウザウィンドウサイズに対するリアルタイムの調整を決定するのに後に使用するために情報が記憶され得る。
【００４０】
一部の実施形態において、ウェブページ表示領域は、ブラウザウィンドウプロパティ(たとえば、outerWidthおよびouterHeight)を使用して推定され得る。このことは、すべてのインターフェース要素(たとえば、メニュー、ツールバー、スクロールバーなど)を含むブラウザウィンドウの外側幅および外側高さを、それらのプロパティがクロスドメインフレームからである場合でさえ、識別することが可能である。たとえば、多くの主要なブラウザが、ウェブページ表示領域を大まかに推定するようにブラウザウィンドウの幅および高さを識別することができるプロパティまたは他の情報を提供することが可能である。しかし、ブラウザウィンドウサイズは、ツールバー、スクロールバー、およびウィンドウ内の他の任意の非コンテンツ要素を含む。このすべてを含めたサイズは、実際のコンテンツ(たとえば、広告を含む)がレンダリングされるウェブページ表示領域よりも、通常、大きい。
【００４１】
コンテンツアイテムの視認性を決定する際の別の要因は、ビューポート内のコンテンツアイテム位置である。一例において、コンテンツアイテムの位置は、そのコンテンツアイテムを包含するフレーム(たとえば、アイフレーム)のx/y座標に基づいて決定され得る。たとえば、ビューポート内の広告の位置が、その広告に関連するフレームのx,y座標を、そのブラウザウィンドウのx/y座標と比較することによって決定され得る。
【００４２】
図3は、ブラウザウィンドウを包含する例示的な画面領域302を示す。たとえば、画面領域302が、前述したブラウザウィンドウ202を包含することが可能である。一部の実施形態において、一部のオペレーティングシステムおよび/またはブラウザが、ブラウザウィンドウの1つまたは複数の隅座標を、たとえば、画面座標に関して識別するプロパティ(たとえば、window.screenXおよびwindow.screenY)を提供することが可能である。たとえば、それらのプロパティは、ブラウザウィンドウ座標304を、ブラウザウィンドウ202の左上隅のx,y座標(たとえば、座標(xB,yB))として識別することが可能である。
【００４３】
一部の実施形態において、一部のオペレーティングシステムおよび/またはブラウザによって提供される他のプロパティ(たとえば、window.mozInnerScreenX/Y)が、たとえば、同様に画面座標に関して、フレームの1つまたは複数の隅座標を識別することが可能である。たとえば、それらのプロパティは、フレーム座標306を、フレーム308(たとえば、アイフレーム)の左上隅のx,y座標(たとえば、座標(xF,yF))として識別することが可能である。ブラウザウィンドウ座標304およびフレーム座標306は各々、画面座標系に関するので、フレーム308の位置は、ブラウザウィンドウ202に対して決定され得るとともに、ウェブページ表示領域206に対して推定され得る。この技法は、たとえば、ブラウザウィンドウ内の広告の位置を決定するのに使用され得る。
【００４４】
一部の実施形態において、ブラウザウィンドウ202に対するフレーム308の位置は、ブラウザウィンドウ座標304とフレーム座標306との座標の差を得ることによって推定され得る。たとえば、フレーム308は、差(たとえば、(xF-xB,yF-yB))として計算され得る。
【００４５】
一部の実施形態において、フレーム308の位置は、ウェブページ表示領域206の左上隅との関係でフレーム308を推定するために、前述したヘッダメニュー/ツールバーのサイズの推定に基づいて調整され得る。たとえば、ウェブページ表示領域座標310が、ブラウザウィンドウ座標304を使用して、ブラウザヘッダ204の高さを引いて推定され得る。
【００４６】
一部の実施形態において、フレーム308の位置は、フレーム座標306(たとえば、座標(xF,yF))を得るマウスイベントを生じさせることなどの他の技法を使用して決定され得る。たとえば、addEventListenerの代わりにattachEventを使用して、リスナがフレームの文書に付加され得る。そのフレーム内から、fireEvent('onmousemove')を呼び出すことにより、新たに追加されるリスナをトリガすることが可能である。そのイベントのxCLIENTとyCLIENTが、そのフレームからのマウスのオフセットであり得る一方で、そのイベントのxSCREEN、ySCREENは、画面上のそのイベントの位置である。画面値とクライアント値の差が、視認性を決定するのに必要とされる、たとえば、
xF=xSCREEN-xCLIENT、および
yF=ySCREEN-yCLIENT
をもたらし得る。
【００４７】
図4は、クロスドメインアイフレームに含まれるコンテンツアイテムに関するコンテンツ視認性を決定するための例示的なプロセス400の流れ図である。一部の実施形態において、コンテンツ管理システム110および視認性推定エンジン121が、1つまたは複数のプロセッサによって実行される命令を使用してプロセス400の段階を実行することが可能である。図1〜図3が、プロセス400のステップを実行するための例示的な構造を与えるのに使用される。
【００４８】
ブラウザに関連するビューポートのウェブページ表示領域のサイズに関する第1の推定が決定される(402)。たとえば、コンテンツ管理システム110が、ウェブページ表示領域206のサイズを決定することが可能である。一部の実施形態において、第1の推定を決定することは、ウェブページ表示領域のサイズから、1つまたは複数のクローム要素の推定されるサイズを引くことを含み得る。一部の実施形態において、第1の推定を決定することは、ブラウザビューポートのサイズからブラウザヘッダの推定されるサイズを引くことを含み得る。一部の実施形態において、第1の推定を決定することは、ブラウザヘッダおよびスクロールバーに関する推定されるサイズを引くことを含み得る。
【００４９】
一部の実施形態において、第1の推定を決定することは、その1つまたは複数のクローム要素の平均(または平均値(mean)などの他の何らかの数学的構造)サイズを決定する統計解析を実行することをさらに含み得る。たとえば、ブラウザ高さのサイズを含むサンプルが、オペレーティングシステムとブラウザのペアに基づいて時とともに収集されることが可能であり、その情報が、必要とされるまで記憶されることが可能である。
【００５０】
ブラウザからアイフレームに関するアイフレーム内側測定を読み取ることを含めて、ウェブページ表示領域内に表示するためのコンテンツアイテム(たとえば、広告)のサイズに関する第2の推定が決定される(404)。
【００５１】
一部の実施形態において、第2の推定を決定することは、コンテンツアイテムのサイズを、アイフレームの内側部分と同一のサイズであるものとして近似することを含み得る。一部の実施形態において、コンテンツアイテムの位置を決定することは、ブラウザ(たとえば、Firefox)のAPIを使用して、ビューポートおよびアイフレームを画面座標において位置特定することをさらに含む。
【００５２】
画面座標におけるビューポートおよびアイフレームの位置を読み取ることによって、ウェブページ表示画面に対するコンテンツアイテムの位置を決定することを含めて、コンテンツアイテム視認性が決定される(406)。
【００５３】
一部の実施形態において、コンテンツアイテム視認性を決定することは、ビューポートにおけるその1つまたは複数のクローム要素の推定されるサイズを補償することをさらに含み得る。たとえば、視認性推定エンジン121が、コンテンツアイテムの視認性が、ブラウザヘッダ204およびスクロールバー208a〜208bのサイズ分だけ小さくされたビューポートのサイズであると決定することが可能である。
【００５４】
一部の実施形態において、コンテンツアイテム視認性を決定することは、ブラウザビューポートの位置と、ブラウザ表示領域の推定とによって定義される第1の長方形、およびアイフレームの位置と、コンテンツアイテムのサイズとによって定義される第2の長方形という2つの長方形の重なり合いの面積を決定することによって、コンテンツアイテムのどれだけが目に見えるかを計算することをさらに含む。
【００５５】
視認性が報告される(408)。たとえば、コンテンツ管理システム110が、コンテンツアイテムの視認性についての情報を、コンテンツアイテムに関連するコンテンツスポンサ108に提供することが可能である。
【００５６】
一部の実施形態において、プロセス400は、コンテンツアイテムがクロスドメインアイフレーム内で表示されていると決定することをさらに備えることが可能である。たとえば、コンテンツ管理システム110は、直接測定が可能でない場合しか、コンテンツアイテムの視認性を推定する必要がない。
【００５７】
一部の実施形態において、視認性を報告することは、クロスドメインアイフレームに対するコンテンツアイテムの配信に関連してユーザに提示された際にそのコンテンツアイテムが目に見えたかどうかを、コンテンツスポンサに報告することをさらに含む。たとえば、コンテンツ管理システム110は、コンテンツスポンサのコンテンツアイテム(たとえば、広告)が目に見えていたか否かをコンテンツスポンサ108に報告することが可能である。
【００５８】
図5は、クライアントとして、または1つのサーバもしくは複数のサーバとして本明細書において説明されるシステムおよび方法を実施するのに使用され得る例示的なコンピューティングデバイス500、550のブロック図である。コンピューティングデバイス500は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータなどの、様々な形態のデジタルコンピュータを表すことを意図している。コンピューティングデバイス500は、1つまたは複数のプロセッサが内部に組み込まれた、または接続された、テレビまたは他の電子デバイスなどの他の任意の通常、非モバイルのデバイスを表すことをさらに意図している。コンピューティングデバイス550は、携帯情報端末、セルラー電話、スマートフォン、および他のコンピューティングデバイスなどの様々な形態のモバイルデバイスを表すことを意図している。本明細書において示される構成要素、それらの構成要素の接続および関係、ならびにそれらの構成要素の機能は、単に例であることを意図しており、本明細書において説明され、かつ/または主張される本発明の実施形態を限定することは意図していない。
【００５９】
コンピューティングデバイス500は、プロセッサ502と、メモリ504と、ストレージデバイス506と、メモリ504および高速拡張ポート510に接続される高速インターフェース508と、低速バス514およびストレージデバイス506に接続される低速インターフェース512とを含む。構成要素502、504、506、508、510、および512の各々は、様々なバスを使用して互いに接続され、共通のマザーボード上に、または適宜、他の様態で実装されることが可能である。プロセッサ502は、高速インターフェース508に結合されたディスプレイ516などの外部入力/出力デバイス上でGUIのためのグラフィカル情報を表示するようにメモリ504の中に、またはストレージデバイス506上に記憶された命令を含め、コンピューティングデバイス500内で実行されるように命令を処理することが可能である。他の実施形態において、複数のプロセッサ、および/または複数のバスが、複数のメモリ、および複数のタイプのメモリと一緒に、適宜、使用され得る。また、複数のコンピューティングデバイス500が、各デバイスが必要な動作の部分を提供して(たとえば、サーババンク、ブレードサーバのグループ、またはマルチプロセッサシステムとして)、接続されることも可能である。
【００６０】
メモリ504は、コンピューティングデバイス500内に情報を記憶する。一実施形態において、メモリ504は、コンピュータ可読媒体である。一実施形態において、メモリ504は、揮発性メモリユニットまたは複数の揮発性メモリユニットである。別の実施形態において、メモリ504は、不揮発性メモリユニットまたは複数の不揮発性メモリユニットである。
【００６１】
ストレージデバイス506は、コンピューティングデバイス500に大容量ストレージをもたらすことができる。一実施形態において、ストレージデバイス506は、コンピュータ可読媒体である。様々な異なる実施形態において、ストレージデバイス506は、フロッピー(登録商標)ディスクデバイス、ハードディスクデバイス、光ディスクデバイス、またはテープデバイス、フラッシュメモリもしくは他の類似したソリッドステートメモリデバイス、または、ストレージエリアネットワークにおける、もしくは他の構成におけるデバイスを含む、デバイスのアレイであり得る。一実施形態において、コンピュータプログラム製品は、情報キャリアとして実体化される。そのコンピュータプログラム製品は、実行されると、前述した方法などの、1つまたは複数の方法を実行する命令を包含する。その情報キャリアは、メモリ504、ストレージデバイス506、またはプロセッサ502上のメモリなどのコンピュータ可読媒体または機械可読媒体である。
【００６２】
高速コントローラ508が、コンピューティングデバイス500に関する帯域幅を多用する動作を管理する一方で、低速コントローラ512が、それほど帯域幅を多用しない動作を管理する。デューティのそのような割当ては、単に例にすぎない。一実施形態において、高速コントローラ508は、メモリ504、ディスプレイ516(たとえば、グラフィックスプロセッサまたはアクセラレータを介して)に結合され、様々な拡張カード(図示せず)を受け入れることが可能な高速拡張ポート510に結合される。その実施形態において、低速コントローラ512は、ストレージデバイス506および低速拡張ポート514に結合される。様々な通信ポート(たとえば、USB、Bluetooth(登録商標)、イーサネット(登録商標)、ワイヤレスイーサネット(登録商標))を含み得る低速拡張ポートは、キーボード、ポインティングデバイス、スキャナなどの1つもしくは複数の入力/出力デバイスに、または、たとえば、ネットワークアダプタを介して、スイッチもしくはルータなどのネットワーキングデバイスに結合され得る。
【００６３】
コンピューティングデバイス500は、図に示されるように、いくつかの異なる形態で実装され得る。たとえば、コンピューティングデバイス500は、標準のサーバ520として、またはそのようなサーバのグループの中で複数回、実装され得る。また、コンピューティングデバイス500は、ラックサーバシステム524の一部として実装されることも可能である。さらに、コンピューティングデバイス500は、ラップトップコンピュータ522などのパーソナルコンピュータにおいて実装され得る。代替として、コンピューティングデバイス500からの構成要素が、デバイス550などのモバイルデバイス(図示せず)における他の構成要素と組み合わされてもよい。そのようなデバイスの各々は、コンピューティングデバイス500、550のうちの1つまたは複数を包含することが可能であり、システム全体が、互いに通信する複数のコンピューティングデバイス500、550から構成されることが可能である。
【００６４】
コンピューティングデバイス550は、構成要素としてとりわけ、プロセッサ552と、メモリ564と、ディスプレイ554などの入力/出力デバイスと、通信インターフェース566と、トランシーバ568とを含む。また、デバイス550は、さらなるストレージをもたらす、マイクロドライブまたは他のデバイスなどのストレージデバイスを備えることも可能である。構成要素550、552、564、554、566、および568の各々は、様々なバスを使用して互いに接続され、これらの構成要素のうちのいくつかは、共通のマザーボード上に、または適宜、他の様態で実装されることが可能である。
【００６５】
プロセッサ552は、メモリ564の中に記憶された命令を含め、コンピューティングデバイス550内で実行されるように命令を処理することが可能である。プロセッサはまた、個別のアナログプロセッサおよびデジタルプロセッサを含み得る。プロセッサは、たとえば、ユーザインターフェースの制御、デバイス550によって実行されるアプリケーション、およびデバイス550によるワイヤレス通信などの、デバイス550のその他の構成要素の協調をもたらすことが可能である。
【００６６】
プロセッサ552は、ディスプレイ554に結合された制御インターフェース558およびディスプレイインターフェース556を介してユーザと対話することが可能である。ディスプレイ554は、たとえば、TFT LCDディスプレイもしくはOLEDディスプレイ、または他の適切なディスプレイ技術であり得る。ディスプレイインターフェース556は、グラフィカル情報および他の情報をユーザに提示するようにディスプレイ554を駆動するための適切な回路を備えることが可能である。制御インターフェース558は、ユーザからコマンドを受け取り、そのコマンドを、プロセッサ552にサブミットするために変換することが可能である。さらに、プロセッサ552と通信状態にある外部インターフェース562が、他のデバイスを相手にしたデバイス550の近距離通信(near area communication)を可能にするように提供され得る。外部インターフェース562が、たとえば、有線通信(たとえば、ドッキング手順を介した)、またはワイヤレス通信(たとえば、Bluetooth(登録商標)もしくは他のそのような技術を介した)をもたらすことが可能である。
【００６７】
メモリ564は、コンピューティングデバイス550内に情報を格納する。一実施形態において、メモリ564は、コンピュータ可読媒体である。一実施形態において、メモリ564は、揮発性メモリユニットまたは複数の揮発性メモリユニットである。別の実施形態において、メモリ564は、不揮発性メモリユニットまたは複数の不揮発性メモリユニットである。また、拡張メモリ574が提供されて、たとえば、加入者IDモジュール(SIM)カードインターフェースを含み得る拡張インターフェース572を介してデバイス550に接続されることも可能である。そのような拡張メモリ574は、デバイス550に追加のストレージスペースをもたらすことが可能であり、またはデバイス550のためにアプリケーションもしくは他の情報を記憶することも可能である。具体的には、拡張メモリ574は、前述したプロセスを実行する、または補足する命令を含むことが可能であり、セキュリティ保護された情報を含むことも可能である。このため、たとえば、拡張メモリ574は、デバイス550のためのセキュリティモジュールとして提供されることが可能であり、デバイス550のセキュリティ保護された使用を許す命令がプログラミングされることが可能である。さらに、セキュリティで保護されたアプリケーションが、ハッキング不可能な様態でSIMカード上に識別情報を置くなどして、さらなる情報と一緒に、SIMカードを介して提供され得る。
【００６８】
メモリは、後段で説明されるとおり、たとえば、フラッシュメモリおよび/またはMRAMメモリを含み得る。一実施形態において、コンピュータプログラム製品は、情報キャリアとして実体化される。そのコンピュータプログラム製品は、実行されると、前述した方法などの、1つまたは複数の方法を実行する命令を包含する。その情報キャリアは、メモリ564、拡張メモリ574、またはプロセッサ552上のメモリなどのコンピュータ可読媒体または機械可読媒体である。
【００６９】
デバイス550は、必要な場合、デジタル信号処理回路を含み得る通信インターフェース566を介してワイヤレスで通信することが可能である。通信インターフェース566は、とりわけ、GSM(登録商標)音声通話、SMS、EMS、もしくはMMSメッセージング、CDMA、TDMA、PDC、WCDMA(登録商標)、CDMA2000、またはGPRSなどの様々なモードまたはプロトコルの下で通信をもたらすことが可能である。そのような通信は、たとえば、無線周波数トランシーバ568を介して行われ得る。さらに、短距離通信が、Bluetooth(登録商標)、WiFi(登録商標)、または他のそのようなトランシーバ(図示せず)を使用するなどして、行われ得る。さらに、GPS受信機モジュール570が、デバイス550上で実行されるアプリケーションによって適宜、使用され得る、さらなるワイヤレスデータをデバイス550に提供することが可能である。
【００７０】
また、デバイス550は、ユーザから口頭の情報を受け取り、その情報を使用可能なデジタル情報に変換することが可能なオーディオコーデック560を使用して、可聴であるように通信することも可能である。オーディオコーデック560は、たとえば、デバイス550のハンドセットにおいて、スピーカを介するなどして、ユーザのために可聴のサウンドを生成することも同様に可能である。そのようなサウンドは、音声電話呼からのサウンドを含むことが可能であり、記録されたサウンド(たとえば、音声メッセージ、音楽ファイルなど)を含むことが可能であり、デバイス550上で動作しているアプリケーションによって生成されたサウンドを含むことも可能である。
【００７１】
コンピューティングデバイス550は、図に示されるように、いくつかの異なる形態で実施されることが可能である。たとえば、デバイス550は、セルラー電話580として実施され得る。また、デバイス550は、スマートフォン582、携帯情報端末、または他のモバイルデバイスの一部として実施されることも可能である。
【００７２】
本明細書において説明されるシステムおよび技法の様々な実施形態が、デジタル電子回路、集積回路、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/または以上の組合せとして実現され得る。これらの様々な実施形態には、ストレージシステムからデータおよび命令を受け取るように、かつストレージシステムにデータおよび命令を送るように結合された、専用であっても、汎用であってもよい少なくとも1つのプログラマブルプロセッサと、少なくとも1つの入力デバイスと、少なくとも1つの出力デバイスとを含むプログラマブルシステム上で実行可能であり、かつ/または解釈可能である1つまたは複数のコンピュータプログラムとしての実施が含まれ得る。
【００７３】
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとしても知られる)は、プログラマブルプロセッサのための機械命令を含み、高レベル手続きプログラミング言語および/もしくはオブジェクト指向プログラミング言語、ならびに/またはアセンブリ言語/機械語で実装され得る。他のプログラミングパラダイム、たとえば、関数プログラミング、論理プログラミング、または他のプログラミングが、使用されることも可能である。本明細書において使用される「機械可読媒体」、「コンピュータ可読媒体」という用語は、機械命令を機械可読信号として受け取る機械可読媒体を含め、プログラマブルプロセッサに機械命令および/またはデータを供給するのに使用される任意のコンピュータプログラム製品、装置、および/またはデバイス(たとえば、磁気ディスク、光ディスク、メモリ、プログラマブル論理デバイス(PLD))を指す。「機械可読信号」という用語は、プログラマブルプロセッサに機械命令および/またはデータを供給するのに使用される任意の信号を指す。
【００７４】
ユーザとの対話を可能にするのに、本明細書において説明されるシステムおよび技法は、ユーザに情報を表示するためのディスプレイデバイス(たとえば、CRT(陰極線管)モニタまたはLCD(液晶ディスプレイ)モニタ)と、ユーザがコンピュータに入力を与えることができるキーボードおよびポインティングデバイス(たとえば、マウスまたはトラックボール)とを有するコンピュータ上で実施され得る。他の種類のデバイスが、ユーザとの対話を可能にするように使用されることも可能であり、たとえば、ユーザに与えられるフィードバックは、任意の形態の知覚フィードバック(たとえば、視覚フィードバック、聴覚フィードバック、または触覚フィードバック)であることが可能であり、ユーザからの入力は、音響入力、音声入力、または触覚入力を含め、任意の形態で受け取られることが可能である。
【００７５】
本明細書において説明されるシステムおよび技法は、バックエンド構成要素(たとえば、データサーバとして)を含むコンピューティングシステム、もしくはミドルウェア構成要素(たとえば、アプリケーションサーバ)を含むコンピューティングシステム、もしくはフロントエンド構成要素(たとえば、ユーザが、本明細書において説明されるシステムおよび技法の実施形態と対話することができるグラフィカルユーザインターフェースまたはウェブブラウザを有するクライアントコンピュータ)を含むコンピューティングシステム、またはそのようなバックエンド構成要素、ミドルウェア構成要素、もしくはフロントエンド構成要素の任意の組合せにおいて実施され得る。システムの構成要素は、任意の形態または媒体のデジタルデータ通信(たとえば、通信ネットワーク)によって互いに接続され得る。通信ネットワークの例には、ローカルエリアネットワーク(「LAN」)、ワイドエリアネットワーク(「WAN」)、およびインターネットが含まれる。
【００７６】
このコンピューティングシステムは、クライアントと、サーバとを含み得る。クライアントとサーバは、一般に、互いに遠隔であり、通常、通信ネットワークを介して対話する。クライアントとサーバの間の関係は、それぞれのコンピュータ上で実行されており、互いにクライアント-サーバ関係を有するコンピュータプログラムによって生じる。
【００７７】
本明細書は、多くの特定の実施の詳細を包含するが、これらは、あらゆる発明の範囲、または主張され得るものの範囲に対する限定として解釈されるべきではなく、特定の発明の特定の実施形態に特有の特徴の説明と解釈されるべきである。別々の実施形態の脈絡で本明細書において説明されるいくつかの特徴は、単一の実施形態において組合せで実施されることも可能である。逆に、単一の実施形態の脈絡で説明される様々な特徴が、複数の実施形態において別々に、または任意の適切な部分的組合せで実施されることも可能である。さらに、特徴は、いくつかの組合せで作用するものとして前段で説明されて、そのように最初、請求されることさえ可能であるものの、請求される組合せからの1つまたは複数の特徴は、ある場合にはその組合せから削除されることが可能であり、その請求される組合せは、部分的組合せ、または部分的組合せの変形を対象とすることも可能である。
【００７８】
同様に、動作は、特定の順序で図面に示されるが、このことは、望ましい結果を実現するのに、その動作が、示される特定の順序で、または順番に実行されることを要求するとも、例示されるすべての動作が実行されることを要求するとも理解されるべきではない。いくつかの状況において、マルチタスキングおよび並行処理が有利であり得る。さらに、前述した実施形態における様々なシステム構成要素の分離は、すべての実施形態においてそのような分離を要求するものと理解されるべきではなく、説明されるプログラム構成要素およびシステムは、一般に、単一のソフトウェア製品の中で一緒に統合されることが可能であり、または複数のソフトウェア製品にまとめられることが可能であることを理解されたい。
【００７９】
以上、主題の特定の実施形態が説明されてきた。他の実施形態も添付の特許請求の範囲に含まれる。一部の事例において、特許請求の範囲に記載されるアクションは、異なる順序で実行されて、それでも、望ましい結果を実現することが可能である。さらに、添付の図に示されるプロセスは、望ましい結果を実現するのに、示される特定の順序も、逐次的な順序も必ずしも要求するわけではない。いくつかの実施形態において、マルチタスキングおよび並行処理が有利であり得る。
【符号の説明】
【００８０】
100  環境
102  ネットワーク
104  コンテンツソース
106  ユーザデバイス
108  コンテンツスポンサ
109  パブリッシャ
110  コンテンツ管理システム
112  検索システム
116  クエリ
121  視認性推定エンジン
202  ブラウザウィンドウ
204  ブラウザヘッダ(たとえば、メニュー、ツールバーなど)
206  ウェブページ表示領域
208a  スクロールバー
208b  スクロールバー
302  画面領域
304  ブラウザウィンドウ座標
306  フレーム座標
308  フレーム(たとえば、アイフレーム)
310  ウェブページ表示領域座標
500  コンピューティングデバイス
502  プロセッサ
504  メモリ
506  ストレージデバイス
508  高速インターフェース、高速コントローラ
510  高速拡張ポート
512  低速インターフェース、低速コントローラ
514  低速バス、低速拡張ポート
516  ディスプレイ
520  サーバ
522  ラップトップコンピュータ
524  ラックサーバシステム
550  コンピューティングデバイス
552  プロセッサ
554  ディスプレイ
556  ディスプレイインターフェース
558  制御インターフェース
560  オーディオコーデック
562  外部インターフェース
564  メモリ
566  通信インターフェース
568  トランシーバ
570  GPS受信機モジュール
572  拡張インターフェース
574  拡張メモリ
580  セルラー電話
582  スマートフォン
【図１】
0006470735.tif 000002
【図２】
0006470735.tif 000003
【図３】
0006470735.tif 000004
【図４】
0006470735.tif 000005
【図５】
0006470735.tif 000006