“Web 服务检查语言”(WSIL)和“统一描述、发现和集成”(UDDI)规范都解决与 Web Service 发现有关的问题。但是,每种规范采用不同的方法来发现 Web Service。可以单独使用也可以联合使用这两种规范;使用 WSIL 进行搜索会找到 UDDI 中的项。
UDDI 规范通过使用集中模型来解决 Web Service 发现。创建一个或多个资源库来存储它们提供的有关企业和服务的信息。与服务和企业相关信息有关的请求和更新是直接对资源库发出的。此外,UDDI 对存储的一部分描述信息规定特定格式,并且便于进行高级(集中)搜索,假定其它描述信息也将存储和注册在系统中。
UDDI 系统使集中发现模式变得很容易,原因是这些系统是基于提供了高级搜索功能的有组织资源库的。这将帮助请求者找到潜在的通信伙伴。但是,为了提供高级功能,UDDI 要求部署和维护一定数量的基础结构,这样就增加了操作成本。此外,除非服务描述只存储在 UDDI 中,否则,保持不同版本同步会增加成本。
WSIL 规范依赖一种完全分布式模型来提供与服务相关的信息。可以将服务描述存储在任何位置,并且通常对提供服务的实体直接发出检索信息的请求。WSIL 规范对服务信息不规定任何特定格式。它依赖其它标准(包括 UDDI)来定义描述格式。WSIL 规范还依赖现有 Web 技术和基础结构来提供发布和检索其文档的机制。
WSIL 提供了通过现有协议直接从服务提供点散布与服务相关的信息的功能。这允许对单个目标执行集中发现;但是,由于其分散和分布式模型,如果不知道通信伙伴,则 WSIL 不是执行集中发现的良好机制。
应该将 UDDI 和 WSIL 规范视作两种互补技术,可以根据不同的情况来一起使用或者单独使用它们。例如,可以根据在对 WSIL 文档执行搜索时找到的结果来填充 UDDI 资源库。同样,当请求者检索引用该资源库中的条目的 WSIL 文档时,可以发现 UDDI 资源库本身。在不需要 UDDI 提供的高级功能并且不允许对它部署进行约束的环境中,WSIL 机制可以提供需要的所有功能。在需要对数据进行中央管理的情况下,只有 UDDI 解决方案最合适。不应该将 UDDI 和 WSIL 规范看作是互斥的。