(57)【要約】ユーザーが、コンテンツをカスタマイズし、編集し、共有し、分析し、エクスポートしおよび／または注記するなどの、ウェブページの少なくとも一部に関する動作を実行することを可能にする、レンダリングされたウェブページ上にウェブページの振舞い拡張（ＷＰＢＥ）制御要素を提供する。処理したコンテンツを、当初のウェブページ上、ウェブページのローカルに記憶されたバージョン上に提示し、または次の使用のためにアーカイブすることができ、当初のウェブページに対するいかなる変更をトラッキングすることができ、ユーザーは変更に関する通知を受けることができる。ＷＰＢＥ制御要素は、ウェブアプリケーションの能力、ブラウザーの能力、ユーザー選択、使用パターンおよびそれらに相当するものなどを要因に基づいて、ソースウェブアプリケーションまたはローカルブラウザーにおけるウェブページに組み込むことができる。
2013540309.tif 000002
【特許請求の範囲】
【請求項１】
コンピューティングデバイスの少なくとも一部において実行される、ウェブページの振舞い拡張制御を提供するための方法であって、
レンダリングされたウェブページ上にウェブページの振舞い拡張（ＷＰＢＥ）制御要素を提示するステップと、
前記ＷＰＢＥ制御要素の活性化を検出すると、前記レンダリングされたウェブページと関連付けられたコンテンツを取り出すステップと、
前記ＷＰＢＥ制御要素を通じて受信されたユーザーインジケーションに基づいて、前記取り出したコンテンツを処理するステップと、
前記当初のレンダリングされたウェブページおよび前記当初のレンダリングされたウェブページのローカルバージョンのうちの１つに、前記処理したコンテンツを提示するステップと
を備えることを特徴とする方法。
【請求項２】
前記コンテンツを記憶するステップと、
前記当初のレンダリングされたウェブページの変更と関連付けられたコンテンツとして前記記憶したコンテンツを更新するステップと、
前記更新し、かつ記憶したコンテンツと関連付けられた通知を提示するステップと
をさらに備えることを特徴とする請求項１に記載の方法。
【請求項３】
アプリケーションを活性化するステップと、
前記活性化したアプリケーションのユーザーインターフェースを通じて、前記処理したコンテンツを提示して、前記コンテンツとの拡張された対話が可能になるステップと
をさらに備えることを特徴とする請求項１に記載の方法。
【請求項４】
前記ＷＰＢＥ制御要素の１つまたは複数の状態を維持して、同一のページへの訪問を繰り返してから、ウェブページ上のユーザーの動作をユーザーに提示するステップをさらに備えることを特徴とする請求項１に記載の方法。
【請求項５】
前記ユーザーの動作は、前記レンダリングされたコンテンツの提示をカスタマイズすることと、前記レンダリングされたコンテンツに関する分析を実行することと、前記レンダリングされたコンテンツを編集することと、前記レンダリングされたコンテンツを共有することと、前記レンダリングされたコンテンツをエクスポートすることと、前記レンダリングされたコンテンツをトラッキングすることと、のうちの１つまたは複数を含むことを特徴とする請求項４に記載の方法。
【請求項６】
前記ＷＰＢＥ制御要素と関連付けられたその他のユーザーからのユーザーの動作を、提案する形式でユーザーに開示するステップをさらに備えることを特徴とする請求項１に記載の方法。
【請求項７】
ウェブページの振舞い拡張（ＷＰＢＥ）制御を提供するためのサーバーであって、
メモリーと、
前記メモリーに結合されたプロセッサーであって、前記プロセッサーは前記メモリーに記憶された命令と連動して、ブラウザーによりレンダリングされるＷＰＢＥ制御要素が組み込まれたウェブページを提供するウェブアプリケーションと、ＷＰＢＥ制御エンジンとを実行することと、を備え、
前記ＷＰＢＥ制御エンジンは、
前記ＷＰＢＥ制御要素の活性化を検出すると、前記ウェブページ上に提示される公表されたコンテンツと、前記ウェブページ上で利用可能であるが提示はされない暗黙のコンテンツと、前記レンダリングされたウェブページと関連付けられたデータストアからの関連するコンテンツと、のうちの組からの少なくとも１つを取り出し、
前記取り出したコンテンツ上の動作についてのユーザー選択を受信し、前記動作は、前記公表されたコンテンツ、暗黙のコンテンツおよび関連したコンテンツのうちの少なくとも１つの提示をカスタマイズし、前記少なくとも１つのコンテンツに関する分析を実行し、前記少なくとも１つのコンテンツを、編集し、転送し、およびトラッキングすることのうちの１つであり、
前記取り出したコンテンツを処理する前記選択した動作を実行する
ように構成されたことを特徴とするサーバー。
【請求項８】
前記ＷＰＢＥ制御要素は、前記レンダリングされたウェブページ全体および前記レンダリングされたウェブページの１つまたは複数の部分のうちの１つと関連付けられることを特徴とする請求項７に記載のサーバー。
【請求項９】
前記ＷＰＢＥ制御エンジンは、前記ウェブアプリケーションが関与することなく、前記サーバーと関連付けられたデータソースから直接、前記関連したコンテンツを取り出すようにさらに構成されたことを特徴とする請求項７に記載のサーバー。
【請求項１０】
前記ＷＰＢＥ制御エンジンは、ユーザーが前記公表されたコンテンツをカスタマイズし、編集し、注記することのうちの１つを可能にするようにさらに構成されたことを特徴とする請求項７に記載のサーバー。
【請求項１１】
前記ＷＰＢＥ制御エンジンは、前記ウェブページをレンダリングする前記ブラウザーの能力および前記ウェブアプリケーションの能力のうちの１つに基づいて、前記ＷＰＢＥ制御要素の活性化してから、利用可能な動作のリストを提供するようにさらに構成されたことを特徴とする請求項７に記載のサーバー。
【請求項１２】
命令が記憶された、ウェブページの振舞い拡張（ＷＰＢＥ）制御を提供するためのコンピューター可読記憶媒体であって、前記命令は、
ウェブページと関連付けられた公表されたコンテンツを、サーバーから受信するステップと、
ＷＰＢＥ制御要素が組み込まれた前記ウェブページをレンダリングするステップと、
前記ＷＰＢＥ制御要素の活性化を検出すると、前記ウェブページと関連付けられた利用可能な動作のリストをユーザーに提示するステップと、
ユーザー選択を受信したことに応答して、ウェブページ上で利用可能であるが提示はされない暗黙のコンテンツおよび関連するコンテンツ、のうちの少なくとも１つを、前記レンダリングされたウェブページと関連付けられたデータストアから取り出すステップと、
前記ユーザーが選択した動作に基づいて、前記取り出したコンテンツを処理するステップと、
前記処理したコンテンツを、前記当初のレンダリングされたウェブページおよび前記当初のレンダリングされたウェブページのローカルバージョンのうちの１つに提示するステップと、
前記処理したコンテンツを記憶して、前記処理したコンテンツを当初のコンテンツへの変更とともに前記サーバーにおいて更新するステップと、
のうちの１つを実行するステップと
を備えるコンピューター可読記憶媒体。
【請求項１３】
前記ＷＰＢＥ制御要素は、前記ブラウザーの能力および前記ユーザーの使用パターンのうちの少なくとも１つに基づいて、前記ローカルブラウザーにおける前記ウェブページに組み込まれることを特徴とする請求項１２に記載のコンピューター可読記憶媒体。
【請求項１４】
前記ＷＰＢＥ制御エンジンは、前記レンダリングされたウェブページの公表されたコンテンツ、暗黙のコンテンツおよび関連するコンテンツのうちの少なくとも１つの提示をカスタマイズし、前記少なくとも１つの提示をカスタマイズし、前記少なくとも１つのコンテンツに関する分析を実行し、前記少なくとも１つのコンテンツを編集し、共有し、エクスポートし、注記しおよびトラッキングすることの組からの少なくとも１つをユーザーが可能にするように構成されたことを特徴とする請求項１２に記載のコンピューター可読記憶媒体。
【請求項１５】
前記命令は、複数の組み込まれたＷＰＢＥ制御要素により前記ウェブページをレンダリングするステップをさらに備え、各ＷＰＢＥ制御要素は前記レンダリングされたウェブページの一部と関連付けられ、各ＷＰＢＥ制御要素は別個の利用可能な動作の組を提供することを特徴とする請求項１２に記載のコンピューター可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、レンダリングされたウェブページ上でウェブページの振舞い拡張制御要素を提供する方法に関する。
【背景技術】
【０００２】
ウェブアプリケーションは、多種多様なサービスおよびデータをユーザーにネットワーク上で提供する。データは、種々の場所で収集、処理および記憶される。ウェブアプリケーションは、そのデータを取り出し、当該データを書式設定して提示し、および当該データをクライアントデバイス上のブラウジングアプリケーションに提供して、ウェブページをレンダリングする。データが対話的でない、静的なウェブページがある場合もある。その他は、リンクまたはウェブベースのモジュールの活性化を通じた追加的な情報など、いくらかの対話性を提供する場合もある。しかしながら、一般にウェブページは、ウェブページオーサーにより決定された形式および量でデータを提供する。
【０００３】
従来のウェブページにおけるデータは、通常、ユーザーに対しそのデータの有用性を制限するウェブページのオーサーにより制限されたものとしての制限された対話性を有する。ページのオーサーが明確に、コンテンツに対するエクスポート機能、すなわち「データフィード」機能を提供する場合でさえ、ユーザーはいくつかの比較的複雑なオペレーションを実行して、データにアクセスし、処理する必要がある。その上、ウェブページ自体において、１つのデータの提示を提供することや、暗黙のデータ（ウェブページオーサーには利用可能であるが、ユーザーには表示されないデータ）による、よりリッチな体験を提供することは、比較的困難な仕事である。
【発明の概要】
【０００４】
この概要は、概念の選択を簡潔な形式で導入するために提供され、その概念は、下記の発明を実施するための形態においてさらに説明する。この概要は、専ら特許請求する主題の主要な特徴または本質的な特徴を特定することを意図するものではなく、特許請求する主題の範囲を判定する際の支援を意図するものでもない。
【０００５】
実施形態は、ユーザーがコンテンツをカスタマイズ、共有、編集、分析、エクスポートおよび／または注記することなどの、ウェブページコンテンツの少なくとも一部において動作を実行することを可能にする、レンダリングされたウェブページ上でウェブページの振舞い拡張（web page behavior enhancement：ＷＰＢＥ）制御要素を提供することに関する。処理されたコンテンツを、サーバーに記憶された初期のウェブページ上に提供し、ウェブページのローカルに記憶されたバージョン上（クライアントにおいて記憶された）に提供し、またはその後の使用のためにアーカイブすることができる。当該ウェブページ上では、当初のウェブページに対するいかなる変更をトラッキングすることができ、ユーザーはその変更に関して通知を受けることができる。ＷＰＢＥ制御要素は、ソースウェブアプリケーションによりウェブページに組み込まれてもよく、またはブラウザー機能、ユーザー選択、使用パターンおよびそれらと同等のものなどの要因に基づいて、ローカルブラウザーにおいて組み込まれてもよい。
【０００６】
これらのおよびその他の特徴および利点は、下記の詳細な説明を読み、添付図面を参照することから明らかになるであろう。前述の概要説明および後述の詳細な説明の双方は説明のためのものであり、特許請求する態様を制限するものではないことが理解されよう。
【図面の簡単な説明】
【０００７】
【図１】ウェブページの複数のＷＰＢＥ制御要素の例を示す。
【図２】ＷＰＢＥ制御要素と関連付けられた、利用可能な動作の種々の例示的な提示を備える２つのウェブページを示す。
【図３】ＷＰＢＥ制御要素と関連付けられた、選択された動作を実行するための例示的なユーザーインターフェースを備える別のウェブページを示す。
【図４】ＷＰＢＥ制御要素および関連する動作を使用したチャートにより、レンダリングされたコンテンツが注記されるさらなるウェブページを示す。
【図５】ＷＰＢＥ制御要素および関連する動作を使用したスプレッドシートに、レンダリングされたコンテンツが変換される更なる別のウェブページを示す。
【図６】ＷＰＢＥ制御要素およびＷＰＢＥ制御エンジンを通じてウェブページの拡張を提供するシステムにおける主要なコンポーネントを示す。
【図７】ＷＰＢＥ制御エンジン、およびウェブページコンテンツとの当該ＷＰＢＥ制御エンジンの対話のオペレーションを示す。
【図８】実施形態に準じたシステムを実装することができるネットワーク環境を示す。
【図９】実施形態を実装することができる例示的なコンピューターオペレーティング環境を示すブロック図である。
【図１０】実施形態に準じて、ウェブページの振舞い拡張制御を提供するプロセスの論理フローチャートを示す。
【発明を実施するための形態】
【０００８】
上記簡潔に説明したように、ユーザーがコンテンツをカスタマイズ、共有、編集、分析、エクスポートおよび／または注記することなどの、ウェブページコンテンツの少なくとも一部について動作を実行することを可能にする、レンダリングされたウェブページ上でウェブページの振舞い拡張（ＷＰＢＥ）制御要素を提供することができる。処理されたコンテンツを、サーバーにおいて記憶された初期のウェブページ上に提供し、ウェブページのクライアントにおいてローカルに記憶されたバージョン上に提供し、またはその後の使用のためにアーカイブすることができる。当該ウェブページ上では、当初のウェブページコンテンツに対するいかなる変更をトラッキングすることができ、ユーザーはその変更に関して通知を受けることができる。以下の詳細な説明では、本明細書の一部をなす添付図面への参照がされ、特定の実施形態または例を説明する方法により、当該図面を示す。これらの態様を組み合わせ、その他の態様を利用し、本開示の精神または範囲から逸脱することなく構造的な変更を加えることができる。したがって、以下の詳細な説明は、限定的な意味で捉えるべきでなく、本発明の範囲は添付の特許請求の範囲およびそれに相当するものにより定義される。
【０００９】
本実施形態は、パーソナルコンピューター上のオペレーティングシステム上で稼動するアプリケーションプログラムとともに実行する、プログラムモジュールの一般的なコンテキストで説明されるが、当業者であれば、その他のプログラムモジュールとともに本発明の態様も実装することができることを理解されるであろう。
【００１０】
一般に、プログラムモジュールは、ルーチン、プログラム、コンポーネント、データ構造および特定のタスクを実行し、もしくは特定の抽象データタイプを実装するその他のタイプの構造を含む。さらに、当業者であれば、ハンドヘルドデバイス、マルチプロセッサーシステム、マイクロプロセッサーベースもしくはプログラミング可能な家庭用電化製品、ミニコンピューター、メインフレームコンピューターおよびこれらと同等のコンピューティングデバイスを含む、その他のコンピューターシステム構成により実施することができることを認識するであろう。実施形態はまた、分散型コンピューティング環境で実施されてもよく、そこでは通信ネットワークを通じてリンクされた、リモート処理デバイスによりタスクが実行される。分散型コンピューティング環境では、プログラムモジュールがローカルメモリー記憶装置およびリモートメモリー記憶装置の両方に位置してもよい。
【００１１】
実施形態を、コンピューターにより実行されるプロセス（方法）、コンピューターシステム、またはコンピュータープログラム製品もしくはコンピューター可読媒体などの製品として実装してもよい。コンピュータープログラム製品は、コンピューターシステムにより読み取り可能であり、コンピューターもしくはコンピューターシステムに例示的なプロセスを実行させる命令を備えるコンピュータープログラムを符号化するコンピューター記憶媒体であってもよい。例えば、コンピューター可読記憶媒体を、１つまたは複数の揮発性コンピューターメモリー、不揮発性メモリー、ハードドライブ、フラッシュドライブ、フロッピー（登録商標）ディスクもしくはコンパクトディスク、およびそれらと同等の記憶媒体を介して実装してもよい。
【００１２】
本明細書全体を通じて、用語「プラットフォーム」は、ウェブページおよびウェブページを通じたデータ表現のためのソフトウェアおよびハードウェアコンポーネントの組み合わせであってもよい。プラットフォームの例は、複数のサーバー上で実行されるホスティングされたサービス、単一のサーバー上で実行されるアプリケーション、およびそれらと同等のシステムを含むが、これらに限定されない。用語「サーバー」は一般に、主としてネットワーク環境において１つまたは複数のソフトウェアプログラムを実行するコンピューティングデバイスに言及する。しかしながら、サーバーはまた、１つまたは複数のコンピューティングデバイス上で実行され、ネットワーク上で１つのサーバーとして見える仮想サーバー（ソフトウェアプログラム）として実装してもよい。これらの技術の更なる詳細および例示的なオペレーションは以下に提供される。
【００１３】
図１は、ウェブページの複数のＷＰＢＥ制御要素の例を示す。例示的なウェブページ１００は、メニュー項目１０２、グラフィカル制御１０４、ならびに３つのコンテンツ部１１０、１１２および１１６などの標準的なウェブページ要素を含む。ウェブページ１００上に提示されるデータとの対話性は、一般にはウェブページ（またはウェブページを提供するウェブアプリケーション）のオーサーにより設定された境界に制限される。例えば、コンテンツ部１１０は、自動車、その自動車の製造年や価格のリストなどを提示する。ウェブページは、一部の（またはすべての）データ上のリンクを通じて追加的な情報を提供することができるが、ページを見ているユーザーは、当該リストのフォーマットおよび構成に制限される。さらに、ユーザーはデータのさらなる分析を、結果、その他のテーブルもしくはチャートの形式で見ることができず、リスト上の個々の項目を修正／ソート／フィルタリング／フォーマットすることができず、またはウェブページのオーサーにより機能が提供されない限り、データを注記することができない。
【００１４】
実施形態に準じたウェブページは、１つまたは複数のＷＰＢＥ制御要素（１０６、１０８および１１４）を含み、当該ＷＰＢＥ要素により、ユーザーは提示されるデータおよびその他のデータ（例えば、ウェブページを提示するウェブアプリケーションに対して、または当該アプリケーションからは利用可能であるが、表示されずまたはその他のロケーションに記憶されたデータとは関連しない暗黙のデータ）上で様々な動作を実行することができる。ＷＰＢＥ制御要素１０６は、ウェブページ全体に関連付けられた例示的な制御要素である。したがって、ＷＰＢＥ制御要素１０６を通じて提供される動作は、ウェブページ全体に適用可能である。ＷＰＢＥ制御要素１０８および１１４は、コンテンツ部１１０および１１２にそれぞれ関連付けられる。したがって、これらの要素は、当該要素のそれぞれのコンテンツ部に適用可能な動作を提供する。ＷＰＢＥ制御要素により提供される動作は、コンテンツ部ごとに区別することができるが、それらはまた同一であってもよい。
【００１５】
ウェブページ１００は、主として、クライアントデバイス上のブラウジングアプリケーションによりレンダリングされる。当該クライアントデバイスは、パーソナルコンピューター、ラップトップ、スマートフォンなどのモバイル機器、サーバー、車載コンピューティングデバイス、およびネットワークを通じてウェブサーバーに接続されるその他のものを含んでもよい。
【００１６】
図２は、ＷＰＢＥ制御要素と関連付けられた、利用可能な動作の異なる例示的な提示を有する２つのウェブページを示す。例示的なウェブページ２００は、車のリストを有するウェブページ１００のコンテンツ部の１つと類似するコンテンツ部２１０を示す。ウェブページ２００はまた、ページ全体に対するＷＰＢＥ制御要素２０６およびコンテンツ部２１０に対するＷＰＢＥ制御要素２０８を含む。
【００１７】
ＷＰＢＥ制御要素２０８を活性化すると、利用可能な動作２２０のリスト（テキスト形式、グラフィカルまたはそれらの組み合わせ）をユーザーに提供することができる。例えば、利用可能な動作２２０のリストは、コンテンツを表示、編集、カスタマイズ、分析等することができる様々なアプリケーションに対するアイコンを含んでもよい。このようなアプリケーションの例は、文書処理アプリケーション２２２、スプレッドシートアプリケーション２２４およびプレゼンテーションアプリケーション２２６を含んでもよい。アプリケーションのその他の例は、コンテンツアグリゲーションアプリケーションおよびそれに類似するものを含んでもよい。これらのアプリケーションはローカル、ウェブベースであってもよく、または内蔵されてもよい。
【００１８】
アプリケーションの１つを選択すると、選択されたアプリケーションに関連付けられたユーザーインターフェースにコンテンツを提示することができ、当該アプリケーションはユーザーに対して、よりリッチでより対話的なコンテンツの表現を、レンダリングされたウェブページ２００または別のユーザーインターフェース上の適当な位置に提示することができる。例えば、ＨＴＭＬ（Hypertext Markup Language）テーブルは、その他のものの中から表示されるデータを、ユーザーがソート、フィルタリング、フォーマット、分析およびチャートすることを可能にするスプレッドシートテーブルに置き換えてもよい。加えて、これらの機能の利用可能性は、ウェブページオーサーにより制御されてもよい。
【００１９】
ウェブページ２５０の第２の例は、利用可能な動作をユーザーに提供する別のアプローチを示す。このシナリオでは、利用可能な動作のメニュー２３０をドロップダウンまたはホバーオン（hover-on）することが、ＷＰＢＥ制御要素２０８の活性化に応じて提供されてもよい。メニュー（例えば、メニュー２３２）の１つまたは複数の追加レベルが、主要メニュー上の項目のうちの１つを選択したことに応答して、表示されてもよい。もちろん、音声などのその他の形式の提示もまた、利用可能な動作をユーザーに提示する際に採用されてもよい。
【００２０】
図３は、ＷＰＢＥ制御要素と関連付けられた、選択された動作を実行するための例示的なユーザーインターフェースを有する別のウェブページを示す。ウェブページ全体に対するＷＰＢＥ制御要素３０６およびコンテンツ部３１０に対するＷＰＢＥ制御要素３０８を有する、例示的なウェブページ３００上で示すように、新たなユーザーインターフェース３４０が、ユーザーによる動作の選択がされた後にウェブページ上で提示されてもよい。この例では、ユーザーは、表示された車のリストにおいて価格をトラッキングすることを選択することができたであろう。
【００２１】
ユーザーインターフェース３４０は、スプレッドシート、ユーザーのデスクトップ、ユーザーのＰＤＡ（personal digital assistant）もしくは電話、データストア、またはカスタム定義された送り先に対してなど、ユーザーに対してトラッキング情報を転送するオプションを提示する。図２の主要メニュー上で提示された動作、ならびに補助メニュー上（またはユーザーインターフェース）の項目が、ウェブページを提示するウェブアプリケーションの機能、ユーザーのローカルブラウザーアプリケーションもしくはシステムの機能および／またはユーザー選択／使用履歴に基づいて判定されてもよい。
【００２２】
図４は、ＷＰＢＥ制御要素を使用したチャートおよび関連する動作によりレンダリングされたコンテンツが注記される、さらなるウェブページを示す。ウェブページ４００の例は、ウェブページ全体に対するＷＰＢＥ制御要素４０６およびコンテンツ部４１０に対するＷＰＢＥ制御要素４０８を有するウェブページ２００または３００に類似する。
【００２３】
ＷＰＢＥ制御要素４０８を活性化すると、利用可能な動作のメニュー４３０がユーザーに表示され、当該ユーザーは「チャート結果」動作のためのメニュー選択を選択しもしくはホバリングし、ならびに当該動作のプレビューを受け取る。それに応じて、コンテンツ部４１０におけるデータのチャート４４２がウェブページ上に表示される。先に述べたように、当該チャートはまた、別個のアプリケーションユーザーインターフェース（例えば、チャーティングアプリケーション）上に提示されてもよい。前者の場合、修正されたウェブページがローカルに記憶されてもよい。また変更が存続されて、ユーザーが同一のページに訪問するときに、先の例において示したようなチャーティングオプションまたはその他のウェブページ修正をユーザーに自動的に提示して、ユーザーのウェブページ体験を拡張するようにしてもよい。
【００２４】
図５は、ＷＰＢＥ制御要素をおよび関連する動作を使用して、レンダリングされたコンテンツをスプレッドシートに変換する更なる別のウェブページを示す。ウェブページ５００は、一部の実施形態に準じたＷＰＢＥ制御要素（５０８）の別の例示的な使用を説明する。説明したシナリオでは、ユーザーは、メニュー５３０から選択した「スプレッドシート内のデータを編集する」動作を有し、当該メニュー５３０はウェブページ上と同一のデータを含むスプレッドシート５４４を表示することになる。
【００２５】
その他の実施形態に準じて、スプレッドシート５４４は、ウェブページを提供するウェブアプリケーションにおいて利用可能であるが、表示されない暗黙のデータなどの、追加的なデータを含んでもよい。スプレッドシートは、ウェブアプリケーションと関連付けられたデータソースからＷＰＢＥ制御エンジンにより取り出すことができる、この関連データを含んでもよい。例えば、リスト上の各車の技術的な仕様を取り出し、表示することができる。ユーザーは、スプレッドシート５４４上に表示されたデータについてのその他の動作を編集、フォーマット、ソート、分析および実行することができる。修正された（またはカスタマイズされた）データを、ユーザーによるさらなる対話のために記憶し、またはアーカイブすることができる。ソースにおいて（ウェブアプリケーションまたはデータソース）、任意のデータ項目を変更する場合に、ユーザーは通知を受けることができるか、または修正されたデータを自動的に更新することができる。
【００２６】
実施形態に準じたシステムにおいて、上述した機能性を、当初のウェブページのオーサーが関与して、または関与することなくウェブページに追加することができる。さらに、ユーザーのウェブページ体験を拡張する追加的な機能性を、ユーザーの機能／選択／使用パターンに基づいてカスタマイズすることができる。その上、同一のウェブページのコンテンツを有する複合メンバーの体験を、関心があり、愉快な体験を提案するその他のユーザーに対して自動的に見せることができる。例えば、当初のウェブページはチャートを含まないが、一人のユーザーにより生成された特定のチャートは、その他のユーザーによっても好まれる場合がある。システムはチャートを、その他のユーザーへの当初のウェブページの一部であったかのように、ウェブページのオーサーによる変更なしに提供することができる。
【００２７】
図１から図５を通じて述べたユーザーインターフェース要素および対話の例は、単に説明を目的としたものであり、実施形態について限定を構成するものではない。ウェブページの振舞い拡張制御を、本明細書で説明した方式を使用して、その他のユーザーインターフェース、インターフェース要素、プレゼンテーションおよび構成により実装することができる。
【００２８】
図６は、ＷＰＢＥ制御要素およびＷＰＢＥ制御エンジンを通じてウェブページの拡張を提供するシステムにおける主要なコンポーネントを示す。ダイアグラム６００で示すように、実施形態に準じたサービスは、３つの別個のシステム：コンテンツ６５４およびＷＰＢＥ制御要素６５６とともにウェブページ６５２を提供するウェブサービス６５０、ユーザーへのウェブページをレンダリングするクライアント６８４、ならびに修正されたウェブページコンテンツ６８０のローカルバージョンおよびクライアント６８４に対する変更６８２を記憶するためのストレージサービス６８６、を含むことができる。
【００２９】
ウェブサーバー６５８上で実行されるウェブアプリケーションは、ウェブページ６５２についてのデータを取り出すデータベースサーバー６６０を通じて、データストア６６２と対話することができる。ＷＰＢＥ制御エンジン６６４を、ウェブサービス６５０またはクライアント６８４の一部として実行することができ、また、当該ＷＰＢＥ制御エンジン６６４は、ウェブサービス６５０において、またはクライアント６８４によりウェブページ６５２に組み込むことができるＷＰＢＥ制御要素６５６の活性化を検出することができる。ウェブページ６５２から公開されたコンテンツデータを受信し、ウェブサーバー６５８から暗黙のコンテンツデータを受信し、およびデータベースサーバー６６０から関連データを受信すると、ＷＰＢＥ制御エンジン６６４により、クライアント６８４において、よりリッチなコンテンツ６６６およびＷＰＢＥ制御要素６６８によってウェブページ６７０のレンダリングが可能になる。ＷＰＢＥ制御エンジン６６４はまた、クライアント６８４におけるブラウザーを通じて公開されたおよび／もしくは暗黙のコンテンツによりウェブページ６７４のレンダリングを可能にし、またはクライアント６８４における公開されたおよび／もしくは暗黙のコンテンツによりアプリケーションユーザーインターフェース６７８のレンダリングを可能にする。ＷＰＢＥ制御エンジン６６４はまた、ストレージサービス６８６においてコンテンツ６８０のアーカイブもしくはコピーを可能にし、当初のウェブページからの変更により、記憶されたコンテンツの更新を可能にする。
【００３０】
図７は、ＷＰＢＥ制御エンジンのオペレーションおよび当該ＷＰＢＥのウェブページコンテンツとの対話を示す。ダイアグラム７００は、実施形態に準じたシステムにおけるウェブページコンテンツの変換を要約する。
【００３１】
ＷＰＢＥ制御要素（７１０）の活性化を検出すると、１つまたは複数のＷＰＢＥ制御要素を制御することができる、ＷＰＢＥ制御エンジン７１２は、公表されたコンテンツ７０６、暗黙のコンテンツ７０４および／またはウェブページ７０２と関連付けられた関連データ７０８を受信することができる。受信したコンテンツを、上述したようなユーザーが要求した動作および生成した結果（７１４）に準じて処理することができる。ＷＰＢＥ制御エンジン７１２と連携して、生成した結果を決まった位置での変換７１６（例えば、表示されたデータをソートおよび再フォーマットする）、または別の位置７１８での変換を通じてユーザーに提示することができる。後者は、当初の、もしくは修正したウェブページ（ウェブページのコピー）を記憶すること、記憶したデータを更新すること、またはブラウザーではないアプリケーションユーザーインターフェースを通じた変換したデータを提示することを含むことができる。
【００３２】
図６および図７で述べた例示的なシステム及び対話は、単に説明を目的とするものであり、実施形態に関して限定を構成するものではない。本明細書で説明した方式を使用して、ウェブページの振舞い拡張制御を、その他のコンポーネント、対話、データ処理、記憶方法および構成により実装することができる。
【００３３】
図８は、実施形態を実装することができる、例示的なネットワーク環境である。ウェブページの振舞い制御要素および関連する動作を提供するプラットフォームは、ホスティングされたサービスなどの、１つまたは複数のサーバー８２４もしくは単一のサーバー（例えば、ウェブサーバー）８２６上で実行されるソフトウェアを介して実装されてもよい。当該プラットフォームは、ネットワーク８２０を通じて、スマートフォン８２３、ラップトップコンピューター８２２もしくはデスクトップコンピューター８２１（「クライアントデバイス」）などの個々のコンピューティングデバイス上でクライアントアプリケーションと通信してもよい。
【００３４】
上述したように、１つまたは複数のＷＰＢＥ制御要素は、オーサーによって、またはクライアントデバイス８２１乃至８２３上のローカルブラウザーによってウェブページ上に組み込まれてもよい。活性化すると、ＷＰＢＥ制御要素は、ユーザーに対して利用可能な動作のリストを提示し、レンダリングされたウェブページのコンテンツを処理することをユーザーが選択することで、当該ユーザーが、公表されたコンテンツのカスタマイズ、編集、分析、記憶などをすることが可能になる。当該制御要素はまた、ユーザーが選択した動作を実行している際に、暗黙のコンテンツおよび関連するコンテンツを取り出し、かつ使用することができる。
【００３５】
修正したウェブページコンテンツのローカルバージョンを、クライアントデバイス８２１乃至８２３のいずれかにおいて記憶することができるが、コンテンツをもリモートに記憶し（例えば、データストア８２９に）、当初のウェブページコンテンツの変更として更新することができる。ウェブページを提供するプラットフォームは、ウェブサイト（例えば、公表された、暗黙のもしくは関連するコンテンツ）に関連付けられたデータを、データストア８２９に直接もしくはデータベースサーバー８２８を通じて記憶し、当該データストア８２９から直接もしくはデータベースサーバー８２８を通じて取り出すことができる。
【００３６】
ネットワーク８２０は、サーバー、クライアント、インターネットサービスプロバイダーおよび通信媒体の任意のトポロジーを備えてもよい。実施形態に準じたシステムは、静的もしくは動的なトポロジーを有してもよい。ネットワーク８２０は、企業ネットワークなどのセキュアなネットワーク、無線オープンネットワークもしくはインターネットなどのアンセキュア（unsecure）なネットワークを含んでもよい。ネットワーク８２０は、ＰＳＴＮ（Public Switched Telephone Network）もしくはセルラーネットワークなどのその他のネットワーク上で通信を調整することもできる。さらに、ネットワーク８２０は、Ｂｌｕｅｔｏｏｔｈ（登録商標）もしくはそれに類似するものなどの短距離無線ネットワークを含んでもよい。ネットワーク８２０は、本明細書で説明したノード間における通信を提供する。例として、ネットワーク８２０は音声、ＲＦ、赤外線およびその他の無線媒体などの無線媒体を含むことができるが、それらに限定されない。
【００３７】
コンピューティングデバイス、アプリケーション、データソースおよびデータ分散型システムのその他の多くの構成を採用して、ウェブページの振舞い拡張制御を実装してもよい。さらに、図８で述べたネットワーク環境は、単に説明を目的とするものである。実施形態は、例示的なアプリケーション、モジュールもしくはプロセスに限定されない。
【００３８】
図９および関連する議論は、実施形態を実装することができる適切なコンピューティング環境の簡易かつ一般的な説明を提供することを意図する。図９を参照することにより、実施形態に準じたアプリケーションのための例示的なコンピューティングオペレーティング環境（コンピューティングデバイス９００など）のブロック図が説明される。基本構成では、コンピューティングデバイス９００は、ウェブアプリケーションを実行するサーバーであってもよく、少なくとも１つの処理装置９０２およびシステムメモリー９０４を含んでもよい。コンピューティングデバイス９００はまた、実行するプログラムと協働する複数の処理装置を含んでもよい。コンピューティングデバイスの正確な構成及びタイプに応じて、システムメモリー９０４は揮発性（ＲＡＭなど）、不揮発性（ＲＯＭ、フラッシュメモリーなど）もしくはその二つのいくつかの組み合わせであってもよい。システムメモリー９０４は、主として、本出願人が提供するウインドウズ（登録商標）オペレーティングシステムなどのプラットフォームのオペレーションを制御するのに適切なオペレーティングシステム９０５を含む。システムメモリー９０４はまた、プログラムモジュール９０６、ウェブアプリケーション９２２およびＷＰＢＥ制御エンジン９２４などの１つまたは複数のソフトウェアアプリケーションを含んでもよい。
【００３９】
ウェブアプリケーション９２２は、ユーザーのクライアントブラウジングアプリケーションを通じて、ウェブページとして、ユーザーにテキスト、グラフィック、音声、映像およびその他のデータを提示する、任意のアプリケーションおよびサービスであってもよい。ウェブアプリケーション９２２は、ウェブページに組み込まれたＷＰＢＥ制御要素を提供してもよく、当該ＷＰＢＥ制御要素は、上述したＷＰＢＥ制御エンジン９２４を通じてウェブページコンテンツを拡張し、コンテンツをローカルに記憶し、およびコンテンツへの変更をトラッキングすることを含む、種々の動作をユーザーが実行することを可能にする。基本的な構成は、図９において、破線９０８内のこれらのコンポーネントにより説明される。
【００４０】
コンピューティングデバイス９００は、追加的な特長及び機能を有してもよい。例えば、コンピューティングデバイス９００はまた、例えば、磁気ディスク、光学ディスクもしくはテープなどの追加的なデータストレージデバイス（着脱可能および／または着脱不能）を含んでもよい。このような追加的なストレージは、図９において、着脱可能ストレージ９０９および着脱不能ストレージ９１０により説明される。コンピューター可読記憶媒体は、コンピューター可読命令、データ構造、プログラムモジュールもしくはその他のデータなどの情報を記憶するための、任意の方法および技術において実装される、揮発性および不揮発性、着脱可能および着脱不能媒体を含んでもよい。システムメモリー９０４、着脱可能ストレージ９０９および着脱不能ストレージ９１０は、コンピューター可読記憶媒体のすべての例である。コンピューター可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリーもしくはその他のメモリー技術、ＣＤ−ＲＯＭ、ＤＶＤ（digital versatile disk）もしくはその他の光学ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージもしくはその他の磁気ディスクストレージデバイス、または所望の情報を記憶するのに使用することができ、コンピューティングデバイス９００によりアクセスすることができる、任意のその他の媒体を含むが、それらに限定されない。このようなコンピューター可読記憶媒体のいずれもが、コンピューティングデバイス９００の一部であってもよい。コンピューティングデバイス９００はまた、キーボード、マウス、ペン、音声入力デバイス、タッチ入力デバイスおよびそれらに相当する入力デバイスなどの入力デバイスを有してもよい。ディスプレイ、スピーカー、プリンターおよびその他のタイプの出力デバイスなどの出力デバイスがまた含まれてもよい。これらのデバイスは当分野においては周知であり、本明細書で詳細に述べる必要はない。
【００４１】
コンピューティングデバイス９００はまた、分散型コンピューティング環境における無線ネットワーク、衛星リンク、セルラーリンクおよびそれらに相当するメカニズムなどを通じて、デバイスがその他のデバイス９１８と通信することを可能にする通信コネクション９１６を含んでもよい。その他のデバイス９１８は、ウェブサービス、分析サービスおよびデータストレージサービスを実行するコンピューティングデバイスならびにそれに相当するデバイスを含んでもよい。通信コネクション９１６は、通信媒体の１つの例である。通信媒体は、コンピューター可読命令、データ構造、プログラムモジュール、または搬送波もしくはその他のトランスポートメカニズムなどの変調データ信号におけるその他のデータを、その媒体に含むことができ、任意の情報配信媒体を含む。用語「変調データ信号」は、１つまたは複数のその信号の特性の組を有する信号、または例えば、信号内の情報をエンコードする形式で変更された信号を意味する。例として、通信媒体は、有線ネットワークもしくは直接配線接続などの有線媒体、ならびに音声、ＲＦ、赤外線およびその他の無線媒体などの無線媒体を含むが、これらに限定されない。
【００４２】
例示的な実施形態はまた、方法を含む。これらの方法を、この書面で説明した構造を含む任意の多くの方法で実装することができる。このような方法の１つは、この書面で説明したタイプのデバイスのマシンオペレーションによるものである。
【００４３】
別の任意の方法は、１人または複数の人的オペレーターが一部を実行するのと同時に実行される方法の１つまたは複数の個々のオペレーションに関するものである。これらの人的オペレーターは、互いに同一の場所に位置する必要はなく、各自が単にプログラムの一部を実行するマシンを有していればよい。
【００４４】
図１０は、実施形態に準じたウェブページの振舞い拡張制御を提供するプロセス１０００についての論理フロー図を示す。プロセス１０００は、ウェブサーバーもしくはクライアントデバイス上で実行されるＷＰＢＥ制御エンジンにより実装されてもよい。
【００４５】
プロセス１０００は、ＷＰＢＥ制御要素を備えるウェブページが提示される、オペレーション１０１０により開始し、オペレーション１０２０において、ＷＰＢＥ制御要素の活性化を検出すると、オペレーション１０３０において、レンダリングされたウェブページと関連付けられたコンテンツを取り出すことができる。取り出したコンテンツは、ウェブページ上で提示された公表されたコンテンツ、ウェブページ上で利用可能であるが提示はされない暗黙のコンテンツ、および／またはレンダリングされたウェブページと関連付けられたデータストアからの関連するコンテンツを含むことができる。オペレーション１０４０において、取り出したコンテンツを、ＷＰＢＥ制御要素を通じて受信されたユーザーインジケーションに基づいて処理することができる。ユーザーインジケーションは、レンダリングされたウェブページの公表されたコンテンツ、暗黙のコンテンツおよび／もしくは関連するコンテンツ、の提示をカスタマイズし、それらについての分析を実行し、編集し、転送し、注記し、ならびに／またはトラッキングすることなどの、利用可能な動作のリストをユーザーに提示することにより受信されてもよい。
【００４６】
オペレーション１０５０において、当初のレンダリングされたウェブページまたは当初のレンダリングされたウェブページのローカルバージョンに、処理したコンテンツを提示することができる。代わりに、任意のオペレーション１０６０において、当該コンテンツを記憶することができ、また記憶したコンテンツを、当初のレンダリングされたウェブページの変更に関連付けられたコンテンツとして更新することができ、さらに更新および記憶されたコンテンツと関連付けられた通知をユーザーに提供することができる。
【００４７】
コンテンツを処理することは、文書処理アプリケーション、スプレッドシートアプリケーション、作図アプリケーション、プレゼンテーションアプリケーションまたはブラウジングアプリケーションなどのアプリケーションを活性化すること、ならびに活性化したアプリケーションのユーザーインターフェースを通じて処理したコンテンツを提示して、当該コンテンツとの拡張した対話を可能にすることを含んでもよい。ＷＰＢＥ制御要素の１つまたは複数の状態を、いくつかの実施形態に準じて存続させて、同一のページに再度訪れると、ウェブページ上のユーザーの動作をユーザーに提示してもよい。その他の実施形態に準じて、ＷＰＢＥ制御要素と関連付けられたその他のユーザーからのユーザーの動作を、提案する形式でユーザーに開示してもよい。
【００４８】
オペレーションを実行するＷＰＢＥ制御エンジンを、ウェブページを提供するサーバーの一部として、またはウェブページをレンダリングするローカルブラウザーを実行するクライアントデバイスの一部として実装してもよい。ＷＰＢＥ制御要素を、レンダリングされたウェブページの全体、またはレンダリングされたウェブページの１つまたは複数部分と関連付けてもよい。ＷＰＢＥ制御エンジンは、ウェブアプリケーションの関与なしにサーバーと関連付けられたデータソースから直接、関連するコンテンツを取り出すことができ、ウェブページをレンダリングするブラウザーに対して、公表されたコンテンツおよび暗黙のコンテンツへの変更に関して通知することができる。ＷＰＢＥ制御エンジンはまた、ウェブページをレンダリングするブラウザーの能力、ウェブアプリケーションの能力、ユーザー選択および／または使用パターンに基づいて、ＷＰＢＥ制御要素を活性化してから、利用可能な動作のリストを提示することができる。
【００４９】
プロセス１０００に含まれるオペレーションは、説明を目的とするものである。実施形態に準じたウェブページの振舞い制御を、本明細書で説明した方式を使用して、より少ないステップまたは追加的なステップと類似した処理により実装することができ、ならびにオペレーションの様々な順序で実装することができる。
【００５０】
上述した仕様、例およびデータは、本実施形態を構成するものの製造および使用の完全な説明を提供する。請求対象は、構造的特長および／または方法論的動作に特有の言語において説明されてきたが、添付の請求項において定義される請求対象は、必ずしも説明された特定の特長または動作に限定されないことを理解されたい。むしろ、上記説明した特定の特長および動作は、請求項および実施形態を実装する例示的な形式として開示される。
【図１】
2013540309.tif 000003
【図２】
2013540309.tif 000004
【図３】
2013540309.tif 000005
【図４】
2013540309.tif 000006
【図５】
2013540309.tif 000007
【図６】
2013540309.tif 000008
【図７】
2013540309.tif 000009
【図８】
2013540309.tif 000010
【図９】
2013540309.tif 000011
【図１０】
2013540309.tif 000012
【国際調査報告】
2013540309.tif 000013
2013540309.tif 000014