Web service
Definition
According to Wikipedia (retrieved 19:12, 23 April 2007 (MEST)), the W3C defines a Web service as a software system designed to support interoperable Machine to Machine interaction over a network. Web services are frequently just Web APIs that can be accessed over a network, such as the Internet, and executed on a remote system hosting the requested services.
Web services stack
Things do get complicated, e.g. here is a probably wrong example webservice "stack" made up from the very little I know (See also What's Next for Learning Technology Systems and Standards? by Daniel R. Rehak, CMU.
( HTTP -> ) SOAP -> UDDI -> WSDL | WSIF ? -> WSFL ? -> -> ebXML? | WSIL ? -> WSRP? -> Portal
- Simple Object Access Protocol (SOAP) 1.1, W3C note. "SOAP is a lightweight protocol for exchange of information in a decentralized, distributed environment. It is an XML based protocol that consists of three parts: an envelope that defines a framework for describing what is in a message and how to process it, a set of encoding rules for expressing instances of application-defined datatypes, and a convention for representing remote procedure calls and responses". Note DKS: This is generally the lowest Service Layer (just on top of HTTP) and tells how to describe messages that are sent or received.
- Web Services Description Language (WSDL), W3C Note. WSDL is an XML format for describing network services as a set of endpoints (methodes/calls) operating on messages containing either document-oriented or procedure-oriented information.
- WSFL (Web Services Flow Language) article from IBM. WSFL is an XML language (compatible with SOAP, UDDI & WSDL) for the description of the overall process logic of Web Services. See also [Business processes and workflow in the Web services world and ]Cover Pages about his
- Apache references to the WSIF (Web Services Invocation Framework) . This is a description of APIs to invoke Web Services described in WSDL. (Can, but does not need to be built on top of SOAP).
- WSIL (Web Services Inspection Language) WS-Inspection specification provides an XML format for assisting in the inspection of a site for available services and a set of rules for how inspection related information should be made available for consumption (IBM/Microsoft)
- UDDI (Universal Description, Discovery and Integration) enables organizations to (I) discover each other by a directory of service providers and services, and (II) find out what services are available
- WSRP (Web Services for Remote Portals): XML and Web services standard that will allow the plug-n-play of visual, user-facing Web services with portals or other intermediary Web applications. (Oasis led initiative)
- ebXML Messaging Service Specification (OASIS led) provides a secure method for exchanging electronic business transactions using the Internet. (This is a rather big project with several sub-specifications). See D. Mertz "Understanding ebXML" at developerworks/IBM.
Players
There are many players in this field.
- The Web Services Activity Statement and the Web Services Activity give an overview of the W3's idea on application to application communication (web services). See also: Web Services Description Requirements and the Web Services Glossary.
- Oasis is an other organization working on xml-based e-business standards
- "What's Next: The Future of Web Services" from Microsoft
- XMethods has a long list of publicly available web services , implementations, tutorials, etc.
Links
- Standards and recommendations
Web Services Architecture (W3C Working Group Note 11 February 2004)
- Other
- Build a Web Service Analyzer using XSLT (400 KB>, Ammai.com tutorial
- Sun's XML page has a lot of information concerning concerning Java-based webservices. (3/2003)
- Why Use SOAP? Choosing Between SOAP and Application-Specific XML for Your Web Services by Frank Sommers, March 17, 2003 (artima.com)