A Web Service is an interface that describes a collection of operations that are accessible on the network through SOAP messages.
Web services operate over the Internet or a corporate intranet in the exact same way as you locate a web site: either you type in the URL address or you use a search engine to locate the site. You may know the address of the Web service you want to invoke, the address of its interface (WSDL for example), or you must search for the service by querying a Web service registry. The UDDI specification defines a standard mechanism for publishing and locating the existence of businesses and the services they provide.
WSDL is a language that describes what a Web service is capable of and how a client can locate and invoke that service. The Web Services Description Language (WSDL) 1.1 document, available at http://www.w3.org/TR/wsdl, describes WSDL documents as follows:
"A WSDL document defines services as collections of network endpoints, also called ports. In WSDL, the abstract definition of endpoints and messages is separated from their concrete network deployment. This allows the reuse of abstract definitions: messages are abstract descriptions of the data being exchanged, and port types are abstract collections of operations. The concrete protocol and data format specifications for a particular port type constitutes a reusable binding. A port is defined by associating a network address with a reusable binding, and a collection of ports defines a service. Hence, a WSDL document uses the following elements in the definition of network services:
Types: a container for data type definitions using some type system (such as XSD)
Message: an abstract, typed definition of the data being communicated
Operation: an abstract description of an action supported by the service
Port Type: an abstract set of operations supported by one or more endpoints
Binding: a concrete protocol and data format specification for a particular port type
Port: a single endpoint defined as a combination of a binding and a network address
Service: a collection of related endpoints"
WSDL is used to define the Web service interface, the Web service implementation, or both. As a result, it is possible to use two WSDL files, one for the interface and one for the implementation.
In an interface WSDL, you declare the procedures that allow you to create a Web service.
In an implementation WSDL, you define how to implement these procedures through services and ports (access endpoints URLs).
In an OOM, an interface WSDL is associated with a component, and an implementation WSDL is associated with a component instance. You can save both WSDL files within the model.
For detailed information about WSDL, see http://www.w3.org/2002/ws/desc.
SOAP stands for Simple Object Access Protocol. It is a protocol based upon XML for exchange of information in a distributed environment. It represents the invocation mechanism within a Web service architecture. WSDL allows a user to understand which format of the SOAP message should be sent to invoke the service and what is the expected return message format.
UDDI stands for Universal Description Discovery and Integration. It is an XML-based registry for businesses worldwide. This registry lists all Web services on the Internet and handles their addresses.
In UDDI, an organization or a company, called a businessEntity usually publishes a WSDL to describe Web services interfaces as tModel. Another company may implement it, and then publish in the UDDI the following items that describe how to invoke the Web service: