Different books and diffrent organizations give different definitions to Web Services.
Few definitions are given here and all the definitions are correct.
A web service is any piece of software that makes itself available over the internet and uses a standardized XML messaging system. XML is used to encode all communications to a web service. For example, a client invokes a web service by sending an XML message, then waits for a corresponding XML response. Because all communication is in XML, web services are not tied to any one operating system or programming language--Java can talk with Perl; Windows applications can talk with Unix applications.
Web Services are self-contained, modular, distributed, dynamic applications that can be described, published, located, or invoked over the network to create products, processes, and supply chains. These applications can be local, distributed, or Web-based. Web services are built on top of open standards such as TCP/IP, HTTP, Java, HTML, and XML.
Web services are XML-based information exchange systems that use the Internet for direct application-to-application interaction. These systems can include programs, objects, messages, or documents.
A web service is a collection of open protocols and standards used for exchanging data between applications or systems. Software applications written in various programming languages and running on various platforms can use web services to exchange data over computer networks like the Internet in a manner similar to inter-process communication on a single computer. This interoperability (e.g., between Java and Python, or Windows and Linux applications) is due to the use of open standards.
To summarize, a complete web service is, therefore, any service that:
Is available over the Internet or private (intranet) networks
Uses a standardized XML messaging system
Is not tied to any one operating system or programming language
Is self-describing via a common XML grammar
Is discoverable via a simple find mechanism
Components of Web Services?
The basic Web services platform is XML + HTTP. All the standard Web Services works using following components
SOAP (Simple Object Access Protocol)
UDDI (Universal Description, Discovery and Integration)
WSDL (Web Services Description Language)
All these components have been discussed in Web Services Architecture section.
How Does it Work?
You can build a Java-based Web Service on Solaris that is
accessible from your Visual Basic program that runs on Windows.
You can also use C# to build new Web Services on Windows that
can be invoked from your Web application that is based on
JavaServer Pages (JSP) and runs on Linux.
Consider a simple account-management and order -processing
system. The accounting personnel use a client application built with
Visual Basic or JSP to create new accounts and enter new customer
The processing logic for this system is written in Java and resides
on a Solaris machine, which also interacts with a database to store
The steps illustrated above are as follows:
- The client program bundles the account registration information into a SOAP message.
- This SOAP message is sent to the Web Service as the body of an HTTP POST request.
- The Web Service unpacks the SOAP request and converts it into a command that the application can understand. The application processes the information as required and responds with a new unique account number for that customer.
- Next, the Web Service packages up the response into another SOAP message, which it sends back to the client program in response to its HTTP request.
- The client program unpacks the SOAP message to obtain the results of the account registration process. For further details regarding the implementation of Web Services technology, read about the Cape Clear product set and review the product components.