Title: Web Services Description Language (WSDL)
1Web Services Description Language (WSDL)
- Jason Glenn
- CDA 5937
- Process Coordination in Service and Computational
Grids - September 30, 2002
2Outline
- 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
3What 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.
4Web Services Model
Port
Server (Web Service)
Backend App
WS Request
Client
WS Response
5Web 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
6Common Transfer Protocols
7HTTP
- HTTPHyperText Transfer Protocol
- Protocol commonly used to transfer information on
the web
8SMTP
- SMTP Simple Mail Transfer Protocol
- Protocol used to exchange information between
mail servers
9MIME
- MIME Multipurpose Internet Mail Extensions
- Internet standard that specifies how messages are
formatted for exchange between different email
systems - flexible format
10Review 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
11XML vs. HTML
- XML is about describing information
- HTML is about displaying information
12XML Example
ltnotegt lttogtGeraldlt/togt ltfromgtRonlt/fromgt ltheadinggtR
eminderlt/headinggt ltbodygtDon't forget the meeting
on Friday.lt/bodygt lt/notegt
13HTML Example
ltbgtThis is a notelt/bgtltbrgt ltfont facearial
size-1gtTo Geraldlt/fontgtltbrgt lt font
faceTerminalgtFrom Ronlt/fontgtltbrgt ltbgtHeading
Reminderlt/bgtltbrgtltbrgt ltcentergtDon't forget the
meeting on Friday.lt/centergt
14XML 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
15XML 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
16SOAP (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
17SOAP
18SOAP Envelopes
Soap Envelope/HTTP
Port
Server (Web Service)
Backend App
WS Request
Client
WS Response
Soap Envelope/HTTP
19What is WSDL?
- Web Services Description Language
- An XML format for describing network services as
a set of endpoints operating on messages.
20Characteristics 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
21WSDL 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
22Example
- The following example is taken from the WSDL
description document provided by the world wide
web consortium. This document can be found at
http//www.w3.org/TR/wsdl_wsdl. It is the WSDL
definition for a simple service providing stock
quotes.
23Example
24Expanding on WSDL
- WSXL
- IBM web services component model
- based on open standards
- .NET
- Microsoft web services component model
- UDDI
- Web Service Registry
25WSXL
- 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
26.NET
- Goal
- Applications constructed from multiple Web
services that work together to provide data and
services for the application
27UDDI
- Universal Description, Discovery and Integration
- Platform-independent, open framework for
describing and discovering web services using the
Internet - UDDI Registries
28Popular Web Services Servers
- IBM Websphere
- Not Open Source
- Trial Versions Available
- Apache Axis
- Open Source
- Free
29Useful 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