Tutorial AAAI 2006 Tutorial Forum

231

description

Semantic Web Services. Tutorial AAAI 2006 Tutorial Forum. Liliana Cabral John Domingue. Michael Stollberg Emilia Cimpian. Contents. Morning Session Part I: Introduction to Semantic Web Services Part II: Semantic Web Service Frameworks - PowerPoint PPT Presentation

Transcript of Tutorial AAAI 2006 Tutorial Forum

Page 1: Tutorial AAAI 2006 Tutorial Forum

1

Page 2: Tutorial AAAI 2006 Tutorial Forum

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Tutorial

AAAI 2006 Tutorial Forum

Michael Stollberg

Emilia Cimpian

Liliana Cabral

John Domingue

Semantic Web Services

Page 3: Tutorial AAAI 2006 Tutorial Forum

3

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Contents

Morning Session

• Part I: Introduction to Semantic Web Services

• Part II: Semantic Web Service Frameworks

• Part III: Semantic Techniques for Automated Web Service Usage

• Part IV: Standardization, Market Prospects, Future Issues

Afternoon Session

• Part V: Web Service Execution Environments (WSMX and IRS)

• Part VI: Hands-On Session

Page 4: Tutorial AAAI 2006 Tutorial Forum

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

PART I:

Introduction to Semantic Web Services

Michael Stollberg

Page 5: Tutorial AAAI 2006 Tutorial Forum

5

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Semantics and Services

"Semantic differences remain the primary roadblock to smooth application integration, one which Web Services alone won't over-come. Until someone finds a way for applications to understand each other, the effect of Web services technology will be fairly limited. When I pass customer data across [the Web] in a certain format using a Web Services interface, the receiving program has to know what that format is. You have to agree on what the business objects look like. And no one has come up with a feasible way to work that out yet -- not Oracle, and not its competitors..."

Oracle Chairman and CEO Larry Ellison

Page 6: Tutorial AAAI 2006 Tutorial Forum

6

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Static

– 500 million users

– more than 3 billion pages

WWWURI, HTML, HTTP

The Vision

Page 7: Tutorial AAAI 2006 Tutorial Forum

7

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WWWURI, HTML, HTTP

Deficiencies in Automated Information Processing

• finding

• extraction

• representation

• interpretation

• maintenance

Semantic WebRDF, RDF(S), OWL

Static

The Vision

Page 8: Tutorial AAAI 2006 Tutorial Forum

8

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WWWURI, HTML, HTTP

Enable Computing over the Web

Semantic WebRDF, RDF(S), OWL

Dynamic Web ServicesUDDI, WSDL, SOAP

Static

The Vision

Page 9: Tutorial AAAI 2006 Tutorial Forum

9

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WWWURI, HTML, HTTP

Automated Web Service Usage

Semantic WebRDF, RDF(S), OWL

Dynamic Web ServicesUDDI, WSDL, SOAP

Static

Semantic WebServices

The Vision

Page 10: Tutorial AAAI 2006 Tutorial Forum

10

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

The Semantic Web

• the next generation of the WWW

• information has machine-processable and machine-understandable semantics

• not a separate Web but an augmentation of the current one

• ontologies as base technology

Page 11: Tutorial AAAI 2006 Tutorial Forum

11

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Ontology Definition

formal, explicit specification of a shared conceptualization

commonly accepted understanding

conceptual model of a domain

(ontological theory)

unambiguous terminology definitions

machine-readability with computational

semantics

Page 12: Tutorial AAAI 2006 Tutorial Forum

12

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Ontology ExampleConcept conceptual entity of the domain

Property attribute describing a concept

Relation relationship between concepts or properties

Axiom coherency description between Concepts / Properties / Relations via logical expressions

Instance individual in the domain

Person

Student Professor

Lecture

isA – hierarchy (taxonomy)

name email

studentID

researchfield

topiclecture

no.

attends holds

holds(Professor, Lecture) =>Lecture.topic = Professor.researchField

Ann memberOf student name = Ann Lee studentID = 12345

Page 13: Tutorial AAAI 2006 Tutorial Forum

13

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Ontology TechnologyTo make the Semantic Web working we need:

• Ontology Languages:– expressivity – reasoning support – web compliance

• Ontology Reasoning: – large scale knowledge handling – fault-tolerant – stable & scalable inference machines

• Ontology Management Techniques: – (collaborative) editing and browsing – storage and retrieval – versioning and evolution Support

• Ontology Integration Techniques: – ontology mapping, alignment, merging – semantic interoperability determination

Page 14: Tutorial AAAI 2006 Tutorial Forum

14

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Services

• loosely coupled, reusable components

• encapsulate discrete functionality

• distributed

• programmatically accessible over standard internet protocols

• add new level of functionality on top of the current web

=> base technology for service oriented architectures (SOA) on the Web

Page 15: Tutorial AAAI 2006 Tutorial Forum

15

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

The Promise of Web Services

web-based SOA as new system design paradigm

Page 16: Tutorial AAAI 2006 Tutorial Forum

16

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSDL • Web Service Description Language • W3C effort, WSDL 2 final specification phase

describes interface for consuming a Web Service:- Interface: operations (in- & output) - Access (protocol binding) - Endpoint (location of service)

Page 17: Tutorial AAAI 2006 Tutorial Forum

17

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

SOAP

• Simple Object Access Protocol

• W3C Recommendation

XML data transport: - sender / receiver - protocol binding - communication aspects - content

Page 18: Tutorial AAAI 2006 Tutorial Forum

18

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

UDDI• Universal Description, Discovery, and Integration Protocol • OASIS driven standardization effort

Registry for Web Services: - provider - service information - technical access

Page 19: Tutorial AAAI 2006 Tutorial Forum

19

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Deficiencies of WS Technology

• current technologies allow usage of Web Services• but:

– only syntactical information descriptions – syntactic support for discovery, composition and execution=> Web Service usability, usage, and integration needs to be

inspected manually – no semantically marked up content / services– no support for the Semantic Web

=> current Web Service Technology Stack failed to realize the promise of Web Services

Page 20: Tutorial AAAI 2006 Tutorial Forum

20

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Semantic Web Technology

+

Web Service Technology

Semantic Web Services

=> Semantic Web Services as integrated solution for realizing the vision of the next generation of the Web

• allow machine supported data interpretation• ontologies as data model

automated discovery, selection, composition, and web-based execution of services

Page 21: Tutorial AAAI 2006 Tutorial Forum

21

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Semantic Web Services

• define exhaustive description frameworks for describing Web Services and related aspects (Web Service Description Ontologies)

• support ontologies as underlying data model to allow machine supported Web data interpretation (Semantic Web aspect)

• define semantically driven technologies for automation of the Web Service usage process (Web Service aspect)

Page 22: Tutorial AAAI 2006 Tutorial Forum

22

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Usage Process

1. Deployment create & publish Web service description

2. Discovery determine usable services for a request

3. Composition combine services to achieve a goal

4. Selection choose most appropriate service among the available ones

5. Mediation solve mismatches (data, protocol, process) that hamper interoperation

6. Execution invoke Web services following programmatic conventions

Page 23: Tutorial AAAI 2006 Tutorial Forum

23

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Execution Support

• Monitoring control the execution process

• Compensation provide transactional support and undo or mitigate unwanted effects

• Replacement facilitate the substitution of services by equivalent ones

• Auditing verify that service execution occurred in the expected way

Page 24: Tutorial AAAI 2006 Tutorial Forum

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

PART II:

Semantic Web Service Frameworks

Michael Stollberg

Page 25: Tutorial AAAI 2006 Tutorial Forum

25

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Aims and Requirements • Frameworks for Semantic Web Services need to

– cover all aspects relevant for enabling automated Web service usage

– define conceptual model & axiomatization (= semantics)

– provide formal language for semantic descriptions

• Approaches (W3C Member Submissions)

1. WSMO: Ontologies, Goals, Web Services, Mediators

2. OWL-S WS Description Ontology (Profile, Service Model, Grounding)

3. SWSF Process-based Description Model & Language for WS

4. WSDL-S semantic annotation of WSDL descriptions

Page 26: Tutorial AAAI 2006 Tutorial Forum

26

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Modeling Ontology WSMO

• Comprehensive Framework for SESA Semantically Empowered Service-Oriented Architecture

– top level notions = SESA core elements– conceptual model + axiomatization – ontology & rule language

• International Consortium (mostly European) – started in 2004 – 78 members from 20 organizations – W3C member submission in April 2005

Page 27: Tutorial AAAI 2006 Tutorial Forum

27

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSMO Working Groups

Conceptual Model & Axiomatization for SWS

Formal Language for WSMO

Ontology & Rule Language for the Semantic Web

Execution Environment for WSMO

www.wsmo.org

Page 28: Tutorial AAAI 2006 Tutorial Forum

28

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSMO Top Level Notions

Objectives that a client wants toachieve by using Web Services

Formally specified terminologyof the information used by all other components

Semantic description of Web Services: - Capability (functional)- Interfaces (usage)

Connectors between components with mediation facilities for handling heterogeneities

W3C submission 13 April 2005

Page 29: Tutorial AAAI 2006 Tutorial Forum

29

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Non-Functional Properties

• Dublin Core Metadata Set: – complete item description– used for resource management

• Versioning Information – evolution support

• Quality of Service Information – availability, stability

• Other – owner, financial

relevant, non-functional aspects for WSMO elements

Page 30: Tutorial AAAI 2006 Tutorial Forum

30

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Non-Functional Properties ListDublin Core Metadata

Contributor Coverage Creator Description Format Identifier Language Publisher Relation Rights Source Subject Title Type

Quality of Service Accuracy NetworkRelatedQoSPerformanceReliability RobustnessScalability Security Transactional Trust

Other Financial Owner TypeOfMatch Version

Page 31: Tutorial AAAI 2006 Tutorial Forum

31

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSMO Ontologies

Formally specified terminologyof the information used by all other components

Semantic description of Web Services: - Capability (functional)- Interfaces (usage)

Connectors between components with mediation facilities for handling heterogeneities

Objectives that a client wants toachieve by using Web Services

Page 32: Tutorial AAAI 2006 Tutorial Forum

32

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

• Ontologies are the ‘data model’ throughout WSMO – all WSMO element descriptions rely on ontologies – all data interchanged in Web Service usage are ontologies – Semantic information processing & ontology reasoning

• WSMO Ontology Language WSML– conceptual syntax for describing WSMO elements – logical language for axiomatic expressions (WSML Layering)

• WSMO Ontology Design – Modularization: import / re-using ontologies, modular approach for

ontology design – De-Coupling: heterogeneity handled by OO Mediators

Ontology Usage & Principles

Page 33: Tutorial AAAI 2006 Tutorial Forum

33

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

• Non functional properties (see before)

• Imported Ontologies importing existing ontologies

where no heterogeneities arise • Used mediators OO Mediators (ontology import with

terminology mismatch handling)

Ontology Elements:Concepts set of concepts that belong to the ontology, incl.

Attributes set of attributes that belong to a concept

Relations define interrelations between several concepts

Functions special type of relation (unary range = return value)

Instances set of instances that belong to the represented ontology

Axioms axiomatic expressions in ontology (logical statement)

Ontology Specification

Page 34: Tutorial AAAI 2006 Tutorial Forum

34

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Specification Language: WSML

Page 35: Tutorial AAAI 2006 Tutorial Forum

35

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSML Conceptual SyntaxwsmlVariant _”http://www.wsmo.org/wsml/wsml-syntax/wsml-flight”

