数据交换中关系模式与XML模式转换方法研究

来源 :高校教育研究 | 被引量 : 0次 | 上传用户:lkstudybitcc2008
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘要】为解决数据库关系模式与XML模式间的转换问题,在分析XML Schema复杂类型模式信息和元素定义机制的基础上,构造了XML Schema抽象模型(AXSM),依据AXSM,提出一种把数据库的关系模式转换为XML模式的方法,利用元素模式的定义函数和基本约束条件转换函数可以基本保存关系模式中的结构和语义信息。
  【关键词】XML Schema 关系模式 转换
  【中图分类号】TP331 【文献标识码】A 【文章编号】1009-9646(2008)10(b)-0150-02
  
  1 引言
  20世纪70年代,随着数据库技术的迅猛发展,相继产生了关系型数据库和分布式数据,带来了数据库系统的繁荣以及数据库应用的普及,然而由此也带来了新问题——不同发展阶段、不同应用目的而产生的不同数据库系统无法结合在一起共同使用。
  为解决上述问题,人们提出了基于XML文档的数据交换技术。该技术首先要解决数据库关系模式与XML模式之间的映射问题[1]。而一个XML模式能否精确描述被转换关系模式的结构和语义,对生成XML文档是非常重要的。目前已有一些方法实现关系模式与XML模式间的映射,但都存在一些不足,如:平面转化算法[2]无法实现运算符 +、?和*的转化;NET算法[3]不能从一个具有很多表的关系模式向XML模式转化。本文针对关系模式,在分析XML Schema复杂类型模式信息和元素定义机制[4]的基础上,构造了XML Schema抽象模型(Abstract XML Schema Model,简称 AXSM),依据AXSM,提出一种从数据库的关系模式到XML模式间的映射方法。该方法基本可以保存关系模式中的结构和语义信息。
  
  2 关系模式模型
  在关系数据库中,数据的逻辑结构是由关系模式(Relation Schema Model,简称RSM)决定的。 RSM反映如下信息:规定数据库中表与列、列与其数据类型的映射关系;提供表间的完整约束关系。
  定义1数据库的关系模型为六元组{T,C,P,fieldt,typec,G},其中:
  (1)T为有限表。名集;
  (2)C为有限字段集,当不同的表有相同的字段名时,加上表名区分字段名;
  (3)P为有限类型集;
  (4)函数fieldt:T→C:t∈T ,Ct∈C,指定表t的字段子集Ct;
  (5)函数typec:C→α:c c∈E∈P,而c∈E∈P表示一个三元组{p,u,n},其中:
  ①p表示某一类型,p∈E;
  ②u表示值是否唯一;
  ③n表示值是否为空;
  (6)G为约束图,定义表间的完整性约束关系。
  
  3 基本约束条件
  在RSM中,通过约束图G来描述该模型所包含表的依赖关系,最常见的关系为主外键约束。
  定义2约束图G为三元组{V,E,top},其中:
  (1)V为有限节点集;
  (2)E为有向边集;
  (3)top表示图G的顶点。
  对于数据库关系模式中的每一张表t,在图G中都有一个节点v与之对应。假设表t1的字段a是外键,指向表t2的字段b,b是t2的主键。对于每一个主外键约束条件,t1(a)t2(b),在图G中都有一条有向边e与之对应,起点是表t2的节点b,终点为表t1的节点。不被其他节点指向的节点称为顶点,用top表示。
  
  4 XML Schema抽象模型
  XML Schema作为XML文档的模式语言,将元素的模式分为简单类型和复杂类型[5]。简单类型元素是指不嵌套任何子元素的元素,反之则称为复杂类型元素。复杂类型元素在XML Schema中子元素的模式定义为复杂类型的模式信息。XML Schema元素的定义机制规定,所有简单类型元素都必须定义为某个简单类型(内建数据类型,或在此基础上自定义的数据类型),所有复杂类型元素都可以通过它的下一级子元素来确定,并用min Occurs和max Occurs表示该子元素出现的次数。
  依据XML Schema中复杂类型模式信息和元素定義机制,用一个抽象模型来表示XML Schema,称该模型为XML Schema抽象模型(AXSM)。AXSM反映如下信息:规定XML文档实例中根节点元素的类型唯一;用正则表达式[6]及其对应的有限自动机来描述原XML Schema中复杂类型的模式信息,正则表达式同时明确了嵌套在元素中的子元素可以被实例化的数量范围,“+”表示一次或多次,“?”表示零次或一次,“*”表示零次或多次;每个复杂类型对应一个映射关系表,给出嵌套在复杂类型元素中子元素的类型。
  定义3一个XML Schema的AXSM为四元组{∑,Γ,ρ,typeroot},其中:
  (1)∑为有限元素集;
  (2)Γ为有限类型集;
  (3)ρ为复杂类型声明集,对于每个复杂类型f∈Γ,其声明都用唯一的(regexpf,typesf)序对来表示,其中:
  ①正则表达式regexpf表示了f的模式信息,即允许嵌套在复杂类型元素中的子元素序列; regexpf中的元素属于∑的某个子集,记为∑f∑; L(regexpf)表示符合正则表达式regexpf的元素序列集合;
  ②函数typesf:∑f→Γ,tag∈∑t,f∈Γ,指定∑f中元素的类型。
  (4)typeroo,为根节点元素类型。
  
  5 从AXSM模式生成XML模式的方法
  从数据库的关系模式生成XML Schema模式,必须(1)确定原关系模型中的哪些信息映射成 XML Schema文档中的何种元素,并明确其元素类型。(2)完成数据库约束条件的转换。
  在具体实现时,我们设计了两个子函数:元素定义模式函数X Schema (R)和基本约束条件转换函数 ADDREF(R,S)。X Schema (R)将关系模型中的表和列按照——映射的方法转换成XML Schema中的复杂类型,并根据RSM中对于字段的定义,明确了复杂类型中的子元素的相关信息。ADDREF(R,S)利用广度优先遍历算法[7]遍历约束图G中的所有的节点和边,来构造一个带有原关系模式的约束条件.通过调用上述两个函数,可完成关系模式到XML Schema的映射,其工作流程为:
  (1)生成一个带名字空间的Schema标志。
  (2)利用元素定义模式函数X Schema (R)为每个关系表生成一个元素的复杂类型,关系表中的每一个字段作为XML Schema中复杂类型的子元素,并添加对应类型和出现次数。
  (3)利用基本约束条件转换函数ADDREF(R,S),给出所有复杂类型的嵌套关系。
  (4) 添加一个复杂类型元素,指定约束图G中的top顶点为它的唯一元素,并将TOP顶点对应的复杂类型定义为子元素类型,其给表示该元素出现最小次数的min Occurse赋0值,给表示最大次数的max Occurs赋unbounded值。
  (5)为XML Schema文档添加一个根元素,并将第四步中给出的复杂类型定义为根元素类型。
  5.1 元素模式的定义函数X Schema(R)
  元素模式的定义主要完成:把关系模式中的表t转换为AXSM中的复杂类型f;将关系模式中的各个表t所对应的字段Ct作为该表映射的复杂类型的模式信息;根据各个字段c对应的α来明确运算符+,?或*;规定表映射为AXSM中复杂类型名。
  构造XML Schema中元素模式定义的算法框架如下:
  输入:R为数据库的关系模式模型
  输出:该关系模式模型对应的XML Schema抽象模型S
  (1)设置一个数据结构Ct,用于表示当前表t的字段集;
  (2)For表集T中的每张表t
  (3)为表t新建一个复杂类型f,S←f;
  (4)Ct→field t(t);
  (5)For字段集Ct中的每个字段c;
  (6)为复杂类型f新建一个子元素e,e=c;
  (7)获取type e(c)→p定义的类型来设置f→type c(e)的值;
  (8) If(type c(c)→u的值为唯一);
  (9) 子元素e的min Occurs置1;
  (10)Else
  (11)子元素e的min Occurs置0;
  (12)If (type c(c)→n的值为空)
  (13)子元素e的min Occurs置0;
  (14)Else
  (15)子元素e的min Occurs置1;
  (16)maxOccurs置1;
  (17)if(e的min Occurs为1)
  (18)(f→regexpf)←e;
  (19)返回S
  5.2 基本约束条件转换函数ADDREF(R,S)
  基本约束条件转换函数ADDREF (R,S)通过广度遍历约束图G向XML Schema中添加约束条件。其算法框架如下:输入:R为数据库的某个关系模式模型
  S为XML Schema抽象模型
  输出:该关系模式模型对应的XML Schema抽象模型S
  (1)设置一个队列T,用v表示队中元素,v→e list表示子节点;
  (2)将R→G→top节点人队;
  (3)从R→G→E中获取以v作为起点的有向边,并将终点加入v的子节点;
  (4)While队中元素不为空
  (5)For v→e list中的每一个子节点w
  (6)获取从v到w的有向边,
  (7)在S中获取v对应的复杂类型fv,w对应的复杂类型fw;
  (8)fv→regex pf,w,其中:w的min occurs为0;max occurs为unbounded,表示无穷多;
  (9) 设置fv→type sf(w)的值为fw;
  (10)w节点人队;
  (11)v节点出队
  (12)返回S
  
  6 小结
  基于XML Schema的关系模式到XML模式的映射方法,可将若干相互关联的表的逻辑结构转换成一个完整的XML Schema文档,同时保留原关系模式中相应的结构和语义信息。从而保证了XML文档的有效性,提高了XML文档的质量。因此该映射方法具有一定的实用意义。
  
  参考文献
  [1] D.Lee, W. W. Chu, Constraints-Preserving Inlining Algorithm for Mapping XML DTD to Relation Schema,Journal of Data Knowledge Engineering,2002 39:3-25.
  [2] Ashvin Radiya,Vibba Dixit.The Basks of using XML Schema to defineelement,http://www2128,ibm.com.developer-works,xml.library,xml2sehema,2001.8.1.
  [3] L.segoufin,V.Vianu, Validation streaming XML documents. PODS2002,2002,53-64.
  [4] Beatric Bouehou,Mirian Halfeld FerrariAlves,Extending Tree Automa2ta to Model XML Validation Under Element and Attribute Constraints.ICEIS(1),2003,184-190.
  [5] Henry S Thomp son et al, XML Schema Part 1:Structures.http://www. w3. org. TR. xmlschema-1,2004. 10. 28.
  [6] Bruggemann2Klein A. Wood D,One2unambiguous regular languages.Information and Computation,1998,140 (2),229-255.
  [7] [美] Kenneth C. Louden, Compiler Construction Prineip les and Prac2tice.北京:中國机械出版社. 2002.8,64-74.
  
  注:“本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。”
