Applying Semantics to  Service Oriented Architectures Oasis Symposium 2006 The Meaning of Interoperability   9-12 May, San...
The Aims of this Tutorial <ul><li>Introduce the aims & challenges of Semantic Web Services (SWS)  - the WSMO approach </li...
Overview <ul><li>Introduction to SWS </li></ul><ul><ul><li>WSMO </li></ul></ul><ul><li>Introduction to SOA </li></ul><ul><...
Overview <ul><li>Introduction to SWS </li></ul><ul><ul><li>WSMO </li></ul></ul><ul><li>Introduction to SOA </li></ul><ul><...
Introduction to Semantic Web Services <ul><li>Introduction to Semantic Web </li></ul><ul><li>Introduction to Web services ...
Semantic Web and Web Services – The Vision Static WWW URI, HTML, HTTP 500 million user more than 3 billion pages
Semantic Web and Web Services Static WWW URI, HTML, HTTP <ul><ul><li>Serious Problems in </li></ul></ul><ul><ul><li>inform...
Semantic Web and Web Services – The Vision Static WWW URI, HTML, HTTP <ul><ul><li>Bringing the computer back as a device f...
Semantic Web and Web Services – The Vision Static WWW URI, HTML, HTTP <ul><ul><li>Bringing the Web to its full potential <...
<ul><li>Formal, explicit specification of a shared conceptualization  </li></ul>Ontology Definition commonly accepted unde...
Ontology Example <ul><li>Concept  </li></ul><ul><li>conceptual entity of the domain  </li></ul><ul><li>Attribute   </li></...
Ontology Languages  <ul><li>Requirements:  </li></ul><ul><ul><li>” expressivity“  </li></ul></ul><ul><ul><ul><li>knowledge...
Semantic Web Language Layer Cake
Web Services <ul><li>Web Services [Stencil Group] </li></ul><ul><li>loosely coupled, reusable components </li></ul><ul><li...
Using Web Services
Using Web Services Syntax Only
Lack of SWS standards <ul><li>Current technology does not allow realization of any of the parts of the Web Service usage p...
Semantic Web Services <ul><li>Define exhaustive description frameworks for describing Web Services and related aspects  (W...
Semantic Web Services (2) <ul><li>Usage Process: </li></ul><ul><li>Publication:  Make available the description of the cap...
Semantic Web Services (3) <ul><li>Usage Process  – execution support </li></ul><ul><li>Monitoring:  Control the execution ...
<ul><li>Semantic Web Services  </li></ul><ul><li>= </li></ul><ul><li>Semantic Web Technology  </li></ul><ul><li>+  </li></...
Overview <ul><li>Introduction to SWS </li></ul><ul><ul><li>WSMO </li></ul></ul><ul><li>Introduction to SOA </li></ul><ul><...
Web Service Modeling Ontology (WSMO) <ul><li>A conceptual model for Semantic Web Services:  </li></ul><ul><ul><li>Ontology...
WSMO Working Groups A Conceptual Model for SWS A Formal Language for WSMO A Rule-based Language for SWS Execution Environm...
WSMO Design Principles Web Compliance Ontology-Based Strict Decoupling Of Modeling Elements   Centrality of  Mediation Ont...
WSMO Top Level Notions Objectives that a client wants to achieve by using Web Services Provide the formally specified term...
Non-Functional Properties <ul><li>Every WSMO elements is described by properties that contain relevant, non-functional asp...
Non-Functional Properties List <ul><li>Dublin Core Metadata  </li></ul><ul><ul><li>Contributor  </li></ul></ul><ul><ul><li...
WSMO Ontologies Provide the formally specified terminology of the information used by all other components <ul><li>Semanti...
Ontology Usage & Principles <ul><li>Ontologies are used as the ‘data model’ throughout WSMO  </li></ul><ul><ul><li>all WSM...
Ontology Specification <ul><li>Non functional properties  (see before) </li></ul><ul><li>Imported Ontologies   importing e...
WSMO Web services Provide the formally specified terminology of the information used by all other components <ul><li>Seman...
WSMO Web service description Web service Implementation (not of interest in Web Service Description)   Choreography   --- ...
Capability Specification <ul><li>Non functional properties   </li></ul><ul><li>Imported Ontologies  </li></ul><ul><li>Used...
Choreography & Orchestration <ul><li>VTA example: </li></ul><ul><li>Choreography  = how to interact with the service to co...
Choreography Aspects <ul><li>Interface for consuming Web Service </li></ul><ul><ul><li>External Visible Behavior </li></ul...
Orchestration Aspects <ul><li>decomposition of service functionality  </li></ul><ul><li>all service interaction via choreo...
Orchestration Aspects <ul><li>Service interfaces are concerned with service consumption and interaction </li></ul><ul><li>...
Choreography and Orchestration - Overview Ontologies as data model: - every resource description based on ontologies  - ev...
WSMO Goals Provide the formally specified terminology of the information used by all other components <ul><li>Semantic des...
Goals <ul><li>Ontological De-coupling of Requester and Provider </li></ul><ul><li>Goal-driven Approach </li></ul><ul><ul><...
Goal Specification <ul><li>Non functional properties  </li></ul><ul><li>Imported Ontologies </li></ul><ul><li>Used mediato...
WSMO  Mediators Provide the formally specified terminology of the information used by all other components <ul><li>Semanti...
Mediation <ul><li>Heterogeneity …   </li></ul><ul><ul><li>Mismatches on structural / semantic / conceptual / functional / ...
WSMO  Mediators Overview
Mediator Structure WSMO Mediator uses a  Mediation Service  via  Source  Component   Source  Component   Target Component ...
OO  Mediator - Example OO Mediator Mediation Service  Train Connection Ontology (s1) Purchase  Ontology (s2) Train Ticket ...
GG  Mediators <ul><li>Aim: </li></ul><ul><ul><li>Support specification of Goals by re-using existing Goals  </li></ul></ul...
<ul><li>WG Mediators: </li></ul><ul><ul><li>link a Web Service to a Goal and resolve occurring mismatches  </li></ul></ul>...
Data Level Mediation <ul><li>Scope </li></ul><ul><ul><li>Solving terminological mismatches </li></ul></ul><ul><li>Related ...
Functional Level Mediation <ul><li>Scope </li></ul><ul><ul><li>Solving functional mismatches between goals and/or ws </li>...
Process Level Mediation <ul><li>Scope </li></ul><ul><ul><li>Resolves communication mismatches and establish behavior compa...
WSMO Mediators and Mediation Levels <ul><li>ooMediator </li></ul><ul><ul><li>Data Level Mediation </li></ul></ul><ul><li>g...
Overview <ul><li>Introduction to SWS </li></ul><ul><ul><li>WSMO </li></ul></ul><ul><li>Introduction to SOA </li></ul><ul><...
Information Technology versus Mission of Organizations Key Enablers <ul><li>People (e.g., organization structure, human ca...
Existing IT architectures cannot support changing needs Existing Architectures do not scale Agility IT assets cannot be ea...
A Solution – Service Oriented Architectures Capabilities performed by one for another to achieve a desired outcome Functio...
Analogy - traditional software architecture versus SOA Traditional approach to software architecture <ul><li>No  Agility  ...
SOA Benefits Agility Focus more on core competencies  Creates a network of service requesters (consumers) and service prov...
SOA Design Principles <ul><li>Strong Decoupling & Strong Mediation </li></ul><ul><ul><li>autonomous components with mediat...
Benefits of SOA <ul><li>Better reuse </li></ul><ul><ul><li>Build new functionality (new execution semantics) on top of exi...
Semantically Empowered Service-oriented Architectures (SESA) <ul><li>Currently, computer science is in a new period of abs...
Semantically Empowered Service-oriented Architecture (SESA)   <ul><li>Service-oriented architectures will become quickly t...
Semantic Web Services Infrastructure <ul><li>A service oriented architecture. </li></ul><ul><li>Reference implementation o...
User Service versus Platform Service in SWS Systems
Vertical and Horizontal Services   <ul><li>Vertical services remain invisible to horizontal services, and during its execu...
Overview <ul><li>Introduction to SWS </li></ul><ul><ul><li>WSMO </li></ul></ul><ul><li>Introduction to SOA </li></ul><ul><...
WSMX Introduction <ul><li>Software framework for runtime binding of service requesters and service providers </li></ul><ul...
WSMX Motivation <ul><li>Provide middleware ‘glue’ for Semantic Web Services </li></ul><ul><ul><li>Allow service providers ...
WSMX Usage Scenario
WSMX Usage Scenario - P2P <ul><li>A P2P network of WSMX ‘nodes’ </li></ul><ul><li>Each WSMX node described as a SWS </li><...
WSMX Usage Scenario - P2P
WSMX Usage Scenario - P2P
Design Principles <ul><li>Strong Decoupling & Strong Mediation </li></ul><ul><ul><li>autonomous components with mediators ...
Benefits of SOA <ul><li>Better reuse </li></ul><ul><ul><li>Build new functionality (new execution semantics) on top of exi...
WSMX Architecture Messaging Application Management Service Oriented  Architectures
Selected Components <ul><li>Adapters </li></ul><ul><li>Parser </li></ul><ul><li>Invoker </li></ul><ul><li>Choreography  </...
Adapters <ul><li>To overcome data representation mismatches on the communication layer </li></ul><ul><li>Transforms the fo...
Parser <ul><li>WSML compliant parser </li></ul><ul><ul><li>Code handed over to wsmo4j initiative http://wsmo4j.sourceforge...
Communication Manager – Invoker <ul><li>WSMX uses  </li></ul><ul><ul><li>The SOAP implementation from Apache AXIS  </li></...
Choreography <ul><li>Requester and provider have their own observable communication patterns </li></ul><ul><ul><li>Choreog...
Process Mediator <ul><li>Requester and provider have their own communication patterns  </li></ul><ul><li>Only if the two m...
Discovery <ul><li>Responsible for finding appropriate Web Services to achieve a goal (discovery) </li></ul><ul><li>Current...
Data Mediator <ul><li>Ontology - to-ontology mediation </li></ul><ul><li>A set of mapping rules are defined and then execu...
Resource Manager <ul><li>Stores internal memory model to a data store </li></ul><ul><li>Decouples storage mechanism from t...
Reasoner <ul><li>Mins  </li></ul><ul><ul><li>Datalog + Negation + Function Symbols Reasoner Engine </li></ul></ul><ul><ul>...
System Entry Points <ul><li>achieveGoal  (WSMLDocument): Context </li></ul><ul><li>getWebServices  (WSMLDocument): Context...
Define “Business” Process
Generate Wrappers for Components Discovery  Wrapper Choreography Wrapper Communication  Manager  Wrapper Registry of known...
Context Data PROCESS CONTEXT Discovery  Wrapper Data Mediator  Choreography Wrapper Communication  Manager  Wrapper Regist...
Event-based Implementation
WSMX Conclusions <ul><li>Conceptual model is WSMO  </li></ul><ul><li>End to end functionality for executing SWS </li></ul>...
Overview <ul><li>Introduction to SWS </li></ul><ul><ul><li>WSMO </li></ul></ul><ul><li>Introduction to SOA </li></ul><ul><...
Means of Interoperability <ul><li>Format and Language heterogeneity </li></ul><ul><ul><li>Adaptors to/from WSML </li></ul>...
Adapter Framework <ul><li>Overview </li></ul><ul><ul><li>Overcomes mismatches at the communication layer </li></ul></ul><u...
Features <ul><li>Adapters can be added and removed at run time </li></ul><ul><li>Secure pluggability </li></ul><ul><li>Sup...
Adapter Framework - Architecture
Adapter Framework – Deploy adapter deploy  ( adapterName ,  someAdaper . adapter ) Request sent to deploy an adapter
Adapter Framework – Deploy adapter deploy  ( adapterName ,  someAdaper . adapter ) Communication type scanned
Adapter Framework – Deploy adapter deploy  ( adapterName ,  someAdaper . adapter ) Fingerprint for this adapter created
Adapter Framework – Deploy adapter Metadata updated
Adapter Framework – Deploy adapter Adapter stored
Adapter Framework – Deploy adapter Fingerprint returned in a requested communication mode
Adapter Framework – Deploy adapter Fingerprint returned in to backend application D749 9163 9E5E BDFC 8018 E6B8 49DD 3252 ...
Adapter Framework – Send Message send to WSMX via Adapter Framework send  ( adapterName ,  message, fingerprint )
Adapter Framework – Send Communication type scanned send  ( adapterName ,  message, fingerprint )
Adapter Framework – Send Fingerprint checked, valid fingerprint send  ( adapterName ,  message, fingerprint )
Adapter Framework – Send Message format checked, valid fingerprint send  ( adapterName ,  message, fingerprint )
Adapter Framework – Send Internal request sent to select adapterName2WSML send  ( adapterName ,  message, fingerprint )
Adapter Framework – Send adapterName2WSML selected looking into metadata repository send  ( adapterName ,  message, finger...
Adapter Framework – Send Message translated and sent to WSMX achieveGoal  ( WSMLDocument )
Adapter Framework – Undeploy adapter Request sent to undeploy an adapter together with its fingerprint  undeploy  ( adapte...
Adapter Framework – Undeploy adapter Fingerprint checked, valid fingerprint  undeploy  ( adapterName ,  D749 9163 9E5E BDF...
Adapter Framework – Undeploy adapter Metadata updated
Adapter Framework – Undeploy adapter Adapter removed
Choreography & Orchestration VTA Service Date Time Flight, Hotel Error Confirmation Hotel Service Flight Service Date, Tim...
Abstract State Machine <ul><li>Formality  </li></ul><ul><ul><li>a rigid framework to express dynamics. </li></ul></ul><ul>...
Choreography outline <ul><li>NFPs  </li></ul><ul><ul><li>The same as in WSML </li></ul></ul><ul><li>State Signature </li><...
States Signatures Class  stateSignature hasNonFunctionalProperties  type  nonFunctionalProperties importsOntology  type  o...
Transition Rules <ul><li>if   φ  then   T  endIf </li></ul><ul><li>forall   V  with   ψ  do   T′  endForall </li></ul><ul>...
Update rules <ul><li>add(a) </li></ul><ul><li>delete(a) </li></ul><ul><li>where  a  is a WSML atomic formula, which possib...
Machine behaviour <ul><li>Given C = (O, T, S) </li></ul><ul><li>S 0  = S </li></ul><ul><li>for 0 ≤ i ≤ n-1, </li></ul><ul>...
Data Mediator <ul><li>Ontology - to-ontology mediation </li></ul><ul><li>A set of mapping rules are defined and then execu...
Design-time <ul><li>Inputs </li></ul><ul><ul><li>Source Ontology and Target Ontology </li></ul></ul><ul><li>Features </li>...
Design-time Phase
Design-time Phase - Approach, Decomposition and Mapping Context <ul><li>Bottom-up -> training set </li></ul><ul><li>Top-do...
Design-time Phase - Suggestion Algorithms <ul><li>Eligibility Factor = f(Lexical Factor, Structural Factor) </li></ul><ul>...
Run-Time Data Mediator <ul><li>Main Mediation Scenario: Instance Transformation  </li></ul><ul><li>Inputs </li></ul><ul><u...
Run Time Component - Architecture Mapping Rules Mappings Abstract  Mappings Repr.  Rules Generator Instance Source Reasoni...
Run Time Component – Features <ul><li>Grounding  the abstract mappings </li></ul><ul><li>Associate a formal semantics to t...
Ontology Mapping Language <ul><li>Language Neutral Mapping Language  </li></ul><ul><ul><li>mapping definitions on meta-lay...
Mapping Language Example Ontology O2 Human  - name   Adult Child <ul><li>Person </li></ul><ul><li>name  </li></ul><ul><li>...
Process Mediator <ul><li>Requester and provider have their own communication patterns  </li></ul><ul><li>Only if the two m...
Compatibility <ul><li>Two business partners are compatible if their public processes are matching </li></ul>A B C D E A B ...
Compatibility <ul><li>Two business partners are compatible if their public processes are matching </li></ul>A B C D E E B ...
Process Mediator – Addressed Mismatches
Process Mediator – Unsolvable Mismatches Business  Partner 1 Business  Partner 1 Business  Partner 2 Business  A Business ...
Process Mediation Example  itinerary[origin,  destination, date] time price origin destination itinerary[origin,  destinat...
Process Mediation Example  time price date R E Q U E S T S E R V I C E Processes Mediator itinerary[origin,  destination, ...
Process Mediation Example  time price date R E Q U E S T S E R V I C E Processes Mediator itinerary[origin,  destination, ...
Process Mediation Example  time price date R E Q U E S T S E R V I C E Processes Mediator itinerary[origin,  destination, ...
Process Mediation Example  time price date R E Q U E S T S E R V I C E Processes Mediator itinerary[origin,  destination, ...
Overview <ul><li>Introduction to SWS </li></ul><ul><ul><li>WSMO </li></ul></ul><ul><li>Introduction to SOA </li></ul><ul><...
Web Services Modeling Toolkit <ul><li>The aim of the Web Services Modeling Toolkit (WSMT) is to provide high-quality tools...
WSML Perspective <ul><li>Perspectives in the Eclipse framework allow for a number of Editors and views to be grouped and p...
WSML Editors and Views in the WSML perspective <ul><li>Editors </li></ul><ul><li>WSML Text Editor </li></ul><ul><li>WSML C...
Editors and Views in the WSML perspective <ul><li>Editors </li></ul><ul><li>WSML Text Editor </li></ul><ul><li>WSML Concep...
Editors and Views in the WSML perspective <ul><li>Editors </li></ul><ul><li>WSML Text Editor </li></ul><ul><li>WSML Concep...
Editors and Views in the WSML perspective <ul><li>Editors </li></ul><ul><li>WSML Text Editor </li></ul><ul><li>WSML Concep...
Editors and Views in the WSML perspective <ul><li>Editors </li></ul><ul><li>WSML Text Editor </li></ul><ul><li>WSML Concep...
Editors and Views in the WSML perspective <ul><li>Editors </li></ul><ul><li>WSML Text Editor </li></ul><ul><li>WSML Concep...
Editors and Views in the WSML perspective <ul><li>Editors </li></ul><ul><li>WSML Text Editor </li></ul><ul><li>WSML Concep...
Editors, Views for the Abstract Mapping Language <ul><li>Editors </li></ul><ul><li>AML Text Editor </li></ul><ul><li>AML C...
Editors, Views for the Abstract Mapping Language <ul><li>Editors </li></ul><ul><li>AML Text Editor </li></ul><ul><li>AML C...
Editors, Views for the Abstract Mapping Language <ul><li>Editors </li></ul><ul><li>AML Text Editor </li></ul><ul><li>AML C...
Editors, Views for the Abstract Mapping Language <ul><li>Editors </li></ul><ul><li>AML Text Editor </li></ul><ul><li>AML C...
Editors, Views for the Abstract Mapping Language <ul><li>Editors </li></ul><ul><li>AML Text Editor </li></ul><ul><li>AML C...
Editors, Views for the Abstract Mapping Language <ul><li>Editors </li></ul><ul><li>AML Text Editor </li></ul><ul><li>AML C...
Editors, Views for the Abstract Mapping Language <ul><li>Editors </li></ul><ul><li>AML Text Editor </li></ul><ul><li>AML C...
Editors, Views for the Abstract Mapping Language <ul><li>Editors </li></ul><ul><li>AML Text Editor </li></ul><ul><li>AML C...
Overview <ul><li>Introduction to SWS </li></ul><ul><ul><li>WSMO </li></ul></ul><ul><li>Introduction to SOA </li></ul><ul><...
Conclusions <ul><li>Semantic Enabled SOA   combines the benefits of semantics with best practices from industry </li></ul>...
References <ul><li>The central location where WSMO work and papers can be found is WSMO Working Group:  http://www.wsmo.or...
References <ul><li>[WSMO Specification]: Roman, D.; Lausen, H.; Keller, U. (eds.): Web Service Modeling Ontology, WSMO Wor...
References <ul><li>[Bussler, 2003] Bussler, C. (2003): B2B Integration. Berlin, Heidelberg: Springer.  </li></ul><ul><li>[...
References  <ul><li>[Domingue et al., 2004] Domingue, J. Cabral, L., Hakimpour, F., Sell D., and Motta, E., (2004) IRS-III...
References  <ul><li>[Haselwanter et al., 2005] Haselwanter, T.; Zaremba, Ma.., Zaremba Mi.: Enabling Components Management...
References <ul><li>[Pan and Horrocks, 2004] Pan, J. Z. and Horrocks, I. (2004). OWL-E: Extending OWL with expressive datat...
Acknowledgements <ul><li>We would like to thank to all the members of the  WSMO ,  WSML , and  WSMX  working groups for th...
Upcoming SlideShare
Loading in …5
×

Semantic Service Oriented Architecture

1,553 views

Published on

0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,553
On SlideShare
0
From Embeds
0
Number of Embeds
8
Actions
Shares
0
Downloads
62
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide
  • The traditional approach is like a sandwich shop that constructs a separate “station” to make each type of sandwich It is obvious that this structure is not at all useful But we continue to create software that follow this model
  • Semantic Service Oriented Architecture

    1. 1. 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
    2. 2. The Aims of this Tutorial <ul><li>Introduce the aims & challenges of Semantic Web Services (SWS) - the WSMO approach </li></ul><ul><li>Describe how SOA can be used with Semantic Web Services – WSMX Approach </li></ul><ul><li>Semantic SOA enables interoperability </li></ul>
    3. 3. Overview <ul><li>Introduction to SWS </li></ul><ul><ul><li>WSMO </li></ul></ul><ul><li>Introduction to SOA </li></ul><ul><ul><li>WSMX </li></ul></ul><ul><li>Means of Interoperability </li></ul><ul><li>Web Service Modeling Toolkit (WSMT) </li></ul><ul><li>Conclusions </li></ul>
    4. 4. Overview <ul><li>Introduction to SWS </li></ul><ul><ul><li>WSMO </li></ul></ul><ul><li>Introduction to SOA </li></ul><ul><ul><li>WSMX </li></ul></ul><ul><li>Means of Interoperability </li></ul><ul><li>WSMT </li></ul><ul><li>Conclusions </li></ul>
    5. 5. Introduction to Semantic Web Services <ul><li>Introduction to Semantic Web </li></ul><ul><li>Introduction to Web services </li></ul><ul><li>Semantic Web Services </li></ul>
    6. 6. Semantic Web and Web Services – The Vision Static WWW URI, HTML, HTTP 500 million user more than 3 billion pages
    7. 7. Semantic Web and Web Services Static WWW URI, HTML, HTTP <ul><ul><li>Serious Problems in </li></ul></ul><ul><ul><li>information finding, </li></ul></ul><ul><ul><li>information extracting, </li></ul></ul><ul><ul><li>Information representing, </li></ul></ul><ul><ul><li>information interpreting and information maintaining. </li></ul></ul>Semantic Web RDF, RDF(S), OWL
    8. 8. Semantic Web and Web Services – The Vision Static WWW URI, HTML, HTTP <ul><ul><li>Bringing the computer back as a device for computation </li></ul></ul>Semantic Web RDF, RDF(S), OWL Dynamic Web Services UDDI, WSDL, SOAP
    9. 9. Semantic Web and Web Services – The Vision Static WWW URI, HTML, HTTP <ul><ul><li>Bringing the Web to its full potential </li></ul></ul>Semantic Web RDF, RDF(S), OWL Dynamic Web Services UDDI, WSDL, SOAP Intelligent Web Services
    10. 10. <ul><li>Formal, explicit specification of a shared conceptualization </li></ul>Ontology Definition commonly accepted understanding conceptual model of a domain (ontological theory) unambiguous terminology definitions machine-readability with computational semantics
    11. 11. Ontology Example <ul><li>Concept </li></ul><ul><li>conceptual entity of the domain </li></ul><ul><li>Attribute </li></ul><ul><li>property of a concept </li></ul><ul><li>Relation </li></ul><ul><li>relationship between concepts or properties </li></ul><ul><li>Axiom </li></ul><ul><li>coherent description between Concepts / Properties / Relations via logical expressions </li></ul>Person Student Professor Lecture isA – hierarchy (taxonomy) name email student nr. research field topic lecture nr. attends holds holds(Professor, Lecture)  Lecture.topic  Professor.researchField
    12. 12. Ontology Languages <ul><li>Requirements: </li></ul><ul><ul><li>” expressivity“ </li></ul></ul><ul><ul><ul><li>knowledge representation </li></ul></ul></ul><ul><ul><ul><li>ontology theory support </li></ul></ul></ul><ul><ul><li>” reasoning support“ </li></ul></ul><ul><ul><ul><li>sound (unambiguous, decidable) </li></ul></ul></ul><ul><ul><ul><li>support of reasoners / inference engines </li></ul></ul></ul><ul><li>Semantic Web languages: </li></ul><ul><ul><li>web compatibility </li></ul></ul><ul><ul><li>Existing W3C Recommendations: </li></ul></ul><ul><ul><ul><li>XML, RDF, OWL </li></ul></ul></ul>
    13. 13. Semantic Web Language Layer Cake
    14. 14. Web Services <ul><li>Web Services [Stencil Group] </li></ul><ul><li>loosely coupled, reusable components </li></ul><ul><li>encapsulate discrete functionality </li></ul><ul><li>distributed </li></ul><ul><li>programmatically accessible over standard internet protocols </li></ul><ul><li>add new level of functionality on top of the current web </li></ul>
    15. 15. Using Web Services
    16. 16. Using Web Services Syntax Only
    17. 17. Lack of SWS standards <ul><li>Current technology does not allow realization of any of the parts of the Web Service usage process: </li></ul><ul><ul><li>Only syntactical standards available </li></ul></ul><ul><ul><li>Lack of fully developed semantic markup languages </li></ul></ul><ul><ul><li>Lack of semantically marked up content and services </li></ul></ul><ul><ul><li>Lack of semantically enhanced repositories </li></ul></ul><ul><ul><li>Lack of frameworks that facilitate discovery, composition and execution </li></ul></ul><ul><ul><li>Lack of tools and platforms that allow to semantically enrich current Web content </li></ul></ul>
    18. 18. Semantic Web Services <ul><li>Define exhaustive description frameworks for describing Web Services and related aspects (Web Service Description Ontologies) </li></ul><ul><li>Support ontologies as underlying data model to allow machine supported data interpretation (Semantic Web aspect) </li></ul><ul><li>Define semantically driven technologies for automation of the Web Service usage process (Web Service aspect) </li></ul>
    19. 19. Semantic Web Services (2) <ul><li>Usage Process: </li></ul><ul><li>Publication: Make available the description of the capabilities of a service </li></ul><ul><li>Discovery: Locate different services suitable for a given task </li></ul><ul><li>Selection: Choose the most appropriate services among the available ones </li></ul><ul><li>Composition: Combine services to achieve a goal </li></ul><ul><li>Mediation: Solve mismatches (in data or process) among the combined services </li></ul><ul><li>Execution: Invoke services following programmatic conventions </li></ul>
    20. 20. Semantic Web Services (3) <ul><li>Usage Process – execution support </li></ul><ul><li>Monitoring: Control the execution process </li></ul><ul><li>Compensation: Provide transactional support and undo or mitigate unwanted effects </li></ul><ul><li>Replacement: Facilitate the substitution of services by equivalent ones </li></ul><ul><li>Auditing: Verify that service execution occurred in the expected way </li></ul>
    21. 21. <ul><li>Semantic Web Services </li></ul><ul><li>= </li></ul><ul><li>Semantic Web Technology </li></ul><ul><li>+ </li></ul><ul><li>Web Service Technology </li></ul>Summary
    22. 22. Overview <ul><li>Introduction to SWS </li></ul><ul><ul><li>WSMO </li></ul></ul><ul><li>Introduction to SOA </li></ul><ul><ul><li>WSMX </li></ul></ul><ul><li>Means of Interoperability </li></ul><ul><li>WSMT </li></ul><ul><li>Conclusions </li></ul>
    23. 23. Web Service Modeling Ontology (WSMO) <ul><li>A conceptual model for Semantic Web Services: </li></ul><ul><ul><li>Ontology of core elements for Semantic Web Services </li></ul></ul><ul><ul><li>a formal description language (WSML) </li></ul></ul><ul><ul><li>execution environment (WSMX) </li></ul></ul><ul><li>… derived from and based on the Web Service Modeling Framework WSMF </li></ul><ul><li>an European Semantic System Initiative </li></ul><ul><ul><li>“ ESSI Cluster” Working Group </li></ul></ul><ul><ul><li>joint European research and development initiative </li></ul></ul>
    24. 24. WSMO Working Groups A Conceptual Model for SWS A Formal Language for WSMO A Rule-based Language for SWS Execution Environment for WSMO
    25. 25. WSMO Design Principles Web Compliance Ontology-Based Strict Decoupling Of Modeling Elements Centrality of Mediation Ontological Role Separation Description versus Implementation Execution Semantics WSMO
    26. 26. 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 <ul><li>Semantic description of Web Services: </li></ul><ul><li>Capability (functional) </li></ul><ul><li>Interfaces (usage) </li></ul>Connectors between components with mediation facilities for handling heterogeneities
    27. 27. Non-Functional Properties <ul><li>Every WSMO elements is described by properties that contain relevant, non-functional aspects </li></ul><ul><li>Dublin Core Metadata Set: </li></ul><ul><ul><li>complete item description </li></ul></ul><ul><ul><li>used for resource management </li></ul></ul><ul><li>Versioning Information </li></ul><ul><ul><li>evolution support </li></ul></ul><ul><li>Quality of Service Information </li></ul><ul><ul><li>availability, stability </li></ul></ul><ul><li>Other </li></ul><ul><ul><li>Owner, financial </li></ul></ul>
    28. 28. Non-Functional Properties List <ul><li>Dublin Core Metadata </li></ul><ul><ul><li>Contributor </li></ul></ul><ul><ul><li>Coverage </li></ul></ul><ul><ul><li>Creator </li></ul></ul><ul><ul><li>Description </li></ul></ul><ul><ul><li>Format </li></ul></ul><ul><ul><li>Identifier </li></ul></ul><ul><ul><li>Language </li></ul></ul><ul><ul><li>Publisher </li></ul></ul><ul><ul><li>Relation </li></ul></ul><ul><ul><li>Rights </li></ul></ul><ul><ul><li>Source </li></ul></ul><ul><ul><li>Subject </li></ul></ul><ul><ul><li>Title </li></ul></ul><ul><ul><li>Type </li></ul></ul><ul><li>Quality of Service </li></ul><ul><ul><li>Accuracy </li></ul></ul><ul><ul><li>NetworkRelatedQoS </li></ul></ul><ul><ul><li>Performance </li></ul></ul><ul><ul><li>Reliability </li></ul></ul><ul><ul><li>Robustness </li></ul></ul><ul><ul><li>Scalability </li></ul></ul><ul><ul><li>Security </li></ul></ul><ul><ul><li>Transactional </li></ul></ul><ul><ul><li>Trust </li></ul></ul><ul><li>Other </li></ul><ul><ul><li>Financial </li></ul></ul><ul><ul><li>Owner </li></ul></ul><ul><ul><li>TypeOfMatch </li></ul></ul><ul><ul><li>Version </li></ul></ul>
    29. 29. WSMO Ontologies Provide the formally specified terminology of the information used by all other components <ul><li>Semantic description of Web Services: </li></ul><ul><li>Capability (functional) </li></ul><ul><li>Interfaces (usage) </li></ul>Connectors between components with mediation facilities for handling heterogeneities Objectives that a client wants to achieve by using Web Services
    30. 30. Ontology Usage & Principles <ul><li>Ontologies are used as the ‘data model’ throughout WSMO </li></ul><ul><ul><li>all WSMO element descriptions rely on ontologies </li></ul></ul><ul><ul><li>all data interchanged in Web Service usage are ontologies </li></ul></ul><ul><ul><li>Semantic information processing & ontology reasoning </li></ul></ul><ul><li>WSMO Ontology Language WSML </li></ul><ul><ul><li>conceptual syntax for describing WSMO elements </li></ul></ul><ul><ul><li>logical language for axiomatic expressions (WSML Layering) </li></ul></ul><ul><li>WSMO Ontology Design </li></ul><ul><ul><li>Modularization: import / re-using ontologies, modular approach </li></ul></ul><ul><ul><li> for ontology design </li></ul></ul><ul><ul><li>De-Coupling: heterogeneity handled by OO Mediators </li></ul></ul>
    31. 31. Ontology Specification <ul><li>Non functional properties (see before) </li></ul><ul><li>Imported Ontologies importing existing ontologies where no heterogeneities arise </li></ul><ul><li>Used mediators OO Mediators (ontology import with terminology mismatch handling) </li></ul><ul><li>Ontology Elements: </li></ul><ul><ul><li>Concepts set of concepts that belong to the ontology, incl. </li></ul></ul><ul><ul><li>Attributes set of attributes that belong to a concept </li></ul></ul><ul><ul><li>Relations define interrelations between several concepts </li></ul></ul><ul><ul><li>Functions special type of relation (unary range = return value) </li></ul></ul><ul><ul><li>Instances set of instances that belong to the represented ontology </li></ul></ul><ul><ul><li>Axioms axiomatic expressions in ontology (logical statement) </li></ul></ul>
    32. 32. WSMO Web services Provide the formally specified terminology of the information used by all other components <ul><li>Semantic description of Web Services: </li></ul><ul><li>Capability (functional) </li></ul><ul><li>Interfaces (usage) </li></ul>Connectors between components with mediation facilities for handling heterogeneities Objectives that a client wants to achieve by using Web Services
    33. 33. WSMO Web service description Web service Implementation (not of interest in Web Service Description) Choreography --- Service Interfaces --- Capability functional description <ul><li>Advertising of Web Service </li></ul><ul><li>Support for WS Discovery </li></ul><ul><li>client-service interaction interface for consuming WS </li></ul><ul><li>External Visible </li></ul><ul><li>Behavior </li></ul><ul><li>- Communication </li></ul><ul><li>Structure </li></ul><ul><li>- ‘Grounding’ </li></ul><ul><li>realization of functionality by aggregating </li></ul><ul><li>other Web Services </li></ul><ul><li>functional </li></ul><ul><li>decomposition </li></ul><ul><li>WS composition </li></ul>Non-functional Properties DC + QoS + Version + financial <ul><li>complete item description </li></ul><ul><li>quality aspects </li></ul><ul><li>Web Service Management </li></ul>Orchestration WS WS WS
    34. 34. Capability Specification <ul><li>Non functional properties </li></ul><ul><li>Imported Ontologies </li></ul><ul><li>Used mediators </li></ul><ul><ul><li>OO Mediator: importing ontologies with mismatch resolution </li></ul></ul><ul><ul><li>WG Mediator: link to a Goal wherefore service is not usable a priori </li></ul></ul><ul><li>Pre-conditions </li></ul><ul><ul><li>What a web service expects in order to be able to provide its service </li></ul></ul><ul><ul><li>Define conditions over the input. </li></ul></ul><ul><li>Assumptions </li></ul><ul><ul><li>Conditions on the state of the world that has to hold before the Web Service can be executed </li></ul></ul><ul><li>Post-conditions </li></ul><ul><ul><li>Describes the result of the WS in relation to the input, and conditions on it </li></ul></ul><ul><li>Effects </li></ul><ul><ul><li>Conditions on the state of the world that hold after execution of the </li></ul></ul><ul><ul><li>Web Service (i.e. changes in the state of the world) </li></ul></ul>
    35. 35. Choreography & Orchestration <ul><li>VTA example: </li></ul><ul><li>Choreography = how to interact with the service to consume its functionality </li></ul><ul><li>Orchestration = how service functionality is achieved by aggregating other Web services </li></ul>VTA Service Date Time Flight, Hotel Error Confirmation Hotel Service Flight Service Date, Time Hotel Error Date, Time Flight Error When the service is requested When the service requests Confirmation Confirmation
    36. 36. Choreography Aspects <ul><li>Interface for consuming Web Service </li></ul><ul><ul><li>External Visible Behavior </li></ul></ul><ul><ul><ul><li>those aspects of the workflow of a Web Service where Interaction is required </li></ul></ul></ul><ul><ul><ul><li>described by workflow constructs: sequence, split, loop, parallel </li></ul></ul></ul><ul><ul><li>Communication Structure </li></ul></ul><ul><ul><ul><li>messages sent and received </li></ul></ul></ul><ul><ul><ul><li>their order (communicative behavior for service consumption) </li></ul></ul></ul><ul><ul><ul><li>choreography related errors (e.g. input wrong, message timeout, etc.) </li></ul></ul></ul><ul><ul><li>Grounding </li></ul></ul><ul><ul><ul><li>concrete communication technology for interaction </li></ul></ul></ul><ul><ul><li>Formal Model </li></ul></ul><ul><ul><ul><li>reasoning on Web Service interfaces (service interoperability) </li></ul></ul></ul><ul><ul><ul><li>allow mediation support on Web Service interfaces </li></ul></ul></ul>
    37. 37. Orchestration Aspects <ul><li>decomposition of service functionality </li></ul><ul><li>all service interaction via choreographies </li></ul>Control Structure for aggregation of other Web Services Web Service Business Logic 1 2 3 4 WS WS State in Orchestration Control Flow Data Flow Service Interaction
    38. 38. Orchestration Aspects <ul><li>Service interfaces are concerned with service consumption and interaction </li></ul><ul><li>Choreography and Orchestration as sub-concepts of Service Interface </li></ul><ul><li>Common requirements for service interface description: </li></ul><ul><ul><li>represent the dynamics of information interchange during service consumption and interaction </li></ul></ul><ul><ul><li>support ontologies as the underlying data model </li></ul></ul><ul><ul><li>appropriate communication technology for information interchange </li></ul></ul><ul><ul><li>sound formal model / semantics of service interface specifications in order to allow operations on them. </li></ul></ul>
    39. 39. Choreography and Orchestration - Overview Ontologies as data model: - every resource description based on ontologies - every data element interchanged is ontology instance Formal description of service interfaces: - ASM-based approach - allows reasoning & mediation 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) 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. Grounding: - making service interfaces executable - currently grounding to WSDL Conceptual models User language - based on UML2 activity diagrams - graphical Tool for Editing & Browsing Service Interface Description
    40. 40. WSMO Goals Provide the formally specified terminology of the information used by all other components <ul><li>Semantic description of Web Services: </li></ul><ul><li>Capability (functional) </li></ul><ul><li>Interfaces (usage) </li></ul>Connectors between components with mediation facilities for handling heterogeneities Objectives that a client wants to achieve by using Web Services
    41. 41. Goals <ul><li>Ontological De-coupling of Requester and Provider </li></ul><ul><li>Goal-driven Approach </li></ul><ul><ul><li>derived from AI rational agent approach </li></ul></ul><ul><ul><li>Requester formulates objective independently </li></ul></ul><ul><ul><li>‘ Intelligent’ mechanisms detect suitable services for solving the Goal </li></ul></ul><ul><ul><li>allows re-use of Services for different purposes </li></ul></ul><ul><li>Usage of Goals within Semantic Web Services </li></ul><ul><ul><li>A Requester, that is an agent (human or machine), defines a Goal to be resolved </li></ul></ul><ul><ul><li>Web Service Discovery detects suitable Web Services for solving the Goal automatically </li></ul></ul><ul><ul><li>Goal Resolution Management is realized in implementations </li></ul></ul>
    42. 42. Goal Specification <ul><li>Non functional properties </li></ul><ul><li>Imported Ontologies </li></ul><ul><li>Used mediators </li></ul><ul><ul><li>OO Mediators: importing ontologies with heterogeneity resolution </li></ul></ul><ul><ul><li>GG Mediator: </li></ul></ul><ul><ul><ul><li>Goal definition by reusing an already existing goal </li></ul></ul></ul><ul><ul><ul><li>allows definition of Goal Ontologies </li></ul></ul></ul><ul><li>Requested Capability </li></ul><ul><ul><li>describes service functionality expected to resolve the objective </li></ul></ul><ul><ul><li>defined as capability description from the requester perspective </li></ul></ul><ul><li>Requested Interface </li></ul><ul><ul><li>describes communication behaviour supported by the requester for consuming a Web Service (Choreography) </li></ul></ul><ul><ul><li>Restrictions / preferences on orchestrations of acceptable Web Services </li></ul></ul>
    43. 43. WSMO Mediators Provide the formally specified terminology of the information used by all other components <ul><li>Semantic description of Web Services: </li></ul><ul><li>Capability (functional) </li></ul><ul><li>Interfaces (usage) </li></ul>Connectors between components with mediation facilities for handling heterogeneities Objectives that a client wants to achieve by using Web Services
    44. 44. Mediation <ul><li>Heterogeneity … </li></ul><ul><ul><li>Mismatches on structural / semantic / conceptual / functional / level </li></ul></ul><ul><ul><li>Occur between different components that shall interoperate </li></ul></ul><ul><ul><li>Especially in distributed & open environments like the Internet </li></ul></ul><ul><li>Concept of Mediation (Wiederhold, 94): </li></ul><ul><ul><li>Mediators as components that resolve mismatches </li></ul></ul><ul><ul><li>Declarative Approach: </li></ul></ul><ul><ul><ul><li>Semantic description of resources </li></ul></ul></ul><ul><ul><ul><li>‘ Intelligent’ mechanisms that resolve mismatches independent of content </li></ul></ul></ul><ul><ul><li>Mediation cannot be fully automated (integration decision) </li></ul></ul><ul><li>Levels of Mediation within Semantic Web Services (WSMF): </li></ul><ul><ul><li>Data Level: mediate heterogeneous Data Sources </li></ul></ul><ul><ul><li>Functional Level: mediate mismatches between Web Service/Goal and Web Service/Goals functionalities </li></ul></ul><ul><ul><li>Process/Protocol Level: mediate heterogeneous Business Processes / Communication Patterns </li></ul></ul><ul><li>Layers of Mediators </li></ul><ul><ul><li>Specification Layer – WSMO Mediators </li></ul></ul><ul><ul><li>Implementation Layer – Levels of Mediation </li></ul></ul>
    45. 45. WSMO Mediators Overview
    46. 46. Mediator Structure WSMO Mediator uses a Mediation Service via Source Component Source Component Target Component 1 .. n 1 Mediation Services <ul><li>as a Goal </li></ul><ul><li>directly </li></ul><ul><li>optionally incl. Mediation </li></ul>Specification layer Implementation layer
    47. 47. OO Mediator - Example OO Mediator Mediation Service Train Connection Ontology (s1) Purchase Ontology (s2) Train Ticket Purchase Ontology Mediation Services Discovery Merging 2 ontologies Goal: “ merge s1, s2 and s1.ticket subclassof s2.product”
    48. 48. GG Mediators <ul><li>Aim: </li></ul><ul><ul><li>Support specification of Goals by re-using existing Goals </li></ul></ul><ul><ul><li>Allow definition of Goal Ontologies (collection of pre-defined Goals) </li></ul></ul><ul><ul><li>Terminology mismatches handled by OO Mediators </li></ul></ul><ul><li>Example: Goal Refinement </li></ul>GG Mediator Mediation Service Source Goal “ Buy a ticket” Target Goal “ Buy a Train Ticket” postcondition: “ aTicket memberof trainticket”
    49. 49. <ul><li>WG Mediators: </li></ul><ul><ul><li>link a Web Service to a Goal and resolve occurring mismatches </li></ul></ul><ul><ul><li>match Web Service and Goals that do not match a priori </li></ul></ul><ul><ul><li>handle terminology mismatches between Web Services and Goals </li></ul></ul><ul><ul><li>broader range of Goals solvable by a Web Service </li></ul></ul><ul><li>WW Mediators: </li></ul><ul><ul><li>enable interoperability of heterogeneous Web Services </li></ul></ul><ul><ul><li>support automated collaboration between Web Services </li></ul></ul><ul><ul><li>OO Mediators for terminology import with data level mediation </li></ul></ul><ul><ul><li>Protocol Mediation for establishing valid multi-party collaborations </li></ul></ul><ul><ul><li>Process Mediation for making Business Processes interoperable </li></ul></ul>WG & WW Mediators
    50. 50. Data Level Mediation <ul><li>Scope </li></ul><ul><ul><li>Solving terminological mismatches </li></ul></ul><ul><li>Related Aspects / Techniques: </li></ul><ul><ul><li>Ontology Integration (Mapping, Merging, Alignment) </li></ul></ul><ul><ul><li>Data Lifting & Lowering </li></ul></ul><ul><ul><li>Transformation between Languages / Formalisms </li></ul></ul><ul><li>Terminology Mismatches Classification </li></ul><ul><ul><li>Conceptualization Mismatches </li></ul></ul><ul><ul><ul><li>same domain concepts, but different conceptualization </li></ul></ul></ul><ul><ul><ul><li>different levels of abstraction </li></ul></ul></ul><ul><ul><ul><li>different ontological structure </li></ul></ul></ul><ul><ul><ul><li>=> resolution only includs human intervention </li></ul></ul></ul><ul><ul><li>Explication Mismatches </li></ul></ul><ul><ul><ul><li>mismatches between: </li></ul></ul></ul><ul><ul><ul><ul><li>T (Term used), D (definition of concepts), C (real world concept) </li></ul></ul></ul></ul><ul><ul><ul><li>=> automated resolution partially possible </li></ul></ul></ul>
    51. 51. Functional Level Mediation <ul><li>Scope </li></ul><ul><ul><li>Solving functional mismatches between goals and/or ws </li></ul></ul><ul><li>Related Aspects/Techniques </li></ul><ul><ul><li>Discovery </li></ul></ul><ul><ul><li>Semantic Matchmaking </li></ul></ul><ul><li>Matchmaking Mismatches </li></ul>= G/WS = G/WS Exact Match Subsumption Match Intersection Match No Match PlugIn Match X
    52. 52. Process Level Mediation <ul><li>Scope </li></ul><ul><ul><li>Resolves communication mismatches and establish behavior compatibility </li></ul></ul><ul><li>Related Aspects/Techniques </li></ul><ul><ul><li>Data and control flow composition </li></ul></ul><ul><li>Process Mismatches </li></ul><ul><ul><li>Signature terminology mismatches (need for data level mediation) </li></ul></ul><ul><ul><li>Communication/behavior mismatches </li></ul></ul>
    53. 53. WSMO Mediators and Mediation Levels <ul><li>ooMediator </li></ul><ul><ul><li>Data Level Mediation </li></ul></ul><ul><li>ggMediator </li></ul><ul><ul><li>Data Level Mediation </li></ul></ul><ul><ul><li>Functional Level Mediation </li></ul></ul><ul><li>Ex: </li></ul><ul><li>wgMediator </li></ul><ul><ul><li>Data Level Mediation </li></ul></ul><ul><ul><li>Functional Level Mediation </li></ul></ul><ul><ul><li>Process Level Mediation </li></ul></ul><ul><li>wwMediator </li></ul><ul><ul><li>Data Level Mediation </li></ul></ul><ul><ul><li>Functional Level Mediation </li></ul></ul><ul><ul><li>Process Level Mediation </li></ul></ul>internal business logic of Web Service (not of interest in Service Interface Description) internal business logic of Web Service (not of interest in Service Interface Description) WW Mediator
    54. 54. Overview <ul><li>Introduction to SWS </li></ul><ul><ul><li>WSMO </li></ul></ul><ul><li>Introduction to SOA </li></ul><ul><ul><li>WSMX </li></ul></ul><ul><li>Means of Interoperability </li></ul><ul><li>WSMT </li></ul><ul><li>Conclusions </li></ul>
    55. 55. Information Technology versus Mission of Organizations Key Enablers <ul><li>People (e.g., organization structure, human capital) </li></ul><ul><li>Business Processes </li></ul><ul><li>IT (e.g., systems) </li></ul><ul><li>Physical Infrastructure (e.g., facilities, workplace environment) </li></ul><ul><li>Goals </li></ul><ul><li>Objectives </li></ul><ul><li>Strategy selection </li></ul><ul><li>Value Proposition development </li></ul><ul><li>Long term vision alignment </li></ul><ul><li>Critical success factors for customers and service offerings </li></ul><ul><li>Specific definition functional performance </li></ul>Mission Strategies Capabilities
    56. 56. Existing IT architectures cannot support changing needs Existing Architectures do not scale Agility IT assets cannot be easily repositioned in response to changing requirements No solution for efficient intra- and inter-organization information sharing Decision cycles are unnecessarily lengthened by data stovepipes Process Heterogeneity Systems, organizations units and network of partners duplicate the same work Information stovepipes require point-to-point integrations that limit flexibility and create maintenance overhead More efforts spent connecting systems together than adding mission critical capabilities Data Heterogeneity Difficult to determine “what data means” fosters duplicate applications and data Inability of applications to interoperate due to platform incompatibility Data used across an organization is often inconsistent and potentially inaccurate 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 No agility, processes redundant, lack of system interactions, and everything is very costly
    57. 57. A Solution – Service Oriented Architectures Capabilities performed by one for another to achieve a desired outcome Functionally aligning architecture to enable a collection of independent services to be linked together to solve a business problem The fundamental organization of a system embodied in its capabilities, their interactions, and the environment Architecture Oriented Service 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 SOA - A paradigm that encourages organizations to re-think how their IT capabilities are organized
    58. 58. Analogy - traditional software architecture versus SOA Traditional approach to software architecture <ul><li>No Agility to repair your car even for trivial tasks </li></ul><ul><li>A Process that is duplicative and inefficient </li></ul><ul><li>Costly to operate and maintain – keep many people </li></ul><ul><li>Agility to repair cars quickly (next available mechanic takes care) </li></ul><ul><li>A Process that is efficient </li></ul><ul><li>Cost effective to operate and maintain </li></ul>Service-Oriented Architecture 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 You ask any mechanic in a garage to repair your car – model of your car does not matter “ 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
    59. 59. SOA Benefits 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 plug-and-play architecture and re-use of existing services Process Heterogeneity Allow interoperation with other systems without time consuming customization and point-to-point integration Ensure system change is not a constraint on business or mission change Facilitate integration with multiple solutions via open IT standards Data Heterogeneity Improve semantics of data exchanged during business process execution Maintain consistency of data across different systems Remain platform, language, and vendor independent to remove IT barriers for using best-of-breed software packages Costs Leverage existing IT infrastructure Reduce costs of development of new functionalities by acquiring pre-built components/services Lower maintenance costs SOA allows to align IT with mission of the organization Better agility, no redundancy, system interactions, and reduces overall costs of system maintenance
    60. 60. SOA Design Principles <ul><li>Strong Decoupling & Strong Mediation </li></ul><ul><ul><li>autonomous components with mediators for interoperability </li></ul></ul><ul><li>Interface vs. Implementation </li></ul><ul><ul><li>distinguish interface (= description) from implementation (=program) </li></ul></ul><ul><li>Peer to Peer </li></ul><ul><ul><li>interaction between equal partners (in terms of control) </li></ul></ul>
    61. 61. Benefits of SOA <ul><li>Better reuse </li></ul><ul><ul><li>Build new functionality (new execution semantics) on top of existing Business Services </li></ul></ul><ul><li>Well defined interfaces </li></ul><ul><ul><li>Manage changes without affecting the Core System </li></ul></ul><ul><li>Easier Maintainability </li></ul><ul><ul><li>Changes/Versions are not all-or-nothing </li></ul></ul><ul><li>Better Flexibility </li></ul>
    62. 62. Semantically Empowered Service-oriented Architectures (SESA) <ul><li>Currently, computer science is in a new period of abstraction. </li></ul><ul><li>A generation ago we learnt to abstract from hardware and currently we learn to abstract from software in terms of SERVICE oriented architectures (SOA). </li></ul><ul><li>It is the service that counts for a customer and not the specific software or hardware that is used to implement the service. </li></ul><ul><li>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. </li></ul>
    63. 63. Semantically Empowered Service-oriented Architecture (SESA) <ul><li>Service-oriented architectures will become quickly the leading software paradigm </li></ul><ul><li>However, SOAs will not scale without significant mechanization of </li></ul><ul><ul><li>Service discovery, service adaptation, negotiation, service composition, service invocation, and service monitoring; and </li></ul></ul><ul><ul><li>Data and process mediation </li></ul></ul><ul><li>Therefore, machine processable semantics needs to be added to bring SOAs to their full potential </li></ul><ul><li>Development of open standards (languages) and open source architectures and tools that add semantics to service descriptions </li></ul>
    64. 64. Semantic Web Services Infrastructure <ul><li>A service oriented architecture. </li></ul><ul><li>Reference implementation of WSMO </li></ul>
    65. 65. User Service versus Platform Service in SWS Systems
    66. 66. Vertical and Horizontal Services <ul><li>Vertical services remain invisible to horizontal services, and during its execution, the horizontal services remain unaware that vertical services are executed together with them </li></ul><ul><li>Vertical services invoke horizontal services, coordinating overall workflow, rather than horizontal service invoking the vertical </li></ul>
    67. 67. Overview <ul><li>Introduction to SWS </li></ul><ul><ul><li>WSMO </li></ul></ul><ul><li>Introduction to SOA </li></ul><ul><ul><li>WSMX </li></ul></ul><ul><li>Means of Interoperability </li></ul><ul><li>WSMT </li></ul><ul><li>Conclusions </li></ul>
    68. 68. WSMX Introduction <ul><li>Software framework for runtime binding of service requesters and service providers </li></ul><ul><li>WSMX interprets service requester’s goal to </li></ul><ul><ul><li>discover matching services </li></ul></ul><ul><ul><li>select (if desired) the service that best fits </li></ul></ul><ul><ul><li>provide mediation (if required) </li></ul></ul><ul><ul><li>make the service invocation </li></ul></ul><ul><li>Is based on the conceptual model provided by WSMO </li></ul><ul><li>Has a formal execution semantics </li></ul><ul><li>Service Oriented and event-based architecture </li></ul><ul><ul><li>based on microkernel design using technologies as J2EE, Hibernate, Spring, JMX, etc. </li></ul></ul>
    69. 69. WSMX Motivation <ul><li>Provide middleware ‘glue’ for Semantic Web Services </li></ul><ul><ul><li>Allow service providers focus on their business </li></ul></ul><ul><li>Provide a reference implementation for WSMO </li></ul><ul><ul><li>Eat our own cake </li></ul></ul><ul><li>Provide an environment for goal based service discovery and invocation </li></ul><ul><ul><li>Run-time binding of service requester and provider </li></ul></ul><ul><li>Provide a flexible Service Oriented Architecture </li></ul><ul><ul><li>Add, update, remove components at run-time as needed </li></ul></ul><ul><li>Keep open-source to encourage participation </li></ul><ul><ul><li>Developers are free to use in their own code </li></ul></ul><ul><li>Define formal execution semantics </li></ul><ul><ul><li>Unambiguous model of system behaviour </li></ul></ul>
    70. 70. WSMX Usage Scenario
    71. 71. WSMX Usage Scenario - P2P <ul><li>A P2P network of WSMX ‘nodes’ </li></ul><ul><li>Each WSMX node described as a SWS </li></ul><ul><li>Communication via WSML over SOAP </li></ul><ul><li>Distributed discovery – first aim </li></ul><ul><li>Longer term aim - distributed execution environment </li></ul>
    72. 72. WSMX Usage Scenario - P2P
    73. 73. WSMX Usage Scenario - P2P
    74. 74. Design Principles <ul><li>Strong Decoupling & Strong Mediation </li></ul><ul><ul><li>autonomous components with mediators for interoperability </li></ul></ul><ul><li>Interface vs. Implementation </li></ul><ul><ul><li>distinguish interface (= description) from implementation (=program) </li></ul></ul><ul><li>Peer to Peer </li></ul><ul><ul><li>interaction between equal partners (in terms of control) </li></ul></ul>WSMO Design Principles == WSMX Design Principles == SOA Design Principles
    75. 75. Benefits of SOA <ul><li>Better reuse </li></ul><ul><ul><li>Build new functionality (new execution semantics) on top of existing Business Services </li></ul></ul><ul><li>Well defined interfaces </li></ul><ul><ul><li>Manage changes without affecting the Core System </li></ul></ul><ul><li>Easier Maintainability </li></ul><ul><ul><li>Changes/Versions are not all-or-nothing </li></ul></ul><ul><li>Better Flexibility </li></ul>
    76. 76. WSMX Architecture Messaging Application Management Service Oriented Architectures
    77. 77. Selected Components <ul><li>Adapters </li></ul><ul><li>Parser </li></ul><ul><li>Invoker </li></ul><ul><li>Choreography </li></ul><ul><li>Process Mediator </li></ul><ul><li>Discovery </li></ul><ul><li>Data Mediator </li></ul><ul><li>Resource Manager </li></ul><ul><li>Reasoning </li></ul>
    78. 78. Adapters <ul><li>To overcome data representation mismatches on the communication layer </li></ul><ul><li>Transforms the format of a received message into WSML compliant format </li></ul><ul><li>Based on mapping rules </li></ul>
    79. 79. Parser <ul><li>WSML compliant parser </li></ul><ul><ul><li>Code handed over to wsmo4j initiative http://wsmo4j.sourceforge.net/ </li></ul></ul><ul><li>Validates WSML description files </li></ul><ul><li>Compiles WSML description into internal memory model </li></ul><ul><li>Stores WSML description persistently (using Resource Manager) </li></ul>
    80. 80. Communication Manager – Invoker <ul><li>WSMX uses </li></ul><ul><ul><li>The SOAP implementation from Apache AXIS </li></ul></ul><ul><ul><li>The Apache Web Service Invocation Framework (WSIF) </li></ul></ul><ul><li>WSMO service descriptions are grounded to WSDL </li></ul><ul><li>Both RPC and Document style invocations possible </li></ul><ul><li>Input parameters for the Web Services are translated from WSML to XML using an additional XML Converter component. </li></ul>Network Invoker Apache AXIS XML Converter Mediated WSML Data XML Web Service SOAP
    81. 81. Choreography <ul><li>Requester and provider have their own observable communication patterns </li></ul><ul><ul><li>Choreography part of WSMO </li></ul></ul><ul><li>Choreography instances are loaded for the requester and provider </li></ul><ul><ul><li>Both requester and provider have their own WSMO descriptions </li></ul></ul><ul><li>Choreography Engine </li></ul><ul><ul><li>Evaluation of transition rules </li></ul></ul><ul><ul><ul><li>Prepares the available data </li></ul></ul></ul><ul><ul><li>Sends data to the Process Mediator </li></ul></ul><ul><ul><ul><li>The Process Mediator filters, changed or even replaced data </li></ul></ul></ul><ul><ul><li>Receive data from PM and forwards it to the Communication manager </li></ul></ul><ul><ul><ul><li>Data to be finally sent to the communication partner </li></ul></ul></ul>
    82. 82. Process Mediator <ul><li>Requester and provider have their own communication patterns </li></ul><ul><li>Only if the two match precisely, a direct communication may take place </li></ul><ul><li>The Process Mediator provides the means for runtime analyses of two choreography instances and uses mediators to compensate possible mismatches </li></ul>
    83. 83. Discovery <ul><li>Responsible for finding appropriate Web Services to achieve a goal (discovery) </li></ul><ul><li>Current discovery component is based on simple matching </li></ul><ul><ul><li>Keywords identified in the NFP of the goal </li></ul></ul><ul><ul><li>Matched against NFPs of the published WSs </li></ul></ul><ul><ul><li>Variable set of NFPs to be considered for this process </li></ul></ul><ul><ul><li>To be extended </li></ul></ul><ul><ul><ul><li>Values in NFPs might be concepts from ontologies </li></ul></ul></ul><ul><ul><ul><li>More elaborate string matching algorithms </li></ul></ul></ul><ul><li>Advanced semantic discovery in prototypical stage </li></ul>
    84. 84. Data Mediator <ul><li>Ontology - to-ontology mediation </li></ul><ul><li>A set of mapping rules are defined and then executed </li></ul><ul><li>Initially rules are defined semi-automatic </li></ul><ul><li>Create for each source instance the target instance(s) </li></ul>
    85. 85. Resource Manager <ul><li>Stores internal memory model to a data store </li></ul><ul><li>Decouples storage mechanism from the rest of WSMX </li></ul><ul><li>Data model is compliant to WSMO API </li></ul><ul><li>Independent of any specific data store implementation i.e. database and storage mechanism </li></ul>
    86. 86. Reasoner <ul><li>Mins </li></ul><ul><ul><li>Datalog + Negation + Function Symbols Reasoner Engine </li></ul></ul><ul><ul><li>Features </li></ul></ul><ul><ul><ul><li>Built-in predicates </li></ul></ul></ul><ul><ul><ul><li>Function symbols </li></ul></ul></ul><ul><ul><ul><li>Stratified negation </li></ul></ul></ul><ul><li>WSMO4J </li></ul><ul><ul><li>validation, serialization and parsing </li></ul></ul><ul><li>WSML2Reasoner </li></ul><ul><ul><li>Reasoning API </li></ul></ul><ul><ul><ul><li>mapping fromWSML to a vendor-neutral rule representation </li></ul></ul></ul><ul><ul><li>Contains: </li></ul></ul><ul><ul><ul><li>Common API for WSML Reasoners </li></ul></ul></ul><ul><ul><ul><li>Transformations of WSML to tool-specific input data (query answering or instance retrieval) </li></ul></ul></ul><ul><li>WSML-DL-Reasoner </li></ul><ul><ul><li>Features: </li></ul></ul><ul><ul><ul><li>T-Box reasoning (provided by FaCT++) </li></ul></ul></ul><ul><ul><ul><li>Querying for all concepts </li></ul></ul></ul><ul><ul><ul><li>Querying for the equivalents, for the children, for the descendants, for the parents and for all ancestors of a given concept </li></ul></ul></ul><ul><ul><ul><li>Testing the satisfiability of a given concept with respect to the knowledge base </li></ul></ul></ul><ul><ul><ul><li>Subsumption test of two concepts with respect to the knowledge base </li></ul></ul></ul><ul><ul><ul><li>Wrapper of WSML-DL to the XML syntax of DL used in the DIG interface </li></ul></ul></ul>
    87. 87. System Entry Points <ul><li>achieveGoal (WSMLDocument): Context </li></ul><ul><li>getWebServices (WSMLDocument): Context </li></ul><ul><li>invokeWebService (WSMLDocument, Context): Context </li></ul>
    88. 88. Define “Business” Process
    89. 89. Generate Wrappers for Components Discovery Wrapper Choreography Wrapper Communication Manager Wrapper Registry of known components
    90. 90. Context Data PROCESS CONTEXT Discovery Wrapper Data Mediator Choreography Wrapper Communication Manager Wrapper Registry of known components Choreography object Mediated objects , Web Services entities Errors Exceptions
    91. 91. Event-based Implementation
    92. 92. WSMX Conclusions <ul><li>Conceptual model is WSMO </li></ul><ul><li>End to end functionality for executing SWS </li></ul><ul><li>Has a formal execution semantics </li></ul><ul><li>Real implementation </li></ul><ul><li>Open source code base at SourceForge </li></ul><ul><li>Event-driven component architecture </li></ul>
    93. 93. Overview <ul><li>Introduction to SWS </li></ul><ul><ul><li>WSMO </li></ul></ul><ul><li>Introduction to SOA </li></ul><ul><ul><li>WSMX </li></ul></ul><ul><li>Means of Interoperability </li></ul><ul><li>WSMT </li></ul><ul><li>Conclusions </li></ul>
    94. 94. Means of Interoperability <ul><li>Format and Language heterogeneity </li></ul><ul><ul><li>Adaptors to/from WSML </li></ul></ul><ul><li>Interface/communications formalism </li></ul><ul><ul><li>Choreography and Orchestraton </li></ul></ul><ul><li>Ontology heterogeneity </li></ul><ul><ul><li>Data Mediation </li></ul></ul><ul><li>Interface/communication patterns heterogeneity </li></ul><ul><ul><li>Process Mediation </li></ul></ul>
    95. 95. Adapter Framework <ul><li>Overview </li></ul><ul><ul><li>Overcomes mismatches at the communication layer </li></ul></ul><ul><ul><li>Is based on Java Connector Architecture (JCA) </li></ul></ul><ul><ul><li>Is based on SOA design principles </li></ul></ul><ul><ul><li>Adapters function independently </li></ul></ul><ul><ul><li>Adapters are built based on mapping rules </li></ul></ul><ul><ul><li>Is developed in Java </li></ul></ul><ul><li>Motivation </li></ul><ul><ul><li>WSMX does not recognize message formats other than WSML </li></ul></ul><ul><ul><li>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 </li></ul></ul><ul><ul><li>Provide a unified framework for developing and using adapters </li></ul></ul>
    96. 96. Features <ul><li>Adapters can be added and removed at run time </li></ul><ul><li>Secure pluggability </li></ul><ul><li>Supports both synchronous and asynchronous communication </li></ul><ul><li>Handles communication protocol heterogeneity, i.e., allow to communicate using HTTP(S), TCP/IP, UDP </li></ul><ul><li>Provides simple operations: </li></ul><ul><ul><li>Deploy : adds adapter to the adapter pool </li></ul></ul><ul><ul><li>Undeploy : removes adapter from the adapter pool, subject to security constraints </li></ul></ul><ul><ul><li>Send : send legacy message to WSMX </li></ul></ul><ul><ul><li>Receive : receive legacy message from WSMX </li></ul></ul>
    97. 97. Adapter Framework - Architecture
    98. 98. Adapter Framework – Deploy adapter deploy ( adapterName , someAdaper . adapter ) Request sent to deploy an adapter
    99. 99. Adapter Framework – Deploy adapter deploy ( adapterName , someAdaper . adapter ) Communication type scanned
    100. 100. Adapter Framework – Deploy adapter deploy ( adapterName , someAdaper . adapter ) Fingerprint for this adapter created
    101. 101. Adapter Framework – Deploy adapter Metadata updated
    102. 102. Adapter Framework – Deploy adapter Adapter stored
    103. 103. Adapter Framework – Deploy adapter Fingerprint returned in a requested communication mode
    104. 104. Adapter Framework – Deploy adapter Fingerprint returned in to backend application D749 9163 9E5E BDFC 8018 E6B8 49DD 3252 ACF6 7294
    105. 105. Adapter Framework – Send Message send to WSMX via Adapter Framework send ( adapterName , message, fingerprint )
    106. 106. Adapter Framework – Send Communication type scanned send ( adapterName , message, fingerprint )
    107. 107. Adapter Framework – Send Fingerprint checked, valid fingerprint send ( adapterName , message, fingerprint )
    108. 108. Adapter Framework – Send Message format checked, valid fingerprint send ( adapterName , message, fingerprint )
    109. 109. Adapter Framework – Send Internal request sent to select adapterName2WSML send ( adapterName , message, fingerprint )
    110. 110. Adapter Framework – Send adapterName2WSML selected looking into metadata repository send ( adapterName , message, fingerprint )
    111. 111. Adapter Framework – Send Message translated and sent to WSMX achieveGoal ( WSMLDocument )
    112. 112. Adapter Framework – Undeploy adapter Request sent to undeploy an adapter together with its fingerprint undeploy ( adapterName , D749 9163 9E5E BDFC 8018 E6B8 49DD 3252 ACF6 7294 )
    113. 113. Adapter Framework – Undeploy adapter Fingerprint checked, valid fingerprint undeploy ( adapterName , D749 9163 9E5E BDFC 8018 E6B8 49DD 3252 ACF6 7294 )
    114. 114. Adapter Framework – Undeploy adapter Metadata updated
    115. 115. Adapter Framework – Undeploy adapter Adapter removed
    116. 116. Choreography & Orchestration VTA Service Date Time Flight, Hotel Error Confirmation Hotel Service Flight Service Date, Time Hotel Error Date, Time Flight Error When the service is requested When the service requests <ul><li>VTA example: </li></ul><ul><li>Choreography = how to interact with the service to consume its functionality </li></ul><ul><li>Orchestration = how service functionality is achieved by aggregating other Web services </li></ul>Confirmation Confirmation
    117. 117. Abstract State Machine <ul><li>Formality </li></ul><ul><ul><li>a rigid framework to express dynamics. </li></ul></ul><ul><li>Maximality </li></ul><ul><ul><li>expressive enough to model any aspect around computation </li></ul></ul><ul><li>Minimality </li></ul><ul><ul><li>minimal set of modeling primitives – minimal ontological commitment </li></ul></ul>
    118. 118. Choreography outline <ul><li>NFPs </li></ul><ul><ul><li>The same as in WSML </li></ul></ul><ul><li>State Signature </li></ul><ul><ul><li>Defines the state ontology used by the service together with the definition of the types of modes the concepts and relations may have </li></ul></ul><ul><li>Transition Rules </li></ul><ul><ul><li>Express changes of states </li></ul></ul>Class choreography hasNonFunctionalProperties type nonFunctionalProperties hasStateSignature type stateSignature hasTransitionRules type transitionRules
    119. 119. 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
    120. 120. Transition Rules <ul><li>if φ then T endIf </li></ul><ul><li>forall V with ψ do T′ endForall </li></ul><ul><li>choose V with ψ do T′ endChoose </li></ul><ul><li>φ is a first order formula with no free variables </li></ul><ul><li>V is a set of variables </li></ul><ul><li>ψ is a first order formula where the free variables are interpreted as parameters and all free variables in ψ occur in V </li></ul><ul><li>T is a set of transition rules </li></ul><ul><li>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 </li></ul>
    121. 121. Update rules <ul><li>add(a) </li></ul><ul><li>delete(a) </li></ul><ul><li>where a is a WSML atomic formula, which possibly includes </li></ul><ul><ul><li>parameter variables, or </li></ul></ul><ul><ul><li>non-primitive update rules of the form: </li></ul></ul><ul><li>update(a new ) </li></ul><ul><li>update(a old => a new ) </li></ul><ul><li>S U = S {a|delete(a) Є U} U {a|add(a) Є U} </li></ul><ul><li>where O is an ontology O, S a state and U an update set </li></ul>
    122. 122. Machine behaviour <ul><li>Given C = (O, T, S) </li></ul><ul><li>S 0 = S </li></ul><ul><li>for 0 ≤ i ≤ n-1, </li></ul><ul><ul><li>S i ≠ S i+1 </li></ul></ul><ul><ul><li>U = {add(a) | a Є S i+1 S i } U {delete(a) | a Є S i S i+1 } is an update set associated with S i , O and T </li></ul></ul><ul><ul><li>S i+1 is consistent with O, and S i </li></ul></ul><ul><li>run terminated </li></ul>
    123. 123. Data Mediator <ul><li>Ontology - to-ontology mediation </li></ul><ul><li>A set of mapping rules are defined and then executed </li></ul><ul><li>Initially rules are defined semi-automatic </li></ul><ul><li>Create for each source instance the target instance(s) </li></ul>
    124. 124. Design-time <ul><li>Inputs </li></ul><ul><ul><li>Source Ontology and Target Ontology </li></ul></ul><ul><li>Features </li></ul><ul><ul><li>Graphical interface </li></ul></ul><ul><ul><li>Set of mechanism towards semi-automatic creation of mappings </li></ul></ul><ul><ul><li>Capturing the semantic relationships identified in the process </li></ul></ul><ul><ul><li>Storing these mappings in a persistent storage </li></ul></ul><ul><li>Output </li></ul><ul><ul><li>Abstract representation of the mappings </li></ul></ul>
    125. 125. Design-time Phase
    126. 126. Design-time Phase - Approach, Decomposition and Mapping Context <ul><li>Bottom-up -> training set </li></ul><ul><li>Top-down -> decomposition, context </li></ul>
    127. 127. Design-time Phase - Suggestion Algorithms <ul><li>Eligibility Factor = f(Lexical Factor, Structural Factor) </li></ul><ul><li>Lexical Factor: </li></ul><ul><ul><li>WordNet </li></ul></ul><ul><ul><ul><li>Synonyms, hyponyms, hipernyms </li></ul></ul></ul><ul><ul><li>string analyzing algorithms </li></ul></ul><ul><ul><ul><li>Tokenizer and string distance </li></ul></ul></ul><ul><li>Structural Factor </li></ul><ul><ul><li>Decomposition, EF for the composing concepts </li></ul></ul><ul><ul><ul><li>Based on the already done mappings </li></ul></ul></ul>
    128. 128. Run-Time Data Mediator <ul><li>Main Mediation Scenario: Instance Transformation </li></ul><ul><li>Inputs </li></ul><ul><ul><li>Incoming data </li></ul></ul><ul><ul><ul><li>Source ontology instances </li></ul></ul></ul><ul><li>Features </li></ul><ul><ul><li>Completely automatic process </li></ul></ul><ul><ul><li>Grounding of the abstract mappings to a concrete language </li></ul></ul><ul><ul><ul><li>F-Logic, WSML </li></ul></ul></ul><ul><ul><li>Uses a reasoner to evaluate the mapping rules </li></ul></ul><ul><ul><ul><li>MINS </li></ul></ul></ul><ul><li>Outputs </li></ul><ul><ul><li>Mediated data </li></ul></ul><ul><ul><ul><li>Target ontology instances </li></ul></ul></ul>
    129. 129. Run Time Component - Architecture Mapping Rules Mappings Abstract Mappings Repr. Rules Generator Instance Source Reasoning Environment Instance Target Ontologies
    130. 130. Run Time Component – Features <ul><li>Grounding the abstract mappings </li></ul><ul><li>Associate a formal semantics to the mappings </li></ul><ul><ul><li>Obtain rules in a concrete language </li></ul></ul><ul><li>Why not during design time? </li></ul><ul><ul><li>Offers a grater flexibility </li></ul></ul><ul><ul><li>Different groundings for the same mappings set </li></ul></ul><ul><ul><li>Different execution environments for the grounded mappings </li></ul></ul><ul><ul><li>Easier to maintain the abstract mappings </li></ul></ul><ul><ul><li>Important point of alignment </li></ul></ul><ul><li>Caching mechanism can be used </li></ul>
    131. 131. Ontology Mapping Language <ul><li>Language Neutral Mapping Language </li></ul><ul><ul><li>mapping definitions on meta-layer (i.e. on generic ontological constructs) </li></ul></ul><ul><ul><li>independent of ontology specification language </li></ul></ul><ul><ul><li>“ Grounding” to specific languages for execution (WSML, OWL, F-Logic) </li></ul></ul><ul><li>Main Features: </li></ul><ul><ul><li>Mapping Document (sources, mappings, mediation service) </li></ul></ul><ul><ul><li>direction of mapping (uni- / bidirectional) </li></ul></ul><ul><ul><li>conditions / logical expressions for data type mismatch handling, restriction of mapping validity, and complex mapping definitions </li></ul></ul><ul><ul><li>mapping constructs: </li></ul></ul><ul><ul><ul><li>classMapping, attributeMapping, relationMapping (between similar constructs) </li></ul></ul></ul><ul><ul><ul><li>classAtrributeMapping, classRelationMapping, classInstanceMapping </li></ul></ul></ul><ul><ul><ul><li>instanceMapping (explicit ontology instance transformation) </li></ul></ul></ul><ul><ul><li>mapping operators: </li></ul></ul><ul><ul><ul><li>=, <, <=, >, >=, and, or, not </li></ul></ul></ul><ul><ul><ul><li>inverse, symmetric, transitive, reflexive </li></ul></ul></ul><ul><ul><ul><li>join, split </li></ul></ul></ul>
    132. 132. Mapping Language Example Ontology O2 Human - name Adult Child <ul><li>Person </li></ul><ul><li>name </li></ul><ul><li>age </li></ul><ul><li>mick memberOf Person </li></ul><ul><li>name = Mick Kerrigan </li></ul><ul><li>age = 27 </li></ul>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 Ontology O1
    133. 133. Process Mediator <ul><li>Requester and provider have their own communication patterns </li></ul><ul><li>Only if the two match precisely, a direct communication may take place </li></ul><ul><li>The Process Mediator provides the means for runtime analyses of two choreography instances and uses mediators to compensate possible mismatches </li></ul>
    134. 134. Compatibility <ul><li>Two business partners are compatible if their public processes are matching </li></ul>A B C D E A B C D E Business Partner1 Business Partner2
    135. 135. Compatibility <ul><li>Two business partners are compatible if their public processes are matching </li></ul>A B C D E E B C, D A Business Partner1 Business Partner2
    136. 136. Process Mediator – Addressed Mismatches
    137. 137. Process Mediator – Unsolvable Mismatches Business Partner 1 Business Partner 1 Business Partner 2 Business A Business Partner 1 Business Partner 1 Business Partner 2 Business Partner 2 A B B A Business Partner 1 Business Partner 1 Business Partner 2 Business Partner 2 PM PM PM A Ack ? ? ?
    138. 138. Process Mediation Example itinerary[origin, destination, date] time price origin destination itinerary[origin, destination] date ticket[route, date, time, price] R E Q U E S T S E R V I C E Processes Mediator
    139. 139. Process Mediation Example time price date R E Q U E S T S E R V I C E Processes Mediator itinerary[origin, destination, date] origin destination itinerary[origin, destination] ticket [route, date, time, price]
    140. 140. Process Mediation Example time price date R E Q U E S T S E R V I C E Processes Mediator itinerary[origin, destination, date] origin destination itinerary[origin, destination] ticket [route, date, time, price]
    141. 141. Process Mediation Example time price date R E Q U E S T S E R V I C E Processes Mediator itinerary[origin, destination, date] origin destination itinerary[origin, destination] ticket [route, date, time, price]
    142. 142. Process Mediation Example time price date R E Q U E S T S E R V I C E Processes Mediator itinerary[origin, destination, date] origin destination itinerary[origin, destination] ticket [route, date, time, price]
    143. 143. Overview <ul><li>Introduction to SWS </li></ul><ul><ul><li>WSMO </li></ul></ul><ul><li>Introduction to SOA </li></ul><ul><ul><li>WSMX </li></ul></ul><ul><li>Means of Interoperability </li></ul><ul><li>WSMT </li></ul><ul><li>Conclusions </li></ul>
    144. 144. Web Services Modeling Toolkit <ul><li>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. </li></ul><ul><li>The focus is currently on the following areas: </li></ul><ul><ul><li>Creation of ontologies, web services, goals and mediators in WSMO </li></ul></ul><ul><ul><li>Creation of mappings between pairs of ontologies to allow runtime instance transformation </li></ul></ul><ul><ul><li>Management of Execution Environments for Semantic Web Services like WSMX and IRSIII </li></ul></ul>
    145. 145. WSML Perspective <ul><li>Perspectives in the Eclipse framework allow for a number of Editors and views to be grouped and positions. </li></ul><ul><li>The WSML perspective offers editors and views related to engineering of semantic descriptions in WSMO through the WSML language. </li></ul><ul><li>Other General features include: </li></ul><ul><ul><li>WSML file validation </li></ul></ul><ul><ul><li>Problems view (errors and warnings on files in the workspace) </li></ul></ul><ul><ul><li>Label highlighting (marking of errors and warnings in navigator view) </li></ul></ul>
    146. 146. WSML Editors and Views in the WSML perspective <ul><li>Editors </li></ul><ul><li>WSML Text Editor </li></ul><ul><li>WSML Conceptual Editor </li></ul><ul><li>WSML Visualizer </li></ul><ul><li>Views </li></ul><ul><li>Navigator view </li></ul><ul><li>Problems view </li></ul><ul><li>WSML Reasoner </li></ul>
    147. 147. Editors and Views in the WSML perspective <ul><li>Editors </li></ul><ul><li>WSML Text Editor </li></ul><ul><li>WSML Conceptual Editor </li></ul><ul><li>WSML Visualizer </li></ul><ul><li>Views </li></ul><ul><li>Navigator view </li></ul><ul><li>Problems view </li></ul><ul><li>WSML Reasoner </li></ul>
    148. 148. Editors and Views in the WSML perspective <ul><li>Editors </li></ul><ul><li>WSML Text Editor </li></ul><ul><li>WSML Conceptual Editor </li></ul><ul><li>WSML Visualizer </li></ul><ul><li>Views </li></ul><ul><li>Navigator view </li></ul><ul><li>Problems view </li></ul><ul><li>WSML Reasoner </li></ul>
    149. 149. Editors and Views in the WSML perspective <ul><li>Editors </li></ul><ul><li>WSML Text Editor </li></ul><ul><li>WSML Conceptual Editor </li></ul><ul><li>WSML Visualizer </li></ul><ul><li>Views </li></ul><ul><li>Navigator view </li></ul><ul><li>Problems view </li></ul><ul><li>WSML Reasoner </li></ul>
    150. 150. Editors and Views in the WSML perspective <ul><li>Editors </li></ul><ul><li>WSML Text Editor </li></ul><ul><li>WSML Conceptual Editor </li></ul><ul><li>WSML Visualizer </li></ul><ul><li>Views </li></ul><ul><li>Navigator view </li></ul><ul><li>Problems view </li></ul><ul><li>WSML Reasoner </li></ul>
    151. 151. Editors and Views in the WSML perspective <ul><li>Editors </li></ul><ul><li>WSML Text Editor </li></ul><ul><li>WSML Conceptual Editor </li></ul><ul><li>WSML Visualizer </li></ul><ul><li>Views </li></ul><ul><li>Navigator view </li></ul><ul><li>Problems view </li></ul><ul><li>WSML Reasoner </li></ul>
    152. 152. Editors and Views in the WSML perspective <ul><li>Editors </li></ul><ul><li>WSML Text Editor </li></ul><ul><li>WSML Conceptual Editor </li></ul><ul><li>WSML Visualizer </li></ul><ul><li>Views </li></ul><ul><li>Navigator view </li></ul><ul><li>Problems view </li></ul><ul><li>WSML Reasoner </li></ul>
    153. 153. Editors, Views for the Abstract Mapping Language <ul><li>Editors </li></ul><ul><li>AML Text Editor </li></ul><ul><li>AML Conceptual Editor </li></ul><ul><li>AML View Based Editor </li></ul><ul><li>Views </li></ul><ul><li>Concept 2 Concept View </li></ul><ul><li>Attribute 2 Attribute View </li></ul><ul><li>Concept 2 Attribute View </li></ul><ul><li>Attribute 2 Concept View </li></ul><ul><li>Status View </li></ul>
    154. 154. Editors, Views for the Abstract Mapping Language <ul><li>Editors </li></ul><ul><li>AML Text Editor </li></ul><ul><li>AML Conceptual Editor </li></ul><ul><li>AML View Based Editor </li></ul><ul><li>Views </li></ul><ul><li>Concept 2 Concept View </li></ul><ul><li>Attribute 2 Attribute View </li></ul><ul><li>Concept 2 Attribute View </li></ul><ul><li>Attribute 2 Concept View </li></ul><ul><li>Status View </li></ul>
    155. 155. Editors, Views for the Abstract Mapping Language <ul><li>Editors </li></ul><ul><li>AML Text Editor </li></ul><ul><li>AML Conceptual Editor </li></ul><ul><li>AML View Based Editor </li></ul><ul><li>Views </li></ul><ul><li>Concept 2 Concept View </li></ul><ul><li>Attribute 2 Attribute View </li></ul><ul><li>Concept 2 Attribute View </li></ul><ul><li>Attribute 2 Concept View </li></ul><ul><li>Status View </li></ul>
    156. 156. Editors, Views for the Abstract Mapping Language <ul><li>Editors </li></ul><ul><li>AML Text Editor </li></ul><ul><li>AML Conceptual Editor </li></ul><ul><li>AML View Based Editor </li></ul><ul><li>Views </li></ul><ul><li>Concept 2 Concept View </li></ul><ul><li>Attribute 2 Attribute View </li></ul><ul><li>Concept 2 Attribute View </li></ul><ul><li>Attribute 2 Concept View </li></ul><ul><li>Status View </li></ul>
    157. 157. Editors, Views for the Abstract Mapping Language <ul><li>Editors </li></ul><ul><li>AML Text Editor </li></ul><ul><li>AML Conceptual Editor </li></ul><ul><li>AML View Based Editor </li></ul><ul><li>Views </li></ul><ul><li>Concept 2 Concept View </li></ul><ul><li>Attribute 2 Attribute View </li></ul><ul><li>Concept 2 Attribute View </li></ul><ul><li>Attribute 2 Concept View </li></ul><ul><li>Status View </li></ul>
    158. 158. Editors, Views for the Abstract Mapping Language <ul><li>Editors </li></ul><ul><li>AML Text Editor </li></ul><ul><li>AML Conceptual Editor </li></ul><ul><li>AML View Based Editor </li></ul><ul><li>Views </li></ul><ul><li>Concept 2 Concept View </li></ul><ul><li>Attribute 2 Attribute View </li></ul><ul><li>Concept 2 Attribute View </li></ul><ul><li>Attribute 2 Concept View </li></ul><ul><li>Status View </li></ul>
    159. 159. Editors, Views for the Abstract Mapping Language <ul><li>Editors </li></ul><ul><li>AML Text Editor </li></ul><ul><li>AML Conceptual Editor </li></ul><ul><li>AML View Based Editor </li></ul><ul><li>Views </li></ul><ul><li>Concept 2 Concept View </li></ul><ul><li>Attribute 2 Attribute View </li></ul><ul><li>Concept 2 Attribute View </li></ul><ul><li>Attribute 2 Concept View </li></ul><ul><li>Status View </li></ul>
    160. 160. Editors, Views for the Abstract Mapping Language <ul><li>Editors </li></ul><ul><li>AML Text Editor </li></ul><ul><li>AML Conceptual Editor </li></ul><ul><li>AML View Based Editor </li></ul><ul><li>Views </li></ul><ul><li>Concept 2 Concept View </li></ul><ul><li>Attribute 2 Attribute View </li></ul><ul><li>Concept 2 Attribute View </li></ul><ul><li>Attribute 2 Concept View </li></ul><ul><li>Status View </li></ul>
    161. 161. Overview <ul><li>Introduction to SWS </li></ul><ul><ul><li>WSMO </li></ul></ul><ul><li>Introduction to SOA </li></ul><ul><ul><li>WSMX </li></ul></ul><ul><li>Means of Interoperability </li></ul><ul><li>WSMT </li></ul><ul><li>Conclusions </li></ul>
    162. 162. Conclusions <ul><li>Semantic Enabled SOA combines the benefits of semantics with best practices from industry </li></ul><ul><li>WSMO - conceptual model for Semantic Web Services </li></ul><ul><ul><li>Ontology of core elements for Semantic Web Services </li></ul></ul><ul><li>Clear separation between layers </li></ul><ul><ul><li>Specification and realization </li></ul></ul><ul><ul><li>Interface and implementation </li></ul></ul><ul><li>WSMX/SEE – a Semantic Enabled SOA </li></ul><ul><ul><li>Service Oriented Architecture </li></ul></ul><ul><ul><li>Reference implementation of WSMO </li></ul></ul><ul><li>Semantic Enabled SOA offers multiple means for interoperability </li></ul><ul><ul><li>Mediation framework </li></ul></ul><ul><ul><li>Interface/communication disambiguation </li></ul></ul><ul><li>WSMT – emerging tool to handle semantics </li></ul><ul><ul><li>High-quality tools for designing, mediating and using Semantic Web Services </li></ul></ul>
    163. 163. References <ul><li>The central location where WSMO work and papers can be found is WSMO Working Group: http://www.wsmo.org </li></ul><ul><li>WSMO languages – WSML Working Group: http:// www.wsml.org </li></ul><ul><li>WSMO implementation </li></ul><ul><ul><li>WSMX working group : http://www.wsmx.org </li></ul></ul><ul><ul><li>WSMX open source can be found at: https://sourceforge.net/projects/wsmx/ </li></ul></ul>
    164. 164. References <ul><li>[WSMO Specification]: Roman, D.; Lausen, H.; Keller, U. (eds.): Web Service Modeling Ontology, WSMO Working Draft D2, final version 1.2, 13 April 2005. </li></ul><ul><li>[WSMO Primer]: Feier, C. (ed.): WSMO Primer, WSMO Working Draft D3.1, 18 February 2005. </li></ul><ul><li>[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. </li></ul><ul><li>[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. </li></ul><ul><li>[WSML] de Bruijn, J. (Ed.): The WSML Specification, WSML Working Draft D16, 03 February 2005. </li></ul><ul><li>[Arroyo et al. 2004] Arroyo, S., Lara, R., Gomez, J. M., Berka, D., Ding, Y. and Fensel, D: &quot;Semantic Aspects of Web Services&quot; in Practical Handbook of Internet Computing. Munindar P. Singh, editor. Chapman Hall and CRC Press, Baton Rouge. 2004. </li></ul><ul><li>[Berners-Lee et al. 2001] Tim Berners-Lee, James Hendler, and Ora Lassila, “The Semantic Web”. Scientific American, 284(5):34-43, 2001. </li></ul>
    165. 165. References <ul><li>[Bussler, 2003] Bussler, C. (2003): B2B Integration. Berlin, Heidelberg: Springer. </li></ul><ul><li>[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 </li></ul><ul><li>[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. </li></ul><ul><li>[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. </li></ul><ul><li>[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 </li></ul><ul><li>[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) </li></ul><ul><li>[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 </li></ul>
    166. 166. References <ul><li>[Domingue et al., 2004] 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 </li></ul><ul><li>[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. </li></ul><ul><li>[Fensel, 2001] Dieter Fensel, “Ontologies: Silver Bullet for Knowledge Management and Electronic Commerce”, Springer-Verlag, Berlin, 2001. </li></ul><ul><li>[Fensel and Bussler, 2002] Fensel D. and Bussler C., &quot;The Web Service Modeling Framework, WSMF,&quot; Electronic Commerce Research and Application, vol. 1, 2002 </li></ul><ul><li>[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. </li></ul><ul><li>[Gruber, 1993] Thomas R. Gruber, “A Translation Approach to Portable Ontology Specifications”, Knowledge Acquisition, 5:199-220, 1993. </li></ul><ul><li>[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. </li></ul>
    167. 167. References <ul><li>[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. </li></ul><ul><li>[Keller et al., 2004] Keller, U.; Lara, R.; Polleres, A. (Eds): WSMO Web Service Discovery. WSML Working Draft D5.1, 12 Nov 2004. </li></ul><ul><li>[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. </li></ul><ul><li>[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. </li></ul><ul><li>[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></ul><ul><li>[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 </li></ul><ul><li>[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 </li></ul><ul><li>[Paolucci et al., 2002b] Massimo Paolucci, Takahiro Kawamura, Terry R. Payne, Katia Sycara; &quot;Semantic Matching of Web Services Capabilities.&quot; In Proceedings of the 1st International Semantic Web Conference (ISWC2002), 2002 </li></ul>
    168. 168. References <ul><li>[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 . </li></ul><ul><li>[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. </li></ul><ul><li>[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. </li></ul><ul><li>[Stencil Group] - www.stencilgroup.com/ideas_scope_200106wsdefined.html </li></ul><ul><li>[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. </li></ul><ul><li>[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. </li></ul><ul><li>[Stollberg et al., 2006] Michael Stollberg, Emilia Cimpian, Adrian Mocan, Dieter Fensel: A Semantic Web Mediation Architecture, Canadian Semantic Web Working Symposium (CSWWS 2006), June 2006, Québec city, Canada </li></ul><ul><li>[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. </li></ul>
    169. 169. Acknowledgements <ul><li>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. </li></ul><ul><li>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 </li></ul>

    ×