namespace _”http://www.example.org/example#”, dc _”http://purl.org/dc/elements/1.1/”

ontology _”http://www.example.org/exampleOntology” concept ID attr1 ofType A [...] goal _”http://www.example.org/exampleGoal” [...]

webService _”http://www.example.org/exampleWS” [...]

Page 36: Tutorial AAAI 2006 Tutorial Forum

36

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSML Logical Expressions• Frame- and FOL based concrete syntax

• Elements:– Function symbols (e.g. f())– Molecules (e.g. Human subClassOf Animal, John memberOf Human,

John[name hasValue “John Smith”]).– Predicates (e.g. distance(?x,?y,?z))– Logical connectives (or, and, not, implies, equivalent,

impliedBy, forall, exists)

• Example:?x memberOf Human equivalent

?x memberOf Animal and ?x memberOf LegalAgent.

Page 37: Tutorial AAAI 2006 Tutorial Forum

37

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSML Logical ExpressionswsmlVariant _”http://www.wsmo.org/wsml/wsml-syntax/wsml-flight”

namespace _”http://www.example.org/example#”, dc _”http://purl.org/dc/elements/1.1/”

ontology _”http://www.example.org/exampleOntology” concept ID attr1 ofType A [...] goal _”http://www.example.org/exampleGoal” [...]

webService _”http://www.example.org/exampleWS” [...]

Page 38: Tutorial AAAI 2006 Tutorial Forum

38

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

OWL and WSML

WSML aims at overcoming deficiencies of OWL

OWL Lite

OWL DL

OWL Full

WSML Flight

WSML DL

WSML Core

WSML Rule

WSML Full

Description Logics

full RDF(S) support

subset

Description Logics

Logic Programming

First Order Logic

Page 39: Tutorial AAAI 2006 Tutorial Forum

39

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSMO Web Services

Formally specified terminologyof the information used by all other components

Semantic description of Web Services: - Capability (functional)- Interfaces (usage)

Connectors between components with mediation facilities for handling heterogeneities

Objectives that a client wants toachieve by using Web Services

Page 40: Tutorial AAAI 2006 Tutorial Forum

40

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSMO Web Service Description

Web ServiceImplementation(not of interest in Web Service Description)

Choreography --- Service Interfaces ---

Capability

functional description

WS

WS

- Advertising of Web Service- Support for WS Discovery

client-service interaction interface for consuming WS - External Visible Behavior- Communication Structure - ‘Grounding’

realization of functionality by aggregating other Web Services - functional decomposition - WS composition

Non-functional Properties

DC + QoS + Version + financial

- complete item description- quality aspects - Web Service Management

WS

Orchestration

Page 41: Tutorial AAAI 2006 Tutorial Forum

41

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Capability Specification• Non functional properties • Imported Ontologies • Used mediators

– OO Mediator: importing ontologies with data level mismatch resolution – WG Mediator: link to a Goal wherefore service is not usable a priori

• Shared Variables: scope is entire capability • Pre-conditions

what a web service expects in order to be able to provide its service. They define conditions over the input.

• Assumptions conditions on the state of the world that has to hold before the Web Service can be executed

• Post-conditions describes the result of the Web Service in relation to the input, and conditions on it

• Effects conditions on the state of the world that hold after execution of

the Web Service (i.e. changes in the state of the world)

Page 42: Tutorial AAAI 2006 Tutorial Forum

42

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Example VTA Web Service• Web service for booking tickets or complete trips• WSMO capability precondition

capability VTAcapability sharedVariables ?item, ?passenger, ?creditCard, ?initialBalance, ?reservationPrice precondition definedBy exists ?reservationRequest (?reservationRequest[

reservationItem hasValue ?item, passenger hasValue ?passenger,payment hasValue ?creditcard]

memberOf tr#reservationRequest and (?item memberOf tr#trip or ?item memberOf tr#ticket) and ?passenger memberOf pr#person and ?creditCard memberOf po#creditCard and (?creditCard[type hasValue po#visa] or ?creditCard[type hasValue po#mastercard]) ) .

Page 43: Tutorial AAAI 2006 Tutorial Forum

43

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Example VTA Web Service• WSMO capability assumption:

– the provided credit card is valid– the balance of the credit card before executing the service is higher than the price of the

reservation (= purchased item) that is retrieved after executing the Web service.

assumption definedBy po#validCreditCard(?creditCard) and ?creditCard[balance hasValue ?initialBalance] and (?initialBalance >= ?reservationPrice) .

Page 44: Tutorial AAAI 2006 Tutorial Forum

44

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Example VTA Web Service

• capability description (post-state)

postcondition definedBy exists ?reservation(?reservation[

reservationItem hasValue ?item,price hasValue ?reservationPrice,customer hasValue ?passenger,payment hasValue ?creditcard]

memberOf tr#reservation and ?reservationPrice memberOf tr#price) .

effect definedBy ?creditCard[po#balance hasValue ?finalBalance] and (?finalBalance = (?initialBalance - ?reservationPrice)).

Page 45: Tutorial AAAI 2006 Tutorial Forum

45

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Choreography & Orchestration• VTA example:

• Choreography = how to interact with the service to consume its functionality

• Orchestration = how service functionality is achieved by aggregating other Web Services

VTAService

Date

Time

Flight, Hotel

Error

Confirmation

Hotel Service

Flight Service

Date, Time

Hotel

Error

Date, Time

Flight

Error

When the service is requested

When the service requests

Page 46: Tutorial AAAI 2006 Tutorial Forum

46

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Choreography Interfaces

• External Visible Behavior

– those aspects of the workflow of a Web Service where Interaction is required

– described by workflow constructs: sequence, split, loop, parallel

• Communication Structure

– messages sent and received

– their order (communicative behavior for service consumption)

• Grounding

– executable communication technology for interaction

– choreography related errors (e.g. input wrong, message timeout, etc.)

• Formal Model

– reasoning on Web Service interfaces (service interoperability)

– semantically enabled mediation on Web Service interfaces

interface for consuming Web Service

Page 47: Tutorial AAAI 2006 Tutorial Forum

47

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Orchestration Aspects

- decomposition of service functionality

- other Web services consumed via their choreography interfaces

interface for interaction with aggregated Web Services

WS

Web S

ervice Business Logic

1

2

3

4

WS

State in Orchestration

Control Flow

Data Flow

Service Interaction

Page 48: Tutorial AAAI 2006 Tutorial Forum

48

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSMO Web Service Interfaces• behavior interfaces of Web services and clients for “peer-2-

peer” interaction

• Choreography and Orchestration as sub-concepts of Service Interface with common description language

• Web Service Interface Description aspects: 1. represent the dynamics of information interchange during service

consumption and interaction 2. support ontologies as the underlying data model 3. appropriate communication technology for information interchange4. sound formal model / semantics of service interface specifications in

order to allow advanced reasoning on them

Page 49: Tutorial AAAI 2006 Tutorial Forum

49

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Ontologized Abstract State Machines

• Vocabulary Ω: – ontology schema(s) used in service interface description – usage for information interchange: in, out, shared, controlled

• States ω(Ω): – a stable status in the information space – defined by attribute values of ontology instances

• Guarded Transition GT(ω): – state transition – general structure: if (condition) then (update)

• condition on current state, update = changes in state transition • all GT(ω) whose condition is fulfilled fire in parallel

Page 50: Tutorial AAAI 2006 Tutorial Forum

50

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Example Hotel Web Service

• choreography interface (state signature) interface htl#BookHotelInterface choreography stateSignature importsOntology htl#simpleHotelOntology in htl#HotelRequest withGrounding _"http://...", htl#HotelConfirm withGrounding _"http://...", htl#HotelCancel withGrounding _"http://..." out htl#HotelNotAvailable withGrounding _"http://...", htl#HotelOffer withGrounding _"http://..." shared htl#Hotel, htl#HotelAvailable, htl#HotelBooked

Page 51: Tutorial AAAI 2006 Tutorial Forum

51

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Example Hotel Web Service• choreography interface (transition rules)

ctl_state htl#start,htl#offerMade,htl#noAvail,htl#confirmed,htl#cancelledtransitionRules if (ctl_state = htl#start) then forall ?req,?date,?loc,?client with ?req[trv#date hasValue ?date, trv#location hasValue ?loc, htl#client hasValue ?client] memberOf htl#HotelRequest do add(htl#offer(?req)[trv#date hasValue ?date, trv#hotelName hasValue ?name, trv#location hasValue ?loc, htl#client hasValue ?client] memberOf htl#HotelOffer) ctl_state := htl#offerMade | add(htl#notAvailable(?req)[trv#date hasValue ?date, trv#location hasValue ?loc] memberOf htl#HotelNotAvailable) ctl_state := htl#noAvail endForall endIf

Page 52: Tutorial AAAI 2006 Tutorial Forum

52

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSMO Goals

Formally specified terminologyof the information used by all other components

Semantic description of Web Services: - Capability (functional)- Interfaces (usage)

Connectors between components with mediation facilities for handling heterogeneities

Objectives that a client wants toachieve by using Web Services

Page 53: Tutorial AAAI 2006 Tutorial Forum

53

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goals

• Goal-driven Approach, derived from AI rational agent approach- ontological de-coupling of Requester and Provider

- ‘intelligent’ mechanisms detect suitable services for solving the Goal

- service re-use & knowledge-level client side support

• Usage of Goals within Semantic Web Services– A Requester (human or machine) defines a Goal to be resolved

independently (i.e. subjectively) on the knowledge level

– SWS techniques / systems automatically determine Web Services to be used for resolving the Goal (discovery, composition, execution, etc.)

– Goal Resolution Management is realized in implementations

client objective specification along with all information needed for automated resolution

Page 54: Tutorial AAAI 2006 Tutorial Forum

54

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal-driven Architecture

ClientGoal

- objective (desired final state) - input for service usage- goal resolution constraints, preferences, and policies

Goal Resolution Plan- goal resolution algorithm - decomposition (optional)- service usage / invocation

corresponds to /creation of

defines

(Web) ServiceImplementation

(not of interest here)

functionalb

ehavio

ral

service detection & composition

Client-Side Service-Side

Domain Knowledge Ontology OntologyOntology Ontology

service usage

Page 55: Tutorial AAAI 2006 Tutorial Forum

55

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Model (WSMO 2.0)

importsOntology: ontologyprecondition: axiomeffect: axiomresolutionConstraints: axiom

Abstract Goal

nonFunctionalProperties: nFPinput: axiomoutput: axiomclientInterface: interface

Atomic Goal

nonFunctionalProperties: nFPinput: axiomoutput: axiomsubGoal: atomic goal, composite goalcontrolDataFlow: controlDataFlow

Composite Goal

template: atomic goal, composite goalinput: instance

: Goal Instance

preconditioninstantiation

Page 56: Tutorial AAAI 2006 Tutorial Forum

56

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSMO Mediators

Formally specified terminologyof the information used by all other components

Semantic description of Web Services: - Capability (functional)- Interfaces (usage)

Connectors between components with mediation facilities for handling heterogeneities

Objectives that a client wants toachieve by using Web Services

Page 57: Tutorial AAAI 2006 Tutorial Forum

57

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Mediation

• Heterogeneity … – mismatches on structural / semantic / conceptual / level – occur between different components that shall interoperate– especially in distributed & open environments like the Internet

• Concept of Mediation (Wiederhold, 94): – Mediators as components that resolve mismatches– declarative approach:

• semantic description of resources • ‘intelligent’ mechanisms that resolve mismatches independent of content

– mediation cannot be fully automated (integration decision)

• Levels of Mediation within Semantic Web Services: (1) Data Level: heterogeneous Data Sources (2) Functional Level: heterogeneous Functionalities (3) Protocol & Process Level: heterogeneous Communication

Processes

Page 58: Tutorial AAAI 2006 Tutorial Forum

58

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSMO Mediators Overview

OO MediatorO O / G / WS / M

1 .. n 1 GG MediatorG G1 .. n 1 ..n

WG MediatorG xor WS WS xor G1 .. n 1 ..n

Process Level(Communication)

WW MediatorWS WS1 1 ..n

terminology representation & protocol

Δ-Relation Mediation

data level mediation

Δ-Relation Mediation

Process Level (Communication)

Δ-Relation Mediation

technique used imports / reuses correlationLegend

Process Level (Cooperation)

Page 59: Tutorial AAAI 2006 Tutorial Forum

59

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Mediator Usage

Page 60: Tutorial AAAI 2006 Tutorial Forum

60

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Other Approaches

• WSMO is not the only proposal for an SWS Framework …

OWL-S: • upper ontology for semantically describing Web services • chronologically first, consortium mainly USA

SWSF: • process model for Web Services • result of SWSI (international working group)

WSDL-S: • semantic annotation of WSDL descriptions • LSDIS Lap (Amit Seth Group) and IBM

• Discussed here: – Central Features – Commonalities and Differences

Page 61: Tutorial AAAI 2006 Tutorial Forum

61

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

OWL-S Upper Ontology for Web Service Descriptions

• capability description (IOPE) • non-functional properties• usage: (1) WS advertisement,

(2) WS request formulation

• specification of service access information• builds upon WSDL to define message

structure and physical binding layer• specifies communication protocols &

language, transport mechanisms, etc.

• describes internal processes of the service• defines service interaction protocol for (a) consumption

and (b) WS interaction• process types: simple, atomic, composite • specifies: (1) abstract messages (ontological content),

(2) control flow constructs, (3) perform construct

Page 62: Tutorial AAAI 2006 Tutorial Forum

62

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

OWL-S and WSMO

• OWL-S = ontology and language to describe Web services• WSMO = ontology and language for core elements of

Semantic Web Service systems

OWL-S Profile ≈ WSMO capability + non-functional properties

OWL-S Grounding current WSMO Grounding

OWL-S Process Model WSMO Service Interfaces

Main Description Elements Correlation:

• Goals and Mediators not in scope • deficiencies in Service Model (process description model / language

not adequate) => SWSF

Page 63: Tutorial AAAI 2006 Tutorial Forum

63

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

SWSF

• Process Model for Web Services (FLOWS) • although self-contained, commonly understood as

extension of OWL-S / refinement of Service Model

Page 64: Tutorial AAAI 2006 Tutorial Forum

64

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSDL-S Semantic annotation of WSDL descriptions

1. annotate XML Schema with domain ontology

2. pre-conditions & effects for operations

3. WS categorization by ontology-based keywords

<xs:element name="processPOResponse“ type="xs:string wssem:modelReference="POOntology#OrderConfirmation"/>

<interface name="PurchaseOrder"> <operation name="processPurchaseOrder” pattern=wsdl:in-out> <input messageLabel=”processPORequest“ element="tns:processPORequest"/> <output messageLabel="processPOResponse“ element="processPOResponse"/> <wssem:precondition name=“AccExistsPrecond“ wssem:modelReference=“onto#AccountExists"> <wssem:effect name="ItemReservedEffect“ wssem:modelReference=“onto#ItemReserved"/> </operation></interface>

<wssem:category name= "Electronics" taxonomyURI="http://www.naics.com/" taxonomyCode="443112" />

Page 65: Tutorial AAAI 2006 Tutorial Forum

65

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Commonalities & Differences

• similar ontological structure for WS descriptions – Functional Descriptions (preconditions & effects) – Behavioral Descriptions (consumption and interaction)– Grounding to WSDL (automated execution)

• central conceptual differences – formal models for capabilities – interfaces vs. business process – behavioral aspects:

state-based process models operation-level capabilities

• WSMO defines “core elements for SESA” while all others are only concerned with describing Web Services

Page 66: Tutorial AAAI 2006 Tutorial Forum

66

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Summary

Page 67: Tutorial AAAI 2006 Tutorial Forum

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

PART III:

Semantic Techniques for Automated Web Service Usage

Michael Stollberg

Page 68: Tutorial AAAI 2006 Tutorial Forum

68

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

SWS Challenges

• Web services as loosely coupled components that shall interoperate dynamically and automatically

• Techniques required for:– Discovery

• how are Web services found and selected?– Composition

• how to aggregate Web Services into a complex functionality?– Conversation

• how to ensure automated interaction of Web Services? – Invocation

• how to access and invoke Semantic Web Services?– Mediation

• how are data and protocol mismatches resolved?• Systems for automated Web service usage :

– resource editing and management – functional components – APIs, execution control, integrated & flexible architectures

Page 69: Tutorial AAAI 2006 Tutorial Forum

69

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Usage Process Request

Discoverer

CommunicationConformance

Data Mediator

ProcessMediator

Composer

Executor

if: directly usable

if: compositionneeded

uses

uses

matchmaking R with all WS

composition (executable)

uses

uses

submission

if: compatibleelse: try other WS

if: successfulelse: try other WS

if: executionerror

uses

information lookup for particular service

else: try other WS

Service Repository

Page 70: Tutorial AAAI 2006 Tutorial Forum

70

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Discoverydetect directly usable Web services

out of available ones • Discovery Techniques

Key Word Matching match natural language key words in resource descriptions

Controlled Vocabularyontology-based key word matching

Semantic Matchmaking … what Semantic Web Services aim at

• Selection: choose most appropriate Web Service with respect to: – Quality of Service (security, robustness, availability) – context (regional, business / social communities) – preferences and policies – financial– …

Ease of provision

Attainable

Accuracy

Page 71: Tutorial AAAI 2006 Tutorial Forum

71

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Matchmaking Notions & Intentions

Exact Match: G, WS, O, M x. (G(x) <=> WS(x) )

PlugIn Match: G, WS, O, M x. (G(x) => WS(x) )

Subsumption Match: G, WS, O, M x. (G(x) <= WS(x) )

Intersection Match: G, WS, O, M x. (G(x) WS(x) )

Non Match: G, WS, O, M ¬x. (G(x) WS(x) )

= G = WS

X

Keller, U.; Lara, R.; Polleres, A. (Eds): WSMO Web Service Discovery. WSML Working Draft D5.1, 12 Nov 2004.

Page 72: Tutorial AAAI 2006 Tutorial Forum

72

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Discovery Procedure

• goal-driven reasoning • remarks:

– precondition & assumption / postcondition & effect semantically the same – only situation that guarantees goal resolution by Web service usage is

subsume@pre(G,WS) and plugin@eff(G,WS)

Goal Capability Web Service Capability

valid post-state?

valid pre-state?

abort

yes

no

abort

yesno

Match

Effect

Postcondition

Effect

Postconditionplugin

exact

Assumption

Precondition

Assumption

Preconditionsubsume

intersect

Page 73: Tutorial AAAI 2006 Tutorial Forum

73

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Compositioncombine several Web services

for solving a request • need for composition

if no directly usable Web service exists … a) a WS can satisfy goal, but goal cannot invoke WS b) several WS need to be combined in order to

achieve goal

• Types of Composition Techniques: functional = suitable composition wrt functionalities behavioral = suitable composition wrt behavioral

interfaces need to be integrated: 1. skeleton by functional composition 2. refinement + executable code by behavioral

composition

Procedure:

directly usable WS(discovery)?

composition (functional)

yesno

abort

b)a) no

composition (behavioral)

executable composition

composition skeleton

yesabort

no

Page 74: Tutorial AAAI 2006 Tutorial Forum

74

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Functional Compositionfind suitable sequence of Web services

for solving a goal with respect to functionality

• mainly AI Planning on functional descriptions

• main technique: AI Planning – set of Web services with control & data flow – composition skeleton with all needed Web services

backward chaining(goal-driven reasoning)

Page 75: Tutorial AAAI 2006 Tutorial Forum

76

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Behavioral Composition

• does there exists an executable sequence for interaction wrt communication behavior of composed Web services?

– analyze behavioral interfaces – determine existence of valid choreography

“Choreography Discovery”

• techniques:– model-checking (for state-based descriptions) – conformance testing (for process-based)

• exponential time

Page 76: Tutorial AAAI 2006 Tutorial Forum

77

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Choreography Discovery

Client Interface1) send request2) select from offer3) receive confirmation

Goal

defines

VTA

VTA WS ‘Trip Booking’

Capability

Interface (Chor.)1) get request2) provide offer 3) receive selection4) send confirmation

Interface (Orch.)1) flight request2) hotel request 3) book flight4) book hotel

Flight WS

Capability

Interface (Chor.)1) get request2) provide offer 3) receive selection4) send confirmation

Orch. ..

Hotel WS

Capability

Interface (Chor.)1) get request2) provide offer 3) receive selection4) send confirmation

Orch. ..

provides

Requested Capabilitybook flight & hotel

- both choreography interfaces given (“static”)- correct & complete consumption of VTA => existence of a valid choreography?

- VTA Orchestration & Chor. Interfaces of aggregated WS given=> existence of a valid choreography between VTA and each aggregated WS?

- Choreography Discovery as a central reasoning task in Service Interfaces- ‘choreographies’ do not have to be described, only existence determination

Page 77: Tutorial AAAI 2006 Tutorial Forum

78

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

internal business logic of

Web Service(not of interest in Service

Interface Description)

Choreography Discovery

internal business logic of

Web Service(not of interest in Service

Interface Description)

• a valid choreography exists if: 1) Signature Compatibility

• homogeneous ontologies • compatible in- and outputs

2) Behavior Compatibility• start state for interaction • a termination state can be reached without any additional input

Page 78: Tutorial AAAI 2006 Tutorial Forum

79

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Behavior Compatibility Example

ΩG(ωØ) = Ø

ΩG(ω1) = request(out)

ΩG(ω2a) = offer(in), changeReq(out)

if Ø then request ΩVTA(ωØ) = Ø

ΩVTA(ω1) = request(in), offer(out)

if request then offer

if cnd1(offer) then changeReq

ΩG(ω2b) = offer(in), order(out)

if cnd2(offer) then order

ΩVTA(ω2a) = changeReq(in),offer(out)

if changeReq then offer

ΩVTA(ω2b) = order(in), conf(out)

if order then conf

ΩG(ω3) = offer(in), conf(in)

if conf then Ø

Goal Behavior Interface VTA Behavior Interface

Start

ω2(C)

ω1(C)

ω3(C)

ω4(C)

Termination

valid choreography existent

Page 79: Tutorial AAAI 2006 Tutorial Forum

80

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Orchestration Validation Example

if Ø then (FWS, flightRequest) if request then offer

if order then confirmation

VTA Web Service Orchestration

Start (VTA, FWS)

Termination (VTA, FWS)

if flightOffer then (HWS, hotelRequest)

if selection then (FWS, flightBookingOrder)

if selection, flightBookingConf then (HWS, hotelBookingOrder)

Flight WS Behavior Interface

if request then offer

if order then confirmation

Hotel WS Behavior InterfaceStart

(VTA, HWS)

Termination (VTA, HWS)