其他文献
【摘要】如何按照“拓宽专业口径、加强基础教育、优化课程体系与知识结构、注重实践环节”的原则来优化设计环境科学专业的课程体系是中国高校急待研究的问题。本文初步探讨了大学本科环境科学专业课程设置过程中相关的几个问题。  【关键词】环境科学 课程设置 本科课程  【中图分类号】G642.0【文献标识码】A【文章编号】1009-9646(2008)10(b)-0128-03    随着社会经济的发展,对人
期刊
【摘要】本文对当前高校大学生群体总体素质现状进行了分析,从而提出推动大学生素质教育的几点措施,即注重思想道德素养、加强人文理念熏陶及提高心理素质。  【关键词】素质教育 思想道德 人文 心理  【中图分类号】G64【文献标识码】A【文章编号】1009-9646(2008)10(b)-0144-01    党的十七大明确提出了建设创新型国家和人才资源强国的目标。建设创新型国家,关键在人才,尤其是创新
期刊
【摘要】本文通过组织参加全国大学生电子竞赛的实践经历,阐述了如何在工科大学生中开展创新能力的培养问题。提出了如何在不同专业中充分挖掘学生的创新潜力以及进行创新培养的几点建议。  【关键词】工科大学生 科技创新能力 培养  【中图分类号】G42【文献标识码】A【文章编号】1009-9646(2008)10(b)-0145-01    1 引言  全国大学生电子设计竞赛是面向大学生的群众性科技活动,目
期刊
【摘要】本文介绍了在工业自动化领域广泛应用的,基于LON总线控制器TMPN3150,单片机P89C51RD2与PC机通过RS-232互联的串口网络通信接口适配器的设计。文中介绍了通信适配器的系统功能,详细说明了其硬件设计和软件设计。该设计方案实现了管理监控层(上位PC机)和现场生产测控层(现场LON总线网)之间的连接,充分体现了LON总线的灵活性和可扩展层。  【关键词】LON总线 TMPN315
期刊
【摘要】美国高校在创新型人才的培养方面有许多经验,值得我们思考和借鉴。从创新人才培养的许多形式看,中美两国有许多形似之处,实质的差距却十分明显,要实现我们的目标,需要更新教育管理观念、营建和谐校园环境、建立科学激励保障机制。  【关键词】创新人才 中美特点 启示  【中图分类号】G642.0【文献标识码】A【文章编号】1009-9646(2008)10(b)-0133-02    我国已明确提出了
期刊
【摘要】分析“微机原理”课程存在的问题,提出将它与“单片机原理”整合的思路,然后从提高应用能力、重视实验环节和需要注意的问题等方面的进行探讨。  【关键词】微机原理 单片机原理 整合 教学改革  【中图分类号】G642·423【文献标识码】A【文章编号】1009-9646(2008)10(b)-0147-01    1 “微机原理”课程存在的问题  微机技术广泛地应用于工业控制、智能仪器仪表、机电
期刊
【摘要】本文列出了国内外微积分教材中计算积分的三种常见情况,并分别讨论了其中存在的问题。给出了第二类换元积分法的完整描述和证明。最后给出了计算积分的详细过程。  【关键词】换元积分法 不定积分法 变换函数  【中图分类号】O175【文献标识码】A【文章编号】1009-9646(2008)10(b)-0159-02    积分的计算是积分学的重要内容。关于积分计算的常用方法是换元积分法和分部积分法。
期刊
【摘要】本文设计了一种基于E-PLAY型SOPC的波形发生器,采用触摸屏实现输入和显示同屏进行,波形数据的函数计算形式与基于FPGA的DDS方案结合,并采用简单易行的电平平移电路,实现宽电压范围的波形输出。该波形发生器具有操作界面简捷直观、调试灵活、波形发生速度快等特点,能够满足基础电学实验室的应用要求。  【关键词】波形发生器 SOPC 触摸屏 DDS 电平平移  【中图分类号】TP3【文献标识
期刊
【摘要】营销团队作为企业发展和竞争的核心力量,其建设与管理的绩效直接决定着企业的生存发展。面对宁夏企业营销团队存在的建设目标不清晰、营销人员资源缺乏整合优势、营销人员培训缺位等现状,建议采取加强企业文化建设,明晰企业目标;强化团队建设,重视人力资源管理;引入竞争机制,激发营销人员工作激情,合理设计绩效考评体系等措施,强化宁夏企业营销团队的建设与管理,提升企业竞争力。  【关键词】企业 营销团队 竞
期刊
【摘要】失恋是大学生心理咨询中比较常见的问题,也是导致各种神经症的主要因素之一。它十分影响学生的正常学习和生活,妨碍他们的健康成长和顺利成才。本文王某的症状就是由失恋引发的抑郁性神经症,该案例是个比较复杂也比较典型的心理咨询案例,经过数次心理咨询与治疗,使来访者消除了抑郁症状,能够正常的学习生活,达到了消除心理障碍的咨询目标。本文涉及资料收集、诊断技术、测验技术、咨询技术的灵活运用等同心理诊断与治
期刊