Semantic Web Services Composition Peter Bartalos.

Slides:



Advertisements
Similar presentations
OWL-S for Amazon Amazon.com publishes a WS to browse its DB and reserve goods –At the time of this experiment Amazon published only the buyer WS –Interaction.
Advertisements

1 Context Modeling and Constraints Binding in Web Service Business Process Kosala Yapa Bandara, MingXue Wang, Claus Pahl Dublin City University Summarized.
1 University of Namur, Belgium PReCISE Research Center Using context to improve data semantic mediation in web services composition Michaël Mrissa (spokesman)
Semantics Static semantics Dynamic semantics attribute grammars
Models of Concurrency Manna, Pnueli.
ICE1341 Programming Languages Spring 2005 Lecture #6 Lecture #6 In-Young Ko iko.AT. icu.ac.kr iko.AT. icu.ac.kr Information and Communications University.
Semantic Web Services Peter Bartalos. 2 Dr. Jorge Cardoso and Dr. Amit Sheth
Copyright © 2006 Addison-Wesley. All rights reserved.1-1 ICS 410: Programming Languages Chapter 3 : Describing Syntax and Semantics Axiomatic Semantics.
ISBN Chapter 3 Describing Syntax and Semantics.
Fall Semantics Juan Carlos Guzmán CS 3123 Programming Languages Concepts Southern Polytechnic State University.
CS 355 – Programming Languages
CHAITALI GUPTA, RAJDEEP BHOWMIK, MICHAEL R. HEAD, MADHUSUDHAN GOVINDARAJU, WEIYI MENG PRESENTED BY: SIDDHARTH PALANISWAMI A Query-based System for Automatic.
Formal Methods of Systems Specification Logical Specification of Hard- and Software Prof. Dr. Holger Schlingloff Institut für Informatik der.
1 The Fourth Summer School on Ontological Engineering and the Semantic Web (SSSW'06) Semantic Web Services Hands-On Session with IRS-III and WSMO Studio.
White Box Testing and Symbolic Execution Written by Michael Beder.
Descriptions Robert Grimm New York University. The Final Assignment…  Your own application  Discussion board  Think: Paper summaries  Time tracker.
1 8. Safe Query Languages Safe program – its semantics can be at least partially computed on any valid database input. Safety is tied to program verification,
Axiomatic Semantics Dr. M Al-Mulhem ICS
White Box Testing and Symbolic Execution Written by Michael Beder.
A Method for Runtime Service Selection Hong Qing Yu Internal seminar (18/10/2007) Department of Computer Science.
OWL-S: Semantic Markup for Web Services
A Structure Editor For PAL Constraints Anton An July 18, 2001.
Dr. Muhammed Al-Mulhem 1ICS ICS 535 Design and Implementation of Programming Languages Part 1 Fundamentals (Chapter 4) Axiomatic Semantics ICS 535.
Computer Science and Engineering Dae-Kyoo Kim Pooja Mehta.
CS 330 Programming Languages 09 / 16 / 2008 Instructor: Michael Eckmann.
Kmi.open.ac.uk Semantic Execution Environments Service Engineering and Execution Barry Norton and Mick Kerrigan.
Describing Syntax and Semantics
MCA –Software Engineering Kantipur City College. Topics include  Formal Methods Concept  Formal Specification Language Test plan creation Test-case.
CMSC 104, Version 8/061L22Arrays1.ppt Arrays, Part 1 of 2 Topics Definition of a Data Structure Definition of an Array Array Declaration, Initialization,
A Semantic Workflow Mechanism to Realise Experimental Goals and Constraints Edoardo Pignotti, Peter Edwards, Alun Preece, Nick Gotts and Gary Polhill School.
Špindlerův Mlýn, Czech Republic, SOFSEM Semantically-aided Data-aware Service Workflow Composition Ondrej Habala, Marek Paralič,
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 31 Slide 1 Service-centric Software Engineering 2.
Data flow diagrams.
Matchmaking of Semantic Web Services Using Semantic-Distance Information Mehmet Şenvar, Ayşe Bener Boğaziçi University Department of Computer Engineering.
1 Artificial Intelligence Applications Institute Centre for Intelligent Systems and their Applications Stuart Aitken Artificial Intelligence Applications.
OWL-S. Web Services: OWL-S2 BPEL and WSDL : Messages.
Extracting Semantic Constraint from Description Text for Semantic Web Service Discovery Dengping Wei, Ting Wang, Ji Wang, and Yaodong Chen Reporter: Ting.
MTA SZTAKI Department of Distributed Systems Two-phase Semantic Web Service Discovery Method for Finding Intersection Matches using Logic Programming László.
© DATAMAT S.p.A. – Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.
111 Protocols CS 4311 Wirfs Brock et al., Designing Object-Oriented Software, Prentice Hall, (Chapter 8) Meyer, B., Applying design by contract,
مهندسی مجدد فرآیندهای تجاری
Conceptual Modelling – Behaviour
Composition of UML Described Refactoring Rules Presented by Chin-Yi Tsai.
CS 363 Comparative Programming Languages Semantics.
An Ontological Framework for Web Service Processes By Claus Pahl and Ronan Barrett.
4. The process specification (プロセス仕様) You will learn: (次の内容を学び) The concept of process specification (プロセス 仕様の概念) Notations for process specification (プロセス.
Universität Innsbruck Leopold Franzens  Copyright 2007 DERI Innsbruck Technical Task Fair December 2007 SWS Composition The SUPER Approach.
XML Grammar and Parser for WSOL Kruti Patel, Vladimir Tosic, Bernard Pagurek Network Management & Artificial Intelligence Lab Department of Systems & Computer.
1 Composing Web Services on the Semantic Web by Brahim Medjahed Presented by Dohan Kim Lichun Zhu.
ISBN Chapter 3 Describing Semantics.
Chapter 3 Part II Describing Syntax and Semantics.
ISBN Chapter 3 Describing Syntax and Semantics.
16/11/ Web Services Choreography Requirements Presenter: Emilia Cimpian, NUIG-DERI, 07April W3C Working Draft.
Slide 1 Service-centric Software Engineering. Slide 2 Objectives To explain the notion of a reusable service, based on web service standards, that provides.
CSC3315 (Spring 2009)1 CSC 3315 Languages & Compilers Hamid Harroud School of Science and Engineering, Akhawayn University
PREDICATES AND QUANTIFIERS COSC-1321 Discrete Structures 1.
WI2003 Automatic Composition of Web Service Workflows Using a Semantic Agent Jarmo Korhonen Helsinki University of Technology 15 October 2003.
Mechanisms for Requirements Driven Component Selection and Design Automation 최경석.
Binding and Execution of Web Service Compositions
Logic Gates.
Graph Coverage for Specifications CS 4501 / 6501 Software Testing
Web Ontology Language for Service (OWL-S)
Ontology.
Service-centric Software Engineering
Logic Gates.
Semantics In Text: Chapter 3.
WSSL: A Fluent Calculus-based Language for Web Service Specifications
Ontology.
Semantic Markup for Semantic Web Tools:
Relational Calculus Chapter 4, Part B 7/1/2019.
Presentation transcript:

Semantic Web Services Composition Peter Bartalos

Outline Basics of service composition Why we need semantics? Different kinds of user goals

Service composition Arranging web services into complex workflows Based on user goal

Service chaining Requirement I/O compatibility Syntactic level - WSDL Ancestor Successor O I ?

Service chaining Output: meteoowl:Temperature Input: meteoowl:Elevation meteoowl:LocalPressure getTemperature() getAtmPressure() Output: Input:

Meaningful chaining Output: meteoowl:Elevation getElevation() getAtmPressure() Output: Input: Input: meteoowl:Elevation meteoowl:LocalPressure

Problem again Output: meteoowl:Elevation Input: meteoowl:Elevation meteoowl:LocalPressure getElevation() getAtmPressure() Output: Input: In meters In ft. 

Problem again Output: meteoowl:Elevation Input: meteoowl:Elevation getElevation() getAtmPressure() Output: Input: Postcondition: inMeters (getElevationReturn) Precondition: inFeet (heightAboveSeaLevel)

Considering conditions Output: meteoowl:Elevation Input: meteoowl:Elevation getElevation() getAtmPressure() Output: Input: Postcondition: inMeters (getElevationReturn) Precondition: inMeters (heightAboveSeaLevel)

Semantic service composition Basic service description I/O Binding parameters to the concepts in the ontology Pre-/post-conditions Logical expressions Predicates combined with logical operators Binding to ontological elements

Semantic compatibility evaluation Compatibility evaluation I/O Checking if O subsumes I Pre-/post-conditions Checking if Post => Pre

How it starts User goal definition Required outputs Required condition Provided inputs

How it starts User goal example The user wants the air pressure in kPa in Smolenice corrected to sea level. Required output meteoowl:AtmosphericPressure Required condition inkPa(pressure) Provided inputs geoowl:Area = Smolenice meteoowl:LocalPressure = 98.5kPa

Example composition getElevation() getAtmPressure() Output: meteoowl:Elevation Input: meteoowl:Elevation meteoowl:LocalPressure Output: meteoowl:AtmosphericPressure Input: geoowl:Area Postcondition: inkPa(pressure) Smolenice 98.5kPa

Best composition Generally we have several composite services satisfying the user goal We have to choose the best one Soft and hard constraints

Simple condition The user wants to book a flight. Condition booked(flight)

Value restriction The user wants to book a flight to Los Angeles. Condition booked(flight)^hasDestination(flight, destination) Value restriction destination = LosAngeles

Local variables The user wants to book a flight to Los Angeles and a hotel for overall price at most 500$. Condition booked(flight)^hasDestination(flight, destination)^hasPrice(flight, flightprice)^booked(hotel)^hasPrice(hotel, hotelprice) Value restriction destination = LosAngeles ^ price < 500$ Local variable definition price = flightprice + hotelprice

Soft constraints - fuzzy The user wants to book a flight for about 350$. Condition booked(flight) ^ hasPrice(flight, flightprice) Value restriction flightprice = fuzzy number

Predicate evaluation I The user wants to book a flight through weekend. Condition booked(flight)^hasFlightTime(flighttime) Value restriction isWeekendTime(flighttime)

Predicate evaluation II The user wants to book the cheapest flight. Condition booked(flight) ^ hasPrice(flight, flightprice) Value restriction cheapest(flightprice)

Conditional restriction The user wants to book a flight if it includes also insurance, else he wants to use a train. Alternatives booked(flight)^includesInsurance(flight) book(traintravel) If Then Else …

Event handling The user wants to book a flight, but if that flight is delayed by more than 24 hours, he wants to cancel the flight and take a train. Basic condition booked(flight) Event booked(flight) ^ isDelayed(flight, delay) delay > 24hour Action cancelled(flight) ^ booked(traintravel)

Open problems How to get the required representation of the user goal? How to present the results? Booking problem …? Do we need additional metadata? How to develop “composition friendly” services?