(57)【特許請求の範囲】
【請求項１】
変換元データと変換先データを入力し、変換元データと変換先データとの対応関係を記述したマッピングルールを出力するマッピングルール作成部と、
上記変換元データのうち既にマッピングルールを有する変換元データである既与変換元データのマッピングルールが格納されたマッピングルール記憶部と、
上記マッピングルール作成部に入力された変換元データが上記マッピングルール記憶部にマッピングルールが格納されていない変換元データである新変換元データであった場合、この新変換元データの属性の型と名称と、上記既与変換元データの属性の型と名称が一致する属性の数と、それぞれの属性の型と名称が一致しない属性の数とに異なる重み付けをして差をとることにより、この差が最大となる上記既与変換元データを上記新変換元データの基底データとして抽出し、この抽出した基底データのマッピングルールを上記マッピングルール作成部に与える基底データ抽出部と、
上記既与変換元データのマッピングルールから、上記新変換元データと上記基底データとの差分部分に関するマッピングルールである差分マッピングルールを抽出し上記マッピングルール作成部に与える差分ルール抽出部とを備え、
上記マッピングルール作成部は、上記基底データのマッピングルールと上記差分マッピングルールとを結合して上記新変換元データのマッピングルールを作成することを特徴とするマッピングルール再利用装置。
【請求項２】
類義語を格納した類義語記憶部を備え、基底データ抽出部は上記類義語記憶部に格納された類義語を参照して基底データを抽出し、差分ルール抽出部は上記類義語記憶部に格納された類義語を参照して差分ルールを抽出することを特徴とする請求項１に記載のマッピングルール再利用装置。
【請求項３】
既与変換元データが有する各属性間の関係性を評価する属性関係性評価部を備え、この属性関係性評価部は、基底データ抽出部が複数のデータを基底データ候補として抽出した場合、上記基底データ抽出部が出力する上記複数の基底データ候補を入力して、上記複数の基底データ候補が有する各属性のうち、異なる二つの属性の組み合わせ全てについて出現回数を評価することにより上記複数の基底データ候補から基底データを決定して上記基底データ抽出部に出力することを特徴とする請求項１に記載のマッピングルール再利用装
置。
【請求項４】
既与変換元データが有する各属性間の関係性を評価する属性関係性評価部を備え、差分ルール抽出部が一つの属性に対し複数のルールを差分ルール候補として抽出した場合、上記属性関係性評価部は、上記差分ルール抽出部が出力する上記複数の差分ルール候補を入力して上記複数の差分ルール候補の各属性間の関係性の評価結果を基に上記複数の差分ルール候補から差分ルールを決定して上記差分ルール抽出部に出力することを特徴とする請求項１に記載のマッピングルール再利用装置。
【請求項５】
基底データ抽出部が複数のデータを基底データ候補として抽出した場合、上記複数の基底データ候補を出力装置へ出力する外部出力部と、入力装置から基底データ抽出部に上記複数の基底データ候補から選択された基底データを入力する外部入力部とを備えたことを特徴とする請求項１に記載のマッピングルール再利用装置。
【請求項６】
差分ルール抽出部が複数のルールを差分ルール候補として抽出した場合、上記複数の差分ルール候補を出力装置へ出力する外部出力部と、入力装置から差分ルール抽出部に上記複数の差分ルール候補から選択された差分ルールを入力する外部入力部とを備えたことを特徴とする請求項１に記載のマッピングルール再利用装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、構造が異なるデータベース間のデータ項目の対応付けや変換（マッピング）を記述するマッピングルールを再利用する、マッピングルール再利用装置に関するものである。
【背景技術】
【０００２】
従来、電子カタログなど、異なるデータベース間のデータ項目のマッピングは、データ項目間の対応関係を記述したマッピングルールを作成し、マッピングルールに従ってマッピングを行ってきた。特許文献１のマッピングルール再利用装置は、電子カタログの形式変換のためのマッピングルールと、出力する属性の値を計算する変換式を部品化して、複数の商品分類に共通的な属性に関する変換式の定義を差分で定義することを可能とし、そのルールの再利用を効率化している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−１５７６７３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１では、電子カタログ間の属性の対応付けを記述するマッピングルールと、出力する属性の値を計算する変換式を部品化して、マッピングルールをルールの継承及び派生によって再利用することを可能としている。しかし、特許文献１に開示される技術では、マッピングルールを継承する際に最適なマッピングルールを抽出する手段が無いため、効率的にマッピングルールを再利用することができない。
この発明は、既存のマッピングルールを効率よく再利用するマッピングルール再利用装置を提供することを目的とする。
【課題を解決するための手段】
【０００５】
マッピングルールが与えられていない新変換元データの属性の型と名称とマッピングルールが与えられている既与変換元データの属性の型と名称が一致する属性の数と、それぞれの属性の型と名称が一致しない属性の数とに異なる重み付けをして差をとることにより、この差が最大となる既与変換元データを新変換元データの基底データとして抽出し、この抽出した基底データのマッピングルールをマッピングルール作成部に与える基底データ抽出部と、既与変換元データのマッピングルールから、新変換元データと基底データとの差分部分に関するマッピングルールである差分マッピングルールを抽出しマッピングルール作成部に与える差分ルール抽出部とを備え、マッピングルール作成部は、基底データのマッピングルールと差分マッピングルールとを結合して新変換元データのマッピングルールを作成するようにした。
【発明の効果】
【０００６】
基底データ抽出部が、すでにマッピングルールが与えられている既与変換元データから新変換元データに対する基底データのマッピングルールを、新変換元データの属性と既与変換元データの属性の差を評価して抽出することで、差分が最小となるようなマッピングルールを抽出でき、差分ルール抽出部が、基底データとは別のデータから自動的に差分のマッピングルールとして利用できるマッピングルールを抽出して、これら基底データのマッピングルールと差分のマッピングルールを結合して新変換元データのマッピングルールを作成するため、既存のマッピングルールを効率的に再利用することができる。
【図面の簡単な説明】
【０００７】
【図１】本発明の実施の形態１によるマッピングルール再利用装置の構成を示すブロック図である。
【図２】本発明のマッピングルール再利用装置のハードウェアの構成を示す図である。
【図３】本発明の実施の形態１の変換元データの例を示す図である。
【図４】本発明の実施の形態１の変換先データの例を示す図である。
【図５】本発明の実施の形態１のデータ記憶部に格納されているデータの例を示す図である。
【図６】本発明の実施の形態１によるマッピングルール記憶部に格納されているマッピングルールの例を示す図である。
【図７】本発明の実施の形態１によるマッピングルール作成部の動作を示すフローチャートである。
【図８】本発明による基底データ抽出部の主動作を示すフローチャートである。
【図９】本発明の実施の形態１による基底データ抽出部の動作のうち、図８のＳＴ２２３の詳細を示すフローチャートである。
【図１０】本発明の実施の形態１の基底データ抽出部で取得するマッピングルールの例である。
【図１１】本発明の実施の形態１による差分ルール抽出部の動作を示すフローチャートである。
【図１２】本発明の実施の形態１の差分ルール抽出部が取得するマッピングルールの例である。
【図１３】本発明の実施の形態１の出力マッピングルールの例を示す図である。
【図１４】本発明の実施の形態２によるマッピングルール再利用装置の構成を示すブロック図である。
【図１５】本発明の実施の形態２の類義語記憶部に格納されているデータの例を示す図である。
【図１６】本発明の実施の形態２の基底データ抽出部の動作のうち、図８のＳＴ２２３の詳細を示すフローチャートである。
【図１７】本発明の実施の形態２による差分ルール抽出部の動作を示すフローチャートである。
【図１８】本発明の実施の形態３によるマッピングルール再利用装置の構成を示すブロック図である。
【図１９】本発明の実施の形態３による属性関係性評価部の動作を示すフローチャートである。
【図２０】本発明の実施の形態３による属性関係性評価部の動作のうち、図１９のＳＴ４０１の詳細を示すフローチャートである。
【図２１】本発明の実施の形態３による属性関係性評価部の動作のうち、図１９のＳＴ４０３の詳細を示すフローチャートである。
【図２２】本発明の実施の形態３による属性関係性評価部の動作のうち、図１９のＳＴ４０４の詳細を示すフローチャートである。
【図２３】本発明の実施の形態３による基底データ抽出部の動作のうち、図８のＳＴ２２３の詳細を示すフローチャートである。
【図２４】本発明の実施の形態３による差分ルール抽出部の動作を示すフローチャートである。
【図２５】本発明の実施の形態４によるマッピングルール再利用装置の構成を示すブロック図である。
【図２６】本発明の実施の形態４による基底データ抽出部の動作のうち、図８のＳＴ２２３の詳細を示すフローチャートである。
【図２７】本発明の実施の形態４による差分ルール抽出部の動作を示すフローチャートである。
【図２８】本発明の実施の形態４による外部出力部の動作を示すフローチャートである。
【図２９】本発明の実施の形態４による外部入力部の動作を示すフローチャートである。
【発明を実施するための形態】
【０００８】
実施の形態１.
図1は本発明の実施の形態１によるマッピングルール再利用装置の構成を示すブロック
図である。３８は実施の形態１によるマッピングルール再利用装置であり、マッピングルール作成部３３、基底データ抽出部３４、差分ルール抽出部３５、マッピングルール記憶部３６、データ記憶部３９を備え、変換元データ３１および変換先データ３２を受け取り、出力マッピングルール３７を出力する。マッピングルール作成部３３は、変換元データ３１と変換先データ３２との対応関係を記述したマッピングルールをマッピングルール記憶部３６に格納し、出力マッピングルール３７を出力する。基底データ抽出部３４は、マッピングルール記憶部３６に格納されたマッピングルールの中から変換元データ３１の基底データを抽出し、基底データのマッピングルールをマッピングルール作成部３３に与える。データ記憶部３９はマッピングルール記憶部にマッピングルールが格納されている変換元データを格納する。差分ルール抽出部３５は、マッピングルール記憶部３６に格納されたマッピングルールの中でマッピングルール作成部３３から与えられた基底データと変換元データ３１との差分ルールを抽出しマッピングルール作成部３３に与える。
【０００９】
図２は、図１におけるマッピングルール再利用装置３８を実際に運用するときのハードウェアの構成を示したものである。図２では、図１中のマッピングルール再利用装置３８として、ＰＣ（パーソナルコンピュータ）１を備える。マッピングルール再利用装置３８は、ＰＣに限らず、例えば計算機一般であってもよい。ＰＣ１には演算を行うＣＰＵ２と情報を記憶することができる記憶装置３と、キーボードなどＰＣに対して入力を与えることができる入力装置４と、ディスプレイなどの出力を行うことができる出力装置５が含まれる。この構成は、実施の形態１以外の実施の形態においても同様である。
【００１０】
図２中、マッピングルール記憶部３６およびデータ記憶部３９はＰＣ１の記憶装置３中に構成され、マッピングルール作成部３３、基底データ抽出部３４、差分ルール抽出部３５は、記憶装置３に格納されたプログラムによりＣＰＵ２上で実行されることにより構成される。また、マッピングルール作成部３３は、入力装置４によって変換元データ３１と変換先データ３２を読み込み、出力装置５によって出力マッピングルール３７を出力することにより構成される。
【００１１】
図３は、図１における変換元データ３１の例を示す図である。変換元データ３１は設備や商品などをモデル化したもので、データの特徴を表す属性を一つ以上保持している。属性には、型と名称がある。図３における１０１は、設備EquipmentWを表すデータを示し、String型の属性prop1と、int型の属性prop2と、double型の属性prop3と、int型の属性prop4から構成されている。
【００１２】
図４は、図１における変換先データ３２の例を示す図である。変換先データ３２は変換元データ３１と同様に設備や商品などをモデル化したもので、データの特徴を表す属性を一つ以上保持している。属性には、型と名称がある。１０２は設備EqpmAを表すデータで
、String型の属性propA1と、int型の属性propA2と、double型の属性propA3から構成され
ている。同様に、１０３は設備EqpmBを表すデータ、１０４は設備EqpmCを表すデータで、それぞれ図４に示す型と名称を有する。変換元データ３１と変換先データ３２は、図３や図４のような記述に限らず、データとそのデータが保持する属性の型と名称が記述できるフォーマットであれば、どのようなフォーマットでもよい。
【００１３】
図５は、図１におけるデータ記憶部３９に格納されているデータの例を示す図である。データ記憶部３９は、既にマッピングルールが与えられている変換元データ（以後、既与変換元データと呼ぶ）を格納しておくデータベースで、ここでは、設備EquipmentXのデータ１０５、設備EquipmentYのデータ１０６、設備EquipmentZのデータ１０７が格納されているとする。
【００１４】
図６は、図１におけるマッピングルール記憶部３６に格納されているマッピングルールの例を示す図である。マッピングルールは、変換元データの各属性と変換先データの属性との対応関係を記述するもので、変換元データの一つの属性が複数の変換先データの一つの属性と対応付けられてもよい。また、複数の変換元データの複数の属性が、一つの変換先データの一つの属性と対応付けられてもよい。また、複数の変換先データの複数の属性が、複数の変換先データの複数の属性と対応付けられてもよい。変換元データの全ての属性に対して変換先の属性が定義されていなくてもよい。MappingRule() {}の()の中に、変換対象とする変換元データの名称を指定し、{}の中に変換対象とする変換元データの各属性それぞれに対して、変換先データの対応する属性を「変換対象データの属性->対応する属性」のように記述する。図６において１０８は、設備EquipmentXのマッピングルールである。マッピングルール１０８は、EquipmentXの属性prop1がEqpmAの属性propA1と対応し、EquipmentXの属性prop3がEqpmAの属性propA3と対応し、EquipmentXの属性prop4がEqpmBの属性propB2と対応し、EquipmentXの属性propBがEqpmBの属性propB3と対応することを表している。同様に、１０９は設備EquipmentYのマッピングルール、１１０は設備EquipmentZのマッピングルールであり、これらマッピングルール１０８、１０９、１１０がマッピングルール記憶部３６に格納されている。
【００１５】
図７は、実施の形態１によるマッピングルール作成部３３の動作を示すフローチャートである。まずＳＴ２０１で変換元データ３１と変換先データ３２を受信しＳＴ２０２へ進む。ＳＴ２０２ではマッピングルール記憶部３６に変換元データ３１のマッピングルールが格納されているかどうかを判定し、格納されている場合はＳＴ２０３へ進み、格納されていない場合はＳＴ２０４へ進む。ＳＴ２０３では、マッピングルール記憶部３６に格納されている変換元データのマッピングルールを出力マッピングルール３７として出力し、終了する。マッピングルール記憶部３６にマッピングルールが格納されていない変換元データ３１（以後「新変換元データ」と呼ぶ。）を受信した場合に、ＳＴ２０４以降において、この新変換元データ３１に対するマッピングルールを作成する。ＳＴ２０４では、新変換元データ３１と変換先データ３２を基底データ抽出部３４に送信することで基底データを取得しＳＴ２０５へ進む。ＳＴ２０５では、基底データ抽出部３４から基底データのマッピングルールを取得したかどうかを判定し、取得した場合はＳＴ２０６へ進み、取得しなかった場合は終了する。ＳＴ２０６では、基底データのマッピングルールを継承して新変換元データ３１のマッピングルールを作成し、ＳＴ２０７へ進む。ＳＴ２０７では新変換元データ３１をデータ記憶部３９へ格納し、ＳＴ２０８へ進む。ＳＴ２０８では、差分ルール抽出部３５に作成した新変換元データ３１のマッピングルールと基底データのマッピングルールを送信することで差分ルールを取得し、ＳＴ２０９へ進む。ＳＴ２０９では、差分ルール抽出部３５から差分ルールを取得したかどうかを判定し、取得した場合はＳＴ２１１へ進み、取得しなかった場合はＳＴ２１０へ進む。ＳＴ２１０では、ＳＴ２０６のマッピングルールを出力マッピングルール３７として出力し、終了する。ＳＴ２１１では、ＳＴ２０６のマッピングルールの差分定義をＳＴ２０８で取得した差分ルールにて行い、出力マッピングルール３７として出力すると共にマッピングルール記憶部３６に格納し、終了する。
【００１６】
本実施の形態１では、新変換元データ３１に対する基底データを、マッピングルールがマッピングルール記憶部３６に格納されている既与変換元データのうち、新変換元データ
３１が保持する属性の型と名称に一致する属性を最も多く保持しているデータであるとして抽出する。この抽出の方法を以下で説明する。
【００１７】
図８は、本発明の基底データ抽出部３４の主動作を示すフローチャートである。本実施の形態１に限らず、本発明の他の実施の形態の基底データ抽出部の主動作も図８の動作と同じ動作となる。基底データ抽出部３４は、ＳＴ２２１にてマッピングルール作成部３３から新変換元データ３１と変換先データ３２を受信し、ＳＴ２２２へ進む。ＳＴ２２２では、マッピングルール記憶部３６が空かどうかを判定し、空でない場合はＳＴ２２３へ進み、空の場合は終了する。ＳＴ２２３では、新変換元データ３１と変換先データ３２に関する基底データのマッピングルールを取得し、ＳＴ２２４へ進む。ＳＴ２２４では、マッピングルール作成部３３に基底データのマッピングルールを送信し、終了する。なお、ＳＴ２２２は、何らかの事情でマッピングルール記憶部３６が空である場合に処理が異常にならないために設けるステップであって、このような恐れがないときは必ずしも必要ではない。
【００１８】
図９は図８の基底データ抽出部３４の処理ＳＴ２２３の、実施の形態１による動作の詳細を示すフローチャートである。ＳＴ２２５にて変数maxを0で初期化しＳＴ２２６へ進む。ＳＴ２２６では、マッピングルール記憶部３６から、すでに既与変換元データと変換先データに対するマッピングルールを取得し、ＳＴ２２７へ進む。ＳＴ２２７では、ＳＴ２２６でマッピングルールを取得できたかどうかを判定し、取得できた場合はＳＴ２２８へ進み、取得できなかった場合はＳＴ２３２へ進む。ＳＴ２２８では、ＳＴ２２６で取得した既与変換元データをデータ記憶部３９から取得しＳＴ２２９へ進む。ＳＴ２２９では、新変換元データ３１とＳＴ２２８で取得した既与変換元データの属性を比較し、型と名称が一致している属性の数を取得し、ＳＴ２３０へ進む。ＳＴ２３０では、変数maxの値がＳＴ２２９で取得した属性の数より大きいかどうかを判定し、大きい場合はＳＴ２２６へ進み、大きくない場合はＳＴ２３１へ進む。ＳＴ２３１では、変数maxの値をＳＴ２２９の値に設定し、ＳＴ２２８で取得した既与変換元データとそのマッピングルールを記憶し、ＳＴ２２６へ進む。既に記憶済みのデータとマッピングルールが存在する場合は、上書きして記憶する。ＳＴ２３２では、変数maxの値が0かどうかを判定し、0で無い場合はＳＴ２３３へ進み、0の場合は終了する。ＳＴ２３３では、ＳＴ２３１で記憶したデータを基底データに設定し、ＳＴ２３４へ進む。ＳＴ２３４では、ＳＴ２３１で記憶したマッピングルールを基底データのマッピングルールに設定し、終了する。
【００１９】
以上では、新変換元データ３１が保持する属性の型と名称に一致する属性を最も多く保持している既与変換元データが基底データとして抽出される。基底データの抽出アルゴリズムは、これに限らず、新変換元データ３１が保持する属性との差が少ない既与変換元データを基底データとして抽出するアルゴリズムであれば良い。すなわち、差が少ないことの定義は、新変換元データ３１が保持する属性の型と名称に一致する属性を最も多く保持しているデータに限らず、以下のようであっても良い。例えば、新変換元データ３１が保持する属性の型と名称に一致する属性の数と一致しない属性の数との差が最大である既与変換元データを基底データにしてもよい。また、新変換元データ３１と型と名称が一致する属性と一致しない属性の数に、それぞれ異なる任意の定数を乗じたもの、すなわち一致する属性の数と一致しない属性の数それぞれに異なる重みづけをして、これらの差が最大になる既与変換元データを基底データとしてもよい。また、新変換元データ３１と属性の型と名称が一致する数と型のみまたは名称のみが一致した数に、それぞれ異なる任意の定数を乗じたもの（異なる重みづけをしたもの）の和が最大になる既与変換元データを基底データとしてもよい。また、新変換元データ３１と属性の数と名称が一致する数と型のみまたは名称のみが一致した数に、それぞれ任意の定数を乗じたもの（異なる重みづけをしたもの）の和と型と名称が一致しない属性の数との差が最大になる既与変換元データを基底データとしてもよい。
すなわち、新変換元データの属性と既与変換元データの属性との差を評価して、その評価結果に基づいて基底データを抽出する構成にすれば良い。
【００２０】
図１０は図１の基底データ抽出部３４が取得する基底データのマッピングルールの例を示す図である。基底データ抽出部３４に入力として新変換元データ３１(EquipmentW １０１)と変換先データ３２(EqpmA、EqpmB、EqpmC)が与えられ、データ記憶部３９には既与変換元データとしてデータEquipmentX １０５、データEquipmentY １０６、データEquipmentZ １０７が格納されており、マッピングルール記憶部３６には、EquipmentXのマッピングルール１０８、EquipmentYのマッピングルール１０９、EquipmentZのマッピングルール１１０が格納されているとする。このとき、マッピングルール記憶部３６に格納される全ての既与変換元データ、すなわちデータ記憶部３９に格納されているデータと新変換元データ３１の属性を比較し、型と名称が一致している属性の数の最大値を取得し、最大値を取るデータとそのマッピングルールを記憶する。図３と図５を参照すれば、新変換元データ３１(EquipmentW １０１)と型と名称が一致している属性の数は、EquipmentXは３個(String prop1、int prop2、double prop3)、EquipmentYは３個(String prop1、double prop3、int prop4)、EquipmentZは２個(String prop1、int prop2)である。よって最大値はEquipmentXとEquipmentYの３である。図９のフローチャートによれば、最大値を取るデータが複数ある場合は最後に調べたデータを記憶するため、EquipmentX、EquipmentY、EquipmentZの順に調べたとすると、EquipmentYとそのマッピングルールを記憶する。基底データ抽出部３４は、記憶したデータを基底データとし、基底データのマッピングルールをマッピングルール作成部３３に返す。すなわち、本実施の形態１では、基底データ抽出部３４はマッピングルール作成部３３に基底データEquipmentY １０２のマッピングルール１０９を返す。
【００２１】
図１１は本実施の形態１のマッピングルール再利用装置３８の差分ルール抽出部３５の動作を示すフローチャートである。差分ルール抽出部３５はＳＴ２４１にてマッピングルール作成部３３から新変換元データ３１と基底データのマッピングルールを受信し、ＳＴ２４２へ進む。ＳＴ２４２では、マッピングルール記憶部３６が空かどうかを判定し、空の場合は終了し、空でない場合はＳＴ２４３へ進む。ＳＴ２４３では、新変換元データ３１には含まれるが基底データのマッピングルールには含まれない属性を取得し、ＳＴ２４４へ進む。ＳＴ２４４ではＳＴ２４３で取得した各属性に関するマッピングルールをマッピングルール記憶部３６から抽出し、ＳＴ２４５へ進む。ＳＴ２４５では、ＳＴ２４４の結果をマッピングルール作成部３３に通知し、終了する。
【００２２】
図１２は本実施の形態１のマッピングルール再利用装置３８の差分ルール抽出部３５が出力する差分ルールの例を示す図である。データ記憶部３９に格納されているデータは図５のように、データEquipmentX １０５、データEquipmentY １０６、データEquipmentZ 
１０７であり、マッピングルール記憶部３６に格納されているマッピングルールは図６のように、EquipmentXのマッピングルール１０８、EquipmentYのマッピングルール１０９、EquipmentZのマッピングルール１１０である。差分ルール抽出部３５への入力は、新変換元データ３１(EquipmentW １０１)と、基底データEquipmentY １０６のマッピングルールEquipmentY １０９である。
【００２３】
差分ルール抽出部３５は新変換元データ３１(EquipmentW)には含まれるが、基底データEquipmentY のマッピングルール１０９には含まれない属性を取得する。図５と図６を参
照すれば、int型の属性prop4が該当する。続いて差分ルール抽出部３５は、int型の属性prop4に関するマッピングルールをマッピングルール記憶部３６から抽出し、図１２のような、EquipmentXのマッピングルール１０８のint 型の属性prop4に関する部分を取得し、マッピングルール作成部３３に返す。
【００２４】
図１３は、出力マッピングルール３７の例を示す図である。マッピングルールは既存のマッピングルールを継承することが可能である。継承することで、継承元のマッピングルールとの差分の定義だけで、新たなマッピングルールを作成することができる。図１３の１２２は、新変換元データ３１(EquipmentW)のマッピングルールを、基底データとして抽出した既与変換元データEquipmentYのマッピングルールを継承して作成している。MappingRule() : inherit() {}のinherit()にて、継承元マッピングルールが対象としているデータの名称を指定し、{}の中で継承先マッピングルールからの差分定義を行う。
【００２５】
マッピングルールは、継承による差分定義を、既存のマッピングルールの特定の属性に関する記述を流用して行うことが可能である。図１３の１２２は、新変換元データ３１ (EquipmentW)の属性prop4に対する差分定義を、EquipmentXのマッピングルール１０９を利用して行っている。マッピングルールの記述において、「変換元データの属性->using(流用するマッピングルールの対象データ名)」とすれば、変換先データの属性名を記述することなく、差分定義を行うことができる。
【００２６】
上述の構成とすることで、基底データ抽出部３４が、基底データのマッピングルールを抽出することで、適切に継承関係を構築することが可能となる。また、差分ルール抽出部３５が、新変換元データ３１と基底データとの差分に関するマッピングルールを抽出することで、複数のマッピングルールを再利用して新しいマッピングルールを作成することが可能となる。
【００２７】
実施の形態２.
図１４は本発明の実施の形態２によるマッピングルール再利用装置の構成を示すブロック図である。ブロック図の構成要素のうち、類義語記憶部４０、基底データ抽出部４２、差分ルール抽出部４３以外は、実施の形態１と同じものである。本発明の実施の形態２によるマッピングルール再利用装置４１は、基底データ抽出部４２と差分ルール抽出部４３が類義語記憶部４０を利用することで属性の名称の揺れを吸収することを特徴とする。
【００２８】
図１５は、図１４の類義語記憶部４０に格納されている類義語ファイルの例を示す図である。類義語記憶部４０には、類義語が図１４のようなファイル形式で格納されている。ファイルは改行で区切られた行の並びであり、一行には語句がカンマ(,)によって区切っ
て並べられている。同じ行の語句は、類義語として設定されている。図１5では、”制御
”の類義語が”Control”、”control”、”CONTROL”、”Ctrl”、”ctrl”、”CTRL”
であることを表している。
【００２９】
本実施の形態２における基底データ抽出部４２の主動作のフローチャートは実施の形態の基底データ抽出部３４と同じ、すなわち図８と同じである。図１６は、図１４の基底データ抽出部４２の図８におけるＳＴ２２３の動作の詳細を示すフローチャートである。ＳＴ２２３からＳＴ３０１へ進み、ＳＴ３０１では変数maxを0で初期化し、ＳＴ３０２へ進む。ＳＴ３０２では、マッピングルール記憶部３６から、既与変換元データと変換先データに対するマッピングルールを取得し、ＳＴ３０３へ進む。ＳＴ３０３では、ＳＴ３０２でマッピングルールを取得できたかどうかを判定し、取得できた場合はＳＴ３０４へ進み、取得できなかった場合はＳＴ３０９へ進む。ＳＴ３０４では、ＳＴ３０２で取得した既与変換元データをデータ記憶部３９から取得し、ＳＴ３０５へ進む。ＳＴ３０５では、新変換元データ３１の各属性の類義語を、類義語記憶部４０から取得し、ＳＴ３０６へ進む。ＳＴ３０６では、新変換元データ３１とＳＴ３０４で取得した既与変換元データの各属性を比較し、類義語を含めて名称が一致している属性の数を取得し、ＳＴ３０７へ進む。ＳＴ３０７では、変数maxの値がＳＴ３０６で取得した属性の数より大きいかどうかを判定し、大きい場合はＳＴ３０２へ進み、それ以外の場合はＳＴ３０８へ進む。ＳＴ３０８では、変数maxの値をＳＴ３０６の値に設定し、ＳＴ３０４で取得した既与変換元データとそのマッピングルールを記憶して、ＳＴ３０１へ進む。ＳＴ３０９では、変数maxの値が0かどうかを判定し、0の場合は終了し、それ以外の場合はＳＴ３１０へ進む。ＳＴ３１０では、ＳＴ３０８で記憶した既与変換元データを基底データに設定し、ＳＴ３１１へ進む。ＳＴ３１１では、ＳＴ３０８で記憶したマッピングルールを基底データのマッピングルールに設定し、終了する。
【００３０】
図１７は、本実施の形態２による差分ルール抽出部４３の動作を示すフローチャートである。ＳＴ３５１で、マッピングルール作成部３３から、新変換元データ３１とこの新変換元データ３１の基底データとして抽出された既与変換元データのマッピングルールを受信し、ＳＴ３５２へ進む。ＳＴ３５２では、マッピングルール記憶部３６が空かどうかを判定し、空の場合は終了し、空でない場合はＳＴ３５３へ進む。ＳＴ３５３では、新変換元データ３１には含まれるが、基底データのマッピングルールには含まれない属性を取得し、ＳＴ３５４へ進む。ＳＴ３５４では、ＳＴ３５３の属性が取得できたかどうかを判定し、取得できた場合はＳＴ３５５へ進み、取得できなかった場合は終了する。ＳＴ３５５では、ＳＴ３５３で取得した各属性に関するマッピングルールをマッピングルール記憶部３６から抽出し、ＳＴ３５６へ進む。ＳＴ３５６では、ＳＴ３５５でマッピングルールを抽出できなかった属性があるかどうかを判定し、ある場合はＳＴ３５８へ進み、無い場合はＳＴ３５７へ進む。ＳＴ３５８では、抽出できなかった属性の類義語を類義語記憶部から取得し、ＳＴ３５９へ進む。ＳＴ３５９では抽出できなかった属性に関するマッピングルールを類義語を含めてマッピングルール記憶部３６から抽出し、ＳＴ３６０へ進む。ＳＴ３６０では、ＳＴ３５５とＳＴ３５９の結果をマッピングルール作成部３３に通知し、終了する。ＳＴ３５７では、ＳＴ３５５の結果をマッピングルール作成部３３に通知し、終了する。
【００３１】
上述の構成とすることによって、実施の形態１の効果に加えデータの属性の名称の揺れを吸収する効果がある。
【００３２】
実施の形態３．
図１８は本発明の実施の形態３によるマッピングルール再利用装置の構成を示すブロック図である。ブロック図の構成要素のうち、基底データ抽出部４４、差分ルール抽出部４５、属性関係性評価部４６以外は、実施の形態1と同じものである。本発明の実施の形態３によるマッピングルール再利用装置４７は、基底データ抽出部４４が基底データを抽出する際に属性関係性評価部４６が提供する情報を利用することで、より適切な基底データを抽出することと、差分ルール抽出部４５が差分ルールを抽出する際に属性関係性評価部４６が提供する情報を利用することで、より適切な差分ルールを抽出することを特徴とする。
【００３３】
図１９は実施の形態３による属性関係性評価部４６の動作を示すフローチャートである。属性関係性評価部４６は、ＳＴ４０１でデータ記憶部３９のデータを評価し、ＳＴ４０２へ進む。ＳＴ４０２では、イベント判定を行い、基底データ抽出部４４から基底データ候補を受信した場合は、ＳＴ４０３へ進み、差分ルール抽出部４５から差分ルール候補を受信した場合は、ＳＴ４０４へ進む。ＳＴ４０３では、基底データ候補の評価を行い、終了する。ＳＴ４０４では、差分ルール候補を評価し、終了する。
【００３４】
図２０は、実施の形態３による属性関係性評価部４６のＳＴ４０１の動作の詳細を示すフローチャートである。ＳＴ４０１からＳＴ４１２へ進み、ＳＴ４１２ではデータ記憶部３９が空かどうかを判定し、空の場合は終了し、空でない場合はＳＴ４１３へ進む。ＳＴ４１３では、前回に属性関係性評価部４６が起動された後にデータ記憶部３９が更新されたかどうかを判定し、更新された場合はＳＴ４１４へ進み、更新されていない場合は終了する。ＳＴ４１４では、データ記憶部３９から既与変換元データを取得し、ＳＴ４１５へ
進む。ＳＴ４１５では、ＳＴ４１４の既与変換元データを取得できたかどうかを判定し、取得できた場合はＳＴ４１６へ進み、取得できない場合はＳＴ４１７へ進む。ＳＴ４１６では、ＳＴ４１４で取得した既与変換元データに対して、異なる二つの属性の組み合わせを選んで取得・記憶し、ＳＴ４１４へ進む。ＳＴ４１７では、ＳＴ４１６で取得した属性の組み合わせ全ての出現回数を集計し、終了する。
【００３５】
図２１は、実施の形態３による属性関係性評価部４６の動作のうち図１９のＳＴ４０３の動作の詳細を示すフローチャートである。ＳＴ４０３からＳＴ４２１へ進み、ＳＴ４２１では、基底データ候補を取得し、ＳＴ４２２へ進む。ＳＴ４２２では、ＳＴ４２１で基底データ候補を取得できたかどうかを判定し、取得できた場合はＳＴ４２３へ進み、取得できなかった場合はＳＴ４２５へ進む。ＳＴ４２３では、基底データ候補に対して、全属性から異なる二つの属性の組み合わせを選んで取得し、ＳＴ４２４へ進む。ＳＴ４２４では、ＳＴ４２３で取得した組み合わせを、図２０のＳＴ４１７で取得した組み合わせの出現回数で重み付けをし、総和を計算してＳＴ４２１へ進む。ＳＴ４２５では、基底データ候補の中からＳＴ４２４で計算した総和が最も大きいデータを基底データとして設定し、ＳＴ４２６へ進む。ＳＴ４２６で、基底データを基底データ抽出部に送信し、終了する。
【００３６】
図２２は、図１９の属性関係性評価部４６の動作のうち図１９のＳＴ４０４の動作の詳細を示すフローチャートである。ＳＴ４０４からＳＴ４３１へ進み、ＳＴ４３１では、差分ルール候補を取得し、ＳＴ４３２へ進む。ＳＴ４３２では、ＳＴ４３１で差分ルール候補を取得できたかどうかを判定し、取得できた場合はＳＴ４３３へ進み、取得できなかった場合はＳＴ４３５へ進む。ＳＴ４３３では、差分ルール候補の属性に対し、異なる二つの属性の組み合わせを選んで取得し、ＳＴ４３４へ進む。ＳＴ４３４では、ＳＴ４３３で取得した組み合わせに対して、図２０のＳＴ４１７で取得した各組み合わせの出現回数で重み付けし、総和を計算し、ＳＴ４３１へ進む。ＳＴ４３５では、差分ルール候補の中から、ＳＴ４３４で計算した総和が最も大きいデータを差分ルールに設定し、ＳＴ４３６へ進む。ＳＴ４３６では、差分ルール抽出部４５に差分ルールを送信し、終了する。
【００３７】
【表１】
0005388771.tif 000002
【００３８】
表１は図１９の属性関係性評価部４６が、データ記憶部３９に格納された各データから、異なる二つの属性の組み合わせを選んだ例を示す図である。実施の形態１では、基底データを、新変換元データ３１に含まれる型と名称に一致する属性を最も多く含むデータと定義した。また、実施の形態１の基底データ抽出アルゴリズムは、新変換元データ３１に含まれる型と名称に一致する属性を最も多く含む既与変換元データが複数現れた場合、基底データを一番最後に発見した新変換元データ３１に含まれる型と名称に一致する属性を最も多く含むデータとしていた。ここで、属性の関係性を導入する。多くのデータが属性”int prop1”と”int prop2”を保持していた場合、属性”int prop1”と”int prop2”は関係性が高い（関係が強い）と判断される。一方、一つのデータのみが属性”in tprop3”と”int prop4”とを保持していない場合、属性”int prop3”と”int prop4”は、“int prop1”と”int prop2”と比べ、関係性が低い（関係が弱い）と考えられる。  関係性が高い属性は、同一のマッピングルールの中で変換記述が行われている場合が多い。このため、新変換元データ３１と同じ属性を同じ数だけ保持している既与変換元データでも、より関係性が高い属性を多く保持しているデータを基底データとした方が、差分ルールを抽出しやすいと考えられる。ここで、現在対象としている、すなわちデータ記憶部３９に格納されている全ての既与変換元データを解析し、各データの属性の中から異なる二つの属性の組み合わせを選んで求めた場合の出現回数を、属性の関係性と定義する。また、あるデータが保持している属性の関係性を、そのデータが保持している各属性の関係性の総和と定義する。上記総和が大きいデータの方が、より関係性が高いとする。
【００３９】
属性関係性評価部４６は、データ記憶部３９に格納されている各データに対して、異なる二つの属性の組み合わせを全て選んで取得・記憶する。データ記憶部３９に図６と同じく既与変換元データ(EquipmentX,EquipmentY,EquipmentZ)が格納されているとき、それぞれのデータの異なる二つの属性の組み合わせを全て選ぶと表１のようになる。
【００４０】
表２は、データ記憶部３９に格納されている各データに対して異なる二つの属性の組み合わせの出現回数の例である。すなわち、データ記憶部３９に図６と同じデータが格納されていたとき、属性の各組み合わせの出現回数は表２のようになる。
【００４１】
【表２】
0005388771.tif 000003
【００４２】
本実施の形態３における基底データ抽出部４４の主動作のフローチャートは実施の形態の基底データ抽出部３４と同じ、すなわち図８と同じである。図２３は、本実施の形態３における基底データ抽出部４４の動作のうち、図８におけるＳＴ２２３の詳細を示すフローチャートである。ＳＴ２２３からＳＴ４５１へ進み、ＳＴ４５１では変数maxを0で初期化し、ＳＴ４５２へ進む。ＳＴ４５２では、マッピングルール記憶部３６からマッピングルールを取得し、ＳＴ４５３へ進む。ＳＴ４５３では、ＳＴ４５２においてマッピングルールを取得できたかどうかを判定し、取得できた場合はＳＴ４５４へ進み、取得できなかった場合はＳＴ４５８へ進む。ＳＴ４５４では、ＳＴ４５２で取得した既与変換元データをデータ記憶部３９から取得し、ＳＴ４５５へ進む。ＳＴ４５５では、新変換元データ３１とＳＴ４５４で取得したデータの属性を比較し、型と名称が一致している属性の数を取得し、ＳＴ４５６へ進む。ＳＴ４５６では変数maxの値がＳＴ４５５で取得した属性の数より大きいかどうかを判定し、大きい場合はＳＴ４５２へ進み、それ以外の場合はＳＴ４５７へ進む。ＳＴ４５７では、変数maxの値をＳＴ４５５で取得した数の値に設定し、ＳＴ４５４のデータを記憶し、ＳＴ４５２へ進む。このとき、既にデータが記憶されていた場合は、上書きせずに、別の領域に新たにＳＴ４５４のデータを書き込む。ＳＴ４５８では、変数maxの値が0かどうかを判定し、0の場合は終了し、0以外の場合はＳＴ４５９へ進む。ＳＴ４５９では、ＳＴ４５７で取得した数が変数maxの値と同じデータが複数あるかどうかを判定し、ある場合はＳＴ４６０へ進み、無い場合はＳＴ４６２へ進む。ＳＴ４６０では、ＳＴ４５９の各データを基底データ候補として属性関係性評価部４６へ送信し、ＳＴ４６１へ進む。ＳＴ４６１では属性関係性評価部４６から基底データを受信し、終了する。ＳＴ４６２では、ＳＴ４５４のデータを基底データとしてマッピングルール作成部３３に送信し、終了する。
【００４３】
図２４は、本実施の形態３の差分ルール抽出部４５の動作を示すフローチャートである。ＳＴ４７１では、マッピングルール抽出部３３から新変換元データ３１と基底データのマッピングルールを受信し、ＳＴ４７２へ進む。ＳＴ４７２では、マッピングルール記憶部３６が空かどうかを判定し、空の場合は終了し、空でない場合はＳＴ４７３へ進む。ＳＴ４７３では新変換元データ３１には含まれるが基底データのマッピングルールには含まれない属性を取得し、ＳＴ４７４へ進む。ＳＴ４７４では、ＳＴ４７３において属性を取得できたかどうかを判定し、取得できなかった場合は終了し、取得できた場合はＳＴ４７５へ進む。ＳＴ４７５では、ＳＴ４７３で取得した各属性に関するマッピングルールをマッピングルール記憶部３６から抽出し、ＳＴ４７６へ進む。ＳＴ４７６では、一つの属性に対し複数のマッピングルールが抽出されたかどうかを判定し、抽出された場合はＳＴ４７８へ進み、抽出されなかった場合はＳＴ４７７へ進む。ＳＴ４７７では、ＳＴ４７５の結果をマッピングルール作成部３３に通知し、終了する。ＳＴ４７８では、各属性のＳＴ４７５で抽出したマッピングルールを、差分ルール候補として、それぞれ属性関係性評価部４６に送信し、ＳＴ４７９へ進む。ＳＴ４７９では、属性関係性評価部４６から差分ルールを受信し、結果をマッピングルール作成部３３に送信し、終了する。
【００４４】
ここで、以上の動作に従えば、基底データについてどのような評価が行われるかを説明する。新変換元データ３１および変換先データ３２が、それぞれ図３のEquipmentWおよびEqpmA、EqpmB、EqpmCであり、マッピングルール記憶部３６およびデータ記憶部３９に格
納されているデータがそれぞれ、図６および図５であるとする。属性関係性評価部４６は、まず図２０の動作により、格納されているデータについて表１、表２のような評価を行う。一方、基底データ抽出部４４では、まず、データEquipmentX、EquipmentY、EquipmentZそれぞれについて、EquipmentWと、型と名称が一致している属性の数を取得する。この数は、EquipmentXは(String prop1)、(double prop3)、(int prop4)の３、EquipmentYは(String prop1)、(double prop3)、(int prop2)の３、 EquipmentZは(String prop1)、(int prop2)の２である。よって、図２３のＳＴ４６０において、最大値３を取るEquipmentXとEquipmentYが基底データ候補として属性関係性評価部４６送信される。
【００４５】
次に、属性関係性評価部４６において、図２１の評価を行う。EquipmentXについて、異なる二つの属性の組み合わせ全てについてＳＴ４２４の総和を計算すると、(String prop1, double prop3)が出現回数２であり、表１におけるその他の５つの組み合わせは出現回数１であるから、総和は７となる。EquipmentYについては、(String prop1, int prop2)および(String prop1, double prop3)が出現回数２であり、他の４つの組み合わせは出現回数１であるから、総和は８となる。よってＳＴ４２５において、EquipmentYが基底データに設定され、基底データ抽出部４４に送信される。このようにして、属性間の関係性が高いデータが基底データとして設定される。このとき、総和が最も大きいデータが複数あった場合は、最初に得られたデータを基底データとする。または、得られた複数のデータをユーザに提示し選択させることで、基底データを決定してもよい。
【００４６】
差分ルール候補が複数抽出された場合も、図２０、図２２および図２４に従って属性間の関係性がより高いデータの差分ルール候補を差分ルールとして抽出することができる。
【００４７】
なお、属性間の関係性としては、上記のような評価に限らず、以下のような評価を用いることもできる。例えば、ユーザから指定された出現回数以下の組み合わせを評価に含めない方法などがある。つまり、出現回数が５以下の組み合わせを評価に含めないとした場合、組み合わせ(int prop1, int prop2)の出現回数が３であったとしても、出現回数を０として総和を計算する。このことにより、出現回数が少ない属性の組み合わせを多数持っている場合より、出現回数が多い組み合わせを少数持っている場合の方をより高く評価することができる。
【００４８】
上述の構成とすることにより、基底データや差分ルールの候補が複数見つかった場合に、属性関係性評価部４６がより属性間の関係性が高い基底データ候補を基底データとし、またより属性間の関係性が高いデータの差分ルールの候補を差分ルールとすることで、より適切にマッピングルールを再利用することが可能となる。
【００４９】
なお、ここでは、基底データ抽出部４４および差分ルール抽出部４４共に属性関係性評価部４６の評価結果を利用する構成を説明したが、基底データ抽出部４４または差分ルール抽出部４５の一方のみが属性関係性評価部４６の結果を利用する構成であっても良い。この場合、基底データ抽出部４４のみが属性関係性評価部４６の結果を利用する構成にあっては、属性関係性評価部４６の構成としてはＳＴ４０２およびＳＴ４０４を有しない構成となり、差分ルール抽出部４４のみが属性関係性評価部４６の結果を利用する構成にあっては、属性関係性評価部４６の構成としてはＳＴ４０２およびＳＴ４０３を有しない構成となる。
【００５０】
実施の形態４．
図２５は本発明の実施の形態４によるマッピングルール再利用装置の構成を示すブロック図である。ブロック図の構成要素のうち、基底データ抽出部４８、差分ルール抽出部４９、外部入力部５０、外部出力部５１以外は実施の形態１と同じものである。本発明の実施の形態４によるマッピングルール再利用装置５２は、基底データ抽出部４４が複数の基底データ候補を取得した場合に、基底データ候補を外部出力部５１に出力し、外部入力部５０により基底データが選ばれることで、基底データを決定することと、差分ルール抽出部４５が複数の差分ルール候補を取得した場合に、外部出力部５１に差分ルール候補を出力し、外部入力部５０により差分ルールが選ばれることで、差分ルールを決定することを特徴とする。
【００５１】
本実施の形態４における基底データ抽出部４８の主動作のフローチャートは実施の形態１の基底データ抽出部３４と同じ、すなわち図８と同じである。図２６は、図２５の基底データ抽出部４８の図８におけるＳＴ２２３の動作の詳細を示すフローチャートである。ＳＴ２２３からＳＴ５０１へ進み、ＳＴ５０１では変数maxを0で初期化し、ＳＴ５０２へ進む。ＳＴ５０２では、マッピングルール記憶部３６からマッピングルールを取得し、ＳＴ５０３へ進む。ＳＴ５０３では、ＳＴ５０２においてマッピングルールを取得できたかどうかを判定し、取得できた場合はＳＴ５０４へ進み、取得できなかった場合はＳＴ５０８へ進む。ＳＴ５０４では、ＳＴ５０２で取得した既与変換元データをデータ記憶部３９から取得し、ＳＴ５０５へ進む。ＳＴ５０５では、新変換元データ３１とＳＴ５０４で取得した既与変換元データの属性を比較し、型と名称が一致している属性の数を取得し、ＳＴ５０６へ進む。ＳＴ５０６では、変数maxの値がＳＴ５０５で取得した属性の数より大きいかどうかを判定し、大きい場合はＳＴ５０２へ進み、そうでない場合はＳＴ５０７へ進む。ＳＴ５０７では、変数maxの値をＳＴ５０５の値に設定し、ＳＴ５０４のデータを記憶し、ＳＴ５０２へ進む。このとき、既にデータが記憶されている場合は上書きせずに、別の領域にＳＴ５０４のデータを記憶する。ＳＴ５０８では、変数maxの値が0かどうかを判定し、0の場合は終了し、0以外の場合はＳＴ５０９へ進む。ＳＴ５０９では、データ記憶部３９に格納されているデータについてＳＴ５０５で取得した数が変数maxの値と同じであるデータが複数あるかどうかを判定し、ある場合はＳＴ５１０へ進み、無い場合はＳＴ５１２へ進む。ＳＴ５１０では、ＳＴ５０９の各データを基底データ候補として外部出力部５１へ送信し、ＳＴ５１１へ進む。ＳＴ５１１では、外部入力部５０から指定された基底データをマッピングルール作成部３３へ送信し、終了する。ＳＴ５１２では、ＳＴ５０７で記憶したデータをマッピングルール作成部３３へ基底データとして送信し、終了する。
【００５２】
図２７は、本実施の形４における差分ルール抽出部４９の動作を示すフローチャートである。ＳＴ５２１では、マッピングルール作成部３３から、新変換元データ３１と基底データのマッピングルールを受信し、ＳＴ５２２へ進む。ＳＴ５２２では、マッピングルール記憶部３６が空かどうかを判定し、空の場合は終了し、空でない場合はＳＴ５２３へ進む。ＳＴ５２３では、新変換元データ３１には含まれるが、基底データのマッピングルールには含まれない属性を取得し、ＳＴ５２４へ進む。ＳＴ５２４では、ＳＴ５２３で属性が取得できたかどうかを判定し、取得できた場合はＳＴ５２５へ進み、取得できなかった場合は終了する。ＳＴ５２５では、ＳＴ５２３で取得した各属性に関するマッピングルールをマッピングルール記憶部３６から抽出し、ＳＴ５２６へ進む。ＳＴ５２６では、一つの属性に対し複数のマッピングルールが抽出されたかどうかを判定し、抽出されたと判定された場合はＳＴ５２８へ進み、抽出されなかったと判定された場合はＳＴ５２７へ進む。ＳＴ５２７では、ＳＴ５２５の結果をマッピングルール作成部３３に通知し、終了する。ＳＴ５２８では、ＳＴ５２５で抽出した各属性に関するマッピングルールを差分ルール候補とし、これらの差分ルール候補を外部出力部５１へ送信し、ＳＴ５２９へ進む。ＳＴ５２９では、外部入力部５０から指定されたデータをマッピングルール作成部３３に送信し、終了する。
【００５３】
図２８は、図２５の外部出力部５１の動作を示すフローチャートである。ＳＴ５４１でイベント判定を行い、基底データ抽出部４８から基底データ候補を受信した場合、ＳＴ５４２へ進み、差分ルール抽出部４９から差分ルール候補を受信した場合、ＳＴ５４３へ進む。ＳＴ５４２では、基底データ候補を出力し、終了する。ＳＴ５４３では、差分ルール候補を出力し、終了する。出力方法は、図２の出力装置５に、例えば全ての基底データ候補または差分ルール候補のデータ構造を出力するものとする。
【００５４】
図２９は、図２５の外部入力部５０の動作を示すフローチャートである。ＳＴ５３１でイベント判定をし、基底データが入力された場合、ＳＴ５３２へ進み、差分ルールが入力された場合はＳＴ５３３へ進む。ＳＴ５３２では、基底データを基底データ抽出部４８に送信し、終了する。ＳＴ５３３では差分ルールを差分ルール抽出部４９に送信し、終了する。入力方法は、図２の入力装置４から、基底データまたは差分ルール共に、データ名により指定されるとする。
【００５５】
なお、ここでは、基底データ抽出部４８および差分ルール抽出部４９共に外部入力部からの情報を利用する構成を説明したが、基底データ抽出部４８または差分ルール抽出部４９の一方のみが外部入力部からの情報を利用する構成であっても良い。この場合、基底データ抽出部４８のみが外部入力部５０からの情報を利用する構成にあっては、外部出力部５１の構成としてはＳＴ５４１およびＳＴ５４３を有しない構成、外部入力部５０の構成としてはＳＴ５３１およびＳＴ５３３を有しない構成となる。また差分ルール抽出部４９のみが外部入力部５０からの情報を利用する構成にあっては、外部出力部５１の構成としてはＳＴ５４１およびＳＴ５４２を有しない構成、外部入力部５０の構成としてはＳＴ５３１およびＳＴ５３２を有しない構成となる。
【符号の説明】
【００５６】
４：入力装置                          ５：出力装置
３１：変換元データ                    ３２：変換先データ
３３：マッピングルール作成部          ３４：基底データ抽出部
３５：差分ルール抽出部                ３６：マッピングルール記憶部
３７：出力マッピングルール            ３９：データ記憶部
３８、４１、４７、５２：マッピングルール再利用装置
４０：類義語記憶部                    ４６：属性関係性評価部
５０：外部入力部                      ５１：外部出力部
【図１】
0005388771.tif 000004
【図２】
0005388771.tif 000005
【図３】
0005388771.tif 000006
【図４】
0005388771.tif 000007
【図５】
0005388771.tif 000008
【図６】
0005388771.tif 000009
【図７】
0005388771.tif 000010
【図８】
0005388771.tif 000011
【図９】
0005388771.tif 000012
【図１０】
0005388771.tif 000013
【図１１】
0005388771.tif 000014
【図１２】
0005388771.tif 000015
【図１３】
0005388771.tif 000016
【図１４】
0005388771.tif 000017
【図１５】
0005388771.tif 000018
【図１６】
0005388771.tif 000019
【図１７】
0005388771.tif 000020
【図１８】
0005388771.tif 000021
【図１９】
0005388771.tif 000022
【図２０】
0005388771.tif 000023
【図２１】
0005388771.tif 000024
【図２２】
0005388771.tif 000025
【図２３】
0005388771.tif 000026
【図２４】
0005388771.tif 000027
【図２５】
0005388771.tif 000028
【図２６】
0005388771.tif 000029
【図２７】
0005388771.tif 000030
【図２８】
0005388771.tif 000031
【図２９】
0005388771.tif 000032