82
Semantic Web Services John Domingue and David Martin

Semantic Web Services John Domingue and David Martin

  • View
    222

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Semantic Web Services John Domingue and David Martin

Semantic Web Services

John Domingue and David Martin

Page 2: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Acknowledgements

• Mary Rowlatt• Leticia Gutierrez• Michael Stollberg • Liliana Cabral• Vlad Tanasescu• Alessio Gugliotta• WSMO Working

Group• DIP project

• OWL-S Coalition

• Sheila McIlraith

• Terry Payne

• Task Computing project

• Ryusuke Masuoka

Page 3: Semantic Web Services John Domingue and David Martin

Web Services

John Domingue

Page 4: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

What’s a Web Service?

• A program programmatically accessible over standard internet protocols

• Loosely coupled, reusable components

• Encapsulate discrete functionality

• Distributed

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

Page 5: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Web Services Framework

Page 6: Semantic Web Services John Domingue and David Martin
Page 7: Semantic Web Services John Domingue and David Martin
Page 8: Semantic Web Services John Domingue and David Martin
Page 9: Semantic Web Services John Domingue and David Martin
Page 10: Semantic Web Services John Domingue and David Martin
Page 11: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Problems with Web Services Today

• Descriptions are syntactic

• All tasks associated with web services application development have to be carried out by humans:

– discovery, composition and invocation

• Problems of scalability

Page 12: Semantic Web Services John Domingue and David Martin

Semantic Web Services

John Domingue

Page 13: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

SWS Vision

Web(URI, HTML, HTTP)

Web Services(UDDI, WSDL, SOAP)

Semantic Web(RDF, OWL)

Semantic Web Services

Dynamic

Static

Syntax Semantics

Page 14: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Semantic Web Services (is)

• Semantic Web Technology– Machine readable data– Ontological basis

Applied to

• Web Services Technology– Reusable computational resources

To automate all aspects of application development through reuse

Page 15: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Semantic Web Service Broker

Client

Services

Page 16: Semantic Web Services John Domingue and David Martin

OWL-S

David Martin

Page 17: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Some Active SWSResearch Areas

• Language, vocabulary & reasoning approaches for– Preconditions & effects– Policies– Commitments– Quality of Service

• Discovery & selection (matchmaking)• Composition, workflow / choreography adaptation

– Interoperability analysis • Resource & transaction management

– Monitoring & recovery• Service use with mobile / ubiquitous devices

– Context • Security • Tools & Environments

– (Semi-)automatic annotation

Page 18: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

What is OWL-S?What is OWL-S?

• Ontology Web Language for Services • An OWL ontology/language for (formally) describing properties and capabilities of Web services

• An approach that draws on many sources• Description logic• AI planning• Workflow• Formal process modeling• Agents• Web services

http://www.daml.org/services/owl-s

Page 19: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Layered Approach to Language Development

SWRL (Rules)

XML (Extensible Markup Language)

RDF (Resource Description Framework)

RDFS (RDF Schema)

OWL ([DLP], Light, DL, Full)

OWL-S (Services)

OWL-S: an ontology expressed in OWL andrelated languages

Page 20: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Upper Ontology of Services

Ontology images compliments of Terry Payne, University of Southampton

Page 21: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

High-level characterization/summary of a serviceUsed for

• Populating service registries• A service can have many profiles• Possibly specialized for different communities

• Automated service discovery• Service selection

Used for both:• Service advertisements• Service requests

Service Profile: “What does it do?”

Page 22: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Service Profile (partial)

Page 23: Semantic Web Services John Domingue and David Martin

Class Hierarchies of ServicesServiceProfile

ProductProvidingService

Manufacturing

Transportation

ActionService

InfoService

PhysicalProductService Repair

information-Product+

physicalProduct+manufacturer+

deliveryRegion*deliveryProvider*

deliveryType

physical-Product+

transportationMode+geographicRegion+

physicalProduct+

Tie in with UNSPSC, etc.DL Basis for matchmakingMultiple profiles; multiple hierarchies

nameprovider

avgResponseTime?… FeeBased feeBasis+

paymentMethod+

Page 24: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

• Class hierarchical yellow pages– Implicit capability characterization– Arrangement of attributes on class hierarchy– Can use multiple inheritance– Relies primarily on “non-functional” properties

• Process summaries for planning purposes– More explicit– Inputs, outputs, preconditions, effects– Less reliance on formal hierarchical organization– Summarizes process model specs– Relies primarily on functional description

Service Profile: Styles of use

Page 25: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Service Model“How does it work?”

Process– Potentially interpretable description of service provider’s behavior– Tells service user how and when to interact (read/write

messages)• Used for:

