(57)【特許請求の範囲】
【請求項１】
コンピュータに、
第１テーブルに含まれる第１項目名と、プログラムの実行によって前記第１テーブルから生成された第２テーブルに含まれる第２項目名との関係が、前方一致の条件を含む第１条件を満たすか判定し、
前記第１項目名と前記第２項目名との関係が前記第１条件を満たす場合、前記第１項目名と前記第２項目名との関係を示すメタデータを前記プログラムの識別情報に対応付けてデータ格納部に格納する、
処理を実行させるメタデータ登録プログラム。
【請求項２】
前記コンピュータに、
前記第１項目名に対応するデータと、前記第２項目名に対応するデータとの関係が、前記前方一致または完全一致の条件を含む第２条件を満たすか判定し、
前記第１項目名に対応するデータと前記第２項目名に対応するデータとの関係が前記第２条件を満たす場合、前記第１項目名と前記第２項目名とを含むメタデータを前記プログラムの識別情報に対応付けて前記データ格納部に格納する、
処理をさらに実行させる請求項１記載のメタデータ登録プログラム。
【請求項３】
前記コンピュータに、
前記第１項目名と、前記第１テーブルおよび前記第２テーブルとは異なる第３テーブルであって、前記プログラムの実行によって前記第１テーブルと前記第３テーブルとから前記第２テーブルが生成される前記第３テーブルに含まれる第３項目名との関係が、完全一致または部分一致の条件を含む第３条件を満たすか判定し、
前記第１項目名と前記第３項目名との関係が前記第３条件を満たす場合、前記第１項目名と前記第３項目名との関係を示すメタデータを前記プログラムの識別情報に対応付けて前記データ格納部に格納する、
処理をさらに実行させる請求項１又は２記載のメタデータ登録プログラム。
【請求項４】
前記コンピュータに、
前記第１項目名に対応するデータと、前記第３テーブルに含まれる第３項目名に対応するデータとの関係が、前記完全一致または前記部分一致の条件を含む第４条件を満たすか判定し、
前記第１項目名に対応するデータと前記第３項目名に対応するデータとの関係が前記第４条件を満たす場合、前記第１項目名と前記第３項目名とを含むメタデータを前記プログラムの識別情報に対応付けて前記データ格納部に格納する、
処理をさらに実行させる請求項３記載のメタデータ登録プログラム。
【請求項５】
前記第１条件は、
前記第１項目名が前記第２項目名に前方一致するという条件を含む、
請求項１記載のメタデータ登録プログラム。
【請求項６】
前記第２条件は、
前記第２項目名に対応するデータのうち第１割合以上のデータが前記第１項目名に対応するデータに完全一致するという条件、又は、前記第２項目名に対応するデータのうち第２割合以上のデータが前記第１項目名に対応するデータに前方一致するという条件を含む、
請求項２記載のメタデータ登録プログラム。
【請求項７】
前記第４条件は、
前記第３項目名に対応するデータのうち第３割合以上のデータが前記第１項目名に対応するデータに完全一致するという条件、又は、前記第３項目名に対応するデータのうち第４割合以上のデータが前記第１項目名に対応するデータに部分一致するという条件を含む、
請求項４記載のメタデータ登録プログラム。
【請求項８】
コンピュータが、
第１テーブルに含まれる第１項目名と、プログラムの実行によって前記第１テーブルから生成された第２テーブルに含まれる第２項目名との関係が、前方一致の条件を含む第１条件を満たすか判定し、
前記第１項目名と前記第２項目名との関係が前記第１条件を満たす場合、前記第１項目名と前記第２項目名との関係を示すメタデータを前記プログラムの識別情報に対応付けてデータ格納部に格納する、
処理を実行するメタデータ登録方法。
【請求項９】
データ格納部と、
第１テーブルに含まれる第１項目名と、プログラムの実行によって前記第１テーブルから生成された第２テーブルに含まれる第２項目名との関係が、前方一致の条件を含む第１条件を満たすか判定し、前記第１項目名と前記第２項目名との関係が前記第１条件を満たす場合、前記第１項目名と前記第２項目名との関係を示すメタデータを前記プログラムの識別情報に対応付けて前記データ格納部に格納する登録部と、
を有するメタデータ登録装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メタデータ登録方法、メタデータ登録プログラムおよびメタデータ登録装置に関する。
【背景技術】
【０００２】
プログラムのメタデータを作成すれば、そのメタデータを利用してプログラムのメンテナンス或いはプログラムの流用等を行うことができる。但し、メタデータを人手によって作成して登録することには手間がかかる。
【０００３】
メタデータの生成に関して、或る文献は、プログラム自体を解析してプログラムのメタデータを生成する技術を開示する。但し、プログラム自体を解析しても適切なメタデータを生成できないことがある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−１３４４４５号公報
【特許文献２】特開２００８−０９０７０７号公報
【特許文献３】特開２０１４−０９２９６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、１つの側面では、プログラムのメタデータを自動的に登録するための技術を提供することである。
【課題を解決するための手段】
【０００６】
本発明に係るメタデータ登録方法は、第１テーブルに含まれる第１項目名と、プログラムの実行によって第１テーブルから生成された第２テーブルに含まれる第２項目名との関係が、前方一致の条件を含む第１条件を満たすか判定し、第１項目名と第２項目名との関係が第１条件を満たす場合、第１項目名と第２項目名との関係を示すメタデータをプログラムの識別情報に対応付けてデータ格納部に格納する処理を含む。
【発明の効果】
【０００７】
１つの側面では、プログラムのメタデータを自動的に登録できるようになる。
【図面の簡単な説明】
【０００８】
【図１】図１は、メタデータ登録装置の機能ブロック図である。
【図２】図２は、メインの処理フローを示す図である。
【図３】図３は、項目名についての登録条件の一例を示す図である。
【図４】図４は、データについての登録条件の一例を示す図である。
【図５】図５は、メインの処理フローを示す図である。
【図６】図６は、「ｓｕｍ＿ｍｏｎｔｈ」というプログラムについてメタデータを登録する場合の動作を説明するための図である。
【図７】図７は、「ｓｕｍ＿ｍｏｎｔｈ」というプログラムについてメタデータを登録する場合の動作を説明するための図である。
【図８】図８は、「ｓｕｍ＿ｍｏｎｔｈ」というプログラムについてメタデータを登録する場合の動作を説明するための図である。
【図９】図９は、「ｓｕｍ＿ｍｏｎｔｈ」というプログラムについてメタデータを登録する場合の動作を説明するための図である。
【図１０】図１０は、「ｓｕｍ＿ｍｏｎｔｈ」というプログラムについてメタデータを登録する場合の動作を説明するための図である。
【図１１】図１１は、「ｓｕｍ＿ｍｏｎｔｈ」というプログラムについてメタデータを登録する場合の動作を説明するための図である。
【図１２】図１２は、「ｊｏｉｎ＿ｂｒａｎｃｈ」というプログラムについてメタデータを登録する場合の動作を説明するための図である。
【図１３】図１３は、「ｊｏｉｎ＿ｂｒａｎｃｈ」というプログラムについてメタデータを登録する場合の動作を説明するための図である。
【図１４】図１４は、「ｊｏｉｎ＿ｂｒａｎｃｈ」というプログラムについてメタデータを登録する場合の動作を説明するための図である。
【図１５】図１５は、「ｊｏｉｎ＿ｂｒａｎｃｈ」というプログラムについてメタデータを登録する場合の動作を説明するための図である。
【図１６】図１６は、「ｊｏｉｎ＿ｂｒａｎｃｈ」というプログラムについてメタデータを登録する場合の動作を説明するための図である。
【図１７】図１７は、「ｊｏｉｎ＿ｂｒａｎｃｈ」というプログラムについてメタデータを登録する場合の動作を説明するための図である。
【図１８】図１８は、「ｊｏｉｎ＿ｂｒａｎｃｈ」というプログラムについてメタデータを登録する場合の動作を説明するための図である。
【図１９】図１９は、「ｊｏｉｎ＿ｂｒａｎｃｈ」というプログラムについてメタデータを登録する場合の動作を説明するための図である。
【図２０】図２０は、「ｊｏｉｎ＿ｂｒａｎｃｈ」というプログラムについてメタデータを登録する場合の動作を説明するための図である。
【図２１】図２１は、メタデータの利用例を具体的に説明するための図である。
【図２２】図２２は、メタデータの利用例を具体的に説明するための図である。
【図２３】図２３は、メタデータの利用例を具体的に説明するための図である。
【図２４】図２４は、コンピュータの機能ブロック図である。
【発明を実施するための形態】
【０００９】
図１に、本実施の形態におけるメタデータ登録装置１の機能ブロック図を示す。メタデータ登録装置１は、入力テーブル格納部１０１と、テーブル処理部１０２と、出力テーブル格納部１０３と、メタデータ登録部１０４と、メタデータ格納部１０５とを含む。メタデータ登録部１０４は、第１判定部１０４１と、第２判定部１０４２とを含む。
【００１０】
テーブル処理部１０２は、入力テーブル格納部１０１に格納されている１又は複数の入力テーブルから出力テーブルを生成し、出力テーブル格納部１０３に格納する。テーブル処理部１０２は、プログラムがＣＰＵ（Central Processing Unit）に実行されることによって実現され、本実施の形態においては該プログラムについてメタデータが登録される。
【００１１】
メタデータ登録部１０４における第１判定部１０４１および第２判定部１０４２は、入力テーブル格納部１０１に格納されている入力テーブルおよび出力テーブル格納部１０３に格納されている出力テーブルからメタデータを生成する。そして、メタデータ登録部１０４は、生成したメタデータをメタデータ格納部１０５に格納する。
【００１２】
次に、図２乃至図２０を用いて、メタデータ登録装置１の動作を説明する。ここでは、テーブル処理部１０２の処理によって出力テーブルが既に出力テーブル格納部１０３に格納されたとする。
【００１３】
まず、メタデータ登録部１０４は、入力テーブル格納部１０１に格納されている入力テーブルと、出力テーブル格納部１０３に格納されている出力テーブルとを読み出す（図２：ステップＳ１）。
【００１４】
そして、メタデータ登録部１０４における第１判定部１０４１は、ステップＳ１において複数の入力テーブルを読み出したか判定する（ステップＳ３）。複数の入力テーブルを読み出さなかった場合（ステップＳ３：Ｎｏルート）、処理は端子Ａを介して図５のステップＳ１９に移行する。
【００１５】
一方、ステップＳ１において複数の入力テーブルを読み出した場合（ステップＳ３：Ｙｅｓルート）、第１判定部１０４１は、以下の処理を実行する。具体的には、第１判定部１０４１は、複数の入力テーブルに含まれる項目名からなる組合せ（本実施の形態においては、２つの項目名の組合せを考える）のうち、項目名が同一入力テーブル由来ではなく且つ未処理の組合せが有るか判定する（ステップＳ５）。
【００１６】
例えば、或る入力テーブルに項目名として「日」、「支店名」および「売上」が含まれ、別の入力テーブルに項目名として「店舗名」および「電話番号」が含まれるとする。この場合、（日，店舗名）、（日，電話番号）、（支店名，店舗名）、（支店名，電話番号）、（売上，店舗名）および（売上，電話番号）という６つの組合せのうち未処理の組合せが有るか判定される。
【００１７】
項目名が同一入力テーブル由来ではなく且つ未処理の組合せが無い場合（ステップＳ７：Ｎｏルート）、処理は端子Ａを介して図５のステップＳ１９に移行する。一方、項目名が同一入力テーブル由来ではなく且つ未処理の組合せが有る場合（ステップＳ７：Ｙｅｓルート）、第１判定部１０４１は、項目名が同一入力テーブル由来ではなく且つ未処理の組合せを１つ特定する（ステップＳ９）。
【００１８】
第１判定部１０４１は、ステップＳ９において特定した組合せに含まれる項目名が、項目名についての登録条件を満たすか判定する（ステップＳ１１）。
【００１９】
図３に、項目名についての登録条件の一例を示す。図３の例では、項目名についての各登録条件について、入出力の種別と、一致の状態と、項目名の一例と、登録フォーマットと、登録例とが示されている。図３において、ＡおよびＢは項目名の一部を表し、Ｘは可変部分を表す。ステップＳ１１においては、入出力の種別が「入力対入力」である１行目および２行目の登録条件について判定が行われる。
【００２０】
第１判定部１０４１は、ステップＳ９において特定した組合せに含まれる項目名に対応するデータ（すなわち、項目名と同じ列にあるデータ。項目値とも呼ばれる）が、データについての登録条件を満たすか判定する（ステップＳ１３）。
【００２１】
図４に、データについての登録条件の一例を示す。図４の例では、データについての各登録条件について、入出力の種別と、一致の状態と、データの一例と、閾値条件と、登録フォーマットと、登録例とが示されている。図４において、ＣおよびＤは入力テーブルの項目名を表し、Ｅは出力テーブルの項目名を表す。ステップＳ１３においては、入出力の種別が「入力対入力」である１行目および２行目の登録条件について判定が行われる。
【００２２】
第１判定部１０４１は、ステップＳ１１の処理において項目名についての登録条件が満たされると判定されたか或いはステップＳ１３の処理においてデータについての登録条件が満たされると判定されたか判定する（ステップＳ１５）。
【００２３】
項目名についての登録条件およびデータについての登録条件のいずれも満たされない場合（ステップＳ１５：Ｎｏルート）、次の組合せについて処理するため、ステップＳ５の処理に戻る。
【００２４】
一方、項目名についての登録条件およびデータについての登録条件のうち少なくともいずれかが満たされると判定された場合（ステップＳ１５：Ｙｅｓルート）、第１判定部１０４１は、以下の処理を実行する。具体的には、第１判定部１０４１は、ステップＳ９において特定した組合せに含まれる項目名についてのメタデータを、図３および図４に示した登録フォーマットに従いメタデータ登録部１０４に登録する（ステップＳ１７）。そして、次の組合せについて処理するためステップＳ５の処理に戻る。
【００２５】
図５を用いて、端子Ａ以降の処理について説明する。まず、第２判定部１０４２は、或る入力テーブルに含まれる項目名と或る出力テーブルに含まれる項目名からなる組合せ（本実施の形態においては、２つの項目名の組合せを考える）のうち、未処理の組合せが有るか判定する（ステップＳ１９）。
【００２６】
例えば、或る入力テーブルに項目名として「日」および「売上」が含まれ、或る出力テーブルに項目名として「月」および「売上月合計」が含まれるとする。この場合、（日，月）、（日，売上月合計）、（売上，月）および（売上，売上月合計）という４つの組合せのうち未処理の組合せが有るか判定される。
【００２７】
未処理の組合せが無い場合（ステップＳ２１：Ｎｏルート）、処理は終了する。一方、未処理の組合せが有る場合（ステップＳ２１：Ｙｅｓルート）、第２判定部１０４２は、未処理の組合せを１つ特定する（ステップＳ２３）。
【００２８】
第２判定部１０４２は、ステップＳ２３において特定した組合せに含まれる項目名が、項目名についての登録条件を満たすか判定する（ステップＳ２５）。項目名についての登録条件が例えば図３に示した登録条件であれば、ステップＳ２５においては、入出力の種別が「入力対出力」である３行目の登録条件について判定が行われる。
【００２９】
第２判定部１０４２は、ステップＳ２３において特定した組合せに含まれる項目名に対応するデータ（すなわち、項目名と同じ列にあるデータ。項目値とも呼ばれる）が、データについての登録条件を満たすか判定する（ステップＳ２７）。データについての登録条件が例えば図４に示した登録条件であれば、ステップＳ２７においては、入出力の種別が「入力対出力」である３行目および４行目の登録条件について判定が行われる。
【００３０】
第２判定部１０４２は、ステップＳ２５の処理において項目名についての登録条件が満たされると判定されたか或いはステップＳ２７の処理においてデータについての登録条件が満たされると判定されたか判定する（ステップＳ２９）。
【００３１】
項目名についての登録条件およびデータについての登録条件のいずれも満たされない場合（ステップＳ２９：Ｎｏルート）、次の組合せについて処理するため、ステップＳ１９の処理に戻る。
【００３２】
一方、項目名についての登録条件およびデータについての登録条件のうち少なくともいずれかが満たされると判定された場合（ステップＳ２９：Ｙｅｓルート）、第２判定部１０４２は、以下の処理を実行する。具体的には、第２判定部１０４２は、ステップＳ２３において特定した組合せに含まれる項目名についてのメタデータを、図３および図４に示した登録フォーマットに従いメタデータ格納部１０５に登録する（ステップＳ３１）。そして、次の組合せについて処理するためステップＳ１９の処理に戻る。
【００３３】
以上のような処理を実行すれば、入力テーブルおよび出力テーブルから関係性が発見され、プログラムのメタデータを人手を介することなく自動的に登録することができるようになる。
【００３４】
次に、図６乃至図２０を用いて、メタデータ登録装置１の動作をより具体的に説明する。ここでは、項目名についての登録条件は図３に示した登録条件であり、データについての登録条件は図４に示した登録条件であるとする。
【００３５】
例えば図６に示すように、「ｓｕｍ＿ｍｏｎｔｈ」というプログラムに対応するテーブル処理部１０２によって、入力テーブル６１から出力テーブル６２が生成されたとする。入力テーブル６１は項目名として「日」および「売上」を含み、出力テーブル６２は項目名として「月」および「売上月合計」を含む。
【００３６】
この場合、図７に示すように、項目名の組合せのうち、「売上」および「売上月合計」の組合せは、入力テーブル６１の項目名が出力テーブル６２の項目名に前方一致するという登録条件を満たす。
【００３７】
従って、図８に示すように、入力テーブル６１の項目名「売上」と出力テーブル６２の項目名「売上月合計」との関係を示すメタデータが、プログラムの識別情報に対応付けてメタデータ格納部１０５に登録される。
【００３８】
また、図９（ａ）に示すように、出力テーブル６２における項目名「月」に対応するデータの９０％以上が、入力テーブル６１における項目名「日」に対応するデータに前方一致するので、この組合せはデータについての登録条件を満たす。
【００３９】
図９（ｂ）に示すように、出力テーブル６２における項目名「売上月合計」に対応するデータと入力テーブル６１における項目名「日」に対応するデータとの組合せは、データについての登録条件を満たさない。
【００４０】
図１０（ａ）に示すように、出力テーブル６２における項目名「月」に対応するデータと入力テーブル６１における項目名「売上」に対応するデータとの組合せは、データについての登録条件を満たさない。
【００４１】
図１０（ｂ）に示すように、出力テーブル６２における項目名「売上月合計」に対応するデータと入力テーブル６１における項目名「売上」に対応するデータとの組合せは、データについての登録条件を満たさない。
【００４２】
従って、図１１に示すように、入力テーブル６１の項目名「日」と出力テーブル６２の項目名「月」とを含むメタデータが、プログラムの識別情報に対応付けてメタデータ格納部１０５に登録される。
【００４３】
また、例えば図１２に示すように、「ｊｏｉｎ＿ｂｒａｎｃｈ」というプログラムに対応するテーブル処理部１０２によって、入力テーブル１２１および入力テーブル１２２から出力テーブル１２３が生成されたとする。入力テーブル１２１は項目名として「日」、「支店名」および「売上」を含み、入力テーブル１２２は項目名として「店舗名」および「電話番号」を含み、出力テーブル１２３は項目名として「日」、「支店名」、「電話番号」および「売上」を含む。
【００４４】
この場合、図１３に示すように、項目名についての登録条件を満たす組合せは存在しない。
【００４５】
また、図１４（ａ）に示すように、入力テーブル１２１における項目名「日」に対応するデータと入力テーブル１２２における項目名「店舗名」に対応するデータとの組合せは、データについての登録条件を満たさない。
【００４６】
図１４（ｂ）に示すように、入力テーブル１２１における項目名「日」に対応するデータと入力テーブル１２２における項目名「電話番号」に対応するデータとの組合せは、データについての登録条件を満たさない。
【００４７】
図１５（ａ）に示すように、入力テーブル１２１における項目名「支店名」に対応するデータの９５％以上が入力テーブル１２２における項目名「店舗名」に対応するデータと完全一致するので、データについての登録条件が満たされる。
【００４８】
図１５（ｂ）に示すように、入力テーブル１２１における項目名「支店名」に対応するデータと入力テーブル１２２における項目名「電話番号」に対応するデータとの組合せは、データについての登録条件を満たさない。
【００４９】
図１６（ａ）に示すように、入力テーブル１２１における項目名「売上」に対応するデータと入力テーブル１２２における項目名「店舗名」に対応するデータとの組合せは、データについての登録条件を満たさない。
【００５０】
図１６（ｂ）に示すように、入力テーブル１２１における項目名「売上」に対応するデータと入力テーブル１２２における項目名「電話番号」に対応するデータとの組合せは、データについての登録条件を満たさない。
【００５１】
従って、図１７に示すように、入力テーブル１２１の項目名「支店名」と入力テーブル１２２の項目名「店舗名」とを含むメタデータが、プログラムの識別情報に対応付けてメタデータ格納部１０５に登録される。
【００５２】
また、図１８に示すように、入力テーブル１２１における項目名「日」と出力テーブル１２３における項目名「日」との組合せについては、図７を用いて説明した方法と同様の方法で判定が行われる。ここでは、完全一致が成立しており、項目名についての登録条件が満たされない。また、入力テーブル１２１および出力テーブル１２３についてのその他の組合せおよび入力テーブル１２２および出力テーブル１２３についてのその他の組合せも、項目名についての登録条件を満たさない。
【００５３】
また、図１９に示すように、入力テーブル１２１における項目名「支店名」に対応するデータの９５％以上が出力テーブル１２３における項目名「支店名」に対応するデータに完全一致するので、データについての登録条件が満たされる。また、入力テーブル１２１と出力テーブル１２３とについてのその他の組合せおよび入力テーブル１２２と出力テーブル１２３とについてのその他の組合せも、図９および図１０を用いて説明した方法と同様の方法で判定が行われ、登録条件が満たされる場合にはメタデータ格納部１０５にメタデータが登録される。
【００５４】
結果として、図２０に示すようなメタデータがメタデータ格納部１０５に登録される。このようなメタデータを利用することで、プログラムのメンテナンスおよびプログラムの流用等を行うことができるようになる。
【００５５】
以上本発明の一実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、上で説明したメタデータ登録装置１の機能ブロック構成は実際のプログラムモジュール構成に一致しない場合もある。
【００５６】
また、上で説明した各テーブルの構成は一例であって、上記のような構成でなければならないわけではない。さらに、処理フローにおいても、処理結果が変わらなければ処理の順番を入れ替えることも可能である。さらに、並列に実行させるようにしても良い。
【００５７】
また、入力テーブル格納部１０１、出力テーブル格納部１０３およびメタデータ格納部１０５は、外付けの記憶装置に設けられてもよい。
【００５８】
また、本実施の形態の処理を複数台のコンピュータで実行してもよい。
【００５９】
［付録］
本付録においては、メタデータの利用方法について説明を追加する。ここでは、図２１に示す項目名を含むテーブル（以下、対象のテーブルと呼ぶ）を生成する場合におけるメタデータの利用について説明する。
【００６０】
まず、図２２（ａ）に示したテーブル用メタデータから、対象のテーブルに含まれる項目名と一致する項目名を含むテーブルが特定される。図２２（ａ）において、実線で囲まれた項目名は対象テーブルに含まれる項目名である。ここでは、図２２（ａ）に示したテーブル「倉庫所在地」、「店舗所在地」および「売り上げ」が特定される。
【００６１】
図２３（ａ）は「倉庫所在地」テーブルを示す図であり、図２３（ｂ）は「店舗所在地」テーブルを示す図であり、図２３（ｃ）はテーブル「売り上げ」を示す図である。テーブル「倉庫所在地」は、項目名として「倉庫名」および「所在地（都道府県）」を含む。テーブル「店舗所在地」は、項目名として「店舗名」および「所在地（都道府県）」を含む。「売り上げ」テーブルは、項目名として「日」、「支店名」および「売上」を含む。
【００６２】
そして、図２２（ｂ）に示すプログラム用メタデータから、対象テーブルに含まれる項目名と一致する項目名についてのプログラムが特定される。図２２（ｂ）において、実線で囲まれた項目名は対象テーブルに含まれる項目名である。ここでは、図２２（ｂ）に示したプログラム「ｔｒａｎｓ＿ｓｉｔｅｎ」、「ｓｕｍ＿ｍｏｎｔｈ」および「ｊｏｉｎ＿ｂｒａｎｃｈ」が特定される。
【００６３】
そして、一致する項目名を多く含むプログラムから順に、特定されたプログラムと、当該プログラムのメタデータに含まれる項目名と一致する項目名を有するテーブルとが関連付けて出力される。具体的には、プログラム「ｊｏｉｎ＿ｂｒａｎｃｈ」とテーブル「店舗所在地」および「売り上げ」とが関連付けて出力され、プログラム「ｔｒａｎｓ＿ｓｉｔｅｎ」とテーブル「売り上げ」とが関連付けて出力され、プログラム「ｓｕｍ＿ｍｏｎｔｈ」とテーブル「売り上げ」とが関連付けて順に出力される。
【００６４】
以上で付録を終了する。
【００６５】
なお、上で述べたメタデータ登録装置１は、コンピュータ装置であって、図２４に示すように、メモリ２５０１とＣＰＵ２５０３とハードディスク・ドライブ（ＨＤＤ：Hard Disk Drive）２５０５と表示装置２５０９に接続される表示制御部２５０７とリムーバブル・ディスク２５１１用のドライブ装置２５１３と入力装置２５１５とネットワークに接続するための通信制御部２５１７とがバス２５１９で接続されている。オペレーティング・システム（ＯＳ：Operating System）及び本実施例における処理を実施するためのアプリケーション・プログラムは、ＨＤＤ２５０５に格納されており、ＣＰＵ２５０３により実行される際にはＨＤＤ２５０５からメモリ２５０１に読み出される。ＣＰＵ２５０３は、アプリケーション・プログラムの処理内容に応じて表示制御部２５０７、通信制御部２５１７、ドライブ装置２５１３を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ２５０１に格納されるが、ＨＤＤ２５０５に格納されるようにしてもよい。本発明の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク２５１１に格納されて頒布され、ドライブ装置２５１３からＨＤＤ２５０５にインストールされる。インターネットなどのネットワーク及び通信制御部２５１７を経由して、ＨＤＤ２５０５にインストールされる場合もある。このようなコンピュータ装置は、上で述べたＣＰＵ２５０３、メモリ２５０１などのハードウエアとＯＳ及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【００６６】
以上述べた本発明の実施の形態をまとめると、以下のようになる。
【００６７】
本実施の形態に係るメタデータ登録方法は、（Ａ）第１テーブル（例えば実施形態における入力テーブル）に含まれる第１項目名と、プログラムの実行によって第１テーブルから生成された第２テーブル（例えば実施形態における出力テーブル）に含まれる第２項目名との関係が、前方一致の条件を含む第１条件を満たすか判定し、（Ｂ）第１項目名と第２項目名との関係が第１条件を満たす場合、第１項目名と第２項目名との関係を示すメタデータをプログラムの識別情報に対応付けてデータ格納部に格納する処理を含む。
【００６８】
このような処理を実行すれば、テーブルを処理するためのプログラムのメタデータを人手を介することなく自動的に登録できるようになる。
【００６９】
また、本メタデータ登録方法は、（Ｃ）第１項目名に対応するデータと、第２項目名に対応するデータとの関係が、前方一致または完全一致の条件を含む第２条件を満たすか判定し、（Ｄ）第１項目名に対応するデータと第２項目名に対応するデータとの関係が第２条件を満たす場合、第１項目名と第２項目名とを含むメタデータをプログラムの識別情報に対応付けてデータ格納部に格納する処理をさらに含んでもよい。項目名の関係だけではなくデータの関係をも加味してメタデータを登録できるようになる。
【００７０】
また、本メタデータ登録方法は、（Ｅ）第１項目名と、第１テーブルおよび第２テーブルとは異なる第３テーブルであって、プログラムの実行によって第１テーブルと第３テーブルとから第２テーブルが生成される第３テーブルに含まれる第３項目名との関係が、完全一致または部分一致の条件を含む第３条件を満たすか判定し、（Ｆ）第１項目名と第３項目名との関係が第３条件を満たす場合、第１項目名と第３項目名との関係を示すメタデータをプログラムの識別情報に対応付けてデータ格納部に格納する処理をさらに含んでもよい。第１テーブルに含まれる項目名と第３テーブルに含まれる項目名との関係をも加味してメタデータを登録できるようになる。また、例えば結合演算などに関するプログラムのメタデータを登録できるようになる。
【００７１】
また、本メタデータ登録方法は、（Ｇ）第１項目名に対応するデータと、第３テーブルに含まれる第３項目名に対応するデータとの関係が、完全一致または部分一致の条件を含む第４条件を満たすか判定し、（Ｈ）第１項目名に対応するデータと第３項目名に対応するデータとの関係が第４条件を満たす場合、第１項目名と第３項目名とを含むメタデータをプログラムの識別情報に対応付けてデータ格納部に格納する処理をさらに含んでもよい。第１テーブルに含まれる項目名に対応するデータと第３テーブルに含まれる項目名に対応するデータとの関係をも加味してメタデータを登録できるようになる。
【００７２】
また、第１条件は、第１項目名が第２項目名に前方一致するという条件を含んでもよい。特定の項目に対する操作（例えば合計の算出など）に関するプログラムのメタデータを登録できるようになる。
【００７３】
また、第２条件は、第２項目名に対応するデータのうち第１割合以上のデータが第１項目名に対応するデータに完全一致するという条件、又は、第２項目名に対応するデータのうち第２割合以上のデータが第１項目名に対応するデータに前方一致するという条件を含んでもよい。例えば集約処理などに関するプログラムのメタデータを登録できるようになる。
【００７４】
また、第４条件は、第３項目名に対応するデータのうち第３割合以上のデータが第１項目名に対応するデータに完全一致するという条件、又は、第３項目名に対応するデータのうち第４割合以上のデータが第１項目名に対応するデータに部分一致するという条件を含んでもよい。例えば結合演算などに関するプログラムのメタデータを登録できるようになる。
【００７５】
なお、上記方法による処理をコンピュータに実行させるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、ＣＤ−ＲＯＭ、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。尚、中間的な処理結果はメインメモリ等の記憶装置に一時保管される。
【００７６】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【００７７】
（付記１）
コンピュータに、
第１テーブルに含まれる第１項目名と、プログラムの実行によって前記第１テーブルから生成された第２テーブルに含まれる第２項目名との関係が、前方一致の条件を含む第１条件を満たすか判定し、
前記第１項目名と前記第２項目名との関係が前記第１条件を満たす場合、前記第１項目名と前記第２項目名との関係を示すメタデータを前記プログラムの識別情報に対応付けてデータ格納部に格納する、
処理を実行させるメタデータ登録プログラム。
【００７８】
（付記２）
前記コンピュータに、
前記第１項目名に対応するデータと、前記第２項目名に対応するデータとの関係が、前記前方一致または完全一致の条件を含む第２条件を満たすか判定し、
前記第１項目名に対応するデータと前記第２項目名に対応するデータとの関係が前記第２条件を満たす場合、前記第１項目名と前記第２項目名とを含むメタデータを前記プログラムの識別情報に対応付けて前記データ格納部に格納する、
処理をさらに実行させる付記１記載のメタデータ登録プログラム。
【００７９】
（付記３）
前記コンピュータに、
前記第１項目名と、前記第１テーブルおよび前記第２テーブルとは異なる第３テーブルであって、前記プログラムの実行によって前記第１テーブルと前記第３テーブルとから前記第２テーブルが生成される前記第３テーブルに含まれる第３項目名との関係が、完全一致または部分一致の条件を含む第３条件を満たすか判定し、
前記第１項目名と前記第３項目名との関係が前記第３条件を満たす場合、前記第１項目名と前記第３項目名との関係を示すメタデータを前記プログラムの識別情報に対応付けて前記データ格納部に格納する、
処理をさらに実行させる付記１又は２記載のメタデータ登録プログラム。
【００８０】
（付記４）
前記コンピュータに、
前記第１項目名に対応するデータと、前記第３テーブルに含まれる第３項目名に対応するデータとの関係が、前記完全一致または前記部分一致の条件を含む第４条件を満たすか判定し、
前記第１項目名に対応するデータと前記第３項目名に対応するデータとの関係が前記第４条件を満たす場合、前記第１項目名と前記第３項目名とを含むメタデータを前記プログラムの識別情報に対応付けて前記データ格納部に格納する、
処理をさらに実行させる付記３記載のメタデータ登録プログラム。
【００８１】
（付記５）
前記第１条件は、
前記第１項目名が前記第２項目名に前方一致するという条件を含む、
付記１記載のメタデータ登録プログラム。
【００８２】
（付記６）
前記第２条件は、
前記第２項目名に対応するデータのうち第１割合以上のデータが前記第１項目名に対応するデータに完全一致するという条件、又は、前記第２項目名に対応するデータのうち第２割合以上のデータが前記第１項目名に対応するデータに前方一致するという条件を含む、
付記２記載のメタデータ登録プログラム。
【００８３】
（付記７）
前記第４条件は、
前記第３項目名に対応するデータのうち第３割合以上のデータが前記第１項目名に対応するデータに完全一致するという条件、又は、前記第３項目名に対応するデータのうち第４割合以上のデータが前記第１項目名に対応するデータに部分一致するという条件を含む、
付記４記載のメタデータ登録プログラム。
【００８４】
（付記８）
コンピュータが、
第１テーブルに含まれる第１項目名と、プログラムの実行によって前記第１テーブルから生成された第２テーブルに含まれる第２項目名との関係が、前方一致の条件を含む第１条件を満たすか判定し、
前記第１項目名と前記第２項目名との関係が前記第１条件を満たす場合、前記第１項目名と前記第２項目名との関係を示すメタデータを前記プログラムの識別情報に対応付けてデータ格納部に格納する、
処理を実行するメタデータ登録方法。
【００８５】
（付記９）
データ格納部と、
第１テーブルに含まれる第１項目名と、プログラムの実行によって前記第１テーブルから生成された第２テーブルに含まれる第２項目名との関係が、前方一致の条件を含む第１条件を満たすか判定し、前記第１項目名と前記第２項目名との関係が前記第１条件を満たす場合、前記第１項目名と前記第２項目名との関係を示すメタデータを前記プログラムの識別情報に対応付けて前記データ格納部に格納する登録部と、
を有するメタデータ登録装置。
【符号の説明】
【００８６】
１  メタデータ登録装置    １０１  入力テーブル格納部
１０２  テーブル処理部    １０３  出力テーブル格納部
１０４  メタデータ登録部    １０５  メタデータ格納部
１０４１  第１判定部    １０４２  第２判定部
【図１】
0006665678.tif 000002
【図２】
0006665678.tif 000003
【図３】
0006665678.tif 000004
【図４】
0006665678.tif 000005
【図５】
0006665678.tif 000006
【図６】
0006665678.tif 000007
【図７】
0006665678.tif 000008
【図８】
0006665678.tif 000009
【図９】
0006665678.tif 000010
【図１０】
0006665678.tif 000011
【図１１】
0006665678.tif 000012
【図１２】
0006665678.tif 000013
【図１３】
0006665678.tif 000014
【図１４】
0006665678.tif 000015
【図１５】
0006665678.tif 000016
【図１６】
0006665678.tif 000017
【図１７】
0006665678.tif 000018
【図１８】
0006665678.tif 000019
【図１９】
0006665678.tif 000020
【図２０】
0006665678.tif 000021
【図２１】
0006665678.tif 000022
【図２２】
0006665678.tif 000023
【図２３】
0006665678.tif 000024
【図２４】
0006665678.tif 000025