(57)【要約】【課題】  入力データ項目の形式にもとづいて、自動的にデータマッピングを行なって入力データから出力データへのデータ変換を行なうルールであるマッピングルールを導出する。【解決手段】  変換元の入力データが入力されると、パターンマッチング部１１１が、自動マッピングルール記憶部１１６が記憶している自動マッピングルールとのパターンマッチングを行ない、実行する自動マッピングルールを選択する。自動マッピング実行部１１３は、パターンマッチング部１１１が選択した自動マッピングルールを実行し、データマッピングルールを導出する。自動データマッピング装置１１０は、導出したデータマッピングルールを、データマッピング編集装置１００を介して、データ変換装置１２０のデータ変換部１２１に送信する。データ変換部１２１は、入力された入力データを、データマッピングルールにもとづいてデータ変換し、出力データを生成して出力する。【選択図】  図１
2005251136.tif 000002
【特許請求の範囲】
【請求項１】
入力データの形式と、前記入力データに実行する動作とを示す自動マッピングルールを複数記憶する自動マッピングルール記憶手段と、
入力された入力データと、前記自動マッピングルール記憶手段が記憶している前記自動マッピングルールの入力データの形式とのパターンマッチングを行い、自動マッピングを行なう自動マッピングルールを決定するパターンマッチング手段と、
前記パターンマッチング手段が決定した前記自動マッピングルールを実行して、入力データを変換する動作を示すデータマッピングルールを導出する自動マッピング実行手段と
を備えたことを特徴とする自動データマッピング装置。
【請求項２】
自動マッピングルール記憶手段が記憶する自動マッピングルールは、入力データおよび出力データの形式と、前記入力データに実行する動作とを示し、
パターンマッチング手段は、入力された入力データおよび出力データの形式と、前記自動マッピングルール記憶手段が記憶している前記自動マッピングルールの入力データおよび出力データの形式とのパターンマッチングを行い、自動マッピングを行なう自動マッピングルールを決定する
請求項１記載の自動データマッピング装置。
【請求項３】
自動マッピングルール記憶手段は、自動マッピング実行手段が実行する自動マッピングルールの優先度を各自動マッピングルールに対応付けて記憶し、
パターンマッチング手段が行なったパターンマッチングの結果、複数の自動マッピングルールとパターンマッチングした場合、前記自動マッピングルール記憶手段が記憶している優先度にもとづいて、実行する自動マッピングルールを決定するルール衝突解決手段
を備えた請求項１または請求項２記載の自動データマッピング装置。
【請求項４】
自動マッピング実行手段がデータマッピングルールを複数導出した場合、導出した複数の前記データマッピングルールを表示手段に表示させてユーザにデータマッピングルールを選択させる対話的データマッピングルール選択手段を備えた
請求項２または請求項３記載の自動データマッピング装置。
【請求項５】
類義語の情報を記憶する事実情報記憶手段を備え、
パターンマッチング手段は、前記事実情報記憶手段が記憶している類義語の情報を参照してパターンマッチングを行なう
請求項１から請求項４のうちいずれか１項記載の自動データマッピング装置。
【請求項６】
入力データの形式と、前記入力データに実行する動作とを示す自動マッピングルールを複数記憶する自動マッピングルール記憶手段と、
入力された入力データと、前記自動マッピングルール記憶手段が記憶している前記自動マッピングルールの入力データの形式とのパターンマッチングを行い、自動マッピングを行なう自動マッピングルールを決定するパターンマッチング手段と、
前記パターンマッチング手段が決定した前記自動マッピングルールを実行して、入力データを変換する動作を示すデータマッピングルールを導出する自動マッピング実行手段と、
前記自動マッピング実行手段が導出したデータマッピングルールにもとづいて、入力データをデータ変換して出力データを生成するデータ変換手段と
を備えたことを特徴とする自動データマッピングシステム。
【請求項７】
自動マッピングルール記憶手段が記憶する自動マッピングルールは、入力データおよび出力データの形式と、前記入力データに実行する動作とを示し、
パターンマッチング手段は、入力された入力データおよび出力データの形式と、前記自動マッピングルール記憶手段が記憶している前記自動マッピングルールの入力データおよび出力データの形式とのパターンマッチングを行い、自動マッピングを行なう自動マッピングルールを決定する
請求項６記載の自動データマッピングシステム。
【請求項８】
自動マッピングルール記憶手段は、自動マッピング実行手段が実行する自動マッピングルールの優先度を各自動マッピングルールに対応付けて記憶し、
パターンマッチング手段が行なったパターンマッチングの結果、複数の自動マッピングルールとパターンマッチングした場合、前記自動マッピングルール記憶手段が記憶している優先度にもとづいて、実行する自動マッピングルールを決定するルール衝突解決手段
を備えた請求項６または請求項７記載の自動データマッピングシステム。
【請求項９】
自動マッピング実行手段がデータマッピングルールを複数導出した場合、導出した複数の前記データマッピングルールを表示手段に表示させてユーザにデータマッピングルールを選択させる対話的データマッピングルール選択手段を備えた
請求項７または請求項８記載の自動データマッピングシステム。
【請求項１０】
類義語の情報を記憶する事実情報記憶手段を備え、
パターンマッチング手段は、前記事実情報記憶手段が記憶している類義語の情報を参照してパターンマッチングを行なう
請求項６から請求項９のうちいずれか１項記載の自動データマッピングシステム。
【請求項１１】
入力データの形式と、前記入力データに実行する動作とを示す自動マッピングルールと、前記自動マッピングルールの優先度とを対応付けて複数記憶する自動マッピングルール記憶手段と、
類義語の情報を記憶する事実情報記憶手段とを備えた自動データマッピングシステムに搭載される自動データマッピングプログラムであって、
コンピュータに、
入力された入力データの形式と、前記自動マッピングルール記憶手段が記憶している自動マッピングルールの入力データの形式とのパターンマッチングを、前記事実情報記憶手段が記憶している類義語の情報を参照して行い、自動マッピングを行なう自動マッピングルールを決定するパターンマッチング処理と、
前記パターンマッチング処理が決定した前記自動マッピングルールを実行して、データマッピングルールを導出する自動マッピング実行処理と、
前記パターンマッチング処理が行なったパターンマッチングの結果、複数の自動マッピングルールとパターンマッチングした場合、前記自動マッピングルール記憶手段が記憶している優先度にもとづいて、実行する自動マッピングルールを決定するルール衝突解決処理と
を実行させることを特徴とする自動データマッピングプログラム。
【請求項１２】
自動マッピングルール記憶手段が記憶する自動マッピングルールは、入力データおよび出力データの形式と、前記入力データに実行する動作とを示し、
コンピュータに、
パターンマッチング処理で、入力された入力データおよび出力データの形式と、前記自動マッピングルール記憶手段が記憶している前記自動マッピングルールの入力データおよび出力データの形式とのパターンマッチングを行い、自動マッピングを行なう自動マッピングルールを決定する処理を実行させ、
前記自動マッピング実行処理がデータマッピングルールを複数導出した場合、導出した複数の前記データマッピングルールを表示手段に表示させてユーザにデータマッピングルールを選択させる対話的データマッピングルール選択処理を実行させる
請求項１１記載の自動データマッピングプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力データにデータマッピングを行なってデータ変換するルールであるデータマッピングルールを導出する自動データマッピング装置、自動データマッピングシステムおよび自動データマッピングプログラムに関する。
【背景技術】
【０００２】
従来のデータマッピング装置は、変換元または変換先の項目数が２項目以上からなるデータ項目間のデータマッピングを行なう時に、項目数分の回数の対応付け操作をユーザが行なう必要がある。また、項目が階層関係を持って構造化されているような場合は、階層の上位のレベルで全体的な関連付けを行うことで、その下位にある複数の項目の関連付けを自動で行なうことのできるようなデータマッピング装置もあるが、階層関係を成す範囲に自動処理が限定されている。
【０００３】
また、従来のデータマッピング装置は、自動的な対応関係をつけることができる場合であっても、変換元、変換先の両方を必ず指定する必要がある。さらに、従来のデータマッピング装置は、自動的な対応関係をつけることができる場合であっても、一度に関連付けを行うことができる項目は１対多、または多対１であって、多対多の関係を一度に関連付けることはできない。
【０００４】
なお、特許文献１には、ＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）等の、タグ等でデータ項目名とデータ項目とを対応付けて記述する文法に従ったテキストデータを、データベースのテーブル等のデータに変換するデータ変換方法が記載されている。
【０００５】
また、特許文献２には、入力データと出力データとのデータ項目間のデータ変換ルールや、対応関係等の情報を入力して、入力した情報にもとづいてデータ変換を行なう電子データ変換方法が記載されている。
【０００６】
【特許文献１】特開２００１−３４５１３号公報  （段落（００１１）〜（００４１）、図１）
【特許文献２】特開２００３−３３１１４７号公報  （段落（０００６）〜（００４７）、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、特許文献１に記載されているデータ変換方法は、入力するデータの形式を、タグ等でデータ項目名とデータ項目とを対応付けて記述する文法に従ったテキストデータに限定しており、その他の形式の入力データに適用することができない。
【０００８】
また、特許文献２に記載されているデータ変換方法は、入力データと出力データとのデータ項目間のデータ変換ルールや、対応関係等の情報をその都度入力しなければならないため、ユーザに煩わしい操作を強いることになる。
【０００９】
そこで、本発明は、入力データ項目の形式にもとづいて、自動的にデータマッピングを行なって入力データから出力データへのデータ変換を行なうルールであるマッピングルールを導出する自動データマッピング装置、自動データマッピングシステムおよび自動データマッピングプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明による自動データマッピング装置は、入力データの形式と、入力データに実行する動作とを示す自動マッピングルールを複数記憶する自動マッピングルール記憶手段と、入力された入力データと、自動マッピングルール記憶手段が記憶している自動マッピングルールの入力データの形式とのパターンマッチングを行い、自動マッピングを行なう自動マッピングルールを決定するパターンマッチング手段と、パターンマッチング手段が決定した自動マッピングルールを実行して、入力データを変換する動作を示すデータマッピングルールを導出する自動マッピング実行手段とを備えたことを特徴とする。
【００１１】
自動マッピングルール記憶手段が記憶する自動マッピングルールは、入力データおよび出力データの形式と、入力データに実行する動作とを示してもよく、パターンマッチング手段は、入力された入力データおよび出力データの形式と、自動マッピングルール記憶手段が記憶している自動マッピングルールの入力データおよび出力データの形式とのパターンマッチングを行い、自動マッピングを行なう自動マッピングルールを決定してもよい。そのような構成によれば、パターンマッチング手段は、入力された入力データおよび出力データの形式と、自動マッピングルール記憶手段が記憶している自動マッピングルールの入力データおよび出力データの形式とにもとづいて、自動マッピングを行なう自動マッピングルールを決定するため、入力データの形式のみにもとづいて自動マッピングを行なう自動マッピングルールを決定する場合よりも、より正確に自動マッピングを行なう自動マッピングルールを決定することができる。
【００１２】
自動マッピングルール記憶手段は、自動マッピング実行手段が実行する自動マッピングルールの優先度を各自動マッピングルールに対応付けて記憶してもよく、パターンマッチング手段が行なったパターンマッチングの結果、複数の自動マッピングルールとパターンマッチングした場合、自動マッピングルール記憶手段が記憶している優先度にもとづいて、実行する自動マッピングルールを決定するルール衝突解決手段を備えてもよい。そのような構成によれば、パターンマッチングの結果、複数の自動マッピングルールとパターンマッチングした場合であっても、優先度にもとづいて実行する自動マッピングルールを決定することができる。
【００１３】
自動マッピング実行手段がデータマッピングルールを複数導出した場合、導出した複数のデータマッピングルールを表示手段に表示させてユーザにデータマッピングルールを選択させる対話的データマッピングルール選択手段を備えてもよい。そのような構成によれば、自動マッピング実行手段がデータマッピングルールを複数導出した場合、ユーザにデータマッピングルールを選択させることができる。
【００１４】
類義語の情報を記憶する事実情報記憶手段を備えてもよく、パターンマッチング手段は、事実情報記憶手段が記憶している類義語の情報を参照してパターンマッチングを行なってもよい。そのような構成によれば、パターンマッチング手段は、入力された入力データまたは入力データおよび出力データと、自動マッピングルール記憶手段が記憶している入力データまたは入力データおよび出力データとに用いられている言葉が合致しなくても、事実情報記憶手段が記憶している類義語であれば、パターンマッチングを行うことができる。
【００１５】
本発明による自動データマッピングシステムは、入力データの形式と、入力データに実行する動作とを示す自動マッピングルールを複数記憶する自動マッピングルール記憶手段と、入力された入力データと、自動マッピングルール記憶手段が記憶している自動マッピングルールの入力データの形式とのパターンマッチングを行い、自動マッピングを行なう自動マッピングルールを決定するパターンマッチング手段と、パターンマッチング手段が決定した自動マッピングルールを実行して、入力データを変換する動作を示すデータマッピングルールを導出する自動マッピング実行手段と、自動マッピング実行手段が導出したデータマッピングルールにもとづいて、入力データをデータ変換して出力データを生成するデータ変換手段とを備えたことを特徴とする。
【００１６】
自動マッピングルール記憶手段が記憶する自動マッピングルールは、入力データおよび出力データの形式と、入力データに実行する動作とを示してもよく、パターンマッチング手段は、入力された入力データおよび出力データの形式と、自動マッピングルール記憶手段が記憶している自動マッピングルールの入力データおよび出力データの形式とのパターンマッチングを行い、自動マッピングを行なう自動マッピングルールを決定してもよい。そのような構成によれば、パターンマッチング手段は、入力された入力データおよび出力データの形式と、自動マッピングルール記憶手段が記憶している自動マッピングルールの入力データおよび出力データの形式とにもとづいて、自動マッピングを行なう自動マッピングルールを決定するため、入力データの形式のみにもとづいて自動マッピングを行なう自動マッピングルールを決定する場合よりも、より正確に自動マッピングを行なう自動マッピングルールを決定することができる。
【００１７】
自動マッピングルール記憶手段は、自動マッピング実行手段が実行する自動マッピングルールの優先度を各自動マッピングルールに対応付けて記憶してもよく、パターンマッチング手段が行なったパターンマッチングの結果、複数の自動マッピングルールとパターンマッチングした場合、自動マッピングルール記憶手段が記憶している優先度にもとづいて、実行する自動マッピングルールを決定するルール衝突解決手段を備えてもよい。そのような構成によれば、パターンマッチングの結果、複数の自動マッピングルールとパターンマッチングした場合であっても、優先度にもとづいて実行する自動マッピングルールを決定することができる。
【００１８】
自動マッピング実行手段がデータマッピングルールを複数導出した場合、導出した複数のデータマッピングルールを表示手段に表示させてユーザにデータマッピングルールを選択させる対話的データマッピングルール選択手段を備えてもよい。そのような構成によれば、自動マッピング実行手段がデータマッピングルールを複数導出した場合、ユーザにデータマッピングルールを選択させることができる。
【００１９】
類義語の情報を記憶する事実情報記憶手段を備えてもよく、パターンマッチング手段は、事実情報記憶手段が記憶している類義語の情報を参照してパターンマッチングを行なってもよい。そのような構成によれば、パターンマッチング手段は、入力された入力データまたは入力データおよび出力データと、自動マッピングルール記憶手段が記憶している入力データまたは入力データおよび出力データとに用いられている言葉が合致しなくても、事実情報記憶手段が記憶している類義語であれば、パターンマッチングを行うことができる。
【００２０】
本発明による自動データマッピングプログラムは、入力データの形式と、入力データに実行する動作とを示す自動マッピングルールと、自動マッピングルールの優先度とを対応付けて複数記憶する自動マッピングルール記憶手段と、類義語の情報を記憶する事実情報記憶手段とを備えた自動データマッピングシステムに搭載される自動データマッピングプログラムであって、コンピュータに、入力された入力データの形式と、自動マッピングルール記憶手段が記憶している自動マッピングルールの入力データの形式とのパターンマッチングを、事実情報記憶手段が記憶している類義語の情報を参照して行い、自動マッピングを行なう自動マッピングルールを決定するパターンマッチング処理と、パターンマッチング処理が決定した自動マッピングルールを実行して、データマッピングルールを導出する自動マッピング実行処理と、パターンマッチング処理が行なったパターンマッチングの結果、複数の自動マッピングルールとパターンマッチングした場合、自動マッピングルール記憶手段が記憶している優先度にもとづいて、実行する自動マッピングルールを決定するルール衝突解決処理とを実行させることを特徴とする。
【００２１】
自動マッピングルール記憶手段が記憶する自動マッピングルールは、入力データおよび出力データの形式と、入力データに実行する動作とを示してもよく、コンピュータに、パターンマッチング処理で、入力された入力データおよび出力データの形式と、自動マッピングルール記憶手段が記憶している自動マッピングルールの入力データおよび出力データの形式とのパターンマッチングを行い、自動マッピングを行なう自動マッピングルールを決定する処理を実行させてもよく、自動マッピング実行処理がデータマッピングルールを複数導出した場合、導出した複数のデータマッピングルールを表示手段に表示させてユーザにデータマッピングルールを選択させる対話的データマッピングルール選択処理を実行させてもよい。そのような構成によれば、パターンマッチング処理は、入力された入力データおよび出力データの形式と、自動マッピングルール記憶手段が記憶している自動マッピングルールの入力データおよび出力データの形式とにもとづいて、自動マッピングを行なう自動マッピングルールを決定するため、入力データの形式のみにもとづいて自動マッピングを行なう自動マッピングルールを決定する場合よりも、より正確に自動マッピングを行なう自動マッピングルールを決定することができる。また、自動マッピング実行処理がデータマッピングルールを複数導出した場合、ユーザにデータマッピングルールを選択させることができる。
【発明の効果】
【００２２】
本発明によれば、入力データ項目の形式にもとづいて、自動的にデータマッピングを行なって入力データから出力データへのデータ変換を行なうルールであるマッピングルールを導出することができる。
【発明を実施するための最良の形態】
【００２３】
実施の形態１．
本発明の第１の実施の形態について説明する。図１は、本発明の第１の実施の形態の一構成例を示すブロック図である。
【００２４】
本発明の第１の実施の形態は、ユーザが、変換元のデータ項目と変換先のデータ項目との対応関係のルール（以下、データマッピングルールという。）を編集するデータマッピング編集装置１００、ユーザの指示にもとづいてデータマッピングルールを導出する自動データマッピング装置１１０、および自動データマッピング装置１１０が導出したデータマッピングルールにもとづいて入力データの変換を行なうデータ変換装置１２０を含む。
【００２５】
データマッピング編集装置１００は、ユーザが入力した変換元のデータ項目と変換先のデータ項目との関連付けを、ユーザの指示にもとづいて行ない、関連付けした結果と、データマッピングの開始の指示とを自動データマッピング装置１１０に出力する。
【００２６】
自動データマッピング装置１１０は、変換元のデータ項目名である入力側項目名、変換先のデータ項目名である出力側項目名および類義語の情報のデータベースを予め記憶する事実情報記憶部（事実情報記憶手段）１１５、自動マッピングを行なう条件と実行する動作との記述である自動マッピングルールのデータベースである自動マッピングルールデータベースを予め記憶する自動マッピングルール記憶部（自動マッピングルール記憶手段）１１６、事実情報記憶部１１５が記憶している情報と自動マッピングルール記憶部１１６が記憶している情報とにもとづいて実行する自動マッピングルールを選択するパターンマッチング部（パターンマッチング手段）１１１、パターンマッチング部１１１が、実行する自動マッピングルールを複数選択した場合に、予め決められた優先度にもとづいて実行する自動マッピングルールを決定するルール衝突解決部（ルール衝突解決手段）１１２、自動マッピングルールを実行してデータマッピングルールを導出する自動マッピング実行部１１３、および自動マッピング実行部１１３の実行結果が複数あった場合、ユーザに実行結果の選択を要求する対話的データマッピングルール選択部（対話的データマッピングルール選択手段）１１４を含む。
【００２７】
データ変換装置１２０は、入力された入力データを、データマッピング編集装置１００から入力されたデータマッピングルールにもとづいてデータ変換して、出力データを出力するデータ変換部（データ変換手段）１２１を含む。
【００２８】
自動データマッピング装置１１０は、コンピュータに、入力された入力データの形式と、自動マッピングルール記憶部１１６が記憶している自動マッピングルールの入力データの形式とのパターンマッチングを、事実情報記憶部１１５が記憶している類義語の情報を参照して行い、自動マッピングを行なう自動マッピングルールを決定するパターンマッチング処理と、パターンマッチング処理が決定した自動マッピングルールを実行して、データマッピングルールを導出する自動マッピング実行処理と、パターンマッチング処理が行なったパターンマッチングの結果、複数の自動マッピングルールとパターンマッチングした場合、自動マッピングルール記憶部１１６が記憶している優先度にもとづいて、実行する自動マッピングルールを決定するルール衝突解決処理とを実行させる自動データマッピングプログラムを搭載している。また、自動マッピングルール記憶部１１６が記憶する自動マッピングルールは、入力データおよび出力データの形式と、入力データに実行する動作とを示してもよく、コンピュータに、パターンマッチング処理で、入力された入力データおよび出力データの形式と、自動マッピングルール記憶部１１６が記憶している自動マッピングルールの入力データおよび出力データの形式とのパターンマッチングを行い、自動マッピングを行なう自動マッピングルールを決定する処理を実行させてもよく、自動マッピング実行処理がデータマッピングルールを複数導出した場合、導出した複数のデータマッピングルールを表示手段に表示させてユーザにデータマッピングルールを選択させる対話的データマッピングルール選択処理を実行させてもよい。
【００２９】
次に、本発明の第１の実施の形態の動作について説明する。図２は、本発明の第１の実施の形態の動作を説明するフローチャートである。
【００３０】
ユーザは、データマッピング編集装置１００に、入力側項目名と出力側項目名とを入力する。図３は、入力側項目名と出力側項目名との例を示す説明図である。図３に示すように、入力側項目名は、大項目名として「動作電圧」、中項目名として「Ｍｉｎ」と「Ｍａｘ」、中項目名「Ｍｉｎ」の小項目名として「単位」と「値」、および中項目名「Ｍａｘ」の小項目名として「単位」と「値」とである。出力側項目名は、「最小動作電圧」と「最大動作電圧」とである。
【００３１】
データマッピング編集装置１００は、入力された入力側項目名と出力側項目名とを表示手段に表示する。そして、ユーザがマウス等の入力手段を用いて、入力側項目名と出力側項目名とを選択して、関連付けを入力する（ステップＳ１０１）。図４は、ユーザが入力した入力側項目名と出力側項目名との関連付けの一例を示す説明図である。図４に示す例では、入力側項目名の中項目名「Ｍｉｎ」の小項目名「単位」と、出力側項目名の「最小動作電圧」とが関連付けられている。
【００３２】
そして、ユーザがマウス等の入力手段を用いて、データマッピング編集装置１００に、自動データマッピングの実行を指示すると、データマッピング編集装置１００は、自動データマッピング装置１１０に、自動マッピングの適用を指示するコマンドを入力する（ステップＳ１０２）。図５は、自動データマッピング装置１１０に入力する、自動データマッピングの実行を指示するコマンドの一例を示す記述例である。図５に示す例では、「現在の目的は、自動マッピングを行なうことであり（ｇｏａｌ（ａｕｔｏＭａｐｐｉｎｇ）の部分）、ユーザは、入力項目［動作電圧，Ｍｉｎ，単位］（ａｃｔｉｖｅ（ｓｒｃ（［“動作電圧”，“Ｍｉｎ”，“単位”］））の部分）と、出力項目［最小動作電圧］（ａｃｔｉｖｅ（ｔａｒｇｅｔ（［“最小動作電圧”］））の部分）とを選択している」というコマンドである。
【００３３】
自動データマッピング装置１１０において、自動データマッピングの実行を指示するコマンドが入力されると、パターンマッチング部１１１は、事実情報記憶部１１５および自動マッピングルール記憶部１１６が記憶している情報を参照し、パターンマッチングによって実行可能な自動マッピングルールを検索する（ステップＳ１０３）。図６は、事実情報記憶部１１５が記憶している事実情報データベースの一例を示す記述例である。図６に示す例では、事実情報データベースは、項目として存在する入力側データ項目名および出力側データ項目名（ｓｒｃ（［項目名］）およびｔａｒｇｅｔ（［項目名］）の部分）と、類義語の情報（ｓｙｎｏｎｙｍ（項目名１，項目名２）およびｓｙｎｏｎｙｍＬｅｖｅｌ（項目名３，項目名４）の部分）とを予め含む。また、図７は、自動マッピングルール記憶部１１６が記憶している自動マッピングルールデータベースの一例を示す記述例である。自動マッピングルールデータベースには、自動マッピングルールが予め複数登録されている。そして、各自動マッピングルールには、その自動マッピングルールを実行することのできる条件の記述（条件部：ＩＦ以下であってＴＨＥＮの上までで示す部分）と、実行する内容（アクション部：ＴＨＥＮ以下で示す部分）が記述されている。また、自動データマッピングデータベースには、各自動マッピングルールに対して実行する優先度の値が予め対応付けられている。優先度は、例えば、ユーザが期待する動作を行なう順に、各自動マッピングルールに対応付けられている。具体的には、例えば、優先度の高い自動マッピングルールには小さい値の優先度が対応付けられ、優先度の低い自動マッピングルールには大きい値の優先度が対応付けられている。
【００３４】
図７に示す例では、「現在のゴールが自動マッピングを行うことであり（ｇｏａｌ（ａｕｔｏＭａｐｐｉｎｇ）の部分）、入力データ項目Ｓ１は［Ａ，Ｂ，“単位”］という形式であり（Ｓ１＝ｓｒｃ（［Ａ，Ｂ，“単位”］）の部分）、入力データ項目Ｓ２は［Ａ，Ｂ，“値”］という形式であり（Ｓ２＝ｓｒｃ（［Ａ，Ｂ，“値”］）の部分）、入力データ項目Ｓ１または入力データ項目Ｓ２のいずれかが選択されており（（ａｃｔｉｖｅ（Ｓ１）  ｏｒ  ａｃｔｉｖｅ（Ｓ２））の部分）、かつ出力データ項目Ｔが選択されている時（Ｔ＝ｔａｒｇｅｔ（［Ｘ］）  ａｎｄ  ａｃｔｉｖｅ（Ｔ）の部分）」というような条件が条件部に記述されている。そして、「出力データ項目Ｔとして、入力データ項目Ｓ１と、入力データ項目Ｓ２との入力データの値を元に、単位変換の計算処理を行なったものを結果として出力する（ｍａｐ（ｕｎｉｔＣｏｎｖｅｒｔ（ｖａｌｕｅ−ｏｆ（Ｓ１），ｖａｌｕｅ−ｏｆ（Ｓ２）），Ｔ）の部分）」ということを行うデータマッピングルールを結果とするという動作が、アクション部に記述されている。ここで、Ａ、Ｂ、Ｓ１、Ｓ２およびＴはパターンマッチングにおける変数である。そして、入力側項目名および出力側項目名にもとづいて、Ａ＝動作電圧、Ｂ＝Ｍｉｎ、Ｘ＝最小動作電圧とすると、Ｓ１＝ｓｒｃ（［“動作電圧”，“Ｍｉｎ”，“単位”］）、Ｓ２＝ｓｒｃ（［“動作電圧”，“Ｍｉｎ”，“値”］）およびＴ＝ｔａｒｇｅｔ（［“最小動作電圧”］）となり、条件部とパターンマッチングし、アクション部は、ｍａｐ（ｕｎｉｔＣｏｎｖｅｒｔ（ｖａｌｕｅ−ｏｆ（ｓｒｃ（［“動作電圧”，“Ｍｉｎ”，“単位”］）），ｖａｌｕｅ−ｏｆ（ｓｒｃ（［“動作電圧”，“Ｍｉｎ”，“値”］））），ｔａｒｇｅｔ（［“最小動作電圧”］））となる。
【００３５】
パターンマッチング部１１１は、入力データ項目と出力データ項目と、パターンマッチングした自動マッピングルールとを、ルール衝突解決手段１１２に出力する。そして、入力データ項目と出力データ項目との形式が、複数の自動マッピングルールとパターンマッチングしたり、複数の入力データ項目と出力データ項目との形式が、一つの自動マッピングルールとパターンマッチングしたりした場合、ルール衝突解決手段１１２には、複数の自動マッピングルールが入力されることになる。複数の自動マッピングルールが入力された場合、ルール衝突解決手段１１２は、より小さい値の優先度に対応付けられた自動マッピングルールを実行すると決定し（ステップＳ１０４）、実行すると決定した自動マッピングルールと、入力データ項目と、出力データ項目とを自動マッピング実行部１１３に出力する。なお、パターンマッチング部１１１は、入力データ項目と出力データ項目との形式が、複数の自動マッピングルールとパターンマッチングしたり、複数の入力データ項目と出力データ項目との形式が、一つの自動マッピングルールとパターンマッチングしたりした場合、それらの情報を対話的データマッピングルール選択部１１４に出力し、対話的データマッピングルール選択部１１４は、入力された情報をデータマッピング編集装置１００に出力してもよい。そして、ユーザが、実行する自動マッピングルールを決定し、決定した自動マッピングルールと入力データ項目と出力データ項目とを自動マッピング実行部１１３に出力してもよい。
【００３６】
自動マッピング実行部１１３は、入力された入力データ項目と出力データ項目に対して、決定した自動マッピングルールにもとづいて自動マッピングを実行して（ステップＳ１０５）、データマッピングルールを導出する。具体的には、条件部のパターンマッチングに成功した自動マッピングルールのアクション部を実行する。ここで、アクション部の種類として、図７に示した例のように、データマッピングを結果として出力する「ｍａｐ」の他に、目的を再設定してパターンマッチング手段１１１に戻る「ｇｏａｌ」を用いてもよい。図８は、アクション部に「ｇｏａｌ」を用いた自動マッピングルールの一例を示す記述例である。
【００３７】
自動マッピング実行部１１３は、自動マッピングを実行した結果であるデータマッピングルールを対話的データマッピングルール選択部１１４に出力する。ここで、自動マッピング実行部１１３が、自動マッピングを実行した結果のデータマッピングルールが複数存在した場合（ステップＳ１０６）、対話的データマッピングルール選択部１１４は、複数のデータマッピングルールをデータマッピング編集装置１００に出力する（ステップＳ１０７）。そして、ユーザは、データマッピング編集装置１００のマウス等の入力手段を操作して複数のデータマッピングルールから、採用するデータマッピングルールを選択する（ステップＳ１０８）。データマッピング編集装置１００は、ユーザが選択したデータマッピングルールを対話的データマッピングルール選択部１１４に出力する。対話的データマッピングルール選択部１１４は、入力されたデータマッピングルールを、採用するデータマッピングルールに決定して、決定したデータマッピングルールをデータマッピング編集装置１００に出力する（ステップＳ１０９）。
【００３８】
図９は、自動データマッピング装置１１０が求めたデータマッピングルールの一例を示す説明図である。データマッピング編集装置１００は、図９の例に示したような画面を表示手段に表示させる。例えば、ｍａｐ（ｕｎｉｔＣｏｎｖｅｒｔ（ｖａｌｕｅ−ｏｆ（ｓｒｃ（［“動作電圧”，“Ｍｉｎ”，“単位”］）），ｖａｌｕｅ−ｏｆ（ｓｒｃ（［“動作電圧”，“Ｍｉｎ”，“値”］））），ｔａｒｇｅｔ（［“最小動作電圧”］））が結果としてデータマッピング編集装置１００に出力され、図９に示す例のように、“動作電圧／Ｍｉｎ／単位”と、“動作電圧／Ｍｉｎ／値”との２項目を入力データ項目とし（ｖａｌｕｅ−ｏｆ（ｓｒｃ（［“動作電圧”，“Ｍｉｎ”，“単位”］））の部分とｖａｌｕｅ−ｏｆ（ｓｒｃ（［“動作電圧”，“Ｍｉｎ”，“値”］））の部分）、単位変換処理を行ない（ｕｎｉｔＣｏｎｖｅｒｔの部分）、結果を“最小動作電圧”の欄に出力する（ｍａｐ（ｔａｒｇｅｔ（［“最小動作電圧”］），＜任意の計算式＞）の部分）ようなデータマッピングルールが自動的に作られる。なお、“動作電圧／Ｍｉｎ／単位”とは、”大項目名／中項目名／小項目名”を表し、以下、同様とする。
【００３９】
データマッピング編集装置１００は、データマッピングルールをデータ変換装置１２０に出力する（ステップＳ１１０）。データ変換装置１２０において、入力データが入力されると、データマッピングルールにもとづいて、データ変換部１２１が入力データをデータ変換して出力データを生成し、生成した出力データを出力する（ステップＳ１１１）。
【００４０】
なお、ステップＳ１０２における自動マッピングの実行を指示するコマンドの入力は、複数の入力側項目名と出力側項目名とがユーザによって関連付けられた状態で行なわれてもよい。その場合であっても、パターンマッチング部１１１は、自動マッピングルール記憶部１１６が記憶している自動マッピングルールデータベースに含まれる自動マッピングルールとパターンマッチングするからである。
【００４１】
また、自動マッピングルール記憶部１１６は、ユーザが入力側項目名だけを指定すると、出力側項目名を推測することが可能となるような自動マッピングルールを記憶していてもよい。図１０は、入力側項目名を指定すると出力側項目名を推測する自動マッピングルールを示す記述例である。具体的には、図１０の下線部を図７に追加している。すると、ここで、条件部の記述「ｓｙｎｏｎｙｍ（Ａ，Ｘ）」は２つの引数（ＡおよびＸ）が類義語であるかどうかを判定する関数（またはパターン）であるものとする。また、ここでは“最大動作電圧”と“動作電圧”が類義語として事実情報データベースに登録してある（図６のｓｙｎｏｎｙｍ（“動作電圧”，“最大動作電圧”）の部分）。すると、入力側項目名として“動作電圧／Ｍａｘ／単位”だけを選択し、出力側データ項目を何も選択しない状態で自動データマッピング装置１１０に自動データマッピングの実行を指示するコマンドを入力すると、パターンマッチング部１１１は、事実情報記憶部１１５が記憶している事実情報データベースの類義語の情報にもとづいて、ステップＡ３のパターンマッチングによりＸ＝“最大動作電圧”であると求め、自動マッピング実行部１１３は、“動作電圧／Ｍａｘ／単位”および“動作電圧／Ｍａｘ／値”と、“最大動作電圧”との間のデータマッピングルールを作成する。
【００４２】
ある一つの入力側項目名と、ある一つの出力側項目名との間の関連づけを行なうだけで、それと関連する複数の入力側項目名と複数の出力側項目名へと自動データマッピングを行なうことを可能とするよう、自動マッピングルールを構成してもよい。図１１は、出力側項目名に小項目欄がある場合の入力側項目名と出力側項目名との例を示す説明図である。例えば、図１１の例に示すように出力側項目名にもＭｉｎｉｍｕｍおよびＭａｘｉｍｕｎを表す小項目欄がある場合、パターンマッチングにおいて１つの自動マッピングルールに対してパターンマッチングによる変数の束縛の結果が複数ありうるようなケースとなったときには、すべての変数束縛の組み合わせについてアクション部を実行するものとする。図１２は、１つの自動マッピングルールに対してパターンマッチングによる変数の束縛の結果が複数ありうるようなケースとなったときに、すべての変数束縛の組み合わせについてアクション部を実行する場合の自動マッチングルールを示す記述例である。例えば、図１２の例に示すような自動マッピングルールにおいて、変数Ｐ、Ｑ、Ｙは自由な値を取ることができ、その結果アクション部の変数束縛の組み合わせが複数ありうることとなる。すると、［動作電圧，Ｍｉｎ，単位］と、［Ｏｐｅｒａｔｉｎｇ  Ｖｏｌｔａｇｅ，  ｍｉｎｉｍｕｍ］との間に関連付けを行なうだけで、２つの出力側項目名と、４つの入力側項目名とに関する２つのデータマッピングを自動的に作成することができる。図１３は、２つの出力側項目名と４つの入力側項目名とに関する２つの自動マッピングルールの一例を示す記述例である。
【００４３】
なお、複数の出力側項目名と、複数の入力側項目名との間での自動マッピングにおいても、出力側項目名の推測、入力側項目名の推測を同様の方法を用いることができる。そして、すべての入力側項目名および出力側項目名について、一括で入力側項目名の推測と出力側項目名の推測とを行なうようにしてもよい。すなわち、ユーザが、各入力側項目名について順に選択し、自動マッピングの実行を指示するコマンドを繰り返し自動データマッピング装置１１０に入力すると、一括での推測処理を実現することができる。
【００４４】
以上、述べたように、この実施の形態によれば、入力側項目名および出力側項目名やそれに関連する事実情報に対するパターンマッチングルールによって、入力側項目名および出力側項目名に対して適用可能なデータマッピングルールを推測することができるように構成されているため、ユーザが行なったデータマッピングが一部であっても、自動的に複雑なデータマッピングルールを導出することができる。
【００４５】
また、入力側項目名および出力側項目名の類義語を、事実情報データベースから求めることができるように構成されているため、入力データの入力側項目および出力側項目に対応する入力側項目名および出力側項目名をすぐに見つけ出せないユーザにとっても、適切なデータマッピングルールを得ることができる。さらに、パターンマッチングによる変数束縛の組み合わせの数だけ、自動マッピングルールのアクション部を実行するように構成すると、複数のデータ項目間での自動マッピングを行なうことができ、データマッピングルールを作成することができる。
【００４６】
実施の形態２．
本発明の第２の実施の形態について説明する。図１４は、本発明の第２の実施の形態の一構成例を示すブロック図である。本実施の第２の形態の構成は、第１の実施の形態のデータマッピング編集装置１００と、自動データマッピング装置１１０の対話的データマッピングルール選択部１１４とを取り除いた点と、データ変換装置２１０がデータマッピングルールを予め記憶している固定データマッピングルール記憶部２１１を含む点とが、第１の実施の形態の構成と異なり、その他の構成は第１の実施の形態と同様である。そのため、第１の実施の形態と同様の回路等については図１と同じ符号を付し、説明を省略する。
【００４７】
ユーザは、入力データを自動データマッピング装置２００と、データ変換装置２１０とに入力する。このとき、入力データは、項目の値だけでなく、入力側項目名および出力側項目名も含んでおり、入力側項目名と出力側項目名とは関連付けられているものとする。
【００４８】
自動データマッピング装置２００は、コンピュータに、入力された入力データの形式と、自動マッピングルール記憶部１１６が記憶している自動マッピングルールの入力データの形式とのパターンマッチングを、事実情報記憶部１１５が記憶している類義語の情報を参照して行い、自動マッピングを行なう自動マッピングルールを決定するパターンマッチング処理と、パターンマッチング処理が決定した自動マッピングルールを実行して、データマッピングルールを導出する自動マッピング実行処理と、パターンマッチング処理が行なったパターンマッチングの結果、複数の自動マッピングルールとパターンマッチングした場合、自動マッピングルール記憶部１１６が記憶している優先度にもとづいて、実行する自動マッピングルールを決定するルール衝突解決処理とを実行させる自動データマッピングプログラムを搭載している。
【００４９】
次に、本発明の第２の実施の形態の動作について説明する。図１５は、本発明の第２の実施の形態の動作を説明するフローチャートである。
【００５０】
まず、ユーザが、入力データを自動データマッピング装置２００と、データ変換装置２１０とに入力する（ステップＳ２０１）。そして、ユーザは、自動データマッピング装置２００に、自動マッピングの実行を指示するコマンドを入力する（ステップＳ２０２）。このとき入力するコマンドは、例えば、第１の実施の形態において自動データマッピング装置１１０に入力した、図５に示すようなコマンドである。自動データマッピング装置２００において、自動マッピングの実行を指示するコマンドが入力されると、パターンマッチング部１１１は、事実情報記憶部１１５および自動マッピングルール記憶部１１６が記憶している情報を参照して、第１の実施の形態と同様に入力データに含まれる入力側項目名と出力側項目名とにパターンマッチングを行ない、実行可能な自動マッピングルールを検索する（ステップＳ２０３）。
【００５１】
パターンマッチング部１１１は、第１の実施の形態と同様に、入力データ項目と、出力データ項目と、パターンマッチングした自動マッピングルールとを、ルール衝突解決手段１１２に出力する。そして、入力データ項目と出力データ項目との形式が、複数の自動マッピングルールとパターンマッチングしたり、複数の入力データ項目と出力データ項目との形式が、一つの自動マッピングルールとパターンマッチングしたりした場合、ルール衝突解決手段１１２には、複数の自動マッピングルールが入力されることになる。複数の自動マッピングルールが入力された場合、ルール衝突解決手段１１２は、より小さい値の優先度に対応付けられた自動マッピングルールを実行すると決定し（ステップＳ２０４）、実行すると決定した自動マッピングルールと、入力データ項目と、出力データ項目とを自動マッピング実行部１１３に出力する。自動マッピング実行部１１３は、入力された入力データの入力側項目名と出力側項目名に対して、決定した自動マッピングルールにもとづいて自動マッピングを実行する（ステップＳ２０５）。
【００５２】
自動マッピング実行部１１３は、自動マッピングを実行した結果であるデータマッピングルールを導出して、データ変換装置２１０に出力する（ステップＳ２０６）。具体的には、第１の実施の形態と同様に、自動マッピングルールの条件部のパターンマッチングに成功した自動マッピングルールのアクション部を実行する。ここで、アクション部の種類として、図７に示した例のように、データマッピングを結果として出力する「ｍａｐ」の他に、目的を再設定してパターンマッチング手段１１１に戻る「ｇｏａｌ」を用いてもよい。図８に示す例は、アクション部に「ｇｏａｌ」を用いた自動マッピングルールの例を示す説明図である。ここで、自動マッピング実行部１１３が、自動マッピングを実行した結果のデータマッピングルールが複数存在した場合や、ユーザが、固定データマッピングルール記憶部２１１が記憶しているデータマッピングルールを参照して、固定データマッピングルール記憶部２１１が記憶しているデータマッピングルールが、入力データ項目および出力データ項目とパターンマッチングした場合（ステップＳ２０７）、ユーザが、データ変換装置２１０のマウス等の入力手段を操作して採用するデータマッピングルールを選択する（ステップＳ２０８）。データ変換装置２１０は、ユーザが選択したデータマッピングルールを、採用するデータマッピングルールに決定する（ステップＳ２０９）。
【００５３】
データ変換装置２１０のデータ変換部２１２は、決定したデータマッピングルールにもとづいて、入力データをデータ変換して出力データを生成し、生成した出力データを出力する（ステップＳ２１０）。なお、データ変換装置２１０は、ステップＳ２０７において、ユーザが、固定データマッピングルール記憶部２１１が記憶しているデータマッピングルールを参照して、固定データマッピングルール記憶部２１１が記憶しているデータマッピングルールが、入力データ項目および出力データ項目とパターンマッチングした場合、固定データマッピングルール記憶部２１１が記憶しているデータマッピングルールを採用するのか、自動データマッピング装置２００が入力したデータマッピングルールを採用するのか、固定データマッピングルール記憶部２１１が記憶しているデータマッピングルールと、自動データマッピング装置２００が入力したデータマッピングルールとの両方を採用するのかを、予め記憶していてもよい。固定データマッピングルール記憶部２１１が記憶しているデータマッピングルールと、自動データマッピング装置２００が入力したデータマッピングルールとの両方を採用する場合、ステップＳ２１０において、出力データは、２種類出力されるが、ユーザは、そのどちらを採用するのかをデータ変換装置２１０のマウス等の入力手段を操作して選択してもよい。
【００５４】
また、入力データは、入力側項目名および出力側項目名を含んでいる必要があるが、これは入力データのすべてのレコードで共通のヘッダが一つあってもよいし、入力データの各レコードごとに入力側項目名および出力側項目名が指定されていてもよい。前者の場合、自動データマッピング装置２００は、データマッピングルールの導出を、入力データ一式単位で行う。後者の場合、自動データマッピング装置２００は、データマッピングルールの導出を、各レコード単位で行う。
【００５５】
以上述べたように、この実施の形態によれば、自動データマッピング装置２００が、入力データにもとづいてデータマッピングルールを導き出す構成としているため、入力データ中に出現する入力データ項目および出力データ項目が予めわかっていないような場合であっても、データマッピングルールを導き出すことができるような自動マッピングルールを用意することで、自動的にデータマッピングルールを導出することができる。
【００５６】
また、入力データに基づいてデータマッピングルールを動的に自動データマッピング装置２００によって導き出すように構成されているため、入力データに応じたデータマッピングルールを生成することができる。
【００５７】
さらに、データ変換装置２１０は、自動データマッピング装置２００が導き出したデータマッピングルールと、固定データマッピングルール記憶部１２２が記憶しているデータマッピングルールとの両方を参照することができるように構成されているため、ユーザは、自動データマッピング装置２００が導き出したデータマッピングルールと、固定データマッピングルール記憶部２１２が記憶しているデータマッピングルールとのいずれを採用するのか、または両方を採用するのかを選択したり、いずれのデータマッピングルールを採用するのかを予め設定したりすることができる。
【００５８】
また、入力データに含まれる入力側項目名と出力側項目名とは入力データ全体一式で共通、または、各レコードごとに入力側項目名と出力側項目名とが指定されていてもよいように構成されているため、入力側項目名が自動マッピングルール記憶部１１６が記憶している自動マッピングルールと異なっている場合や、入力データ一式や入力データ内の異なるレコードで部分的に入力側項目名が自動マッピングルール記憶部１１６が記憶している自動マッピングルールと異なっているような場合でも、データマッピングルールを導出することができるような自動マッピングルールを用意することで適切な変換処理を行うことができる。
【産業上の利用可能性】
【００５９】
本発明によれば、企業間での取引において社内で利用されるデータ項目名と、業界で標準的に利用される業界標準データ項目名との間でのデータマッピング（例えば、異なる企業間におけるそれぞれの企業の電子部品の定格を一覧にした表。）を作成するといった用途に適用することができる。
【図面の簡単な説明】
【００６０】
【図１】本発明の第１の実施の形態の一構成例を示すブロック図である。
【図２】本発明の第１の実施の形態の動作を説明するフローチャートである。
【図３】入力側項目名と出力側項目名との例を示す説明図である。
【図４】ユーザが入力した入力側項目名と出力側項目名との関連付けの一例を示す説明図である。
【図５】自動データマッピング装置に入力する、自動データマッピングの実行を指示するコマンドの一例を示す記述例である。
【図６】事実情報記憶部が記憶している事実情報データベースの一例を示す記述例である。
【図７】自動マッピングルール記憶部が記憶している自動マッピングルールデータベースの一例を示す記述例である。
【図８】アクション部に「ｇｏａｌ」を用いた自動マッピングルールの例を示す記述例である。
【図９】自動データマッピング装置が求めたデータマッピングルールの一例を示す説明図である。
【図１０】入力側項目名を指定すると出力側項目名を推測する自動マッピングルールを示す記述例である。
【図１１】出力側データ項目に小項目欄がある場合の入力側データ項目と出力側データ項目との例を示す説明図である。
【図１２】１つの自動マッピングルールに対してパターンマッチングによる変数の束縛の結果が複数ありうるようなケースとなったときに、すべての変数束縛の組み合わせについてアクション部を実行する場合の自動マッチングルールを示す記述例である。
【図１３】２つの出力側項目名と４つの入力側項目名とに関する２つの自動マッピングルールの一例を示す記述例である。
【図１４】本発明の第２の実施の形態の一構成例を示すブロック図である。
【図１５】本発明の第２の実施の形態の動作を説明するフローチャートである。
【符号の説明】
【００６１】
１００  データマッピング編集装置
１１０、２００  自動データマッピング装置
１１１  パターンマッチング部
１１２  ルール衝突解決部
１１３  自動マッピング実行部
１１４  対話的データマッピングルール選択部
１１５  事実情報記憶部
１１６  自動マッピングルール記憶部
１２０、２１０  データ変換装置
１２１、２１２  データ変換部
２１１  固定データマッピングルール記憶部
【図１】
2005251136.tif 000003
【図２】
2005251136.tif 000004
【図３】
2005251136.tif 000005
【図４】
2005251136.tif 000006
【図５】
2005251136.tif 000007
【図６】
2005251136.tif 000008
【図７】
2005251136.tif 000009
【図８】
2005251136.tif 000010
【図９】
2005251136.tif 000011
【図１０】
2005251136.tif 000012
【図１１】
2005251136.tif 000013
【図１２】
2005251136.tif 000014
【図１３】
2005251136.tif 000015
【図１４】
2005251136.tif 000016
【図１５】
2005251136.tif 000017