– Service invocation, planning/composition, interoperation, monitoring

• All processes have– Inputs, outputs, preconditions and effects

• Atomic processes• Composite processes

– Control flow– Data flow

• OWL standard serializations; presentation syntax

Process Model: “How does it work?”

Page 26: Semantic Web Services John Domingue and David Martin

Process Model (partial)

Page 27: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Function/Dataflow Perspective

www.acmeair.com

book flight service

Input:

• confirmation no.• ...

Output:

• failure notification• …

flight available+

valid credit card

Y

N?

• customer name• flight number• credit card• ...

Page 28: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Action/Process Perspective

Input:

• confirmation no.• ...

Output:

• failure notification• …

flight available+

valid credit card

Y

N?

Preconditions:

• customer name• flight number• credit card• ...

www.acmeair.com

book flight service

• knowledge of the input•...

• ticket purchased• credit card debited• ...

Effect:

Output:

Effect: <no effect>

Page 29: Semantic Web Services John Domingue and David Martin

www.acmetravel.combook travel service

www.acmeair.com

book flight service

• customer name• flight numbers• dates• credit card no.• • ...

• confirmation no.• ...

• failure notification• errror information• …

?

www.acmehotel.com

book hotel service

• confirmation no.• dates• room type• credit card no.• ...

• confirmation no.• ...

• failure notification• …

?

www.acmecar.com

book car service

• customer name• location• car type• dates• credit card no.• ...

• confirmation no.• ...

• failure notification• …

?

• • • •

Composite Process

• • • • • • • • • •

• • • •

?

• • • • • • • • • • •

Input &Preconditions

Output &Effects

• • • •

• • • •

Page 30: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Service Grounding: “How to access it”

• Implementation specific

• Message formatting, transport mechanisms, protocols, serializations of types

• Service Model + Grounding give everything needed for using the service

• Builds upon WSDL

Page 31: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Elements of WSDL

Binding to SOAP, HTTP, etc.

Operation Message Part

Atomic Process Inputs / Output

Process Model DL-based Types

Elements of OWL-S

OWL-S / WSDL Grounding(pre-SAWSDL)

Page 32: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Web Service Mgmt. TasksP

roce

ss M

odel

Gro

undi

ng

Development … Deployment … Use …

Simulation

Verification

Selection

Enactment, Interoperation

Monitoring, Recovery

Pro

file

Composition

Discovery

Operation

Publication

Development

Page 33: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

OWL-S: Summary & Status

• Describes “what it does”, “how it works”,“how to access it”– Profile, Process, Grounding subontologies

• Ties in naturally with WSDL, UDDI• Additional semantics supports

– Automation of various Web service tasks– Varied applications (later slides)

• W3C member submission – http://www.w3.org/Submission/2004/07/– Corresponds to 1.1 release on daml.org

• 1.2 release completed• Publications, tools, examples

– See http;//www.daml.org/services/owl-s/– See http://www.semwebcentral.org

Page 34: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

SWS at ISWC

• Service Matchmaking & Resource Retrievalon the Semantic Web (SMR2)– 2nd workshop, tomorrow

• Semantic Web Services Challenge– 7th workshop, today

• Semantic Web Enabled Software Engineering (SWESE)– 4th workshop, today

• Research track sessions– “Software and Service Engineering”, Tuesday– “Semantic Web Services”, Thursday

• In Use track session– “Services and Infrastructure”, Tuesday

• “Internet of Services” (Industry talk), Wednesday• Many workshops and tutorials at previous ISWCs (and other

conferences such as WWW & ESWC)

Page 35: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Applications Using OWL-S

• Many examples, including–Task Computing–Software Interoperability–e-Science–Geospatial Data / Query

Integration–Autonomous Vehicles

Page 36: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Application:

Task Computing

Fujitsu Laboratories of America, Inc.MINDLab of the University of Maryland

http://www.taskcomputing.org

Thanks toRyusuke Masuoka

for use of this material

Technology to enable easy orchestration of devices and e-services,

and support users in executing complex tasks

Page 37: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Goals of Task Computing

• Minimize/facilitate user interaction – User interface: mouse clicks and voice

• Focus on What (task) instead of How (means)• No preprogramming of devices for tasks

User wants to do “Tasks”

“Services” offered means Web services, UPnP, etc.

Filling the gap

Page 38: Semantic Web Services John Domingue and David Martin

OS/Application (.NET, etc.)

Jeff’s Video

Device (UPnP)

Video from DVVideo from DV

Web Services

Aerial Photo of Weather Info of

Add into OutlookDial

