What Are Web Services
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.
The W3C (World Wide Web Consortium) defines a web service as a software system designed to support inter-operable machine-to-machine interaction over a network. It has an interface described in a machine-processable format (specifically WSDL). Other systems interact with the web service in a manner prescribed by its description using SOAP messages, typically conveyed using HTTP with an XML serialization in conjunction with other web-related standards.
There are two major classes of web services:
- RESTful (Representational state transfer)-compliant Web services, in which the primary purpose of the service is to manipulate XML representations of Web resources using a uniform set of stateless operations.
- Arbitrary Web services, in which the service may expose an arbitrary set of operations. Arbitrary Web Services are implemented via SOAP (Simple Object Access Protocol).
Web Service Technologies
XML (eXtended Markup Language) is a standard that defines the textual representation of data and is used for all web services. If two systems are sending date values to each other, and one system is using the ISO 8601 standard and the other system only understands RFC 5322, then the date values will be incorrect. This is like two people talking to each other and one is speaking English and the other is speaking French. There will be some misunderstandings. XML supports organizing data into records as you can see in the XML sample below. There are multiple material items each having name, category and allergent values.
Below is my smiley image.
WSDL (Web Service Description Language) describes information about the specific web service. This includes, the operations (functions or methods) that are available and data types. It is used by the Web Services Module to find out information about the web service provided by another system. The only way to know what operations are available and what data types to use is to read the WSDL file from the other system. Once we have the details, then the Web Services Module can show the appropriate setting options.
SOAP (Simple Object Access Protocol) is a protocol specification for exchanging structured information in the implementation of web services in computer networks. It relies on XML information set for its message format, and usually relies on other application layer protocols, most notably Hypertext Transfer Protocol (HTTP) or Simple Mail Transfer Protocol (SMTP), for message negotiation and transmission. In MES, whenever information is required, the application client invokes remote functions on the server to send and receive data using SOAP.