研究概要 |
妥当でないXMLデータが得られた場合,それを妥当なものに変換する必要がある.しかし,XMLデータやスキーマの構造が複雑であった場合,妥当でないXMLデータを妥当なものに手作業で変換するのは困難なことが多い.本研究では,妥当でないXMLデータを妥当なものに変換するための編集操作列を求めるアルゴリズムを開発した.データの変換は,XMLデータをラベル付き順序木とみなし,それに対して頂点の追加・削除,ラベル(要素名)の変更という編集操作を適用することにより行う.また,各編集操作にはコストが付与されるものとする.妥当でないXMLデータを妥当なものに変換する場合,一般に,適用される編集操作のコストは小さい方が望ましい.そこで,本研究では,.まず,妥当でないXMLデータdとDTD Dに対して,dとDとの間のコスト最小の編集操作列を求める多項式時間アルゴリズムを開発した.ここで,dをDに関して妥当なものに変換する編集操作列のことをdとDとの間の編集操作列と呼ぶ.次に,この問題をより一般化した場合について考察した.具体的には,DTDより表現力の高い正規木文法(regular tree grammar)を用い,XMLデータと正規木文法との間のK最適編集操作列(コストが小さいものから順にK個のもの)を求める問題にっいて考察した.そして,妥当でないXMLデータd,正規木文法G,正の整数Kに対して,dとDとの間のK最適編集操作列を求める問題がNP困難であることを示した.更に,この問題を解くための偽多項式時間アルゴリズムを開発した.
|