




已阅读5页,还剩77页未读, 继续免费阅读
(计算机应用技术专业论文)xml设计与规范化研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 一个设计良好的x m l 模式是x m l 应用的前提,因此x m l 的设计和规范化研究至 关重要。目前没有专门针对x m l 的建模工具,借用面向对象的建模工具u m l 或关系 数据库的建模工具e r 模型设计x m l 时,u m l 或e r 模型转换为x m l 的结果有时不 能充分表达语义甚至改变语义、转换方法的差异会产生不同的x m l 等;x m l 软件重用 设计只是针对某一方面的理论研究,实用性不强;和关系数据库类似,函数依赖是x m l 树状结构存在数据冗余的主要原因,而对函数依赖和x m l 范式等x m l 的规范化研究 比较分散。因此本文对x m l 的设计和规范化两方面进行研究,主要工作如下: ( 1 ) 研究了u m l 和x m l 的建模机制,给出了u m l 为x m l s c h e m a 建模的可行性 分析和i j ,为x m l 建模的方法;结合x m l 半结构树状结构和u m l 的特点,提出了按 功能模块顺序编写x m ls c h e m a 的方法,并给出了对x m ls c h e m a 进行优化处理的方法。 ( 2 ) 研究了用关系数据库中最为流行的建模工具e r 模型为x m l 建模的方法, 给出了由e r 模型构建d t d 的方法;但由于e r 模型与x m l 的结构存在很大的差异, 直接构建d t d 有一定的困难,于是提出了e r a 树和把e r 模型转换为e r a 树的算法; 针对e r 模型建模易出现两种连接陷阱的问题,给出了消除这两种连接陷阱的方法。 ( 3 ) 软件重用是程序员追求的目标,归纳了在x m l 中的数据重用、词汇表重用、 x s l t 标准库重用和组件重用的四种重用方式,以及在x m l 组件重用中的三种封装策 略;提出了d t d 中利用参数实体来实现重用扩展;提出了用于设计可重用扩展的x m l s c h e m a 的重用扩展模板。 ( 4 ) x m l 规范化的研究主要致力于消除由于缺乏语义限制和约束表达能力而导致 的数据冗余、不一致和操作异常等问题。总结了当前的x m l 规范化理论的一些研究成 果,特别是在函数依赖、x m l 范式和x m l 规范化规则等方面。给出了消除数据冗余的 方法和用于解决由部分函数依赖和传递函数依赖引起的数据冗余问题的规范化规则。 ( 5 ) 提出了几点关于x m l 设计目标和要求的建议,开发x m l 系统时可以做为参 考。用文中的方法实现了网络通用题库系统项目中的试题集,由x m l s p y 2 0 0 7 自动生成 的内容模型视图和最初按需求设计的试卷结构图几乎完全一致,即用文中的方法能达到 设计要求。文中的设计方法是针对一般的x m l 的设计,也可以用来设计其他x m l 系统。 本课题来源于陕西省自然科学基金项目( 2 0 0 6 f 5 0 ) 和航空科学基金项目( 0 6 z c 3 1 0 0 1 ) 。 关键词:x m l ,u m l ,e r 模型,重用,规范化 r e s e a r c ho nd e s i g nm e t h o d sa n dn o r m a l i z a t i o no fx m l a b s t r a c t x m l a p p l i c a t i o ni sb a s e do nw e l ld e s i g n e dx m l s c h e m ao rd t d ,s ot h ed e s i g na n d n o r m a l i z a t i o no fx m la r ee s s e n t i a l a tp r e s e n t ,t h e r ei sn om o d e l i n gt o o ld e s i g n e ds p e c i a l l y f o rx m l m a k i n g 峨o fu m lw h i c hi su s u a l l ym o d e l i n gf o ro o po re - rm o d e lw h i c hi s u s u a l l ym o d e l i n gf o rr e l a t i o n a ld a t a b a s et od e s i g nx m l ,u m l o re rm o d e li sc o n v e r t e dt o x m la n ds o m e t i m e st h er e s u l t sc a l ln o tb ee x p r e s s e df u l l yo re v e nc h a n g e dt ot h es e m a n t i c s , a n dt h ed i f f e r e n c eb e t w e e nc o n v e r s i o nm e t h o d sw i l lp r o d u c ed i f f e r e n tx m l ,e t c 1 1 1 e r e s e a r c ho nx m ls o f t w a r er e u s ed e s i g nf o c u so n l yo no n et h e o r e t i c a la s p e c t ,a n dp r a c t i c a l i t y i sw e a k f u n c t i o n a ld e p e n d e n c yi st h em a i nr e a s o n sf o rt h a tx m lt r e es t r u c t u r ee x i s t so fd a t a r e d u n d a n c y , w h i c hi s s i m i l a rt or e l a t i o n a ld a t a b a s e h o w e v e r , t h er e s e a r c ho nx m l n o r m a l i z a t i o n ,s u c ha sf u n c t i o n a ld e p e n d e n c ya n d ln o r mf o r m ,i ss p a r s ea n ds c a t t e r e d t h e r e f o r e ,t h i sp a p e rr e s e a r c h e so nb o t h 订ld e s i g na n dn o r m a l i z a t i o n , a n dt h em a i nw o r k i sa sf o l l o w s : ( 1 ) 1 1 1 ep a p e rr e s e a r c h e so nt h em o d e l i n gm e c h a n i s mo f 切讧la n dx m l ,a n dg i v e st h e f e a s i b i l i t ya n a l y s i sa n dt h em e t h o d sa b o u tu m lm o d e l i n gf o rx m l ;a c c o r d i n gt ou m l a n d x m ls e m i - s t r u c t u r e dt r e ec h a r a c t e r i s t i c s ,t h ew r i t i n gm e t h o do fx m ls c h e m aw h i c hi sb a s e d o nf u n c t i o nm o d e ls e q u e n c ea n dt h ei m p r o v i n gm e t h o da r ep r o p o s e d ( 2 ) e - rm o d e li sav e r yp o p u l a rm e t h o dm o d e l i n gf o rr e l a t i o n a ld a t a b a s e t l l ep a p e r r e s e a r c h e so nt h em e t h o do fe - rm o d e lm o d e l i n gf o rx m l t h ed e s i g nm e t h o do fd t di s p r o p o s e da c c o r d i n gt oe - rm o d e l ;t h e r ea r ed i f f i c u l t i e si nc o n v e r t i n ge - rm o d e lt od t d b e c a u s eo ft h ed i f f e r e n c eb e t w e e ne rm o d e la n dx m ls t r u c t u r e ,s ot h ep a p e rp r o p o s e se r a t r e ea n da na l g o r i t h mw h i c hc h a n g e se - rm o d e li n t oa l le r at r e e t w oc o n n e c t i o nt r a p s c o m eo u te a s i l ya c c o r d i n gt oe rm o d e l i n g ,t h et w om e t h o d st os o l v et h ep r o b l e ma r e j p r o p o s e d ( 3 ) s o f t w a r er e u s ei sag o a lp u r s u e db yp r o g r a m m e r s t i l ep a p e rs u m m a r i z e st h ef o u r m e t h o d s ,w h i c hi sd a t ar e u s e ,g l o s s a r yr e u s e ,x s l ts t a n d a r dl i b r a r yr e u s ea n dm o d u l er e u s e , a n dt h r e ee n c a p s u l a t i o ns t r a t e g yi nx m lm o d u l er e u s e ;r e u s ee x t e n d i n gi si m p l e m e n t e d l i i b a s e do np a r a m e t e re n t i t yi nd t d ,w h i c hi sp u tf o r w a r d ;i ta l s og i v e sr e u s ee x t e n d i n gm o d e l s , w h i c hi su s e dt od e s i g nr e u s ee x t e n d i n gx m ls c h e m a ( 4 ) x m ln o r m a l i z a t i o nm a i n l yr e s o l v et h ep r o b l e m sr e s u l tf i o me l i m i n a t i n gs e m a n t i c r e s t r i c t i o na n de x p r e s s i o na b i l i t y , s u c ha sd a t ar e d u n d a n c y , i n c o n s i s t e n c i e s ,o p e r a t i o n e x c e p t i o n s ,a n de t e t h ep a p e rs u m su ps o m ep r e s e n tr e s u l t s ,e s p e c i a l l yf u n c t i o n a l d e p e n d e n c y , x m lp a r a d i g ma n dx m l c r i t e r i o nr u l e s ,a n dg i v e sm e t h o dt oe l i m i n a t ed a t a r e d u n d a n c y a n dn o r m a l i z a t i o nr u l e sw h i c hi st os o l v et h ed a t ar e d u n d a n c yp r o b l e mc a u s e db y f u n c t i o n a ld e p e n d e n c ya n dt r a n s m i s s i o nd e p e n d e n c y ( 5 ) t h i sp a p e rg i v e ss e v e r a ls u g g e s t i o n so nr e c o m m e n d a t i o n sa n dr e q u i r e m e n t s a s r e f e r e n c ef o rt h ed e v e l o p m e n to fx m ls y s t e m s u s i n gt h ew a yg i v e ni nt h ep a p e rt o s u c c e s s f u l l yr e a l i z eq u e s t i o n ss e ti nn e t w o r kg e n e r a li t e mb a n ks y s t e mp r o j e c t s ,t h ec o n t e n t m o d e lv i e wa u t o m a t i c a l l yg e n e r a t e df r o mx m l s p y 2 0 0 7a n dt h ei n i t i a ld e s i g nb a s e do nt h e d e m a n ds t m c t m eo ft h ep a p e r sa r ev e r ym u c ht h es a m e ,t h a ti s ,u s i n gt h em e t h o d st oa c h i e v e t h ed e s i g nr e q u i r e m e n t s t h em e t h o d sc o u l db eu s e dt od e s i g no t h e rx m ls y s t e m s t h i sp a p e ri ss u p p o r t e db ys h a a n x in a t u r a ls c i e n c ef u n d s ( 2 0 0 6 f 5 0 ) a n da v i m i o n s c i e n c ef u n d s ( 0 6 z c 310 01 ) k e yw o r d s :x m l ,u m l ,e rm o d e l ,r e u s e ,n o r m a l i z a t i o n i v 西北大学学位论文知识产权声明书 本人完全了解西北大学关于收集、保存、使用学位论文的规定。学校 有权保留并向国家有关部门或机构送交论文的复印件和电子版。本人允许 论文被查阅和借阅。本人授权西北大学可以将本学位论文的全部或部分内 容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存 和汇编本学位论文。同时授权中国科学技术信息研究所等机构将本学位论 文收录到中国学位论文全文数据库或其它相关数据库。 保密论文待解密后适用本声明。 。飞 学位论文作者签名:么坌丛 指导教师签名:型星窒丝 厕年 | 只j , ) e i 2 0 0 罗 1 年6 月 z - e l 西北大学学位论文独创性声明 本人声明:所呈交的学位论文是本人在导师指导下进行的研究工作及 取得的研究成果。据我所知,除了文中特别加以标注和致谢的地方外,本 论文不包含其他人已经发表或撰写过的研究成果,也不包含为获得西北大 学或其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对 本研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。 务, 学位论文作者签名:乃饯b 1 年6 日 西北大学硕士学位论文 1 1 研究的背景及意义 第1 章绪论 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 ,可扩展的标记语言) 是w 3 c ( w o l dw i d ew e b c o n s o r t i u m ,万维网协会) 于1 9 9 8 年推出的用于i n t e r n e t 上数据表示和交换的标准,它 为i n t e m e t 的应用提供了一个描述数据和交换数据的有效手段【。i n t e m e t 的发展不仅成 就了j a v a ,同时也成就了x m l ,世界主流平台都积极支持并参与x m l 技术的研究和 产品化工作,使得x m l 技术得到迅猛发展。 x m l 出现的原因之一就是h t m l ( h y p e r t e x tm a r k u pl a n g u a g e ,超文本标记语言) 出现了不足之处。h t m l 越来越侧重于数据的表示,而标签之中只含有的十分微弱的语 义,逐渐演变成一种页面的显示语言,即h t m l 无法满足逐渐增长的信息描述的要求, 只是一种显示语言,只能很微弱地揭示各种数据之间的联系。而x m l 采用了数据表示 和显示相分离的形式,显示了x m l 的极大的优越性,x m l 能够描述出各种数据之间 的联系,并且在显示方面采用c s s ( c a s c a d i n gs t y l es h e e t s ,层叠样式表) 和x s l ( e x t e n s i b l es t y l es h e e tl a n g u a g e ,可扩展样式表语言) 技术得到了加强。x m l 并不是 一种新的语言,它只是s g m l ( s t a n d a r dg e n e r a l i z e dm a r k u pl a n g u a g e ,标准通用标记 语言) 的一个子集,只是去除了s g m l 中所有不是核心的、未被使用的和表达不清楚 的部分,保留了s g m l 中的精华部分【2 1 。因此可以说h t m l 和s g m l 是x m l 的先驱, x m l 既有h t m l 的功能和简单性,并且还有s g m l 的强大功能和扩展性。 x m l 技术以其标准、简洁、结构严谨、可高度扩展等诸多优点及先进性备受网络 编程人员的青睐。x m l 技术在电子商务、无线通信、数据转换、图形图像、科学计算、 数学和其他领域,以其强大的发展态势,迅速得到了广泛的应用。 x m l 功能之强大,应用之广泛,可以这么说以后的网络软件系统都离不开x m l t 3 1 。 面对复杂的需求、大量的数据,怎么样才能充分表达用户需求,提高x m l 软件系统的 质量和效率是摆在编程人员面前的非常棘手的问题。用一定的方法来进行x m l 设计、 提高x m l 软件的扩展重用性、用一定的规则来规范化x m l 、消除数据冗余、设定预 期目标来指导x m l 设计,是解决此类问题的关键。因此,本文对x m l 的设计和规范 化进行研究,用以提高系统开发效率和保证系统质量,具有重要的实用价值和现实意义。 第1 章绪论 1 2x m l 相关技术 本文主要是对x m l 设计及规范化的研究,即对d t d ( d o c u m e n tt y p ed e f i n i t i o n s , 文档类型定义) 和x m ls c h e m a 技术的应用研究,了解其他主要技术也有助于对核心技 术的理解,因此在本节主要介绍一下x m l 的核心技术:d t d 和x m ls c h e m a ,简要介 绍一下x m l 的其他几项主要技术。 x m l 是一种可扩展标记语言,源自s g m l ,也可以说是一个简单版本的s g m l 。 x m l 所关心的主要是数据,围绕x m l 开发了许多x m l 相关的技术,这些技术组合成 了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 链接技术和 x m l 处理器接口技术等。 1 2 1x m l 核心技术 d t d 和x m ls c h e m a 是定义x m l 文档的结构和数据的规范,为格式正规的x m l 文档提供了严格而精确的规则。x m l 文档必须符合d t d 或x m ls c h e m a 规定的规范, 这样才能通过验证,才能算格式良好的x m l 文档。在特定的领域应用中,d t d 或x m l s c h e m a 对x m l 文档进行了语义限制,即数据本身的含义、数据类型和数据关联上的 限制,这样才能保证数据的安全性和符合行业统一标准。 1 2 1 1 文档类型定义d t d d t d 是有效的x m l 文档的基础,其详细描述了每个元素可以包含的元素、元素的 数量、元素出现的次序及其属性的相关设置等信息。即d t d 定义了置标语言、文档结 构的语法和词汇表,规范了x m l 文件中所有可用的元素、属性、助记法和各种实体以 及其相互关系。 ( 1 ) d t d 声明 x m l 文件使用文档类型声明与一个d t d 建立关系,即用一个d t d 来约束这个 x m l 文件。d t d 对于一个x m l 文件而言,分为内部d t d 和外部d t d 。内部d t d 就 是文档类型定义的内容包含在x m l 文档的d t d 声明中,外部d t d 就是一个独立的 d t d 文件提供文档类型定义的内容。一个x m l 文件可以用内部d t d 或外部d t d 或 同时混合使用这两种d t d 。在混合使用外部d t d 和内部d t d 时,当定义内容重复时, 2 西北大学硕士学位论文 内部d t d 比外部d t d 拥有较高的优先权。 内部d t d 的声明语法为: ,其中根元素名 称必须与x m l 文档的根元素名称相同。 外部d t d 的声明语法为: 。外部d t d 可以被多个x m l 文档所共享,这是使用外部d t d 的一个好处。 ( 2 ) 元素的定义 元素在x m l 文档中占核心地位,是x m l 文档的主要组成部分。元素在d t d 中定 义的语法形式如下所示: 元素内容描述有以下五种方式: :即该元素为空,不包含任何子元素、文字资料, 但可以包含属性; :元素内容是可解析的字符数据,即一般用的 文本资料; :元素中又包含元素,但不能包含文本资料; :元素内容为混合内容,即对 于元素内容是文本或子元素或是两者皆有,解析器认为都是正确的; ! e l e m e n te l en a m ea n 怜:元素包含任意子元素及文本资料,这样给元素的定 义带来了很大的自由性和灵活性。 ( 3 ) 属性定义 属性定义是对元素定义的补充和修饰,它能将一些简单的特性与元素相关联。属性 的语法形式如下所示: 属性的类型大约有十种:c d a t a 、i d 、e n u m e r a t e d 、i d r e f 、i d r e f s 、e n t i t y 、 n m t o k e n 、n e t o k e n s 、n o t a t i o n 、e n t i t i e s ( 各属性类型的详细含义请见文献 【1 】和文献【2 】) 。 缺省值( d e f a u l t e d ) 有以下四种表示方法:# r e q u i r e d ( 该属性必须出现) 、 # i m p l i e d ( 该属性可有可无) 、# f i x e d ( 必须提供一个默认值) 、提供一个默认值( 在 x m l 文档中可以覆盖掉它) 。 3 第1 章绪论 1 2 1 2x m ls c h e m a x m ls c h e m a 可以像d t d 一样定义x m l 文档结构,并且还能定义比d t d 更复杂 的数据类型。x m l s c h e m a 除其基本数据以外,还支持数十种内置数据类型,并且可以 使用s i m p l e t y p e 和c o m p l e x t y p e 自定义数据类型,增强了x m l 的自由性和表达力。 x m ls c h e m a 的基本结构如下所示: ( 1 ) x m ls c h e m a 组件 x m ls c h e m a 是许多组件的集合,共有1 4 类组件,分为3 组。第一组为基本组件: 模式声明、简单类型定义、复杂类型定义、元素声明和属性声明;第二组次要组的组件: 属性组定义、模型组定义和符号声明;第三组“h e l p e r 组的组件有:注释、模型组、 粒子、通配符和属性使用。组件之间的关系如图1 1 所示。 ( 2 ) x m ls c h e m a 元素声明 在x m ls c h e m a 中有简单类型元素和复杂类型元素之分,都是用x m ls c h e m a 中 的e l e m e n t 来声明。其语法形式如下所示: 其中d a t a t y p e 是指基本数据类型、内置数据类型或由s i m p l e t y p e 、c o m p l e x t y p e 元 素所声明的自定义数据类型。简单数据类型不能拥有子元素,也不能有属性。 4 西北大学硕士学位论文 图1 - 1x m ls c h e m a 组件之同的关系 复杂数据类型的语法形式如下所示: e l e m e n tn r m e = ”e l e n a m e ”t y p e 2 d a t a t y p e ”伊 : 其中s e q u e n c e 表示子元素出现的顺序。用于定义x m l 元素的出现顺序及次数的指 令功能子元素还有如下几种:a l l 、c h o i c e 、g r o u p 、s i m p l e c o m e n t 、c o m p l e x c o m e m 。这 样定义可以使x m l 文档结构更为灵活、更能适应各种需求。 ( 3 ) x m ls c h e m a 属性声明 属性必须为简单类型,且只出现在复杂类型元素里。在声明复杂元素的同时声明该 5 第1 章绪论 元素的属性,属性声明的一般语法形式如下所示: 其中u s e 指属性的使用方式,可以是o p t i o n e d ( 属性可有可无) 、r e q u i r e d ( 属性必 须出现) 、p r o h i b i t e d ( 用在r e s t r i c t i o n 元素之中限制属性的使用) ;f i x e d :若属性存在, 则内容只能是预设定的值,不能够改变。 1 2 2x m l 显示技术 x m l 一个很大的特点就是具有数据与表现形式相分离的特性。w 3 c 组织已经引入 了两大机制来确定x m l 在浏览器或编辑器上的显示外观,这两大机制分别是c s s 和 x s l 。c s s 就是为x m l 文档中的元素定义一组显示样式的规则。当显示器或编辑器读 到x m l 文档中的元素时,就以c s s 定义的规则来显示。而x s l 是一种真正的s c r i p t 语言,是采用转换的方法,重新组织文档的元素,定义转换模板,将一个不含显示信息 的x m l 文档转换成可以被浏览器或编辑器显示的文档。x s l 功能比较强大,有效的克 服了c s s 的局限性;c s s 的优点是比较简单、易实现、耗费系统资源少、语法自成体 系、易学易用。 1 2 3x m l 链接技术 h t m l 真正强劲之处是其超链接功能,为人们浏览网页提供了极大的方便,可使人 们从一个起点连到任何网络资源( 如文字、影像、程序等) 的目标点。但h t m l 的超 链接功能很简单,例如单向性( 一次只能链接一个方向) 、整体性( 不能链接到文档的 某个部分) 、单个性( 一次只能连接一个网址) 等。x m l 链接技术在h t m l 超链接的 基础上进行了扩展,x m l 链接可以在多个资源之间创建多向链接,并且可以定位文件 内部的资源片断,使链接功能更加灵活更加方便。x m l 链接规范分为x l i n k 和x p o i t e r 两部分。x l i n k 负责建立资源之间的链接,x p o i n t e r 负责定位资源,这个资源可以是一 个资源片断。x m l 链接的主要应用范围是资料模型化、超文本链接和资料交换等。 1 2 4x m l 文档访问技术 应用程序可以使用解析器从x m l 文档中动态的解析出所需要的x m l 数据。d o m ( d o c u m e n to b j e c tm o d e l ,文档对象模型) 是编写x m l 解析器的标准接1 3 规范,这是 一个w 3 c 组织推荐的规范。例如在j a v a 编程工具中,s u n 公司提供了解析x m l 文档 的j a x p ( j a v a a p if o rx m lp a r s i n g ) ,j a x p 遵循的就是d o m 规范。其实d o m 是一组 6 西北大学硕士学位论文 对象的集合,通过操纵这些对象,编程人员可以对x m l 文档内容进行读取、遍历和修 改等操作。由d o m 创建的结点树是x m l 文档内容的逻辑表示,含有丰富的语义,它 显示了文件提供的信息及它们之间的关系。但利用d o m 的方便之时,应用d o m 也会 产生很多问题,例如构建文档树时,对空间的需求很大、会建立一些永远不会被使用到 的对象,造成空间浪费等。针对d o m 产生的问题,x m l d e v 邮件成员创建了s a x ( s i m p l ea p if o rx m l ,简单应用程序接口) 2 1 。s a x 解析器不在内存中建立和x m l 文件相对应的树状结构数据,s a x 的事件处理器每次在内存中保留对一个事件的处理 一次处理完即释放掉内存。因此与d o m 相比,s a x 占用内存少、解析数据具有更高的 效率。但也不能说s a x 比d o m 好,两者利弊上各有千秋,仔细分析应用环境,选择 恰当的解析器来处理具体的问题。 1 3 研究现状 随着x m l 在i n t e r a c t 中地位的确定,x m l 应用的日益广泛,x m l 设计方法和规 范化的作用日益突显,目前国内外许多个人和组织致力于x m l 设计方法和规范化理论 的研究。, 许多专家和组织把x m l 设计经验进行抽象和总结,形成许多解决特定问题、应用 在特定环境的设计范型,x m l 设计范型类似于文献 4 】和文献 5 的面向对象的设计模 式。设计范型是本文研究内容的相关方面。x m l 设计范型的研究注重的是对x m l 结 构的设计。文献 1 提出了2 8 种设计范型,文献 1 2 】提出了6 种设计范型,按照经典的 设计范型描述方式【4 朋,每种范型都给出了动机和解决方案等。利用这些范型有利于提 高系统开发效率和保证系统的质量。文献 1 3 】和文献【1 4 】中一些团体提出了x m l 设计 指南。这些范型和设计指南只适合于解决特定的问题,应用在特定的上下文环境中,虽 然总结这些设计方法有一定的指导意义,但并不是针对一般性的通用的x m l 设计。 x m l 的概念模型的研究还处于初步阶段,现在还没有比较成熟的建模可以提供直 观的概念建模,使用户的需求得到充分直观的体现。于是有人提出了用现已成熟的面向 对象建模工具u m l 和关系数据库的建模工具e r 模型来设计x m l ,并取得了一些研 究成果 1 5 j 8 l 。但这些建模方法各自为阵,未形成一个实用的理论体系。由于u m l 和e r 模型本身的特点,映射为x m l 时会丢失甚至改变部分语义,并且映射规则的不一致会 导致产生不同的x m l 等。研究基于u m l 和e r 模型为x m l 建模的方法是本阶段研 究的主要内容。 7 第l 章绪论 文献 1 9 1 、文献【2 0 】和文献 2 l 】在软件重用的角度来研究x m l ,提出了一些用于某 一方面的方法,研究的比较分散,并没有给出x m l 复用设计的综合实用方法。因此, 在本文中总结了x m l 的四方面的重用方法,且在x m l 重用扩展角度提出了d t d 和 x m ls c h e m a 的具体设计方法。 在关系数据库领域中规范化理论已经非常成熟,而x m l 规范化理论的研究刚刚起 步,文献 2 2 q b 提出了x m l 的范式并给出了相关的概念,文献 2 3 】通过半结构化数据对 象关系属性模型( o 队s s ) 识别冗余,并给出了对半结构化模式进行重构的算法, 从语义上来进行x m l 的规范化。定义x m l 树状结构时产生的数据冗余主要原因就是 函数依赖引起的,消除由部分函数依赖和传递函数依赖引起的数据冗余是现在x m l 规 范化理论研究的重点,也是本文x m l 规范化部分研究的重点。目前国内外的个人或组 织对x m l 的规范化的理论研究比较分散,研究的结果大部分仍局限在理论上。综上所 述,x m l 设计方法和规范化理论研究在很多方面仍需进一步的完善和发展。 1 4 本文的主要工作 本文研究了x m l 设计和规范化理论这两部分内容,本课题来源于陕西省自然科学 基金项目( 2 0 0 6 f 5 0 ) 和航空科学基金项目( 0 6 z c 3 1 0 0 1 ) 。文中提到的x m ls c h e m a 均是指 w 3 cx m ls c h e m a 。本文的主要工作有: ( 1 ) 重点研究了x m l 模式的建模方法,因为没有专门针对x m l 的建模工具,所 以利用业已成熟的面向对象建模工具u m l ( u n i f i e dm o d e l i n gl a n g u a g e ,统一建模语言) 和关系数据库的建模工具e r ( e n t i t y - r e l a t i o n s h i p ) 模型为x m l 建模。总结归纳本部 分的研究成果,给出了相应的由u m l 到x m ls c h e m a 的转换规则;根据u m l 建模方 法和x m ls c h e m a 的结构特点,提出了按功能模块顺序编写x m ls c h e m a 的方法,并 对x m ls c h e m a 文档进行优化,且给出了相应的实例。 “( 2 ) 总结归纳了由e r 模型构建d t d 的方法和转换规则;由于e r 模型结构特 点,直接构建d t d 存在一定的困难,提出了e r a 树和由e r 模型转化为e r a 树的算 法,且给出了相应的实例演示;针对利用e r 模型建模易出现的连接陷阱的问题,给出 了消除连接陷阱的方法。 ( 3 ) 从比较分散的软件重用研究成果中,概括归纳出了关于x m l 四种重用方法; 根据面向对象的基本特征之一“封装 ,给出了有利于x m ls c h e m a 组件重用的三种封 装方式;研究了针对于d t d 的重用问题,提出了在d t d 中利用参数实体实现重用扩展 8 西北大学硕士学位论文 的方法;结合以往编写x m ls c h e m a 的经验,提出了x m ls c h e m a 重用扩展模板方法, 并给出了重用扩展模板的设计思路及具体设计方法。 ( 4 ) 总结了现有的x m l 规范化理论研究成果,包括有关d t d 的基本概念的定义、 函数信赖的定义、x m l 范式、x m l 规范化规则和数据冗余的消除方法等。给出了由函 数依赖引起的数据冗余的规范化规则。 ( 5 ) 参考软件工程中提出的设计原则和质量标准,在研究怎么样才能算一个好的 设计方法、怎么样才能算一个好的x m l 模式这个问题上,提出了几点关于x m l 设计 目标和设计要求的建议,程序员在开发x m l 系统时可以做为参考。用文中的方法设计 的网络通用题库系统项目中试题集达到了预期的设计要求,提高了s c h e m a 可扩展重用 性,增强了可维护性和可处理性。文中的设计方法也可以用于其他x m l 系统的设计。 9 西北大学硕士学位论文 第2 章基于u m l 的x m l 设计 对于x m l 模式的设计来说,直到现在没有专门针对x m l 的建模工具,因此考虑 借用u m l 为x m l 建模,辅助进行x m l 设计。u m l1 2 7 1 是一种“通用的可视建模语言, 用于说明、可视化、构造并文档化软件系统的体系结构 。u m l 用功能强大的图形化语 言简化了系统模型,现已在软件工程中得到了成功的应用,并成为系统开发时广泛采用 的标准。用i j - m l 表示的软件系统易于理解,便于不同知识背景的参与人员进行工作交 流,从而改善了开发过程。 研究了t j - m l 和删l 的建模机制,在用l m i 为删ls c h e m a 建模的可行性的基础 上,给出从u m l 到x m ls c h e m a 映射的规则。根据u m l 、x m l 结构的特点和编写x m l s c h e m a 的经验,提出了按功能模块顺序编写方法,并对x m ls c h e m a 文档提出了优化 方法,利用此编写和优化方法增强了x m l s c h e m a 的扩展性、减少了结构冗余。 2 1u m l 的建模机制 u m l 是一种功能强大的图形化语言,是一种可视化的图形建模语言。用户可以借 助这些图形符号来设计软件在需求、设计和实现级别上相应的模型。u m l 的建模机制 1 2 7 2 8 ,2 9 】根据用户表示的内容不同可分为两种:静态建模机制和动态建模机制。静态建模 机制是u m l 的基础。用例图( u s ec a s ed i a g r a m ) 、类 虱( c l a s sd i a g r a m ) 、对象图( o b j e c t d i a g r a m ) 、构件i 虱( c o m p o n e n td i a g r a m ) 、包( p a c k a g e ) 和配置图( d e p l o y m e n td i a g r a m ) 是 u m l 的静态建模机制。而顺序图( s e q u e n c ed i a g r a m ) 、协作图( c o l l a b o r a t i o nd i a g r a m ) 等则是u m l 的动态建模机制。 2 1 1u m l 的静态建模机制 ( 1 ) 类图( c l a s sd i a g r a m ) 类图是一款逻辑结构图,描述系统中类的静态结构。类图表达系统内部重要的组成 结构,定义系统的类,表示类之间的相互关系( 关联,聚合,依赖等) ,也表示类的内 部结构( 属性,操作等) 。类图在系统的整个生命周期都存在。一个稳定且具弹性的内 部结构可以同时支撑系统对外提供的各式服务,以及系统内部复杂的运作。 ( 2 ) 对象图( o b j e c td i a g r a m ) 在面向对象的程序设计语言中,对象就是类的实例,因此在u m l 中对象图就是类 第2 章基于u m l 的x m l 设计 图的实例。对象之间的联系称为链( 1 i n k ) ,类之间的联系称为关联( a s s o c i a t i o n ) ,链是 关联的实例。对象图表示的是系统在某一时刻的静态信息,以及显示系统在某段时间内 的状态信息及在该时间段内发生的变化,所以对象图可分为静态对象图和动态对象图。 对象图可能只在系统的特定时间内出现,因此对象图是有生命周期的,对象图不像类图 一样在整个生命周期内都有效。 ( 3 ) 构件图( c o m p o n e n td i a g r a m ) 构件表示系统部件的物理实体,构件图表示的是构件和它们之间的依赖关系。构件 的类型很多,包括源代码文件、可执行文件、库、数据库表等等。构件图显示了用依赖 性链接的构件,这种信赖性典型地表示构件之间的编译依赖。 ( 4 ) 包图( p a c k a g ed i a g r a m ) 包是模型元素的聚集,可能包括嵌套的包,用于构建大模型。包图通常将大系统拆 分成小系统,描述了系统结构。包用文件夹图符表示。 ( 5 ) 配置图( d e p l o y m e n td i a g r a m ) 配置图描述系统硬件的物理拓朴结构以及在此结构上运行的部件【6 3 1 。配置图是一个 体系结构的静态视图,其目的是表明跨越不同结点的处理的物理分布。 ( 6 ) 用例图( u s ec a s ed i a g r a m ) 使用用例图来表示与系统交互的参与者与用例。用例定义了这种交互可能发生的路 径。参与者用一个像人一样的图标表示,用例用包含有用例名字的椭圆表示。用例之间 可以有i n c l u d e 构造型和e x t e n d 构造型依赖。i n c l u d e 构造型用在一个用例在它执行的某 个点“调用 另一个用例。当一个用例在一个结点扩展点允许某些可选处理时,可以使 用e x t e n d 构造型。 2 1 2u m l 的动态建模机制 在u m l 中定义了两种表示交互的图,顺序图( s e q u e n c
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 城市公园儿童游乐设施创新设计方案
- 基于DIA蛋白质组学和非靶向代谢组学联合探究雄性双峰驼颈腺组织CPT1A-脂肪酸的代谢途径
- 考点解析-人教版八年级上册物理声现象《声音的产生与传播》定向攻克试题(含答案解析)
- 第二单元第2课《信息搜索与遴选》教学设计 苏科版(2023)信息科技七年级上册
- 医院医养中心建设项目环境影响报告书
- 空间高速轴承用多孔材料渗流行为研究
- 解析卷人教版八年级上册物理光现象《光的直线传播》专题测评试卷(附答案详解)
- 考点解析-人教版九年级物理《生活用电》专题攻克试题(含详解)
- 基于精氨酸缺乏介导的细胞自噬探究高糖促进软骨退变的机制
- 考点攻克人教版八年级上册物理《长度和时间的测量》必考点解析试题(含答案解析版)
- 调试、试运行与移交管理方案
- GB/T 26655-2011蠕墨铸铁件
- 热镀锌钢管技术标准
- 周三多管理学第03章管理的基本原理
- 基础生态学第4章种群及其基本特征课件
- 虚拟现实与增强现实头戴显示关键技术及应用项目
- (完整)公共卫生基本知识考试题题库及答案
- 《电力工业企业档案分类规则0大类》(1992年修订版)
- GB∕T 26520-2021 工业氯化钙-行业标准
- 温州医科大学《儿科学》支气管肺炎
- 常见传染病预防知识ppt-共47页课件
评论
0/150
提交评论