(57)【特許請求の範囲】
【請求項１】
ウェブページ利用情報（利用情報）をトラッキングするために複数のウェブページを自動的に構成する、計算装置によって実行される方法であって、
前記利用情報のトラッキングをするためのタグ構造を挿入するべきウェブページセットを決定し、当該ウェブページセット内の複数のウェブページを前記計算装置によって解析するステップと、
前記ウェブページセット内ののウェブページそれぞれに対し、
（１）異なる方法によって埋め込まれたタグを含む、前記ウェブページ内に現在存在しているタグに対して前記ウェブページを検査して、それらのタグを更新又は削除するステップと、
（２）異なるウェブページが異なるタグ構造を埋め込まれ得るように、解析された前記ウェブページに埋め込むことの出来る複数のタグ構造から自動的にタグ構造を識別するステップと、
（３）前記解析に基づいて、前記タグ構造を挿入するための挿入点を自動的に特定するステップであって、前記特定された挿入点への前記タグ構造の自動的挿入が、前記ウェブページセット内の何れのウェブページの外観も変更すること無しに完了するものと、
（４）前記タグ構造を前記挿入点に自動的に埋め込むステップであって、前記ウェブページに関する利用情報がトラッキングされ得るものと、
を含むことを特徴とする方法。
【請求項２】
前記複数のウェブページを解析するステップが、回復不可能なＨＴＭＬエラーを含むか決定するための１つ以上のドキュメントの解析を含んでいて、エラーを含む場合、
前記回復不可能なエラーの指示を除外ルールとして追加するステップと、
タグを破棄するステップと、
の内の１つ以上を実行することを特徴とする請求項１記載の方法。
【請求項３】
前記タグ構造が、開始タグマーカー及び終了タグマーカーによって区切られたコード部分を含むことを特徴とする請求項１記載の方法。
【請求項４】
前記タグ構造が、ユーザー入力又は設定に基づくパラメーターを受信することによって構成し得ることを特徴とする請求項１記載の方法。
【請求項５】
前記タグ構造が、様々なウェブサイトトポロジーとのユーザー対話の試行実験をするためのものであって、前記試行実験が、
Ａ／Ｂ検査と、
多変量検査と、
の１つ以上を含むことと、を特徴とする請求項４記載の方法。
【請求項６】
前記タグ構造を自動的に埋め込むステップが、アクセス可能なリポジトリにストアされた１組のルールに支配されることを特徴とする請求項１記載の方法。
【請求項７】
更に、前記埋め込まれたタグ構造が、前記タグ構造を埋め込む前に、その機能に関して前記ウェブページに望まれない変化をもたらさなかったことの検証を提供するステップを含む請求項１記載の方法。
【請求項８】
更に、
ユーザーインターフェースにデータを提供することによって前記埋め込まれるタグ構造の変更を可能にするユーザーインターフェースを提示するステップであって、それによってユーザーが、ウェブページのソースコードを編集する必要がないものと、
前記ユーザーインターフェースを介した入力の受信に付随して前記埋め込まれるタグ構造を自動的に変更するステップと、を含む請求項１記載の方法。
【請求項９】
更に、ユーザー設定情報を収集するステップと、将来、再収集するためのリポジトリにそれをストアするステップと、を含む請求項１記載の方法。
【請求項１０】
更に、
前記ウェブページに実行された変更を記述する変更情報をストアするステップと、
前記変更情報を利用することによって実行された任意の変更を逆戻りするアンドゥプロセスを実行するステップと、を含む請求項１記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ウェブシステムにおけるＨＴＭＬドキュメントに関し、具体的には、ＨＴＭＬドキュメント編集の自動化に関する。
【背景技術】
【０００２】
ウェブサイトは、数百又は数千ものページ／ドキュメントから構成され得る。ユーザーが、ウェブページセット全体を検査し、ウェブページの外観に影響しないコードを挿入するための挿入点を決定し、適切なタグを選択し、追加すること、及び追加されたタグを抽出し削除することは、困難であった。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
本発明の目的は、ユーザーがウェブページのソースコードを編集する必要なくウェブページセットを編集するための効率的かつ自動的な方法を提供することである。
【課題を解決するための手段】
【０００４】
本発明は、以下の請求項によって定義されているが、要約すると、本発明の実施形態は、ドキュメントセット、典型的にはウェブページセットを自動的に編集するシステム及び方法を含む。われわれは、以下に「編集（instrumenting）」をより詳細に説明するが、要約すると、（電子商取引購買プロセスの一部のウェブページセット、又はウェブサイトのレイアウトに関する実験的変動のいくつかのうち１つのような）ドキュメント又は特定の関連するドキュメントセットを−カスタマイズされた実行コード、コンテンツ、又は広告の挿入を介し−変更するプロセスを示していて、そのドキュメントに対しエンドユーザーによって実行される動作が、記録、解析、支払い、及びその他のビジネス目的のために送信可能なものである。本発明の実施形態は、数百又は数千ページのようなどのようなページ数も自動的に編集し得る。
【０００５】
本発明の例示的な別の態様は、計算機を用いたコード挿入点の検証、タグ付け（コード挿入）の影響の評価、ユーザー入力又は設定（プロフィールｉｄ、ページのエイリアス／ニックネーム付け、イベント、電子商取引変数などを提供するような技術を含む）に基づいたタグパラメーター化の（変更を単に元に戻すことを可能にする）編集インテグリティを維持するセントラルタグリポジトリ（例えば１４２）の使用、指定されたドキュメントセット全体に適用されるＡ／Ｂ及び多変量検査に対する編集／タグ、の能力、及びページに対する負の影響を最小にする（外観は変化するが機能しない）広告コンテンツブロックのページへの挿入を実行すること、を含む。この態様の部分的なリストを、別の態様が存在していないことの指示として理解するべきでない。
【０００６】
本発明の実施形態をこの開示の一部を形成する図面を参照して以下詳細に説明し、本明細書に参照によって組み込む。
【図面の簡単な説明】
【０００７】
【図１Ａ】本発明の実施形態を実施するために適切な例示的動作環境を示す。
【図１Ｂ】本発明の実施形態によるウェブページセットに埋め込まれる例示的プログラムコードを示す。
【図１Ｃ】本発明の実施形態によるウェブページセットに埋め込まれる例示的プログラムコードを示す。
【図１Ｄ】本発明の実施形態によるウェブページセットに埋め込まれる例示的プログラムコードを示す。
【図１Ｅ】本発明の実施形態によるウェブページセットに埋め込まれる例示的プログラムコードを示す。
【図２】本発明の実施形態による「開始前の挿入」ルールの例示的な実行を示す。
【図３】本発明の実施形態による「開始後の挿入」ルールの例示的な実行を示す。
【図４】本発明の実施形態による「終了前挿入」ルールの例示的な実行を示す。
【図５】本発明の実施形態による「終了後挿入」ルールの例示的な実行を示す。
【図６】本発明の実施形態によるプログラムコードに語彙解析プログラムを適用する例示的なステミングの結果を示す。
【図７Ａ】本発明の実施形態による例示的なマーキングスキームを示す。
【図７Ｂ】本発明の実施形態による例示的なマーキングスキームを示す。
【図８Ａ】本発明の実施形態による例示的なユーザーインターフェースのスクリーンショットを示す。
【図８Ｂ】本発明の実施形態による例示的なユーザーインターフェースのスクリーンショットを示す。
【図８Ｃ】本発明の実施形態による例示的なユーザーインターフェースのスクリーンショットを示す。
【図８Ｄ】本発明の実施形態による例示的なユーザーインターフェースのスクリーンショットを示す。
【図８Ｅ】本発明の実施形態による例示的なユーザーインターフェースのスクリーンショットを示す。
【図８Ｆ】本発明の実施形態による例示的なユーザーインターフェースのスクリーンショットを示す。
【図８Ｇ】本発明の実施形態による例示的なユーザーインターフェースのスクリーンショットを示す。
【図８Ｈ】本発明の実施形態による例示的なユーザーインターフェースのスクリーンショットを示す。
【図８Ｉ】本発明の実施形態による例示的なユーザーインターフェースのスクリーンショットを示す。
【図８Ｊ】本発明の実施形態による例示的なユーザーインターフェースのスクリーンショットを示す。
【図８Ｋ】本発明の実施形態による例示的なユーザーインターフェースのスクリーンショットを示す。
【図８Ｌ】本発明の実施形態による例示的なユーザーインターフェースのスクリーンショットを示す。
【図８Ｍ】本発明の実施形態による例示的なユーザーインターフェースのスクリーンショットを示す。
【図９】本発明の実施形態によるカスタムコンテンツを埋め込むための例示的方法を示す。
【図１０】本発明の実施形態によるトラッキングスクリプトをインストールする別の実施形態による第２の方法を示す。
【発明を実施するための形態】
【０００８】
簡単に述べたように、本発明の実施形態の新しい態様の１つは、ウェブ解析タグをドキュメント（テキストファイル、動的変更可能ファイルなどを含み得るウェブページ）に自動的に挿入する機能であって、それによって、それらのタグを編集されるべきページそれぞれに挿入するユーザー経験を簡素化する。一実施形態において、タグは、区切られたＨＴＭＬ及び／又は、ウェブページを編集するスクリプト（例えば、Ｊａｖａスクリプトのような）形式を呈していて、ウェブページに関連するウェブページ利用情報をトラッキング可能にする。当業者の中には、編集の概念を取得するために様々な用語を使用する人もいる。例えば、「ウェブ解析」は、いくつかのウェブ解析プロバイダーによって、時々「ウェブサイト編集」と呼ばれる。例示的なウェブ解析プロバイダーは、Ｏｍｎｉｔｕｒｅ  Ｉｎｃ．（ＮＡＳＤＡＱ：ＯＭＴＲ，ｏｍｎｉｔｕｒｅ．ｃｏｍも参照）である。Ｏｍｎｉｔｕｒｅの監視サービスなど多くの監視サービスが存在する。監視サービスの実行は、この発明によって対処される重要な課題ではない。むしろ本発明の態様は、ウェブサイト又はウェブページセットに監視される機能を装備することに関係している。ホームセキュリティは、セキュリティシステムが導入されるまで監視され得ない。多くの業者は、監視サービスを提供しているが、われわれの関心の１つは、自動的な方法であって、セキュリティシステム自体の導入と同等である。
【０００９】
ウェブサイト編集は、ウェブ解析に関連するスクリプトをウェブページに挿入することを含んでいる。この技法は、ウェブページに挿入されるものが、ＨＴＭＬタグによって区切られたコードの一部であるので、本明細書において、様々な「タグ付け」として参照される。タグ付けは、ウェブ解析を挿入することに限定されず、コンテンツ広告を同様に埋め込むことをも含み得る。
【００１０】
かくして、本発明の一態様は、ユーザーがウェブページのソースコードを編集する必要なくウェブページセットを編集するための効率的で自動的な方法を提供する。しばしばウェブページがウェブサイトを作リ上げるが、いつもそうではない。かくして、われわれがウェブページを「編集」又「編集すること」を論述するとき、われわれは、監視されるそのウェブページの利用情報機能をウェブページに装備することを参照していることを意味する。例示的なウェブページ利用情報は、訪問イベント（人々（１２４）がウェブページと対話する方法）を含むウェブサイト訪問者（１２４）の振舞いに関する情報を含んでいて、特に、ウェブページ上でクリックされたオブジェクトに関する情報、表示されるドキュメント、表示されるページ、ウェブページからダウンロードされるダウンロード情報、ウェブページ上で起動されるコントロール情報、ウェブページ上でユーザーによって対話される項目情報、ウェブページを介しレンダリングされるメディアオブジェクト情報のような情報を含み得る。これによってウェブサイトオーナーは、それらのウェブサイト利用の様々な態様を詳述するレポート及びその他提示の表示が可能になる。
【００１１】
本発明の実施形態をコンテンツプロバイダーの文脈で実行することは、彼らの広告をページに埋め込み、彼らの利用可能性をトラッキングすることが望まれるために、商用プロバイダーに適用可能である。
【００１２】
ここで図１を見ると、番号（１１０）によって一般に参照されている本発明の実施形態を実行するために適切な例示的動作環境が提供されている。様々な装置が例示的に示されているように、ネットワーク（１１２）を介し直接的又は間接的に相互接続される。ウェブサーバー（１１４）は、様々なウェブページから構成されるウェブサイト（１１６）をホスティングする。ウェブページすべてを示しているわけではない。ウェブページの一部が番号（１１８）によって参照されている。以下に、より詳細に説明されるように、これらのいくつかのウェブページのソースコードが変更され、利用情報が、特にトラッキングされ得る。
【００１３】
これらの変更は、参照番号（１２０）を有するクラウドによって示されている。すなわち、クラウド（１２０）は、利用情報をトラッキングし、広告コンテンツを提供するような様々な機能的態様を実現可能にする、ウェブページ（１１８）に追加されるプログラムコード（タグ構造）を参照している。プログラムコード／タグ（１２０）の説明に役立つ実例が、図１Ｂ〜１Ｅに見出される。実施形態の中には、編集コード（１２０）が、ウェブページの利用のトラッキングを実行するものもある。別の実施形態において、編集コード（１２０）は、広告コンテンツを提示することを実行する。
【００１４】
図１Ｂ〜１Ｅを手短に見ると、われわれは、タグ又は埋め込み可能カスタマイズコンテンツの例を単に提示している。構文及び形式は、明らかに変更し得る。図１Ｂのボックス（１６０）は、ウェブ解析タグの第１の例を示している。図１Ｃのボックス（１６２）は、別の例を示している。図１Ｄは、ソース指示（１６４）、タイプ指示（１６６）、ユーザー識別子（１６８）、トラッキング参照（１７０）、この場合、識別子（１６８）に関連付けられたタイプ指示（１７２）を例示していて、より抽象化された構文を示している。これらは、唯一のタイプのタグでなくて例である。図１Ｅは、埋め込まれるオブジェクトの視覚情報を提供する広告に関連する例示的なタグを示している。
【００１５】
また、以下、より詳細に説明されるように、一実施形態において、ウェブサーバー（１１４）は、ウェブコンテンツをまとめて変更する通知クライアント（１２２）を含むように機能が向上され得、ウェブページが要求されたとき、それがビューアー（１２４）にリアルタイムに提示されたときに存在しているコード（１２０）を含むように変更される。単純化のためにわれわれは、ウェブページすべてが実際に変更されるわけではない場合であり得ても、参照番号（１１８）によってウェブページ（１１８）を参照する。すなわち、場合によっては、ウェブページの一部分だけが変更される。
【００１６】
本発明の実施形態の例示を支援するために、ウェブサイト（１１６）が編集されるものと仮定する。すなわち、ウェブページ（１１８）は、埋め込みコンテンツ（１２０）を埋め込まれることになる。本発明のほとんどは、ウェブページの監視を実行するプログラムコード（１２０）の挿入又は埋め込みを中心に展開する。ウェブサイトは、数百又は数千ものページ／ドキュメントから構成され得る。本発明の実施形態は、ウェブページセット全体を検査し、ウェブサイト上のウェブページの決定された挿入点に外観に影響しないコード（１２０）を挿入するための挿入点を知的に決定し、適切なタグを選択し、それを挿入するための自動処理を可能にする。
【００１７】
これを実行するためにユーザーは、一実施形態において、ネットワークブラウザー（１２８）を実行する機能を有するクライアントマシン（１２６）を利用する。それは、ユーザーがウェブサイトを編集し、本発明のそのようなユーザーをウェブサイト訪問者であるウェブサイトビューアー（１２４）と区別するために使用する例示的な装置であるので、われわれはクライアントマシン（１２６）をユーザー（１２６）として参照する。ネットワークブラウザー（１２８）は、Ｆｉｒｅｆｏｘ、Ｓａｆａｒｉ、Ｏｐｅｒａ、Ｍｏｚｉｌｌａ、Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒのようなインターネットブラウザーであり得る。クライアントサイドアプリケーション（１３０）は、一実施形態において、ブラウザー（１２８）を介し計算装置（１２６）上にユーザーインターフェース（１３２）を提示する。一実施形態において、ユーザーインターフェース（１３２）は、番号（１３４）によって一般に参照される様々な画面及びコントロールを含む。
【００１８】
クライアントアプリケーション（１３０）は、一実施形態において、ウェブベースのクライアントアプリケーションである。例えば、クライアントアプリケーション（１３０）は、ＡｃｔｉｖｅＸコントロール形式又は同様の形式を呈し得る。別の実施形態において、それは、ウェブサイトを作成又は管理するために使用されるウェブオーサリングツールのようなローカルソフトウェアアプリケーションを補完する単独で実行可能か又はプラグイン／アドインである。一実施形態において、クライアントアプリケーション（１３０）は、より容易にそれを参照することを支援するために、編集サーバーとして参照するサーバー（１３８）上で実行するサーバーサイドアプリケーション（１３６）と協調する。当然のこととして、それはコンピューター、ラップトップのような様々な計算装置形式を呈し得る。編集サーバー（１３８）は、本明細書に説明される様々な機能を実行する任意の計算装置であり得る。実施形態の中には、サーバー（１３８）が、リアルタイムにアクセス又はダウンロードされ導入されたクライアントアプリケーション（１３０）を利用可能な、メモリーを含むものもある。このメモリーは、サーバー（１３８）に関連付けられている必要はなく、ユーザー（１２６）によってアクセス可能な別の場所に存在し得る。
【００１９】
一実施形態において、クライアントアプリケーション（１３０）は、ウェブサイト（１１６）を編集するサーバーサイドアプリケーション（１３６）と一緒に作動する。別の実施形態において、クライアントアプリケーション（１３０）は、ウェブサイト（１１６）を編集するウェブサーバー（１１４）と直接に機能し得る。更に別の実施形態において、クライアントアプリケーション（１３０）は、ウェブページセットに対するアクセス手段を有する場合、それらを自立的に編集し得る。対話レベルの変更は、ウェブサイト（１１６）が、その編集が更新されているかと比べて初めて編集されているか否か、又はウェブページ（１１８）の一部だけが変更されているかなど、状況に関する関数であり得る。別の実施形態において、編集サーバー（１３８）は、タグリポジトリ（１４０）に対するアクセスを提供し、ウェブページ（１１８）に追加され得るタグ又はタグに関する情報をストアする。前述したように、用語「タグ」は、ＨＴＭＬタグによって区切られているウェブページに埋め込まれるコード部分を参照している。一般に、タグはスクリプト形式を呈する。タグが様々な形式を呈し得るので例示的タグ（１２０）を図１Ｂ〜１Ｅに示す。これらのタグは、（第三者リポジトリであり得る）リポジトリ（１４０）にストアされる必要はない。
【００２０】
参照番号（１４２）は、本発明の態様の説明を支援するために、タグリポジトリ（１４０）中の特定のタグを参照している。かくして、場合によってプログラムコード（１２０）は、タグ（１４２）と同一である。われわれは、用語「特定タグ」を使用しているが、１つ以上のウェブページ（１１８）に挿入されるコード部分の参照を意味するためだけにそれを使用する。すなわち、タグ（１４２）は、異なるウェブページに対してはその意図が全く異なる。しかしながら、それを参照番号に割り当てることによって、本発明の実施形態の異なる態様の説明を支援するだろう。参照番号（１４２）は、ウェブページに追加される様々な利用情報のトラッキング又はコンテンツの提示を可能にするコード部分を説明するための、当技術分野において使用される別の用語であって、前述したような様々な「ウェブ解析」又は「スクリプト」を参照するためにも使用される。
【００２１】
単にウェブ解析を埋め込む他に、本発明は、広告コンテンツを公開するコードも埋め込み得る。一実施形態において、コンテンツプロバイダー（１４４）は、広告及びその他のコンテンツ（１４６）を提供する。参照番号（１４８）は、ウェブページ（１１８）に組み込まれ得るコンテンツタグ又は実際のコンテンツを示す。コンテンツタグ（１４８）は、場合によって、タグリポジトリ（１４０）に格納され得る。例示的なコンテンツタグを図１Ｅに示す。参照のために図的に示されているが、タグリポジトリ（１４０）は、編集サーバー（１３８）内に常駐し得るか又は編集サーバーの一部であり得る。同様に、広告コンテンツ及びその他の（１４６）コンテンツは、番号（１４４）のコンテンツプロバイダーによって参照される同一ハードウェアの一部を形成し得る。
【００２２】
ウェブサイトが編集された後、監視サービス（１５０）は、ウェブページ（１１８）に関連する利用情報を監視し得る。述べたように、例示的なウェブページの利用情報は、ウェブページ訪問、ウェブページ上でクリックされたオブジェクト、ウェブサイトにおいて表示されるドキュメント、ウェブページからダウンロードされたダウンロード、ウェブページ上で起動されたコントロール、ウェブページ上のユーザーによる対話項目、ウェブページを介しレンダリングされたオブジェクトなどの情報を含む。ダウンロードされ得るダウンロードの例は多数であり得、そのいくつかは、ＰＤＦファイル（様式、製品マニュアル）、ゲーム又はその他のアプリケーション用インストーラー、着信音、ＭＰ３ソング及びＷＭＡソングのようなミュージックファイル、スクリーンセーバーアプリケーション、「壁紙」背景画像、ソフトウェアアプリケーション全て、及びダウンロードされ得るその他を含む。
【００２３】
明らかに、前述したリストは、ウェブ解析プログラムが提供し得る簡単な情報概要に過ぎない。ここで我々は、様々なコンポーネントのいくつかの態様をより詳細に論述する。
【００２４】
述べたように、クライアントアプリケーション（１３０）は、異なるレベルの機能性を提供し得る。一実施形態において、それは、多くの場合、ウェブページであるドキュメントにタグを挿入する。実施形態の中には、これらのウェブページが、ローカル、すなわち、クライアント装置（１２６）又はクライアント装置（１２６）に接続されるか、又は（示されていない）ネットワークアドレス付けられた記憶装置のような記憶装置にストアされるものもある。一実施形態において、これらのローカルウェブページは、アプリケーション（１３０）によって変更され得、その後、ウェブサーバー（１１４）にアップロードされ得る。別の実施形態において、アプリケーション（１３０）は、ウェブページ（１１８）と直接に対話し、それらをウェブサーバー（１１４）上で変更する。更に別の実施形態において、示されていないが、別のリモートディレクトリ上に配置されるシャドウファイル又は検査ファイルが、アプリケーション（１３０）によって変更され得、再び単独で作動するか又はサーバーサイドアプリケーション（１３６）と協調する。更に別の例示的な実施形態において、タグ付けられるコンテンツは、（ウェブサーバー（１１４）のメモリーのような）メモリーに常駐し得、ウェブページ（１１８）がまとめて変更され得る。述べたように、ウェブページ（１１８）すべてが編集の目的である必要はない。編集しているウェブサイト全体、選択されたディレクトリ、選択されたファイル、1つの単一ファイル、いくつかのページ上のＨＴＭＬの自動更新エレメント、１つのページ上の単一ＨＴＭＬエレメントのようなオプションも利用可能である。
【００２５】
クライアントアプリケーション（１３０）は、様々な目的を果し得る。例えば、第１の例示的な目的は、タグの挿入を含む。タグ付けコード（又は単に「タグ」）（１２０）が、変更されるウェブページ（１１８）に埋め込まれる。一実施形態において、タグは所定のタグ付けルールセットに一致するように生じ、実施形態の中には、ルールセットは、編集サーバー（１３８）上に常駐するものや、別の実施形態において、タグリポジトリ（１４０）上か又は（クライアントアプリケーション（１３０）が、ルールが使用される場合、その位置を知っている限り）ウェブサーバー（１１４）上に常駐する。これらのルールセットは、番号（１５２）によって例示的に参照され、タグリポジトリ（１４０）に例示的に示される。挿入されるタグ（１２０）は、一実施形態において、スクリプトを構成し、スクリプト言語のプログラムのコードから構成される。例示的なスクリプト言語は、ＪａｖａＳｃｒｉｐｔである。
【００２６】
タグコード（１２０）は、一実施形態において、検出及び置換のような動作を簡素化するために、コメント又はマーカーの間に挿入される。これは、本発明の実施形態すべての要件ではない。実施形態の中には、マーカーが含まれ得ないものもある。しかしながら、別の実施形態においては、マーカーが含まれていて、ページが既に編集されているか又はエラーに関してページを点検するか、どちらかを決定するタスクがより容易に実行される。タグ検出のプロセスは、ウェブページが既にタグ付けされたか否か検出するために、使用される。タグ付けは、手動によるか、別のツール、又は本明細書に記載されているような方法によって実行され得る。この態様の目的は、柔軟性であって、予想されているものとそれが文字毎に厳密に同一でなくても、タグ検出を試行することである。
【００２７】
タグの削除プロセスは、ウェブページ（１１８）に入力されているタグ（１２０）の削除を含む。
【００２８】
タグの置換によって、タグ（１２０）が別のタグに置換され得る。これが望まれる別の理由がある。ページが、以前のバージョンのタグ付けルール（１５２）を用いてタグ付けされていて、それが、より新しいバージョンのタグ付けルールと一致するタグ付けに更新するように望まれる。あるいはまた、ユーザー（１２６）は、所与のページが異なって編集される必要があることを決定し得る。ユーザー（１２６）は、その後再び、埋め込みコード（１２０）を作成するいくつかのパラメーター値を変更することを望み得る。実施形態の中には、置換動作が削除に続く挿入として実行されるものもある。
【００２９】
タグの無効化は、いくつかのタグに関連付けられている機能性を除去するプロセスを示す。追加されているタグを手動で抽出して削除することは、困難であり得る。かくして、タグの無効化によってこれらのタグが利用不可になる。一実施形態において、無効化されるタグは、コメントアウトされる。
【００３０】
ページの検証によって、タグ付け動作の前後の双方でページが辞書的に有効であることを検証できる。すなわち、本発明のこの態様によって、埋め込みコンテンツ（１２０）が、それがあるべき方法で作動することを検証可能になる。実施形態の中には、このプロセスによって、ＪａｖａＳｃｒｉｐｔ又はその他のコードが、そのタグ付け動作によって壊れなかったことを検証できるものもある。
【００３１】
異なる多くのタイプのウェブページ（１１８）が、本発明の様々な実施形態に関連して使用され得る。例えば、利用可能なＨＴＭＬドキュメント又は致命的なＨＴＭＬエラーを有さないドキュメントが編集され得る。実施形態の中には、ＡＳＰ  ＡＳＰ．ｎｅｔ、ＪＳＰ、及びＰＨＰのような動的ページも使用され得るものもある。増大した検査レベルを保証し得るか又はどんなタグ挿入も場合によっては保証し得ない例示的なエラーの例は、ドキュメントコンテンツがメタタグ中のコードページと一致しない、ドキュメントが有効なＵＴＦ８ドキュメントでない、ドキュメントが有効なＵＴＦ１６ドキュメントでない、ドキュメントが無効な文字（「０」文字など）を含む、ドキュメントが１つ以上の＜ＨＴＭＬ＞タグを含む、ドキュメントが１つ以上の＜／ＨＴＭＬ＞タグを含む、＜／ＨＴＭＬ＞タグが＜ＨＴＭＬ＞タグの前で配置されている、ドキュメントが＜／ＨＴＭＬ＞タグを含んでいない、ドキュメントが＜／ＨＴＭＬ＞タグに対応する所定の＜ＨＴＭＬ＞タグを含まない、ドキュメントが１つ以上の＜ＨＥＡＤ＞タグを含む、ドキュメントが１つ以上の＜／ＨＥＡＤ＞タグを含む、ドキュメントが＜／ＨＥＡＤ＞タグを含んでいない、＜／ＨＥＡＤ＞タグが＜ＨＥＡＤ＞タグの前に配置されている、ドキュメントが＜ＢＯＤＹ＞タグを含んでいない、ドキュメントが１つ以上の＜ＢＯＤＹ＞タグを含む、ドキュメントが１つ以上の＜／ＢＯＤＹ＞タグを含む、＜／ＢＯＤＹ＞タグが＜ＢＯＤＹ＞タグの前に配置されている、＜／ＢＯＤＹ＞タグが＜ＢＯＤＹ／＞タグの後に出現する、＜ＢＯＤＹ＞タグが＜ＨＴＭＬ＞タグの前に出現する、＜ＢＯＤＹ＞タグが＜ＨＥＡＤ＞タグの前に出現する、コメントが閉じられていない、＜／ＨＴＭＬ＞タグが＜／ＢＯＤＹ＞タグの前に出現する、＜ＢＯＤＹ＞タグが＜／ＨＥＡＤ＞タグ前に出現する、＜／ＢＯＤＹ＞が見つからない、終了マーカーが開始マーカーを有さずに見つかった、開始マーカーが開始マーカーの後に見つかった、重複したｉｄが見つかった、及び／又はドキュメントが認識されない文字セットである、状況を含む。
【００３２】
タグ付けルール（１５２）は、使用されるルールが任意に選択された場合に、ページに適用されるべきテキストの検出、挿入、又は置換、変更、無効化などの動作を定義している。実施形態の中には、タグ付けルール（１５２）がタグリポジトリ（１４０）に常駐し得るものもある。ウェブサイトを編集するために、ユーザー（１２６）によって使用される異なる製品に対するルールセットを含むタグ付けライブラリが、開発され得る。そのような実施形態において、（例えば監視サービスプロバイダーによって提供される製品のような）異なる製品及び同一製品の異なるバージョンに対するタグ付けルールライブラリが一実施形態において中央の場所にストアされ、配布され得る。述べたように、例示的な場所は、タグリポジトリ（１４０）、編集サーバー（１３８）、又はウェブサーバー（１１４）さえも含む。これらのルール（１５２）は、ユーザーインターフェース（１３２）を介しクライアントにロードされ、提示され得る。それらは、ユーザーの選択も埋め込み得る。この態様は、この出願に伴って情報開示の説明書（Ｉｎｆｏｒｍａｔｉｏｎ  Ｄｉｓｃｌｏｓｕｒｅ  Ｓｔａｔｅｍｅｎｔ）に列記されているＰｅｒｌスクリプトのように、＜／ＢＯＤＹ＞タグの直前など固定した場所にコードを盲目的に挿入する任意の技術に対して柔軟性及び相違点を提供する。かくしてユーザー選択の結果として、検出／置換／挿入の異なるルールセットが、ウェブサイト（１１６）のページそれぞれに適用され得る。ウェブページコンテンツと一緒にこのルールセット（１５２）は、クライアントアプリケーション（１３０）に対し、入力データを提供する。
【００３３】
実施形態の中には挿入ルールが、挿入点、挿入位置、挿入される文字列、及び挿入後のページ内のタグを容易に検出するために使用され得るルール識別子を含むものもある。挿入点に関して本発明の実施形態は、編集コード（１２０）用の挿入点が、タグの名前（例えば、＜ＢＯＤＹ＞）又はタグに関連付けられた属性「ｉｄ」の値のどちらか一方によって識別され得ることを仮定している。あるいはまた、最初又は最後のタグは、ウェブページ（１１８）に存在する名前と同一視され得る。より複雑な挿入シナリオは、クライアントアプリケーション（１３０）において実行し、編集されるウェブページ（１１８）のドキュメント・オブジェクト・モデルにアクセスするブートストラップコードを用いて動的に処理され得る。ドキュメント・オブジェクト・モデル（ＤＯＭ）は、ＨＴＭＬ及びＸＭＬドキュメント用ＡＰＩである。それは、ドキュメント構造の表現を提供し、そのコンテンツ及び視覚的な表示の変更を可能にする。実質的にそれが、ウェブページをスクリプト言語又はプログラミング言語に接続する。
【００３４】
挿入位置に関して実施形態の中には、挿入ルール（１５２）が、指定されたタグの前、内部、又は後にユーザー（１２６）がテキストを挿入可能にするものもある。別の実施形態において、デフォルトルールが選択され得、ユーザーは、それを開始後、本発明と対話する必要がない。更に別の実施形態において、ユーザーが選択し得る提案が、実行され得る。例えば、ユーザーに公開され得る４つの例示的な選択は、「開始前挿入」、「開始後挿入」、「終了前挿入」、及び「終了後挿入」を含む。われわれは、それぞれの例を提供する。
【００３５】
「開始前挿入。」われわれは、図２を参照し「開始前挿入」ルールを説明する。示されているように、イニシャルコードセグメント（２１０）は、結果（２１４）を生み出すための例示的形式（２１２）を呈し得るルールの支配下にある。コード部分（２１４）において確認され得るように、タグ（２１６）は、参照番号（２１８）によって示されるＨＴＭＬソースコード本体の開始前に挿入される。
【００３６】
「開始後挿入」ルールを、図３を参照し説明する。図３を見ると、イニシャルコード部分（３１０）は、参照番号（３１２）によって示される、結果（３１４）を生み出すための例示的な形式を呈し得るルールの支配下にある。確認され得るように、タグ（３１６）は、本体タグ（３１８）及び最初の＜ｄｉｖ＞タグ（３２０）の後に挿入される。
【００３７】
「終了前挿入」ルールの例示的実装を図４を参照し説明する。ここで図４を見ると、イニシャルコード部分（４１０）は、結果（４１４）を生むために示される例示的な書式を有するルール（４１２）の支配下にある。例示として結果（４１４）は、タグ（４１６）が関連する、その後者を番号（４１８）によって示す、ＨＴＭＬの＜ＢＯＤＹ＞と＜／ＢＯＤＹ＞タグによって記述されるＨＴＭＬソースコード本体部分の終了前に出現することを示している。
【００３８】
「終了後挿入」ルールの例示的な実装が、図５を参照し説明されていて、イニシャルコード部分（５１０）は、結果（５１４）を生み出すための、示されている例示的な書式を含むルール（５１２）の支配下にある。結果（５１４）中に確認され得るように、タグ（５１６）は、本体タグ（５１８）終了の後に挿入される。
【００３９】
通常、挿入タグの場合、挿入点は、タグ名及び任意に「ｉｄ」属性値によって定義される。実施形態の中には、かくしてタグそれぞれのその他の「ｉｄ」でない属性すべてが、ＨＴＭＬタグ及び＜ｓｃｒｉｐｔ＞タグ内部のリテラルコンテンツと同様に捨てられるものもある。
【００４０】
トークン列を生ずるために語彙解析プログラムが利用され得る。語彙解析プログラムは、入力としてＨＴＭＬテキストを受信し、開始タグ、終了タグ、属性名、属性値、コメントなどの検出に対応するトークン列を提供する。語彙解析プログラムは、クライアントアプリケーション（１３０）又はサーバーサイドアプリケーション（１３６）の一部を形成し得る。図６を参照すると、イニシャルコード部分（６１０）を語彙解析プログラム（６１２）に適用した結果をボックス（６１４）に示している。開始タグすべてが終了していることなどページがシンタクス上、正しいことを検証することは必要ない。むしろ、本発明の実施形態は、所与の名前を有するタグ名を待っている。それが見つかったとき、開始タグ及び終了タグ、及び存在する場合に「ｉｄ」属性の位置情報と一緒にそれは、待ち行列に挿入される。構文解析の終了時、指定されたルールを満たす挿入点が存在するかの決定が実行され得る。タグが見つからなかった場合、挿入は、一実施形態において、失敗する。さもなければ、タグが挿入される対象位置として、ドキュメント内の正確な位置は、知られている。この正確な位置は、「挿入」関数にパラメーターの１つとして渡され得る。
【００４１】
「挿入」関数に対する別のパラメーターは、挿入コード（１２０）用のマーカーを記述するために使用され得る「挿入ルール識別」パラメーターである。この機能性は、ユーザーが、別のものに代わって１つの編集プロバイダーを選択するか、又はＡ／Ｂ検査を実行し得るために古いカスタムスクリプトバージョンを自動的に更新するために有用であり得る。Ａ／Ｂ検査は、ウェブサイトトポロジー及び対話の実験及び変更を実行する一態様をわれわれが説明するために使用する、例えば、オプション双方の比較の影響を評価するために、第１の何人かの顧客へのオプションセット（「Ａ」）を公開し、他の人に第２のオプションセット（「Ｂ」）を公開する編集を使用する用語である。例示的な開始マーカー用形式は、以下である。
【００４２】
"<!--[_{product}_{rule_id}_{version}_-->." 
例示的な終了マーカー用形式は以下である。
【００４３】
"<!--[_{product}_{rule_id}_{version}_-->." 
これらは例に過ぎない。以下の表のように、識別子用のタイムスタンプなど別の項目が含まれ得、ある項目が削除され得る。
【００４４】
――――――――――――――――――――――――――――――――――――――――
Opening marker: <!--[{Unique identifier: GUID}{date in the format 
YYYY/MM/DD hh:mm:ss} --> 
Closing marker: <!--]_<!--[{Unique identifier: GUID}_--> 
――――――――――――――――――――――――――――――――――――――――
表１
われわれは、より一般的な形式のマーカーを図７Ｂに示す。しかしながら、上記の例において「ｐｒｏｄｕｃｔ」は、編集対象である（Ｇｏｏｇｌｅ解析のような）プロダクトを識別する固定部分である。「Ｒｕｌｅ＿ｉｄ」は、設定データベースによって提供される整数のようなルール識別子を識別する。これは、一実施形態において、タグリポジトリ（１４０）から検索され得る。「Ｖｅｒｓｉｏｎ」は、編集用に適用されるタグリポジトリ（１４０）におけるルール（１５２）のバージョンを識別する。説明に役立つ実例を図７Ａに与える。図７Ｂは、より高いレベルの例を示していて、開始マーカー（７１０）は、埋め込みコード（７１２）（又は１２０）の開始をマークし、終了マーカー（７１４）は、終了をマークしている。挿入されたタグ（１２０）の検出及び削除は、ＨＴＭＬパーサーを使用し、指定されたプロダクト及びバージョンを有する（（７１０）又は（７１４）のような）マーカーを含む１つ以上のコメントタグを検索して、実行され得る。述べたように、これは、現在の埋め込みタグを検出する容易な方法を提供する。
【００４５】
当然のこととして、上記は入力されたタグを示す方法の単なる一例である。タグを示す様々な異なる方法があるが、比較的もっと関連することは、実施形態の中には、タグが、それらの記法を検索し得るように、埋め込みタグを容易に見つけられ得るようになにか示されているものがあることである。
【００４６】
われわれは、タグ検出に対し、ウェブ解析編集スクリプトが、別の解析製品と共存できることに留意している。実施形態の中には、これらが同一ページに二度挿入できないものもある。そのような実施形態において、新しいタグをページに挿入する前に、そのようなタグがページにまだ存在していないことを検証することは、有益である。既存の編集は、ウェブサイトコンテンツの所有者によって手動で挿入されているか、別のツール、又はクライアントアプリケーション（１３０）それ自体で、自動的に挿入されている。前述したように、挿入されているタグは、それらがマーカーによって囲まれているので、前述したように識別することは比較的容易である。これらのマーカーは、そのようなタグ（例えば、（７１０）及び（７１４））の境界を定義している。かくして、これらのタイプのタグは、マーカーを検索する方法を使用して見つけられ得る。
【００４７】
しかしながら、マーカー又はその同等物が提供されていない場合、ウェブページのソースコードは、コード部分特有に入力する「コード署名」が検索され得るか否か確認するためにもっと検査され得る。例えば、あるウェブ解析製品は、コード署名を生成する。検出に関する文脈において、正確なコードの断片境界を完全に定義することは、特に重要でない。例示的なコードの断片は以下である。
【００４８】
"Script language = JavaScript" SRC = http://x.msn.com/scripts/acascript.js.
目的は、正しいコード断片を正しく識別することである。望ましい柔軟性レベルを促進するように、コード署名が正規表現を介し指定され得る。そのようなシナリオにおいて、検出関数は、ページコンテンツに正規表現を適用することによって実行される。必要とされる場合、関数は、ページ中のタグコードの位置に関する情報と一緒に結果「タグ付け又はタグ付けされていない」の真偽を返却する。
【００４９】
正規表現がウェブページのコンテキストにおいて、常に正常に動作するとは限らない。検索されるパターンは、ページの異なる多くの場所に出現し得る。例えば、＜ＢＯＤＹ＞又は＜／ＢＯＤＹ＞テキストは、実際の本体タグ前のスクリプトタグに含まれている文字列の中に出現し得る。これを以下の表に示す。
【００５０】
――――――――――――――――――――――――――――――――――――――――
<html>
<head> 
<title> ...</title> 
<script language="javascript">
var s = "<body>";
</script> 
</head> 
<body>
...
</body> 
<html>
――――――――――――――――――――――――――――――――――――――――
表２
それは、以下の表に示されるようにＨＴＭＬコメント内にも生じ得る。
【００５１】
――――――――――――――――――――――――――――――――――――――――
...
<!-- commented <body> tag. -->
<body>
...
</body>
...
――――――――――――――――――――――――――――――――――――――――
表３
エラー回避を支援するための前処理ステップのいくつかが実行され得る。正規表現一致を検索する前に、偽の一致をもたらし得る部品すべてを削除するようにページは、前処理され得る。実装の観点から異なるパラメーターを用いる同様の前処理スキームが、検出、交換、挿入などを含む任意のタグ付け動作を実行するために使用され得る。プリプロセッサーは、タグ付けされるページが与えられた場合、特定のタグ動作を適用するために要求される最小のタグ及び属性セットだけを含むストリップバージョンページを返却する。このストリップバージョンは、一実施形態において、タグの存在を正確に検出するか、正しい挿入点を識別するか、又はあり得る偽の一致を回避するために、内部的に使用されるだけである。実際の挿入、削除、置換動作は、元のページにおいて実行される。
【００５２】
検出の場合、既存の編集コードを見出すための前処理ステップは、一実施形態において、ＨＴＭＬタグ内のコメントのすべて及びリテラルコンテンツのすべてを破棄する。このプロセスをより容易に実行するために、ページ正規化が使用され得る。われわれが照合する文字列を正規化することは、正規表現がより単純なままであるので、より容易である。スペース、タブ、及び改行などホワイトスペースは、前処理中に単一スペースに変換され得る。かくして、表現の間の様々なスペースを有する行が、単純化され得、それらは単一のスペースだけで分離される。
【００５３】
タグの置換又は削除に関し、ＨＴＭＬパーサーは、マーカーが提供された場合、前述したようにマーカーテキストと一致するコンテンツのコメントを検索するために使用され得る。一致が見出されたとき、（７１０，７１４のような）２つのコメントマーカーの間に含まれるマークアップすべてがページから削除され得る。マークされたタグの置換は、存在するマークされたタグすべてをウェブページから削除し、その後、場合によって、異なる位置又は異なるパラメーターを用いて新しいタグを再び挿入することによって、実行され得る。
【００５４】
マークされていないタグに関しては、代替プロセスが使用され得る。通常、単一の（例えばＧｏｏｇｌｅ解析のような）プロダクトのタグ付けは、ウェブページの異なる部分に多くの変更を生成する。これらの変更は、検出される必要があって、あり得る検索すべきコード断片を指定するための正規表現のセットが定義され得る。かくして、一実施形態において、ポピュラーな解析プログラムリストは、そのプロバイダーの実装固有か又はその他のプロバイダーの実装において見出されるかどちらか一方であるコードに対し、語句又は用語がタグ（１２０）の存在を示すのに役立つ指示としての役割を果たすものと見られる。
【００５５】
例えば、例示的な図１Ｃのタグ（１６２）を考えられたい。語句「ＵＲＣＨＩＮ．ＪＳ」が存在していることが確認され得る。この語句は、検索されるように望まれる他の多くのものと一緒に、ウェブページセット内を検索するためのクエリーの基本として機能し得る。コード（１６２）のような断片に関連するコードすべてを実際に削除することは、比較的困難なので、そのようなコードは一実施形態において無効化される。例えば、既知のプロダクトの関数に対する呼び出しすべてがコメントアウトされ得る。ウェブページを実質的に壊す可能性があるので、本発明の一実施形態は、それが実質的に壊されていないことを保証するためにそれを発行する前に、ユーザーが自分のページを検査する機能を提供する。したがって、一実施形態において、特定のウェブページに実行される変更すべてがトラッキングされる。これらは、その後、取り消され得、元のページがエラーイベントにおいてリストアされ得る。
【００５６】
同様に、ＨＴＭＬ検証プロセスが一実施形態において、提供される。そのようなプロセスは、タグ付け動作の前後にＨＴＭＬドキュメントの正当性を検証し得る。これは、検査目的に使用され、かつ、タグ付けが少なくともＨＴＭＬ構文の観点からページを壊していないこと、を検証するために使用され得る。この機能性は、前述のＨＴＭＬプリプロセッサー／パーサーを使用し実行され得る。
【００５７】
本発明は、実行するステップの前処理の変形を記述するためのページ・エンコーディング又はドキュメント・エンコーディングを使用し得る。この情報は、ｍｉｃｒｏｓｏｆｔ．ｃｏｍ／ｇｌｏｂａｌｄｅｖ／ｇｅｔｗｒ／ｓｔｅｐｓ／ｗｒｇ＿ｃｏｄｅｐａｇｅ．ｍｓｐｘに提供されていて、エンコーディングを説明するために参照によって本明細書に組み込み、この書類とともに出願されるＩＤＳにも提供される。そのような実施形態において、コードページが検出され得る。これは、本書にユニコードＢＯＭ（ｂｙｔｅ  ｏｒｄｅｒ  ｍａｒｋｓ）（例えばＢＯＭ検出を説明するために本明細書に参照によって組み込まれるｕｎｉｃｏｄｅ．ｏｒｇ／ｕｎｉｃｏｄｅ／ｆａｑ／ｕｔｆ＿ｂｏｍ．ｈｔｍｌ参照）の検出によって、ページ中の＜ＭＥＴＡ  ｃｈａｒｓｅｔ＝“．．．”／＞を検索し、及び／又は正しいコードページをユーザーに依頼することによっても達成され得る。検出後、ページは、ユニコードＵＴＦ１６のような正規化形式に変換され得る。ＨＴＭＬパーサーは、タグの挿入／削除／変更を実行することを支援するために、正規化バージョンで実行する。所望される場合、結果である（ＵＴＦ１６）ドキュメントが、元のコードページに逆変換され得る。
【００５８】
ここで図８Ａ〜８Ｍを見ると、ユーザーインターフェース（１３２）の更なる詳細が提供されている。一実施形態において、これらは、ブラウザー（１２８）を介しクライアント装置（１２６）に表示される画面である。クライアントアプリケーション（１３０）がローカルアプリケーションである場合、画面はまるでアプリケーションがスタンドアロンのローカルアプリケーションであるようであり得るが、同様の画面が提供されても、ネットワークブラウザー（１２８）を介し表示される必要はない。画面（８Ａ）は、この例では、編集すべきか又は編集したいページセットであるページ（１１８）を有するウェブサイト（１１６）である、ユーザー（１２６）が所望するウェブサイトを編集するための準備を確認する目的のための例示的な歓迎画面を示している。項目（８１０）によって確認され得るように、このプロセスは、自動的な編集を可能にする。
【００５９】
一実施形態において、図８Ｂに示されているような別の画面がトラッキングスクリプトを潜在的なウェブページすべて（１１８）に自動的に挿入するためのオプションをユーザーが選択可能にするように表示され得る。図８Ｂに参照番号（８１２）によって示されているように自動的なタグ付けが、所望された場合、トラッキングスクリプトをウェブページそれぞれに挿入する。ここで図８Ｃを見ると、画面（８１４）は、ウェブページ（１１８）の識別を可能にする位置情報を受け取るためのユーザーインターフェースを提供する。サーバー及びセキュリティ証明書が提供されるＦＴＰパラダイムが使用され得ることを単に例示として示している。しかしながら、編集されるべきウェブページ（１１８）を識別可能にする位置情報を受け取るためのフォルダー（８１６）が、ボタン（８１８）によって閲覧され得る場合もあり得る。そのようなフォルダーは、クライアントアプリケーション（１３０）又はブラウザー（１２８）と同一のハードウェア部分に物理的に常駐する必要はない。もっと具体的に言えば、それは、ネットワークドライブを介し達せられ得る。
【００６０】
図８Ｄは、本発明がトラッキングスクリプトをウェブサイト（１１６）のページそれぞれに挿入する開始の準備ができていることを示している。設定ボタン（８２０）が提供され、既に説明された編集よりもっと大幅なカスタマイズを可能にする。図８Ｅにおいて、本発明は、参照番号（８２２）によって示されるように３つのファイルを処理していて、約３３％完了したことが確認され得る。
【００６１】
図８Ｆは、参照番号（８２６）によって反映されている９つのファイル（８２４）すべてが処理され、タグ付けをされ、首尾よく埋め込まれたことを表しているスクリーンショットを示している。コメント（８２８）によって示されているように、トラッキングスクリプト（１２０）が挿入されていて、ここでウェブサイト（１１６）は、訪問者又はユーザーの情報収集準備ができている。
【００６２】
番号（８３０）によって参照される例示的なトラッキングスクリプト導入のレポートが、図８Ｇに確認され得る。このレポートは、それぞれのページ、及び「基本編集」のようなどの方法で選択的にスクリプトが挿入されたかに関する指示を示している。図８Ｈは、カスタム設定及びトラッキングスクリプトを挿入可能にする本発明の機能を例示する画面（８３２）を示している。ここでユーザーは、カスタムコンテンツに埋め込まれるフォルダー及びファイルのいくつかを選択することが可能である。示されている例示的なカスタムコンテンツは、解析トラッキングスクリプトである。
【００６３】
図８Ｉは、示されたディレクトリ中のファイルが検索されていることを示している。参照番号（８３４）によって示されているように、４，２１５個のファイルが示され解析されている。
【００６４】
ここで図８Ｊを見ると、ユーザーインターフェース画面（８４０）は、トラッキングスクリプトセットをリフレッシュするための機能のようなオプション（８４２）がユーザーにどのように利用可能か示している。ダウンロードトラッキング、ページリネーム、及びイベントトラッキングのような様々な機能（８４４）も示されていて、それらは本発明の実施形態によって利用可能である。ユーザーは、トラッキングスクリプトを用いて自分のウェブサイト全体をリフレッシュするための１つのリンク（８４６）をクリックし得る。そのようなリンクをたどると、ページすべてに組み込まれているスクリプトすべてが、ルールデータベース（１５２）に多分定義されている新しいルールセットに従って、リフレッシュ可能になる。
【００６５】
ダウンロードファイルに関連する局面もトラッキングされ得る。図８Ｋを見ると、画面（８４８）は、一定の拡張子を有するファイル又はファイルタイプが、ウェブサイト（１１６）上のダウンロードとしてトラッキングされるように選択され得ることを示している。更に、ユーザーは、リンク（８５０）をたどることによって、カスタマイズ拡張子を有する更なるファイルを自由に追加する。このようにして、本発明の実施形態は、ダウンロードのトラッキングを可能にする。
【００６６】
本発明の別の例示的機能を図８Ｌに示す。ここで、「ページ単位エイリアス」選択が実行され得る。これによって、潜在的に長いファイル名を有するファイルが、エイリアス又はニックネームを用いてリネームされ、より容易な対処が可能になる。示されている例示的なページ名は、「ｉｎｄｅｘ」及び「ｍｙ  ｐａｇｅ」を含んでいて、番号（８５４）及び（８５６）によってそれぞれ示される。これらのページは、図８Ｍに示されているようにリネームされ得る。図８Ｍの項目（８５８）がここで図８Ｌの番号（８５８Ａ）によって示されているような、所望された名前変更であるエイリアス「ｐｕｒｃｈａｓｅ」に関連付けられていることに留意されたい。同様に、図８Ｍの項目（８６０）は、図８Ｌの項目（８６０Ａ）を参照し確認され得るように「ｃｈｅｃｋｏｕｔ」にリネームされている。
【００６７】
本発明の実施形態を要約するために、含まれ得る拡張可能な埋め込みサービスセットを提供する。本発明は、最多数の位置にコンテンツ広告が表示され得るようにウェブページセットの変更を実行する。ガジェット／ウィジェット市場において、ウェブ２．０項目のような埋め込み可能なコンテンツからビジネスモデルを作成するものもある。本発明の実施形態によって、そのような項目が容易に自動的に組み込まれ得る。コミュニティタイプの文脈において、コミュニティコンテンツは、それが第三者のウェブコンテンツ（例えば、Ｆｌｉｃｋｒ画像、Ｓｏａｐｂｏｘ映像、ＬｉｖｅＥａｒｔｈマップなど）に配布される場合、より多くの訪問者を生む。
【００６８】
ＨＴＭＬコンテンツ解析は、どんな埋め込みサービスが含まれ得るか決定するためにも提供される。本発明の実施形態は、ターゲットコンテンツそれぞれに対しリクエストされた埋め込みサービスとの互換性解析を可能にする。
【００６９】
タグのカスタマイズも可能にされ得る。それぞれのタグ（１２０）は、カスタマイズされ得るパラメーターを含み得る。本発明の実施形態は、埋め込みサービスを自分達のニーズに適合させるように、コンテンツ発行者（１４４）又は（１２６）を支援するユーザーインターフェースを公開する。
【００７０】
ＨＴＭＬファイルの正しい位置へのタグ（１２０）の挿入も提供される。本発明は、タグ（１２０）を挿入するためのターゲットコンテンツ（１１８）中の正しい位置（単数又は複数）を検出し得る。代替として、本発明の実施形態は、特定タイプのコンテンツ（１４８）及び／又は（１４２）に対し、ユーザー（１２６）が位置を目視により選択する方法を公開し得る。例えば、広告コンテンツに関連するコード（１４８）が埋め込まれる一実施形態において、本発明の実施形態は、コード（１４８）／（１２０）に対する挿入点を確認又は決定するどちらか一方のユーザー入力を受信し得る。このタイプの挿入は、通常、ページレイアウトを変更するので、実施形態は、変更されたページがどのように見えるかのプレビューを提示するオプションを含む。ユーザーは、広告が挿入された後のページレイアウトを見直し得る。
【００７１】
埋め込みサービス、及びウェブの宛先又はその他の位置情報それぞれに関するユーザー設定情報がストアされ得る。これは、更新をより容易にする。タグリポジトリ（１４０）に多分ストアされている例示的な設定情報は、選択されている埋め込みサービス、ユーザーパラメーター、ターゲットコンテンツ、ページ特有の情報などを含む。
【００７２】
追加機能も提供され得る。例示的なその他の機能は、（電子メール、解析などの様々なサービスを通して共通のユーザー識別子を利用して）提示される埋め込みサービス、（ウェブコンテンツに実装される現在のタグがカスタマイズにおいてユーザーに要求されたタグと一致することを検証する）同期、（ユーザーによって要求されている構成を用いてウェブコンテンツを自動的に更新する）リフレッシュ、及び（「埋め込みタグ」のいくつか又はすべてをウェブサイトから削除する）削除に対するサブスクリプションを含む。これらの機能は、本来、例示的であって、本明細書に含まれている別のリストを用いた場合のように完全なリストを構成しない。
【００７３】
前述したように、本発明の実施形態は、様々な実装を呈し得る。例示的な実装は、オンラインツール、ウェブコンテンツ構築ツールプラグイン、ウェブサーバーの強化、コンテンツ編集プラットホームの拡張、及び／又はソフトウェアデベロッパーキット（ＳＤＫ）の形式を呈することを含む。
【００７４】
ここで図９を見ると、本発明の実施形態による例示的なプロセスが提供されている。前処理又は先行機能として編集及び／又は埋め込みコンテンツタグを用いて装備されるウェブサイトの位置情報が、受信される。ウェブサイトＵＲＬ、フォルダー位置、ＩＰアドレスなどは、システムによって既に知られているか又はユーザーからそれらのデータを受信し得る。ステップ（９１２）において、最初のウェブページのソースコードが解析される。ウェブページのソースコード解析は、前述したように、ウェブページ又はウェブページのストリップバージョンの複製の解析を実際に含む様々な「サブステップ」を含み得る。ステップ（９１４）において、埋め込まれる適切なタグの決定が、自動的に実行される。実施形態の中には、適切なタグが入力されるデフォルトタグであるものもある。別の実施形態において、ユーザーが提供する情報が、埋め込まれる適切なタグを決定するように考慮される。更に別の実施形態において、広告コンテンツコードの一部が、この段階において決定される。ステップ（９１６）において、適切な埋め込み位置が決定される。このプロセスは、既に前述されている。ステップ（９１８）において、決定されたタグ及び既知の挿入点を用いて、タグ又は複数のタグが、ウェブページに自動的に埋め込まれる。このプロセスは、編集されるページ数に対し継続し得る。かくして、ステップ（９２０）において、編集されるページが更に存在するか否かの決定が実行される。存在する場合、プロセスはステップ（９１２）に戻る。存在しない場合、一実施形態において、プロセスは終了し得る。
【００７５】
ステップ（９２２）において、埋め込みコンテンツが、ウェブページ（単数又は複数）の望まれない変化をもたらさなかったことを検証することを可能にするための検証ステップが生じ得る。追加されたコンテンツが解析スクリプトであった場合、ウェブページの外観が変更されてはいけない。ウェブページの挿入前及び挿入後の見え方の比較が実行され得る。これは、様々な方法で生じ得る。一実施形態において、ウェブページの挿入前及び挿入後の大きさ又はその他の寸法があり得る。任意の偏差がいくつかの閾値を超えた場合、望ましくない変化が生じているという仮定がなされ得る。広告コンテンツが追加された場合、その後、広告サイズがわかったときに別のサイズ比較が実行され得る。例えば、広告が６０画素の高さであった場合、ウェブページの高さは、それが６０画素分増加されるか否か確認するようにチェックされ得る。更に別の実施形態において、認知可能な任意の変更が存在するか否かの指示を受信するために、変更のプレビューがユーザーに提示され得る。そのオプションをユーザーに公開することは、有益である。機能的なチェックも実行され得る。解析コード又は広告コンテンツの追加は、少なくとも、ビューアー（１２４）の視点から観測されるようなウェブページの機能を変更するべきでない。ページ全体のレンダリングと同様に、リンク及びメディアレンダリングなどが自動的に検査され得る。
【００７６】
我々は、検証の態様も以前、既に説明した（ドキュメント・エンコーディングを説明しているセクション参照）。実施形態の中には、本発明が、挿入されるコード（１２０）が言わば美学的又は既存の機能性を壊すか決定することを明示的にチェックしないものもある。これらの実施形態において、存在するＤＯＭがスクリプトを追加し、その後、削除する動作の後、同一のままか解析するためのチェックが、ＤＯＭに対し実行される。ドキュメント・オブジェクト・モデル（ＤＯＭ）がドキュメントの構造的な提示を提供していることを思い出されたい。実行されるチェックは、挿入前、既にページにあるものが、挿入の結果、壊されていないことを確実にする。例えば、ページのボタンクリックが、同一ページの画像ソースを変更する場合でも、トラッキングスクリプト（１２０）の自動的な追加は、既存の機能性を壊さない。トラッキングスクリプト（１２０）の追加もページのレイアウトを変更しない。通常、ページのレンダリング、対話、及びデータ／アプリケーション機能性には変更を生じない。しかしながら、広告スクリプトの追加は、ページのレイアウトを変更する。その場合でも本発明の実施形態は、挿入前にページに存在している機能性が壊れていないことを保証する。
【００７７】
編集機能性に対する変更が実行され得る。「レンダリング」は、ページの視覚レイアウト及び外観を参照している。「対話」は、ページにコード化されるＪａｖａＳｃｒｉｐｔのｍｏｕｓｅｏｖｅｒイベント、（オプションは多数の）フォームコントロールなどに類するものに関する振舞いを参照している。「データ／アプリケーション」は、ページが実行する、例えば、ｅコマース取引の処理、ユーザーのアカウントバランスのデータベースからの検索、及びそれを彼らに表示する実際の動作を参照している。
【００７８】
エラーに対する検査又は除外ルール展開の一方法は、タグを（およそ数千又は数百万の）ページセットに挿入し、その後、それらを削除することを含む。１バイトごとによるＤＯＭ比較が、ページに対し実行され得る。比較の１つが等しい結果を返却しなかった場合、タグ付けは、少なくともそのページにおいて失敗したと考えられる。問題のあるタグページは、セーブされ得、タグを破壊しているページ内のエラーを特定するために、コンテンツは解析され得る。ワークアラウンドが知られている場合、タグの修復が生成され得る。ワークアラウンドが存在しない場合、われわれは、除外ルールの１つとしてページエラーを追加する。
【００７９】
代替方法は、ブラウズされるランダムなページをまとめてタグ付けすることである。そのようなページのすべてはタグ付けられる。その後、それらはタグが削除される。比較が実行され、前述したような動作を呈する。
【００８０】
ここで図１０を見ると、本発明の実施形態を実行するための別の方法が提供されていて、番号（１０００）によって一般的に参照される。この実施形態において、ステップ（１０１０）において、トラッキングスクリプトを介し編集される所望のウェブサイトを記述している記述的情報を受信するためのユーザーインターフェースがユーザーに示される。一実施形態において、そのようなユーザーインターフェースは、図８Ａ〜８Ｍの１つ以上の画面の形式を呈し得る。ステップ（１０１２）において、トラッキングスクリプトは、ウェブサイトのウェブページセットに自動的にインストールされる。前述したように、位置が決定され得、スクリプトが自動的に選択され、ユーザーの介入なく組み込まれ得る。ステップ（１０１４）において、トラッキングされるイベントを受信するためのユーザーインターフェースが提示されている。これらのステップは、一定の順番で生じる必要はない。実施形態の中には、それらのスクリプトに関連する異なるパラメーターが受信される前に、スクリプトがウェブページに埋め込まれるように支援されるものもある。別の実施形態において、これらのステップは、トラッキングスクリプトの導入前であっても、トラッキングされるイベント指示を受信するためのユーザーインターフェースが、ユーザーに提示されるように、順番的に統合化されるか又は逆にもされ得る。そして、トラッキングされるそれらのイベント指示の受信後、トラッキングスクリプトが導入される。トラッキングされるイベントなどの指示を受信するユーザーインターフェースの例は、画面８Ｈ、８Ｊ、８Ｋ、８Ｌ、及び８Ｍに見出され得る。
【００８１】
ステップ（１０１６）において、入力されるトラッキングスクリプトは、イベントをトラッキングする指示に基づいて自動的に更新され得る。かくして、この実施形態において、ユーザーは、ユーザー介入無しに自動的に再更新される更新スクリプト中に反映される追加的変更を作成し得る。
【００８２】
ステップ（１０１８）において、トラッキングスクリプトの導入の影響が検査され得る。このプロセスは、一実施形態において、図９の（９２２）のそれと同様である。
【００８３】
示された様々なコンポーネントと同様に示されていないコンポーネントの異なる多くの処理が、本発明の趣旨及び範囲から逸脱せずにあり得る。本発明の実施形態は、制限的というよりも例示的である意図を持って説明されている。その範囲から逸脱しない代替実施形態が、当業者に明らかになるであろう。当業者は、本発明の範囲から逸脱せずに前述の改良を実行する代替手段を開発し得る。
【００８４】
いくつかの機能及び一部の組み合わせが利用でき、その他の機能及び一部の組み合わせを参照せずに使用され得、本請求項の範囲内に想定されていることを理解されよう。様々な図面に記載されたステップすべてが説明された特定の順番で実行される必要はない。
【符号の説明】
【００８５】
１１０  動作環境
１１２  ネットワーク
１１４  ウェブサーバー
１１６  ウェブサイト
１１８  ウェブページセット
１２０  埋め込みコンテンツ
１２２  通知クライアント
１２４  ウェブサイトビューアー
１２６  クライアントマシン
１２８  ネットワークブラウザー
１３０  クライアントサイドアプリケーション
１３２  ユーザーインターフェース
１３４  画面及びコントロール
１３６  サーバーサイドアプリケーション
１３８  編集サーバー
１４０  タグリポジトリ
１４２  タグ構造
１４４  コンテンツプロバイダー
１４６  広告及びその他のコンテンツ
１４８  コンテンツタグ又はコンテンツ
１５０  監視サービス
１５２  設定ルール
１６０  ウェブ解析タグ
１６２  ウェブ解析タグ
１６４  ソース指示
１６６  タイプ指示
１６８  ユーザー識別子
１７０  トラッカー参照
１７２  タイプ指示
２１０  イニシャルコードセグメント
２１２  開始前挿入ルール
２１４  コードの一部
２１６  タグ
３１０  イニシャルコードの一部
３１２  開始後挿入ルール
３１４  結果
３１６  タグ
３１８  本体タグ
３２０  最初の＜ｄｉｖ＞タグ
４１０  イニシャルコードの一部
４１２  終了前挿入ルール
４１４  結果
４１６  タグ
４１８  本体タグ
５１０  イニシャルコードの一部
５１２  終了後挿入ルール
５１４  結果
５１６  タグ
５１８  本体終了タグ
６１０  イニシャルコードの一部
６１２  語彙解析プログラム
６１４  結果
７１０  開始マーカー
７１２  埋め込みコード
７１４  終了マーカー
８１０  自動タグ付け項目
８１２  自動タグ付け説明
８１４  画面例
８１６  フォルダー
８１８  閲覧ボタン
８２０  設定ボタン
８２２  処理済ファイル
８２４  解析中に見つかったファイル
８２６  処理済ファイル
８２８  処理後のコメント
８３０  トラッキングスクリプトインストールレポート
８３２  カスタム設定及びトラッキングスクリプト挿入画面
８３４  解析されたファイル
８４０  ユーザーインターフェース画面
８４２  トラッキングスクリプトセットのリフレッシュ
８４４  ダウンロードトラッキング、ページリネーム、及びトラッキングイベント
８４６  ウェブサイト全体リフレッシュリンク
８４８  画面例
８５０  カスタマイズ拡張子追加リンク
８５４  ページ名選択「ｉｎｄｅｘ」
８５６  ページ名選択「ｍｙ  ｐａｇｅ」
８５８  ページ名選択項目
８６０  ページ名選択項目
【図１Ａ】
0005851690.tif 000002
【図１Ｂ】
0005851690.tif 000003
【図１Ｃ】
0005851690.tif 000004
【図１Ｄ】
0005851690.tif 000005
【図１Ｅ】
0005851690.tif 000006
【図２】
0005851690.tif 000007
【図３】
0005851690.tif 000008
【図４】
0005851690.tif 000009
【図５】
0005851690.tif 000010
【図６】
0005851690.tif 000011
【図７Ａ】
0005851690.tif 000012
【図７Ｂ】
0005851690.tif 000013
【図８Ａ】
0005851690.tif 000014
【図８Ｂ】
0005851690.tif 000015
【図８Ｃ】
0005851690.tif 000016
【図８Ｄ】
0005851690.tif 000017
【図８Ｅ】
0005851690.tif 000018
【図８Ｆ】
0005851690.tif 000019
【図８Ｇ】
0005851690.tif 000020
【図８Ｈ】
0005851690.tif 000021
【図８Ｉ】
0005851690.tif 000022
【図８Ｊ】
0005851690.tif 000023
【図８Ｋ】
0005851690.tif 000024
【図８Ｌ】
0005851690.tif 000025
【図８Ｍ】
0005851690.tif 000026
【図９】
0005851690.tif 000027
【図１０】
0005851690.tif 000028