Web Services Web Service = Interface for the net access to ...

w5.cs.uni.sb.de

Web Services Web Service = Interface for the net access to ...

Web Services

Web Service = Interface for the net access

to application functionalities, that are

based entirely on standard internet

technologies.

Network

Web

Service

Application Logic

A. Eberhart, S. Fischer: Web Services. München: Hanser 2003

© W. Wahlster


Various Definitions for Web Services

IBM: “Web services are self-contained, modular

applications that can be described, published,

located, and invoked over a network, generally, the

World Wide Web.”

Microsoft: “a Web service is programmable

application logic, accessible using standard

Internet protocols,”

Gartner Group: “a software component that

represents a business function (or a business

service) and can be accessed by another

application (a client, a server or another Web

service) over public networks using generally

available ubiquitous protocols and transports

(i.e. SOAP over HTTP).”

© W. Wahlster


Service Oriented Computing

• New paradigm to build complex web-based

applications – Web Services

Platform-independent software components

User-defined, need-based composable

Web Services will

Enable users to access business functionalities

Enable streamlining and enhancement –

heterogeneous enterprise application integration

© W. Wahlster


Web Service Framework

Publish

Service

Registry

Find

Service Provider Service Consumer

communicate

Background

© W. Wahlster


Composition of Web Services

• To achieve a given objective – sell my car, I may

need more than one Web Service:

Car Valuation service – WS1

Car Auction Service – WS2

Online Financial service – WS3

• All three WS need to interact seamlessly

To achieve my goal

© W. Wahlster


Web Services Composition

• Composed Web Services are:

Individual components implemented at different

places

Execute in different contexts

But, need to communicate – to yield desired

behavior

• Multiple approaches based on perspective:

Static – Dynamic WS composition

Industry solution – Semantic Web solution

© W. Wahlster


Semantic Web Services

• WS annotated regarding their functionalities,

domain, location.

Industry – Semantic Web

• Annotations are ‘concepts’ – enable software

agents to ‘understand’ usage of a WS

• ‘concepts’ are defined in an ontology –

standardize their interpretation

• Ex: OWL-S ( an OWL ontology for specification of

WS), DAML-S

© W. Wahlster


The DAML-S Model

Service Class

properties

presents describedBy supports

Classes as ranges

Service Profile Service Model Service Grounding

© W. Wahlster


DAML-S Service Profile

Gives high level description of WS

Used to advertise its features

Allows clients to select and

locate WS from registries

Input,

output,

preconditions,

postconditions

© W. Wahlster


DAML-S Service Model

Detailed description of service

Process model Process control model

Service Grounding

• Binding level information

• specifies how client can access the service (SOAP/Java RMI)

© W. Wahlster


Coming back to WS composition…

WS2 (Auction Service)

Composed of

Buyer Interface service Seller Interface service

May be executing in parallel to different instances of a transaction

Financial authentication

service

© W. Wahlster


Semantic Approach to WS composition

Apply logical inferencing techniques to compose WS

WS capability

Annotated with DAML-S Situational calculus

DAML-S

Precondition

Effects

Inputs

Output

Translate into a

More expressive logic

Situational Calculus

SC precondition

SC effects

SC knowledge precondition

SC knowledge effects

© W. Wahlster


Situational Calculus

• First order logical language – represents

dynamically changing worlds

• All changes – direct result of named actions

Situation (So)

Action a(y)

Results in

Situation (s)

© W. Wahlster


Situational Calculus to Petri Nets

• The representation in SC – translated into

Petri nets

• Petri nets: bipartite graphs

Places

Places

Places

Input place

Transitions

Output place

© W. Wahlster


Capabilities of Petri nets

• Formal definition: a Petri net (PN) is an algebraic

structure (P,T,I,O) composed of:

Finite set of places, P = {p1, p2, …, pn}

Finite set of transitions, T ={t1, t2, …, tm}

Transition input function, I I maps each transition ti to a

multiset of P

Transition output function, O O maps each transition ti to a

multiset of P

• Allows to model events and states in a distributed

system

• Cleanly captures sequentiality, concurrency and

event based asynchronous control

© W. Wahlster


DAML-S composite process – Petri net

Start Finish

Ready

Component

Control

Construct

• Distributed operational semantics :

Done

each transition fires based on local input condition

Transition firing correspond to system evolution

© W. Wahlster


Important Basic Technologies for Web Services

(non-semantic) Web Services are based on

the following technology components

– XML as a universal data description language

– TCP/IP as central internet protocol family

– HTTP, SMTP (Simple Mail Transfer Protocol) as

data transport protocol between applications

– WSDL: Web Services Description Language

– UDDI: Universal Description, Discovery, and

Integration

© W. Wahlster

More magazines by this user
Similar magazines