Applying Semantics to
Service Oriented Architectures
Oasis Symposium 2006
The Meaning of Interoperability
9-12 May, San Francisco
Presenters:
Adrian Mocan
Mick Kerrigan
Michal Zaremba
Special Thanks to:
Emilia Cimpian
Thomas Haselwanter
Brahmananda Sapkota
1
The Aims of this Tutorial
• Introduce the aims & challenges of Semantic Web
Services (SWS) - the WSMO approach
• Describe how SOA can be used with Semantic Web
Services – WSMX Approach
• Semantic SOA enables interoperability
OASIS Symposium 2006
2
Overview
• Introduction to SWS
– WSMO
• Introduction to SOA
– WSMX
• Means of Interoperability
• Web Service Modeling Toolkit (WSMT)
• Conclusions
OASIS Symposium 2006
3
Overview
• Introduction to SWS
– WSMO
• Introduction to SOA
– WSMX
• Means of Interoperability
• WSMT
• Conclusions
OASIS Symposium 2006
4
Introduction to Semantic Web Services
• Introduction to Semantic Web
• Introduction to Web services
 Semantic Web Services
OASIS Symposium 2006
5
Semantic Web and Web Services – The Vision
500 million user
more than 3 billion pages
Static
WWW
URI, HTML, HTTP
OASIS Symposium 2006
6
Semantic Web and Web Services
Serious Problems in
information finding,
information extracting,
Information representing,
information interpreting and
information maintaining.
Static
WWW
Semantic Web
URI, HTML, HTTP
RDF, RDF(S), OWL
OASIS Symposium 2006
7
Semantic Web and Web Services – The Vision
Dynamic
Web Services
UDDI, WSDL, SOAP
Bringing the
computer back
as a device for
computation
Static
WWW
Semantic Web
URI, HTML, HTTP
RDF, RDF(S), OWL
OASIS Symposium 2006
8
Semantic Web and Web Services – The Vision
Bringing
the Web
to its full
potential
Dynamic
Static
UDDI, WSDL, SOAP
Intelligent Web
Services
WWW
Semantic Web
URI, HTML, HTTP
RDF, RDF(S), OWL
Web Services
OASIS Symposium 2006
9
Ontology Definition
conceptual model
of a domain
(ontological theory)
unambiguous
terminology definitions
Formal, explicit specification of a shared conceptualization
machine-readability
with computational
semantics
commonly accepted
understanding
OASIS Symposium 2006
10
Ontology Example
Concept
conceptual entity of the domain
Attribute
name
Person
student
nr.
property of a concept
email
Relation
research
field
isA – hierarchy (taxonomy)
relationship between concepts or
properties
Student
Professor
attends
Axiom
coherent description between
Concepts / Properties / Relations via
logical expressions
holds
Lecture
lecture
nr.
topic
holds(Professor, Lecture)  Lecture.topic  Professor.researchField
OASIS Symposium 2006
11
Ontology Languages
• Requirements:
– ”expressivity“
• knowledge representation
• ontology theory support
– ”reasoning support“
• sound (unambiguous, decidable)
• support of reasoners / inference engines
• Semantic Web languages:
– web compatibility
– Existing W3C Recommendations:
• XML, RDF, OWL
OASIS Symposium 2006
12
Semantic Web Language Layer Cake
OASIS Symposium 2006
13
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
OASIS Symposium 2006
14
Using Web Services
OASIS Symposium 2006
15
Using Web Services
OASIS Symposium 2006
16
Lack of SWS standards
• Current technology does not allow realization of any of
the parts of the Web Service usage process:
–
–
–
–
–
Only syntactical standards available
Lack of fully developed semantic markup languages
Lack of semantically 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
OASIS Symposium 2006
17
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)
OASIS Symposium 2006
18
Semantic Web Services (2)
Usage Process:
• Publication: Make available the description of the capabilities 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 (in data or process) among the
combined services
• Execution: Invoke services following programmatic conventions
OASIS Symposium 2006
19
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
OASIS Symposium 2006
20
Summary
Semantic Web Services
=
Semantic Web Technology
+
Web Service Technology
OASIS Symposium 2006
21
Overview
• Introduction to SWS
– WSMO
• Introduction to SOA
– WSMX
• Means of Interoperability
• WSMT
• Conclusions
OASIS Symposium 2006
22
Web Service Modeling Ontology (WSMO)
• A conceptual model for Semantic Web Services:
– Ontology of core elements for Semantic Web Services
– a formal description language (WSML)
– execution environment (WSMX)
• … derived from and based on the Web Service Modeling
Framework WSMF
• an European Semantic System Initiative
– “ESSI Cluster” Working Group
– joint European research and development initiative
OASIS Symposium 2006
23
WSMO Working Groups
A Conceptual Model
for SWS
A Formal Language for WSMO
A Rule-based Language for SWS
OASIS Symposium 2006
Execution Environment
for WSMO
24
WSMO Design Principles
Web Compliance
Strict Decoupling
Of Modeling Elements
Ontology-Based
WSMO
Centrality of
Mediation
Ontological Role
Separation
Execution
Semantics
Description versus Implementation
OASIS Symposium 2006
25
WSMO Top Level Notions
Objectives that a client wants to
achieve by using Web Services
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
OASIS Symposium 2006
26
Non-Functional Properties
Every WSMO elements is described by properties that contain relevant,
non-functional aspects
• Dublin Core Metadata Set:
– complete item description
– used for resource management
• Versioning Information
– evolution support
• Quality of Service Information
– availability, stability
• Other
– Owner, financial
OASIS Symposium 2006
27
Non-Functional Properties List
Dublin Core Metadata
Contributor
Coverage
Creator
Description
Format
Identifier
Language
Publisher
Relation
Rights
Source
Subject
Title
Type
Quality of Service
Accuracy
NetworkRelatedQoS
Performance
Reliability
Robustness
Scalability
Security
Transactional
Trust
Other
Financial
Owner
TypeOfMatch
Version
OASIS Symposium 2006
28
WSMO Ontologies
Objectives that a client wants
to achieve by using Web Services
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
OASIS Symposium 2006
29
Ontology Usage & Principles
• Ontologies are used as 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:
– De-Coupling:
import / re-using ontologies, modular approach
for ontology design
heterogeneity handled by OO Mediators
OASIS Symposium 2006
30
Ontology Specification
•
Non functional properties
•
Imported Ontologies importing existing ontologies
(see before)
where no heterogeneities arise
•
Used mediators
•
Ontology Elements:
Concepts
Attributes
Relations
Functions
Instances
Axioms
OO Mediators (ontology import with
terminology mismatch handling)
set of concepts that belong to the ontology, incl.
set of attributes that belong to a concept
define interrelations between several concepts
special type of relation (unary range = return value)
set of instances that belong to the represented ontology
axiomatic expressions in ontology (logical statement)
OASIS Symposium 2006
31
WSMO Web services
Objectives that a client wants
to achieve by using Web Services
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
OASIS Symposium 2006
32
WSMO Web service description
- complete item description
- quality aspects
- Web Service Management
- Advertising of Web Service
- Support for WS Discovery
Non-functional Properties
Capability
DC + QoS + Version + financial
functional description
client-service interaction
interface for consuming
WS
- External Visible
Behavior
- Communication
Structure
- ‘Grounding’
Web service
Implementation
(not of interest in Web
Service Description)
WS
WS
WS
realization of
functionality by
aggregating
other Web Services
- functional
decomposition
- WS composition
Choreography --- Service Interfaces --- Orchestration
OASIS Symposium 2006
33
Capability Specification
•
•
•
Non functional properties
Imported Ontologies
Used mediators
– OO Mediator: importing ontologies with mismatch resolution
– WG Mediator: link to a Goal wherefore service is not usable a priori
•
Pre-conditions
– What a web service expects in order to be able to provide its service
– 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 WS 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)
OASIS Symposium 2006
34
Choreography & Orchestration
VTA example:
When the service is
requested
When the service
requests
Date, Time
Date
Hotel
Hotel Service
Time
Error
Flight, Hotel
Error
Confirmation
VTA
Service
Confirmation
Date, Time
Flight
Flight Service
Error
Confirmation
•
•
Choreography = how to interact with the service to consume its functionality
Orchestration = how service functionality is achieved by aggregating other Web services
OASIS Symposium 2006
35
Choreography Aspects
• Interface for consuming Web Service
– 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)
• choreography related errors (e.g. input wrong, message timeout, etc.)
– Grounding
• concrete communication technology for interaction
– Formal Model
• reasoning on Web Service interfaces (service interoperability)
• allow mediation support on Web Service interfaces
OASIS Symposium 2006
36
Orchestration Aspects
Control Structure for aggregation of other Web Services
Web Service Business Logic
State in Orchestration
Control Flow
Data Flow
1
WS
Service Interaction
3
2
4
WS
- decomposition of service
functionality
- all service interaction via
choreographies
OASIS Symposium 2006
37
Orchestration Aspects
• Service interfaces are concerned with service consumption and
interaction
• Choreography and Orchestration as sub-concepts of Service
Interface
• Common requirements for service interface description:
– represent the dynamics of information interchange during service
consumption and interaction
– support ontologies as the underlying data model
– appropriate communication technology for information interchange
– sound formal model / semantics of service interface specifications in
order to allow operations on them.
OASIS Symposium 2006
38
Choreography and Orchestration - Overview
Choreography:
- interaction of services / service and client
- a „choreography interface“ describes the behavior of a
Web Service for client-service interaction for consuming
the service
Orchestration:
- how the functionality of a Web Service is achieved by
aggregating other Web Services
- extends Choreography descriptions by control & data flow
constructs between orchestrating WS and orchestrated WSs.
Conceptual models
User language
- based on UML2 activity diagrams
- graphical Tool for Editing & Browsing Service Interface Description
workflow constructs as basis for describing service interfaces:
- workflow based process models for describing behavior
- on basis of generic workflow constructs (e.g. van der Aalst)
Formal description of service interfaces:
- ASM-based approach
- allows reasoning & mediation
Ontologies as data model:
- every resource description based on ontologies
- every data element interchanged is ontology instance
OASIS Symposium 2006
Grounding:
- making service interfaces executable
- currently grounding to WSDL
39
WSMO Goals
Objectives that a client wants
to achieve by using Web Services
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
OASIS Symposium 2006
40
Goals
• Ontological De-coupling of Requester and Provider
• Goal-driven Approach
–
–
–
–
derived from AI rational agent approach
Requester formulates objective independently
‘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
OASIS Symposium 2006
41
Goal Specification
•
•
•
Non functional properties
Imported Ontologies
Used mediators
– OO Mediators: importing ontologies with heterogeneity resolution
– GG Mediator:
• Goal definition by reusing an already existing goal
• allows definition of Goal Ontologies
•
•
Requested Capability
– describes service functionality expected to resolve the objective
– defined as capability description from the requester perspective
Requested Interface
– describes communication behaviour supported by the requester for
consuming a Web Service (Choreography)
– Restrictions / preferences on orchestrations of acceptable Web Services
OASIS Symposium 2006
42
WSMO Mediators
Objectives that a client wants
to achieve by using Web Services
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
OASIS Symposium 2006
43
Mediation
•
Heterogeneity …
–
–
–
•
Mismatches on structural / semantic / conceptual / functional / 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 (WSMF):
(1) Data Level: mediate heterogeneous Data Sources
(2) Functional Level: mediate mismatches between Web Service/Goal and Web Service/Goals
functionalities
(3) Process/Protocol Level: mediate heterogeneous Business Processes/Communication
Patterns
•
Layers of Mediators
–
–
Specification Layer – WSMO Mediators
Implementation Layer – Levels of Mediation
OASIS Symposium 2006
44
WSMO Mediators Overview
OASIS Symposium 2006
45
Mediator Structure
Source
Component
WSMO Mediator
1 .. n
Source
Component
uses a Mediation Service via
1
Target
Component
- as a Goal
- directly
- optionally incl. Mediation
Specification layer
Implementation layer
Mediation
Services
OASIS Symposium 2006
46
OO Mediator - Example
Merging 2 ontologies
OO Mediator
Mediation Service
Train Connection
Ontology (s1)
Purchase
Ontology (s2)
Goal:
“merge s1, s2 and
s1.ticket subclassof s2.product”
Train Ticket
Purchase Ontology
Discovery
Mediation
Services
OASIS Symposium 2006
47
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
Source Goal
“Buy a ticket”
GG Mediator
Mediation Service
Target Goal
“Buy a Train Ticket”
postcondition:
“aTicket memberof trainticket”
OASIS Symposium 2006
48
WG & WW Mediators
•
WG Mediators:
–
–
–

•
link a Web Service to a Goal and resolve occurring mismatches
match Web Service 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
 support automated collaboration between Web Services
–
–
–
OO Mediators for terminology import with data level mediation
Protocol Mediation for establishing valid multi-party collaborations
Process Mediation for making Business Processes interoperable
OASIS Symposium 2006
49
Data Level Mediation
•
Scope
– Solving terminological mismatches
•
Related Aspects / Techniques:
– Ontology Integration (Mapping, Merging, Alignment)
– Data Lifting & Lowering
– Transformation between Languages / Formalisms
•
Terminology Mismatches Classification
– Conceptualization Mismatches
•
•
•
•
same domain concepts, but different conceptualization
different levels of abstraction
different ontological structure
=> resolution only includs human intervention
– Explication Mismatches
• mismatches between:
– T (Term used), D (definition of concepts), C (real world concept)
• => automated resolution partially possible
OASIS Symposium 2006
50
Functional Level Mediation
• Scope
– Solving functional mismatches between goals and/or ws
• Related Aspects/Techniques
– Discovery
– Semantic Matchmaking
• Matchmaking Mismatches
= G/WS
= G/WS
X
Exact Match
PlugIn Match
Subsumption Match
Intersection Match
OASIS Symposium 2006
No Match
51
Process Level Mediation
• Scope
– Resolves communication mismatches and establish behavior
compatibility
• Related Aspects/Techniques
– Data and control flow composition
• Process Mismatches
– Signature terminology mismatches (need for data level mediation)
– Communication/behavior mismatches
Business
Partner1
A
B
PM
Business
Partner1
A
B
Business
Partner1
OASIS Symposium 2006
A and B
B
Business
Partner2
PM
B
A
Business
Partner2
PM
A
B
Business
Partner2
Business
Partner1
A
B
PM
Business
Partner1
A
AckA
PM
A and B
A
Business
Partner2
Business
Partner2
52
WSMO Mediators and Mediation Levels
• ooMediator
• wgMediator
– Data Level Mediation
– Data Level Mediation
– Functional Level Mediation
– Process Level Mediation
• ggMediator
– Data Level Mediation
– Functional Level Mediation
• wwMediator
– Data Level Mediation
– Functional Level Mediation
– Process Level Mediation
Ex:
(not of interest in Service
Interface Description)
WW Mediator
internal
business logic of
Web Service
OASIS Symposium 2006
internal
business logic of
Web Service
(not of interest in Service
Interface Description)
53
Overview
• Introduction to SWS
– WSMO
• Introduction to SOA
– WSMX
• Means of Interoperability
• WSMT
• Conclusions
OASIS Symposium 2006
54
Information Technology versus Mission of Organizations
• Goals
Mission
• Objectives
• Strategy selection
Strategies
• Value Proposition development
• Long term vision alignment
• Critical success factors for
customers and service offerings
Capabilities
Key Enablers
OASIS Symposium 2006
• Specific definition functional
performance
• People (e.g., organization structure,
human capital)
• Business Processes
• IT (e.g., systems)
• Physical Infrastructure (e.g.,
facilities, workplace environment)
Existing IT architectures cannot support changing needs
Existing Architectures do not scale
No agility, processes redundant, lack of system interactions, and everything is very costly
Agility
Process Heterogeneity
Data Heterogeneity
IT assets cannot be
easily repositioned in
response to changing
requirements
Systems, organizations
units and network of
partners duplicate the
same work
Difficult to determine
“what data means”
fosters duplicate
applications and data
No solution for efficient
intra- and interorganization information
sharing
Information stovepipes
require point-to-point
integrations that limit
flexibility and create
maintenance overhead
Inability of applications
to interoperate due to
platform incompatibility
Data used across an
organization is often
inconsistent and
potentially inaccurate
Decision cycles are
unnecessarily
lengthened by data
stovepipes
More efforts spent
connecting systems
together than adding
mission critical
capabilities
OASIS Symposium 2006
Costs
Duplicate data entry and
manual data reunion
require extra man power
Point-to-point integration
shifts IT professionals
towards repetitive
employees to time
consuming tasks
Integrating data
stovepipes is expensive
and wasteful
Operations and
maintenance costs are a
rising percentage of the
budget
56
A Solution – Service Oriented Architectures
Service
Capabilities performed by one for
another to achieve a desired
outcome
SOA - A
paradigm that
encourages
organizations to
re-think how their
IT capabilities
are organized
Oriented
Functionally aligning architecture
to enable a collection of
independent services to be linked
together to
solve a business problem
Architecture
SOA is an approach
to organizing and
using IT to match
and combine needs
with capabilities in
support of the
overall mission of an
enterprise
The fundamental organization of a
system embodied in its capabilities,
their interactions, and the
environment
OASIS Symposium 2006
57
Analogy - traditional software architecture versus SOA
Traditional approach
to software architecture
Service-Oriented
Architecture
“Separate Specialist” model
“Service-Oriented” model
Mechanic does job
himself or asks other
mechanics to take care
of tasks he is not
capable to do
In garage every
mechanic
specialize only in
one type of car so it
does not matter
what you want to
repair you always
have to wait for a
mechanic who
knows your type of
car; if he/she is sick
or on holiday you
cannot repair your
car at all
• No Agility to repair your car even for trivial tasks
• A Process that is duplicative and inefficient
• Costly to operate and maintain – keep many people
You ask any
mechanic in a
garage to repair
your car –
model of your
car does not
matter
• Agility to repair cars quickly (next available
mechanic takes care)
• A Process that is efficient
• Cost effective to operate and maintain
OASIS Symposium 2006
58
SOA Benefits
SOA allows to align IT with mission of the organization
Better agility, no redundancy, system interactions, and reduces overall costs of system maintenance
Agility
Focus more on core
competencies
Creates a network of
service requesters
(consumers) and service
providers (producers)
Enable enterprises to be
more agile and respond
quickly to changing
requirements
Increase business
flexibility through plugand-play architecture and
re-use of existing
services
Process Heterogeneity
Data Heterogeneity
Allow interoperation with
other systems without
time consuming
customization and pointto-point integration
Improve semantics of
data exchanged during
business process
execution
Ensure system change is
not a constraint on
business or mission
change
Facilitate integration with
multiple solutions via
open IT standards
Maintain consistency of
data across different
systems
Remain platform,
language, and vendor
independent to remove IT
barriers for using best-ofbreed software packages
OASIS Symposium 2006
Costs
Leverage existing IT
infrastructure
Reduce costs of
development of new
functionalities by
acquiring pre-built
components/services
Lower maintenance costs
59
SOA 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)
OASIS Symposium 2006
60
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
OASIS Symposium 2006
61
Semantically Empowered Service-oriented Architectures
(SESA)
•
•
•
•
Currently, computer science is in a new period of abstraction.
A generation ago we learnt to abstract from hardware and currently we
learn to abstract from software in terms of SERVICE oriented
architectures (SOA).
It is the service that counts for a customer and not the specific software
or hardware that is used to implement the service.
In a later stage, we may even talk in terms of problem-oriented
architectures (or more positively expressed in terms of problem-solving
oriented architectures) because SOAs are biased towards the service
provider and not towards the customer that has a problem that needs to
be solved.
OASIS Symposium 2006
62
Semantically Empowered Service-oriented Architecture
(SESA)
• Service-oriented architectures will become quickly the
leading software paradigm
• However, SOAs will not scale without significant
mechanization of
– Service discovery, service adaptation, negotiation, service
composition, service invocation, and service monitoring; and
– Data and process mediation
• Therefore, machine processable semantics needs to be
added to bring SOAs to their full potential
• Development of open standards (languages) and open
source architectures and tools that add semantics to
service descriptions
OASIS Symposium 2006
63
Semantic Web Services Infrastructure
• A service oriented architecture.
• Reference implementation of WSMO
OASIS Symposium 2006
64
User Service versus Platform Service in SWS Systems
External SOA
User Service
User Service
SEE
Platform Service:
Data Mediation
Platform Service:
Discovery
Execution
Management
(Execution
Semantics)
Platform Service:
[…]
User Service
User Service
OASIS Symposium 2006
65
Vertical and Horizontal Services
• Vertical services remain invisible to horizontal services,
and during its execution, the horizontal services remain
unaware that vertical services are executed together with
them
• Vertical services invoke horizontal services, coordinating
overall workflow, rather than horizontal service invoking
the vertical
OASIS Symposium 2006
66
Overview
• Introduction to SWS
– WSMO
• Introduction to SOA
– WSMX
• Means of Interoperability
• WSMT
• Conclusions
OASIS Symposium 2006
67
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.
OASIS Symposium 2006
68
WSMX Motivation
• Provide middleware ‘glue’ for Semantic Web Services
– Allow service providers focus on their business
• Provide a reference implementation for WSMO
– Eat our own cake
• Provide an environment for goal based service 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
OASIS Symposium 2006
69
WSMX Usage Scenario
OASIS Symposium 2006
70
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
OASIS Symposium 2006
71
WSMX Usage Scenario - P2P
Peer
Internet
Internet
Message
Message
WSMX SWS
ARCHITECTURE
Message
Message
OASIS Symposium 2006
Peer
72
WSMX Usage Scenario - P2P
Internet
Internet
Peer
Message
Vertical Services e.g. Security
Message
Execution Management
End User Tools
Developer Tools
Problem Solving Layer
Discovery
Adaptation
Composition
Data Mediation
Process
Mediation
Communication
(external)
Fault Handling
Message
Monitoring
Application Services Layer
Storage
Choreography
Message
Peer
Reasoning
Base Services Layer
OASIS Symposium 2006
73
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
OASIS Symposium 2006
74
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
OASIS Symposium 2006
75
WSMX Architecture
Service
Oriented
Architecture
Service
s WSMX Manager
Requesters
WSMX Managment
WSMT – Web Services Modeling Toolkit
WSMX Monitor
WSML Editor
Messaging
Ontology Visualizer
Mapping Tools
WSMX
System Interface
...
Adapter n
Data and Communication Protocols Adapters
Adapter 2
Agent
acting on
behalf of
service
requester
Adapter 1
Back-End
Application
Service
Providers
Administration Framework Interface
WSMX Manager Core
CM
Wrapper
RM
Wrapper
Parser
Wrapper
Discovery
Wrapper
Selector
Wrapper
DM
Wrapper
PM
Wrapper
Choreography
Wrapper
Interface
Interface
Interface
Interface
Interface
Interface
Interface
Interface
Communication
Manager
Resource
Manager
Selector
Data
Mediator
Process
Mediator
Choreography
Invoker
Parser
Discovery
Receiver
Web
Service 2
...
Web
Service p
Grounding
Resource Manager Interface
WSMO Objects
Web
Service 1
Non WSMO
Objects
Reasoner Interface
Reasoner
Application
Managemen
t
OASIS Symposium 2006
Component
Wrapper
Interface
New
Component
76
Selected Components
•
Reasoning
Internet
Internet
End User Tools
Message
Peer
Message
Vertical Services e.g. Security
Adapters
Parser
Invoker
Choreography
Process Mediator
Discovery
Data Mediator
Resource Manager
Execution Management
•
•
•
•
•
•
•
•
Developer Tools
Problem Solving Layer
Discovery
Adaptation
Composition
Data Mediation
Process
Mediation
Communication
(external)
Fault Handling
Message
Monitoring
Application Services Layer
Storage
Choreography
Message
Peer
Reasoning
Base Services Layer
OASIS Symposium 2006
77
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
OASIS Symposium 2006
78
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)
OASIS Symposium 2006
79
Communication Manager – 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
Mediated
WSML Data
XML
Converter
SOAP
XML
Invoker
Apache
AXIS
OASIS Symposium 2006
Web
Service
80
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
• The Process Mediator filters, changed or even replaced data
– Receive data from PM and forwards it to the Communication
manager
• Data to be finally sent to the communication partner
OASIS Symposium 2006
81
Process Mediator
• Requester and provider have their own communication
patterns
• Only if the two match precisely, a direct communication
may take place
• The Process Mediator provides the means for runtime
analyses of two choreography instances and uses
mediators to compensate possible mismatches
OASIS Symposium 2006
82
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
OASIS Symposium 2006
83
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)
Source
Ontology
Target
Ontology
Target
Instance
Source
Instance
Data Mediation
Mappings
Mappings
Design-time Component
Run-time Component
Storage
OASIS Symposium 2006
84
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
OASIS Symposium 2006
85
Reasoner
•
WSMO4J
–
•
validation, serialization and parsing
WSML2Reasoner
–
Reasoning API
•
–
Contains:
•
•
•
Features:
•
•
•
Mins
– Datalog + Negation + Function
Symbols Reasoner Engine
– Features
• Built-in predicates
• Function symbols
• Stratified negation
Common API for WSML Reasoners
Transformations of WSML to tool-specific input data
(query answering or instance retrieval)
WSML-DL-Reasoner
–
•
mapping fromWSML to a vendor-neutral rule
representation
•
•
•
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
OASIS Symposium 2006
86
System Entry Points
• achieveGoal (WSMLDocument): Context
• getWebServices (WSMLDocument): Context
 invokeWebService(WSMLDocument, Context): Context
