Top Banner
Semantic Web Services: Challenges and Research Trend July, 2009 Prof. Sung-Kook Han Semantic Technology Research Grou Won Kwang Universuty
111

Sws Han

May 10, 2015

Download

Technology

Introduction to Semantic Web Services. This slides show the current research efforts and trend in Semantic Web Services.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Sws Han

Semantic Web Services:Challenges and Research Trend

July, 2009

Prof. Sung-Kook HanSemantic Technology Research Group

Won Kwang Universuty

Page 2: Sws Han

Agenda

page 22010-01-28 [email protected]

Static

Information Resources

Web Documents

Semantic Web

Services / Agents

Dynamic

Active Resources

Semantic Services

Ontology

Semantic Technology

Page 3: Sws Han

page 32010-01-28 [email protected]

Agenda

Review of Semantic Web Services Technologies

Web Services

Semantic Web Services

Approaches towards Semantic Web Services

OWL-S Coalition

Semantic Web Service Initiative

WSMO / WSML / WSMX

Discussion on Semantic Web Services

Future Trend

Cloud Computing

Page 4: Sws Han

Review of Web Services

Page 5: Sws Han

Evolution of Web Technologies

Web PagesWeb Applications

Web Services

HTTP

HTML

URL

StyleSheet

Applet

Servlet

JSP/ASP

JDBC/ODBC

XML

SOAP

WSDL

UDDI

Content

Information

Services

XML

RDF/S

OWL

Semantic Web

Knowledge

Semantic Web

Web 2.0AJAX

Folksonomy

RSS / ATOM

2010-01-28 page [email protected]

Page 6: Sws Han

page 62010-01-28 [email protected]

Web Services

Web Services

UDDI,WSDL,SOAP

Semantic Web

Services

Web Services

UDDI,WSDL,SOAPSemantic Web

Dynamic

Static

Knowledge

LocationDescription

Communication

Web Services

UDDI,WSDL,SOAP

Web Services

UDDI, WSDL, SOAP

Information

Reso

urce

Services

Semantic

Integration

Web Services

UDDI,WSDL,SOAP

Current Web

URL, HTML, HTTP

ontology

Page 7: Sws Han

page 72010-01-28 [email protected]

Web Services

Loosely coupled

Loosely coupled systems require a much simpler level of coordination and allow for more flexible reconfiguration.

Reusable software components

Web services are service components that allows developers to reuse the building blocks of a system created by others to assemble and extend them in new ways.

Semantically encapsulate discrete functionality

Web services are self-contained, self-describing modular applications.

Accessed programmatically

Web services certainly will be incorporated into other Web services and applications.

Distributed over the Internet

Web services make use of existing, ubiquitous transport protocols like HTTP.

Loosely coupled, reusable software components that semantically encapsulate discrete functionality and are distributed and programmatically accessible over standard Internet protocols.

Loosely coupled, reusable software components that semantically encapsulate discrete functionality and are distributed and programmatically accessible over standard Internet protocols.

Page 8: Sws Han

page 82010-01-28 [email protected]

Web Services Architecture

ServiceRequester

ServiceProvider

Publish Find

Bind

Service Description:WSDL

Service Registration:UDDI

Service Messaging:SOAP

Service Broker

Web ServicesRepository

Page 9: Sws Han

page 92010-01-28 [email protected]

Web Services Architecture

Service Provider

Application

AB

C

WSDL

SOAP Engine

Service Requester

Application

SOAP Engine

Web Service-B

Proxy

Request WSDL

Return WSDL

Request Service

Return Service Result

Publish Services

Search Service

Return URL

Service Location

Service Interface

http://uddi.microsoft.org

Page 10: Sws Han

page 102010-01-28 [email protected]

Example: On-Line Bookstore

Amazon.comAmazon-Korea

EnterpriseBank

Customer

Page 11: Sws Han

page 112010-01-28 [email protected]

Example: Virtual Travel Agency

Airline Ticket

Virtual

Travel

Agency

Enterprise

Hotel

Customer

Rent a Car

Page 12: Sws Han

Core Technologies for Web Services

XML (Extensible Markup Language): the basic foundation on which Web services are built provides a language for defining data and how to process it. XML represents a family of related specifications published and maintained by the World Wide Web Consortium(W3C)and others.

WSDL (Web Services Description Language): an XML-based technology, defines Web services interfaces, data and message types, interaction patterns, and protocol mappings.

SOAP (Simple Object Access Protocol): a collection of XML-based technologies, defines an envelope for Web services communication ─ mappable to HTTP and other transportsㅡand provides a serialization format for transmitting XML documents over a network and a convention for representing RPC interactions.

UDDI (Universal Description, Discovery, and Integration): a Web services registry and discovery mechanism, is used for storing and categorizing business information and for retrieving pointers to Web services interfaces

[email protected].

krPage 12

Page 13: Sws Han

page 132010-01-28 [email protected]

SOAP Message

SOAP Message

SOAP Envelope

SOAP Header

SOAP Body

Message Name & Data

Headers

HTTP Headers

XML Encoded SOAP

Message Name & Data

<Body> contains SOAP

Message Name & Data

Individual headers

<Header> encloses headers

<Envelope> encloses payload

Standard HTTP and SOAP HTTP Headers

The complete SOAP Message

Page 14: Sws Han

page 142010-01-28 [email protected]

Message Exchange

Client Webservice

(1) message

Client Webservice

(1) request

(2) response

Client Webservice

(2) correlated message

(1) message

WebserviceClient(1) message

One-way

Request-Response

Solicit-Response

Notification

Page 15: Sws Han

page 152010-01-28 [email protected]

WSDL

XML document for describing Web Services

Input and output data structures

• Includes or refers to XML Schema type information

Method signatures

Protocol bindings (HTTP, SMTP etc.)

Location of the service

Document can be stored in UDDI registry

or served from the provider server

Typically generated by a tool

xrpcc in Java Web Services Developer Pack

WSDL specification

abstract part

types

messages

operations

port types

concrete part

bindings

services andports

Page 16: Sws Han

page 162010-01-28 [email protected]

WSDL

Input/OutputHow to invoke

Format and protocol

PortType Operation

MessageBinding

Port Service

Support

Interface : What

How to encode

provide