Play (Video)Play (Audio)

Open Save Print

View Contact from OutlookJeff’s Video

A Giant Leap

OS/ApplicationDevices Web Pages

Aerial Photo of Weather Info of

Add into OutlookDial

Play (Video)Play (Audio)

Open Save Print

View Contact from Outlook

Play Jeff’s VideoDial Contact from OutlookWeather Info of FLA, CP…

Page 39: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Fujitsu’s Task Computing

• Approach:– Integration of Semantic Web and Web Service computing– Abstraction of functionality as services: Describe functionality of device

or services in OWL-S– Use of UPnP for Semantic Service Discovery Mechanism (SSDM) and

for service invocation

• More application examples:– Display presentation file from mobile computer on the projector in a

room you visit for the first time, without connecting a VGA cable– Display pictures from a mobile phone on a TV in any room and print it

on an available foto printer, without moving memory cards around

• Precondition: Devices are network-ready and equipped with lightweight web server

Page 40: Semantic Web Services John Domingue and David Martin

DeviceApplication

E-service

Service ServiceService

Semantic Service

Description

Semantic Service

Description

DiscoveryEngine

Execution & Execution Monitoring

Engine

ServiceComposition

Engine

ManagementTools

Task Computing

ClientApplications

RealizationLayer

ServiceLayer

MiddlewareLayer

PresentationLayer

Content

Web-basedClient

Service

Semantic Service

Description

Task Computing Environment

User

Web Service API

Semantic Service

Description

TC Architecture

Page 41: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Capabilities Needed

(described in processes)

Capabilities Available

Software Interoperability

If the Capabilities Available provide a “reasonable match” to the Capabilities Needed, Interoperability may be achieved

Otherwise No Interoperability

EventKnowledge Base

• Concepts• Exercise• Task• Role• Interaction• Entity

• Instances

Resource Knowledge Base

• Concepts• Confederation• Resource• Capability

• Instances

Page 42: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

12181 acatttctac caacagtgga tgaggttgtt ggtctatgtt ctcaccaaat ttggtgttgt 12241 cagtctttta aattttaacc tttagagaag agtcatacag tcaatagcct tttttagctt 12301 gaccatccta atagatacac agtggtgtct cactgtgatt ttaatttgca ttttcctgct 12361 gactaattat gttgagcttg ttaccattta gacaacttca ttagagaagt gtctaatatt 12421 taggtgactt gcctgttttt ttttaattgg

Courtesy ofCarol Goble

E-Science

Page 43: Semantic Web Services John Domingue and David Martin

Autonomous Vehicles

Decompose Tasks

Map Tasks to AgentArchitecture

Map Task DecisionsTo State-Tables

Derive the Relevant Task Situations from World States and Object Parameters

Identify Task Relevant Entities and Objects

Services Roles

Processes

ConditionsParameters

Page 44: Semantic Web Services John Domingue and David Martin

Web Service Modelling Ontology (WSMO)

John Domingue

Page 45: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

WSMO Top Level Notions

Objectives that a client wants toachieve by using Web Services

Provide the 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

Page 46: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

WSMO Top Level Notions

Objectives that a client wants toachieve by using Web Services

Provide the 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

Page 47: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

WSMO Top Level Notions

Objectives that a client wants toachieve by using Web Services

Provide the 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

Page 48: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Goals

• Ontological De-coupling of Requester and Provider • Derived from task / problem solving methods/domain

model • Structure and reuse of requests

– Search– Diagnose– Classify– Personalise– Book a holiday

• Requests may in principle not be satisfiable• Ontological relationships & mediators used to link goals to

web services

Page 49: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

WSMO Top Level Notions

Objectives that a client wants toachieve by using Web Services

Provide the 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

Page 50: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

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 51: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

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 52: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

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 53: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

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 54: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

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 55: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

VTA

VTA WS ‘Trip Booking’

Capability

provides

Chor.Interf.

Flight Request

Hotel Request

Book Flight

Book Hotel

if hotel = Ø flight.arrivaltime = hotel.arrivaltime

flight information

if flight = Ø

hotel information

process (control + data flow) of goals

Orchestration Definition

Page 56: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

VTA

VTA WS ‘Trip Booking’

Capability

provides

Chor.Interf.

Flight Request

Hotel Request

Book Flight

Book Hotel

if hotel = Ø

if flight = Ø

process (control + data flow) between “states” + communication behavior of orchestrating Web Service

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. ..

flight request

avaiable flights

hotel request

avaiable hotels

book request booking confirmation

book request

booking confirmation

Runtime Orchestration

Page 57: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

WSMO Top Level Notions