Orchestration is valid if valid choreography exists for interactions between the orchestrating and each aggregated Web Service, done by choreography discovery

Page 80: Tutorial AAAI 2006 Tutorial Forum

81

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Mediation• Heterogeneity as inherent characteristic of (Semantic) Web:

– heterogeneous terminology– heterogeneous languages / formalisms – heterogeneous functionalities– heterogeneous communication protocols and business processes

• WSMO identifies Mediators as top level element, i.e. central aspect of Semantic Web Services – levels of mediation: data, functional, protocol, processes – WSMO Mediator types

• Approach: declarative, generic mismatch resolution – classification of possible & resolvable mismatches – mediation definition language & mediation patterns– execution environment for mediation definitions

Page 81: Tutorial AAAI 2006 Tutorial Forum

82

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Data Mediation Techniques

• Ontology Integration Techniques

• semi-automatic– human intervention needed for “integration decision – graphical support for ontology mapping as central

technique

Ontology Alignment Ontology Mapping

Mapping Rules

Ontology Merging

Ontology A is made

compatible to ontology B

Page 82: Tutorial AAAI 2006 Tutorial Forum

83

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Functional Level Mediation• requested and provided functionalities do not match precisely• delta-relations = relation & difference of functional descriptions

• Beneficial Usage – goal refinement – goal adjustment – grouping functionalities (goals and Web services) for efficient search

Page 83: Tutorial AAAI 2006 Tutorial Forum

84

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Protocol Level Mediation

• interoperability problems due to – different representation formalisms – different technical communication protocols

• adaptors for transformation – syntactic transformation – mappings between language constructs

• usage: – interoperability between systems with different

languages (e.g. OWL – WSML, etc.) – grounding for Semantic Web services (lifting &

lowering between syntatic and semantic level)

Page 84: Tutorial AAAI 2006 Tutorial Forum

85

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Process Level Mediation

Business Partner1

Business Partner2

A

B

C

D

E

E

B

C, D

A

• not a priori compatible behavior interfaces for communication & information interchange

• partially resolvable by “process mediation patterns”

Page 85: Tutorial AAAI 2006 Tutorial Forum

86

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Summary

• techniques for automated Web service usage apply results from various AI disciplines

• Knowledge Representation• Formal Software Reuse • AI Planning • Business Process & Workflow Engineering • Data Integration• Web technologies• …

• Status of Development – first set of solutions with converging techniques – integration & automated combination as next step

Page 86: Tutorial AAAI 2006 Tutorial Forum

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

PART IV:

Standardization Market Prospect

Future Issues

Michael Stollberg

Page 87: Tutorial AAAI 2006 Tutorial Forum

88

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

History I

• late 90s: TBL wants the Internet to develop further –HTML is unstructured => not processable by machines –New kinds of Web Technologies needed => “turn the internet from a world-wide information repository for human

consumption into a device of world-wide distributed computation” (Fensel & Bussler, WSMF)

• American Scientific Article “The Semantic Web”–Pete & Lucy: a future example –Core Technologies:

• Ontologies: unambiguous terminology definition in machine-readable format (“Semantics”)

• Web Services: functionality evocable over the Internet, re-usable and combinable distributed software components

• Agents: electronic representatives that perform tasks on behalf of his owner

• Rising attention in Research & Industry ..

Page 88: Tutorial AAAI 2006 Tutorial Forum

89

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

History II • 1999: first W3C Recommendations

– Specifications of XML Technologies (XSL, XTL,…) – Semantic Web Layer Cake – Languages: XML, RDF

• 2000 – 2001: first R&D-activities – 1. Web Service Technology Specifications: SOAP, WSDL, UDDI – related research areas become interested (AI / Knowledge Engineering; distributed

computing, etc.), first projects: DAML (US), OnToKnowledge, etc. – “1st Semantic Web Working Symposium”, Stanford (USA), ca. 100 participants

• 2002 – 2003: research & industry sets off – SDK-Cluster (Europe), DAML efforts (USA)– initial research results, still very chaotic / without a “framework”– industrial efforts on Web services – ISWC 02 / 03: double number of participants each year

• 2004 ff: the hot phase– W3C recommendations (OWL, XML + RDF revisions, others)– first set of research & development results – rising industrial & commercial attention

Page 89: Tutorial AAAI 2006 Tutorial Forum

90

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Standardization Efforts W3C• 1st set of recommendations in 1999 / 2000, currently revised

• Semantic Web Services– Member Submissions: OWL-S, WSMO, SWSF, WSDL-S – Working Groups:

• Semantic Web Service Interest Group • Semantic Annotations for WSDL Group

=> standardization need acknowledged, but no agreement yet on what & how

Page 90: Tutorial AAAI 2006 Tutorial Forum

91

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Layer Cake - RevisedW3C Semantic Web Language Layer Cake

revised version, Tim-Berners-Lee 2005

Page 91: Tutorial AAAI 2006 Tutorial Forum

92

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Industrial Efforts

• Semantics & SOA Developments Microsoft Longhorn / Vista / Biztalk Server 2006 / … IBM IBM SOA Foundation SAP Net Weaver Oracle Oracle SOA Suite Sun SOA Initiative (future developments)

• OASIS – non-profit, joint industrial for e-business technology

development & standardization – committees for Web Services & SOA (ebSOA, FWSI,

SEE, etc.)

Page 92: Tutorial AAAI 2006 Tutorial Forum

93

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Market Prospects

• Application Areas – Knowledge Management – Enterprise Application Integration – E-Commerce (B2C and B2B) – E-Government – … many more

SESA = enabling technology for the 21st century • Market Prospects:

– 2006 / 07: Technology Development & Dissemination – 2008: Break Even Point / ROI – 2010: Commercialization (40 – 60 billion dollar

market)

Page 93: Tutorial AAAI 2006 Tutorial Forum

94

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Market Development (Gartner)

Page 94: Tutorial AAAI 2006 Tutorial Forum

95

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Estimated Market in 2010

$ 52.4 billion dollar market

Page 95: Tutorial AAAI 2006 Tutorial Forum

96

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Future Items

1. proof of concept & applicability – current works developed & tested in mainly academic settings– which approaches techniques are

• adequate (functional, scalable, etc.) • realizable

large scale real world use cases needed

2. Ontology & WS description management – Ontologies as data model

=> the (Web) world needs to be ontologized – Web service descriptions must be correct & maintained

• complicated task • can not be automated (knowledge level lifting)

qualified Knowledge Engineers needed

Page 96: Tutorial AAAI 2006 Tutorial Forum

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

PART IV:

The Web Service Execution Environment

WSMX

Emilia Cimpian

Page 97: Tutorial AAAI 2006 Tutorial Forum

98

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSMX Introduction

• Software framework for runtime binding of service requesters and service providers

• WSMX interprets service requester’s goal to– discover matching services– select (if desired) the service that best fits– provide mediation (if required)– make the service invocation

• Is based on the conceptual model provided by WSMO• Has a formal execution semantics• Service Oriented and event-based architecture

– based on microkernel design using technologies as J2EE, Hibernate, Spring, JMX, etc.

Page 98: Tutorial AAAI 2006 Tutorial Forum

99

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSMX Motivation• Middleware ‘glue’ for Semantic Web Services

– Allow service providers focus on their business

• Reference implementation for WSMO– Eat our own cake

• Environment for goal based discovery and invocation– Run-time binding of service requester and provider

• Provide a flexible Service Oriented Architecture– Add, update, remove components at run-time as needed

• Keep open-source to encourage participation– Developers are free to use in their own code

• Define formal execution semantics– Unambiguous model of system behaviour

Page 99: Tutorial AAAI 2006 Tutorial Forum

100

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSMX Usage Scenario

Page 100: Tutorial AAAI 2006 Tutorial Forum

101

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSMX Usage Scenario - P2P

• A P2P network of WSMX ‘nodes’• Each WSMX node described as a SWS• Communication via WSML over SOAP• Distributed discovery – first aim• Longer term aim - distributed execution

environment

Page 101: Tutorial AAAI 2006 Tutorial Forum

102

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSMX Usage Scenario - P2P

Peer

Internet

Message

Message

Internet

Message

MessagePeer

WSMX SWSARCHITECTURE

Page 102: Tutorial AAAI 2006 Tutorial Forum

103

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSMX Usage Scenario - P2P

Exe

cu

tio

n M

an

ag

em

en

t

Ve

rtic

al S

erv

ice

s e

.g.

Se

cu

rity

Storage Reasoning

Communication (external)

Fault Handling Monitoring

Data MediationProcess

Mediation

Discovery Adaptation Composition Choreography

Application Services Layer

Problem Solving Layer

Base Services Layer

End User Tools Developer Tools

Internet

Message

MessagePeerPeer

Internet

Message

Message

Page 103: Tutorial AAAI 2006 Tutorial Forum

104

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Design Principles

• Strong Decoupling & Strong Mediation– autonomous components with mediators for interoperability

• Interface vs. Implementation– distinguish interface (= description) from implementation

(=program)

• Peer to Peer– interaction between equal partners (in terms of control)

WSMO Design Principles == WSMX Design Principles

== SOA Design Principles

Page 104: Tutorial AAAI 2006 Tutorial Forum

105

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Benefits of SOA

• Better reuse– Build new functionality (new execution semantics) on top of

existing Business Services

• Well defined interfaces – Manage changes without affecting the Core System

• Easier Maintainability– Changes/Versions are not all-or-nothing

• Better Flexibility

Page 105: Tutorial AAAI 2006 Tutorial Forum

106

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Service Oriented State

• The interface to the service is implementation-independent

• The service can be dynamically invoked – Runtime binding

• The service is self-contained– Maintains its own state

Page 106: Tutorial AAAI 2006 Tutorial Forum

107

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Messaging

• Messaging is peer-to-peer facility• Distributed communication

– Loosely coupled

• Sender does not need to know receiver (and vice versa)• Asynchronous mechanism to communicate between

software applications

Page 107: Tutorial AAAI 2006 Tutorial Forum

108

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSMX Architecture

MessagingMessaging

Application Management

Application Management

Service Oriented

Architectures

Service Oriented

Architectures

WSMX

System Interface

WSMX ManagerWSMX Manager Core

Administration Framework Interface

Data and C

omm

unication Protocols Adapters

Adapter 1Adapter 2

Adapter n... Grounding

CM Wrapper

CommunicationManager

Interface

Invoker Receiver

RMWrapper

Resource Manager

Interface

ParserWrapper

Parser

Interface

DiscoveryWrapper

Discovery

Interface

SelectorWrapper

Selector

Interface

DMWrapper

DataMediator

Interface

PMWrapper

ProcessMediator

Interface

ChoreographyWrapper

Choreography

Interface

Reasoner Interface

Reasoner

Resource Manager Interface

WSMO Objects Non WSMO Objects

WSMT – Web Services Modeling Toolkit

Service Providers

Web Service 1

Web Service 2

Web Service p

...

Service Requesters

Back-End Application

Agent acting on behalf of service

requester

WSML EditorWSMX Monitor Ontology VisualizerWSMX Managment Mapping Tools

ComponentWrapper

New Component

Interface

Page 108: Tutorial AAAI 2006 Tutorial Forum

109

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Selected Components

• Adapters• Parser• Invoker• Choreography • Process Mediator• Discovery• Data Mediator• Resource Manager• Reasoning

Exe

cutio

n M

an

ag

em

en

t

Ve

rtic

al S

erv

ice

s e

.g.

Se

curi

ty

Storage Reasoning

Communication (external)

Fault Handling Monitoring

