Slide1:
Table of Contents: Table of Contents
Semantic Web Services: Semantic Web Services Michal Zaremba
Semantic Web -The Vision: Static 500 million users
more than 3 billion pages WWW
URI, HTML, HTTP Semantic Web -The Vision Syntax Semantics Dynamic
Semantic Web -The Vision: WWW
URI, HTML, HTTP Serious Problems in
information finding,
information extracting,
information representing,
information interpreting and
and information maintaining. Semantic Web
RDF, RDF(S), OWL Static Semantic Web -The Vision Syntax Semantics Dynamic
Semantic Web -The Vision: WWW
URI, HTML, HTTP Bringing the computer back as a device for computation Semantic Web
RDF, RDF(S), OWL Dynamic Web Services
UDDI, WSDL, SOAP Static Semantic Web -The Vision Syntax Semantics
Semantic Web -The Vision: WWW
URI, HTML, HTTP Bringing the web to its full potential Semantic Web
RDF, RDF(S), OWL Dynamic Web Services
UDDI, WSDL, SOAP Static Intelligent Web
Services Semantic Web -The Vision Syntax Semantics
Ontology Definition : Ontology Definition
formal, explicit specification of a shared conceptualization
Ontology Example: Ontology Example Concept
conceptual entity of the domain
Property
attribte describing a concept
Relation
relationship between concepts or properties
Axiom
coherent description between Concepts / Properties / Relations via logical expressions Person Student Professor Lecture isA – hierarchy (taxonomy) name email matr.-nr. research
field topic lecture
nr. attends holds holds(Professor, Lecture) :-
Lecture.topic € Professor.researchField
Ontology Languages : Ontology Languages Requirements:
'expressivity'
knowledge representation
ontology theory support
'reasoning support'
sound (unambiguous, decidable)
support reasoners / inference engines
Semantic Web languages:
web compatibility
Existing W3C Recommendations:
XML, RDF, OWL
“Semantic Web Language Layer Cake”: 'Semantic Web Language Layer Cake'
Web Services: Web Services Web Services: [Stencil Group]
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
Web Services Problems: Web Services Problems
Web Services Problems: Web Services Problems
Lack of SWS standards: Lack of SWS standards Current technology does not allow realization of any of the parts of the Web Services’ usage process:
Only syntactical standards available
Lack of fully developed markup languages
Lack of marked up content and services
Lack of semantically enhanced repositories
Lack of frameworks that facilitate discovery, composition and execution
Lack of tools and platforms that allow to semantically enrich current Web content
Semantic Web Services: 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 data interpretation (Semantic Web aspect)
Define semantically driven technologies for automation of the Web Service usage process (Web Service aspect)
Semantic Web Services (2): Semantic Web Services (2) Usage Process:
Publication: Make available the description of the capability of a service
Discovery: Locate different services suitable for a given task
Selection: Choose the most appropriate services among the available ones
Composition: Combine services to achieve a goal
Mediation: Solve mismatches (data, protocol, process) among the combined
Execution: Invoke services following programmatic conventions
Semantic Web Services (3): Semantic Web Services (3) Usage Process – 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
Conclusion: Semantic Web Services
=
Semantic Web Technology
+
Web Service Technology
Conclusion
Web Service Modelling Ontology(WSMO): Web Service Modelling Ontology (WSMO) Adrian Mocan
Features : Features
WSMO is a complete conceptual model for Semantic Web Services and related aspects
Identifies four main elements: Web Services, Goals, Ontologies, and Mediators
Overview: Overview WSMO Working Groups
WSMO Design Principles
WSMO Top Level Notions
Ontologies
Goals
Web Services
Mediators
Basic Notions of WSML
Using WSMO to address Web Services problems
Discovery
Composition
Grounding
WSMO Working Groups: WSMO Working Groups A Conceptual Model for SWS A Formal Language for WSMO A Rule-based Language for SWS Execution Environment for WSMO
WSMO Design Principles: Strong Decoupling andamp; 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)
Execution Semantics
reference implementation (WSMX) WSMO Design Principles
WSMO Top Level Notions: WSMO Top Level Notions Objectives that a client may have
when consulting a Web Service Provide the formally specified terminology
of 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
Non-Functional Properties: Non-Functional Properties
Every WSMO elements is described by properties that contain relevant, non-functional aspects of the item
Used for management and element overall description
Core Properties:
Dublin Core Metadata Element Set plus version (evolution support)
W3C-recommendations for description type
Web Service Specific Properties:
Quality aspects and other non-functional information of Web Services
Used for Service Selection
Non-Functional Properties: Non-Functional Properties ontology andlt;http://www.wsmo.org/2004/d3/d3.2/v0.1/20040628/dt.wsmlandgt;
nonFunctionalProperties
dc:title 'Date and Time Ontology'
dc:creator 'DERI International'
dc:subject 'Date', 'Time', 'Date and Time Algebra'
dc:description 'generic representation of data and time including basic algebra'
dc:publisher 'DERI International'
dc:contributor 'Holger Lausen', 'Axel Polleres', 'Ruben Lara'
dc:date 2004-06-28
dc:type http://www.wsmo.org/2004/d2/v0.3/20040329/#ontos
dc:format 'text/plain'
dc:language 'en-US'
dc:relation andlt;http://www.w3.org/TR/xmlschema-2/andgt;
dc:coverage 'World'
dc:rights andlt;http://www.deri.org/privacy.htmlandgt;
version 1.21
WSMO Ontologies: WSMO Ontologies Provide the formally specified terminology
of the information used by all other components Semantic description of Web Services:
Capability (functional)
Interfaces (usage) Objectives that a client may have
when consulting a Web Service Connectors between components with mediation facilities for handling heterogeneities
Ontology Specification:
Non functional properties
Imported Ontologies Importing existing ontologies where no heterogeneities arise
Used mediators: OO Mediators (ontology import with terminology mismatch handling)
‘Standard’ Ontology Notions:
Concepts set of concepts that belong to the ontology
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
WSMO Goals : WSMO Goals Provide the formally specified terminology
of the information used by all other components Semantic description of Web Services:
Capability (functional)
Interfaces (usage) Objectives that a client may have
when consulting a Web Service Connectors between components with mediation facilities for handling heterogeneities
Goals: Goals
De-coupling of Request and Service
Goal-driven Approach, derived from AI rational agent approach
Requester formulates objective independent / without regard to services for resolution
‘Intelligent’ mechanisms detect suitable services for solving the Goal
Allows re-use of Services for different purposes
Usage of Goals within Semantic Web Services
A Requester, that is an agent (human or machine), defines a Goal to be resolved
Web Service Discovery detects suitable Web Services for solving the Goal automatically
Goal Resolution Management is realized in implementations
Goal Specification: Goal Specification Non functional properties
Imported Ontologies
Used mediators
OO Mediators: - import ontologies with integration
GG Mediators: - allow goal definition by reusing an already existing goal
- allow specification of Goal Ontologies
Post-conditions - the state of the information space that is desired.
The result expected from execution a Web Service
Expressed as an axiom (unambiguous, based on ontology)
Effects - the state of the world that is desired.
Expected changes in the world that should hold after a service execution
Expressed as an axiom (unambiguous, based on ontology)
WSMO Web Services: WSMO Web Services Provide the formally specified terminology
of the information used by all other components Semantic description of Web Services:
Capability (functional)
Interfaces (usage) Objectives that a client may have
when consulting a Web Service Connectors between components with mediation facilities for handling heterogeneities
WSMO Web Service Description : WSMO Web Service Description
Web Service
Implementation
(not of interest in Web Service Description)
Choreography --- Interfaces --- Orchestration Capability
Functional description Advertise of Web Service
Support for WS Discovery Interaction Interface
for consuming WS
Messages
External Visible
Behavior
Grounding Realization of WS by using other WS
Functional
decomposition
WS Composition Non-functional Properties
Core + WS-specific Complete item description
Quality aspects
WS Management
Web Service specific Properties: Web Service specific Properties Non-functional information of Web Services:
Accuracy Robustness
Availability Scalability
Financial Security
Network-related QoS Transactional
Performance Trust
Reliability
Capability Specification: Capability Specification Non functional properties
Imported Ontologies
Used mediators
OO Mediator: importing ontologies as terminology definition
WG Mediator: link to a Goal that is solved by the Web Service
Pre-conditions
What a web service expects (conditions over the input)
Assumptions
Conditions on the state of the world before the WS execution
Post-conditions
The result of the WS in relation to the input, and conditions on it
Effects
Conditions on the state of the world after the WS execution
(i.e. changes in the state of the world)
Choreography in WSMO : Choreography in WSMO 'Choreography describes the behavior of the service from a user point of view'
External Visible Behavior
those aspects of the workflow of a Web Service where User Interaction is required
described by process / workflow constructs
Communication Structure
messages sent and received
their order (messages are related to activities)
Choreography in WSMO (2): Choreography in WSMO (2) Grounding
Concrete communication technology for interaction
Choreography related errors (e.g. input wrong, message timeout, etc.)
Formal Model
Allow operations / mediation on Choreographies
Formal Basis: Abstract State Machines (ASM)
WSMO Orchestration: '…how the overall functionality of the service is achieved by the cooperation of other WSMO service providers '
Orchestration Language
Decomposition of Web Service functionality
Control structure for aggregation of Web Services
Web Service Composition
Combine Web Services into higher-level functionality
Resolve mismatches occurring between composed Web Services
Proxy Technology
Placeholders for used Web Services
Facility for applying the Choreography of used Web Services WSMO Orchestration
WSMO Orchestration Overview: WSMO Orchestration Overview Decomposition of the Web Service functionality into sub-functionalities
Proxies as placeholders for used Web Services
Control Structure for aggregation of other Web Services
Choreography & Orchestration Example: VTA example:
WSMO Choreography models all visible interactions of the service (Orchestration shows how all the interaction are related) Choreography andamp; Orchestration Example
WSMO Mediators: WSMO Mediators Provide the formally specified terminology
of the information used by all other components Semantic description of Web Services:
Capability (functional)
Interfaces (usage) Objectives that a client may have
when consulting a Web Service Connectors between components with mediation facilities for handling heterogeneities
Mediation : Mediation Heterogeneity …
Mismatches on structural / semantic / conceptual level
Occur between different components that shall interoperate
Especially in distributed andamp; 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:
Data Level: mediate heterogeneous Data Sources
Process/Protocol Level: mediate heterogeneous
Business Processes/Communication Patterns
WSMO Mediators Overview: WSMO Mediators Overview
Mediator Structure: Mediator Structure
GG Mediators: GG Mediators Aim:
Support specification of Goals by re-using existing Goals
Allow definition of Goal Ontologies (collection of pre-defined Goals)
Terminology mismatches handled by OO Mediators
Example: Goal Refinement GG Mediator
Mediation Service Source Goal
'Buy a ticket' Target Goal
'Buy a Train Ticket'
WG & WW Mediators: WG andamp; WW Mediators WG Mediators:
link a Web Service to a Goal and resolve occurring mismatches
match Web Services and Goals that do not match a priori
handle terminology mismatches between Web Services and Goals
broader range of Goals solvable by a Web Service
WW Mediators:
enable interoperability of heterogeneous Web Services
handle terminology mismatches between Web Services
support automated collaboration between Web Services
Data Mediation for resolving terminology mismatches (OO Mediators)
Process/Protocol Mediation for establishing valid multi-party collaborations and making Business Processes interoperable
Web Services Modelling Language (WSML): Web Services Modelling Language (WSML) Adrian Mocan
WSML - Web Service Modeling Language: WSML - Web Service Modeling Language WSML provides a formal grounding for the conceptual elements of WSMO, based on:
Description Logics
Rule Languages
First-Order Logic
Rationale of WSML: Rationale of WSML Provide a Web Service Modeling Language based on the WSMO conceptual model
Concrete syntax
Semantics
Provide a Rule Language for the Semantic Web
Many current Semantic Web languages have
undesirable computational properties
unintuitive conceptual modeling features
inappropriate language layering
RDFS/OWL
OWL Lite/DL/Full
OWL/SWRL
Variants of WSML: Variants of WSML
WSML Conceptual Syntax for Ontologies: WSML Conceptual Syntax for Ontologies Ontologies
Namespaces
Imported Ontologies
Used Mediators Concepts
Relations
Functions
Special kind of relation
Instances
Explicitly defined in ontology
Retrieved from external instance store
Axioms Extra-Logical declarations Logical Declarations Non-Functional Properties
WSML Logical Expressions: WSML Logical Expressions Frame- and first-order-based concrete syntax (BNF Grammar in D2, Appendix B)
Elements:
Function symbols (e.g. f())
Molecules (e.g. Human subClassOf Animal, John memberOf Human, John[name hasValue ‘John Smith’]).
Predicates (e.g. distance(to:?x, from:?y, distance:?z))
Logical connectives (or, and, not, implies, equivalent, impliedBy, forall, exists)
Example:
?x memberOf Human
equivalent
?x memberOf Animal and ?x memberOf LegalAgent.
WSML Goals and Web Services: WSML Goals and Web Services Goal / Web Service
assumptions
effects
pre-conditions
post-conditions
are defined through WSML logical expressions
Logical expressions are based on ontologies
WSML-Flight - Example: WSML-Flight - Example
WSML Summary: WSML Summary Formal languages for WSML
Variants:
WSML-Core
WSML-Flight
WSML-Rule
WSML-DL
WSML-Full
Modular, Frame-based
Conceptual syntax vs. Logical Expressions
Syntaxes:
Human readable
XML
OWL/RDF
Using WSMO to address Web Services problems: Using WSMO to address Web Services problems Adrian Mocan
WSMO Discovery - Foundations: WSMO Discovery - Foundations 'Web service' and 'service' have to be distinguished:
Web service: a computational entity able to perform many services, e.g. Amazon Web service
Service: a concrete invocation of a Web service, e.g. buying „Silver Bullet' for EUR 37,40 with free delivery within 2-3 days.
Heuristic Classifications (William J. Clancey, 1985)
Abstraction
Process of translating concrete descriptions into features usable for classification, e.g. a concrete body temperature into „lower fever'
Matching
Inferring potential classification or solutions from extracted features
Refinement
Inferring final diagnoses; it may include the acquisition of new features describing the given case
WSMO Discovery: WSMO Discovery
WSMO Discovery: WSMO Discovery Abstracting goals from concrete user desire, e.g.: „Buying a train ticket from Innsbruck to Karlsruhe for today' into 'buying train tickets in Europe'.
WSMO Discovery: WSMO Discovery Abstracting goals from concrete user desire, e.g.: „Buying a train ticket from Innsbruck to Karlsruhe for today' into 'buying train tickets in Europe'. Matching between abstract goals and abstract services, e.g. 'train tickets in Europe' and 'transportation in Europe'
WSMO Discovery: WSMO Discovery Abstracting goals from concrete user desire, e.g.: „Buying a train ticket from Innsbruck to Karlsruhe for today' into 'buying train tickets in Europe'. Matching between abstract goals and abstract services, e.g. 'train tickets in Europe' and 'transportation in Europe' Based on the use of an Web service to discover the actual service.
Requires strong mediation (protocol, process and data)
WSMO Discovery: WSMO Discovery Abstracting goals from concrete user desire, e.g.: „Buying a train ticket from Innsbruck to Karlsruhe for today' into 'buying train tickets in Europe'. Matching between abstract goals and abstract services, e.g. 'train tickets in Europe' and 'transportation in Europe' Based on the use of an Web service to discover the actual service.
Requires strong mediation (protocol, process and data)
Description and Discovery: Description and Discovery Capability descriptions - Levels of abstraction andamp; possible accuracy What? (Syntactically) What? (Semantic „Light') What andamp; When? (Semantic „Heavy') Concrete capability Abstract capability Syntactic capability complete andamp; perhaps correct complete andamp; correct
(if user input known andamp; interaction) perhaps complete andamp; perhaps correct
Slide65: 'Automated selection, composition, and interoperation of [existing] Web services to perform some complex task, given a high-level description of an objective.'
Web services are described at two abstraction levels:
functional (or capability) level
the focus is on the service inputs, outputs, preconditions, and effects
WSMO capability model
process level
the Web service is defined by an activity flow or an interaction pattern
WSMO interface model Web Service Composition
Functional-level vs. process-level- Composition task -: Functional-level vs. process-level - Composition task - Functional-level composition
select a set of services that, combined in a suitable way, are able to match a given objective:
Given the requirements for a trip (destination, duration, budget…), find the services that are necessary to prepare the trip (Deutsche Bahnhof, Hotels@Karlsruhe, Hertz…)
Process-level composition
define an interaction pattern with the selected services, so that an executable implementation of the composition is obtained:
Find the correct order for the interactions with the selected services (e.g., interactions with train and hotel have to be interleaved to guarantee consistency of arrival and departure dates)
Service Grounding – WSMO: Service Grounding – WSMO Deal with existing WSDL services
Map from XML Schema used in WSDL to WSMO
Use existing tools to mediate from WSMO ontology to WSMO ontology
Also investigating
Using XSLT to map from XML-S of WSDL directly to WSML/XML of ontology used by WSMO description
Ultimate aim to have semantic description of interface grounding in the choreography
Service Grounding – WSMO: Service Grounding – WSMO Amazon WS WSDL XML Schema WSMO WS Interface Book Ontology WSMO ontology
from XML Schema Mapping Rules Create WSMO description 1 used by Map XML schema to WSMO conceptual model 2 Create Mapping Rules 3 Use mapping rules from WSMO choreography 4
Conclusion: How WSMO Addresses WS problems: Conclusion: How WSMO Addresses WS problems Discovery
Provide formal representation of capabilities and goal
Conceptual model for service discovery
Different levels to Web Service discovery
Composition
Provide formal representation of capabilities and choreographies
Invocation
Support any type of WS invocation mechanism
Clear separation between WS description and implementation
Guaranteeing Security and Policies
No explicit policy and security specification yet
Proposed solution will interoperate with WS standards
Mediation and Interoperation
Mediators as a key conceptual element
Mediation mechanism not dictated
(Multiple) formal choreographies + mediation enabled interoperation
The solutions are envisioned maintaining a strong relation with existing WS standards
Web Service Execution Environment(WSMX): Web Service Execution Environment (WSMX) Michal Zaremba
Overview: Overview WSMX Overview
Components and System Architecture
Interrelationship of components
Execution semantics
Component interfaces
Data flow between components
WSMX Introduction: WSMX Introduction WSMX is a software framework that allows runtime binding of service requesters and service providers
WSMX interprets service requester goal to
Discover matching services
Select the service that best fits
Provide data mediation if required
Make the service invocation
WSMX is based on the conceptual model provided by WSMO
WSMX has a formal execution semantics
WSMX has service oriented and event-based architecture based on microkernel design using such enterprise technologies as J2EE, Hibernate, Spring, JMX, etc.
WSMX Design Principles: WSMX Design Principles Strong Decoupling andamp; 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
Scope of WSMX Development: Scope of WSMX Development Reference implementation for WSMO
Complete architecture for SWS discovery, mediation, selection and invocation
Example of implemented functionality - achieving a user-specified goal by invoking WS described with the semantic markup
System Architecture: System Architecture
Dynamic Execution Semantics: Dynamic Execution Semantics WSMX consists of loosely coupled components
Components might be dynamically plug-in or plug-out
Execution Semantics - invocation order of components
Event-based implementation
New execution semantics can appear in the future including new components
We need a flexible way to create new execution semantics and deploy them in the system
Ultimate goal is to execute workflow definition describing interactions between system components
Define “Business” Process: Define 'Business' Process
Event-based Implementation: Event-based Implementation
System Architecture: System Architecture
System Architecture: System Architecture Request to discover Web services. May be sent to adapter or adapter may extract from backend app.
System Architecture: System Architecture Goal expressed in WSML sent to WSMX System Interface
System Architecture: System Architecture Comm Manager component implements the interface to receive WSML goals
System Architecture: System Architecture Comm Manager tells core Goal has been recieved
System Architecture: System Architecture Choreography wrapper
Picks up event for Choreography component
System Architecture: System Architecture A new choreography
Instance is created
System Architecture: System Architecture Core is notified that choreography instance has been created.
System Architecture: System Architecture Parser wrapper picks up event for Parser component
System Architecture: System Architecture WSML goal is parsed to internal format
System Architecture: System Architecture
System Architecture: System Architecture
System Architecture: System Architecture Discovery is invoked
for parsed goal
System Architecture: System Architecture
System Architecture: System Architecture
System Architecture: System Architecture Discovery component requires data mediation.
System Architecture: System Architecture
System Architecture: System Architecture
System Architecture: System Architecture After data mediation, discovery component completes its task.
System Architecture: System Architecture
System Architecture: System Architecture
System Architecture: System Architecture After discovery, the choreography instance for goal requester is checked for next step in interaction.
System Architecture: System Architecture
System Architecture: System Architecture
System Architecture: System Architecture Next step in choreography is to return set of discovered Web services to goal requester
System Architecture: System Architecture Set of Web Service descriptions expressed in WSML sent to appropriate adapter
System Architecture: System Architecture Set of Web Service descriptions expressed in requester’s own format returned to goal requester
WSMX Summary: WSMX Summary Event based component architecture
Conceptual model is WSMO
End to end functionality for executing SWS
Has a formal execution semantics
Open source code base at sourceforge
Developers welcome
WSMX Useful Links: WSMX Useful Links Home
http://www.wsmx.org/
Overview
http://www.wsmo.org/2004/d13/d13.0/v0.1/
Architecture
http://www.wsmo.org/2004/d13/d13.4/v0.2/
Mediation
http://www.wsmo.org/2004/d13/d13.3/v0.2/
Execution Semantics
http://www.wsmo.org/2004/d13/d13.2/v0.1/
Open source code base at SourceForge
https://sourceforge.net/projects/wsmx
IRS-III: A framework and platform for Semantic Web Services: IRS-III: A framework and platform for Semantic Web Services Liliana Cabral
IRS-III: IRS-III The Internet Reasoning Service is an infrastructure for publishing, locating, executing and composing Semantic Web Services, organized according to the WSMO conceptual model
IRS-III Framework: IRS-III Server Domain Models Web Service Descriptions + Registry of Implementors Goal Descriptions IRS Publisher S O A P IRS Publisher IRS Publisher IRS Publisher Lisp Java Java WS IRS-III Framework Mediator Descriptions
IRS-III Features: IRS-III Features Provides capability-centred service invocation
Provides built-in brokering and service discovery support
Publishing support for variety of platforms
Java Web Services, Java, Lisp, Web Applications
Enables publication of ‘standard code’
Provides clever wrappers automatically, which turn code into web services
One-click publishing of web services
Provides Java API for client applications
Based on Soap messaging standard
IRS-III Architecture: LispWeb Server IRS-III Architecture IRS-III Server WS Publisher Registry OWL(-S) Handler OWL(-S) SOAP Handler SOAP Publishing Platforms Web Service Java Code Web Application SOAP
Publishing Platform Architecture: Publishing Platform Architecture IRS-III Publishing Platform HTTP Server SOAP Handler Service Registrar Service
Invoker WS Service Registry IRS-III Server Invocation Client SOAP SOAP SOAP Web Service 1 Web Service 2 Web Service 3
IRS-III/WSMO differences: 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)
SWS in IRS III: SWS in IRS III
SWS Creation & Usage Steps: SWS Creation andamp; Usage Steps Create a goal description
(e.g. book-train-goal)
Add input and output roles
Include role type and soap binding
Create a wg-mediator description
Link a goal to a Web Service
Source component = goal
Possibly add a mediation service
Create a web service description
Used-mediator of WS capability = wg-mediator above
Publish Lisp function against web service description
Invoke web service by ‘achieve goal’
Multiple Web Services for a Goal: Multiple Web Services for a Goal Each WS links to a Goal through the mediator in the used-mediator slot of capability
Some WS may share a mediator
Define a constraint for solving the Goal - a logical expression for assumption slot of WS capability
logical expression format
(kappa (?goal) andlt;ocml relationsandgt;)
Getting the value of an input role
(wsmo-role-value ?goal andlt;role-nameandgt;)
Valid Logical Expressions (relations): Valid Logical Expressions (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:
=, ==, andlt;, andgt;, member
Example:
(kappa (?goal)
(member (wsmo-role-value ?goal 'has_source_currency) '(euro pound)))
Defining a WG-Mediator: Defining a WG-Mediator G WS WGMediator G Source Target Mediation Service passenger (person) time-date (list) time-date (univ-time) time-date (univ-time) departure (city) destination (city) time-date (list)
Defining a Mediation Service: Defining a Mediation Service Defined in the Mediator
Mediation-service = Goal
Web Service implements the mediation (mappings)
Mediation Goal input roles are a subset of source Goal input roles
Mediation Goal output is a subset of target Web Service input roles.
Goal Based Invocation: Goal Based Invocation Instantiate Goal Description
Exchange-rate-goal
Has-source-currency: us-dollars
Has-target-currency: pound Web Service Discovery
European-exchange-rate-ws
Non-european-exchange-rate-ws
European-bank-exchange-rate-ws Goal -andgt; WG Mediator -andgt; WS/Capability/Used-mediator Web service selection
European-exchange-rate Mediate input values
‘$’ -andgt; us-dollar WS -andgt; Capability -andgt; Assumption
expression Mediation Invoke selected web service
European-exchange-rate Invocation
IRS-III Demo: IRS-III Demo Liliana Cabral
European Travel Scenario: European Travel Scenario
European Travel Demo : European Travel Demo
Demo - Objective: Demo - Objective 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
Create Goal, Web service and Mediator WSMO descriptions in IRS-III (european-travel-service-descriptions) for available services. Service constraints involves start and end locations and the type of traveller. Use the assumption slot to express this.
Publish available lisp functions against Web Service descriptions
Invoke the web services through ‘Achieve Goal’
Solution using IRS-III browser will be provided
Travel Related Knowledge Models: Travel Related Knowledge Models
Key Classes, Relations, Instances(European-Train-Travel-Application) : Key Classes, Relations, Instances (European-Train-Travel-Application) Is-in-country andlt;cityandgt; andlt;countryandgt; e.g.
(is-in-country berlin germany) -andgt; true
student instances: john matt michal
business-person instances: liliana michael
Goals: Goals 1- Get train timetable
Inputs: origin and destination cities, date
Output: timetable (list)
2- Book train
Inputs: passenger name, origin and destination cities, departure time-date
Output: booking information (string)
Services: 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
Service constraints: 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
Available Functions (1/3): 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 476 going from MILTON-KEYNES to LONDON at 16:34, 15, SEPTEMBER 2004.
The price is 179 Euros.'
3- book-french-train-journey
sinuhe paris lyon (3 4 6 18 8 2004)
'SNCF: SINUHE is booked on the 593 going from PARIS to LYON at 6:12, 18, AUGUST 2004.
The price is 25 Euros.'
Available Functions (2/3): Available Functions (2/3) 4- book-german-train-journey
christoph berlin frankfurt 3305020023
'German Rail (Die Bahn): CHRISTOPH is booked on the 362 going from BERLIN to FRANKFURT at 14:47, 24, SEPTEMBER 2004.
The price is 35 Euros.'
5- book-austrian-train-journey
sinuhe vienna innsbruck 3304686609
'Austrian Rail (OBB): SINUHE is booked on the 681 going from VIENNA to INNSBRUCK at 17:43, 20, SEPTEMBER 2004.
The price is 36 Euros.'
Available Functions (3/3): 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 408 going from LONDON to NICE at 6:44, 18, AUGUST 2004.
The price is 86 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
Using IRS-III Browser for the VTA Demo application: Using IRS-III Browser for the VTA Demo application Semantic Descriptions of:
Goals
Web Services
Mediators
Publishing
Invocation
IRS-III Browser: IRS-III Browser
Creating a Goal description: Creating a Goal description
Creating a Mediator description: Creating a Mediator description
Creating a Web Service description: Creating a Web Service description
Adding a Mediator to the Web Service Capability: Adding a Mediator to the Web Service Capability
Adding a constraint to the Web Service Capability: Adding a constraint to the Web Service Capability
Creating a Goal (Mediation Service): Creating a Goal (Mediation Service)
Creating a Mediator description (Mediation Service): Creating a Mediator description (Mediation Service)
Adding a Mediator to the Web Service (Mediation Service): Adding a Mediator to the Web Service (Mediation Service)
Publishing Web Services (lisp functions): Publishing Web Services (lisp functions)
Achieving a Goal (Mediation Service): Achieving a Goal (Mediation Service)
Achieving a Goal: Achieving a Goal
IRS-III Future Work: IRS-III Future Work IRS-III Choreography definition language is being specified.
Based on guarded state transitions as forward chaining rules
IRS-III Orchestration is being defined.
OO-mediators will have mapping rules.
IRS-III Link: IRS-III Link Webpage: http://kmi.open.ac.uk/projects/irs/
Download available:
Java API
Browser/Editor
WSMO Tools: WSMO Tools Liliana Cabral
WSMO Tools(in development): WSMO Tools (in development) WSMX Server - http://sourceforge.net/projects/wsmx
IRS-III API - http://kmi.open.ac.uk/projects/irs/
WSMO API/WSMO4J - http://wsmo4j.sourceforge.net/
Java API for WSMO / WSML
WSMT – Web Services Modelling Toolkit
WSMO Studio - http://www.wsmostudio.org/
(currently: SWWS Studio)
Creation and editing of WSMO specifications
WSML Editor
Ontology Management System OMS
Open for Plug-Ins for SWS tools (discovery, composer, …)
WSML Validator and Parser
validates WSMO specifications in WSML
parsing into intermediary FOL format (every FOL compliant syntax can be derived from this)
OWL Lite Reasoner for WSML-OWL variant
OWL Lite Reasoner based on TRIPLE
Summary, Conclusions & Future Work: Summary, Conclusions andamp; Future Work Liliana Cabral
Conclusions : Conclusions This tutorial should enable you to:
understand aims andamp; challenges within Semantic Web Services
understand the objectives and features of WSMO
model Semantic Web Services with WSMO
correctly assess emerging technologies andamp; products for Semantic Web Services
use implemented tools to create SWS
References WSMO: References WSMO The central location where WSMO work and papers can be found is WSMO Working Group: http://www.wsmo.org
In regard of WSMO languages: WSML Working Group: http://www.wsml.org
WSMO implementation: WSMX working group can be found at: http://www.wsmx.org
WSMX open source can be found at: https://sourceforge.net/projects/wsmx/
References WSMO: References WSMO [WSMO Specification]: Roman, D.; Lausen, H.; Keller, U. (eds.): Web Service Modeling Ontology, WSMO Working Draft D2, final version 1.1, 10 February 2005.
[WSMO Primer]: Feier, C. (ed.): WSMO Primer, WSMO Working Draft D3.1, 23 March 2005.
[WSMO Choreography and Orchestration] Roman, D.; Scicluna, J.; Feier, C. :(eds.): Ontology-based Choreography and Orchestration of WSMO Services , WSMO Working Draft D14, 1 March 2005.
[WSMO Use Case] Stollberg, M.; Lara, R. (ed.): WSMO Use Case Modeling and Testing, WSMO Working Drafts D3.2; D3.3.; D3.4; D3.5, final version 0.1, 17 November 2004.
References WSMO: References WSMO [Arroyo et al. 2004] Arroyo, S., Lara, R., Gomez, J. M., Berka, D., Ding, Y. and Fensel, D: 'Semantic Aspects of Web Services' in Practical Handbook of Internet Computing. Munindar P. Singh, editor. Chapman Hall and CRC Press, Baton Rouge. 2004.
[Berners-Lee et al. 2001] Tim Berners-Lee, James Hendler, and Ora Lassila, 'The Semantic Web'. Scientific American, 284(5):34-43, 2001.
Domingue, J. Cabral, L., Hakimpour, F., Sell D., and Motta, E., (2004) IRS-III: A Platform and Infrastructure for Creating WSMO-based Semantic Web Services WSMO Implementation Workshop (WIW), Frankfurt, Germany, September,2004
[Fensel, 2001] Dieter Fensel, 'Ontologies: Silver Bullet for Knowledge Management and Electronic Commerce', Springer-Verlag, Berlin, 2001.
[Gruber, 1993] Thomas R. Gruber, 'A Translation Approach to Portable Ontology Specifications', Knowledge Acquisition, 5:199-220, 1993.
[Stencil Group] - www.stencilgroup.com/ideas_scope_200106wsdefined.html
References WSMX: References WSMX Adrian Mocan and Emilia Cimpian and Michal Zaremba and Christoph Bussler: Mediation in Web Service Modeling Execution Environment (WSMX), Information Integration on the Web (iiWeb2004), Sep, 2004, Toronto, Canada.
Adrian Mocan: Ontology Mediation in WSMX, 1st WSMO Implementation Workshop, Sep, 2004, Frankfurt, Germany.
Matthew Moran and Adrian Mocan: WSMX-An Architecture for Semantic Web Service Discovery, Mediation and Invocation, 3rd International Semantic Web Conference (ISWC2004), Nov, 2004, Hiroshima, Japan.
Matthew Moran and Michal Zaremba and Adrian Mocan and Christoph Bussler: Using WSMX to bind Requester andamp; Provider at Runtime when Executing Semantic Web Services, 1st WSMO Implementation Workshop, Sep, 2004, Frankfurt, Germany.
Matthew Moran and Adrian Mocan: WSMX - An Architecture for Semantic Web Service Discovery, Mediation and Invocation, Third International Semantic Web Services Conference, ISWC'04, 2004, Hiroshima, Japan.
Matthew Moran and Michal Zaremba: WSMX - An Architecture for Dynamic Composition, Mediation and Invocation of Semantic Web Services, IADIS International WWW/Internet Conference, 2004, Madrid.
Michal Zaremba and Matthew Moran: Enabling Execution of Semantic Web Services: WSMX Core Platform, Proceedings of the WIW 2004 Workshop on WSMO Implementations, Jul, 2004, Frankfurt, Germany.
Michal Zaremba, Armin Haller, Maciej Zaremba, and Matthew Moran : WSMX-Infrastructure for Execution of Semantic Web Services, ISWC 2004: Demo Papers, Nov, 2004, Hiroshima, Japan.
References IRS-III: References IRS-III J. 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, CEUR Workshop Proceedings, 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, CEUR Workshop Proceedings, 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), 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.
Acknowledgements: Acknowledgements The WSMO work is funded by the European Commission under the projects DIP, Knowledge Web, SEKT, SWWS, AKT and Esperonto; by Science Foundation Ireland under the DERI-Lion project; and by the Vienna city government under the CoOperate program.