(计算机科学与技术专业论文)面向服务的web服务测试框架研究及实现.pdf_第1页
(计算机科学与技术专业论文)面向服务的web服务测试框架研究及实现.pdf_第2页
(计算机科学与技术专业论文)面向服务的web服务测试框架研究及实现.pdf_第3页
(计算机科学与技术专业论文)面向服务的web服务测试框架研究及实现.pdf_第4页
(计算机科学与技术专业论文)面向服务的web服务测试框架研究及实现.pdf_第5页
已阅读5页,还剩86页未读 继续免费阅读

下载本文档

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

文档简介

国防科学技术大学研究生院硕士学位论文 摘要 w e b 服务技术是一种新颖的分布式计算模型,它提供了一种独立于软硬件平 台和编程语言的调用机制,近年来引起学术界和工业界的广泛关注并迅速发展。 目前,关于w e b 服务技术的研究非常活跃,然而由于w e b 服务所固有的一些特性, w e b 服务测试与传统的软件测试工作相比面临着不少新的困难。 w e b 服务的体系架构包含着三种角色,它们通过s o a p 消息进行通信,这种 分布式软件架构使w e b 服务测试与传统的软件测试有着很多不同。目前已经提出 一些方法从不同的层次和侧面对w e b 服务进行测试,然而由于w e b 服务的诸多特 性,测试工作中的一些难题仍然没有解决。 本文介绍了一个面向服务的w e b 服务测试框架。在该框架中,测试工作的参 与者称为“测试服务”,它们通过服务注册、服务查询和服务调用实现相互协作 与分工,共同完成测试任务。我们借助于一个典型的测试工作流程对该框架进行 的分析表明,测试服务可以根据需要被动态地发现和调用,从而动态地集成到框 架中来,而且这种测试服务的集成过程不会带来安全和信息隐私上的问题。为了 支持这种动态的测试服务的集成,我们使用本体技术对w e b 服务测试领域进行建 模,不但提供该领域内各种概念的明确的形式化表达,而且为服务之间的通信机 制提供语义共享基础。本体使用o w l 语言表示以便于使用语义w e b 服务技术描 述测试服务。我们设计了一个称为“测试中介”的角色作为测试工作的组织者, 它是联结框架的使用者和测试服务之间的桥梁。 本文介绍了框架的实现,并通过案例分析说明测试服务的集成过程以及w e b 服务测试工作的具体流程,它们从不同的角度显示了本框架具有可行性、可扩展 性和灵活性。 关键字:w e b 服务测试,语义w e b 服务,测试服务,本体,o w l s ,测试中介 第i 页 国防科学技术大学研究生院硕+ 学位论文 a b s t r a c t w e b s e r v i c e s ( w s ) ,b e i n gan e w d i s t r i b u t e dc o m p u t i n gm o d e l ,h a sb e e nd e v e l o p e d r a p i d l yu n d e rt h es u p p o r to fa c a d e m i ca n di n d u s t r i a lr e a l ms i n c ei tb r i n g sa ni n v o c m i o n m e c h a n i s m 、析t hn e u t r a l i t yb e t w e e np l a t f o r m sa n dl a n g u a g e s d e s p i t eo ft h ea c t i v er e s e a r c ho nw st e c h n o l o g ya tp r e s e n t ,m a n yn e wd i f f i c u l t i e sa r ec o n f r o n t e di nt e s t i n go f w sc o m p a r i n gw i t ht e s t i n go ft r a d i t i o n a ls o f t w a r eb e c a u s eo ft h ei n h e r e n tf e a t u r e so f w sa r c h i t e c t u r e t h ed i s t r i b u t e da r c h i t e c t u r eo fw s ,i n c l u d i n gt h r e er o l e sw h i c hc o m m u n i c a t ew i t h e a c ho t h e rb ys o a pm e s s a g e s ,m a k e st h et e s t i n go fw s a p p l i c a t i o n sm u c hd i f f e r e n t f r o mt r a d i t i o n a ls o f t w a r et e s t i n g a l t h o u g hs o m em e t h o d sa r ep r o p o s e dt ot e s tw sf r o m d i f f e r e n tl e v e l sa n d a s p e c t s ,t h ed i f f i c u l t i e si nt e s t i n gw s a r es t i l lt ob ea d d r e s s e d t 1 1 i sp a p e rp r e s e n t sas e r v i c eo r i e n t e da r c h i t e c t u r ef o rt e s t i n gw s i nt h i sa r c h i t e c t u r e ,v a r i o u sp a r t i e si n t e r a c tw i t he a c ho t h e rt oc o m p l e t et e s t i n gt a s k st h r o u g ht e s t i n g s e r v i c er e g i s t r a t i o n d i s c o v e r ya n di n v o c a t i o n t h ea n a l y s i so ft h ea r c h i t e c t u r ei na t y p i c a ls c e n a d os h o w st h a ti th a st h ea d v a n t a g e so fs u p p o r t i n gd y n a m i cd i s c o v e r ya n di n v o c a t i o no ft e s t i n gs e r v i c e sa sr e q u i r e db yt h ed y n a m i cd i s c o v e r ya n di n v o c a t i o no f n o r m a lf u n c t i o n a ls e r v i c e sw i t h o u tc o m p r o m i s i n gs e c u r i t y p r i v a c ya n di n t e l l e c t u a l p r o p e r t yr i g h t s i ta l s oh e l p st or e d u c et h er i s ko fu n n e c e s s a r yd i s t u r b a n c e st ot h en o r - m a lo p e r a t i o n so fs e r v i c e sb yt e s t i n ga c t i v i t i e s n e wt e s t i n gs e r v i c e sa r ee a s yt op a r t i c i 一 p a t ei nt h ef r a m e w o r kw i t hf l e x i b i l i t yo w i n gt ot h eu t i l i z a t i o no fa no n t o l o g yw h i c hi s d e v e l o p e dt op r o v i d ea ne x p l i c i td e s c r i p t i o no ft h ec o n c e p t si nt h ef i e l do ft e s t i n go fw s a n dt op r o v i d et h ef o u n d a t i o no ft h ec o m m u n i c a t i o nm e c h a n i s mb e t w e e ns e r v i c e sa s w e l l t h eo n t o l o g yi sr e p r e s e n t e di no w l ,f a c i l i t a t i n gt h ed e s c r i p t i o no ft h et e s t i n gs e r v i c e si ns e m a n t i cw e bs e r v i c e st e c h n o l o g y w ed e s i g n e das p e c i a ls e r v i c et ob et h e c o o r d i n a t o ro ft h et e s t i n gw o r kw h i c hb r i d g e dt h eu s e r so ft h ef r a m e w o r ka n dt h et e s t i n g s e r v i c e sp a r t i c i p a t i n gi nt h et e s t i n gw o r k o u rc a s es t u d i e sw i t hw r a p p i n ga na u t o m a t e d t e s t i n gt o o la saw sa n dt e s t i n gac a l c u l a t o rw e bs e r v i c ed e m o n s t r a t e dt h a tt h ea r c h i t e c t u r ei sf e a s i b l e ,e x t e n d a b l ea n df l e x i b l e k e yw o r d s = t e s t i n gw e bs e r v i c e s ,s e m a n t i cw e bs e r v i c e s ,t e s t i n gs e t - v i c e ,o n t o l o g y ,o w l - s ,t e s tb r o k e r 第i i 页 国防科学技术大学研究生院硕士学位论文 表目录 表4 1s t o w s 本体中的简单概念3 4 表4 2s t o w s 本体中的基本概念3 4 表4 3s t o w s 本体中的复合概念3 4 表4 4c a p a b i l i t y 属性涵义4 2 表4 5t a s k 属性涵义一4 3 第1 i i 页 国防科学技术大学研究生院硕十学位论文 图目录 图2 1w e b 服务体系结构模型5 图2 2w e b 服务协议栈【7 j 6 图2 3 语义w e b 服务体系结构8 图2 4 基于x m l 的语义描述语言演化图9 图2 5o w l 类定义示例1 0 图2 6o w l 属性定义示例1 0 图2 7o w l 个体定义示例1 1 图2 8s e r v i c e 本体顶层结构1 2 图2 9s e r v i c e p r o f i l e 本体结构1 3 图2 1 0s e r v i c e m o d e l 本体结构图1 4 图2 1 1o w l s 与w s d l 之间的映射关系l5 图3 1 面向服务的w e b 服务测试框架结构简图1 9 图3 2 面向服务的w e b 服务测试框架实现框图2 3 图3 3 测试场景流程图2 5 图3 4 面向服务的w e b 服务测试框架的逻辑模块结构2 7 图3 5 面向服务的w e b 服务测试框架通信层次图:2 9 图4 1 类t e s t e r 结构图3 5 图4 2a r t e f a c t 类层次结构图3 5 图4 3c a s o c c s p e c 个体定义3 6 图4 4 测试活动分类3 6 图4 5 测试上下文分类3 6 图4 6m e t h o d 类的两种典型分类方法3 7 图4 7 服务分类示例3 9 图4 8 测试服务分类层次结构图4 0 图4 9p r o f i l e 实例。4 1 图4 1 0 类c a p a b i l i t y 结构4 l 图4 1 lc a p a b i l i t y 类型个体4 2 图4 1 2 类t a s k 结构4 3 图4 1 3m a t c h m a k e r 体系结构【4 9 1 4 4 图4 1 4 本体s e r v i c e t y p e 的单向扩展4 6 图4 15m a t c h m a k e rc l i e n t 4 7 图4 16 本体管理服务4 9 第1 v 页 国防科学技术大学研究生院硕+ 学位论文 图4 1 7 本体中类层次结构的扩展一5 0 图4 1 8 测试中介结构图一5 1 图4 19 测试中介主要类图5 2 图4 2 0 任务分析器活动图5 3 图4 2 l 两种测试服务能力表达方法的映射5 4 图4 2 2 服务搜索模块活动图5 4 图4 2 3 任务执行模块活动图一5 5 图5 1 测试任务6 0 图5 2 测试服务查询代码片段6 1 图5 - 3 典型的测试工具集成流程6 2 图5 4t e s t e r a 活动图6 4 图5 5 用户提交的测试任务6 5 图5 6 服务测试流程顺序图6 7 第v 页 独创性声明 本人声明所呈交的学位论文是我本人在导师指导下进行的研究工作及取得 的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含 其他人已经发表和撰写过的研究成果,也不包含为获得国防科学技术大学或其它 教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任 何贡献均已在论文中作了明确的说明并表示谢意。 学位论文题目: 亘自邀签鲍叟曼坠腿鑫测达框苤盈窒丛塞理 学位论文作者签名:筮蝉 日期:力卯琴年z 月7 日 学位论文版权使用授权书 本人完全了解国防科学技术大学有关保留、使用学位论文的规定。本人授权 国防科学技术大学可以保留并向国家有关部门或机构送交论文的复印件和电子 又档,允许论文被查i 阅和借i 阅;可以将学位论文的全部或部分内晷编入有关数据 库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。 ( 保密学位论文在解密后适用本授权书。) 学位论文题目:亘自腿鑫的坠鱼月区签型达挺苤盟窒区塞理 一 学位论文作者签名:三莨强扯 日期:椭 年亿月z 7 日 作者指导刻醛名:夸扛日期:年i 堋垆 | 国防科学技术大学研究生院硕+ 学位论文 第一章绪论帚一早珀t 匕 1 1 研究背景及相关技术基础 近年来,有关万维网( w o r l dw i d ew e b ,w w w ) 的各种技术层出不穷,基于 w e b 的应用向复杂化和多样化发展,当前主要基于h t t p 协议的w e b 技术已经难 以适应种类繁多的复杂的计算的需求。近年来,w e b 的发展出现了两个重要的趋 势:w e b 服务( w e bs e r v i c e s ) 与语义w e b ( s e m a n t i cw e b ) 。与此同时,一种新的软 件架构模式面向服务的体系架构正在兴起,它与以往其他的软件体系架构有 着根本的不同。 w e b 服务由一组利用标准化的x m l 消息传递机制可以通过网络访问的操作 组成。对这组操作的接口用标准的、规范的x m l 语言的描述称为w s 的服务描 述。这一描述包括消息格式( 详细描述操作) 、传输协议和位置。该接口隐藏了 服务的实现细节,使以独立于实现服务所基于的硬件或软件平台和编写服务所用 的编程语言的方式来调用服务成为可能【l 】。基于w e b 服务的应用程序成为松散耦 合、面向组件和跨技术平台。它可以单独或同其它w e b 服务一起用于实现复杂的 系统。w e b 服务关注于对信息,行为和商务流程的封装而不是具体的服务实现技 术。 w e b 服务的体系结构中共包含三种角色,服务的提供者( s e r v i c ep r o v i d e r ) 、服 务请求者( s e r v i c er e q u e s t e r ) 和服务注册中一i 二, ( s e r v i c er e g i s t r y ) 7 1 。服务提供者定义 服务描述并将其发布给服务请求者或服务注册中心。服务请求者使用查找操作从 本地或服务注册中心检索服务描述,然后使用服务描述与服务提供者进行绑定并 调用w s 的实现。服务提供者和服务请求者角色是逻辑结构,因而同一服务可以 同时扮演两种角色,同时表现两种特性。服务注册中心用来发布服务提供者的服 务描述,它是体系结构中的可选角色,服务提供者可以把服务描述直接发送给服 务请求者,同样,服务请求者可以从服务注册中心以为的其他来源得到服务描述, 如f t p 站点、w e b 站点等【引。 w e b 服务作为一种新兴的分布式计算模型由于其良好的特性而得到业界广泛 的支持,和其他的分布式计算技术如c o r b a ,j a v ar m i d c o m 等相比,w s 技术 具有较好的灵活性和松散性,它允许用户建立具有真正松散耦合特性的程序编程 模型。 语义w e b ( s e m a n t i cw e b ) 的概念由t i mb e m e r s l e e 等人提出【2 j ,它的研究目 的是通过给万维网上的文档添加能够被计算机理解的语义信息,使整个互联网成 为一个通用的信息交换媒体,充分发挥万维网作为巨大的媒体系统的潜力。语义 第1 页 国防科学技术大学研究生院硕士学位论文 w e b 与人工智能中所研究的语义网络不同,这里所指的语义是“计算机可处理” 的语义,而不是自然语言的语义。当前语义w e b 已经被应用到知识的表示、存储 和推理等诸多方面,它为w e b 的发展注入了新的活力,也为其带来了新的发展方 向。 语义w e b 服务是上述两种发展趋势的交叉点,它是将w e b 服务与语义w e b 的研究相结合的结果【3 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 服务的质量。 面向服务的体系架构( s e r v i c e o r i e n t e da r c h i t e c t u r e ,s o a ) 的兴起是软件工程发 展的必然结果,从抽象层次上来看,软件开发方法经历了面向过程、面向对象、 面向构件和面向服务的发展过程,每一个阶段都是软件设计人员追求软件重用的 结果。s o a 是种架构模型,它可以根据需求通过网络对松散耦合的粗粒度应用 组件进行分布式部署、组合和使用。服务层是s o a 的基础,它可以直接被应用程 序调用,从而有效控制系统中与软件代理交互的人为依赖性。 对于s o a 的定义,不同的厂商或个人有不同的理解,比如,g a r t n e r 将s o a 描述为:“客户端服务器的软件设计方法,一项应用由软件服务和软件服务使用 者组成,s o a 与大多数通用的客户端服务器模型的不同之处,在于它着重强调软 件组件的松散耦合,并使用独立的标准接口” 4 1 。其他的定义在这里不再一一列出。 这些定义虽然不尽相同,但都道出了s o a 的关键特性i 粗粒度、松耦合的服务架 构,服务之间通过简单、精确定义接口进行通讯,不涉及底层编程的接口和通讯 模型等。s o a 并不是新生事物,在w e b 服务之前,大型i t 组织己部署s o a 多年, s o a 也不是一种现成的技术,而是一种架构和组织i t 基础结构及业务功能的方法, 是一种在计算环境中设计、开发、部署和管理离散逻辑单元的的模型。s o a 本身 正在不断的演化之中,当代s o a 本质上依赖w e b 服务,目前没有更先进的技术比 w e b 服务更适合表现s o a ,w e b 服务概念和技术已经影响了许多s o a 的特刎5 。 与以往的分布式计算模型相比,s o a 由于具有编码灵活性、支持多种客户类型、 具有更好的易维护性、伸缩性和更高的可用性而受到各大厂商的青睐。 1 2 课题的提出和研究意义 目前,关于w e b 服务技术的研究非常活跃,w e b 服务技术的标准正在逐步走 向成熟,然而关于w e b 服务测试与w e b 服务程序质量保障的研究仍需进一步探索 【6 】。一些传统的变异测试方法可以应用到对w e b 服务的测试中来,这些方法将w e b 第2 页 国防科学技术大学研究生院硕士学位论文 服务作为黑盒来测试【9 】【1 0 】【l i 】,也有人提出一些另外的测试方法来测试w e b 服务的 某些方面,如通过测试x m ls c h e m a 来保证服务之间传输的数据的正确性等。这 些重要的工作给w e b 服务程序质量保障带来了很大的推动,但是w e b 服务测试面 对的主要困难并没有解决。 这些困难包括: l 、w e b 服务的开发环境和运行环境有很大的不同。在发布之前,很难对实际 的运行环境进行预测,如访问的用户数量,服务的访问方式等,这些不可预测的 因素增加了w e b 服务的测试难度。 2 、与传统的需要人工干预的测试不同,w e b 服务测试主要基于服务接口进行 设计和实现,必须采用自动化的测试方法。 3 、w e b 服务的发布、绑定都是动态的,这种特性增加了测试的难度。 4 、w e b 服务应用常涉及到服务提供者,服务请求者和服务注册中心三种角色, 都需要参与到测试的不同阶段。其分布合作的特征使得测试活动的组织和管理更 加困难。 为了解决这些困难,z h u 在文 6 】中提出了一个面向服务的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 3 本文的研究内容 1 3 1 研究内容 本文应用现有的s o a 和语义w e b 服务的各种相关研究成果,研究面向服务的 w e b 服务测试框架的实现技术。本文的主要研究内容包括以下几个部分: ( 1 ) 语义w e b 服务理论与技术基础。 w e b 服务与语义w e b 是语义w e b 服务的两大技术基础,论文的这部分首先对 第3 页 国防科学技术大学研究生院硕士学伉论文 这两方面的技术分别进行了讨论,然后对语义w e b 服务进行探讨,为后续的研究 打基础。 ( 2 ) 面向服务的w e b 服务测试框架与实现方案。 面向服务的w e b 服务测试框架是遵循面向服务的原则进行设计的,这也是它 之所以称作面向服务的原因,它拥有s o a 所拥有的诸多优点。论文的这部分从 w e b 服务测试的需求出发,以面向服务为设计原则,对框架的实现方案进行总体 的讨论与分析。 ( 3 ) w e b 服务测试领域本体s t o w s 的设计与实现。 w e b 服务测试领域本体是对该领域的概念进行抽象而构建的模型,它是将语 义w e b 服务技术应用于w e b 服务测试领域的基础。 ( 4 ) 测试工具的集成工作和测试服务的设计。 本框架的一个最为显著的特征即是测试工作的参与者的参与和退出都是动态 的,它们是自我描述自我管理的实体,是测试工作的执行者,在框架中,被称作 测试服务。它们之间的协调与交互在是完成测试工作的关键。 ( 5 ) 测试流程的实现。 测试工作是在参与框架的各个服务的交互与合作下完成的,这些服务之间的 协调是测试工作成功进行的关键,我们设计了测试中介作为测试工作的协调者。 对测试流程的研究是贯穿于论文的线索之一。 ( 6 ) 案例分析。 论文的最后对测试框架进行了案例分析,研究测试工具的集成和测试流程的 工作模式。证明了该框架具有技术上的可行性、可扩展性以及灵活性。 1 3 2 本文组织结构 本论文共分为六章,本章为绪论, 第二章介绍相关技术及研究现状, 以及w e b 服务测试的研究现状。 其余各章安排如下: 主要内容为语义w e b 服务的各种组成技术 第三章介绍面向服务的w e b 服务测试框架的体系结构,从实现技术的角度, 对其进行细化和优化,并对该框架的实现方案进行讨论与分析。 第四章介绍框架的实现细节。首先介绍了本体s t o w s 的设计与表示,然后对 测试服务的注册、查找进行讨论,最后介绍了测试中介的实现。 第五章为案例分析,研究测试工具的集成以及w e b 服务测试流程,展示框架 的可行性、可扩展性以及灵活性。 第六章总结全文,并简要的给出了今后工作的设想。 第4 页 国防科学技术大学研究生院硕士学位论文 第二章相关技术及研究现状 语义w e b 服务技术是对w e b 服务技术的扩展,它将语义信息引入到服务描述 中,使基于语义的服务查询成为可能。本体技术是对相关领域的概念模型的形式 化说明,是语义w e b 服务技术的技术基础。本章介绍w e b 服务体系结构和语义 w e b 服务技术架构,重点介绍o w l s 语言,并介绍w e b 服务测试研究现状,分 析存在的问题。 2 1w e b 服务技术架构 图2 1 显示了w e b 服务体系结构中的三种角色的以及它们之间的交互【7 儿引。 服务提供者定义服务描述并将其发布给服务请求者或服务注册中心。服务请求者 使用查找操作从本地或服务注册中心检索服务描述,然后使用服务描述与服务提 供者进行绑定。服务提供者和服务请求者角色是逻辑结构,因而同一服务可以同 时扮演两种角色,同时表现两种特性。服务注册中心用来发布服务提供者的服务 描述,是体系结构中的可选角色,服务提供者可以把服务描述直接发送给服务请 求者,同样,服务请求者可以从服务注册中心以外的其他来源得到服务描述,如 f t p 站点、w e b 站点等【l 3 1 。 图2 1w e b 服务体系结构模型 应用程序要利用w e b 服务,必须发生以下行为:发布服务描述、查询服务描 述以及根据服务描述调用服务。 服务的发布 为了使服务可以被访问,服务提供者需要将服务描述发布给公众或者直接发 布给服务请求者。服务描述的发布位置并不固定,发布的方式也可以有多种。 服务的查找 第5 页 国防科学技术大学研究生院硕士学位论文 服务的请求者在服务注册中心查询所需要的服务类型。在应用程序的不同的 生命周期可能都会牵涉到服务的查找,它们的目的可能不同,在设计时检索服务 的接口描述是为了开发的需要,在运行时则是为了调用。 服务的绑定 服务请求者根据查询所得的服务描述得到调用服务所需的所有细节,在运行 时与服务进行交互。 w e b 服务体系结构中包含两种构件,一种是服务,服务实质上是一个软件模 块,它部署在由服务提供者提供的可以通过网络访问的平台上。w e b 服务可以被 服务请求者调用,也可以作为请求者调用其它的w e b 服务;另一种是服务描述, 服务描述包含服务的接口和实现的细节。它包括服务的数据类型、操作、绑定信 息和网络位置等所有服务请求者与服务交互时需要的全部细节,还可能包括可以 方便服务请求者发现和利用的分类及其它元数据。服务描述可以直接被发布给服 务请求者或在服务注册中心注册。 w e b 服务协议栈由一系列标准协议和应用编程接口组成,用户可以通过它们 来发现和使用w e b 服务,图2 2 所示的分层结构显示了协议栈中各个层次之间的 关系【j 7 l ,每一个上层的协议都需要下层协议的支持。协议栈的最底层是网络层, w e b 服务使用h t t p 协议发送s o a p 消息,从而调用远程的服务对象的接口功能, w s d l 是一个描述w e b 服务的规范,它采用x m l 格式的文档来描述w e b 服务的 地址和编程接口。w e b 服务描述的获取有两种途径,一种是直接获取,一种是通 过查询的方式,当w e b 服务发布在公共的注册中心时,就需要u d d i 协议的支持。 w s f l 二玉互 静态_ u d d i 直接_ u d d i w s d l s o a p h t t p ,f t p ,e - m a i l , i i o p e t c 图2 2w e b 服务协议栈【7 i w e b 服务描述是服务请求者获得服务调用信息的依据,它确切地描述了w e b 服务的消息格式和调用网络地址。服务提供者发布服务描述,以便服务请求者知 道如何调用服务,服务描述也是服务查找的最终结果。目前最典型的服务描述语 言是w s d l t l 2 】,它采用标准的x m l 规范将w e b 服务描述为一系列访问端点,通 第6 页 国防科学技术大学研究生院硕十学位论文 过这些端点能够以面向过程或者面向文档的方式交换消息。w s d l 精确地描述了 一项服务做什么,如何调用它的操作以及调用网络地址,它建立单独的术语对w e b 服务、w e b 服务输入和输出消息的格式、w e b 服务存在的通信端点以及数据格式 绑定的方式进行定义,这种定义使得w e b 服务的提供者隐藏服务内部复杂的实现 机制,而服务请求者也可以无需考虑软硬件的细节来调用w e b 服务。 w s d l 文档包含下四个方面的信息: ( 1 ) 数据类型。w s d l 文档中的 元素相当于一个容器,用来定义在消 息格式中所用到的数据类型。目前w s d l 最常用的数据定义方法是x s d ( x m l s c h e m ad e f i n i t i o n s ) 2 5 1 2 6 】。 ( 2 ) 消息格式。客户和w e b 服务之间交换消息的格式i 主t 元素来定 义,它引用在 部分中所定义的类型。 ( 3 ) 绑定信息。w s d l 使用 元素来描述方法的绑定信息,它是 元素的一个具体的协议和数据格式规范。 元素指定了w e b 服务某个活动入口点所支持的活动的子集,使用 部分定义的消息描述方 法。 ( 4 ) 地址信息。 元素描述了服务端点的地址信息。 w s d l 继承了x m l 开放的设计理念,它是关于代码的元数据,允许多种类型 定义语言和网络传输方式以获得最大限度的互操作性和平台无关性。 w e b 服务发现问题是w e b 服务体系结构中的一个重要部分,它是指客户以某 种方式找到自己想要的w e b 服务的过程,目前最常用的是集中式的解决方案 u d d i 。服务提供者首先在注册中心注册自己的服务,这一过程叫做服务的发布, 服务的请求者向注册中心提交查询请求,注册中心支持基于关键字的服务查找, 并把结果返回给服务请求者。 目前,w e b 服务技术体系结构中的服务查找是基于关键字的,检索准确率和 效率不高,其根本原因是注册中心保存的w e b 服务描述中不包含关于服务功能的 语义信息,下一小节中介绍的语义w e b 服务技术把语义信息加入到w e b 服务的描 述中,提高了服务搜索的效率。 2 2 1 语义w e b 概述 2 2 语义w e b 技术 语义w e b 是对当前w e b 的扩展,它的目标是为w e b 上的信息提供机器可理 解的语义,使软件智能代理能够自动的检索和处理w e b 上的数据。图2 3 显示了 t i mb e m e r s l e e 提出的语义w e b 的体系结构【2 1 。 第7 页 国防科学技术大学研究生院硕十学位论文 下面对各层逐一进行简要介绍。 u n i c o d e 和u 砒 语义网使用u r i ( u n i f o r mr e s o u r c ei d e n t i f i e r s ,统一资源标识符) 来标识资源及其 属性【1 4 】,u r l ( u n i f o r mr e s o u r c el o c a t e r ) 是它的子集。u n i c o d e 是一种编码格式, 它规定了语义网络上各种信息资源的编码格式,这一层是语义网的基础,为跨地 区的字符编码和资源定位提供支持。 】叵 圃厂 口i 讳婶 二二互 声蜊i 二玉亟亟垂口u 匦口 二至口 图2 3 语义w e b 服务体系结构 x m l 命名空间和x m ls c h e m a x m l 是一种功能强大的标记语言【1 5 】,它允许用户自定义标签,并使用x m l s c h e m a 对标签的结构进行约束。由于标签的定义可能会带来名字冲突,x m l 引入 了命名空间( n a m e s p a c e ) 机制1 6 1 。 r d f r d f ( r e s o u r c ed e s c r i p t i o nf r a m e w o r k ) 使用三元组描述资源的语义结构,每个 三元组可以看成由主语、谓词和宾语组成的句子,它描述了资源、资源的属性以 及资源与资源之间的关系。 本体 本体层是r d f 之上的扩展层,它赋予资源以明确的涵义,下一节将对其进一 步介绍。 逻辑,证明和信任 逻辑在语义网上实现知识表示与推理,证明和信任在以上各层的基础上作逻 辑推理和证明等操作。 2 2 2 本体及本体表示语言 本体的概念可以追溯到公元前亚里士多德在哲学中对其的定义: “对世界上 客观存在物的系统的描述,即存在论 。现代计算机科学中,本体伴随着人工智 能和信息技术的发展而发展,它通过对特定领域进行通用的概念描述,回答了领 域内有什么样的对象,这些对象有什么样的属性以及它们之间有什么样的关系等 第8 页 国防科学技术大学研究生院硕士学位论文 一系列i u j 题,从而使机器能够理解数据的语义,为机器自动处理w e b 上的数据提 供了可能。 目前对本体的最为流行的定义是由g r u b e r 在1 9 9 3 年给出的,他将本体定义为 “概念模型的明确的规范说明”【l 7 1 。s t u d e r 在此基础之上给出了另外一个定义: “本体是共享概念模型的明确的形式化规范说明”【1 9 】,这个概念包含了四层含义: ( 1 ) 概念模型:指通过抽象出客观世界中一些现象的相关概念而得到的模型。 ( 2 ) 明确:所使用的概念以及关于这些概念的约束有明确的定义。 ( 3 ) 形式化:本体能被计算机处理。 ( 4 ) 共享:本体的目标在于描述相关领域内的被共同认可的知识。 按详细程度和对领域的依赖程度划分【2 们,本体可以分为顶级本体、领域本体、 任务本体和应用领域本体。顶级本体描述最普遍的概念及概念之间的关系,与具 体的应用无关,领域本体描述特定领域内概念及概念之间的关系,任务本体描述 特定任务或行为中概念及概念之间的关系,而领域本体描述依赖于特定领域和任 务的概念及概念之间的关系。 目前,常用的本体描述语言有三个:x m l 15 1 ,r d f r d f s 2 1 1 和o w l 2 2 】【2 3 1 。其 中o w l 最为常用,图2 4 描述了常见的基于x m l 的本体描述语言之间的关系。 幽2 4 基于x m l 的语义描述语言演化图 o w l 全称w e bo n t o l o g yl a n g u a g e ,是w 3 c 于2 0 0 4 年推出的标准化w e b 本 体语言,由r d f 扩充而来,是w 3 c 所倡导的语义w e b 的核心技术之一。o w l 基于描述逻辑【2 引,描述逻辑是一阶逻辑的可判定子集,它建立在概念和关系的基 础上,尽管没有一阶逻辑的表达能力强,但能够提供良好的定义和语义推理机制, 并且其推理复杂度是可知的,适合领域概念的建模和知识表示。 o w l 共有三个子语言:o w ll i t e ,o w ld l 和o w lf u l l ,它们的表达能力 是递增的【2 2 儿2 3 j 。o w ll i t e 的表达能力最弱,约束能力最强,它适用于那些需要简 单的分类体系和少量约束的用户,语义比较简单,容易被工具支持。o w ld l 提 供最大的表达能力、完全的计算能力( 所有的推论都可计算) 和确定性( 所有计 第9 页 国防科学技术大学研究生院硕士学位论文 算都能在有限时间内完成) 。o w lf u l l 则提供了最自由的表达能力和r d f 语法自 由度,但是其计算能力没有保证。 o w l 主要由三种主要元素构成:类( c l a s s ) 、属性( p r o p e r t y ) 和个体 ( i n d i v i d u a l ) 。 类( c l a s s ) 类定义了一组共享某些属性的个体所组成的集合,它提供了组织具有相似特 征的资源的一种抽象方式。每一个类对应到一个个体的集合,称作它的外延,集 合中的个体叫做它的实例( i n s t a n c e ) 。类由标签 定义,标签 可以将类组织成层次结构,类与子类之间的关系也称作包含关系。 o w l 预定义了一个类t h i n g ,它是一切类的父类。图2 5 所示o w l 片段中,a r t i s t 类包含子类p o s t i m p r e s s i o n i s t 。 可o w l :o a s s 图2 5 0 w l 类定义示例 属性( p r o p e r t y ) 属性用来描述类之间的关系,可以看作类集上的二元关系。属性共分两种, 一种是对象属性( o b j e c t p r o p e r t y ) ,一种是数据类型属性( d a t a t y p e p r o p e r t y ) , , q d f s r a n g er d f :r e s o u r c e s # w o r k 。, 可o w l :o b j e a f t o p e r t 归

温馨提示

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

评论

0/150

提交评论