Data MediationProcess

Mediation

Discovery Adaptation Composition Choreography

Application Services Layer

Problem Solving Layer

Base Services Layer

End User Tools Developer Tools

Internet

Message

MessagePeerPeer

Internet

Message

Message

Page 109: Tutorial AAAI 2006 Tutorial Forum

110

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Adapters

• To overcome data representation mismatches on the communication layer

• Transforms the format of a received message into WSML compliant format

• Based on mapping rules

Page 110: Tutorial AAAI 2006 Tutorial Forum

111

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Parser

• WSML compliant parser– Code handed over to wsmo4j initiative

http://wsmo4j.sourceforge.net/

• Validates WSML description files• Compiles WSML description into internal memory

model• Stores WSML description persistently

(using Resource Manager)

Page 111: Tutorial AAAI 2006 Tutorial Forum

112

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Communication Mgr – Invoker

• WSMX uses – The SOAP implementation from Apache AXIS

– The Apache Web Service Invocation Framework (WSIF)

• WSMO service descriptions are grounded to WSDL• Both RPC and Document style invocations possible• Input parameters for the Web Services are translated from

WSML to XML using an additional XML Converter component. Network

InvokerApache

AXISXML

ConverterMediatedWSML Data

XML WebService

SOAP

Page 112: Tutorial AAAI 2006 Tutorial Forum

113

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Choreography

• Requester and provider have their own observable communication patterns– Choreography part of WSMO

• Choreography instances are loaded for the requester and provider– Both requester and provider have their own WSMO descriptions

• Choreography Engine– Evaluation of transition rules - prepares the available data

– Sends data to the Process Mediator - filters, changes or replaces data

– Receives data from PM and forwards it to the Communication manager - data to be finally sent to the communication partner

Page 113: Tutorial AAAI 2006 Tutorial Forum

114

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Process Mediator

• Requester and provider have their own communication patterns

• Only if the two match precisely, a direct communication may take place

• At design time equivalences between the choreographies’ conceptual descriptions is determined and stored as set of rules

• The Process Mediator provides the means for runtime analyses of two choreography instances and uses mediators to compensate possible mismatches

Page 114: Tutorial AAAI 2006 Tutorial Forum

115

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Process Mediator – Addressed mismatches

Business Partner1Business Partner1

Business Partner2Business A

B B

Business Partner1Business Partner1

Business Partner2Business Partner2

A B

B A

Business Partner1Business Partner1

Business Partner2Business Partner2

A and BA

B

Business Partner1Business Partner1

Business Partner2Business Partner2

A

BA and B

PM

PM

PM

PM

Business Partner1Business Partner1

Business Partner2Business Partner2

A

AckA

APM

Page 115: Tutorial AAAI 2006 Tutorial Forum

116

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Process Mediator – Unsolvable Mismatches

Business Partner1Business Partner1

Business Partner2Business

A

Business Partner1Business Partner1

Business Partner2Business Partner2

A B

B A

Business Partner1Business Partner1

Business Partner2Business Partner2

PM

PM

PM

A

Ack

?

?

?

Page 116: Tutorial AAAI 2006 Tutorial Forum

117

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Discovery

• Responsible for finding appropriate Web Services to achieve a goal (discovery)

• Current discovery component is based on simple matching– Keywords identified in the NFP of the goal– Matched against NFPs of the published WSs – Variable set of NFPs to be considered for this process– To be extended

• Values in NFPs might be concepts from ontologies

• More elaborate string matching algorithms

• Advanced semantic discovery in prototypical stage

Page 117: Tutorial AAAI 2006 Tutorial Forum

118

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Discovery

Resource Repository (UDDI or other)

Keyword-/ Classification-based Filtering

Controlled Vocabulary Filtering

Semantic Matchmaking

usable Web Service

efficient narrowing of search space (relevant services to be inspected)

retrieve ServiceDescriptions

invoke Web Service

Page 118: Tutorial AAAI 2006 Tutorial Forum

119

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Data Mediator

• Ontology-to-ontology mediation• A set of mapping rules are defined and then executed• Initially rules are defined semi-automatic• Create for each source instance the target instance(s)

Target Ontology

Source Ontology

Storage

Mappings

Mappings

Source Instance

Target Instance

Run-time ComponentDesign-time Component

Data Mediation

Page 119: Tutorial AAAI 2006 Tutorial Forum

120

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Design-time

• Inputs– Source Ontology and Target Ontology

• Features– Graphical interface– Set of mechanism towards semi-automatic creation of mappings– Capturing the semantic relationships identified in the process– Storing these mappings in a persistent storage

• Output– Abstract representation of the mappings

Page 120: Tutorial AAAI 2006 Tutorial Forum

121

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Design-time Phase

Page 121: Tutorial AAAI 2006 Tutorial Forum

122

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Design-time Phase - Approach, Decomposition and Mapping Context

• Bottom-up -> training set• Top-down -> decomposition, context

Page 122: Tutorial AAAI 2006 Tutorial Forum

123

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Ontology Mapping Language• Language Neutral Mapping Language

– mapping definitions on meta-layer (i.e. on generic ontological constructs) – independent of ontology specification language – “Grounding” to specific languages for execution (WSML, OWL, F-Logic)

• Main Features: – Mapping Document (sources, mappings, mediation service) – direction of mapping (uni- / bidirectional) – conditions / logical expressions for data type mismatch handling, restriction of

mapping validity, and complex mapping definitions – mapping constructs (ex: classMapping, classAtrributeMapping,

instanceMapping)– mapping operators

Page 123: Tutorial AAAI 2006 Tutorial Forum

124

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Ontology O2

Mapping Language Example

Human - name

Adult Child

Person- name - age

michael memberOf Person- name = Michael Stollberg- age = 28

classMapping(unidirectional o2:Person o1.Adult attributeValueCondition(o2.Person.age >= 18))

this allows to transform the instance ‘michael’ of concept person in ontology O2 into a valid instance of concept ‘adult’ in ontology O1

Ontology O1

Page 124: Tutorial AAAI 2006 Tutorial Forum

125

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Run-Time Data Mediator

• Main Mediation Scenario: Instance Transformation

• Inputs– Incoming data

• Source ontology instances

• Features– Completely automatic process– Grounding of the abstract mappings to a concrete language

• WSML

– Uses a reasoner to evaluate the mapping rules• MINS

• Outputs– Mediated data

• Target ontology instances

Data Mediation

Page 125: Tutorial AAAI 2006 Tutorial Forum

126

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Resource Manager

• Stores internal memory model to a data store• Decouples storage mechanism from the rest of

WSMX• Data model is compliant to WSMO API• Independent of any specific data store

implementation i.e. database and storage mechanism

Page 126: Tutorial AAAI 2006 Tutorial Forum

127

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Reasoner

• Mins – Datalog + Negation + Function

Symbols Reasoner Engine– Features

• Built-in predicates • Function symbols • Stratified negation

• WSMO4J– validation, serialization and parsing

• WSML2Reasoner– Reasoning API

• mapping fromWSML to a vendor-neutral rule representation

– Contains: • Common API for WSML Reasoners• Transformations of WSML to tool-specific input data (query

answering or instance retrieval)

• WSML-DL-Reasoner– Features:

• T-Box reasoning (provided by FaCT++) • Querying for all concepts • Querying for the equivalents, for the children, for the

descendants, for the parents and for all ancestors of a given concept

• Testing the satisfiability of a given concept with respect to the knowledge base

• Subsumption test of two concepts with respect to the knowledge base

• Wrapper of WSML-DL to the XML syntax of DL used in the DIG interface

Page 127: Tutorial AAAI 2006 Tutorial Forum

128

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

System Entry Points

• achieveGoal (WSMLDocument): Context

• getWebServices (WSMLDocument): Context

• invokeWebService(WSMLDocument, Context): Context

Page 128: Tutorial AAAI 2006 Tutorial Forum

129

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Define “Business” Process

Page 129: Tutorial AAAI 2006 Tutorial Forum

130

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Generate Wrappers for Components

Discovery Wrapper

ChoreographyWrapper

Communication Manager Wrapper

Registry of known components

Page 130: Tutorial AAAI 2006 Tutorial Forum

131

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Context DataPROCESS CONTEXT

Discovery Wrapper

Data Mediator ChoreographyWrapper

Communication Manager Wrapper

Registry of known components

Choreography objectMediated objects ,

Web Services entities

ErrorsExceptions

Page 131: Tutorial AAAI 2006 Tutorial Forum

132

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Event-based Implementation

Page 132: Tutorial AAAI 2006 Tutorial Forum

133

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Conclusions

• Conceptual model is WSMO

• End to end functionality for executing SWS

• Has a formal execution semantics

• Real implementation

• Open source code base at SourceForge

http://sourceforge.net/projects/wsmx/

• Event-driven component architecture

Page 133: Tutorial AAAI 2006 Tutorial Forum

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

PART IV:

The Internet Reasoning Service - IRS IIIand

WSMO Studio

John Domingue

Page 134: Tutorial AAAI 2006 Tutorial Forum

135

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

The Internet Reasoning Service is an infrastructure for publishing, locating, executing and composing Semantic Web Services

Page 135: Tutorial AAAI 2006 Tutorial Forum

136

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Design Principles

• Ontological separation of User and Web Service Contexts

• Capability Based Invocation • Ease of Use• One Click Publishing• Agnostic to Service Implementation Platform• Connected to External Environment• Open• Complete Descriptions• Inspectable• Interoperable with SWS Frameworks and Platforms

Page 136: Tutorial AAAI 2006 Tutorial Forum

137

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Features of IRS-III (1/2)

• Based on Soap messaging standard

• Provides Java API for client applications

• Provides built-in brokering and service discovery support

• Provides capability-centred service invocation

Page 137: Tutorial AAAI 2006 Tutorial Forum

138

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Features of IRS-III (2/2)• Publishing support for variety of platforms

– Java, Lisp, Web Applications, Java Web Services

• Enables publication of ‘standard code’ – Provides clever wrappers– One-click publishing of web services

• Integrated with standard Web Services world– Semantic web service to IRS– ‘Ordinary’ web service

Page 138: Tutorial AAAI 2006 Tutorial Forum

139

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

IRS-3 Server

Domain Models

Web Service Specifications+ Registry of Implementors

Goal Specifications+ SOAP Binding

IRS Publisher

S O

A P

IRS Client

SOAP

IRS Publisher

IRS Publisher

IRS Publisher

Lisp

Java

Java WS

IRS-III Framework

Page 139: Tutorial AAAI 2006 Tutorial Forum

140

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

IRS-III Architecture

LispWeb Server

IRS-III Server

WS Publisher Registry

OCML

WSMO Library

Browser

Invocation Client

Publishing Clients

SOAP Handler

SOAP

Publishing Platforms

Web Service

Java Code

Web Application

SOAPBrowserHandler

PublisherHandler

InvocationHandler

Java

APIWSMX

WSMOStudio

Page 140: Tutorial AAAI 2006 Tutorial Forum

141

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Publishing Platform Architecture

IRS-III Publishing PlatformHTTP Server

SOAP Handler

ServiceRegistrar

ServiceInvoker

WS Service Registry

IRS-III Server

Invocation Client

SOAP

SOAP

Publishing Clients

SOAP

Web Service 1Web Service 2

Web Service 3

Page 141: Tutorial AAAI 2006 Tutorial Forum

142

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

IRS-III/WSMO differences

• Underlying language OCML• Goals have inputs and outputs• IRS-III broker finds applicable web services via

