JPH08161208A - Object structure converter - Google Patents
Object structure converterInfo
- Publication number
- JPH08161208A JPH08161208A JP6304502A JP30450294A JPH08161208A JP H08161208 A JPH08161208 A JP H08161208A JP 6304502 A JP6304502 A JP 6304502A JP 30450294 A JP30450294 A JP 30450294A JP H08161208 A JPH08161208 A JP H08161208A
- Authority
- JP
- Japan
- Prior art keywords
- conversion
- object definition
- definition
- schema
- converted
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明は、オブジェクト構造を変
換するオブジェクト構造変換装置に関するものである。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an object structure conversion device for converting an object structure.
【0002】計算機をとりまく環境の変化からオブジェ
クト管理システムを使用する計算機環境も、オブジェク
トサーバを中心とした集中型の環境から、高速なネット
ワークで接続された複数のワークステーション上で動作
するオブジェクト管理システムへと移行しつつある。Due to changes in the environment surrounding computers, the computer environment that uses an object management system is also a centralized environment centered around object servers, and an object management system that operates on a plurality of workstations connected by a high-speed network. Is moving to.
【0003】例えばデータベース管理システムを例にと
ると、いくつかの標準が定まり、性能や信頼性の点で成
熟しつつある関係データベースシステムが主流として使
用されており、関係データベースシステム上で作成され
た多数の応用が資産として蓄積されている。一方でデー
タベースの応用の高度化が進み、より複雑な構造を持つ
データをデータベースに格納する必要性からオブジェク
ト指向データベースシステムへの期待が高まっている。
それに伴い、いくつかのオブジェクト指向データベース
システムが実装され製品化されている。この際、データ
ベースシステムのモデルが異なり、あるモデルでは表現
できるスキーマを、他のモデルでは完全に表現し難い場
合であっても、変換を行ってデータの転送を可能にする
ことが望まれている。Taking a database management system as an example, for example, a number of standards have been established, and a relational database system, which is maturing in terms of performance and reliability, is mainly used, and is created on the relational database system. Many applications are accumulated as assets. On the other hand, the sophistication of database applications has advanced, and the need for storing data with a more complicated structure in a database has increased expectations for object-oriented database systems.
Along with this, some object-oriented database systems have been implemented and commercialized. At this time, it is desired to convert the schema that can be expressed by one model and the schema that can be expressed by another model so that data can be transferred even if it is difficult to completely express it in another model. .
【0004】[0004]
【従来の技術】通常、企業などで製品情報や顧客情報を
データベースを用いて管理する場合、企業内で全ての部
署が協調してデータベース化を行わない限り、さまざま
なデータベース管理システムが混在した中で部署ごとに
異なったデータベースが構築されていることが多い。各
部署がその部署内で必要な情報だけを管理、利用するだ
けであれば、このことはあまり問題にならない。2. Description of the Related Art Normally, when a company manages product information and customer information using a database, various database management systems are mixed unless all departments in the company cooperate to create a database. In many cases, different databases are built for each department. This is not a problem if each department manages and uses only the necessary information within the department.
【0005】しかし、管理部門などで複数の部署にまた
がって情報を利用したいという要求があっても、データ
ベースシステムやそのデータモデルの違いによってデー
タベースが統合できなく、相互に情報を利用できないこ
とが発生する。However, even if the management department or the like wants to use information across a plurality of departments, the database cannot be integrated due to the difference in the database system and its data model, and the information cannot be used mutually. To do.
【0006】データモデルの異なるデータベースシステ
ム間でデータベースを共有する場合、それぞれのデータ
ベースシステムのユーザは自分が属するデータベースシ
ステムのデータモデル(定義可能なスキーマの種類)に
応じた表現方法でスキーマを見ることを希望するであろ
う。その際、データモデルの表現能力の違いから、ある
データモデルで表現できるスキーマを、別のデータモデ
ルでは完全に表現できない問題が生じる。例えばあるデ
ータモデルではオブジェクト間の集約関連を構造型(str
uct type)で表現する。別のデータモデルに構造型とい
う概念がなければ、前者のデータモデルにもとづくスキ
ーマをそのまま後者で表現することができない。When sharing a database between database systems having different data models, the user of each database system views the schema by a representation method according to the data model (definable schema type) of the database system to which the user belongs. Would like to. At this time, there is a problem that a schema that can be expressed by one data model cannot be completely expressed by another data model because of the difference in the expression capability of the data model. For example, in one data model, the aggregate relationship between objects
uct type). If there is no concept of structural type in another data model, the schema based on the former data model cannot be expressed as it is in the latter.
【0007】このような問題が起こった場合、従来は、
データモデルの表現能力に差があるために表現能力が高
い(例えばオブジェクト指向データモデル)データモデ
ルのスキーマを、表現能力の低いデータデモルに変換す
ることは不可能であり、双方の共通部分だけで対応づけ
して済ませていた。When such a problem occurs, conventionally,
It is impossible to convert the schema of a data model with a high expression capability (for example, an object-oriented data model) to a data demol with a low expression capability due to the difference in the expression capability of the data models, and only the common parts of both sides are used. I was done with it.
【0008】[0008]
【発明が解決しようとする課題】しかしながら、一方踏
み込んでスキーマ表現の持つ意味の一部を変更してでも
変換を可能にすることでスキーマ変換の有用性を高める
ことができる場合も存在する。例えば集約を構造型を用
いずに表現することで、構造型の概念がないデータモデ
ルに変換することが可能になる。しかし、スキーマ表現
の持つ意味を変えるような変換を行った場合は、その変
換によって新たに生じる制約条件を満たすことを保証す
ることが必要となる。However, there is a case in which the usefulness of the schema conversion can be enhanced by making it possible to convert even if a part of the meaning of the schema expression is changed by stepping on one side. For example, by expressing the aggregate without using the structural type, it is possible to convert the data model into a data model that does not have the concept of the structural type. However, when a conversion that changes the meaning of the schema expression is performed, it is necessary to guarantee that the constraint condition newly generated by the conversion is satisfied.
【0009】本発明は、これらの問題を解決するため、
変換要求から抽出したオブジェクト定義と変換先のオブ
ジェクト定義との差分を抽出し、この差分を打ち消す変
換操作を行って変換先の定義情報に変換し、更に必要に
応じて制約条件を生成し、この変換した定義情報および
制約条件をもとにデータの複写などを行い、従来不可能
であったデータモデルの異なるデータベース間の相互の
データ転送を実現することを目的としている。The present invention solves these problems.
The difference between the object definition extracted from the conversion request and the object definition of the conversion destination is extracted, the conversion operation that cancels this difference is performed to convert to the definition information of the conversion destination, and constraint conditions are generated as necessary. The purpose is to realize mutual data transfer between databases with different data models, which was impossible in the past, by copying data based on the converted definition information and constraints.
【0010】[0010]
【課題を解決するための手段】図1を参照して課題を解
決するための手段を説明する。図1において、オブジェ
クト定義抽出手段13は、変換元のオブジェクト定義を
抽出するものである。[Means for Solving the Problems] Means for solving the problems will be described with reference to FIG. In FIG. 1, the object definition extracting means 13 extracts the object definition of the conversion source.
【0011】オブジェクト定義送出手段14は、変換し
た後の変換先のオブジェクト定義(あるいは変換先の言
語にしたオブジェクト定義文)を変換先に送出するもの
である。The object definition sending means 14 sends the converted object definition after conversion (or the object definition statement in the converted language) to the conversion destination.
【0012】オブジェクト変換手段15は、変換元のオ
ブジェクト定義と変換先のオブジェクト定義との差分を
抽出し、この差分を打ち消す変換操作および制約条件の
生成を行って変換先のオブジェクト定義に変換するもの
である。The object conversion means 15 extracts a difference between the object definition of the conversion source and the object definition of the conversion destination, performs a conversion operation for canceling the difference and generates a constraint condition, and converts the object definition of the conversion destination. Is.
【0013】[0013]
【作用】本発明は、図1に示すように、オブジェクト定
義抽出手段13が変換要求からオブジェクト定義を抽出
し、オブジェクト変換手段15がこの抽出した変換元の
オブジェクト定義と変換先のオブジェクト定義との差分
を抽出し、この差分を打ち消す変換操作を行って変換先
のオブジェクト定義情報に変換し、この変換されたオブ
ジェクト定義、あるいはこの変換されたオブジェクト定
義を変換先の言語にしたオブジェクト定義文をもとにデ
ータの変換を行うようにしている。According to the present invention, as shown in FIG. 1, the object definition extracting means 13 extracts the object definition from the conversion request, and the object converting means 15 extracts the object definition of the conversion source and the object definition of the conversion destination. Extract the difference, perform the conversion operation to cancel this difference and convert it to the object definition information of the conversion destination, and also convert this object definition or the object definition statement that makes this converted object definition the language of the conversion destination. I am trying to convert the data to and.
【0014】この際、変換操作のときに、オブジェクト
定義の意味を変える操作を行う場合には当該変換操作の
同一性を保証するために補う制約条件を生成し、この制
約条件と変換したオブジェクト定義、あるいはこの制約
条件と変換したオブジェクト定義を変換先の言語にした
オブジェクト定義文をもとにデータの変換を行うように
している。At this time, in the conversion operation, when an operation that changes the meaning of the object definition is performed, a constraint condition to be supplemented to guarantee the identity of the conversion operation is generated, and the constraint condition and the converted object definition are generated. Alternatively, data conversion is performed based on this constraint condition and the object definition statement in which the converted object definition is in the conversion destination language.
【0015】また、差分を打ち消す変換操作を行う際
に、予め登録した変換パターン情報から差分に対応する
ものを選択し、当該選択した変換パターン情報に従い変
換操作を行うようにしている。Further, when performing the conversion operation for canceling the difference, the one corresponding to the difference is selected from the previously registered conversion pattern information, and the conversion operation is performed according to the selected conversion pattern information.
【0016】従って、変換要求から抽出したオブジェク
ト定義と変換先のオブジェクト定義との差分を抽出し、
この差分を打ち消す変換操作を行って変換先の定義情報
に変換し、更に必要に応じて制約条件を生成し、この変
換した定義情報および制約条件をもとにデータの複写な
どを行うことにより、従来不可能であったデータモデル
の異なるデータベース間の相互のデータ転送を実現する
ことが可能となった。Therefore, the difference between the object definition extracted from the conversion request and the object definition of the conversion destination is extracted,
By performing a conversion operation that cancels this difference and converting it to the definition information of the conversion destination, further generating constraint conditions as necessary, and copying data etc. based on this converted definition information and constraint conditions, It has become possible to realize mutual data transfer between databases with different data models, which was impossible in the past.
【0017】[0017]
【実施例】次に、図1から図11を用いて本発明の実施
例の構成および動作を順次詳細に説明する。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, the construction and operation of an embodiment of the present invention will be sequentially described in detail with reference to FIGS.
【0018】図1は、本発明の1実施例構成図を示す。
図1において、オブジェクト1、2、・・・nは、オブ
ジェクト管理システム1、2、・・・nに格納されてい
るオブジェクトである。FIG. 1 shows a block diagram of an embodiment of the present invention.
1, objects 1, 2, ... N are objects stored in the object management system 1, 2 ,.
【0019】オブジェクト管理システム1、2、・・・
nは、オブジェクト1、2、・・・nを管理するシステ
ムであって、それぞれ固有のデータモデルのもとでオブ
ジェクトをそれぞれ管理するものである。Object management systems 1, 2, ...
n is a system for managing the objects 1, 2, ... N, and manages each object under its own data model.
【0020】通信制御装置31は、通信回線を介して他
の通信制御装置31、11との間で通信を行い、データ
の転送を相互に行うものである。異種オブジェクト変換
装置12は、通信回線を介して接続した異種のデータモ
デルをもつオブジェクト管理システム1、2、・・・n
を統括制御し、変換元のオブジェクト定義を変換先のオ
ブジェクト定義に変換して通知し、変換元のデータを変
換先に転送して格納させたりなどするものであって、オ
ブジェクト定義抽出手段13、オブジェクト定義送出手
段14、オブジェクト変換手段15、オブジェクト言語
生成機能18などから構成されるものである。The communication control device 31 communicates with other communication control devices 31 and 11 via a communication line to mutually transfer data. The heterogeneous object conversion device 12 includes object management systems 1, 2, ... N having heterogeneous data models connected via communication lines.
To convert the object definition of the conversion source to an object definition of the conversion destination and notify the converted data, and to transfer and store the data of the conversion source to the conversion destination. It comprises an object definition sending means 14, an object converting means 15, an object language generating function 18, and the like.
【0021】オブジェクト定義抽出手段13は、変換要
求から変換元のオブジェクト定義を抽出するものであ
る。オブジェクト定義送出手段14は、オブジェクト定
義(あるいは変換先の言語にしたオブジェクト定義文)
などを変換先に送出するものである。The object definition extraction means 13 extracts the object definition of the conversion source from the conversion request. The object definition sending means 14 defines the object definition (or the object definition statement in the conversion destination language).
Is sent to the conversion destination.
【0022】オブジェクト変換手段15は、変換元のオ
ブジェクト定義と変換先のオブジェクト定義との差分を
抽出し、この差分を打ち消す変換操作を行って変換先の
オブジェクト定義に変換などするものであって、スキー
マ変換機能16、制約条件生成機能17などから構成さ
れるものである。The object conversion means 15 extracts a difference between the object definition of the conversion source and the object definition of the conversion destination, performs a conversion operation for canceling the difference, and converts the object definition of the conversion destination. It comprises a schema conversion function 16 and a constraint condition generation function 17.
【0023】スキーマ変換機能16は、あるオブジェク
ト管理システムの変換元のオブジェクトのスキーマ情報
を、変換先のオブジェクトのスキーマ情報に変換するも
のである(図2、図3を用いて詳述する)。The schema conversion function 16 converts the schema information of the conversion source object of a certain object management system into the schema information of the conversion destination object (described in detail with reference to FIGS. 2 and 3).
【0024】制約条件生成機能17は、スキーマ変換機
能16がオブジェクト定義の意味を変える操作を行う場
合に、変換操作の同一性を保証するために補う制約条件
を生成するものである。The constraint condition generation function 17 is for generating a constraint condition to be supplemented in order to guarantee the identity of the conversion operation when the schema conversion function 16 performs an operation that changes the meaning of the object definition.
【0025】オブジェクト言語生成機能18は、変換し
た変換先のオブジェクト定義および制約条件から、変換
先の言語の定義文を生成するものである。データモデル
情報19は、各オブジェクト管理システム1、2、・・
・nが持つデータモデルに関する情報である。The object language generation function 18 is for generating a definition sentence in the conversion destination language from the converted conversion destination object definition and constraint conditions. The data model information 19 corresponds to each object management system 1, 2, ...
-It is information about the data model of n.
【0026】変換パターン情報20は、スキーマの変換
パターンの情報である(図11参照)。オブジェクト言
語構文情報21は、オブジェクト言語を生成する際に必
要となるオブジェクト言語の構文情報である。The conversion pattern information 20 is information on the conversion pattern of the schema (see FIG. 11). The object language syntax information 21 is the syntax information of the object language required when generating the object language.
【0027】出力装置22は、各種出力装置(表示装
置、印字装置など)である。入力装置23は、各種入力
装置(キーボード、マウスなど)である。次に、図2の
フローチャートに示す順序に従い、図1の構成の動作を
詳細に説明する。The output device 22 is various output devices (display device, printing device, etc.). The input device 23 is various input devices (keyboard, mouse, etc.). Next, the operation of the configuration of FIG. 1 will be described in detail according to the order shown in the flowchart of FIG.
【0028】図2において、S1は、変換要求を受信す
る。これは、図1の異種オブジェクト変換装置12が通
信回線を介して、例えば“データベースシステム1のス
キーマ1をデータベースシステム2に複製せよ。”とい
う変換要求を受信する。In FIG. 2, S1 receives a conversion request. For this, the heterogeneous object conversion device 12 of FIG. 1 receives a conversion request, for example, "copy schema 1 of database system 1 to database system 2" via a communication line.
【0029】S2は、オブジェクト定義を抽出する。こ
れは、S1の変換要求中から変換元のオブジェクト定義
を抽出、例えばデータベース1からスキーマ1のオブジ
ェクト定義情報“表1(属性a:型a、属性b:型b・
・・)を抽出する。In step S2, the object definition is extracted. This is to extract the conversion source object definition from the conversion request of S1, for example, the object definition information of the schema 1 from the database 1 "table 1 (attribute a: type a, attribute b: type b.
・ ・) Is extracted.
【0030】S3は、変換元と変換先のデータベースシ
ステムのデータモデルを比較して差分を抽出する。これ
は、変換元と変換先のデータベースシステムのデータモ
デルを、図1のデータモデル情報19からそれぞれ取り
出し、その差分を抽出する。In step S3, the data models of the conversion source and conversion destination database systems are compared to extract a difference. In this case, the data models of the conversion source and conversion destination database systems are respectively extracted from the data model information 19 of FIG. 1, and the difference between them is extracted.
【0031】S4は、差分を打ち消すための変換操作を
変換パターン情報から選択して決定する。これは、図1
の変換パターン情報20から、S3で抽出した差分に該
当する変換パターン情報を選択して決定する。In step S4, a conversion operation for canceling the difference is selected from the conversion pattern information and determined. This is
The conversion pattern information corresponding to the difference extracted in S3 is selected and determined from the conversion pattern information 20.
【0032】S5は、決定した変換操作を実行する。変
換操作が複数あるときは複数回繰り返す。S6は、最終
的に得られたオブジェクト定義情報を、オブジェクト言
語構文情報を元にして変換先システムへのデータベース
定義文(オブジェクト定義文)を生成する。In step S5, the determined conversion operation is executed. If there are multiple conversion operations, repeat multiple times. In step S6, a database definition statement (object definition statement) for the conversion destination system is generated from the finally obtained object definition information based on the object language syntax information.
【0033】S7は、生成したデータベース定義文(オ
ブジェクト定義文)を変換先データベースシステムに送
出する。S8は、データを変換元から変換先に転送す
る。In step S7, the generated database definition statement (object definition statement) is sent to the conversion destination database system. In S8, the data is transferred from the conversion source to the conversion destination.
【0034】S9は、転送先でデータベース定義文(オ
ブジェクト定義文)で定義されたデータベースにデータ
を格納する。以上によって、変換要求を受信した図1の
異種オブジェクト変換装置11が変換元のオブジェクト
定義を抽出し、この抽出したオブジェクト定義と変換先
のオブジェクト定義との差分を抽出し、この差分を打ち
消すための変換操作を行うと共に変換操作の同一性を保
証するために補う制約条件を生成し、変換したオブジェ
クト定義と制約条件とをもとに変換先の言語にしたオブ
ジェクト定義文を生成し、変換先に送出した後、データ
を変換元から変換先に転送してオブジェクト定義文をも
とにデータベースに格納する。これにより、データモデ
ルの異なるデータベースシステム(オブジェクト管理シ
ステム)の間でデータを相互に転送して複写などするこ
とが可能となる。In step S9, the data is stored in the database defined by the database definition statement (object definition statement) at the transfer destination. As described above, the heterogeneous object conversion device 11 of FIG. 1 that receives the conversion request extracts the object definition of the conversion source, extracts the difference between the extracted object definition and the object definition of the conversion destination, and cancels this difference. Perform the conversion operation and generate the constraint condition to compensate for guaranteeing the identity of the conversion operation, generate the object definition statement in the destination language based on the converted object definition and the constraint condition, and After sending, the data is transferred from the conversion source to the conversion destination and stored in the database based on the object definition statement. As a result, data can be mutually transferred and copied between database systems (object management systems) having different data models.
【0035】図3は、本発明の具体例説明図を示す。図
3において、S11は、変換元のオブジェクト管理シス
テムAのデータモデルAを図1のデータモデル情報19
から取り出すと共に、変換先のオブジェクト管理システ
ムBのデータモデルBを図1のデータモデル情報19か
ら取り出す様子を示す。FIG. 3 is a diagram illustrating a specific example of the present invention. In FIG. 3, in S11, the data model A of the conversion source object management system A is set to the data model information 19 of FIG.
The data model B of the object management system B of the conversion destination is extracted from the data model information 19 of FIG.
【0036】S12は、S11で取り出した変換元のデ
ータモデルAと、変換先のデータモデルBとの差分を抽
出する。S13は、変換前のオブジェクトのスキーマ1
および制約条件1を示す。これらは、オブジェクト管理
システムAの変換前のものである。In step S12, the difference between the conversion source data model A extracted in step S11 and the conversion destination data model B is extracted. S13 is the schema 1 of the object before conversion
And constraint condition 1 are shown. These are before conversion of the object management system A.
【0037】S14は、変換途中のオブジェクトのスキ
ーマ2および制約条件1+変換操作1に伴う制約条件を
示す。これらは、S13の変換前のオブジェクトのスキ
ーマ1および制約条件1について、S12で差分を打ち
消すために必要な変換操作1を施したものである。S14 shows the schema 2 of the object being converted and the constraint condition 1 + the constraint condition associated with the conversion operation 1. These are obtained by subjecting the schema 1 and constraint condition 1 of the object before the conversion in S13 to the conversion operation 1 necessary for canceling the difference in S12.
【0038】S15は、変換後のオブジェクトのスキー
マ3および制約条件1+変換操作1に伴う制約条件+変
換操作2に伴う制約条件を示す。これらは、S14の変
換途中のオブジェクトのスキーマ2および制約条件1+
変換操作1に伴う制約条件について、S12で差分を打
ち消すために必要な変換操作2を施したものである。S15 shows the schema 3 of the converted object and the constraint condition 1 + the constraint condition associated with the conversion operation 1 + the constraint condition associated with the conversion operation 2. These are the schema 2 and constraint condition 1+ of the object being converted in S14.
The constraint condition associated with the conversion operation 1 is the conversion operation 2 necessary for canceling the difference in S12.
【0039】S16は、S15の変換後のオブジェクト
のスキーマ3および制約条件1+変換操作1に伴う制約
条件+変換操作2に伴う制約条件を、オブジェクト管理
システムBに送出する様子を示す。これにより、以降
は、この送出を受けた変換後のオブジェクトのスキーマ
3および制約条件1+変換操作1に伴う制約条件+変換
操作2に伴う制約条件を使用して、オブジェクト管理シ
ステムBにおいて、オブジェクト管理システムAから転
送されてきたデータを処理(例えばデータベースに書き
込む)。In step S16, the schema 3 of the object after the conversion in step S15 and the constraint condition 1 + the constraint condition associated with the conversion operation 1 + the constraint condition associated with the conversion operation 2 are sent to the object management system B. As a result, thereafter, in the object management system B, the object management is performed using the schema 3 and the constraint condition 1 + the constraint condition associated with the conversion operation 1 + the constraint condition associated with the conversion operation 2 of the converted object that has been sent. The data transferred from the system A is processed (for example, written in a database).
【0040】以上のように、変換元のデータモデルA
と、変換先のデータモデルBとの差分を抽出し、変換前
のオブジェクトのスキーマ1および制約条件1について
変換操作1を施し、変換途中のオブジェクトのスキーマ
2および制約条件1+変換操作1に伴う制約条件を生成
し、更に変換操作2を施し、変換後のオブジェクトのス
キーマ3および制約条件1+変換操作1に伴う制約条件
+変換操作2に伴う制約条件を生成し、これをもとに変
換先で変換元から転送されてきたデータを変換してデー
タベースに格納などすることができ、異なるデータモデ
ルを持つデータベース間でデータの転送を行うことが可
能となった。As described above, the conversion source data model A
And the data model B of the conversion destination are extracted, the conversion operation 1 is performed for the schema 1 and the constraint condition 1 of the object before conversion, and the schema 2 and the constraint condition 1 + the conversion operation 1 of the object in the middle of conversion are constrained. A condition is generated, a conversion operation 2 is further performed, and a schema 3 of the object after conversion and a constraint condition 1 + a constraint condition associated with the conversion operation 1 + a constraint condition associated with the conversion operation 2 are generated. The data transferred from the conversion source can be converted and stored in the database, and the data can be transferred between databases having different data models.
【0041】図4は、本発明のスキーマ変換例を示す。
図4の(a)は変換前を示し、図4の(b)は変換後を
示す。ここで、図4の(a)は入れ子構造のスキーマで
あり、図4の(b)は平坦化したスキーマであって、前
者を後者にスキーマ変換した例である。詳述すれば、図
4の(a)のスキーマが変換元のスキーマとして図示の
ように、集約を構造型で表現し、アソシエーションを集
合型構造子を用いて表現するデータモデルで表されてい
る。また、人型の属性「顔」は写真型の実体をオブジェ
クトの識別性を用いて参照している。このスキーマを構
造型かや集合型構成子を持たないデータモデルで表し、
なおかつ人型の属性「顔」から写真型への参照は属性の
値を用いた参照を行いたい場合について考える。する
と、スキーマ変換の結果は図4の(b)のようになる。
この場合のスキーマ変換記述を図4の(c)に示す。FIG. 4 shows a schema conversion example of the present invention.
4A shows the state before the conversion, and FIG. 4B shows the state after the conversion. Here, (a) of FIG. 4 is a schema of a nested structure, and (b) of FIG. 4 is a flattened schema, which is an example in which the former is converted into the latter. More specifically, as shown in the schema of FIG. 4A as the conversion source schema, the schema is represented by a data model in which an aggregate is expressed by a structural type and an association is expressed by using a set type structurator. . In addition, the human-type attribute “face” refers to a photo-type entity by using the distinctiveness of the object. This schema is represented by a data model that does not have a structural type or a set type constructor,
In addition, let us consider a case where it is desired to perform reference using the attribute value for the reference from the human-type attribute “face” to the photo type. Then, the result of the schema conversion becomes as shown in FIG.
The schema conversion description in this case is shown in FIG.
【0042】図4の(c)は、スキーマ変換の記述例を
示す。ここでは、図4の(a)の入れ子構造のスキーマ
を図4の(b)の平坦化したスキーマ構造に変換したと
きのスキーマの記述例を示す。FIG. 4C shows a description example of schema conversion. Here, a description example of the schema when the schema of the nested structure of FIG. 4A is converted into the flattened schema structure of FIG. 4B is shown.
【0043】図4の(d)は、スキーマ変換によって新
たに発生した制約条件の例を示す。これは、図4の
(a)の入れ子構造のスキーマを、図4の(b)の平坦
化したスキーマに変換したので、この変換後の状態では
表現できない(変換操作の同一性を保証するために補
う)制約条件の例を示す。FIG. 4D shows an example of the constraint condition newly generated by the schema conversion. This is because the schema of the nested structure of FIG. 4A is converted to the flattened schema of FIG. 4B, and therefore cannot be expressed in the state after this conversion (to guarantee the sameness of the conversion operation. An example of a constraint condition is shown below.
【0044】図5は、本発明のスキーマの変換操作の分
類例を示す。これは、図3のS12で変換元のデータモ
デルAと変換先のデータモデルBとの差分を打ち消すた
めの変換操作の分類例であって、■を付した ■型の内容定義の変換 ■継承階層の変換 ■型自身の変換 ■型の間の関係の変換 などに分類できる。以下図6から図10を用いてその具
体例をそれぞれ説明する。FIG. 5 shows an example of classification of schema conversion operations according to the present invention. This is a classification example of conversion operations for canceling the difference between the data model A of the conversion source and the data model B of the conversion destination in S12 of FIG. Hierarchy conversion ■ Type conversion ■ Type relationship conversion Specific examples will be described below with reference to FIGS. 6 to 10.
【0045】(1) 型の内容定義の変換:図6は、本
発明のキーフィールドと参照フィールドの追加例を示
す。これは、型の内容定義の変換例、即ち、型に定義さ
れている属性やメソッドの追加削除や変更に関する変換
操作の例である。この例に示す、キーフィールドの追加
とキーフィールドへの参照フィールドの追加は、オブジ
ェクトの識別性で保証しているデータモデルとキーフィ
ールドを用いてオブジェクトの識別を値ベースで行うデ
ータモデルの間でスキーマ変換を行う時に必要となる操
作である。(1) Conversion of type content definition: FIG. 6 shows an example of adding a key field and a reference field of the present invention. This is an example of conversion of the content definition of a type, that is, an example of conversion operation related to addition / deletion or modification of attributes or methods defined in the type. In this example, the addition of the key field and the addition of the reference field to the key field are performed between the data model that guarantees the identity of the object and the data model that uses the key field to identify the object based on the value. This is an operation that is required when performing schema conversion.
【0046】(2) 継承階層の変換:図7は、本発明
の継承階層の変換例を示す。これは、継承階層の変換
例、即ち型の間に継承階層を定義可能なデータモデルと
そうでないデータモデルとの間のスキーマ変換で必要と
なる変換操作の例である。この例に示す、継承関係を平
坦化する操作は継承階層の上位にある型の属性等をその
型に定義されているものとして再定義する。この操作に
伴ってその型に属する実体の集合的包括関係や、変換前
に上位階層にあった型の変更の伝搬を制約によって保証
しなければスキーマ変換の前後でスキーマの意味が異な
る可能性がある。(2) Conversion of inheritance hierarchy: FIG. 7 shows an example of conversion of the inheritance hierarchy of the present invention. This is an example of conversion of the inheritance hierarchy, that is, an example of a conversion operation required for schema conversion between a data model that can define an inheritance hierarchy between types and a data model that does not. The operation of flattening the inheritance relationship shown in this example redefines the attributes of a type higher in the inheritance hierarchy as those defined in the type. If this operation does not guarantee the collective inclusive relation of the entities belonging to the type or the propagation of the type change in the upper hierarchy before the conversion, the meaning of the schema may be different before and after the schema conversion. is there.
【0047】また、この操作の逆操作として、共通の属
性を抽出して継承階層を定義する操作も同様な制約管理
を伴う。 (3) 型自身の変換:型システムが異なるデータモデ
ル間でスキーマ変換を行う際の型の置き換えに伴う変換
操作である。ここに分類される操作ではリテラルなどの
基本型の間での置き換えや読み替えを取り扱う。抽象デ
ータ型や型構成子を用いた複合型の変換は次の(4)の
型の間の関係の変換で取り扱う。As an inverse operation of this operation, an operation of extracting a common attribute and defining an inheritance hierarchy also involves similar constraint management. (3) Conversion of type itself: This is a conversion operation that accompanies type replacement when schema conversion is performed between data models having different type systems. The operations categorized here deal with replacement and reading between basic types such as literals. Conversion of a composite type using an abstract data type or a type constructor is handled in (4) conversion of relation between types.
【0048】(4) 型の間の関係の変換:図8は、本
発明の入れ子項目の展開例を示す。これは、型の間の関
係の変換例、即ち型システムが異なるデータモデル間で
スキーマ変換を行う際に集約やアソシエーションの表現
方法が異なる場合に必要となる変換操作の例である。こ
の例に示す、入れ子項目の展開は、構造型の属性を型構
成子を用いて表現しているスキーマを、属性を強調して
表現する時に用いる。(4) Transformation of relationships between types: FIG. 8 shows an example of expansion of nested items according to the present invention. This is an example of conversion of relationships between types, that is, an example of conversion operation required when the representation method of aggregation or association is different when performing schema conversion between different data models of different type systems. The expansion of the nested items shown in this example is used when the schema in which the attribute of the structural type is expressed by using the type constructor is emphasized and expressed.
【0049】例えば図8では、人型の属性「住所」を構
造型を用いて表現している。これを属性(カラム)を用
いて構造型を展開することで、構造型を持たないデータ
モデルで表現が可能になる。For example, in FIG. 8, the human-type attribute “address” is expressed using the structural type. By expanding this structure type using attributes (columns), it is possible to represent it in a data model that does not have a structure type.
【0050】もう1つの例では、属性「家族」を構造型
で表現しているものを属性として展開せずにレコードと
して展開することも可能である。この場合、変換前のス
キーマが人型の実体(インスタンス)の集合を表現する
のに対して、変換後のスキーマでは人の家族関連を実体
として表現することになる。つまり各々の実体は「ある
人」と「その家族である人」の組みの集合を表す。In another example, it is also possible to develop a structure type representation of the attribute "family" as a record without expanding it as an attribute. In this case, the schema before conversion expresses a set of human-type entities (instances), whereas the schema after conversion expresses the family relation of a person as an entity. That is, each entity represents a set of a set of "a person" and "a person in the family."
【0051】この変換操作はスキーマの意味を変えるた
めに、やはり制約によって参照の一貫性や外部キーの一
貫性を保証する必要がある。また、構造型をカラムに展
開する操作の逆操作は構造的な変換だけを用いて定義で
きるが、レコードに展開した場合の逆操作は集約として
の意味がスキーマから失われるために何らかの方法で集
約を抽出しなければならない。Since this conversion operation changes the meaning of the schema, it is necessary to guarantee the consistency of the reference and the consistency of the foreign key by the constraint. Also, the reverse operation of expanding a structured type to a column can be defined using only structural transformation, but the reverse operation when expanding to a record is aggregated in some way because the meaning of the aggregate is lost from the schema. Must be extracted.
【0052】型構成子を用いて集合(アソシエーショ
ン)を表現しているスキーマも、図9に示すように、同
様に属性を主体にして展開する操作が定義可能である。
これも、前述した集約の場合と同様にカラムとレコード
を用いて展開することが可能であるが、属性(カラム)
に展開する場合、集合のもつ要素の数が可変であるとい
う性質はスキーマ上から失われる。また、集合の要素内
で重複を許さないといった制約があればそれを保証する
必要がある。この操作の逆操作は定義可能である。In a schema expressing a set (association) by using a type constructor, it is possible to define an operation for expanding mainly with attributes as shown in FIG.
This can also be expanded by using columns and records as in the case of aggregation described above, but the attributes (columns)
When expanded to, the property that the number of elements of the set is variable is lost from the schema. Also, if there is a constraint that duplicates are not allowed within the elements of the set, it must be guaranteed. The reverse of this operation is definable.
【0053】一方、レコードに展開する場合、構造型の
時と同様にスキーマが表現する実体が変わるために、ス
キーマの持つ意味が変わってしまう。この操作の逆操作
についても構造型の場合と同じ問題が生じる。On the other hand, when expanding to a record, the meaning of the schema changes because the entity expressed by the schema changes as in the case of the structure type. The reverse operation of this operation has the same problem as the structural type.
【0054】また、図10に示すように、関係データモ
デルの関数従属性に基づいた正規化を行うスキーマ変換
操作を用いて型の分割を定義することができる。この操
作は型の属性内で関数従属性のある属性を分離し、新し
い型として定義し、そのにキーフィールドとキーへの参
照フィールドを追加する操作を行うことで、型を2つの
型に分割する操作を定義する。Further, as shown in FIG. 10, it is possible to define the type division by using a schema conversion operation for performing normalization based on the functional dependency of the relational data model. This operation splits a type into two types by separating the attributes that have a functional dependency within the attributes of the type, defining it as a new type, and adding a key field and a reference field to the key to it. Define the operation to be performed.
【0055】以上の図6から図10で取り上げた変換パ
ターンの例のなかでいくつかの変換は変換前と変換後っ
とでオブジェクトのスキーマの持つ意味を等価に保つた
めの制約条件が必要になるものがある。このような変換
操作によって新たに生じた制約条件は制約条件生成機能
17を用いて生成する。Among the examples of the conversion patterns taken up in FIGS. 6 to 10, some conversions require constraint conditions for keeping the meanings of the object schemas equivalent before and after conversion. There is something. A constraint condition newly generated by such a conversion operation is generated using the constraint condition generation function 17.
【0056】図11は、本発明のスキーマ変換関数(部
分)例を示す。スキーマ変換言語は、図5で示したスキ
ーマ変換操作の分類に基づいて、1つのスキーマ操作を
1つの関数に対応づけた言語である。従って、一連のス
キーマ操作は、スキーマ変換関数の集まりで表現でき
る。この変換関数の例を図11に示す。記述例として、
既述した図4の(a)にスキーマ変換を適用した図4の
(b)のスキーマ変換言語の記述を図4の(c)に示
す。FIG. 11 shows an example of the schema conversion function (part) of the present invention. The schema conversion language is a language in which one schema operation is associated with one function based on the classification of schema conversion operations shown in FIG. Therefore, a series of schema operations can be expressed by a set of schema conversion functions. An example of this conversion function is shown in FIG. As a description example,
A description of the schema conversion language of FIG. 4B in which the schema conversion is applied to the above-described FIG. 4A is shown in FIG. 4C.
【0057】[0057]
【発明の効果】以上説明したように、本発明によれば、
変換要求から抽出したオブジェクト定義と変換先のオブ
ジェクト定義との差分を抽出し、この差分を打ち消す変
換操作を行って変換先の定義情報に変換し、この変換し
た定義情報をもとにデータの複写などを行う構成を採用
しているため、従来不可能であったデータモデルの異な
るデータベース間の相互のデータ転送を実現することが
できるようになった。また、変換操作のときに、オブジ
ェクト定義の意味を変える操作を行う場合には当該変換
操作の同一性を保証するために補う制約条件を生成し、
この制約条件と変換したオブジェクト定義、あるいはこ
の制約条件と変換したオブジェクト定義を変換先の言語
にしたオブジェクト定義文をもとにデータの変換を行う
構成を採用しているため、スキーマ表現の持つ意味を変
えるような変換操作を行った場合でも変換前と変換後と
で同一性を保証することができる。これらにより、 (1) データモデルの異なるオブジェクト管理システ
ム間でオブジェクトのスキーマの転送を相互に行うこと
が可能となり、オブジェクトの再構築の作業を軽減する
ことができる。As described above, according to the present invention,
The difference between the object definition extracted from the conversion request and the object definition of the conversion destination is extracted, the conversion operation is performed to cancel this difference, the conversion is performed to the definition information of the conversion destination, and data is copied based on this converted definition information. By adopting a configuration for performing such as, it has become possible to realize mutual data transfer between databases with different data models, which was impossible in the past. In addition, when performing an operation that changes the meaning of an object definition during a conversion operation, a constraint condition that is supplemented to ensure the sameness of the conversion operation is generated,
The meaning of the schema expression is because a structure is adopted in which data is converted based on this constraint condition and the converted object definition, or the object definition statement in which this constraint condition and the converted object definition are in the target language. Even when a conversion operation that changes the is performed, the sameness can be guaranteed before and after the conversion. As a result, (1) it becomes possible to mutually transfer the schema of an object between object management systems having different data models, and the work of reconstructing an object can be reduced.
【0058】(2) 異なるデータモデルのオブジェク
ト管理システム間でオブジェクトのスキーマの相互転送
が可能となったことにより、オブジェクトの共通化や再
利用が可能となった。(2) Since object schemas can be mutually transferred between object management systems of different data models, objects can be standardized and reused.
【図1】本発明の1実施例構成図である。FIG. 1 is a configuration diagram of an embodiment of the present invention.
【図2】本発明の動作説明フローチャートである。FIG. 2 is a flowchart explaining the operation of the present invention.
【図3】本発明の具体例説明図である。FIG. 3 is a diagram illustrating a specific example of the present invention.
【図4】本発明のスキーマ変換例である。FIG. 4 is a schema conversion example of the present invention.
【図5】本発明のスキーマ変換操作の分類例である。FIG. 5 is a classification example of the schema conversion operation of the present invention.
【図6】本発明のキーフィールドと参照フィールドの追
加例である。FIG. 6 is an example of adding a key field and a reference field according to the present invention.
【図7】本発明の継承階層の変換例である。FIG. 7 is an example of conversion of an inheritance hierarchy according to the present invention.
【図8】本発明の入れ子項目の展開例である。FIG. 8 is an example of expansion of nested items according to the present invention.
【図9】本発明の集合項目の展開例である。FIG. 9 is an example of expanding set items according to the present invention.
【図10】本発明の型の分割と結合例である。FIG. 10 is an example of a mold division and combination of the present invention.
【図11】本発明のスキーマ変換関数(部分)例であ
る。FIG. 11 is an example of a schema conversion function (part) of the present invention.
11、31:通信制御装置 12:異種オブジェクト変換装置 13:オブジェクト定義抽出手段 14:オブジェクト定義送出手段 15:オブジェクト変換手段 16:スキーマ変換機能 17:制約条件生成機能 18:オブジェクト言語生成機能 19:データモデル情報 20:変換パターン情報 21:オブジェクト言語構文情報 22:出力装置 23:入力装置 11, 31: communication control device 12: heterogeneous object conversion device 13: object definition extraction means 14: object definition transmission means 15: object conversion means 16: schema conversion function 17: constraint condition generation function 18: object language generation function 19: data Model information 20: Conversion pattern information 21: Object language syntax information 22: Output device 23: Input device
Claims (3)
構造変換装置において、 変換要求からオブジェクト定義を抽出するオブジェクト
定義抽出手段と、 この抽出した変換元のオブジェクト定義と変換先のオブ
ジェクト定義との差分を抽出し、この差分を打ち消す変
換操作を行って変換するオブジェクト変換手段とを備
え、 この変換されたオブジェクト定義、あるいはこの変換さ
れたオブジェクト定義を変換先の言語にしたオブジェク
ト定義文をもとにデータの変換を行うことを特徴とする
オブジェクト構造変換装置。1. An object structure conversion device for converting an object structure, wherein an object definition extracting means for extracting an object definition from a conversion request, and a difference between the extracted source definition object definition and the conversion destination object definition are extracted. , Object conversion means for converting by performing a conversion operation for canceling this difference, and converting the data based on the converted object definition or the object definition statement in which the converted object definition is converted into the target language. An object structure conversion device characterized by performing.
の意味を変える操作を行う場合には当該変換操作の同一
性を保証するために補う制約条件を生成し、この制約条
件と変換したオブジェクト定義、あるいはこの制約条件
と変換したオブジェクト定義を変換先の言語にしたオブ
ジェクト定義文をもとにデータの変換を行うことを特徴
とする請求項1記載のオブジェクト構造変換装置。2. In the conversion operation, when an operation that changes the meaning of the object definition is performed, a constraint condition to be supplemented to guarantee the identity of the conversion operation is generated, and the constraint condition and the converted object definition are generated. 2. The object structure conversion device according to claim 1, wherein the data conversion is performed based on an object definition statement in which the constraint condition and the converted object definition are in a conversion destination language.
予め登録した変換パターン情報から当該差分に対応する
ものを選択し、当該選択した変換パターン情報に従い変
換操作を行うことを特徴とする請求項1あるいは請求項
2記載のオブジェクト構造変換装置。3. When performing a conversion operation for canceling the difference,
3. The object structure conversion apparatus according to claim 1, wherein a conversion pattern information registered in advance is selected corresponding to the difference and a conversion operation is performed according to the selected conversion pattern information.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6304502A JPH08161208A (en) | 1994-12-08 | 1994-12-08 | Object structure converter |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6304502A JPH08161208A (en) | 1994-12-08 | 1994-12-08 | Object structure converter |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH08161208A true JPH08161208A (en) | 1996-06-21 |
Family
ID=17933811
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6304502A Pending JPH08161208A (en) | 1994-12-08 | 1994-12-08 | Object structure converter |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH08161208A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009223644A (en) * | 2008-03-17 | 2009-10-01 | Nec Corp | Mapping unit, mapping method and program |
JP2011180826A (en) * | 2010-03-01 | 2011-09-15 | Nec Corp | System and method for automatically generating cobol variable definition |
JP2012027690A (en) * | 2010-07-23 | 2012-02-09 | Fujitsu Ltd | Information integration program, apparatus and method |
CN108463781A (en) * | 2016-01-13 | 2018-08-28 | 罗伯特·博世有限公司 | Method and system for information transmission |
-
1994
- 1994-12-08 JP JP6304502A patent/JPH08161208A/en active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009223644A (en) * | 2008-03-17 | 2009-10-01 | Nec Corp | Mapping unit, mapping method and program |
JP2011180826A (en) * | 2010-03-01 | 2011-09-15 | Nec Corp | System and method for automatically generating cobol variable definition |
JP2012027690A (en) * | 2010-07-23 | 2012-02-09 | Fujitsu Ltd | Information integration program, apparatus and method |
CN108463781A (en) * | 2016-01-13 | 2018-08-28 | 罗伯特·博世有限公司 | Method and system for information transmission |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7124144B2 (en) | Method and apparatus for storing semi-structured data in a structured manner | |
CN105359141B (en) | Supporting a combination of flow-based ETL and entity relationship-based ETL | |
Li et al. | Capability based mediation in TSIMMIS | |
US7797336B2 (en) | System, method, and computer program product for knowledge management | |
US7673282B2 (en) | Enterprise information unification | |
US20020059566A1 (en) | Uni-level description of computer information and transformation of computer information between representation schemes | |
US7707159B2 (en) | Method and apparatus for storing semi-structured data in a structured manner | |
Dilts et al. | Using knowledge-based technology to integrate CIM databases | |
CN114218218A (en) | Data processing method, device and equipment based on data warehouse and storage medium | |
Wu | Enterprise integration in e-government | |
US8099663B2 (en) | Apparatus and method for document synchronization | |
Aberer et al. | The prospects of publishing using advanced database concepts | |
Kornatzky et al. | Conceptual design of object-oriented database schemas using the binary-relationship model | |
CN103699746B (en) | CADDS5 piping three-dimensional design method based on data base and system | |
JPH08161208A (en) | Object structure converter | |
Niemi | A seven-tuple representation for hierarchical data structures | |
Fisun et al. | Knowledge management applications based on user activities feedback | |
Stouffs et al. | On the road to standardization | |
Xingjian | A database design method for finite element analysis | |
King et al. | Information management trends in office automation | |
JOUNAIDI et al. | CONVERTING OF AN XML SCHEMA TO AN OWL ONTOLOGY USING A CANONICAL DATA MODEL. | |
Xu | Research on an Unstructured Data Processing Strategy for Software Development | |
Norrie et al. | Coordination system modelling | |
Kung et al. | Persistent topic maps for knowledge and Web content management | |
KR20000061300A (en) | Method for CALS Integrated Database System and Operation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040511 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040712 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20050809 |