Web service

Representational State Transfer (REST) is an architecture for well-behaved Web services that can function at Internet scale.

[2] Restful APIs do not require XML-based Web service protocols (SOAP and WSDL) to support their interfaces.

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.W3C Web Services may use SOAP over HTTP protocol, allowing less costly (more efficient) interactions over the Internet than via proprietary solutions like EDI/B2B.

Besides SOAP over HTTP, Web services can also be implemented on other reliable transport mechanisms like FTP.

It is a software function provided at a network address over the Web with the service always-on as in the concept of utility computing.

[a]) A directory called UDDI (Universal Description, Discovery, and Integration) defines which software system should be contacted for which type of data.

Critics of non-RESTful Web services often complain that they are too complex[8] and based upon large software vendors or integrators, rather than typical open source implementations.

There are also concerns about performance due to Web services' use of XML as a message format and SOAP/HTTP in enveloping and transporting.

[14][15] A key study published in WWW2008 Conference (Beijing, China)[16] presented the state of SOAP-based web services and concluded that only 63% of the available SOAP-based web services at the time of the study were actually active or can be invoked.

Web services architecture: the service provider sends a WSDL file to UDDI. The service requester contacts UDDI to find out who is the provider for the data it needs, and then it contacts the service provider using the SOAP protocol. The service provider validates the service request and sends structured data in an XML file, using the SOAP protocol. This XML file would be validated again by the service requester using an XSD file.