Last November, IBM and Microsoft jointly released the Web Services Inspection Language (WS-Inspection) specification [1]. The WS-Inspection specification defines a distributed Web service discovery method, which was complementary to the centralized service discovery method defined by UDDI. WS-Inspection defines a method for inspecting a web site for references to Web service descriptions.
While working on the IBM Web Services Toolkit, we developed a set of Java classes for accessing and parsing existing WS-Inspection documents, as well as programmatically creating new documents. This code is referred to as WSIL4J. We are interesting in contributing this code to Apache Axis, since we'd like to promote the implementation of a WS-Inspection interface in Axis. This interface would return the current list of deployed services in a WS-Inspection document. For example, if you invoke Axis-based services at http://hostname:80/axis/services, then http://hostname:80/axis/inspection.wsil might be the location where you could get a WS-Inspection document that contained a list of deployed services.
You can download the current WSIL4J package at http://www.apache.org/~dug/wsil4j-v1.zip. In addition to the source code, this zip file contains a README file, a docs directory with the WSIL spec and a WSIL overview article that I wrote, a couple of sample applications, and an ANT build script. In addition to building the source code and samples, the build script will generate the javadoc for this code. Currently the source code uses com.ibm.wsil.* for the package names. If this becomes a part of Axis, then the package name should change to something like org.apache.wsil.* or org.apache.axis.wsil.*. Also, this code would be made available under the standard Apache license.
Please note that parts of this package have a dependency on the open source WSDL4J and UDDI4J code (http:.//www.uddi4j.org). The WS-Inspection specification defines two sets of extension elements: one for WSDL and one for UDDI. WSDL4J is used when processing WSDL based service descriptions, and UDDI4J is used when processing the UDDI extension elements (since some of these elements are the same elements that are defined by UDDI). The WSIL4J package also has a QName class, which should be replaced by the one used in Axis.
Below, I've listed a set of resources where you can get more information on WS-Inspection. You can also see an example of a WS-Inspection document at http://www.xmethods.net/inspection.wsil. This document contains references to all of the Web service descriptions available at the XMethods site.
We would be interested in any feedback on our proposal to contribute this code to Apache Axis.
Thanks,
Peter Brittenham
IBM Emerging Technologies
Resources:
1. Web Services Inspection Language Specification
http://www.ibm.com/developerworks/webservices/library/ws-wsilspec.html
2. An overview of the Web Services Inspection Language
http://www.ibm.com/developerworks/webservices/library/ws-wsilover
3. The WS-Inspection and UDDI Relationship
http://www.ibm.com/developerworks/webservices/library/ws-wsiluddi.html
4. WSIL: Do we need another Web Services Specification?
http://www.webservicesarchitect.com/content/articles/modi01.asp
- Re: Proposal to contribute WSIL4J to Apache Axis Peter Brittenham
- Re: Proposal to contribute WSIL4J to Apache Axis dirkx
- Re: Proposal to contribute WSIL4J to Apache Axis James M Snell
- Re: Proposal to contribute WSIL4J to Apache Axis Russell Butek
- Re: Proposal to contribute WSIL4J to Apache Axis Glyn Normington
- Re: Proposal to contribute WSIL4J to Apache Axis Steve Loughran
- Re: Proposal to contribute WSIL4J to Apache Axis R J Scheuerle Jr
- Re: Proposal to contribute WSIL4J to Apache Axis Davanum Srinivas
- Re: Proposal to contribute WSIL4J to Apache Axis Peter Brittenham
- Re: Proposal to contribute WSIL4J to Apache Axis Steve Loughran