mediators– Used mediator within WS capability – Mediator source = goal

• Web services have inputs and outputs ‘inherited’ from goal descriptions

• Web service selected via assumption (in capability)

Page 142: Tutorial AAAI 2006 Tutorial Forum

143

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

SWS Creation & Usage Steps

• Create a goal description – (e.g. exchange-rate-goal)– Add input and output roles– Include role type and soap binding

• Create a wg-mediator description – Source = goal– Possibly add a mediation service

• Create a web service description– Used-mediator of WS capability = wg-mediator above

• Specify Operation <-> Lisp function mapping in Choreography Grounding

• Publish against web service description• Invoke web service by ‘achieve goal’

Page 143: Tutorial AAAI 2006 Tutorial Forum

144

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Multiple WS for goal

• Each WS has a mediator for used-mediator slot of capability– Some WS may share a mediator

• Define a kappa expression for assumption slot of WS capability

• Kappa expression format– (kappa (?goal) <ocml relations>)

• Getting the value of an input role– (wsmo-role-value ?goal <role-name>)

Page 144: Tutorial AAAI 2006 Tutorial Forum

145

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Defining a Mediation Service

• Define a wg-mediator

• Source = goal

• Mediation-service = goal for mediation service

• Mediation goal – Mediation goal input roles are a subset of

goal input roles

• Define mediator and WS as normal

Page 145: Tutorial AAAI 2006 Tutorial Forum

146

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Valid Relations

• Classes are unary relations – e.g. (country ?x)

• Slots are binary relations – e.g. (is-capital-of ?x ?y)

• Standard relations in base (OCML toplevel) ontology

=, ==, <, >, member

Page 146: Tutorial AAAI 2006 Tutorial Forum

147

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

European Currency Assumption