OASIS Symposium 2006
87
Define “Business” Process
OASIS Symposium 2006
88
Generate Wrappers for Components
Registry of known
components
Discovery
Wrapper
Choreography
Wrapper
Communication
Manager
Wrapper
OASIS Symposium 2006
89
Context Data
PROCESS CONTEXT
Registry of known
components
Data Mediator
Discovery
Wrapper
Choreography
Wrapper
Communication
Manager
Wrapper
Choreography object
Mediated objects ,
Web Services entities
Errors
Exceptions
OASIS Symposium 2006
90
Event-based Implementation
OASIS Symposium 2006
91
WSMX 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
Event-driven component architecture
Internet
Internet
Message
Peer
Message
Vertical Services e.g. Security
End User Tools
Execution Management
•
•
•
•
•
•
Developer Tools
Problem Solving Layer
Discovery
Adaptation
Composition
Data Mediation
Process
Mediation
Communication
(external)
Fault Handling
Message
Monitoring
Application Services Layer
Storage
Choreography
Message
Peer
Reasoning
Base Services Layer
OASIS Symposium 2006
92
Overview
• Introduction to SWS
– WSMO
• Introduction to SOA
– WSMX
• Means of Interoperability
• WSMT
• Conclusions
OASIS Symposium 2006
93
Means of Interoperability
• Format and Language heterogeneity
– Adaptors to/from WSML
• Interface/communications formalism
– Choreography and Orchestraton
• Ontology heterogeneity
– Data Mediation
• Interface/communication patterns heterogeneity
– Process Mediation
OASIS Symposium 2006
94
Adapter Framework
• Overview
–
–
–
–
–
–
Overcomes mismatches at the communication layer
Is based on Java Connector Architecture (JCA)
Is based on SOA design principles
Adapters function independently
Adapters are built based on mapping rules
Is developed in Java
• Motivation
– WSMX does not recognize message formats other than WSML
– Backend applications that do not use WSML cannot
communicate with WSMX without the help of adapters that
transforms the format of a received message to WSML format
– Provide a unified framework for developing and using adapters
OASIS Symposium 2006
95
Features
• Adapters can be added and removed at run time
• Secure pluggability
• Supports both synchronous and asynchronous
communication
• Handles communication protocol heterogeneity, i.e.,
allow to communicate using HTTP(S), TCP/IP, UDP
• Provides simple operations:
– Deploy: adds adapter to the adapter pool
– Undeploy: removes adapter from the adapter pool, subject to
security constraints
– Send: send legacy message to WSMX
– Receive: receive legacy message from WSMX
OASIS Symposium 2006
96
Adapter Framework - Architecture
Communication Manager
Adapter Manager/Selector
Security Manager
Protocol Handler (Sync, Async)
Direct
Communication
Backend
Application
Listener
Indirect
Communication
WSMX
Direct
Communication
Validator (Message, Protocol)
Adapter Pool
Inward
Outward
UBL2WSML
WSML2UBL
EDI2WSML
WSML2EDI
RosettaNet2WSML
WSML2RosettaNet
... 2WSML
...2WSML
... 2WSML
... 2WSML
...
WSML2 ...
WSML2 ...
WSML2 ...
WSML2
Metadata
Repository
OASIS Symposium 2006
97
Adapter Framework – Deploy adapter
Communication Manager
Adapter Manager/Selector
Security Manager
Protocol Handler (Sync, Async)
Backend
Application
deploy (adapterName,
someAdaper.adapter)
Listener
WSMX
Validator (Message, Protocol)
Adapter Pool
Inward
Outward
UBL2WSML
WSML2UBL
EDI2WSML
WSML2EDI
RosettaNet2WSML
WSML2RosettaNet
... 2WSML
...2WSML
... 2WSML
Request sent to deploy an adapter
OASIS Symposium 2006
...
WSML2 ...
WSML2 ...
WSML2
Metadata
Repository
98
Adapter Framework – Deploy adapter
Communication Manager
Adapter Manager/Selector
Security Manager
Protocol Handler (Sync, Async)
Backend
Application
deploy (adapterName,
someAdaper.adapter)
Listener
WSMX
Validator (Message, Protocol)
Adapter Pool
Inward
Outward
UBL2WSML
WSML2UBL
EDI2WSML
WSML2EDI
RosettaNet2WSML
WSML2RosettaNet
... 2WSML
...2WSML
... 2WSML
Communication type scanned
OASIS Symposium 2006
...
WSML2 ...
WSML2 ...
WSML2
Metadata
Repository
99
Adapter Framework – Deploy adapter
Communication Manager
Adapter Manager/Selector
Security Manager
Protocol Handler (Sync, Async)
Backend
Application
deploy (adapterName,
someAdaper.adapter)
Listener
WSMX
Validator (Message, Protocol)
Adapter Pool
Inward
Outward
UBL2WSML
WSML2UBL
EDI2WSML
WSML2EDI
RosettaNet2WSML
WSML2RosettaNet
... 2WSML
...2WSML
... 2WSML
Fingerprint for this adapter created
OASIS Symposium 2006
...
WSML2 ...
WSML2 ...
WSML2
Metadata
Repository
100
Adapter Framework – Deploy adapter
Communication Manager
Adapter Manager/Selector
Security Manager
Protocol Handler (Sync, Async)
Backend
Application
Listener
WSMX
Validator (Message, Protocol)
Adapter Pool
Inward
Outward
UBL2WSML
WSML2UBL
EDI2WSML
WSML2EDI
RosettaNet2WSML
WSML2RosettaNet
... 2WSML
...2WSML
... 2WSML
Metadata updated
...
WSML2 ...
WSML2 ...
WSML2
Metadata
Repository
OASIS Symposium 2006
101
Adapter Framework – Deploy adapter
Communication Manager
Adapter Manager/Selector
Security Manager
Protocol Handler (Sync, Async)
Backend
Application
Listener
WSMX
Validator (Message, Protocol)
Adapter Pool
Inward
Outward
UBL2WSML
WSML2UBL
EDI2WSML
WSML2EDI
RosettaNet2WSML
WSML2RosettaNet
... 2WSML
...2WSML
... 2WSML
adapterName2WSML
Adapter stored
...
WSML2 ...
WSML2 ...
WSML2
WSML2adapterName
Metadata
Repository
OASIS Symposium 2006
102
Adapter Framework – Deploy adapter
Communication Manager
Adapter Manager/Selector
Security Manager
Protocol Handler (Sync, Async)
Backend
Application
Listener
WSMX
Validator (Message, Protocol)
Adapter Pool
Inward
Outward
UBL2WSML
WSML2UBL
EDI2WSML
WSML2EDI
RosettaNet2WSML
WSML2RosettaNet
... 2WSML
...2WSML
... 2WSML
adapterName2WSML
Fingerprint returned in a requested communication mode
OASIS Symposium 2006
...
WSML2 ...
WSML2 ...
WSML2
WSML2adapterName
Metadata
Repository
103
Adapter Framework – Deploy adapter
Communication Manager
Adapter Manager/Selector
Security Manager
Protocol Handler (Sync, Async)
Backend
Application
D749 9163 9E5E BDFC
8018 E6B8 49DD 3252
ACF6 7294
Listener
WSMX
Validator (Message, Protocol)
Adapter Pool
Inward
Outward
UBL2WSML
WSML2UBL
EDI2WSML
WSML2EDI
RosettaNet2WSML
WSML2RosettaNet
... 2WSML
...2WSML
... 2WSML
adapterName2WSML
Fingerprint returned in to backend application
OASIS Symposium 2006
...
WSML2 ...
WSML2 ...
WSML2
WSML2adapterName
Metadata
Repository
104
Adapter Framework – Send
Communication Manager
Adapter Manager/Selector
Security Manager
Protocol Handler (Sync, Async)
Backend
Application
send (adapterName, message,
fingerprint)
Listener
WSMX
Validator (Message, Protocol)
Adapter Pool
Inward
Outward
UBL2WSML
WSML2UBL
EDI2WSML
WSML2EDI
RosettaNet2WSML
WSML2RosettaNet
... 2WSML
...2WSML
... 2WSML
adapterName2WSML
Message send to WSMX via Adapter Framework
OASIS Symposium 2006
...
WSML2 ...
WSML2 ...
WSML2
WSML2adapterName
Metadata
Repository
105
Adapter Framework – Send
Communication Manager
Adapter Manager/Selector
Security Manager
Protocol Handler (Sync, Async)
Backend
Application
send (adapterName, message,
fingerprint)
Listener
WSMX
Validator (Message, Protocol)
Adapter Pool
Inward
Outward
UBL2WSML
WSML2UBL
EDI2WSML
WSML2EDI
RosettaNet2WSML
WSML2RosettaNet
... 2WSML
...2WSML
... 2WSML
adapterName2WSML
Communication type scanned
OASIS Symposium 2006
...
WSML2 ...
WSML2 ...
WSML2
WSML2adapterName
Metadata
Repository
106
Adapter Framework – Send
Communication Manager
Adapter Manager/Selector
Security Manager
Protocol Handler (Sync, Async)
Backend
Application
send (adapterName, message,
fingerprint)
Listener
WSMX
Validator (Message, Protocol)
Adapter Pool
Inward
Outward
UBL2WSML
WSML2UBL
EDI2WSML
WSML2EDI
RosettaNet2WSML
WSML2RosettaNet
... 2WSML
...2WSML
... 2WSML
adapterName2WSML
Fingerprint checked, valid fingerprint
OASIS Symposium 2006
...
WSML2 ...
WSML2 ...
WSML2
WSML2adapterName
Metadata
Repository
107
Adapter Framework – Send
Communication Manager
Adapter Manager/Selector
Security Manager
Protocol Handler (Sync, Async)
Backend
Application
send (adapterName, message,
fingerprint)
Listener
WSMX
Validator (Message, Protocol)
Adapter Pool
Inward
Outward
UBL2WSML
WSML2UBL
EDI2WSML
WSML2EDI
RosettaNet2WSML
WSML2RosettaNet
... 2WSML
...2WSML
... 2WSML
adapterName2WSML
Message format checked, valid fingerprint
OASIS Symposium 2006
...
WSML2 ...
WSML2 ...
WSML2
WSML2adapterName
Metadata
Repository
108
Adapter Framework – Send
Communication Manager
Adapter Manager/Selector
Security Manager
Protocol Handler (Sync, Async)
Backend
Application
send (adapterName, message,
fingerprint)
Listener
WSMX
Validator (Message, Protocol)
Adapter Pool
Inward
Outward
UBL2WSML
WSML2UBL
EDI2WSML
WSML2EDI
RosettaNet2WSML
WSML2RosettaNet
... 2WSML
...2WSML
... 2WSML
adapterName2WSML
Internal request sent to select adapterName2WSML
OASIS Symposium 2006
...
WSML2 ...
WSML2 ...
WSML2
WSML2adapterName
Metadata
Repository
109
Adapter Framework – Send
Communication Manager
Adapter Manager/Selector
Security Manager
Protocol Handler (Sync, Async)
Backend
Application
send (adapterName, message,
fingerprint)
Listener
WSMX
Validator (Message, Protocol)
Adapter Pool
Inward
Outward
UBL2WSML
WSML2UBL
EDI2WSML
WSML2EDI
RosettaNet2WSML
WSML2RosettaNet
... 2WSML
...2WSML
... 2WSML
adapterName2WSML
adapterName2WSML selected looking into metadata
repository
OASIS Symposium 2006
...
WSML2 ...
WSML2 ...
WSML2
WSML2adapterName
Metadata
Repository
110
Adapter Framework – Send
Communication Manager
Adapter Manager/Selector
Security Manager
Protocol Handler (Sync, Async)
Backend
Application
achieveGoal
(WSMLDocument)
Listener
WSMX
Validator (Message, Protocol)
Adapter Pool
Inward
Outward
UBL2WSML
WSML2UBL
EDI2WSML
WSML2EDI
RosettaNet2WSML
WSML2RosettaNet
... 2WSML
...2WSML
... 2WSML
adapterName2WSML
Message translated and sent to WSMX
OASIS Symposium 2006
...
WSML2 ...
WSML2 ...
WSML2
WSML2adapterName
Metadata
Repository
111
Adapter Framework – Undeploy adapter
Communication Manager
Adapter Manager/Selector
Security Manager
Protocol Handler (Sync, Async)
Backend
Application
undeploy (adapterName,
D749 9163 9E5E BDFC 8018
E6B8 49DD 3252 ACF6 7294)
Listener
WSMX
Validator (Message, Protocol)
Adapter Pool
Inward
Outward
UBL2WSML
WSML2UBL
EDI2WSML
WSML2EDI
RosettaNet2WSML
WSML2RosettaNet
... 2WSML
...2WSML
... 2WSML
adapterName2WSML
Request sent to undeploy an adapter together with its
fingerprint
OASIS Symposium 2006
...
WSML2 ...
WSML2 ...
WSML2
WSML2adapterName
Metadata
Repository
112
Adapter Framework – Undeploy adapter
Communication Manager
Adapter Manager/Selector
Security Manager
Protocol Handler (Sync, Async)
Backend
Application
undeploy (adapterName,
D749 9163 9E5E BDFC 8018
E6B8 49DD 3252 ACF6 7294)
Listener
WSMX
Validator (Message, Protocol)
Adapter Pool
Inward
Outward
UBL2WSML
WSML2UBL
EDI2WSML
WSML2EDI
RosettaNet2WSML
WSML2RosettaNet
... 2WSML
...2WSML
... 2WSML
adapterName2WSML
Fingerprint checked, valid fingerprint
OASIS Symposium 2006
...
WSML2 ...
WSML2 ...
WSML2
WSML2adapterName
Metadata
Repository
113
Adapter Framework – Undeploy adapter
Communication Manager
Adapter Manager/Selector
Security Manager
Protocol Handler (Sync, Async)
Backend
Application
Listener
WSMX
Validator (Message, Protocol)
Adapter Pool
Inward
Outward
UBL2WSML
WSML2UBL
EDI2WSML
WSML2EDI
RosettaNet2WSML
WSML2RosettaNet
... 2WSML
...2WSML
... 2WSML
adapterName2WSML
Metadata updated
...
WSML2 ...
WSML2 ...
WSML2
WSML2adapterName
Metadata
Repository
OASIS Symposium 2006
114
Adapter Framework – Undeploy adapter
Communication Manager
Adapter Manager/Selector
Security Manager
Protocol Handler (Sync, Async)
Backend
Application
Listener
WSMX
Validator (Message, Protocol)
Adapter Pool
Inward
Outward
UBL2WSML
WSML2UBL
EDI2WSML
WSML2EDI
RosettaNet2WSML
WSML2RosettaNet
... 2WSML
...2WSML
... 2WSML
Adapter removed
...
WSML2 ...
WSML2 ...
WSML2
Metadata
Repository
OASIS Symposium 2006
115
Choreography & Orchestration
VTA example:
When the service is
requested
When the service
requests
Date, Time
Date
Hotel
Hotel Service
Time
Error
Flight, Hotel
Error
Confirmation
VTA
Service
Confirmation
Date, Time
Flight
Flight Service
Error
Confirmation
•
•
Choreography = how to interact with the service to consume its functionality
Orchestration = how service functionality is achieved by aggregating other Web
services
OASIS Symposium 2006
Abstract State Machine
• Formality
– a rigid framework to express dynamics.
• Maximality
– expressive enough to model any aspect around computation
• Minimality
– minimal set of modeling primitives – minimal ontological
commitment
OASIS Symposium 2006
Choreography outline
Class choreography
hasNonFunctionalProperties type nonFunctionalProperties
hasStateSignature type stateSignature
hasTransitionRules type transitionRules
• NFPs
– The same as in WSML
• State Signature
– Defines the state ontology used by the service together with the
definition of the types of modes the concepts and relations may
have
• Transition Rules
– Express changes of states
OASIS Symposium 2006
States Signatures
Class stateSignature
hasNonFunctionalProperties type nonFunctionalProperties
importsOntology type ontology
usesMediator type ooMediator
hasStatic type mode
hasIn type mode
hasOut type mode
hasShared type mode
hasControlled type mode
Class mode subClass {concept, relation}
hasGrounding type grounding
OASIS Symposium 2006
Transition Rules
• if φ then T endIf
• forall V with ψ do T′ endForall
• choose V with ψ do T′ endChoose
• φ is a first order formula with no free variables
• V is a set of variables
• ψ is a first order formula where the free variables are interpreted as
parameters and all free variables in ψ occur in V
• T is a set of transition rules
• T′ is a set of transition rules and/or non-ground update rules, where
each variable which occurs in any non-ground update rule in T′,
occurs also in V
OASIS Symposium 2006
Update rules
• add(a)
• delete(a)
where a is a WSML atomic formula, which possibly includes
– parameter variables, or
– non-primitive update rules of the form:
• update(anew)
• update(aold => anew)
• SU = S \ {a|delete(a) Є U} U {a|add(a) Є U}
where O is an ontology O, S a state and U an update set
OASIS Symposium 2006
Machine behaviour
Given C = (O, T, S)
• S0 = S
• for 0 ≤ i ≤ n-1,
– Si ≠ Si+1
– U = {add(a) | a Є Si+1 \ Si} U {delete(a) | a Є Si \ Si+1} is an update
set associated with Si, O and T
– Si+1 is consistent with O, and Si
• run terminated
OASIS Symposium 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)
Source
Ontology
Target
Ontology
Target
Instance
Source
Instance
Data Mediation
Mappings
Mappings
Design-time Component
Run-time Component
Storage
OASIS Symposium 2006
123
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
OASIS Symposium 2006
124
Design-time Phase
OASIS Symposium 2006
125
Design-time Phase - Approach, Decomposition and Mapping Context
• Bottom-up -> training set
• Top-down -> decomposition, context
OASIS Symposium 2006
126
Design-time Phase - Suggestion Algorithms
• Eligibility Factor = f(Lexical Factor, Structural Factor)
• Lexical Factor:
– WordNet
• Synonyms, hyponyms, hipernyms
– string analyzing algorithms
• Tokenizer and string distance
• Structural Factor
– Decomposition, EF for the composing concepts
• Based on the already done mappings
OASIS Symposium 2006
127
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
• F-Logic, WSML
– Uses a reasoner to evaluate the mapping rules
• MINS
• Outputs
– Mediated data
• Target ontology instances
OASIS Symposium 2006
128
Run Time Component - Architecture
Source
Target
Reasoning
Environment
Instance
Mapping Rules
Instance
Rules
Generator
Ontologies
Mappings
Abstract
Mappings
Repr.
OASIS Symposium 2006
129
Run Time Component – Features
• Grounding the abstract mappings
• Associate a formal semantics to the mappings
– Obtain rules in a concrete language
• Why not during design time?
–
–
–
–
–
Offers a grater flexibility
Different groundings for the same mappings set
Different execution environments for the grounded mappings
Easier to maintain the abstract mappings
Important point of alignment
• Caching mechanism can be used
OASIS Symposium 2006
130
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:
• classMapping, attributeMapping, relationMapping (between similar constructs)
• classAtrributeMapping, classRelationMapping, classInstanceMapping
• instanceMapping (explicit ontology instance transformation)
– mapping operators:
• =, <, <=, >, >=, and, or, not
• inverse, symmetric, transitive, reflexive
• join, split
OASIS Symposium 2006
131
Mapping Language Example
Ontology O2
Ontology O1
Person
Human
- name
- age
- name
Adult
Child
mick memberOf Person
- name = Mick Kerrigan
- age = 27
classMapping(unidirectional o2:Person o1.Adult
attributeValueCondition(o2.Person.age >= 18))
This allows to transform the instance ‘mick’ of concept person in
ontology O2 into a valid instance of concept ‘adult’ in ontology O1
OASIS Symposium 2006
132
Process Mediator
• Requester and provider have their own communication
patterns
• Only if the two match precisely, a direct communication
may take place
• The Process Mediator provides the means for runtime
analyses of two choreography instances and uses
mediators to compensate possible mismatches
OASIS Symposium 2006
133
Compatibility
• Two business partners are compatible if their public processes are
matching
Business
Partner1
A
A
B
B
C
C
D
D
E
E
OASIS Symposium 2006
Business
Partner2
134
Compatibility
• Two business partners are compatible if their public processes are
matching
Business
Partner1
A
E
B
B
C
C, D
D
A
Business
Partner2
E
OASIS Symposium 2006
135
Process Mediator – Addressed Mismatches
Business
Partner1
A
B
PM
Business
Partner1
A
B
Business
Partner1
A and B
B
Business
Partner2
PM
B
A
Business
Partner2
PM
A
B
Business
Partner2
Business
Partner1
A
B
PM
Business
Partner1
A
AckA
PM
A and B
A
OASIS Symposium 2006
Business
Partner2
Business
Partner2
136
Process Mediator – Unsolvable Mismatches
?
Business
Partner1
Business
Partner1
Business
Partner1
A
B
A
Ack
PM
A
PM
B
A
?
PM
?
OASIS Symposium 2006
Business
Partner2
Business
Partner2
Business
Partner2
137
Process Mediation Example
Processes Mediator
itinerary[origin,
R
destination, date]
E
Q
time
U
E
S
price
T
origin
destination
itinerary[origin,
destination]
date
ticket[route,
date, time, price]
OASIS Symposium 2006
S
E
R
V
I
C
E
138
Process Mediation Example
Processes Mediator
itinerary[origin,
R
destination, date]
E
Q
time
U
E
S
price
T
origin
destination
itinerary[origin,
destination]
date
ticket[route,
S
E
R
V
I
C
E
date, time, price]
OASIS Symposium 2006
139
Process Mediation Example
Processes Mediator
itinerary[origin,
R
destination, date]
E
Q
time
U
E
S
price
T
origin
destination
itinerary[origin,
destination]
date
ticket[route,
S
E
R
V
I
C
E
date, time, price]
OASIS Symposium 2006
140
Process Mediation Example
Processes Mediator
itinerary[origin,
R
destination, date]
E
Q
time
U
E
S
price
T
origin
destination
itinerary[origin,
destination]
date
ticket[route,
S
E
R
V
I
C
E
date, time, price]
OASIS Symposium 2006
141
Process Mediation Example
Processes Mediator
itinerary[origin,
R
destination, date]
E
Q
time
U
E
S
price
T
origin
destination
itinerary[origin,
destination]
date
ticket[route,
S
E
R
V
I
C
E
date, time, price]
OASIS Symposium 2006
142
Overview
• Introduction to SWS
– WSMO
• Introduction to SOA
– WSMX
• Means of Interoperability
• WSMT
• Conclusions
OASIS Symposium 2006
143
Web Services Modeling Toolkit
• The aim of the Web Services Modeling Toolkit (WSMT) is
to provide high-quality tools for designing, mediating and
using Semantic Web Services, through the WSMO
paradigm.
• The focus is currently on the following areas:
– Creation of ontologies, web services, goals and mediators in
WSMO
– Creation of mappings between pairs of ontologies to allow
runtime instance transformation
– Management of Execution Environments for Semantic Web
Services like WSMX and IRSIII
OASIS Symposium 2006
144
WSML Perspective
• Perspectives in the Eclipse framework allow for a
number of Editors and views to be grouped and
positions.
• The WSML perspective offers editors and views related
to engineering of semantic descriptions in WSMO
through the WSML language.
• Other General features include:
– WSML file validation
– Problems view (errors and warnings on files in the workspace)
– Label highlighting (marking of errors and warnings in navigator
view)
OASIS Symposium 2006
145
WSML Editors and Views in the WSML perspective
Editors
WSML Text Editor
WSML Conceptual Editor
WSML Visualizer
Views
Navigator view
Problems view
WSML Reasoner
OASIS Symposium 2006
146
Editors and Views in the WSML perspective
Editors
WSML Text Editor
WSML Conceptual Editor
WSML Visualizer
Views
Navigator view
Problems view
WSML Reasoner
OASIS Symposium 2006
147
Editors and Views in the WSML perspective
Editors
WSML Text Editor
WSML Conceptual Editor
WSML Visualizer
Views
Navigator view
Problems view
WSML Reasoner
OASIS Symposium 2006
148
Editors and Views in the WSML perspective
Editors
WSML Text Editor
WSML Conceptual Editor
WSML Visualizer
Views
Navigator view
Problems view
WSML Reasoner
OASIS Symposium 2006
149
Editors and Views in the WSML perspective
Editors
WSML Text Editor
WSML Conceptual Editor
WSML Visualizer
Views
Navigator view
Problems view
WSML Reasoner
OASIS Symposium 2006
150
Editors and Views in the WSML perspective
Editors
WSML Text Editor
WSML Conceptual Editor
WSML Visualizer
Views
Navigator view
Problems view
WSML Reasoner
OASIS Symposium 2006
151
Editors and Views in the WSML perspective
Editors
WSML Text Editor
WSML Conceptual Editor
WSML Visualizer
Views
Navigator view
Problems view
WSML Reasoner
OASIS Symposium 2006
152
Editors, Views for the Abstract Mapping Language
Editors
AML Text Editor
AML Conceptual Editor
AML View Based Editor
Views
Concept 2 Concept View
Attribute 2 Attribute View
Concept 2 Attribute View
Attribute 2 Concept View
Status View
OASIS Symposium 2006
153
Editors, Views for the Abstract Mapping Language
Editors
AML Text Editor
AML Conceptual Editor
AML View Based Editor
Views
Concept 2 Concept View
Attribute 2 Attribute View
Concept 2 Attribute View
Attribute 2 Concept View
Status View
OASIS Symposium 2006
154
Editors, Views for the Abstract Mapping Language
Editors
AML Text Editor
AML Conceptual Editor
AML View Based Editor
Views
Concept 2 Concept View
Attribute 2 Attribute View
Concept 2 Attribute View
Attribute 2 Concept View
Status View
OASIS Symposium 2006
155
Editors, Views for the Abstract Mapping Language
Editors
AML Text Editor
AML Conceptual Editor
AML View Based Editor
Views
Concept 2 Concept View
Attribute 2 Attribute View
Concept 2 Attribute View
Attribute 2 Concept View
Status View
OASIS Symposium 2006
156
Editors, Views for the Abstract Mapping Language
Editors
AML Text Editor
AML Conceptual Editor
AML View Based Editor
Views
Concept 2 Concept View
Attribute 2 Attribute View
Concept 2 Attribute View
Attribute 2 Concept View
Status View
OASIS Symposium 2006
157
Editors, Views for the Abstract Mapping Language
Editors
AML Text Editor
AML Conceptual Editor
AML View Based Editor
Views
Concept 2 Concept View
Attribute 2 Attribute View
Concept 2 Attribute View
Attribute 2 Concept View
Status View
OASIS Symposium 2006
158
Editors, Views for the Abstract Mapping Language
Editors
AML Text Editor
AML Conceptual Editor
AML View Based Editor
Views
Concept 2 Concept View
Attribute 2 Attribute View
Concept 2 Attribute View
Attribute 2 Concept View
Status View
OASIS Symposium 2006
159
Editors, Views for the Abstract Mapping Language
Editors
AML Text Editor
AML Conceptual Editor
AML View Based Editor
Views
Concept 2 Concept View
Attribute 2 Attribute View
Concept 2 Attribute View
Attribute 2 Concept View
Status View
OASIS Symposium 2006
160
Overview
• Introduction to SWS
– WSMO
• Introduction to SOA
– WSMX
• Means of Interoperability
• WSMT
• Conclusions
OASIS Symposium 2006
161
Conclusions
• Semantic Enabled SOA combines the benefits of semantics with
best practices from industry
• WSMO - conceptual model for Semantic Web Services
– Ontology of core elements for Semantic Web Services
• Clear separation between layers
– Specification and realization
– Interface and implementation
• WSMX/SEE – a Semantic Enabled SOA
– Service Oriented Architecture
– Reference implementation of WSMO
• Semantic Enabled SOA offers multiple means for interoperability
– Mediation framework
– Interface/communication disambiguation
• WSMT – emerging tool to handle semantics
– High-quality tools for designing, mediating and using Semantic Web
Services
OASIS Symposium 2006
162
References
•
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/
OASIS Symposium 2006
163
References
•
[WSMO Specification]: Roman, D.; Lausen, H.; Keller, U. (eds.): Web Service Modeling Ontology, WSMO Working Draft D2, final version 1.2, 13 April
2005.
•
[WSMO Primer]: Feier, C. (ed.): WSMO Primer, WSMO Working Draft D3.1, 18 February 2005.
•
[WSMO Choreography and Orchestration] Roman, D.; Scicluna, J., Feier, C. (eds.): Ontology-based Choreography and Orchestration of WSMO
Services, WSMO Working Draft D14, 01 March 2005.
•
[WSMO Use Case] Stollberg, M.; Lausen, H.; Polleres, A.; Lara, R. (ed.): WSMO Use Case Modeling and Testing, WSMO Working Drafts D3.2; D3.3.;
D3.4; D3.5, 05 November 2004.
•
[WSML] de Bruijn, J. (Ed.): The WSML Specification, WSML Working Draft D16, 03 February 2005.
•
[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.
OASIS Symposium 2006
164
References
•
[Bussler, 2003] Bussler, C. (2003): B2B Integration. Berlin, Heidelberg: Springer.
•
[Cimpian and Mocan, 2005] Emilia Cimpian, Adrian Mocan: WSMX Process Mediation Based on Choreographies, 1st International Workshop on Web
Service Choreography and Orchestration for Business Process Management (BPM 2005), September 2005, Nancy, France
•
[Chen et al., 1993] Chen, W., Kifer, M., and Warren, D. S. (1993). HILOG: A foundation for higher-order logic programming. Journal of Logic
Programming, 15(3):187-230.
•
[Haller et al., 2005] A. Haller, E. Cimpian, A. Mocan, E. Oren, and C. Bussler. WSMX - A Semantic Service-Oriented Architecture. International
Conference on Web Services (ICWS 2005), July 2005.
•
[Kerrigan, 2006] Mick Kerrigan: Web Service Selection Mechanisms in the Web Service Execution Environment (WSMX), Proceedings of the 21st
Annual ACM Symposium on Applied Computing (SAC), April, 2006, Dijon, France
•
[Mandell and McIIraith, 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)
•
[Mocan and Cimpian, 2005] Adrian Mocan, Emilia Cimpian: Mapping Creation Using a View Based Approach, 1st International Workshop on Mediation
in Semantic Web Services (Mediate 2005), December 2005, Amsterdam, Netherlands
OASIS Symposium 2006
165
References
•
[Domingue et al., 2004] Domingue, J. Cabral, L., Hakimpour, F., Sell D., and Motta, E., (2004) IRS-III: A Platform and Infrastructure for Creating WSMObased Semantic Web Services WSMO Implementation Workshop (WIW), Frankfurt, Germany, September,2004
•
[Feier et al., 2005] C. Feier, A. Polleres, R. Dumitru, J. Domingue, M. Stollberg, and D. Fensel. Towards intelligent web services: The web service
modeling ontology (WSMO). International Conference on Intelligent Computing (ICIC), April 2005.
•
[Fensel, 2001] Dieter Fensel, “Ontologies: Silver Bullet for Knowledge Management and Electronic Commerce”, Springer-Verlag, Berlin, 2001.
•
[Fensel and Bussler, 2002] Fensel D. and Bussler C., "The Web Service Modeling Framework, WSMF," Electronic Commerce Research and
Application, vol. 1, 2002
•
[Fensel, 2004] D. Fensel: Triple Space computing - Semantic Web Services based on persistent publication of information. In Proceedings of IFIP
International Conference on Intelligence in Communication Systems, Pages 43-53, Bangkok, Thailand, November 2004.
•
[Gruber, 1993] Thomas R. Gruber, “A Translation Approach to Portable Ontology Specifications”, Knowledge Acquisition, 5:199-220, 1993.
•
[Grosof et al., 2003] Grosof, B. N., Horrocks, I., Volz, R., and Decker, S. (2003). Description logic programs: Combining logic programs with description
logic. In Proc. Intl. Conf. on the World Wide Web (WWW-2003), Budapest, Hungary.
OASIS Symposium 2006
166
References
•
[Haselwanter et al., 2005] Haselwanter, T.; Zaremba, Ma.., Zaremba Mi.: Enabling Components Management and Executions Semantics in WSMX. In
Proceedings of the 2nd International WSMO Implementation Workshop (WIW 2005), Innsbruck, Austria, June 2005.
•
[Keller et al., 2004] Keller, U.; Lara, R.; Polleres, A. (Eds): WSMO Web Service Discovery. WSML Working Draft D5.1, 12 Nov 2004.
•
[Keller et al., 2005] 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.
•
[Kifer et al., 1995] Kifer, M., Lausen, G., and Wu, J. (1995). Logical foundations of object-oriented and frame-based languages. JACM, 42(4):741-843.
•
[Kiffer et al., 2004] 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
•
[Li and Horrocks, 2003] 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
•
[Paolucci et al., 2002a] 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
•
[Paolucci et al., 2002b] 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
OASIS Symposium 2006
167
References
•
[Pan and Horrocks, 2004] Pan, J. Z. and Horrocks, I. (2004). OWL-E: Extending OWL with expressive datatype expressions. IMG Technical Report
IMG/2004/KR-SW-01/v1.0, Victoria University of Manchester. Available from http://dl-web.man.ac.uk/Doc/IMGTR-OWL-E.pdf.
•
[Preist, 2004] Preist, C.: A Conceptual Architecture for Semantic Web Services. In Proceedings of the 3rd International Semantic Web Conference
(ISWC 2004), 2004, pp. 395 - 409.
•
[Pollers et al., 2005] Axel Polleres, Holger Lausen, Jos de Bruijn and Dieter Fensel. WSML - A Language Framework for Semantic Web Services. W3C
Workshop on Rule Languages for Interoperability, April 2005.
•
[Stencil Group] - www.stencilgroup.com/ideas_scope_200106wsdefined.html
•
[Stolberg et al., 2004] 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.
•
[Stolberg et al., 2005] M. Stollberg, E. Cimpian, and D. Fensel. Mediating Capabilities with Delta-Relations. In Proceedings of the First International
Workshop on Mediation in Semantic Web Services, co-located with the Third International Conference on Service Oriented Computing (ICSOC 2005),
Amsterdam, the Netherlands, 2005.
•
[Stollberg et al., 2006] Michael Stollberg, Emilia Cimpian, Adrian Mocan, Dieter Fensel:
Web Working Symposium (CSWWS 2006), June 2006, Québec city, Canada
•
[Zaremba and Bussler, 2005] Zaremba, M. and Bussler, C.: Towards Dynamic Execution Semantics in Semantic Web Services. In Proceedings of the
WWW 2005 Workshop on Web Service Semantics: Towards Dynamic Business Integration, 2005.
A Semantic Web Mediation Architecture, Canadian Semantic
OASIS Symposium 2006
168
Acknowledgements
We would like to thank to all the members of the WSMO, WSML, and
WSMX working groups for their advice and input into this tutorial.
The WSMO working groups are funded by the European
Commission under the projects ASG, DIP, Knowledge Web, SEKT,
SemanticGov, SWWS, AKT and Esperonto; by Science
Foundation Ireland under the DERI-Lion project; and by the
Austrian government under the FIT-IT program
OASIS Symposium 2006
169
Descargar

Semantic Service Oriented Architecture