What is a web service?

A web service is defined by the World Wide Web Consortium (W3C) as a software system designed to support interoperable machine-to-machine interaction over a network.

A web service fulfills a specific task or a set of tasks, and is described by a service description in a standard XML notation called Web Services Description Language (WSDL). The service description provides all of the details necessary to interact with the service, including message formats (that detail the operations), transport protocols, and location.

Other systems use SOAP messages to interact with the web service, typically by using HTTP with an XML serialization in conjunction with other Web-related standards.

The WSDL interface hides the details of how the service is implemented, and the service can be used independently of the hardware or software platform on which it is implemented, and independently of the programming language in which it is written.

Applications that are based on web services are loosely-coupled, component-oriented, cross-technology implementations. Web services can be used alone, or in conjunction with other web services to carry out a complex aggregation or a business transaction.