The UPML Framework, IRS-I and IRS-II John Domingue, Liliana Cabral & Enrico Motta Knowledge Media...

60
The UPML Framework, IRS-I and IRS-II John Domingue, Liliana Cabral & Enrico Motta Knowledge Media Institute The Open University, UK
  • date post

    20-Dec-2015
  • Category

    Documents

  • view

    219
  • download

    3

Transcript of The UPML Framework, IRS-I and IRS-II John Domingue, Liliana Cabral & Enrico Motta Knowledge Media...

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

• 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 FrameworkUPML Framework

UPML FrameworkUPML Framework

UPML FrameworkUPML 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 Service

Java Code

Web ApplicationSOAP

BrowserHandler

PublisherHandler

InvocationHandler

Java

API

Generic Publishing Platform Architecture

IRS-II Publishing Platform

HTTP Server

SOAP Handler

ServiceRegistrar

ServiceInvoker

PSM Service Registry

IRS-II Server

Invocation Client

SOAP

SOAP

Publishing Clients

SOAP

Web Service 1

Web 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

XM

L-S

XM

L

SOAP

WSDL

UD

DI

BE

PL

4W

S

URI

WS

-C

DL

RDF

RDF-S

OWLWSML

OWL-SWSMO

WSMX

IRS-III