(计算机软件与理论专业论文)web文档中信息的获取与表示研究.pdf_第1页
(计算机软件与理论专业论文)web文档中信息的获取与表示研究.pdf_第2页
(计算机软件与理论专业论文)web文档中信息的获取与表示研究.pdf_第3页
(计算机软件与理论专业论文)web文档中信息的获取与表示研究.pdf_第4页
(计算机软件与理论专业论文)web文档中信息的获取与表示研究.pdf_第5页
已阅读5页,还剩54页未读 继续免费阅读

(计算机软件与理论专业论文)web文档中信息的获取与表示研究.pdf.pdf 免费下载

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

文档简介

重庆人学硕士学位论文 中文摘要 摘要 本论文所研究的课题是国家科技部“十五”科技攻关项目“课件制作与转换 :l = 具”项目的一部分。论文主要工作为:研究一种能够从w 曲文档中抽取出信息 的算法:分析h t m l 语言的特点,以确定信息在w e b 文档中的表现形式;参考 l o m ( l e a r n i n go b j e c tm e t a d a t a ) 模型,定义出一套用x m l 简洁描述w e b 文档 的模型;利用从w e b 文档中抽取出来的信息,把原来的w e b 文档转换成符合我 们提出的模型的x m l 文档。 论文首先简要的说明了描述w e b 文档所采用的h t m l 的缺点,进而阐述了把 w e b 文档转化为x m l 格式的重要性,然后概述了研究课题的意义。论文的主体部 分是研究如何从w e b 文档中获取信息并把他们用x m l 描述出来,且做到尽量的不 失真。 论文分析了几种传统的从w e b 文档中获取信息的方法的不足。论文所阐述的 获取方法是通过解析w e b 文档中h t m l 的标记来获取文档中的描述信息和结构 信息。我们将文档中的信息分为四类:文本信息、图象信息、动画信息和流媒体 信息。对不同的文档信息我们采用了不同的处理方法,从而使得解析更具有针对 性。对几乎所有的h t m l 的标签都进行了处理,使得解析更加的完备。 如何用x m l 来表示文档信息,使用什么样的格式来描述所获取出来的信息, 这就是制定一个描述w 曲文档的x m l 标准模型( d t d ) 的问题,这是本文的重 点。本文先定义了w e b 文档的数学模型,分别对w e b 文档中的实体、属性、关 系、窗体、事件和响应等概念进行了说明,把w e b 文档看成一个实体的集合。然 后阐述了w 如文档的描述模型,分别对w e b 文档的元数据、组织结构、媒体资 源、页面资源、窗体资源和窗体之间的关系进行了定义。这样我们就对一个w e b 文档在逻辑和物理上分别进行了定义。在这个模型中,w e b 文档中不同元素之间 的位置信息被提取出来并保留下来,从而使得转换过后的文档和原文档在结构方 面保持了一致性,保证了文档结构的不失真。 最后开发了基于上述模型的软件,做到了实践和理论相结合。论文所提出的 模型在国家科技部“十五”科技攻关项目“课件制作与转换工具”项目中得到了 直接的体现。 关键字:w e b ,x m l ,信息获取,信息表示 重庆大学硕士学位论文 英文摘要 a b s t r a c t w h a tt h i sd i s s e r t a t i o nr e s e a r c h e di sa p a r to f c o u r s e w a r em a k i n ga n ds w i t c ht o o l s p r o j e c t s u p p o r t e db y t h e s c i e n c e - t e c h n o l o g yp r o j e c t o ft h en a t i o n a l t e n t h f i v e - y e a r - p l a n o fc h i n a t h ep r i m a r yt a s ko ft h ed i s s e r t a t i o ni s r e s e a r c h i n gt h e a r i t h m e t i c w h i c hc o u l dg e ta n ds a v ei n f o r m a t i o nf r o mw 曲d o c u m e n t s ;a n a l y s i n gt h e s p e c i a l t yo f h t m lt oc o n f i r mi t se x p r e s s i o nf o r mi nw e b d o c u m e n t ;d e f i n i n g am o d e l o fw e bd o c u m e n t c o m p a c t l yb yx m l ,r e f e r r e d t ol e a r n i n go b j e c tm o d e l ( l o m ) a n d ax m ld o c u r n e t t tw en e e dw o u l db eb u i l tb yt h ei n f o r m a t i o nw h i c hw a sf r o mt h e f o r m e rw 曲d o c u m e n t a tf i r s t , t h ea r t i c l ed e s c r i b e dt h ew e a k n e s so fh t m li nw e bd o c u m e n t ,t h e n d e s c r i b e dt h ei m p o r t a n c eo ft r a s f o r mf r o mw 曲d o c u m e n tt ox m l d o c u m e n t ,a tl a s t , t h ea r t i c l es u m m a r i z e dt h es i g n i f i c a t i o no ft h i st o p i ci nd i s s e r t a t i o n i t sm a i n b o d y i s h o wt ot r a n s f e r 、7 l 铀d o c u m e n ti n t ox m lf o r m a t a n dn od i s t o r t i o n 1 1 1 i ss t u d ya n a l y s e dt h ew e a k n e s so ft h em e t h o di ng e t t i n ga n ds a v i n gd a t af r o m w e bd o c u m e n tw eu s e db e f o r e a n di td e s c r i b e dt h en e wm e t h o dw h i c hi st og e t d e s c r i p t i o na n d s t r u c t u r ei n f o r m a t i o nb y p a r s i n g t h et a g so f h t m li nw e bd o c u m e n t s w ea s s o r t e da l li n f o r m a t i o nw i t hi t sf o r m a t t h e r ea r et e x ti n f o ,i m a g ei n f o ,a n i m a t i o n i n f oa n ds t r e a mf o r m a ti n f o w ed e a l td i f f e r e n ti n f ow i t hd i f f e r e n tm e t h o d s oi ti s m o r ee f f e c t i v e e v e r yt a gw a sm a n a g e dt op a r s e m a t u r e l y h o wt o e x p r e s sd o c u m e n ti n f o r m a t i o nw eg o tb yx m l i ti s t h eq u e s t i o no f e s t a b l i s h i n gt h ed o c u m e n tf o r m a t ( d t d ) b y x m l a n di ti sp i v o to ft h i ss t u d y i nt h e b e g i n n i n g , w ed e f i n e dt h el o g i cm o d e l ,e x p l a i n e de n t i t y , p r o p e r t y , r e l a t i o n ,w i n d o w s , e v e n t sa n de c h ow h i c ha r ei nw 曲d o c u m e n tc o n s i d e r e da sas e to fe n t i t i e s t h e n t h e s t u d yd e s c r i b e dw e bd o c u m e n td e s c r i p t i o nm o d e l ,d e f i n e dt h er e l a t i o n s h i pb e t w e e n m e t a d a t a ,s t r u t u r e ,m e d i ar e s o u r c e ,p a g er e s o u r c e ,w i n d o w sr e s o u r c ea n df o r m s n o w w eh a v ed e f i n e dw e bd o c u m e n tl o g i t a l l ya n dp h y s i c a l l y t h ep o s i t i o no fd i f f e r e n t e l e m e n t so fw e bd o c u m e n tw e t e g o ta n ds a v e d t b i si st h ew a y t ob es u r et h a tt h en e w d o c u m e n tw a st h es a n l ea st h ef o r m e rd o c u m e n ta n dn od i s t o r t i o n a tl a s tw e d e v d o p e dt h es o f t w a r eb a s e dt h em o d e l t h em o d e la d v a n c e db y t h i s d i s s e r t a t i o nw a su s e di nt h ep r o j e c ts u p p o r t e db yt h es c i e n c e - t e c h n o l o g y p r o j e c to f t h e n a t i o n a l t e n t hf i v e - y e a r - p l a n o f c h i n a k e y w o r d s :w e b ,x m l ,i n f o r m a t i o na c q u i s i t i o n ,i n f o r m a t i o nr e p r e s e n t a t i o n i i 重庆人学硕二f 二学位论文1 绪论 1 绪论 1 1 问题的提出及研究意义 1 1 1 问题的提出 课件制作工具是网络教育平台的核心软件,是教育部网络教育关键技术及示 范工程项目之一。该项目的目标是研制简单易学易用的课件制作工具,使普通教 师能制作出体现各种教学方法和教学模式的课件和课程,学生能够进行个性化的 学习。传统的课件制作工具在研制技术上缺乏系统的理论分析,没有遵循统一的 标准。以至于在开放性和可扩展性方面存在诸多缺陷,例如不能和资源库有机集 成,课件的共享性和复用性差。因此,我们结合教育资源建设技术规范设计 了一套课件模型及描述语言,以期作为课件制作工具研制的基础。本论文对这一 套模型进行了扩展,不仅针对课件,而且可以适应w e b 上的其他文档。 我们从w e b 文档的数学模型和描述模型两个层次描述该模型。w e b 文档的数 学模型中定义了w e b 文档中的基本概念体系及其相互关系;w e b 文档的描述模型 是在数学模型的基础上,从元数据、w e b 文档的资源、w e b 文档的组织结构、评 注标记四方面对w e b 文档进行详细描述。 1 1 2 研究的意义 本课题是国家科技部“十五”科技攻关项目“课件制作与转换工具”项目的 部分。 当前的w 曲文档大都是用h t m l 语言描述的静态页面,但是用h t m l 描述 的文档具有一些缺点: ( 1 ) 难以扩展 ( 2 ) 交互性差 ( 3 ) 对双字节或多国文字的支持不够等 x m l 与之相比具有很大的优势: ( 1 ) 在i n t e m e t 上直接使用。 ( 2 ) 容易编写。 ( 3 ) 清晰易读和简洁性等 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 的一些缺 点。因此我们把现在网络上的用h t m l 表示的文档中的知识获取出来并把它们表 示( 重构) 成x m l 的格式就具有很大的意义。 把h t m l 转换成x m l 以后,为了让转换过后的x m l 文档与原来用h t m l 表示的文档基本保持一致,做到基本不失真,这就需要在转换h t m l 文档时把它 重庆人学硕士学位论文 l 绪论 的结构信息保存下来。 w e b 文档中大量资源包含半结构化的信息。所谓半结构化信息是指它既不象 天然数据,如图像或声音等;也不象常规数据库系统中严格结构化的数据,如关 系数据库中的表或对象库中的有序图等。 当我们把w e b 文档中的结构信息获取出来以后,就可以在用x m l 重构w e b 文档时充分利用这些信息,为以后的再现和查询提供很大便利。因此,从w e b 文 档中提取出结构信息并把它们用x m l 表示出来就具有十分重要的意义。 1 2 国内外研究现状 如何从w e b 网页中抽取出所需要的信息,已成为互联网信息搜索与集成研究 领域中一个重要的研究课题。这个新的研究课题虽只有几年的研究历史,却已取 得了许多重要的研究成果。w e b 网页是一种半结构化( s e m i s t r u c t u r e ) 媒体资源集 合、目前主要是利用w r a p p e r 方法从这些网页中抽取出所需要的信息。而这些从 网页中抽取信息的w r a p p e r 则主要是由信息模式识别知识和利用这些识别知识进 行信息抽取的代码组成。由于w r a p p e r 信息模式识别知识的获取,是一个费时费 力且需要较高智能的工作,因此目前w c b 网页信息抽取研究工作的重点之一就 是,探索如何能够较为容易的获得构造一个w r a p p e r 所需信息模式识别知识的有 效方法。【2 】 利用w r a p p e r 技术方法抽取w e b 网页中有关信息,主要存在以下两个缺点: 一、由于绝大多数网页信息抽取所需知识的表示均与网页内容的具体表示格式密 切相关,因此使得这类w r a p p e r 方法很难适应互联网动态变化的特点:二、由于 大多数网页信息抽取所需知识均是由用户自己提供;即使采用了一些机器学习方 法,也需要用户事先提供大量的学习示例、尤其需要提供各种具有代表性的学习 示例,方可学习获得有效的信息抽取模式知识、因此这也使得这类w r a p p e r 方法 的实用性大受影响。 1 】 针对目前w e b 网页信息抽取方法存在的上述问题,现在提出了一种基于多知 识w e b 网页信息抽取方法( m u l t ik n o w l e d g ei n f o r m a t i o ne x t r a c t i o n ,简称m k i e 方 法) 陋 。该方法的基本思想,就是将w c b 网页信息抽取所需知识分为两类,一类是 确定性模式知识,它们与网页的具体内容与表示格式关系不大;另一类则是非确 定性模式知识,它们与网页的具体内容与表示格式联系较紧。抽取网页信息时, 先利用前一类知识,动态分析获得后一类知识;然后再利用这两类知识,完成 w c b 网页的信息抽取工作。 与现有的网页信息抽取方法相比,m k i e 方法具有以下三个特点: 1 它将网页信息抽取所需知识分为两类,即与网页实际内容表示关系不大 嚣庆火学硕士学位论文 1 绪论 的确定性模式知识,以及与网页实际内容表示联系较密的非确定性模式知识; 2 它利用确定性模式知识,自己动态分析获得具体网页信息抽取所需的非 确定性模式知识而无需用户参与,并最终有效地利用这两类知识,完成网页信息 抽取工作; 3 用户根据自己对相关网页内容的了解,能够很容易地给出网页信息抽取 所需的确定性模式知识;而m k i e 方法也将根据自己的抽取结果,自动更新修改 所掌握的非确定模式知识。 解决w e b 网页信息抽取问题的关键就是要解决w e b 网页内容的理解问题,而充 分准确地理解网页内容就需要掌握大量的不同类型、层次的知识,有效获取并表 达出这些知识,其难度要远甚过解决具体w e b 网页信息抽取问题本身,因此目前 w e b 网页信息抽取问题解决方法所涉及的信息模式描述知识均较为简单,且大多与 网页内容具体表示风格密切相关。由于w e b 网页内容表示形式变化多端,因此要使 所设计出的网页信息抽取方法,能够适应多变的网页表示形式,且即使在遇到事 先未知的描述形式时,也能较好地完成w c b 网页的信息抽取工作,是目前研究的重 点问题。 为了有效解决网页信息抽取所需知识的表示与获取问题,m k i e 方法将网页信 息抽取所需的知识分为两类,一类是描述网页信息内容本身特点的基本知识用 户根据网页信息抽取的具体应用情况,能够很容易给出这类知识;另一类则是描 述网页信息内容具体描述形式的模式知识,这类知识可以根据已有的基本知识, 通过对具体w e b 网页的动态分析学习,自动获得而无需用户参与。 m k i e 方法的w e b 网页信息拍取过程主要分为两个阶段,第一阶段是根据所掌 握的基本知识,动态分析获得网页信息记录块的具体描述模式知识:第二阶段就 是根据所掌握的模式知识、从网页中抽取描述格式类似的各信息记录块,如:论 文网页中各篇论文的信息记录块:并从这些信息记录块中,再抽取出各信息对象 值,如:论文作者和论文题目等。 1 2 1w 曲文档信息的获取的研究现状 l 、启发式方法:按照各个部分字体的的大小和缩进的距离推导出页面上的层 次结构。 2 、采用用户输入页面描述文件对层次结构进行抽取,该描述文件需要用户描 述抽取过程的具体变量和编写抽取方法,只能适用于某种特殊的页面,这 就失去了般性。 3 、w r a p p e r 技术是用的比较多的信息抽取技术之一。它从含有特定格式数据的 网页中提取出结构化数据供相关的应用程序使用。由于现有的很多网页是 基于后台数据库、利用脚本程序动态生成的,网页信息比较规整,w r a p p e r 重庆人学硕士学位论文1 绪论 使用的效果就很好。然而,不同的网站之间,它们的网页格式是很不一样 的,这就需要不同的w r a p p e r 来解决不同网站的信息抽取问题。w r a p p e r 的编写工作量又很大。针对这一。隋况,人们发展了半自动化、自动化构造 w r a p p e r 的技术,其基本原理是使用一些样本网页及对应的目标结果,采用 机器学习的有关算法,对w r a p p e r 的框架原型进行训练,生成一个可以解 析与样本网页类似网页的w r a p p e r 。不管是手工编制的、还是自动生成的 w r a p p e r ,它们所要解析的网页,一般都要或多或少的预先有所了解才行。 并且,用w r a p p e r 最终生成的数据模式,主要依赖于原网页或其后台数据 库的数据模式,基本上是一种数据模式的还原,缺乏主动性的对数据的语 义理解。 4 、另一类相关的技术是网页元数据加注技术,就是使用某种规范的元数据语 言,如r d f r d f s 、s h o e 、o i l ,以一定的方式对网页进行描述。一般来 说。这些语言都能表示实体:关系、类别等概念。这样,经过加注的网页 就有比较丰富的语义信息了。如果面对的是这样的网页资源,那信息的抽 取将变得更加灵活,网页内容的机器理解也将容易实现。然而遗憾的是, 这样的网页在万维网上并不多见,随着如何构造网页描述规范的深入研究, 如何使用这些规范来加注网页也越来越成为一个研究课题。 为了减少系统维护的工作量,加大系统的自动化程度,使用基于o n t o l o g y 的网页自动加注方法【7 j 。方法的基本思想是:首先分析网页的全文、着重 分析一些关键部分( 如t i t l e 、h e a d i n g 等等) 、网页之间的链接关系。然后 通过相关算法在o n t o l o g y 中选出恰当的词汇来表达这网页中蕴含的语义。 用以下形式表示o n t o l o g y 中的一个类别: 口【w l ,w 2 ,a ( a l ,a 2 ,囊b ( 6 1 ,6 2 , j 其中,w i 是用来表示a 的典型词汇,a 、b 是a 中存在的属性,对应的a ;、 b i 是描述a 、b 的典型词汇。词汇的选择经过了样本文档集的训练。 网页文档的表示如下: d b t 2 ,h 惭,h 2 ,囊三( ,1 1 2 k l 其中,t i 是对文档分析后得到的一组频度较高的词;而日、则表示文档中语 义相对集中的块,如一个子标题及与其紧邻的部分,一个超链中的描述及其上下 文;对应的h i 、l i 则为相应的词句描述。 由于o n t o l o g y 的初始构造与网页实际情况总会有一定的差异。这种情况下, 网页加注的精度就会受影响。针对这一情况,考虑使用学习演化机制,即在加注 分析过程中,对于发现的一些类别、关系不能很好的用现有的o n t o l o g y 词汇表达, 4 重庆大学硕士学位论文 l 绪论 则由监控程序提出o n t o l o g y 的改进请求,通过满足这样的请求来实现o n t o l o g y 的演化。 1 2 2w e b 文档信息的表示的研究 斯坦福大学提出的o e m ( o b j e c te x c h a n g em o d e l ) 模型非常适合于描述半结 构化数据,o e m 模型是一个无模式的模型,它即考虑w e b 页内各成分的关系, 也考虑w e b 页之间的关系1 9 1 。o e m 中表示的数据组成一个图,在顶部具有唯一 的根对象,下面具有零个或多个嵌套子对象。各个o e m 对象包含一个标记、一 个类型或一个值。存储在o e m 对象中的值可以是原子性的( 例如类型s t r i n g ) 或 者可以是一组o e m 对象。w e b 文档中的主要信息是半结构化的,它不象传统数 据库中的数据一样具有规则的和静态的结构,因此o e m 模型非常适合于描述w e b 文档中的半结构化的信息。 1 3 本文研究的目的和研究内容 1 3 1 本文研究的目的 本论文的研究目的是从w e b 文档中获取内容和结构信息,并且在把这些w e b 文档重构成x m l 文档时充分地利用结构信息,这样当我们通过这些x m l 文档再 现原来的文档的时候,可以保持原有的文档的逻辑结构不变。 1 3 2 本文研究的主要内容 本论文需要完成以下几个方面的工作: l 、研究一个能够从w e b 文档中抽取出内容和结构信息的算法。 2 、分析h t m l 语言的特点,以确定内容和结构信息在w e b 文档中的表现形式, 如缩进表示一段等。 3 、参考l o m ( l e a r n i n g o b j e c t m e t a d a t a ) 模型,定义出一套用x m l 描述的、 能够简洁的描述w e b 文档的模型。 4 、充分利用从w e b 文档中抽取出来的内容和结构信息,把原来的w e b 文档转 换成符合我们提出的模型的x m l 文档。 1 4 使用到的技术 1 4 1 j a 、,a 技术 由于本课题的其他部分采用j a v a 作为开发语言,为了集成的方便,本论文所 研究的课题也采用j a v a 作为开发语言。 j a v a 语言有下面一些特点:简单、面向对象、分布式、解释执行、鲁棒、安全、 体系结构中立、可移植、高性能、多线程以及动态性。 1 简单性 重庆大学硕士学位论文1 绪论 j a v a 语言是一种面向对象的语言,它通过提供最基本的方法来完成指定的 任务,只需理解一些基本的概念,就可以用它编写出适合于各种情况的应用程 序。j a v a 略去了运算符重载、多重继承等模糊的概念,并且通过实现自动垃圾 收集大大简化了程序设计者的内存管理工作。另外,j a v a 也适合于在小型机上 运行,它的基本解释器及类的支持只有4 0 k b 左右,加上标准类库和线程的支持 也只有2 1 5 k b 左右。库和线程的支持也只有2 1 5 k b 左右。 2 面向对象 j a v a 语言的设计集中于对象及其接口,它提供了简单的类机制以及动态的 接口模型。对象中封装了它的状态变量以及相应的方法,实现了模块化和信息 隐藏;而类则提供了一类对象的原型,并且通过继承机制,子类可以使用父类所 提供的方法,实现了代码的复用。 3 分布性 j a v a 是面向网络的语言。通过它提供的类库可以处理t c p i p 协议,用户可 以通过u r l 地址在网络上很方便地访问其它对象。 4 鲁棒性 j a v a 在编译和运行程序时,都要对可能出现的问题进行检查,以消除错误的 产生。它提供自动垃圾收集来进行内存管理,防止程序员在管理内存时容易产 生的错误。通过集成的面向对象的例外处理机制,在编泽时,j a v a 提示出可能出 现但未被处理的例外,帮助程序员正确地进行选择以防止系统的崩溃。另 外,j a v a 在编译时还可捕获类型声明中的许多常见错误,防止动态运行时不匹 配问题的出现。 5 安全性 用于网络、分布环境下的j a v a 必须要防止病毒的入侵。j a v a 不支持指针 一切对内存的访问都必须通过对象的实例变量来实现,这样就防止程序员使 用”特洛伊”木马等欺骗手段访问对象的私有成员,同时也避免了指针操作中容 易产生的错误。 6 体系结构中立 j a v a 解释器生成与体系结构无关的字节码指令,只要安装了j a v a 运行时系 统,j a v a 程序就可在任意的处理器上运行。这些字节码指令对应于j a v a 虚拟机 中的表示,j a v a 解释器得到字节码后,对它进行转换,使之能够在不同的平台运 行。 7 可移植性 与平台无关的特性使j a v a 程序可以方便地被移植到网络上的不同机器。 同时,j a v a 的类库中也实现了与不同平台的接口,使这蝗类库可以移植。另 重庆大学硕士学位论文l 绪论 外,j a v a 编译器是由j a v a 语言实现的,j a v a 运行时系统由标准c 实现,这使得 j a v a 系统本身也具有可移植性。 8 解释执行 j a v a 解释器直接对j a v a 字节码进行解释执行。字节码本身携带了许多编 译时信息,使得连接过程更加简单。 9 高性能 和其它解释执行的语言如b a s i c 、t c l 不同,j a v a 字节码的设计使之能很 容易地直接转换成对应于特定c p u 的机器码,从而得到较高的性能。 1 0 多线程 多线程机制使应用程序能够并行执行,而且同步机制保证了对共享数据的 j 下确操作。通过使用多线程,程序设计者可以分别用不同的线程完成特定的行 为,而不需要采用全局的事件循环机制,这样就很容易地实现网络上的实时交 互行为。 1 1 动态性 j a v a 的设计使它适合于一个不断发展的环境。在类库中可以自由地加入 新的方法和实例变量而不会影响用户程序的执行。并且j a v a 通过接口来支持 多熏继承,使之比严格的类继承具有更灵活的方式和扩展性。 1 4 2x m l 技术【2 5 】 可扩展置标语言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 联合s g m l 专 家组成的s g m l 工作组,对s g m l ( s t a n d a r df o rg e n e r a lm a r k u p l a n g u a g e ) 进行 裁剪而形成的s g m l 精简子集。它为互联网开发者提供了一个全新的实现电子商 务和电子数据交换e d i 解决方案的工具。 s g m l 、h t m l 是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 ) ,它是国际上定义电子文件结构和内容描述的标准, 是一种非常复杂的文档的结构,主要用于大量高度结构化数据的防卫区和其他各 种工业领域,利于分类和索引。同x m l 相比,定义的功能很强大,缺点是它不 适用于w 曲数据描述,而且s g m l 软件价格非常价格昂贵。h t m l ( h y p e r t e x t m a r k u pl a n g u a g e 超文本标识语言) 优点是比较适合w e b 页面的开发。但它有一 个缺点是标记相对少,只有固定的标记集如 , 等。缺少s g m l 的柔 性和适应性。不能支持特定领域的标记语言,如对数学、化学、音乐等领域的表 示支持较少。举个例子来说,开发者很难在w e bp a g e 上表示数学公式、化学分子 式和乐谱。 x m l 结合了s g m l 和h t m l 的优点并消除其缺点。x m l 仍然被认为是一种 s g m l 语占。比s g m l 要简单,但能实现s g m l 的大部分的功能。19 96 年 重庆人学硕,l 二学位论文1 绪论 的夏天,s u nm i c r o s s y s t e m 的j o h nb o s a k 开始开发w 3 cs g m l 工作组( 现在称为 x m l 工作组) 。他们的目标是创建一利,s g m l ,使其在w e b 中,既能利用s g m l 的长处,又保留h t m l 的简单性。现在目标基本达到。 在专业领域巾,出现了w e b 标记语言的许多项目,著名的有c m 卜化学标 记语言,由p e t e r m u r r a zr u s t 开发,同时开发了第一个通用x m l 浏览器j u m b o 。 在数学方面,包括m m 公司再内都在致力开发m a t h m l 。1 9 9 7 年四月,出版了 x m l 的第一个版本。当x m l 完整实现时,将比s g m l 和当前浏览器所达到的链 接水平更复杂,更强大。1 9 9 7 年8 月,m i c r o s o f t 公司和i n s o 公司引入x s l 。由 于x m l 是纯结构和语义的,需要描述单个元素格式方法。可以使用h t m l 的c s s : 另一种方案是x s l 。1 9 9 8 年1 月,m i c r o s o f t 公司出版发行了m s x s l 程序。可以利 用x s l 表和x m l 文档创建能被i e 4 识别的h t m l 页面。1998 年2 月,w 3 c 发布了x m l l 0 的正式版本。最近一年多来,由于网络应用的飞速发展,x m l 的发展非常迅猛。出现了d o m ( d o e u m e n to b j e c tm o d e l ) x s l t ( x s l t r a n s f o r m a t i o n ) 等,x m l 的应用软件也有了飞速的发展,m i c r o s o f t 、i b m 、b r e e z e 、s t i l o 等公司 纷纷推出了自己的或解析器,或开发平台。在m i c r o s o f f l b m 、h p 等大公司的推 动下,目i i 有两个著名的x m l 的研究组织,分别是b i z t a l k c o m 和o a s i s o r g ,由他 们向w 3 c 提出标准的建议。 x m l 是一种元标记语言,所谓“元标记”就是开发者可以根据自己的需要定 义自己的标记,比如开发者可以定义如下标记 ,任何满足x m l 命 名规则的名称都可以标记,这就为不同的应用程序打开了的大门。h t m l 是一种 预定义标记语言,它只认识诸女l , 等已经定义的标记,对于用户自己定 义的标记是不认识的。第二x m l 是一种语义结构化语言。它描述了文档的结构 和语义。举个例子,在和h t m l 中,要描述一本书,可以如下表示: b o o k n a l t l e a u t h o r n a m e p u b l i s h e r _ n a m e i s b n n u m b e r 在x m l 中,同样的数据表示为: b o o kn a m e a u t h o rn a m e p u b l i s h e rn a r n e 重庆大学硕十学位论文 1 绪论 i s b n n u m b e r 从上面的对比,可以看出,x m l 的文档是有明确语义并且是结构化的。x m l 是一种通用的数据格式。从低级的角度看,x m l 是一种简单的数据格式,是纯的 a s c i i 文本,而a s c i i 的抗破坏能力是很强的。不象压缩数据和j a v a 对象,只要 破坏一个数据文件数据就不可阅读。从高级的角度看,是一种自描述语言。 x m l 可利用于数据交换。主要是因为x m l 表示的信息独立于平台的,这里 的平台即可以理解为不同的应用程序也可以理解为不同的操作系统:它描述了 种规范,利用它m i c r o s o f t 的w o r d 文档可以和a d o b e 的a c r o b a t 交换信息,可以 和数据库交换信息。 对于大型复杂的文档,x m l 是一种理想语言,不仅允许指定文档中的词汇, 还允许指定元素之间的关系。比如可以规定一个a u t h o r 元素必须有一个n a n 3 e 子 元素。可以规定企业的业务必须有包括什么子业务。 x m l 文档由d t d 和x m l 文本组成,所谓d t d ( d o c u m e n t t y p ed e f i n i t i o n ) 简单的说就是一组标记符的语法规则,表明x m l 文本是怎么样组织的,比如d t d 可以表示一个 必须有一个子标记 ,可以有或者没有子标记 等等。当然一个简单的x m l 文本可以没有d t d 。下面是一一个简单的x m l 文本。 b a h a 其中以? 开始并结尾的是进程说明。e n c o d i n g 表示编码格式。s t a n d a l o n e 表 示外围设备。这里外围设备可以理解为该x m l 文本没有应用其他的文件。因为 x m l 文件可以外部应用d t d 等外部数据。 x m l 具有以下4 个主要特点: 1 简单性 x m l 为程序员和文档作者提供了一个友好的环境。x m l 的严格定义和规 则集使人类和机器都能更容易地阅读文档。x m l 文档语法包含一个非常小的 规则集,使开发者能立刻开始工作。根据文档的结构,d t d ( d o c u m e n t t y p e d e f i n i t i o n ,文档格式定义) 既可以通过一个标准过程创建,也可以由专家创 建。x m l 文档建立在基本嵌套结构的一个核心集的基础之上。当一一层又层 的细节增加使结构变得越来越复杂时,作者或开发者为内部结构的复杂化付 出的努力将是很少的。这些基本结构可以用来代表复杂的信息集合,而不需 要改变结构自身。x m l 的语法分析器也非常容易创建。 2 可扩展性 x m l 在两个意义上是可扩展的。首先,它允许开发者创建他们自己的 9 重庆大学硕士学位论文 1 绪论 d t d ,有效地创建可被用于多种应用的“可扩展的”标志集:其次,使用几个 附加的标准,可以对x m l 进行扩展,这些附加标准可以向核心的x m l 功能 集增加样式、链接和参照能力。作为一个核心标准,x m l 为可能产生的其他 标准提供了一个坚实的基础。 3 互操作性 x m l 可以在多种平台上使用,而且可以用多种工具进行解释。因为文档 的结构是相容的,所以解释它们的语法分析器就能以较低的费用建立。x m l 支持用于字符编码的许多主要标准,允许它在全世界许多不同的计算环境中 使用。x m l 对j a v a 进行了很好的补充,许多早期的x m l 开发是用j a v a 进 行的。一个用于语法分析器的普通应用程序接口_ x m l 的简单a _ p i ( s a x ) , 可以免费获得,也可获得用c + + 、c 、j a v a s c r i p t 、t c l 和p y t h o n 等编写的语 法分析器。目前,x m l 语法分析器的开发集中在免费的插件( p l u g i n ) 上, 这些插件为x m l 应用提供了语法分析能力,极大降低了使用x m l 建立实际 应用的。 4 开放性 x m l 标准在i n t e r n e t 上是完全开放的,可以免费获得。x m l 文档自身也 较为开放。任何人都可以对一个结构良好的x m l 文档进行语法分析,如果 提供了d t d ,还可以校验这个文档。公司仍然用特定方式创建用于它们应用 的x m l ,面x m l 文档中的数据却是任何应用都可使用的。虽然开发者可以 建立语意模糊的d t d ,或以自己的方式加密数据,但他们将会失去使用x m l 的许多好处。x m l 并不禁止创建私有格式,但它的开放性是它最大的优点之 一。用h t m l 页面和数据库打交道时,要经过复杂的转换手续,而需要在一 种类型的数据库和另一种类型的数据库之间交换数据时,更是要大费周折。 反观x m l ,由于它采用了结构化的数据,所以要储存或是要在不同数据库之 间交换时,都非常容易。可以预见,x m l 今后将会成为数据在不同数据库之 间交换时的标准方式。众所周知,当在i n t e m e t 上一次传输大量的数据时,经 常会遇到数据代表的意义即数据的格式无法确定的问题。特别是在远程报表 项目中,每一张报表均有大量的数据,还要包括报表本身的信息和数据在报 表中的位置,而且报表的格式五花八门,这更增加了数据表示的难度。此时, 最好的方法就是利用x m l 来格式化数据。通常用x m l 格式能够很好地表示 报表的结构,不但能传送报表的数据,还能准确表示数据在报表中的位置。 所以,当这样两个x m l 文件传送到客户端时,我们可以很容易地将其恢复 成原来的报表。当我们需要在客户端实现脱机操作时,就要求在客户端保留 大量的信息,但在客户端建立数据库不符合瘦客户的原则。如果换一个角度 0 重庆大学硕士学位论文 1 绪论 来看,x m l 对数据的结构化描述,就是一个以树型结构表示的数据库。当然, 我们需要一个管理x m l 将它们连起来,这样可以把多个x m l 文件连接起来 形成一个文件数据库,而且占用的空间小,更新十分方便。 1 4 3x s l 技术1 2 纠 x m l 可以定义信息的内容,却没有定义信息该如何表达,这实际上就是x m l 的长处,它把内容和形式分离了,这样同一个内容可以有不同的表达,而x m l 内容的表达就是通过x s 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 e s t y t e s h e e t l a n g u a g e , 司 扩展样式语言】是为x m l 文件定义的 一种标识语言,它将提供远远超过c s s 的强大功能,如将元素再排序等。实际上 简单的x m l 已可被c s s 所解释,然而复杂的高度结构化的x m l 数据或x m l 文档则只能依赖于x s l 极强的格式化的能力而表现给用户。 x s l 以包含了一套元素集的x m l 语法规范而定义,该语法规范将被用来把 x m l 文件转换成h t m l 文件或x m l 文档。一个x s l 样式表集合了一系列设计 规则以用于将信息从x m l 文件中汲取出,并将其转换成h t m l 等其它格式。这 种转换将采用一种公开的方式,使其更加容易方便地被程序员描述。而且x s l 还 将提供多种脚本语言的通道以满足更为复杂的应用需求,因此尽管x s l 是一项新 的标识语言,但程序员完全可以继续充分发挥其所熟练的h t m l 或脚本语言的优 势。x s l 凭借其可扩展性能够控制无穷无尽的标签,而控制每个标签的方式也是无 穷尽的。这就给w e b 提供了高级的布局特性。例如旋转的文本、多列和独立区域。 它支持国际书写格式,可以在一页上混合使用从左至右、从右至左和从上至下的书 写格式。 x s l 能使w e b 浏览器直接根据用户的不同需求改变文档的表示法,例如数据 的显示顺序改变,从而不需要再与服务器进行交互通信。通过变换样式表,同一个文 档可以显示得更大,或者经过叠折只显示外面的层,或者变为打印格式。可以设 想一个适合用户学习特点的技术手册,它为初学者和更高一级的用户提供不同的 样式,而所有的样式都是根据同样的文本产生的。正如x m l 介于h t m l 和s g m l 之间一样,x s l 标准介于c s s 和s g m l 的d s s s l ( d o c u m e n ts t y l es e m a n t i c s a n d s p e c i f i c a t i o nl a n g u a g e ,文档样式语义和规范语言) 之间。d s s s l 定义格式化对象的 全特征模式。由于d s s s l 使用框架语法,而且是很复杂的所以d s s s l 未能得到推 广应用。x s l 支持d s s s l 流对象和c s s 对象,并对复

温馨提示

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

评论

0/150

提交评论