




已阅读5页,还剩63页未读, 继续免费阅读
(计算机应用技术专业论文)xml模式与关系模式相互映射的研究与应用.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 随着w e b 的迅速发展,现有的技术越来越不能满足人们对互 联网上的信息进行深层次处理的要求。于是一种新的标记语吉 一x m l 应运而生,为w e b 的进一步发展提供了更为完善的机制。 由于x m l 大大的增强了w e b 上处理信息的能力,所以它的初始标 准一被制定,就得到了大家的接受,并彼广泛的应用于众多的领 域。, i 但是由于网络的出现只有二十年左右的时间,w e b 的应用则 只肴十年不到的时间,所以我们以前的绝大部分数据部不是以 x m l 形式存放的。其中最主要的信息存放形式就是关系数据库中 的记录。由于关系数据库是一种比较成熟的技术,而且在处理数 据方面关系数据库也有许多优点,所以完全摒弃它是不现实也是 没有益处的。这就需要我们能实现这两个系统数据之间的转化, 充分的利用各自的优势使数据能够满足我们不同的需要。由于此 研究具有很强的现实意义,所以在国外已经引起了众多学者的关 注。而在国内,此方面的研究还相对薄弱,所以我们在此方面做 了一些尝试,在他们的研究基础上珂我们提出了一整套实现x m l 和关系数据库之间数据模式的相互转换的办法,相关的文章分别 发表在 1 2 3 4 上。这篇论文是在前面一些研究工作和新华 航空公司相应系统实现基础上的总结。我们首先在总结多种映射 方法的基础之上,提出一个利用d t d 文档,在关系数据库中通过 多阶段x m l 文档信息的提取与变换,最终实现x m l 模式到关系模 式的映射。其次我们在总结用d t d 文档描述关系模式向x m l 模式 的转换信息的基础上,利用x m ls c h e m a 相对于d t d 更为强大的描 述能力的特性,用较为简洁的结构保存了x m l 文件的动态信息和 相关信息,实现了关系模式向x m l 模式的完全转换。最后我们讨 论了x m l 查询语言中的一种( x m l q l ) 到关系数据库的标准查询语 言s q l 之间的转化,使得映射在关系数据库的x m l 数据可以得到 合理而高效地利用。 关键词:x m l 、x m l 模式、关系模式、d t d 、x m ls c h e m a 、x m l q l 、 s q l 北方交通大学硕士研究生学位论文 a b s t r a c t w i t ht h ed e v e l o p m e n to fw e b ,t e c h n o l o g yc a n ts a t i s f yp e o p l e s p r o f o u n dl e v e lr e q u i r e m e n to fp r o c e s s i n gw 曲i n f o r m a t i o nm o r ea n d m o r e s oan e wm a r k u pl a n g u a g e 一x m lb r i n g su p i tp r o v i d e sm o r e c o n s u m m a t em e c h a n i s mf o rw e b sf u r t h e rd e v e l o p m e n t b e c a u s e x m ls t r e n g t h e n so u ra b i l i t yo fp r o c e s s i n gi n f o r m a t i o no nt h ew 曲 s i n c ei t si n i t i a lv e r s i o ni sm a d e m a n yp e o p l eh a v ea c c e p t e di ta n d a p p l i e d i tt om a n yf i e l d s t h e r ea r eo n l y2 0y e a r so rs oi na p p e a r a n c eo f t h ei n t e m e t t h e r e a r eo n l yt e ny e a r $ i nt h ea p p l i c a t i o no fw 曲s om o s to fo u rd a t aa r e n o ts t o r e da sx m lf o i t n t h em o s tc o m m o nf o r mi sr e l a t i o n a lm o d e l i nd a t a b a s e b e c a u s cr e l a t i o n a ld a t a b a s ej sam a t u r et e c h n o l o g y , i th a s m a n ya d v a n t a g e si np r o c e s s i n gd a t a d i s c a r d i n gr e l a t i o n a ld a t a b a s ei s v a i na n dn o tr e a l i s t i c w es h o u l di m p l e m e n tt h ec o n v e r s i o nb e t w e e n x m la n dr e l a t i o n a ld a 掘b a s et os a t i s f yo u rd i f f e r e n tr e q u i r e m e n t sb y m a k i n gu s eo ft h e i re a c ha d v a n t a g e s t u d yi n t h i sf i e l dh a sg r e a t a p p l i c a b l em e a n i n g s ,s oi tg e t sm a n ys c h o l a r s a t t e n t i o n i no u r c o u n t y , t h es t u d yi sl e s s w eh a v ed o n es o m e w o r ko ni t o nt h eb a s i s o ff r u i to ft h o s es c h o l a r s w ep u tf o r w a r das e to fw a y so f i m p l e m e n t i n gm o d e le x c h a n g eb e t w e e nx m la n dr e l a t i o n r e l e v a n t p a p e r sh a v eb e e np u b l i s h e di n 【1 2 1 3 4 1 t 1 1 i sp a p e ri s t h e s u m m a r yo fs o m er e s e a r c h w o r ka n dr e a l i z a t i o nf o u n d a t i o no f x i n h u aa i r l i n e s c o r r e s p o n d i n gs y s t e m f i r s t ,o n t h eb a s i so f s u m m a r yo tm a n ym a p p i n gw a y s ,w eb n n gt b r w a r daw a yo f i m p l e m e n t i n gm a p p i n gw i t hd t dt h r o u g hm u l t i p h a s e se x t r a c t i o n a n dt r a n s f o r m a t i o no fx m li n f o r m a t i o n s e c o n d a f t e rr e s e a r c ho f m a p p i n gf r o mr e l a t i o n a lm o d e lt ox m lm o d e lw i t hd t d w e i m p l e m e n t t h e m a p p i n gw i t h an e wb u tm o r ec o m p l e x s t a n d a r d x m ls c h e m a b e c a u s ex m ls c h e m ac a l ld e s c r i b em o r e i n f o i t n a t i o nt h a nd t dd o e s w ea l s ou s em o r es i m p l es t r u c t u r et o s t o r a g e x m ld o c u m e n t s d y n a m i ci n f o r m a t i o na n dr e l a t i v e i n f o r m a t i o n t h i r d w ed i s c u s st h em a p p i n gw a yo ff r o mx m l q lt o s q l x m l - q li so n ex m lq u e r yl a n g u a g e t h ec o n v e r s i o nb e t w e e n q u e r yl a n g u a g e sc a np r o v i d er a t i o n a la n dh i g h e f f i c i e n tu s eo fd a t a t h a tm a p p e di n t or e l a t i o n a ld a t a b a s e k e y 、,o r d s :x m l 、x m lm o d e l 、r e l a t i o n a im o d e l 、d t d 、x m l 2 北方交通大学领士研究生学位论文 s c h e m a 、x m l q l 、s q l 3 些立銮望盔兰堡! 竺壅竺堂! ! 堡苎一 1 1 研究背景 第一章研究综述 自从1 9 9 8 年2 月w 3 c 发布x m l ( e x t e n s i b l em a r k u p l a n g u a g e ) 1 0 语法的推荐标准以来,由于其国际性、结构化、标 准化等优点,x m l 得到了充分的发展。除了标准本身不断的得到 完善,而且陆续有新的应用标准制定,大大的提高了x m l 的应 用范围和前景。 大家对x m l 的发展和应用都给予了相当的重视,对于x m l 可能给未来互联网的发展所起到的作用都给予了极高的评价。如 2 0 0 0 年5 月9 日,美国微软公司的比尔盖茨总裁在 “n e t w o r l d + i n t e r o p 2 0 0 0 ”上做基调讲演中提到“新一代因特网的 关键在于把握x m l ,现在的因特网是以w e b 浏览器为中心构成 的。如果使用x m l ,就可以统一多种语言,多种数据格式以及多 种表现方式。因此,微软公司将把其操作系统和应用软件产品全 都与x m l 相对应。x m l 将来将成为具有相互连接特性的因特网 标准”。 现在许多公司都在自己的产品中提供对x m l 的支持,并且 纷纷加紧自己x m l 产品的研制和开发。如m i c r o s o f t 公司在 i n t e m e te x p l o r e r 5 中为x m l 提供了较高级的支持,在数据库产品 s q ls e r v e r 中也在不断增加对x m l 的支持程度。浏览器的另 个大生产商n e t s c a p e 的m o z i l l a 工程最近也提供了对x m l 的巨大 支持。数据库公司更是不遗余力的在将x m l 与关系数据库相结 合,以期提高数据库的处理数据方面的能力和范围【5 。 在实际应用中,人们也有实现x m l 数据与关系数据相互映 射的需求。对于一些业务范围比较广的大公司如新华航空公司, 它的主要设备供应商都是大型跨国公司,许多设备的资料都是 v i l 数据文件的形式。而在日常管理中,设备的使用信息则是关 系数据的形式,所以他们迫切的需要一个系统提供数据格式之间 的转换。从而能更好进行资料的共享和信息的沟通。 综上所述,实现x m l 数据与关系数据的映射都具有极其重大 的实际意义和应用价值。我们实现了这种映射,就等于在不同形 式的数据之间建立一座桥梁,使得数据能在两个系统中自由交换, 通过不同的表现形式实现不同的目的,满足我们不同的需求。我 北方交通人学颁上研究生学位论文 们认为主要具有以下几个方面的意义: 1 ) 实现了关系模式向x m l 模式的转换,就可以很容易实现数据 的w e b 化。我们就可以将存储在关系数据库中的历史数据以 一种全新的表现形式放在w e b 上,提供更为全面的数据服务。 2 ) 实现了关系模式向x m l 模式的转换,我们可以更加容易的实 现数据交换。当数据以x m l 形式存在时,就不会有关系数据 库中不同数据库的数据之问需要第三方工具进行转换的问题。 3 ) 实现了x m l 模式向关系模式的转换,我们可以更好的管理 x m l 数据。x m l 数据是以a s c i i 文件形式存在的,虽然它 有很多优点,但是以多个文件存在不但不好管理而且不易查 询。所以当数据转换为关系模式后,我们就可以充分的利用关 系数据库的成熟技术进行各种处理。 1 2 研究动态 我们在这部分介绍一下x m l 存储的研究动态、x m l 数据库 的研究动态以及x m l 模式与关系模式映射的研究现状。 1 2 1x m l 的存储研究动态 由于x m l 的应用越来越广泛,所以如何保存x m l 格式的数 据也成为人们关注的重点。现在x m l 数据绝大部分是以a s c i i 文件形式保存的。这样有许多优点,如:它不需要其他管理系统 的支持,实现起来较为简单;即使文件的一部分被损坏,其他数 据还是可以被利用,不受影响;便于交换和传输,进行数据交流 等等。而且现在的浏览器如i e 和n e t t l e 都支持用默认模式直 接显示x m l 文档。但是用a s c i i 文件保存x m l 数据也有种种 缺点,如每次浏览和查询时都需要解析,修改数据很困难,以文 件形式存放的数据很杂乱不容易管理等等。所以许多专家也提出 了其他多种存储x m l 数据的方法。一种很有希望的方法是用数 据库对x m l 进行存储、检索和操作,即把x m l 标记的数据收入 一个框架中,在种更容易管理、更系统化、更为人们所熟悉的 环境中完成搜索、分析、更新和成果输出工作。存储x m l 数据 的数据库主要有以下三种: 1 ) 建立专门数据库进行管理。 这被认为是最好的一种管理x m l 数据的模式,但是由于 韭塑奎望冬兰婴兰堕塑兰兰垡堡兰一 x m l 标准刚制定不久,且还在不断的补充和修改,所以还无法针 对x m l 标准建立一个较为完善的数据库管理系统。而且一旦建 立的这种系统,又存在标准统一的问题,如果不能很好的解决这 一问题,将会严重的影响x m l 的通用性。 2 ) 转换到对象数据库中管理。 这种方法比较简单,且技术较为成熟,而且x m l 中各个要素 的性质和对象均很相似,所以比较容易映射和管理。但是由于对 象数据库应用范围较窄,所以此方法使用也很有限。 3 ) 转换到关系数据库中进行管理。 由于关系数据库经过几十年的发展,已经成为一种较为成熟 的技术,不但其存储性能上有很多的优化措施,而且针对数据的 查询和管理关系数据库也有许多成熟的技术来处理。所以这种技 术很适合处理大量的综合性的x m l 数据,关系数据库可以将这 些数据进行集合并提供强大的查询功能。 虽然这三个方面都有学者进行研究,但是大部分的研究工作 还是集中在后两个方面,特别是用关系数据库存储和管理x m l 格式的数据方面。 1 2 2x m l 数据库的研究动态 而从存储数据的格式考虑,用数据库存储x m l 数据有两种 不同的方式:内部不是以x m l 格式存储的x m l 数据库,叫做 “x m l e n a b l e d 数据库”:内部以x m l 格式存储数据,就称为 “n a t i v e x m l 数据库”。现在的研究主流是x m l e n a b l e d 数据库。 使用现有的数据库类型和产品而不是以原始格式来存储x m l , 是出自以下几种考虑:首先,普通的关系数据库已尽人皆知,而 n a t i v e x m l 数据库是新的:其次,人们熟知现有的关系数据库, 也了解它的性能,因此,他们不愿意转向n a t i v e x m l 数据库,因 为其性能,特别是可伸缩性尚未经过检验;最后,在企业看来, 选择关系数据库是比较安全的【1 1 。 n a t i v e x m l 数据库和x m l e n a b l e d 数据库都有相应的产品 出现。目前,最有名的商用n a t i v e x m l 数据库是s o f t w a r e a g 公 司开发的t a m i n o 。除了可以存储和访问x m l 外,t a m i n o 还具 备多项功能,包括o p e nd a t a b a s ec o r m e c t i v i t y 、符合u n i c o d e 要 求、h t t p 通信及处理非x m l 数据的能力。t a m i n o 拥有直接x m l 检索和特殊检索的能力,其查询语言强大而简短,可进入任意深 8 些垄奎堕盔兰堡! :业壅生兰竺堡兰一 度。 其他n a t i v e x m l 数据库包括d b x m l 、e x e e l o n 和x h i v e d b , 分别由美国的d b x m lg r o u pl l c 公司、 e x c e l o n 公司和荷兰的 t h ec o n n e c t i o nf a c t o r y 公司研制。n a t i v e x m l 数据库的最大问题 是性能问题。当所搜寻的信息位于大文档的末尾时,由于缺乏其 他机制,n a t i v e x m l 数据库只能艰苦跋涉到最后,而关系数据库 和面向对象数据库则可以将文档分成小块同时进行搜索,速度当 然要快得多。 x m l e n a b l e d 数据库主要是关系数据库和面向对象数据库。 这些数据库在收到x m l 后,将其分解为字段并按通常的方式存 储它们,当检索x m l 时,这些字段再被拼接成原状。如x y v i s i o n 公司研制的c o n t e m x m l 是一套内容管理系统,它可以在任何 一种流行的关系数据库中存储x m l 文件。l o t u s 公司的d o m i n o 数据库也可以处理x m l 。目前,许多主流的数据库厂商都在把 x m l 支持结合到其产品中,或者提供可在其数据库中使用x m l 的工具。i b m 提供了x m l e x t e n d e r f o r d b 2 ,以允许用户在d b 2 中存储x m l 文档,并提供一些新功能协助用户处理x m l 文档; m i c r o s o r 的s q ls e r v e r 6 5 和7 0 也进行了x m l 扩充,据悉s q l 将来要加入x m l 输出选项,用以向其他系统传送信息。o r a c l e 也拥有功能强大的x m l 索引引擎。 1 2 1 3x m l 模式与关系模式映射的研究动态 理论上现在对于x m l 模式数据和关系模式数据之间映射的 研究主要集中在三个方面:x m l 模式到关系模式的映射、关系模 式到x m l 的映射、x m l 查询语言到s q l 语言的映射。我们在 下面对这三个方面的研究动态做一个简要的介绍: 1 ) x m l 模式到关系模式的映射 现在的工作大多都是利用d t d ( d o c u m e n tt y p ed e s c r i p t o r ) 【1 4 】这一用来描述x m l 文档中标记和元素结构的语法约束文档 来实现x m l 模式到关系模式转换的。如a l i nd e u t s e h 等提出的 s t o r e d ( s e m i s t r u c t u r e d t o r e l a t i o n a l d a t a ) 系统1 1 5 1 ,综合关系和 半结构化技术来处理半结构化文档,对每一个稳定的模式,s t o r e d 就分配一个表,将不属于任何稳定模型的数据项存储在一个半结 构中。并且它还可以利用数据挖掘的方法来处理不符合d t d 的 x m l 文档。j a n a v e ls h a n m u g a s u n d a r a m 等在 1 6 1 提出原型系统, 北方交通大学顾上研究生学位论文 引入d t d 图,并以此为基础提出递归及集合值的处理方法和关 系表的简化。d a n i e l af l o r e s c u 等在 1 7 0 7 把x m l 文档作为一个 有序、有向的图,元素作为图中的结点,元素之间的关系用带标 签的边表示。他们还举出了三种从存储边的方法和两中存储图中 叶子的方法及这两种方法的六中不同组合存储方式。g e r t ik a p p e l 等在 1 8 1 中较为详尽的讨论了x m l 中不同性质的元素和属性与 关系表和字段的映射关系。 2 ) 关系模式到x m l 的映射 迄今为止研究人员对此也做了大量的研究工作,如r b o u r r e t 等在 2 0 1 中对表及字段的映射做了简单的描述,数据类型均映射 为p c d a t a ,没有对其他方面的问题做深入的研究;k e v i n w i l l i a m s 制定了从e r 图到d t d 转换的十一条规n 2 1 1 ,概括了 关系模式到x m l 的映射的过程;v o l k e rt u r a u 在x m l d b m s 中 实现了两者之间的转换 2 2 】,但是主要工作是基于 2 1 】中的内容之 上。 3 ) x m l 查询语言到s q l 语言的映射 到现在为止只有i o a n am a n o l e s c u 等对q u i l t 转换为s q l 做了 一定的研究 2 3 1 。他们提出q u i l t 查询语言重写的等价规则,并根 据q u i l t 查询语言的特点,分析其特征,在一个虚拟机构上实现 了查询语言的转化。 综上所述,在x m l 模式与关系模式相互映射方面,众多学者 已经取得了一定的成果。但是由于x m l 标准比较新,所以这三 个方面都还存在着一些尚未解决的问题或有待改进的地方。 1 3 研究工作 我们在前面些研究工作基础上进步深入,针对x m l 模 式与关系模式相互映射这一领域的一些问题,提出了自己的解决 办法,并成功的实现了个映射系统,应用在新华航空公司的 x m l 数据与关系数据的转换上。我们下面简要的介绍一下我们的 工作。 1 3 1 工作内容 我们的工作主要是: 1 ) 在总结多种映射方法的基础之上,提出一个利用d t d 文档 1 0 苎变銮望盔堂堕! :型塑竺堂垡堕苎一 在关系数据库中通过多阶段x m l 文档信息的提取与变换,最 终实现x m l 模式到关系模式的映射。 2 ) 我们在总结用d t d 文档描述关系模式向x m l 模式的转换信 息的方法基础上,利用x m ls c h e m a 相对于d t d 更为强大的 描述能力的特一陛,用较为简洁的结构保存了x m l 文件的动态 信息和相关信息,实现了关系模式向x m l 模式的完全转换。 3 ) 我们讨论了x m l 查询语言中的一种语言( x m l q l ) 到关系数 据库的标准查询语言s q l 之间的转化,使得映射在关系数据 库的x m l 数据可以得到合理而高效地利用。 最后我们的系统应用在新华航空公司的日常管理中,实现了飞 行数据不同格式的转换。即保证了关系数据库对飞行日常信息的 记录和监控,又保证了飞行数据以x m l 格式与其他公司进行信 息交流,取得了较好的应用价值。 1 3 2 工作重点 针对以前研究成果中的一些不足,我们的研究重点方面主要 集中在以下几个方面: 1 ) 在x m l 模型到关系模型的映射方面,在o e m 模型的基础上, 提出了一种更能描述x m l 文档结构的n o e m 模型。对x m l 文档中的各个要素进行了更为详细和准确的表示,从而减少了 映射的复杂性。 2 ) 在x m l 模型到关系模型的映射方面,我们的n o e m 模型的 物理模型包括内存的数据结构和数据库中的关系表。这样不但 解决了利用内存空间分析x m l 文档的其他模型对于文档大小 的限制,而且信息存储在关系数据库中,也使得将来文档结构 改变时,我们可以直接根据关系数据库中的信息构建内存中的 模型,减少了工作量。 3 ) 在关系模型到x m l 模型的映射方面,我们采用了相对于大多 数研究工作中所采用的d t d 文档更为严格和具体的x m l s c h e m a 文档来描述关系信息,使得关系模式的信息基本上都 保存了下来,保证了映射的完整性和有效性。 4 ) 在x m l 查询语言到s q l 的映射方面,我们针对有可能成为 x m l 查询语言参考标准的x m l q l 语言,提出了分两个阶段 进行映射。我们在不同的阶段分别实现结构信息和数据信息的 映射,减少了工作量,简化了工作的复杂度。 ! ! 查窒里叁兰塑土丛坚兰兰竺堡兰一一 1 4 论文组成 本论文主要分为以下几个部分: i ) 第一章研究综述,主要介绍课题研究的背景、意义、研究动态 以及我们所做的工作。 2 ) 第二章x m l 语言的产生,主要介绍x m l 语言的基础s g m l 语言、与x m l 语言互为补充的h t m l 语言,以及x m l 语言 的发展和优点。 3 ) 第三章x m l 标准的内容,主要介绍x m l 标准的三个层次: 元语言标准、基础标准、应用标准。着重介绍了映射依据元语 言标准、以及基础标准中的x m ld t d 和x m ls c h e m a 。 4 ) 第四章x m l 模式与关系模式,主要介绍了关系模式以及关系 模式和x m l 模式的不同。 5 ) 第五章x m l 模式向关系模式映射,主要介绍利用x m ld t d 文档得到x m l 的文档结构,并在n o e m 模型上,通过逐步 的信息提取,完成模式映射和数据导入。 6 ) 第六章关系模式向x m l 模式映射,主要介绍了关系模式的 x m ls c h e m a 描述,最后生成保存较完整关系信息的x m l s c h e m a 文档以及相应的x m l 数据文档。 7 ) 第七章x m l 查询语言向s q l 的转化,主要介绍了通过分阶 段转换,将x m l q l 的七种常用查询语言模式用s q l 语言表 水a 8 ) 第八章x m l 模式与关系模式映射的应用,主要介绍了新华航 空公司x m l 模式与关系模式映射系统的功能、框架和特点。 ! ! 垄奎望查兰堡! 堕窒皇堂焦笙兰一 第二章x m l 的产生 x m l ( e x t e n 是在w e b 迅速发展、信息交换的要求不断提高的 背景下产生的。x m l 是在s g m l ( s t a n d a r d g e n e r a l i z e dm a r k u p l a n g u a g e ) 的基础之上发展而来的,继承了s g 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 ) 也是从s g m l 发展而来 的,x m l 主要是针对h t m l 的不足进行补充,所以在介绍x m l 之前,我们先介绍一下s g m l 和h t m l ,最后介绍一下x m l 标 准的发展。 2 1s g m l 简介 s g m l 是由g m l 发展而来的。g m l 的制定是为了提供一个 可互操作系统的专用文件系统。随着标准制定工作的不断深入, 1 9 8 6 年国际标准化组织( i s o ) 采用了这套标准,并更名为s g m l 。 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 o m l 。很多大型组织利用 s g m l 进行复杂的电子文档交换。但是正是由于s g m l 所提供的 自由度太高,所以它非常复杂,应用领域也很窄,只用于一些对 文档的格式要求特别严格的场合【5 。我们在下面给出个s g m l 文档的例子: ! ! 塑奎望查兰堡! 竺垒兰兰些堕兰一一 1 0 1 2 9 9 y o u y o u r s c o m f r o m p m e m i n e c o m lj u s tm a i l e dt od a y 2 2 h t m l 的简介 h t m l 是由w e b 的发明者t i mb e m e r s - l e e 和同事d a n i e l w c o n n o l l v 于1 9 9 0 年创立的- z o o 标记式语言。它是标准通用化 标记语言s g m l 的应用。用它的语法规则建立的文档可以运行在 不同操作系统的平台上。因此,h t m l 文档属于纯文本文件。从 1 9 9 4 年到1 9 9 6 年,经过从h t m l 2 到h t m l 3 2 的发展,w e b 在 商业和个人用户群中迅速普及。1 9 9 7 年1 2 月底,w 3 c 发表了最 新的h t m l 推荐标准h t m l 4 。在h t m l 4 中表示标记与结构 标记分开,w 3 c 不仅回到了传统标记语言的根源,而且使自己便 于将x m l 引入w e b 世界。h t m l 已经走了很长的路,它走得很 快,但其本身作为一门被设计为用于格式化的标记语言的局限性 已日益明显。每次w e b 站点在规模上翻一番时,搜索引擎的局限 性都显得越来越明显。随着w e b 的逐渐普及,h t m l 在显示不容 易符合标准文本和图形模型的信息时,表现出来的局限性越来越 突出。由于h t m l 文档在结构上与x m l 文档有些类似,所以我 们在下面简要介绍一下h t m l 文档的结构。 h t m l 文件由元素( e l e m e n t ) 组成,组成h t m l 文件的元素有 许多种,用于组织文件的内容和指导文件的输出格式。绝大多数 元素是“容器”, 即它有起始标记和结尾标记。元素的起始标记 日q 做起始链接签( s t a r tt a g ) ,元素结束标记叫做结尾链接签( e n d t a g ) ,在起始链接签和结尾链接签中向的部分是元素体。每一个 元素都有名称和可选择的属性,元素的名称和属性都在起始链接 签内标明( 6 】。一个h t m l 文件应具有下面的结构: h t m l 文件开始 文件头开始文件头 文件头结束 文件体开始 文件体结束 h t m l 文件结束。 4 北方交通大学顾上研究生学位论文 2 3x m l 的发展 w 3 c 于1 9 9 8 年2 月发布x m l l 0 语法的推荐标准( 官方标 准1 。x m l 由从s g m l 委员会演变而来的w 3 c 的x m l 工作组控 制。x m l 工作组控制与x m l 直接相关的大部分规范,包括x m l 语法、x m l 扩展链接和x m l 分段使用。同时,w 3 c 的其它工 作组控制其它支持性标准,如文档对象模型( d o m ) 、级联样式表 f c s s ) 和可扩展样式语言( x s l ) ,以及补充或应用x m l 的标准, 如多媒体同步一体化语言( s m i l ) 以及资源描述框架( r o f ) 等。 w 3 c 的x m l 工作组仍然在不断的修改和完善x m l 标准的内容, 最新的标准可查阅h t t p :w w w w 3 o r g x m l 。 x m l 标准刚发布时,对x m l 的支持大部分停留在程序员能 够使用的水平,但一般的h t m l 开发人员还不能够使用。这种状 况现在正在慢慢改变,许多公司正加大支持x m l 标准的力度。 x m l 能迅速的得到广泛的应用,主要因为它具有以下几个优点 7 】: 1 ) x m l 是国际性的标准。它是以u n i c o d e 为基础。u n i c o d e 为每 一个字符考虑到较大的存储空间,让能够u n i c o d e 包含外国字 符。s o m l 与h t m l 都是以a s c i i 为基础,这在面对外国字 符时将常常无法正常运做。 2 ) x m l 可以结构化。利用d t d 、x m l 可以结构化,好让内容 和语法都能轻易的进行验证。这种强化的结构化特性让你可以 建立标准化而且有效的x m l 文件。 3 ) x m l 文件可以使用组合的方式建立。利用x m l 更具威力的 链接方式,文件可以利用其他文件的组合来建立。这种强化的 链接系统让你只需选择其他文件上你想要的部分,就可以轻松 的建立自定义文件。 4 ) x m l 可以作为数据容器。x m l 非常适合作为资料的容器。利 用d t d ,你可以有效的呈现几乎所有的数据,让人们、计算 机分析程序与应用程序可以阅读。 5 ) x m l 提供了弹性。x m l 让你可以不使用d t d 或者使用d t d 来将文件的结构定义成最详尽的内容。利用d t d ,你可以定 义出文件的正确结构,让数据与内容的结构都能被轻易的验 证。 6 ) x m l 容易使用。x m l 只比h t m l 稍微复杂一些。 ! ! 垄奎婆查兰堡! 堕塑兰堂些丝墨 一一 第三章x m l 标准的内容 x m l 标准种类繁多,w 3 c 指定的相关标准就有二十多个, 采用x m l 指定的重要的电子商务标准就有十多个。x m l 标准可 分为元语言标准、基础标准、应用标准三个层次 8 1 。如图2 - 1 所 示: 图2 1 1 ) 元语言标准( m e 协1 a n g u a g e ) :描述的是用来描述标准的元 语言。在x m l 标准体系中就是x m l 标准,是整个系统 的核心,其他x m l 相关标准都是用它制定的或为其服务 的。 2 ) 基础标准( f o u n d a t i o ns t a n d a r d s ) :这层次的标准是为了 x m l 的进一步实用化制定的标准,规定了采用x m l 制定 ! ! 垄奎望盔兰塑! 塑塑竺兰些堡兰一 标准时的一些公用特征、方法或规则。如:x m ls c h e m a 描述了更加严格的定义x m l 文档的方法,以便可以更自 动化地处理x m l 文档;x m ln a m e s p a c e 用于保证x m l d t d 中名字的一致性,以便不同的d t d 中的名字在需要 时可以合并到一个文档中等等。 3 ) 应用标准( a p p l i c a t i o ns t a n d a r d s ) :x m l 已开始被广泛接 受,大量的应用标准,特别是针对i n t e m e t 的应用标准, 纷纷采用x m l 进行制定。当前较为重要的应用标准主要 包括:s m i l ( 有关多媒体同步显示的) 、w a p ( 无线应 用协议) 、w i d l ( w e b 接口定义语言) 、c d f ( 频道定义 格式) 。 3 i 元语言标准 元语言标准是用来规定x m l 文档语法的,它确定x m l 文档 应该由那些元素构成,这些元素应该以什么样的形式出现。所以 元语言标准是整个x m l 标准的基础。我们在下面简要介绍一下 元语言标准所规定的x m l 文档的结构和形式【8 】: 1 ) 序:文档的序包含了除内容和标记之外的所有相关信息。序通 常包括指向应用处理的特殊指令。 2 ) x m l 声明:x m l 声明完成两个重要的任务。第一部分指明文 档是x m l 文档;第二部分告诉处理文档的应用程序是只处理 文档,还是文档和d t d 。 3 ) 处理指令:用来给处理x m l 文档的应用程序传递信息。指明 在文档中,用来描述非a s c i i 字符的字符代码系统。处理指 令或p i 定义为提供信息给软件应用程序使用的标记。 4 ) 元素:元素是主要的标记部件,在d t d 中通过元素声明定义。 元素在文档中非常明显,因为它用标志做了标记。标志提供对 内容最基本的描述。多数标志是成对出现的,用一个放置在描 述开始部分的s t a r t 标志开始,而用一个放置在描述结尾部 分的e n d 标志结束,描述的内容则放在s t a r t 和e n d 标志 之间。标志也可以是单独的。它的隐含意思是e m p t y 标志。 一个e m p t y 标志不能包含另外的元素或常规元素,因为它没 法用s t a r t 和e n d 标志包含任何东西。e m p t y 元素被用来 在文档中插入实体,或者通过属性值而不是通过描述的内容来 提供内容。 北方交通大学颂l 研究生学位论文 5 ) 内容:在非e m p t y 元素中内容实际上就是基于文本的常规 数据。它们位于元素的开始标识符和结束标识符之间。 6 ) 属性:属性为元素提供附加的信息。许多元素都通过d t d 的 属性列表定义,使用一个或多个属性。它们给描述添加一种级 别规范,要求什么样的标志必须嵌套在什么样的标志当中。属 性可以拥有许多不同类型的值,包括从列表中选择的预定义值 和用户定义的文本。有些属性是必须的,也有些是可选的。不 管它们的形式和需求状况如何,属性的使用方法和标志没什么 区别。通过属性,可以要求在每一次使用某个元素时,必须包 含确定的信息,或者为了确保当x m l 处理器处理由d t d 编 写的文档时,能根据需要设定的固定值去正确的处理它们。正 确的属性定义还可以帮助避免由于数据不相符而引起的问题, 数据不相符的文档也在文档创建中经常遇到。属性由一个属性 名和相关的值组成。 7 ) 实体:通常实体就是数据单元。实体可以包含二进制数据、图 形、声音文件甚至j a v a 小程序。实体可以很容易的包含文本 数据,描绘一个x m l 文件中所包含的大块文本。不管类型如 何,包含在x m l 文档中的每个实体都必须预先定义在文档的 d t d 中,甚至结构化的文档也有d t d ,因为它们总是包含实 体的。每个x m l 文档都有一个外部d t d 和一个内部d t d 。 外部d t d 包含所有通用的声明比如元素和属性。那些适用所 有文档的d t d ,内部d t d 则定义文档的特殊部分,比如那些 只用在个别文档里的图形实体声明。实体是x m l 最有用的特 性之一。利用实体,可以将几个x m l 文件组合成一个,甚至 可以创建一组组进程使用的元素和属性,以便在构建d t d 时 能得到便捷的参考。 8 ) 注释;x m l 中书写的注释语法等价于h t m l 和s g m l 中的 注释:它以标记说明打开定界符( ! ) 和注释打开定界符( 一) 开始,形成组合定界符 ! 用注释关闭符和标记说明关闭符 专关闭注释。 3 2 基础标准 基础标准包括一系列支持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 文档 ! ! 立奎望叁堂堡! ! 壁塑竺兰垡堡苎一 的结构。所以我们主要介绍其中若干个重要的标准:文档类型定 义d t d ( d o c u m e n tt y p ed e f i n i t i o n ) 、x m ls c h e m a 、x m l 名称 空间( x m ln a m e s p a c e ) 、扩展样式语言x s l ( e x t e n s i b l es t y l e l a l l g u a g e ) 规范、x m l 链接语言规范( x m ll i n k i n gl a n g u a g e ,包 括x p a t h 、x l i n k 和x p o i n t e r ) 。 3 2 1x m l d t d x m l 文件结构可以利用两种标准来定义。第一种标准是 x m l 规格,它定义了建立所有x m l 文件的预设规则。任何符合 x m l 规格中所定义基本规则的x m l 文件都被称为格式完整的 x m l 文件。第二个标准,是由文件的作者所建立,被定义在文件 类型定义d t d ( 或x m l s c h e m a ) 中,这个标准是选择性的。当 x m l 文件符合定义于d t d ( 或x m ls c h e m a ) 中规则时,该文 件就称为有效的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 ,文档类型定义) 规范实际 是x m l 规范的一部分,同时又是可选的:可以写一个没有d t d 的x m l 文档。d t d
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2019管理会计考试题及答案
- 17年高考试题及答案
- 广东省茂名市龙岭学校2024-2025学年九年级下学期3月月考英语试题
- 华北电力大学工程热力学教案第18讲 水和水蒸气的热力性质及热力过程
- 2025至2030年中国立式磨粉机行业市场研究分析及发展趋向研判报告
- 三年级语文下册第六单元神奇的宇宙17科利亚的木匣同步练习鄂教版
- 2024-2025学年二年级语文下册第四单元练习62教案苏教版
- 五年级语文下册第三单元提升练习湘教版
- 档案信息化与智能化应用的场景化研究-洞察阐释
- 农产品加工市场潜力分析-洞察阐释
- 建设项目全生命周期安全风险管理研究
- 钢结构电梯井道合同模板
- 室内装修施工设计方案模板
- 湘教版六年级音乐教案下册
- 四川省内江市隆昌市2024-2025学年六年级下学期小升初真题数学试卷含解析
- 变频器应用课件
- 人工智能在地球观测中的应用-深度研究
- 2023年中小学心理健康教育课程标准
- 煤矿各类重大灾害预兆
- 逻辑思维训练500题(带答案)
- 政务公开培训课件模板
评论
0/150
提交评论