With so much interest in making the trip, it would be nice to have agreement on where the destination lies. Web services can be defined in the affirmativewhat they areor in the negativewhat they are not. The easiest way to describe a Web service is to say that if its done on the Internet, using Web protocols, and it doesnt involve a live user operating a Web browser, then its a Web service. Microsoft Corp. CEO Steve Ballmer has called the result "the programmable Web," emphasizing the evolution from a Web of people clicking on hyperlinks to a Web of applications accessing standards-based interfaces. This definition encourages a focus on the benefits of the model: the growing ubiquity of a standards-based network of wired and wireless connections, the exploding resource base of data and functions accessible on that network, and the proliferation of convenient tools for leveraging those assets into a supporting background or a foreground user interface in a custom application.With the interface sharply drawn, developers can more hopefully pursue interoperability of modules built by independent teams. The open and nonproprietary standards of the Web are no guarantee of that well-behaved interaction, but the efforts of the WS-I (Web Services Interoperability Organization) are gaining credibility as a means of closing the gaps. That group ended last year by releasing a broad portfolio of sample applications supporting Version 1.0 of its Basic Profile meta-specification, released near the end of last summer, for Web services interoperability. With associated testing tools due for release by WS-I in the early part of this year, enterprise developers will find that the picture of Web services is clearer and more colorful than ever before. Technology Editor Peter Coffee can be contacted at firstname.lastname@example.org.
More conventionally, proponents define Web services as application components that use WSDL [Web Services Description Language] for self-description, UDDI [Universal Description, Discovery and Integration] data for mutual discovery, TCP/IP for transport, HTTP for interaction, SOAP [Simple Object Access Protocol] for requesting and granting actions, and XML for underlying representation. The advantage of this definition is that it provides a checklist for the enterprise IT builder in terms of skills that must be developed and open standards whose evolution must be tracked.