<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
  PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en-us" xml:lang="en-us">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!-- /*******************************************************************************
 * Copyright (c) 2000, 2005 IBM Corporation and others.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 * 
 * Contributors:
 *     IBM Corporation - initial API and implementation
 *******************************************************************************/ -->
<link rel="stylesheet" type="text/css" href="../../org.eclipse.wst.doc.user/common.css" />
<title>Web Services Description Language (WSDL) reference</title>
</head>
<body id="rwsdl"><a name="rwsdl"><!-- --></a>

<h1 class="topictitle1">Web Services Description Language (WSDL) reference</h1>
<div><p>A WSDL document defines services as collections of network endpoints,
or ports. In WSDL, the abstract definition of endpoints and messages is separated
from their concrete network deployment or data format bindings. This allows
the reuse of abstract definitions: messages, which are abstract descriptions
of the data being exchanged, and port types which are abstract collections
of operations. </p>
<div class="section"><p>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 define
a service. Hence, a WSDL document uses the following elements in the definition
of network services:</p>
<ul><li> <span class="uicontrol">Types</span>: a container for data type definitions using
some type system (such as XSD).</li>
<li> <span class="uicontrol">Message</span>: an abstract, typed definition of the
data being communicated.</li>
<li> <span class="uicontrol">Operation</span>: an abstract description of an action
supported by the service.</li>
<li> <span class="uicontrol">Port Type</span>: an abstract set of operations supported
by one or more endpoints.</li>
<li> <span class="uicontrol">Binding</span>: a concrete protocol and data format specification
for a particular port type. The binding is usually SOAP and the encoding and
data formatting regulations used (also known as the style) is usually literal
(this includes document/literal, and sometimes rpc/literal).</li>
<li> <span class="uicontrol">Port</span>: a single endpoint defined as a combination
of a binding and a network address.</li>
<li> <span class="uicontrol">Service</span>: a collection of related endpoints.</li>
</ul>
<p>For more information on WSDL, refer to  </p>
<p><a href="http://www.w3.org/TR/wsdl" target="_blank">www.w3.org/TR/wsdl</a></p>
</div>
</div>
<div>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="../concepts/cwsdl.html" title="Web Services Description Language (WSDL) is a standard specification for describing networked, XML-based services. It provides a simple way for service providers to describe the basic format of requests to their systems regardless of the underlying run-time implementation.">Web Services Description Language (WSDL)</a></div>
</div>

<div class="linklist"><strong>Related Concepts</strong><br />

<div><a href="../concepts/cws.html" title="A Web service is a set of related application functions that can be programmatically invoked over the Internet. Businesses can dynamically mix and match Web services to perform complex transactions with minimal programming. Web services allow buyers and sellers all over the world to discover each other, connect dynamically, and execute transactions in real time with minimal human interaction.">Web services overview</a></div>
<div><a href="../concepts/cwsdl.html" title="Web Services Description Language (WSDL) is a standard specification for describing networked, XML-based services. It provides a simple way for service providers to describe the basic format of requests to their systems regardless of the underlying run-time implementation.">Web Services Description Language (WSDL)</a></div></div>

<div class="linklist"><strong>Related Tasks</strong><br />

<div><a href="../tasks/toverws.html"> Developing Web
services</a></div>
<div><a href="../../org.eclipse.jst.ws.consumption.ui.doc.user/tasks/tuddiexp.html"> Using the Web Services Explorer</a></div></div>

<div class="linklist"><strong>Related Reference</strong><br />

<div><a href="rsoapwsdl.html" title="When using the IBM SOAP run-time environment, by default the Web services tools in this product store the elements in three separate XML documents when generating Web services from Java beans, EJBs, and URLs: the WSDL binding document, the WSDL service document, and the WSDL interface document. By default XSD files are also generated if non-inline complex types are used by the interface. When generating Web services from DADX files, one WSDL document is generated.">WSDL files generated by the IBM SOAP run-time environment</a></div></div>
</div>
</body>
</html>