implement

Access specification

Endpoint : Where

Page 17: Sws Han

page 172010-01-28 [email protected]

UDDI

Universal Description, Discovery, and Integration

Specification to Publish & Discover Web Services

Shared Distributed Registry on the Web

Analogy: Universal Phone Book

UDDI enables three basic functions:

Publish function – how a Web Service registers

Find function – how a client finds a Web Service

Bind function – how the client connects and interacts with a Web Service

Name of BusinessContact InformationDescription of the Company

Business Classification InformationBusiness Classification InformationBased on NAICS, UNSPSC, or Geographical IndexList of Products (multiple entries)

Technical Information about servicesTechnical Information about servicesExample: business processes, binding info, etc.

White Page

Yellow Page

Green Page

Page 18: Sws Han

page 182010-01-28 [email protected]

UDDI Registry

Page 19: Sws Han

Service Finder

page 192010-01-28 [email protected]

http://demo.service-finder.eu/index

Page 20: Sws Han

page 202010-01-28 [email protected]

Web Service Composition

Workflow = Automation of a business process, in whole or part,

during which documents, information or tasks are passed from one

participant to another for action, according to a set of procedure

rules (W

Workflow = Automation of a business process, in whole or part,

during which documents, information or tasks are passed from one

participant to another for action, according to a set of procedure

rules (WfMC)

A

B

C D

N1 N2 FE

t3

t6t5

t4t2

t7

+

t1 t8+

Organization A Organization B Organization C

Manager

DB_Access

DB_AccessGET_ Seq

Lab Tech II

Lab TechSet_Data

10101011

Page 21: Sws Han

page 212010-01-28 [email protected]

Workflow

Application Architecture

Process

Service Architecture

Services and Messages

Component Architecture

Component Architecture

Consumer

Provider

Page 22: Sws Han

page 222010-01-28 [email protected]

Web Services Choreography & Orchestration

Web Services orchestration

implies the presence of a single agent that controls and coordinates interactions between and among multiple Web Services

Web Services choreography

involves non-executable descriptions of observable behavior of Web Services through the definition of observable message exchanges between a collection of services

Web

Service

Web

Service

Web

ServiceProcess flow

Web Services orchestration

Web

Service

Web

Service

Web

Service

Collaboration

Web services choreography

Page 23: Sws Han

Choreography & Orchestration

Travel Agency example

Choreography = how to interact with the service to

consume its functionality

Orchestration = how service functionality is achieved

by aggregating other Web services

23

Travel Agenc

y

Service

Date

Time

Flight, Hotel

Error

Confirmation

Hotel Service

Flight Service

Date, Time

Hotel

Error

Date, Time

Flight

Error

When the service is

requestedWhen the service

requests

Page 24: Sws Han

page 242010-01-28 [email protected]

WSBPEL

Business Process Execution Language for Web Services

WSBPEL replaces WSFL and XLANG by combining and

extending the functions of both

Describe business process involving many WS

XML-based workflow definition language

Standard for Web Service composition language

Page 25: Sws Han

page 252010-01-28 [email protected]

WSBPEL Elements

Partner

the different parties that interact with the business process

Container

WSDL messages that are received from or sent to partner

faultHandlers

the ways to handle and recover from errors in businesses.

Compensation

allowing the process designer to implement compensation actions for certain irreversible errors in business

Activities

the actions that are being carried out within a business process

<receive> <reply> <invoke> <assign> <throw> <terminate> <wait> <empty>

<sequence> <switch> <while> <pick>

<flow> <scope> <compensate>

Correlation

figuring out which instance an incoming message is meant for

Page 26: Sws Han

page 262010-01-28 [email protected]

WSBPEL Core Concepts

Sequencing and Flow

Control

<sequence>, <flow>,

<while>, <switch>,

<link>

Web Service invocation

<invoke>

Variable Definition and

Assignment

<variable>, <assign>

Non deterministic

support

<pick>, <onMessage>,

<onAlarm>

Fault Handling

<catch>, <compensate>,

<throw>

Web Service

Implementation

<receive>, <reply>

Partner (Service) Linking

<partnerLink>,

<partnerLinkType>

Correlations

<correlationSet>,

<correlationSets>,

<property>,

<propertyAlias>

Process Definition

<process>

uses

comprise

implementsdefined

defined

defined

Iden-

tified

Contained

in

uses

uses

uses

Scopes

<scope>, <faulthandler>,

<compensationhandler>,

<eventhandler>

Page 27: Sws Han

page 272010-01-28 [email protected]

Web Services and Security

When Web Services-based exchanges branch out beyond an organization’s firewall and span across organizations, security becomes a much larger factor than it is for exchanges that are behind the firewall

Security involves multiple requirements, such as:

Integrity: Ensuring that messages have not been tampered with en route or otherwise

Non-Repudiation: Ensuring that a party to a contract or communication cannot deny the authenticity of their signature or the fact that they originated a message

Authentication/Identity Management: Requiring proof of identity in a Web-based transaction

Authorization: Controlling access privileges to resources

Confidentiality: Protecting information from interception during transmission, and potentially afterward

Page 28: Sws Han

page 282010-01-28 [email protected]

Web Services and Security

Specification Satisfies Security Requirement

OASIS Web Services Security Integrity (message-level)

Non-Repudiation (message-level)

Confidentiality (message-level)

OASIS SAML (Security Assertion Markup Language)

Authentication

Identity Management (Version 2.0)

The Liberty Alliance Identity Management

WS-Federation (Web Services Federation Language)

Identity Management

WS-Trust (Web Services Trust Language)

Managing trust relationships

WS-SecureConversation (Web Services Secure Conversation Language)

Integrity (session-level)

Non-Repudiation (session-level)

Confidentiality (session-level)

XACML (Extensible Access Control Markup Language)

Authorization/Access Control

Page 29: Sws Han

Service implementation - logical

292010-01-28 [email protected]

A service is a software component designed and built in order to be reused

by another software component in different execution contexts.

Service content provides business logic

such as a stateless computation

Provides service identification, definition of

parameters, and conventions concerning

passing the service results back to the consumer

Service

Content

Service Interface

Author: Peter Campbell, ANZ Banking Group Australia

Source: Applying EA Roadmapping: An SOA Roadmap, Cutter Consortium

Services might need to be able to distinguish

messages from individual consumers and also

be able to correlate those messages

into meaningful conversations.

Page 30: Sws Han

Service-oriented Architecture (SOA)

1. Point to point systems

App A

(J2EE)

Legacy

ApplicationLegacy

Application

App B

(.Net)

App D

(J2EE)

Warehouse

Finance

SalesApp C

(.Net)

Partner

2. Message-based middleware with integration broker

Service Bus / MOM

App AApp B

Legacy

System

Shared

System

Adapter

Adapter

App C

App D

Sales

PartnerWarehouse

Finance

Service Oriented Architecture & Enterprise Service Bus

Enterprise Service Bus

RoutingServices

Consum

er

Pro

vid

er

TransformationAdapter

Shared

System

Adapter

Legacy

System

Service

(Process)

orchestration

“Above the bus”

“Below the bus”

HTTP

Internet

Custom

applications

Package

applications

Business

Process

Orchestration

Business Rules

Engine

Author: Peter Campbell, ANZ Banking Group Australia

[email protected].

kr

Page 31: Sws Han

page 312010-01-28 [email protected]

SOA Layers

Providing Resources

and Implementations

Service Enablement

Implementation-Based

and Utility Services

Business Service Bus

Composite Application

Other

Service

Providers

Composite Business

Services

En

terp

rise S

erv

ice B

us

Internal and External Resources

Service Service

Service ServiceServiceService ServiceService

Page 32: Sws Han

Service / Business Process

Business Process

Orchestration

Business

Services

Technical

Services

Get

customer

details

“Open account for customer”“Open account for customer”

Locate

account

type

Add

account to

customer

Locate

customer

record

Check

customer

status

Presentation – user interface

Create Create

Customer-

Account

record

LookupLookup

account

type

table

Retrieve

account

details

Business Process

Coarse Grained

Fine

Grained

Service Orchestration

(Process Orchestration)

[email protected].

kr

Page 33: Sws Han

Service / Business Process Composition

BEA WebLogic Platform

[email protected].

kr

Page 34: Sws Han

Business Process Standards

[email protected].

kr

Page 35: Sws Han

page 352010-01-28 [email protected]

Web Services and SOA

SOA can be implemented without Web services, and Web services can be used for non-SOA (e.g. RPC) interactions. However, Web services delivers key standards for implementing SOA.

The WS-* family scales to meet integration challenges intra-enterprise (enterprise application integration [EAI]) and inter-enterprise (business to business [B2B]).

XML is an ideal candidate for loosely coupled inter-application data sharing. XML is not self-describing, but XML Schema can be be used to constrain message layout and content.

RPC interactions

Binary XML

Services architecture

Service contract

Message based

Service directory

Protocol independent

Coarse grained & document centric

Web services specs

WSDL

SOAP & XML

UDDI

HTTP

Doc literal binding

Process orchestration (BPEL)

Web services

“The plumbing”

SOA“The architecture”

Web Services is the stack of standard web technologies

required at both consumer and provider ends to implement the

pipe for shipping XML messages between them.

You don't have SOA until you build/buy

services and compose them to implement

business functionality.

Author: Peter Campbell, ANZ Banking Group Australia

Page 36: Sws Han

page 362010-01-28 [email protected]

Standards Stack for Web Services

Page 37: Sws Han

page 372010-01-28 [email protected]

Trend in Web Services

Page 38: Sws Han

page 382010-01-28 [email protected]

WS standards: Lack of Semantics!

Problem: Enable interoperability by using the same format, but still discovery,

combinability only syntax based, no way to describe functionality.

Syntax only!

Page 39: Sws Han

Semantic Web Services

Page 40: Sws Han

page 402010-01-28 [email protected]

Semantic Web Services

Semantic

Web

Web

ServicesEAI

KnowledgeKnowledge

Based

System

Information

Resources

Distributed

Services

Distributed

Processing

Model

Semantic

Model

SemanticSemanticWeb

Services

Ontology

Service

Page 41: Sws Han

page 412010-01-28 [email protected]

Semantic Enabled Web Services

Semantics

Page 42: Sws Han

Semantic Web Services (SWS)

Three characteristics of SWS:

1. Enhance Web Service usage by adding semantics for automationWeb service aspect

2. Use an ontology as the underlying model for the Web Service description Ontology aspect

3. Support ontology reuse to build a Web of Links Semantic Web aspect

Page 43: Sws Han

page 432010-01-28 [email protected]

Tackling Semantic Interoperability…

PublicationPublication

DiscoveryDiscovery

SelectionSelection

CompositionComposition

MediationMediation

ExecutionExecution

MonitoringMonitoring

CompensationCompensation

ReplacementReplacement

Make available the description of the capability of a serviceMake available the description of the capability of a service

Locate different services suitable for a given taskLocate different services suitable for a given task

Choose the most appropriate services among Choose the most appropriate services among

the available onesthe available ones

Combine services to achieve a goalCombine services to achieve a goal

Solve mismatches (data, protocol, process) among Solve mismatches (data, protocol, process) among

the combined Web servicesthe combined Web services

Invoke services following programmatic conventionsInvoke services following programmatic conventions

Control the execution processControl the execution process

Provide transactional support and undo or mitigate Provide transactional support and undo or mitigate

unwanted effectsunwanted effects

Facilitate the substitution of services by equivalent onesFacilitate the substitution of services by equivalent ones

Page 44: Sws Han

page 442010-01-28 [email protected]

Semantic Web Services Lifecycle

Description

Publication

Discovery

Engagement

Enactment

Security

Qos

Page 45: Sws Han

page 452010-01-28 [email protected]

Building on Existing Web Services Standards

XML

SOAP

HTTP

OWL-S(Grounding)

WSDL

OWL-SServiceMatching

UDDI

Page 46: Sws Han

page 462010-01-28 [email protected]

OWL-S Objectives

Provide:

An upper ontology for describing properties & capabilities of agents & (Web) services in an unambiguous, computer interpretable markup language.

Supporting ontologies for describing service types, security definitions, execution parameters, access and invocation characteristics.

Guidelines for advertising, modeling and requesting services.

Infrastructure to support the location and invocation of services.

Model services using DAML syntax and description-logics

Achieve semantic interoperability through tight coupling with Semantic Web standards.

Automate:

WS Discovery

WS Invocation

WS Selection, Composition & Interoperation

WS Execution Monitoring

Page 47: Sws Han

page 472010-01-28 [email protected]

OWL-S Upper Ontology

• Mapping to WSDL

• communication protocol (RPC, HTTP, …)

• marshalling/serialization

• transformation to and from XSD to OWL

• Control flow of the service

• Black/Grey/Glass Box view

• Protocol Specification

• Abstract Messages

• Capability specification

• General features of the Service

• Quality of Service

• Classification in Service

taxonomies

Page 48: Sws Han

page 482010-01-28 [email protected]

Service Profiles

Service Profile

Presented by a service.

Represents

• what the service provides

Two main uses:

• Advertisements of Web Services capabilities (non-functional properties, QoS, Description, classification, etc.)

• Request of Web services with a given set of capabilities

Page 49: Sws Han

page 492010-01-28 [email protected]

OWL-S Service Profile

Non Functional PropertiesNon Functional Properties

Functionality Functionality

DescriptionDescription

Page 50: Sws Han

page 502010-01-28 [email protected]

Service Model

Process Model

Describes how a service works: internal processes of the service

Specifies service interaction protocol

Specifies abstract messages: ontological type of information transmitted

Facilitates

Web service invocation

Composition of Web services

Monitoring of interaction

Page 51: Sws Han

page 512010-01-28 [email protected]

OWL-S Service Model (Overview)

Page 52: Sws Han

page 522010-01-28 [email protected]

Process Model Control Constructs

Four types of control construct

Sequential, concurrent, conditional, and iteration

Test and conditional constructs used to control workflow

Page 53: Sws Han

page 532010-01-28 [email protected]

Composite Process Example (Sequence)

<rdfs:Class rdf:ID="BookFlight"><rdfs:subClassOf rdf:resource="#CompositeProcess" /><rdfs:subClassOf rdf:resource="http://www.daml.org/Process#Sequence" /><daml:subClassOf>

<daml:Restriction><daml:onProperty rdf:resource="http://www.daml.org/Process#components" /><daml:toClass>

<daml:subClassOf><daml:unionOf rdf:parseType="daml:collection">

<rdfs:Class rdfs:about="#GetFlightDetails" /><rdfs:Class rdfs:about="#GetContactDetails" /><rdfs:Class rdfs:about="#ReserveFlight" /><rdfs:Class rdfs:about="#ConfirmReservation" />

</daml:unionOf></daml:subClassOf>

</daml:toClass></daml:Restriction>

</daml:subClassOf></rdfs:Class>

Composite Process

Confirm Confirm

Reservation

BookFlightBookFlight

Get Contact Get Contact

Details

Sequence

Get Flight Get Flight

DetailsReserve FlightReserve Flight

SequenceSequence

Page 54: Sws Han

page 542010-01-28 [email protected]

Service Grounding

Service Grounding

Provides a specification of service access information.

Service Model + Grounding give everything needed for using the service

Builds upon WSDL to define message structure and physical binding layer

Specifies:

communication protocols, transport mechanisms, agent communication languages, etc.

Page 55: Sws Han

page 552010-01-28 [email protected]

Mapping OWL-S / WSDL 1.1

Operations correspond to Atomic Processes

Input/Output messages correspond to Inputs/Outputs of processes

DL-based Types

WSDL

OWL-S

Process Model

Atomic Process

Operation Message

Inputs / Outputs

Binding to SOAP, HTTP, etc.

Page 56: Sws Han

page 562010-01-28 [email protected]

Web Services vs. Semantic Web Services

Items Web Services Semantic Web Services

Service Requestor Human Agents

Service PublicationUDDI May not be necessary

Description Language WSDL( Service taxanomy) Ontology-based language

Service Descriptions Operations, messages and bindingOntology-based

Goals and Capabilities

Message Exchange Syntactic-based Semantic-based

Core technologies UDDI/WSDL/SOAP Ontology and Reasoning

Service Composition Passive using WSBPEL Goal-driven approach by agents

choreography /

orchestrationPassive using WSBPEL Automatic generation by BPM

Heterogeneity Passive Semantic mediation

Service Discovery/Selection Search repository by human Automatic discovery by agents

Transportation Protocols SOAP SOAP, and other XML protocols

Page 57: Sws Han

page 572010-01-28 [email protected]

Overview: Semantic Web Services Research

OWLOWL-S

CoalitionSWSI

WSMFWSMF WSMO

W3C(USA)

STI2(EU)

Web Services

Ontology

Page 58: Sws Han

page 582010-01-28 [email protected]

Semantic Web Services Framework

Semantic Web Services Language

(SWSL)

Semantic Web Services Ontology

(SWSO)

Semantic Web Services Architecture (SWSA)

Dynamic Service

Discovery

Service Process

Enactment and

Management

Semantic Web Services

Lifecycle and Resource

Management Services

Semantic Web

Community

Support Services

Cross-Cutting Issues

Service Engagement

SWSL-FOL SWRL-Rules

FLOWS ROWS

Page 59: Sws Han

page 592010-01-28 [email protected]

Semantic Web Services Framework (SWSF)

Semantic Web Service Language (SWSL)general purpose language designed to

address the needs of Semantic Web Services

SWSL–FOL

SWSL–Rules

• based on FOL

• used to express the formal characterization

(ontology) of Web Service concepts

• based on logic programming

• used to support the use of the Service

ontology in reasoning and execution

environments

Semantic Web Service Ontology (SWSO) conceptual model and axiomatization

FLOWS (First-Order Logic Ontology for Web Services)

• axiomatized ontology of service ontology learned from OWL-S, PSL

ROWS (Rules Ontology for Web Services)

a (partial) translation of FLOWS into SWSL-Rules

Page 60: Sws Han

page 602010-01-28 [email protected]

The Layered Structure of SWSL-Rules

a rule-based language with non-monotonic semantics.

to provide support for a variety of tasks that range from service profile specification to service discovery, contracting, policy specification, and so on.

NAF

Nonmon LTCourteous

Horn

Equality Mon LT

HiLog

Reification

Frames

Page 61: Sws Han

page 612010-01-28 [email protected]

The Layered Structure of SWSL-Rules

Core language: pure Horn subset of SWSL-Rules.

Monotonic Lloyd-Topor (Mon LT) extension

permits disjunctions in the rule body and conjunction and implication in the rule head.

NAF extension

allows negation in the rule body, which is interpreted as negation-as-failure.

Non-Nonotonic Lloyd-Topor extension (Non-Non LT)

permits quantifiers and implication in the rule body.

Courteous rules extension

introduces two new features: restricted classical negation and prioritized rules.

HiLog extension

allowing variables to range over predicate symbols, function symbols, and even formulas.

Despite second-order features, the semantics of HiLog remains first-order and tractable.

Frames extension

introduces the most common object-oriented features, such as the frame syntax, types, and inheritance.

Reification extension

provides a mechanism for making objects out of a large class of SWSL-Rules formulas, which puts such formulas into the domain of discourse and allows reasoning about them.

Page 62: Sws Han

page 622010-01-28 [email protected]

SWSL-FOL

is used to specify the dynamic properties of services, namely, the processes that they are intended to carry out

a specification language for SWSO, and specialized reasoners will be used to reason with the service ontology

a common platform to support semantic interoperability among the different first-order based service ontologies, such as OWL-S

All of the above layers have been implemented in one system or another.

FLORA-2: all layers except Courteous rules and Non-Monotonic Lloyd-Topor.

SweetRules: Courteous extensions

Ontobroker: Non-Monotonic Lloyd-Topor and frames.

Page 63: Sws Han

page 632010-01-28 [email protected]

The Layers of SWSL-FOL

SWSL-FOL+Equality

SWSL-FOL+HiLog

SWSL-FOL+Frames

SWSL-FOL

Horn

EqualityMon LT

HiLog

Frames

Page 64: Sws Han

page 642010-01-28 [email protected]

Semantic Web Services Ontology (SWSO)

SWSO: Two ontologies

FLOWS

First-order Logic Ontology for Web Services. FLOWS

also known as SWSO-FOL

First-order logic version of the Semantic Web Services Ontology.

An extension of the PSL-OuterCore ontology, to incorporate the fundamental aspects of (web and other electronic) services, including service descriptors, the service activity, and the service grounding.

ROWS

Rules Ontology for Web Services.

ROWS, also known as SWSO-Rules

Rules-based version of the Semantic Web Services Ontology.

created by a relatively straight-forward, almost faithful, transformation of fundamental aspects of (web and other electronic) services, including service descriptors, the service activity, and the service grounding.

Enables a rules-based specification of a family of services, including both the underlying ontology and the domain-specific aspects.

Page 65: Sws Han

page 652010-01-28 [email protected]

SWSO: FLOWS

First-order Logic Ontology for Web Services

Representational Desiderata

Model-theoretic semantics

Primitive and complex processes are first-class objects

Taxonomic representation

Leverages existing service ontologies (OWL-S)

Embraces and integrates with existing and emerging standards and research (BPEL, W3C choreography, etc.)

Explicit representation of messages and dataflow (cf. W3C choreography, behavioral message-based signatures, etc.)

Captures activities, process preconditions and effects on world.

Captures process execution history.

FLOWS comprises:

Service Descriptors

Process Model

Grounding

Page 66: Sws Han

page 662010-01-28 [email protected]

SWSO: FLOWS

FLOWS

Service

Descriptors

Process

ModelGrounding

FLOWS-CoreControl

Constraints

Ordering

Constraints

Occurrence

Constraints

State

Constraints

Exception

Constraints

Page 67: Sws Han

page 672010-01-28 [email protected]

Service Descriptors

Service Name: name(service,service_name)

Service Author: author(service,service_author)

Service Contact Information: contact(service,contact_info)

Service Contributor: contributor(service,service_contributor)

Service Description: description(service,service_description)

Service URL: url(service,service_URL)

Service Identifier: identifier(service,service_identifier)

Service Version: version(service,service_version)

Service Release Date: releaseDate(service,service_release_date)

Service Language: language(service,service_language)

Service Trust: trust(service,service_trust)

Service Subject: subject(service,service_subject)

Service Reliability: reliability(service,service_reliability)

Service Cost: cost(service,service_cost)

Page 68: Sws Han

page 682010-01-28 [email protected]

Process Model

Extension of PSL, a generic ontology for processes

the structured notion of atomic process as found in OWL-S

infrastructure for specifying various forms of data flow

Module Major Concepts

FLOWS-Core

ServiceAtomicProcess composedOf message channel

Control Constraints

Split Sequence Unordered Choice IfThenElse Iterate RepeatUntil

Ordering Constraints OrderedActivity

Occurrence Constraints OccActivity

State Constraints TriggeredActivity

Exception Constraints Exception

Page 69: Sws Han

page 692010-01-28 [email protected]

Process Modeling Constructs

Page 70: Sws Han

page 702010-01-28 [email protected]

SWSO: ROWS

Rules Ontology of Web Services

Partial translation of FLOWS into SWSL- Rules

Features of ROWS

Since SWSL-Rules is inherently less expressive than SWSL-FOL, some axioms in ROWS are weakened with respect to the corresponding axiom in SWSL-FOL.

Top-level Classes of ROWS

Correspond to similar to classes of FLOWS

Service, Process, AutomicProcess, Message, Channel

prefix xsd = "http://www.w3.org/2001/XMLSchema".

Service[

name *=> xsd#string,

author *=> xsd#string,

contactInformation *=> xsd#string,

contributor *=> xsd#string,

………………………….

identifier *=> xsd#string,

subject *=> xsd#string,

trust *=> xsd#string,

reliability *=> xsd#string,

cost *=> xsd#string

].

Page 71: Sws Han

page 712010-01-28 [email protected]

Semantic Web Service Architecture (SWSA)

Mission of the Semantic Web Services Initiative Architecture committee (SWSA): Development of architectural and protocol abstractions forming a reference architecture to support Semantic Web Service technologies on the World Wide Web

extends the Web Services Architecture developed by the Web Services Architecture Working Group of W3C

make use of terms and concepts in a conceptual architecture for semantic web services that extends the Web Services WG Architecture.

is based in part on the layered Semantic Web Architecture as proposed by Tim Berners-Lee

is taken from the OWL-S Coalition, WSMO Working Group, the open grid services architecture and the METEOR-S project

abstract protocols for interactions between clients and Semantic Web Services and other support services that may be needed in some contexts to fulfill the basic requirements of the proposed architecture

support functions to be accomplished by Semantic Web agents (service providers, requestors, and middle agents).

Page 72: Sws Han

page 722010-01-28 [email protected]

SWSA Architectural Considerations

Dynamic Service Discovery: The capability of a software agent, through interaction with other agents, to identify candidate services for

particular objectives.

Service Engagement - Negotiation and Contracting: The capability of two agents to mutually formulate, by offline or online interaction, a shared agreement

on the terms of performance of a service to be provided by one agent for the other.

Service Process Enactment and Management: The capability to dynamically select and invoke or interact with services to achieve some defined

objective.

Semantic Web Community Support Services: Capabilities associated with sharing semantic descriptions, ontologies and ontology mappings, and

service catalogs within and across communities.

Semantic Web Service Lifecycle and Resource Management Services: The capability to spawn, allocate, manage and report on the life status of services, computational host

platforms and storage facilities for Semantic Web Services.

Cross-cutting Issues: Semantic representations of two kinds of service quality meta-properties may be important during

discovery of appropriate services, may appear in service agreements, and may be monitored during execution.

Page 73: Sws Han

page 732010-01-28 [email protected]

Service Interaction Process of SWSA

• 서비스 발견 (Service Discovery) 단계• 서비스 약속 (Service Engagement) 단계• 서비스 처리 규약 및 관리 (Service Process Enactment and Management)• 시맨틱 웹 지원 관련 서비스 (Semantic Web Community Support Services)• 시맨틱 웹 서비스 생명주기 및 자원관리 서비스 (Semantic Web Service Lifecycle

and Resource Management Services)• 부가적 요구사항 (Cross-cutting Requirement)

Page 74: Sws Han

page 742010-01-28 [email protected]

Negotiation-Commitment Process

Page 75: Sws Han

page 752010-01-28 [email protected]

Main Principles of WSMF

Machine-Processible

Semantics

Ontology

TechnologyMediation

Two complementary principles

Automatic finding and

comparing

Diverse heterogeneous

data format

Diverse heterogeneous

business logic

Strong de-coupling

- information hiding : private process and public process

- scalable interaction for coupling process

Strong mediation

- mediate different terminologies / different interaction styles

Page 76: Sws Han

page 762010-01-28 [email protected]

WSMO Framework

∙ WSMO Working Group : 시맨틱 웹서비스 모델 연구∙ WSML Working Group : 시맨틱 웹서비스 언어 연구∙ WSMX Working Group : 시맨틱 웹서비스 실행 환경 연구

WSMO WG

WSML WG WSMX WG

Languages for WSMO

Conceptual Model of Web Services

Run-Time

Execution Environment

Rule-base LanguageFormal Language

for WSMO

Page 77: Sws Han

page 772010-01-28 [email protected]

WSMO Design Principles

Web Compliance inherits the concept of URI (Universal Resource Identifier) for unique identification of resources

adopts the concept of Namespaces for denoting consistent information spaces, and supports XML and other W3C Web technology recommendations, as well as the decentralization of resources.

Ontology-Based used as the data model throughout WSMO, meaning that all resource descriptions as well as all data

interchanged during service usage are based on ontologies.

semantically enhanced information processing as well as support for interoperability

Strict Decoupling is specified independently without regard to possible usage or interactions with other resources.

Centrality of Mediation addresses the handling of heterogeneities that naturally arise in open environments.

Ontological Role Separation differentiates between the desires of users or clients and available Web services.

Description versus Implementation differentiates between the descriptions of Semantic Web services elements (description) and executable

technologies (implementation).

Execution Semantics - verify the WSMO specification, the formal execution semantics of reference implementations like

WSMX as well as other WSMO-enabled systems provide the technical realization of WSMO.

Service versus Web service – A Web service is a computational entity which is able (by invocation) to achieve a goal. A service in

contrast is the actual value provided by this invocation.

Page 78: Sws Han

page 782010-01-28 [email protected]

Core Components of WSMO

Ontologies consisted of concepts, relations, functions, axioms, instances, non-functional properties, imported

ontologies, and used mediators

Web Services describe the functional properties for service discovery, invocation, composition, mediation,

compensation and…

consisted of non-functional properties, imported ontologies, used mediators, capability and interfaces

should have more than one capability

Goals describe the required user’s goal of service.

consisted of non-functional properties, imported ontologies, used mediators, requested capability and requested interface

Mediators mediation of structural, semantic, conceptual mismatches

consisted of non-functional properties, imported ontologies, source comjponent, target comjponent and mediation service

4 types of mediators

Page 79: Sws Han

page 792010-01-28 [email protected]

WSMO – the Web service element

Page 80: Sws Han

page 802010-01-28 [email protected]

WSML

WSML provides a formal grounding for the conceptual elements of WSMO, based on:

Description Logics

Rule Languages

First-Order Logic

Many current Semantic Web languages have

undesirable computational properties

unintuitive conceptual modeling features

inappropriate language layering

• RDFS/OWL

• OWL Lite/DL/Full

• OWL/SWRL

WSML aims to:

Provide a Web Service Modeling Language based on the WSMO conceptual model

• Concrete syntax

• Semantics

Provide a Rule Language for the Semantic Web

Page 81: Sws Han

page 812010-01-28 [email protected]

Web Service Modelling Language (WSML)

Ontology / Rule Languages

WSML Core: efficiency and compatibility

WSML DL: decidability, open world semantics

WSML Rule: efficient existing rule engines

WSML Full: unifying language, theorem proving

Languages for dynamics

Transaction Logic over ASMs

Mapping languages

for dynamics (process mediation)

for data (data mediation)

URIUnicode

XML

RDF (S)

WSML Core

WSML DLWSML Rule

WSML Full

Static

Aspects

Dynamic

Aspects

WSML

Page 82: Sws Han

page 822010-01-28 [email protected]

Variants of WSML

WSML-Core

Based on the intersection of Description Logics and Datalog

Semantics defined through OWL Lite-

Has (frame-based) conceptual syntax and logical expression syntax

WSML-Flight

Based on OWL Flight

• Basic meta-class facility

• Constraints

• Non-monotonic features (default negation)

“Fixes” some of the mistakes in OWL, such as unintuitive modeling constructs

Preferred ontology modeling language

WSML-Rule

Based on Logic Programming with default negation and

F-Logic/HiLog syntactical extensions

Preferred goal/web service modeling language

WSML-DL

Based on species of OWL

WSML-Full

Combining FOL with minimal models and non-monotonicity

Page 83: Sws Han

WSMO/WSML: Examples

Concept exampleconcept phoneNumber

nonFunctionalProperties

dc#description hasValue "concept of a

phone number"

endNonFunctionalProperties

countryCode ofType _string

areaCode ofType _string

number ofType _string

Relation example

relation hasRoute(ofType routeDescription, ofType route)

nonFunctionalPropertiesdc#description hasValue "Relation that holds between

a route description and a route"endNonFunctionalProperties

Axiom exampleaxiom ValidInformationQuality

definedBy

forall {?x} (

?x memberOf informationQualityType implies

?x[value hasValue “low“] or

?x[value hasValue “high“]).

Instance exampleinstance myPhoneNumber memberOf phoneNumber

countryCode hasValue “43“

areaCode hasValue “664“

number hasValue “49322607“ Sub-concept exampleconcept mobilePhoneNumber subConceptOf

phoneNumber

nonFunctionalProperties

dc#description hasValue "concept of a

mobile phone number"

endNonFunctionalProperties

mobileProvider ofType Provider

2010-01-28 page [email protected]

Page 84: Sws Han

page 842010-01-28 [email protected]

WSMO/WSML: Examples

webService _"https://asg-platform.org/AttractionBooking/MobtelPhoneLocationService"nfp

dc#title hasValue "MobtelPhoneLocationService"dc#publisher hasValue "Mobtel“dO#informQualityType hasValue "high"

endnfpimportsOntology _"https://asg-platform.org/AttractionBooking/domainOntology.wsml"capability MobtelPhoneLocationServiceCapability

sharedVariables {?P}precondition

definedBy?P memberOf dO#phoneNumber.

postconditiondefinedBy

?L memberOf dO#locationanddO#hasLocation(?P,?L).

interface MobtelPhoneLocationServiceInterfacechoreography MobtelPhoneLocationServiceChoreography

stateSignaturein

dO#phoneNumber withGroundingssWSDL#wsdl.interfaceMessageReference(MobtelPhoneLocationServicePortType/doIt/In)out

dO#location withGroundingssWSDL#wsdl.interfaceMessageReference(MobtelPhoneLocationServicePortType/doIt/Out) transitionRules

forAll{?P} with (?P memberOf dO#phoneNumber) doadd(?L memberOf dO#location and dO#hasLocation(?P,?L))

endForall

Page 85: Sws Han

page 862010-01-28 [email protected]

WSMX Architecture

Page 86: Sws Han

page 872010-01-28 [email protected]

WSMX Functionality

Core Component: interactions between components (business logic of the system, events engine, internal worklow engine...)

Resource Manager: management of repositories to store definitions of any WSMO (Web Services, goals, ontologies and mediators) and non-WSMO related objects for WSMX.

Web Services Repository: Semantic Description of Web Services

Goals repository: semantic description of general goals

Ontology repository: ontologies to be stored in the registry describing semantics of particular domains.

Mediator repository: mediators to be stored in the registry.

Data repository :system data and any component specific data required for correct system execution.

Service Discovery: provide functionality on matching of usable SWS with the goals.

Goal-driven matching with the capability of Web Services and the user goal.

Service Selection: Selection of the appropriate Web Services among the candidate services discovered in Service Discovery

variant selection strategies: “best”, “optimal”, and “first”

Non-functional properties: cost, performance, geographical location, reliability, security, etc.

Data and Process Mediator: Mediator when two entities that cannot communicate directly need to interact.

Communication Manager

Choreography

mediate between the requester's and the provider's communication patterns.

provide the necessary means for a runtime analysis of two given choreography instances and to use Mediators to compensate the possible mismatches that may appear,

WSMT Web Service Modeling Toolkit (WSMT): framework for the rapid deployment of graphical administrative tools

Page 87: Sws Han

page 882010-01-28 [email protected]

WSMX – Components

Page 88: Sws Han

page 892010-01-28 [email protected]

Core Standardization Initiatives in the Area of SWS

OASIS Semantic Execution Environment TC

Developing guidelines, justifications, and implementation directions for deploying Semantic Web services in SOA

www.oasis-open.org/committees/semantic-ex/

W3C Semantic Annotations for Web Services Description Language Working Group

Develop a mechanism to enable annotation of Web services descriptions

http://www.w3.org/2002/ws/sawsdl/

Page 89: Sws Han

Semantic Web Services System

Page 90: Sws Han

page 912010-01-28 [email protected]

OWL-S VM

OWL-S 기반지원도구

주요 3 모듈로구성

OWL-S 프로세스모델지원

기본적인추론기능

Page 91: Sws Han

page 922010-01-28 [email protected]

IRS-III

UPML 기반의문제해결추론 시스템

WSMO 생성 지원

편리한서비스공표 기능

서비스발견과실행

OWL-S 지원

LispWeb Server

IRS-III Server

WS Publisher

Registry

OCML

WSMO Library

OWL(-S)

HandlerOWL(-S)

Browser

Invocation

Client

Publishing

Clients

SOAP

Handle

r

S

O

A

P

Web Application

SOAP

Publishing

Platforms

Web Service

Java Code

Browser

Handler

Publisher

Handler

Invocation

Handler

J

a

v

a

A

P

I

WSMX

Page 92: Sws Han

page 932010-01-28 [email protected]

SWWS Studio

클라이언트용통합개발환경

WSMO 지원

Visual Service Composer와 Service Editor

로구성

서비스합성은 OWL-S만지원

Page 93: Sws Han

page 942010-01-28 [email protected]

ODE-SWS

개념수준에서의서비스기술과합성

WebODE 서비스 확장

언어중립적

Page 94: Sws Han

page 952010-01-28 [email protected]

Web Service Semantics - WSDL-S

A mechanism to augment WSDL descriptions with semantics

a set of annotations can be created to semantically describe the inputs, outputs and operations of a Web service.

keeps the semantic model outside WSDL, making the approach agnostic to any ontology representation language

WSDL-S doesn’t provide a conceptual model and language for SWS

a bottom up approach to SWS (annotating existing standards with metadata)

Could be used as a grounding mechanism for SWS

Page 95: Sws Han

page 962010-01-28 [email protected]

METEOR-S

대규모 Workflow 관리 시스템을

시맨틱 웹서비스에 확장

서비스 라이프 사이클 관리 가능

서비스 기술에 WSDL-S 이용

서비스 저장고에 MWSDI 이용

본격적인 시맨틱 웹서비스 플랫폼

Policy

Handler

WSDL-S

Development

Deployment

Semantic

Publishing &

Discovery

Invoker &

Testing

Web Process

Designer

Publishing &

Discovery

Engine

WSDL-S

API

Process ManagerInvoker

Constraint

Analyzer Optimizer

UDDI

Registry

JWSDP

SOAP

Engine

Apache

Axis

Inference

Engine

Jena/

Snobase

BPEL

Engine

BPWS

4J

WSDL

Parser

WSDL4J

GUI

Core

ILP

Solver

Lindo

Infrastructure

Development Discovery Composition

Page 96: Sws Han

SUPER Project

page 972010-01-28 [email protected]

SUPER Project

The major objective of Semantics Used for Process management

within and between EnteRprises (SUPER) is to raise

Business Process Management to the business level,

where it belongs, from the IT level where it mostly resides now.

SUPER aims to create the technological framework constituting BPM enriched with machine

readable semantics by employing Semantic Web and Semantic Web Services accompanied by

universal reference implementation for mechanized BPM.

SUPER Goals:

• To develop a comprehensive ontology stack that describes formal semantics for semantic

business processes

• To facilitate/support BPM tasks by semantic web service technology

• Semantic Business Process Composition

• Semantic Business Process Mediation

• To provide a holistic, semantically enriched modeling stack for BPM

• To provide “advanced” BPM functionality like semantic business process mining &

analysis

Page 97: Sws Han

SUPER Modeling Stack

page 982010-01-28 [email protected]

Page 98: Sws Han

SUPER Semantic Service Bus

page 992010-01-28 [email protected]

Page 99: Sws Han

Summary & Research Trend

Page 100: Sws Han

page 1012010-01-28 [email protected]

Different Approaches

STI2 approach

Web Services

UDDI,WSDL,SOAP

Current Web

URL, HTML, HTTP

Web Services

UDDI,WSDL,SOAP

Semantic Web

Services

Web Services

UDDI,WSDL,SOAP

Semantic Web

Ontology

Dynamic

Static

Knowledge

Location

Description

Communication

Web Services

UDDI,WSDL,SOAP

Web Services

UDDI, WSDL, SOAP

Information

Reso

urce

Services

Semantic Interoperability

Semantic

Integration

SWSI approach

Page 101: Sws Han

page 1022010-01-28 [email protected]

Framework Comparison

WSMO WG

WSML WG WSMX WG

Languages for WSMO

Conceptual Model of Web Services

Run-Time

Execution Environment

Rule-base LanguageFormal Language

for WSMO Semantic Web Services Language

(SWSL)

Semantic Web Services Ontology

(SWSO)

Semantic Web Services Architecture (SWSA)

Dynamic Service

Discovery

Service Process

Enactment and

Management

Semantic Web Services

Lifecycle and Resource

Management Services

Semantic Web

Community

Support Services

Cross-Cutting IssuesService Engagement

SWSL-FOL SWRL-Rules

FLOWS ROWS

WSMO/WSML/WSMX

SWSI

Page 102: Sws Han

page 1032010-01-28 [email protected]

Research Trend

Semantic

Web process

Semantic

Web serviceWeb service

Web process

Semantic Web Services Initiative (SWSI)Semantic Web Services Initiative (SWSI)

(WSMO/WSML/WSMX •••)

Industry Research Academic Research

Tim

e

Annotation

Advertisement

Discovery

Selection

Composition

Execution

OWL-S

OWL

DAML-S

DAML

••••••

SOAP

WSDL

UDDI

XML

•••

•••

BPEL4WS

WSCL

WSCI

XLANG

WSFL

•••

Page 103: Sws Han

The Cloud is rising…

Definition by Wikipedia

Cloud computing literally means Internet ('Cloud') based development and use of computer technology ('Computing'). It is a style of computing where IT-related capabilities are provided “as a service” using Internet technologies to multiple external customers. It allows users to access technology-enabled services without knowledge of, expertise with, or control over the technology infrastructure that supports them.

Definition by Gartner

a style of computing where massively scalable IT related capabilities are provided 'as a service' using Internet technologies to multiple external customers.

Cloud computing is disruptive

IT-related capabilities provided “as a service”

Current economic downturn makes Cloud Computing more relevant than ever

Gartner reports that 25% of software will be delivered as SaaS 2011.

page 1042010-01-28 [email protected]

Page 104: Sws Han

X-as-a-Service

page 1052010-01-28 [email protected]

http://blog.skytap.com/2008/10/the-cloud-wars-who-will-win/

Page 105: Sws Han

as-a-Service Concept

page 1062010-01-28 [email protected]

SaaS PaaS IaaS

SaaS is a model of

software deployment

Managed from central

locations rather than at

costomer`s site

Provides the facilities to

support the end-to-end

life cycle of building

and delivering web

applications and

services

Provisioned on the fly,

on-demand model

Typically a virtualized

platform environment

Evolution towards

ubiquitous utility

computing

Page 106: Sws Han

Cloud Computing

page 1072010-01-28 [email protected]

Page 107: Sws Han

Examples

page 1082010-01-28 [email protected]

Page 108: Sws Han

Core Players

page 1092010-01-28 [email protected]

Page 109: Sws Han

Unified Ontology of Cloud Computing.

page 1102010-01-28 [email protected]

http://www.cs.ucsb.edu/~lyouseff/

Page 110: Sws Han

Cloud Ontology

page 1112010-01-28 [email protected]

Page 111: Sws Han

Thank you….Thank you…[email protected]@wku.ac.kr