已阅读5页,还剩69页未读, 继续免费阅读
(计算机软件与理论专业论文)跨系统个性化服务中用户模型重用方法的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 目前,互联网上诸多个性化服务系统的“孤岛”现状已经制约了个性 化服务应有效能的发挥。而跨系统个性化服务能够以用户为中心在不同系 统间重用用户的个性化信息,从而改善个性化服务的质量。由于现有的个 性化服务系统分别拥有各自的用户模型,并且都是以自己特有的格式存储 用户信息。因此,如何实现不同系统对用户模型的同一理解,如何搜集、 分发用户模型将是用户模型重用中亟待解决的问题。 本文对跨系统个性化服务环境下用户模型重用方法进行了深入的研 究。首先,提出一种基于w e b 服务的跨系统个性化服务框架。重点探讨了 与用户模型重用相关的功能组件及信息流程。利用w e b 服务的注册机制通 过注册用户模型结构的方式,搜集个性化服务系统中的用户模型结构,并 以此建立用户模型映射关系,实现不同系统对用户模型的同一理解。 其次,详细介绍了在基于w e b 服务的跨系统个性化服务框架下用户模 型重用过程和相关实现理论。重点探讨了用户个性化信息提取和用户个性 化信息传递,通过用户模型映射关系提取用户个性化信息;采用基于h 哪 的s o a p 消息形式实现用户模型在不同系统间的传递。 最后,以具体的在线图书销售系统为例,给出了服务提供方注册用户 模型结构和用户模型重用方法的具体实现。重点介绍了在两个系统之间用 户个性化信息传递的实现。 关键词跨系统;个性化服务;w e b 服务;用户模型;重用 燕山大学工学硕士学位论文 a b s t r a c t t o d a y , t h e i n f o r m a t i o ni s l a n d s t a t eo fp e r s o n a l i z a t i o ns y m e mo nt h e i n t e m e th a sr e s t r i c t e dt h ef u n c t i o nw h i c hi ts h o u l dh a s c r o s s s y s t e m p e r s o n a l i z a t i o ns e r v i c ec a r lr e u s ep e r s o n a l i z a t i o ni n f o r m a t i o na c r o s sd i f f e r e n t s y s t e mi nau s e r - e e n t r i cw a y , c o n s e q u e n t l yt h eq u a l i t yo f p e r s o n a l i z a f i o ns e r v i c e c a l lb ei m p r o v e d n o w , e v e r yp e r s o n a l i z a t i o ns e r v i c es y s t e mh a so w nu s e r m o d e l ,b u tt h ef o r m a to fs t o r i n gu s e rm o d e li sd i f f e r e n tf r o me a c ho t h e r s o ,h o w t om a k ed i f f e r e n ts y s t e mu n d e r s t a n dt h eu s e rm o d e lw i t ht h es a m em e a n i n ga n d h o wt og a t h e ra n dd i s p o r tt h eu s e rm o d e la r eu r g e n ta f f m r so nac o n d i t i o no f e n h a n c i n g t h ec o m p a t i b i l i t yf o rp e r s o n a l i z a t i o ns e r v i c es y s t e m n l em e t h o do fu s e rm o d e lr e u s eu n d e rt h ec r o s s - s y s t e mp e r s o n a l i z a t i o n e n v i r o n m e n ti ss t u d i e da tl e n g t hi nt h i sp a p e r f i r s t l y , aw 曲s e r v i c eb a s e d f r a m e w o r ko fc r o s s s y s t e mp e r s o n a l i z a t i o ns e r v i c ei sp r o p o s e d 髓ef u n c t i o n m o d u l e sr e l a t e du s e rm o d e lr e u s ea n ds y s t e mw o r kp r o c e d u r e sa r em a i n l y s t u d i e d n l eu s e rm o d e ls t r u c t u r e so fd i f f e r e n ts y s t e m sa r e g a t h e r e db y r e g i s t e r i n gu s e rm o d e ls t r u c t u r ei nu d d ir e g i s t r yu s i n gt h ew e bs e r v i c er e g i s t r y m e c h a n i s m 1 1 伦u s e rm o d e ls t r u c t u r e m a p p i n gr e l a t i o n s o fd i f f e r e n t p e r s o n a l i z a t i o n s e r v i c e s y s t c r a s a g ee r e c t e d b yt h er e g i s t r ym e c h a n i s m , a c h i e v i n gd i f f e r e n ts y s t e mu n d e r s t a n dt h eu s e rm o d e lw i t ht h es a m em e a n i n g s e c o n d l y , t h ep r o c e s sa n dr e l a t e da c h i e v i n gt h e o r yo fu s e rm o d e lr e u s ea g e i n t r o d u c e di nd e t a i l 1 1 1 em e t h o do fd i s t i l l i n ga n de x c h a n g i n gp e r s o n a l i z a t i o n i n f o r m a t i o na m o n gd i f f e r e n ts y s t e m si sm a i n l ys t u d i e d 。n ep e r s o n a l i z a t i o n i n f o r m a t i o na g eg a t h e r e db yt h eu s e rm o d e ls t r u c t u r em a p p i n gr e l a t i o n sa n d e x c h a n g e db ys o a pm e s s a g eb a s e dh m f i n a l l y , t h ea c h i e v i n gd e t a i l so fr e g i s t r yu s e rm o d e ls t r u c t u r ea n du s e r m o d e lr e u s ea r ep r e s e n t e df o rt h es y s t e mo fb o o k o n l i n e n l ei m p l e m e n t i n g p r o c e d u r eo fe x c h a n g i n gu s e rp e r s o n a l i z a t i o ni n f o r m a t i o nb e t w e e nt w od i f f e r e n t a b s t r a c t s y s t e m si sm a i n l ys t u d i e d k e y w o r d sc r o s s - s y s t e m ;p e r s o n a l i z a t i o ns e r v i c e ;w e bs e r v i c e ;u s e rm o d e l ; r e u s e i 燕山大学硕士学位论文原创性声明 本人郑重声明:此处所提交的硕士学位论文跨系统个性化服务中用 户模型重用方法的研究,是本人在导师指导下,在燕山大学攻读硕士学位 期间独立进行研究工作所取得的成果。据本人所知,论文中除已注明部分 外不包含他人已发表或撰写过的研究成果。对本文的研究工作做出重要贡 献的个人和集体,均已在文中以明确方式注明。本声明的法律结果将完全 由本人承担。 作者签字我贺日期:柳年7 月日 燕山大学硕士学位论文使用授权书 跨系统个性化服务中用户模型重用方法的研究系本人在燕山大学 攻读硕士学位期间在导师指导下完成的硕士学位论文。本论文的研究成果 归燕山大学所有,本人如需发表将署名燕山大学为第一完成单位及相关人 员。本人完全了解燕山大学关于保存、使用学位论文的规定,同意学校保 留并向有关部门送交论文的复印件和电子版本,允许论文被查阅和借阅。 本人授权燕山大学,可以采用影印、缩印或其他复制手段保存论文,可以 公布论文的全部或部分内容。 保密口,在年解密后适用本授权书。 本学位论文属于 不保密函。 ( 请在以上相应方框内打“4 ”) 作者签名:狄贺日期:岬年,月,7 日 导师签名日期:? 矽年月,7 日 第1 章绪论 第1 章绪论 跨系统个性化服务能够解决互联网上现有系统“孤岛”问题;它是一 种能够跨越多个系统实现用户模型重用的个性化服务体系。用户模型重用 是跨系统个性化服务的关键。本文将w e b 服务技术引入到跨系统个性化服 务中,对用户模型重用进行研究和探讨。本章主要讨论全文的研究背景、 国内外的研究现状、用户模型重用的主要研究内容以及本文的组织结构。 1 1 课题背景及意义 个性化服务是目前许多领域关注和研究的热点问题【】,并已应用于搜 索引擎、电子商务、数字图书馆等领域。个性化服务是以用户为中心,充 分考虑每个用户的专业、爱好、年龄、心理倾向等因素存在的差异,针对 用户各自的需求定制信息和服务,能够很好地解决互联网上“信息过载” 和“资源迷向”问题,从而提高系统的服务质量和访问效率。但随着对个 性化服务技术研究地不断深入,以及其在不同领域地广泛应用,现有个性 化服务系统暴露出以下4 个亟待解决的问题。 ( 1 ) 模型存储格式现有的个性化服务系统分别拥有各自的用户模型, 并且都是以自己特有的格式存储用户信息,即使一些系统中存储了相同或 相似的用户信息,也不能在其它系统中使用,因此用户不得不在每个要访 问的系统中重复注册自己的信息。 ( 2 ) 系统自成体系互联网上的个性化服务系统自成体系,独立于其它 系统,形成了个性化服务系统的“孤岛”。而用户复杂的任务往往需要从多 个来源获取信息并在不同的信息系统之间切换,显然,在这种情况下,实 现用户个性化信息的重用可以为用户提供更便利、更快捷的服务。 ( 3 ) 用户模型的片面性现有的个性化服务系统都是针对用户的部分特 征建立用户模型,并且用户模型中的信息不能在系统之间共享,使得每个 系统只能掌握有限的用户信息,宏观上制约了个性化服务应有效能的发挥。 燕山大学工学硕士学位论文 ( 4 ) 动态服务环境面向服务的体系结构、对等网络( p 2 p ) 和网格技术的 发展为实现数字图书馆或其它信息系统从静态集成系统到动态服务联邦的 转变带来了新的机遇,在这种面向动态服务的环境下,新加入联邦的服务( 或 系统) 如果能重用( 共享) 已建立的用户模型,就能立即提供个性化服务,但 互联网上现有的个性化服务系统难以适应这种面向动态服务的环境。 为了解决上述问题,需要建立一种能够跨越多个系统实现用户模型重 用的个性化服务体系跨系统个性化服务。跨系统个性化服务能以用户 为中心,在不同的系统之间共享用户的个性化信息,为用户提供一种系统 间的无缝集成服务1 6 1 。即使原来不具有个性化服务功能的信息系统,也可以 通过重用用户的个性化信息而获得个性化服务能力。 用户模型重用是实现跨系统个性化服务的关键,是研究跨系统个性化 服务的核心。如果能建立合理的用户模型重用机制,就能跨越多个不同的 系统为用户提供个性化服务,最终为用户提供一种无缝的个性化服务平台。 对用户模型重用的研究,能够实现用户模型在分布式环境下的应用,是对 个性化服务理论的发展与完善。 1 2 国内外的研究状况 跨系统个性化服务是由m e h t a 6 等人于2 0 0 5 年提出,但对于分布式环 境下实现个性化服务的研究,即分布式环境下用户建模以及用户模型在不 同系统中的共享与交换等相关问题的研究却屡见不鲜。国内虽然很多高校 与研究机构对个性化服务已有一定深度的研究,但对于分布式环境下的个 性化服务研究,目前还没有见到成熟的报道。在这里,本章首先介绍分布 式环境下用户模型重用方法的研究现状,然后介绍m e h t a 等人的跨系统个 性化服务思想下用户模型重用方法的研究现状。 1 2 1分布式环境下用户模型重用方法的研究现状 目前,互联网上现有个性化服务系统相互独立,它们之间并不进行用 2 第1 章绪论 户信息的交换。如果用户要想同时访问多个不同的个性化服务系统,他就 必须多次登录或在不同系统中多次注册相同( 相近) 的用户信息,并且维护这 些信息也是比较繁琐的。针对这一问题,s b o l l 7 喇用w e b 服务对信息动态 集成的特点,提出一种基于w e b 服务的模块化个性化服务框架,旨在将互 联网上的电子商务个性化服务系统聚集为一体。用户只需在其个性化门户 中注册一次,便可使用不同个性化服务系统在个性化门户中已注册的服务。 s b o l l 的研究需要个性化服务系统在个性化门户中注册自己的服务,但用户 登录个性化门户后,系统就会根据用户模型为用户查找最合适的服务。与 其相似的研究还有z m 姗a r 【8 - j 4 等人的研究。这类研究的重点是采用语义 技术提高服务的检索速度与质量。其优点是实现了对分散的服务动态集成, 多个个性化系统共享同一个用户模型;缺点是没有考虑对现有个性化服务 系统中个性化控件的兼容。在这类研究中,当个性化服务系统作为服务提 供方后,其原有个性化控件就不再发挥作用,即用户模型并没有被个性化 服务系统中个性化推荐组件所使用。 p e t e r 1 5 。1 9 等人针对e - l e a r n i n g 环境,设计了一种学习者模型,通过建 立领域本体和学习者本体来实现不同系统对学习者模型的共同理解。将聚 集后的用户模型存储在用户模型服务器上,引入w e b 服务技术实现不同客 户端能够访问同一个用户模型,并通过j a v aa p i 实现对用户模型的检索、 插入和更新。不同服务间也可以通过a p i 进行用户模型的交换。与s b o l l 等人的研究相比,p e t e r 等人的研究在引入w e b 服务技术的同时实现了用户 模型在不同系统中的重用,但其研究只是针对e - l e a r n i n g 环境。因此,具 有应用上的局限性。 上述所介绍的研究存在着一个共同的特点,即他们都需要管理一个从 不同个性化系统搜集得到的,并聚为一体的用户模型。与其相对应,有人 利用多a g e n t 技术根据用户的当前环境临时从不同系统中搜集用户模型, 并聚集为一体提供给目标服务提供方。j u i i 协【2 2 1 等人提出一种基于目标的 用户建模方法。该方法定义了各种依赖于具体应用环境的用户建模过程。 这种方法在分布式环境下由不同a g e n t 根据具体环境从不同的系统中搜集 用户模型碎片,建立一个包含更多信息的用户模型,并提供给目标服务提 燕山大学工学硕士学位论文 供方。 s b e r k o v s k y 2 3 2 s 1 等人提出一种跨领域的个性化服务机制。通过建立用 户模型服务中介,实现用户模型在不同系统中的重用。当用户访问某一服 务站点( 目标服务) 时,用户模型中介会根据这个站点所属领域在互联网上查 找相关领域的服务站点,并提取每个站点相关领域的用户模型信息,将其 聚集为一个大的用户模型体。将此用户模型提供给目标服务站点,该个性 化系统会根据这个大模型为用户做个性化推荐。s b e r k o v s k 等人研究的虽 然需要建立用户模型中介服务器,但其不需要维护用户模型的集合体,大 模型是根据具体应用环境动态创建的。但他们的研究仍然存在以下两个缺 点:一是,需要标准的通信接口和通信协议支持才能完成用户模型交换; 二是,由于目标服务所需的用户模型是动态生成的,因此其对通信质量的 要求很高,个性化服务效率有可能受通信质量的影响。 1 2 2 跨系统个性化服务中用户模型重用方法的研究现状 m e h t a l 6 刀】等人指出,目前互联网上现有个性化系统中用户模型相互独 立并不能被其它系统使用,并且由于用户模型埋藏于个性化引擎的深处, 用户对于自己的模型一般不具有控制能力。因此,他们提出跨系统个性化 服务,解决上述问题。即以用户为中心在不同系统中共享用户个性化信息。 m e h t a 3 0 - 3 2 首先建立了具有可扩展的、多维的用户模型统一用户上 下文模型( u o c m ) 。然后采用上下文护照( c o n t e x tp a s s p o r t ,c p ) 实现用户模型 在不同系统中的重用。其思想是:系统根据用户当前要完成的任务,将 u u c m 的部分内容存入c p ,c p 在跨系统通信协议( c s c p ) 的支持下同个性 化系统进行用户个性化信息的交互,实现用户模型在不同系统中的重用。 在这一实现过程中,需要新建设的个性化服务系统采用u u c m 的结构建立 自己的用户模型,对于已存在的个性化服务系统需要采用语义或本体技术, 设计出每个系统都能理解的通用词汇本体,这对于m e h t a 等人来说具有巨 大的挑战性,并且信息交互双方必须支持c s c p 。 针对以上问题,m e h t a t 孙删j 等人最近提出了采用机器学习技术实现不同 4 第1 章绪论 系统对用户模型的共同理解。该方法不再需要建立通用的语义标准或本体。 但该方法依然存在以下两个缺陷。 ( 1 ) 稀疏性当系统中用户模型比较少时,系统无法做出高质量的推荐。 ( 2 ) 用户隐私有些用户不愿意共享自己的个性化信息,或由于商业竞 争的原因,个性化服务站点不愿意共享用户模型。 1 2 3 现有用户模型重用方法存在的问题 通过上述介绍,可以了解到现有的用户模型重用方法分为两种思想: 一是将用户模型聚集为一体存放在用户模型服务器上或存放在客户端,然 后根据用户所处环境及所要完成任务从中提取相应的用户信息,提供给个 性化服务系统;二是不维护统一的用户模型,只是根据用户当前任务临时 从相关领域内的个性化服务系统中收集用户模型碎片,将其聚集为一体提 供给目标个性化服务系统。这两种方法都存在以下3 个问题。 ( 1 ) 需建立本体为实现不同系统对用户模型的共同理解需要建立每个 系统都能够理解的语义标准或本体。 ( 2 ) 需标准通信协议支持信息的交换需要标准通信协议和通信接口的 支持,如上文所述的c s c p 协议。 ( 3 ) 没有给出建立映射关系的方法现有研究虽然都是通过语义标准或 本体实现不同系统对用户模型的共同理解,但均没有指出如何建立用户模 型映射关系的,即每个系统是如何向中介提供自己的用户模型结构的。 1 3 本文的主要研究内容 用户模型重用是跨系统个性化服务的关键。通过分析跨系统个性化服 务的研究现状及相关研究工作的现状,已经知道现有用模型重用方法主要 存在上述3 个问题。本文将针对上述问题进行研究,提出一种基于w e b 服 务的跨系统个性化服务框架,并在此框架基础上实现用户模型重用。对于 用户模型重用的实现本文将采用先搜集不同系统中的用户模型片断,建立 燕山大学工学硕士学位论文 统一用户模型,然后根据用户的当前任务将用户模型分发给相应的个性化 服务系统。该方法的核心是用户个性化信息提取和不同系统间实现用户个 性化信息传递。所以本文的研究重点在于以下3 个方面。 ( 1 ) 基于w e b 服务的跨系统个性化服务框架将分散在不同个性化服务 系统中的用户模型聚集为一体。详细介绍与用户模型重用相关的功能组件 和系统个性化服务工作流程。 ( 2 ) 用户个性化信息提取在注册表服务器中服务与用户模型结构是分 别以x m l 格式存储的。因此,为提高个性化服务效率需预先建立服务用 户模型结构映射关系。个性化引擎利用服务一用户模型结构映射关系获取目 标服务在注册表服务器中注册的用户模型结构,然后依据用户模型映射关 系获取其在系统大模型中对应的用户模型结构,最后从用户模型库中提取 相应的用户个性化信息。本文详细介绍了服务用户模型结构映射算法和用 户个性化信息的提取算法。 ( 3 ) 实现不同系统间用户个性化信息传递用户模型重用的最终目标是 实现用户个性化信息在不同系统间的传递,而不同系统间信息通信的最大 障碍是需要通信协议标准支持。本文引入w e b 服务技术,利用基于h t t p 的s o a p 消息形式传递用户个性化信息。 本文的总体目标是采用w e b 服务技术搭建跨系统个性化服务框架;在 此框架下,依据用户当前任务提取用户个性化信息,并实现其在不同系统 间的传递。 1 4 本文的组织结构 本文共分为五章,具体内容如下。 第1 章为绪论,阐明了课题的背景和意义,对跨系统个性化服务及相 关研究工作的现状进行了综述,指出现有用户模型重用方法存在的问题, 提出了本文的主要研究内容。 第2 章实现用户模型重用的相关技术,介绍了本文研究工作涉及到的 相关技术基础,包括w e b 服务和x m l 及其相关技术。 6 第1 章绪论 第3 章建立基于w e b 服务的跨系统个性化服务框架,详细介绍了用户 模型重用涉及到的功能组件结构( 映射包装层、个性化引擎) 及系统个性化服 务流程。 第4 章用户模型重用方法,介绍了用户模型重用过程和相关实现理论。 第5 章用户模型重用的实现,给出了用户模型重用的实验方案,详细 介绍了用户个性化信息传递的具体实现。 最后,在结论中对本文的研究成果进行了总结,并对进一步的研究工 作进行了分析和展望。 7 燕山大学工学硕士学位论文 第2 章实现基于w e b 服务的用户模型重用的相 关技术 本文采用w e b 服务技术构建系统框架,利用w e b 服务的注册机制,通 过注册用户模型结构的方式,将分散在不同个性化系统中的用户模型聚集 为一体。采用x m l 作为信息存储和中间信息交换格式。即系统中用户模型、 u d d i 中的注册信息、服务与用户模型映射关系以及系统间传递的用户个性 化信息都是x m l 格式。 2 1w e b t 匣务技术简介 w e b 服务是一个崭新的分布式计算模型,是一系列标准的综合,这些 标准包括x m l 、s o a p 、u d d i 3 6 1 和w s d l t 3 刀等。由于x m l 是本文中重点 使用的一项技术。因此,将在本章2 2 节中重点介绍。本节主要介绍s o a p 和u d d i 技术。w e b 服务利用这些标准提供了一个松散耦合的分布式计算 环境;在w e b 服务的模型中,厂商将其服务封装成一个个相对独立的w e b 服务,每个服务提供某类功能;客户( 或其他厂商) 可以通过绑定到h t t p 的 s o a p 来访问这些服务。 2 1 1w 如服务的架构和特征 w e b 服务使用s o a ( 面向服务的架构,s e r v i c eo r i e n t e da r c h i t e c t u r e ) 架 构,该架构由三个参与者和三个基本操作构成。三个参与者分别是服务提 供者、服务请求者和服务代理,而三个基本操作分别为发布、查找和绑定。 w e b 服务的基本模型如图2 1 所示。服务提供者将它的服务发布到服务代 理的一个目录上,当服务请求者需要调用该服务时,它首先到服务代理提 供的目录上去搜索该服务,得到如何调用该服务的信息,然后根据这些信 息去调用服务提供者发布的服务。在w e b 服务体系中,使用w s d l 来描述 8 第2 章实现基于w e b 服务的用户模型重用的相关技术 服务,u d d i 来发布、查找服务,而s o a p 用来执行服务调用。 图2 - 1w e b 服务的基本模型 f i g 2 - 1b a s i cm o d e lo f w e bs e r v i c e 从外部使用者的角度而言,w e b 服务是一种部署在w 曲上的对象组件, 它具备以下特征。 ( 1 ) 完好的封装性w e b 服务既然是一种部署在w e b 上的对象,自然具 备对象的良好封装性,对于使用者而言,他能且仅能看到该对象提供的功 能列表。 ( 2 ) 松散耦合这一特征也是源于对象组件技术,当一个w e b 服务的实 现发生变更的时候,调用者是不会感到这一点的,对于调用者来说,只要 w e b 服务的调用界面不变,w e b 服务的实现任何变更对他们来说都是透明 的,甚至是当w e b 服务的实现平台从j 2 e e 迁移到了n e t ,或者是相反的迁 移流程,用户都可以对此一无所知。对于松散耦合而言,尤其是在i n t e r n e t 环境下的w 西服务而言,需要有一种适合i n t e m e t 环境的消息交换协议。 而m 。s o a p 正是目前最为适合的消息交换协议。 ( 3 ) 使用协约的规范性这一特征从对象而来,但相比一般对象其界面 规范更加规范化和易于机器理解。作为w e b 服务,对象界面所提供的功能 应当使用标准的描述语言来描述( 比如w s d l ) ,由标准描述语言描述的服务 界面应当是能够被发现的,因此这一描述文档需要被存储在私有的或公共 的注册库里面。同时,使用标准描述语言描述的使用协约将不仅仅是服务 界面,它将被延伸到w 曲服务的聚合、跨w e b 服务的事务、工作流等,而 这些又都需要服务质量( q o s ) 的保障。 ( 4 ) 使用标准协议规范作为w e b 服务,其所有公共的协约完全需要使 用开放的标准协议进行描述、传输和交换。这些标准协议具有完全免费的 9 燕山大学工学硕士学位论文 规范,以便由任意方进行实现。一般而言,绝大多数规范将最终由w 3 c 或 o a s i s 作为最终版本的发布方和维护方。 ( 5 ) 高度可集成能力由于w e b 服务采取简单的、易理解的标准w e b 协议作为组件介面描述和协同描述规范,完全屏蔽了不同软件平台的差异, 无论是c o i 国a 、d c o m 还是e j b 都可以通过这一种标准的协议进行互操 作,实现了在当前环境下最高的可集成性。 2 1 2s o a p 简单对象访问协议( s o a p , s i m p l eo b j e c ta c c e s sp r o t o c 0 1 ) 是在分散或分 布式的环境中,通过x m l 交换信息的一种简单协议。目前最新版本 s o a p l 2 是s u nm i c r o s y s t e m s 、i b m 、h p 、b e a 、m i c r o s o f t 和o r a c l e 等供 应商领导的w 3 cx m l 工作组努力的结晶。当前有多种创建应用程序的平 台,但每种平台都习惯于使用自身的协议( 本质上通常是二进制代码) 来实现 机器间的集成。因此,跨平台的应用程序在数据共享方面的能力相当有限。 认识到这些限制后,人们一直在致力于建立有关数据格式和数据交换方面 的标准。w e b 服务追求的目标是不同系统能够无缝地进行通信和共享数据。 而s o a p 是实现w e b 服务的核心协议之一。 s o a p 为在一个松散的、分布的环境中使用x m l 对等地交换结构化的 和类型化的信息提供了一个简单的轻量级机制。s o a p 本身并不定义任何应 用语义,如编程模型或特定语义实现,它只是定义了一种简单的机制,通 过一个模块化的包装模型和对模块中特定格式编码的数据重编码机制来表 示应用语义。s o a p 也没有定义任何底层的传输协议,尽管在大部分情况下, s o a p 被“默认”绑定到h r i p 协议,但也可以用f t p 、s m t p 、p o p 3 甚 至是j m s ,或是自己定义的某种p 3 p 协议,来传输s o a p 消息。下面从6 个方面简单介绍s o a p 。 ( 1 ) s o a p 消息s o a p 消息的结构格式通常包含信封( e n v e l o p e ) 、消息 头( h e a d e r ) 、主体( b o d y ) 和附件( a t t a c h m e m ) 个元素。s o a p 消息的信封包 含消息的消息头和主体,而s o a p 消息的附件则可使消息包含数据,这些 1 0 第2 章实现基于w e b 服务的用户模型重用的相关技术 数据包括x m l 和非x m l 数据( 如文本文件和二进制文件) 。s o a p 信封是 s o a p 消息结构的主要容器,也是s o a p 消息的必要元素,它是消息的根元 素,表示为e n v e l o p e 。s o a p 消息头是s o a p 信封的第一个子元素,它必 须是有效的命名空间。s o a p 消息头也可以提供扩展机制,扩展s 0 a _ p 消息 以添加功能和定义安全性、事务、优先级和审计等高级功能。s o a p 主体元 素作为子元素包含在s o a p 信封中,还可以包含一个或多个可选s o a p 主 体块项。b o d y 代表消息接收方必需的处理信息或有效负载。s o a p 附件可 以是a s c i i 或二进制( 如x m l 或非文本) 等任何格式的数据。 ( 2 ) s o a p 编码s o a p 编码定义标识其数据类型的一组规则,它是由编 程语言、数据库和应用程序所需的半结构化数据表示的一组通用数据类型。 s o a p 编码支持简单类型值( 枚举、字节数组) 和复合类型的值( s t r u c t u r e 类型、 a r r a y 类型、数组中的多重引用、部分传输的数组和稀疏数组) 。 ( 3 ) s o a p 消息交换模型s o a p 从特征上来说是一种无态协议,它提供 复合的单向消息交换框架,以便在称之为s o a p 节点的s o a p 应用程序之 间传输) 0 v i l 。这些s o a p 节点表示s o a p 消息路径的逻辑实体,执行消息 路由或处理。在s o a p 消息交换模型中,s o a p 发送方和接收方之间可以有 0 或多个s o a p 中间方,它为s o a p 接收方提供分布式处理机制。图2 2 和 图2 3 表示不同s o a p 节点之间的s o a p 消息交换模型。 is o a p 发l 一s o a p 中l 一s o a p 接i l 垄查li塑查il 坚耋i 图2 - 2s o a p 消息交换的基本模型 f i g 2 - 2b a s i cm o d e lo f s o a pm e s s a g ee x c h a n g i n g 请求链 响应链 图2 - 3 利用中间方的s o a p 消息交换模型 f i g 2 - 3m o d e lo f s o a pm e s s a g ee x c h a n g i n gb ym i d w a y 燕山大学工学硕士学位论文 ( 4 ) s o a p 通信 为了实现s o a p 节点之间的通信,s o a p 支持s o a p r p c 和s o a pm e s s a g i n g 两种通信模式。s o a pr p c 定义基于远程过程调用 的同步通信,在这种通信模型中,s o a p 节点使用请求和响应方法发送和接 收消息,并交换参数,然后返回值。s o a pm e s s a 百n g 定义了以文档驱动的 通信,在这种通信模型中,s o a p 节点使用同步和异步消息交换模式发送和 接收基于x m l 的文档。 ( 5 ) s o a p 消息交换s o a p 消息交换表示基于消息通知和x m l 文档交 换的松散对称的通信模型。s o a p 消息主体由采用特定w 3 cx m l 架构编 码的x m l 文档或文字表示,由发送或接收消息的s o a p 节点生成和使用。 s o a p 发送一个以x m l 文档为主体的消息,s o a p 接收方节点则负责处理 该消息。 ( 6 ) s o a p 消息交换模式根据底层传输协议,为了增强s o a p 节点之 间的通信和消息路径模型,s o a p 选择了一种取决于该通信模型的交互操作 模式。最常用的s o a p 消息交换模式有单向消息、请求响应交换、请求多 响应模式、通知模式和征求响应模式等五种方式。 2 1 3u d d i 注册表 u d d i ( u n i v e r s a ld e s c 却f i o n , d i s c o v e r y , a n di n t e g r a t i o n , 通用描述、发现和 集成协议) 定义了一种在通用注册表( 用户需连接到该注册表,以发现和查找 已注册的服务) 中注册w e b 服务并划分其类别的机制;它是一套基于w e b 的、分布式的、为w e b 服务提供的信息注册中心的实现标准规范;同时也 包含一组使企业能将自身提供的w e b 服务注册以使得别的企业能够发现的 访问协议的实现标准。目前,最新的u d d i 规范是u d d i v 3 0 ,u d d i 规范 的实现方案称为u d d i 注册表,下面从4 个方面简单介绍u d d i 注册表。 ( 1 ) u d d i 注册表分类现有u d d i 注册表分为:公共和私有两类。任 何人都可以在i n t e m e t 上使用公共u d d i 注册表发布查询商业和服务信息。 而私有u d d i 注册表由一个组织或一组协作组织操作,以使信息仅限于成 员组织共享。 第2 苹实现基于w e b 服务的用户模型重用的相关技术 ( 2 ) u d d i 业务注册结构u d d i 业务注册结构用以下标题对信息进行 分类:业务实体( b u s i n e s se n t i t y ) 、业务服务( b u s i n e s ss e r v i c e ) 、规范指针 ( s p e c i f i c a t i o np o i n t e - r s ) 和服务类型( s e r v i c et y p e s ) 。业务实体是注册中心中一 个条目的唯一标识符,它还包含以下信息:业务的名称、服务业务的简短 描述、关于厂商的基本联系信息、描述服务业务的类别列表、提供关于服 务业务更多信息的u r l 。业务服务列出了一个实体所提供的服务业务。每 个服务、_ t k 务条目都包含以下信息:服务业务的描述、描述服务业务的类别 列表、一个指向可以找到关于服务业务的相关信息的位置的指针列表。每 个业务服务条目都包含一列规范指针。这些规范指针具有双重目的。他们 指向那些可以找到与业务服务的相关信息的u r l 。而这些u r l 又包含有关 如何调用服务的消息。他们使业务服务条目与特定的服务类型相关联。服 务类型定义了业务服务的种类,并且可以包括多个类别。它由t m o d e l 进行 定义,并包含以下信息:t m o d e l 的名称、发布t m o d d 的组织的名称、描述 服务类型的类别列表、服务类型的技术规范,例如协议、接口定义和消息 格式等规范。 ( 3 ) 与u d d i 注册表交互实现u d d i 注册表的供应商通常提供两种方 法与u d d i 注册表服务交互。图形用户界面( g t n ) ,用于与u d d i 注册表交 互。这些g u i 也可以建立在浏览器的基础上。与u d d i 注册表通信的编程 接口。 ( 4 ) u d d i 程序员a p iu d d i 规范定义了两种用于与u d d i 注册表节点 通信的、基于x m l 的编程a p h 查询a p i 和发布a p i 。查询a p i 由使用 u d d is c h e m a 定义的x m l 消息构成,可用于查找关于某家公司的信息, 如公司提供的服务和这些服务的技术规范( 如指向描述服务接口的w s d l 文档的链接、服务的绑定和运行服务的u r l 等) 。u d d i 程序员可使用这些 查询a p i 检索存储在注册表中的信息。查询u d d i 注册表中信息的查询a p i 函数有: 、 、 、 和 。发布a p i 由u d d is c h e m a 表示的函数构 成,定义可用于创建、更新和删除u d d i 注册表中信息存在状态的x m l 消 息。对u d d i 注册表进行添加修改信息操作的a p i 函数如下: 燕山大学工学硕士学位论文 、 、 、 s a v es e r v i c 疹、 和 使用下面的发布a p i 函数 可以删除u d d i 中的信息: 、 、 、 和 。组成u d d i 程序员a p i 的x m l 消息是使用u d d ix m ls c h e m a 定义的。这些x m l 消息被包装到s o a p 消息中,然后再把该s o a p 消息发 送到u d d i 注册表。 2 2x m l 及其相关技术 w 3 c 对x m l 做了如下的描述:“x m l 描述了一类被称为v i l 文档的 数据对象,并部分描述了处理它们的计算机程序的行为。x m l 是 s g m l ( s t a n d a r dg e n e r a l i z em a r k u pl a n g u a g e ,标准通用标记语言) 的一个应 用实例或一种受限形式。从结构上说,x m l 文档遵从s g m l 文档标准1 3 8 1 。” 同h t m l 一样,x m l 也是一种基于文本的标记语言,都是从s g 啪l 发展 而来的。x m l 是由一群s g m l 的审核人员兼w e b 专家所共同制定的,而 且并不是为了要取代h t m l :就应用层面来看,x m l 介于s g m l 与h t m l 之间,但克服了s g m l 过于复杂和h t m l 缺乏灵活的缺点。 x m l 中的x 代表e x t e n s i b l e ( 可扩展的) ,这是因为x m l 本身并没有定 义元素类型或内容,每个x m l 文档定义其自己的结构、元素类型和内容。 它是i n t e m e t 环境中跨平台的、依赖于内容的技术。 2 2 1x m l 文档的定义 在i n t e m e t 上,x m l 有两个用途 3 9 1 :其一,作为元标记语言,定义各 种实例标记语言;其二,作为标准交换语言,担负起描述交换数据的作用。 针对不同的应用,x m l 文档应该有不同的结构规范,即每个x m l 文档都 有相应的文档类型定义,即文档模板。模板定义了x m l 文档的基本结构, 如果x m l 文档采用了某个模板,则它必须要符合模板中定义的结构规范。 1 4 第2 苹实现基于w e b 服务的用户模型重用的相关技术 即创建一个描述文档,此时还需要利用一个模式来定义规则和标准的公共 集合。 目前,有两种方法可以定义x m l 文档的模板:d t d 3 8 】和x m l s c h e m a ( x m l 模式) 1 3 “。与x m l 能够有效地描述数据一样,d t d 通过定义数据的 结构使得这些数据能够被各种不同的程序以不同的方式使用。d t d 定义了 数据的格式化方式,它必须定义x m l 文档中的每个允许使用的元素,每个 元素允许使用的属性和可能接受的属性值,每个元素的嵌套和出现顺序, 以及任何外部实体等内容。 x m l s c h e m a 也是一种定义x m l 文档语法和结构限制的方法,可以说 它是d t d 的一种进化。它与d t d 不同,x m ls c h e m a 本身就是x m l 文档, 提供了很多数据类型来定义元素的值,提供了包含更丰富的嵌套标签( 即标 签下包含子标签) ,提供了命名空间机制将不同词汇组成x m l 文档,所以 x m ls c h e m a 要比d t d 更丰富更具有可扩展性,然而其相应的处理和开发 工具也更复杂。当遇到以下情况时,d t d 仍然是首选:当需要简洁的表示 文档规则时;当希望用户能够通过内部参数集覆盖并将类型专门化时;当 文档规则主要考虑元素的嵌套而不是内容的语义约束时;当所使用的工具 对d t d 的支持更胜于对x m ls c h e m a 的支持时。在本文中,采用x m l s c h e m a 模式定义服务注册中心中的服务文档,而采用d t d 来定义服务用 户模型结构映射关系和用户个性化信息的x m l 描述文档的模式。 2 2 2x m l 文档解析 实现基于x m l 的各种应用时,首先要对所接收的x m l 文档进行解析, 这依靠x m l 解析器。目前,支持x m l 文档解析的主要技术包括以下两种。 0 ) s a xs a x ( s i m p l ea p if o rx m l ) 】是x m
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二 绝对值不等式教学设计高中数学人教A版选修4-5不等式选讲-人教A版2007
- 2026年幼儿园普通童话
- 2026年光明幼儿园成果汇报
- 办公环境清洁维护方案手册
- 第12课 草字头教学设计小学书法练习指导五年级下册湘美版
- 健康与安全管理措施承诺书7篇
- 初中语文综合性学习 倡导低碳生活教学设计
- 2026年幼儿园课程花椒
- 2026年幼儿园 认识人命比
- 人教版 (PEP)三年级下册Unit 5 Do you like pears Part B教案设计
- 2026年自然资源管理知识手册基础试题库及参考答案详解(夺分金卷)
- 湖北省新八校2026年4月高三年级4月教学质量教研考试英语试卷(含答案)
- 2026河北省国控商贸集团有限公司招聘建设笔试参考题库及答案解析
- 2026年交管12123驾驶证学法减分试题(含参考答案)
- 2026年甘肃省陇南市宕昌县人民法院招聘聘用制司法辅助人员笔试备考试题及答案解析
- APQC跨行业流程分类框架 (8.0 版)( 中文版-2026年4月)
- 2026年记者招聘无领导小组讨论题目
- 高考英语阅读理解真题专项突破训练试题含参考答案5篇
- 2026春季四川成都环境投资集团有限公司下属成都市兴蓉环境股份有限公司校园招聘47人笔试备考题库及答案解析
- 凤凰出版传媒集团招聘笔试题库
- 2025年浙江省综合性评标专家库评标专家考试历年参考题库含答案详解
评论
0/150
提交评论