(计算机科学与技术专业论文)基于er图的关系模型到xml转换技术研究.pdf_第1页
(计算机科学与技术专业论文)基于er图的关系模型到xml转换技术研究.pdf_第2页
(计算机科学与技术专业论文)基于er图的关系模型到xml转换技术研究.pdf_第3页
(计算机科学与技术专业论文)基于er图的关系模型到xml转换技术研究.pdf_第4页
(计算机科学与技术专业论文)基于er图的关系模型到xml转换技术研究.pdf_第5页
已阅读5页,还剩65页未读 继续免费阅读

(计算机科学与技术专业论文)基于er图的关系模型到xml转换技术研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

中文摘要摘要随着计算机及w e b 技术的发展,通过其来存储和传递的信息越来越多,越来越复杂。在信息存储方面,关系数据库是最成熟也是应用最广泛的一种技术。x m l则为数据交换提供了一个很好的中间工具。对于许多使用x m l 作为信息交换与处理格式的应用过程而言,将关系数据库文件向x m l 文档转换,就成为一种必然、迫切的要求和经常性的行为,研究关系数据向x m l 转换技术具有非常重要的价值。将关系数据w 曲化也就是将扁平结构的二维表转化成树形结构的x m l 文档。为了保证转化过程中语义的较少流失,使转化后的x m l 文档更准确地表达数据库中的原有语义,本文采取了支持多种数据类型约束和命名空间,具有可扩展优势的x m ls c h e m a 作为转换后的模式,改善了先前使用d t d 无法约束标记文本内部结构的不足。利用间接转换方法,通过逆向工程首先从关系表中提取出e r 图,利用e r 图简洁直观的表达,使独立存储的关系表之间的联系充分体现出来。考虑到数据库本身在创建时可能存在不规范的因素,本文提出了以函数依赖和包含依赖这两种数据依赖为出发点对关系表语义进行正确性和完整性检验和补充的分析方法,并通过已有的s q l 查询进行理论支持验证。在e r 图的基础上加入关系表语义完善的步骤,保证了关系表语义的正确性以及使隐藏在关系表中未能体现出来的语义被挖掘出来,这就为下一步的转换工作提供了良好的语义源。通过对表语义信息的扩充,依据关系表中主外键相互参照关系和转换过程中对实体,实体属性以及二元联系类型1 :1 ,1 :n ,m n 等基于x m ls c h e m a 标记模板转换规则,提出了关系表向x m ls c h e m a 的转换算法,实现了关系模型向x m ls e h e m a 的转换,在实例中验证了算法的正确性并根据生成的x m ls c h e m a 完成向x m l 的转换。关键词:关系模式;逆向工程;x m ls c h e m a ;x m l ;数据依赖英文摘要a b s t r a c tw i t ht h ed e v e l o p m e n to fc o m p u t e ra n dw 曲t e c h n o l o g y ,m o r ea n dm o r ei n f o r m a t i o ni ss t o r e da n dt r a n s m i t t e db yt h e m o nt h ea s p e c to fi n f o r m a t i o ns t o r a g et h er e l a t i o n a ld a t a b a s ei so n eo ft h em o s tm a t u r ea n dt h em o s tw i d e l y - u s e dt e c h n o l o g y ,w h i l ex m lp r o v i d e sa ne x c e l l e n ti n t e r m e d i a t e - t o o lt oe x c h a n g ed a t a f o rt h ea p p l i c a t i o np r o c e s so fu s i n gx m la saf o r m a to fi n f o r m a t i o ne x c h a n g ea n dm a n a g e m e n ti th a sb e c o m ean e c e s s i t ya n dar e g u l a rb e h a v i o rt oc o n v e r tt h er e l a t i o n a l d a t a b a s ed o u c u m e n ti n t ox m ld o c u m e n t i ti so ft h ei m p o r t a n tv a l u et om a k er e s e a r c ho nt h et r a n s f o r m a t i o nf r o mr e l a t i o n a ld a t at ox m l t op u tt h er e l a t i o n a ld a t ao nt h ew e bi st oe x c h a n g et h ef l a ts t r u c t u r eo ft w o - d i m e n s i o n a lt a b l e sf o rt h eh i e r a r c h i c a lt r e ef o r mo fx m ld o c u m e n t i no r d e rt ok e e pt h el e s sl o s so fs e m a n t i ct r a n s l a t i o na n dm a k et h et r a n s l a t e dx m ld o c u m e n tt oe x p r e s st h eo r i g i n a ls e m a n t i c so fd a t a b a s ew e l la n dt r u l y , t h i sp a p e ru s e sx m ls c h e m at h a ts u p p o r t sav a r i e t yo fd a t a - t y p e sa n dn a m e s p a c ea n dh a st h ea d v a n t a g eo fe x p a n s i b i l i t ya st h ef i n a lt r a n s l a t i o nf o r m ,w h i c hi m p r o v e st h el i m i t a t i o no fd t d ,u n a b l et or e s t r i c tt h ei n t e r n a ls t r u c t u r eo ft h et e x tc o n t e n t t h e ni ta d o p t st h ei n d i r e c tc o n v e r s i o nm e t h o dw h i c he x t r a c t se rm o d e lf r o mr e l a t i o n a lt a b l et h r o u g hr e v e r s ee n g i n e e r i n g w i t ht h eh e l po fc o n c i s ea n di n t u i t i o n i s t i ce x p r e s s i o no fe rm o d e l ,t h eu n a t t a c h e dt a b l e sw i l lb el i n k e db yt h er e l a t i o n s h i p ,w h i c hc a l lb er e f l e c t e d t a k i n gt h en o n - s t a n d a r df a c t o r so fd a t a b a s ei n t oa c c o u n ta tt h et i m eo fc r e a t i o nt h i sp a p e rp u t sf o r w a r da l la n a l y t i c a la p p r o a c ht h a tc a nc h e c ko u tt h ec o r r e c t n e s so fr e l a t i o n a ls e m a n t i c sa n dc o m p l e m e n tt h ei n t e g r a l i t yo fs e m a n t i c s i tc o n t a i n sf u n c t i o n a ld e p e n d e n c ya n di n c l u s i o nd e p e n d e n c ya st h et w om a i nf a c o r so ft a b l es e m a n t i c sa n dt h e ya r es u p p o r t e db yt h ee x i s t e n tt h e o r yo fs q lq u e r y a f t e rt h ea d d i t i o no fp e r f e c tr e l a t i o n a ls e m a n t i c sb a s e do ne rm o d e lt h i sm e t h o de n s u r e st h ec o r r e c t n e s so fs e m a n t i c sa n dh a st h eu n s h o w no n eh i d d e ni nt h et a b l ed u gu p ,w h i c hp r o v i d e sg o o ds e m a n t i cs o u r c ef o rt h en e x tp h a s eo fc o n v e r s i o n n e x t ,t h i sp a p e re x t e n d si n f o r m a t i o no ft h eo r i g i n a lt a b l e a c c o r d i n gt ot h er e f e r e n c er e l a t i o n s h i pb e t w e e nt h ep r i m a r yk e ya n dt h ef o r e i g nk e ya n dt h ex m ls c h e m a - m a r k e dt e m p l a t et r a n s l a t i o nr u l eo fe n t i t y , a t t r i b u t eo fe n t i t ya n dt h eb i n a r yr e l a t i o nt y p eo f1 :l ,l :na n dm n ,t h ep a p e rl i s t st h ec o n v e r s i o na r i t h m e t i cf r o mr e l a t i o n a lt a b l et ox m ls c h e m aa n df i n i s h e st h ec o n v e r s i o nt ox m ls c h e m aa n d英文摘要p r o v e st h ec o r r e c t n e s so fa r i t h m e t i ci nt h ea p p l i c a t i o na n dg i v e st h ef o r mo fx m lb a s e do nt h eg e n e r a t e dx m ls c h e m a k e yw o r d s :r e l a t i o n a ls c h e m a ;r e v e r s ee n g i n e e r i n g :x m ls c h e m a ;x m l ;d a t ad e p e n d e n c y大连海事大学学位论文原创性声明和使用授权说明原创性声明本人郑重声明:本论文是在导师的指导下,独立进行研究工作所取得的成果,撰写成硕士学位论文:基王星图的差丕搓型至4 型坠鼗逸这苤婴究:一。除论文中已经注明引用的内容外,对论文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本论文中不包含任何未加明确注明的其他个人或集体已经公开发表或未公开发表的成果。本声明的法律责任由本人承担。学位论文作者签名:垃垒学位论文版权使用授权书本学位论文作者及指导教师完全了解大连海事大学有关保留、使用研究生学位论文的规定,即:大连海事大学有权保留并向国家有关部门或机构送交学位论文的复印件和电子版,允许论文被查阅和借阅。本人授权大连海事大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,也可采用影印、缩印或扫描等复制手段保存和汇编学位论文。同意将本学位论文收录到中国优秀博硕士学位论文全文数据库( 中国学术期刊( 光盘版) 电子杂志社) 、中国学位论文全文数据库( 中国科学技术信息研究所) 等数据库中,并以电子出版物形式出版发行和提供信息服务。保密的论文在解密后遵守此规定。本学位论文属于:保密口在年解密后适用本授权书。不保密0 ( 请在以上方框内打“,)敝作者签名:静位导师签名:酒言硎日期:如矽年夕月日基于e r 图的关系模型到x m l 转换技术研究第1 章绪论1 1 论文的研究背景数据库技术产生于2 0 世纪6 0 年代中期,发展至今仅4 0 多年的历史,却已经经历了三代演变,形成了坚实的理论基础、成熟的商业产品和广泛的应用领域。关系数据库系统因其具有高性能、高可靠性以及丰富的软件工具等优势,企业大量的数据仍存储在关系数据库里【1 1 。而随着网络经济和知识经济的发展,企业间的信息交换日益密切,不同系统间的数据交互日趋增多。可扩展标记语言x m l 【2 】【3 】( e x t e n s i b l em a r k u pl a n g u a g e )提供了一种格式独立,与平台和应用程序无关的语言。它的嵌套、结构自描述等优点为数据交换提供了简单、灵活的手段;其基于w e b 结构化的信息交换机制为w e b 上的数据表示和传输提供了一个数据交换平台。x m l 的这些重要特点使其很快成为网上数据发布和数据交换的标准,大大推进了企业与企业间、实体与实体问业务交流的自动化。因此,对于许多使用x m l 作为信息交换与处理格式的应用过程而言,将关系数据库文件向x m l 文档转换,就成为一种必然、迫切的要求和经常性的行为【4 】。从构成成分与数据结构分析,关系数据库中的基本要素是关系、属性和元组;x m l 文档中的基本要素是元素( 子元素) 、属性。x m l 文档整体具有层次结构,但由于它的组成部分( 元素和属性) 是由文档与标签构成,因而将其看作是半结构化的;关系数据却是完全结构化的。x m l 作为半结构化数据,其特征是先有数据( 文档) ,再进行数据描述;关系数据作为结构化数据,其特征是预先定义数据的模式,然后插入实际数据。关系模式是一种平面模式,语义相对贫乏,而x m l文档是一种层次嵌套的模式,其中包含大量的语义信息。自身建构与框架的不同与本质特征的差异,决定了关系数据和x m l 文档之间的转换不会是一种简单整齐的一一映射,而是一个需要认真设计的具有“精细”特征的过程【4 1 。通常转换过程主要分为两个部分:模式转换和数据转换,在数据转换之前必须要进行模式的转换。第1 章绪论1 2 国内外研究现状国内外学者对关系数据与x m l 文档之间的相互转换都做了很多研究。针对关系数据到x m l 的单方向转换,研究思想大致分为两种。第一种是直接转换,将关系数据库中的数据通过规则转换成x m l 模式。( 1 ) n e t 5 】算法从扁平关系模式中获取嵌套结构,对每个表重复实行嵌套操作,得到层次化的x m l 模式,自动实现关系模式向x m l 模式的映射。( 2 ) c o t 5 】算法在n e t 算法的基础上由关系数据结构获取部分语义约束关系后,转换为一个完整的x m ls c h e m a 。( 3 ) f t 【6 】算法以一对一的方式直接实现从关系数据向x m l 数据的转换,映射扁平关系模式到扁平x m l 模式。( 4 ) r t s 7 】算法根据设计良好的关系数据库的数据特点和语义约束,结合x m l树型结构特点,提取五个转换模式,将关系模式转化成x m ls c h e m a 。( 5 ) 文献 8 】提出了基于d o m 树实现关系模式向x m l 模式转换的方法,综合利用数据类型、模式结构等已有信息,发掘其中的结构信息和语义信息,构造两个不同模式中元素之间的映射关系,达到语义映射的目的。( 6 ) k r r 9 】方法基于k e y 关系模式重构,采用有向图作为抽象数据模式,实现整体数据模式向x m l 模式的转换。第二种是间接转化,将关系数据先转化成“中间模型 形式,然后由“中间模型 转化成x m l 形式。( 1 ) s i l k r o u t e 1 0 l 】中间件提出了一个普遍的映射框架,它由声明查询语言r x l( r e l a t i o n a lt ox m lt r a n s f o r m a t i o nl a n g u a g e ) 将关系数据生成虚拟的规范x m l视图,然后将所需转换的x m l 视图对应的v i e wf o r e s t 结构,通过v f c a 算法合成更复杂的v i e wf o r e s t 最终生成结果x m l 文档,实现数据交换。( 2 ) 成都电子科技大学王明文等人利用对象模型与x m ls c h e m a 文档有比较好的对应关系优势,通过对象定义语言( o b j e c td e f i n i t i o nl a n g u a g e ,o d l ) 描述的对象数据模型为中间模型,进行关系模式到x m ls c h e m a 的转换 1 2 j 。基- j :e r 图的关系模型到x m l 转换技术研究( 3 ) 复旦大学许建军等人根据数据库e r 图( e n t i t y - r e l a t i o n s h i pd i a g r a m ) 所蕴含的丰富语义,通过实体和联系类型转换规则,实现了关系数据到d t d 的转换 1 3 1o直接转换和间接转换两者的出发角度都是一样的:要最大限度地挖掘、保留关系数据库中数据原有的丰富语义,减少语义丢失,使转换后形成的x m l 模式尽可能准确地再现关系数据的语义“原貌 。现存方法的不足体现在以下三个方面:( 1 ) 现有的转化方法缺乏对数据源语义的检验和完善,考虑到最为一般的情况,若是数据库在创建时存在不规范的操作,那么由其反映的现实语义则存在误差,因此若是按照不规范的关系数据进行转换那么相对应的x m l 文档所反映的信息也存在错误性。( 2 ) 在关系模型到x m l 的直接映射过程中,缺乏从整体挖掘关系模式的隐含语义步骤,只是将关系数据的相应内容依据既定的规则转化成x m l 所包含的各层元素,这样在总体语义把握上就比较欠缺。( 3 ) 间接转换思想的重心放在了中间模型的建立,有的中间模型还需要新的语言进行定义,这就加大了转化任务的难度和复杂度,不利于实际应用。而有的间接转化是将关系模式转换成d t d ,由于该模式缺少对实际数据类型的约束支持,在转化过程中就无法完全保留细节上的语义,存在语义流失现象。1 3 论文的研究内容本文在参阅大量文献的基础上,融合了其中的部分思想,对现存方法的不足作了改进,采用间接转换方法以关系数据库形成的模式为出发点,利用逆向工程反推出e r 图,从e r 图中提炼出实体以及实体和实体间联系的语义,对其反应的全部语义进行正确性和完整性验证,规范和完善了语义体现。然后应用简单明了的主外键相互参照特点进行各关系匹配,根据两种模式基本要素的对应转换规则,通过转化算法完成两者的转换。在转化规则上利用x m ls c h e m a 定义的灵活性将转化规则细化,形成较统一的转化模板,为以后规则集的制定做了铺垫。在e r 模型辅助下将关系模型转化为x m ls c h e m a 的过程如图1 1 所示。一3 第1 章绪论图1 1 关系模型到x m ls c h e m a 的转换流程f i g 1 1t h et r a n s l a t i o np r o c e s sf r o mr e l a t i o n a ls c h e m at ox m ls c h e m a1 4 论文的组织结构全文共分六章。第1 章绪论。概述了论文的研究背景,国内外研究现状和存在的问题以及论文的研究内容,提出了论文的思想路线。第2 章关系模型和语义依赖。主要介绍了关系模型的数据结构,简要阐述和分析了关系数据库的语义依赖,并对关系数据库的概念模型e r 图和扩展的e e r图做了基本描述。第3 章x m l 相关理论。介绍了x m l 文档框架组成,对约束x m l 文档的两种模式d t d 和x m ls c h e m a 做了分析和比较,并介绍了x m l 的两种解析器和显示x m l 数据的两个建议规范。第4 章关系模型到x m ls c h e m a 的转换。主要介绍了验证语义正确性和完整性的两种方法,对基于x m ls c h e m a 标记的转换规则做了详细分析,依据规则提出了关系模型到x m ls c h e m a 转化的算法。第5 章模式的转化应用。通过实例给出了基于e r 图的两种数据模式转化的过程,验证了算法的可行性,并在已有的x m ls c h e m a 基础上生成x m l 文档。第6 章总结和展望。基于e r 图的关系模型到x m l 转换技术研究第2 章关系数据模型与关系模式的语义体现数据库方法的一个基本特征就是通过隐藏数据存储的细节,提供层次的数据抽象。它的结构包括数据类型、数据间的联系和施加在数据上的约束。数据模型( d a t am o d e l ) 是一个可用于描述数据库结构的概念集合,它提供了为获得数据抽象所必须的工具【1 4 1 。在关系数据库中,模型的数据结构和数据依赖都蕴含着关系数据的丰富语义。2 1 关系模型的数据结构关系模型的数据结构只包含单一的结构关系,在用户看来,数据的逻辑结构就是一张扁平的二维表。而二维表是建立在集合代数的基础上,有着严格的数学概念,从集合论的角度阐述关系数据结构的形式化定义如下:( 1 ) 定义2 1 ( 域( d o m a i n ) ) :域是一组具有相同数据类型的值的集合。关系表中体现的域就是属性的取值范围。( 2 ) 定义2 2 ( 笛卡尔积( c a r t e s i a np r o d u c t ) ) :给定一组域d l ,d 2 ,d n ,这些域中可以是相同的域。d l ,d 2 ,d n 的笛卡尔积为d lx d e x xd a = ( d l ,d 2 ,d n ) ld i d i ,i = l ,2 ,n ) 。其中每一个元素( d l ,d 2 ,“) 叫做一个n 元组( n t u p l e ) 或简称元组( t u p l e ) 。元素中的每一个值d i 叫做一个分量( c o m p o n e n t ) 。( 3 ) 定义2 3 ( 关系( r e l a t i o n ) ) :d lx d 2 x x d n 的子集叫做在域d l ,d 2 ,d n 上的关系,表示为r ( d l ,d 2 ,d n ) 。r 表示关系的名字,n 是关系的目或度( d e g r e e ) 。关系中的每个元素是关系中的元组。当n = l 时,称该关系为单元关系( u n a r yr e l a t i o n ) 或一元关系。当n - - 2 时,称该关系为二元关系( b i n a r yr e l a t i o n ) 。关系是笛卡尔积的有限子集,所以关系也是一个二维表,表的每行对应一个元组,表的每列对应一个域。域可以相同,为了加以区分说明,则为每列起一个名字,称为属性( a t t r i b u t e ) 。n 目关系必有n 个属性。若关系中的某属性组能唯一地标识一个元组,则称该属性组为候选码( c a n d i d a t ek e y ) 。若一个关系有多个候选码,则选定其中一个为主码( p r i m a r yk e y ) 。第2 章关系数据模型与关系模式的语义体现( 4 ) 定义2 4 ( 关系模式) :关系的描述称为关系模式( r e l a t i o ns c h e m a ) 。形式化地表示为r ( u ,d ,d o m ,f ) ,r 称为关系名,u 为组成该关系的属性名集合,d 为属性组u 中属性所来自的域,d o m 为属性向域的映向集合,f 为属性间数据的依赖关系集合。一般情况下属性组u 中属性所来自的域d 和属性到域的映射d o m 对模式的影响不大,也可以将其看作是一个三元组:r 。在实际应用中,一般把关系模式描述为:关系名( 属性l ,属性2 ,属性n ) 。2 2 关系数据的语义范畴关系数据库存储的不仅是实际应用的具体数据,而且也把应用中的语义联系通过约束存储在表中。这些语义就通过函数依赖和多值依赖等概念进行体现。数据依赖是一个关系内部属性与属性之间的一种约束关系。这种约束关系是通过属性间值的相等与否体现出来的数据间相关联系,是数据内在的性质,是语义的体现。数据依赖有很多类型,其中最重要的是函数依赖( f u n c t i o n a ld e p e n d e n c y ,f d ) 和多值依赖( m u l t i v a l u e dd e p e n d e n c y , m v d ) 【1 5 】。( 1 ) 定义2 5 ( 函数依赖) 1 6 】:设r ( u ) 是属性集u 上的关系模式。x ,y 是u的子集。若对于r ( u ) 的任意一个可能的关系r ,r 中不可能存在两个元组在x 上的属性值相等,而在y 上的属性值不等,则称x 函数确定y 或y 函数依赖于x ,记作x y 。例如,姓名一年龄这个函数依赖只有在该班级没有同名人的条件下才成立,班级中若是有同名人,则年龄就不再函数依赖于姓名。这只能根据语义来确定。( 2 ) 定义2 6 ( 多值依赖) :在r ( u ) 的任一关系r 中,如果存在元组t ,s 使得t 【x - s x 】,那么就必然存在元组w ,v e r ( w ,v 可以与s ,t 相同) ,使得w x - - v x =t x 】,而w y 叫,w 【z 】= s z 】,v y - s y ,v z - - - t z ( 即交换s ,t 元组的y 值所得的两个新元组必在r 中) ,则y 多值依赖于x ,记为x 一一y 。其中x ,y 是u 的子集,z = u 一汁y 【1 5 1 。( 3 ) 定义2 7 ( 主码) :设k 为r 中的属性或属性组合,若k _ u( u 完全函数依赖于k ) 则k 为r 的候选码( c a n d i d a t ek e y ) 。若候选码多于一个,则选定其中的一个为主码( p r i m a r yk e y ) 。基于e r 图的关系模型到x m l 转换技术研究( 4 ) 定义2 8 ( 外码) :关系模式r 中属性或属性组x 并非r 的码,但x 是另一个关系模式的码,则称x 是r 的外部码( f o r e i g nk e y ) ,也称外码【15 1 。( 5 ) 定义2 9 ( 包含依赖) :设r ( u ) 是属性集u 上的关系模式。x ,y 是u 的子集,如果x c - y ,即x 是y 的子集,则称x 包含依赖于y 。2 3 语义的展现e r 图实体联系( e n t i 妒r e l a t i o n s h i pa p p r o a c h ) 方法是概念模型的一种,它于1 9 7 6年由p p s c h e n 提出,该方法对信息世界进行建模,能方便、准确地表示出信息世界中的常用概念以及它们之间的联系,因此模型中蕴藏着丰富的语义。该方法通过e r 图( e rd i a g r a m ) 来展现。e r 图提供了表示实体型、属性和联系的方法 1 5 】:( 1 ) 实体型:用矩形表示,矩形框内写明实体名。( 2 ) 属性:用椭圆形表示,并用无向边将其与相应的实体型连接起来。( 3 ) 联系:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体型连接起来,同时在无向边旁标上联系的类型( 1 :1 ,l :n 或m :n ) 。一对一联系( 1 :1 )如果对于实体集a 中的每一个实体,实体集b 中至多有一个实体与之联系,反之亦然,则称实体集a 与实体集b 具有一对一联系,记作1 :1 。例如,学校中,一栋学生公寓只有一个管理员,而一个管理员只负责此公寓,则学生公寓与管理员之间具有一对联系。一对多联系( 1 :n )如果对于实体集a 中的每一个实体,实体集b 中有1 1 个实体( 1 1 0 ) 与之联系,反之,对于实体集b 中的每一个实体,实体集a 中至多只有一个实体与之联系,则称实体集a 与实体集b 有一对多联系,记为1 :n 。例如,一栋学生公寓有若干间学生宿舍,而学生宿舍都归属于该公寓,则学生公寓与宿舍之间具有一对多联系。多对多联系( m :n )第2 章关系数据模型与关系模式的语义体现如果对于实体集a 中的每一个实体,实体集b 中有1 1 个实体( n 0 ) 与之联系,反之,对于实体集b 中的每一个实体,实体集a 中也有m 个实体( m 0 )与之联系,则称实体集a 与实体集b 具有多对多联系,记为m :n 。例如,学生公寓存放着若干清洁工具,而清洁工具可以分别存放在多个公寓中。完整的e r 图实例如图2 1 所示。图中显示了五个用矩形框表示的实体类型:管理员,学生公寓,宿舍,学生和清洁工具,各个实体类型又有其对应的属性,实体与实体间存在四个联系,根据不同的实际情况给出了联系类型。从图中可以清晰地看出各个实体的特点以及它们之间的关联性。图2 1e r 图实例f i g 2 1t h ee x a m p l eo fe rd i a g r a m关系模型中各个组成成分与e r 模型中的概念有一一对应的关系,如表2 1 所示。通过这种对应,e r 模型全面地反映出关系模型中的语义,这为本文的研究转化做了最基本的准备。- 8 基于e r 图的关系模型到x m l 转换技术研究表2 1e r 模型与关系模式之间的对应关系t a b 2 1c o r r e s p o n d i n gr e l a t i o n s h i pb e t w e e ne rm o d e la n dr e l a t i o n a ls c h e m ae r 模型关系模型实体类型l :l 或l :n 联系类型m :n 联系类型n 元联系类型简单属性复合属性多值属性值集合码属性“实体”关系外码( 或“联系”关系)“联系”关系和两个外码“联系”关系和n 个外码属性简单成员属性的集合关系和外码域主( 或辅) 码2 4e r 模型的扩展e e r 模型上节讨论的e r 模型已经可以表达“传统 数据库应用中的关系模式,也以体现了充分的语义,但是随着时代的发展,新的应用比传统的商业和工业中的数据处理更为复杂,为了尽可能准确和清晰地表达这些要求,在e r 模型的基础上进行了延伸和扩展,引入e e r 模型( e n h a n c e d e r ,增强的e r 或者e x t e n d e d e r ,拓展的e r ) 来辅助e r 图对关系数据库中的数据进行语义建模。2 4 1 超类和子类在e e r 模型中,类被称为实体的集合或汇集。在超类子类( 或i s a ) 联系下,子类s 中的实体必须是一个超类c 实体的一个子集,记作c s ,它们之间总是有这样的包含关系:s _ c c 。例如,e m p l o y e e 实体类型可以有许多实体的子群,子群可以被进一步细分s e c r e t a r y 、e n g i n e e r 、m a n a g e r 、t e c h n i c i a n 、s a l a r i e d e m p l o y e e 、h o u r l ye m p l o y e e 等等。每个子群都称为e m p l o y e e 实体类型的子类,e m p l o y e e 实体类型对于这样的每个子类来说被称为超类。一个超类和它的任一个子类之间的联系称之为超类子类联系或简称类子类联系【1 4 1 ( 也被称为i s a 关系) 。第2 章关系数据模型与关系模式的语义体现2 4 2 特化和泛化特化是一个过程,它定义了一个实体类型的子类集合,这样的实体类型被称为特化的超类。例如子类f s e c r e t a r y ,e n g i n e e r ,t e c h n i c i a n 的集合是超类e m p l o y e e 的一个特化,在e m p l o y e e 的实体中通过实体的工作类型进行识别,而子类 s a l a r i e de m p o l y e e ,h o u r l ye m p l o y e e l 的集合则是基于付薪方式特化的。图2 2e m p l o y e e 实体的三个特化f i g 2 2t h l e es p e c i a l i z a t i o n so fe m p l o y e ee m p l o y e e 的三个特化: s e c r e t a r y ,t e c h n i c i a n ,e n g i n e e r ) , m a n a g e r , s a l a r i e de m p l o y e e ,h o u r l ye m p l o y e e ) 。如图2 2 所示,圆圈中的d 表示特化用户自判定子类不相交。泛化则表示从给定的实体类型定义出一个概括实体类型的过程。它是一个抽象的逆过程,在这个逆过程中忽略一些实体类型间的差异,识别它们的共同特质,并将它们概括( g e n e r a l i z e d ) 为单个超类。图2 3 中所示的实体类型c a r 和t r u c k ,它们可以被概括成实体类型v e h i c l e ,如图2 4 所示。c a r 和t r u c k 都是概括超类( g e n e r a l i z e ds u p e r c l a s s ) v e h i c l e 的子判1 4 1 。基于e r 图的关系模型到x m l 转换技术研究图2 3 两个实体类型c a r 和t r u c kf i g 2 3t w oe n t i t yt y p e so fc a ra n dt r u c k图2 4a r 和1 i w c k 的泛化狙i c l ef i g 2 4t h eg e n e r a l i z e ds u p e r c l a s sv e h i c l eo f c a ra n dt r u c k2 4 3 特化和泛化的约束特化的一种重要约束不相交约束( d i s j o i n t n e s sc o n s t r a i n t ) 是指它规定了特化的子类必须是不相交的,即一个实体至多是特化中一个子类的成员。图2 3 中符号d 就指定了这样一个约束。如果没有限制子类必须是不相交的,那么它们的实体集合可能就会重叠( o v e r l a p ) ,即同一现实世界中的实体可能成为特化中一个以上子类的成员【1 4 1 。第2 章关系数据模型与关系模式的语义体现2 5 本章小结本章主要介绍了关系模型的数据结构和关系数据的语义体现内容。其中2 1 和2 2 节对关系模型的数据结构,数据依赖做了总体介绍,2 3 和2 4 节详细阐述了构成e r 图的实体,属性,联系类型等概念以及e e r 模型中的子类超类,特化泛化概念。同时总结出了e r 模型与关系模型对应表,给出了两个模型中元素和语义一一对应的关系。基于e r 图的关系模型到x m l 转换技术研究第3 章x m l 基本理论3 1x m l 简介随着w e b 的高速发展,可扩展标记语言x m l ( e x t e n s i b l em a r k u pl a n g u a g e )应运而生。与h t m l 相似,x m l 是s g m l ”】的一个子集,它允许用户使用一个简单的、统一的标准来实现他们自己的应用。x m l 免除了s g m l 的繁杂并保持了s g m l 的优秀特性19 1 ,便于直接地运用到w e b 开发上,给w e b 制作者提供了比传统的s g m l 和h t m l 环境强得多的对文档过程设计的控制能力。x m l 推荐标准1 0 版于1 9 9 8 年2 月由w 3 c 发布,短短的几年里,x m l 以惊人的速度发展成为w e b 数据表示与交换的标准。x m l 吸收了s g m l 和h t m l 的优点而摈弃了它们的缺点,并弥补了它们的不足【2 0 1 。x m l 具有以下六个特性:( 1 ) 简单性x m l 文档语法的规则集是s g m l 规则集大小的2 0 ,x m l 的标记都是用户自定义的,无需像h t m l 那样记住所有的标记含义。( 2 ) 严密性x m l 的严格定义和规则集使人类和机器都能更容易地阅读文档。( 3 ) 自描述性元素的标记描述了数据的意义。通过标记来说明数据的语义,容易理解且易于解析。( 4 ) 可扩展性x m l 在两个意义上是可扩展的。首先,它允许开发者创建他们自己的文档类型定义( d o c u m e n tt y p ed e f i n i t i o n ,d t d ) ,有效地创建可被用于多种应用的可扩展的标志集。其次,使用几个附加的标准,用户可以对x m l 进行扩展,这些附加标准可以向核心的x m l 功能集增加样式、链接和参照能力。( 5 ) 互操作性第3 章x m l 基本理论x m l 可以在多种平台上使用,而且可以用多种工具进行解释。因为文档的结构是标准的,所以解释它的语法分析器就可以以较低的费用获得;而且x m l 支持用于字符编码的许多主要标准,允许它在全世界许多不同的计算环境中使用。( 6 ) 开放性x m l 标准在w e b 上是完全开放的,可以免费获得。x m l 文档自身也较为开放,任何人都可以对一个结构良好的x m l 文档进行语法分析。如果提供了d t d或x m ls c h e m a 还可以校验这个文档。3 2 规范的x m l 文件) l , m l 文件必须符合一定的语法规则,只有符合这些语法规则,) c m l 文件才可以被x m l 解析器解析,以便利用其中的数据。) l m l 文件分为规范的x m l 文件( w e l l f o r m e dx m l ) 和有效的x m l 文件( v a l i d a t e dx m l ) 两种,符合w 3 c 制定的基本语法规则的x m l 文件称为规范的x m l 文件。一个规范的x m l 文件如果和某个d t d 文件或x m ls c h e m a 相关联,并遵守该d t d 文件或x i v i ls c h e m a规定的限制条件,就称为有效的x m l 文件【2 l 】。下面是一个格式良好的x m l 文档实例片段:d v d x m l b r e a k f a s ta tt i f f a n y s m o v i e c l a s s i c c o n t a c t m o v i e s c i e n c ef i c t i o n 基于e r 图的关系模型到x m l 转换技术研究 l i t t l eb r i t a i n t vs e r i e s c o m e d y 每个x m l 文档都分为两个部分:序言( p r o l o g ) 和文档元素。其结构如图3 1所示。序言出现在x m l 文档的顶部,其中包含关于该文档的一些信息。文档元素用以包含可能有的其他内容。上面关于d v d 的x m l 文档示例中,序言包含了一个x m l 版本声明和一个描述性注释,文档元素就是 ,它包含了三个有关d v d信息的子元素,子元素下又嵌套更加详细的信息【2 2 1 。图3 1x m l 文档结构f i g 3 1t h es t r u c t u r eo f x m ld o c u m e n t3 2 1x m l 文档序言( 1 ) x m l 声明:一个规范的x m l 文档应当以x m l 声明作为文档的第一行,其前面不能有空白、其它的处理指令或注释。x m l 声明以“ 标识结束。这是一个最基本的x m l 声明: 。一个简单的x m l 声明中可以只包含属性v e r s i o n ,指出该x m l 文档使用的x m l 版本。x m l 声明中可以指定e n c o d i n g 属性的值,该属性规定x m l 文档采用哪种字符集进行编码。若是在x m l 声明中没有指定e n c o d i n g 属性的值,那么该属性的默认值是u t f 8 ,标记以及标记的内容就可以使用汉字、日文、英文等,x m l 解第3 章x m l 基本理论析器就会识别这些标记并正确解析标记中的内容。x m l 声明中可以指定s t a n d a l o n e 属性值,该属性只能取值y e s 或n o ,以说明x m l 文档是否完全是自包含的,即正确处理当前的文档是否还需要外部文件。该属性的默认值是n o 。x m l 声明中的每个属性都是可选,但是它们的顺序很重要。如果需要包含e n c o d i n g 属性,那它必须出现在v e r s i o n 属性后面,s t a n d a l o n e 属性只能是声明中的最后一个属性。( 2 ) 处理指令:序言中可以包含处理指令( p r o c e s s i n gi n s t r u c t i o n ,p i ) ,它们将关于x m l 文档的信息传递给其他应用程序。( 3 ) 注释:注释可以出现在x m l 文档的任何地方。它们以“ ! 一 开始以“结束。注释不影响x m l 文档的处理,只是为了方便阅读和理解。( 4 ) d t d 和x m l 模式:d t d 和x m l 模式提供关于x m l 文档内的元素和属性如何出现的规则【2 2 1 。3 2 2 文档节点( 1 ) 元素:元素包括一个开始标签、一个结束标签和内容。元素中的标签要正确嵌套。元素类型分类如表3 1 所示。表3 1 元素的类型t a b 3 1t h et y p eo ft h ee l e m e n t元素类璎表现形式空元素仅含文本的元素含其他元素的元素混合元素 或元素中仅含文本内容一个元素可以包含其他元素。容器元素称为父,被包含元素称为子元素中既含有文本也含有子元素( 2 ) 属性:在x m l 文档中,为

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论