Web Services Description Language (WSDL)
Web Services Description Language (WSDL)
Language (WSDL)
Jason Glenn
CDA 5937
Process Coordination in Service
and Computational Grids
September 30, 2002
Outline
What is a web service?
Web Services Model
Web Services Stack
Lower level WS protocols
What is WSDL?
Explain contents of WSDL documents
Higher level WS and WS-related applications
What is a Web Service?
Self-contained, modular web application
that can be published, located, and
invoked across the Web.
Can perform functions of varying
complexities
Once deployed, other applications (and
other Web services) can discover and
invoke the deployed service.
Web Services Model
Port
Backend
App WS Request
Server
Client
(Web Service)
WS Response
Web Services Stack
Implementation Layer
UDDI Publishing and Discovery
WSXL/.NET Web Applications
IBM WSFL/MS XLANG Workflow
WSDL/WSCL Service Descriptions
SOAP/ XML/ HTTP/SMTP Transactions/Reliability/
Messaging
Internet/ Intranet Transport Network
Common Transfer Protocols
HTTP
SMTP
HTTP
HTTP=HyperText Transfer Protocol
Protocol commonly used to transfer
information on the web
SMTP
SMTP = Simple Mail Transfer Protocol
Protocol used to exchange information
between mail servers
MIME
MIME = Multipurpose Internet Mail
Extensions
Internet standard that specifies how
messages are formatted for exchange
between different email systems
flexible format
Review of XML
XML = EXtensible Markup Language
A markup language like HTML
(HyperText Markup Language)
Designed to describe data
Tags are not predefined
Uses a Document Type Definition (DTD)
or an XML Schema to describe the data
Designed to be self-descriptive
XML vs. HTML
XML is about describing information
HTML is about displaying information
XML Example
<note>
<to>Gerald</to>
<from>Ron</from>
<heading>Reminder</heading>
<body>Don't forget the meeting on Friday.</body>
</note>
HTML Example
<b>This is a note</b><br>
<font face=“arial” size=-1>To: Gerald</font><br>
< font face=“Terminal”>From: Ron</font><br>
<b>Heading: Reminder</b><br><br>
<center>Don't forget the meeting on Friday.</center>
XML Documents
Not quite the same as HTML documents
Can be seen independently of files (one
document can contain many files; one
file can contain many documents)
Concerned more with logical structure
than physical structure
XML Namespaces
An XML namespace is a collection of
names, which are used in XML
documents as element types and
attribute names
WSDL document elements belong to
WSDL namespace
SOAP (Simple Object Access
Protocol )
a lightweight and simple XML-based protocol
that is designed to exchange structured and
typed information on the Web
Standard way of representing remote
procedure calls and responses
Standard to encapsulate messages between
Web service clients and servers
SOAP Envelope
SOAP
SOAP Envelopes
Soap
Envelope/HTTP
Port
Backend WS Request
App
Server
Client
(Web Service)
WS Response
Soap
Envelope/HTTP
What is WSDL?
Web Services Description Language
An XML format for describing network
services as a set of endpoints operating
on messages.
Characteristics of WSDL
Operations and messages are described
abstractly
Endpoints defined by binding concrete
network protocol and message format
to abstract operations and messages
Can describe any endpoint regardless of
the underlying network protocol or
message format
WSDL Document Elements
Types – a container for data type definitions using some type
system
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
Example
Microsoft Word
Document
Expanding on WSDL
WSXL
IBM web services component model
based on open standards
.NET
Microsoft web services component model
UDDI
Web Service Registry
WSXL
Goals
enable businesses to deliver interactive
Web applications through multiple
distribution channels
enable new services or applications to be
created by leveraging other interactive
applications across the Web
.NET
Goal
Applications constructed from multiple Web
services that work together to provide data
and services for the application
UDDI
Universal Description, Discovery and
Integration
Platform-independent, open framework
for describing and discovering web
services using the Internet
UDDI Registries
Popular Web Services Servers
IBM Websphere
Not Open Source
Trial Versions Available
Apache Axis
Open Source
Free
Useful Links
WSDL description/specification
http://www.w3c.org/TR/wsdl
Apache Axis
http://xml.apache.org/axis/
IBM Websphere
www.ibm.com/software/info1/websphere