Objectives that a client wants toachieve by using Web Services

Provide the 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

Page 58: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Mediation

• For 1$ on programming, $5 - $9 on integration• Mismatches on structural / semantic / conceptual / level • Assume (nearly) always necessary • Description of role

© IBM, Nelson Mattos

Page 59: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

WSMO Mediators Overview

Page 60: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Mediator Structure

WSMO Mediator

uses a Mediation Service via

Source Component

Source Component

TargetComponent 1 .. n

1

Mediation Services

- as a Goal - directly- optionally incl. Mediation

Page 61: Semantic Web Services John Domingue and David Martin

WSMO based Application using IRS-III

John Domingue

Page 62: Semantic Web Services John Domingue and David Martin
Page 63: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Emergency planning scenario

Plan emergency response

WHAT INFORMATION AVAILABLE?

SELECT RELEVANT INFORMATION

Severe weather event

Page 64: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Emergency planning scenario

Severe weather event forecast in the area by

Met Office

Met Office

get event details

Page 65: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Emergency planning scenario

Identify most appropriate rest centres

ViewEssex spatial data

get centre contact details

District data

get facilities kitchen, showers, number of beds, cookers, heaters…

get capacity

Page 66: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

eMerges Ontologies

Page 67: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Generic Application Structure

SWS SWS SWSSWS

SWS SWS SWS SWS

Presentation

IT systems

Organisation 1

IT systems

Organisation 2

DB DB

Web ApplicationWeb Application Web ApplicationWeb Application Web ApplicationWeb Application

Semantic Web Services (WSMX/IRS-III)

WSWS WSWSWSWS WSWS Services Abstraction

LegacySystems

SWS

Page 68: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Generic Application Structure

SWS SWS SWSSWS

SWS SWS SWS SWS

Presentation

IT systems

Organisation 1

IT systems

Organisation 2

DB DB

Web ApplicationWeb Application Web ApplicationWeb Application Web ApplicationWeb Application

Semantic Web Services (WSMX/IRS-III)

WSWS WSWSWSWS WSWS Services Abstraction

LegacySystems

SWS

Page 69: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Generic Application Structure

SWS SWS SWSSWS

SWS SWS SWS SWS

Presentation

IT systems

Organisation 1

IT systems

Organisation 2

DB DB

Web ApplicationWeb Application Web ApplicationWeb Application Web ApplicationWeb Application

Semantic Web Services (WSMX/IRS-III)

WSWS WSWSWSWS WSWS Services Abstraction

LegacySystems

SWS

Page 70: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Generic Application Structure

SWS SWS SWSSWS

SWS SWS SWS SWS

Presentation

IT systems

Organisation 1

IT systems

Organisation 2

DB DB

Web ApplicationWeb Application Web ApplicationWeb Application Web ApplicationWeb Application

Semantic Web Services (WSMX/IRS-III)

WSWS WSWSWSWS WSWS Services Abstraction

LegacySystems

SWS

Page 71: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Generic Application Structure

SWS SWS SWSSWS

SWS SWS SWS SWS

Presentation

IT systems

Organisation 1

IT systems

Organisation 2

DB DB

Web ApplicationWeb Application Web ApplicationWeb Application Web ApplicationWeb Application

Semantic Web Services (WSMX/IRS-III)

WSWS WSWSWSWS WSWS Services Abstraction

LegacySystems

SWS

Page 72: Semantic Web Services John Domingue and David Martin

Video of Emergency Planning (GIS) Prototype V1

Page 73: Semantic Web Services John Domingue and David Martin

EMerges Prototype Architecture

ViewEssexServices

Em

ergency-GIS

-Dom

ainE

mergency-G

IS-D

omain

Em

ergency-GIS

-Goals

Em

ergency-GIS

-Goals

BuddySpace Server

BuddySpace Services

BuddySpace GoalsBuddySpace Goals

Smart FilterServices

ArchetypesArchetypes

SGIS-SpatialSGIS-Spatial

Google Web Toolkit

EnvironmentServices

ME

T-O

ffice-Dom

ainM

ET

-Office-D

omain

ME

T-O

ffice-Goals

ME

T-O

ffice-Goals

AccommodationGoalEnvironment Goal

Presence Goal

Affordances = Goals

Page 74: Semantic Web Services John Domingue and David Martin

SAWSDL

David Martin

Page 75: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

SAWSDL

• Semantic Annotations for WSDL and XML Schema

• W3C Recommendation, August, 2007• Largely based on WSDL-S

– Some SAWSDL ideas also appeared earlier in OWL-S

• A simple, incremental approach– Builds naturally on the WSDL-centric view

