Web Services for Enterprise
Application Integration
Liana Razmerita
Project Acacia, INRIA, Sophia-Antipolis
Outline
Web Services (WS)-Introduction
What
is the technology associated with WS?
How to deliver and operate WS?
Why Web Services?
What are Semantic Web services?
Service-oriented architectures (SOA)
Conclusions
What are Web Services?
A new generation of distributed, web-based
technology
Web services are software applications that can be
discovered, described and accessed based on
XML and standard Web protocols over intranets,
extranets and the Internet. [Daconta et al., 2003]
WS independent agents that produce and
consume information, enabling automated
business transactions. [Paolucci and Sycara,
2003]
How to deliver and operate WS?
A basic business transaction using web
services consists of four stages:
Search
Select
Provide
Pay?
Generic use case scenario
Service
Registry
Find
Publish
Bind
Service
Requester
Service Provider
Layers of Web services
UDDI-Universal
Description
Discovery
Discover
(UDDI, ebXML,
registries)Integration
an application registry, similar to a telephone book
Describe (WSDL)
WSDL Web Service Description Language
Access (SOAP)
SOAP Simple Object Access Protocol
XML
XML-eXtended Markup Language
Communication Layer
(protocols: HTTP, SMTP,..)
XML-eXtended Markup Language
HTML (Hypetext Markup Language) most
common language on the Web
XML is derived from SGML (Standard
Generalized Markup Language)
XML is a meta language for markup
XML allows users to define their own tags
<h2>Out of the box</h2>
<i>by John Hagel</i>
<book>
<title>Out of the box</title>
<author>John Hagel</author>
</book>
XML-eXtended Markup Language
XML standard recommended by W3C
XML organize data in a hierarchy
Tag names can be chosen
XML is an interoperable data format
SOAP
a lightweight protocol for exchange of
information in a decentralized, distributed
environment W3C (http://www.w3.org/TR/soap/)
WS communicate using SOAP, usually used
with HTTP
SOAP Header
SOAP Body
SOAP Envelope
HTTP Header
SOAP messages
<SOAP_ENV: Envelope
xmlns:SOAP-ENV=http://schemas.xmlsoap.org/soap/envelope/
SOAP-ENV:encodingStyle=http://schemas.xmlsoap.org/soap/encoding/
<SOAP-ENV:Body>
<m:GetLastTradePrice xmlns:m=some URI>
<symbol>DIS</symbol>
</m:GetLastTradePrice>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<SOAP_ENV: Envelope
xmlns:SOAP-ENV=http://schemas.xmlsoap.org/soap/envelope/
SOAP-ENV:encodingStyle=http://schemas.xmlsoap.org/soap/encoding/
<SOAP-ENV:Body>
<m:GetLastTradePrice Response xmlns:m=some URI>
<price>34</price>
</m:GetLastTradePrice Response>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
How to describe Web services?
WSDL Web Service Description Language
WSDL is an XML format for describing network
services as a set of endpoints operating on
messages containing either document-oriented
or procedure-oriented information. W3C
(http://www.w3.org/TR/wsdl)
WSDL specification resulted from collaboration
of IBM, Microsoft and Ariba.
How to discover Web Services?
UDDI-Universal Description Discovery
Integration-not yet a standard, embraced
by major vendors (http://www.uddi.org/)
register public information about web
services
Service description includes
serviceName:
textDescription of the service:
provider:
contactInformation: FOAF, VCard
IOPE (Input Output Preconditions and Effects )
.
Service-oriented architecture principles
Simplicity
simplicity
at the end-points of the connections
deliver functionality as a shared service
Loose coupling
modules
connected through standard communication
protocols
connections across modules are loosely coupled
Heterogeneity
a
diversity of computing platforms and applications can
communicate
Openness
ubiquitous
standards and protocols reduce concerns
about lock-ins and maximize the returns on
investments of the participants
WS major development directions
definition/granularity of a service
discovery and invocation aspects
composition and interoperation of services
(manual, automatic and semi-automatic?)
quality of services (trust, security)
Some companies working on SOA
Sun Microsystems Sun Labs (Java WSDP Developer Pack)
IBM (BPEL4WS Business Processes Execution
Language, WSDL toolkit)
Microfot (.Net)
Salesforce
RightNow
Oblix
Siebel Systems (SEBL)
Ellison&Co (at Oracle)
Semantic Web Services
Web is evolving from a repository of Web
resources towards a provider of services [McIlraith
et al., 2001]
W3C Semantic Web Interest Group: service
description, choreography and specification of WS
using OWL_S
OWL_S a semantic markup language formerly
called DARPA Agent Markup Language for
Services (DAML_S): the service profile, the service
model, the service grounding
Semantic Web layered architecture
Semantic Web design and vision (Tim
Berners-Lee,2001)
Proof layer
Logic layer
OWL (Ontology languages)
RDF/RDFS
XML
Alternatives to OWL_S
Web Service Modeling Framework
(WSML)- Web Service Modeling Ontology
(WSMO)
Internet Reasoning Service (IRS-II) and
(IRS-III) are Semantic Web Services
Framework, developed by KMI,
Top level service ontology of OWL_S
what it does
Service
Service Profile
how to access it
Service Grounding
how it works
Service Model
A Web-service enabled architecture
service
provider
service
requester
Tomcat Server
Web Services
service
query
service
requester
Agents
Servlet
Server
UDDI, registry
WS for Enterprise Application Integration(EAI)
Ontologging project
A next generation of KMSs: ontologies, web services, user modeling
and agents.
What are Knowledge Management Systems?
Information systems dedicated to manage organizational knowledge.
[Leidner and Alavi, 2001]
create
share
capitalize/
store
KMSs aim to integrate complex knowledge
processes:
Collaboration between employees;
Learning processes;
Management of tacit knowledge;
WS for EAI Ontologging architecture
E nd U sers
M ultiple
O ntology- &
M etadata
M anagement
U ser Profile
Editor
M S O ffice
...
C onnector
Q uery &
Browsing
Interface
D ocument
U pload
Interface
O ntologging C ore Integration Layer
( Includes intelligent services , agents , ...)
M ultiple
O ntology and
M etadata
M anagement
U ser
M anagement
(Profiling,
T racking )
D ocument
M anagement
& Indexer
O ntologging
P resentation
Layer
O ntologging
Middleware
Layer
...
Admin instration
O ntologging
S torage
Layer
Conclusions
A new generation of distributed, web-based
technology
A
new way to establish more flexible and low-cost
connections across applications
WS architectures focus on connecting applications
and data.
Authorized
entities access data or applications
regardless of location and technology platform.
WS enable to connect existing applications with
the applications of their business partners.
References
Daconta, M, C., Obrst, L, J., Smith, K, T., 2003, The
Semantic Web: A guide to the future of XML, Web
Services and Knowledge Management, Wiley Publishing
Inc. Indiana
Make it simple-A survey of Information Technology,
appeared in the Economist, October 30th, 2004.
Curbera, F.; Duftler, M.; Khalaf, R.; Nagy, W.; Mukhi, N.;
Weerawarana, S, Unraveling the Web services web: an
introduction to SOAP, WSDL, and UDDI, Internet
Computing, IEEE, Volume: 6, Issue: 2, March-April 2002,
Pages:86 93
Hagel, J., Out of the Box: Strategies for Achieving Profits
Today and Growth Tomorrow through Web Services,
2002
Discussion
Questions and answers
Work group session