The term “Web services” was initially employed by Bill Gates, chairman of Microsoft, at the Microsoft Professional Developers Conference in Orlando, Florida on July 12, 2000. Fundamentally, the term refers to automated resources accessed via an Internet URL. However, a more comprehensive definition is that of the World Wide Web Consortium (W3C)1, which declare Web services as “providing a standard means of interoperating between different software applications, running on a variety of platforms and/or frameworks.” An Internet connection allows retrieval of software-powered resources or functional components and is therefore regarded as an extension of the World Wide Web infrastructure. Web services represent the evolution of a human-oriented utilization of the Web to a technology that is application driven. It attempts to replace human-centric searches for information with searches that are primarily application based (Staab, 2003).
Key Terms in this Chapter
SOAP: A means for allowing a program running in one kind of operating system to communicate with a program in the same or another kind of an operating system by using the World Wide Web’s hypertext transfer protocol and its extensible mark-up language (XML) as the mechanisms for information exchange.
Service-Oriented Architecture: A collection of services that communicate with each other. The services are self-contained and do not depend on the context or state of the other service. They work within a distributed systems architecture.
Web Service: A Web service is a software component that is described via WSDL and is capable of being accessed via standard network protocols such as (but not limited to) SOAP over HTTP. It has an interface described in a machine-processable format (specifically WSDL).
Discovery: The act of locating a machine-processable description of a Web service-related resource that may have been previously unknown and that meets certain functional criteria.
Message: A message is the basic unit of data sent from one Web services agent to another in the context of Web services.
Binding: An association between an interface, a concrete protocol, and a data format. A binding specifies the protocol and data format to be used in transmitting messages defined by the associated interface.
Proxy: An agent that relays a message between a requester agent and a provider agent, appearing to the Web service to be the requester.