(kappa (?goal)

(member

(wsmo-role-value

?goal

'has_source_currency)

'(euro pound)))

Page 147: Tutorial AAAI 2006 Tutorial Forum

148

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Based Invocation

Instantiate Goal Description

Exchange-rate-goal Has-source-currency: us-dollarsHas-target-currency: pound

Web Service Discovery

European-exchange-rate-wsNon-european-exchange-rate-wsEuropean-bank-exchange-rate-ws

Solve GoalGoal -> WG Mediator -> WS/Capability/Used-mediator

Web service selection

European-exchange-rate

Mediate input values

‘$’ -> us-dollar

WS -> Capability -> Assumptionexpression Mediation

Invoke selected web service

European-exchange-rate

Invocation

Page 148: Tutorial AAAI 2006 Tutorial Forum

149

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSMO Studio• Integrated Service Environment for WSMO• Provide easy to use GUI for various WSMO tasks

– Working with ontologies– Creating WSMO descriptions: goals, services, mediators– Creating WSMO centric orchestration and choreography

specifications– Import (export) from (to) various formats– Front-end for ontology and service repositotories– Front-end for runtime SWS environments (WSMX, IRS-

III)• http://www.wsmostudio.org

Page 149: Tutorial AAAI 2006 Tutorial Forum

150

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Requirements for an ISE• Modular design

– Different users need to customise the functionality in a specific way– Easier to maintain (e.g. ship new versions and bugfixes)– More suitable for 3rd party contributions

• Extensibility– SWS is an emerging domain– It is difficult to specify requirements and functionality affront

• Architecture based on open standards– Lowers the cost of adopting / integrating a tool– 3rd party extensions and improvements are more likely to occur

• Flexible licensing– An Open Source licence improves the adoption rate

Page 150: Tutorial AAAI 2006 Tutorial Forum

151

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSMO Studio• Java based implementation• Open Source core

– LGPL– 3rd party contributors are free to choose their respective

licensing terms• Modular design

– an Eclipse based plug-in architecture• Extensible

– 3rd parties may contribute new functionality (plug-ins) or modify existing functionality

Page 151: Tutorial AAAI 2006 Tutorial Forum

152

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Editing a Goal in WSMO Studio

Page 152: Tutorial AAAI 2006 Tutorial Forum

153

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

WSMO Studio view onto IRS-III

Page 153: Tutorial AAAI 2006 Tutorial Forum

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

PART VI:

Hands-On Session(with IRS III)

John Domingue Liliana Cabral

Page 154: Tutorial AAAI 2006 Tutorial Forum

155

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

European Travel Scenario

Page 155: Tutorial AAAI 2006 Tutorial Forum

156

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

European Travel Demo

Page 156: Tutorial AAAI 2006 Tutorial Forum

157

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Description

• Goals describe requirements from client perspective…

Goal

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

State Signature

Transition Rules

Page 157: Tutorial AAAI 2006 Tutorial Forum

158

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Description

• Their Capabilities describe the functional requirements…

Goal

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

State Signature

Transition Rules

Page 158: Tutorial AAAI 2006 Tutorial Forum

159

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Description

• Preconditions express guarantees client can make, purely over information they can communicate, in order that functional requirements are met…

Goal

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

State Signature

Transition Rules

Page 159: Tutorial AAAI 2006 Tutorial Forum

160

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Description

• Assumptions express general guarantees client can make, involving communications and environment, in order that functional requirements are met…

Goal

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

State Signature

Transition Rules

Page 160: Tutorial AAAI 2006 Tutorial Forum

161

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Description

• Postconditions express guarantees client would like over information communicated back in order that functional requirements are met…

Goal

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

State Signature

Transition Rules

Page 161: Tutorial AAAI 2006 Tutorial Forum

162

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Description

• Effects express the general guarantees the client would like after the goal has been achieved

Goal

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

State Signature

Transition Rules

Page 162: Tutorial AAAI 2006 Tutorial Forum

163

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Description

• Capabilities can be used for one or more of: representing a client-oriented perspective, advertising and service discovery. We do not use goal capabilities in the hands on session.

Goal

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

State Signature

Transition Rules

Page 163: Tutorial AAAI 2006 Tutorial Forum

164

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Description

• The interfaces of goals describe the behavioural requirements of clients, i.e. constraints over communication

Goal

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

State Signature

Transition Rules

Page 164: Tutorial AAAI 2006 Tutorial Forum

165

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Description

• The choreography expresses communications the client is able to engage in…

Goal

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

State Signature

Transition Rules

Page 165: Tutorial AAAI 2006 Tutorial Forum

166

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Description

Goal

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

State Signature

Transition Rules

• The state signature describes these communications semantically, by linking modes to ontological concepts

Page 166: Tutorial AAAI 2006 Tutorial Forum

167

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Description

• The state signature describes these communications semantically, by linking modes to ontological concepts:

– IN modes describe communications the client would like to receive

Goal

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

State Signature

Transition Rules

Page 167: Tutorial AAAI 2006 Tutorial Forum

168

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Description

• The state signature describes these communications semantically, by linking modes to ontological concepts:

– IN modes describe communications the client would like to receive;– OUT modes describe communications the client is able to send.

Goal

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

State Signature

Transition Rules

Page 168: Tutorial AAAI 2006 Tutorial Forum

169

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Description

Goal

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

State Signature

Transition Rules

• Transition rules link communications into a stateful interaction

Page 169: Tutorial AAAI 2006 Tutorial Forum

170

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Description

Goal

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

State Signature

Transition Rules

• Transition rules link communications into a stateful interaction:– Transition rules can be used to constrain the stateful behaviour of matching

services, or define the process mediation ‘a priori’. We do not use transition rules in the hands on session.

Page 170: Tutorial AAAI 2006 Tutorial Forum

171

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Description

Goal

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

State Signature

Transition Rules

• Orchestrations govern over the composite behaviour that is required to go into meeting the goal – the technology to exploit this is not yet available

Page 171: Tutorial AAAI 2006 Tutorial Forum

172

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Description in Tutorial

Goal

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

State Signature

Transition Rules

• The steps that go into describing a goal in the tutorial are:

Page 172: Tutorial AAAI 2006 Tutorial Forum

173

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Description in Tutorial

Goal

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

State Signature

Transition Rules

• The steps that go into describing a goal in the tutorial are:– Ontological description of the communications (request and response)

Page 173: Tutorial AAAI 2006 Tutorial Forum

174

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Description in Tutorial

Goal

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

State Signature

Transition Rules

• The steps that go into describing a goal in the tutorial are:– Ontological description of the communications (request and response);– Creation of a goal

Page 174: Tutorial AAAI 2006 Tutorial Forum

175

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Description in Tutorial

Goal

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

State Signature

Transition Rules

• The steps that go into describing a goal in the tutorial are:– Ontological description of the communications (request and response);– Creation of a goal; – Attachment of a choreography

Page 175: Tutorial AAAI 2006 Tutorial Forum

176

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Description in Tutorial

Goal

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

State Signature

Transition Rules

• The steps that go into describing a goal in the tutorial are:– Ontological description of the communications (request and response);– Creation of a goal; – Attachment of a choreography; Attachment of a state signature

Page 176: Tutorial AAAI 2006 Tutorial Forum

177

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Description in Tutorial

Goal

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

State Signature

Transition Rules

• The steps that go into describing a goal in the tutorial are:– Ontological description of the communications (request and response);– Creation of a goal; – Attachment of a choreography; Attachment of a state signature;– Attachment of communications to state signature

Page 177: Tutorial AAAI 2006 Tutorial Forum

178

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goal Description in Tutorial

Goal

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

State Signature

Transition Rules

• The steps that go into describing a goal in the tutorial are:– Ontological description of the communications (request and response);– Creation of a goal; – Attachment of a choreography; Attachment of a state signature – Attachment of communications to state signature:

• request as OUT mode; response as IN

Page 178: Tutorial AAAI 2006 Tutorial Forum

179

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description

• WSMO Web Services describe abilities of deployed services…

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 179: Tutorial AAAI 2006 Tutorial Forum

180

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description

• Their Capabilities describe their functional abilities…

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 180: Tutorial AAAI 2006 Tutorial Forum

181

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description

• Preconditions express guarantees they expect from clients, purely over information they communicate…

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 181: Tutorial AAAI 2006 Tutorial Forum

182

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description

• Assumptions express general guarantees they expect of clients, involving communications and environment…

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 182: Tutorial AAAI 2006 Tutorial Forum

183

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description

• Postconditions express guarantees they make over information communicated back, providing the preconditions and assumptions are met by the client…

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 183: Tutorial AAAI 2006 Tutorial Forum

184

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description

• Effects express the general guarantees made, over communicated and changes to the environment, providing the preconditions and assumptions are met by the client

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 184: Tutorial AAAI 2006 Tutorial Forum

185

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description

• The last part of the hands on session uses the assumption for web service selection.

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 185: Tutorial AAAI 2006 Tutorial Forum

186

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description

• The interfaces of web services describe their behavioural characteristics, i.e. the communications they engage in

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 186: Tutorial AAAI 2006 Tutorial Forum

187

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description

• The choreography expresses communications the service engages in with its clients…

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 187: Tutorial AAAI 2006 Tutorial Forum

188

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description

• The state signature describes these communications semantically, by linking modes to ontological concepts

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 188: Tutorial AAAI 2006 Tutorial Forum

189

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description

• The state signature describes these communications semantically, by linking modes to ontological concepts:

– IN modes describe communications the service is able to receive

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 189: Tutorial AAAI 2006 Tutorial Forum

190

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description

• The state signature describes these communications semantically, by linking modes to ontological concepts:

– IN modes describe communications the client would like to receive;– OUT modes describe communications the service is able to send

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 190: Tutorial AAAI 2006 Tutorial Forum

191

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description

• The state signature describes these communications semantically, by linking modes to ontological concepts:

– IN modes describe communications the client would like to receive;– OUT modes describe communications the service is able to send;– modes may be grounded to physical communications for service execution

(SOAP endpoints, REST identifiers, LISP and Java functions).

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 191: Tutorial AAAI 2006 Tutorial Forum

192

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description

• Transition rules link communications into a stateful interaction

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 192: Tutorial AAAI 2006 Tutorial Forum

193

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description

• Transition rules link communications into a stateful interaction:– Transition rules may be used in matching and (process) mediation against goals,

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 193: Tutorial AAAI 2006 Tutorial Forum

194

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description

• Transition rules link communications into a stateful interaction:– Transition rules may be used in matching and (process) mediation against goals,

or for – In process mediation between IRS-III/WSMX broker and the deployed service

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 194: Tutorial AAAI 2006 Tutorial Forum

195

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description

• Orchestrations describe how composite services achieve their behaviour in terms of communications between its components, which may be goals or services. We do not cover this in the hands on session.

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 195: Tutorial AAAI 2006 Tutorial Forum

196

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description

• WG-Mediators describe which goals are met by a web service

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 196: Tutorial AAAI 2006 Tutorial Forum

197

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description

• WG-Mediators describe which goals are met by a web service;• the descriptions may have some mismatch to be mediated

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 197: Tutorial AAAI 2006 Tutorial Forum

198

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description

• WG-Mediators describe which goals are met by a web service;• the descriptions may have some mismatch to be mediated:

– a mediation goal describes data mediation which needs to take place between client communications and those of the service

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 198: Tutorial AAAI 2006 Tutorial Forum

199

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description

• WG-Mediators describe which goals are met by a web service;• the descriptions may have some mismatch to be mediated:

– a mediation goal describes data mediation which needs to take place between client communications and those of the service;

– an oo-mediator can map between descriptions in two different ontologies – we do not cover this in the hands on session

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 199: Tutorial AAAI 2006 Tutorial Forum

200

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description in Tutorial

• The steps that go into describing a service in the tutorial are:

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 200: Tutorial AAAI 2006 Tutorial Forum

201

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description in Tutorial

• The steps that go into describing a service in the tutorial are:– Ontological description of the communications (may be reused from goal)

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 201: Tutorial AAAI 2006 Tutorial Forum

202

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description in Tutorial

• The steps that go into describing a service in the tutorial are:– Ontological description of the communications (may be reused from goal);– Creation of a service

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 202: Tutorial AAAI 2006 Tutorial Forum

203

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description in Tutorial

• The steps that go into describing a service in the tutorial are:– Ontological description of the communications (may be reused from goal);– Creation of a service; possibly attachment of an assumption

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 203: Tutorial AAAI 2006 Tutorial Forum

204

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description in Tutorial

• The steps that go into describing a service in the tutorial are:– Ontological description of the communications (may be reused from goal);– Creation of a service; possibly attachment of an assumption– Creation of a wg-mediator (possibly involving a mediation goal)

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 204: Tutorial AAAI 2006 Tutorial Forum

205

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description in Tutorial

• The steps that go into describing a service in the tutorial are:– Ontological description of the communications (may be reused from goal);– Creation of a service; possibly attachment of an assumption– Creation of a wg-mediator (possibly involving a mediation goal); – Attachment of a choreography

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 205: Tutorial AAAI 2006 Tutorial Forum

206

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description in Tutorial

• The steps that go into describing a service in the tutorial are:– Ontological description of the communications (may be reused from goal);– Creation of a service; possibly attachment of an assumption– Creation of a wg-mediator (possibly involving a mediation goal); – Attachment of a choreography; Attachment of a state signature

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 206: Tutorial AAAI 2006 Tutorial Forum

207

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description in Tutorial

• The steps that go into describing a service in the tutorial are:– Ontological description of the communications (may be reused from goal);– Creation of a service; possibly attachment of an assumption– Creation of a wg-mediator (possibly involving a mediation goal); – Attachment of a choreography; Attachment of a state signature; – Attachment of communications to state signature

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 207: Tutorial AAAI 2006 Tutorial Forum

208

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description in Tutorial

• The steps that go into describing a service in the tutorial are:– Ontological description of the communications (may be reused from goal);– Creation of a service; possibly attachment of an assumption– Creation of a wg-mediator (possibly involving a mediation goal); – Attachment of a choreography; Attachment of a state signature – Attachment of communications to state signature:

• request as IN mode

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 208: Tutorial AAAI 2006 Tutorial Forum

209

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description in Tutorial

• The steps that go into describing a service in the tutorial are:– Ontological description of the communications (may be reused from goal);– Creation of a service; possibly attachment of an assumption– Creation of a wg-mediator (possibly involving a mediation goal); – Attachment of a choreography; Attachment of a state signature – Attachment of communications to state signature:

• request as IN mode, grounded to LISP function

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 209: Tutorial AAAI 2006 Tutorial Forum

210

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Web Service Description in Tutorial

• The steps that go into describing a service in the tutorial are:– Ontological description of the communications (may be reused from goal);– Creation of a service; possibly attachment of an assumption– Creation of a wg-mediator (possibly involving a mediation goal); – Attachment of a choreography; Attachment of a state signature – Attachment of communications to state signature:

• request as IN mode, grounded to LISP function; response as OUT

Capability

Interface

PreconditionAssumption

Postcondition

Effect

Choreography

Orchestration

State Signature

Transition Rules

Web Service

WG-MediatorMediation Goal

OO-Mediator

Page 210: Tutorial AAAI 2006 Tutorial Forum

211

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

IRS-III Hands On Task• Develop an application for the European Travel scenario based on SWS. The

application should support a person booking a train ticket between 2 European cities at a specific time and date

• The following WSMO Studio tasks are involved:

– Retrieve domain ontology from IRS;

– Create WSML ontology concepts to describe communications;

– Create WSMO descriptions for Goals, WG-mediators and Web service descriptions;

– Export these definitions to the IRS;

– Create WSML ontology instances of the requests;

– Achieve the goals against these instances.

Page 211: Tutorial AAAI 2006 Tutorial Forum

212

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Tutorial Setup

Travel Services

(3001)

IRS Lisp Publisher

IRS Server (3000)

Domain Models

WSMO Studio

Page 212: Tutorial AAAI 2006 Tutorial Forum

213

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Travel Related Knowledge Models

Page 213: Tutorial AAAI 2006 Tutorial Forum

214

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Key Classes, Relations, Instances

Is-in-country <city> <country> e.g.

(is-in-country berlin germany) -> true

(student <person>) -> true, for john matt michal

(business-person <person>) -> true, for liliana michael

Page 214: Tutorial AAAI 2006 Tutorial Forum

215

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Goals1- Get train timetable

– Inputs: origin and destination cities (city), date (date-and-time, e.g. (18 4 2004))

– Output: timetable (string)

2- Book train– Inputs: passenger name (person), origin and

destination cities, departure time-date (list-date-and-time, e.g. (20 33 16 15 9 2004))

– Output: booking information (string)

Page 215: Tutorial AAAI 2006 Tutorial Forum

216

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Services

• 1 service available for goal 1– No constraints

• 6 services available for goal 2– As a provider write the constraints applicable to the

services to satisfy the goal (assumption logical expressions)

• 1 wg-mediator mediation-service– Used to convert time in list format to time in

universal format

Page 216: Tutorial AAAI 2006 Tutorial Forum

217

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Service constraints

• Services 2-5– Services for (origin and destination) cities in

determined countries

• Service 4-5– Need a mediation service to map goal time-date to

service time-date

• Services 6-7– Services for students or business people in Europe

Page 217: Tutorial AAAI 2006 Tutorial Forum

218

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Available Functions (1/3)

1- get-train-times paris london (18 4 2004)"Timetable of trains from PARIS to LONDON on 18, 4, 2004 5:18…23:36"

2- book-english-train-journey christoph milton-keynes london (20 33 16 15 9 2004)"British Rail: CHRISTOPH is booked on the 66 going from MILTON-KEYNES to

LONDON at 16:49, 15, SEPTEMBER 2004. The price is 169 Euros."

3- book-french-train-journey sinuhe paris lyon (3 4 6 18 8 2004)"SNCF: SINUHE is booked on the 511 going from PARIS to LYON at 6:12, 18,

AUGUST 2004. The price is 27 Euros."

Page 218: Tutorial AAAI 2006 Tutorial Forum

219

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Available Functions (2/3)

4- book-german-train-journey christoph berlin frankfurt 3304251200

"First Class Booking German Rail (Die Bahn): CHRISTOPH is booked on the 323 going from BERLIN to FRANKFURT at 17:11, 15, SEPTEMBER 2004. The price is 35 Euros."

5- book-austrian-train-journey sinuhe vienna innsbruck 3304251200

"Austrian Rail (OBB): SINUHE is booked on the 367 going from VIENNA to INNSBRUCK at 16:47, 15, SEPTEMBER 2004. The price is 36 Euros. "

Page 219: Tutorial AAAI 2006 Tutorial Forum

220

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Available Functions (3/3)

6- book-student-european-train-journey john london nice (3 4 6 18 8 2004)"European Student Rail Travel: JOHN is booked on the 916 going from

LONDON to NICE at 6:44, 18, AUGUST 2004. The price is 94 Euros. "

7- book-business-european-train-journey liliana paris innsbruck (3 4 6 18 8 2004)"Business Europe: LILIANA is booked on the 461 going from PARIS to

INNSBRUCK at 6:12, 18, AUGUST 2004.The price is 325 Euros."

8- mediate-time (lisp function) or JavaMediateTime/mediate (java) (9 30 17 20 9 2004)3304686609

Page 220: Tutorial AAAI 2006 Tutorial Forum

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Wrap Up References

Acknowledgements

Page 221: Tutorial AAAI 2006 Tutorial Forum

222

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Tutorial Wrap-up

The targets of the presented tutorial were to:

• understand aims & challenges within Semantic Web Services• understand WSMO and other frameworks

design principles & paradigms core elementscommonalities and differences

• understand semantic techniques for automated Web service usageand give: • .. Semantic Web Service Tools and System Presentation• .. do-it-yourself Hands-On Session

=> you should now be able to assess technologies & products for Semantic Web Services and utilize these for your future work

Page 222: Tutorial AAAI 2006 Tutorial Forum

223

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

References Foundations[Alonso et al., 2004] Alonso, G., Casati, F., Kuno, H., and Machiraju, V. (2004). Web Services:

Concepts, Architectures and Applications. Data-Centric Systems and Applications. Springer, Berlin, Heidelberg.

[Berners-Lee, 1999] Berners-Lee, T. (1999). Weaving the Web. Harper, San Francisco, USA.

[Berners-Lee et al., 2001] Berners-Lee, T., Hendler, J., and Lassila, O. (2001). The Semantic Web. Scientific American, 284(5):34-43.

[Bussler, 2003] Bussler, C. (2003). B2B Integration: Concepts and Architecture. Springer, Berlin, Heidelberg.

[Fensel, 2003] Fensel, D. (2003). Ontologies: A Silver Bullet for Knowledge Management and E-Commerce. Springer, Berlin, Heidelberg, 2 edition.

[Goméz-Pérez et al., 2003] Goméz-Pérez, A., Corcho, O., and Fernandez-Lopez, M. (2003). Ontological Engineering. With Examples from the Areas of Knowledge Management, E-Commerce and Semantic Web. Series of Advanced Information and Knowledge Processing. Springer, Berlin, Heidelberg.

[Gruber, 1993] Gruber, T. R. (1993). A translation approach to portable ontology specifications. Knowledge Acquisition, 5:199-220.

Page 223: Tutorial AAAI 2006 Tutorial Forum

224

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

References Semantic Web Services

[de Bruijn et al., 2006] de Bruijn, J., Fensel, D., Lausen, H., Polleres, A., Roman, D., and Stollberg, M. (2006). Enabling Semantic Web Services. The Web Service Modeling Ontology. Springer.

[Fensel and Bussler, 2002] Fensel, D. and Bussler, C. (2002). The Web Service Modeling Framework WSMF. Electronic Commerce Research and Applications, 1(2).

[McIlraith et al., 2001] McIlraith, S., Cao Son, T., and Zeng, H. (2001). Semantic Web Services. IEEE Intelligent Systems, Special Issue on the Semantic Web, 16(2):46-53.

[Preist, 2004] Preist, C. (2004). A Conceptual Architecture for Semantic Web Services. In Proc. of the Int. Semantic Web Conf. (ISWC 2004).

[Roman et al., 2005] Roman, D., Keller, U., Lausen, H., de Bruijn, J., Lara, R., Stollberg, M., Polleres, A., Feier, C., Bussler, C., and Fensel, D. (2005). Web Service Modeling Ontology. Applied Ontology, 1(1):77-106.

[Stollberg et al., 2006] Stollberg, M., Feier, C., Roman, D., and Fensel, D. (2006). Semantic Web Services - Concepts and Technology. In Ide, N., Cristea, D., and Tufis, D. (editors), Language Technology, Ontologies, and the Semantic Web. Kluwer Publishers.

[Sycara et al. 2003] Katia Sycara, Massimo Paolucci, Anupriya Ankolekar and Naveen Srinivasan, "Automated Discovery, Interaction and Composition of Semantic Web services," Journal of Web Semantics, Volume 1, Issue 1, September 2003, pp. 27-46

Page 224: Tutorial AAAI 2006 Tutorial Forum

225

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

References SWS: W3C Submissions

OWL-S [Martin, 2004] Martin, D. (2004). OWL-S: Semantic Markup for Web Services. W3C Member

Submission 22 November 2004. online: http://www.w3.org/Submission/OWL-S/.

WSMO [see also www.wsmo.org] [Lausen et al., 2005] Lausen, H., Polleres, A., and Roman (eds.), D. (2005). Web Service

Modeling Ontology (WSMO). W3C Member Submission 3 June 2005. online: http://www.w3.org/Submission/WSMO/.

SWSF [Battle et al., 2005] Battle, S., Bernstein, A., Boley, H., Grosof, B., Gruninger, M., Hull, R., Kifer,

M., D., M., S., M., McGuinness, D., Su, J., and Tabet, S. (2005). Semantic Web Services Framework (SWSF). W3C Member Submission 9 September 2005. online: http://www.w3.org/Submission/SWSF/.

WSDL-S [Akkiraju et al., 2005] Akkiraju, R., Farrell, J., Miller, J., Nagarajan, M., Schmidt, M.- T., Sheth, A.,

and Verma, K. (2005). Web Service Semantics - WSDL-S. W3C Member Submission 7 November 2005. online: http://www.w3.org/Submission/WSDL-S/.

Page 225: Tutorial AAAI 2006 Tutorial Forum

226

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

References Discovery

B. Benatallah, M. Hacid, C. Rey, F. Toumani Towards Semantic Reasoning for Web Services Discovery,. In Proc. of the International Semantic Web Conference (ISWC 2003), 2003

Herzog, R.; Lausen, H.; Roman, D.; Zugmann, P.: WSMO Registry. WSMO Working Draft D10 v0.1, 26 April 2004.

Keller, U.; Lara, R.; Polleres, A. (Eds): WSMO Web Service Discovery. WSML Working Draft D5.1, 12 Nov 2004.

Keller, U.; Lara, R.; Lausen, H.; Polleres, A.; Fensel, D.: Automatic Location of Services. In Proc. of the 2nd European Semantic Web Symposium (ESWS2005), Heraklion, Crete, 2005.

M. Kifer, R. Lara, A. Polleres, C. Zhao, U. Keller, H. Lausen and D. Fensel: A Logical Framework for Web Service Discovery. Proc. 1st. Intl. Workshop SWS'2004 at ISWC 2004,Hiroshima, Japan, November 8, 2004, CEUR Workshop Proceedings, ISSN 1613-0073

Lara, R., Lausen, H.; Toma, I.: (Eds): WSMX Discovery. WSMX Working Draft D10 v0.2, 07 March 2005.

Lei Li and Ian Horrocks. A software framework for matchmaking based on semantic web technology. In Proc. of the Twelfth International World Wide Web Conference (WWW 2003), 2003.

Page 226: Tutorial AAAI 2006 Tutorial Forum

227

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

References Discovery

Lei Li and Ian Horrocks. A software framework for matchmaking based on semantic web technology. In Proc. of the Twelfth International World Wide Web Conference (WWW 2003), 2003

Daniel J. Mandell and Sheila A. McIlraith. Adapting BPEL4WS for the Semantic Web: The Bottom-Up Approach to Web Service Interoperation. In Proceedings of the Second International Semantic Web Conference (ISWC2003),

Massimo Paolucci, Takahiro Kawamura, Terry R. Payne, Katia Sycara; Importing the Semantic Web in UDDI. In Proceedings of Web Services, E-business and Semantic Web Workshop, 2002

Massimo Paolucci, Takahiro Kawamura, Terry R. Payne, Katia Sycara; "Semantic Matching of Web Services Capabilities." In Proceedings of the 1st International Semantic Web Conference (ISWC2002), 2002

Preist, C.: A Conceptual Architecture for Semantic Web Services. In Proceedings of the 3rd International Semantic Web Conference (ISWC 2004), 2004, pp. 395 - 409.

Stollberg, M.; Keller, U.; Fensel. D.: Partner and Service Discovery for Collaboration on the Semantic Web. Proc. 3rd Intl. Conference on Web Services (ICWS 2005), Orlando, Florida, July 2005.

Page 227: Tutorial AAAI 2006 Tutorial Forum

228

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

References Composition

[Berardi et al., 2003] Berardi, D., Calvanese, D., Giacomo, G. D., Lenzerini, M., and Mecella, M. (2003). Automatic Composition of e-Services that Export their Behavior. In Proc. of First Int. Conference on Service Oriented Computing (ICSOC).

[Martens, 2003] Martens, A. (2003). On Compatibility of Web Services. Petri Net Newletter, 65:12-20.

[Sirin et al., 2004] Sirin, E., Parsia, B., Wu, D., Hendler, J., and Nau, D. (2004). HTN Planning for Web Service Composition Using SHOP2. Journal of Web Semantics, 1(4):377-396.

[Pistore and Traverso, 2006] Pistore, M. and Traverso, P. (2006). Theoretical Integration of Discovery and Composition. Deliverable D2.4.6, Knowledge Web.

[Stollberg, 2005] Stollberg, M. (2005). Reasoning Tasks and Mediation on Choreography and Orchestration in WSMO. In Proceedings of the 2nd International WSMO Implementation Workshop (WIW 2005), Innsbruck, Austria.

[Traverso and Pistore, 2004] Traverso, P. and Pistore, M. (2004). Automatic Composition of Semantic Web Services into Executable Processes. In Proc. 3rd International Semantic Web Conference (ISWC 2004), Hiroshima, Japan.

Page 228: Tutorial AAAI 2006 Tutorial Forum

229

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

References Mediation

[Cimpian and Mocan, 2005] Cimpian, E. and Mocan, A. (2005). WSMX Process Mediation Based on Choreographies. In Proceedings of the 1st International Workshop on Web Service Choreography and Orchestration for Business Process Management at the BPM 2005, Nancy, France.

[Mocan (ed.), 2005] Mocan (ed.), A. (2005). WSMX Data Mediation. WSMX Working Draft D13.3. available at: http://www.wsmo.org/TR/d13/d13.3/v0.2/.

[Mocan et al., 2005] Mocan, A., Cimpian, E., Stollberg, M., Scharffe, F., and Scicluna, J. (2005). WSMO Mediators. WSMO deliverable D29 ¯nal draft 21 Dec 2005. available at: http://www.wsmo.org/TR/d29/.

[Scharffe and de Bruijn, 2005] Scharffe, F. and de Bruijn, J. (2005). A language to specify mappings between ontologies. In Proc. of the Internet Based Systems IEEE Conference (SITIS05).

[Stollberg et al., 2006] Stollberg, M., Cimpian, E., Mocan, A., and Fensel, D. (2006). A Semantic Web Mediation Architecture. In Proceedings of the 1st Canadian Semantic Web Working Symposium (CSWWS 2006), Quebec, Canada.

[Wiederhold, 1994] Wiederhold, G. (1994). Mediators in the Architecture of the Future Information Systems. Computer, 25(3):38-49.

Page 229: Tutorial AAAI 2006 Tutorial Forum

230

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

References WSMO

• The central location where WSMO work and papers can be found is WSMO Working Group: http://www.wsmo.org

• WSMO languages – WSML Working Group: http://www.wsml.org

• WSMO implementation – WSMX working group : http://www.wsmx.org– WSMX open source can be found at:

https://sourceforge.net/projects/wsmx/

Page 230: Tutorial AAAI 2006 Tutorial Forum

231

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

References IRS IIIJ. Domingue, L. Cabral, F. Hakimpour, D. Sell and E. Motta: IRS-III: A Platform and Infrastructure for Creating WSMO-based Semantic Web Services. Proceedings of the Workshop on WSMO Implementations (WIW 2004) Frankfurt, Germany, September 29-30, 2004, CEUR Workshop Proceedings, ISSN 1613-0073, online http://CEUR-WS.org/Vol-113/paper3.pdf.

J. Domingue and S. Galizia: Towards a Choreography for IRS-III.Proceedings of the Workshop on WSMO Implementations (WIW 2004) Frankfurt, Germany, September 29-30, 2004, CEUR Workshop Proceedings, ISSN 1613-0073, online http://CEUR-WS.org/Vol-113/paper7.pdf.

Cabral, L., Domingue, J., Motta, E., Payne, T. and Hakimpour, F. (2004).Approaches to Semantic Web Services: An Overview and Comparisons. In proceedings of the First European Semantic Web Symposium (ESWS2004);10-12 May 2004, Heraklion, Crete, Greece.

Motta, E., Domingue, J., Cabral, L. and Gaspari, M. (2003) IRS-II: A Framework and Infrastructure for Semantic Web Services. In proceedings of the 2nd International Semantic Web Conference (ISWC2003) 20-23 October 2003, Sundial Resort, Sanibel Island, Florida, USA.

These papers and software downloads can be found at: http://kmi.open.ac.uk/projects/irs

Page 231: Tutorial AAAI 2006 Tutorial Forum

232

Semantic Web Services, AAAI 2006, Boston (MA), 17 July 2006

Acknowledgements

The WSMO working groups are funded by the European Commission under the projects DIP, Knowledge Web, SEKT, SWWS, and ASG; by Science Foundation Ireland under the DERI-Lion project; and by the Vienna city government under the FIT-IT Programme in the projects RW2 and TCP.

We dedicate thanks to all the members of the WSMO, WSML, and WSMX working groups for their advice and input into this tutorial.

Slide design by Roberta Hart-Hilber, DERI Austria