理解UDDI(2):UDDI注册信息的数据模型

(本文最初由 IBM developerWorks 中国网站发表,其网址是http://www.ibm.com/developerWorks/cn/)

(本文是我在developerWorks专栏发表的UDDI 注册信息的数据模型,需要浏览未缩减版原文,请访问http://www.ibm.com/developerWorks/cn/)

统一描述、发现和集成协议(UDDI)标准包括了SOAP消息的XML Schema(UDDI Data Structure Reference)和UDDI规范API(UDDI Programmer’s API)的描述。它们两者一起建立了基础的信息模型和交互框架,具有发布各种Web 服务描述信息的能力。其中交互框架是为UDDI Client(可能是各种企业软件)与UDDI Registry进行交互的消息约定,我们将在以后进行讨论。

UDDI 注册使用的核心信息模型由XML Schema 定义。使用XML 是因为它提供了平台无关的数据描述并很自然的描述了数据的层次关系。而选择XML Schema 是因为它支持丰富的数据类型,便捷的描述方式及其按信息模型对数据进行验证的能力。

数据模型概览

UDDI XML Schema 定义了四种主要的信息类型,它们是技术人员在需要使用合作伙伴所提供的Web 服务时必须了解的技术信息。它们是:商业实体信息(businessEntity结构)、服务信息(businessService结构)、绑定信息(bindingTemplate结构)和技术规范信息(tModel结构)。在UDDI的数据模型中,tModel是一个很特殊的数据项。tModel描述了一切技术信息, tModel的全体组成了UDDI中的所有技术注册信息。在后面的tModel节我将给出tModel的彼此关联的细节内容。

商业实体信息: businessEntity元素

在商业领域内,合作伙伴和潜在的合作伙伴都期望能准确地定位到商业实体所能提供的服务或产品的相关信息,并把这些信息作为了解你们企业的开始。而在技术领域,技术人员、程序员或应用程序都期望能知道他们需要集成的商业实体的名称和一些关键性的标识 ,以及该商业实体是属于那个具体工业分类之类的分类信息,以及联络方法(包括Email、电话、URL)等。支持对UDDI 商业注册的商业信息发布和发现的核心XML 元素都包含在“businessEntity”结构中。这个结构是商业实体专属信息集的最高层的数据容器,位于整个信息结构的最上层。

商业服务信息:businessService元素

businessService 结构将一系列有关商业流程或分类目录的Web 服务的描述组合到一起。businessService和下面要提到的bindingTemplate一起构成了“绿页”信息。其中,一个可能的商业流程的例子是一组相关的Web 服务信息,包括采购服务、运输服务和其它的高层商业流程。这些服务都将是提供这些商业流程服务的商业实体所需要注册的Web服务。

这些businessService的信息集合可以再次加以分类,使Web应用服务的描述可以按不同的行业、产品、服务类型或是地域划分来进行。分类的方法的机制与businessEntity是类似的。

技术绑定信息:bindingTemplate元素

对于每一个businessService,存在一个或多个Web 服务的技术描述bindingTemplate。这些技术描述包括应用程序连接远程Web 服务并与之通讯所必须的信息。这些信息包括Web应用服务的地址、应用服务宿主和调用服务前必须调用的附加应用服务等。另外,通过附加的特性还可以实现一些复杂的路由选择,诸如负载平衡等。

元技术信息:tModel元素

调用一个服务所需要的信息是在bindingTemplate的结构中定义的,这在前面一节中已经阐述了。不过一般来说,仅知道Web服务所在的地址是不够的。例如,如果我知道我的合作伙伴提供一个Web服务来让我下订单,同时也知道这个服务的URL,不过如果不知道一些具体的信息,如订单的具体格式,应该使用的协议,需要采用的安全机制,调用返回的响应格式等,那样的话,通过Web服务将两个系统集成起来仍然是非常困难的。

当一个程序或是程序员需要调用某个特定的Web服务时,必须根据应用要求得到了足够充分的调用规范等相关信息,以使调用被正确地执行。因此,每一个bindingTemplate元素都包含一个特殊的元素,该元素包含了一个列表,列表的每个子元素分别是一个调用规范的引用。这些引用作为一个标识符的杂凑集合 ,组成了类似指纹的技术标识,用来查找、识别实现了给定行为或编程接口的Web 服务。

理解UDDI(2):UDDI注册信息的数据模型相关推荐

  1. 注册到uddi服务器,基于UDDI的应用服务注册中心的设计与实现

    摘要:Web服务是当前基于Web的分布式计算与应用的关键技术基础.通用描述发现集成协议(UDDI)是Web服务的核心技术标准,提供了Web服务的信息注册查找规范,解决了Web服务的描述.发布以及查找问 ...

  2. php获得注册信息,PHP网络编程:获取用户的注册信息[2]

    PHP网络编程:获取用户的注册信息[2]以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!     --此文章摘自<P ...

  3. linux下查询域名或IP注册信息的操作记录(whois)

    在运维工作中,有时需要查询某些域名的注册信息(域名的NS,注册用户,注册邮箱等),可以使用whois这个命令. whois命令令用来查找并显示指定帐号(或域名)的用户相关信息,因为它是到Network ...

  4. java 注册成功跳转,写了个注册页面填了注册信息后点注册按钮居然不跳转,为什么?...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 JSP部分代码(包括判断注册信息是否填写完整的JS代码,在JSP代码的最后面) 会员登录 LOGIN 填写帐户信息 1 注册完成 2 *用户名: *设置密 ...

  5. Eureka获取注册信息

    本文来说下Eureka获取注册信息 文章目录 Eureka-Client获取信息 启动获取 定时器获取 获取注册信息 全量获取 增量获取 合并数据 Eureka-Server接收请求 控制器接收请求 ...

  6. 解决 Flex模块切换后导致对象转换失败 注册信息丢失

    在Flex下, 如果一个项目里面有多个模块时,在第一次加载Module是可以的.在第二次加载module时,"注册"信息会丢失. 即如下的[RemoteClass(alias=&q ...

  7. 提交注册信息到数据库中

    注册,通过jsp页面提交注册信息到数据库

  8. 1000w+条中国大陆企业工商注册信息数据集

    项目地址 https://github.com/imhuster/Enterprise-Registration-Data-of-Chinese-Mainland 今天逛github看到一个名叫Ent ...

  9. 多可系统中如何修改注册信息

    登录多可文档管理系统后,点击页面最上面的菜单栏的"工作中心"→"个人常用管理"(如图1所示),就会出现如图2所示"个人常用管理"界面. 图 ...

最新文章

  1. 编写程序记录文件位置
  2. asp多重查询的解决方案
  3. c语言程序课程设计问题,矩形问题-C语言程序课程设课程设计(论文).doc
  4. SAP Spartacus 代码提交的git message规范
  5. linux远程登录三种方式telnet,ssh,vnc
  6. 华为mate20能用鸿蒙吗,华为mate20可以用5g网络吗
  7. 【Pytorch神经网络理论篇】 06 神经元+神经网络模型+全连接网络模型
  8. “现有人工智能都是二流的”
  9. asp.net控件的Hyperlink控件
  10. 把mdb文件导入SQL Server 软件的解决方法
  11. 【云计算学习教程】云计算终端技术详解
  12. Ubuntu简单部署QQ聊天机器人ATRI
  13. 去年车载终端营收下滑近7成,有方科技的车联网困局
  14. (装机)关于WINRE/ESP/LRS_ESP/MSR/PBR这些分区
  15. 快速检测npm registry镜像网址下载的速度
  16. 常用的140个Win XP设置技巧
  17. 两个必须更新浏览器的理由,危险就在你身边
  18. Ubuntu16.04下firefox flash过期问题
  19. 平板上pyto软件_平板电脑性价比排行大更新!
  20. 微信小程序视图控件与bindtap之间的问题的解决

热门文章

  1. Lucid EDI需求分析及项目注意事项
  2. 计算机word茶的功效,乌龙茶的功效与作用 Microsoft Word 文档
  3. h5页面在安卓手机浏览器上不能上下移动的问题
  4. 求正多边形各顶点的坐标(数学)
  5. 学会超短怎么做,才能更好地穿越牛市和熊市
  6. vSphere 虚拟化基础概念讲解与环境构建视频教程(笔记)
  7. MATLAB加入螺旋相位板调制,螺旋相位板
  8. SegmentFault 讲堂一周岁:Keep learning
  9. 调用MQ发生错误, MQJE001: 完成代码为“2”,原因为“2495”
  10. java读取docx_java使用poi读取doc和docx文件