




已阅读5页,还剩63页未读, 继续免费阅读
(计算机应用技术专业论文)基于xml的异构数据集成研究及应用.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 随着计算机技术特别是i n t e m e t 技术的迅猛发展,各个行业、单位、机构或 部门内部都逐步实现了业务、信息的计算机管理。在企业内部,由于部门间相 对独立,构建系统时缺乏统一的规划和标准,所以造成了现有的应用系统是分 散、异构、封闭的系统,相互之间不能共享信息,形成了一个个“信息孤岛 。 企业应用集成e a i ( e n t e r p r i s ea p p l i c a t i o ni n t e g r a t i o n ) 是解决这一问题的方法之 一。e a i 使得各应用信息系统相互连接,并进行数据交换、通信、加工处理,以 减轻业务过程信息障碍。通过对不同的信息系统及不同业务单元的集成和优化, 在机构范围内或整个系统范围内实现业务过程整合。w e bs p h e r e 是当前比较成 功的应用集成手段,但费用较高。对于中小型生产企业而言,集成深入程度一 般到数据层,这样可以绕过业务逻辑,直接对企业数据进行操作,并且只要将 不同应用系统问需要沟通部分的信息进行集成就可以。这样不但集成成本减少, 而且实施难度也较低。 本文首先对数据集成涉及的相关技术进行深入研究。分析了目前流行的数 据集成产品。按照不同的实现技术,将数据集成方法分为三类,即数据转换方 法、数据聚合方法以及析取、转换和装载( e x t r a c t 、t r a n s f o r ma n dh a d ,e t l ) 方 法。对每种数据集成方法进行了深入研究,总结了各种方法的应用领域及特点。 然后,借鉴数据转换方法以及e t l 方法的数据集成实现思想,结合目前中小企 业数据集成的需求,提出基于j a v a 和x m l 技术实现异构数据交换集成的通用 解决方案,对该方案进行了详细设计。该集成方案简单易行,共同部分可以只 是一些x m l 文档,对于这些文档的管理只需存储提取就可以了,投入资金也不 多。各系统仍然按照原来的方式运行,包括数据的存储提取,只是在需要进行 信息交流时通过中间件技术把本地数据库数据转换成x m l 数据文件或者进行相 反的转换即可。最后,依据该方案实现了河南省电力企业内应用系统间的数据 共享交互系统。现已投入使用,实现了异构系统数据的共享,消除了“信息孤 岛 ,显著提高了工作效率,取得了很好的应用效果。 关键词:异构数据数据集成数据抽取d o ms a x a b s t r a c t 一一一 a b s t r a c t w i t ht h er a p i dd e v e l o p m e n to fc o m p u t e r t e c h n o l o g i e s ,e s p e c i a l l yi ni i l t e m e t a s p e c t ,l o t so fm a n a g e m e n ti n f o r m a t i o ns y s t e m sb a s e do nc o m p u t e rt e c h n o l o g i e s h a v e b e e n a c c o m p l i s h e d i na l m o s te v e r yo r g a n i z a t i o n d u e t os o m er e l a t i v e l n d e p e n d e n c eb e t w e e nd e p a r t m e n t si ne n t e r p r i s e ,a n ds h o r to fc o n s o l i d a t e dp l a na n d s t a n d a r dw h e nd e s i g n i n ga p p l i c a t i o ns y s t e m s ,t h e r em u s tb es o m ei n f 6 n n a t i o ni s l a n d s i nt h ea p p l i c a t i o ns y s t e m s ,w h i c ha r es e p a r a t e ,h e t e r o g e n o u s ,o b t u r a t e da n d u n s h a r e d e a ii so n eo fm e t h o d st os o l v et h e p r o b l e m e a ic a nh e l pc o n n e c ti n f o m a t i o n s y s t e m s ,e x c h a n g ed a t aa n dd e a lw i t hi n f o r m a t i o nb e t w e e na l lk i n d so fa p p l i c a t i o n m f o r m a t i o ns y s t e m s ,t or e l i e v ei n f o r m a t i o no b s t a c l e si nb u s i n e s sp r o c e s s t h r o u g h i n t e g r a t i n ga n do p t i m i z i n gd i f f e r e n ta p p l i c a t i o ns y s t e m sa n dd i 骶r e n tb u s i n e s su n i t s t h es c o p eo fe n t e r p r i s eb u s i n e s so rs u p p l yc h a i n sw i l lg e tc o n f o r m i t y w e b s p h e r ei s r e l a t i v e l ys u c c e s s f u la p p l i c a t i o nw a y , b u ti tc o s t sm o r a sf a ra st h es m a l la n d m e d i u me n t e r p r i s e sa r ec o n c e m e d ,t h ei n t e g r a t i o nl e v e lw i l l a l w a y sb ec o n s i d e r e da t d a t al a y e r , s ot h a ti tc a nd i r e c t l ya c c e s sd a t aa n da v o i d l o g i c a lb u s i n e s s ,m o r e o v e r i t ,s l o w e rc o s ta n dl e s sd i f f i c u l tt oi n t e g r a t ea n dp e r f o r m ,i fo n l yt os t r e s st h ei n f b n n a t i o n r e s o u r c e sn e e d e db e t w e e nt h ed i f f e r e n ta p p l i c a t i o n s y s t e m s t h i sp a p e rs t a r t sf r o mt h ed e e pr e s e a r c ht od a t ai n t e g r a t i o ni n v o l v e d t e c h n o l o g i e s t y p i c a l l y , t h ec u r r e n t l yp o p u l a rd a t ai n t e g r a t i o np r o d u c t sa r ea n a l y z e d ,a c c o r d i n gt 0 d i f f e r e n tr e a l i z a t i o nt e c h n o l o # e s ,t h e r ea r et h r e ei n t e g r a t i o nm e t h o d s ,i n c l u d i n gd a t a t r a n s l b r m a t i o n ,d a t aa g g r e g a t i o na n de t l t h e nw er e s e a r c he a c hm e t h o df u r t h e r a n dc o n c l u d et h e i ra p p l i c a t i o nf i e l d sa n d c h a r a c t e r i s t i c s f u r t h e r m o r e ,r e f e 币n gt o 廿1 e i d e a so fd a t at r a n s f o r ma n de t la b o u td a t a i n t e g r a t i o n ,a c c o r d i n gt os m a l la n d m e d i u me n t e r p r i s e s n e e d s ,ab a s e do nj a v aa n dx m l s o l u t i o ni sp u tf o r w a r da n d d e s i g n e dc a r e f u l l y t h es o l u t i o ni ss i m p l ea n df e a s i b l e ,t h ec o m m o np a r t sb e t w e e n d i f f e r e n ts y s t e m sa r ex m l d o c u m e n t st h a tc a nb ea c c e s s e da n ds t o r e dw i t hl o w c o s t a 1 1 s y s t e m sm na s u s u a l ,i n c l u d i n ga c c e s s i n ga n ds t o r i n gd a t a o n l yw h e n c o m m u n i c a t i o no c c u r s ,t h ed a t a b a s ei n f o r m a t i o n a n dx m ld o c u m e n t sw i l lb e t r a n s f o r m e de a c ho t h e rb yt h em i d d l e w a r e f i n a l l y , w ed e v e l o p e dad a t a i n t e g r a t i o n a n de x c h a n g es y s t e ma c c o r d i n gt h i ss c h e m ef o re l e c t r i cp o w e r e n t e r p r i s ei nh e n a n i l a b s t r a c t p r o v i n c e ,w h i c hh a sb e e np u ti n t op r a c t i c e ,a c c o m p l i s h i n gi n f o r m a t i o ne x c h a n g e b e t w e e nh e t e r o g e n e o u ss y s t e m s ,a v o i d i n gi n f o r m a t i o ni s l a n d s ,o b v i o u s l yi m p r o v i n g e f f i c i e n c ya n dt a k i n gf a v o r a b l ee f f e c t k e yw o r d s :h e t e r o g e n e o u sd a t a d a t ai n t e g r a t i o nd a t ae x t r a c t i o nd o ms a x i i i 南开大学学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师指导下,进行 研究工作所取得的成果。除文中已经注明引用的内容外,本学位论文 的研究成果不包含任何他人创作的、己公开发表或者没有公开发表的 作品的内容。对本论文所涉及的研究工作做出贡献的其他个人和集 体,均已在文中以明确方式标明。本学位论文原创性声明的法律责任 由本人承担。 学位论文作 亡l 一 b石0d,钮加易年 签 沙 豁 沙 南开大学学位论文版权使用授权书 本人完全了解南开大学关于收集、保存、使用学位论文的规定, 同意如下各项内容:按照学校要求提交学位论文的印刷本和电子版 本;学校有权保存学位论文的印刷本和电子版,并采用影印、缩印、 扫描、数字化或其它手段保存论文;学校有权提供目录检索以及提供 本学位论文全文或者部分的阅览服务;学校有权按有关规定向国家有 关部门或者机构送交论文的复印件和电子版:在不以赢利为目的的前 提下,学校可以适当复制论文的部分或全部内容用于学术活动。 学位论文作者签名: 乏蔓 砂嘞扩 - - - 一- - - 一- - 一一- - 一_ - - - _ - - - - - 一一- - - - - - - - - - - - - - - - - - e - l - - - - - 一一一一 2 卯巧年月 经指导教师同意,本学位论文属于保密,在年解密后适用 本授权书。 指导教师签名:学位论文作者签名: 解密时间:年 月日 各密级的最长保密年限及书写格式规定如下: 第一章绪论 第一章绪论 第一节课题背景 随着计算机技术,特别是i n t e m e t 技术的迅猛发展,许多行业、单位或机构、 部门内部都逐步实现了业务、信息的计算机化管理。在企业实施信息化进程中, 由于企业内各部门的业务和功能归属不同,以及各企业信息化水平存在差异等 原因,造成企业拥有许多相互隔离的、由不同核心技术构建的信息服务和管理 系统。系统中数据的表示不同,数据交流效果极差,形成“信息孤岛 ,从而使 得企业内以及企业间的协作效率与效果很不理想。 “信息孤岛”带来的不良影响大致可以分为以下几个方面【1 1 : ( 1 ) 数据的一致性无法保证 彼此孤立的系统要顺利运行,必须对相同的数据重复输入,将一个系统中 的统计结果和计算结果输入到另一个系统中,使得大量的信息资源不能充分发 挥应有的作用,效率低下。由于数据来源的口径不一,不仅增加了不必要的额 外劳动,而且经常造成数据不一致、不正确,使得企业领导面对不同来源报表 中不一致的数据而无所适从,成为阻碍信息化进一步发展的障碍。 ( 2 ) 信息及时共享、反馈难 如果企业中“信息孤岛 现象严重,系统之间既不能有效实现信息共享, 又影响业务的顺利执行。由此所造成的信息共享、反馈难使信息化作用无法得 到有效体现。 ( 3 ) 影响操作和决策支持 “信息孤岛”的存在难免导致一套系统一套账户和密码,每个需要操作计 算机的人员要记住多个账户、登录口令,经常需要从一个系统退出再进入另一 个系统,给操作带来不便。企业主管需要站在企业全局把握生产、经营情况, 需要在产、供、销的一体化的基础上对企业人、财、物进行统筹管理,而孤立 的信息系统无法有效地提供跨部门、跨系统的综合性的信息。企业管理者要求 随时可得到市场、财务、人力资源等实时的信息,迅速调动、消化企业资源以 反映市场需求。在“信息孤岛 普遍存在的情况下,各类数据不能形成有价值 的信息,局部的信息不能提升为管理知识,决策支持只能是空谈。 ( 4 ) 影响信息化的集团化 第一章绪论 行业化应用,制约企业电子商务发展。在互联网发展的今天,信息化已经 开始从企业应用向网络化的集团应用、行业应用推进。在网络环境下,企业作 为集团总部或行业大系统的一个个节点,为集团总部或行业总部及时提供生产、 经营的指标数据,构建集团应用、行业应用的神经系统。如果在企业节点上附 着的是相互孤立的单元,这样的神经末稍不能为总部的大脑及时提供信息,集 团信息化和行业信息化也就成了无本之木、无源之水。 从总体上看,我国企业目前普遍缺乏对r r 系统在企业应用的整体观念,对 信息化工作缺乏总体规划,前期的系统咨询论证也不够充分。实践中更加关注 某一个业务环节或者某一个管理功能的信息化,注重单元技术和短期效益,应 用系统实施分散,整体集成和沟通程度不高。随着企业信息化建设的不断深入, 企业所用的软件系统也将越来越多。尽管这些系统关注于不同的领域,但相互 之间在功能上有相互交叉和连接的地方,系统间的集成最终将成为一个大问题, 跨系统的应用也将成为巨大的困局。 。 企业应用集成e a i ( e n t e r p r i s e a p p l i c a t i o n i n t e g r a t i o n ) 是解决这一问题的方法 之一。美国著名的r r 媒体i t t o o l b o x 对e a i 的定义是:“通过硬件、软件、标准 和业务过程的结合,实现两个或多个企业应用系统的无缝集成,使它们能够统 一运作 。即e a i 使得各应用信息系统相互连接,并进行数据交换、通信、加工 处理,以减轻业务过程信息障碍。通过对不同的信息系统及不同业务单元的集 成和优化,在企业范围内或整个供应链范围内实现业务过程整合。w e b s p h e r e 等 是当前比较成功的应用集成手段,但费用较高。对于中小型生产企业而言,集 成深入程度一般到数据层集成,其绕过业务逻辑,直接对企业数据进行操作, 且一般只要将不同应用系统间需要沟通部分的信息进行集成,这样一来不但集 成成本减少,而且实施难度也较低。 所以,借鉴已有数据集成方法的思想及其先进的实现技术,寻求一种适合 于中小企业数据集成的有效解决方案很有现实意义。 第二节研究现状 目前,企业数据集成有许多成型产品。例如国外的b e a l i q u i dd a t a ,b u s i n e s s o b j e c t sd a t ai n t e g r a t o r ,国内的数据集成中间件o n c e d i 、东方通科技集成中间件 t o n g i n t e g r a t o r 等。这些中间件利用i n t r a n e t 或i n t e r n e t 进行数据集成,为数据库、 2 第一章绪论 文件系统以及应用程序等异构数据源提供包含提供、转换、传输和存储等操作 的数据集成服务2 】【3 】【4 】【5 1 。 按照不同的实现技术,集成方法可以分为三类:数据转换方法、数据仓库 法和虚拟法。 1 数据转换方法 一种传统的数据集成方法,相对于其他方法来说,技术上较为简单,比较容 易实现,目前在很多领域仍然是一种主要的数据集成方法。数据转换方法通过转 换工具在数据库之间进行模式映射,将一个数据库中的数据复制、转换为另一个 数据库中的数据,从而实现数据库之间的集成。 2 数据仓库法 在客户端与数据源之间增加一层,称为数据仓库,用于存储来自各数据源 的待集成数据,系统提供对这个数据仓库的查询机制。这种体系结构的优点是 既可用于数据集成,又可用于决策支持查询。该方法存在的问题是,当信息源 的数据发生变化时,数据仓库中的数据也要作相应的修改。因此,这种间接访 问方式的缺点是数据更新不及时,数据重复存储。这种体系结构通常需要一些 新的技术,如有效的数据加载和增量更新维护等。 3 虚拟法 该方法使用了与数据仓库法完全不同的结构。数据仍保存在各数据源上, 集成系统仅提供一个虚拟的集成视图和对该集成模式的查询请求转化成对各异 构数据源的查询。该方法亦称为中介器( m e d i a t o r ) 法。在这种体系结构中,中间 层根本不实际存储数据,当客户端发出查询请求时,m e d i a t o r 仅是简单地将查询 发送到适当的数据源上。由于该方法不需要重复存储大量数据,并能保证查询 到最新的数据,由此比较适合于高度自治、集成数据多、且更新变化快的异构 数据源集成。虚拟体系结构中所使用的技术与传统的数据服务器中的技术有着 根本的不同,相对于数据处理技术来说,该方法中的技术将涉及到更多的查询 上的代数操作。首先,m e d i a t o r 应当确定出哪个数据源对给定的查询有用,当需 集成的数据源巨大时,这一问题是非常重要的;其次,一旦确定了有关的数据 源,m e d i a t o r 应当执行源到源的查询变换,该过程有时称为查询重写。当从两个 或多个数据源抽取数据时,m e d i a t o r 还需生成一个全局的执行计划,以确定以何 种顺序对数据源进行查询7 】【8 】【9 1 。无论采用何种体系结构,异构数据源集成的 首要任务是要为集成系统设计一个公共模型,以对来自异构数据源的各种数据 3 第一章绪论 转换成集成系统能进一步处理的统一格式;另外还必须定义公共模型上的基本 运算。若采用虚拟法,还必须实现公共模型上的操作到各种数据源操作的自动 转换。 目前,由于x m l 良好的可靠性与互操作性,确保了网络中信息的传输与交 互,加上x m l 是基于w e b 工作设计的,更适合于网络化环境,因此在电子商 务时代b 2 b 的商业模式得到广泛应用。x m l 的可扩展性和自描述性更让其在数 据描述和信息共享方面有着天然的优势。其标记可根据需求由企业自由定制, 有极大的灵活性,可形成针对行业特点的不同标记集。x m ls c h e m a 支持许多复 杂的数据类型,引入原型和命名空间概念,可随意扩充等,使得其不但编写简 单,而且内容充实完整,可以给出x m l 文档详细明确的定义。由s c h e m a 定义 约束的x m l 文档,有效性更加严格,内容结构更加严谨。总之,x m l 的结构 性、可扩展性、自描述性、简单性等多种特性,使之表示数据的方式真正做到 了独立于应用系统,不受任何特殊的软件或者硬件平台限制,并且这些数据能 重复使用,简单易懂,成为交换各种结构化、半结构化、非结构化信息的良好 方式。 此外,x m l 本身突出表现数据结构和语义的特点,使其自然地与数据库结 合在一起。一旦将x m l 数据文件与数据库表关系关联起来,不但可以保留关系 数据库表的结构信息,还可以利用x m l 文档的优势在网络及数据库间交换数据, 并解决不同数据库系统及数据关系、语义定义等数据表达方面的差异,如对应 关系中字段内容不同、字段命名不同、数据类型不同等。这将较好地解决企业 应用系统问信息资源集成的分布和异构等问题,使得数据交换的手段更为透明, 并为e a i 的发展提供了有效手段【l o l 。 第三节课题目标 本课题首先对目前存在的数据集成解决方案进行深入研究,分析各种方案 的实现原理及特点。在此基础上,借鉴其中的原理及实现技术,针对中小型企 业内部信息系统数据交互共享的需求,设计一种简单通用的数据集成解决方案。 最后,对该方案进行具体实现,解决河南省电力企业信息系统间数据集成的需 求,实现系统间数据交互共享。实现的抽取转换系统要灵活通用,使得在各个 电力企业的工程实施中,只需根据企业实际情况对该抽取转换系统进行简单配 4 第一章绪论 置修改即可满足其数据共享应用的需求。 第四节论文结构 在绪论之后,本文的第二章将详细介绍实现数据集成抽取交换系统涉及到 的相关技术及其发展历程。第三章对目前各种数据集成解决方案进行研究。第 四章提出适合于中小企业数据集成的解决方案。第五章提出工程需求,依据第 四章的解决方案设计开发异构数据集成交换系统。第六章将对实现的系统进行 测试。本文最后一章第七章将对所有的工作进行总结,然后对未来的工作进行 展望。 第五节本文的研究成果 对目前流行的数据集成产品进行了分析研究,按照不同的实现技术,将数 据集成方法分为三类,即数据转换方法、数据聚合方法以及e t l 方法。对每种 数据集成方法进行了深入研究,总结了各种方法的应用领域及特点。 借鉴现有数据集成解决方案的优秀思想以及先进实现技术,结合中小企业 数据集成的实际情况,提出了基于x m l 的异构数据交换集成解决方案,并对该 方案进行了详细设计。该方案应用x m ls c h e m a 建立信息交换模型,采用x m l 文档作为系统间底层的信息交换载体。低成本地进行数据转换与集成,更大范 围地实现数据共享和更有效地利用信息资源,最终实现异构系统间自动、平滑 的信息交换过程。 依据该模型开发了河南省电力企业异构系统间数据抽取交换系统。通过对 该系统的测试及在河南省电力企业的实际运行,验证了它完全可以实现异构系 统间数据的有效抽取及交换。完成了异构系统间数据的共享,消除了“信息孤 岛 。 最后,在对该方案设计及系统实现总结的基础上,提出一种将来可以采用 的更为彻底的数据集成解决方案采用x m l 数据库的数据集成解决方案。 5 第二章相关技术 第二章相关技术 第一节x m l 2 1 1x m l 的发展 1 s g m l 计算机作为以文本为主的人与人之间交流的便利工具,其应用遍及工作、 生活中的每个角落。但是,各种计算机所用的格式不同造成它们之间不具有互 换性,用某种系统处理的数据不能用于其它系统;同时,人们也期待对电子化 的信息进行检索。国际标准化组织意识到数据移植性的重要,于1 9 8 6 年1 2 月 制定了文档记述的标准一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 规则记述的文 档,可在不同的系统之间以不同的方法进行交换和处理,其结果也大大地方便 了数据的管理和利用。 一个s g m l 语言程序由三部分组成,即语法定义、文件类型定义和文件实 例。语法定义,定义了文件类型定义和文件实例的语法结构;文件类型定义, 定义了文件实例的结构和组成结构的元素类型,d t d 中定义了标记的含义,因 而s g m l 的语法是可以扩展的;文件实例是s g m l 语言程序的主体部分。 s g m l 被广泛地应用在很多地方,因为其利用文件类型定义来指定文件的 结构,来描述s g m l 的标记以及文件的格式,所以我们就可以将文件自由地转 成我们要的格式。而不管你转换成什么样的格式,它都可以让这个文件呈现出 一致的外观,也正是因为如此,才让相当多企业使用s g m l 来管理它们内部的 文件,并使其他的公司只要了解了s g m l 的规范,就可将它们的文件解析出同 样的结果。这是一个相当重要的特性,也就是我们常说的“跨平台”性。因此 s g m l 具有以下优点: 不依赖于平台,可容易地进行文档交换; 文档格式与内容互相独立的通用化置标; 数据扩展性带来了应用程序的可独立性; 6 第二章相关技术 著者和编辑者明确易懂的格式。 但是s g m l 存在着缺陷:规范过于详尽、相关标准之间的关系不易了解、 开发成本高。由于开发上的困难,因此s g m l 不能够直接用于企业数据共享。 2 h t m l 随着i n t e m e t 的快速发展,许多用户通过i n t e r n e t 进行信息交换,i n t e r n e t 上 的信息交换的革命也提上日程。在当今网络应用中,例如电子商务、数字图书 馆、远程教育等应用领域,文档的共享成为最重要的问题之一。然而,s g m l 的设计早于w e b 的出现,故在网络环境下,s g m l 不能直接应用。作为从s g m l 衍生而来的在网络上应用的标记语言h t m l 登上了历史舞台。 h t m l 即超文本标记语言是由w 3 c 制定的,最早的版本是在1 9 9 3 年推出 的h t m l l 0 。h t m l 最大的魅力,在于利用超链接的方式,将包含着图、文、 多媒体的网页呈现在浏览器上,只要点击超链接,就可以链接到不同的网页, 而网页又相互关联,这将整个互联网的信息联系在了一起。 h t m l 的优点:编写简单、跨平台、强大的信息展示能力。 h t m l 的缺陷: ( 1 ) 缺少延伸的空间 s g m l 具有可扩展性,而h t m l 本身就是一种规定好了的语言。语法简单, 易于掌握,但可扩展性方面差一些。 ( 2 ) 只着重于数据的显示 h t m l 是w 3 c 为了在w e b 上显示信息而制定的,所以,它的定位放在为 了展示、表达某些信息上。因此,在h t m l 的语法下,数据的内容和显示方式 结合在一起,计算机无法识别出具体的数据。 ;( 3 ) 缺乏一致的规格 虽然h t m l 并没有平台上的问题,可是,由于h t m l 在制定的时候并不像 s g m l 那么严谨,它注重在显示数据的能力上。不同的浏览器厂商就有时会做 出不同的h t m l 标记,这样就会导致兼容性的问题。, 由于h t m l 并不完美,它只是一种表达的技术,它并不能揭示h t m lt a g 中数据的意义。这样,x m l 应运而生。 3 x m l 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 的简称,即可扩展标记语言。x m l 是以一种简单、标准、可扩充的方式,将各种信息如文本、表格以及图形等以 7 第二章相关技术 原始数据的方式储存。但在储存的过程中,加入一些可供识别的标记。根据这 些可供识别的标记,在网络上的服务器或客户端设备可将信息内容做进一步的 处理,从而得到所需的信息。 x m l 并非原创语言,它与h t m l 一样都是根据s g m l 的标准衍生制定出 来的,融合了s g m l 的数据兼容性与h t m l 的简单标记法,使得它能够提供一 套简单易懂、高效的程序语法。 x m l 的优点: ( 1 ) 扩展性 虽然x m l 与h t m l 一样都是标记语言,但它却不只特定应用于网页上, 而是可以自由地创造新的标记来配合应用。这使得x m l 的应用层面有无限的扩 展性,可以说是一种超语言。基于这一特点,x m l 不只在网络上有更多发挥空 间,对诸如文件数据库或多媒体数据库等复杂的数据系统也提供了很好的解决 方案。 ( 2 ) 简单易懂 x m l 文档是以文本方式来表示,不是二进制码,所以利用一般的编辑器就 可以编辑修改,而且表达的方式非常直观。 ( 3 ) 不同平台间的信息传递 企业信息化的过程中,引入了许多彼此独立的信息系统。随着企业之间竞 争的加剧和企业信息化进程的加快,各系统间的信息共享势在必行。在x m l 尚 未出现时,不同系统间的信息共享比较困难,一般都需要特别为系统与系统之 间编写软件来使彼此的信息能够正确地传递,若之后系统需要更新或改动部分 软件,可能会造成系统间不兼容的问题。 当x m l 出现之后,它为不同系统之间提供了一个沟通的平台,充当信息传 递的媒介。由于x m l 本身简单易读,能将不同类型的文件数据,诸如文本、图 片以及特殊定义的对象等标记为x m l 格式,所以只要在要互相传递信息的系统 上都装有x m l 的解析器,就可以解析标记过的数据,得到正确的信息。 ( 4 )国际化 x m l 支持多语种文件与u n i c o d e ,在开始设计x m l 时,设计者便考虑到信 息的流通不应该只受限于一个国家或是一个区域,随着i n t e m e t 在全世界的普及, 将一份文件能够以多种不同语言来呈现,是x m l 必须拥有的能力,所以便将 x m l 建立在u n i c o d e 之上。 8 第二章相关技术 4 x m l 与h t m l 的主要区别 ( 1 ) x m l 是被设计用来描述数据的,而h t m l 是被设计用来显示数据的。 ( 2 ) x m l 是可扩展的,允许用户自定义自己的标记和自己的文档结构;在 h t m l 中所有的标记和文档结构都是预先定义的,用户只能使用标准的h t m l 标记。 ( 3 ) x m l 是h t m l 的一种补充,x m l 不是h t m l 的一种替代品。可以 使用x m l 来描述网站所需数据和网站的结构,而使用h t m l 来格式化和显示 这些数据。 总体来讲,s g m l 是一个语言模板,它可以描述其他具有具体语义的语言。 h t m l 是s g m l 的一个实例,它的文档类型定义( d t d ) 作为标准被固定下来, 因此,h t m l 不能作为定义其他标记语言的元语言。它的语言遵照s g m l 规范, 并且定义其中每个标记的具体含义。x m l 是s g m l 的一个精简子集,它也是一 个语言模板。严格地讲,x m l 还是s g m l 。与h t m l 不同的是,x m l 有d t d , 因而也可以作为元语言来定义其他文件系统。 2 1 2x m l 相关技术 1 符合规则的x m l 文件 x m l 提供了一些特定的规则,x m l 文件必须符合这些规则,才可以被称作 “w e l l f o r m e d ”,也就是符合规则的文件。对于不符合规则的x m l 文件,解析 器会拒绝处理这样的文件。 2 x m l 三要素 虽然x m l 有许多部分,但是只需要了解其中的三个就可以了解它是怎样工 作的。它们是文档类型定义d t d ,也就是x m l 的布局语言;可扩展的样式语 言x s l ,也就是x m l 的样式表语言;可扩展链接语言x l l 。 ( 1 ) 文档类型定义介绍 d t d 规定文档的逻辑结构。它可以定义文档的语法,而文档的语法反过来 能够让x m l 语法分析程序确认某张页面标记使用的合法性。d t d 定义页面的 元素、元素的属性以及元素和属性之间的关系。 s c h e m a 是伴随着x m l l 0 规范的制订而推出的。x m ls c h e m a 是d t d 之 后第二代用来描述x m l 文件的标准。是用来对x m l 进行文档类型定义的语言, 用来规定x m l 文档的数据类型及组织方式,同时还是丰富的元数据资源。x m l 9 第二章相关技术 s c h e m a 拥有许多类似d t d 的准则,但又要比d t d 更为强大一些【1 3 1 。 ( 2 ) 可扩展的样式语言介绍 x s l 是用于规定x m l 文档样式的语言。x s l 能使w e b 浏览器改变文档的 表示法【1 4 】。x s l 能使w e b 浏览器直接根据用户的不同需求改变文档的显示法。 例如,不需要与服务器进行交互通信,就可以改变数据的显示顺序。通过变换 样式表,可以展开或折叠文档。基于x m l 的网站除了运行速度更快、更易使用 外,而且对用户也是透明的。 解析x m l 文档,就不得不对x s l 进行处理。这是因为x s l 是x m l 的样 式表语言,定义了x m l 的语法规范。一个x s l 样式表集合了一系列设计规则, 用于从x m l 文件中抽取信息,并将其转换成h t m l 、x m l 或其它格式的文档。 ( 3 ) 可扩展链接语言介绍 x l l 支持目前w e b 上己有的简单链接,并且将进一步扩展链接,包括结束 死链接的间接链接以及可以从服务器中仅查询某个元素的相关部分的连接符 “ ”。 3 x m l 解析器 简单来讲,一个x m l 解析器就是一段可以读入x m l 文档并分析其结构的 代码。目前,广泛使用的解析器主要有:m m 公司的x m l 4 j ,m i c r o s o f t 公司的 m s x m l ,o r a c l e 公司的x m lp a r s e rf o rj a v a 和s u n 公司的p r o j e c tx 。就针对 x m l 标准的支持程序而言,其中当属s u n 公司的解析器表现最为出色。 j a v a 为解析及转换x m l 文档提供了一套标准的a p i 。该a p i 的设计独立于 任何特定的x m l 处理器实现。2 0 0 2 年夏天s u n 发布了j a v ax m l 包。其中包 括了x e r c e s 2 的参考版,将其作为它的默认x m l 解析器,并且将x a l a n 作为它 的默认x s l t 引擎。 ( 1 ) s a x 解析器 s a x 是一个基于事件的x m l 文档解析标准。与a w t 中的事件驱动机制相 类似,s a x 通过事件驱动来识别x m l 文档的内容,即当它在x m l 文档中发现 特殊符号时,它就会触发相关的事件。由于s a x 的这一特性,使应用程序开发 人员可以在相应的事件中写入特定的处理代码。 s a x 以序列的形式处理文档,不需要在内存中建立整个文档的树型结构, 因此与d o m 相比,s a x 对内存的需求要少得多,可认为是一个轻量级的接口 集合。图2 1 是s a x 解析x m l 文档的流程。 1 0 第二章相关技术 x m l 文 卜_ 弋竺) - s a x 事件 j 应用程序 档报告 j圹 图2 1s a x 解析x m l 文档流程 ( 2 ) d o m 解析器 d o m 是w 3 c 发展的浏览x m l 文档的一种标准a p i ,其不仅提供了对存储 在内存中的x m l 文档的一个完整表示,也提供了随机访问整个文档的方法。因 此,可将d o m 看作为一个标准的连接文档和应用程序或脚本语言的结构体系, d o m 提供给用户一个接口以装载、定位、操作和序列化x m l 文档。如图2 2 所示,c s s 是级联样式单,储存并控制元素的显示样式,例如字体、颜色等; s c r i p t 脚本控制元素如何动作,例如利用条件控制语句对元素进行不同的操作 等;而d o m 则作为脚本和对象的通信平台,并将结果提交给浏览器。 图2 2d o m 解析x m l 文档流程 通过d o m ,用户能够把文档看成是一个有结构的信息树,而不仅仅是简单 的文本流。这样应用程序或脚本即使不知道x m l 的语义细节也能够方便的操作 结构。d o m 包含两个关键的抽象:一是树状层次,二是表示文档内容和结构的 节点集合。树状层次包括了所有这些节点,节点本身也可以包含其它的节点, 这就使得开发人员能够通过这个层次结构找到并修改特定节点的信息。d o m 把 节点看成是一个通常的对象,这样就有可能创建一个脚本来装载一个文档,然 后遍历所有的节点,显示感兴趣的节点的信息。 ( 3 ) s a x 和d o m 的比较 第二章相关技术 d o m 操作x m l 文档时,首先读取该文档,然后将其分割成单个的对象( 例 如元素、属性、注释等) ,再在内存中创建一个关于该文档的树结构。d o m 解 析方式使得开发人员能够反复使用该文档信息,但当文档很大时,所需消耗的 内存空间就非常可观。而s a x 不会因为x m l 文档尺寸的增大而增加到内存的 需求,因此其对内存的需求比d o m 小得多。然而,正因为s a x 解析器没有将 整个文档存放到内存中,因此其不能随机的定位到文档的特定部分,也不能实 现复杂的搜索。开发人员在处理过程中也必须按顺序处理信息。s a x 允许用户 在任何时候终止对x m l 文档的解析,这使得处理文档的部分信息成为可能。在 得到某些特定信息后,就可终止解析。这一特性使得系统资源得到极大的优化 1 5 1 1 6 。 2 1 3x m l 的应用 作为互联网的新技术,x m l 的应用非常广泛,渗透了各行各业,归纳起来 可分为四类: 。 ( 1 ) 客户需要与不同的数据源进行交互 应用于客户需要与不同的数据源进行交互时。数据可能来自不同的数据库, 他们都有各自不同的复杂格式。但客户与这些数据库间只通过一种标准语言进 行交互,那就是x m l 。由于x m l 的自定义性及可扩展性,它足以表达各种类 型的数据。客户收到数据后可以进行处理,也可以在不同数据库间进行传递。 总之,在这类应用中,x m l 解决了数据的统一接口问题。但是,与其他的数据 传递标准不同的是,x m l 并没有定义数据文件中数据出现的具体规范,而是在 数据中附加t a g 来表达数据的逻辑结构和含义。这使x m l 成为一种程序能自动 理解的规范。 ( 2 ) 将大量运算负荷分布在客户端 应用于将大量运算负荷分布在客户端,即客户可根据自己的需求选择和制 作不同的应用程序以处理数据,而服务器只须发出同一个x m l 文件。如果按传 统的“客户服务器工作方式,客户向服务器发出不同的请求,服务器分别予 以响应,这不仅加重服务器本身的负荷,而且网络管理者还须事先调查各种不 同的用户需求以做出相应不同的程序,但假如用户的需求繁杂而多变,则仍然 将所有业务逻辑集中在服务器端是不合适的,因为服务器端的编程人员可能来 不及满足众多的应用需求,也来不及跟上需求的变化,双方都很被动。应用x m l 1 2 第二章相关技术 则将处理数据的主动权交给了客户,服务器所作的只是尽可能完善、准确地将 数据封装进x m l 文件中,正是各取所需、各司其职。x m l 的自解释性使客户 端在收到数据的同时也理解数据的逻辑结构与含义,从而使广泛、通用的分布 式计算成为可能i l7 1 。 ( 3 ) 将同一数据以不同的面貌展现给不同的用户 应用于将同一数据以不同的面貌展现给不同的用户。它类似于同一个剧本, 我们可以用电视剧、电影、话剧、动画片等不同形式表现出来。这一应用将会 为网络用户界面个性化、风格化的发展铺平道路。 ( 4 ) 应用于网络代理 应用于网络代理对所取得的信息进行编辑、增减以适应个人用户的需要。 有些客户取得数据并不是为了直接使用而是为了根据需要组织自己的数据库。 例如,教育部建立一个庞大的题库,考试时将题库中的题目取出若干组成试卷, 再将试卷封装进x m l 文件,接下来便是最精彩部分,在各个学校让其通过一个 过滤器,滤掉所有的答案,再发送到各个考生面
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 餐饮达人活动方案
- 河南化学考试题及答案
- 西点售卖活动方案
- 公交师傅考试题及答案
- 工人入场考试题及答案
- 未来城市的想象画:想象作文(5篇)
- 小学数学思维训练课《逻辑思维培养》
- (正式版)DB15∕T 3359-2024 《绵羊体外胚胎生产技术规程》
- 教育行业招生计划与宣传效果评估表(不同阶段)
- 母爱的力量感恩母亲的故事12篇
- 9.18事变防空演练方案3篇2025
- 急性心肌梗死病人护理
- 2025年充换电站项目建议书
- 成都银行招聘考试真题2024
- 专利代理培训课件
- 人教版(PEP)(2024)英语四年级上册2025-2026学年教学计划
- 浙江省名校协作体2025-2026学年高二上学期开学联考英语试卷(PDF版含答案含听力原文无音频)
- GJB3243A-2021电子元器件表面安装要求
- 电焊机安全知识培训课件
- 2025年麻醉、第一类精神药品管理培训考核试题及答案(护士卷)
- 反恐重点单位授课课件
评论
0/150
提交评论