WSDL is another XML-based standard that supports typical Web service implementations, and is used to describe Web services to potential Web service clients. A single WSDL file typically defines one Web service and its operations sufficiently to program a client to the specified Web service interface. However, to use this Web service interface in a client application effectively (as with any interface) usually requires documentation in addition to the WSDL definition itself, especially to describe the requirements for data that is input to the interface.
The WSDL standards provide several basic XML elements to define a Web service, including its name, the set of operations that it supports, the data types of parameters on those operations, the SOAP format of the messages used to invoke operations and return their results, and the exact protocol bindings and services that support the Web service; in short, everything that a potential Web services client needs to use the Web service, wherever it is hosted on the Internet.
Theoretically, Web service developers can write their own WSDL file to define a Web service they are building. However, most Web service development vendors provide tools to automatically generate the WSDL file directly from the application server interface and additional information, including the SOAP format and the location of the Web service, to make the Web service available to potential Web service clients. Similarly, most Web service client platform vendors also provide tools to take the WSDL file as input and automatically generate the code for the client interface that the client application calls to invoke operations on the specified Web service.
For more information on WSDL and how OpenEdge uses it to define the client interface for OpenEdge Web services as well as to define the client interface for industry Web services accessed by ABL clients, see OpenEdge Development: Web Services.