一种基于语义的异构数据模型映射方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2006年6月第17卷第3期装备指挥技术学院学报
Journal o f the Academy of Equipment Command &T echnolog y June 2006V ol.17 N o 3
收稿日期:2004 06 25
作者简介:陈建宇(1973-),男(汉族),云南罗平人,硕士,chjy0927_cn@; 张维明(1962-),男,教授,博士生导师.
一种基于语义的异构数据模型映射方法
陈建宇, 张维明, 刘 忠
(国防科技大学人文与管理学院,湖南长沙410073)
摘 要:针对虚拟样机应用集成中的数据交换问题,考虑到产品模型的表达方式,提出了基于语义的异构模型间映射描述方法;该方法将异构数据交换问题,从应用具体实现代码中隔离,以一定形式抽象地表示,在元模型层与数据实例层准确
地定义数据模型间的对应关系;最后,给出了实际采用此方法交换数据的典型事例。关 键 词:虚拟样机;产品模型;语义数据模型;语义异构;模型映射;数据转换
中图分类号:TP 319
文献标识码:A 文章编号:1673 0127(2006)03 0086 05
A Mapping Meth od Based on Seman tic Featu re
Between Heterogen eou s Data Model
CH EN Jianyu, ZH ANG Weim ing, LIU Zho ng
(School of Hum anities and M anagement,National U nivers ity of Defens e T echn ology,Ch angs ha H unan 410073,China)
Abstract :T he paper proposes a metho d that uses semantic featur e to build mapping correspon dence bo th in m eta m odel and model instance level betw een different pro duct data m odel to so lve data ex change betw een heterog eneous applications in virtual prototyping.T his metho d is both abstract and fo rmal to separate the data exchange from application im plementation,and som e ty pical ex am ples in engineer pr actice are show n.
Key words:virtual prototyping ;product m odel;semantic data m odel;semantic heter ogeneous;model mapping;data transfo rm
1 问题的提出
在虚拟样机研究中,面临的基础性也是最具挑战性的问题之一,就是如何将领域跨度较大的不同应用集成起来,这些应用是服务于设计、分析、试验、仿真评估等领域的计算机系统。通过已有的一些设计分析集成项目,如,COMBI (com puter integrated o bject oriented model for the building industr y)[1]的实施情况来看,在集成的设计、分析环境下,建立一个通用的产品数据模型
并以共享数据库的形式支持各种应用似乎不大现实,最大的困难在于:多个学科在各自固有领域建立起来的模型很难真正集成。原因在于:在设计与分析集成框架下,设计、分析、仿真与评估,这几个主要的环节之间的数据交换本质上是异构的。这种异构是由设计、分析等问题的范畴及语义表达方式的差别造成的,难以通过一种模型来统一地表达。
既然在产品建模领域,集成异构应用数据模型不大现实,但异构的应用之间又确实存在大量的相关产品描述信息的数据交换,而应用中点对
点的文件交换已被证明在系统复杂时不可行。因此,有必要寻求一种自动化或是半自动化的方法,来实现异构应用之间的数据集成。近年来,一种新的思路开始引起人们的注意:即在相互关联而又异构的数据模型间建立映射机制,这种映射机制应是形式化的,既便于人的理解,也应是计算机可处理的,这种映射机制成为异构应用间交换数据的辅助手段。
映射成为异构数据模型间交互的一种新的手段[2],它比较了模型间映射机制[3],比较了利用映射语言和文档表示方法进行模型间映射。这些研究基本上都是基于特定的应用以及特定的模型描述方式,在虚拟样机产品建模领域的研究开展得较少。特别是对映射机制,还有待更深入形式化研究,使得映射实现方式能有坚实的理论基础,从而在实现方式上有良好的可扩展性,以支持可能出现的复杂多变的异构模型映射情况。
由于EXPRESS语言表示的语义数据模型是虚拟样机中各种应用定义数据模型的主要手段,为此,本文提出了一种新的方法:通过考察语义数据模型的特征,以形式化的手段表示模型间映射的主要内容,对映射的描述包括模型层及实例层2个层次。模型层的映射表示不同模型之间可以刻画的对应关系;实例层利用模型层映射描述完成给定数据集之间的转换。
2 语义数据模型的语义特征
2.1 基本特征
由于以EXPRESS语言建立的产品模型描述,本质上是一种语义数据模型,因此,在讨论模型间的语义集成时,首先必须回顾一下语义数据模型的主要概念和基本的特点。
与传统的数据模型相比,语义数据模型主要是提供更加丰富的手段来支持对关系、数据抽象、继承、限制约束等数据建模领域中非常重要的概念表达,而这些表达方式又是由所谓的 语义特征来描述的。因此,首先讨论语义数据模型的基本表示元素!!!语义特征。
语义特征包括:分类(classification)、泛化/特化(gener alization/specification)、聚集(agg rega tion)、相连(asso ciation),建模的基本元素有以下3种。
1)实体(entity)。现实世界问题域的基本描述单元,应该单独考察的客观世界的客体。
2)IsA继承关系。表达实体间的子类/超类关系,子类实体是超类实体的特例,继承超类的全部属性,描述了现实世界实体的层次化结构。
3)关系的级联(cardinality)特性。级联描述了一实体作为另一实体的属性时的数量关系。常见的级联关系有以下几种:零对一(0∀1);一对一(1∀1);一对多(1∀N);多对多(M∀N)。
虽然语义数据模型的基本特征只有这几项,但它们之间复杂的组合使得模型间异构难以处理。
2.2 模式间映射
语义数据模型最主要的建模元素就是实体与属性(EXPRESS语言以属性表示实体间的关系),因此,考察模式映射的主要可能形式,即是实体间、属性间、实体与属性之间这几种可能的映射组合关系,模式之间可能的映射组合可用图1来
表示。
图1 模型间映射基本形态
图1中,表示空集。实体(属性)到的单向箭头表示删除实体(属性);到实体(属性)的单向箭头表示创建实体(属性)。可以看出,在模型间映射中,从模型的基本元素之间的映射来作划分,可能的映射方式有以下几种:实体#实体、实体#属性、属性#实体、属性#属性、#实体(创建实体)、实体#(删除实体)和属性#(删除属性)、#属性(创建属性)等。
以上分类只考虑了基本建模元素之间可能组合所形成的映射,如果考虑到关系的级联基数,实际的模型间映射就更加复杂了。为此,有必要用一种形式化的方法表示语义数据模型的主要建模特征,并在此基础上,对模型之间的映射做相应的描述。
3 模型及模型实例形式化表示
3.1 定 义
模式G用如下的4元组表示∃C,L E,L S,K%。其中:C为类的集合;L E是属性关系标号的集合; L S是泛化/特化关系标号集合,规定
&E!C∋L E∋C为表示关系的边的集合;
(S!C∋L S∋C为表示继承关系的边的集合;
87
第3期 陈建宇,等:一种基于语义的异构数据模型映射方法