标题：wsil
基本定义
web服务检视语言(WSIL)是一种xml文档的格式，以简便并可扩展的样式来简化Web服务描述的发现和聚合。它与统一描述、集成和发现（UDDI）规范在作用域上类似，但WSIL是一种补充，不仅仅是对于服务发现的竞争和典范。
WSIL 规范的益处
规范旨在从不同级别和多种角度来描述 Web 服务。这个被提议的 Web 服务描述语言（WSDL）的目标是在功能级别上描述服务。统一描述、发现和集成（UDDI）概要旨在提供一个更加以企业中心化的透视图。这些被建议的标准依然没有提供的是绑定在一起的能力，在提供服务这一点上，以一种易于创建和使用的方式提供不同的信息资料。Web 服务检查规范通过定义 XML 语法解决了这种需要。对服务描述文档的不同类型，XML 语法便于引用聚合，而且对这种语法的例子提供了定义良好的使用模式。这样，Web 服务检查规范便提供了检查服务提供的站点的方式。作为聚集 Web 服务描述信息的仓库现已存在。Web 服务检查规范提供了引用和利用现存仓库的机制，所以，如果包含在其中的信息不需要复制的话就不必进行复制了。
WSIL 文档对 Web 地址中的其它可获得的 Web 服务文档进行指示。WSIL 文档能指向其它的 WSIL 文档，UDDI 企业或服务入口和 WSDL 文档。一旦您找到需要的服务，就能为 Web 服务导入 WSDL 文档生成 Web 服务调用客户代理。
UDDI 注册中心和 WSIL 通过 Web 服务检查数据标签 wsiluddi 紧密相连。在 WSIL 中，参考指示用来连接公布在 UDDI 注册中心的企业或服务。
WSIL 规范为访问现存的服务提供了强有力的方式；然而，WSIL 文档可能包含一些对其它 WSIL 文档的引用，这些文档能创建 n 层 WSIL 文档树。确定当 WSIL 引用了多少服务时就变得非常麻烦了。        
越来越多的人正在体验将 WSIL 用作他们的 Web 服务的便利的注册。企业需要做的是将他们可获得的 Web 服务链接到默认位置的 WSIL 文档中。因此，在 WSIL 文档中高效地扫描企业应用程序（已经作为 Web 服务公布）便成为一个至关重要的问题。
SOAP, UDDI, WSIL和WSDL间的关系
UDDI：UDDI: 发现和集成WSDL：WSDL: Web服务描述语言WSIL：WSIL: Web服务检查语言WS - I：WS-L: Web服务互操作性（Web Services Interoperability）SOAP：SOAP: 简单对象访问协议与UDDI(Universal Description，Discovery，and Integration)的区别　　自从它发布后，UDDI因执行而被广为批评，并且对它适当的质疑接二连三的出现在Web服务体系发展舞台上。WSIL是由IBM组织和微软工程师创造的，并在2001年11月发布。它因其基于文档的方式而显的很有意义，它更轻量级和直接，并更好地在现有地Web体系中起杠杆的作用。这种方式使得规范上升的更加显著。
WSIL and UDDI: Same Space, Different Models.        WSIL和UDDI作用于服务的出版和发现上，但是它们的模型不一样。在本部分里，我们将详细介绍它们的区别。
UDDI用中央模型来实现服务发现，该模型是一个或多个包含多重业务实体及所提供服务的仓库，你可以把UDDI比作是你电话簿里的黄页，在此你可以组织多重业务并能列表提供的货物和服务描述及如何与它们联系。本规范通过简单对象访问协议（SOAP）提供了高水准的功能，需要明确一种基础构造以扎实地往高处发展，并且根据需要来利用。
WSIL以一种分散的方式来实现服务发现，服务描述信息可以用一种简单可扩展的XML文档格式来分布到任何位置。与UDDI相比，它并不关系到业务实体信息，也不需要明确一种特殊的服务描述格式。WSIL运作在假定你已经熟悉服务供应者的前提下，并依靠其他的一些服务描述机制，比如Web服务描述语言(WSDL)。
WSIL文档采用现存一些简单、规范的Web结构来定位。一般来说，WSIL就像一张名片，它可以表现明确的实体、服务及联系信息，并且可以有特色地被用来传送。WSIL的一些简单的功能和特性留给了开发者来处理实现。如果一篇文档内容很多或者是文档集结构很杂，WSIL开始停滞并且对查询及管理操作难以处理。最后，在WSIL工具包发展的同时它的发展效果将会降低，类似于Apache软件基金会下的Axis项目。功能简单的XML文档格式也可以很轻松的创建一些新颖有创造性的程序。
正如你所见，UDDI和WSIL都是关于Web服务发现的机制，但它们的模型完全两样，可以根据你的条件来选择用那一种。在一般情况下，两者兼而用之效果会更好。下面你会看到，WSIL可以用在UDDI仓库而且在里面有服务描述。
WSIL模型比UDDI更宁静。在许多方面，WSIL就像支持Web服务的RDF站点摘要（rss）。RSS是一种采用指示器来发布可以组合内容的文件格式，WSIL是一种采用引用来发布可以被发现和绑定的Web服务的文件格式。
WSIL核心定义:
WSIL规范被设计以支持一些简单、轻量级及可扩展的服务发现，而且，WSIL可以使得信息能被创建、发布以及维护。WSIL核心原理包含六种标记。在本部分里，我将在测试前先带大家回顾一下WSIL文档结构的文法。使用XML名空间，WSIL可以被扩展以支持一些服务描述和集合关于发现进程所需的信息。
所有的WSIL文档以inspection做为根节点，该标记包含文档名空间声明及其他一些服务信息和引用标记。由于这只是个简单的文档，所以只定义了WSIL名空间。
抽象标记
抽象标记是一种随意的标记，可以插入到允许子标记含有信息以描述父标记的标记集里。在这里我们提供了一个简短的文本描述，以后我们也将用该抽象标记来为服务提供些文档，并且提供一些其他文档的连接。如果描述是用一种规范的语言写的，我可以随意定义一个xml:lang属性，如同XML1.0规范里所述的。
在本例中，我定义了一个指向单一服务描述的引用，也就是一个WSDL文件，以服务标记集开头。名称类似于抽象标记，可以允许作者定义一个服务描述名称，比如：存储发现服务。该名称仅用于文档而且可以不唯一，正如抽象标记一样，它也可以定义一个xml.lang属性。
描述标记集是服务的核心模块，它包含了发现特殊的服务描述的所有信息。在本例子里，我们仅仅引用一个定义了服务描述的WSDL文件，而不需要保留消费者额外的信息。描述标记用一个referencedNameSpace属性来指定服务描述名空间，该名空间引用可以决定合适的引用及是否在引用末端保留服务描述。描述也可以用一个自定义的location属性来定义一个服务描述的直接引用。该机制对我们这个简单的引用已经足够了，但是WSIL的扩展性可以很好的在描述标记集里插入附加信息以给客户保存服务信息。服务区能提供多重描述标记以支持客户的不同服务描述的选择。例如：一个服务可以定义对一个WSIL、UDDI和Html文档的引用。
除了对服务描述的引用，WSIL提供对其他服务指示器集合的连接，比如其他的WSIL文件或UDDI仓库。这个可以通过link标记集加以简化，就如服务区里的描述标记，link标记集以相同的方式来实现referenceNamespace和location. 同样的，它包含扩展WSIL的元素以的客户连接到此集合上，在我们的例子中，我们连接到另一个WSIL文档，大概带有Acme产业商业性服务的服务描述。进入讨论组讨论。
现存的 WSIL 搜索机制
要定位和使用给定公司的 Web 服务有几种方法。Borland 示例了一些寻找可用的 Web 服务的方法。您可以在 Borland Web 站点查看例子：[来源：Web Services Explorer from Borland]：
“进入您想搜索的 Web 站点 URL 或者本地 URL。[执行对于指定的 WSIL 文档的查找。]扩展新的 WSIL 节点来查看可用的服务和链接节点。如果引用是针对其它的 WSIL 文档，那么选择 WSIL 引用链接并在具体页面点击 Execute 按钮。扩展链接节点以显示罗列在 WSIL 中的服务。”通过链接获取所有的 Web 服务，（通过服务名称或企业名称进行查找）您需要重复第四步。必须手动存储信息。
毫无疑问，生活在自动化世界里是一种更好的方式。以下是上面所提到的主要问题：                                            
不存在程序化的方法来聚集多重链接的 WSIL 文档。        不存在有效的方法深入探索链接的 WSIL 文档；在 WSIL 文档中手动查询太浪费时间。不存在遍历过的 WSIL 文档的清单。Web 服务是 WSDL 文件中描述的有标准接口的 Web 组件，客户普遍能对其访问，例如无限设备、Web 客户和其它的 Internet 应用客户。
Web 服务可公布到 UDDI 注册中，公共的或私有的文档，或 Web 服务检查文档中。对 UDDI 程序设计的介绍， 检查 IBM developerWork 指南“用 WSDK V5.1：UDDI 发现 Web 服务”。        
对于学习如何利用定位在 UDDI 注册中的 Web 服务的资料在“对为注册 UDDI 中的 Web 服务开发 UDDI Java 应用程序”。
旅行代理 WSIL 的文件结构
  正如您所看到的，每一个 WSIL 文件都有其自己的服务，其中的一些能被链接到一个或更多的 WSIL 文件中。请参阅位于 ws-wsilroadblcode.zip 中的 Travel.wsil 文件作为例子，您可以在文章的顶部或底部点击 code 图标进行下载。
为了更好地理解 WSIL Explore 工具的使用，我们用 IBM ® WebSphere®Studio Application Developer V5.1.2 或者 IBM Rational® Application Developer V6（Application Developer）两个组件来示例文件结构。在上面的图形中，我们很自然利用“树”控制来展示文件结构。另一方面，每次用户点击树的一个节点，我们都用数据网格控制来罗列节点下的所有服务。
查看 parseWsilServlet.java（位于 ws-wsilroadblcode.zip 中），了解如何实现从 WSIL Explore 工具中得到所有的探查结果的过程。
wsilResult.jsp（位于 ws-wsilroadblcode.zip 中）从会话中获得探查结果，并构造数据网格控制所需要的 EMF 数据模型。