W3C Workshop on Web Services, 11-12 April 2001
What is a Web Service? Generally speaking, it is any piece of functionality that can be invoked over the Internet. Traditionally, web services have been implemented with ad hoc mechanisms such as CGI scripts and proprietary mechanisms. In the past 18 months, however, de facto standards have emerged to formalize the concept of Web Services and their interface. As a result of emerging standards in this space, multiple vendors, including Rogue Wave, are coming forward with tools and infrastructure to support the standards. The most important of these standards are SOAP (Simple Object Access Protocol) and WSDL (Web Services Description Language).
SOAP and WSDL are XML document formats. SOAP is used to encode messages such as RPC request-response messages. WSDL is used to describe a Web Service’s interface. In essence, SOAP and WSDL facilitate distributed computing. SOAP provides a simple distributed computing mechanism that can be used over multiple “transports”. Traditionally, distributed computing standards have been based on binary protocols that require a particular infrastructure. SOAP, in contrast, is flexible in nature. Any application that can open a connection to the server, pass an XML document, and receive one in return can be a client. SOAP is agnostic with respect to programming language, platform, infrastructure, and vendor.
Why are SOAP Web Services useful? While SOAP was initially viewed only as a way to get through firewalls (by passing SOAP over HTTP to a Web server), other uses of SOAP are emerging as the industry gains experience with this new technology. We have identified five applications of SOAP: B2B, application integration, general distributed computing, wireless applications, and web content development.
While SOAP was originally derided as a Microsoft specific standard, it has been steadily gaining broad-based industry support and mind share. A year ago Rogue Wave Software was practically alone in our support of SOAP (through our XML Link products). Today the space is becoming increasingly crowded and interesting. Support for SOAP has been announced or demonstrated by the major platform vendors, middleware vendors, a host of smaller companies, and open source projects. This trend highlights the need for standards in this area to facilitate interoperability amongst products.
Rogue Wave Software is an 11-year-old company. We are primarily known for our class libraries. One year ago we introduced a set of products based on SOAP – our XML Link product line. XML-CORBA Link (a.k.a., XORBA) provides SOAP access to CORBA objects and XML-DB Link provides SOAP access to databases. These two products were the first commercially available products based on a SOAP specification.
In working with our customers and prospects during the last year, we have gained insight, as outlined above, about how people are planning to use SOAP.
Rogue Wave supports the XML Protocols work of the W3C. We believe that it is important to formally standardize a protocol similar to SOAP. In addition, we would like to see the W3C work to standardize a Web Service interface description language.
We see the market for web service products increasing, as more businesses and organizations come to discover the diverse applications of SOAP, beyond simple HTTP tunneling. We look to the W3C to foster this emerging market through relevant standards such as the current XML Protocols work and a future Web Services interface description language initiative.