説明

構造化文書処理装置、構造化文書の類似領域特定方法、及び構造化文書の類似領域特定プログラム

【課題】 複数の画面からなるAPをポートレット化する際に、作成者に特別な開発スキルを要求せず、必要最低限の単純なAP画面上の編集操作によりPT画面のクリッピングを実現する。
【解決手段】 構造化文書処理装置20が、構造化文書の指定された領域について、当該構造化文書及びそのURLと、当該領域のノードパスとを少なくとも含む特徴情報と、当該指定内容を少なくとも含む指定情報とから構成される領域情報を格納する領域情報格納手段24と、入力されたURLに関する画面の構造化文書を取得し、当該構造化文書内の各領域について、類似領域算出手段25を用いて領域情報格納手段24から類似領域を特定し、当該類似領域の指定情報を出力する類似領域特定手段21と、取得した構造化文書内の各領域の特徴情報と、領域情報格納手段内の領域情報との特徴情報の類似性を判定することにより、類似領域を算出する類似領域算出手段25とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数画面から構成されるWebアプリケーション上の画面に基づきWebサイトのポートレット化開発を支援する情報処理装置、システム、方法、プログラムに関する。
【背景技術】
【0002】
近年、インターネット・イントラネット上において、様々なWebアプリケーション(以下、適宜APとも称す)が提供されており、これらAPの機能を統合的に利用するためのポータルシステムが注目を集めている。
【0003】
ポータルシステム上では、APの機能をポータル上で実現するポートレットと呼ばれるガジェットが配置され、情報集約などのAPの機能を横断的に提供することにより、利用者に利便性を提供している。
【0004】
こうした、元々APが提供する機能をポータル上で実現するポートレットを作成するには、APが提供するAPIなどを利用して開発者がポートレット開発を行う場合や、APの画面をそのままiframeなどを利用して実現(以下、クリッピングと称す)する場合などがある。
【0005】
APが提供するAPIなどを利用して開発者がポートレット開発を行う場合は、ポートレットの要件に応じて柔軟な機能を実現できる。しかしその反面、開発コストがかかるというデメリットがある。
【0006】
クリッピングを行う場合は、特に開発コストが掛からず、開発スキルを持たない人でも作成できる。しかしその反面、ポートレットとしてのきめ細かい機能のカスタマイズ・取捨選択を実現できないというデメリットがある。
【0007】
また、開発スキルを持たない人に対してポートレット開発を可能にする開発支援機能を提供する製品も存在する。該製品には、例えば、WYSIWYG上でAPを表示し、必要な部分を取捨選択することでポートレットを容易に作成する機能を提供しているものもある。
【0008】
ここで、関連技術として、HTMLの情報から類似性を特定する発明が、特許文献1に開示されている。
【0009】
また、別の関連技術として、HTML、XMLという構造を持つ情報同士の類似性を特定する発明が、特許文献2に開示されている。
【0010】
また、別の関連技術として、DOMツリーの中から類似部分を検出する技術が、引用文献3に記載されている。
【先行技術文献】
【特許文献】
【0011】
【特許文献1】特開2004−310360号公報
【特許文献2】特開2004−244119号公報
【特許文献3】特開2005−011215号公報
【特許文献4】特開2001−243222号公報
【発明の概要】
【発明が解決しようとする課題】
【0012】
企業内ポータルなどでは、ポータルが進化するにつれ、業務に深く関係する機能を提供するポートレットが必要とされるようになりつつある。それに伴い、必ずしも開発スキルを持つとは限らない現場のポータルの業務管理者が、ポートレットを開発・修正する必要が出てくるようになり、開発スキルを持たない人を対象としたポートレット開発支援機能の重要性が高まりつつある。
【0013】
開発スキルを持たない利用者が既存APを元にしたポートレットを開発・修正するには、画面上での例示により、画面の各領域に対して、ポートレットに必要か否かの指定をする必要がある。
【0014】
利用者は画面上でポートレットに必要か否かの指定を行うと共に、指定を行った領域と同じ特徴を持つ領域を他の画面においても特定する必要がある。
【0015】
しかし、背景技術では、以下の問題点を有する。
【0016】
第1の問題点は、既存APのポートレット化の作業量が多くなってしまうことが挙げられる。
【0017】
その理由は、ポートレット化しようとした場合、元々AP上で表示される大きい画面をポートレットに合わせて小さく表示する必要性があるからである。また、APが多数の画面から構成される場合、ポートレットで必要とされる画面や、画面内の部分のみをAPから抽出する必要性があるからである。こうした対応を行う際に、特にAPの画面が多い場合などでは、必要な画面や画面内の部分を作成者がしなければならない判断が多くなってしまう。
【0018】
第2の問題点は、第1の問題点の構成領域として、既存APのポートレット化の正確性の担保の困難性が挙げられる。
【0019】
その理由は、開発スキルを持たない人や業務知識を持たないがこうした作業を行う場合、自分が行った指定が過去の指定と矛盾しないことを確認する必要があるが、開発スキル・業務知識を持たない作業者には一般的にこうした確認が難しいことによる。
【0020】
第3の問題点は、第1の問題点の構成領域として、既存APからポートレットに必要な領域を指定する際に、同じ特徴を持つ領域を特定することが難しいこと挙げられる。
【0021】
その理由は、既存APを構成するHTMLの構造が、同じ内容にも関わらずノイズなどの影響により変化してしまう点と、作成者の指定意図が複数ありうる場合、どの意図に基づいた指定を適用するべきか判定するのが難しい点があることによる。
【0022】
(発明の目的)
本発明の目的は、上述の課題を解決し、複数の画面からなるAPをポートレット化する際に、作成者に特別な開発スキルを要求せず、必要最低限の単純なAP画面上の編集操作によりPT画面のクリッピングを実現する構造化文書処理装置、構造化文書の類似領域特定方法、及び構造化文書の類似領域特定プログラムを提供することである。
【課題を解決するための手段】
【0023】
本発明の第1の構造化文書処理装置は、構造化文書の指定された領域について、当該構造化文書及びそのURLと、当該領域のノードパスとを少なくとも含む特徴情報と、当該指定内容を少なくとも含む指定情報とから構成される領域情報を格納する領域情報格納手段と、入力されたURLに関する画面の構造化文書を取得し、当該構造化文書内の各領域について、類似領域算出手段を用いて領域情報格納手段から類似領域を特定し、当該類似領域の指定情報を出力する類似領域特定手段と、取得した構造化文書内の各領域の特徴情報と、領域情報格納手段内の領域情報との特徴情報の類似性を判定することにより、類似領域を算出する類似領域算出手段とを備える。
【0024】
本発明の第1の構造化文書の類似領域特定方法は、構造化文書処理装置が行う構造化文書の類似領域特定方法であって、入力されたURLに関する画面の構造化文書を取得し、当該構造化文書内の各領域について、類似領域算出ステップを用いて、構造化文書の指定された領域について、当該構造化文書及びそのURLと、当該領域のノードパスとを少なくとも含む特徴情報と、当該指定内容を少なくとも含む指定情報とから構成される領域情報を格納する領域情報格納手段から類似領域を特定し、当該類似領域の指定情報を出力する類似領域特定ステップと、取得した構造化文書内の各領域の特徴情報と、領域情報格納手段内の領域情報との特徴情報の類似性を判定することにより、類似領域を算出する類似領域算出ステップとを有する。
【0025】
本発明の第1の構造化文書の類似領域特定プログラムは、構造化文書処理装置を構成するコンピュータ上で動作する構造化文書の類似領域特定プログラムであって、コンピュータに、入力されたURLに関する画面の構造化文書を取得し、当該構造化文書内の各領域について、類似領域算出処理を用いて、構造化文書の指定された領域について、当該構造化文書及びそのURLと、当該領域のノードパスとを少なくとも含む特徴情報と、当該指定内容を少なくとも含む指定情報とから構成される領域情報を格納する領域情報格納手段から類似領域を特定し、当該類似領域の指定情報を出力する類似領域特定処理と、取得した構造化文書内の各領域の特徴情報と、領域情報格納手段内の領域情報との特徴情報の類似性を判定することにより、類似領域を算出する類似領域算出処理とを実行させる。
【発明の効果】
【0026】
本発明によれば、ポートレット作成者が指定した領域と同じ特徴を持つ領域を自動的に推定することができ、これにより、開発者が同様の領域についてそれぞれ手段動で特定し指定をしなければならない数を削減できる。
【0027】
その理由は、同じ特徴を持つ領域を様々なアルゴリズムにより推定し、開発者の過去の指定と矛盾しないアルゴリズムによる推定結果を選択することで、整合性を担保した重複部分を推定できるからである。
【図面の簡単な説明】
【0028】
【図1】本発明の第1の実施の形態による構造化文書処理装置の構成を示すブロック図である。
【図2】第1の実施の形態による類似領域特定手段の構成を示すブロック図である。
【図3】第1の実施の形態による画面情報の例を示す図である。
【図4】第1の実施の形態による近傍属性解析手段の動作概要を示す図である。
【図5】第1の実施の形態による内部構造解析、及び外部パス解析での木構造への変換を示す図である。
【図6】第1の実施の形態による類似度算出の式を示す図である。
【図7】第1の実施の形態による領域情報の更新方法を示す図である。
【図8】第1の実施の形態による構造化文書処理装置の運用時の構成を示すブロック図である。
【図9】第1の実施の形態によるAP画面読み込み処理のシーケンス図である。
【図10】第1の実施の形態によるAP画面読み込み処理の動作を示すフローチャートである。
【図11】第1の実施の形態によるAP画面編集処理のシーケンス図である。
【図12】第1の実施の形態による画面編集処理の動作を示すフローチャートである。
【図13】第1の実施の形態による実行環境運用時の動作を示すフローチャートである。
【図14A】本発明の実施例1におけるAP画面読み込み処理、AP画面編集処理の動作を示すフローチャートである。
【図14B】実施例1におけるAP画面読み込み処理、AP画面編集処理の動作を示すフローチャートである。
【図15】実施例1における画面情報の例を示す図である。
【図16】実施例1における領域情報の例を示す図である。
【図17】実施例1における画面情報の例を示す図である。
【図18】実施例1における類似領域特定手段の動作を示す図である。
【図19】実施例1における実行環境運用時の動作を示すフローチャートである。
【図20】本発明の構造化文書処理装置の最小限の構成を示すブロック図である。
【図21】本発明の第2の実施の形態による実行環境運用時の動作を示すフローチャートである。
【図22】本発明の構造化文書処理装置のハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【0029】
Webアプリケーションの複数の画面は、同じ特徴を持つ領域(類似領域)が存在する。クリッピングの際にこうした類似領域に対する要・不要の指定を一括して行うことができれば負荷軽減につながると考えられる。
【0030】
そこで本発明は、開発時に指定された領域に類似する類似領域を発見し、該類似領域に対しても同様の指定内容を適用する。
【0031】
具体的には、開発時に指定がなされた領域と新たに表示する画面の領域との特徴の類似性をDOM木構造の類似度で計ることにより、該新たに表示する画面において、開発時に指定された領域に類似する領域を類似領域として特定する。
【0032】
木構造の類似度の算出には木構造の編集距離などを用いる。類似度を求める際にどの程度類似していれば同じ部分とみなすかという区切り付けが必要となる。しかし指定された部分や周りの部分との関係に応じて区切りを適切に決定する必要がある。
【0033】
そこで本手段法では開発者の操作に応じて同じと見做す区切り点を修正するアプローチを用い類似する領域を求める。
【0034】
本発明の上記及び他の目的、特徴及び利点を明確にすべく、添付した図面を参照しながら、本発明の実施形態を以下に詳述する。なお、上述の本願発明の目的のほか、他の技術的課題、その技術的課題を解決する手段及びその作用効果についても、以下の実施形態による開示によって明らかとなるものである。
【0035】
なお、すべての図面において、同様な構成領域には同様の符号を付し、適宜説明を省略する。
【0036】
(第1の実施の形態)
【0037】
次に、本発明の第1の実施の形態について図面を参照して詳細に説明する。
【0038】
図1は、本発明の第1の実施の形態による構造化文書処理装置20の構成を示すブロック図である。なお、構造化文書処理装置20の運用時の構成は図8に示すため、本図では記載を省略する。
【0039】
構造化文書処理装置20は、類似領域特定手段21と、画面表示手段22と、画面情報格納手段23と、領域情報格納手段24と、類似領域算出手段25と、指定情報整合性確認手段26と、指定情報更新手段27と、を含む。
【0040】
画面表示手段22は、Webアプリケーション10の画面を表示し、その画面内で、画面反映情報送信手段217から受信した情報を反映・表示する。
【0041】
画面情報格納手段23は、画面情報を格納する。
【0042】
領域情報格納手段24は、領域情報を格納する。
【0043】
図2は、類似領域特定手段21の構成を示すブロック図である。
【0044】
図2を参照すると、類似領域特定手段21は、画面情報取得手段211と、画面情報登録手段212と、領域情報取得手段213と、類似領域算出依頼手段214と、表示情報抽出手段215と、領域位置特定手段216と、画面反映情報送信手段217と、を含む。
【0045】
画面情報取得手段211は、画面表示手段22からWebアプリケーション10内の所定の画面の取得要求を受けると、該画面の構造化文書(html文)を取得する。
【0046】
画面情報登録手段212は、画面情報取得手段211が取得した構造化文書に該画面のURLを付加して、画面情報として画面情報格納手段23に登録する。なお、画面情報格納手段23に登録された画面情報は、永続化される。
【0047】
ここで、画面情報格納手段23に格納される画面情報の例を図3に示す。
【0048】
領域情報取得手段213は、構造化文書に係る画面のURLを含むURLを有する領域情報を、領域情報格納手段24から取得する。
【0049】
すなわち、領域情報取得手段213は、構造化文書を取得した画面の下位に位置する画面に含まれる各領域の領域情報を取得する。
【0050】
ここで、領域情報とは、構造化文書内の各領域について、該領域の所定の情報をまとめたものである。
【0051】
具体的には、領域情報は、該領域の特徴を示す特徴情報と、該領域に対し開発者が行った指定に関するの情報である指定情報とから構成される。
【0052】
領域情報格納手段24に格納される領域情報の構成例を、図3に示す。
【0053】
図3を参照すると、領域情報は、urlフィールド、htmlフィールド、pathフィールド、taskフィールド、thフィールド、typeフィールド、specificフィールドから構成される。
【0054】
urlフィールド、htmlフィールド、pathフィールドの値が、特徴情報に該当し、taskフィールド、thフィールド、typeフィールド、specificフィールドの値が、指定情報に該当する。
【0055】
URLフィールドは、画面のURLを保持する。
【0056】
htmlフィールドは、URLフィールドで示される画面の構造化文書を保持する。
【0057】
pathフィールドは、領域へのLocatorを保持する。Locatorとは、DOMツリー上での特定のタグの位置を示すものである。Locatorは、例えば、「/html/body[1]/table[tr[1][th[1]]]/tr[2][@id=”aaa”][th[text(.)=”bbb”]]/td[2]」のように、特定のタグの位置を示す。
【0058】
taskフィールドは、開発者が行った指定の内容を示す情報を保持する。
【0059】
thフィールドは、編集距離差又は類似度の閾値を保持する。
【0060】
typeフィールドは、領域情報の元となった特徴量の種別(内部構造解析、外部パス解析、属性解析、近傍属性解析)示す情報を保持する。領域情報は、特徴量の種別ごとにそれぞれ保持される。
【0061】
specificフィールドは、指定内容が、例外的にurlフィールドで指定される画面だけに適用されるか否かを示す情報を保持する。
【0062】
類似領域算出依頼手段214は、画面情報取得手段211が取得した構造化文書の各領域についての類似領域の算出を、類似領域算出手段25に依頼する。
【0063】
この時、類似領域算出依頼手段214は、構造化文書及び各領域の領域情報を類似領域算出手段25に渡す。各領域の領域情報は、領域情報取得手段213が取得する。
【0064】
表示情報抽出手段215は、類似領域算出手段25から、類似領域の指定情報を受け取り、その中から画面に表示する情報を抽出する。
【0065】
領域位置特定手段216は、Webアプリケーション10から取得した画面の構造化文書において、類似領域が算出された領域の位置を特定する。
【0066】
画面反映情報送信手段217は、表示情報抽出手段215が抽出した情報と、領域位置特定手段216が特定した位置情報とを、画面表示手段22に送信する。
【0067】
類似領域算出手段25は、類似領域算出依頼手段214から、構造化文書と、該構造化文書内の各領域の領域情報とを受け取る。
【0068】
類似領域算出手段25は、類似領域算出依頼手段214から受け取った構造化文書の各領域について、領域情報格納手段24内の領域情報を参照し、類似領域があるかどうかを算出する。
【0069】
そして、類似領域算出手段25は、類似領域があった場合、該類似領域の指定情報を類似領域特定手段21に返す。なお、領域情報そのものを返してもよい。
【0070】
類似領域算出手段25は、内部構造解析手段251、外部パス解析手段252、属性解析手段253、近傍属性解析手段254の4つの類似度算出アルゴリズムを用いて、類似領域の算出を行う。
【0071】
内部構造解析手段251は、構造化文書をDOMツリーに変換し、算出対象の領域と同じノード名のノード以下のDOMツリーを比較候補部分として生成しする。
【0072】
また、内部構造解析手段251は、領域情報格納手段24から取得した領域情報のノード以下のDOMツリーを生成する。
【0073】
そして、内部構造解析手段251は、2つのDOMツリーをオイラー文字列化し、内部構造の編集距離を求める。
【0074】
内部構造解析手段251は、編集距離が領域情報格納手段24から取得した領域情報の閾値以下であれば、編集距離は閾値の範囲内であるとみなす。
【0075】
外部パス解析手段252は、構造化文書をDOMツリーに変換し、算出対象の領域と同じノード名のノードに対して、root(HTMLノード)からの経路を、ノード名、順序番号を交互に直列につなげた列を比較候補部分として生成する。
【0076】
また、外部パス解析手段252は、領域情報格納手段24から取得した指定情報のノードを同じように列に変換する。そして、外部パス解析手段252は、両者の編集距離を求める。
【0077】
外部パス解析手段252は、編集距離が領域情報格納手段24から取得した指定情報の閾値以下であれば、編集距離は閾値の範囲内であるとみなす。
【0078】
属性解析手段253は、構造化文書をDOMツリーに変換し、算出対象の領域と同じノード名のノードに対して、属性を比較候補として取得する。
【0079】
また、属性解析手段253は、領域情報格納手段24から取得した領域情報のノードの属性を取得する。
【0080】
属性解析手段253は、両者の属性の一致度に応じた値で示される類似度が領域情報格納手段24から取得した指定情報の閾値よりも大きければ、類似度は閾値の範囲内であるとみなす。
【0081】
近傍属性解析手段254は、構造化文書をDOMツリーに変換し、指定された要素がidやclassなどその要素を識別する上で有効な属性を持つか調べ、有効な属性を持たなかった場合に、指定された要素のDOMツリー上の根方向、葉方向へ、有効な属性を持つ要素を探索する。有効な属性を持つ要素が見つかった場合には、その要素を基点(根要素)とし、基点から指定された要素までの相対関係を特定する。また、領域情報格納手段24から取得した領域情報についても同様の処理を行う。
【0082】
そして、該相対関係の類似度示す値が領域情報格納手段24から取得した指定情報の閾値よりも大きければ、類似度は閾値の範囲内であるとみなす。
【0083】
根方向、葉方向それぞれで2つの有効な属性を持つ要素が見つかった場合は、それら2つの類似性のスコアの総和により類似度のスコアを算出し、スコアが領域情報格納手段24から取得した指定情報の閾値よりも大きければ、類似度は閾値の範囲内であるとみなす。
【0084】
ここで、近傍属性解析手段254の、指定時と判定時の動作概要を図4に示す。相対関係の具体例としては、xPathなどの既存技術が利用できる。例えば、図4における指定された要素の手段掛かりとなる近傍要素からのxPathによる相対関係の記述は、div[@id=”hoge”]/* かつ */div[@class=”fuga”] (*に合致する場所)などで表される。
【0085】
図4を例にとって近傍属性解析手段254による類似度計算を説明すると、以下のようになる。
【0086】
まず、構造化文書をDOMツリーに変換し、指定された部分ノードと同じノード名のノードを比較対象ノードとして選択する。
【0087】
指定された部分ノード、もしくは比較対象ノードの属性にid,classが存在しなかった場合、指定された部分ノード、比較対象ノードのDOMツリー上の親、子の要素をそれぞれ参照し、id,classが存在する要素を基点ノードとして特定する。
【0088】
基点ノードから指定された部分ノードまでのxPathをそれぞれ作成し、指定された部分ノード、比較対象ノードのお互いの親、子のxPathの条件の一致度に応じた値で示される類似度が領域情報格納手段24から取得した指定情報の閾値よりも大きければ、類似度は閾値の範囲内であるとみなす。
【0089】
ここで、内部構造解析、及び外部パス解析での木構造への変換を、図5に示す。またこれら木構造における類似性の判定において編集距離ではなく類似度を用いる場合には、図6の式を利用する。
【0090】
類似領域算出手段25は、内部構造解析手段251、外部パス解析手段252、属性解析手段253の4つの類似度算出アルゴリズムのうち、過半数以上で計算結果が閾値の範囲内であるとみなされた場合、領域情報格納手段24から取得した領域情報に係る領域を、算出対象の領域の類似領域とみなし、該類似領域の指定情報を類似領域特定手段21に返す。
【0091】
なお、本実施の形態では、計算を行った類似度算出アルゴリズムのうち、計算結果が閾値の範囲内であるとみなされた数が過半数以上で類似領域とみなしているが、計算結果が閾値の範囲内であるとみなされた数がいくつ以上で類似領域とみなすかは、任意で設定可能であるものとする。
【0092】
例えば、計算を行った類似度算出アルゴリズムすべてにおいて、計算結果が閾値の範囲内であったときに、領域情報格納手段24から取得した領域情報に係る領域を、算出対象の領域の類似領域とみなすこととしてもよい。
【0093】
また、類似度算出アルゴリズムは、4つ全てを使用するのではなく、少なくとも1つ以上を使用することとしても良い。
【0094】
指定情報整合性確認手段26は、過去に入力された指定情報と、開発者が新たに入力した指定情報とに矛盾が無いかを調べる機能を有する。
【0095】
指定情報整合性確認手段26は、開発者が指定情報を入力した領域に紐付く指定情報を、領域情報格納手段24から読み出す。なお、領域情報を読みだした後、指定情報を抽出することとしてもよい。
【0096】
また、指定情報整合性確認手段26は、指定されたURLを含む画面情報を画面情報格納手段23から読み出す。
【0097】
また、指定情報整合性確認手段26は、開発者が入力した指定情報と、領域情報格納手段24から読み出した指定情報と、画面情報格納手段23から読み出した画面情報とを用いて、入力した指定情報が、読み出した指定情報と矛盾していないか(整合性があるか)をシミュレーションして確認する。
【0098】
指定情報更新手段27は、画面操作入力手段271、指定情報保持判断手段272、指定情報更新内容決定手段273、とを含む。
【0099】
画面操作入力手段271は、画面表示手段22上で開発者が入力を行うためのインタフェースを提供する。開発者は、画面操作入力手段271を介して、指定情報や所定領域の要・不要の入力等を行う。
【0100】
指定情報保持判断手段272は、指定情報整合性確認手段26が、画面操作入力手段271を介して入力された指定情報と領域情報格納手段24から読み出した指定情報間の整合性が成り立つと判断した場合に、入力された指定情報を領域情報格納手段24に保持する。
【0101】
指定情報更新内容決定手段273は、整合性が成り立たない場合に、可能であれば整合性が成り立つよう指定情報の条件に関する情報を修正し、領域情報格納手段24に更新する。ここで、更新方法を図7に記載する。
【0102】
図8は、構造化文書処理装置20の運用時の構成を示すブロック図である。
【0103】
運用時に係る構成では、構造化文書処理装置20は、画面情報取得手段28と、差分情報置換手段29と、差分情報格納手段30と、ブラウザ31とを備える。
【0104】
差分情報格納手段30は、Webアプリケーション10の画面情報格納手段23内の各構造化文書に、領域情報格納手段24に格納されている領域情報に含まれる指定内容を適用し、適用前の構造化文書との差分となる領域についての所定の情報を格納する。
【0105】
該所定の情報は、差分となる領域に係るURLと、該領域の絶対パスと、該領域に係る指定内容とから構成される。以下、該情報を差分情報と称す。差分情報格納手段30に格納される差分情報の構成例を、図3に示す。
【0106】
画面情報取得手段28は、指定されたURLのWebアプリケーション10へアクセスし、画面の構造化文書を取得する。
【0107】
また、画面情報取得手段28は、取得した構造化文書と該URLとを組み合わせた画面情報を、差分情報置換手段29へ渡す。
【0108】
差分情報置換手段29は、画面情報取得手段28から受け取った画面情報に含まれるURLに一致するURLを有する特徴情報を、差分情報格納手段30から読み出す。
【0109】
また、差分情報置換手段29は、読み出した特徴情報に係る内容を、構造化文書に反映することで、画面を置き換える。
【0110】
ブラウザ31は、所定の画面を表示する。ブラウザ21は、図1に示す画面表示手段22であってもよい。
【0111】
(第1の実施の形態の動作の説明)
次に、本実施の形態による構造化文書処理装置20の動作について、図面を参照して詳細に説明する。
【0112】
本実施の形態では、既存APからのポートレット(以下、適宜PTとも称す)開発時に、開発者はまずPT化の対象となるAP画面を読み込み、次にその画面に対して、各領域の要・不要の指定を行う。APからのPT開発が完了すれば、指定した内容を実行環境に移して、開発したPTを稼動させる。
【0113】
以下、AP画面読み込み時、AP画面編集時(開発者指定時)、実行環境運用時、の3つのシーケンスについてそれぞれ説明を行う。
【0114】
(AP画面読み込み処理の動作の説明)
まず、AP画面読み込み処理のシーケンス図を図9に示す。
【0115】
AP画面読み込み処理では、開発者がAP画面の構造化文書の各領域に対してPT化のための要・不要の指定を行うために、AP画面から構造化文書を取得し、過去に要・不要の指定が行われた領域がある場合は、その領域に対する要・不要別の処理を行った上で、画面を表示する。
【0116】
以下、AP画面読み込み処理について、図10のフローチャートを参照して詳細に説明する。
【0117】
まず、開発者がWebアプリケーション10内の所定のURLを入力すると(ステップS1001)、画面表示手段22が、入力されたURLに係る画面の構造化文書の取得要求を、類似領域特定手段21に送る(ステップS1002)。
【0118】
該取得要求は類似領域特定手段21内の画面情報取得手段211が受け取り、画面情報取得手段211は、該取得要求で指定されているURLに係る画面のの構造化文書を取得する(ステップS1003)。
【0119】
次いで、画面情報登録手段212が、URLと構造化文書の組を画面情報として画面情報格納手段23に永続化する(ステップS1004)。
【0120】
また、領域情報取得手段213が、入力されたURLを含むURLを有する領域情報を、領域情報格納手段24から取得する(ステップS1005)。なお、該当する領域情報がない場合は、画面情報取得手段211が取得した構造化文書をそのまま画面表示手段22に返し、以下の処理は行わない。
【0121】
次いで、類似領域算出依頼手段214が、画面情報取得手段211が取得した構造化文書の各領域について、類似領域の算出を類似領域算出手段25に依頼する(ステップS1006)。この時、類似領域算出依頼手段214は、構造化文書と、領域情報取得手段213が取得した領域情報とを、類似領域算出手段25に渡す。
【0122】
次いで、類似領域算出手段25が、領域情報に基づいて構造化文書の各領域を所定の特徴量に変換し、内部構造解析手段251、外部パス解析手段252、属性解析手段253、近傍属性解析54の4つの類似度算出アルゴリズムを用いて、類似領域の算出を行い、類似領域があった場合、類似領域の指定情報を類似領域特定手段21に返す(ステップS1007)。なお、類似領域の領域情報を返しても良い。
【0123】
該指定情報は表示情報抽出手段215が受け取り、表示情報抽出手段215は、該指定情報の中から、画面に表示する情報を抽出する(ステップS1008)。
【0124】
なお、同じ領域に係る指定情報が複数存在し、かつ、それぞれの指定情報の指定内容(taskフィールド)が矛盾していた場合は、類似度算出アルゴリズムの計算結果に基づくスコアがより小さいもの、または類似度がより高いものを優先することとする。
【0125】
次いで、領域位置特定手段216が、類似領域が算出された領域の位置を特定する(ステップS1009)。表示情報抽出手段215により抽出された情報は、領域位置特定手段216が特定した位置に表示される。
【0126】
次いで、表示情報送信手段217が、表示情報抽出手段215が抽出した情報と、画面情報取得手段211が取得した構造化文書と、表示情報抽出手段215が抽出した情報の反映位置とを、画面表示手段22に渡す(ステップS1010)。
【0127】
次いで、画面表示手段22が、類似領域特定手段21から受け取った構造化文書を画面表示するとともに、表示情報抽出手段215が抽出した情報を反映位置に表示する(ステップS1011)。
【0128】
(AP画面編集処理の動作の説明)
AP画面編集処理のシーケンス図を、図11に示す。
【0129】
AP画面編集処理、開発者(PT作成者)が、上述のステップS1009で画面表示手段22に表示された画面に対して編集操作を行う処理を示す。
【0130】
以下AP画面編集処理の詳細について、図12のフローチャートを参照して詳細に説明を行う。
【0131】
まず、開発者が、画面表示手段22で表示された構造化文書から、不要な領域に、その旨を示す指定を入力する(ステップS1201)。
【0132】
次いで、画面操作入力手段271が、開発者の入力を検知し、指定が入力された領域のノードパスと、指定の内容と、該構造化文書に係るURLを、指定情報保持判断手段272に渡す(ステップS1202)。
【0133】
次いで、指定情報保持判断手段272が、該構造化文書に係るURLを含むURLを有する領域情報であって、ノードパスが一致する領域情報を、領域情報格納手段24から読み出す(ステップS1203)。
【0134】
次いで、指定情報保持判断手段272は、入力された指定内容と、領域情報格納手段24から取得した領域情報内の指定内容(taskフィールドの値)とに整合性があるかの確認を、指定情報整合性確認手段26に依頼する(ステップS1204)。この時、指定情報保持判断手段272は、入力された指定内容と、領域情報格納手段24から読み出した領域情報とを、指定情報整合性確認手段26に渡す。
【0135】
なお、領域情報格納手段24に該当する領域情報がない場合は、ステップS1209に進む。
【0136】
確認を依頼された指定情報整合性確認手段26は、まず、該画面の構造化文書を画面情報格納手段23から読みだす(ステップS1205)。
【0137】
次いで、指定情報整合性確認手段26は、入力された指定内容と、読み出した領域情報内の指定内容と、画面情報格納手段23から取得した構造化文書とを用いて、入力された指定内容が、読み出した領域情報内の指定内容と矛盾していないか(整合性があるか)を、シミュレーションして確認する(ステップS1206)。
【0138】
領域情報格納手段24から読み出した領域情報内の指定内容は、ノードパスが一致する領域情報について過去に開発者が入力して領域情報格納手段24に格納された情報である。このため、開発者が入力した指定内容が、領域情報格納手段24から読み出した領域情報内の指定内容と矛盾していないかを確認することは、今回の入力が過去の入力と矛盾していないかを確認することになる。
【0139】
次いで、指定情報整合性確認手段26は、確認結果を指定情報保持判断手段272に返す(ステップS1207)。
【0140】
整合性が取れていた場合(ステップS1208”YES”)、指定情報保持判断手段272が、指定が入力された領域の領域情報を生成し、領域情報格納手段24に永続化する(ステップS1209)。
【0141】
この時、指定情報保持判断手段272は、thフィールドの値を計算して設定する(予め固定値を置いてもよい)。
【0142】
ここで、指定情報の閾値の計算方法について述べる。具体的な閾値の計算方法は、指定情報で直接指定されたノードの類似領域を画面内からそれぞれの算出方法(内部構造、外部パス、属性)で探し出し、類似度が近かった1番目と2番目の部分に求め、その差の中間点となる類似度(編集距離)を、指定情報の閾値として設定する。
【0143】
整合性が取れていなかった場合、指定情報更新内容決定手段273が、まず、画面の構造化文書を画面情報格納手段23から読み出す(ステップS1210)。
【0144】
次いで、指定情報更新内容決定手段273は、領域情報格納手段24から読み出した領域情報の閾値を変更することで整合性を保てるか調査する(ステップS1211)。
【0145】
整合性が保てるようであれば(ステップS1211”YES”)、指定情報更新内容決定手段273が閾値を変更した領域情報を領域情報格納手段24に更新登録するとともに、指定情報保持判断手段272が、指定が入力された領域の領域情報を生成し、領域情報格納手段24に永続化する(ステップS1212)。
【0146】
整合性が保てなければ(ステップS1211”NO”)、指定情報保持判断手段272は、入力された指定情報は、この画面にだけ適用されるものと判断し、指定が入力された領域の領域情報を生成するとともに、該領域情報のspecificフィールドの値を、例外扱いを示す値に設定し、領域情報格納手段24に永続化する(ステップS1213)。
【0147】
最後に、画面表示手段22が、入力された指定内容で更新した画面を表示する(ステップS1214)。
【0148】
(実行環境運用時の動作の説明)
【0149】
次に、実行環境運用時の動作について説明する。実行環境運用時では、開発者(PT作成者)が作成したPTをブラウザに表示する際、開発者が指定した内容を反映した上で、表示する。
【0150】
なお、事前処理として、領域情報格納手段24から、差分情報格納手段30へデータの移行が行われているものとする。
【0151】
データの移行は、具体的には、画面情報格納手段23に永続化してきた画面情報をすべて読み出し、画面情報内の構造化文書に対して、領域情報格納手段24に格納されている領域情報に含まれる指定内容を適用し、最終的な画面を生成する。
【0152】
そして、適用前の画面と最終的な画面の差分となる領域を検出し、該領域に対して絶対パスを求め、該領域に係るURLと、該領域の絶対パスと、該領域に係る指定内容(この場合、残す、削除、の2つのみ)のセットを生成し、差分情報として差分情報格納手段30に保持する。
【0153】
以下実行環境運用時の動作について、図13のフローチャートを参照して詳細に説明する。
【0154】
まず、ユーザがブラウザ31でポートレットを開き、ポートレット内の所定のリンクをクリックする等により、所定のURLを入力すると(ステップS1301)、ブラウザ31は、入力されたURLに係る画面の取得要求を、画面情報取得手段28に送る(ステップS1302)。
【0155】
取得要求を受け取った画面情報取得手段28は、該取得要求で指定されているURLに係る画面の構造化文書を取得し、該構造化文書を差分情報置換手段29に渡す(ステップS1303)。
【0156】
次いで、差分情報置換手段29は、ユーザが入力したURLに一致するURLを有する差分情報を、差分情報格納手段30から取得する(ステップS1304)。
【0157】
次いで、差分情報置換手段29は、取得した差分情報の指定内容を構造化文書に反映し、その結果を画面表示手段22に渡す(ステップS1305)。
【実施例1】
【0158】
次に、具体的な実施例を用いて本実施の形態の動作を説明する。
【0159】
(AP画面読み込み処理、AP画面編集処理の具体的な動作の説明)
図14A、図14Bは、実施例1におけるAP画面読み込み処理、AP画面編集処理の動作を示すフローチャートである。
【0160】
図14A、図14Bを参照すると、まず、開発者が、画面表示手段22であるブラウザを起動し、対象となるWebアプリケーション10のURL(http://example.jp/)を入力する(ステップS1401)。
【0161】
次いで、画面表示手段22が、入力されたURL(http://example.jp/)に係る画面の取得要求を、類似領域特定手段21に送る(ステップS1402)。
【0162】
該取得要求は類似領域特定手段21内の画面情報取得手段211が受け取り、画面情報取得手段211は、該取得要求で指定されているURLに係る画面のの構造化文書を取得する(ステップS1403)。
【0163】
次いで、画面情報登録手段212が、URLと構造化文書の組を画面情報として画面情報格納手段213に永続化する(ステップS1404)。この時の画面情報を図15に示す。
【0164】
また、領域情報取得手段213が、入力されたURL(http://example.jp/)を含むURLを有する領域情報を、領域情報格納手段24から取得する(ステップS1405)。入力されたURLを含むURLとは、例えば、”http://example.jp/home.html”などが該当する。
【0165】
しかし、この時点では該当する領域情報が無いため、表示情報送信手段217が、画面情報取得手段211が取得した画面の構造化文書をそのまま画面表示手段22に返す(ステップS1406)。
【0166】
次いで、画面表示手段22が、受け取った構造化文書を表示する(ステップS1407)。
【0167】
開発者は、表示された構造化文書から、不要な領域である、"header"領域、"footer"領域、"menu"領域について、ポップアップ画面上で不要ボタンにより送信する(ステップS1408)。これにより、各領域について、指定内容(削除)が入力されたこととなる。
【0168】
次いで、画面操作入力手段271が、開発者の入力を検知し、指定内容が入力された領域のノードパスと、指定の内容と、当該構造化文書に係るURLを、指定情報保持判断手段272に渡す(ステップS1409)。
【0169】
次いで、指定情報保持判断手段272が、該構造化文書に係るURLを含むURLを有する領域情報であって、ノードパスが一致する領域情報を、領域情報格納手段24から読み出す(ステップS1410)。
【0170】
しかし、この時点では該当する領域情報が存在しないため、指定情報保持判断手段272は、不要な領域であると判断された"header"領域、"footer"領域、"menu"領域のそれぞれについて、領域情報を生成し、領域情報格納手段24に永続化する(ステップS1411)。この時の領域情報の例を、図16に示す。
【0171】
次に、開発者は、画面表示手段22に別の画面のURL(http://example.jp/home.html)を入力する(ステップS1412)。
【0172】
画面表示手段22は、入力されたURL(http://example.jp/home.html)に係る画面の構造化文書の取得要求を、類似領域特定手段21に送る(ステップS1413)
【0173】
該取得要求は類似領域特定手段21内の画面情報取得手段211が受け取り、画面情報取得手段211は、該取得要求で指定されているURLに係る画面のの構造化文書を取得する(ステップS1414)。
【0174】
次いで、画面情報登録手段212が、URLと構造化文書の組みを画面情報として画面情報格納手段23に永続化する(ステップS1415)。この時の画面情報を図17に示す。
【0175】
また、領域情報取得手段213が、入力されたURL(http://example.jp/home.html)を含むURLを有する領域情報を、領域情報格納手段24から取得する(ステップS1416)。ここでは、ステップS1412で永続化した"header"領域、"footer"領域、"menu"領域についての領域情報が取得される。
【0176】
次いで、類似領域算出依頼手段214が、画面情報取得手段211が取得した構造化文書の各領域について、類似領域の算出を類似領域算出手段25に依頼する(ステップS1417)。この時、類似領域算出依頼手段214は、構造化文書と、領域情報取得手段213が取得した領域情報とを、類似領域算出手段25に渡す。
【0177】
次いで、類似領域算出手段25が、領域情報に基づいて構造化文書の各領域を所定の特徴量に変換し、内部構造解析手段251、外部パス解析手段252、属性解析手段253、近傍属性解析54の4つの類似度算出アルゴリズムを用いて、類似領域の算出を行い、類似領域があった場合、類似領域の指定情報を類似領域特定手段21に返す(ステップS1418)。具体的には、"header"領域、"footer"領域、"menu"領域のそれぞれについて、類似領域の算出を行う。
【0178】
本実施例では、図18に示すように、”footer”領域は内部構造、属性で完全一致なので編集距離0となり、類似とみなされる。一方、”header”領域は、内部構造、属性で誤差があり類似とみなされない。なお、本実施例では、計算結果が編集距離又は類似度が閾値内であった類似度算出アルゴリズムの数が過半数であった場合に、類似領域とみなす。
【0179】
”footer”領域は、類似とみなされるため、類似領域算出手段25は、領域情報格納手段24か取得した”footer”領域の領域情報内の指定情報を、類似領域特定手段21に返す。なお、領域情報を返しても良い。
【0180】
次いで、表示情報抽出手段215が該指定情報を受け取り、表示情報抽出手段215は、該指定情報の中から、画面に反映する情報を抽出する(ステップS1419)。具体的には、指定内容(taskフィールドの値)を抽出することを想定するが、これに限定されず、どの情報を抽出するかは任意に設定できるものとする。
【0181】
なお、同じ領域に係る指定情報が複数存在し、かつ、それぞれの指定情報の操作指定の内容(taskフィールド)が矛盾していた場合は、類似度算出アルゴリズムの計算結果に基づくスコアがより小さいもの、または類似度がより高いものを優先することとする。
【0182】
次いで、領域位置特定手段216が、類似領域が算出された領域の位置を特定する(ステップS1420)。ここでは、ステップS1412で入力された画面の構造化文書から、”footer”領域の位置が特定される。なお、表示情報抽出手段215により抽出された情報は、領域位置特定手段216が特定した位置に表示される。
【0183】
次いで、表示情報送信手段217が、表示情報抽出手段215が抽出した情報と、画面情報取得手段211が取得した構造化文書と、表示情報抽出手段215が抽出した情報の反映位置とを、画面表示手段22に渡す(ステップS1421)。
【0184】
次いで、画面表示手段22が、類似領域特定手段21から受け取った構造化文書を画面表示するとともに、表示情報抽出手段215が抽出した情報を反映位置に表示する(ステップS1422)。
【0185】
このようにすることで、開発者が本来行う必要のあった、重複する箇所の操作指定を削減することが可能となる。
【0186】
ステップS1424で表示された画面に対し、開発者が指定を追加する場合も、指定情報整合性確認手段26、指定情報更新手段27による処理が行われ、既存の指定情報の変更を行った上で、操作指定の追加を行う。
【0187】
以上がPT化開発時の処理の流れになる。
【0188】
(実行環境運用時の具体的な動作の説明)
【0189】
次に、実行環境運用時の具体的な動作について、図19のフローチャートを参照して詳細に説明する。なお、事前処理として、領域情報格納手段24から差分情報格納手段30へのデータの移行が行われているものとする。
【0190】
図19を参照すると、まず、ユーザがブラウザ31でポートレットを開くと(ステップS1901)、ブラウザ31は、ポートレットに対応するWebアプリケーション10のトップページの取得を画面情報取得手段28に送る(ステップS1902)。
【0191】
取得要求を受け取った画面情報取得手段211は、Webアプリケーション10のトップページの構造化文書を取得し、該構造化文書を差分情報置換手段29に渡す(ステップS1903)。
【0192】
次いで、差分情報置換手段29が、トップページのURLに一致するURLを有する差分情報を、差分情報格納手段30から取得する(ステップS1904)。
【0193】
次いで、差分情報置換手段29は、取得した差分情報の指定内容を構造化文書に反映し、その結果を画面表示手段22に渡す(ステップS1905)。
【0194】
このような処理をポートレットのページ読み込みのたびに行うことで、表示の変換を行う。
【0195】
なお、実行環境運用時においては、ユーザは構造化文書処理装置20以外のコンピュータ装置を使用する場合も考えられる。しかしこの場合、ユーザが使用するコンピュータ装置にブラウザ31を備え、構造化文書処理装置20と通信を行うことで、同様の処理が可能となる。
【0196】
(第1の実施の形態による効果)
本実施の形態によれば、指定が行われた領域に対し、該領域と同一ノードパスの領域の指定内容を読み出して、指定内容に矛盾がある場合、同一ノードパスの領域の指定内容を修正するため、ユーザが手動で指定を行う負担が軽減する。
【0197】
また、本実施の形態によれば、内部構造解析、外部パス解析、属性解析、近傍属性解析を行い、これらの多数決により類似領域を絞り込む処理を行っているため、利用者の指定意図に応じた、類似領域の特定を行うことができる。
【0198】
なお、本発明の課題を解決できる最小限の構成を図20に示す。構造化文書処理装置20が、構造化文書の指定された領域について、当該構造化文書及びそのURLと、当該領域のノードパスとを少なくとも含む特徴情報と、当該指定内容を少なくとも含む指定情報とから構成される領域情報を格納する領域情報格納手段24と、入力されたURLに関する画面の構造化文書を取得し、当該構造化文書内の各領域について、類似領域算出手段25を用いて領域情報格納手段24から類似領域を特定し、当該類似領域の指定情報を出力する類似領域特定手段21と、取得した構造化文書内の各領域の特徴情報と、領域情報格納手段内の領域情報との特徴情報の類似性を判定することにより、類似領域を算出する類似領域算出手段25とを備えることで、上述した本発明の課題を解決することができる。
【0199】
(第2の実施の形態)
次に、本発明の第2の実施の形態について説明を行う。
【0200】
本実施の形態による構造化文書処理装置20は、第1の実施の形態と比べて、実行環境運用時の構成が異なる。
【0201】
図11は、本実施の形態による構造化文書処理装置20の運用時の構成を示す。図11を参照すると、本実施の形態による構造化文書処理装置20は、画面情報取得手段28と、差分情報置換手段29と、差分情報格納手段30と、画面情報格納手段23と、領域情報格納手段24と、類似領域算出手段25と、画面変化確認手段41と、差分情報更新手段42とを含む。
【0202】
画面情報取得手段28、差分情報置換手段29、差分情報格納手段30、画面情報格納手段23、領域情報格納手段24、及び類似領域算出手段25は、第1の実施の形態と同様であるため、詳細な説明は省略する。
【0203】
画面変化確認手段41は、類似領域算出手段25を用いて、入力されたURLに係る構造化文書と、画面情報格納手段23内の、同一URLに係る構造化文書とに変化があったか否かを確認する。
【0204】
差分情報更新手段42は、画面情報取得手段28が取得した構造化文書を差分情報置換手段29から受け取る。
【0205】
また、差分情報更新手段42は、入力されたURLを有する差分情報を差分情報格納手段30から取得する。
【0206】
また、差分情報更新手段42は、入力されたURLを有する画面情報内の構造化文書を画面情報格納手段23から取得し、差分情報格納手段30から取得した差分情報の指定内容を該構造化文書に反映する。
【0207】
また、差分情報更新手段42は、差分情報の指定内容を反映した領域の類似領域を、画面情報取得手段28が取得した構造化文書から類似領域を算出するよう、類似領域算出手段25に依頼する。
【0208】
また、差分情報更新手段42は、類似領域があった場合、該類似領域の位置を特定し、類似領域が算出された領域の差分情報のpathフィールドの値を、該特定した位置で更新する。
【0209】
(第2の実施の形態の動作の説明)
次に本実施の形態における実行環境運用時の動作について、図22のフローチャートを参照して詳細にを説明する。なお、AP画面読み込み処理、AP画面編集処理の動作は第1の実施の形態と同様であるため、説明は省略する。
【0210】
図22を参照すると、まず、ユーザがブラウザ31でポートレットを開き、ポートレット内の所定のリンクをクリックする等により、所定のURLを入力すると(ステップS2101)、ブラウザ31は、入力されたURLに係る画面の取得要求を、画面情報取得手段28に送る(ステップS2102)。
【0211】
次いで、取得要求を受け取った画面情報取得手段28は、該取得要求で指定されているURLに係る画面の構造化文書を取得し、該構造化文書を差分情報置換手段29に渡す(ステップS2103)。
【0212】
差分情報置換手段29は、受け取った構造化文書が、画面情報格納手段23に格納されている画面情報内の構造化文書であって、入力されたURLに一致するURLを有する画面情報に係る構造化文書との比較を、画面変化確認手段41に依頼する(ステップS2104)。
【0213】
確認依頼を受け取った画面変化確認手段41は、画面情報格納手段23から、入力されたURLを有する画面情報内の構造化文書を読み込み、類似領域算出手段25を用いて、2つの構造化文書間で内容に変化があったか否かを確認し、その結果を差分情報置換手段29に返す(ステップS2105)。
【0214】
この時、類似領域算出手段25は、2つの構造化文書間の編集距離あるいは類似度を算出し、編集距離あるいは類似度が予め定めた閾値の範囲内であるか否かを判定する。なお、編集距離の場合は、編集距離が閾値以下であれば、閾値の範囲内であると判定し、類似度の場合は、類似度が閾値よりも大きければ、閾値の範囲内であるとみなす。
【0215】
そして、画面変化確認手段41は、編集距離あるいは類似度が予め定めた閾値の範囲外であったとき、2つの構造化文書間で変化があったとみなす。
【0216】
2つの構造化文書間に変化があった場合(ステップS2106”YES”)、差分情報置換手段29は、差分情報の更新を差分情報更新手段42に依頼する(ステップS2107)。この時、差分情報置換手段29は、画面情報取得手段28が取得した構造化文書を差分情報更新手段42に渡す。
【0217】
次いで、差分情報更新手段42は、まず、入力されたURLに係る差分情報と構造化文書を、それぞれ差分情報格納手段30、画面情報格納手段23から読みだす(ステップS2108)。
【0218】
次いで、差分情報取得手段42は、画面情報格納手段23から取得した構造化文書に、差分情報の指定内容を反映する(ステップS2109)。
【0219】
次いで、差分情報更新手段42は、差分情報の指定内容を反映した領域の類似領域を、画面情報取得手段28が取得した構造化文書から算出するよう、類似領域算出手段25に依頼し、結果を取得する(ステップS2110)。
【0220】
次いで、差分情報更新手段42は、類似領域があった場合(ステップS2111”YES”)、該類似領域の位置を特定し、類似領域が算出された領域の差分情報のpathフィールドの値を、該特定した位置で更新する(ステップS2112)。
【0221】
(第2の実施の形態による効果)
本実施の形態によれば、開発時に参照した画面と、運用時におけるWebアプリケーション10の画面とに変化があった場合、該変化に対応して差分情報を自動的に更新することができる。
【0222】
(第3の実施の形態)
本実施の形態では、第1の実施の形態と比べ、画面表示手段22が、領域への指定を受け付ける際に、指定が入力された領域の類似領域にも同様の指定を行うかの入力を即す機能を有する。
【0223】
また、指定情報保持判断手段272が、指定が入力された領域について領域情報を生成するとともに、その類似領域の領域情報についても、同様の指定内容を更新する。
【0224】
(第3の実施の形態による効果)
本実施の形態によれば、1つの領域に対して所定の指定を行った場合、類似領域に対しても自動的に指定が行われることにより、開発者の手間を削減することができる。
【0225】
(第4の実施の形態)
本実施の形態では、第1の実施の形態と比べ、類似領域算出手段25が、一致確率算出手段255と、信頼度判定手段256とをさらに備える。
【0226】
一致確率算出手段255は、類似度算出アルゴリズムの1つであり、類似領域特定時に、類似領域候補が複数ある場合、類似度算出アルゴリズムの計算結果に基づくスコアが最も高い第1の類似領域と、2番目に高い第2の類似領域との一致確率を求める。
【0227】
信頼度判定手段256は、各類似領域候補について、一致確率に反比例する所定の信頼度を与え、信頼度が所定の閾値以上である場合、類似度が敷地の範囲内であるとみなす。
【0228】
(第4の実施の形態による効果)
本実施の形態によれば、5つの類似度算出アルゴリズムを用いて、類似領域の算出を行うことができる。
【0229】
次に、本発明の構造化文書処理装置20のハードウェア構成例について、図22を参照して説明する。図22は、構造化文書処理装置20のハードウェア構成例を示すブロック図である。
【0230】
図22を参照すると、本発明の構造化文書処理装置20は、一般的なコンピュータ装置と同様のハードウェア構成であり、CPU(Central Processing Unit)801、RAM(Random Access Memory)等のメモリからなる、データの作業領域やデータの一時退避領域に用いられる主記憶部802、ネットワークを介してデータの送受信を行う通信部803、入力装置805や出力装置806及び記憶装置807と接続してデータの送受信を行う入出力インタフェース部804、上記各構成領域を相互に接続するシステムバス808を備えている。記憶装置807は、例えば、ROM(Read Only Memory)、磁気ディスク、半導体メモリ等の不揮発性メモリから構成されるハードディスク装置等で実現される。
【0231】
本発明の構造化文書処理装置20の各機能は、プログラムを組み込んだ、LSI(Large Scale Integration)等のハードウェア部品である回路部品を実装することにより、その動作をハードウェア的に実現することは勿論として、その機能を提供するプログラムを、記憶装置807に格納し、そのプログラムを主記憶部802にロードしてCPU801で実行することにより、ソフトウェア的に実現することも可能である。
【0232】
以上、好ましい実施の形態をあげて本発明を説明したが、本発明は必ずしも、上記実施の形態に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。
【0233】
なお、以上の構成領域の任意の組み合わせ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【0234】
また、本発明の各種の構成領域は、必ずしも個々に独立した存在である必要はなく、複数の構成領域が一個の部材として形成されていること、一つの構成領域が複数の部材で形成されていること、ある構成領域が他の構成領域の一部であること、ある構成領域の一部と他の構成領域の一部とが重複していること、等でもよい。
【0235】
また、本発明の方法およびコンピュータプログラムには複数の手段順を順番に記載してあるが、その記載の順番は複数の手段順を実行する順番を限定するものではない。このため、本発明の方法およびコンピュータプログラムを実施する時には、その複数の手段順の順番は内容的に支障しない範囲で変更することができる。
【0236】
また、本発明の方法およびコンピュータプログラムの複数の手段順は個々に相違するタイミングで実行されることに限定されない。このため、ある手段順の実行中に他の手段順が発生すること、ある手段順の実行タイミングと他の手段順の実行タイミングとの一部ないし全部が重複していること、等でもよい。
【0237】
さらに、上記実施形態の一部又は全部は、以下の付記のようにも記載されうるが、これに限定されない。
【0238】
(付記1)
構造化文書の指定された領域について、当該構造化文書及びそのURLと、当該領域のノードパスとを少なくとも含む特徴情報と、当該指定内容を少なくとも含む指定情報とから構成される領域情報を格納する領域情報格納手段と、
入力されたURLに関する画面の構造化文書を取得し、当該構造化文書内の各領域について、類似領域算出手段を用いて前記領域情報格納手段から類似領域を特定し、当該類似領域の前記指定情報を出力する類似領域特定手段と、
取得した前記構造化文書内の各領域の特徴情報と、前記領域情報格納手段内の領域情報との特徴情報の類似性を判定することにより、類似領域を算出する類似領域算出手段と
を備えることを特徴とする構造化文書処理装置。
【0239】
(付記2)
前記類似領域算出手段が、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記木構造から当該領域と同じノード名以下の木構造を生成するとともに、前記領域情報で示される領域に関する構造化文書を木構造に変換し、当該領域と同じノード名以下の木構造を生成し、生成した2つの前記木構造を比較することで類似性を判定する内部構造解析手段を含むことを特徴とする付記1に記載の構造化文書処理装置。
【0240】
(付記3)
前記類似領域算出手段が、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記算出対象の領域と同じノード名のノードに対し、ルートパスからの経路を抽出するとともに、前記領域情報で示される領域に関する構造化文書を木構造に変換し、当該領域と同じノード名のノードに対し、ルートパスからの経路を抽出し、抽出した2つの前記経路を比較することで類似性を判定する外部パス解析手段を含むことを特徴とする付記1に記載の構造化文書処理装置。
【0241】
(付記4)
前記類似領域算出手段が、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記算出対象の領域と同じノード名のノードに付されている属性値を取得するとともに、前記領域情報に係る領域についても、当該領域に関する構造化文書を木構造に変換し、当該領域と同じノード名のノードに付されている属性値を取得し、取得した2つの前記属性値を比較することで類似性を判定する属性解析手段を含むことを特徴とする付記1に記載の構造化文書処理装置。
【0242】
(付記5)
前記類似領域算出手段が、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記算出対象の領域と同じノード名のノードが、当該ノードを識別する上で有効な属性値を持たなかった場合、当該ノードの先祖要素、新要素から有効な属性を持つ間近なノードを探索し、前記間近な要素を起点とした前記算出対象の領域と同じノード名のノードまでの相対関係を特定するとともに、前記領域情報に係る領域についても同様の処理を行い前記相対関係を特定し、特定した2つの前記相対関係を特定することで類似性を判定する近傍属性解析手段を含むことを特徴とする付記1に記載の構造化文書処理装置。
【0243】
(付記6)
前記類似領域算出手段が、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記木構造から当該領域と同じノード名以下の木構造を生成するとともに、前記領域情報で示される領域に関する構造化文書を木構造に変換し、当該領域と同じノード名以下の木構造を生成し、生成した2つの前記木構造を比較することで類似性を判定する内部構造解析手段と、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記算出対象の領域と同じノード名のノードに対し、ルートパスからの経路を抽出するとともに、前記領域情報で示される領域に関する構造化文書を木構造に変換し、当該領域と同じノード名のノードに対し、ルートパスからの経路を抽出し、抽出した2つの前記経路を比較することで類似性を判定する外部パス解析手段と、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記算出対象の領域と同じノード名のノードに付されている属性値を取得するとともに、前記領域情報に係る領域についても、当該領域に関する構造化文書を木構造に変換し、当該領域と同じノード名のノードに付されている属性値を取得し、取得した2つの前記属性値を比較することで類似性を判定する属性解析手段と、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記算出対象の領域と同じノード名のノードが、当該ノードを識別する上で有効な属性値を持たなかった場合、当該ノードの先祖要素、新要素から有効な属性を持つ間近なノードを探索し、前記間近な要素を起点とした前記算出対象の領域と同じノード名のノードまでの相対関係を特定するとともに、前記領域情報に係る領域についても同様の処理を行い前記相対関係を特定し、特定した2つの前記相対関係を特定することで類似性を判定する近傍属性解析手段
の何れか1つを少なくとも含むことを特徴とする付記1に記載の構造化文書処理装置。
【0244】
(付記7)
前記類似領域算出手段が、
類似性を判定した解析手段が複数ある場合、過半数で類似性を肯定する結果となった場合に、前記領域情報に関する領域を、前記算出対象の領域の類似領域とみなすことを特徴とする付記6に記載の構造化文書処理装置。
【0245】
(付記8)
ユーザにより所定の指定が行われた領域について、当該指定内容が、当該領域に関連する領域について過去に入力された指定内容と整合性が成り立つかを調べる指定情報整合性確認手段と、
整合性が成り立たない場合に、前記関連する領域の指定内容を更新する指定情報更新内容決定手段と
を備えることを特徴とする付記1から付記7に記載の構造化文書処理装置。
【0246】
(付記9)
前記指定情報整合性確認手段が、
入力された指定内容と、指定が入力された領域に係る構造化文書のURLを含むURLを有する領域情報であって、当該指定が入力された領域とノードパスが一致する領域情報の指定内容との整合性を確認することを特徴とする付記8に記載の構造化文書処理装置。
【0247】
(付記10)
前記指定情報整合性確認手段が整合性ありと判断した場合、
指定が入力された領域の領域情報を生成し、当該領域情報を前記領域情報格納手段に格納する領域情報保持判断手段を備えることを特徴とする付記8又は付記9に記載の構造化文書処理装置。
【0248】
(付記11)
前記領域情報が、整合性があるか否かの判断基準となる基準値をさらに含み、
前記指定情報整合性確認手段が前記基準値に基づき整合性なしと判断した場合、
指定情報更新内容決定手段が、前記基準値を変更することで整合性を保つことができるか否かを調査し、整合性が保てる場合、前記領域情報の前記基準値を更新するとともに、前記領域情報保持判断手段が、指定が入力された領域の領域情報を生成し、当該領域情報を前記領域情報格納手段に格納することを特徴とする付記10に記載の構造化文書処理装置。
【0249】
(付記12)
前記領域情報が、入力された指定内容が当該領域に係る構造化文書にのみ適用されるか否かを示す例外適用値をさらに含み、
前記整合性が保てない場合、
前記領域情報保持判断手段が、指定が入力された領域の領域情報を生成するとともに、前記例外適用値を、例外扱いを示す値に設定した上で、前記領域情報格納手段に格納することを特徴とする付記10又は付記11に記載の構造化文書処理装置。
【0250】
(付記13)
構造化文書処理装置が行う構造化文書の類似領域特定方法であって、
入力されたURLに関する画面の構造化文書を取得し、当該構造化文書内の各領域について、類似領域算出ステップを用いて、構造化文書の指定された領域について、当該構造化文書及びそのURLと、当該領域のノードパスとを少なくとも含む特徴情報と、当該指定内容を少なくとも含む指定情報とから構成される領域情報を格納する領域情報格納手段から類似領域を特定し、当該類似領域の前記指定情報を出力する類似領域特定ステップと、
取得した前記構造化文書内の各領域の特徴情報と、前記領域情報格納手段内の領域情報との特徴情報の類似性を判定することにより、類似領域を算出する類似領域算出ステップと
を有することを特徴とする構造化文書の類似領域特定方法。
【0251】
(付記14)
前記類似領域算出ステップで、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記木構造から当該領域と同じノード名以下の木構造を生成するとともに、前記領域情報で示される領域に関する構造化文書を木構造に変換し、当該領域と同じノード名以下の木構造を生成し、生成した2つの前記木構造を比較することで類似性を判定する内部構造解析ステップを含むことを特徴とする付記13に記載の構造化文書の類似領域特定方法。
【0252】
(付記15)
前記類似領域算出ステップで、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記算出対象の領域と同じノード名のノードに対し、ルートパスからの経路を抽出するとともに、前記領域情報で示される領域に関する構造化文書を木構造に変換し、当該領域と同じノード名のノードに対し、ルートパスからの経路を抽出し、抽出した2つの前記経路を比較することで類似性を判定する外部パス解析ステップを含むことを特徴とする付記13に記載の構造化文書の類似領域特定方法。
【0253】
(付記16)
前記類似領域算出ステップで、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記算出対象の領域と同じノード名のノードに付されている属性値を取得するとともに、前記領域情報に係る領域についても、当該領域に関する構造化文書を木構造に変換し、当該領域と同じノード名のノードに付されている属性値を取得し、取得した2つの前記属性値を比較することで類似性を判定する属性解析ステップを含むことを特徴とする付記13に記載の構造化文書の類似領域特定方法。
【0254】
(付記17)
前記類似領域算出ステップで、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記算出対象の領域と同じノード名のノードが、当該ノードを識別する上で有効な属性値を持たなかった場合、当該ノードの先祖要素、新要素から有効な属性を持つ間近なノードを探索し、前記間近な要素を起点とした前記算出対象の領域と同じノード名のノードまでの相対関係を特定するとともに、前記領域情報に係る領域についても同様の処理を行い前記相対関係を特定し、特定した2つの前記相対関係を特定することで類似性を判定する近傍属性解析ステップを含むことを特徴とする付記13に記載の構造化文書の類似領域特定方法。
【0255】
(付記18)
前記類似領域算出ステップで、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記木構造から当該領域と同じノード名以下の木構造を生成するとともに、前記領域情報で示される領域に関する構造化文書を木構造に変換し、当該領域と同じノード名以下の木構造を生成し、生成した2つの前記木構造を比較することで類似性を判定する内部構造解析ステップと、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記算出対象の領域と同じノード名のノードに対し、ルートパスからの経路を抽出するとともに、前記領域情報で示される領域に関する構造化文書を木構造に変換し、当該領域と同じノード名のノードに対し、ルートパスからの経路を抽出し、抽出した2つの前記経路を比較することで類似性を判定する外部パス解析ステップと、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記算出対象の領域と同じノード名のノードに付されている属性値を取得するとともに、前記領域情報に係る領域についても、当該領域に関する構造化文書を木構造に変換し、当該領域と同じノード名のノードに付されている属性値を取得し、取得した2つの前記属性値を比較することで類似性を判定する属性解析ステップと、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記算出対象の領域と同じノード名のノードが、当該ノードを識別する上で有効な属性値を持たなかった場合、当該ノードの先祖要素、新要素から有効な属性を持つ間近なノードを探索し、前記間近な要素を起点とした前記算出対象の領域と同じノード名のノードまでの相対関係を特定するとともに、前記領域情報に係る領域についても同様の処理を行い前記相対関係を特定し、特定した2つの前記相対関係を特定することで類似性を判定する近傍属性解析ステップ
の何れか1つを少なくとも含むことを特徴とする付記13に記載の構造化文書の類似領域特定方法。
【0256】
(付記19)
前記類似領域算出ステップで、
類似性を判定した解析ステップが複数ある場合、過半数で類似性を肯定する結果となった場合に、前記領域情報に関する領域を、前記算出対象の領域の類似領域とみなすことを特徴とする付記18に記載の構造化文書の類似領域特定方法。
【0257】
(付記20)
ユーザにより所定の指定が行われた領域について、当該指定内容が、当該領域に関連する領域について過去に入力された指定内容と整合性が成り立つかを調べる指定情報整合性確認ステップと、
整合性が成り立たない場合に、前記関連する領域の指定内容を更新する指定情報更新内容決定ステップと
を有することを特徴とする付記13から付記19に記載の構造化文書の類似領域特定方法。
【0258】
(付記21)
前記指定情報整合性確認ステップで、
入力された指定内容と、指定が入力された領域に係る構造化文書のURLを含むURLを有する領域情報であって、当該指定が入力された領域とノードパスが一致する領域情報の指定内容との整合性を確認することを特徴とする付記20に記載の構造化文書の類似領域特定方法。
【0259】
(付記22)
前記指定情報整合性確認ステップで整合性ありと判断した場合、
指定が入力された領域の領域情報を生成し、当該領域情報を前記領域情報格納手段に格納する領域情報保持判断ステップを有することを特徴とする付記20又は付記21に記載の構造化文書の類似領域特定方法。
【0260】
(付記23)
前記領域情報が、整合性があるか否かの判断基準となる基準値をさらに含み、
前記指定情報整合性確認ステップで前記基準値に基づき整合性なしと判断した場合、
指定情報更新内容決定ステップで、前記基準値を変更することで整合性を保つことができるか否かを調査し、整合性が保てる場合、前記領域情報の前記基準値を更新するとともに、前記領域情報保持判断ステップで、指定が入力された領域の領域情報を生成し、当該領域情報を前記領域情報格納手段に格納することを特徴とする付記22に記載の構造化文書の類似領域特定方法。
【0261】
(付記24)
前記領域情報が、入力された指定内容が当該領域に係る構造化文書にのみ適用されるか否かを示す例外適用値をさらに含み、
前記整合性が保てない場合、
前記領域情報保持判断ステップで、指定が入力された領域の領域情報を生成するとともに、前記例外適用値を、例外扱いを示す値に設定した上で、前記領域情報格納手段に格納することを特徴とする付記22又は23に記載の構造化文書の類似領域特定方法。
【0262】
(付記25)
構造化文書処理装置を構成するコンピュータ上で動作する構造化文書の類似領域特定プログラムであって、
前記コンピュータに、
入力されたURLに関する画面の構造化文書を取得し、当該構造化文書内の各領域について、類似領域算出処理を用いて、構造化文書の指定された領域について、当該構造化文書及びそのURLと、当該領域のノードパスとを少なくとも含む特徴情報と、当該指定内容を少なくとも含む指定情報とから構成される領域情報を格納する領域情報格納手段から類似領域を特定し、当該類似領域の前記指定情報を出力する類似領域特定処理と、
取得した前記構造化文書内の各領域の特徴情報と、前記領域情報格納手段内の領域情報との特徴情報の類似性を判定することにより、類似領域を算出する類似領域算出処理と
を実行させることを特徴とする構造化文書の類似領域特定プログラム。
【0263】
(付記26)
前記類似領域算出処理で、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記木構造から当該領域と同じノード名以下の木構造を生成するとともに、前記領域情報で示される領域に関する構造化文書を木構造に変換し、当該領域と同じノード名以下の木構造を生成し、生成した2つの前記木構造を比較することで類似性を判定する内部構造解析処理を含むことを特徴とする付記25に記載の構造化文書の類似領域特定プログラム。
【0264】
(付記27)
前記類似領域算出処理で、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記算出対象の領域と同じノード名のノードに対し、ルートパスからの経路を抽出するとともに、前記領域情報で示される領域に関する構造化文書を木構造に変換し、当該領域と同じノード名のノードに対し、ルートパスからの経路を抽出し、抽出した2つの前記経路を比較することで類似性を判定する外部パス解析処理を含むことを特徴とする付記25に記載の構造化文書の類似領域特定プログラム。
【0265】
(付記28)
前記類似領域算出処理で、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記算出対象の領域と同じノード名のノードに付されている属性値を取得するとともに、前記領域情報に係る領域についても、当該領域に関する構造化文書を木構造に変換し、当該領域と同じノード名のノードに付されている属性値を取得し、取得した2つの前記属性値を比較することで類似性を判定する属性解析処理を含むことを特徴とする付記25に記載の構造化文書の類似領域特定プログラム。
【0266】
(付記29)
前記類似領域算出処理で、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記算出対象の領域と同じノード名のノードが、当該ノードを識別する上で有効な属性値を持たなかった場合、当該ノードの先祖要素、新要素から有効な属性を持つ間近なノードを探索し、前記間近な要素を起点とした前記算出対象の領域と同じノード名のノードまでの相対関係を特定するとともに、前記領域情報に係る領域についても同様の処理を行い前記相対関係を特定し、特定した2つの前記相対関係を特定することで類似性を判定する近傍属性解析処理を含むことを特徴とする付記25に記載の構造化文書の類似領域特定プログラム。
【0267】
(付記30)
前記類似領域算出処理で、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記木構造から当該領域と同じノード名以下の木構造を生成するとともに、前記領域情報で示される領域に関する構造化文書を木構造に変換し、当該領域と同じノード名以下の木構造を生成し、生成した2つの前記木構造を比較することで類似性を判定する内部構造解析処理と、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記算出対象の領域と同じノード名のノードに対し、ルートパスからの経路を抽出するとともに、前記領域情報で示される領域に関する構造化文書を木構造に変換し、当該領域と同じノード名のノードに対し、ルートパスからの経路を抽出し、抽出した2つの前記経路を比較することで類似性を判定する外部パス解析処理と、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記算出対象の領域と同じノード名のノードに付されている属性値を取得するとともに、前記領域情報に係る領域についても、当該領域に関する構造化文書を木構造に変換し、当該領域と同じノード名のノードに付されている属性値を取得し、取得した2つの前記属性値を比較することで類似性を判定する属性解析処理と、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記算出対象の領域と同じノード名のノードが、当該ノードを識別する上で有効な属性値を持たなかった場合、当該ノードの先祖要素、新要素から有効な属性を持つ間近なノードを探索し、前記間近な要素を起点とした前記算出対象の領域と同じノード名のノードまでの相対関係を特定するとともに、前記領域情報に係る領域についても同様の処理を行い前記相対関係を特定し、特定した2つの前記相対関係を特定することで類似性を判定する近傍属性解析処理
の何れか1つを少なくとも含むことを特徴とする付記25に記載の構造化文書の類似領域特定プログラム。
【0268】
(付記31)
前記類似領域算出処理で、
類似性を判定した解析処理が複数ある場合、過半数で類似性を肯定する結果となった場合に、前記領域情報に関する領域を、前記算出対象の領域の類似領域とみなすことを特徴とする付記30に記載の構造化文書の類似領域特定プログラム。
【0269】
(付記32)
前記コンピュータに、
ユーザにより所定の指定が行われた領域について、当該指定内容が、当該領域に関連する領域について過去に入力された指定内容と整合性が成り立つかを調べる指定情報整合性確認処理と、
整合性が成り立たない場合に、前記関連する領域の指定内容を更新する指定情報更新内容決定処理と
を実行させることを特徴とする付記25から付記31に記載の構造化文書の類似領域特定プログラム。
【0270】
(付記33)
前記指定情報整合性確認処理で、
入力された指定内容と、指定が入力された領域に係る構造化文書のURLを含むURLを有する領域情報であって、当該指定が入力された領域とノードパスが一致する領域情報の指定内容との整合性を確認することを特徴とする付記32に記載の構造化文書の類似領域特定プログラム。
【0271】
(付記34)
前記指定情報整合性確認処理で整合性ありと判断した場合、
前記コンピュータに、
指定が入力された領域の領域情報を生成し、当該領域情報を前記領域情報格納手段に格納する領域情報保持判断処理を実行させることを特徴とする付記32又は付記33に記載の構造化文書の類似領域特定プログラム。
【0272】
(付記35)
前記領域情報が、整合性があるか否かの判断基準となる基準値をさらに含み、
前記指定情報整合性確認処理で前記基準値に基づき整合性なしと判断した場合、
指定情報更新内容決定処理で、前記基準値を変更することで整合性を保つことができるか否かを調査し、整合性が保てる場合、前記領域情報の前記基準値を更新するとともに、前記領域情報保持判断処理で、指定が入力された領域の領域情報を生成し、当該領域情報を前記領域情報格納手段に格納することを特徴とする付記34に記載の構造化文書の類似領域特定プログラム。
【0273】
(付記36)
前記領域情報が、入力された指定内容が当該領域に係る構造化文書にのみ適用されるか否かを示す例外適用値をさらに含み、
前記整合性が保てない場合、
前記領域情報保持判断処理で、指定が入力された領域の領域情報を生成するとともに、前記例外適用値を、例外扱いを示す値に設定した上で、前記領域情報格納手段に格納することを特徴とする付記34又は35に記載の構造化文書の類似領域特定プログラム。
【産業上の利用可能性】
【0274】
本発明の活用例として、企業内ポータルソフトウェア上で稼動するポートレットの作成支援など挙げられる。Webアプリケーションの既存のポートレット化には開発スキルが必要があったが、本発明ではWebアプリケーションを開発知識の無い業務管理者が作成できることを支援するものである。
【符号の説明】
【0275】
10:Webアプリケーション
20:構造化文書処理装置
21:類似領域特定手段
211:画面呪法取得手段
212:画面情報登録手段
213:領域情報取得手段
214:類似領域算出依頼手段
215:表示情報抽出手段
216:領域位置特定手段
217:画面反映情報送信手段
22:画面表示手段
23:画面情報格納手段
24:領域情報格納手段
25:類似領域算出手段
251:内部構造解析手段
252:外部パス解析手段
253:属性解析手段
254:近傍属性解析手段
26:指定情報整合性確認手段
27:指定情報更新手段
271:画面操作入力手段
272:指定情報保持判断手段
273:指定情報更新内容決定手段
28:画面情報取得手段
29:差分情報置換手段
30:差分情報格納手段
31:ブラウザ
801:CPU
802:主記憶部
803:通信部
804:入出力インタフェース部
805:入力装置
806:出力装置
807:記憶装置
808:システムバス

【特許請求の範囲】
【請求項1】
構造化文書の指定された領域について、当該構造化文書及びそのURLと、当該領域のノードパスとを少なくとも含む特徴情報と、当該指定内容を少なくとも含む指定情報とから構成される領域情報を格納する領域情報格納手段と、
入力されたURLに関する画面の構造化文書を取得し、当該構造化文書内の各領域について、類似領域算出手段を用いて前記領域情報格納手段から類似領域を特定し、当該類似領域の前記指定情報を出力する類似領域特定手段と、
取得した前記構造化文書内の各領域の特徴情報と、前記領域情報格納手段内の領域情報との特徴情報の類似性を判定することにより、類似領域を算出する類似領域算出手段と
を備えることを特徴とする構造化文書処理装置。
【請求項2】
前記類似領域算出手段が、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記木構造から当該領域と同じノード名以下の木構造を生成するとともに、前記領域情報で示される領域に関する構造化文書を木構造に変換し、当該領域と同じノード名以下の木構造を生成し、生成した2つの前記木構造を比較することで類似性を判定する内部構造解析手段と、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記算出対象の領域と同じノード名のノードに対し、ルートパスからの経路を抽出するとともに、前記領域情報で示される領域に関する構造化文書を木構造に変換し、当該領域と同じノード名のノードに対し、ルートパスからの経路を抽出し、抽出した2つの前記経路を比較することで類似性を判定する外部パス解析手段と、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記算出対象の領域と同じノード名のノードに付されている属性値を取得するとともに、前記領域情報に係る領域についても、当該領域に関する構造化文書を木構造に変換し、当該領域と同じノード名のノードに付されている属性値を取得し、取得した2つの前記属性値を比較することで類似性を判定する属性解析手段と、
前記算出対象の領域に関する構造化文書を木構造に変換し、前記算出対象の領域と同じノード名のノードが、当該ノードを識別する上で有効な属性値を持たなかった場合、当該ノードの先祖要素、新要素から有効な属性を持つ間近なノードを探索し、前記間近な要素を起点とした前記算出対象の領域と同じノード名のノードまでの相対関係を特定するとともに、前記領域情報に係る領域についても同様の処理を行い前記相対関係を特定し、特定した2つの前記相対関係を特定することで類似性を判定する近傍属性解析手段
の何れか1つを少なくとも含むことを特徴とする請求項1に記載の構造化文書処理装置。
【請求項3】
前記類似領域算出手段が、
類似性を判定した解析手段が複数ある場合、過半数で類似性を肯定する結果となった場合に、前記領域情報に関する領域を、前記算出対象の領域の類似領域とみなすことを特徴とする請求項2に記載の構造化文書処理装置。
【請求項4】
ユーザにより所定の指定が行われた領域について、当該指定内容が、当該領域に関連する領域について過去に入力された指定内容と整合性が成り立つかを調べる指定情報整合性確認手段と、
整合性が成り立たない場合に、前記関連する領域の指定内容を更新する指定情報更新内容決定手段と
を備えることを特徴とする請求項1から請求項3に記載の構造化文書処理装置。
【請求項5】
前記指定情報整合性確認手段が、
入力された指定内容と、指定が入力された領域に係る構造化文書のURLを含むURLを有する領域情報であって、当該指定が入力された領域とノードパスが一致する領域情報の指定内容との整合性を確認することを特徴とする請求項4に記載の構造化文書処理装置。
【請求項6】
前記指定情報整合性確認手段が整合性ありと判断した場合、
指定が入力された領域の領域情報を生成し、当該領域情報を前記領域情報格納手段に格納する領域情報保持判断手段を備えることを特徴とする請求項4又は請求項5に記載の構造化文書処理装置。
【請求項7】
前記領域情報が、整合性があるか否かの判断基準となる基準値をさらに含み、
前記指定情報整合性確認手段が前記基準値に基づき整合性なしと判断した場合、
指定情報更新内容決定手段が、前記基準値を変更することで整合性を保つことができるか否かを調査し、整合性が保てる場合、前記領域情報の前記基準値を更新するとともに、前記領域情報保持判断手段が、指定が入力された領域の領域情報を生成し、当該領域情報を前記領域情報格納手段に格納することを特徴とする請求項6に記載の構造化文書処理装置。
【請求項8】
前記領域情報が、入力された指定内容が当該領域に係る構造化文書にのみ適用されるか否かを示す例外適用値をさらに含み、
前記整合性が保てない場合、
前記領域情報保持判断手段が、指定が入力された領域の領域情報を生成するとともに、前記例外適用値を、例外扱いを示す値に設定した上で、前記領域情報格納手段に格納することを特徴とする請求項6又は請求項7に記載の構造化文書処理装置。
【請求項9】
構造化文書処理装置が行う構造化文書の類似領域特定方法であって、
入力されたURLに関する画面の構造化文書を取得し、当該構造化文書内の各領域について、類似領域算出ステップを用いて、構造化文書の指定された領域について、当該構造化文書及びそのURLと、当該領域のノードパスとを少なくとも含む特徴情報と、当該指定内容を少なくとも含む指定情報とから構成される領域情報を格納する領域情報格納手段から類似領域を特定し、当該類似領域の前記指定情報を出力する類似領域特定ステップと、
取得した前記構造化文書内の各領域の特徴情報と、前記領域情報格納手段内の領域情報との特徴情報の類似性を判定することにより、類似領域を算出する類似領域算出ステップと
を有することを特徴とする構造化文書の類似領域特定方法。
【請求項10】
構造化文書処理装置を構成するコンピュータ上で動作する構造化文書の類似領域特定プログラムであって、
前記コンピュータに、
入力されたURLに関する画面の構造化文書を取得し、当該構造化文書内の各領域について、類似領域算出処理を用いて、構造化文書の指定された領域について、当該構造化文書及びそのURLと、当該領域のノードパスとを少なくとも含む特徴情報と、当該指定内容を少なくとも含む指定情報とから構成される領域情報を格納する領域情報格納手段から類似領域を特定し、当該類似領域の前記指定情報を出力する類似領域特定処理と、
取得した前記構造化文書内の各領域の特徴情報と、前記領域情報格納手段内の領域情報との特徴情報の類似性を判定することにより、類似領域を算出する類似領域算出処理と
を実行させることを特徴とする構造化文書の類似領域特定プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14A】
image rotate

【図14B】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate