The UPML Framework, IRS-I and IRS-II

Post on 10-Feb-2016

64 views 1 download

Tags:

description

The UPML Framework, IRS-I and IRS-II. John Domingue, Liliana Cabral & Enrico Motta Knowledge Media Institute The Open University, UK. Outline. Overview of web services UPML – knowledge level modelling paradigm Classification Library IRS-I Demo quickly configuring an apple classifier - PowerPoint PPT Presentation

Transcript of The UPML Framework, IRS-I and IRS-II

The UPML Framework, IRS-I and IRS-II

John Domingue, Liliana Cabral & Enrico Motta

Knowledge Media InstituteThe Open University, UK

Outline• Overview of web services• UPML – knowledge level modelling

paradigm• Classification Library • IRS-I Demo

– quickly configuring an apple classifier• IRS-II – capability driven web service

invocation• Patient Shipping Scenario (Demo)• Preparation for afternoon hands on session

Web Service in a nutshell

• Web of documents -> web of reusable software components

• A piece of software available over the Internet which can be invoked through a standardized (normally XML-based) messaging system

ServiceRegistry

ServiceRequester

ServiceProvider

ServiceDescription

WebService

PublishFind

Bind

WS – Usage scenario

What’s the big deal?• In U.S. Web Services Market Analysis, 2002 IDC

predicts that Web services will become the dominant distributed computing architecture in the next 10 years. Web services will drive software, services and hardware sales of $21 billion in the U.S. by 2007 and will reach $27 billion in 2010.

• Web services promise easy access to remote content and application functionality, independently of the provider's platform, the location, the service implementation, or the data format. Kuassi Mensah, Oracle

• Exposure of capabilities

Application Areas

• E-commerce– Integrating supply chains, Brokering, Shopping bots,

etc..

• E-science– Data Analysis, Discovery, Integration, etc..

• Knowledge Management– Information search, personalization,

Limitations of WS Technology

• Manual Discovery

• Manual Invocation

• Manual (ad hoc) Mediation

• Manual (ad hoc) Composition

Semantic differences remain the primary roadblock to smooth application integration, one which Web Services alone won't overcome. Until someone finds a way for applications to understand each other, the effect of Web services technology will be fairly limited. When I pass customer data across [the Web] in a certain format using a Web Services interface, the receiving program has to know what that format is. You have to agree on what the business objects look like. And no one has come up with a feasible way to work that out yet -- not Oracle, and not its competitors...

--- Oracle Chairman and CEO Larry Ellison

Positioning Semantic Web Services

Web(URI, HTML, HTTP)

Web Services(UDDI, WSDL, SOAP)

Semantic Web(RDF, OWL)

Semantic Web Services

Dynamic

Static

Syntax Semantics

Motivation• Mismatch between users view and web

service functionalities– Requires web service centred and user

(community) centred semantic representations• Users want to carry out tasks or achieve

goals• Richer semantics required for automatic

web service location, selection, mediation, composition, brokering

UPML Framework

UPML Framework

UPML Framework

Classification

Classification can be seen as the problem of finding the solution (class), which best explains a set of known facts (observables), according to some criterion

Solution

Observables

Candidate Sols.Classification

Solution Criterion

Example

Observables

Candidate Sols.

Criterion

Classification Solution

{background=green; area=china...}

Complete-coverage-criterion(every observable has to be explained)

{chinese-granny, dutch-granny, etc..}

{chinese-granny}

Classification Task Ontology

• 70 Definitions• Provides both a theory of

classification and a vocabulary to describe classification problems

• Ontology is separated from task specifications

Generic Classification Task• Input roles

– Candidate Solutions, Match Criterion, Solution Criterion, Observables

• Output Roles– Solutions

• Precondition– Both observables and candidate solutions have to be provided

• Goal– To find a solution from the candidate solutions which is admissible

with respect to the given observables, solution criterion and match criterion

Classification Task (1/2)

Classification Task (2/2)

Specific Classification Tasks

• Single-Solution Classification Task– Single-solution assumption

• Optimal Classification Tasks– Goal requires optimality

Problem Solving Library

• Based on heuristic classification model

• Includes both data-directed and solution-directed methods

• Supported by a method ontology

Heuristic Classification Model

Clancey, AI Journal, 27, 1985

Heuristic Match

Abstraction

Data

DataAbstractions

SolutionsAbstractions

Refinement

Solutions

Method Ontology: Main Concepts• Abstractors

– Mechanism for performing abstraction on observables

– Abstractor: Obs* -> Obs

• Refiners– Mechanism for specialising a solution– Refiner: Sol -> Sol*

• Candidate Exclusion Criterion– A criterion which is used to decide when a search

path is a dead-end– Default criterion rules out inconsistent solutions

3 Heuristic Classification PSMs• Two Data-directed

– Admissible Solution Classifier• Finds one admissible solution according to the given criteria• Uses backtracking hill climbing

– Optimal Classifier• Performs complete search looking for optimal solution• Uses best-first strategy• Uses candidate exclusion criterion to prune search space

• One Solution-directed– Goes down the solution hierarchy, acquiring observables as

needed– Ask for observables with max discrimination power

Task-Method Hierarchy

abstraction

heuristic-classification-psm

classification

rank-solutions refinement

basic-heuristic-matchselect-abstractor one-step-abstraction collect-refiners apply-refiners

abstraction-psm refinement-psmrank-solutions-psm

Example

• Apple Domain– Originally developed in Amsterdam

• Solutions = Apple Types = {granny, noble, delicious...}

• Hierarchy of Apple Types• Features = {bkg-colour, fg-colour,

rusty....}• Pretty trivial really!

Classification TaskOntology

Heuristic ClassificationOntology

Apple Heuristic ClassificationApplication

Classification TaskSpecification

Classification-to-Class-RepresentationMapping Ontology

AppleDomain Model

Heuristic ClassificationPSMs

Demo

IRS-II: Integrating UPML and Web Services

The Internet Reasoning Service is an infrastructure for publishing, locating, executing and composing semantic web services, organized according to the task/method/domain framework

Features of IRS-II (1/2)• Based on Soap messaging standard

• Provides API for client applications

• Provides built-in brokering and service discovery support

• Provides capability-centred service invocation

Features of IRS-II (2/2)• Publishing support for variety of platforms

– Java, Lisp, Web Applications, Java Web Services

• Enables publication of ‘standard code’ – Provides clever wrappers automatically, which turn code into

web services– One-click publishing of web services

• Integrated with standard Web Services world– Published code appears as

• Semantic web service to IRS• ‘Ordinary’ web service to web service world

Task Spec(def-class exchange_rate_provision (goal-specification-task) ?task ((has-input-role :value has_source_currency :value has_target_currency) (has-output-role :value has_exchange_rate) (has_source_currency :type currency :cardinality 1) (has_target_currency :type currency :cardinality 1) (has_exchange_rate :type positive-number) (has-precondition :value (kappa (?psm) (and (currency (role-value ?psm has_source_currency)) (currency (role-value ?psm

has_target_currency))))) (has-goal-expression :value (kappa (?psm ?sol) (= ?sol (the_official_exchange_rate (role-value ?psm has_source_currency) (role-value ?psm has_target_currency)))))))

Grounding

• Soap-based

• Done at task level

Toplevel Exchange Rate Method

(def-class exchange-rate-provider (primitive-method) ?psm

((has-input-role :value has_source_currency :value has_target_currency) (has-output-role :value has-exchange-rate) (has_source_currency :type currency :cardinality 1) (has_target_currency :type currency :cardinality 1) (has-exchange-rate :type positive-number) (has-precondition :value (kappa (?s) (stock_available

(role-value ?psm has_target_currency))))))

Exchange Rate Methods(def-class european-exchange-rate-provider (exchange-rate-

provider) ?psm () :own-slots ((applicability-condition (kappa (?psm) (european-currency (role-value ?psm 'has_source_currency)))) (tackles-task-type exchange_rate_provision)))

(def-class non-european-exchange-rate-provider (exchange-rate-provider) ?psm ()

:own-slots ((applicability-condition (kappa (?psm) (non-european-currency (role-value ?psm 'has_source_currency)))) (tackles-task-type exchange_rate_provision)))

IRS Server

Domain Models

Method Specifications+ Registry of Implementors

Task Specifications+ SOAP Binding

IRS Publisher

S O A

P

IRS Client

SOAP

IRS Publisher

IRS Publisher

IRS Publisher

Lisp

Java

Java WS

IRS-II Framework

Patient Shipping Scenario

Patient Shipping Scenario

Money Related Services

Medical Related Services

Patient Shipping Demo

Task Spec

Method Spec

Supporting Definitions

Hospital Bed Service Task

Hospital Bed Service PSM

Hip Hip Hospital PSM

Multiple Hospital PSMs

Valid Relations• Classes are unary relations

– e.g. (currency ?x)

• Slots are binary relations

– e.g. (has-author ?x ?y)

• Standard relations in akt-reference ontology

=, ==, <, >, member

Java API• achieveTask • createOntology • getOntologyProperties • updateOntologyProperties • deleteOntology • saveTaskDescription • getTaskDescription • deleteTaskDescription • savePSMDescription • getPSMDescription • deletePSMDescription • publishHttpGetRequest • publishLispFunction • publishJavaClass• publishWebServiceWSDL

LispWeb Server

IRS-II Architecture

IRS-II Server

PSM Publisher Registry

OCML

UPML Library

Wilbur

OWL-S Handler

OWL HandlerOWL

OWL-S

RDF

Browser

Invocation Client

Task/PSM Editors

Publishing Clients

SOAP Handler

SOAP

Publishing Platforms

Web ServiceJava CodeWeb Application

SOAP

BrowserHandler

PublisherHandler

InvocationHandler

Java

API

Generic Publishing Platform Architecture

IRS-II Publishing PlatformHTTP Server

SOAP Handler

ServiceRegistrar

ServiceInvoker

PSM Service Registry

IRS-II Server

Invocation Client

SOAP

SOAP

Publishing Clients

SOAP

Web Service 1Web Service 2

Web Service 3Web Service 4

IRS Browser/Editor Demo

User Name: knowledgewebPassword: summerschool

IRS, OWL-S and WSMO• IRS-II and WSMO model user requests

(task or goal)– IRS-II has task (goal) based invocation

• IRS-II and WSMO model mediation• OWL-S and WSMO include non-functional

properties• WSMO splits composition into

orchestration and choreography • Formalisms

– OWL-S: OWL – DL (handling conditions?)– IRS-II: OCML (import/export to RDF(S), OWL,

OWL-S, WSMO (planned))– WSMO: WSML- F-Logic (OWL Compatibility?)

Summary• Web services require rich semantic

annotation to automate location selection, mediation etc

• UPML framework composed of ontology supported tasks, problem solving methods and domain models

• Classification Library • IRS-II integrates web services with

PSMs• PSMs tied to tasks via tackles task and

applicability conditions

A Stack of Standards?

HTTP

XML-

SXM

L

SOAP

WSDL

UD

DI

BEP

L4W

S

URI

WS-

CDL

RDF

RDF-S

OWLWSML

OWL-SWSMO

WSMXIRS-III