of Web services

Page 76: Semantic Web Services John Domingue and David Martin

Technical Overview of SAWSDL (1)

Page 77: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

<wsdl:description> <wsdl:types> <xs:schema elementFormDefault="qualified"> <xs:element name="OrderRequest“ sawsdl:modelReference=“...” sawsdl:liftingSchemaMapping="..." sawsdl:loweringSchemaMapping="...">

... </xs:element> </xs:schema> </wsdl:types> <wsdl:interface name="Order“ sawsdl:modelReference="..."> <wsdl:operation name="order“ pattern="…“ sawsdl:modelReference="..."> <wsdl:input element="OrderRequest" /> <wsdl:output element="OrderResponse" /> </wsdl:operation> </wsdl:interface></wsdl:description>

Technical Overview of SAWSDL (2)

• 3 extensibility elements– modelReference– liftingSchemaMapping– loweringSchemaMapping

• Can be used in both WSDL and XML Schema documents

• Values are lists of URIs• No Preconditions and

Effects

Page 78: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

<wsdl:description> <wsdl:types> <xs:schema elementFormDefault="qualified"> <xs:element name=“OrderRequest” sawsdl:modelReference= “http://ontology/po#OrderRequest”> </xs:element> </xs:schema> </wsdl:types> <wsdl:interface name="Order“ sawsdl:modelReference= "http://.../products/electronics"> <wsdl:operation name=“order” pattern="…“ sawsdl:modelReference= "http://ontology/po#RequestPurchaseOrder"> <wsdl:input element="OrderRequest" /> <wsdl:output element="OrderResponse" /> </wsdl:operation> </wsdl:interface></wsdl:description>

modelReference• May be used with every

element within WSDL• “However, SAWSDL

defines its meaning only for – wsdl:interface– wsdl:operation– wsdl:fault– xs:element– xs:complexType– xs:simpleType– xs:attribute.”

Page 79: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Schema Mapping Attributes

• liftingSchemaMapping – lift data from XML to a

semantic model • loweringSchemaMapping

– lower data from a semantic model to XML

• Can map to XSLT script

<wsdl:description> <wsdl:types> <xs:schema elementFormDefault="qualified"> <xs:element name="OrderRequest“ sawsdl:liftingSchemaMapping= "http://.../mapping/Response2Ont.xslt" sawsdl:loweringSchemaMapping= "http://.../mapping/Ont2Request.xml"> </xs:element> </xs:schema> </wsdl:types> <wsdl:interface name="Order“ sawsdl:modelReference="..."> <wsdl:operation name="order“ pattern="…“ sawsdl:modelReference="..."> <wsdl:input element="OrderRequest" /> <wsdl:output element="OrderResponse" /> </wsdl:operation> </wsdl:interface></wsdl:description>

Page 80: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

SAWSDL References

• The Standard– http://www.w3.org/TR/sawsdl/

• Implementation Report– http://www.w3.org/2002/ws/sawsdl/CR/

• Initial Specs for Use with OWL-S– “Bringing Semantic Annotations to Web Services: OWL-S from the

SAWSDL Perspective”• ISWC 2007

– “Grounding OWL-S in SAWSDL”• ICSOC 2007

• Initial Specs for Use with WSMO– WSMO Grounding

• http://www.wsmo.org/TR/d24/d24.2/v0.1/20070427/– WSMO Lite

• http://wsmo.org/TR/d11/v0.2/20070622/d11v02_20070622.pdf

Page 81: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Relevant URLs• DIP

– http://dip.semanticweb.org/

• IRS-III – http://kmi.open.ac.uk/projects/irs/

• OWL-S, SAWSDL – See earlier slide

• WSMO Working Group– http://www.wsmo.org/

• Conceptual Models of Services WG– http://cms-wg.sti2.org

• SOA4All– http://www.soa4all.eu/

• Service Web 3.0– http://www.serviceweb30.eu

Page 82: Semantic Web Services John Domingue and David Martin

Introduction to the Semantic Web Tutorial

Conclusion

• The service paradigm has become an important and integral part of the Web (including intranets)

• SWS aims to provide an expressive, comprehensive framework for handling activities on the Web– Enabling greater automation of discovery, selection, invocation,

composition, monitoring, and other service management tasks– Should enable use of agents on the Web

• Simplicity and widespread adoption of WS building blocks are enablers

• Many tools & applications exist today; mostly prototype• Many challenges remain

– SWS is a vigorous research area

• Strong interest and many paths to adoption exist– E.g., the standards path

• Stay tuned – it will be interesting to see how far (and how fast) the service/process/agent-oriented Web will evolve!