




已阅读5页,还剩32页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
武汉科技大学硕士学位论文第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 ) 己经_ 成为互联网上数据发布和数据交换的 事实标准并受到越来越多的关注。 虽然x m l 查询技术己经取得一些研究成果,但由于x m l 文档自身的特点,x m l 查 询技术在理论上和实现上都还存在很多难点。本文对x m l 查询技术进行深入研究,对 x m l 数据查询算法研究现状、发展以及应用进行了分析和总结。特别是分析了x m l 查 询优化技术的x m l 统计数据模型、x m l 数据在数据库中的存储、x m l 数据的解析和查 询处理的方法。目前已经提出了多种x m l 数据查询的方法,但是对于复杂的x m l 数据 分布还考虑不周全,使得操作效率很低。本文分别从一维选择估计和多维选择估计两个方 面详细阐述了选择估计技术,结合实际中x m l 的特点,提出了用多维直方图统计x m l 数据,并取得了简化操作的结果。 x m l 数据中的值信息分布不仅与其他值信息分布相关,还与x m l 数据中的结构信 息相关,而且当x m l 数据结构比较复杂时,会形成高维元素,导致存储量和错误率大幅 上升,因此本文提出了用离散余弦转换方法( d c t ) 处理x m l 数据统计,并根据x m l 数据的高相关性,扩展了d c t 到高维,得到了高维d c t 方程。使得查询统计的错误率大 大减小,并且在时间和空问上都有很大的节省。 对一种方法的提出,要考虑详细周全的实验验证,在试验中所有的数据都被生成在 ( o ,1 ) n 正态分布中,合成的数据大小为5 0 k ,维数范围从2 到1 0 维,从一般分布、z i p f 分 布和集簇分布,三个数据分布分别来验证( 1 ) 存储需求和选择性估计时间;( 2 ) 维数和 查询大小的影响;( 3 ) 数据分布影响。 实验结果: 1 ) 以前的方法不能支持多维选择性估计,特别是三维以上时候错误率很大。本文提 出的方法支持高维选择性估计精度高。 2 ) 提出的方法节省时间和空间。 3 ) 提出的方法消除了估算的选择的周期性重建统计的消耗,因为它可以反映动态数 据更新并且立即统计。 4 ) 提出的方法使用了余弦计算,使得问题简单化,计算快速,并且因为离散余弦变 换支持相邻的桶之间的篡改,使得能够快速准确的估计计算。 关键词:x m l ;代价估计;离散余弦变换。 第1 i 页武汉科技大学硕士学位论文 a b s t r a c t i nr e c e n ty e a r s ,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 a sb e c o m en e ws t a n d a r do fd a t a r e p r e s e n t a t i o na sw e l la sd a t ae x c h a n g eo nt h ei n t e m e t t h o u g hw i t hs o u n da c h i e v e m e n t so fx m lr e s e a r c h ,t h e r ea r ei nt h e o r i e sa n dp e r f o r m a n c e s s t i l lm a n yd i f f i c u l t i e sf o rx m l q u e r yt e c h n o l o g yb e c a u s eo fi t si n h e r e n tc h a r a c t e r i s t i c s 、i t ha p r o f o u n dr e s e a r c hi nx m lq u e r yt e c h n o l o g y , t h i sd i s s e r t a t i o nb ya n a l y z i n ga n ds u m m a r i n gt h e c u r r e n tr e s e a r c h ,d e v e l o p m e n ta n da p p l i c a t i o na n a l y z e sd e t a i l e dt h eo p t i m i z a t i o no fx m l q u e r y i nt h ef o l l o w i n ga s p e c t s :x m ld a t am o d e l ,t h em e m o r yo fx m ld a t ai nd a t a - b a s e ,t h e a n a l y z i n go fx m ld a t aa n dp r o c e s sm e t h o do fq u e r y a tp r e s e n t ,av a r i e t yo fx m l d a t aq u e r y m e t h o d sh a db e e np u tf o r w a r d ,b u ti n a d e q u a t ec o n s i d e r a t i o ns t i l le x i s ti nt h ec o m p l e xx m l d a t ad i s t r i b u t i o n ,w h i c hb r i n g sa b o u tl o wp e r f o r m a n c ee f f i c i e n c y t h i sa r t i c l e ,w h i c he l a b o r a t e s t h eq u e r ye s t i m a t i o nt e c h n o l o g yi nd e t a i lf r o mb o t ho n e - d i m e n s i o n a la n dm u l t i d i m e n s i o n a l a s p e c t sa n dt a k e sx m lc h a r a c t e r i s t i c si n t oc o n s i d e r a t i o n ,p r o p o s e su s i n gm u l i t - d i m e n t a l h i s t o g r a mt oc o u n tx m l d a t e si no r d e rt os i m p l i f yp e r f o r m a n c e t h ev a l u ed i s t r i b u t i o no fx m li n v o l v e sn o to n l yt h ed i s t r i b u t i o no fo t h e rv a l u e sb u ta l s o t h es t r u c t u r a li n f o r m a t i o no fx m lw h i c hw i l ll e a dt om u l t i - d i m e n s i o n a ld e p e n d e n te l e m e n ts e t i fs t r u c t u r a li n f o r m a t i o ni t s e l fi sc o m p l e x i nt h a tc a s e ,s t o r a g ea n de r r o rr a t ew i l lr a i s eal o t t h e r e f o r e ,t h i sp a p e r , u s i n gd i s c r e t ec o s i n ec o n v e r s i o nm e t h o d s ( d c t ) t od e a lw i t hx m ld a t a , e x p a n d st h ed c t t oh ig h - d i m e n s i o n a lm o d e lb a s i n go nt h eh i g hc o r r e l a t i o no fx m ld a t at h e e x p a n s i o no f , w h i c hb r i n g sa b o u tah i g h d i m e n s i o n a ld c te q u a t i o n s u c ha na l g o r i t h mp r o v e s t ob ee f f i c i e n ti nr e d u c i n gb o t ht h ee r r o ri ns t a t i s t i c sa n dp r o c e s s i n gt i m ea n dm e m o r y a p r o p o s a lo fc e r t a i nm e t h o dn e e d sc a r e f u la n dc o m p r e h e n s i v ee x p e r i m e n tv a l i d a t i o n i n t h ee x p e r i m e n t ,a l ld a t aa r eg e n e r a t e di nt h e ( o ,1 ) nn o r m a l i z e dd a t as p a c e b e s i d e s ,s y n t h e t i c d a t a sa r eg e n e r a t e dw i t h5 0 kr e c o r d sw h i c hr a n g e df r o m2t o10d i m e n s i o n s w eg e n e r a t ed a t a w i t hv a r i o u sd i s t r i b u t i o n s ( 1 ) n o r m a ld i s t r i b u t i o n ;( 2 ) z i p fd i s t r i b u t i o n ;( 3 ) c l u s t e r e d d i s t r i b u t i o nt ov e r i f y ( 1 ) t h es t o r a g er e q u i r e m e n t sa n ds e l e c t i v i t ye s t i m a t i o nt i m e ;( 2 ) e f f e c t o fd i m e n s i o na n dq u e r ys i z e ;( 3 ) e f f e c to fd a t ad i s t r i b u t i o n s e x t e n s i v ee x p e r i m e n t ss h o w e d t h ep r o p o s e dm e t h o di ss u p e r i o rt ot h ep r e v i o u so n e sw i t ht h ef o l l o w i n ga d v a n t a g e s : 1 ) t h ep r e v i o u sm e t h o d sc o u l dn o ts u p p o r tm u l t i - d i m e n s i o n a ls e l e c t i v i t ye s t i m a t i o n , p a r t i c u l a r l y , m o r et h a nt h r e ed i m e n s i o n s b u to u rm e t h o ds u p p o r t sh i g hd i m e n s i o n a ls e l e c t i v i t y e s t i m a t i o nw i t hh i g ha c c u r a c y 2 ) o u r m e t h o dc a ns a v et i m ea n ds p a c e 3 ) o u rm e t h o de l i m i n a t e st h ep e r i o d i c a lr e c o n s t r u c t i o no ft h es t a t i s t i c sf o re s t i m a t i n gt h e s e l e c t i v i t yb e c a u s ei tc a nr e f l e c td y n a m i cd a t au p d a t e st ot h es t a t i s t i c si m m e d i a t e l y 4 ) o u rm e t h o ds i m p l yc a l c u l a t e st h es e l e c t i v i t yu s i n gt h ei n t e g r a lo fc o s i n ef u n c t i o n s i t a l s oc a l c u l a t e st h ee s t i m a t i o na c c u r a t e l yb e c a u s ei tn a t u r a l l ys u p p o r t st h ei n t e r p o l a t i o nb e t w e e n t h ea d j a c e n tb u c k e t s k e yw o r d s :x m l ;r e s u l ts i z ee s t i m a t i o n ;d i s c r e t ec o s i n et r a n s f o n n 武汉科技大学 研究生学位论文创新性声明 本人郑重声明:所呈交的学位论文是本人在导师指导下,独立进行研 究所取得的成果。除了文中已经注明引用的内容或属合作研究共同完成的 工作外,本论文不包含任何其他个人或集体己经发表或撰写过的作品成果。 对本文的研究做出重要贡献的个人和集体,均己在文中以明确方式标明。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 论文作者签名:互拯日期:么塑:f ! :互蔓 研究生学位论文版权使用授权声明 本论文的研究成果归武汉科技大学所有,其研究内容不得以其它单位 的名义发表。本人完全了解武汉科技大学有关保留、使用学位论文的规定, 同意学校保留并向有关部门( 按照武汉科技大学关于研究生学位论文收录 工作的规定执行) 送交论文的复印件和电子版本,允许论文被查阅和借阅, 同意学校将本论文的全部或部分内容编入学校认可的国家相关数据库进行 检索和对外服务。 论文作者签名: 指导教师签名: 日一 峪垒 武汉科技大学硕士学位论文第1 页 第一章绪论 随着信息化社会的发展,出于商业、生活以及科技等需要,以及互联网的迅速发展, 都促生了大量的各种形式的信息。这些信息从结构化程度的角度可以划分为三类:第一类 是完全结构化的数据,如关系型数据和面向对象的数据;第二类是无结构的文本数据,如 纯文本文件等:还有一类是新兴的数据结构,也就是半结构化数据,这种数据的最大特点: 拥有不规则、可变的数据结构。最典型的半结构化数据就是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 ) t 1 1 ,它己经成为i n t e m e t 以及电子商务中进行数据表示和数据交换事实上的标准。 对于传统的结构化数据和无结构的文本数据,都已经拥有比较成熟的管理技术和工具,结 构化的数据可以采用关系型数据库或对象型数据库进行管理如:o r a c l e ,s q ls e r v e r s ,而无 结构的文本则采用可以信息检索( l g ) t z 】的方式进行访问。而对于如x m l 的半结构化数据, 如何进行有效的管理,包括存储、索引、查询、压缩等,还是一个尚待解决的问题。 1 1 研究背景 x m l 由于其所具有的自描述性、灵活的数据结构以及丰富的数据表示能力等特点,现 在己经被广泛应用至l j i n t e m e t 智能信息检索、电子商务中的数据表示和数据交换、数据集成、 w e bs e r v i c e 、数字图书馆等领域。x m l 数据成指数级的增长,要求实现对x m l 数据更有 效的数据管理能力和更快、更准确的查询。因此,近些年来有许多的研究者以及企业都开 始研究面向x m l 数据的信息管理系统,以满足上述需求。 1 1 1x m l 的提出 在x m l 诞生之前有两种标记语占s g m l t 3 】和h t m l t 4 1 。但是他们都有很明显的缺点,他 们都是以d t d 作为标准被固定下来,因此不能作为定义其他符号化语言的元语言。为了把 这两种标记语言的优点结合起来,并消除其缺点,w 3 c 推出了一种新的解决方案,即x m l 。 w 3 c 在1 9 9 6 年成立了一个研究小组,负责开发一个s g m l 的子集,使该子集在能继承 h t m l 的简单性的同时,又保持s g m l 主要优点。该小组在1 9 9 8 年2 月推出了这种标记语言 的正式版本,这就是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 ,可扩展标记语言) 1 0 版本。 x m l 是一种元标记语言,它弥补了s g m l 和h t m l 的缺点,可以用来定义其他的标记 语言,并且这种标记语言的元素标记是由用户自己定义的。x m l 的另外一个重要特点它将 文档内容和显示样式分隔开来,文档中的标记是用来描述x m l 数据元素的含义,而不是描 述其如何显示,因此x m l 是一种自描述的数据。 x m l 数据的优点在于: ( 1 ) 能应用于i n t e r n e t 上的数据交换。i n t e r n e t 上存在各种各样格式的数据,既有结构 化数据,也有无结构文本,还有如音频和视频那样的流数据,x m l 数据的出现使得可以实 现各种格式数据之间的无缝交换,因为其具有数据自描述性和丰富的数据表达能力。 ( 2 ) 能实现更有意义、更准确的搜索。x m l 数据的自我数据描述能力使得搜索能够 第2 页武汉科技大学硕士学位论文 依靠标记和内容之间的依存关系实现更加准确的定位,真正从根本上解决了当前网页信息 搜索的问题。 ( 3 ) 它能实现异构系统问的通信。传统的结构化数据库难以适应多系统问异构数据 的融合,而x m l 数据由于其白描述性能很好地适应这种数据集成的需要,这为未来电子商 务的发展创造了良好的软件条件。 1 1 2x m l 数据的特征 x m l 文档一般由四个部分组成:x m l 声明、处理指令、x m l 元素和注释。其中x m l 声明和x m l 元素是必须的,而处理指令和注释则是可选内容。x m l 声明是用于声明该文档 是一个x m l 文档;处理指令则是包含在x m l 文档中的一些命令性语句,目的是告诉x m l 处理一些信息或执行一定的动作;x m l 元素是x m l 文件内容的基本单元,一个元素包含一 个起始标记、一个结束标记以及标记之问的数据内容,元素里还可以再嵌套元素,实现循 环嵌套,最外层的元素称为根元素,一个x m l 文档只能有一个根元素;注释是x m l 文件中 一些用作解释的字符数据,x m l 处理器不对它们进行任何处理。 一个结构良构的x m l 文档通常指没有语法错误的x m l 文档。x m l 是一种语法要求比 较严格的标记语言,因此语法有严格的限制,这里所说的良构的x m l 文档就是指满足所有 语法限制的x m l 文档。如果一个x m l 文档满足以下要求,则称其为一个良构的x m l 文档: ( 1 ) 文档的丌始必须是x m l 声明; ( 2 ) 含有数据的元素必须有起始标记和结束标记; ( 3 ) 不含数据并且仅使用一个标记的元素必须以 结束; ( 4 ) 文档只能包含一个能够包含全部其他元素的元素,即根元素必须唯一; ( 5 ) 元素只能嵌套不能重叠; ( 6 ) 属性值必须加引号; ( 7 ) 字符 1 9 9 0 】t i t l e 等。文献 3 9 3 4 虽然都研究了x m l 数据中的查询代价估 计问题,但都局限于对查询中的路径表达的代价估计,包括简单路径表达【2 6 - 2 8 , 3 0 , 3 1 】和复杂 路径表达【2 9 】,但还很少有文献专门研究过x m l 查询中值匹配查询条件的代价估计问题。 目前在关系型数据库中,对于包含同一关系表中多个元素值匹配条件的查询,其查询 结果集的大小依赖于多个值之间的关联分布特征,即多个元素所有可能值组合的出现频 率。若采用元素间相互独立的假设会给查询结果集的大小估计造成很大的偏差。因此,人 们开始研究多维直方图( m u l t i d i m e n s i o n a lh i s t o g r a m ) 3 5 - 3 6 】。试图捕获多个元素之间的相互关 联关系。这些方法的实验结果证明,即使较简单的多元直方图也可以获得比多元素相互独 立假设情况下好很多的查询代价估计结果。m u r a l i k r i s h n a t ”】等人提出了一种s p a t i a li n d e x p a r t i t i o n i n g 方法以建立多元素等高直方图,这种方法的缺陷是其在分割时对于每一种元素 ( 即一维) 只考虑了一次,这种启发式策略有点过于简单。p o s a l a t 3 6 】等人提出了两种新的建立 多维直方图的方法,第一种方法是将多元素联合分布( j o i n td a t ad i s t r i b u t i o n ) 分解成多个相 互独立的部分( b u c k e t s ) ,在每个部分( b u c k e t ) q b 假设其中的数据分布满足均匀分布。在这种 方法中,利用m h i s t - 2 算法建立的多维m a x d i f f ( v ,a ) 直方图是最准确的,而且可以获得 比以前的各种多维直方图更优的查询代价估计结果。第二种方法则使用了强大的奇异值分 解技术,利用少量的单个数据分布来模拟二维数据联合分布,但这种方法仅限于二维数据, 对于多维数据联合分布则无能为力。 曲卫斟3 7 】提出了一种面向x m l 数据的基于小波的多维直方图查询代价估计算法,并提 出了确定x m l 数据中以某值元素为主键的相互依赖元组的方法,将值匹配条件改写为多元 素查询条件的方法以及结构信息的值化方法,提出的方法取得了较准确的查询代价估计结 果。小波变换虽然能够解决存储空间的问题,但使用时是通过小波的逆变换来完成的,在 代价估计过程中自身所花费的代价又比较大。 前面所述的这些用于建立多维直方图的方法都存在一个共同的缺陷,就是难以适应高 第6 页武汉科技大学硕士学位论文 维度的数据联合分布,即“c u r s eo fd i m e n s i o n ”【3 8 】的问题,如果相互关联的元素很多,则 这些方法中使用的直方图大小会急剧增加,并在维度大于6 或7 时达到不可接受的程度。而 在x m l 数据中,值信息分布就是一种高维度联合分布,即某个值信息不仅与其所在的标记 路径相关,还可能与很多个其他的值信息相关,这种值信息的数目可能会非常多,尤其当 x m l 数据结构比较复杂时,这种情况就很有可能发生。因此对于x m l 数据中的多维数据联 合分布,需要一种能够有效适应这种高维数据联合分布的多维直方图建立方法,而使用离 散余弦转换( t h ed i s c r e t ec o s i n et r a n s f o r m ( d c t ) ) 压缩直方图信息的多维直方图搜索估计正 是这样一种用于建立多维直方图的方法。 1 3 本文研究内容 x m l 数据中信息分布不仅与其他值信息分布相关,还与x m l 数据中的结构信息相 关,而且当x m l 数据结构比较复杂时,可能会形成高维元素相关,用一维的直方图方法 错误率很高、费时和占大量的空间。针对这些问题展开以下研究: ( 1 ) 结合x m l 数据分布的特点提出用多维直方图存储x m l 数据。实验证明,多维 直方图存储x m l 数据能精确地放映x m l 数据之间的关系,给操作带来了简化。 ( 2 ) 离散余弦转换方法( d c t ) 在处理图像方面有很好的作用,它能节省很多空间, 本文提出用d c t 来压缩直方图信息,并扩展d c t 到高维上。这保留了d c t 方法处理图 像的功能,又减小了查询错误率。 ( 3 ) 对一种方法的提出,需要考虑详细周全的实验验证,在试验中所有的数据都被 生成在( o ,1 ) n 正态分布中,合成的数据大小为5 0 k ,维数范围从2 到1 0 维,从一般分布、 z i p f 分布和集簇分布,三个数据分布分别来验证1 ) 存储需求和选择性估计时间;2 ) 维 数和查询大小的影响;3 ) 数据分布影响:4 ) 数据空间分割的影响方面来详细验证。实验 结果表明: 1 ) 以前的方法不能支持多维选择性估计,特别是三维以上时候错误率很大。本文提 出的方法支持高维选择性估计精度高。 2 ) 提出的方法节省时间和空间。 3 ) 提出的方法消除了估算的选择的周期性重建统计的消耗,因为它可以反映动态数 据更新并且立即统计。 4 ) 提出的方法使用了余弦计算,使得问题简单化,计算快速,并且因为离散余弦变 换支持相邻的桶之间的篡改,使得能够快速准确的估计计算。 武汉科技大学硕士学位论文第7 页 第二章多维直方图处理x m l 数据 2 1x m l 数据模型 数据模型随着应用的需求和人类对于信息管理研究的不断深入而逐渐发展。1 9 7 0 年 e f c o d d 提出了关系模型【3 9 1 ,在此基础上建立的关系数据库获得了巨大的成功。后来又出 现了面向对象的数据模型,它能表达数据间的嵌套、递归关系,并且具有面向对象技术的 封装性和结构性的特点,基于对象模型的对象型数据库系统也应运而生。 传统的数据库管理系统使用的是基于结构化的数据模型,其特征就是数据库预先都有 一个固定的模式,数据遵守严格的类型定义。模式的作用在于检验数据和查询优化,而x m l 数据的模式却是不规则、不固定的。国际上从9 0 年代中叶就开始研究x m l 数据的模型,并 且取得了很多成果。 2 1 1o e m 模型 x m l 数据是由半结构化数据发展而来的。半结构化数据的内容与模式都包含在数据 中,因此被称为是“自描述的”。有些半结构化数据没有单独的模式,而有些只对数据做 不严格的约束。1 9 9 5 年,斯坦福大学yp a p a k o n s t a n t i n o u l 4 0 1 等人提出t o e m ( o b j e c te x c h a n g e m o d e l ) 模型,用于描述半结构化数据。它定义于斯坦福大学的t s i m m i s 系统中,该系统用于 异构数据源的集成。后来,很多类似的系统也使用该模型或它的变体,因此它已成为通用 的半结构化数据模型。 o e m 模型中,半结构化数据可以用一个有向的标记图来表示。一个o e m 对象由一个四 元组 表示,其每个域的意义如下: ( 1 ) l a b e l ( 标注) ,变长字符串,描述对象的意义; ( 2 ) t y p e ( 类型) ,对象值的类型,包括两种:一种为原子型( a t o m i c ) ,如i n t e g e r ,r e a l i s , r i n g ,i m a g e ,p r o g r a m 等;另外一种为复杂类型( c o m p l e x ) ,包含零个或多个子对象,每个 子对象用一条带标记的边与其相连。对象类型为原子型的称为原子对象,而对象类型为复 杂型的称为复杂对象。 ( 3 ) v a l u e ( 值) ,对象的值。 ( 4 ) o i d ( 对象标识) ,用于唯一标识每个o e m 对象。 而且在o e m 中,每个对象允许有多个父对象,因此在有向图中允许环的存在。 o e m 模型可严格定义如下: 半结构化数据可用s d = ( p e ,r ) 的带有根节点的有向图表示,其中p e n 表示有限节点 集,e c p x d x p 表示带标记的边的集合,d 为标记集,r 为根节点,并且任何p 都可由r 沿一 定顺序的e 到达。 第8 页武汉科技大学硕士学位论文 2 1 2d o m 模型 x m l 文件由嵌套的带标记的元素组成。每一个标记元素又可以拥有零个或多个属性 值对( a t r i b u t e n a l u e ) 及零个或多个子元素( s u be l e m e n o 。每个子元素本身也是标记元素或 “不带”标记的文本( p c d a t a ) 。由于x m l 被定义为一种标记语言而不是数据模型,因此 x m l 是一种有序的数据文件。良构的x m l 文件不对其中的标记、属性名以及嵌套模式做任 何限制,如果它符合一定的文档类型定义( d t d ) ,则被成为是合法的x m l 文档。为了在 软件中使用x m l 数据,w 3 c 组织为x m l 数据定义了文档对象模型d o m ( d o c u m e n to b j e c t m o d e l ) 4 ,用于将x m l 数据映射到一定的数据结构中。 x m l 具有半结构化数据的许多特征,如自描述性,结构的不固定和易变性。并且,o e m 模型中的标记、对象、原子值分别对应与x m l 中的标记、元素、p c d a t a 。但x m l 与o e m 模型之间也有很大的区别,主要体现在以下几个方面: ( 1 ) o e m 模型不是一个有序的数据模型,对象的各个子对象之间没有固定的顺序, 而x m l 则是有序的数据; ( 2 ) 其次,o e m 中没有属性的概念,只有子对象; ( 3 ) x m l 从本质上说并不直接支持图类型的数据,即不允许同一元素具有多个父元 素,是一种树型结构的数据,但它采用特殊类型的属性i d 和i d r e f ,来实现元素到元素之 间的链接,从而也可演变成一种图型结构。 在r g o l d m a n 4 2 】的博士论文中,他提出了这样的一个x m l 的数据模型:x m l 数据中的 任何一个元素都可以用一个二元组 表示,e i d 表示元素的唯一标识,v a l u e 为元 素的值。可以是一个文本串,也可以是一个由以下三个部分组成的复杂元素:t a g ,元素的 标记;若干个a t t r i b u t e n a m e a t t r i b u t e v a l u e 对,a t t r i b u t e - n a m e 表示属性名,a t t r i b u t e v a l u e 表 示属性值,为原子值,类型可以是r e a l ,i n t e g e r ,s t r i n g ,i d ,i d r e f 或i d r e f s :若干个链 接子元素 ,表示由i d 和i d r e f 引入的子元素,l a b e l 表示子元素标记,e i d 为该元 素的标识;若干个普通子元素 ,表示元素的非链接子元素,l a b e l 表示子元素标 记,e i d 为该元素的标识。区分链接子元素和普通子元素的目的是为了可以同时支持树型结 构和图型结构。 2 2x m l 查询语言 由于x m l 的广泛应用,对x m l 的查询变得更为重要。比较常见的x m l 查询语言 包括x p a t h 4 3 】和x q u e r y l 4 4 1 。 2 2 1x p a t h x p a t h ( x m lp a t hl a n g u a g e ) 是一个基本t 拘x m l 查询语言,它可以从x m l 文档树中选出 满足给定的路径条件的结点集合。x p a t h 将x m l 文档视为一个结点树,结点分为七类,包 括根结点、元素结点、属性结点、文本结点、名字空间结点、处理指令结点和注释结点。 武汉科技大学硕士学位论文第9 页 一个简单的x p a t h 表达式由一系列的轴( a x e s ) 和标签组成,如c h i l d :b i b d e s c e n d a n t : b o o k a t t r i b u t e :y e a r 就是一个简单x p a t h 表达式,其q b c h i l d 、d e s c e n d a n t 和a t t r i b u t e 是轴,分别 代表孩子、后代和属性,可以简写为“”、“和“ ”。所以这个x p a t h 表达式也可以简 为b i b b o o k y e a r , 它可以选出图1 中的所有y e a r 属性结点。x p a t h 还包含p a r e n t 、a n c e s t o r 、 p r e c e d i n g 、f o l l o w i n g 等其它轴,不过比较常用的孩子、后代和属性轴。 x p a t h 的处理语义是首先将文档结点作为背景结点,然后通过一个轴和对应的标签, 找出满足该轴和标签的所有结点,再将找出的结点作为新的背景结点,重复此过程,直到 最后的返回结点。因此以“ 开始的路径表达式第一个选出的结点是根结点,称为绝对路 径表达式:以“ 开始的路径表达式开始选出的可以是文档中任一满足条件的结点,称为 相对路径表达式,如“b o o k p r i c e 。 x p a t l l 语言也允许使用选择谓词,一般用“ “ 括住,如击b i b b o o k y e 铲 “2 0 0 0 ”】t i t l e 。其中 y e a r = “2 0 0 0 ”就是一个选择谓词,它要求选出的b o o k 结点i j 勺y e a r 属 性的值必须是“2 0 0 0 ”。b i b b o o k t i t l e 是它的主路径,返回结点是t i t l e 。 例如下面的例子 n a m e s p a c ec o n s o l e a p p l i c a t i o n 1 c l a s sp r o g r a m s t a t i cv o i dm a i n ( s t r i n g a r e , s ) x m l d o c u m e n td o c u m e n t = n u l l ; x m l n o d e l i s tn o d e l i s t = n u l l ; x m l n o d en o d e = n u l l ; t r ya n dl o a dx m ld a t ai n t oa nx m ld o c u m e n to b j e c ta n dt h r o wa n e r r o rm e s s a g ei f t h i sf a i l s t r y d o c u m e n t = n e wx m l d o c u m e n t 0 ; d o c u m e n t l o a d ( ”d a t a x m l ”) ; ) c a t c h ( e x c e p t i o ne x ) s y s t e m c o n s o l e w r i t e l i n e ( ”e r r o rl o a d i n g d a t a x m l e x c e p t i o n :”+ e x m e s s a g e ) ; ) t r ya n dr e t r i e v ea l lb o o kn o d e s n o d e l i s t = d o c u m e n t
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 环保行业废弃物处理与回收方案
- 虚拟仿真实验室教学方案设计
- 旅游行业旅游大数据应用与目的地营销方案
- 小微企业创新型金融服务模式实施方案
- 海南健康管理职业技术学院《都市农业概论》2024-2025学年第一学期期末试卷
- 2025包头昆区统计调查中心招聘20名见习岗位考试模拟试题及答案解析
- 2025天津南大奥宇高级中学招聘考试模拟试题及答案解析
- 个人理财投资咨询专业服务提供方案设计
- 成都市卫生健康委员会所属事业单位招募2025年医疗卫生辅助岗(162人)考试参考题库附答案解析
- 2025重庆潼南区卫健委招聘委管事业单位编外人员14人考试模拟试题及答案解析
- 2025年郑州人才公司面试题及答案
- 2025年跨境电子商务测试题及答案
- 防蚊培训课件
- 弥漫性大B细胞淋巴瘤病例讨论
- 2025年医院血透室人员培训工作计划
- 2025年公务员考试时政热点必做题(附答案)
- 休克的诊断和治疗课件
- 厨房刀具安全培训课件
- 私密抗衰培训课件
- 护理烫伤不良事件分析及整改措施
- 执勤警示教育
评论
0/150
提交评论