(57)【特許請求の範囲】
【請求項１】
メモリと、
前記メモリ内のコンポーネント・コレクションと、
前記メモリと通信して配置され、前記メモリ内に記憶された前記コンポーネント・コレクションから複数の処理命令を発行するように構成されたプロセッサと
を含むウェブページ・フレーム拡張表示装置であって、
前記プロセッサは、
少なくとも１つのプロセッサを介して、ウェブページのトップ・レベルにトップ・レベル・リスニング・コンポーネントを提供することであって、ウェブページがロードする時に、前記トップ・レベル・リスニング・コンポーネントは、前記ウェブページ内の第１レベル・フレームのノード・リストを作成するように構成される、提供することと、
少なくとも１つのプロセッサを介して、フレーム・エスケーピング・コンポーネントを含む拡張可能な表示ペイロードを入手するように前記ウェブページ内の第１のフレームを構成することと
のために、前記メモリ内に記憶された前記コンポーネント・コレクションから命令を発行し、
前記フレーム・エスケーピング・コンポーネントは、
少なくとも１つのプロセッサを介して、前記拡張可能な表示ペイロードに関連する一意フレーム識別子を生成し、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントを含むフレーム・バスタ・ペイロードを入手するように構成された第２のフレームを作成し、
少なくとも１つのプロセッサを介して、前記トップ・レベル・リスニング・コンポーネントからのメッセージのトップ・レベル・イベント・リスナを追加する
ように構成され、
前記トップ・レベル・イベント・リスナは、前記トップ・レベル・リスニング・コンポーネントからメッセージを受信する時に、
少なくとも１つのプロセッサを介して、前記トップ・レベル・リスニング・コンポーネントからの前記メッセージ内で指定される一意フレーム識別子を判定し、
少なくとも１つのプロセッサを介して、前記トップ・レベル・リスニング・コンポーネントからの前記メッセージ内で指定される前記一意フレーム識別子が、前記生成された一意フレーム識別子と一致することを検証し、
少なくとも１つのプロセッサを介して、前記トップ・レベル・リスニング・コンポーネントからの前記メッセージ内で指定される前記ウェブページ内の第１レベル・フレームのノード・リスト識別子を判定し、
少なくとも１つのプロセッサを介して、前記判定されたノード・リスト識別子を有するメッセージを前記フレーム・バスティング・コンポーネントに送る
ように構成され、
前記フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、前記拡張可能な表示ペイロードに関連する前記一意フレーム識別子を判定し、
少なくとも１つのプロセッサを介して、前記拡張可能な表示ペイロードに関連する前記一意フレーム識別子を使用して、どの第１レベル・フレームが前記拡張可能な表示ペイロードを含むのかを判定するために、前記ウェブページ内の第１レベル・フレームを照会することを容易にするように構成された実行可能なフレーム照会コンポーネントを生成し、
少なくとも１つのプロセッサを介して、前記生成された実行可能なフレーム照会コンポーネントを有するメッセージを前記トップ・レベル・リスニング・コンポーネントに送り、
少なくとも１つのプロセッサを介して、前記フレーム・エスケーピング・コンポーネントからのメッセージのフレーム・イベント・リスナを追加する
ように構成され、
前記フレーム・イベント・リスナは、前記フレーム・エスケーピング・コンポーネントからメッセージを受信する時に
少なくとも１つのプロセッサを介して、前記フレーム・エスケーピング・コンポーネントからの前記メッセージ内で指定される前記ノード・リスト識別子を判定し、
少なくとも１つのプロセッサを介して、前記フレーム・エスケーピング・コンポーネントからの前記メッセージ内で指定される前記ノード・リスト識別子を使用して前記ウェブページの前記トップ・レベルでの前記拡張可能な表示ペイロードの再構築を容易にするように構成された実行可能な拡張可能なペイロード再構築コンポーネントを生成し、
少なくとも１つのプロセッサを介して、前記生成された実行可能な拡張可能なペイロード再構築コンポーネントを有するメッセージを前記トップ・レベル・リスニング・コンポーネントに送る
ように構成され、
前記トップ・レベル・リスニング・コンポーネントは、
少なくとも１つのプロセッサを介して、前記フレーム・バスティング・コンポーネントからのメッセージのバスタ・イベント・リスナを追加する
ようにさらに構成され、
前記バスタ・イベント・リスナは、前記フレーム・バスティング・コンポーネントからメッセージを受信する時に、
少なくとも１つのプロセッサを介して、前記フレーム・バスティング・コンポーネントからの前記メッセージ内で提供される実行可能コンポーネントを実行する
ように構成される
ウェブページ・フレーム拡張表示装置。
【請求項２】
フレームは、ｉｆｒａｍｅである、請求項１に記載の装置。
【請求項３】
メッセージは、ｐｏｓｔメッセージである、請求項１に記載の装置。
【請求項４】
ノード・リスト識別子は、前記ノード・リスト内のｉｔｅｍインデックスである、請求項１に記載の装置。
【請求項５】
前記拡張可能な表示ペイロードは、拡張可能な広告である、請求項１に記載の装置。
【請求項６】
前記フレーム・エスケーピング・コンポーネントは、
少なくとも１つのプロセッサを介して、前記第１のフレームからのエスケープを試みなければならないかどうかを判定する
ようにさらに構成される、請求項１に記載の装置。
【請求項７】
前記拡張可能な表示ペイロードに関連する前記一意フレーム識別子は、ランダムに生成される数である、請求項１に記載の装置。
【請求項８】
前記フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、ｎａｍｅ属性を解析することによって前記拡張可能な表示ペイロードに関連する前記一意フレーム識別子を判定する
ようにさらに構成される、請求項１に記載の装置。
【請求項９】
前記フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、前記拡張可能な表示ペイロードを含む第１レベル・フレームに関連するソースを判定する
ようにさらに構成され、
前記生成された実行可能なフレーム照会コンポーネントは、
少なくとも１つのプロセッサを介して、前記ノード・リストから第１レベル・フレームを選択し、
少なくとも１つのプロセッサを介して、前記第１レベル・フレームのソースが、前記拡張可能な表示ペイロードを含む前記第１レベル・フレームに関連する前記ソースと一致することを判定し、
少なくとも１つのプロセッサを介して、前記選択された第１レベル・フレームのノード・リスト識別子および前記拡張可能な表示ペイロードに関連する前記一意フレーム識別子を有するメッセージを前記選択された第１レベル・フレームに送る
ようにさらに構成される
請求項１に記載の装置。
【請求項１０】
前記フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、前記ウェブページの前記トップ・レベルに関連するドメインを判定する
ようにさらに構成され、
前記生成された実行可能なフレーム照会コンポーネントを有する前記トップ・レベル・リスニング・コンポーネントへの前記メッセージは、前記判定されたドメインをセットされたターゲット起点を有するｐｏｓｔメッセージである
請求項１に記載の装置。
【請求項１１】
前記フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、前記拡張可能な表示ペイロードに関連する初期化スクリプトのソースを判定する
ようにさらに構成され、
前記生成された実行可能な拡張可能なペイロード再構築コンポーネントは、
少なくとも１つのプロセッサを介して、前記拡張可能な表示ペイロードの要素を作成し、
少なくとも１つのプロセッサを介して、前記拡張可能な表示ペイロードに関連する前記初期化スクリプトの前記ソースを前記要素のソースにセットし、
少なくとも１つのプロセッサを介して、前記ウェブページの前記トップ・レベルに前記要素を追加する
ようにさらに構成される
請求項１に記載の装置。
【請求項１２】
前記生成された実行可能な拡張可能なペイロード再構築コンポーネントは、
少なくとも１つのプロセッサを介して、エスケープされた要素として前記要素を構成する
ようにさらに構成される
請求項１１に記載の装置。
【請求項１３】
前記トップ・レベル・リスニング・コンポーネントは、
少なくとも１つのプロセッサを介して、バスタ・ドメインを識別する
ようにさらに構成され、
前記バスタ・イベント・リスナは、
少なくとも１つのプロセッサを介して、前記フレーム・バスティング・コンポーネントからの前記メッセージの起点を判定し、
少なくとも１つのプロセッサを介して、前記フレーム・バスティング・コンポーネントからの前記メッセージの前記起点が前記識別されたバスタ・ドメインと一致することを検証する
ようにさらに構成される
請求項１に記載の装置。
【請求項１４】
前記拡張可能な表示ペイロードは、前記ウェブページ内で前記第１のフレームの境界を超えて表示するように構成される、請求項１に記載の装置。
【請求項１５】
前記拡張可能な表示ペイロードは、マルチレベル・メニュー、メディア・プレイヤ・コントロールのセットのうちの１つを表示するために拡張するように構成される、請求項１に記載の装置。
【請求項１６】
プロセッサ実行可能なコンポーネントを記憶するウェブページ・フレーム拡張表示非一時的物理媒体であって、前記コンポーネントは、
前記媒体内に記憶されたコンポーネント・コレクション
を含み、
前記媒体内に記憶された前記コンポーネント・コレクションは、
少なくとも１つのプロセッサを介して、ウェブページのトップ・レベルにトップ・レベル・リスニング・コンポーネントを提供することであって、ウェブページがロードする時に、前記トップ・レベル・リスニング・コンポーネントは前記ウェブページ内の第１レベル・フレームのノード・リストを作成するように構成される、提供することと、
少なくとも１つのプロセッサを介して、フレーム・エスケーピング・コンポーネントを含む拡張可能な表示ペイロードを入手するように前記ウェブページ内の第１のフレームを構成することと
のためのプロセッサ発行可能命令を含み、
前記フレーム・エスケーピング・コンポーネントは、
少なくとも１つのプロセッサを介して、前記拡張可能な表示ペイロードに関連する一意フレーム識別子を生成し、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントを含むフレーム・バスタ・ペイロードを入手するように構成された第２のフレームを作成し、
少なくとも１つのプロセッサを介して、前記トップ・レベル・リスニング・コンポーネントからのメッセージのトップ・レベル・イベント・リスナを追加する
ように構成され、
前記トップ・レベル・イベント・リスナは、前記トップ・レベル・リスニング・コンポーネントからメッセージを受信する時に、
少なくとも１つのプロセッサを介して、前記トップ・レベル・リスニング・コンポーネントからの前記メッセージ内で指定される一意フレーム識別子を判定し、
少なくとも１つのプロセッサを介して、前記トップ・レベル・リスニング・コンポーネントからの前記メッセージ内で指定される前記一意フレーム識別子が、前記生成された一意フレーム識別子と一致することを検証し、
少なくとも１つのプロセッサを介して、前記トップ・レベル・リスニング・コンポーネントからの前記メッセージ内で指定される前記ウェブページ内の第１レベル・フレームのノード・リスト識別子を判定し、
少なくとも１つのプロセッサを介して、前記判定されたノード・リスト識別子を有するメッセージを前記フレーム・バスティング・コンポーネントに送る
ように構成され、
前記フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、前記拡張可能な表示ペイロードに関連する前記一意フレーム識別子を判定し、
少なくとも１つのプロセッサを介して、前記拡張可能な表示ペイロードに関連する前記一意フレーム識別子を使用して、どの第１レベル・フレームが前記拡張可能な表示ペイロードを含むのかを判定するために、前記ウェブページ内の第１レベル・フレームを照会することを容易にするように構成された実行可能なフレーム照会コンポーネントを生成し、
少なくとも１つのプロセッサを介して、前記生成された実行可能なフレーム照会コンポーネントを有するメッセージを前記トップ・レベル・リスニング・コンポーネントに送り、
少なくとも１つのプロセッサを介して、前記フレーム・エスケーピング・コンポーネントからのメッセージのフレーム・イベント・リスナを追加する
ように構成され、
前記フレーム・イベント・リスナは、前記フレーム・エスケーピング・コンポーネントからメッセージを受信する時に
少なくとも１つのプロセッサを介して、前記フレーム・エスケーピング・コンポーネントからの前記メッセージ内で指定される前記ノード・リスト識別子を判定し、
少なくとも１つのプロセッサを介して、前記フレーム・エスケーピング・コンポーネントからの前記メッセージ内で指定される前記ノード・リスト識別子を使用して前記ウェブページの前記トップ・レベルでの前記拡張可能な表示ペイロードの再構築を容易にするように構成された実行可能な拡張可能なペイロード再構築コンポーネントを生成し、
少なくとも１つのプロセッサを介して、前記生成された実行可能な拡張可能なペイロード再構築コンポーネントを有するメッセージを前記トップ・レベル・リスニング・コンポーネントに送る
ように構成され、
前記トップ・レベル・リスニング・コンポーネントは、
少なくとも１つのプロセッサを介して、前記フレーム・バスティング・コンポーネントからのメッセージのバスタ・イベント・リスナを追加する
ようにさらに構成され、
前記バスタ・イベント・リスナは、前記フレーム・バスティング・コンポーネントからメッセージを受信する時に、
少なくとも１つのプロセッサを介して、前記フレーム・バスティング・コンポーネントからの前記メッセージ内で提供される実行可能コンポーネントを実行する
ように構成される
ウェブページ・フレーム拡張表示非一時的物理媒体。
【請求項１７】
少なくとも１つのプロセッサを介して、ウェブページのトップ・レベルにトップ・レベル・リスニング・コンポーネントを提供することであって、ウェブページがロードする時に、前記トップ・レベル・リスニング・コンポーネントは前記ウェブページ内の第１レベル・フレームのノード・リストを作成するように構成される、提供することと、
少なくとも１つのプロセッサを介して、フレーム・エスケーピング・コンポーネントを含む拡張可能な表示ペイロードを入手するように前記ウェブページ内の第１のフレームを構成することと
のためのコンポーネント・コレクション手段
を含む、プロセッサ実施されるウェブページ・フレーム拡張表示システムであって、
前記フレーム・エスケーピング・コンポーネントは、
少なくとも１つのプロセッサを介して、前記拡張可能な表示ペイロードに関連する一意フレーム識別子を生成し、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントを含むフレーム・バスタ・ペイロードを入手するように構成された第２のフレームを作成し、
少なくとも１つのプロセッサを介して、前記トップ・レベル・リスニング・コンポーネントからのメッセージのトップ・レベル・イベント・リスナを追加する
ように構成され、
前記トップ・レベル・イベント・リスナは、前記トップ・レベル・リスニング・コンポーネントからメッセージを受信する時に、
少なくとも１つのプロセッサを介して、前記トップ・レベル・リスニング・コンポーネントからの前記メッセージ内で指定される一意フレーム識別子を判定し、
少なくとも１つのプロセッサを介して、前記トップ・レベル・リスニング・コンポーネントからの前記メッセージ内で指定される前記一意フレーム識別子が、前記生成された一意フレーム識別子と一致することを検証し、
少なくとも１つのプロセッサを介して、前記トップ・レベル・リスニング・コンポーネントからの前記メッセージ内で指定される前記ウェブページ内の第１レベル・フレームのノード・リスト識別子を判定し、
少なくとも１つのプロセッサを介して、前記判定されたノード・リスト識別子を有するメッセージを前記フレーム・バスティング・コンポーネントに送る
ように構成され、
前記フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、前記拡張可能な表示ペイロードに関連する前記一意フレーム識別子を判定し、
少なくとも１つのプロセッサを介して、前記拡張可能な表示ペイロードに関連する前記一意フレーム識別子を使用して、どの第１レベル・フレームが前記拡張可能な表示ペイロードを含むのかを判定するために、前記ウェブページ内の第１レベル・フレームを照会することを容易にするように構成された実行可能なフレーム照会コンポーネントを生成し、
少なくとも１つのプロセッサを介して、前記生成された実行可能なフレーム照会コンポーネントを有するメッセージを前記トップ・レベル・リスニング・コンポーネントに送り、
少なくとも１つのプロセッサを介して、前記フレーム・エスケーピング・コンポーネントからのメッセージのフレーム・イベント・リスナを追加する
ように構成され、
前記フレーム・イベント・リスナは、前記フレーム・エスケーピング・コンポーネントからメッセージを受信する時に
少なくとも１つのプロセッサを介して、前記フレーム・エスケーピング・コンポーネントからの前記メッセージ内で指定される前記ノード・リスト識別子を判定し、
少なくとも１つのプロセッサを介して、前記フレーム・エスケーピング・コンポーネントからの前記メッセージ内で指定される前記ノード・リスト識別子を使用して前記ウェブページの前記トップ・レベルでの前記拡張可能な表示ペイロードの再構築を容易にするように構成された実行可能な拡張可能なペイロード再構築コンポーネントを生成し、
少なくとも１つのプロセッサを介して、前記生成された実行可能な拡張可能なペイロード再構築コンポーネントを有するメッセージを前記トップ・レベル・リスニング・コンポーネントに送る
ように構成され、
前記トップ・レベル・リスニング・コンポーネントは、
少なくとも１つのプロセッサを介して、前記フレーム・バスティング・コンポーネントからのメッセージのバスタ・イベント・リスナを追加する
ようにさらに構成され、
前記バスタ・イベント・リスナは、前記フレーム・バスティング・コンポーネントからメッセージを受信する時に、
少なくとも１つのプロセッサを介して、前記フレーム・バスティング・コンポーネントからの前記メッセージ内で提供される実行可能コンポーネントを実行する
ように構成される
プロセッサ実施されるウェブページ・フレーム拡張表示システム。
【請求項１８】
少なくとも１つのプロセッサを介して、ウェブページのトップ・レベルにトップ・レベル・リスニング・コンポーネントを提供することであって、ウェブページがロードする時に、前記トップ・レベル・リスニング・コンポーネントは前記ウェブページ内の第１レベル・フレームのノード・リストを作成するように構成される、提供することと、
少なくとも１つのプロセッサを介して、フレーム・エスケーピング・コンポーネントを含む拡張可能な表示ペイロードを入手するように前記ウェブページ内の第１のフレームを構成することと
のために、プロセッサ実施されるコンポーネント・コレクション命令を実行すること
を含む、プロセッサ実施されるウェブページ・フレーム拡張表示方法であって、
前記フレーム・エスケーピング・コンポーネントは、
少なくとも１つのプロセッサを介して、前記拡張可能な表示ペイロードに関連する一意フレーム識別子を生成し、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントを含むフレーム・バスタ・ペイロードを入手するように構成された第２のフレームを作成し、
少なくとも１つのプロセッサを介して、前記トップ・レベル・リスニング・コンポーネントからのメッセージのトップ・レベル・イベント・リスナを追加する
ように構成され、
前記トップ・レベル・イベント・リスナは、前記トップ・レベル・リスニング・コンポーネントからメッセージを受信する時に、
少なくとも１つのプロセッサを介して、前記トップ・レベル・リスニング・コンポーネントからの前記メッセージ内で指定される一意フレーム識別子を判定し、
少なくとも１つのプロセッサを介して、前記トップ・レベル・リスニング・コンポーネントからの前記メッセージ内で指定される前記一意フレーム識別子が、前記生成された一意フレーム識別子と一致することを検証し、
少なくとも１つのプロセッサを介して、前記トップ・レベル・リスニング・コンポーネントからの前記メッセージ内で指定される前記ウェブページ内の第１レベル・フレームのノード・リスト識別子を判定し、
少なくとも１つのプロセッサを介して、前記判定されたノード・リスト識別子を有するメッセージを前記フレーム・バスティング・コンポーネントに送る
ように構成され、
前記フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、前記拡張可能な表示ペイロードに関連する前記一意フレーム識別子を判定し、
少なくとも１つのプロセッサを介して、前記拡張可能な表示ペイロードに関連する前記一意フレーム識別子を使用して、どの第１レベル・フレームが前記拡張可能な表示ペイロードを含むのかを判定するために、前記ウェブページ内の第１レベル・フレームを照会することを容易にするように構成された実行可能なフレーム照会コンポーネントを生成し、
少なくとも１つのプロセッサを介して、前記生成された実行可能なフレーム照会コンポーネントを有するメッセージを前記トップ・レベル・リスニング・コンポーネントに送り、
少なくとも１つのプロセッサを介して、前記フレーム・エスケーピング・コンポーネントからのメッセージのフレーム・イベント・リスナを追加する
ように構成され、
前記フレーム・イベント・リスナは、前記フレーム・エスケーピング・コンポーネントからメッセージを受信する時に
少なくとも１つのプロセッサを介して、前記フレーム・エスケーピング・コンポーネントからの前記メッセージ内で指定される前記ノード・リスト識別子を判定し、
少なくとも１つのプロセッサを介して、前記フレーム・エスケーピング・コンポーネントからの前記メッセージ内で指定される前記ノード・リスト識別子を使用して前記ウェブページの前記トップ・レベルでの前記拡張可能な表示ペイロードの再構築を容易にするように構成された実行可能な拡張可能なペイロード再構築コンポーネントを生成し、
少なくとも１つのプロセッサを介して、前記生成された実行可能な拡張可能なペイロード再構築コンポーネントを有するメッセージを前記トップ・レベル・リスニング・コンポーネントに送る
ように構成され、
前記トップ・レベル・リスニング・コンポーネントは、
少なくとも１つのプロセッサを介して、前記フレーム・バスティング・コンポーネントからのメッセージのバスタ・イベント・リスナを追加する
ようにさらに構成され、
前記バスタ・イベント・リスナは、前記フレーム・バスティング・コンポーネントからメッセージを受信する時に、
少なくとも１つのプロセッサを介して、前記フレーム・バスティング・コンポーネントからの前記メッセージ内で提供される実行可能コンポーネントを実行する
ように構成される
プロセッサ実施されるウェブページ・フレーム拡張表示方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本特許出願の開示文書は、様々な新規の革新を含む発明的諸態様（以下では「開示」）を説明し、著作権、マスクワーク、および／または他の知的財産保護の対象である材料を含む。そのような知的財産のそれぞれの所有者は、これが刊行される特許局ファイル／レコードに現れる時に何人による開示の複製にも異議を唱えないが、それ以外の点では全権利を留保する。
【０００２】
優先権の主張
本出願人は、これによって、２０１６年９月１９日に出願した米国特許仮出願第６２／３９６７９６号、名称「Ｓｕｐｒａ  Ｂｏｕｎｄａｒｙ  Ｗｅｂ  Ｃｏｍｐｏｓｉｔｏｒ  Ａｐｐａｒａｔｕｓｅｓ，  Ｍｅｔｈｏｄｓ  ａｎｄ  Ｓｙｓｔｅｍｓ」（弁理士整理番号第ＬＩＮＫＳＴＯＲＭ０１００ＰＶ号）および２０１６年９月１９日に出願した米国特許仮出願第６２／３９６７９９号、名称「Ｓｕｐｒａ  Ｂｏｕｎｄａｒｙ  Ｗｅｂ  Ｃｏｍｐｏｓｉｔｏｒ  Ａｐｐａｒａｔｕｓｅｓ，  Ｍｅｔｈｏｄｓ  ａｎｄ  Ｓｙｓｔｅｍｓ」（弁理士整理番号第ＬＩＮＫＳＴＯＲＭ０１００ＰＶ１号）の非仮変更として米国特許法第１１９条の下での優先権の利益を主張するものである。
【０００３】
前述の特許出願の内容全体が、参照によって本明細書に特に組み込まれている。
【０００４】
本発明は、全般的にはウェブ・フレームおよびグラフィック合成に対処し、より具体的には、境界上ウェブ・コンポジタ（Ｓｕｐｒａ  Ｂｏｕｎｄａｒｙ  Ｗｅｂ  Ｃｏｍｐｏｓｉｔｏｒ）の装置、方法、およびシステムを含む。
【０００５】
しかし、読者による革新の理解を発達させるために、開示は、これらの革新の態様がどのようにして独立に動作し、個々の革新の間で相互作用し、かつ／または集合的に協力するのかを示し、明白にするために、単一の説明に編集された。本願は、次に、様々な革新の間にあるものとして相互関係および協同作用をさらに説明し、そのすべてが、米国特許法第１１２条の遵守を促進する。
【背景技術】
【０００６】
ウェブ技術は、グラフィック表示を可能にする。ウェブ・サーバは、ユーザによって操作されるウェブ・ブラウザに転送されるウェブ・ページ・データをホスティングする。ウェブ・ブラウザは、グラフィックスとテキストとの両方をレンダリングするためにウェブ・ページ・データを解釈する。
【０００７】
境界上ウェブ・コンポジタの装置、方法、およびシステム（以下では「ＳＢＷＣ」）開示の様々な非限定的な例の革新的態様を示す付録および／または図面は、以下を含む。
【図面の簡単な説明】
【０００８】
【図１Ａ】ＳＢＷＣのデータ・フローの実施形態を示すデータグラフ図である。
【図１Ｂ】ＳＢＷＣのデータ・フローの実施形態を示すデータグラフ図である。
【図２】ＳＢＷＣのフレーム・エスケーピング（ｆｒａｍｅ  ｅｓｃａｐｉｎｇ、ＦＥ）コンポーネントの実施形態を示す論理流れ図である。
【図３】ＳＢＷＣのフレーム・バスティング（ｆｒａｍｅ  ｂｕｓｔｉｎｇ、ＦＢ）コンポーネントの実施形態を示す論理流れ図である。
【図４】ＳＢＷＣのトップ・レベル・リスニング（ｔｏｐ  ｌｅｖｅｌ  ｌｉｓｔｅｎｉｎｇ、ＴＬＬ）コンポーネントの実施形態を示す論理流れ図である。
【図５】ＳＢＷＣのフレーム照会（ｆｒａｍｅ  ｑｕｅｒｙｉｎｇ、ＦＱ）コンポーネントの実施形態を示す論理流れ図である。
【図６】ＳＢＷＣの拡張可能なペイロード再構築（ｅｘｐａｎｄａｂｌｅ  ｐａｙｌｏａｄ  ｒｅｂｕｉｌｄｉｎｇ、ＥＰＲ）コンポーネントの実施形態を示す論理流れ図である。
【図７】ＳＢＷＣの実施形態を示すスクリーンショット図である。
【図８】ＳＢＷＣの実施形態を示すスクリーンショット図である。
【図９】ＳＢＷＣコントローラの実施形態を示すブロック図である。
【発明を実施するための形態】
【０００９】
一般に、図内の各引用番号の先頭の数字は、その引用番号が導入され、かつ／または詳細に説明される図面を示す。したがって、引用番号１０１の詳細な議論は、図１内に見出され、かつ／または導入されるはずである。引用番号２０１は、図２で導入されるなどである。任意の引用番号および／または参照番号は、必ずしも連続ではなく、むしろ、再配置され得る例の順序に過ぎず、他の順序が企図されている。
【００１０】
境界上ウェブ・コンポジタの装置、方法、およびシステム（以下では「ＳＢＷＣ」）は、ＳＢＷＣコンポーネント（たとえば、ＦＥコンポーネント、ＦＢコンポーネント、ＴＬＬコンポーネント、ＦＱコンポーネント、ＥＰＲコンポーネントなど）を介してウェブページ要求入力を合成された拡張可能な要素出力に変換する。様々な実施形態のＳＢＷＣコンポーネントは、下で示される有利な特徴を実施する。
【００１１】
概論
インターネット上の広告主は、彼らが使用可能な広告フォーマットの多数の選択のうちの１つとして「リッチ・メディア拡張可能広告（Ｒｉｃｈ  Ｍｅｄｉａ  Ｅｘｐａｎｄａｂｌｅ  Ａｄ）」を利用してきた。産業組合ＩＡＢ（Ｉｎｔｅｒａｃｔｉｖｅ  Ａｄｖｅｒｔｉｓｉｎｇ  Ｂｕｒｅａｕ）によれば、「リッチ・メディア」は、「ユーザがウェブ・ページ・フォーマット内で対話できる（単にアニメートするのではなく）広告」と定義される。さらに、「拡張可能な」広告は、マウス・オーバー、クリック、またはタップを介して選択された時に元の寸法を超えてサイズを増加させ、その結果、追加情報または追加の対話機能性を有するより大きいフットプリントを提示できるようになる広告である。
【００１２】
拡張可能な広告は、より大きく、より注意を引き、より魅力があり、より対話的になり得る広告プレゼンスを提供するので広告主にとって非常に望ましく、ＳＢＷＣの場合には、カスケーディング・ナビゲーション・メニュー（たとえば、数百個のクリック可能な選択の）を提示でき、これが、通常は顧客のエンゲージメント、クリックスルー、およびコンバージョン（たとえば、オンライン販売またはリードジェネレーション）に関してより高い性能を促進するので、顧客にとってより有用である。ＳＢＷＣの場合に、これらの改善は、多数の厳格なＡＢテスト（たとえば、同一のウェブサイト、同一のページ配置、同一時刻などでのＳＢＷＣ広告対競合者の広告の５０／５０交番ローテーション）による測定でクリックスルーおよびコンバージョンにおいて２倍から１７倍までの範囲にわたった。ナビゲート可能メニューがウェブ・ページ上の事前にセットされた広告ブロックからどのように拡張され得るのかの例に関しては、図７および図８を参照されたい。
【００１３】
しかし、拡張可能な広告の広く行き渡った使用に対する１つの主要な障害は、多くの「パブリッシャ・ウェブサイト」（たとえば、その上に広告が現れることを許すウェブサイト）が、ｉｆｒａｍｅと称する広告をホスティングする技法を使用し、これが、広告がその元々の境界内に残るように広告を制限し、すべての拡張を妨げることである。拡張可能な（たとえば、ＪａｖａＳｃｒｉｐｔ）広告が、ｉｆｒａｍｅ内で供給される時に、その広告は、セキュリティのためにブラウザが設置するｃｒｏｓｓ  ｏｒｉｇｉｎ  ｒｅｓｔｒｉｃｔｉｏｎの対象になる。ＪａｖａＳｃｒｉｐｔ広告は、供給される時に、親パブリッシャ・ウェブページ（たとえば、ｗｗｗ．Ｂ．ｃｏｍ）とは異なるドメイン（たとえば、ｗｗｗ．Ａ．ｃｏｍ）上の子ｉｆｒａｍｅ内に配置される。この２つの一致しないドメインは、ＪａｖａＳｃｒｉｐｔベースの広告が親パブリッシャ・ウェブページと通信するのを妨げる。ブラウザのこのセキュリティ特徴は、親パブリッシャ・ウェブページ上でのＪａｖａＳｃｒｉｐｔ広告コードの実行を妨げる。多くのパブリッシャがｉｆｒａｍｅを使用する理由は、広告がページの残りと技術的に通信することを制限し、したがって、広告がパブリッシャのページに悪影響する（たとえば、パブリッシャのコンテンツを許可されないコンテンツに置換することによって）ことを防ぐことによって、彼らのウェブサイトでのユーザ経験を保護するためである。しかし、これの意図されない結果は、ユーザが広告にマウス・オーバーし、広告をクリックし、または広告をタップすることによって拡張を開始することを故意に試みる場合であっても、広告が拡張できないことである。
【００１４】
多くのウェブサイトは、拡張可能な広告を受け入れることを望んでいる。というのは、彼らのビジネス・モデルが広告によって支持され、多数の広告主が拡張可能な広告を利用したがっていることがわかっており、その結果、彼らが受け入れることのできる広告タイプが多ければ多いほど、彼らの使用可能な広告インベントリに関する広告入札の間で彼らの有する競争がより多くなり、稼げる金額がより多くなるからである。たとえば、ＧｏｏｇｌｅのＡｄ  Ｅｘｃｈａｎｇｅ（「ＡｄＸ」）に契約した非常に多数のパブリッシャ・サイトは、彼らが拡張可能な広告を受け入れるとＧｏｏｇｌｅに宣言したが、残念ながら、彼らは、彼らのサイトがｉｆｒａｍｅを使用する場合であっても拡張可能な広告が機能することを可能にする、Ｇｏｏｇｌｅが提供するソフトウェア・キットを実際にはインストールしなかった。いくつかの推定によれば、Ｇｏｏｇｌｅのパブリッシャの８０％もが、実際には拡張可能な広告をサポートしていない。
【００１５】
ＳＢＷＣは、拡張可能な広告をサポートするためのより的確な解決策を提供する。一実施形態では、ＳＢＷＣは、ローカルに何かを（たとえば、パブリッシャのサーバ上にファイルを）インストールする必要なしにパブリッシャが拡張可能な広告をサポートすることを可能にし、彼らのｉｆｒａｍｅが拡張機能性を妨害するかどうかを心配する必要なしに拡張可能な広告（たとえば、ＡｄＸ、ＯｐｅｎＸ、Ｉｎｄｅｘ  Ｅｘｃｈａｎｇｅ、ＡｐｐＮｅｘｕｓなどのａｄ  ｅｘｃｈａｎｇｅによって配信される）をホスティングすることを容易にする機構を提供する。また、これは、現実問題として１００％のコンプライアンスを達成することがほぼ不可能である（たとえば、すべてのパブリッシャが、そこからウェブページを供給するすべてのドメイン（たとえば、ｗｗｗ．Ｂ．ｃｏｍ）およびサブドメイン（たとえば、ｓｕｂｄｏｍａｉｎ１．Ｂ．ｃｏｍ、ｓｕｂｄｏｍａｉｎ２．Ｂ．ｃｏｍ、ｓｕｂｄｏｍａｉｎ３．Ｂ．ｃｏｍ）にファイルをインストールしなければならないはずである）ことはさておき、すべてのパブリッシャに督促状を大量にメールで送ることによってコンプライアンスを実施するための時間および労力をａｄ  ｅｘｃｈａｎｇｅから減ずる。
【００１６】
パブリッシャがプログラム的広告環境（別名、「リアルタイム入札」環境または「ＲＴＢ」環境）内の彼らのサーバ上にファイルをインストールすることに頼ることが実用的ではない（たとえば、リッチ・メディア・ベンダにとって、広告主にとって、広告配信者／ａｄ  ｅｘｃｈａｎｇｅにとって）１つの理由は、その環境内で、広告主が、その広告がどこに現れるのかを前もって知ることがほとんどなく、その代わりに、広告が、「ｅｘｃｈａｎｇｅ（取引所）」環境（たとえば、株式取引所のような）を介して配置され、この環境が、多数の異なるソースからの入札および申し出を自動的に突き合わせ、その後、入札および申し出がお互いと一致する（たとえば、かつ、一致が、他の点で関係する当事者によって前もって指定されたターゲティング・パラメータに適合する）任意のウェブサイト上に広告を自動的に配置することである。したがって、すべてのパブリッシャが彼らのサーバ上にファイルをインストールしない限り、広告主は、その拡張可能な広告が拡張できるようになると確信することができない。したがって、すべてのパブリッシャ側での意図的なアクションを全く要求せずに拡張可能な広告のサポートをあまねく可能にする機構を考案することは、重大なブレークスルーである。
【００１７】
一実施態様では、この機構は、広告がパブリッシャのページの残りと通信し、したがってｉｆｒａｍｅにロックされるのではなく元の境界を超えて拡張することを可能にするので広告が拡張することを可能にする、集中化された機構である。たとえば、この機構は、１つまたは複数の既存の機構を介してａｄ  ｅｘｃｈａｎｇｅによって集中的に供給され得（たとえば、ｉｆｒａｍｅエスケーピング解決策コードは、パブリッシャがＧｏｏｇｌｅ広告を供給したい時に彼らのページ上にインストールするＧｏｏｇｌｅのＡｄＸスクリプトのいずれかに追加され得、ｉｆｒａｍｅエスケーピング解決策コードは、彼らのパブリッシャ・コンソール内でＧｏｏｇｌｅが作成する広告タグ・スクリプトに追加され得る）、パブリッシャのウェブページのトップ・レベル・フレームに追加され得る（たとえば、ＪａｖａＳｃｒｉｐｔコードの短い断片）。この機構は、ｉｆｒａｍｅエスケープを可能にするために専用のフレーム・バスタ・ドメインまたはａｄ  ｅｘｃｈａｎｇｅドメイン（たとえば、ａｄ  ｅｘｃｈａｎｇｅがコードをホスティングしている場合）のいずれかと通信できるので、安全である。これは、通信を信頼されるドメイン内に留める。
【００１８】
一実施形態では、ｉｆｒａｍｅエスケーピング解決策は、ｐｏｓｔメッセージング（ｐｏｓｔ  ｍｅｓｓａｇｉｎｇ）と呼ばれる、親パブリッシャ・ページとの通信を確立する技法を使用する。メッセージは、ｐｏｓｔメッセージを使用して、異なるドメイン名上のｉｆｒａｍｅの間で送られ得る。一実施態様では、パブリッシャ・ページは、その子ｉｆｒａｍｅからのｐｏｓｔメッセージをリスンしている場合がある（たとえば、ＪａｖａＳｃｒｉｐｔコードの短い断片を介して）。パブリッシャ・ページは、それが受信しているｐｏｓｔメッセージを信頼することができる。というのは、それらのメッセージが信頼されるドメイン名からのものである場合に、それらが受け入れられるからである。信頼されるドメイン名からではないすべてのｐｏｓｔメッセージを、無視することができる。ｐｏｓｔメッセージは、広告ｉｆｒａｍｅが親パブリッシャ・ページ上で突き止められるまで、子ｉｆｒａｍｅと親トップ・レベル・フレームとの間で往復して送られる。広告ｉｆｒａｍｅが識別された後に、その広告ｉｆｒａｍｅは、信頼され得るのでパブリッシャ・ページ上でＪａｖａＳｃｒｉｐｔコードを実行することができる。一実施態様では、広告は、トップ・レベル・フレーム内で、パブリッシャのウェブページ上のｉｆｒａｍｅの真上で再構築され得る（たとえば、ＣＳＳ  ｚ−ｉｎｄｅｘプロパティを介して）。ｉｆｒａｍｅの内部ではなくｉｆｒａｍｅの上にあることが、広告が拡張することを可能にする。
【００１９】
ＳＢＷＣの域外合成機構の重要性は、広告配信者／ａｄ  ｅｘｃｈａｎｇｅ（たとえば、ＡｐｐＮｅｘｕｓ、Ｇｏｏｇｌｅ、Ｉｎｄｅｘ  Ｅｘｃｈａｎｇｅ、ＯｐｅｎＸ）をはるかに超える。この手法は、拡張可能な広告のベンダだけではなく、情報ポータルおよびウィジェット作成者または最初に割り振られたものより大きい面積へのデータ合成を提供することを望むすべての人によっても利用され得る。
【００２０】
ＳＢＷＣ
図１Ａ〜図１Ｂは、ＳＢＷＣのデータ・フローの実施形態を示すデータグラフ図を示す。図１Ａ〜図１Ｂでは、破線は、オプションである可能性がより高い可能性があるデータ・フロー要素を示す。図１Ａ〜図１Ｂでは、クライアント１０２は、コンテンツ・ページ（たとえば、天気予報、ニュース・ストーリ）を入手するためにパブリッシャ・サーバ１０７にウェブページ要求１２１を送ることができる。たとえば、クライアントは、デスクトップ、ラップトップ、タブレット、スマートフォン、および／またはクライアント・アプリケーションを実行している類似物とすることができる。一実施態様では、ウェブページ要求は、要求識別子、コンテンツ・ページ識別子、および／または類似物などのデータを含むことができる。一実施形態では、クライアントは、下で提供される、実質的にｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ（「ＸＭＬ」）フォーマットされたデータを含む（セキュア）ハイパーテキスト転送プロトコル（「ＨＴＴＰ（Ｓ）」）ＰＯＳＴメッセージの形の、以下の例のウェブページ要求を供給することができる。
【数１】
0006944170.tif 000002
0006944170.tif 000003
0006944170.tif 000004
【００２１】
パブリッシャ・サーバは、要求されたコンテンツ・ページを有するウェブページ応答１２５をクライアントに送ることができる。たとえば、クライアントは、クライアントのユーザにコンテンツ・ページを表示することができる。コンテンツ・ページは、親ウェブページ・トップ・レベル（たとえば、トップ・レベル・フレーム）１０３および子フレーム（たとえば、ｉｆｒａｍｅ）１０４を含む複数の要素を含むことができる。一実施態様では、ウェブページ・トップ・レベルは、トップ・レベル・リスニング（ＴＬＬ）コンポーネント（たとえば、ＪａｖａＳｃｒｉｐｔコードの短い断片）を含むことができる。
【００２２】
フレームは、拡張可能なペイロード要求１２９を広告サーバ１０８に送ることができる。たとえば、このｉｆｒａｍｅは、そのｓｒｃ属性で指定されたＵＲＬから拡張可能な表示ペイロード（たとえば、拡張可能な広告）を要求することができる（たとえば、ｈｔｔｐｓ：／／ｗｗｗ．ａｄｓ．ｃｏｍ／ａｄ．ｐｈｐ？ａｄＩＤ＝１２３４５）。
【００２３】
広告サーバは、要求された拡張可能な広告ページを有する拡張可能なペイロード応答１３３をクライアントに送ることができる。たとえば、クライアントは、クライアントのユーザにフレーム内で拡張可能な広告ページを表示することができる。拡張可能な広告ページは、ｉｆｒａｍｅの境界内に留まるように制限され得、拡張できない可能性がある。
【００２４】
フレーム・エスケーピング（ＦＥ）コンポーネント１３５（たとえば、拡張可能なペイロード応答を介して供給される）は、ｉｆｒａｍｅエスケーピング解決策を容易にするために、フレーム・バスタ（たとえば、フレームの子ｉｆｒａｍｅ）要素１０５をインスタンス化し、ウェブページ・トップ・レベルからのｐｏｓｔメッセージを処理し、フレーム・バッファにｐｏｓｔメッセージを送り、かつ／または類似物を行うことができる。ＦＥコンポーネントに関する追加の詳細に関しては、図２を参照されたい。
【００２５】
フレーム・バスタは、バスタ・サーバ１０９にフレーム・バスタ・ペイロード要求１３７を送ることができる。たとえば、このｉｆｒａｍｅは、そのｓｒｃ属性で指定されたＵＲＬからフレーム・バスタ・ペイロード（たとえば、信頼されるフレーム・バスタ・ドメインからの）を要求することができる（たとえば、ｈｔｔｐｓ：／／ｗｗｗ．ＦｒａｍｅＢｕｓｔｅｒ．ｃｏｍ／ｂｕｓｔｅｒ．ｈｔｍｌ？ａｄＩＤ＝１２３４５）。バスタ・サーバは、要求されたフレーム・バスタ・ページを有するフレーム・バスタ・ペイロード応答１４１をクライアントに送ることができる。
【００２６】
フレーム・バスティング（ＦＢ）コンポーネント１４５（たとえば、フレーム・バスタ・ペイロード応答を介して供給される）は、ｉｆｒａｍｅエスケーピング解決策を容易にするために、フレームからのｐｏｓｔメッセージを処理し、ウェブページ・トップ・レベルにｐｏｓｔメッセージを送り、かつ／または類似物を行うことができる。ＦＢコンポーネントに関する追加の詳細に関しては、図３を参照されたい。
【００２７】
フレーム・バスタは、どのフレームが拡張可能な広告を含むのかを判定するためのフレームの照会を容易にするために、ウェブページ・トップ・レベルに拡張可能なペイロード識別メッセージ１４９を送ることができる。一実施態様では、拡張可能なペイロード識別メッセージは、起点（たとえば、ｐｏｓｔメッセージを送るフレームに関連するドメイン）、ターゲット起点（たとえば、ｐｏｓｔメッセージを受信しなければならないフレームに関連するドメイン）、データ（たとえば、ターゲット・フレームに送られるべきデータ）、および／または類似物などのデータを含むｐｏｓｔメッセージとすることができる。たとえば、データ・フィールドは、フレーム照会（ＦＱ）コンポーネント（たとえば、一意フレーム識別子、ソース、および／または類似物などのフレームに関するデータを含むことができる）を含むことができる。ＦＱコンポーネントに関する追加の詳細に関しては、図５を参照されたい。一実施形態では、フレーム・バスタは、下で提供される、ＸＭＬフォーマットされたデータを含む以下の例の拡張可能なペイロード識別メッセージを供給することができる。
【数２】
0006944170.tif 000005
【００２８】
ＴＬＬコンポーネント１５３は、フレーム・バスタからのｐｏｓｔメッセージをリスンし、かつ／またはｐｏｓｔメッセージを介して供給されたコンポーネントを実行することができる。ＴＬＬコンポーネントの追加の詳細に関しては、図４を参照されたい。
【００２９】
ウェブページ・トップ・レベルは、どのフレームが拡張可能な広告を含むのかを判定するのを容易にするために、フレーム照会メッセージ１５７をフレームに送ることができる。一実施態様では、フレーム照会メッセージは、起点（たとえば、ｐｏｓｔメッセージを送るフレームに関連するドメイン）、ターゲット起点（たとえば、ｐｏｓｔメッセージを受信しなければならないフレームに関連するドメイン）、データ（たとえば、ターゲット・フレームに送られるべきデータ）、および／または類似物などのデータを含むｐｏｓｔメッセージとすることができる。たとえば、データ・フィールドは、ＮｏｄｅＬｉｓｔ識別子、一意フレーム識別子、および／または類似物を含むことができる。一実施形態では、ウェブページ・トップ・レベルは、下で提供される、ＸＭＬフォーマットされたデータを含む以下の例のフレーム照会メッセージを供給することができる。
【数３】
0006944170.tif 000006
【００３０】
フレームは、フレームの一致するＮｏｄｅＬｉｓｔ識別子をフレーム・バスタに供給するために、フレーム識別メッセージ１６１をフレーム・バスタに送ることができる。一実施態様では、フレーム識別メッセージは、起点（たとえば、ｐｏｓｔメッセージを送るフレームに関連するドメイン）、ターゲット起点（たとえば、ｐｏｓｔメッセージを受信しなければならないフレームに関連するドメイン）、データ（たとえば、ターゲット・フレームに送られるべきデータ）、および／または類似物などのデータを含むｐｏｓｔメッセージとすることができる。たとえば、データ・フィールドは、ＮｏｄｅＬｉｓｔ識別子および／または類似物を含むことができる。一実施形態では、フレームは、下で提供される、ＸＭＬフォーマットされたデータを含む以下の例のフレーム識別メッセージを供給することができる。
【数４】
0006944170.tif 000007
【００３１】
フレーム・バスタは、ユーザへの拡張可能な表示ペイロードの供給を容易にするために、拡張可能なペイロード・データ・メッセージ１６５をウェブページ・トップ・レベルに送ることができる。一実施態様では、拡張可能なペイロード・データ・メッセージは、起点（たとえば、ｐｏｓｔメッセージを送るフレームに関連するドメイン）、ターゲット起点（たとえば、ｐｏｓｔメッセージを受信しなければならないフレームに関連するドメイン）、データ（たとえば、ターゲット・フレームに送られるべきデータ）、および／または類似物などのデータを含むｐｏｓｔメッセージとすることができる。たとえば、データ・フィールドは、拡張可能なペイロード再構築（ＥＰＲ）コンポーネント（たとえば、フレームに関するデータを含むことができる）を含むことができる。ＥＰＲコンポーネントに関する追加の詳細に関しては、図６を参照されたい。一実施形態では、フレーム・バスタは、下で提供される、ＸＭＬフォーマットされたデータを含む以下の例の拡張可能なペイロード・データを供給することができる。
【数５】
0006944170.tif 000008
【００３２】
ウェブページ・トップ・レベルは、ウェブページ・トップ・レベル内での拡張可能な広告の再構築（たとえば、フレームの上での）を容易にするために広告サーバに拡張可能なペイロード要求１６９を送ることができる。たとえば、拡張可能な広告ページがキャッシングされなかった場合に、これを広告サーバから取り出すことができる。別の例では、追加の広告を取り出すことができる。
【００３３】
広告サーバは、要求されたデータを有する拡張可能なペイロード応答１７３をクライアントに送ることができる。たとえば、クライアントは、ウェブページ・トップ・レベルで拡張可能な広告ページをクライアントのユーザに表示することができる。拡張可能な広告ページは、拡張することができる（たとえば、ユーザが、拡張可能な広告にマウス・オーバーし、拡張可能な広告をクリックし、または拡張可能な広告をタップすることによって拡張を開始することを試みる場合に）。
【００３４】
図２は、ＳＢＷＣのフレーム・エスケーピング（ＦＥ）コンポーネントの実施形態を示す論理流れ図を示す。図２では、２０１で、フレーム・エスケーピング要求が入手され得る。たとえば、フレーム・エスケーピング要求は、拡張可能な表示ペイロード（たとえば、拡張可能な広告（たとえば、ＪａｖａＳｃｒｉｐｔオブジェクト）の）初期化機能が、ｉｆｒａｍｅエスケーピング解決策を容易にするためにＦＥコンポーネントを呼び出す時に入手され得る。
【００３５】
２０５で、フレームからのエスケープを試みるべきかどうかの判定を行うことができる。たとえば、エスケープする試みは、拡張可能な広告がｉｆｒａｍｅ内にあると判定される場合に行われ得る。一実施態様では、フレームからのエスケープを試みるべきかどうかの判定は、次のように実施され得る。
【数６】
0006944170.tif 000009
0006944170.tif 000010
【００３６】
エスケープを試みなければならないと判定される場合には、２０９で、フレーム（たとえば、拡張可能な広告を含むｉｆｒａｍｅ）の一意フレーム識別子が生成され得る。たとえば、一意フレーム識別子は、乱数とすることができる。一実施態様では、一意フレーム識別子は、以下のように生成され得る。
【数７】
0006944170.tif 000011
【００３７】
２１３で、フレーム・バスタ（たとえば、拡張可能な広告ｉｆｒａｍｅの子ｉｆｒａｍｅ）をインスタンス化することができる。たとえば、フレーム・バスタは、ＦＢコンポーネントの利用を容易にするためにインスタンス化され得る。フレーム・バスタは、一意フレーム識別子、第１レベル拡張可能な広告ｉｆｒａｍｅのソース、ウェブページ・トップ・レベルのドメイン、拡張可能な広告オブジェクトの初期化関数のソース、および／または類似物などのデータを（たとえば、ｗｉｎｄｏｗ．ｎａｍｅ属性を介して）供給され得る。フレーム・バスタのｓｒｃ属性は、ＦＢコンポーネントのコードを含む信頼されるフレーム・バスタ・ドメインにあるウェブページに送られ得る。一実施態様では、フレーム・バスタは、以下のように初期化され得る。
【数８】
0006944170.tif 000012
【００３８】
２１７で、ウェブページ・トップ・レベルｐｏｓｔメッセージのイベント・リスナを追加する（たとえば、第１レベルの拡張可能な広告のｉｆｒａｍｅに）ことができる。たとえば、イベント・リスナは、ウェブページ・トップ・レベルから受信されたメッセージを処理することができる。一実施態様では、イベント・リスナは、以下のように追加され得る。
【数９】
0006944170.tif 000013
【００３９】
２２１で、ｐｏｓｔメッセージがウェブページ・トップ・レベルから受信されたかどうかの判定を行うことができる。たとえば、イベント・リスナは、受信されたｐｏｓｔメッセージ（たとえば、上の例に示されたもの）を処理するように構成され得る。ｐｏｓｔメッセージが受信されなかった場合には、ＦＥコンポーネントは、ｐｏｓｔメッセージが受信されるまで、２２５で待つことができる。
【００４０】
ｐｏｓｔメッセージが受信された場合には、２２９で、ｐｏｓｔメッセージ内で指定された一意フレーム識別子を判定することができる。一実施態様では、ｐｏｓｔメッセージ内で供給されるデータは、一意フレーム識別子を判定するために解析され得る（たとえば、ＪａｖａＳｃｒｉｐｔコマンドを使用して）。
【００４１】
２３３で、指定された一意フレーム識別子が、拡張可能な広告を含むｉｆｒａｍｅの一意フレーム識別子と一致するかどうかの判定を行うことができる。フレーム識別子が一致する場合には、２３７で、第１レベルの拡張可能な広告ｉｆｒａｍｅのＮｏｄｅＬｉｓｔ識別子を判定することができる。一実施態様では、ｐｏｓｔメッセージ内で供給されるデータは、ＮｏｄｅＬｉｓｔ識別子を判定するために解析され得る（たとえば、ＪａｖａＳｃｒｉｐｔコマンドを使用して）。
【００４２】
判定されたＮｏｄｅＬｉｓｔ識別子を有するｐｏｓｔメッセージは、２４１でフレーム・バスタに送られ得る。一実施態様では、ｐｏｓｔメッセージは、ｗｉｎｄｏｗ．ｐｏｓｔＭｅｓｓａｇｅ（）  ＪａｖａＳｃｒｉｐｔ関数を使用して送られ得る。
【００４３】
図３は、ＳＢＷＣのフレーム・バスティング（ＦＢ）コンポーネントの実施形態を示す論理流れ図を示す。図３では、３０１でフレーム・バスティング要求を入手することができる。たとえば、フレーム・バスティング要求は、フレーム・バスタ・ペイロードのスクリプトが実行される時（たとえば、フレーム・バスタ・ページが、拡張可能な広告に関連するフレーム・バスタｉｆｒａｍｅにロードされる時）に入手され得る。
【００４４】
３０５で、親フレーム（たとえば、拡張可能な広告ｉｆｒａｍｅ）の一意フレーム識別子を判定することができる。たとえば、ｗｉｎｄｏｗ．ｎａｍｅ属性を解析して（たとえば、ＪａｖａＳｃｒｉｐｔコマンドを使用して）、一意フレーム識別子を判定することができる。一実施態様では、一意フレーム識別子を、次のように判定することができる。
【数１０】
0006944170.tif 000014
【００４５】
３０９で、親フレーム（たとえば、第１レベルの拡張可能な広告ｉｆｒａｍｅ）のソースを判定することができる。たとえば、ｗｉｎｄｏｗ．ｎａｍｅ属性を解析して（たとえば、ＪａｖａＳｃｒｉｐｔコマンドを使用して）、ソースを判定することができる。一実施態様では、ソースを、次のように判定することができる。
【数１１】
0006944170.tif 000015
【００４６】
３１３で、ウェブページ・トップ・レベル・ドメインを判定することができる。たとえば、ｗｉｎｄｏｗ．ｎａｍｅ属性を解析して（たとえば、ＪａｖａＳｃｒｉｐｔコマンドを使用して）、ウェブページ・トップ・レベルのドメインを判定することができる。一実施態様では、ウェブページ・トップ・レベル・ドメインを、次のように判定することができる。
【数１２】
0006944170.tif 000016
【００４７】
３１７で、実行可能なフレーム照会（ＦＱ）コンポーネントを生成することができる。たとえば、ＦＱコンポーネントは、どのフレームが拡張可能な広告を含むのかを判定するためのフレームの照会を容易にすることができる。一実施態様では、ＦＱコンポーネントを、次のように生成することができる。
【数１３】
0006944170.tif 000017
【００４８】
３２１で、生成されたＦＱコンポーネントを有するｐｏｓｔメッセージをウェブページ・トップ・レベルに送ることができる。一実施態様では、ｐｏｓｔメッセージは、次のようにｗｉｎｄｏｗ．ｐｏｓｔＭｅｓｓａｇｅ（）  ＪａｖａＳｃｒｉｐｔ関数を使用して送られ得る。
【数１４】
0006944170.tif 000018
【００４９】
３２５で、フレームｐｏｓｔメッセージのイベント・リスナを追加する（たとえば、バスタｉｆｒａｍｅに）ことができる。たとえば、イベント・リスナは、親フレームから受信されたメッセージを処理することができる。一実施態様では、イベント・リスナを次のように追加することができる。
【数１５】
0006944170.tif 000019
0006944170.tif 000020
【００５０】
３２９で、ｐｏｓｔメッセージが親フレームから受信されたかどうかの判定を行うことができる。たとえば、イベント・リスナは、受信されたｐｏｓｔメッセージを処理するように構成され得る（たとえば、上の例に示されているように）。ｐｏｓｔメッセージが受信されなかった場合には、ＦＢコンポーネントは、３３３で、ｐｏｓｔメッセージが受信されるまで待つことができる。
【００５１】
ｐｏｓｔメッセージが受信された場合には、３３７で、ｐｏｓｔメッセージ内で指定された親フレームのＮｏｄｅＬｉｓｔ識別子を判定することができる。一実施態様では、ｐｏｓｔメッセージ内で供給されるデータを解析して（たとえば、ＪａｖａＳｃｒｉｐｔコマンドを使用して）、親フレームのＮｏｄｅＬｉｓｔ識別子を判定することができる。
【００５２】
３４１で、拡張可能なペイロード・データを判定することができる。一実施態様では、拡張可能な広告の初期化スクリプトのソースを判定することができる。たとえば、ｗｉｎｄｏｗ．ｎａｍｅ属性を解析して（たとえば、ＪａｖａＳｃｒｉｐｔコマンドを使用して）、拡張可能な広告の初期化スクリプトのソースを判定することができる。別の実施態様では、他の拡張可能な広告の属性（たとえば、親フレームから渡され、クリック追跡に利用される）を判定することができる。
【００５３】
３４５で、実行可能な拡張可能なペイロード再構築（ＥＰＲ）コンポーネントを生成することができる。たとえば、ＥＰＲコンポーネントは、ウェブページ・トップ・レベル内（たとえば、親フレームの上）での拡張可能な広告の再構築を容易にすることができる。
【００５４】
３４９で、生成されたＥＰＲコンポーネントを有するｐｏｓｔメッセージをウェブページ・トップ・レベルに送ることができる。一実施態様では、ｐｏｓｔメッセージは、ｗｉｎｄｏｗ．ｐｏｓｔＭｅｓｓａｇｅ（）  ＪａｖａＳｃｒｉｐｔ関数を使用して送られ得る。
【００５５】
図４は、ＳＢＷＣのトップ・レベル・リスニング（ＴＬＬ）コンポーネントの実施形態を示す論理流れ図を示す。図４では、４０１で、トップ・レベル・リスニング要求を入手することができる。たとえば、トップ・レベル・リスニング要求は、ウェブページ・トップ・レベルのスクリプトが実行される時（たとえば、ウェブページ・トップ・レベルがロードされる時）に入手され得る。
【００５６】
４０５で、第１レベル・フレームのＮｏｄｅＬｉｓｔオブジェクトを作成することができる。たとえば、ＮｏｄｅＬｉｓｔオブジェクトは、ウェブページ・トップ・レベルに配置された第１レベルｉｆｒａｍｅを含む場合がある。一実施態様では、ＮｏｄｅＬｉｓｔオブジェクトを次のように作成することができる。
【数１６】
0006944170.tif 000021
【００５７】
４０９で、フレーム・バスタｐｏｓｔメッセージ（たとえば、バスタ・ドメインからの）のイベント・リスナを追加することができる（たとえば、ウェブページ・トップ・レベルに）。たとえば、イベント・リスナは、フレーム・バスタから受信されたメッセージを処理することができる。一実施態様では、イベント・リスナを次のように追加することができる。
【数１７】
0006944170.tif 000022
【００５８】
４１３で、ｐｏｓｔメッセージがフレーム・バスタから受信されたかどうかの判定を行うことができる。たとえば、イベント・リスナは、受信されたｐｏｓｔメッセージを処理するように構成され得る（たとえば、上の例に示されているように）。ｐｏｓｔメッセージが受信されなかった場合には、ＴＬＬコンポーネントは、４１７で、ｐｏｓｔメッセージが受信されるまで待つことができる。
【００５９】
ｐｏｓｔメッセージが受信された場合には、４２１で、その起点をチェックして、それがバスタ・ドメインから発したことを検証することができる。一実施態様では、ｐｏｓｔメッセージ内で供給される起点データを、指定されたバスタ・ドメイン名（たとえば、ｗｗｗ．ＦｒａｍｅＢｕｓｔｅｒ．ｃｏｍ）に対してチェックして、ｐｏｓｔメッセージの起点を検証することができる。
【００６０】
４２５で、ｐｏｓｔメッセージ内で供給された実行可能コンポーネント（たとえば、ＦＱコンポーネント、ＥＰＲコンポーネント）を実行することができる。一実施態様では、実行可能コンポーネントは、Ｆｕｎｃｔｉｏｎ（）  ＪａｖａＳｃｒｉｐｔ関数を使用して実行可能ＪａｖａＳｃｒｉｐｔ関数に変更され得、結果の実行可能ＪａｖａＳｃｒｉｐｔ関数が、実行され得る。ＦＱコンポーネントの追加の詳細に関しては、図５を参照されたい。ＥＰＲコンポーネントの追加の詳細に関しては、図６を参照されたい。
【００６１】
図５は、ＳＢＷＣのフレーム照会（ＦＱ）コンポーネントの実施形態を示す論理流れ図を示す。図５では、５０１で、ｐｏｓｔメッセージを送ったフレーム・バスタに関連する第１レベル拡張可能な広告ｉｆｒａｍｅのソースを判定することができる。一実施態様では、第１レベル拡張可能な広告ｉｆｒａｍｅのソースは、ｐｏｓｔメッセージ内で指定され得る。
【００６２】
５０５で、処理すべき第１レベル・フレームが残っているかどうかの判定を行うことができる。一実施態様では、ＮｏｄｅＬｉｓｔオブジェクト内の第１レベルｉｆｒａｍｅのそれぞれを処理することができる。処理すべき第１レベルｉｆｒａｍｅが残っている場合には、５０９で、ＮｏｄｅＬｉｓｔオブジェクト内の次の第１レベルｉｆｒａｍｅを選択することができる。
【００６３】
５１３で、選択された第１レベルｉｆｒａｍｅのソースが第１レベル拡張可能な広告ｉｆｒａｍｅのソースと一致するかどうかの判定を行うことができる。フレーム・ソースが一致すると判定される場合には、選択された第１レベルｉｆｒａｍｅのＮｏｄｅＬｉｓｔ識別子（たとえば、ｉｔｅｍインデックス）と第１レベル拡張可能な広告ｉｆｒａｍｅに関連する一意フレーム識別子（たとえば、ｐｏｓｔメッセージ内で指定される）とを有する新しいｐｏｓｔメッセージを、選択された第１レベルｉｆｒａｍｅに送ることができる。一実施態様では、ｐｏｓｔメッセージは、ｗｉｎｄｏｗ．ｐｏｓｔＭｅｓｓａｇｅ（）  ＪａｖａＳｃｒｉｐｔ関数を使用して送られ得る。
【００６４】
図６は、ＳＢＷＣの拡張可能なペイロード再構築（ＥＰＲ）コンポーネントの実施形態を示す論理流れ図を示す。図６では、６０１で、ｐｏｓｔメッセージを送ったバスタ・フレームに関連する拡張可能な表示ペイロード（たとえば、拡張可能な広告）の要素（たとえば、ＪａｖａＳｃｒｉｐｔ  ＨＴＭＬスクリプト・タグ）を作成することができる。一実施態様では、要素は、ｄｏｃｕｍｅｎｔ．ｃｒｅａｔｅＥｌｅｍｅｎｔ（）  ＪａｖａＳｃｒｉｐｔ関数を使用して作成され得る。
【００６５】
６０５で、エスケープされた要素として要素を構成することができる。たとえば、エスケープされた要素としての要素の構成は、拡張可能な広告（たとえば、関連する広告データおよび／または関数を含む拡張可能な広告ＪａｖａＳｃｒｉｐｔオブジェクト）に、それがそのｉｆｒａｍｅをエスケープし、ウェブページ・トップ・レベル上で作成されつつあることを知らせることができる。一実施態様では、要素は、クラス名（たとえば、ｌｓ＿ｅｓｃａｐｅｄ）に基づいて、エスケープされた要素として構成され得る。別の実施態様では、要素は、属性値（たとえば、ｅｓｃａｐｅｄ＝ｔｒｕｅ）に基づいて、エスケープされた要素として構成され得る。
【００６６】
６０９で、拡張可能な表示ペイロード（たとえば、拡張可能な広告に関連するデータ）がキャッシングされているかどうかの判定を行うことができる。データがキャッシングされている場合には、６１３で、キャッシングされているデータを判定することができる。たとえば、関連する広告データおよび／または関数を含む拡張可能な広告オブジェクトを識別することができる。データがキャッシングされていない場合には、６１７で、拡張可能な広告データを広告サーバから入手することができる。たとえば、拡張可能な広告オブジェクトを、拡張可能なペイロード要求を介して入手することができる。
【００６７】
６２１で、拡張可能な広告をユーザに供給することができる。一実施態様では、要素のソースに、拡張可能な広告オブジェクト初期化スクリプトの位置をセットすることができ、かつ／または要素をウェブページ・トップ・レベルに追加することができる。拡張可能な広告は、ウェブページ・トップ・レベルにある要素を使用してレンダリングされ得、拡張可能な広告は、拡張することができる（たとえば、ユーザが、拡張可能な広告にマウス・オーバーし、拡張可能な広告をクリックし、または拡張可能な広告をタップすることによって拡張を開始することを試みる場合に）。
【００６８】
図７は、ＳＢＷＣの実施形態を示すスクリーンショット図を示す。図７では、スクリーン７０１は、拡張の前の、ｗｅａｔｈｅｒ．ｃｏｍ上のＨｏｍｅ  Ｄｅｐｏｔの拡張可能な広告の例を示す。スクリーン７１０は、拡張の後の同一の広告を示す。ウィジェット７１２は、拡張された広告が、ユーザが製品をブラウズし、購入を行い、店舗ファインダを利用し、かつ／または類似物を行うことを可能にするマルチレベル・メニューをユーザに提供できることを示す。
【００６９】
図８は、ＳＢＷＣの実施形態を示すスクリーンショット図を示す。図８では、スクリーン８０１は、拡張の前の、ｎｙｔｉｍｅｓ．ｃｏｍ上のＫｉｎｋｙ  Ｂｏｏｔｓの拡張可能な広告の例を示す。スクリーン８１０は、拡張の後の同一の広告を示す。ウィジェット８１２は、拡張された広告が、ユーザが関連するメディアを一時停止し、再生し、巻き戻し、早送りし、全画面表示にし、消音し、かつ／または類似物を行うことを可能にする、関連するメディア（たとえば、プレビュー・ビデオ）のメディア・プレイヤ・コントロールのセットをユーザに提供できることを示す。
【００７０】
ＳＢＷＣコントローラ
図９は、ＳＢＷＣコントローラの実施形態を示すブロック図を示す。この実施形態では、ＳＢＷＣコントローラ９０１は、ウェブ・フレームおよびグラフィック合成技術を介するコンピュータとの相互作用および／または他の関連するデータを集計し、処理し、記憶し、検索し、供給し、識別し、指示し、生成し、照合し、かつ／または容易にするように働くことができる。
【００７１】
通常、人および／または他のシステムとすることのできるユーザは、情報処理を容易にするために情報技術システム（たとえば、コンピュータ）にかかわることができる。コンピュータは、情報を処理するのにプロセッサを使用し、そのようなプロセッサ９０３は、中央処理装置（ＣＰＵ）と呼ばれる場合がある。プロセッサの１つの形は、マイクロプロセッサと呼ばれる。ＣＰＵは、様々な動作を可能にするための命令として働く２進符号化された信号を渡すのに通信回路を使用する。これらの命令は、メモリ９２９の様々なプロセッサ・アクセス可能エリアおよびプロセッサ操作可能エリア（たとえば、レジスタ、キャッシュ・メモリ、ランダム・アクセス・メモリなど）内の他の命令およびデータを含み、かつ／またはこれを参照する動作命令および／またはデータ命令とすることができる。そのような通信命令は、所望の動作を容易にするためにプログラムおよび／またはデータ・コンポーネントとしてバッチ（たとえば、命令のバッチ）で記憶され、かつ／または送信され得る。これらの記憶された命令コード、たとえばプログラムは、所望の動作を実行するためにＣＰＵ回路コンポーネントならびに他のマザーボード・コンポーネントおよび／またはシステム・コンポーネントにかかわることができる。プログラムの１タイプが、コンピュータ・オペレーティング・システムであり、これは、コンピュータ上のＣＰＵによって実行され得、オペレーティング・システムは、ユーザがコンピュータ情報技術およびリソースにアクセスし、操作することを可能にし、容易にする。情報技術システム内で使用され得るいくつかのリソースは、データがそれを介してコンピュータに出入りすることのできる入力機構および出力機構と、データをその中に保存することのできるメモリ・ストレージと、情報をそれによって処理できるプロセッサとを含む。これらの情報技術システムは、その後の取出し、分析、および操作のためにデータを収集するのに使用され得、この取出し、分析、および操作は、データベース・プログラムを介して容易にされ得る。これらの情報技術システムは、ユーザが様々なシステム・コンポーネントにアクセスし、これを操作することを可能にするインターフェースを提供する。
【００７２】
一実施形態では、ＳＢＷＣコントローラ９０１は、周辺デバイス９１２（たとえば、ユーザ入力デバイス９１１）、オプションの暗号プロセッサ・デバイス９２８、および／または通信ネットワーク９１３からの１つまたは複数のユーザなどであるがこれに限定されないエンティティに接続され、かつ／またはこれと通信することができる。
【００７３】
ネットワークは、グラフ・トポロジ内のクライアント、サーバ、および中間ノードの相互接続および相互動作を含むと一般に考えられる。本願全体を通じて使用される用語「サーバ」が、通信ネットワークにまたがるリモート・ユーザの要求を処理し、これに応答する、コンピュータ、他のデバイス、プログラム、またはその組合せを全体的に指すことに留意されたい。サーバは、要求する「クライアント」にその情報を供給する。本明細書で使用される用語「クライアント」は、要求を処理し、要求を行い、通信ネットワークにまたがってサーバからすべての応答を入手し、処理することのできるコンピュータ、プログラム、他のデバイス、ユーザ、および／またはその組合せを全体的に指す。情報および要求を容易にし、処理し、かつ／またはソース・ユーザから宛先ユーザへの情報の移動を促進するコンピュータ、他のデバイス、プログラム、またはその組合せは、一般に「ノード」と呼ばれる。ネットワークは、ソース点から宛先への情報の転送を容易にすると一般に考えられる。ソースから宛先への情報の移動を促進する仕事を具体的に割り当てられたノードは、一般に「ルータ」と呼ばれる。ローカル・エリア・ネットワーク（ＬＡＮ）、ピコ・ネットワーク、広域ネットワーク（ＷＡＮ）、無線ネットワーク（ＷＬＡＮ）、その他など、多数の形のネットワークがある。たとえば、インターネットは、リモート・クライアントおよびサーバがこれによってお互いにアクセスし、お互いと相互動作することのできる、多数のネットワークの相互接続であるものとして一般に受け入れられている。
【００７４】
ＳＢＷＣコントローラ９０１は、メモリ９２９に接続されたコンピュータ・システム化９０２などのコンポーネントを含むことができるがこれに限定されないコンピュータ・システムに基づくものとすることができる。
【００７５】
コンピュータ・システム化
コンピュータ・システム化９０２は、クロック９３０、中央処理装置（「ＣＰＵ（１つまたは複数）」および／または「プロセッサ（１つまたは複数）」（これらの用語は、そうではないと注記されない限り、本開示全体を通じて交換可能に使用される））９０３、メモリ９２９（たとえば、読取専用メモリ（ＲＯＭ）９０６、ランダム・アクセス・メモリ（ＲＡＭ）９０５など）、および／またはインターフェース・バス９０７を含むことができ、必ずではないが最も頻繁に、命令（たとえば、２進符号化された信号）が通信、動作、記憶などを実現するためにそれを介して移動することのできる導電性のおよび／または他の形で輸送的な回路経路を有する１つまたは複数の（マザー）ボード９０２上のシステム・バス９０４を介してすべて相互接続され、かつ／または通信している。コンピュータ・システム化は、電源９８６に接続され得、たとえば、オプションで、電源は、内蔵とすることができる。オプションで、暗号プロセッサ９２６をシステム・バスに接続することができる。別の実施形態では、暗号プロセッサ、トランシーバ（たとえば、ＩＣ）９７４、および／またはセンサ・アレイ（たとえば、加速度計、高度計、環境光、気圧計、全地球測位システム（ＧＰＳ）（これによって、ＳＢＷＣコントローラがその位置を判定することを可能にする）、ジャイロスコープ、磁力計、歩数計、近接、紫外線センサなど）９７３は、インターフェース・バスＩ／Ｏ  ９０８（図示せず）を介してまたは直接にインターフェース・バス９０７を介して、内部および／または外部のいずれかの周辺デバイス９１２として接続され得る。トランシーバは、アンテナ（１つまたは複数）９７５に接続され得、これによって、様々な通信プロトコルおよび／またはセンサ・プロトコルの無線送信および無線受信を実現し、たとえば、アンテナ（１つまたは複数）は、Ｂｒｏａｄｃｏｍ  ＢＣＭ４３２９ＦＫＵＢＧトランシーバ・チップ（たとえば、８０２．１１ｎ、Ｂｌｕｅｔｏｏｔｈ  ２．１＋ＥＤＲ、ＦＭ、その他を提供する）、加速度計、高度計、ＧＰＳ、ジャイロスコープ、磁力計を有するＢｒｏａｄｃｏｍ  ＢＣＭ４７５２  ＧＰＳ受信器、Ｂｒｏａｄｃｏｍ  ＢＣＭ４３３５トランシーバ・チップ（たとえば２Ｇ、３Ｇ、および４Ｇ  ｌｏｎｇ−ｔｅｒｍ  ｅｖｏｌｕｔｉｏｎ（ＬＴＥ）セルラ通信、８０２．１１ａｃ、Ｂｌｕｅｔｏｏｔｈ  ４．０  ｌｏｗ  ｅｎｅｒｇｙ（ＬＥ）（たとえば、ビーコン機能）を提供する）、Ｂｒｏａｄｃｏｍ  ＢＣＭ４３３４１トランシーバ・チップ（たとえば、２Ｇ、３Ｇ、および４Ｇ  ＬＴＥセルラ通信、８０２．１１  ｇ／、Ｂｌｕｅｔｏｏｔｈ  ４．０、近距離無線通信（ＮＦＣ）、ＦＭラジオを提供する）、Ｉｎｆｉｎｅｏｎ  Ｔｅｃｈｎｏｌｏｇｉｅｓ  Ｘ−Ｇｏｌｄ  ６１８−ＰＭＢ９８００トランシーバ・チップ（たとえば、２Ｇ／３Ｇ  ＨＳＤＰＡ／ＨＳＵＰＡ通信を提供する）、ＭｅｄｉａＴｅｋ  ＭＴ６６２０トランシーバ・チップ（たとえば、８０２．１１ａ／ａｃ／ｂ／ｇ／ｎ、Ｂｌｕｅｔｏｏｔｈ  ４．０  ＬＥ、ＦＭ、ＧＰＳを提供する）、Ｌａｐｉｓ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ  ＭＬ８５１１  ＵＶセンサ、ｍａｘｉｍ  ｉｎｔｅｇｒａｔｅｄ  ＭＡＸ４４０００環境光および赤外線近接センサ、Ｔｅｘａｓ  Ｉｎｓｔｒｕｍｅｎｔｓ  ＷｉＬｉｎｋ  ＷＬ１２８３トランシーバ・チップ（たとえば、８０２．１１ｎ、Ｂｌｕｅｔｏｏｔｈ  ３．０、ＦＭ、ＧＰＳを提供する）、および／または類似物を含む様々なトランシーバ・チップセット（展開の必要に依存する）に接続することができる。システム・クロックは、通常、水晶発振器を有し、コンピュータ・システム化の回路経路を介してベース信号を生成する。クロックは、通常、システム・バスおよび様々なクロック・マルチプライヤに結合され、このクロック・マルチプライヤは、コンピュータ・システム化内で相互接続された他のコンポーネントのためにベース動作周波数を増減させる。コンピュータ・システム化内のクロックおよび様々なコンポーネントは、システム全体を通じて、情報を実施する信号を駆動する。コンピュータ・システム化全体を通じた情報を実施する命令のそのような送信および受信は、一般に通信と呼ばれ得る。これらの通信命令は、さらに送信され、受信され得、通信ネットワーク、入力デバイス、他のコンピュータ・システム化、周辺デバイス、および／または類似物への本コンピュータ・システム化を超える戻り通信および／または応答通信の原因であり得る。代替実施形態では、上記コンポーネントのいずれをも、様々なコンピュータ・システムによって例示されるように、お互いに直接に接続し、ＣＰＵに接続し、かつ／または多数の変形形態で編成することができることを理解されたい。
【００７６】
ＣＰＵは、ユーザ要求および／またはシステムの生成した要求を実行するプログラム・コンポーネントを実行するのに適当な少なくとも１つの高速データ・プロセッサを含む。ＣＰＵは、しばしば、大型のスーパーコンピュータ（１つまたは複数）およびメインフレーム（１つまたは複数）コンピュータから、ミニ・コンピュータ、サーバ、デスクトップ・コンピュータ、ラップトップ、シン・クライアント（たとえば、Ｃｈｒｏｍｅｂｏｏｋ）、ネットブック、タブレット（たとえば、Ａｎｄｒｏｉｄ、ｉＰａｄ、およびＷｉｎｄｏｗｓタブレットなど）、モバイル・スマートフォン（たとえば、Ａｎｄｒｏｉｄ、ｉＰｈｏｎｅ、Ｎｏｋｉａ、Ｐａｌｍ、およびＷｉｎｄｏｗｓフォンなど）、ウェアラブル・デバイス（１つまたは複数）（たとえば、腕時計、眼鏡、ゴーグル（たとえば、Ｇｏｏｇｌｅ  Ｇｌａｓｓ）、その他）、および／または類似物まで変化する複数のフォーマットでパッケージ化される。しばしば、プロセッサ自体が、統合されたシステム（バス）コントローラ、メモリ管理制御ユニット、浮動小数点ユニット、ならびに、グラフィックス処理ユニット、デジタル信号処理ユニット、および／または類似物などの特殊化された処理サブユニットなどであるがこれに限定されない様々な特殊化された処理ユニットを組み込む。さらに、プロセッサは、内蔵高速アクセス・アドレス可能メモリを含む場合があり、プロセッサ自体以外のメモリ９２９をマッピングし、アドレッシングすることができ、内蔵メモリは、高速レジスタ、様々なレベルのキャッシュ・メモリ（たとえば、レベル１、２、３など）、ＲＡＭ、その他を含むことができるが、これに限定されない。プロセッサは、命令アドレスを介してアクセス可能なメモリ・アドレス空間の使用を介してこのメモリにアクセスすることができ、この命令アドレスを、プロセッサが構成し、復号することができ、プロセッサが、メモリ状態を有する特定のメモリ・アドレス空間への回路経路にアクセスすることを可能にする。ＣＰＵは、ＡＭＤのＡｔｈｌｏｎ、Ｄｕｒｏｎ、および／またはＯｐｔｅｒｏｎ、ＡｐｐｌｅのＡシリーズのプロセッサ（たとえば、Ａ５、Ａ６、Ａ７、Ａ８など）、ＡＲＭのアプリケーション・プロセッサ、組込みプロセッサ、およびセキュア・プロセッサ、ＩＢＭおよび／またはＭｏｔｏｒｏｌａのＤｒａｇｏｎＢａｌｌおよびＰｏｗｅｒＰＣ、ＩＢＭおよびＳｏｎｙのＣｅｌｌプロセッサ、Ｉｎｔｅｌの８０Ｘ８６シリーズ（たとえば、８０３８６、８０４８６）、Ｐｅｎｔｉｕｍ、Ｃｅｌｅｒｏｎ、Ｃｏｒｅ（２）Ｄｕｏ、ｉシリーズ（たとえば、ｉ３、ｉ５、ｉ７など）、Ｉｔａｎｉｕｍ、Ｘｅｏｎ、および／またはＸＳｃａｌｅ、Ｍｏｔｏｒｏｌａの６８０Ｘ０シリーズ（たとえば、６８０２０、６８０３０、６８０４０など）、ならびに／あるいは同様のプロセッサ（１つまたは複数）などのマイクロプロセッサとすることができる。ＣＰＵは、従来のデータ処理技法に従って記憶された命令（すなわち、プログラム・コード）を実行するために、導電性のおよび／または輸送的な導管（たとえば、（プリント）電子回路および／または光回路）を通過する命令を介してメモリと相互作用する。そのような命令通過は、Ｓ���ＷＣコントローラ内および様々なインターフェースを介するＳＢＷＣコントローラ以外との通信を容易にする。処理要件が、より高い速度および／またはより多い容量の分散プロセッサ（たとえば、下の分散ＳＢＷＣ参照）を規定する場合には、メインフレーム・アーキテクチャ、マルチコア・アーキテクチャ、並列アーキテクチャ、および／またはスーパーコンピュータ・アーキテクチャを同様に使用することができる。その代わりに、展開が、より高い移植性を規定する場合には、より小さいモバイル・デバイス（たとえば、携帯情報端末（ＰＤＡ））を使用することができる。
【００７７】
特定の実施態様に依存して、ＳＢＷＣの特徴を、ＣＡＳＴのＲ８０５１ＸＣ２マイクロコントローラ、ＩｎｔｅｌのＭＣＳ  ５１（すなわち、８０５１マイクロコントローラ）、および／または類似物などのマイクロコントローラを実施することによって達成することができる。また、ＳＢＷＣのある種の特徴を実施するために、いくつかの特徴実施態様は、特定用途向け集積回路（「ＡＳＩＣ」）、デジタル信号処理（「ＤＳＰ」）、フィールド・プログラマブル・ゲート・アレイ（「ＦＰＧＡ」）、および／または同様の組込み技術などの組込みコンポーネントに頼ることができる。たとえば、ＳＢＷＣコンポーネント・コレクション（分散式または他の形）および／または特徴のいずれをも、マイクロプロセッサを介してならびに／または組込みコンポーネントを介して、たとえば、ＡＳＩＣ、コプロセッサ、ＤＳＰ、ＦＰＧＡ、および／もしくは類似物を介して実施することができる。代替案では、ＳＢＷＣのいくつかの実施態様を、様々な特徴または信号処理を達成するように構成され、これに使用される組込みコンポーネントを用いて実施することができる。
【００７８】
特定の実施態様に依存して、組込みコンポーネントは、ソフトウェア解決策、ハードウェア解決策、および／またはソフトウェア解決策／ハードウェア解決策の両方の何らかの組合せを含む場合がある。たとえば、本明細書で議論されるＳＢＷＣ特徴は、ＦＰＧＡの実施を介して達成され得、ＦＰＧＡは、Ｘｉｌｉｎｘが製造する高性能ＦＰＧＡ  Ｖｉｒｔｅｘシリーズおよび／または低コストＳｐａｒｔａｎシリーズなど、「論理ブロック」と呼ばれるプログラム可能な論理コンポーネントとプログラム可能な相互接続とを含む半導体デバイスである。論理ブロックおよび相互接続は、ＦＰＧＡが製造された後に、ＳＢＷＣ特徴のいずれかを実施するために、顧客または設計者によってプログラムされ得る。プログラム可能な相互接続の階層は、１チップ・プログラム可能ブレッドボードに多少似て、ＳＢＷＣシステム設計者／管理者によって必要に応じて論理ブロックが相互接続されることを可能にする。ＦＰＧＡの論理ブロックは、ＡＮＤおよびＸＯＲなどの基本的な論理ゲートの動作または復号器もしくは数学演算などのより複雑な組合せ演算子の動作を実行するようにプログラムされ得る。ほとんどのＦＰＧＡでは、論理ブロックは、メモリ要素をも含み、このメモリ要素は、回路フリップフロップまたはメモリのより完全なブロックとすることができる。いくつかの状況で、ＳＢＷＣは、通常のＦＰＧＡ上で開発され、その後、ＡＳＩＣ実施態様により類似する固定されたバージョンに移植され得る。代替実施態様または調整する実施態様は、ＳＢＷＣコントローラ特徴を、ＦＰＧＡの代わりにまたはこれに加えて最終的なＡＳＩＣに移植することができる。実施態様に依存して、前述の組込みコンポーネントおよびマイクロプロセッサのすべてを、ＳＢＷＣに関して「ＣＰＵ」および／または「プロセッサ」と考えることができる。
【００７９】
電源
電源９８６は、以下のパワー・セルすなわち、アルカリ、リチウム水素、リチウム・イオン、リチウム・ポリマ、ニッケル・カドミウム、太陽電池、および／または類似物など、小型電子回路基板デバイスに電力を供給するための任意の標準的な形態のものとすることができる。他のタイプの交流電源または直流電源を使用することもできる。太陽電池の場合に、一実施形態では、ケースは、太陽電池がそれを介して光子エネルギを取り込めるアパーチャを提供する。パワー・セル９８６は、ＳＢＷＣの相互接続された後続コンポーネントのうちの少なくとも１つに接続され、これによって、すべての後続コンポーネントに電流を供給する。一例では、電源９８６は、システム・バス・コンポーネント９０４に接続される。代替実施態様では、外部の電源９８６が、Ｉ／Ｏ  ９０８インターフェースにまたがる接続を介して提供される。たとえば、ＵＳＢ接続および／またはＩＥＥＥ  １３９４接続は、接続にまたがってデータと電力との両方を搬送し、したがって、電力の適切な源である。
【００８０】
インターフェース・アダプタ
インターフェース・バス（１つまたは複数）９０７は、必ずではないが通常は、入出力インターフェース（Ｉ／Ｏ）９０８、ストレージ・インターフェース９０９、ネットワーク・インターフェース９１０、および／または類似物などであるがこれに限定されないアダプタ・カードの形の、複数のインターフェース・アダプタを受け入れ、これに接続し、かつ／またはこれと通信することができる。オプションで、暗号プロセッサ・インターフェース９２７が、同様にインターフェース・バスに接続され得る。インターフェース・バスは、インターフェース・アダプタの、お互いとのならびにコンピュータ・システム化の他のコンポーネントとの通信を提供する。インターフェース・アダプタは、互換インターフェース・バスに適合される。インターフェース・アダプタは、通常、スロット・アーキテクチャを介してインターフェース・バスに接続する。Ａｃｃｅｌｅｒａｔｅｄ  Ｇｒａｐｈｉｃｓ  Ｐｏｒｔ（ＡＧＰ）、Ｃａｒｄ  Ｂｕｓ、（Ｅｘｔｅｎｄｅｄ)Ｉｎｄｕｓｔｒｙ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ（（Ｅ）ＩＳＡ）、マイクロ・チャネル・アーキテクチャ（ＭＣＡ）、ＮｕＢｕｓ、Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ（Ｅｘｔｅｎｄｅｄ）（ＰＣＩ（Ｘ））、ＰＣＩ  Ｅｘｐｒｅｓｓ、Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ  Ｍｅｍｏｒｙ  Ｃａｒｄ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ａｓｓｏｃｉａｔｉｏｎ（ＰＣＭＣＩＡ）、および／または類似物などであるがこれに限定されない従来のスロット・アーキテクチャを使用することができる。
【００８１】
ストレージ・インターフェース９０９は、ストレージ・デバイス９１４、リムーバブル・ディスク・デバイス、および／または類似物などであるがこれに限定されない複数のストレージ・デバイスを受け入れ、これと通信し、かつ／またはこれに接続することができる。ストレージ・インターフェースは、（Ｕｌｔｒａ）（Ｓｅｒｉａｌ）Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｍｅｎｔ（Ｐａｃｋｅｔ  Ｉｎｔｅｒｆａｃｅ）（（Ｕｌｔｒａ）（Ｓｅｒｉａｌ）ＡＴＡ（ＰＩ））、（Ｅｎｈａｎｃｅｄ）Ｉｎｔｅｇｒａｔｅｄ  Ｄｒｉｖｅ  Ｅｌｅｃｔｒｏｎｉｃｓ（（Ｅ）ＩＤＥ）、米国電気電子技術者協会（ＩＥＥＥ）１３９４、ｆｉｂｅｒ  ｃｈａｎｎｅｌ、Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍｓ  Ｉｎｔｅｒｆａｃｅ（ＳＣＳＩ）、Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ（ＵＳＢ）、および／または類似物などであるがこれに限定されない接続プロトコルを使用することができる。
【００８２】
ネットワーク・インターフェース９１０は、通信ネットワーク９１３を受け入れ、これと通信し、かつ／またはこれに接続することができる。通信ネットワーク９１３を介して、ＳＢＷＣコントローラは、リモート・クライアント９３３ｂ（たとえば、ウェブ・ブラウザを有するコンピュータ）を介してユーザ９３３ａによってアクセス可能である。ネットワーク・インターフェースは、直接接続、イーサネット（シック、シン、より対線１０／１００／１０００／１００００  Ｂａｓｅ  Ｔ、および／または類似物）、トークン・リング、ＩＥＥＥ  ８０２．１１ａ〜ｘなどの無線接続、および／または類似物などであるがこれに限定されない接続プロトコルを使用することができる。処理要件が、より高い速度および／またはより多い容量の分散ネットワーク・コントローラ（たとえば、下の分散ＳＢＷＣ参照）を規定する場合には、ＳＢＷＣコントローラによって要求される通信帯域幅をプールし、負荷平衡化し、かつ／または他の形で増減するために、アーキテクチャを同様に使用することができる。通信ネットワークは、直接相互接続、インターネット、惑星間インターネット（たとえば、Ｃｏｈｅｒｅｎｔ  Ｆｉｌｅ  Ｄｉｓｔｒｉｂｕｔｉｏｎ  Ｐｒｏｔｏｃｏｌ（ＣＦＤＰ）、Ｓｐａｃｅ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｐｒｏｔｏｃｏｌ  Ｓｐｅｃｉｆｉｃａｔｉｏｎｓ（ＳＣＰＳ）など）、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、Ｏｐｅｒａｔｉｎｇ  Ｍｉｓｓｉｏｎｓ  ａｓ  Ｎｏｄｅｓ  ｏｎ  ｔｈｅ  Ｉｎｔｅｒｎｅｔ（ＯＭＮＩ）、保護されたカスタム接続、広域ネットワーク（ＷＡＮ）、無線ネットワーク（たとえば、セルラ、ＷｉＦｉ、Ｗｉｒｅｌｅｓｓ  Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ（ＷＡＰ）、ｉモード、および／または類似物などのプロトコルを使用する）、および／または類似物のいずれかおよび／または組合せとすることができる。ネットワーク・インターフェースを、入出力インターフェースの特殊化された形態と見なすことができる。さらに、複数のネットワーク・インターフェース９１０を使用して、様々な通信ネットワーク・タイプ９１３とかかわることができる。たとえば、複数のネットワーク・インターフェースを使用して、ブロードキャスト・ネットワーク、マルチキャスト・ネットワーク、および／またはユニキャスト・ネットワークを介する通信を可能にすることができる。
【００８３】
入出力インターフェース（Ｉ／Ｏ）９０８は、ユーザ、周辺デバイス９１２（たとえば、入力デバイス９１１）、暗号プロセッサ・デバイス９２８、および／または類似物を受け入れ、これと通信し、かつ／またはこれに接続することができる。Ｉ／Ｏは、オーディオ（アナログ、デジタル、モノラル、ＲＣＡ、ステレオ、および／または類似物）、データ（Ａｐｐｌｅ  Ｄｅｓｋｔｏｐ  Ｂｕｓ（ＡＤＢ）、ＩＥＥＥ  １３９４ａ〜ｂ、シリアル、ｕｎｉｖｅｒｓａｌ  ｓｅｒｉａｌ  ｂｕｓ（ＵＳＢ））、赤外線、ジョイスティック、キーボード、ｍｉｄｉ、光、ＰＣ  ＡＴ、ＰＳ／２、パラレル、ラジオ、タッチ・インターフェース（容量性、光、抵抗性、その他）、ディスプレイ、ビデオ・インターフェース（Ａｐｐｌｅ  Ｄｅｓｋｔｏｐ  Ｃｏｎｎｅｃｔｏｒ（ＡＤＣ）、ＢＮＣ、同軸、コンポーネント、コンポジット、デジタル、Ｄｉｇｉｔａｌ  Ｖｉｓｕａｌ  Ｉｎｔｅｒｆａｃｅ（ＤＶＩ）、（ミニ）ディスプレイポート、ｈｉｇｈ−ｄｅｆｉｎｉｔｉｏｎ  ｍｕｌｔｉｍｅｄｉａ  ｉｎｔｅｒｆａｃｅ（ＨＤＭＩ）、ＲＣＡ、ＲＦアンテナ、Ｓ−Ｖｉｄｅｏ、ＶＧＡ、および／または類似物）、無線トランシーバ（８０２．１１ａ／ａｃ／ｂ／ｇ／ｎ／ｘ）、Ｂｌｕｅｔｏｏｔｈ、セルラ（たとえば、符号分割多元接続（ＣＤＭＡ）、ｈｉｇｈ  ｓｐｅｅｄ  ｐａｃｋｅｔ  ａｃｃｅｓｓ（ＨＳＰＡ（＋））、ｈｉｇｈ−ｓｐｅｅｄ  ｄｏｗｎｌｉｎｋ  ｐａｃｋｅｔ  ａｃｃｅｓｓ（ＨＳＤＰＡ）、ｇｌｏｂａｌ  ｓｙｓｔｅｍ  ｆｏｒ  ｍｏｂｉｌｅ  ｃｏｍｍｕｎｉｃａｔｉｏｎｓ（ＧＳＭ）、ｌｏｎｇ  ｔｅｒｍ  ｅｖｏｌｕｔｉｏｎ（ＬＴＥ）、ＷｉＭａｘなど）、および／または類似物などであるがこれに限定されない接続プロトコルを使用することができる。１つの通常の出力デバイスは、ビデオ・ディスプレイを含むことができ、このビデオ・ディスプレイは、通常、陰極線管（ＣＲＴ）を含み、あるいは、ビデオ・インターフェースからの信号を受け入れるインターフェース（たとえば、ＤＶＩ回路網およびケーブル）を有する液晶ディスプレイ（ＬＣＤ）ベースのモニタを使用することができる。ビデオ・インターフェースは、コンピュータ・システム化によって生成された情報を合成し、ビデオ・メモリ・フレーム内の合成された情報に基づいてビデオ信号を生成する。もう１つの出力デバイスは、ビデオ・インターフェースからの信号を受け入れるテレビジョン・セットである。通常、ビデオ・インターフェースは、ビデオ・ディスプレイ・インターフェースを受け入れるビデオ接続インターフェース（たとえば、ＲＣＡコンポジット・ビデオ・ケーブルを受け入れるＲＣＡコンポジット・ビデオ・コネクタ、ＤＶＩディスプレイ・ケーブルを受け入れるＤＶＩコネクタなど）を介して合成されたビデオ情報を供給する。
【００８４】
周辺デバイス９１２は、Ｉ／Ｏおよび／またはネットワーク・インターフェース、ストレージ・インターフェースなどの他のファシリティに、インターフェース・バス、システム・バス、ＣＰＵ、および／または類似物に直接に、接続されかつ／または通信することができる。周辺デバイスは、外付け、内蔵、および／またはＳＢＷＣコントローラの一部とすることができる。周辺デバイスは、アンテナ、オーディオ・デバイス（たとえば、ラインイン、ラインアウト、マイクロホン入力、スピーカなど）、カメラ（たとえば、ジェスチャ（たとえば、Ｍｉｃｒｏｓｏｆｔ  Ｋｉｎｅｃｔ）検出、動き検出、スチール、ビデオ、ウェブカムなど）、ドングル（たとえば、コピー・プロテクション、デジタル署名を用いるセキュア・トランザクションの保証、および／または類似物のための）、外部プロセッサ（追加能力のための、たとえば暗号デバイス５２８）、フォースフィードバック・デバイス（たとえば、振動モータ）、赤外線（ＩＲ）トランシーバ、ネットワーク・インターフェース、プリンタ、スキャナ、センサ／センサ・アレイおよび周辺機器拡張（たとえば、環境光、ＧＰＳ、ジャイロスコープ、近接、温度など）、ストレージ・デバイス、トランシーバ（たとえば、セルラ、ＧＰＳなど）、ビデオ・デバイス（たとえば、ゴーグル、モニタなど）、ビデオ・ソース、バイザ、および／または類似物を含むことができる。周辺デバイスは、しばしば、諸タイプの入力デバイス（たとえば、カメラ）を含む。
【００８５】
ユーザ入力デバイス９１１は、しばしば、あるタイプの周辺デバイス５１２（上を参照）であり、カード・リーダー、ドングル、指紋リーダー、グローブ、グラフィックス・タブレット、ジョイスティック、キーボード、マイクロホン、マウス（１つまたは複数）、リモート・コントロール、セキュリティ／バイオメトリック・デバイス（たとえば、指紋リーダー、虹彩リーダー、網膜リーダーなど）、タッチ・スクリーン（たとえば、容量性、抵抗性など）、トラックボール、トラックパッド、スタイラス、および／または類似物を含むことができる。
【００８６】
ユーザ入力デバイスおよび周辺デバイスを使用することができるが、ＳＢＷＣコントローラが、組込みデバイス、専用デバイス、および／またはモニタレス（すなわち、ヘッドレス）デバイスとして実施され得、この場合に、アクセスが、ネットワーク・インターフェース接続を介して提供されることに留意されたい。
【００８７】
マイクロコントローラ、プロセッサ９２６、インターフェース９２７、および／またはデバイス９２８などであるがこれに限定されない暗号ユニットが、ＳＢＷＣコントローラに取り付けられ、かつ／またはこれと通信することができる。Ｍｏｔｏｒｏｌａ  Ｉｎｃ．が製造するＭＣ６８ＨＣ１６マイクロコントローラが、暗号ユニットのためにおよび／または暗号ユニット内で使用され得る。ＭＣ６８ＨＣ１６マイクロコントローラは、１６ＭＨｚ構成で１６ビット積和命令を利用し、５１２ビットＲＳＡ秘密鍵演算を実行するのに１秒未満を要する。暗号ユニットは、相互作用するエージェントからの通信の認証をサポートすると同時に、匿名トランザクションを可能にする。暗号ユニットは、ＣＰＵの一部として構成される場合もある。同等のマイクロコントローラおよび／またはプロセッサを使用することもできる。他の市販の特殊化された暗号プロセッサは、ＢｒｏａｄｃｏｍのＣｒｙｐｔｏＮｅｔＸおよび他のセキュリティ・プロセッサ、ｎＣｉｐｈｅｒのｎＳｈｉｅｌｄ、ＳａｆｅＮｅｔのＬｕｎａ  ＰＣＩ（たとえば、７１００）シリーズ、Ｓｅｍａｐｈｏｒｅ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓの４０ＭＨｚ  Ｒｏａｄｒｕｎｎｅｒ  １８４、ＳｕｎのＣｒｙｐｔｏｇｒａｐｈｉｃ  Ａｃｃｅｌｅｒａｔｏｒ（たとえば、Ａｃｃｅｌｅｒａｔｏｒ  ６０００  ＰＣＩｅ  Ｂｏａｒｄ、Ａｃｃｅｌｅｒａｔｏｒ  ５００  Ｄａｕｇｈｔｅｒｃａｒｄ）、Ｖｉａ  Ｎａｎｏ  Ｐｒｏｃｅｓｓｏｒ（たとえば、Ｌ２１００、Ｌ２２００、Ｕ２４００）系列（５００ＭＢ／ｓ超の暗号命令を実行することができる）、ＶＬＳＩ  Ｔｅｃｈｎｏｌｏｇｙの３３  ＭＨｚ  ６８６８、および／または類似物を含む。
【００８８】
メモリ
一般に、プロセッサが情報の記憶および／または取出に影響することを可能にするすべての機械化および／または実施形態は、メモリ９２９と見なされる。しかし、メモリは、代替可能な技術およびリソースであり、したがって、任意の個数のメモリ実施形態が、お互いの代わりにまたはお互いと共同して使用され得る。ＳＢＷＣコントローラおよび／またはコンピュータ・システム化が、様々な形態のメモリ９２９を使用できることを理解されたい。たとえば、オンチップＣＰＵメモリ（たとえば、レジスタ）、ＲＡＭ、ＲＯＭ、および任意の他のストレージ・デバイスの動作が、紙パンチ・テープ機構または紙パンチ・カード機構によって提供されるコンピュータ・システム化が構成され得るが、そのような実施形態は、極端に低い動作速度をもたらすはずである。通常の構成では、メモリ９２９は、ＲＯＭ  ９０６、ＲＡＭ  ９０５、およびストレージ・デバイス９１４を含む。ストレージ・デバイス９１４は、任意の従来のコンピュータ・システム・ストレージとすることができる。ストレージ・デバイスは、デバイスのアレイ（たとえば、Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙ  ｏｆ  Ｉｎｄｅｐｅｎｄｅｎｔ  Ｄｉｓｋｓ（ＲＡＩＤ））、ドラム、（固定のおよび／または取り外し可能な）磁気ディスク・ドライブ、光磁気ドライブ、光ドライブ（すなわち、ブルーレイ、ＣＤ  ＲＯＭ／ＲＡＭ／Ｒｅｃｏｒｄａｂｌｅ（Ｒ）／ＲｅＷｒｉｔａｂｌｅ（ＲＷ）、ＤＶＤ  Ｒ／ＲＷ、ＨＤ  ＤＶＤ  Ｒ／ＲＷなど）、ＲＡＭドライブ、ソリッド・ステート・メモリ・デバイス（ＵＳＢメモリ、ソリッド・ステート・ドライブ（ＳＳＤ）など）、他のプロセッサ可読記憶媒体、および／または同様の他のデバイスを含むことができる。したがって、コンピュータ・システム化は、一般に、メモリを必要とし、利用する。
【００８９】
コンポーネント・コレクション
メモリ９２９は、オペレーティング・システム・コンポーネント（１つまたは複数）９１５（オペレーティング・システム）、情報サーバ・コンポーネント（１つまたは複数）９１６（情報サーバ）、ユーザ・インターフェース・コンポーネント（１つまたは複数）９１７（ユーザ・インターフェース）、ウェブ・ブラウザ・コンポーネント（１つまたは複数）９１８（ウェブ・ブラウザ）、データベース（１つまたは複数）９１９、メール・サーバ・コンポーネント（１つまたは複数）９２１、メール・クライアント・コンポーネント（１つまたは複数）９２２、暗号サーバ・コンポーネント（１つまたは複数）９２０（暗号サーバ）、ＳＢＷＣコンポーネント（１つまたは複数）９３５、および／または類似物（すなわち、集合的にコンポーネント・コレクション）などであるがこれに限定されないプログラム・コンポーネントおよび／またはデータベース・コンポーネントおよび／またはデータのコレクションを含むことができる。これらのコンポーネントは、記憶され、ストレージ・デバイスからおよび／またはインターフェース・バスを介してアクセス可能なストレージ・デバイスからアクセスされ得る。コンポーネント・コレクション内のコンポーネントなど、非従来のプログラム・コンポーネントは、通常はローカル・ストレージ・デバイス９１４内に記憶されるが、これらは、周辺デバイス、ＲＡＭ、通信ネットワークを介するリモート・ストレージ・ファシリティ、ＲＯＭ、様々な形態のメモリ、および／または類似物などのメモリ内にロードされ、かつ／または記憶される場合もある。
【００９０】
オペレーティング・システム
オペレーティング・システム・コンポーネント９１５は、ＳＢＷＣコントローラの動作を容易にする実行可能プログラム・コンポーネントである。通常、オペレーティング・システムは、Ｉ／Ｏ、ネットワーク・インターフェース、周辺デバイス、ストレージ・デバイス、および／または類似物のアクセスを容易にする。オペレーティング・システムは、ＡｐｐｌｅのＭａｃｉｎｔｏｓｈ  ＯＳ  Ｘ（Ｓｅｒｖｅｒ）、ＡＴ＆Ｔ  Ｐｌａｎ  ９、Ｂｅ  ＯＳ、ＢｌａｃｋｂｅｒｒｙのＱＮＸ、ＧｏｏｇｌｅのＣｈｒｏｍｅ、ＭｉｃｒｏｓｏｆｔのＷｉｎｄｏｗｓ  ７／８、ＵｎｉｘおよびＵｎｉｘ様システム・ディストリビューション（ＡＴ＆ＴのＵＮＩＸ、ＦｒｅｅＢＳＤ、ＮｅｔＢＳＤ、ＯｐｅｎＢＳＤ、および／または類似物などのＢｅｒｋｌｅｙ  Ｓｏｆｔｗａｒｅ  Ｄｉｓｔｒｉｂｕｔｉｏｎ（ＢＳＤ）変形形態、Ｒｅｄ  Ｈａｔ、Ｕｂｕｎｔｕ、および／または類似物などのＬｉｎｕｘディストリビューションなど）、および／または同様のオペレーティング・システムなどの、非常にフォールト・トレラント、スケーラブル、かつセキュアなシステムとすることができる。しかし、Ａｐｐｌｅ  Ｍａｃｉｎｔｏｓｈ  ＯＳ、ＩＢＭ  ＯＳ／２、Ｍｉｃｒｏｓｏｆｔ  ＤＯＳ、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ  ２０００／２００３／３．１／９５／９８／ＣＥ／Ｍｉｌｌｅｎｉｕｍ／Ｍｏｂｉｌｅ／ＮＴ／Ｖｉｓｔａ／ＸＰ（Ｓｅｒｖｅｒ）、Ｐａｌｍ  ＯＳ、および／または類似物など、より制限されたかつ／またはより非セキュアなオペレーティング・システムを使用することもできる。さらに、頑健なモバイル展開応用例に関して、ＡｐｐｌｅのｉＯＳ、Ｃｈｉｎａ  Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ  ＣＯＳ、ＧｏｏｇｌｅのＡｎｄｒｏｉｄ、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ  ＲＴ／Ｐｈｏｎｅ、ＰａｌｍのＷｅｂＯＳ、Ｓａｍｓｕｎｇ／ＩｎｔｅｌのＴｉｚｅｎ、および／または類似物などのモバイル・オペレーティング・システムを使用することができる。オペレーティング・システムは、それ自体を含むコンポーネント・コレクション内の他のコンポーネントおよび／または類似物におよび／またはこれと通信することができる。最も頻繁に、オペレーティング・システムは、他のプログラム・コンポーネント、ユーザ・インターフェース、および／または類似物と通信する。たとえば、オペレーティング・システムは、プログラム・コンポーネント、システム、ユーザ、および／またはデータの通信、要求、および／または応答を含み、通信し、生成し、入手し、かつ／または提供することができる。オペレーティング・システムは、ＣＰＵによって実行された後に、通信ネットワーク、データ、Ｉ／Ｏ、周辺デバイス、プログラム・コンポーネント、メモリ、ユーザ入力デバイス、および／または類似物との相互作用を可能にすることができる。オペレーティング・システムは、ＳＢＷＣコントローラが通信ネットワーク９１３を介して他のエンティティと通信することを可能にする通信プロトコルを提供することができる。マルチキャスト、ＴＣＰ／ＩＰ、ＵＤＰ、ユニキャスト、および／または類似物などであるがこれに限定されない様々な通信プロトコルが、相互作用のための副搬送波トランスポート機構としてＳＢＷＣコントローラによって使用され得る。
【００９１】
情報サーバ
情報サーバ・コンポーネント９１６は、ＣＰＵによって実行される記憶されたプログラム・コンポーネントである。情報サーバは、Ａｐａｃｈｅ  Ｓｏｆｔｗａｒｅ  ＦｏｕｎｄａｔｉｏｎのＡｐａｃｈｅ、ＭｉｃｒｏｓｏｆｔのＩｎｔｅｒｎｅｔ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｓｅｒｖｅｒ、および／または類似物などであるがこれに限定されない従来のインターネット情報サーバとすることができる。情報サーバは、Ａｃｔｉｖｅ  Ｓｅｒｖｅｒ  Ｐａｇｅ（ＡＳＰ）、ＡｃｔｉｖｅＸ、（ＡＮＳＩ）（Ｏｂｊｅｃｔｉｖｅ−）Ｃ（＋＋）、Ｃ＃および／もしくは．ＮＥＴ、Ｃｏｍｍｏｎ  Ｇａｔｅｗａｙ  Ｉｎｔｅｒｆａｃｅ（ＣＧＩ）スクリプト、ｄｙｎａｍｉｃ（Ｄ）ハイパーテキスト・マークアップ言語（ＨＴＭＬ）、ＦＬＡＳＨ、Ｊａｖａ、ＪａｖａＳｃｒｉｐｔ、Ｐｒａｃｔｉｃａｌ  Ｅｘｔｒａｃｔｉｏｎ  Ｒｅｐｏｒｔ  Ｌａｎｇｕａｇｅ（ＰＥＲＬ）、Ｈｙｐｅｒｔｅｘｔ  Ｐｒｅ−Ｐｒｏｃｅｓｓｏｒ（ＰＨＰ）、ｐｉｐｅｓ、Ｐｙｔｈｏｎ、ｗｉｒｅｌｅｓｓ  ａｐｐｌｉｃａｔｉｏｎ  ｐｒｏｔｏｃｏｌ（ＷＡＰ）、ＷｅｂＯｂｊｅｃｔｓ、ならびに／または類似物などのファシリティを介するプログラム・コンポーネントの実行を可能にすることができる。情報サーバは、ファイル転送プロトコル（ＦＴＰ）、ハイパーテキスト転送プロトコル（ＨＴＴＰ）、Ｓｅｃｕｒｅ  Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ（ＨＴＴＰＳ）、Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔ  Ｌａｙｅｒ（ＳＳＬ）、メッセージング・プロトコル（たとえば、Ａｍｅｒｉｃａ  Ｏｎｌｉｎｅ（ＡＯＬ）Ｉｎｓｔａｎｔ  Ｍｅｓｓｅｎｇｅｒ（ＡＩＭ）、Ａｐｐｌｉｃａｔｉｏｎ  Ｅｘｃｈａｎｇｅ（ＡＰＥＸ）、ＩＣＱ、Ｉｎｔｅｒｎｅｔ  Ｒｅｌａｙ  Ｃｈａｔ（ＩＲＣ）、Ｍｉｃｒｏｓｏｆｔ  Ｎｅｔｗｏｒｋ（ＭＳＮ）Ｍｅｓｓｅｎｇｅｒ  Ｓｅｒｖｉｃｅ、Ｐｒｅｓｅｎｃｅ  ａｎｄ  Ｉｎｓｔａｎｔ  Ｍｅｓｓａｇｉｎｇ  Ｐｒｏｔｏｃｏｌ（ＰＲＩＭ）、Ｉｎｔｅｒｎｅｔ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｔａｓｋ  Ｆｏｒｃｅ（ＩＥＴＦ）のＳｅｓｓｉｏｎ  Ｉｎｉｔｉａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ（ＳＩＰ）、ＳＩＰ  ｆｏｒ  Ｉｎｓｔａｎｔ  Ｍｅｓｓａｇｉｎｇ  ａｎｄ  Ｐｒｅｓｅｎｃｅ  Ｌｅｖｅｒａｇｉｎｇ  Ｅｘｔｅｎｓｉｏｎｓ（ＳＩＭＰＬＥ）、オープンＸＭＬベースのＥｘｔｅｎｓｉｂｌｅ  Ｍｅｓｓａｇｉｎｇ  ａｎｄ  Ｐｒｅｓｅｎｃｅ  Ｐｒｏｔｏｃｏｌ（ＸＭＰＰ）（すなわち、ＪａｂｂｅｒまたはＯｐｅｎ  Ｍｏｂｉｌｅ  Ａｌｌｉａｎｃｅ（ＯＭＡ）のＩｎｓｔａｎｔ  Ｍｅｓｓａｇｉｎｇ  ａｎｄ  Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｉｃｅ（ＩＭＰＳ））、Ｙａｈｏｏ！  Ｉｎｓｔａｎｔ  Ｍｅｓｓｅｎｇｅｒ  Ｓｅｒｖｉｃｅ、および／または類似物などであるがこれに限定されないセキュア通信プロトコルをサポートすることができる。情報サーバは、結果をウェブ・ページの形でウェブ・ブラウザに供給し、他のプログラム・コンポーネントとの相互作用を介するウェブ・ページの操作された生成を可能にする。ＨＴＴＰ要求のドメイン名システム（ＤＮＳ）解決部分が、特定の情報サーバに対して解決された後に、情報サーバは、ＨＴＴＰ要求の残りに基づいて、ＳＢＷＣコントローラ上の指定さ���た位置で情報の要求を解決する。たとえば、ｈｔｔｐ：／／１２３．１２４．１２５．１２６／ｍｙＩｎｆｏｒｍａｔｉｏｎ．ｈｔｍｌなどの要求は、そのＩＰアドレスにある情報サーバに対してＤＮＳサーバによって解決される要求のＩＰ部分「１２３．１２４．１２５．１２６」を有することができ、その情報サーバは、さらに、要求の「／ｍｙＩｎｆｏｒｍａｔｉｏｎ．ｈｔｍｌ」部分に関してｈｔｔｐ要求を解析し、これを、情報「ｍｙＩｎｆｏｒｍａｔｉｏｎ．ｈｔｍｌ」を含むメモリ内の位置に解決することができる。さらに、他の情報供給プロトコルが、様々なポート、たとえばポート２１を介するＦＴＰ通信および／または類似物にまたがって使用され得る。情報サーバは、それ自体を含むコンポーネント・コレクション内の他のコンポーネントおよび／または同様のファシリティにおよび／またはこれと通信することができる。最も頻繁に、情報サーバは、ＳＢＷＣデータベース９１９、オペレーティング・システム、他のプログラム・コンポーネント、ユーザ・インターフェース、ウェブ・ブラウザ、および／または類似物と通信する。
【００９２】
ＳＢＷＣデータベースへのアクセスは、下で列挙されるスクリプティング言語（たとえば、ＣＧＩ）を介しておよび下で列挙されるアプリケーション間通信チャネル（たとえば、ＣＯＲＢＡ、ＷｅｂＯｂｊｅｃｔｓなど）を介してなど、複数のデータベース・ブリッジ機構を介して達成され得る。ウェブ・ブラウザを介するすべてのデータ要求は、ブリッジ機構を介して、ＳＢＷＣによって要求される適当な文法に解析される。一実施形態では、情報サーバは、ウェブ・ブラウザによってアクセス可能なウェブ・フォームを供給する。ウェブ・フォーム内で供給されるフィールドに対して行われた入力は、特定のフィールドに入力されたものとしてタグを付けられ、しかるべく解析される。その後、入力された項目は、フィールド・タグと一緒に渡され、このフィールド・タグは、適当なテーブルおよび／またはフィールドに向けられた照会を生成するようにパーサに指示するように働く。一実施形態では、パーサは、タグ付けされたテキスト・エントリに基づいて適当なｊｏｉｎ／ｓｅｌｅｃｔコマンドを有する検索文字列をインスタンス化することによって、標準ＳＱＬの照会を生成することができ、ここで、結果のコマンドは、ブリッジ機構を介して照会としてＳＢＷＣに供給される。照会から照会結果を生成する際に、結果は、ブリッジ機構を介して渡され、ブリッジ機構による新しい結果ウェブ・ページのフォーマットおよび生成のために解析され得る。その後、そのような新しい結果ウェブ・ページは、情報サーバに供給され、情報サーバは、要求するウェブ・ブラウザにそのページを供給することができる。
【００９３】
また、情報サーバは、プログラム・コンポーネント、システム、ユーザ、および／またはデータの通信、要求、および／または応答を含み、通信し、生成し、入手し、かつ／または供給することができる。
【００９４】
ユーザ・インターフェース
コンピュータ・インターフェースは、ある点で、自動車操縦インターフェースに似ている。ステアリング・ホイール、ギアシフト、および速度計などの自動車操縦インターフェース要素は、自動車リソースおよび状況のアクセス、操作、および表示を容易にする。ボタン、チェック・ボックス、カーソル、メニュー、スクローラ、およびウィンドウなどのコンピュータ対話インターフェース要素（集合的に一般にウィジェットと呼ばれる）は、データ、コンピュータ・ハードウェア、オペレーティング・システム・リソース、および状況のアクセス、能力、操作、および表示を同様に容易にする。操作インターフェースは、一般にユーザ・インターフェースと呼ばれる。ＡｐｐｌｅのｉＯＳ、Ｍａｃｉｎｔｏｓｈ  Ｏｐｅｒａｔｉｎｇ  ＳｙｓｔｅｍのＡｑｕａ、ＩＢＭのＯＳ／２、ＧｏｏｇｌｅのＣｈｒｏｍｅ（たとえば、および他のウェブブラウザ／クラウド・ベースのクライアントＯＳ）、ＭｉｃｒｏｓｏｆｔのＷｉｎｄｏｗｓの様々なＵＩ  ２０００／２００３／３．１／９５／９８／ＣＥ／Ｍｉｌｌｅｎｉｕｍ／Ｍｏｂｉｌｅ／ＮＴ／Ｖｉｓｔａ／ＸＰ（Ｓｅｒｖｅｒ）（すなわち、Ａｅｒｏ、Ｓｕｒｆａｃｅなど）、ＵｎｉｘのＸ−Ｗｉｎｄｏｗｓ（これは、たとえば、Ｋ  Ｄｅｓｋｔｏｐ  Ｅｎｖｉｒｏｎｍｅｎｔ（ＫＤＥ）、ｍｙｔｈＴＶ、およびＧＮＵ  Ｎｅｔｗｏｒｋ  Ｏｂｊｅｃｔ  Ｍｏｄｅｌ  Ｅｎｖｉｒｏｎｍｅｎｔ（ＧＮＯＭＥ）などの追加のＵｎｉｘグラフィック・インターフェース・ライブラリおよびレイヤを含むことができる）、ウェブ・インターフェース・ライブラリ（たとえば、Ｄｏｊｏ、ｊＱｕｅｒｙ（ＵＩ）、ＭｏｏＴｏｏｌｓ、Ｐｒｏｔｏｔｙｐｅ、ｓｃｒｉｐｔ．ａｃｕｌｏ．ｕｓ、ＳＷＦＯｂｊｅｃｔ、Ｙａｈｏｏ！  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅなどであるがこれに限定されない、ＡｃｔｉｖｅＸ、ＡＪＡＸ、（Ｄ）ＨＴＭＬ、ＦＬＡＳＨ、Ｊａｖａ、ＪａｖａＳｃｒｉｐｔなどのインターフェース・ライブラリ（いずれをも使用することができる））などのグラフィカル・ユーザ・インターフェース（ＧＵＩ）は、情報へのアクセスと、これをユーザにグラフィカルに表示することとのベースラインおよび手段を提供する。
【００９５】
ユーザ・インターフェース・コンポーネント９１７は、ＣＰＵによって実行される記憶されたプログラム・コンポーネントである。ユーザ・インターフェースは、既に議論したものなどのオペレーティング・システムおよび／またはオペレーティング環境によって、これと共に、および／またはこれの上に提供される従来のグラフィック・ユーザ・インターフェースとすることができる。ユーザ・インターフェースは、テキスト・ファシリティおよび／またはグラフィカル・ファシリティを介するプログラム・コンポーネントおよび／またはシステム・ファシリティの表示、実行、対話、操作、および／または運用を可能にすることができる。ユーザ・インターフェースは、ユーザがそれを介してコンピュータ・システムに影響し、これと対話し、かつ／またはこれを操作するファシリティを提供する。ユーザ・インターフェースは、それ自体を含むコンポーネント・コレクション内の他のコンポーネントおよび／または同様のファシリティにおよび／またはこれと通信することができる。最も頻繁に、ユーザ・インターフェースは、オペレーティング・システム、他のプログラム・コンポーネント、および／または類似物と通信する。ユーザ・インターフェースは、プログラム・コンポーネント、システム、ユーザ、および／またはデータの通信、要求、および／または応答を含み、通信し、生成し、入手し、かつ／または供給することができる。
【００９６】
ウェブ・ブラウザ
ウェブ・ブラウザ・コンポーネント９１８は、ＣＰＵによって実行される記憶されたプログラム・コンポーネントである。ウェブ・ブラウザは、Ａｐｐｌｅの（ｍｏｂｉｌｅ）Ｓａｆａｒｉ、ＧｏｏｇｌｅのＣｈｒｏｍｅ、Ｍｉｃｒｏｓｏｆｔ  Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ、ＭｏｚｉｌｌａのＦｉｒｅｆｏｘ、Ｎｅｔｓｃａｐｅ  Ｎａｖｉｇａｔｏｒ、および／または類似物などの従来のハイパーテキスト・ビューイング・アプリケーションとすることができる。セキュア・ウェブ・ブラウジングは、ＨＴＴＰＳ、ＳＳＬ、および／または類似物によって、１２８ビット（以上）の暗号化と共に供給され得る。ウェブ・ブラウザは、ＡｃｔｉｖｅＸ、ＡＪＡＸ、（Ｄ）ＨＴＭＬ、ＦＬＡＳＨ、Ｊａｖａ、ＪａｖａＳｃｒｉｐｔ、ウェブ・ブラウザ・プラグインＡＰＩ（たとえば、ＦｉｒｅＦｏｘ、Ｓａｆａｒｉ  Ｐｌｕｇ−ｉｎ、および／または同様のＡＰＩ）、および／または類似物などのファシリティを介するプログラム・コンポーネントの実行を可能にする。ウェブ・ブラウザおよび同様の情報アクセス・ツールは、ＰＤＡ、セル電話機、および／または他のモバイル・デバイスに統合され得る。ウェブ・ブラウザは、それ自体を含むコンポーネント・コレクション内の他のコンポーネントおよび／または同様のファシリティにおよび／またはこれと通信することができる。最も頻繁に、ウェブ・ブラウザは、情報サーバ、オペレーティング・システム、統合されたプログラム・コンポーネント（たとえば、プラグイン）、および／または類似物と通信し、たとえば、プログラム・コンポーネント、システム、ユーザ、および／またはデータの通信、要求、および／または応答を含み、通信し、生成し、入手し、かつ／または供給することができる。また、ウェブ・ブラウザおよび情報サーバの代わりに、組み合わされたアプリケーションが、この両方と同様の動作を実行するように開発され得る。組み合わされたアプリケーションは、ＳＢＷＣ対応ノードからの情報の入手ならびにユーザ、ユーザ・エージェント、および／または類似物への情報の提供に同様に影響するはずである。組み合わされたアプリケーションは、標準的なウェブ・ブラウザを使用するシステム上では無価値になる可能性がある。
【００９７】
メール・サーバ
メール・サーバ・コンポーネント９２１は、ＣＰＵ９０３によって実行される記憶されたプログラム・コンポーネントである。メール・サーバは、ｄｏｖｅｃｏｔ、Ｃｏｕｒｉｅｒ  ＩＭＡＰ、Ｃｙｒｕｓ  ＩＭＡＰ、Ｍａｉｌｄｉｒ、Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｈａｎｇｅ、ｓｅｎｄｍａｉｌ、および／または類似物などであるがこれに限定されない従来のインターネット・メール・サーバとすることができる。メール・サーバは、ＡＳＰ、ＡｃｔｉｖｅＸ、（ＡＮＳＩ）（Ｏｂｊｅｃｔｉｖｅ−）Ｃ（＋＋）、Ｃ＃および／もしくは．ＮＥＴ、ＣＧＩスクリプト、Ｊａｖａ、ＪａｖａＳｃｒｉｐｔ、ＰＥＲＬ、ＰＨＰ、ｐｉｐｅｓ、Ｐｙｔｈｏｎ、ＷｅｂＯｂｊｅｃｔｓ、ならびに／または類似物などのファシリティを介するプログラム・コンポーネントの実行を可能にすることができる。メール・サーバは、Ｉｎｔｅｒｎｅｔ  ｍｅｓｓａｇｅ  ａｃｃｅｓｓ  ｐｒｏｔｏｃｏｌ（ＩＭＡＰ）、Ｍｅｓｓａｇｉｎｇ  Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ（ＭＡＰＩ）／Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｈａｎｇｅ、ｐｏｓｔ  ｏｆｆｉｃｅ  ｐｒｏｔｏｃｏｌ（ＰＯＰ３）、ｓｉｍｐｌｅ  ｍａｉｌ  ｔｒａｎｓｆｅｒ  ｐｒｏｔｏｃｏｌ（ＳＭＴＰ）、および／または類似物などであるがこれに限定されない通信プロトコルをサポートすることができる。メール・サーバは、ＳＢＷＣを介しかつ／またはＳＢＷＣに送られ、中継され、かつ／または他の形でトラバースした着信メール・メッセージおよび発信メール・メッセージをルーティングし、転送し、処理することができる。代替案では、メール・サーバ・コンポーネントは、Ｇｏｏｇｌｅのクラウド・サービスなどのメール・サービス提供エンティティに分散され得る（たとえば、Ｇｍａｉｌおよび通知は、その代わりに、ＡＯＬのＩｎｓｔａｎｔ  Ｍｅｓｓｅｎｇｅｒ、ＡｐｐｌｅのｉＭｅｓｓａｇｅ、Ｇｏｏｇｌｅ  Ｍｅｓｓｅｎｇｅｒ、ＳｎａｐＣｈａｔ、その他などのメッセンジャ・サービスを介して提供され得る）。
【００９８】
ＳＢＷＣメールへのアクセスは、個々のウェブ・サーバ・コンポーネントおよび／またはオペレーティング・システムによって提供される複数のＡＰＩを介して達成され得る。
【００９９】
また、メール・サーバは、プログラム・コンポーネント、システム、ユーザ、および／またはデータの通信、要求、情報、および／または応答を含み、通信し、生成し、入手し、かつ／または供給することができる。
【０１００】
メール・クライアント
メール・クライアント・コンポーネント９２２は、ＣＰＵ９０３によって実行される記憶されたプログラム・コンポーネントである。メール・クライアントは、Ａｐｐｌｅ  Ｍａｉｌ、Ｍｉｃｒｏｓｏｆｔ  Ｅｎｔｏｕｒａｇｅ、Ｍｉｃｒｏｓｏｆｔ  Ｏｕｔｌｏｏｋ、Ｍｉｃｒｏｓｏｆｔ  Ｏｕｔｌｏｏｋ  Ｅｘｐｒｅｓｓ、Ｍｏｚｉｌｌａ、Ｔｈｕｎｄｅｒｂｉｒｄ、および／または類似物などの従来のメール・ビューイング・アプリケーションとすることができる。メール・クライアントは、ＩＭＡＰ、Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｈａｎｇｅ、ＰＯＰ３、ＳＭＴＰ、および／または類似物などの複数の転送プロトコルをサポートすることができる。メール・クライアントは、それ自体を含むコンポーネント・コレクション内の他のコンポーネントおよび／または同様のファシリティにおよび／またはこれと通信することができる。最も頻繁に、メール・クライアントは、メール・サーバ、オペレーティング・システム、他のメール・クライアント、および／または類似物と通信し、たとえば、プログラム・コンポーネント、システム、ユーザ、および／またはデータの通信、要求、情報、および／または応答を含み、通信し、生成し、入手し、かつ／または供給することができる。一般に、メール・クライアントは、電子メール・メッセージを構成し、送信するファシリティを提供する。
【０１０１】
暗号サーバ
暗号サーバ・コンポーネント９２０は、ＣＰＵ９０３、暗号プロセッサ９２６、暗号プロセッサ・インターフェース９２７、暗号プロセッサ・デバイス９２８、および／または類似物によって実行される記憶されたプログラム・コンポーネントである。暗号プロセッサ・インターフェースは、暗号コンポーネントによる暗号化要求および／または暗号化解除要求の迅速さを可能にするが、暗号コンポーネントが、その代わりに従来のＣＰＵ上で走行することができる。暗号コンポーネントは、供給されたデータの暗号化および／または暗号化解除を可能にする。暗号コンポーネントは、対称と非対称との両方の（たとえば、Ｐｒｅｔｔｙ  Ｇｏｏｄ  Ｐｒｏｔｅｃｔｉｏｎ（ＰＧＰ））暗号化および／または暗号化解除を可能にする。暗号コンポーネントは、デジタル証明書（たとえば、Ｘ．５０９認証フレームワーク）、デジタル署名、デュアル署名、ｅｎｖｅｌｏｐｉｎｇ、パスワード・アクセス保護、公開鍵管理、および／または類似物などであるがこれに限定されない暗号技法を使用することができる。暗号コンポーネントは、チェックサム、Ｄａｔａ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ（ＤＥＳ）、楕円曲線暗号化（ＥＣＣ）、Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｄａｔａ  Ｅｎｃｒｙｐｔｉｏｎ  Ａｌｇｏｒｉｔｈｍ（ＩＤＥＡ）、Ｍｅｓｓａｇｅ  Ｄｉｇｅｓｔ  ５（ＭＤ５、一方向ハッシュ演算である）、パスワード、Ｒｉｖｅｓｔ  Ｃｉｐｈｅｒ（ＲＣ５）、Ｒｉｊｎｄａｅｌ、ＲＳＡ（１９７７年にＲｏｎ  Ｒｉｖｅｓｔ、Ａｄｉ  Ｓｈａｍｉｒ、およびＬｅｏｎａｒｄ  Ａｄｌｅｍａｎによって開発されたアルゴリズムを使用するインターネット暗号化および認証システムである）、Ｓｅｃｕｒｅ  Ｈａｓｈ  Ａｌｇｏｒｉｔｈｍ（ＳＨＡ）、Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔ  Ｌａｙｅｒ（ＳＳＬ）、Ｓｅｃｕｒｅ  Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ（ＨＴＴＰＳ）、Ｔｒａｎｓｐｏｒｔ  Ｌａｙｅｒ  Ｓｅｃｕｒｉｔｙ（ＴＬＳ）、および類似物などであるがこれに限定されない多数の（暗号化および／または暗号化解除）セキュリティ・プロトコルを容易にする。そのような暗号化セキュリティ・プロトコルを使用して、ＳＢＷＣは、すべての着信通信および／または発信通信を暗号化することができ、より幅広い通信ネットワークを有する仮想プライベート・ネットワーク（ＶＰＮ）内のノードとして働くことができる。暗号コンポーネントは、これによってセキュリティ・プロトコルによってリソースへのアクセスが禁止される「セキュリティ認証」のプロセスを容易にし、暗号コンポーネントは、保護されたリソースへの許可されたアクセスをもたらす。さらに、暗号コンポーネントは、たとえばデジタル・オーディオ・ファイルの一意署名を入手するためにＭＤ５ハッシュを使用して、コンテンツの一意識別子を供給することができる。暗号コンポーネントは、それ自体を含むコンポーネント・コレクション内の他のコンポーネントおよび／または同様のファシリティにおよび／またはこれと通信することができる。暗号コンポーネントは、ＳＢＷＣコンポーネントがセキュア・トランザクションにかかわることが望まれる場合にこれを可能にするために、通信ネットワークにまたが���情報のセキュア伝送を可能にする暗号化方式をサポートする。暗号コンポーネントは、ＳＢＷＣ上のリソースのセキュア・アクセスを容易にし、リモート・システム上の保護されたリソースのアクセスを容易にする、すなわち、保護されたリソースのクライアントおよび／またはサーバとして働くことができる。最も頻繁に、暗号コンポーネントは、情報サーバ、オペレーティング・システム、他のプログラム・コンポーネント、および／または類似物と通信する。暗号コンポーネントは、プログラム・コンポーネント、システム、ユーザ、および／またはデータの通信、要求、および／または応答を含み、通信し、生成し、入手し、かつ／または供給することができる。
【０１０２】
ＳＢＷＣデータベース
ＳＢＷＣデータベース・コンポーネント９１９は、データベースおよびその記憶されたデータにおいて実施され得る。データベースは、ＣＰＵによって実行される記憶されたプログラム・コンポーネントであり、記憶されたプログラム・コンポーネント部分は、記憶されたデータを処理するようにＣＰＵを構成する。データベースは、ＭｙＳＱＬ、Ｏｒａｃｌｅ、Ｓｙｂａｓｅ、その他などの従来の、フォールト・トレラントの、リレーショナル、スケーラブル、セキュア・データベースとすることができる。さらに、ＩＢＭのＮｅｔｅｚｚａ、ＭｏｎｇｏＤＢのＭｏｎｇｏＤＢ、オープンソースＨａｄｏｏｐ、オープンソースＶｏｌｔＤＢ、ＳＡＰのＨａｎａ、その他などの最適化された高速メモリおよび分散データベース。リレーショナル・データベースは、フラット・ファイルの拡張である。リレーショナル・データベースは、一連の関係するテーブルからなる。テーブルは、キー・フィールドを介して相互接続される。キー・フィールドの使用は、キー・フィールドに対してインデクシングすることによるテーブルの組合せを可能にする、すなわち、キー・フィールドは、様々なテーブルからの情報を組み合わせるための次元ピボット点として働く。関係は、一般に、主キーを照合することによってテーブルの間で維持されるリンクを識別する。主キーは、リレーショナル・データベース内のテーブルの行を一意に識別するフィールドを表す。代替キー・フィールドは、一意の値セットを有するフィールドのいずれからも使用され得、いくつかの代替案では、他のフィールドと組み合わされた非一意値を有するフィールドからさえ使用され得る。より正確には、これらは、１対多関係の「１」側でテーブルの行を一意に識別する。
【０１０３】
代替案では、ＳＢＷＣデータベースは、配列、ハッシュ、（リンク）リスト、構造体、構造化テキスト・ファイル（たとえば、ＸＭＬ）、テーブル、および／または類似物などの様々な標準データ構造を使用して実施され得る。そのようなデータ構造は、メモリ内および／または（構造化）ファイル内に記憶され得る。別の代替案では、Ｆｒｏｎｔｉｅｒ、ＯｂｊｅｃｔＳｔｏｒｅ、Ｐｏｅｔ、Ｚｏｐｅ、および／または類似物などのオブジェクト指向データベースを使用することができる。オブジェクト・データベースは、共通の属性によってグループ化されかつ／または一緒にリンクされる複数のオブジェクト・コレクションを含むことができ、これらのオブジェクト・コレクションは、ある共通の属性によって他のオブジェクト・コレクションに関係付けられ得る。オブジェクト指向データベースは、オブジェクトが単なるデータであるのではなく、所与のオブジェクト内にカプセル化された他のタイプの能力を有することができることを除いて、リレーショナル・データベースと同様に機能する。ＳＢＷＣデータベースがデータ構造として実施される場合に、ＳＢＷＣデータベース９１９の使用は、ＳＢＷＣコンポーネント９３５などの別のコンポーネントに一体化され得る。また、データベースは、データ構造、オブジェクト、およびリレーショナル構造の混合物として実施され得る。データベースは、無数の変形形態で合併され、かつ／または分散され得る（たとえば、下の分散ＳＢＷＣ参照）。データベースの諸部分、たとえばテーブルは、エクスポートされかつ／またはインポートされ得、したがって、集中排除されかつ／または統合され得る。
【０１０４】
一実施形態では、データベース・コンポーネント９１９は、複数のテーブル９１９ａ〜ｉを含む。
【０１０５】
ａｃｃｏｕｎｔｓテーブル９１９ａは、ａｃｃｏｕｎｔＩＤ、ａｃｃｏｕｎｔＯｗｎｅｒＩＤ、ａｃｃｏｕｎｔＣｏｎｔａｃｔＩＤ、ａｓｓｅｔＩＤｓ、ｄｅｖｉｃｅＩＤｓ、ｐａｙｍｅｎｔＩＤｓ、ｔｒａｎｓａｃｔｉｏｎＩＤｓ、ｕｓｅｒＩＤｓ、ａｃｃｏｕｎｔＴｙｐｅ（たとえば、エージェント、エンティティ（たとえば、会社、非営利、パートナーシップなど）、個人など）、ａｃｃｏｕｎｔＣｒｅａｔｉｏｎＤａｔｅ、ａｃｃｏｕｎｔＵｐｄａｔｅＤａｔｅ、ａｃｃｏｕｎｔＮａｍｅ、ａｃｃｏｕｎｔＮｕｍｂｅｒ、ｒｏｕｔｉｎｇＮｕｍｂｅｒ、ｌｉｎｋＷａｌｌｅｔｓＩＤ、ａｃｃｏｕｎｔＰｒｉｏｒｉｔＡｃｃａｏｕｎｔＲａｔｉｏ、ａｃｃｏｕｎｔＡｄｄｒｅｓｓ、ａｃｃｏｕｎｔＳｔａｔｅ、ａｃｃｏｕｎｔＺＩＰｃｏｄｅ、ａｃｃｏｕｎｔＣｏｕｎｔｒｙ、ａｃｃｏｕｎｔＥｍａｉｌ、ａｃｃｏｕｎｔＰｈｏｎｅ、ａｃｃｏｕｎｔＡｕｔｈＫｅｙ、ａｃｃｏｕｎｔＩＰａｄｄｒｅｓｓ、ａｃｃｏｕｎｔＵＲＬＡｃｃｅｓｓＣｏｄｅ、ａｃｃｏｕｎｔＰｏｒｔＮｏ、ａｃｃｏｕｎｔＡｕｔｈｏｒｉｚａｔｉｏｎＣｏｄｅ、ａｃｃｏｕｎｔＡｃｃｅｓｓＰｒｉｖｉｌｅｇｅｓ、ａｃｃｏｕｎｔＰｒｅｆｅｒｅｎｃｅｓ、ａｃｃｏｕｎｔＲｅｓｔｒｉｃｔｉｏｎｓ、および／または類似物などであるがこれに限定されないフィールドを含む。
【０１０６】
ｕｓｅｒｓテーブル９１９ｂは、ｕｓｅｒＩＤ、ｕｓｅｒＳＳＮ、ｔａｘＩＤ、ｕｓｅｒＣｏｎｔａｃｔＩＤ、ａｃｃｏｕｎｔＩＤ、ａｓｓｅｔＩＤｓ、ｄｅｖｉｃｅＩＤｓ、ｐａｙｍｅｎｔＩＤｓ、ｔｒａｎｓａｃｔｉｏｎＩＤｓ、ｕｓｅｒＴｙｐｅ（たとえば、エージェント、エンティティ（たとえば、会社、非営利、パートナーシップなど）、個人など）、ｎａｍｅＰｒｅｆｉｘ、ｆｉｒｓｔＮａｍｅ、ｍｉｄｄｌｅＮａｍｅ、ｌａｓｔＮａｍｅ、ｎａｍｅＳｕｆｆｉｘ、ＤａｔｅＯｆＢｉｒｔｈ、ｕｓｅｒＡｇｅ、ｕｓｅｒＮａｍｅ、ｕｓｅｒＥｍａｉｌ、ｕｓｅｒＳｏｃｉａｌＡｃｃｏｕｎｔＩＤ、ｃｏｎｔａｃｔＴｙｐｅ、ｃｏｎｔａｃｔＲｅｌａｔｉｏｎｓｈｉｐ、ｕｓｅｒＰｈｏｎｅ、ｕｓｅｒＡｄｄｒｅｓｓ、ｕｓｅｒＣｉｔｙ、ｕｓｅｒＳｔａｔｅ、ｕｓｅｒＺＩＰＣｏｄｅ、ｕｓｅｒＣｏｕｎｔｒｙ、ｕｓｅｒＡｕｔｈｏｒｉｚａｔｉｏｎＣｏｄｅ、ｕｓｅｒＡｃｃｅｓｓＰｒｉｖｉｌｇｅｓ、ｕｓｅｒＰｒｅｆｅｒｅｎｃｅｓ、ｕｓｅｒＲｅｓｔｒｉｃｔｉｏｎｓ、および／または類似物などであるがこれに限定されないフィールドを含む（ｕｓｅｒテーブルは、ＳＢＷＣ上の複数のエンティティ・アカウントをサポートし、かつ／または追跡することができる）。
【０１０７】
ｄｅｖｉｃｅｓテーブル９１９ｃは、ｄｅｖｉｃｅＩＤ、ｓｅｎｓｏｒＩＤｓ、ａｃｃｏｕｎｔＩＤ、ａｓｓｅｔＩＤｓ、ｐａｙｍｅｎｔＩＤｓ、ｄｅｖｉｃｅＴｙｐｅ、ｄｅｖｉｃｅＮａｍｅ、ｄｅｖｉｃｅＭａｎｕｆａｃｔｕｒｅｒ、ｄｅｖｉｃｅＭｏｄｅｌ、ｄｅｖｉｃｅＶｅｒｓｉｏｎ、ｄｅｖｉｃｅＳｅｒｉａｌＮｏ、ｄｅｖｉｃｅＩＰａｄｄｒｅｓｓ、ｄｅｖｉｃｅＭＡＣａｄｄｒｅｓｓ、ｄｅｖｉｃｅ＿ＥＣＩＤ、ｄｅｖｉｃｅＵＵＩＤ、ｄｅｖｉｃｅＬｏｃａｔｉｏｎ、ｄｅｖｉｃｅＣｅｒｔｉｆｉｃａｔｅ、ｄｅｖｉｃｅＯＳ、ａｐｐＩＤｓ、ｄｅｖｉｃｅＲｅｓｏｕｒｃｅｓ、ｄｅｖｉｃｅＳｅｓｓｉｏｎ、ａｕｔｈＫｅｙ、ｄｅｖｉｃｅＳｅｃｕｒｅＫｅｙ、ｗａｌｌｅｔＡｐｐＩｎｓｔａｌｌｅｄＦｌａｇ、ｄｅｖｉｃｅＡｃｃｅｓｓＰｒｉｖｉｌｅｇｅｓ、ｄｅｖｉｃｅＰｒｅｆｅｒｅｎｃｅｓ、ｄｅｖｉｃｅＲｅｓｔｒｉｃｔｉｏｎｓ、ｈａｒｄｗａｒｅ＿ｃｏｎｆｉｇ、ｓｏｆｔｗａｒｅ＿ｃｏｎｆｉｇ、ｓｔｏｒａｇｅ＿ｌｏｃａｔｉｏｎ、ｓｅｎｓｏｒ＿ｖａｌｕｅ、ｐｉｎ＿ｒｅａｄｉｎｇ、ｄａｔａ＿ｌｅｎｇｔｈ、ｃｈａｎｎｅｌ＿ｒｅｑｕｉｒｅｍｅｎｔ、ｓｅｎｓｏｒ＿ｎａｍｅ、ｓｅｎｓｏｒ＿ｍｏｄｅｌ＿ｎｏ、ｓｅｎｓｏｒ＿ｍａｎｕｆａｃｔｕｒｅｒ、ｓｅｎｓｏｒ＿ｔｙｐｅ、ｓｅｎｓｏｒ＿ｓｅｒｉａｌ＿ｎｕｍｂｅｒ、ｓｅｎｓｏｒ＿ｐｏｗｅｒ＿ｒｅｑｕｉｒｅｍｅｎｔ、ｄｅｖｉｃｅ＿ｐｏｗｅｒ＿ｒｅｑｕｉｒｅｍｅｎｔ、ｌｏｃａｔｉｏｎ、ｓｅｎｓｏｒ＿ａｓｓｏｃｉａｔｅｄ＿ｔｏｏｌ、ｓｅｎｓｏｒ＿ｄｉｍｅｎｓｉｏｎｓ、ｄｅｖｉｃｅ＿ｄｉｍｅｎｓｉｏｎｓ、ｓｅｎｓｏｒ＿ｃｏｍｍｕｎｉｃａｔｉｏｎｓ＿ｔｙｐｅ、ｄｅｖｉｃｅ＿ｃｏｍｍｕｎｉｃａｔｉｏｎｓ＿ｔｙｐｅ、ｐｏｗｅｒ＿ｐｅｒｃｅｎｔａｇｅ、ｐｏｗｅｒ＿ｃｏｎｄｉｔｉｏｎ、ｔｅｍｐｅｒａｔｕｒｅ＿ｓｅｔｔｉｎｇ、ｓｐｅｅｄ＿ａｄｊｕｓｔ、ｈｏｌｄ＿ｄｕｒａｔｉｏｎ、ｐａｒｔ＿ａｃｔｕａｔｉｏｎ、および／または類似物などであるがこれに限定されないフィールドを含む。ｄｅｖｉｃｅテーブルは、いくつかの実施形態で、ｈｔｔｐｓ：／／ｗｗｗ．ｂｌｕｅｔｏｏｔｈ．ｏｒｇ／ｅｎ−ｕｓ／ｓｐｅｃｉｆｉｃａｔｉｏｎ／ａｄｏｐｔｅｄ−ｓｐｅｃｉｆｉｃａｔｉｏｎｓおよび／もしくは他のデバイス仕様書で公表されたものなどの１つもしくは複数のＢｌｕｅｔｏｏｔｈプロファイル、ならびに／または類似物に対応するフィールドを含む。
【０１０８】
ａｐｐｓテーブル９１９ｄは、ａｐｐＩＤ、ａｐｐＮａｍｅ、ａｐｐＴｙｐｅ、ａｐｐＤｅｐｅｎｄｅｎｃｉｅｓ、ａｃｃｏｕｎｔＩＤ、ｄｅｖｉｃｅＩＤｓ、ｔｒａｎｓａｃｔｉｏｎＩＤ、ｕｓｅｒＩＤ、ａｐｐＳｔｏｒｅＡｕｔｈＫｅｙ、ａｐｐＳｔｏｒｅＡｃｃｏｕｎｔＩＤ、ａｐｐＳｔｏｒｅＩＰａｄｄｒｅｓｓ、ａｐｐＳｔｏｒｅＵＲＬａｃｃｅｓｓＣｏｄｅ、ａｐｐＳｔｏｒｅＰｏｒｔＮｏ、ａｐｐＡｃｃｅｓｓＰｒｉｖｉｌｅｇｅｓ、ａｐｐＰｒｅｆｅｒｅｎｃｅｓ、ａｐｐＲｅｓｔｒｉｃｔｉｏｎｓ、ｐｏｒｔＮｕｍ、ａｃｃｅｓｓ＿ＡＰＩ＿ｃａｌｌ、ｌｉｎｋｅｄ＿ｗａｌｌｅｔｓ＿ｌｉｓｔ、および／または類似物などであるがこれに限定されないフィールドを含む。
【０１０９】
ａｓｓｅｔｓテーブル９１９ｅは、ａｓｓｅｔＩＤ、ａｃｃｏｕｎｔＩＤ、ｕｓｅｒＩＤ、ｄｉｓｔｒｉｂｕｔｏｒＡｃｃｏｕｎｔＩＤ、ｄｉｓｔｒｉｂｕｔｏｒＰａｙｍｅｎｔＩＤ、ｄｉｓｔｒｉｂｕｔｏｒＯｎｗｅｒＩＤ、ａｓｓｅｔＯｗｎｅｒＩＤ、ａｓｓｅｔＴｙｐｅ、ａｓｓｅｔＳｏｕｒｃｅＤｅｖｉｃｅＩＤ、ａｓｓｅｔＳｏｕｒｃｅＤｅｖｉｃｅＴｙｐｅ、ａｓｓｅｔＳｏｕｒｃｅＤｅｖｉｃｅＮａｍｅ、ａｓｓｅｔＳｏｕｒｃｅＤｉｓｔｒｉｂｕｔｉｏｎＣｈａｎｎｅｌＩＤ、ａｓｓｅｔＳｏｕｒｃｅＤｉｓｔｒｉｂｕｔｉｏｎＣｈａｎｎｅｌＴｙｐｅ、ａｓｓｅｔＳｏｕｒｃｅＤｉｓｔｒｉｂｕｔｉｏｎＣｈａｎｎｅｌＮａｍｅ、ａｓｓｅｔＴａｒｇｅｔＣｈａｎｎｅｌＩＤ、ａｓｓｅｔＴａｒｇｅｔＣｈａｎｎｅｌＴｙｐｅ、ａｓｓｅｔＴａｒｇｅｔＣｈａｎｎｅｌＮａｍｅ、ａｓｓｅｔＮａｍｅ、ａｓｓｅｔＳｅｒｉｅｓＮａｍｅ、ａｓｓｅｔＳｅｒｉｅｓＳｅａｓｏｎ、ａｓｓｅｔＳｅｒｉｅｓＥｐｉｓｏｄｅ、ａｓｓｅｔＣｏｄｅ、ａｓｓｅｔＱｕａｎｔｉｔｙ、ａｓｓｅｔＣｏｓｔ、ａｓｓｅｔＰｒｉｃｅ、ａｓｓｅｔＶａｌｕｅ、ａｓｓｅｔＭａｎｕｆａｃｔｕｅｒ、ａｓｓｅｔＭｏｄｅｌＮｏ、ａｓｓｅｔＳｅｒｉａｌＮｏ、ａｓｓｅｔＬｏｃａｔｉｏｎ、ａｓｓｅｔＡｄｄｒｅｓｓ、ａｓｓｅｔＳｔａｔｅ、ａｓｓｅｔＺＩＰｃｏｄｅ、ａｓｓｅｔＳｔａｔｅ、ａｓｓｅｔＣｏｕｎｔｒｙ、ａｓｓｅｔＥｍａｉｌ、ａｓｓｅｔＩＰａｄｄｒｅｓｓ、ａｓｓｅｔＵＲＬａｃｃｅｓｓＣｏｄｅ、ａｓｓｅｔＯｗｎｅｒＡｃｃｏｕｎｔＩＤ、ｓｕｂｓｃｒｉｐｔｉｏｎＩＤｓ、ａｓｓｅｔＡｕｔｈｒｏｉｚａｔｉｏｎＣｏｄｅ、ａｓｓｅｔＡｃｃｅｓｓＰｒｉｖｉｌｅｇｅｓ、ａｓｓｅｔＰｒｅｆｅｒｅｎｃｅｓ、ａｓｓｅｔＲｅｓｔｒｉｃｔｉｏｎｓ、ａｓｓｅｔＡＰＩ、ａｓｓｅｔＡＰＩｃｏｎｎｅｃｔｉｏｎＡｄｄｒｅｓｓ、および／または類似物などであるがこれに限定されないフィールドを含む。
【０１１０】
ｐａｙｍｅｎｔｓテーブル９１９ｆは、ｐａｙｍｅｎｔＩＤ、ａｃｃｏｕｎｔＩＤ、ｕｓｅｒＩＤ、ｃｏｕｐｏｎＩＤ、ｃｏｕｐｏｎＶａｌｕｅ、ｃｏｕｐｏｎＣｏｎｄｉｔｉｏｎｓ、ｃｏｕｐｏｎＥｘｐｉｒａｔｉｏｎ、ｐａｙｍｅｎｔＴｙｐｅ、ｐａｙｍｅｎｔＡｃｃｏｕｎｔＮｏ、ｐａｙｍｅｎｔＡｃｃｏｕｎｔＮａｍｅ、ｐａｙｍｅｎｔＡｃｃｏｕｎｔＡｕｔｈｏｒｉｚａｔｉｏｎＣｏｄｅｓ、ｐａｙｍｅｎｔＥｘｐｉｒａｔｉｏｎＤａｔｅ、ｐａｙｍｅｎｔＣＣＶ、ｐａｙｍｅｎｔＲｏｕｔｉｎｇＮｏ、ｐａｙｍｅｎｔＲｏｕｔｉｎｇＴｙｐｅ、ｐａｙｍｅｎｔＡｄｄｒｅｓｓ、ｐａｙｍｅｎｔＳｔａｔｅ、ｐａｙｍｅｎｔＺＩＰｃｏｄｅ、ｐａｙｍｅｎｔＣｏｕｎｔｒｙ、ｐａｙｍｅｎｔＥｍａｉｌ、ｐａｙｍｅｎｔＡｕｔｈＫｅｙ、ｐａｙｍｅｎｔＩＰａｄｄｒｅｓｓ、ｐａｙｍｅｎｔＵＲＬａｃｃｅｓｓＣｏｄｅ、ｐａｙｍｅｎｔＰｏｒｔＮｏ、ｐａｙｍｅｎｔＡｃｃｅｓｓＰｒｉｖｉｌｅｇｅｓ、ｐａｙｍｅｎｔＰｒｅｆｅｒｅｎｃｅｓ、ｐａｙｅｍｅｎｔＲｅｓｔｒｉｃｔｉｏｎｓ、および／または類似物などであるがこれに限定されないフィールドを含む。
【０１１１】
ｔｒａｎｓａｃｔｉｏｎｓテーブル９１９ｇは、ｔｒａｎｓａｃｔｉｏｎＩＤ、ａｃｃｏｕｎｔＩＤ、ａｓｓｅｔＩＤｓ、ｄｅｖｉｃｅＩＤｓ、ｐａｙｍｅｎｔＩＤｓ、ｔｒａｎｓａｃｔｉｏｎＩＤｓ、ｕｓｅｒＩＤ、ｍｅｒｃｈａｎｔＩＤ、ｔｒａｎｓａｃｔｉｏｎＴｙｐｅ、ｔｒａｎｓａｃｔｉｏｎＤａｔｅ、ｔｒａｎｓａｃｔｉｏｎＴｉｍｅ、ｔｒａｎｓａｃｔｉｏｎＡｍｏｕｎｔ、ｔｒａｎｓａｃｔｉｏｎＱｕａｎｔｉｔｙ、ｔｒａｎｓａｃｔｉｏｎＤｅｔａｉｌｓ、ｐｒｏｄｕｃｔｓＬｉｓｔ、ｐｒｏｄｕｃｔＴｙｐｅ、ｐｒｏｄｕｃｔＴｉｔｌｅ、ｐｒｏｄｕｃｔｓＳｕｍｍａｒｙ、ｐｒｏｄｕｃｔＰａｒａｍｓＬｉｓｔ、ｔｒａｎｓａｃｔｉｏｎＮｏ、ｔｒａｎｓａｃｔｉｏｎＡｃｃｅｓｓＰｒｉｖｉｌｅｇｅｓ、ｔｒａｎｓａｃｔｉｏｎＰｒｅｆｅｒｅｎｃｅｓ、ｔｒａｎｓａｃｔｉｏｎＲｅｓｔｒｉｃｔｉｏｎｓ、ｍｅｒｃｈａｎｔＡｕｔｈＫｅｙ、ｍｅｒｃｈａｎｔＡｕｔｈＣｏｄｅ、および／または類似物などであるがこれに限定されないフィールドを含む。
【０１１２】
ｍｅｒｃｈａｎｔｓテーブル９１９ｈは、ｍｅｒｃｈａｎｔＩＤ、ｍｅｒｃｈａｎｔＴａｘＩＤ、ｍｅｒｃｈａｎｔｅＮａｍｅ、ｍｅｒｃｈａｎｔＣｏｎｔａｃｔＵｓｅｒＩＤ、ａｃｃｏｕｎｔＩＤ、ｉｓｓｕｅｒＩＤ、ａｃｑｕｉｒｅｒＩＤ、ｍｅｒｃｈａｎｔＥｍａｉｌ、ｍｅｒｃｈａｎｔＡｄｄｒｅｓｓ、ｍｅｒｃｈａｎｔＳｔａｔｅ、ｍｅｒｃｈａｎｔＺＩＰｃｏｄｅ、ｍｅｒｃｈａｎｔＣｏｕｎｔｒｙ、ｍｅｒｃｈａｎｔＡｕｔｈＫｅｙ、ｍｅｒｃｈａｎｔＩＰａｄｄｒｅｓｓ、ｐｏｒｔＮｕｍ、ｍｅｒｃｈａｎｔＵＲＬａｃｃｅｓｓＣｏｄｅ、ｍｅｒｃｈａｎｔＰｏｒｔＮｏ、ｍｅｒｃｈａｎｔＡｃｃｅｓｓＰｒｉｖｉｌｅｇｅｓ、ｍｅｒｃｈａｎｔＰｒｅｆｅｒｅｎｃｅｓ、ｍｅｒｃｈａｎｔＲｅｓｔｒｉｃｔｉｏｎｓ、および／または類似物などであるがこれに限定されないフィールドを含む。
【０１１３】
ａｄｓテーブル９１９ｉは、ａｄＩＤ、ａｄｖｅｒｔｉｓｅｒＩＤ、ａｄＭｅｒｃｈａｎｔＩＤ、ａｄＮｅｔｗｏｒｋＩＤ、ａｄＮａｍｅ、ａｄＴａｇｓ、ａｄｖｅｒｔｉｓｅｒＮａｍｅ、ａｄＳｐｏｎｓｏｒ、ａｄＴｉｍｅ、ａｄＧｅｏ、ａｄＡｔｔｒｉｂｕｔｅｓ、ａｄＦｏｒｍａｔ、ａｄＰｒｏｄｕｃｔ、ａｄＴｅｘｔ、ａｄＭｅｄｉａ、ａｄＭｅｄｉａＩＤ、ａｄＣｈａｎｎｅｌＩＤ、ａｄＴａｇＴｉｍｅ、ａｄＡｕｄｉｏＳｉｇｎａｔｕｒｅ、ａｄＨａｓｈ、ａｄＴｅｍｐｌａｔｅＩＤ、ａｄＴｅｍｐｌａｔｅＤａｔａ、ａｄＳｏｕｒｃｅＩＤ、ａｄＳｏｕｒｃｅＮａｍｅ、ａｄＳｏｕｒｃｅＳｅｒｖｅｒＩＰ、ａｄＳｏｕｒｃｅＵＲＬ、ａｄＳｏｕｒｃｅＳｅｃｕｒｉｔｙＰｒｏｔｏｃｏｌ、ａｄＳｏｕｒｃｅＦＴＰ、ａｄＡｕｔｈＫｅｙ、ａｄＡｃｃｅｓｓＰｒｉｖｉｌｅｇｅｓ、ａｄＰｒｅｆｅｒｅｎｃｅｓ、ａｄＲｅｓｔｒｉｃｔｉｏｎｓ、ａｄＮｅｔｗｏｒｋＸｃｈａｎｇｅＩＤ、ａｄＮｅｔｗｏｒｋＸｃｈａｎｇｅＮａｍｅ、ａｄＮｅｔｗｏｒｋＸｃｈａｎｇｅＣｏｓｔ、ａｄＮｅｔｗｏｒｋＸｃｈａｎｇｅＭｅｔｒｉｃＴｙｐｅ（たとえば、ＣＰＡ、ＣＰＣ、ＣＰＭ、ＣＴＲなど）、ａｄＮｅｔｗｏｒｋＸｃｈａｎｇｅＭｅｔｒｉｃＶａｌｕｅ、ａｄＮｅｔｗｏｒｋＸｃｈａｎｇｅＳｅｒｖｅｒ、ａｄＮｅｔｗｏｒｋＸｃｈａｎｇｅＰｏｒｔＮｕｍｂｅｒ、ｐｕｂｌｉｓｈｅｒＩＤ、ｐｕｂｌｉｓｈｅｒＡｄｄｒｅｓｓ、ｐｕｂｌｉｓｈｅｒＵＲＬ、ｐｕｂｌｉｓｈｅｒＴａｇ、ｐｕｂｌｉｓｈｅｒＩｎｄｕｓｔｒｙ、ｐｕｂｌｉｓｈｅｒＮａｍｅ、ｐｕｂｌｉｓｈｅｒＤｅｓｃｒｉｐｔｉｏｎ、ｓｉｔｅＤｏｍａｉｎ、ｓｉｔｅＵＲＬ、ｓｉｔｅＣｏｎｔｅｎｔ、ｓｉｔｅＴａｇ、ｓｉｔｅＣｏｎｔｅｘｔ、ｓｉｔｅＩｍｐｒｅｓｓｉｏｎ、ｓｉｔｅＶｉｓｉｔｓ、ｓｉｔｅＨｅａｄｌｉｎｅ、ｓｉｔｅＰａｇｅ、ｓｉｔｅＡｄＰｒｉｃｅ、ｓｉｔｅＰｌａｃｅｍｅｎｔ、ｓｉｔｅＰｏｓｉｔｉｏｎ、ｂｉｄＩＤ、ｂｉｄＥｘｃｈａｎｇｅ、ｂｉｄＯＳ、ｂｉｄＴａｒｇｅｔ、ｂｉｄＴｉｍｅｓｔａｍｐ、ｂｉｄＰｒｉｃｅ、ｂｉｄＩｍｐｒｅｓｓｉｏｎＩＤ、ｂｉｄＴｙｐｅ、ｂｉｄＳｃｏｒｅ、ａｄＴｙｐｅ（たとえば、モバイル、デスクトップ、ウェアラブル、大画面、インタースティシャルなど）、ａｓｓｅｔＩＤ、ｍｅｒｃｈａｎｔＩＤ、ｄｅｖｉｃｅＩＤ、ｕｓｅｒＩＤ、ａｃｃｏｕｎｔＩＤ、ｉｍｐｒｅｓｓｉｏｎＩＤ、ｉｍｐｒｅｓｓｉｏｎＯＳ、ｉｍｐｒｅｓｓｉｏｎＴｉｍｅＳｔａｍｐ、ｉｍｐｒｅｓｓｉｏｎＧｅｏ、ｉｍｐｒｅｓｓｉｏｎＡｃｔｉｏｎ、ｉｍｐｒｅｓｓｉｏｎＴｙｐｅ、ｉｍｐｒｅｓｓｉｏｎＰｕｂｌｉｓｈｅｒＩＤ、ｉｍｐｒｅｓｓｉｏｎＰｕｂｌｉｓｈｅｒＵＲＬ、および／または類似物などであるがこれに限定されないフィールドを含む。
【０１１４】
一実施形態では、ＳＢＷＣデータベースは、他のデータベース・システムと相互作用することができる。たとえば、分散データベース・システムを使用して、検索ＳＢＷＣコンポーネントによる照会およびデータ・アクセスは、ＳＷＢＣデータベース、統合されたデータ・セキュリティ層データベースの組合せを単一のデータベース・エンティティとして扱うことができる（たとえば、下の分散ＳＢＷＣ参照）。
【０１１５】
一実施形態では、ユーザ・プログラムは、ＳＢＷＣを更新するように働くことのできる様々なユーザ・インターフェース・プリミティブを含むことができる。また、様々なアカウントは、環境とＳＢＷＣがそれのために働く必要がある可能性があるクライアントのタイプとに依存して、カスタム・データベース・テーブルを必要とする場合がある。任意の一意のフィールドを、至る所でキー・フィールドとして指定できることに留意されたい。代替実施形態では、これらのテーブルは、それら自体のデータベースおよびそれらのそれぞれのデータベース・コントローラ（すなわち、上記テーブルのそれぞれのための個々のデータベース・コントローラ）に集中排除されている。標準的なデータ処理技法を使用して、複数のコンピュータ・システム化および／またはストレージ・デバイスの間でデータベースをさらに分散させることができる。同様に、集中排除されたデータベース・コントローラの構成は、様々なデータベース・コンポーネント９１９ａ〜ｉを合併し、かつ／または分散させることによって変更され得る。ＳＢＷＣは、データベース・コントローラを介して様々なセッティング、入力、およびパラメータを記録するように構成され得る。
【０１１６】
ＳＢＷＣデータベースは、それ自体を含むコンポーネント・コレクション内の他のコンポーネントおよび／または同様のファシリティにおよび／またはこれと通信することができる。最も頻繁に、ＳＢＷＣデータベースは、ＳＢＷＣコンポーネント、他のプログラム・コンポーネント、および／または類似物と通信する。データベースは、他のノードに関する情報およびデータを含み、保持し、供給することができる。
【０１１７】
ＳＢＷＣ
ＳＢＷＣコンポーネント９３５は、ＣＰＵによって実行される記憶されたプログラム・コンポーネントである。一実施形態では、ＳＢＷＣコンポーネントは、前の図面で議論されたＳＢＷＣの態様の任意のおよび／またはすべての組合せを組み込む。したがって、ＳＢＷＣは、様々な通信ネットワークにまたがる情報、サービス、トランザクション、および／または類似物のアクセス、入手、および提供に影響する。本明細書で議論されるＳＢＷＣの特徴および実施形態は、データ転送要件を減らすこととより効率的なデータ構造とその転送および記憶のためのより効率的な機構の使用によってネットワーク効率を高める。その結果、より多くのデータをより短い時間で転送でき、トランザクションに関する待ち時間も減らされる。多くの場合に、記憶、転送時間、帯域幅要件、待ち時間などのそのような減少は、ＳＢＷＣの特徴およびファシリティをサポートするための容量および構造的インフラストラクチャ要件を低減し、多くの場合にコスト、エネルギ消費／要件を下げ、ＳＢＷＣの基礎になるインフラストラクチャの寿命を延ばし、これは、ＳＢＷＣをより信頼できるものにするという追加の利益を有する。同様に、特徴および機構の多くは、ユーザが使用しアクセスするのがより簡単になるように設計され、これによって、ＳＢＷＣの特徴セットを享受／使用し、活用することのできる聴衆の幅を広げ、そのような使い易さは、ＳＢＷＣの信頼性を高めるのを助けもする。さらに、特徴セットは、暗号コンポーネント９２０、９２６、９２８および全体を介して注記された高められたセキュリティを含み、特徴およびデータへのアクセスを、より信頼でき安全なものにする。
【０１１８】
ＳＢＷＣは、ＳＢＷＣコンポーネント（たとえば、ＦＥ、ＦＢ、ＴＬＬ、ＦＱ、ＥＰＲ）を介して、ウェブページ要求入力を合成された拡張可能な要素出力に変換する。
【０１１９】
ノードの間での情報のアクセスを可能にするＳＢＷＣコンポーネントは、Ａｐａｃｈｅコンポーネント、アセンブリ、ＡｃｔｉｖｅＸ、バイナリ実行可能ファイル、（ＡＮＳＩ）（Ｏｂｊｅｃｔｉｖｅ−）Ｃ（＋＋）、Ｃ＃および／もしくは．ＮＥＴ、データベース・アダプタ、ＣＧＩスクリプト、Ｊａｖａ、ＪａｖａＳｃｒｉｐｔ、マッピング・ツール、手続き指向およびオブジェクト指向の開発ツール、ＰＥＲＬ、ＰＨＰ、Ｐｙｔｈｏｎ、シェル・スクリプト、ＳＱＬコマンド、ウェブ・アプリケーション・サーバ拡張、ウェブ開発環境およびウェブ開発ライブラリ（たとえば、ＭｉｃｒｏｓｏｆｔのＡｃｔｉｖｅＸ、Ａｄｏｂｅ  ＡＩＲ、ＦＬＥＸ  ＆  ＦＬＡＳＨ、ＡＪＡＸ、（Ｄ）ＨＴＭＬ、Ｄｏｊｏ、Ｊａｖａ、ＪａｖａＳｃｒｉｐｔ、ｊＱｕｅｒｙ（ＵＩ）、ＭｏｏＴｏｏｌｓ、Ｐｒｏｔｏｔｙｐｅ、ｓｃｒｉｐｔ．ａｃｕｌｏ．ｕｓ、Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ（ＳＯＡＰ）、ＳＷＦＯｂｊｅｃｔ、Ｙａｈｏｏ！ユーザ・インターフェース、および／または類似物）、ＷｅｂＯｂｊｅｃｔｓ、ならびに／または類似物などであるがこれに限定されない標準的な開発ツールおよび言語を使用することによって開発され得る。一実施形態では、ＳＢＷＣサーバは、通信を暗号化し、暗号化解除するのに暗号サーバを使用する。ＳＢＷＣコンポーネントは、それ自体を含むコンポーネント・コレクション内の他のコンポーネントおよび／または同様のファシリティにおよび／またはこれと通信することができる。より頻繁に、ＳＢＷＣコンポーネントは、ＳＢＷＣデータベース、オペレーティング・システム、他のプログラム・コンポーネント、および／または類似物と通信する。ＳＢＷＣは、プログラム・コンポーネント、システム、ユーザ、および／またはデータの通信、要求、および／または応答を含み、通信し、生成し、入手し、かつ／または供給することができる。
【０１２０】
分散ＳＢＷＣ
ＳＢＷＣノード・コントローラ・コンポーネントのいずれかの構造および／または動作は、開発および／または展開を容易にする任意の個数の形で組み合わされ、合併され、かつ／または分散され得る。同様に、コンポーネント・コレクションは、展開および／または開発を容易にする任意の個数の形で組み合わされ得る。これを達成するために、コンポーネントを、共通のコード・ベースに、または統合された形でオン・デマンドでコンポーネントを動的にロードできるファシリティ内に統合することができる。したがって、ハードウェアの組合せは、１つの位置内、一地域内、および／または全世界に分散され得、コントローラへの論理アクセスが単一のノードとして抽象化され得、それでも多数のプライベート、半プライベート、および公にアクセス可能なノード・コントローラ（たとえば、散らばったデータ・センタを介する）が、要求にサービスするように調整され（たとえば、プライベート・クラウド、半プライベート・クラウド、およびパブリック・クラウドのコンピューティング・リソースを提供することによって）、別個の地域でのそのような要求のサービスを可能にする（たとえば、分離された、ローカルな、地域の、国の、全世界のクラウド・アクセス）。
【０１２１】
コンポーネント・コレクションは、標準的なデータ処理技法および／または開発技法を介して無数の変形形態で合併され、かつ／または分散され得る。プログラム・コンポーネント・コレクション内のプログラム・コンポーネントのいずれか１つの複数のインスタンスは、負荷平衡化技法および／またはデータ処理技法を介して性能を改善するために単一のノード上でおよび／または多数のノードにまたがってインスタンス化され得る。さらに、単一のインスタンスが、複数のコントローラおよび／またはストレージ・デバイス、たとえばデータベースにまたがって分散されることも可能である。協調して働くすべてのプログラム・コンポーネント・インスタンスおよびコントローラは、標準的なデータ処理通信技法を介してそれを行うことができる。
【０１２２】
ＳＢＷＣコントローラの構成は、システム展開のコンテキストに依存する。予算、容量、位置、および／または基礎になるハードウェア・リソースの使用などであるがこれに限定されない要因が、展開要件および構成に影響する可能性がある。構成が、より合併され、かつ／または統合されたプログラム・コンポーネントをもたらし、より分散された一連のプログラム・コンポーネントをもたらし、かつ／または合併された構成と分散された構成との間のなんらかの組合せをもたらすかどうかにかかわりなく、データを通信し、入手し、かつ／または供給することができる。プログラム・コンポーネント・コレクションから共通のコード・ベースに合併されたコンポーネントのインスタンスは、データを通信し、入手し、かつ／または供給することができる。これは、データ参照（たとえば、ポインタ）、内部メッセージング、オブジェクト・インスタンス変数通信、共有メモリ空間、変数渡し、および／または類似物などであるがこれに限定されない、アプリケーション内データ処理通信技法を介して達成され得る。たとえば、Ａｍａｚｏｎ  Ｄａｔａ  Ｓｅｒｖｉｃｅｓ、Ｍｉｃｒｏｓｏｆｔ  Ａｚｕｒｅ、Ｈｅｗｌｅｔｔ  Ｐａｃｋａｒｄ  Ｈｅｌｉｏｎ、ＩＢＭ  Ｃｌｏｕｄ  ｓｅｒｖｉｃｅｓなどのクラウド・サービスは、変化する度合のスケールに関してＳＢＷＣコントローラおよび／またはＳＢＷＣコンポーネント・コレクションを全体的にまたは部分的にホスティングすることを可能にする。
【０１２３】
コンポーネント・コレクション・コンポーネントが、お互いに対して別個、別々、および／または外部である場合に、他のコンポーネント・コンポーネントとのおよび／またはこれへのデータの通信、入手、および／または供給は、アプリケーション・プログラム・インターフェース（ＡＰＩ）情報移動、（ｄｉｓｔｒｉｂｕｔｅｄ）Ｃｏｍｐｏｎｅｎｔ  Ｏｂｊｅｃｔ  Ｍｏｄｅｌ（（Ｄ）ＣＯＭ）、（Ｄｉｓｔｒｉｂｕｔｅｄ）Ｏｂｊｅｃｔ  Ｌｉｎｋｉｎｇ  ａｎｄ  Ｅｍｂｅｄｄｉｎｇ（（Ｄ）ＯＬＥ）、および／または類似物）、Ｃｏｍｍｏｎ  Ｏｂｊｅｃｔ  Ｒｅｑｕｅｓｔ  Ｂｒｏｋｅｒ  Ａｒｃｈｉｔｅｃｔｕｒｅ（ＣＯＲＢＡ）、Ｊｉｎｉのローカルおよびリモートのアプリケーション・プログラム・インターフェース、ＪａｖａＳｃｒｉｐｔ  Ｏｂｊｅｃｔ  Ｎｏｔａｔｉｏｎ（ＪＳＯＮ）、Ｒｅｍｏｔｅ  Ｍｅｔｈｏｄ  Ｉｎｖｏｃａｔｉｏｎ（ＲＭＩ）、ＳＯＡＰ、プロセス・パイプ、共有ファイル、および／または類似物などであるがこれに限定されない、アプリケーション間データ処理通信技法を介して達成され得る。アプリケーション間通信のために別個のコンポーネント・コンポーネントの間でまたはアプリケーション内通信のために単一のコンポーネントのメモリ空間内で送られるメッセージは、文法の作成および解析を介して容易にされ得る。文法は、コンポーネント内およびコンポーネント間の通信メッセージの基礎を形成することのできる、文法生成能力および文法解析能力を可能にする、ｌｅｘ、ｙａｃｃ、ＸＭＬ、および／または類似物などの開発ツールを使用することによって開発され得る。
【０１２４】
たとえば、文法は、ＨＴＴＰ  ｐｏｓｔコマンドのトークンを認識するように配置され得、たとえば、
【数１８】
0006944170.tif 000023
【０１２５】
ここで、「ｈｔｔｐ：／／」が文法構文の一部であり、それに続くものがｐｏｓｔ値の一部と考えられるので、Ｖａｌｕｅ１は、パラメータであるものとして認識される。同様に、そのような文法を用いると、変数「Ｖａｌｕｅ１」を「ｈｔｔｐ：／／」ｐｏｓｔコマンドに挿入し、その後に送ることができる。文法構文自体は、解釈され、かつ／または解析機構を生成するのに他の形で使用される構造化データ（たとえば、ｌｅｘ、ｙａｃｃなどによって処理される構文記述テキスト・ファイル）として提示され得る。また、解析機構が生成され、かつ／またはインスタンス化された後に、解析機構自体は、文字（たとえば、タブ）によって区切られたテキスト、ＨＴＭＬ、構造化テキスト・ストリーム、ＸＭＬ、および／または同様の構造化データなどであるがこれに限定されない構造化データを処理し、かつ／または解析することができる。別の実施形態では、アプリケーション間データ処理プロトコル自体が、（たとえば通信）データを解析するのに使用され得る統合されたおよび／またはたやすく使用可能なパーサ（たとえば、ＪＳＯＮ、ＳＯＡＰ、および／または同様のパーサ）を有することができる。さらに、文法の解析は、メッセージ解析を超えて使用され得るが、データベース、データ・コレクション、データ・ストア、構造化データ、および／または類似物を解析するのにも使用され得る。やはり、所望の構成は、システム展開のコンテキスト、環境、および要件に依存する。
【０１２６】
たとえば、いくつかの実施態様では、ＳＢＷＣコントローラは、情報サーバを介して、Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔｓ  Ｌａｙｅｒ（「ＳＳＬ」）ソケット・サーバを実施するＰＨＰスクリプトを実行している場合があり、このＰＨＰスクリプトは、クライアントがデータ、たとえばＪＳＯＮフォーマットで符号化されたデータを送る可能性があるサーバ・ポート上で着信通信をリスンする。着信通信を識別した時に、ＰＨＰスクリプトは、クライアント・デバイスからの着信メッセージを読み取り、ＪＳＯＮ符号化されたテキスト・データからの情報をＰＨＰスクリプト変数に抽出するために受信されたＪＳＯＮ符号化されたテキスト・データを解析し、データ（たとえば、クライアントを識別する情報など）および／または抽出された情報を、構造化照会言語（「ＳＱＬ」）を使用してアクセス可能なリレーショナル・データベースに記憶することができる。ＳＳＬ接続を介するクライアント・デバイスからのＪＳＯＮ符号化された入力データを受け入れ、変数を抽出するためにデータを解析し、データをデータベースに記憶するための、実質的にＰＨＰ／ＳＱＬコマンドの形で記述された例示的なリスティングを、下に提供する。
【数１９】
0006944170.tif 000024
【０１２７】
また、以下のリソースを使用して、ＳＯＡＰパーサ実施態様
【数２０】
0006944170.tif 000025
および他のパーサ実施態様
【数２１】
0006944170.tif 000026
に関する例の実施形態を提供することができ、これらのすべてが、これによって参照によって特に組み込まれている。
【０１２８】
追加の実施形態は、以下を含む。
１．メモリと、
メモリ内のコンポーネント・コレクションと、
メモリと通信して配置され、メモリ内に記憶されたコンポーネント・コレクションから複数の処理命令を発行するように構成されたプロセッサと
を含むウェブページ・フレーム拡張表示装置であって、
プロセッサは、
少なくとも１つのプロセッサを介して、ウェブページのトップ・レベルにトップ・レベル・リスニング・コンポーネントを提供することであって、ウェブページがロードする時に、トップ・レベル・リスニング・コンポーネントは、ウェブページ内の第１レベル・フレームのノード・リストを作成するように構成される、提供することと、
少なくとも１つのプロセッサを介して、フレーム・エスケーピング・コンポーネントを含む拡張可能な表示ペイロードを入手するようにウェブページ内の第１のフレームを構成することと
のために、メモリ内に記憶されたコンポーネント・コレクションから命令を発行し、
フレーム・エスケーピング・コンポーネントは、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードに関連する一意フレーム識別子を生成し、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントを含むフレーム・バスタ・ペイロードを入手するように構成された第２のフレームを作成し、
少なくとも１つのプロセッサを介して、トップ・レベル・リスニング・コンポーネントからのメッセージのトップ・レベル・イベント・リスナを追加する
ように構成され、
トップ・レベル・イベント・リスナは、トップ・レベル・リスニング・コンポーネントからメッセージを受信する時に、
少なくとも１つのプロセッサを介して、トップ・レベル・リスニング・コンポーネントからのメッセージ内で指定される一意フレーム識別子を判定し、
少なくとも１つのプロセッサを介して、トップ・レベル・リスニング・コンポーネントからのメッセージ内で指定される一意フレーム識別子が、生成された一意フレーム識別子と一致することを検証し、
少なくとも１つのプロセッサを介して、トップ・レベル・リスニング・コンポーネントからのメッセージ内で指定されるウェブページ内の第１レベル・フレームのノード・リスト識別子を判定し、
少なくとも１つのプロセッサを介して、判定されたノード・リスト識別子を有するメッセージをフレーム・バスティング・コンポーネントに送る
ように構成され、
フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードに関連する一意フレーム識別子を判定し、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードに関連する一意フレーム識別子を使用して、どの第１レベル・フレームが拡張可能な表示ペイロードを含むのかを判定するために、ウェブページ内の第１レベル・フレームを照会することを容易にするように構成された実行可能なフレーム照会コンポーネントを生成し、
少なくとも１つのプロセッサを介して、生成された実行可能なフレーム照会コンポーネントを有するメッセージをトップ・レベル・リスニング・コンポーネントに送り、
少なくとも１つのプロセッサを介して、フレーム・エスケーピング・コンポーネントからのメッセージのフレーム・イベント・リスナを追加する
ように構成され、
フレーム・イベント・リスナは、フレーム・エスケーピング・コンポーネントからメッセージを受信する時に
少なくとも１つのプロセッサを介して、フレーム・エスケーピング・コンポーネントからのメッセージ内で指定されるノード・リスト識別子を判定し、
少なくとも１つのプロセッサを介して、フレーム・エスケーピング・コンポーネントからのメッセージ内で指定されるノード・リスト識別子を使用してウェブページのトップ・レベルでの拡張可能な表示ペイロードの再構築を容易にするように構成された実行可能な拡張可能なペイロード再構築コンポーネントを生成し、
少なくとも１つのプロセッサを介して、生成された実行可能な拡張可能なペイロード再構築コンポーネントを有するメッセージをトップ・レベル・リスニング・コンポーネントに送る
ように構成され、
トップ・レベル・リスニング・コンポーネントは、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントからのメッセージのバスタ・イベント・リスナを追加する
ようにさらに構成され、
バスタ・イベント・リスナは、フレーム・バスティング・コンポーネントからメッセージを受信する時に、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントからのメッセージ内で提供される実行可能コンポーネントを実行する
ように構成される
ウェブページ・フレーム拡張表示装置。
２．フレームは、ｉｆｒａｍｅである、実施形態１に記載の装置。
３．メッセージは、ｐｏｓｔメッセージである、実施形態１に記載の装置。
４．ノード・リスト識別子は、ノード・リスト内のｉｔｅｍインデックスである、実施形態１に記載の装置。
５．拡張可能な表示ペイロードは、拡張可能な広告である、実施形態１に記載の装置。
６．フレーム・エスケーピング・コンポーネントは、
少なくとも１つのプロセッサを介して、第１のフレームからのエスケープを試みなければならないかどうかを判定する
ようにさらに構成される、実施形態１に記載の装置。
７．拡張可能な表示ペイロードに関連する一意フレーム識別子は、ランダムに生成される数である、実施形態１に記載の装置。
８．フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、ｎａｍｅ属性を解析することによって拡張可能な表示ペイロードに関連する一意フレーム識別子を判定する
ようにさらに構成される、実施形態１に記載の装置。
９．フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードを含む第１レベル・フレームに関連するソースを判定する
ようにさらに構成され、
生成された実行可能なフレーム照会コンポーネントは、
少なくとも１つのプロセッサを介して、ノード・リストから第１レベル・フレームを選択し、
少なくとも１つのプロセッサを介して、第１レベル・フレームのソースが、拡張可能な表示ペイロードを含む第１レベル・フレームに関連するソースと一致することを判定し、
少なくとも１つのプロセッサを介して、選択された第１レベル・フレームのノード・リスト識別子および拡張可能な表示ペイロードに関連する一意フレーム識別子を有するメッセージを選択された第１レベル・フレームに送る
ようにさらに構成される
実施形態１に記載の装置。
１０．フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、ウェブページのトップ・レベルに関連するドメインを判定する
ようにさらに構成され、
生成された実行可能なフレーム照会コンポーネントを有するトップ・レベル・リスニング・コンポーネントへのメッセージは、判定されたドメインをセットされたターゲット起点を有するｐｏｓｔメッセージである
実施形態１に記載の装置。
１１．フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードに関連する初期化スクリプトのソースを判定する
ようにさらに構成され、
生成された実行可能な拡張可能なペイロード再構築コンポーネントは、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードの要素を作成し、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードに関連する初期化スクリプトのソースを要素のソースにセットし、
少なくとも１つのプロセッサを介して、ウェブページのトップ・レベルに要素を追加する
ようにさらに構成される
実施形態１に記載の装置。
１２．生成された実行可能な拡張可能なペイロード再構築コンポーネントは、
少なくとも１つのプロセッサを介して、エスケープされた要素として要素を構成する
ようにさらに構成される
実施形態１１に記載の装置。
１３．トップ・レベル・リスニング・コンポーネントは、
少なくとも１つのプロセッサを介して、バスタ・ドメインを識別する
ようにさらに構成され、
バスタ・イベント・リスナは、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントからのメッセージの起点を判定し、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントからのメッセージの起点が識別されたバスタ・ドメインと一致することを検証する
ようにさらに構成される
実施形態１に記載の装置。
１４．拡張可能な表示ペイロードは、ウェブページ内で第１のフレームの境界を超えて表示するように構成される、実施形態１に記載の装置。
１５．拡張可能な表示ペイロードは、マルチレベル・メニュー、メディア・プレイヤ・コントロールのセットのうちの１つを表示するために拡張するように構成される、実施形態１に記載の装置。
１６．プロセッサ実行可能なコンポーネントを記憶するウェブページ・フレーム拡張表示非一時的物理媒体であって、コンポーネントは、
媒体内に記憶されたコンポーネント・コレクション
を含み、
媒体内に記憶されたコンポーネント・コレクションは、
少なくとも１つのプロセッサを介して、ウェブページのトップ・レベルにトップ・レベル・リスニング・コンポーネントを提供することであって、ウェブページがロードする時に、トップ・レベル・リスニング・コンポーネントはウェブページ内の第１レベル・フレームのノード・リストを作成するように構成される、提供することと、
少なくとも１つのプロセッサを介して、フレーム・エスケーピング・コンポーネントを含む拡張可能な表示ペイロードを入手するようにウェブページ内の第１のフレームを構成することと
のためのプロセッサ発行可能命令を含み、
フレーム・エスケーピング・コンポーネントは、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードに関連する一意フレーム識別子を生成し、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントを含むフレーム・バスタ・ペイロードを入手するように構成された第２のフレームを作成し、
少なくとも１つのプロセッサを介して、トップ・レベル・リスニング・コンポーネントからのメッセージのトップ・レベル・イベント・リスナを追加する
ように構成され、
トップ・レベル・イベント・リスナは、トップ・レベル・リスニング・コンポーネントからメッセージを受信する時に、
少なくとも１つのプロセッサを介して、トップ・レベル・リスニング・コンポーネントからのメッセージ内で指定される一意フレーム識別子を判定し、
少なくとも１つのプロセッサを介して、トップ・レベル・リスニング・コンポーネントからのメッセージ内で指定される一意フレーム識別子が、生成された一意フレーム識別子と一致することを検証し、
少なくとも１つのプロセッサを介して、トップ・レベル・リスニング・コンポーネントからのメッセージ内で指定されるウェブページ内の第１レベル・フレームのノード・リスト識別子を判定し、
少なくとも１つのプロセッサを介して、判定されたノード・リスト識別子を有するメッセージをフレーム・バスティング・コンポーネントに送る
ように構成され、
フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードに関連する一意フレーム識別子を判定し、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードに関連する一意フレーム識別子を使用して、どの第１レベル・フレームが拡張可能な表示ペイロードを含むのかを判定するために、ウェブページ内の第１レベル・フレームを照会することを容易にするように構成された実行可能なフレーム照会コンポーネントを生成し、
少なくとも１つのプロセッサを介して、生成された実行可能なフレーム照会コンポーネントを有するメッセージをトップ・レベル・リスニング・コンポーネントに送り、
少なくとも１つのプロセッサを介して、フレーム・エスケーピング・コンポーネントからのメッセージのフレーム・イベント・リスナを追加する
ように構成され、
フレーム・イベント・リスナは、フレーム・エスケーピング・コンポーネントからメッセージを受信する時に
少なくとも１つのプロセッサを介して、フレーム・エスケーピング・コンポーネントからのメッセージ内で指定されるノード・リスト識別子を判定し、
少なくとも１つのプロセッサを介して、フレーム・エスケーピング・コンポーネントからのメッセージ内で指定されるノード・リスト識別子を使用してウェブページのトップ・レベルでの拡張可能な表示ペイロードの再構築を容易にするように構成された実行可能な拡張可能なペイロード再構築コンポーネントを生成し、
少なくとも１つのプロセッサを介して、生成された実行可能な拡張可能なペイロード再構築コンポーネントを有するメッセージをトップ・レベル・リスニング・コンポーネントに送る
ように構成され、
トップ・レベル・リスニング・コンポーネントは、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントからのメッセージのバスタ・イベント・リスナを追加する
ようにさらに構成され、
バスタ・イベント・リスナは、フレーム・バスティング・コンポーネントからメッセージを受信する時に、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントからのメッセージ内で提供される実行可能コンポーネントを実行する
ように構成される
ウェブページ・フレーム拡張表示非一時的物理媒体。
１７．フレームは、ｉｆｒａｍｅである、実施形態１６に記載の媒体。
１８．メッセージは、ｐｏｓｔメッセージである、実施形態１６に記載の媒体。
１９．ノード・リスト識別子は、ノード・リスト内のｉｔｅｍインデックスである、実施形態１６に記載の媒体。
２０．拡張可能な表示ペイロードは、拡張可能な広告である、実施形態１６に記載の媒体。
２１．フレーム・エスケーピング・コンポーネントは、
少なくとも１つのプロセッサを介して、第１のフレームからのエスケープを試みなければならないかどうかを判定する
ようにさらに構成される、実施形態１６に記載の媒体。
２２．拡張可能な表示ペイロードに関連する一意フレーム識別子は、ランダムに生成される数である、実施形態１６に記載の媒体。
２３．フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、ｎａｍｅ属性を解析することによって拡張可能な表示ペイロードに関連する一意フレーム識別子を判定する
ようにさらに構成される、実施形態１６に記載の媒体。
２４．フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードを含む第１レベル・フレームに関連するソースを判定する
ようにさらに構成され、
生成された実行可能なフレーム照会コンポーネントは、
少なくとも１つのプロセッサを介して、ノード・リストから第１レベル・フレームを選択し、
少なくとも１つのプロセッサを介して、第１レベル・フレームのソースが、拡張可能な表示ペイロードを含む第１レベル・フレームに関連するソースと一致することを判定し、
少なくとも１つのプロセッサを介して、選択された第１レベル・フレームのノード・リスト識別子および拡張可能な表示ペイロードに関連する一意フレーム識別子を有するメッセージを選択された第１レベル・フレームに送る
ようにさらに構成される
実施形態１６に記載の媒体。
２５．フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、ウェブページのトップ・レベルに関連するドメインを判定する
ようにさらに構成され、
生成された実行可能なフレーム照会コンポーネントを有するトップ・レベル・リスニング・コンポーネントへのメッセージは、判定されたドメインをセットされたターゲット起点を有するｐｏｓｔメッセージである
実施形態１６に記載の媒体。
２６．フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードに関連する初期化スクリプトのソースを判定する
ようにさらに構成され、
生成された実行可能な拡張可能なペイロード再構築コンポーネントは、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードの要素を作成し、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードに関連する初期化スクリプトのソースを要素のソースにセットし、
少なくとも１つのプロセッサを介して、ウェブページのトップ・レベルに要素を追加する
ようにさらに構成される
実施形態１６に記載の媒体。
２７．生成された実行可能な拡張可能なペイロード再構築コンポーネントは、
少なくとも１つのプロセッサを介して、エスケープされた要素として要素を構成する
ようにさらに構成される
実施形態２６に記載の媒体。
２８．トップ・レベル・リスニング・コンポーネントは、
少なくとも１つのプロセッサを介して、バスタ・ドメインを識別する
ようにさらに構成され、
バスタ・イベント・リスナは、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントからのメッセージの起点を判定し、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントからのメッセージの起点が識別されたバスタ・ドメインと一致することを検証する
ようにさらに構成される
実施形態１６に記載の媒体。
２９．拡張可能な表示ペイロードは、ウェブページ内で第１のフレームの境界を超えて表示するように構成される、実施形態１６に記載の媒体。
３０．拡張可能な表示ペイロードは、マルチレベル・メニュー、メディア・プレイヤ・コントロールのセットのうちの１つを表示するために拡張するように構成される、実施形態１６に記載の媒体。
３１．  少なくとも１つのプロセッサを介して、ウェブページのトップ・レベルにトップ・レベル・リスニング・コンポーネントを提供することであって、ウェブページがロードする時に、トップ・レベル・リスニング・コンポーネントはウェブページ内の第１レベル・フレームのノード・リストを作成するように構成される、提供することと、
少なくとも１つのプロセッサを介して、フレーム・エスケーピング・コンポーネントを含む拡張可能な表示ペイロードを入手するようにウェブページ内の第１のフレームを構成することと
のためのコンポーネント・コレクション手段
を含む、プロセッサ実施されるウェブページ・フレーム拡張表示システムであって、
フレーム・エスケーピング・コンポーネントは、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードに関連する一意フレーム識別子を生成し、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントを含むフレーム・バスタ・ペイロードを入手するように構成された第２のフレームを作成し、
少なくとも１つのプロセッサを介して、トップ・レベル・リスニング・コンポーネントからのメッセージのトップ・レベル・イベント・リスナを追加する
ように構成され、
トップ・レベル・イベント・リスナは、トップ・レベル・リスニング・コンポーネントからメッセージを受信する時に、
少なくとも１つのプロセッサを介して、トップ・レベル・リスニング・コンポーネントからのメッセージ内で指定される一意フレーム識別子を判定し、
少なくとも１つのプロセッサを介して、トップ・レベル・リスニング・コンポーネントからのメッセージ内で指定される一意フレーム識別子が、生成された一意フレーム識別子と一致することを検証し、
少なくとも１つのプロセッサを介して、トップ・レベル・リスニング・コンポーネントからのメッセージ内で指定されるウェブページ内の第１レベル・フレームのノード・リスト識別子を判定し、
少なくとも１つのプロセッサを介して、判定されたノード・リスト識別子を有するメッセージをフレーム・バスティング・コンポーネントに送る
ように構成され、
フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードに関連する一意フレーム識別子を判定し、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードに関連する一意フレーム識別子を使用して、どの第１レベル・フレームが拡張可能な表示ペイロードを含むのかを判定するために、ウェブページ内の第１レベル・フレームを照会することを容易にするように構成された実行可能なフレーム照会コンポーネントを生成し、
少なくとも１つのプロセッサを介して、生成された実行可能なフレーム照会コンポーネントを有するメッセージをトップ・レベル・リスニング・コンポーネントに送り、
少なくとも１つのプロセッサを介して、フレーム・エスケーピング・コンポーネントからのメッセージのフレーム・イベント・リスナを追加する
ように構成され、
フレーム・イベント・リスナは、フレーム・エスケーピング・コンポーネントからメッセージを受信する時に
少なくとも１つのプロセッサを介して、フレーム・エスケーピング・コンポーネントからのメッセージ内で指定されるノード・リスト識別子を判定し、
少なくとも１つのプロセッサを介して、フレーム・エスケーピング・コンポーネントからのメッセージ内で指定されるノード・リスト識別子を使用してウェブページのトップ・レベルでの拡張可能な表示ペイロードの再構築を容易にするように構成された実行可能な拡張可能なペイロード再構築コンポーネントを生成し、
少なくとも１つのプロセッサを介して、生成された実行可能な拡張可能なペイロード再構築コンポーネントを有するメッセージをトップ・レベル・リスニング・コンポーネントに送る
ように構成され、
トップ・レベル・リスニング・コンポーネントは、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントからのメッセージのバスタ・イベント・リスナを追加する
ようにさらに構成され、
バスタ・イベント・リスナは、フレーム・バスティング・コンポーネントからメッセージを受信する時に、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントからのメッセージ内で提供される実行可能コンポーネントを実行する
ように構成される
プロセッサ実施されるウェブページ・フレーム拡張表示システム。
３２．フレームは、ｉｆｒａｍｅである、実施形態３１に記載のシステム。
３３．メッセージは、ｐｏｓｔメッセージである、実施形態３１に記載のシステム。
３４．ノード・リスト識別子は、ノード・リスト内のｉｔｅｍインデックスである、実施形態３１に記載のシステム。
３５．拡張可能な表示ペイロードは、拡張可能な広告である、実施形態３１に記載のシステム。
３６．フレーム・エスケーピング・コンポーネントは、
少なくとも１つのプロセッサを介して、第１のフレームからのエスケープを試みなければならないかどうかを判定する
ようにさらに構成される、実施形態３１に記載のシステム。
３７．拡張可能な表示ペイロードに関連する一意フレーム識別子は、ランダムに生成される数である、実施形態３１に記載のシステム。
３８．フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、ｎａｍｅ属性を解析することによって拡張可能な表示ペイロードに関連する一意フレーム識別子を判定する
ようにさらに構成される、実施形態３１に記載のシステム。
３９．フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードを含む第１レベル・フレームに関連するソースを判定する
ようにさらに構成され、
生成された実行可能なフレーム照会コンポーネントは、
少なくとも１つのプロセッサを介して、ノード・リストから第１レベル・フレームを選択し、
少なくとも１つのプロセッサを介して、第１レベル・フレームのソースが、拡張可能な表示ペイロードを含む第１レベル・フレームに関連するソースと一致することを判定し、
少なくとも１つのプロセッサを介して、選択された第１レベル・フレームのノード・リスト識別子および拡張可能な表示ペイロードに関連する一意フレーム識別子を有するメッセージを選択された第１レベル・フレームに送る
ようにさらに構成される
実施形態３１に記載のシステム。
４０．フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、ウェブページのトップ・レベルに関連するドメインを判定する
ようにさらに構成され、
生成された実行可能なフレーム照会コンポーネントを有するトップ・レベル・リスニング・コンポーネントへのメッセージは、判定されたドメインをセットされたターゲット起点を有するｐｏｓｔメッセージである
実施形態３１に記載のシステム。
４１．フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードに関連する初期化スクリプトのソースを判定する
ようにさらに構成され、
生成された実行可能な拡張可能なペイロード再構築コンポーネントは、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードの要素を作成し、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードに関連する初期化スクリプトのソースを要素のソースにセットし、
少なくとも１つのプロセッサを介して、ウェブページのトップ・レベルに要素を追加する
ようにさらに構成される
実施形態３１に記載のシステム。
４２．生成された実行可能な拡張可能なペイロード再構築コンポーネントは、
少なくとも１つのプロセッサを介して、エスケープされた要素として要素を構成する
ようにさらに構成される
実施形態４１に記載のシステム。
４３．トップ・レベル・リスニング・コンポーネントは、
少なくとも１つのプロセッサを介して、バスタ・ドメインを識別する
ようにさらに構成され、
バスタ・イベント・リスナは、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントからのメッセージの起点を判定し、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントからのメッセージの起点が識別されたバスタ・ドメインと一致することを検証する
ようにさらに構成される
実施形態３１に記載のシステム。
４４．拡張可能な表示ペイロードは、ウェブページ内で第１のフレームの境界を超えて表示するように構成される、実施形態３１に記載のシステム。
４５．拡張可能な表示ペイロードは、マルチレベル・メニュー、メディア・プレイヤ・コントロールのセットのうちの１つを表示するために拡張するように構成される、
実施形態３１に記載のシステム。
４６．  少なくとも１つのプロセッサを介して、ウェブページのトップ・レベルにトップ・レベル・リスニング・コンポーネントを提供することであって、ウェブページがロードする時に、トップ・レベル・リスニング・コンポーネントはウェブページ内の第１レベル・フレームのノード・リストを作成するように構成される、提供することと、
少なくとも１つのプロセッサを介して、フレーム・エスケーピング・コンポーネントを含む拡張可能な表示ペイロードを入手するようにウェブページ内の第１のフレームを構成することと
のために、プロセッサ実施されるコンポーネント・コレクション命令を実行すること
を含む、プロセッサ実施されるウェブページ・フレーム拡張表示方法であって、
フレーム・エスケーピング・コンポーネントは、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードに関連する一意フレーム識別子を生成し、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントを含むフレーム・バスタ・ペイロードを入手するように構成された第２のフレームを作成し、
少なくとも１つのプロセッサを介して、トップ・レベル・リスニング・コンポーネントからのメッセージのトップ・レベル・イベント・リスナを追加する
ように構成され、
トップ・レベル・イベント・リスナは、トップ・レベル・リスニング・コンポーネントからメッセージを受信する時に、
少なくとも１つのプロセッサを介して、トップ・レベル・リスニング・コンポーネントからのメッセージ内で指定される一意フレーム識別子を判定し、
少なくとも１つのプロセッサを介して、トップ・レベル・リスニング・コンポーネントからのメッセージ内で指定される一意フレーム識別子が、生成された一意フレーム識別子と一致することを検証し、
少なくとも１つのプロセッサを介して、トップ・レベル・リスニング・コンポーネントからのメッセージ内で指定されるウェブページ内の第１レベル・フレームのノード・リスト識別子を判定し、
少なくとも１つのプロセッサを介して、判定されたノード・リスト識別子を有するメッセージをフレーム・バスティング・コンポーネントに送る
ように構成され、
フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードに関連する一意フレーム識別子を判定し、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードに関連する一意フレーム識別子を使用して、どの第１レベル・フレームが拡張可能な表示ペイロードを含むのかを判定するために、ウェブページ内の第１レベル・フレームを照会することを容易にするように構成された実行可能なフレーム照会コンポーネントを生成し、
少なくとも１つのプロセッサを介して、生成された実行可能なフレーム照会コンポーネントを有するメッセージをトップ・レベル・リスニング・コンポーネントに送り、
少なくとも１つのプロセッサを介して、フレーム・エスケーピング・コンポーネントからのメッセージのフレーム・イベント・リスナを追加する
ように構成され、
フレーム・イベント・リスナは、フレーム・エスケーピング・コンポーネントからメッセージを受信する時に
少なくとも１つのプロセッサを介して、フレーム・エスケーピング・コンポーネントからのメッセージ内で指定されるノード・リスト識別子を判定し、
少なくとも１つのプロセッサを介して、フレーム・エスケーピング・コンポーネントからのメッセージ内で指定されるノード・リスト識別子を使用してウェブページのトップ・レベルでの拡張可能な表示ペイロードの再構築を容易にするように構成された実行可能な拡張可能なペイロード再構築コンポーネントを生成し、
少なくとも１つのプロセッサを介して、生成された実行可能な拡張可能なペイロード再構築コンポーネントを有するメッセージをトップ・レベル・リスニング・コンポーネントに送る
ように構成され、
トップ・レベル・リスニング・コンポーネントは、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントからのメッセージのバスタ・イベント・リスナを追加する
ようにさらに構成され、
バスタ・イベント・リスナは、フレーム・バスティング・コンポーネントからメッセージを受信する時に、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントからのメッセージ内で提供される実行可能コンポーネントを実行する
ように構成される
プロセッサ実施されるウェブページ・フレーム拡張表示方法。
４７．フレームは、ｉｆｒａｍｅである、実施形態４６に記載の方法。
４８．メッセージは、ｐｏｓｔメッセージである、実施形態４６に記載の方法。
４９．ノード・リスト識別子は、ノード・リスト内のｉｔｅｍインデックスである、実施形態４６に記載の方法。
５０．拡張可能な表示ペイロードは、拡張可能な広告である、実施形態４６に記載の方法。
５１．フレーム・エスケーピング・コンポーネントは、
少なくとも１つのプロセッサを介して、第１のフレームからのエスケープを試みなければならないかどうかを判定する
ようにさらに構成される、実施形態４６に記載の方法。
５２．拡張可能な表示ペイロードに関連する一意フレーム識別子は、ランダムに生成される数である、実施形態４６に記載の方法。
５３．フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、ｎａｍｅ属性を解析することによって拡張可能な表示ペイロードに関連する一意フレーム識別子を判定する
ようにさらに構成される、実施形態４６に記載の方法。
５４．フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードを含む第１レベル・フレームに関連するソースを判定する
ようにさらに構成され、
生成された実行可能なフレーム照会コンポーネントは、
少なくとも１つのプロセッサを介して、ノード・リストから第１レベル・フレームを選択し、
少なくとも１つのプロセッサを介して、第１レベル・フレームのソースが、拡張可能な表示ペイロードを含む第１レベル・フレームに関連するソースと一致することを判定し、
少なくとも１つのプロセッサを介して、選択された第１レベル・フレームのノード・リスト識別子および拡張可能な表示ペイロードに関連する一意フレーム識別子を有するメッセージを選択された第１レベル・フレームに送る
ようにさらに構成される
実施形態４６に記載の方法。
５５．フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、ウェブページのトップ・レベルに関連するドメインを判定する
ようにさらに構成され、
生成された実行可能なフレーム照会コンポーネントを有するトップ・レベル・リスニング・コンポーネントへのメッセージは、判定されたドメインをセットされたターゲット起点を有するｐｏｓｔメッセージである
実施形態４６に記載の方法。
５６．フレーム・バスティング・コンポーネントは、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードに関連する初期化スクリプトのソースを判定する
ようにさらに構成され、
生成された実行可能な拡張可能なペイロード再構築コンポーネントは、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードの要素を作成し、
少なくとも１つのプロセッサを介して、拡張可能な表示ペイロードに関連する初期化スクリプトのソースを要素のソースにセットし、
少なくとも１つのプロセッサを介して、ウェブページのトップ・レベルに要素を追加する
ようにさらに構成される
実施形態４６に記載の方法。
５７．生成された実行可能な拡張可能なペイロード再構築コンポーネントは、
少なくとも１つのプロセッサを介して、エスケープされた要素として要素を構成する
ようにさらに構成される
実施形態５６に記載の方法。
５８．トップ・レベル・リスニング・コンポーネントは、
少なくとも１つのプロセッサを介して、バスタ・ドメインを識別する
ようにさらに構成され、
バスタ・イベント・リスナは、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントからのメッセージの起点を判定し、
少なくとも１つのプロセッサを介して、フレーム・バスティング・コンポーネントからのメッセージの起点が識別されたバスタ・ドメインと一致することを検証する
ようにさらに構成される
実施形態４６に記載の方法。
５９．拡張可能な表示ペイロードは、ウェブページ内で第１のフレームの境界を超えて表示するように構成される、実施形態４６に記載の方法。
６０．拡張可能な表示ペイロードは、マルチレベル・メニュー、メディア・プレイヤ・コントロールのセットのうちの１つを表示するために拡張するように構成される、実施形態４６に記載の方法。
【０１２９】
様々な問題に対処し、当技術を進歩させるために、境界上ウェブ・コンポジタの装置、方法、およびシステムに関する本願の全体（カバー・ページ、名称、表題、技術分野、背景技術、発明の概要、図面の簡単な説明、発明を実施するための形態、特許請求の範囲、要約、図面、付録、その他を含む）は、実例として、請求される革新をその中で実践できる様々な実施形態を示す。本願の利点および特徴は、実施形態の代表的なサンプルのもののみであり、網羅的および／または排他的ではない。それらは、理解を助け、請求される原理を教示するためにのみ提示される。それらが、すべての請求される革新の代表ではないことを理解されたい。したがって、本開示のある種の態様は、本明細書では議論されなかった。その代理の実施形態が、本革新の特定の部分に関して提示されなかった場合があり、さらなる説明されない代理の実施形態が、ある部分に関して使用可能である可能性があることを、これらの代理の実施形態の否認と考えてはならない。これらの説明されない実施形態の多くが、本革新の同一の原理を組込み、他の実施形態が同等であることを了解されたい。したがって、本開示の範囲および／または趣旨から逸脱せずに、他の実施形態を利用することができ、機能的変更、論理的変更、動作的変更、組織的変更、構造的変更、および／またはトポロジ的変更を行うことができることを理解されたい。したがって、すべての例および／または実施形態は、本開示全体を通じて非限定的と考えられる。さらに、金融および／または投資の例が含まれる範囲で、そのような例は、例示のみのためのものであって、投資助言ではなく、これらを投資助言と解釈してはならない。また、本明細書で議論されない実施形態は、スペースおよび繰返しを減らすためのものであり、それ以外の点で、それらの実施形態に関して本明細書で議論される実施形態に関する推論を引き出してはならない。たとえば、プログラム・コンポーネント（コンポーネント・コレクション）、他のコンポーネント、データ・フロー順序、論理フロー順序、ならびに／または図面および／もしくは本明細書全体で説明されるすべての現在の特徴セットの任意の組合せの論理構造および／またはトポロジ的構造が、固定された動作順序および／または配置に限定されるのではなく、すべての開示される順序が、例示的であり、すべての同等物が、順序に関わりなく本開示によって企図されることを理解されたい。同様に、本開示全体を通じて開示される実施形態の説明において、方向または方位へのすべての言及は、単に、説明の便宜上のものであって、いかなる形であれ説明される実施形態の範囲を限定することは意図されていない。「より下の」、「より上の」、「水平」、「垂直」、「〜の上」、「〜の下」、「上」、「下」、「最上部」、および「最下部」などの相対的な用語ならびにその派生形（たとえば、「水平に」、「下向きに」、「上向きに」など）は、実施形態を限定すると解釈されてはならず、その代わりに、やはり、方位の説明の便宜のために提供される。これらの相対的な記述子は、説明の便宜のみのためのものであり、そうであると明示的に示されない限り、任意の実施形態が特定の方位で構成されまたは動作させられることを要求しない。「取り付けられ」、「固定され」、「接続され」、「結合され」、「相互接続され」、および類似物などの用語は、そうではないと特に説明されない限り、構造が直接にまたは介在する構造を介して間接にのいずれかでお互いに固定されまたは取り付けられる関係、ならびに可動または剛体の取付けまたは関係の両方を指す可能性がある。さらに、そのような特徴が、直列実行に限定されず、むしろ、任意の個数のスレッド、プロセス、サービス、サーバ、および／または非同期に、並列に、並行に、同時に、同期式に、および／または類似する形で実行できる類似物が、本開示によって企図されていることを理解されたい。したがって、これらの特徴の一部は、それらが単一の実施形態内に同時に存在できないという点で、相互に両立しない場合がある。同様に、一部の特徴は、本改革の１つの態様に適用可能であり、他の態様には適用不能である。さらに、本開示は、現在は請求されていない他の革新を含む。本出願人は、そのような革新を請求し、追加の出願、その継続出願、部分継続出願、分割出願、および／または類似物を出願する権利を含む、これらの現在は請求されていない革新におけるすべての権利を留保する。したがって、本開示の利点、実施形態、例、機能的態様、特徴態様、論理態様、動作態様、組織態様、構造的態様、トポロジ的態様、および／または他の態様を、特許請求の範囲によって定義される本開示に対する限定または特許請求の範囲に対する同等物に対する限定と考えてはならないことを理解されたい。ＳＢＷＣの個人ユーザおよび／または企業ユーザの特定の必要および／または特性に依存して、大量の柔軟性およびカスタマイゼーションを可能にする、データベース構成および／もしくはリレーショナル・モデル、データ型、データ伝送フレームワークおよび／もしくはネットワーク・フレームワーク、構文構造、ならびに／またはＳＢＷＣの同様の様々な実施形態が実施され得ることを理解されたい。たとえば、ＳＢＷＣの諸態様は、任意のウェブ・フレーム拡張（たとえば、初期フレーム境界を超えるダッシュボード／ウィジェット拡張）のために適合され得る。ＳＢＷＣの様々な実施形態および議論が、ウェブ・フレームおよびグラフィック合成を含んだが、本明細書で説明される実施形態が、様々な他の応用例および／または実施態様のためにたやすく構成され、かつ／またはカスタマイズされ得ることを理解されたい。
【図１Ａ】
0006944170.tif 000027
【図１Ｂ】
0006944170.tif 000028
【図２】
0006944170.tif 000029
【図３】
0006944170.tif 000030
【図４】
0006944170.tif 000031
【図５】
0006944170.tif 000032
【図６】
0006944170.tif 000033
【図７】
0006944170.tif 000034
【図８】
0006944170.tif 000035
【図９】
0006944170.tif 000036