




已阅读5页,还剩51页未读, 继续免费阅读
(计算机软件与理论专业论文)xml文档数据查询技术研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
山东大学硕士学位论文 x m l 文档数据查询技术研究 摘要 随着互联网的迅猛发展和普及,人们通过计算机与互联网联接,可以从世界 各地实时的接收和发送大量、最新的信息,但在信息交换过程中存在着一个突出 的问题,就是多种多样的数据格式,给信息的有效使用带来了障碍。所以如何以 最便捷、最可靠、最有效的方式获取所需的信息是一个很大的困扰。x m l 作为基 于w e b 应用的一种电子数据交换标准,以其自身卓越的优势,尤其是跨平台、异 构数据交换的功能,正成为下一代网络电子数据交换的最佳选择,已被广泛应用 于商业、教育、通讯等各种领域。关于x m l 数据存储和查询的研究也正方兴未艾 目前关于x m l 数据查询的研究主要集中于基于路径表达式的x m l 数据查 询。从研究新的查询方法、索引结构、操作符重写及路径表达式自身优化等方面, 探讨提高查询效率的问题。例如:路径表达式模板匹配方法、基于b + 树的结构联 合方法、基于后缀树的索引方法、路径表达式重写索引查询方法、利用x m l 模板 优化查询路径的方法等。这些研究都对提高x m l 文档数据查询的效率作出了重要 贡献,但是也都存在着自身的问题。本文在吸收前人研究成果的基础上,围绕提 高x i v i l 文档数据查询效率的问题,从建立高效的索引结构和选择恰当的实现机制 两方面入手,对x m l 单文档的简单路径查询作了进一步研究,所作主要工作及取 得主要成果如下: 1 、提出一种新的索引结构 本文在x m l 文档基本树结构基础上,提出综合利用哈希表、链接表和c - f o r e s t 结构为x m l 文档构建新的索引,对该索引的效率问题进行了分析。 2 、提出一种新的查询方法 本文提出运用多线程机制的优势,在高效索引的基础上,自底向上,并发处 理查询的解决方案。对路径表达式进行了再处理,以适合多线程机制,详细给出 了这种处理策略 3 、给出所有算法的代码实现 山东大学硕士学位论文 本文对所提出的索引结构、查询方法都给出了具体算法和代码实现,主要包括: 解析x m l 文档建立索引结构的算法、解析路径表达式建立相关对象的算法和多线 程并发查询的算法,其中采用的技术具有一定实用参考价值。 4 、实验分析 本文对所提出的l 文档数据查询技术同传统的查询技术,在不同规模数据 集上进行了实验对比。通过分析实验结果,指出了该方法对查询效率的显著提高 和仍然存在的问题。 关键字:吼;数据查询;索引结构;多线程;路径表达式;自底向上 山东大学硕士学位论文 t h er e s e a r c ho nx m l q u e r yt e c h n o l o g y 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 ta n dp o p u l a r i z a t i o no fh t e r n e t , p e o p l ec a l lr e c e i v ea n d s e n dal a r g en u m b e ro ft h el a t e s ti n f o r m a t i o nf r o ma l lp a r t so ft h ew o r l dr e a l - t i m e l yb y l i n k i n gt h e i rc o m p u t e rt oi n t e m e t b u ta l lo u t s t a n d i n gp r o b l e me x i s t sw h i l ei n f o r m a t i o n e x c h a n g e s ,i ti st h ev a r i e dd a t af o r m a t sw h i c hh a v eb r o u g h tt h eo b s t a c l et ot h eu s i n g e f f e c t i v e l yo fi n f o r m a t i o n s oh o wb yam o s tc o n v e n i e n t , r e l i a b l ea n d e f f e c t i v ew a yt o o b t a i nn e c e s s a r yi n f o r m a t i o ni sah e a v yp u z z l e m e n t x m l 船ak i n do fe l e c t r o n i cd a t a i n t e r c h a n g es t a n d a r dt h a ti su s e di nw e ba p p l i c a t i o n s ,w i t hi t sr e m a r k a b l ea d v a n t a g e s , e s p e c i a l l yi i li n t e r c h a n g i n gd i f f e r e n ts t r u c t u r a ld a t ao v e rp l a t f o r m s ,i sb e c o m i n gt h eb e s t c h o i c ef o re l e c t r o n i cd a t ai n t e r c h a n g et h r o u g hi n t e m e ti nt h ef u t u r e i th a sb e e na l r e a d y 丽d e l yu s e di nv a r i o i l sk i n d so ff i e l d s ,s u c h 勰c o n l n l e r e e ,e d u c a t i o n , c o m m u n i c a t i o n , e t c t h er e s e a r c ho nx m ld a t as t o r i n ga n dq u e r y i n gi sa l s oi nt h ea s c e n d a n t a tp r e s e n t , t h er e s e a r c ho nq u e r y i n gx i v l ld a t am a i n l yc o n e e t r i b t e so nt h eq u e r y b a s e do np a t he x p r e s s i o nb e c a u s ei ti so n eo ft h ec o c o m p o n e n t so fm o s tx m lq u e r y l a n g u a g e s f r o ms t u d y i n gn e wq u e r ym e t h o d s ,i n d e xs t r u g = t r r e s ,o p e r a t o rr e c e d i n ga n d p a t he x p r e s s i o n so p t i m i z i n g , e t c ,r e s e a r c h e r sh a v ep r o p o s e dm a n yv a l u a b l es o l u t i o n s t oi m p r o v et h eq u e r ye f f i c i e n c y f o re x a m p l e :t h ep a t he x p r e s s i o nt e m p l a t e m a t c h m e t h o d , t h es t r u c t u r a lj o i mb a s e do nb + t r e em e t h o d ,t h es u f f i xt r e ei n d e xm e t h o d , r e c o d i n gp a t he x p r e s s i o ni n t oas p e c i a li n d e xm e t h o da n du t i l i z i n gx m l s c h e m at o o p t i m i z ep a t he x p r e s s i o nm e t h o d , e t e a l lo f t h e s eh a v em a d ei m p o r t a n tc o n t r i b u t i o n t o r a i s ex m l q u e r ye f f i c i e n c y , b u tt h e ya l s oh a v et h e i ro w ns h o r t c o m i n g s i nt h i sp a p e r , b a s e do nt h ed e e ps t u d y i n go f a l lt h e s er e s e a r c hr e s u l t s ,w ep r o p o s e dnn e ws o l u t i o nt o m o s t l yi m p r o v et h eq u e r ye f f i c i e n c yo ns i n g l ex m ld o c u m e n tb ys i m p l ep a t h e x p r e s s i o n ,f r o mb u i l d i n g nh i g h - e f f i c i e n ti n d e xs t r u c t u r ea n dc h o o s i n ga l l a p p r o p r i a t er e a l i z a t i o nm e c h a n i s m t h em a i n w o r k sa n da c h i e v e m e n t sw eh a v ed o n e i l l 山东大学硕士学位论文 a sf o l l o w s : i p r o p o s e dan e w i n d e xs t r u c t u r e b a s e do nt h eb a s i ct r e es t r u c u l _ r eo f x m lf i l e ,w ep r o p o s e dan e wi n d e xf o rx m l d o c u m e n tw h i c hu t i l i z eh a s hi n d e x 1 i n k e dl i s ti n d e xa n dc f o r e s t s t r u c t u r e s y n t h e t i c a l l ya n da n a l y z e di t se f f i c i e n c yi nq u e r y 2 p r o p o s e da n e wq u e r yp r o c e s s i n gm e t h o d i nt h i sp a p e r , w ep r o p o s e dan e ws o l u t i o nw h i c ht a k ea d v a n t a g eo ft h em u l t i t h r e a d m e c h a n i s m , u t i l i z et h eh i 曲- e f f i c i e n ti n d e xs t r u c t u r eb u i l ti nt h i sp a p e r , f r o mt h eb o t t o m o fap a t he x p r e s s i o nt ot h eu p ,t op r o c e s sax m l q u e r ys i m u l t a n e o u s l y t os u p p o r tt h e m u l t i t h r e e dm e c h a n i s m s ,ap a t he x p r e s s i o nn e e dt ob er e b u i l tb e f o r ep r o c e s s e d w e d e s c r i b e dt h ep a r s et a c t i c si nd e t a i la l s o 3 p r e s e n t e dt h ek e ya l g o r i t h m sa n dt h e i r p r o g r a m m i n gc o d e s i nt h i sp a p e r , w ep r e s e n t e dt h ek e ya l g o r i t h m sa n dt h e i rp r o g r a m m i n gc o d e so n h o wt ob u i l dt h ed e s i r e di n d e xs t r u c t u r ea n dh o wt op r o c e s sap a t hq u e r y u s i n g m u l f i t h r e a d m a i n l yi n c l u d e :t h ea l g o r i t h mo f p a r s i n gx m ld o c u m e n tt ob u i l das p e c i a l i n d e xs t r u c t u r e t h ea l g o r i t h mo fp a r s i n gp a t he x p r e s s i o nt ob u i l dt h er e l e v a n to b j e c t s a n dt h e a l g o r i t h m o fp r o c e s s i n gaq u e r y m u l f i t h r e a d i n gs i m u l t a n e o u s l y n 圮 t e c h n o l o g i e sa d o p t e da m o n gt h i sp a p e ra l s oh a v es o m ep r a c t i c a lr e f e r e n c ev a l u e sf o r p r o g r a m m e r s 4 e x p e r i m e n t w ec o m p a r e dt h et r a d i t i o n a lm e t h o dw i t ho b rm e t h o do nt h eq u e r ye f f i c i e n c yo n s o m ex m ld o c u m e n t so fd i f f e r e n t s i z e i na ne x p e r i m e n t t h r o u g ha n a l y z i n gt h e e x p e r i m e n t a lr e s u l t , w ep o i n t e do u tt h er e m a r k a b l ei m p r o v e m e n to fq u e r ye f f i c i e n c yb y 0 1 1 1 m e t h o da n dp o i n t e do u tt h ep r o b l e ms t i l le x i s t i n gi ni t k e yw o r d :x m l ;d a t aq u e r y ;i n d e xs t r u c t u r e ;m u l f i t h r e a d ;p a t he x p r e s s i o n ;b o t t o m - u p 原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下, 独立进行研究所取得的成果。除文中已经注明引用的内容外,本 论文不包含任何其他个人或集体已经发表或撰写过的科研成果。 对本文的研究作出重要贡献的个人和集体,均已在文中以明确方 式标明。本声明的法律责任由本人承担。 论文作者签名: 盈i 、遮 日期:趟! 坦f 旦 关于学位论文使用授权的声明 本人完全了解山东大学有关保留、使用学位论文的规定,同 意学校保留或向国家有关部门或机构送交论文的复印件和电子 版,允许论文被查阅和借阅;本人授权山东大学可以将本学位论 文的全部或部分内容编入有关数据库进行检索,可以采用影印、 缩印或其他复制手段保存论文和汇编本学位论文。 ( 保密论文在解密后应遵守此规定) 论文作者签名:缸边导师签名:数 日 期:丛述! 堑。乜 山东大学硕士学位论文 l - 1 x i v l 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 ,可扩展符号化语言) 1 1 工3 1 。 本节将就x m l 的定义、起源、特点及优势作简要介绍。 i i i 什么是x m l x m l 代表可扩展的标记语言。它是一种把数据表示为一个文本字符串的语言, 这个文本字符串还包括用于数据的散布的“标记”。使用标记允许把文本和与它的 内容或形式相关的信息散布在一起。 标记( t a g ) 用角括号“ ”包含字符来区别字符数据( 非标记文本) 。 因此一个字符串、一个文档由标记和字符数据组成,这些结合起来就形成了元素 一个元素( e l e m e n t ) 以一个开始标记开始,以一个结束标记结束如: i n t e r s p e r s e d 是标记,在标记里面的内容是文本,而从一个开 始标记到它的结束标记的文本区域是一个元素, 像 “ i n t e r s p e r s e d ”就是一个元素。元素是x m l 的基本组成部 分元素可以包含嵌套在其中的其它元素,叫做子元素( s u b e l e m e n t ) 。一个文档 由一个单一的最外面的元素组成,它包含其它元素和或字符数据,并且每个子元 素可以包含其它带字符的“子元素的子元素”( s u b - s u b e l e r n e n t ) 。下面给出一个简 单的x m l 订单文档示例。 , 例1 - 1 一个简单的咀。文档 山东大学硕士学位论文 c h e zf r e d b i r d s o n gc l o c k 1 2 2 4 4 叫s k u 2 1 9 5 1 3 5a i r l i n eh i g h w a y n a r r a g a n s e t t r i 0 2 8 8 2 2 6 3 4 0 t a xr a t e = ”7 0 ”c u r r e n e y = u s d 1 8 4 4 2 9 0 7 9 8 9 5 1 1 2x m l 的起源 s g m l 介绍 说到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 最初是由i b m 开发的一种用于排版的符号化语言,称为g m l 经过若干年 的发展,1 9 8 4 年国际标准化协会( i s o ) 开始对此提案进行讨论,于1 9 8 6 年正式 承认s g m l 为国际标准规范( i s 0 8 8 7 9 ) s g m l 实际上是一种通用的文档结构描述符号化语言,主要用来定义文献模 型的逻辑和物理类结构。一个s g m l 语言文件由三部分组成,即语法定义、文件 2 山东大学硕士学位论文 类型定义d t d ( d e f i n i t i o nt y p ed o c u m e n t ) 和文件实例。语法定义部分定义了文 件类型定义和文件实例的语法结构;文件类型定义部分定义了文件实例的结构和 组成结构的元素类型;文件实例是s g m l 语言程序的主体部分。 在s g m l 的实际使用中,每一个特定的d t d 都定义了一类文件因此,人们 习惯上把具有某一特定d t d 的s g m l 语言,称为某某符号化语言这样s g m l 就成为那些派生语言的元语言 h t m l 的出现 1 9 8 9 年,欧洲物理量子实验室( c e r n ) 的信息专家蒂姆伯纳斯李发明了 超文本链接语言,使用此语言能轻松地将一个文件中的文字或图形连到其它的文 件中去,这就是h t m l 的前身。1 9 9 1 年,蒂姆伯纳斯李在c e r n 定义了h t m l 语言的第一个规范,之后成为w 3 c 组织为专门在互联网上发布信息而设计的符号 化语言规范。可以说,h t m l ( h y p e r t c x tm a r k u pl a n g u a g e ) 是s g m l 的一个实例, 它的d t d 作为标准被固定下来。因此,耵m l 不能作为定义其它符号化语言的元语 言 作为w o r l dw i d ew e b 的一个组成部分,h t m l 语言发展很快,在短短的几年 里,它已历经了h t m l l 0 、h t m l 2 0 和h t m l 3 0 、h t m l 4 0 等多个版本,同时 d h t m l ( 动态) 、玎m l ( 虚拟) 、s h t m l 等也飞速发展起来。h t m l 以简单精 练的语法、极易掌握的通用性与易学性,使w e b 网页可以亲近于每一个普通人, 互联网因此得以普及发展以至今日辉煌。 但是,层前的h t m l 还不稳定,不同的浏览器会产生不同的显示效果。此外, 由于h t m l 对超级链接支持不足,并缺乏空间立体描述,处理图形、图像、音频、 视频等多媒体能力较弱,图文混排功能简单,不能表示多种媒体的同步关系等缺 点,也影响h t m l 的大规模应用以及用于复杂的多媒体数据处理。 x 胤的诞生 x m l 是由w 3 c 于1 9 9 8 年2 月发布的一种标准。它同样是s g m l 的一个简化 子集,它将s g m l 的丰富功能与h t m l 的易用性结合到w e b 的应用中,以一种开 放的、自我描述方式定义了数据结构。在描述数据内容的同时能突出对结构的描 述,从而体现出数据之间的关系这样所组织的数据对于应用程序和用户都是友 好的、可操作的。之后,w 3 c 又用x m l 设计出一个与h t m l 4 0 1 功能等价的语 山东大学硕士学位论文 言,称为x h t m l1 0 ( e x t e n s i b l eh y p e r t e x tm a r k u pl a n g u a g e ) 使之与h t 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 ,因而也可以像s o m l 那样作为元语言来定义其它文件系统, 或称其它符号化语言。如果把符号化语言分为元符号化语言和实例符号化语言的 话,s g m l 和x m l 都是元符号化语言,而h t m l 和由x m l 派生的x h t m l 都是 实例符号化语言。 所以可以说,x m l 的出现,使h t m l 存在的问题可以得到很好的解决。 1 1 3x m l 的特点及优势 w e b 存储格式语言,从h t m l 发展到d h t m l ,直到今天最新的x m l ,发展 的每一步,都是为了适应w e b 应用发展的需求。虽然x m l 原本是为出版界设计 的一种文档描述语言,即s g m l 派生而来的一种符号化语言,但是它也是为互联 网的数据交换而设计的。从而,x m l 不仅仅是s g m l 定义的用于描述的文档,而 且在电子商务等各个领域使数据交换成为可能。 x m l 能够应用于各种领域的原因,就是x m l 具有到目前为止其他方法所不 具备的数据描述特点,控制信息不是采用应用软件的独有形式,而是采用谁都可 以看得懂的标记形式来表现,所以x m l 最适合作为数据交换的标准,这也是咀, 受人关注的原因。 可扩展性是) 也的另一个主要特点。用x m l 可以对数据关系根据需要进行 定义,形成特有的标准,因此各行各业都在建立自己的行业化标准,以应用于网 络上处理电子商务,把后台系统通过w e b 站点表现出来。x m l 还可以作为数据仓 储,一个x m l 文件就是一个小的数据库,通过对数据关系的定义形成各种关系、 属性的数据,实现数据交换、上下文检索、多媒体传输。 x m l 的特点 1 、使用有意义的标记( t a g ) x m l 标记具有语义,描述性强。 2 、数据的语义与显示方式分开 x m l 只描述数据的内容,并不决定数据如何显示,数据的显示由级联样式单 4 山东大学硕士学位论文 ( c s s ,c 部e a d i n gs t y l es h e e t ) 或可扩展样式单语言( x s l ,e x t e n s i b l es t y l e s h e c t l a n g u a g e ) 决定。x m l 和与它有关的标准鼓励内容( 作为抽象数据类型) 、表示( 作 为格式对象组特定的元素类型) 和处理( 作为样式单) 相分离,每部分都可 以独立的发展,不需要在一个统一的框架中折衷。 3 、可自定义的标记 x m l 可由用户按需要自由设计、定制标记及标记之间的关系,如数学标记语 言m a t h m l 、财经标记语言f p m l 、电子商务标记语言e b x m l 等。所以说x m l 是一种“定义语言的语言”,即一种元语言,具有很好的可扩展性。 4 、严格的语法控制 x m l 对语法有严格的要求,所有x m l 的文件都必须经过严格的“验证”过 程才算完成,文件格式容易转换。 x m l 的优势 x m l 最大的优势在于对各种数据的管理。任何系统都可以通过x m l 的解析 器来读取x m l 数据,因此它的数据可以通行各处,而不用担心系统不支持的问题。 1 、数据的检索 e t 上主要的数据检索方式;分类检索和全文检索。检索效率低,或找不 到。 x m l 以语义标记作为搜索索引,在文件中截取关键部分。所有标记内的数据 都可视为一个元素,而每一个元素都可以作为数据的索引。 2 、数据的显示 x m l 将数据保存的格式与数据显示的方式分开,使得x m l 文件可以轻易地 更换数据显示的方式,仅需改变x s l 的设置,用户就可以将同一数据制作成 h t m l 、p d f 、w m l ( w l r e l e s sm a r k u pl a n g u a g e ) 、h d m l ( h a n d - h d dd e f i c e m a r k u pl a n g u a g e ) 等不同格式,供不同的硬件显示 3 、数据的交换 x m l 语法简单,可以被所有的机器解读,又可以在各种平台上使用,使得 x m l 有潜力成为一个通行四海皆准的标记语言。 山东大学硕士学位论文 1 2x m l 文档数据查询技术及研究现状 x m l 的出现给基于w e b 的数据交换带来了一场革命,越来越多的文档以 x m l 格式表示。如何在浩如烟海的x m l 文档中快速、准确地检索到所需信息, 已成为x m l 研究领域的一项重要课题和迫切任务。本节将对相关主要概念和x m l 数据查询技术的研究现状进行扼要介绍。 1 2 1x m l 文档 x m l 文档的准确含义见万维网联盟( w 3 c ) 发表的x m l1 0 规范 h t t p :w w w w 3 o r g t p jr e c - x m l 。这个规范详细定义了x m l 文档是什么和不是 什么。形式合理限制是x m l 文档的最低要求。不满足形式合理限制的文档就不是 x m l 文档,分析器无法读取这种文档。 简单地说,x m l 文档应有一个根元素,所有开始标志要有相应的结束标志, 所有属性值要放到引号中,文档中只能使用x m l 中合法的u n i c o d e 字符。用一种 更有意义的方法考察咀。文档,即:可以把x m l 文档看作一棵树特别是在 编写处理x m l 文档的程序时,有一个根节点,包含不同的子节点,其中有些子节 点自己又有子节点,而有些则是叶结点,没有子节点。 x m l 树中大致包含以下五种不同节点: 根节点:也称文档节点,是一个抽象节点,包含整个x m l 文档,其子节点包 括说明语句、处理指令和文档的根元素。 元素:x m l 元素,具有名称、一组属性、一组范围名字空间和一系列子节点。 文本节点:两个标志( 或任何其他非文本节点) 之间的分析字符数据。 说明语句: 之类的x m l 说明语句。说明语句的 内容是其数据。说明语句没有任何子节点。 处理指令; 之类的处理指令 处理指令具有目标和值,没有任何子节点。 1 2 2 相关技术 x m l 是一种数据描述技术,而不是一种编程语言,因此在使用x m l 数据时, 6 山东大学硕士学位论文 还需要相应的显示、打印、结构变更、分析处理等技术的支持。这里仅介绍与x m l 文档查询相关的主要技术。 1 、d t d ( d o c u m e n tt y p ed e f i n i t i o n 文档类型定义) d t d 是一个或多个x m l 文件的模板,这些x m l 文件中的元素、元素的属性、 元素的排列方式顺序、元素能够包含的内容等,都必须符合d t d 中的定义d t d 通常是以某种应用领域为定义的范围,如:医学、建筑、工商、行政。d t d 定义 的元素涵盖范围越广泛,就越复杂。 d t d 可以是一个完全独立的文件,也可以在x m l 文件中直接设定。所以, d t d 分为外部d t d ( 在x m l 文件中调用另外已经编辑好的d t d ) 和内部d t d ( 在x m l 文件中直接设定d t d ) 两种。 使用了d t d 的) a 儿文档必须符合模板要求,在分析阶段必须通过d t d 的有 效性验证。现在很多的x m l 应用都建立在d t d 之上 2 、舭s c h e m a ( 舭模式) 同d t d 一样,s c h e m a 也是一种x m l 文档模式定义语言但d t d 的语法相 对复杂,并且它不符合x m l 文件的标准,自成一个体系。而s c h e m a 克服了d t d 的几个局限,首先,模式用x i v i l 实例文档语法编写,使用标记、元素和属性,其 本身也是x m l 文档,方便了使用和开发第二,模式完全支持名字空间第三, 模式可以指定元素的数据类型,检验文档时不仅可以根据元素结构,而且可以根 据元素内容采用s c h e m a 已成为x m l 发展的一个趋势。 3 、x p a t h ( x m l 路径语言) x p a t h 是声明式语言,用于定位x m l 文档中的节点,是w 3 c 的推荐标准。 x p a t h 并不在文档的x m l 语法下工作,而是基于x m l 文档的树结构,采用人们 熟知的路径表达方式,定位文档中结点的位置它仅指定需要查找的节点,并不 指定查找的算法。 定位路径( 1 0 c a t i o np a t h ) 是一个x p a t h 表达式,应用最广。定位路径选择x m l 文档的一个或一组节点,每个定位路径包含一个或几个定位步( 1 0 c a t i o ns t e p ) 。每 个定位步有一个轴( a x i s ) 、一个节点测试( n o d et e s t ) 和一个或几个谓词( p r e d i c a t e ) 。 定位路径分为相对路径和绝对路径,并提供相应的缩写语法。 给出几个简单例子: 山东大学硕士学位论文 ( 1 ) o r d e r c u s t o m e r n a m e 查询o r d e r 中所有c u s t o m e r 的名字 ( 2 ) o r d e r c u s t o m e r i d = 1 0 0 1 0 0 ” n a m e 查询o r d e r 中属性i d = ”1 0 0 1 0 0 ”的c u s t o m e r 的名字 ( 3 ) o r d e r c u s t o m e r 1 0 n a m e 查询o r d e r 中第1 0 个c u s t o m e r 的名字 ( 4 ) 1 n a m e查询文档中所有的n a m e 元素的值。 x p a t h 只是提供了一种定位文档中元素的表达方法,具体查询算法则由各语言 厂商提供搜索引擎。在x p a t h 基础上,又产生了x p o i n t e r 、x q u e r y 等技术。 4 、s a x ( s i m p l e a p if o r x m l ) s a x 是w 3 c 推荐的最完整的x m l a p i 规范,它是事件驱动的a p i ,在顺序 读入x m l 文档过程中,将x m l 文档解析成一个个片段,为自由建立x m l 文档 的数据结构提供了灵活的途径s a x 速度很快,内存效率很高( 不必在内存中存 储整个文档) ,但是,s a x 程序很难设计和编码,通常要建立自己的数据结构来保 存文档内容。此外,s a x 也是处理超大x m l 文档的唯一使用选择。 5 、d o m ( d o e u r n e n to b j e c tm o d e l 文档对象模型) d o m 是相当复杂的a p i ,将x m l 文档表示成数型结构。与s a x 不同的是, d o m 是读写a p i ,可以分析现有的x m l 文档和生成新的x m l 文档。每个x m l 文档表示为一个d o c u m e n t 对象。搜索、查询和更新文档时,调用这个d o c u m e n t 对象及其所包含对象的方法。这样就是d o m 更适合随机访问原文档中的各个不同 部分。但是,d o m 比s a x 所需的内存量大得多,也不太适合流式应用程序。 6 、n u m b e r i n gs c h e m e ( 元素编码制) 元素编码制“3 是对文档元素进行数字标识,籍此确定文档元素的逻辑关系。元 素编码制的提出,为结构化索引x m l 文档提供了可能。常用编码结构包括: 类型一( d o c i d ,s t
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 地铁员工考试题及答案
- 团队项目进度管理及任务分配模板
- 助人为乐的阿姨500字10篇
- 销售团队客户信息管理工具表
- 农村环保型养殖模式应用合同
- 学习中的挫折与成长事件作文11篇
- 班级才艺展示活动话题的作文13篇
- 《信息检索与利用技巧:大学信息技术教学教案》
- 特种文献检索课件模板
- 知识管理与知识共享平台模板
- 医院“十五五”发展规划(2026-2030)
- 黑龙江学位英语考试试题及答案
- AI大模型驱动的智慧供应链ISC+IT蓝图规划设计方案
- (2025)语文单招考试试题与答案
- 儿童周期性呕吐综合征治疗指南
- 道观庙宇托管协议书
- 早期阿尔茨海默病疾病修饰治疗专家共识(2025年版)解读
- PHPstorm激活码2025年5月13日亲测有效
- 总包合同补充协议范本
- 儿童编发课件
- 商密网管理制度
评论
0/150
提交评论