5 Web services that matter
- By Brian Robinson
- Sep 20, 2004
For Web services to truly be a vehicle for improving communication and data sharing among agencies and the public, information technology managers must build applications and services that extend beyond the organizations' networks.
Although many agency officials are dabbling in Web services, few have jumped wholeheartedly into the building process. And what Web services they have developed have so far been kept behind firewalls. That will have to change, industry experts said.
"After all, the whole purpose of Web services is to expose them to the world at large," said Brand Niemann, a computer scientist at the Environmental Protection Agency and co-chairman of the CIO Council's Semantic Interoperability Community of Practice.
"If you simply build [Extensible Markup Language]-based applications and keep them behind the firewall, you can't call them Web services," he added.
Fortunately, as the drive toward Web services quickens, the standards and specifications that agency officials need to develop such services are keeping pace. The following list contains five standards they'll need to know.
1. A basic language: Web Services Description Language
Web Services Description Language (WSDL) is the basic vocabulary of the Web services universe. An XML-based language, it allows people to describe the Web services they develop and enables others to discover those services and use them.
WSDL is "absolutely the most valuable of the initial Web services standards," said Whit Andrews, research director and head of Web services at Gartner Inc. "It allows for self-description, which is the foundation of service-oriented architecture and advanced services in general."
When a desktop-based client queries a registry to locate a Web service, it's referred to a WSDL document. That document provides the data that applications need to interact with the Web service.
One of WSDL's main attractions is that it's independent of all languages and protocols other than XML and IP, both of which are required for Web services.
2. Keep it simple: Simple Object Access Protocol
Simple Object Access Protocol (SOAP),
a Microsoft Corp. invention and the basis of the company's .NET strategy, is an XML-based method for activating applications or objects that reside on systems in a distributed environment. For Web services, that distributed environment is the Internet.
SOAP has three elements: an envelope that contains a message and provides a framework for describing the content of the message and how to read it; a set of rules for how data produced by different applications will be expressed; and rules for representing remote procedure calls and responses.
Once the client has pulled down the WSDL document, the client sends a SOAP message to activate a particular Web service, and the service returns a SOAP message in response.
Other methods that achieve the same results include the Common Object Request Broker Architecture and the Distributed Component Object Model. But SOAP is the only method that's independent of programming languages and works via the Internet.
3. First step toward security: Web Services Security
Ratified as a standard as recently as April, Web Services Security (WS-Security) builds on other security standards such as XML digital signature, XML Encryption and X.509 certificates to provide an authentication and authorization framework specifically for SOAP messages.
That's an important distinction, Niemann said. Because Web services outside the firewall are inherently open to everyone, they can't be secured by narrowly defined methods.
WS-Security is designed to support multiple security token formats. In any Web services activity, a client could use one format for identity and another to verify business certification, for example. WS-Security will likely handle both formats seamlessly.
It's not perfect, however, and Web services developers and users should be aware that WS-Security alone doesn't provide a complete security solution.
But it's considered a good enough start and the first essential security step for administrators who decide to deploy outward-facing Web services.
Ira Grossman, IT architect at the National Oceanic and Atmospheric Administration, said agency officials considering using Web services in a service-oriented architecture — as they are at NOAA — are unlikely to move forward without the kind of security offered by WS-Security.
4. Basic building block: Universal Description, Discovery and Integration
Universal Description, Discovery and Integration (UDDI) enables IT managers to build a kind of telephone directory that provides a standard way for companies and applications to quickly find Web services. It's one of the basic building blocks of Web services, along with WSDL and SOAP.
Officials have been slower to adopt UDDI, mainly because most of the Web services developed so far have been for point-to-point use within organizations. For the most part, a directory hasn't been needed.
But as organizations start using Web services more and pushing them beyond the firewall, directories enabled by UDDI will be vital to the services' success. Some observers say they wonder if UDDI will be adequate for the future of Web services, adding that a federated directory structure may be needed instead.
But many of the companies that provide tools for developing Web services have used UDDI to build their own Web services directories and have incorporated UDDI into their products. Developers who use something other than UDDI face the prospect of having their services left out of the general Web services universe.
5. Working together: Web Services Interoperability Basic Profile
The Web Services Interoperability Organization's WS-I Basic Profile is not a standard, but it provides a measure of certainty that Web services built using different platforms and toolsets will be interoperable. The profile describes how core Web services specifications should be used together.
That goal sounds somewhat counterintuitive to the overall purpose behind XML and Web services, which is to integrate
applications and systems in a platform-independent way using the Internet.
The reality, however, is that Web services specifications and standards that are developed over time by different industry organizations and vendors end up being tweaked in favor of various platforms or have weaknesses that aren't apparent until other systems try to use them.
IBM Corp., Microsoft and others formed the WS-I organization in 2002. It now includes more than 150 companies, such as BEA Systems Inc., Oracle Corp., Sun Microsystems Inc. and webMethods Inc.
Anyone using a particular vendor's Web services and tools that are certified as complying with the WS-I Basic Profile can be assured that they work with similarly certified products from other vendors, said Jason Bloomberg, senior analyst at ZapThink LLC, a consulting firm.
The WS-I Basic Profile doesn't guarantee complete compatibility, he said, but it ensures that products will interoperate.
The latest version, Basic Profile 1.1, was published in August.
Robinson is a freelance journalist based in Portland, Ore. He can be reached at [email protected]