(57)【要約】【課題】ＸＭＬ構造定義データが不要となるＸＭＬ／データベース連携装置を提供することである。【解決手段】ＸＭＬ／データベース連携装置は、データベースの構造を表す実体関係図に基づき、ＸＭＬで記述されたデータベース構造定義データを生成する構造定義生成手段と、外部から入力されたＸＭＬデータを上記データベース構造定義データに従い、上記データベースを制御するデータベース制御データを生成し、他方、上記データベースから出力されたデータベース制御データを上記データベース構造定義データに従い、外部に出力するＸＭＬデータに生成する制御データ処理手段と、を有する。【選択図】図１
2005157898.tif 000002
【特許請求の範囲】
【請求項１】
データベースの構造を表す実体関係図に基づき、ＸＭＬで記述されたデータベース構造定義データを生成する構造定義生成手段と、
外部から入力されたＸＭＬデータを上記データベース構造定義データに従い、上記データベースを制御するデータベース制御データを生成し、他方、上記データベースから出力されたデータベース制御データを上記データベース構造定義データに従い、外部に出力するＸＭＬデータに生成する制御データ処理手段と、
を有することを特徴とするＸＭＬ／データベース連携装置。
【請求項２】
外部からＸＭＬで記述された外部ＸＭＬデータを読み込み、上記外部ＸＭＬデータに基づいてＸＭＬで記述された上記データベース構造定義データを生成する構造定義生成手段と、
上記外部ＸＭＬデータを上記データベース構造定義データに従い、上記データベースを制御するデータベース制御データを生成し、他方、上記データベースから出力されたデータベース制御データを上記データベース構造定義データに従い、外部に出力する上記外部ＸＭＬデータに生成する制御データ処理手段と、
を有することを特徴とするＸＭＬ／データベース連携装置。
【請求項３】
上記データベース構造定義データに基づいて上記データベースの構造を指定するデータベース構築手段を有することを特徴とする請求項１または２に記載のＸＭＬ／データベース連携装置。
【請求項４】
データベースからデータベースの構造情報を取り込むデータベース構造取込手段と、
上記構造情報からＸＭＬで記述されたデータベース構造定義データを生成する構造定義生成手段と、
外部から入力されたＸＭＬデータを上記データベース構造定義データに従い、上記データベースを制御するデータベース制御データを生成し、他方、上記データベースから出力されたデータベース制御データを上記データベース構造定義データに従い、外部に出力するＸＭＬデータに生成する制御データ処理手段と、
を有することを特徴とするＸＭＬ／データベース連携装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ＸＭＬで記述されたデータをデータベースに登録、更新、検索および削除するＸＭＬ／データベース連携装置に関する。
【背景技術】
【０００２】
従来のＸＭＬデータをデータベースに登録、更新、検索および削除するときには、ＸＭＬ構造定義データとデータベース構造定義データとを関連付けするＸＭＬ／データベース変換定義を用いている。このＸＭＬ／データベース変換定義に基づいてＸＭＬデータをデータベースに登録したり、データベースからＸＭＬデータを検索したりする。このＸＭＬ／データベース変換定義を得るために、ＸＭＬデータの構造を定義するＸＭＬ構造定義データとデータベースの構造を定義するデータベース構造定義データとをあらかじめ作成する（例えば、特許文献１参照。）。
【０００３】
【特許文献１】特開２００２−１３２５５１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、従来のＸＭＬデータとデータベースとを連携するときに、ＸＭＬデータとデータベースのデータとが同じ意味であっても、あらかじめＸＭＬ構造定義データとデータベース構造定義データとを作成しておかなければならないという問題があった。
また、ＸＭＬ構造定義データを作成するときに、データベース構造定義データの制約情報（ＮＵＬＬ制約、ユニーク制約、外部キー制約など）を考慮して整合性を取る必要があり、データベースの構造を熟知しなければ作成できないという問題があった。
【０００５】
この発明の目的は、ＸＭＬ構造定義データが不要となるＸＭＬ／データベース連携装置を提供することである。
【課題を解決するための手段】
【０００６】
この発明に係わるＸＭＬ／データベース連携装置は、データベースの構造を表す実体関係図に基づき、ＸＭＬで記述されたデータベース構造定義データを生成する構造定義生成手段と、外部から入力されたＸＭＬデータを上記データベース構造定義データに従い、上記データベースを制御するデータベース制御データを生成し、他方、上記データベースから出力されたデータベース制御データを上記データベース構造定義データに従い、外部に出力するＸＭＬデータに生成する制御データ処理手段と、を有する。
【発明の効果】
【０００７】
この発明のＸＭＬ／データベース連携装置に係わる効果は、あらかじめデータベースの実体関係図（以下、Ｅ−Ｒ図と称する。）からデータベースの構造をＸＭＬで記述したデータベース構造定義データを生成し、その後それに従ってＸＭＬデータを生成するので、別個にＸＭＬ構造定義データを生成する必要がなく、直接ＸＭＬデータでデータベースを操作することができる。
【発明を実施するための最良の形態】
【０００８】
実施の形態１．
図１は、この発明の実施の形態１に係わるＸＭＬ／データベース連携装置のブロック図である。なお、ＸＭＬはｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅの略であり、ＸＭＬデータとは、ＸＭＬ文書化されたデータである。データは、要素において開始タグと終了タグで挟んだものまたは要素の属性の属性値として割り付けられる。
また、データベースは、リレーショナル形データベースを例に挙げて以降説明する。このデータベースは、図示していないが、大容量な記憶手段とその記憶手段にデータを登録、更新、検索および削除するデータベースマネージメントシステム（以下、ＤＢＭＳと称す。）とを有するコンピュータである。このデータベースにおけるデータの登録、更新、検索および削除は、ＳＱＬ（Ｓｔｒｕｃｔｕｒｅｄ  Ｑｕｅｒｙ  Ｌａｎｇｕａｇｅ）を用いて文書化されたプログラムに基づいて行われる。なお、データベースとしては、カード形、ネットワーク形などリレーショナル形に限るものではない。
【０００９】
このＸＭＬ／データベース連携装置１は、データが保管されているデータベース２に対して入出力データ３を入力、出力し、そのデータベース２にそのデータを登録、更新、検索および削除する機能を有している。ＸＭＬ／データベース連携装置１は、ＸＭＬを用いてデータの入力、出力の処理を行うアプリケーションがインストールされているコンピュータである。このコンピュータは、図示しないが、ＣＰＵ、ＲＡＭ、ＲＯＭおよびインタフェースを有している。
【００１０】
ＸＭＬ／データベース連携装置１は、データベース２のＥ−Ｒ図４を読み込み、そのＥ−Ｒ図４の実体の情報および属性の情報をＸＭＬ文書化してデータベース構造定義データ５を作成する構造定義作成手段６と、そのデータベース構造定義データ５に基づいてデータベース２に対して登録、更新、検索および削除を行う入出力データ３とデータベース制御データ９との間の変換処理を行う制御データ処理手段１０とを有している。
【００１１】
次に、具体的な例を示してこの実施の形態１のＸＭＬ／データベース連携装置１の動作を説明する。なお、入出力データ３のうち入力データに関して説明する。説明においては、入力データに符号３を付記してある。
まず、入力データ３の登録に関して説明する。図２は、データベース２のＥ−Ｒ図４を示す。このＥ−Ｒ図４は一例であり、任意のデータベース構造に適用することができる。
また、登録しようとする入力データ３は、観測所ＮＯが１で、観測所の名前がＮＡＭＥ１で、所在地がＬＯＣＡＴＩＯＮ１で、河川ＮＯがＲＮＯ１にある２つのテレメータＮＯがＴＭＮＯ１１とＴＭＮＯ１２で、それぞれのテレメータの属性タイプＮＯがＰＴＹＰＥＮＯ１１とＰＴＹＰＥＮＯ１２である。もう一つのデータは、観測所ＮＯが２で、観測所の名前がＮＡＭＥ２で、所在地がＬＯＣＡＴＩＯＮ２で、河川ＮＯがＲＮＯ２にある２つのテレメータＮＯがＴＭＮＯ１３とＴＭＮＯ１４で、それぞれのテレメータの属性タイプＮＯがＰＴＹＰＥＮＯ２１とＰＴＹＰＥＮＯ２２である。
また、データベース２の構造は、図２に示すような実体３１と属性３２とにより定義されている。
【００１２】
まず、構造定義作成手段６は、図２に示すようなＥ−Ｒ図４で定義されている実体３１と属性３２とを確認し、図３、４に示すようにデータベース構造定義データ５をＥ−Ｒ図４毎に作成する。実体３１の情報をテーブル名要素に、属性３２の情報をフィールド名要素に割り当ててＸＭＬ文書を作成する。図３は、ＸＭＬ文書化されたテーブル名要素「ＫＡＮＳＯＫＵＳＹＯ」のデータベース構造定義データ５である。このＥ−Ｒ図４で設定されている属性３２をそれぞれフィールド名要素の子要素として、データ型、桁数、主キー指定、外部キー指定テーブル名、外部キー指定フィールド名要素として記述する。フィールド名要素ＲＮＯは実体「ＲＩＶＥＲ」がぶら下がっているので、外部キー指定テーブル名要素として「ＲＩＶＥＲ」、外部キー指定フィールド名として「ＲＮＯ」を指定する。
また、図４は、図３と同様にＸＭＬ文章化されたテーブル名要素「ＴＥＬＥＭＥＴＥＲ」のデータベース構造定義データ５である。このように作成されたデータベース構造定義データ５を、図示しないがコンピュータの記憶手段に記憶する。
【００１３】
なお、入力データ３は、このデータベース構造定義データ５にそれぞれ記載された要素ごとにＸＭＬ文書化されている。この入力データ３では、テーブル名要素に対応する、図５に示す「ＫＡＮＳＯＫＵＳＹＯ」、「ＴＥＬＥＭＥＴＥＲ」を要素とし、フィールド名要素に対応するデータ「ＫＮＯ」、「ＮＡＭＥ」、「ＬＯＣＡＴＩＯＮ」、「ＲＮＯ」、「ＴＭＮＯ」、ＰＴＹＰＥＮＯ」をそのテーブル名要素の属性の値としてＸＭＬ文書化されている。テーブル名要素「ＴＥＬＥＭＥＴＥＲ」のフィールド名要素「ＫＮＯ」は記載されていないが、親のテーブル名要素「ＫＡＮＳＯＫＵＳＹＯ」のフィールド名要素「ＫＮＯ」で自動補完する。
【００１４】
さらに、制御データ処理手段１０は、この入力データ３をデータベース２に登録するために、入力データ３をデータベース構造定義データ５に従ってＳＱＬ文書化してデータベース制御データ９を生成する。このデータベース制御データ９をデータベース２に送信して、データベース２のそれぞれのテーブルのレコードにデータを登録する。その結果、図６、７に示すようにそれぞれのテーブルのレコードに登録しようとしたデータが挿入される。
【００１５】
次に、データを検索することについて説明する。検索対象のデータ、例えば観測所の名前の中から「ＮＡＭＥ１」を属性に記載して入力データ３が生成されている。制御データ処理手段１０は、この入力データ７をデータベース構造定義データ５に基づいてデータベース制御データ９を生成する。例えば、ＳＱＬで制御すると、「ＦＲＯＭ  ＫＡＮＳＯＫＵＳＹＯ  ＷＨＥＲＥ  ＮＡＭＥ＝’ＮＡＭＥ１’」のようなデータベース制御データ９が生成される。このようなデータベース制御データ９に基づいて図示しないデータベースのＤＢＭＳにより、データベース内を検索され、該当するデータが出力される。
また、更新、削除も同様に入力データ３が作成され、データベース２の処理が行われる。
【００１６】
このようなＸＭＬ／データベース連携装置は、あらかじめデータベースのＥ−Ｒ図からデータベースの構造をＸＭＬで記述したデータベース構造定義データを生成し、その後それに従ってＸＭＬで記述した入力データが作成されるので、別個にＸＭＬ構造定義データを生成する必要がなく、直接ＸＭＬデータでデータベースを操作することができる。
【００１７】
実施の形態２．
図８は、この発明の実施の形態２に係わるＸＭＬ／データベース連携装置のブロック図である。
この実施の形態２のＸＭＬ／データベース連携装置は、実施の形態１のＸＭＬ／データベース連携装置１にデータベース２のＤＢＭＳからデータを入手し、図３、４に示すようなデータベース構造定義データ５を生成するデータベース構造取込手段３３をさらに有している点が異なっていて、その他は同様であるので、同様な部分の説明は省略する。
データベース構造取り込み手段３３は、データベース２のＤＢＭＳからそのデータベース２の構造を定義している実体の情報と属性の情報とを自動的に入手する。この実体の情報と属性の情報とを構造定義生成手段６は、その実体の情報をテーブル名の要素とし、その属性の情報をフィールド名の要素としたＸＭＬ文書を作成する。それがデータベース構造定義データ５である。データベース構造取込手段３３は、コンピュータにより構成されていて、コンピュータの記憶手段に記憶されているプログラムをＣＰＵに読み込み、データベース２のＤＢＭＳからコンピュータのインタフェースを介してデータベース２の実体の情報と属性の情報とを入手して構造定義生成手段６に送信する機能を有している。
【００１８】
このようなＸＭＬ／データベース連携装置１は、既存のデータベース２を利用しようとするときに、そのデータベース２に連携してデータベース構造定義データ５を自動生成するので、データベース構造定義データ５の作成作業を省力化することができる。
さらに、データベース２の構造の変更があった場合でも、自動的にデータベース構造定義データ５にその変更内容が反映できるので、データベース構造定義データ５の保守作業の省力化ができる。
【００１９】
実施の形態３．
図９は、この発明の実施の形態３に係わるＸＭＬ／データベース連携装置のブロック図である。
この実施の形態３のＸＭＬ／データベース連携装置は、実施の形態１のＸＭＬ／データベース連携装置１に、データベース構造定義データ５を用いてデータベース２の構造を新たに設定してデータベース２を構築するデータベース構築手段３４をさらに有している点が異なっていて、その他は同様であるので、同様な部分の説明は省略する。
データベース構築手段３４は、ＸＭＬで記述されたデータベース構造定義データ５のテーブル名の要素をＤＢＭＳにデータベース２の実体の情報とし、フィールド名の要素をＤＢＭＳにデータベース２の属性の情報として送信する。ＤＢＭＳは受信したデータベース２の実体の情報と属性の情報を用いてデータベース２の構造を設定する。データベース構築手段３４は、コンピュータにより構成されていて、コンピュータの記憶手段に記憶されているプログラムをＣＰＵに読み込み、データベース構造定義データ５からデータベース２の実体の情報と属性の情報とを生成し、それら情報をコンピュータのインタフェースを介してデータベース２に出力する機能を有している。
【００２０】
このようなＸＭＬ／データベース連携装置は、データベース構造定義データからデータベースの構造を設定し、データベースを構築することができるので、既存のデータベース構造定義データを利用する場合に、データベース構築に必要な作業を省力化することができる。
【００２１】
実施の形態４．
図１０は、この発明の実施の形態４に係わるＸＭＬ／データベース連携装置のブロック図である。
この実施の形態４のＸＭＬ／データベース連携装置は、実施の形態１のＸＭＬ／データベース連携装置１の構造定義生成手段６の替わりに、既存の外部ＸＭＬデータ３５からデータベース構造定義データ５を生成する構造定義生成手段３６を有している点が異なっていて、その他は同様であるので、同様な部分の説明は省略する。
この構造定義生成手段３６は、外部ＸＭＬデータ３５の要素をデータベース構造定義データ５においてテーブル名要素に割り付ける。また、外部ＸＭＬデータ３５の要素の属性をそれぞれデータベース構造定義データ５においてフィールド名要素に割り付ける。このようにして外部ＸＭＬデータ３５からデータベース構造定義データ５を生成する。この構造定義生成手段３６は、コンピュータにより構成されていて、コンピュータの記憶手段に記憶されているプログラムをＣＰＵに読み込み、外部ＸＭＬデータ３５からデータベース構造定義データ５を生成し、そのデータベース構造定義データ５を記憶手段に記憶する機能を有している。
【００２２】
このようなＸＭＬ／データベース連携装置は、外部ＸＭＬデータからデータベース構造定義データを自動生成することができるので、既存のＸＭＬデータを利用する場合に、データベース構造定義データの作成作業を省力化することができる。
【００２３】
実施の形態５．
図１１は、この発明の実施の形態４に係わるＸＭＬ／データベース連携装置のブロック図である。
この実施の形態５のＸＭＬ／データベース連携装置は、実施の形態４のＸＭＬ／データベース連携装置１にデータベース構造定義データ３を用いてデータベース２の構造を新たに設定してデータベース２を構築するデータベース構築手段３４をさらに有している点が異なっていて、その他は同様であるので、同様な部分の説明は省略する。
このデータベース構築手段３４は、実施の形態３で説明したものと同様であるので、説明は省略する。既存の外部ＸＭＬデータ３５があるときに、構造定義生成手段３６がＸＭＬ文書のデータベース構造定義データ５を自動生成し、データベース構築手段３４がＸＭＬで記述されたデータベース構造定義データ５のテーブル名の要素をＤＢＭＳにデータベース２の実体の情報とし、フィールド名の要素をＤＢＭＳにデータベース２の属性の情報として送信する。ＤＢＭＳは受信したデータベース２の実体の情報と属性の情報とを用いてデータベース２の構造を設定する。このように、データベース２の構造が設定されるので、制御データ処理手段１０は、該当の外部ＸＭＬデータ３５を読み込み、自動生成されたデータベース構造定義データ５に基づいて、その外部ＸＭＬデータ３５をＳＱＬ文書のデータベース制御データ９に変換し、データベース２に送信する。データベース２では、このデータベース制御データ９に基づいて、データのデータベース２への登録、更新、検索および削除を行う。
【００２４】
このようなＸＭＬ／データベース連携装置は、既存のＸＭＬデータを利用する場合に、ＸＭＬデータからデータベースを構築するので、データベースの構築作業を省力化することができる。さらに、ＸＭＬデータの構造変更があった場合に、対応するデータベースを自動生成することができるので、データベースの保守作業を省力化することができる。
【図面の簡単な説明】
【００２５】
【図１】この発明の実施の形態１に係わるＸＭＬ／データベース連携装置のブロック図である。
【図２】実施の形態１のデータベースの実体関係図（Ｅ−Ｒ図）である。
【図３】データベースの実体「ＫＡＮＳＯＫＵＳＹＯ」のデータベース構造定義データである。
【図４】データベースの実体「ＴＥＬＥＭＥＴＥＲ」のデータベース構造定義データである。
【図５】ＸＭＬデータである。
【図６】データベースの実体「ＫＡＮＳＯＫＵＳＹＯ」のレコードの様子である。
【図７】データベースの実体「ＴＥＬＥＭＥＴＥＲ」のレコードの様子である。
【図８】この発明の実施の形態２に係わるＸＭＬ／データベース連携装置のブロック図である。
【図９】この発明の実施の形態３に係わるＸＭＬ／データベース連携装置のブロック図である。
【図１０】この発明の実施の形態４に係わるＸＭＬ／データベース連携装置のブロック図である。
【図１１】この発明の実施の形態５に係わるＸＭＬ／データベース連携装置のブロック図である。
【符号の説明】
【００２６】
１  ＸＭＬ／データベース連携装置、２  データベース、３  入出力データ、４  Ｅ−Ｒ図、５  データベース構造定義データ、６、３６  構造定義生成手段、９  データベース制御データ、１０  制御データ処理手段、３１  実体、３２  属性、３３  データベース構造取り込み手段、３４  データベース構築手段、３５  外部ＸＭＬデータ。
【図１】
2005157898.tif 000003
【図２】
2005157898.tif 000004
【図３】
2005157898.tif 000005
【図４】
2005157898.tif 000006
【図５】
2005157898.tif 000007
【図６】
2005157898.tif 000008
【図７】
2005157898.tif 000009
【図８】
2005157898.tif 000010
【図９】
2005157898.tif 000011
【図１０】
2005157898.tif 000012
【図１１】
2005157898.tif 000013