"コンピュータが実行する、動的なウェブアプリケーションの問題を修正するメタデータの生成管理を支援する方法であって、a前記コンピュータが、修正作業者によるウェブアプリケーションの問題の修正に応答して、前記問題を修正するための操作を示す操作情報と該操作情報の適用条件とを含むメタデータM1であって、前記適用条件として、ウェブページ内の前記問題の発生箇所を含む意味的にまとまりのあるブロック情報と、前記問題が発生する前記ウェブアプリケーションの状態を特定するグローバル変数群及びクッキー情報とを含む前記メタデータM1を生成するステップと、b前記コンピュータが、前記修正作業者による前記ウェブアプリケーション上の操作ログを参照して、修正作業中に遷移したウェブページ内のブロックのうち前記メタデータM1の前記ブロック情報と一致する1以上のブロックB0の各々に対し、該ブロックB0を含む前記ウェブページを出力した前記ウェブアプリケーションの状態を特定するグローバル変数群とクッキー情報とを含むメタデータを算出するステップと、c前記コンピュータが、前記メタデータM1と各ブロックB0とに対しそれぞれ求めた全ての前記グローバル変数群及び前記クッキー情報の各々をkeyvalueのペア構造に変換して共通する部分を取り出し、取り出した前記共通する部分で前記メタデータM1の前記グローバル変数群及び前記クッキー情報を更新するステップと、を含む支援方法。前記算出するステップbは、前記コンピュータが、前記メタデータM1の前記ブロック情報と一致する前記1以上のブロックB0を前記修正作業者に提示し、前記メタデータM1の前記操作情報が示す操作を適用可能であるブロックSBを選択させるサブステップb-1を含み、前記コンピュータは、選択された各ブロックSBに対し前記グローバル変数群と前記クッキー情報を含むメタデータの算出を行う、請求項1に記載の支援方法。前記更新するステップcは、前記コンピュータが、全ての前記グローバル変数群または全ての前記クッキー情報に共通に含まれるkeyを抜き出し、抜き出したkeyに対応するvalueが全ての前記グローバル変数群または全ての前記クッキー情報について同一であるkeyvalueのペア構造を前記共通する部分として取り出すサブステップc-1を含む、請求項2に記載の支援方法。前記更新するステップcは、前記コンピュータが、前記グローバル変数群または前記クッキー情報に含まれる配列オブジェクトに対し、配列の要素の値を、該要素を取り出すキーと該要素の値とからなるkeyvalueのペア構造に更に変換するサブステップc-2を含む、請求項3に記載の支援方法。前記更新するステップcは、前記コンピュータが、全ての前記グローバル変数群または全ての前記クッキー情報に共通に含まれるkeyに対応するvalueが配列オブジェクトである場合、該配列オブジェクトの各要素について前記サブステップc-1を行うサブステップc-3を含む、請求項4に記載の支援方法。前記更新するステップcは、前記コンピュータが、前記グローバル変数群または前記クッキー情報に含まれる階層オブジェクトを、変数を値としてもつ配列として取り扱うことでkeyvalueのペア構造に変換するサブステップc-4を含む、請求項3に記載の支援方法。前記更新するステップcにおいて、前記コンピュータは、単一情報からなる前記クッキー情報を、keyとvalueが同一のkeyvalueのペア構造に変換する、請求項3に記載の支援方法。前記生成するステップaにおいて、前記コンピュータは、前記ウェブアプリケーションの状態を特定するのに有効であるとして予め前記コンピュータに設定されている種類のグローバル変数群及びクッキー情報についてそれぞれ値を求め、前記メタデータM1の前記適用条件とする、請求項2に記載の支援方法。前記動的なウェブアプリケーションの問題を修正するためのメタデータは、前記適用条件として、前記ブロック情報内で前記発生箇所を特定する位置特定情報を更に含み、d前記コンピュータが、前記修正作業者によるウェブアプリケーションの現在の問題の発生箇所の特定に応答して、前記発生箇所を含むブロック情報と、該ブロック情報内で前記発生箇所を特定する位置特定情報とを生成するステップと、e前記コンピュータが、生成した前記ブロック情報と前記位置特定情報を検索キーとして、一致するメタデータを過去に生成されたメタデータを格納するメタデータ格納部から取り出して前記修正作業者に提示し、前記修正作業者に前記現在の問題の発生箇所に適用可能なメタデータM0を選択させるステップと、f前記コンピュータが、選択された前記メタデータM0の操作情報を参照して、前記ウェブアプリケーションの前記現在の問題を修正するためのメタデータM2を生成するステップと、を更に含む請求項1に記載の支援方法。g前記コンピュータが、前記メタデータM2を用いて前記メタデータM0の前記適用条件を汎化することにより既存の前記メタデータM0を更新するステップを更に含む、請求項9に記載の支援方法。前記動的なウェブアプリケーションの問題を修正するためのメタデータは、前記適用条件として、前記問題が生じたウェブページの場所を特定するアドレス特定情報と、前記ブロック情報内で前記発生箇所を特定する位置特定情報と、前記問題の発生時における前記ブロック情報の前記ウェブページ内の位置を特定するブロック特定情報とを更に含み、h前記コンピュータが、現在の前記ウェブアプリケーションが出力したウェブページのアドレス情報と、前記ウェブアプリケーションの現在の状態を特定するグローバル変数群及びクッキー情報とを算出するステップと、i前記コンピュータが、算出した前記アドレス情報、前記グローバル変数群、及び前記クッキー情報を検索キーとして、一致するメタデータM0を過去に生成されたメタデータを格納するメタデータ格納部から取り出すステップと、j前記コンピュータが、取り出した前記メタデータM0の前記ブロック情報を、該メタデータM0のブロック特定情報から取り出される前記現在のウェブアプリケーションが出力した前記ウェブページ内の対応するブロックと比較し、一致しない場合に前記メタデータM0を前記修正作業者に提示して修正を促し、修正された前記ブロック特定情報を受け取るステップと、k前記メタデータM0の前記ブロック特定情報を、修正された前記ブロック特定情報を用いて汎化することにより既存の前記メタデータM0を更新するステップを更に含む、請求項1に記載の支援方法。動的なウェブアプリケーションの問題を修正するメタデータの生成管理の支援装置であって、修正作業者によるウェブアプリケーションの問題の修正に応答して、前記問題を修正するための操作を示す操作情報と該操作情報の適用条件とを含むメタデータM1であって、前記適用条件として、ウェブページ内の前記問題の発生箇所を含む意味的にまとまりのあるブロック情報と、前記問題が発生する前記ウェブアプリケーションの状態を特定するグローバル変数群及びクッキー情報とを含む前記メタデータM1を生成するメタデータ生成部と、前記修正作業者による前記ウェブアプリケーション上の操作ログを格納する操作ログ格納部と、前記操作ログ格納部から読み出した前記操作ログを参照して、修正作業中に遷移したウェブページ内のブロックのうち前記メタデータM1の前記ブロック情報と一致する1以上のブロックB0の各々に対し、該ブロックB0を含む前記ウェブページを出力した前記ウェブアプリケーションの状態を特定するグローバル変数群とクッキー情報とを含むメタデータを算出する類似ブロック検索部と、前記メタデータM1と各ブロックB0とに対しそれぞれ求めた全ての前記グローバル変数群及び前記クッキー情報の各々をkeyvalueのペア構造に変換して共通する部分を取り出し、取り出した前記共通する部分で前記メタデータM1の前記グローバル変数群及び前記クッキー情報を更新するメタデータ汎化部と、を含む支援装置。前記動的なウェブアプリケーションの問題を修正するためのメタデータは、前記適用条件として、前記ブロック情報内で前記発生箇所を特定する位置特定情報を更に含み、過去に生成されたメタデータを格納するメタデータ格納部と、前記修正作業者によるウェブアプリケーションの現在の問題の発生箇所の特定に応答して、前記発生箇所を含むブロック情報と、該ブロック情報内で前記発生箇所を特定する位置特定情報とを生成するブロック抽出部と、前記ブロック抽出部により生成された前記ブロック情報と前記位置特定情報とを検索キーとして、一致するメタデータを前記メタデータ格納部から取り出して前記修正作業者に提示し、前記現在の問題の発生箇所に適用可能な既存のメタデータM0を選択させる類似メタデータ検索部とを更に含み、前記メタデータ生成部は、選択された前記既存のメタデータM0の操作情報を参照して、前記ウェブアプリケーションの現在の問題を修正するためのメタデータM2を生成する、請求項12に記載の支援装置。前記メタデータ汎化部は、前記メタデータM2を用いて前記既存のメタデータM0の適用条件を汎化することにより前記既存のメタデータMSを更新する、請求項13に記載の支援装置。前記動的なウェブアプリケーションの問題を修正するためのメタデータは、前記適用条件として、前記問題が生じたウェブページの場所を特定するアドレス特定情報と、前記ブロック情報内で前記発生箇所を特定する位置特定情報と、前記問題の発生時における前記ブロック情報の前記ウェブページ内の位置を特定するブロック特定情報とを更に含み、過去に生成されたメタデータを格納するメタデータ格納部と、過去に生成されたメタデータの適用条件を検証するメタデータ検証部であって、前記ウェブアプリケーションの現在の状態を特定する前記アドレス特定情報、前記グローバル変数群、及び前記クッキー情報を検索キーとして、一致するメタデータM0を前記メタデータ格納部から取り出し、前記メタデータM0の前記ブロック情報を、該メタデータM0のブロック特定情報から取り出される前記現在の状態のウェブアプリケーションが出力した前記ウェブページ内の対応するブロックと比較し、一致しない場合に前記メタデータM0を前記修正作業者に提示して修正を促し、修正された前記ブロック特定情報を受け取る、前記メタデータ検証部とを更に含み、前記メタデータ汎化部は、前記メタデータM0の前記ブロック特定情報を、修正された前記ブロック特定情報を用いて汎化することにより既存の前記メタデータM0を更新する、請求項12に記載の支援装置。請求項1乃至11のいずれか一項に記載の方法をコンピュータに実行させる、動的なウェブアプリケーションの問題を修正するメタデータの生成管理の支援プログラム。ここで、上述した従来技術を利用して、java登録商標scriptが多用されるような動的なウェブアプリケーションにおける様々な問題をメタデータにより解決することを考える。動的なウェブアプリケーションではURLが同一でもコンテンツが異なることが起こりえるため、そのような動的なウェブアプリケーションを対象とするためには、ウェブアプリケーションの状態を正しく認識し、メタデータの適用条件を効率よく拡張する必要がある。上述したように、特許文献3及び4には、動的なウェブアプリケーションの状態を認識するために、グローバル変数やクッキー情報を利用できることが記載または示唆されている。しかしながら、その拡張方法については記載がなく、従来のメタデータの拡張技術を組み合わせただけではグローバル変数やクッキー情報を拡張できない。また、上記従来技術では、新しい問題に適用可能な既存のメタデータの検出方法や、生成したメタデータを適用可能な同一ページ内または別ページ内の他の適用箇所の人手によらない具体的な検出方法が開示されていない。そのためそのような既存のメタデータや他の適用箇所を修正作業者に選択させるとしても、選択のために、実際は適用できない既存のメタデータを提示したり、生成したメタデータの適用条件の拡張に不要な他の適用箇所を多く提示したりといった問題が生ずる。本発明は、上記従来技術における問題点に鑑みてなされたものであり、本発明は、動的なウェブアプリケーションを対象にして、様々な問題の解決に適用可能な新たなメタデータを生成し、その新たなメタデータの適用条件を拡張し、その結果新たなメタデータの再利用性を高めて効率よく管理できるようにするための方法、装置、およびプログラムを提供することを目的とする。本発明では、上記従来技術の課題を解決するために、動的なウェブアプリケーションを対象にして、様々な問題の解決に適用可能なメタデータを新たに定義する。そのようなメタデータは、問題を修正するための操作を示す操作情報と該操作情報の適用に関する適用条件とを含み、適用条件として、問題が生じたウェブページの場所を特定するアドレス特定情報条件aと、ウェブアプリケーションの状態を特定するグローバル変数群条件bと、ウェブアプリケーションの状態を特定するクッキー情報条件cと、ウェブページ内の問題の発生箇所を含む意味的にまとまりのあるブロック情報条件dと、問題の発生時におけるブロック情報のウェブページ内の位置を特定するブロック特定情報条件eと、ブロック情報内で問題の発生箇所を特定する位置特定情報条件fとを含む。ここで条件b、c、dは、非特許文献1により開示されるメタデータ構造にはない新規な項目であり、条件e、fは、非特許文献1により開示されるエレメントアドレスを拡張したものである。そして本発明は、新たに定義したメタデータの適用条件を汎化してこれを効率的に管理するために、以下の特徴を有するメタデータの生成管理を支援する方法を提供する。本発明の支援する方法は、a前記コンピュータが、修正作業者によるウェブアプリケーションの問題の修正に応答して、前記問題を修正するための操作を示す操作情報と該操作情報の適用条件とを含むメタデータM1であって、前記適用条件として、ウェブページ内の前記問題の発生箇所を含む意味的にまとまりのあるブロック情報と、前記問題が発生する前記ウェブアプリケーションの状態を特定するグローバル変数群及びクッキー情報とを含む前記メタデータM1を生成するステップと、b前記コンピュータが、前記修正作業者による前記ウェブアプリケーション上の操作ログを参照して、修正作業中に遷移したウェブページ内のブロックのうち前記メタデータM1の前記ブロック情報と一致する1以上のブロックB0の各々に対し、該ブロックB0を含む前記ウェブページを出力した前記ウェブアプリケーションの状態を特定するグローバル変数群とクッキー情報とを含むメタデータを算出するステップと、c前記コンピュータが、前記メタデータM1と各ブロックB0とに対しそれぞれ求めた全ての前記グローバル変数群及び前記クッキー情報の各々をkeyvalueのペア構造に変換して共通する部分を取り出し、取り出した前記共通する部分で前記メタデータM1の前記グローバル変数群及び前記クッキー情報を更新するステップとを含む。好ましくは、算出するステップbは、コンピュータが、メタデータM1のブロック情報と一致する1以上のブロックB0を修正作業者に提示し、メタデータM1の操作情報が示す操作を適用可能なブロックSBを選択させるサブステップb-1を含み、前記コンピュータは、選択された各ブロックSBに対し前記グローバル変数群と前記クッキー情報を含むメタデータの算出を行う。より好ましくは、更新するステップcは、コンピュータが、全てのグローバル変数群または全てのクッキー情報に共通に含まれるkeyを抜き出し、抜き出したkeyに対応するvalueが全てのグローバル変数群または全てのクッキー情報について同一であるkeyvalueのペア構造を共通する部分として取り出すサブステップc-1を含む。更に好ましくは、更新するステップcは、コンピュータが、グローバル変数群またはクッキー情報に含まれる配列オブジェクトに対し、配列の要素の値を、該要素を取り出すキーと該要素の値とからなるkeyvalueのペア構造に更に変換するサブステップc-2を含む。更に好ましくは、更新するステップcは、コンピュータが、全てのグローバル変数群または全てのクッキー情報に共通に含まれるkeyに対応するvalueが配列オブジェクトである場合、該配列オブジェクトのkeyvalueのペア構造に変換された各要素についてサブステップc-1を行うサブステップc-3を含む。また好ましくは、更新するステップcにおいて、コンピュータは、単一情報からなるクッキー情報を、keyとvalueが同一のkeyvalueのペア構造に変換する。また好ましくは、生成するステップaにおいて、コンピュータは、ウェブアプリケーションの状態を特定するのに有効であるとして予め上記コンピュータに設定されている種類のグローバル変数群及びクッキー情報についてそれぞれ値を求め、メタデータM1の適用条件とする。また好ましくは、dコンピュータが、修正作業者によるウェブアプリケーションの現在の問題の発生箇所の特定に応答して、発生箇所を含むブロック情報と、該ブロック情報内で発生箇所を特定する位置特定情報とを生成するステップと、eコンピュータが、生成したブロック情報と位置特定情報とを検索キーとして、一致するメタデータを過去に生成されたメタデータを格納するメタデータ格納部から取り出して修正作業者に提示し、修正作業者にステップdで特定された現在の問題の発生箇所に適用可能なメタデータM0を選択させるステップと、fコンピュータが、選択されたメタデータM0の操作情報を参照して、ウェブアプリケーションの現在の問題を修正するためのメタデータM2を生成するステップとを更に含む。より好ましくは、gコンピュータが、メタデータM2を用いてメタデータM0の適用条件を汎化することにより既存のメタデータM0を更新するステップを更に含む。また好ましくは、hコンピュータが、現在のウェブアプリケーションが出力したウェブページのアドレス情報と、ウェブアプリケーションの現在の状態を特定するグローバル変数群及びクッキー情報とを算出するステップと、iコンピュータが、算出したアドレス情報、グローバル変数群、及びクッキー情報を検索キーとして、一致するメタデータM0を過去に生成されたメタデータを格納するメタデータ格納部から取り出すステップと、jコンピュータが、取り出したメタデータM0のブロック情報を、該メタデータM0のブロック特定情報から取り出される現在のウェブアプリケーションが出力したウェブページ内の対応するブロックと比較し、一致しない場合にメタデータM0の修正を修正作業者に促し、修正されたブロック特定情報を受け取るステップと、kメタデータM0のブロック特定情報を、修正されたブロック特定情報を用いて汎化することにより既存のメタデータM0を更新するステップを更に含む。以上、動的なウェブアプリケーションの問題を修正するメタデータの生成管理を支援する方法として本発明を説明した。しかし本発明は、そのような方法をコンピュータに実行させるための支援プログラム、及びそのような支援プログラムをコンピュータにインストールして実現される支援装置として把握することもできる。本発明によれば、メタデータの適用条件としてウェブアプリケーションの状態を特定するグローバル変数群及びクッキー情報を含むメタデータを生成するので、動的なウェブアプリケーションにおける問題点を、メタデータを用いて解決することが可能となる。また本発明によれば、メタデータの適用条件に更にウェブページ内の問題の発生箇所を含む意味的にまとまりのあるブロック情報を含めるので、ブロック情報を手掛かりに、生成したメタデータを適用可能なウェブページ内の他のブロックをコンピュータの演算処理により見つけ出すことが可能となる。そして本発明によれば、適用条件としてのブロックとこれに類似する他のブロックにそれぞれ対応するグローバル変数群及びクッキー情報の各々をkeyvalueのペア構造に変換するので、グローバル変数群及びクッキー情報それぞれの集合について共通する部分を取り出すことが可能となり、グローバル変数群及びクッキー情報の適用条件を拡張することが可能となる。本願発明のその他の効果については、各実施の形態の記載から理解される。以下、本願発明を実施するための形態を図面に基づいて詳細に説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。なお、実施の形態の説明の全体を通じて同じ要素には同じ番号を付している。図2は、本発明が適用されるコンピュータを含むネットワークシステムソーシャルアクセシビリティシステムの一実施態様及び本発明の実施形態による支援装置200の機能ブロックを示す。本システムは、メタデータ管理サーバ202、ウェブサーバ255、問題データベース260、開発者PC265、修正作業者PC270を備える。これらはインターネット等のネットワーク262を介して互いに通信可能に接続されている。また、メタデータ管理サーバ202上では支援装置200が動作し、ウェブサーバ255上ではウェブアプリケーション250が動作する。本発明では、利用者のウェブブラウザ上に静的なウェブサイトの情報を表示するだけの単純なウェブアプリケーションから、java登録商標script等の技術を用いてページ遷移を伴わずにウェブブラウザ上の情報を動的に更新する動的なウェブアプリケーションまでのほぼ全てのウェブアプリケーションを対象とする。従って図2に示すウェブアプリケーション250の種類に特に制限はなく、以下では本発明が対象とするウェブサーバ255上のウェブアプリケーション250を総称してRichinternetapplicationRIA250とよぶ。また本発明では、RIA250の開発者開発者PC265のみならずRIA250上の問題点を修正する修正作業者修正作業者PC270の存在を仮定する。修正作業者は開発者自身であってもよいし、RIA250に造詣の深い専門知識を持った専門家や利用者であってもよい。更に本発明では、既存の技術を活用した方法によってRIA250上の問題点がまとめられた問題データベースDB260が存在するものとする。問題DB260としては、Bugzilla詳細は、httpwwwbugzillaorgを参照などのバグトラッキングシステムを利用できる。修正作業者は修正作業者PC270にインストールされたウェブブラウザを用いてネットワーク262を介してRIA250にアクセスすると、問題DB260に登録されている問題P1を参照して、1問題P1の発生箇所の特定を行い、2問題P1の修正を行う。修正結果は、SAにおけるソーシャルアクセシビリティサーバ65に相当するメタデータ管理サーバ202によって管理される。本発明の実施形態による支援装置200は、このような修正作業者による修正作業に応答して起動され、修正作業者が修正結果をメタデータとして生成し、メタデータの適用条件を汎化し及び検証することを支援する。支援装置200は、メタデータ管理サーバ202上に実装され、メタデータ管理サーバ202の一部として動作する。メタデータ管理サーバ202は、後述する支援装置200の各構成要素のほかに、図示しない、基本的な機能を提供するオペレーションシステムと、ウェブブラウザと、修正作業者PC270上で動作するウェブブラウザのプラグイン若しくは単体アプリケーションとの通信機能を果たす通信部とを備える。ここで、修正作業者PC270上で動作するウェブブラウザのプラグイン若しくは単体アプリケーションは、編集作業者の操作ログ取得、問題の解決に適用可能なメタデータの提示及び選択、手動での問題解決、作成されたメタデータを適用可能なRIA250の状態およびブロックの表示及び選択、現在のRIA250の状態で正しく適用できないメタデータの表示、及び正しい適用位置の選択又は削除を支援する。詳細は支援装置200の機能に関連して後述する。なお、メタデータ管理サーバ202とウェブサーバ255は同一サーバ上に実装してもよく、また、これらを開発者PC265や修正作業者PC270上で動作させる構成を採用してもよい。更に、修正作業者PC270は、支援装置200とのユーザインタフェースとして機能する図示しないウェブブラウザを備え、メタデータ管理サーバ202は、修正作業者PC270上で動作するウェブブラウザのプラグインとして、或いは、単体アプリケーションとして実装してもよい。以下では、メタデータ管理サーバ202とウェブサーバ255は同一サーバ上に実装されるものとして説明する。この場合、修正作業者のRIA250に関連する操作は、上述した修正作業者PC270上で動作するウェブブラウザのプラグイン若しくは単体アプリケーションにより、上述したメタデータ管理サーバ202の通信部を経由して支援装置200へ通知される。逆もまた同様である。より具体的には、支援装置200は、汎化対象設定部205を含み、汎化対象設定部205は、開発者がメタデータ管理サーバ202にネットワーク262を介して接続された開発者PC265を介して、RIA250の状態を特定するのに有効なグローバル変数群及びクッキー情報の種類を汎化対象DB210に登録するのを可能にする。また、支援装置200は操作ログ記録部215を含み、操作ログ記録部215は、修正作業者による修正対象とするRIA250へのアクセスに応答して、問題発生箇所の特定作業の間、修正作業者PC270上の操作情報を取得し、操作ログDB220に記録する。支援装置200はまた、メタデータ生成部225と、ブロック抽出部230と、類似ブロック検索部235と、メタデータ汎化部245とを含み、修正作業者による問題P1の修正に応答して、該問題P1の修正内容を含むメタデータM1を本発明において新たに定義したメタデータの構造に従って生成するとともに、問題P1の発生箇所を含む意味的にまとまりのあるブロックを手掛かりに、生成したメタデータM1を適用可能な他のブロックを操作ログDB220から抽出し、これを用いて生成したメタデータM1の適用条件を汎化してメタデータDB240に格納する第1実施例。支援装置200は更に類似メタデータ検索部250を含み、修正作業者による問題P1の発生箇所の特定に応答して、問題P1の発生箇所を含む意味的にまとまりのあるブロックを手掛かりにメタデータDB240から問題P1に適用可能な既存のメタデータM0を検索し、検索した既存のメタデータM0を利用して問題P1を修正するためのメタデータM1を生成するとともに、生成したメタデータM1を用いて検索した既存のメタデータM0を汎化してメタデータDB240に格納する第2実施例。支援装置200は更にまたメタデータ検証部255を含み、修正作業者PC270からの要求によりRIA250の状態が変化するごとに、変化後のRIA250の状態に適用可能な既存のメタデータM0をメタデータDB240から検索し、検索した既存のメタデータM0の適用条件に基づき決定される現在のRIA250の状態におけるウェブページ内のブロックが、本来意図されたブロックと一致しない場合に、既存のメタデータM0の適用条件の修正を修正作業者に促し、修正作業者によって入力された修正情報に基づきメタデータDB240内の既存のメタデータを更新する第3実施例。以下、支援装置200の各構成要素の詳細を、上記第1から第3の実施例に沿って順に説明する。第1実施例は、修正作業者が支援装置200を利用して、操作情報を記録しながらRIA250上の問題P1を新たに解決してメタデータM1を生成するとともに、操作ログを活用して生成したメタデータM1を他の箇所にも適用可能に拡張するというシナリオに沿ったものである。修正作業者は、問題DB260から取得したRIA250上の問題リストを参照し、ある問題P1について修正方法を思いつくと、ウェブブラウザを起動してRIA250にアクセスする。すると該アクセスがメタデータ管理サーバ202の一部として動作する支援装置200に検出され、メタデータ生成部225が呼び出される。呼び出されたメタデータ生成部225は修正作業者によるウェブブラウザを介したRIA250上での操作を監視して、修正作業者が、問題P1が発生するRIA250の状態を特定するのを待つ。ここでRIA250の状態とは、次の情報により特定されるものである。A.RIA250が出力するHTML文書ウェブページともいうの場所を特定するURLB.ウェブブラウザ上でjava登録商標scriptがアクセス可能なグローバル変数群但し、以下のDと関数を表す変数を除くC.RIA250に関連したクッキー情報D.DocumentObjectModelDOMで定義されるHTML文書但し、BとCについては、BとCに属する全ての情報を単純に利用するだけではRIA250の状態をうまく特定できない可能性がある。そこで本発明では、上述したように、汎化対象設定部205と汎化対象DB210とを用意し、開発者が予め支援装置200に対しRIA250の状態を特定するために有効なグローバル変数群及びクッキー情報の種類を設定できるようにした。即ち、汎化対象設定部205は、開発者PC265からネットワーク262を介して送信されたグローバル変数群及びクッキー情報の種類を示す情報を受信すると、これを同じく開発者PC202から送信されたRIA250の識別情報に関連付けて汎化対象DB210に格納する。そして、メタデータ生成部225は呼び出されると最初に汎化対象DB210にアクセスし、修正作業者PC上のウェブブラウザが現在アクセスしているRIA250に関連付けられたグローバル変数群及びクッキー情報の種類を示す情報を検索し、あればそれを作業領域に読み出す。なお、以下ではDOMで定義されるHTML文書を単にHTMLDOMと呼ぶ。メタデータ生成部225は、修正作業者が問題P1が発生するRIA250の状態に到達し、該状態におけるHTMLDOMの中から問題P1が発生する箇所を特定したことを検出すると、ブロック抽出部230を呼び出し、問題P1の発生時のHTMLDOMから問題P1の発生箇所を含む意味的にまとまりのあるブロックB1を抽出する。問題P1の発生箇所を含む意味的にまとまりのあるブロックB1は、HTMLDOM内の問題P1の発生箇所である要素を含むサブツリーと言い換えることもできる。なお、サブツリーは、問題P1の発生箇所である要素を含めばよく、そのサイズに制約はない。抽出されたブロックB1情報は、メタデータ生成部225に渡され、作業領域に一時保存される。ブロック抽出部230は、メタデータ生成部225により呼び出されると、問題P1が発生するRIA250の状態におけるHTMLDOMを、既存のブロック抽出手法を利用して複数のブロックに分割し、分割した複数のブロックから、問題P1の発生箇所である要素を含むブロックB1を抽出する。ここで、ブロック抽出手法としては、例えば、J.Mahmud、外2名、Csurf:AContext-DrivenNon-VisualWeb-Browser,Proceedingsofthe16thIinternationalconferenceonWorldWideWeb、2007や、Y.Lan、外2名、EliminatingnoisyinformationinWebpagesfordatamining、ProceedingsoftheninthACMSIGKDDinternationalconferenceonKnowledgeKDD‘03discoveryanddatamining、pp.296-305、2003等に開示される既存の手法を利用できる。以下、J.Mahmud等によって提案されたブロック抽出手法を利用したブロックB1の抽出方法を説明する。なお、J.Mahmud等によって提案されたブロック抽出手法は、HTMLDOM構造のみならず、意味的な情報からブロックB1を抽出するが、ここではより簡単なHTMLDOM構造のみからブロックB1の抽出方法を説明する。1HTMLDOM上で修正箇所である要素Eを特定する。2要素EがDOMツリーのルートに該当する場合は要素EそのものをブロックB1として特定を終了する。3要素EがDOMツリーのルートではない場合、要素Eの親要素Epを決定する。4親要素Epの子要素を調べる。親要素Epが2以上の子要素を持ち、かつその子要素同士の構造上の類似性が高いと判断される場合、親要素EpをブロックB1として特定を終了する。54において親要素Epの子要素構造に類似性があると判断できない場合、E=Epとして2の処理に戻る。4における子要素同士の構造上の類似性の判断には、いくつかのアルゴリズムがあるが、本実施例では要素の属性の類似性を利用する。例えば、子要素同士が同一のClass属性を持つ場合、システム内部では同一の構造を持つ要素として定義されているため、類似性が高いと判断できる。また、子要素同士が同種のID属性を持つ場合、システムによっては内部である規則に基づいてIDを生成しているため、類似性が高いと判断できる。なお、上記類似性の判断はあくまで例として説明したものであり他の類似性の判断手法の利用を制限するものではないことに留意されたい。以上のようにしてブロック抽出部230により抽出されるブロックB1は、コンピュータ内部において、HTMLDOMのサブツリーとして保持される。図3に例を示す。図3aはあるサイトのTOP画面300を示し、図3bは、図3aに示すTOP画面300のHTMLDOMツリー構造315を示す。ここで、矩形305により囲まれた箇所において問題P1が発生し、ブロック抽出部230が矩形310で囲まれたブロックB1を抽出したとすると、コンピュータ内部には、図3aの矩形310で囲まれたブロックB1に対応する図3bの矩形325に囲まれたHTMLDOMのサブツリー情報がブロックB1情報として保持される。図3bの矩形325に囲まれたHTMLDOMのサブツリー情報には、図3aに示す矩形305の問題P1の発生箇所に対応する、HTMLDOMのサブツリーの要素320が含まれる。なお、ブロックはどの位置に移動されてもHTMLDOMのサブツリーとして表されるため、ブロック情報は位置の移動によって変化しないことに留意されたい。メタデータ生成部225はまた、修正作業者による修正対象とするRIA250へのアクセスに応答して、操作ログ記録部215を呼び出して、問題P1の発生箇所の特定に至るまでの間の修正作業者によるRIA250上の操作ログL1と、問題P1の発生箇所の特定後、問題P1が解決されるまでの修正作業者によるRIA250上の操作ログL2とを記録する。L1とL2は同じ一連の操作ログとして取り扱われる。なお、問題P1の解決は、ウェブサイトのCSS、HTML、XML、DOM、java登録商標script等の記述や修正、デバックを行う機能を提供するFirebug詳細は、http:getfirebug.comを参照のようなツールを利用して修正作業者が手動により行ってよい。これに代えて、問題P1の解決は、既存のメタデータから現在の問題P1に適用可能なメタデータを検索することにより行ってもよい。但し、その場合であっても、適用可能なメタデータが存在しない場合は上述のように修正作業者が手動により修正を行う。本実施例では、問題P1の解決は、修正作業者が手動により行うものとする。なお、既存のメタデータを利用した問題P1の解決については実施例2において説明する。操作ログ記録部215は、メタデータ生成部225により呼び出されると、問題P1の発生箇所が特定されるまで、RIA250の状態が変化するごとにRIA250の状態や修正作業者のRIA250上の操作ログL1を取得して操作ログDB220に格納する。また、操作ログ記録部215は、問題P1の発生箇所の特定後、問題P1が解決されるまで、RIA250の状態が変化するごとにRIA250の状態や修正作業者のRIA250上の操作ログL2を取得して操作ログDB220に格納する。操作ログ記録部215が取得する操作ログL1は、1.修正作業者が修正対象のRIA250にアクセスしてから問題P1の発生箇所を特定するまでの全てのRIA250の状態、2.問題P1の発生箇所を指定する位置指定情報を含む。また、操作ログ記録部215が取得する操作ログL2は、3.問題P1の修正内容を含む。以下操作ログの情報1.~3.の内容を順に説明する。1.問題発生箇所の特定修正作業中に遷移したRIA250の各状態をASii=1、2、...、n、n:遷移したRIA250の状態数で表すと、各ASiは、上述したRIA250の状態を特定するための情報A~Dの組み合わせで表現される。なお、情報B及び情報Cについては、作業領域にRIA250の状態を特定するために有効なグローバル変数群及びクッキー情報の種類を示す情報が存在する場合には、該種類についてのみグローバル変数群及びクッキー情報の値を取得する。本操作ログは、現在の問題P1の修正内容を適用可能な他の箇所を探す際の手掛かりとして後述する類似ブロック検索部235により用いられる。2.修正作業者がウェブブラウザ上でマウス等の入力装置を用いて問題P1の発生箇所の特定を行う場合は、特定されたDOM中の要素をXPathや画像を指し示すURI等のポインタで指定し、位置指定情報とする。かかる情報はウェブブラウザから取得してよい。これに代えて、問題DB260に格納された問題P1の記述情報を流用してもよく、この場合、問題P1の記述情報DOM中の要素を指し示すXPathや画像を指し示すURI等のポインタがそのまま位置指定情報として利用される。3.Firebugのような既存のツールを利用して問題P1の発生箇所に対してなされた操作情報を修正内容とする。即ち、修正のための操作情報であって、修正対象例えば、DOMツリーのノード、属性、ファイル等を指定する情報と修正対象に対する修正内容例えば、挿入、削除、更新等、挿入及び更新については挿入内容や置換内容を含むを記録する。上記操作ログの情報2.及び3.は、メタデータを生成するメタデータ生成部225により用いられる。メタデータ生成部225は、操作ログ記録部215による操作ログL1及びL2の記録が終了すると、操作ログDB220に格納された操作ログL1及びL2を読み出して、現在の問題P1に対するメタデータM1を生成し、メタデータDB240に格納する。以下、本発明において新たに定義するメタデータM1のデータ構造と各データの取得方法とを説明する。メタデータM1は、問題P1を修正するための操作を示す操作情報と該操作情報の適用に関する適用条件を含む。最初に適用条件としての条件a~条件fを説明し、その後に操作情報について説明する。なお、メタデータの適用条件は、問題P1が発生する箇所を特定するための情報として捉えることができる。条件a:問題が生じたウェブページの場所を特定するアドレス特定情報、即ちURL。該情報は、操作ログL1の情報1のRIA250の最後の状態ASnに含まれる情報Aとして取得される。なお、取得したURLは、プロトコル、ドメイン、フォルダファイル、パラメータに分けて管理する。条件b:問題が発生した状態におけるRIA250に関連したグローバル変数群。該情報は、操作ログL1の情報1のRIA250の最後の状態ASnに含まれる情報Bとして取得される。条件c:問題が発生した状態におけるRIA250に関連したクッキー情報。該情報は、操作ログL1のRIA250の最後の状態ASnに含まれる情報Cとして取得される。条件d:メタデータM1の適用箇所、即ち、問題P1の発生箇所を含むブロックB1の情報。該情報は、上述したようにブロック抽出部230により抽出され作業領域に保存されているため、作業領域から取得される。条件e:問題の生じたウェブページ内のブロックB1の位置を特定するブロック特定情報。該情報は、操作ログL1の情報2の問題P1の発生箇所を指定する位置指定情報から、条件dのブロックB1の先頭箇所までの情報を抜き出すことにより求められる。例えば、問題P1の発生箇所を指定する位置指定情報として操作ログDB220に、htmlbodydivtabletbodytd3tabletbodytd1imagが格納されており、ブロックB1がtd3にあるテーブル構造であったとすると、ブロック特定情報は、htmlbodydivtabletbodytd3である。条件f:ブロックB1内で問題の発生箇所を特定する位置特定情報。該情報は、操作ログL1の情報2の問題P1の発生箇所を指定する位置指定情報から、条件dのブロックB1の先頭箇所から問題P1の発生箇所までの情報を抜き出すことにより求められる。例えば、例えば問題P1の発生箇所を指定する位置指定情報として操作ログDB220に、htmlbodydivtabletbodytd3tabletbodytd1imagが格納されており、ブロックB1がtd3にあるテーブル構造であったとすると、位置特定情報は、tabletbodytd1imagである。次に問題P1を修正するための操作を示す操作情報について説明する。該操作情報は、操作ログL2の情報3を利用して取得される。本発明では、従来技術のようにアクセシビリティの問題に特化せずに、より広く、一般的なウェブアプリケーション上のバグ修正やローカライゼーションといった様々な問題を扱うものとする。そのためメタデータの適用条件に合致した箇所に対する操作内容としては、1.HTMLDOMのノードに対する操作、2.要素の属性に対する操作、3.外部java登録商標script、CSSに対する操作の3種類の操作を指定可能とする。1.のHTMLDOMのノードに対する操作の場合、操作内容として、INSERT、UPDATE、DELETEのうちのいずれかの操作を指定する。また、操作内容としてINSERTHTML仕様に準拠を指定する場合は挿入するノードの情報のほか必要なパラメータを、操作内容としてUPDATEHTML仕様に準拠を指定する場合はノードの更新情報を、それぞれ追加で指定する。2.の要素の属性に対する操作の場合、操作内容として、INSERT、UPDATE、DELETEのうちのいずれかの操作を指定する。また、操作内容としてINSERTHTML仕様に準拠を指定する場合は属性を挿入する場所と挿入する属性の名前と値とを、操作内容としてUPDATEHTML仕様に準拠を指定する場合は更新する属性の名前と値とを、操作内容としてDELETEを指定する場合は削除する属性の名前を、それぞれ追加で指定する。3.の外部java登録商標script、CSSに対する操作の場合、操作内容は、UPDATEを指定し、更に、変更するファイルのロケーションと変更履歴既存のdiff技術で表示される差分でよいとを指定する。メタデータ生成部225は、上記のように定義されるメタデータM1を生成すると、次に類似ブロック検索部235を呼び出し、生成したメタデータM1を適用可能な他のブロックを操作ログDB220から抽出する。なお、類似ブロック検索部235の呼び出しは、ブロック抽出部230によりメタデータM1の条件dとしてのブロックが抽出された後であればよく、必ずしもメタデータM1の生成後である必要はない。類似ブロック検索部235は、メタデータ生成部225により呼び出されると、生成したメタデータM1を適用可能な他のブロックを操作ログDB210から抽出する。その手順は以下の通りである。まず類似ブロック検索部235は、操作ログDB220から操作ログL1の情報1を読み出して、修正作業中に遷移したRIA250の各状態ASii=1、2、...、n、n:遷移数を再現する。続いて類似ブロック検索部235は、再現したRIA250の各状態ASiにおけるHTMLDOM操作ログL1の情報Dを、既存のブロック抽出手法を利用して複数のブロックBSijj=1、2、...、mi、mi:状態ASiでのブロック分割数に分割する。なお、ブロック抽出方法についてはブロック抽出部230に関連して説明した通りであり、同様の処理をHTMLDOMツリーのルートノードをスタートとして、例えば深さ優先順等の一定の順序で全ノートについて行えばよい。だし、一度どこかのブロックに含まれたノードに関しての処理はスキップするものとする。これにより、同一ノードが別のブロックに含まれることを防ぐ。続いて類似ブロック検索部235は、分割した各ブロックBSijをメタデータM1の条件dであるブロックB1と比較し、RIA250の各状態ASiとブロックB1に類似するブロックBSijのペアからなる類似ブロックの集合SBk=ASi、BSijk=1、2、...、N、N:ペア数、N≦Σimiを求める。そしてブロックB1に類似するブロックBSijが1つでも存在する場合、即ち類似ブロックの集合SBkが空でない場合、類似ブロック検出部235は、求めた類似ブロックの集合SBkを修正作業者に提示して、メタデータM1の操作情報が示す操作を適用可能な類似ブロックABll=1、2、...、M、M:選択された類似ブロック数、M≦Nを選択させる。提示は、一例として類似ブロックBSijを対応する状態ASiのウェブページ内に目立つように表示させて行ってよく、選択されたブロックにはメタデータM1の条件fがそのまま適用されるものとする。修正作業者により選択された全ブロックABlは、類似ブロック検出部235からメタデータ生成部225へ渡される。なお、類似ブロック検索部235によるブロックの類似性の判断は、例えば、特開2007-52556に開示される類似判定手法を利用してよい。該類似判定手法では、比較する2つの構造化文書の各々を、独立して意味を持つ最大の部分木構造に構成し、それぞれの部分木の葉ノードクラスタ同士を照合し、照合する葉ノードクラスタ間で同じ内容を有する葉ノードの個数の比率に基づいて部分木間の類似度を求める。従って、本実施例では、ブロック同士の類似性の判断を、比較するブロック間で同じ内容の要素または属性の個数の比率に基づいて行うことができる。メタデータ生成部225は、類似ブロック検索部235からメタデータM1の操作情報が示す操作を適用可能な類似ブロックABll=1、2、...、Mを受け取ると、各類似ブロックABll=1、2、...、MについてメタデータMBll=1、2、...、Mを生成する。なお、類似ブロックABlは、ブロックB1に類似するブロックと対応するRIA250の状態情報のペアであり、メタデータMBlの生成は、対応するRIA250の状態情報とメタデータM1の条件fから求められることに留意されたい。そしてメタデータ生成部225は、メタデータ汎化部245を呼び出して、メタデータM1を、問題P1の発生箇所に類似する他の箇所の問題解決にも適用可能なメタデータMFに拡張する。そして、メタデータ生成部225は、メタデータDB240に格納されたメタデータM1をメタデータMFで更新する。メタデータ汎化部245は、メタデータ生成部225に呼び出されると、メタデータMBll=1、2、...、Mを用いてメタデータM1の適用条件を汎化する。但し、汎化の対象は、メタデータM1の条件a、b、c、eのみである。なぜならば、メタデータの条件d、fは、メタデータM1とメタデータMBlの全てのメタデータに共通であり不変であるからである。以下、条件ごとに汎化方法を説明する。条件a、即ち、問題が生じたウェブページの場所を特定するURLの汎化は、次の1~5の手順で行う。1.メタデータM1及びメタデータMBll=1、2、...、Mに属する全ての条件aを、プロトコル、ドメイン、フォルダファイル、パラメータに分類する。例1httpwwwtrlibmcomtestapp01shop01htmlstyleproductionプロトコル=http、ドメインwwwtrlibmcom、フォルダファイルtestapp01shop01html、パラメータstyleproduction例2httpwwwibmcomtestapp02cart01htmlstyleproductionitem3プロトコル=http、ドメインwwwibmcom、フォルダファイルtestapp02cart01html、パラメータstyleproduction、item32.プロトコルを汎化する。具体的には、全ての条件aについてプロトコルが同一である場合のみ、そのプロトコルを条件として残す。異なるプロトコルを含む条件aが1つでも存在する場合、任意のプロトコルを許可する条件とする。3.ドメインを汎化する。具体的には、全ての条件aについてドメインを後方一致させていき、共通部分だけを残す。即ち、後方一致させていく途中で一致しなくなった条件aが1つでも存在する場合、後方から全ての条件aについて一致した最後の部分までのドメイン部分を条件とする。上記1.の例1と例2の2つのURLがあったとすると、求められる共通部分はibmcomである。4.フォルダファイルを汎化する。具体的には、全ての条件aについてフォルダファイルを前方一致させていき、共通部分だけを残す。即ち、前方一致させていく途中で一致しなくなった条件aが1つでも存在する場合、前方から全ての条件aについて一致した最後の部分までのフォルダファイル部分を条件とする。上記1.の例1と例2の2つのURLがあったとすると、求められる共通部分はtestappである。5.パラメータを汎化する。具体的には、全ての条件aに共通して含まれるパラメータ名を全て抜き出し、抜き出したパラメータの値を調べる。全ての条件aについて値が一致するパラメータのみを条件として残す。異なるパラメータの値が設定された条件aが1つでも存在する場合には、そのパラメータは条件に含めない。上記1.の例1と例2の2つのURLがあったとすると、求められる共通部分は、styleproductionである。条件b、即ち、グローバル変数群の汎化は、メタデータM1及びメタデータMBll=1、2、...、Mに属する全てのグローバル変数群の各グローバル変数をJSONのようにkeyvalueのペア構造に変換し共通部分を取り出すことにより行う。以下、1.keyvalueのペア構造への変換方法と、2.変換後の全ての条件bから共通部分を取り出す方法とに分けて説明する。なお、関数やHTMLDOM若しくはその部分木であるグローバル変数は対象外とする。1.keyvalueのペア構造への変換方法1-1.数値、文字列といった単純オブジェクトは、単純keyvalueペア構造に変換する。例1styleproductioni1flagtruestyleproductioni1flagtrue例2styleproductioni3flagfalsestyleproductioni3flagfalse1-2.配列オブジェクトはJSON配列と同じようなkeyvalueのペア構造に変換する。即ち、配列の要素の値を、該要素を取り出すキーと該要素の値とからなるkeyvalueのペア構造に更に変換する。従って、単純配列はインデックスを補足し、連想配列は要素を取り出すキーをそのまま活用する。例3a9,5,1a092521例4a1,5a0125例5bstyleproductioni1flagtruebstyleproductioni1flagtrue例6bstyletesti3flagfalsebstyletesti3flagfalse1-3.階層オブジェクトは各変数を値としてもつ配列として取り扱うことでkeyvalueのペア構造に変換する。変換方法は配列オブジェクトの変換に準拠する。java登録商標script例functionCartmeitemsmetotal0nextId0functionCartItemmeidcnextIdvarcartnewCartcartitems0newCartItem例7cartCartitemsCartItemid1price100total0例8cartCartitemsCartItemid2price100total02.共通部分の取り出し方法2-1.全ての条件bに共通に含まれるkeyを全て抜き出し、抜き出したkeyのvalueを調べる。2-2.valueが数値、文字列といった単純オブジェクトの場合、全ての条件bについてvalueが同じである場合にのみそのkeyvalueを条件として残す。異なるvalueの条件bが1つでも存在する場合には、そのkeyのグローバル変数は条件に含めない。2-3.valueが配列オブジェクトの場合、その配列オブジェクトの各要素は1-2.で上述したようにkeyvalueのペア構造に変換されている。従って、各要素を条件bとみなして、上述した2-1.の処理に戻る。上記1-1.の例1と例2から共通部分を取り出すとすると、全てのkeyが例1と例2に共通して含まれる。しかしながら、keyのvalueを調べると、例1と例2でvalueが同一なのはstylekeyのみである。従って、styleproductionのみが共通部分として取り出される。また、上記1-2.の例3と例4から共通部分を取り出すとすると、例3と例4に共通なakeyのvalueが配列であるため、配列の各要素を条件bとみなして検討する。すると全ての条件bに共通なkeyは0keyと1keyであるが、全ての条件bについてvalueが同じなのは1keyのみである。従って、a15のみが共通部分として取り出される。また、上記1-2.の例5と例6から共通部分を取り出すとすると、例5と例6に共通なbkeyのvalueが配列であるため、配列の各要素を条件bとみなして検討する。すると全ての条件bに共通なkeyは、stylekey、ikey、及びflagkeyの全てのkeyである。しかし全ての条件bについてvalueが同じkeyは存在しない。従って、共通部分が存在しないため条件bは空となる。上記1-3.の例7と例8から共通部分を取り出すとすると、例5と例6に共通なCartkeyのvalueが配列であるため、配列の各要素を条件bとみなして検討する。すると全ての条件bに共通なkeyは、itemskey及びtotalkeyである。そのvalueを深さ優先で再帰的に比較すると、最終的にpricekeyとtotalkeyのvalueのみが同じであることが分かる。従って、階層構造を維持したままで、CartitemsCartItemprice100total0が共通部分として取り出される。条件c、即ちクッキー情報の汎化は、メタデータM1及びメタデータMBll=1、2、...、Mに属する全てのクッキー情報の各々をJSONのようにkeyvalueのペア構造に変換し共通部分を取り出すことにより行う。但し、secure等の単一情報からなるクッキー情報は、keyとvalueが同一のkeyvalueのペア構造に変換する。変換後の全てのクッキー情報から共通部分を取り出す方法は、条件bについて説明した方法と同じであるからここでは説明を省略する。条件e、即ち、条件dのブロックB1の位置を特定するブロック特定情報の汎化は、先頭からの共通パス及び最後尾からの共通パスのみを残すことにより行う。それ以外の途中の一致しない部分は省略し、を用いて子孫と直接結合する。但し、インデックスが一致しない場合はインデックスのみを省略する。また先頭からの共通パスがない場合には、適用対象を絞り込むために和集合UNIONを用いる。例1インデックスが一致しないだけの場合入力1:htmlbodydivdivtabletr3入力2:htmlbodydivdivtabletr7入力3:htmlbodydivdivtabletr1最後のインデックスだけが異なるため、汎化結果はhtmlbodydivdivtabletrとなる。例2途中のパスが異なる場合入力1:htmlbodydivdivtabletr1divdivforminput1入力2:htmlbodydivtabletr1divforminput1入力3:htmlbodydivdivtabletr3forminput1先頭からhtmlbodydivまでが合致し、最後尾からforminput1までが同一であるため、汎化結果はこの二つをで結合したhtmlbodydivforminput1となる。以上、第1実施例のシナリオに沿って支援装置200を説明した。図4は、そのような第1実施例のシナリオの一例を示す。修正作業者は、ウェブ上のあるショッピングサイトのカート機能に関する問題P1を修正すべく、支援装置200と連動して動作するウェブブラウザを起動してショッピングサイトに1ログインし、2商品を検索し、3商品1を選択して、4買い物かごに入れ、商品2、3について同様に処理を繰り返し、10最終的に商品3を買い物かごに入れたところで問題P1バグの発生箇所440を特定する。修正作業者がマニュアルで問題P1バグを修正すると、ウェブブラウザに連動して起動された支援装置200は、該修正内容を含むメタデータM1を、上述した本発明が新たに定義するメタデータの構造に従って生成する。続いて、支援装置200は、問題P1バグの発生箇所440を含む意味的にまとまりのあるブロック445を手掛かりに、生成したメタデータM1を適用可能な箇所として問題P1の発生箇所特定までの操作ログL1図4の表示画面405~435に関する情報からブロック450、455を検出する。支援装置200はブロック450、455に対しメタデータMB1、MB2を生成し、これらを用いてメタデータM1をブロック450、455に対して適用可能なように汎化する。図5は、図4に示す問題P1バグの発生箇所440を修正するためのメタデータM1の汎化の前後の状態を示す。メタデータM1500は、汎化前のメタデータM1を示し、メタデータM1505は、図4に示すブロック450及び455に適用可能に汎化された汎化後のメタデータM1を示す。図5に示す汎化では、条件bと条件eのそれぞれの汎化アルゴリズムに従って、問題の生じたウェブページ図4の画面435に関するグローバル変数群と、該ウェブページ図4の画面435内のブロック図4のブロック445の位置を特定するブロック特定情報が汎化されている。なお、図5に示すメタデータM1500、505の条件dに含まれるDS2はブロックの識別子である。次に図6~図9を参照して本発明の第1実施例によるメタデータの生成及び汎化処理の流れを説明する。図6aは、本発明の第1実施例によるメタデータの生成及び管理処理の前半の処理の流れを示すフローチャートである。図6bは、本発明の第1実施例によるメタデータの生成及び管理処理の後半の処理の流れを示すフローチャートである。図7は、図6aのステップ620におけるブロック抽出処理の流れを示すフローチャートである。図8は、図6bのステップ635における類似ブロック検索処理の流れを示すフローチャートである。図9は、図6bのステップ655における汎化処理の流れを示すフローチャートである。図6aに示すメタデータの生成及び管理処理の流れを示すフローチャートは、ステップ600から開始し、支援装置200は汎化対象DB210にアクセスし、ウェブブラウザが現在アクセスしているRIA250に関連付けられたグローバル変数群及びクッキー情報の種類を特定する情報が開発者により支援装置200に登録されているかを確認し、登録されている場合はその情報を作業領域へ読み出す。続いて支援装置200は、修正作業者E1により問題P1の発生箇所が特定されたか否かを判定するステップ605。問題P1の発生箇所が特定されていない場合ステップ605:NO、処理はステップ610へ進み、続いて支援装置200は、RIA250の状態が変化したか否かを判定する。RIA250の状態が変化していないと判定された場合ステップ610:NO、処理はステップ605に戻る。一方、RIA250の状態が変化した判定した場合ステップ610:YES、支援装置200はRIAの状態を取得し、これを操作ログL1として操作ログDB220に格納する。そして処理は再びステップ605の判定処理に戻る。ステップ605において、問題P1の発生箇所が特定されたと判定された場合ステップ605:YES、処理はステップ620へ進み、続いて支援装置200は問題P1の発生箇所を含むHTMLDOM内のブロックB1を抽出する。ブロックB1の抽出処理の詳細は図7を参照して後述する。ステップ620の後、処理は結合点Dを介して図6bに示すフローチャートのステップ625へ続く。なお、ステップ620の後結合点Cを経由する処理の流れは第2実施例として後述する。続いて図6bのステップ625において、支援装置200は、問題P1が修正作業者E1により修正されたか否かを判定する。ステップ625の判定は、問題P1の修正が完了するまで繰り返される。修正作業者E1による問題P1の修正が完了したと判定されるとステップ625:YES、処理はステップ630へ進み、支援装置200は本発明において新たに定義したメタデータの構造に従って問題P1を修正するためのメタデータM1を生成する。続いて支援装置200は、生成したメタデータM1を適用可能な類似ブロックを求めて操作ログDB210を検索するステップ635。類似ブロックの検索処理の詳細は図8を参照して後述する。続いて支援装置200は、生成したメタデータM1を適用可能な類似ブロックが見つかったか否かを判定するステップ640。類似ブロックが見つからなかった場合ステップ640:NO、支援装置200は生成したメタデータM1をメタデータDB240に登録しステップ645、そして処理は終了する。一方、類似ブロックが見つかった場合ステップ640:YES、処理はステップ650へ進み、支援装置200は検出した類似ブロックごとに対応するメタデータMBlを生成する。続いて支援装置200は、メタデータM1の適用条件を、ステップ650で生成した全メタデータMBlを用いて汎化するステップ655。メタデータM1の適用条件の汎化処理の詳細は図9を参照して後述する。続いて支援装置200は汎化されたメタデータM1をメタデータDB240に登録するステップ660。そして処理は終了する。図7に示すブロック抽出処理の流れを示すフローチャートは、ステップ700から開始し、支援装置200は、J.Mahmud等によって提案されたブロック抽出手法などの既存のブロック抽出手法を用いて、問題P1の発生するRIA250の状態におけるHTML文書を複数のブロックに分割する。続いて支援装置200は、分割した複数のブロックの中から、問題P1の発生箇所を含むブロックを抽出するステップ705。そして処理は終了する。図8に示す類似ブロック検索処理の流れを示すフローチャートは、ステップ800から開始し、支援装置200は、操作ログDB220から現在の問題P1の発生箇所の特定までの間に記録された操作ログL1を読み出して、操作ログL1に含まれる操作ログの情報1から、作業中に遷移したRIA250の各状態ASii=1、2、...、nを復元する。続いて支援装置200は、メタデータM1を適用可能な類似ブロックの集合ABlを空集合として生成するステップ805。続いて支援装置200は、RIA250の全ての状態ASii=1、2、...、nに対して、以降のステップ815からステップ840の一連の処理が完了したか否かを判定するステップ810。上記一連の処理が完了していない状態ASiが残っている場合ステップ810:NO、続いて支援装置200は復元されたRIA250状態ASii=1、2、...、nの集合から次に処理すべき状態ASiを選択しステップ815、選択した状態ASiにおけるHTML文書を、J.Mahmud等によって提案されたブロック抽出手法などの既存のブロック抽出手法を利用して複数のブロックに分割するステップ820。続いて支援装置200は、分割した各ブロックと生成したメタデータM1の条件dとしてのブロックB1とを上述した既存の類似判断手法を用いて比較し、類似ブロック全てをメタデータM1の適用候補の集合として修正作業者E1に提示するステップ825。続いて支援装置200は、提示したメタデータM1の適用候補の集合の中から1以上の類似ブロックが修正作業者E1により選択されたか否かを判定するステップ830。修正作業者E1により1以上の類似ブロックが選択された場合ステップ830:YES、支援装置200は選択された1以上の類似ブロックを、メタデータM1を適用可能な類似ブロックの集合ABlに追加するステップ835。ステップ835から、又は修正作業者E1により1つも類似ブロックが選択されない場合ステップ830:NO、処理はステップ840へ進み、支援装置200は、RIA250の現在の状態ASiに対する上記一連の処理を終了し、ステップ810へ戻る。そして支援装置200はステップ810において再びRIA250の全ての状態ASiに対して上記一連の処理が完了したか否かを判定し、全ての状態ASiに対して上記一連の処理が完了していると判断した場合ステップ810:YES、類似ブロック検索処理を終了する。図9に示す汎化処理の流れを示すフローチャートは、ステップ900から開始し、支援装置200は、メタデータM1の条件a、即ち、問題が生じたウェブページの場所を特定するURLを汎化する。汎化は、メタデータM1の条件aと、メタデータM1を適用可能な類似ブロックの各々に対して生成した全メタデータMBlの条件aとを用いて、上述した条件aの汎化のアルゴリズムに従って行う。続いて支援装置200は、メタデータM1の条件b、即ち、グローバル変数群を汎化するステップ905。汎化は、メタデータM1の条件bと、メタデータM1を適用可能な類似ブロックの各々に対して生成した全メタデータMBlの条件bとを用いて、上述した条件bの汎化のアルゴリズムに従って行う。続いて支援装置200は、メタデータM1の条件c、即ち、クッキー情報を汎化するステップ910。汎化は、メタデータM1の条件cと、メタデータM1を適用可能な類似ブロックの各々に対して生成した全メタデータMBlの条件cとを用いて、上述した条件cの汎化のアルゴリズムに従って行う。続いて支援装置200は、メタデータM1の条件e、即ち、ブロックB1の位置を特定するブロック特定情報を汎化するステップ915。汎化は、メタデータM1の条件eと、メタデータM1を適用可能な類似ブロックの各々に対して生成した全メタデータMBlの条件eとを用いて、上述した条件eの汎化のアルゴリズムに従って行う。その後処理は終了する。第2実施例は、修正作業者が支援装置200を利用して、RIA250上の問題P1を修正するためのメタデータM1を既存のメタデータを利用して生成するとともに、利用した既存のメタデータM0を、生成したメタデータM1を用いて汎化するというシナリオに沿ったものである。第2実施例による支援装置200もまた、第1実施例による支援装置200と同様に、汎化対象設定部205と、汎化対象DB210と、操作ログ記録部215と、操作ログDB220と、メタデータ生成部225と、ブロック抽出部230と、メタデータ汎化部245を含む。これら共通の構成要素については第1実施例において説明した通りであるから、以下では第2実施例による支援装置200に固有の構成要素である類似メタデータ検索部250とメタデータDB240を中心に、第2実施例による支援装置200の機能を説明する。メタデータ生成部225は、修正作業者により問題P1が発生するRIA250の状態が特定されたことを検出すると、類似メタデータ検索部250を呼び出して、メタデータDB240から問題P1に適用可能な既存のメタデータを検索する。なお、本実施例では、メタデータDB240には、本発明において新たに定義したメタデータの構造に従い過去に生成されたメタデータが格納されているものとする。また、類似メタデータ検索部250の呼び出し時点において、支援装置200の作業領域には、ブロック抽出部230により抽出された問題P1の発生箇所を含むブロックB1が保持されており、操作ログDB220には、操作ログ記録部215により操作ログL1の情報2として問題P1の発生箇所を指定する位置指定情報が格納されていることに留意されたい。類似メタデータ検索部250は、メタデータ生成部225により呼び出されると、問題P1の発生箇所を含むブロックB1と問題P1の発生箇所を指定する位置指定情報とから、メタデータM1の条件fとなる、ブロックB1内で問題の発生箇所を特定する位置特定情報を求める。そして類似メタデータ検索部250は、メタデータM1の条件dとなるブロックB1と、メタデータM1の条件fとなる位置特定情報とを検索キーとして、一致する全ての既存のメタデータMii=1、2、...、n、n:一致するメタデータ数をメタデータDB240から取り出す。そして類似メタデータ検索部250は、取り出した全てのメタデータMiを修正作業者に提示して、問題P1に適用可能なメタデータMs1≦s≦nを1つ選択させる。選択されたメタデータMsは類似メタデータ検索部250からメタデータ生成部225へ渡される。メタデータ生成部225は、類似メタデータ検索部250から受け取ったメタデータMs1≦s≦nの操作情報を用いて、問題P1を修正するためのメタデータM1を生成する。なお、メタデータの残りの条件a、b、c、及びeの算出方法は、第1実施例において説明した通りであるからここでは説明を省略する。メタデータ生成部225はまた、メタデータ汎化部245を呼び出して、問題P1に適用可能とされたメタデータMs1≦s≦nを、生成したメタデータM1を用いて、適用条件のより広いメタデータMFに汎化する。そして、メタデータ生成部225は、メタデータDB240に格納された既存のメタデータMs1≦s≦nをメタデータMFで更新する。メタデータ汎化部245は、メタデータ生成部225に呼び出されると、メタデータMs1≦s≦nと新たに生成されたメタデータM1とを用いてメタデータMsの適用条件条件a、b、c、及びeを汎化する。各条件の汎化のアルゴリズムは第1実施例において説明した通りであるからここでは説明を省略する。以上、第2実施例のシナリオに沿って支援装置200を説明した。図10は、そのような第2実施例のシナリオの一例を示す。修正作業者は、ウェブ上のあるショッピングサイトの商品検索結果における価格比較に関する問題を修正すべく、支援装置200と連動して動作するウェブブラウザを起動してショッピングサイトにアクセスし、ノートパソコンを検索キーとして検索結果をリクエストして図10aに示すウェブページ1000を取得する。修正作業者が問題P1ComparePriceの発生箇所1005を特定すると、支援装置200は発生箇所1005を含むブロック1010を抽出し、ブロック1010条件dとブロック1010内の問題P1ComparePriceの発生箇所1005条件fとを検索キーとして、メタデータDB240を検索する。メタデータDB240には、図10bに示すウェブページ1015上の問題P0ComparePriceの発生箇所1020を修正するメタデータM0が格納されている。ウェブページ1015は、同じショッピングサイトで空気清浄機を検索キーとして得られた検索結果であることから、価格比較ComparePriceに関して同様の問題が生じており、修正のためメタデータM0が生成されている。支援装置200は、上記条件dと条件fの検索キーと一致する条件を有するメタデータとしてメタデータM0をメタデータDB240から抽出し、メタデータM0を用いて現在の問題P1に適用するメタデータM1を生成する。支援装置200はまた、メタデータM1を用いて、既存のメタデータM0の適用条件を汎化する。図11は、図10bに示す問題P0ComparePriceの発生箇所1020を修正するための既存のメタデータM0の汎化前後の状態を示す。メタデータM11100は、図10aに示す問題P1ComparePriceの発生箇所1005を修正するための新たに生成されたメタデータM1を示す。メタデータM01105は、汎化前の既存のメタデータM0を示し、メタデータM01110は、新たに生成されたメタデータM1を用いて汎化された汎化後の既存のメタデータM0を示す。図11に示す汎化では、条件a、b、及びeの汎化アルゴリズムに従って、問題の生じたウェブページ1015のURLと、グローバル変数群と、ブロック1025の位置を特定するブロック特定情報が汎化されている。次に図12~図13を参照して本発明の第2実施例によるメタデータの生成及び汎化処理の流れを説明する。図12は、本発明の第2実施例によるメタデータの生成及び既存のメタデータの汎化処理の後半の処理の流れを示すフローチャートである。なお、第2実施例によるメタデータの生成処理の前半については、第1実施例によるメタデータ生成処理のブロック抽出処理までの処理と同じであるからここでは説明を省略する。図13は、本発明の第2実施例における類似メタデータ検索処理の流れを示すフローチャートである。図12に示すメタデータの生成及び既存のメタデータの汎化処理の流れを示すフローチャートは、図6aのステップ620のブロック抽出処理に続く処理の流れを示し、支援装置200は、ステップ1200において、現在の問題P1の発生箇所に適用可能な既存のメタデータM0を探して、メタデータDB240を検索する。類似メタデータ検索処理の詳細は、図13を参照して後述する。続いて支援装置200は、現在の問題P1の発生箇所に適用可能な既存のメタデータM0が存在したか否かを判定するステップ1205。既存のメタデータM0が存在しない場合ステップ1205:NO、処理は結合点Dを介して第1実施例に関して説明した図6bに示すフローチャートのステップ625へ進む。この場合、修正作業者は手動で問題P1を修正する。以降の処理は第1実施例を参照されたい。一方、現在の問題P1の発生箇所に適用可能な既存のメタデータM0が存在した場合ステップ1205:YES、処理はステップ1210へ進み、支援装置200は、既存のメタデータM0の操作情報を用いて、本発明のおいて新たに定義したメタデータのデータ構造に従い、現在の問題P1の発生箇所を修正するメタデータM1を生成する。続いて支援装置200は、既存のメタデータM0の適用条件を、新たに生成したメタデータM1を用いて汎化するステップ1215。汎化処理の詳細は図9を参照して説明した通りであるからここでは省略する。最後に支援装置200は、メタデータDB240に格納されている、ステップ1200の類似メタデータ検索処理において見つかった既存のメタデータM0の適用条件を、ステップ1215の汎化処理で求めた適用条件で更新するステップ1220。そして処理は終了する。図13に示す類似メタデータ検索処理の流れを示すフローチャートは、ステップ1300から開始し、支援装置200は、問題P1の発生箇所を含むブロックB1メタデータM1の条件d内で問題の発生箇所を特定する位置特定情報メタデータM1の条件fを算出する。該算出は、操作ログの情報2の問題P1の発生箇所を指定する位置指定情報から、ブロックB1の先頭箇所から問題P1の発生箇所までの情報を抜き出すことにより求められる。続いて支援装置200は、メタデータM1の条件dとなるブロックB1と、メタデータM1の条件fとなる位置特定情報とを検索キーとして、一致する全ての既存のメタデータMii=1、2、...n、n:一致するメタデータ数をメタデータDB240から取り出すステップ1305。続いて支援装置200は、取り出した全てのメタデータMiを修正作業者E1に提示して、問題P1に適用可能なメタデータを1つ選択させるステップ1310。続いて、支援装置200は、提示したメタデータMiの1つを修正作業者E1が選択したか否かを判定するステップ1315。メタデータMiが選択されなかった場合ステップ1315:NO、処理はそのまま終了する。一方、修正作業者E1が提示したメタデータMiを選択した場合ステップ1315:YES、支援装置200は、選択されたメタデータMiを問題P1に適用可能なメタデータMs1≦s≦nとするステップ1320。そして処理は終了する。第3実施例は、RIA250の状態が変化することに応答して、現在のRIA250の状態に適用可能な既存のメタデータをメタデータDB240から検索し、検索した既存のメタデータの適用条件に基づき決定される現在のRIA250の状態におけるメタデータの適用位置が、本来の意図された適用位置と一致しない場合に、既存のメタデータの適用条件の微調整を修正作業者に促し、微調整された情報を基に既存のメタデータを汎化するというシナリオに沿ったものである。第3実施例による支援装置200は、第1実施例又は第2実施例による支援装置200の構成要素に、更にメタデータ検証部255を追加することで実現される。そこで以下ではメタデータ検証部255を中心に、第3実施例による支援装置200の機能を説明する。メタデータ生成部225は、RIA250の状態が変化したことを検出すると、メタデータ検証部255を呼び出し、メタデータDB240に格納されている既存のメタデータが現在のRIA250の状態に正しく適用できるかを検証する。このとき操作ログDB220には、現在のRIA250の状態ASpが、上述した情報AのURL、情報Bのグローバル変数群、情報Cのクッキー情報、及び情報DのHTMLDOMの組み合わせとして格納されていることに留意されたい。メタデータ検証部255は、メタデータ生成部225により呼び出されると、現在のRIA250の状態ASpを特定する情報AのURL、情報Bのグローバル変数群、及び情報Cのクッキー情報を検索キーとして、そのa、b、及びcの適用条件が一致する既存のメタデータMii=1、2、...n、n:適用可能なメタデータ数を、現在のRIA250の状態ASpに適用可能な既存のメタデータとして、メタデータDB240から抽出する。そしてメタデータ検証部255は、抽出した各メタデータMiに対し、該メタデータMiの条件eが特定する位置に存在するブロックBiを、現在のRIA250の状態ASpを特定する情報DのHTMLDOMから抽出し、抽出したブロックBiを上記メタデータMiの条件dのブロックと比較する。両ブロックが一致する場合、抽出した既存のメタデータMiは現在のRIAの状態ASpに正しく適用できることを意味するため、メタデータ検証部255はメタデータの検証処理を終了する。しかし、両ブロックが一致しない場合、これは、既存のメタデータMiの適用箇所が該適用箇所を含むブロック単位でウェブページ内の他の位置に移動したか、または削除された可能性が高いことを意味する。そのため、メタデータ検証部255は、両ブロックが一致しなかったメタデータの集合Mjj=1、2、...m、m:ブロックが合致しなかったメタデータ数、m≦nを修正作業者に提示して、メタデータMjの条件eのブロック特定情報の修正を促す。なお、上述したようにブロック情報はRIA250の状態が変化しても不変である。そのため、既存のメタデータMiの条件dに一致するブロックを現在のRIA250の状態ASpにおけるHTMLDOMから探し出すことで、移動後の位置や削除されている場合はその事実を求めることができる。修正作業者から修正後のブロック特定情報が入力されると、メタデータ検証部255は、第1実施例において説明した条件eの汎化アルゴリズムに従い、修正前のブロック特定情報と修正後のブロック特定情報とを用いてメタデータMjの条件eを汎化する。そしてメタデータ検証部255は、メタデータDB240内のメタデータMjの条件eを汎化した条件eで更新する。以上、第3実施例のシナリオに沿って支援装置200を説明した。図14は、そのような第3実施例のシナリオの一例を示す。図14に示すウェブページ1300、1315は、どちらも自分の好みにカスタマイズできる同一のポータルサイトのトップ画面を示すが、それぞれ異なる状態にあるウェブページである。即ち、ウェブページ1300では左上に配置されているウィジェットのブロック1305aが、ウェブページ1315では真ん中の欄に移動されて、異なる位置のブロック1305bとなっている。ここで、次のような状況を考える。修正作業者が、修正作業中に、ウェブページ1315を表示させたとする。このときメタデータDB240には、ウェブページ1300上のブロック1305a内の問題を修正するためのメタデータM0が格納されているとする。すると支援装置200は、ウェブブラウザが現在表示しているウェブページ1315のURL、グローバル変数群、及びクッキー情報が、メタデータM0の適用条件の条件a、b、及びcとそれぞれ一致することから、現在のウェブページ1315に適用可能なメタデータとしてメタデータM0をメタデータDB240から抽出する。そして支援装置200は、ウェブページ1315からメタデータM0の条件eが特定する位置に存在するブロック1310bを抽出し、これをメタデータM0の条件dとして指定されているウェブページ1300上のブロック1305aと比較する。両ブロックが一致しないことから、支援装置200は元のブロック1305aの移動又は削除を推測し、現在のウェブページ1315に正しく適用できるように修正作業者に対してメタデータM0の条件eの微調整を促す。修正作業者から修正後の条件eが入力されると、支援装置200は元の条件eと修正後の条件eを用いて条件eを汎化し、汎化された条件eでメタデータDB240内のメタデータM0の条件eを更新する。次に図15~図16を参照して本発明の第3実施例によるメタデータの微調整処理の流れを説明する。図15は、本発明の第3実施例による既存のメタデータの微調整処理の流れを示すフローチャートである。図16は、図15に示すフローチャートのステップ1500の微調整が必要な既存メタデータ検索処理の詳細な流れを示すフローチャートである。図15に示すメタデータの微調整処理の流れを示すフローチャートは、図6aのステップ615からステップ605へ戻る途中に実行される処理であり、支援装置200は、ステップ1500において、現在のRIA250の状態に適用可能であって、かつ、微調整が必要なメタデータMjj=1、2、...m、m:適用可能かつ微調整が必要なメタデータ数を求めてメタデータDB240を検索する。微調整が必要なメタデータMjの検索処理の詳細は、図16を参照して後述する。続いて支援装置200は、微調整が必要なメタデータMjがあったか否かを判定するステップ1505。微調整が必要なメタデータMjが存在した場合ステップ1505:YES、支援装置200は、微調整が必要なメタデータMjの各々についてその条件eのブロック特定情報を、修正作業者E1によって入力された修正後の条件eのブロック特定情報を用いて条件eの汎化アルゴリズムに従って汎化するステップ1510。そして支援装置200は、汎化した条件eのブロック特定情報でメタデータDB240内のメタデータMjを更新するステップ1515。ステップ1515の後、またはステップ1505において微調整が必要なメタデータMjが存在しなかった場合、処理は結合点Bを介して図6aのステップ605へ戻る。図16に示す微調整が必要な既存メタデータ検索処理の流れを示すフローチャートは、ステップ1600から開始し、支援装置200は、現在のRIA250の状態ASpに適用可能なメタデータMiの集合i=1、2、...n、n:適用可能なメタデータ数を、現在のRIA250の状態ASpを特定する情報A、情報B、及び情報Cを検索キーとして、メタデータDB240から検出する。続いて支援装置200は、微調整の必要なメタデータの集合Mjを空集合として生成するステップ1605。続いて支援装置200は、メタデータの集合Miの全ての要素についてステップ1615からステップ1650の一連の処理を行ったか否かを判定する。ステップ1610を初めて実行する際は、判定結果はいいえとなる。メタデータの集合Miに上記一連の処理が未実施のメタデータMiが残っている場合ステップ1610:NO、続いて支援装置200は、メタデータの集合Miから次に処理するメタデータMiを選択するステップ1615。続いて支援装置200は、選択したメタデータMiの条件eで特定される現在のRIA250状態ASpにあるウェブページ内のブロックと、選択したメタデータMiの条件dのブロックとを比較しステップ1620、両ブロックが一致するか否かを判定するステップ1630。両ブロックが一致しない場合ステップ1630:NO、支援装置200は、選択メタデータMiの条件eを修正作業者E1に提示しステップ1635、メタデータMiが現在のRIA250状態に適用可能となるように条件eを修正することを促す。続いて支援装置200は、修正作業者E1が修正した条件eを入力したか否かを判定するステップ1640。修正作業者E1により微調整された条件eが入力された場合ステップ1640:YES、支援装置200は選択したメタデータMiをメタデータの集合Mjに追加するステップ1645。一方、ステップ1630において両ブロックが一致する場合ステップ1630:YES、ステップ1640において修正作業者E1により修正後の条件eが入力されなかった場合ステップ1640:NO、又はステップ1645から処理はステップ1650へ進み、支援装置200は現在のメタデータMiに対する処理を終了して、ステップ1610へ戻る。ステップ1610において、全てのメタデータMiについて上記一連の処理が実施されたと判断された場合ステップ1610:YES、処理は終了する。図17は、本発明の実施形態による支援装置200及びメタデータ管理サーバ202としてのコンピュータ50のハードウェア構成の一例を示した図である。コンピュータ50は、バス2に接続されたメインCPU中央処理装置1とメインメモリ4を含んでいる。ハードディスク装置13、30、及びCD-ROM装置26、29、フレキシブルディスク装置20、MO装置28、DVD装置31のようなリムーバブルストレージ記録メディアを交換可能な外部記憶システムがフレキシブルディスクコントローラ19、IDEコントローラ25、SCSIコントローラ27などを経由してバス2へ接続されている。フレキシブルディスク、MO、CD-ROM、DVD-ROMのような記憶メディアが、リムーバブルストレージに挿入される。これらの記憶メディアやハードディスク装置13、30、ROM14には、オペレーティングシステムと協働してCPU1に命令を与え、本発明を実施するためのコンピュータプログラムのコードを記録することができる。即ち、上記説明した数々の記憶装置には、コンピュータ50にインストールされ、コンピュータ50を本発明の実施形態による支援装置200として機能させる、メタデータの生成管理を支援するためのプログラムや、操作ログ情報、生メタデータといったデータを記録することができる。上記メタデータの生成管理を支援するためのプログラムは、汎化対象設定モジュールと、操作ログ記録モジュールと、メタデータ生成モジュールと、ブロック抽出モジュールと、類似ブロック検索モジュールと、メタデータ汎化モジュールと、類似メタデータ検索モジュールと、メタデータ検証モジュールとを含む。これらモジュールは、CPU1に働きかけて、コンピュータ50を、汎化対象設定部205と、操作ログ記録部215と、メタデータ生成部225と、ブロック抽出部230と、類似ブロック検索部235と、メタデータ汎化部245と、類似メタデータ検索部250と、メタデータ検証部255としてそれぞれ機能させる。コンピュータプログラムは圧縮し、また複数に分割して複数の媒体に記録することもできる。コンピュータ50は、キーボード/マウスコントローラ5を経由して、キーボード6やマウス7のような入力デバイスからの入力を受ける。コンピュータ50は、オーディオコントローラ21を経由して、マイク24からの入力を受け、またスピーカー23から音声を出力する。コンピュータ50は、視覚データをユーザに提示するための表示装置11に、グラフィックスコントローラ10を経由して接続される。コンピュータ50は、ネットワークアダプタ18イーサネット登録商標カードやトークンリングカード等を介してネットワークに接続し、他のコンピュータ等と通信を行うことが可能である。以上の説明により、コンピュータ50は、通常のパーソナルコンピュータ、ワークステーション、メインフレームなどの情報処理装置、又は、これらの組み合わせによって実現されることが容易に理解されるであろう。なお、上記説明した構成要素は例示であり、そのすべての構成要素が本発明の必須構成要素となるわけではない。以上、実施形態を用いて本発明の説明をしたが、本発明の技術範囲は上記実施形態に記載の範囲には限定されない。上記の実施形態に、種々の変更又は改良を加えることが可能であることが当業者に明らかである。従って、そのような変更又は改良を加えた形態も当然に本発明の技術的範囲に含まれる。なお、特許請求の範囲、明細書、及び図面中において示した装置、システム、プログラム、及び方法における動作、手順、ステップ、及び段階等の各処理の実行順序は、特段より前に、先立って等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り任意の順序で実現しうることに留意すべきである。また、前の処理の出力を後の処理で用いる場合でも、前の処理と後の処理の間に他の処理が入ることは可能である場合があること、又は間に他の処理が入るように記載されていても前の処理を後の処理の直前に行うよう変更することも可能である場合があることも留意されたい。特許請求の範囲、明細書、及び図面中の動作フローに関して、便宜上まず、、次に、、続いて、等を用いて説明したとしても、この順で実施することが必須であることを必ずしも意味するとは限らない。"