This presentation is part of the Services and Connectors Self-Study Course.
A web service is a way of integrating web based applications using XML, SOAP and WSDL open standards over an Internet protocol backbone. XML is used to tag the data, SOAP is used to transfer the data, and WDSL is used for describing the services available.
- is a widely used format for application integration
- is tag-based, similar to html
- defines a standard structure for data, not presentation
An XML document contains beginning and ending tags, attributes of the tags, and values associated with the tag. Tags can be and often are nested.
An XML schema is an xml document that serves to validate the structure of other xml documents. For instance, a SOAP xml document has a particular structure of tags and attributes that can define the name of a property and its type. An XML schema can also be used to validate the structure of a SOAP xml document.
SOAP is a protocol for exchanging XML-based messages over a network and forms the basic messaging framework for the web service. When you execute a request to integrate with an application via web services, you are sending a SOAP message to another application. A SOAP message is a valid XML document, and is composed of 3 parts:
- A SOAP envelope encompasses (or wraps) the entire SOAP message
- A SOAP header can contain varying types of information. One of the more popular pieces of information to send inside a SOAP header is userid/password data that can be used in the called application for purposes of authentication.
- A SOAP body identifies the operation to be executed (this might include a URL that identifies the location of the application to be called). It also identifies data that goes along with the operation or the results if it is the SOAP response.
A WSDL (Web Services Description Language) is a valid XML document that provides a model for describing a web service. It can define a set of operations, along with the type of data expected in the request and response. It is often used by application software to automatically generate some of the code that is required in order to execute the operations from the calling application. For example, Amazon.com allows you to integrate with their systems via web services. You can freely download WSDL files that programmatically describe how to implement various functionality.