semantics enriched service environments

139
Wednesday, August 12, 2009

Upload: karthik-gomadam

Post on 13-May-2015

678 views

Category:

Technology


1 download

DESCRIPTION

PDF with slide notes to accompany my presentation.

TRANSCRIPT

Page 1: Semantics Enriched Service Environments

Wednesday, August 12, 2009

Page 2: Semantics Enriched Service Environments

Wednesday, August 12, 2009

Page 3: Semantics Enriched Service Environments

Wednesday, August 12, 2009

Homer wants to drive from Athens, GA to NYC.

Page 4: Semantics Enriched Service Environments

Wednesday, August 12, 2009

and would like to have his favorite burger all through the way.

Page 5: Semantics Enriched Service Environments

Wednesday, August 12, 2009

and would like to have his favorite burger all through the way.

Page 6: Semantics Enriched Service Environments

Wednesday, August 12, 2009

and would like to have his favorite burger all through the way.

Page 7: Semantics Enriched Service Environments

Wednesday, August 12, 2009

He drives to the apple store, gets his iPhone and excitedly downloads the aroundme application that allows him to find restaurants near him.

Page 8: Semantics Enriched Service Environments

Wednesday, August 12, 2009

and then realizes that he has to do too much before he can find a mcdonalds!!

Page 9: Semantics Enriched Service Environments

Wednesday, August 12, 2009

he sits to create his own application coz he has heard that even 9 year olds can create apps.

Page 10: Semantics Enriched Service Environments

Wednesday, August 12, 2009

but its not that easy for an average user!

Page 11: Semantics Enriched Service Environments

How do we help Homer find his Big Mac?

Wednesday, August 12, 2009

Page 12: Semantics Enriched Service Environments

Four

Wednesday, August 12, 2009

we break down this task into four steps

Page 13: Semantics Enriched Service Environments

Wednesday, August 12, 2009

first is to find the right services that give Homer all the information?

Page 14: Semantics Enriched Service Environments

Wednesday, August 12, 2009

When one service responds, we need to send it to the next service. however, its not easy. so let us resolve the dispute here and make them talk

Page 15: Semantics Enriched Service Environments

Wednesday, August 12, 2009

once we have made them talk, we will make sure that they are all integrated.

Page 16: Semantics Enriched Service Environments

Wednesday, August 12, 2009

all is good, but when Homer is using the app, things can go wrong! how can we identify something when it happens?

Page 17: Semantics Enriched Service Environments

SEMANTICS ENRICHED SERVICES ENVIRONMENT

Karthik Gomadam,Services Research Lab,

kno.e.sis center.http://gomadam.org

http://slideshare.net/namelessnerdhttp://twitter.com/namelessnerd

Wednesday, August 12, 2009

In this talk, I will discuss my research in addressing these four questions. We have attempted to address significant parts of each problem and have used semantic Web techniques for the same. First, I will very briefly talk about Service Oriented Architecture. SOA is at the heart of my work.

Page 18: Semantics Enriched Service Environments

Wednesday, August 12, 2009

One can have many kinds of services: Data services that expose and share data; Software as a service: Where a software functionality can be remotely utilized; platform as a service: Where one can provide a suite of tools and expose an integration platform as a service. SOA allows us to create software that is easy to configure, flexible and agile.

Page 19: Semantics Enriched Service Environments

Wednesday, August 12, 2009

Along with SOA, my work also employs semantic Web techniques. The Semantic Web is an evolving development of the World Wide Web in which the semantics of information and services on the web is defined, making it possible for the web to understand and satisfy the requests of people and machines to use the web content. In this work, we largely employ RDF as the framework for modeling metadata.

Page 20: Semantics Enriched Service Environments

Wednesday, August 12, 2009

RDF expresses resources in the form of subject predicate object expressions, called triples. In the above example, the resource me is the subject, fullName is the predicate and Eric Miller is the object. Similar for other nodes and edges. RDF represents a labeled, directed multigraphs. For those of you unfamiliar, this example is from the wikipedia page of RDF and will be familiar when you look it up.

Page 21: Semantics Enriched Service Environments

Semantic Web Services

= Semantic Web + Web Services

Wednesday, August 12, 2009

The other area of research that this work borrows from and has contributed towards is Semantic Web Services. Simply, put SWS as it is called is adding semantics to Web services. There are many approaches to do this.

Page 22: Semantics Enriched Service Environments

Semantic Web / Semantic Models

Wednesday, August 12, 2009

This bringing together of SW and WS can be done in two ways. The first one is where, Services are added into semantic Web.

Page 23: Semantics Enriched Service Environments

Semantic Web / Semantic Models

Services

Wednesday, August 12, 2009

This bringing together of SW and WS can be done in two ways. The first one is where, Services are added into semantic Web.

Page 24: Semantics Enriched Service Environments

Service aspects represented in semantic models

Wednesday, August 12, 2009

In doing so, we represent aspects of a service such as its inputs, outputs, operations using semantic models.

Page 25: Semantics Enriched Service Environments

OWL -S

Wednesday, August 12, 2009

Significant in this is OWL-S. In OWL-S, there is a semantic model to capture the profile of a service read from picture. relies on description logic.

Page 26: Semantics Enriched Service Environments

WSMO

Goals, Ontologies, Mediators, Web Services

Wednesday, August 12, 2009

• Goals - The client's objectives when consulting a Web Service.• Ontologies - A formal Semantic description of the information used by all other components.• Mediators - Connectors between componentes with mediation facilities. Provides interoperability between different ontologies.• WebServices - Semantic description of Web Services. May include functional (Capability) and usage (Interface) descriptions. Relies

on F-Logic.

Page 27: Semantics Enriched Service Environments

Semantic Web / Semantic Models

Services

Wednesday, August 12, 2009

The second approach is one where we ground service descriptions in semantic metadata. This is a bottom up approach and does not require a significant change in perception of a service.

Page 28: Semantics Enriched Service Environments

METEOR-S

Wednesday, August 12, 2009

The METEOR-S project adopts this approach.

Page 29: Semantics Enriched Service Environments

DataNot just model,

Express your data

FunctionalNon-

Functional

Execution

What does theservice offer?

Response time, Cost, QoS Metrics

Event Identification, Adaptation

Wednesday, August 12, 2009

We classify the semantics for services into four types.

Page 30: Semantics Enriched Service Environments

Wednesday, August 12, 2009

And capture these within a service using modelrefernce, an extensibility attribute. WSDL schema allows extensibility attributes to represent additional properties beyond WSDL description. We define an extensibility attribute, called model reference that allows the addition to semantic metadata to WSDL elements.

Page 31: Semantics Enriched Service Environments

Resourceful Web

Wednesday, August 12, 2009

These services exposed various resources on the Web such as feeds, APIS

Page 32: Semantics Enriched Service Environments

described in X/HTML

Wednesday, August 12, 2009

easy for humans to read and understand but hard for machines. The problems related to description and interop still remain.

Page 33: Semantics Enriched Service Environments

SA-REST*:

semantic microformat for resource markup.

*- Not an acronym

Wednesday, August 12, 2009

During standardization process of SAWSDL in 2005, we realized that there was an emerging paradigm of services, one that did not necessarily have a WSDL for description.

Page 34: Semantics Enriched Service Environments

inline semantic annotations that refer

to a rich semantic model

Wednesday, August 12, 2009

SA-REST is an approach to add rich semantic markup to web resource descriptions. It builds on top of microformats, which have become an easy way to add semantic markups for calendar entries, contact information etc. I am currently editing the W3C submission of SA-REST, as a part of W3C incubation group for SWS. From these markups, one can extract RDF representation of the resource that can be used in search, data integration (when resources are used in a mashup). (Yahoo already has provision for using RDFa for extracting additional semantic meta information while crawling).Feedbooks allows you to browse using many facets such as theme, author, Let us look at an example markup of a simple Web page.

Page 35: Semantics Enriched Service Environments

site level

Wednesday, August 12, 2009

Everything in this site is related to basketball. capture this information at this high level.

Page 36: Semantics Enriched Service Environments

block level

iPhone app, unit conversion

iTunes store, song pricing

Wednesday, August 12, 2009

Page 37: Semantics Enriched Service Environments

element level

Wednesday, August 12, 2009

really deep markups.. i want to markup for each thumnail link info about that episode

Page 38: Semantics Enriched Service Environments

<a href=”*” class= “sem-rel” title=”metadata

about the episode”>

Wednesday, August 12, 2009

Page 39: Semantics Enriched Service Environments

site-domain-rel

markup the domain of an entire site

markup to the entry page of the site

applies to /*

Wednesday, August 12, 2009

Page 40: Semantics Enriched Service Environments

http://dooduh.com

<body class= ‘dooduh-main site-domain-rel’ title= ‘dbpedia:web2.0’>

Wednesday, August 12, 2009

We look at the body element of the entry to page ESPN’s basketball site and markup that says that the site content belongs to the domain described in this semantic model (in this case dbpedia’s basketball)

Page 41: Semantics Enriched Service Environments

domain-rel

Wednesday, August 12, 2009

when used without site, domain-rel simply denotes the domain of a block of content. it is a block markup. in a site, when domain-rel is used in an inner resource, the domain of the resource is what is mentioned by this domain-rel

Page 42: Semantics Enriched Service Environments

<p class=”domain-rel” title=”dbpedia:iphone”>

Wednesday, August 12, 2009

Page 43: Semantics Enriched Service Environments

multiple domains

Wednesday, August 12, 2009

in our example, the article talks not just about iphone apps but also about unit conversion(which is what the app does)

Page 44: Semantics Enriched Service Environments

<p class=”domain-rel” title=”dbpedia:iphone

dbpedia:unit_conversion”>

Wednesday, August 12, 2009

in this case, we enumerate the domains (no specific order)

Page 45: Semantics Enriched Service Environments

sem-rel

Wednesday, August 12, 2009

not all links are created by us.. say we are blogrolling. there is no guarantee that the target resource of a link is marked up too.but being socially responsible, we want to throw some hints at what to expect off a link. also allows enumeration

Page 46: Semantics Enriched Service Environments

<a href=”*” class= “sem-rel”

title=”metadata about the episode”>

Wednesday, August 12, 2009

Page 47: Semantics Enriched Service Environments

In summary

Wednesday, August 12, 2009

Page 48: Semantics Enriched Service Environments

Technology Centric Data and Control flow Service types Real world applications and services

OWL-S - DLWSMO - FLogic

IOPE Either or scenarios

SOAP / WSDLHaibo Zhao’s work on RESTful composition

Very few evaluations available

Technology independent - use any upper level modeling

language

Data flow: MediatabilityControl flow: Declarative composition

SOAP / WSDL and RESTful

APIHut, FoxyREST, Dooduh, AIR

Wednesday, August 12, 2009

We present a quick comparison of prior research and thesis. In the dissertation I have discussed this in detail. I have compared thesis of Dr. Paolucci, Dr. Mocan from WSMO, Dr. zhao from UGA (who worked on RESTful composition with only control flow considerations).

Page 49: Semantics Enriched Service Environments

Wednesday, August 12, 2009

two months ago in my prospectus,

Page 50: Semantics Enriched Service Environments

Wednesday, August 12, 2009

first is to find the right services that give Homer all the information?

Page 51: Semantics Enriched Service Environments

Faceted API Search, Discovery and Mediatability

Wednesday, August 12, 2009

I presented our approach to Faceted API search, SWS discovery and data mediation. I will briefly discuss these contributions today.

Page 52: Semantics Enriched Service Environments

Key word based paradigms

Interface based techniques

Wednesday, August 12, 2009

the keyword based search paradigm is extremely successful in the context of Web search, keywords are not sufficient to describe the desired functional and non-functional aspects of services.

The other paradigm supported by UDDI is interface-based discovery. In this approach, certain popular interfaces can be published in a registry and services conforming to them can be classified as such. This approach has the limitation that the interface itself is treated as a black box and there is no mechanism to compute relationships between the interfaces.

Our observation is that a number of services with similar functionality may have syntactically different interfaces, but similar or even equivalent semantic signatures.

Page 53: Semantics Enriched Service Environments

Wednesday, August 12, 2009

The SA-REST annotations of the APIs used apiHUT taxonomy, illustrated here as the semantic model; the semantic model available in RDFS.

OUr search engine uses a hybrid of bayesian statistics, TF-IDF for text analysis and classification along with available semantic markups.

Page 54: Semantics Enriched Service Environments

Serviut Rank

Wednesday, August 12, 2009

Serviut rank is our approach to ranking. It is very similar to the popular Page rank. Page rank is computed using inlinks nad outlinks. Serviut rank employs a similar strategy using the number of mashups that use a service as a positive referral, the total number of services that do a given task and total number of mashups. In addition to this, we also use the popularity of teh application itself. This is given by Alexa.

Page 55: Semantics Enriched Service Environments

Query Precision RecallQuery1 0.89 0.75Query2 0.83 0.69Query3 0.54 0.71Query4 0.82 0.21

Table 1: Precision and Recall of ApiHutQuery pWeb ApiHut GoogleQuery1 0.48 0.89 0.20Query2 0.61 0.83 0.13Query3 0.25 0.54 0.23Query4 0.70 0.82 0.37

Table 1: Precision : Apihut, PWeb and Google

Wednesday, August 12, 2009

Page 56: Semantics Enriched Service Environments

SEMRE: SEMantic services REGistry

Wednesday, August 12, 2009

Page 57: Semantics Enriched Service Environments

Service Provider 1

private registry

Service Provider 2

private registry

Manufacturer 1 Manufacturer 2

Create and publish service

interface contract 1 in WSDL

Create and publish service

interface contract 2 in WSDL

Publish service 1 that

adhere to the service

interface contracts of

manufacturer 1

Publish service 2 that

adhere to the service

interface contracts of

manufacturer 2

Syntactic

interface

agreement

required!

Service Provider

Service Provider 1

private registry

Service Provider 2

private registry

Service Provider

Manufacturer 1 Manufacturer 1

Create and publish semantic

interface contract 1 in SAWSDL

annotated with concepts

from the ontology

Create and publish semantic

interface contract 2 in SAWSDL

annotated with concepts

from the ontology

Publish service 1 that

adhere to the ontologyPublish service 1 that

adhere to the ontology

Wednesday, August 12, 2009

Builds upon what is called as contract first. WSDL is the contract that binds a provider and a requestor. Rather than having a keyword driven contract, SEMRE adopts SAWSDL and enables a semantic contract. allows us to reason at the meta level while computing matches.

Page 58: Semantics Enriched Service Environments

1. semantic interface signature (Semantic Template)

2. identify fulfillment set:

3. all fulfilling interfaces:

4. Interface relation in the set defined above

RSE , R!

E and RDE

Wednesday, August 12, 2009

parallel, each attribute fulfillment is computed independently. Map function computes this. reduce aggregates.

Page 59: Semantics Enriched Service Environments

Matching comparison

153

87

42

0

20

40

60

80

100

120

140

160

180

Data Only Match Data and Operation Data and Operation and

Domain

Nu

mb

er

of

Matc

hes

Wednesday, August 12, 2009

Published 200 services of which 42 were relevant for a request. Our approach worked well. Data only did worst and data and operation didslightly better. We do note here that we tested on services that are completely annotated. More annotation meant more processing and this test set served well for timing tests. Also we note that all three approaches had the same benefit of high quality annotation

Page 60: Semantics Enriched Service Environments

Wednesday, August 12, 2009

first is to find the right services that give Homer all the information?

Page 61: Semantics Enriched Service Environments

Think Meta!!! “Anything you can do, I can do Meta”Charles Simonyi, Intention Software

Wednesday, August 12, 2009

This is our approach to data mediation. Charles Simonyi is the creator of M$ office, the computer scientist who went to space.

Page 62: Semantics Enriched Service Environments

Wednesday, August 12, 2009

Rather than mediate between individual schemas, one can write reusable mediation scripts between concepts in the metamodel. Once individual schemas are annotated, one can create Lifting schema mapping and lowering schema mapping.

Page 63: Semantics Enriched Service Environments

Many services for the same task

Wednesday, August 12, 2009

Page 64: Semantics Enriched Service Environments

Ease of mediation

Wednesday, August 12, 2009

Our approach is to calculate the ease of mediation

Page 65: Semantics Enriched Service Environments

Mediatability

Wednesday, August 12, 2009

Given two data models (schemas) how easy can a user mediate between the two?

Page 66: Semantics Enriched Service Environments

Top down - Mediation Similarity

Wednesday, August 12, 2009

Compute the similarity of the two schemas. This is structural, and semantic.

Page 67: Semantics Enriched Service Environments

Bottom up - Mediatability

Wednesday, August 12, 2009

Page 68: Semantics Enriched Service Environments

Wednesday, August 12, 2009

User evals; asked to mediate between Yahoo Web, Image search, live search, google search and Flickr; System is conservative. Normal user: average user with some Web dev experience, expert user : apache XML Schema committers , hardcore mashup developers.

Page 69: Semantics Enriched Service Environments

Wednesday, August 12, 2009

first is to find the right services that give Homer all the information?

Page 70: Semantics Enriched Service Environments

Wednesday, August 12, 2009

In the next part of my talk, I will discuss our work on declarative based approach for integration

Page 71: Semantics Enriched Service Environments

Declarative

Wednesday, August 12, 2009

Our approach to composition is declarative. By this we mean, the input to the composition can be richly described with additional parameters such as semantic annotations, semantic templates and a smashmaker DSL.

Page 72: Semantics Enriched Service Environments

Semantic Templates

Wednesday, August 12, 2009

Page 73: Semantics Enriched Service Environments

Collection of template terms

Wednesday, August 12, 2009

Page 74: Semantics Enriched Service Environments

Wednesday, August 12, 2009

Page 75: Semantics Enriched Service Environments

Snapshot ofRosettanetOntology

Semantic Template

RequestPurchaseOrder

PIP3A4

Input_Message

has_notification

PurchaseOrder_Input

has_input

PIP

ISA

PurchaseOrder_Output

Output_Message

notifies_event

has_output

Action_PIP Notification_PIP

Event

ISA

ISA

ISA

ServiceLevelMetaData (SLM)Category= NAICS:ElectronicsProductCategory= DUNS:RAMLocation= Athens,GA

SemanticOperation Template (SOPT1)Action= Rosetta:RequestPurchaseOrderInput= Rosetta:PurchaseOrder_InputOutput= Rosetta:PurchaseOrder_OutputOLP= {Encryption = RSA, ResponseTime< 5 Sec}

SemanticOperation Template (SOPT2)Action= Rosetta:CancelOrderInput= Rosetta:CancelOrder_InputOutput= Rosetta:CancelOrder_OutputOLP= {Encryption = RSA, ResponseTime< 5 Sec}

Legend

Operation Modelreference

Input Modelreference

OutputModelReference

CancelOrder

PIP3A4

CancelOrder_Input

CancelOrder_Output

ISA

ISA

ISAISA

has_outputhas_input

has_output

has_output

Template metadata

Requirement foroperation

Wednesday, August 12, 2009

Semantic templates are often more formal and have many enterprise quality features such as support for policy. So we will deviate a bitfrom Homer Simpson and look at a game manufacturer. In this example, talk about the template.

Page 76: Semantics Enriched Service Environments

So what happens to Homer and his burger?

Wednesday, August 12, 2009

Page 77: Semantics Enriched Service Environments

{

"smashup": {

"device": "iPhone",

"code": {

"title": "Address Finder",

"sketch": {

"service": {

"type": "component",

"resource":

"http://smashmaker.dooduh.com/operation/reversegeocode"

},

service": {

"type": "service-api",

"resource":

"http://smashmaker.dooduh.com/operation/returnAddress",

"endpoint": "http://dooduh.com/returnMickyDee.php",

"method": "GET",

"input-resource":"http://smashmaker.dooduh.com/datatype/address",

"input-param":"address"

},

"service": {

"type": "i-smashlet",

"resource":

"http://smashmaker.dooduh.com/operation/ismashlet",

"source":"http://smashmaker.dooduh.com/datatype/address"

},

"service": {

"type": "o-smashlet",

"resource":

"http://smashmaker.dooduh.com/operation/osmashlet",

"target":"http://smashmaker.dooduh.com/datatype/location-info"

},

"service":{

"type": "component",

"resource": "http://smashmaker.dooduh.com/operation/map"

}

}

}

}

Get current location

Find McD’s near location

Add to map

Wednesday, August 12, 2009

this is a declarative specification of a smart mashup in JSON. We chose JSON because, it is easier to generate this from a Web interface. The current platform does not have an UI as creating a UI like Yahoo Pipes would require a considerable amount of effort, that we hope to pursue once the middleware is stable. Going back to the example , explain the example.

Page 78: Semantics Enriched Service Environments

Modeling an abstract Web service

Wednesday, August 12, 2009

Our approach to composition is generic and does not fundamentally differentiate between SOAP and RESTful services. We ground services to a common model, something we call an abstract Web service.

Page 79: Semantics Enriched Service Environments

A collection of operationsEach operation is a collection of

1. Input2. Output

3. Preconditions4. Effects5. Faults

Wednesday, August 12, 2009

Page 80: Semantics Enriched Service Environments

Composition: Check and Add

Wednesday, August 12, 2009

Page 81: Semantics Enriched Service Environments

Check

Wednesday, August 12, 2009

Precondition of current operation holds, along with the semantics of the available data entails a valid input to the operation

Page 82: Semantics Enriched Service Environments

Does the output of Restaurant service return location?

Wednesday, August 12, 2009

Page 83: Semantics Enriched Service Environments

Add

Wednesday, August 12, 2009

Apply the transition function or the operation to the input and to the status flags of the state and transition to the next state.

Page 84: Semantics Enriched Service Environments

Extract location (transition function) add to composition

Wednesday, August 12, 2009

Page 85: Semantics Enriched Service Environments

plan is a DAG (Directed Acyclic Graph) of operations

Wednesday, August 12, 2009

ie it is a set of operations that given a goal and an initial state, applies the check and add operators until the goal is reached.

Page 86: Semantics Enriched Service Environments

Graph plan

Wednesday, August 12, 2009

Many apporaches can be adopted. We adopt graph plan, since its sound and complete. That means, if there is a valid plan, we will find it.

Page 87: Semantics Enriched Service Environments

What about DATA?

Wednesday, August 12, 2009

Conventional AI planning looks at Preconditions and effects. services have data

Page 88: Semantics Enriched Service Environments

Semantic approach to check

Wednesday, August 12, 2009

AI planning does not mandate anything beyond regular string matching. we go one step further and employ logic based semantic matching / graph based.

Page 89: Semantics Enriched Service Environments

Loops

Wednesday, August 12, 2009

Unique to our approach is data based loop generation. If the data is an enumeration, our planner generates a loop. For example in the iPhone app, each address location is mapped.

Page 90: Semantics Enriched Service Environments

Data Mediation as a service

Wednesday, August 12, 2009

Page 91: Semantics Enriched Service Environments

smashlets

Wednesday, August 12, 2009

Smashlets are a unique category of service that do data mediation. Going by our user driven approach, we allow users to share their mediation scripts using either SAWSDL or SA-REST annotation in APIHut. The task of data mediation is then similar to that of service discovery and check and add. user can specify a smashlet as an iSmashlet (input smashlet) or (oSmashlet) output smashlet. The notion of smashlets is something we verified very recently and is not in the dissertation. However, mediation as a service is discussed.

Page 92: Semantics Enriched Service Environments

7.3. AUTOMATIC WEB SERVICE COMPOSITION August 11, 2009

is used this conversion would require a total of twelve conversion specifications. The advantage

of the intermediate model can be seen when there is another message added along with A. This

will double the number of conversion specifications if direct conversion is used. However if the

intermediate model is used it results only in the addition of two new conversion specifications. It

can be clearly seen that the intermediate model approach is the scalable mediation strategy.

Figure 7.3 we describe the different heterogeneities that can exist between two XML schemas

and how such heterogeneities can effect the mediations as discussed in Nagarajan et al. (48)

Figure 7.3: Different Heterogeneities

106

Wednesday, August 12, 2009

A big thanks to Meena for laying this out so clearly. We intend to publish this as a guide for people wanting to write smashlets. This will give them a clue about what kind of mediation can they do, how easy it is to mediate.

Page 93: Semantics Enriched Service Environments

Wednesday, August 12, 2009

Page 94: Semantics Enriched Service Environments

events

Wednesday, August 12, 2009

In a distributed environment like SOA, with many components events are common place.

Page 95: Semantics Enriched Service Environments

Event of direct consequence

Wednesday, August 12, 2009

We classify events into two types: events of direct consquence. resulting from an action by the provider or the requester. such as event raised when location information is made available in our application. The location info is obtained asynchronously using a delegate protocol and when the info is available, the delegate raises an event.

Page 96: Semantics Enriched Service Environments

Event of indirect consequence

Wednesday, August 12, 2009

something that we did not intend or cause. such as a network outage.

Page 97: Semantics Enriched Service Environments

what matters and what doesn’t?

Wednesday, August 12, 2009

the last part of my talk deals with how we can identify what events matters to our objectives and what dont?

Page 98: Semantics Enriched Service Environments

built over our declarative models

semantic template smashmaker DSL

Wednesday, August 12, 2009

Page 99: Semantics Enriched Service Environments

extends semantic association computation

Wednesday, August 12, 2009

Page 100: Semantics Enriched Service Environments

8.2. DEFINING THE !BPATH QUERY OPERATOR August 11, 2009

Figure 8.1: Identifying Events from semantic Template

discover semantic associations between different entities. The semantic association returned is

represented as a path between the entities in the ontology. There can be more than one association

between two entities. In such cases, the !path operator would return a set of paths. !path is de-

fined as !(ei, ej) = {pei!ej}. For example in the snapshot of the functional ontology in Figure ??,

!path(RequestPurchaseOrder, ShipmentConfirmation) would return the following two associations:

• RequestPurchaseOrder! is_followed_by ! QueryOrderStatus! has_notification !

Notify_Shipment! notifies_event ! ShipmentConfirmation (Ex.1)

• RequestPurchaseOrder ! has_notification ! Notify_Shipment ! notifies_event !

ShipmentConfirmation (Ex.2)

In the context of our work, we seek to identify all events that have semantic associations with the

functional requirements in the functional ontology and non-functional requirements in the non-

functional ontology. Hence we modified the !path operator to query between an entity and a class.

113

Wednesday, August 12, 2009

The enterprise space offers us a rich example. so we bid adieu to Homer’s burger here. however we will bring him back when we walk through the algorithm. Here we have 2 models, one a functional ontology that captures the different operations, and their protocols; the second is a non-functional ontology that captures various QoS metrics. We reusethe popular OWL-QoS coalition ontology for non-functional and RosettaNet for functional. The approach is to find out what the goal is and find the events modeled in the functional ontology related to that goal. Grab the event and look at the non-functional ontology. That will tell us what non-func properties are affected by this event. Check if any of those are in our requirements.

Page 101: Semantics Enriched Service Environments

Path is a collection of vertices and edges in a graph

Wednesday, August 12, 2009

to calculate this association, we extend the rho operator, proposed by Kemafor in 2003.

Page 102: Semantics Enriched Service Environments

!pathQueries an ontology and returns

a set of vertices and edges between two nodes AKA semantic association

Wednesday, August 12, 2009

Page 103: Semantics Enriched Service Environments

bounds and constraints

Wednesday, August 12, 2009

however we need to get some bounds and constraints on rho

Page 104: Semantics Enriched Service Environments

Large graphs - endless search - timeouts

Wednesday, August 12, 2009

bounds because in large graphs we can get into an endless search and that will leave running instances with timeouts

Page 105: Semantics Enriched Service Environments

really not all paths lead to Rome!!!

Wednesday, August 12, 2009

we are not interested in all paths that are within a bound. For example, we want the path to contain atleast one edge that has a labelnotifies_event. otherwise that path tells us nothing about an event, and is not useful for our purpose. similarly there can be many other constraints.

Page 106: Semantics Enriched Service Environments

Extend rho to find all paths between an entity and a class

Wednesday, August 12, 2009

as a first step, we extend rho operator to find paths between an entity and all entities belonging to a class.

Page 107: Semantics Enriched Service Environments

We define a set of classes and relationships of interest

Wednesday, August 12, 2009

For example, we can define a set that has classes of operations, their inputs and the events raised. Such as

Page 108: Semantics Enriched Service Environments

{maptask, coordinate, location, location obtained}{has input, has output, raises delegate}

Wednesday, August 12, 2009

Page 109: Semantics Enriched Service Environments

Path satisfiability: If every node returned is in the set of classes and every relationship is

in the set of relationships.

Wednesday, August 12, 2009

Page 110: Semantics Enriched Service Environments

{fetch location, gpsCoord, address, CLLocationDelegate}{has input, has output, raises delegate}

Wednesday, August 12, 2009

In the context of iPhone, we have a fetch location operation which is of type maptask, CLLocationDelegate the delegate that is raised when the async response is obtained.

Page 111: Semantics Enriched Service Environments

Bounded constrained rho is one where all relationships statisfy the constraint and are bounded

Wednesday, August 12, 2009

Page 112: Semantics Enriched Service Environments

{fetch location, gpsCoord, address, CLLocationDelegate}{has input, has output, raises delegate}

if we add a bound of 4 to this satisfying constraintthen this is a bounded constrained path of bounds 4

Wednesday, August 12, 2009

Page 113: Semantics Enriched Service Environments

Identifying events

Wednesday, August 12, 2009

Page 114: Semantics Enriched Service Environments

get the semantic annotation on the operation

EDC’s

Wednesday, August 12, 2009

the semantic annotation on the operation must be in any of the paths. so that is added to the constraint. Next is to add events that are related to this association. we can fix the bounds and get the events. the events are related to an operation concept by a set of relationships that can be known apriori. we add the relationships. events that belong to the bounded constrained path are events of interest.

Page 115: Semantics Enriched Service Environments

get the concepts from the policy

EIC’s

Wednesday, August 12, 2009

EIC’s are obtained in a similar manner, but by using the non-functional requirements.

Page 116: Semantics Enriched Service Environments

how relevant is an event?

Wednesday, August 12, 2009

not all events have the same relevance. relevance is defined as a function of the path length.

Page 117: Semantics Enriched Service Environments

shortest path over an event path

Wednesday, August 12, 2009

we calculate the relevance by factoring the shortest path we got and the path of an event. This gives the relative importance of the event over the most important event.

Page 118: Semantics Enriched Service Environments

events can affect many metrics

Wednesday, August 12, 2009

an event can affect many metrics. hence we compute the cumulative relevance of an event.

Page 119: Semantics Enriched Service Environments

filtering

Wednesday, August 12, 2009

once this is done, we use normalization to identify events of relevance.

Page 120: Semantics Enriched Service Environments

adjusting importance

Wednesday, August 12, 2009

once this is done, we use normalization to identify events of relevance.

Page 121: Semantics Enriched Service Environments

fixed relevance adjustment

Wednesday, August 12, 2009

where we observe the reaction of the underlying system to an event and evaluate it against it calculated importance. if an event deemed non relevant causes a reaction every time, we add a fixed delta to its over all relevance. similarly we deduct delta for the other case.

Page 122: Semantics Enriched Service Environments

variable/hybrid relevance adjustment

Wednesday, August 12, 2009

after the adjustment see how many events change status from relevant to non-relevant. if many events change, we are way off base. so adjust delta. keep checking this entropy and stop this adjustment if entropy is zero for a certain time interval.

Page 123: Semantics Enriched Service Environments

8.4. EVALUATION August 11, 2009

Figure 8.2: Variation in the percentage of events identified with change in hop count before and

after feedback-based adjustment.

length of 6.

In the next experiment, we study the performance of our system by varying vary the total

number of events that are identified. We varied the total number of events identified from 100 to

900. The performance of our framework is illustrated in Figure 8.3 . It can be seen from Figure

8.3, that the number of iterations taken to reach the stability is more for the fixed approach than the

hybrid scheme for adjustment. In the hybrid approach, the value of the cut-off relevance is reduced

after each feedback iteration, increasing the number of events in the set of relevant events. The

number of iterations taken by each adjustment scheme is almost constant with change in the total

number of events. This is because both relevant set computation and feedback-based adjustment

are independent of the number of events.

Figure 8.3: Studying the performance of hybrid and fixed Adjustment schemes with variation in

the total number of events.

126

8.4. EVALUATION August 11, 2009

Our next experiment studies the performance of the system. In this experiment the percentage

of relevant events to the total number of events is changed and the impact of varying this on the

number iterations is studied. As illustrated in Figure 8.4, the time to reach stability increases with

the increase in the percentage of relevant events. This can be attributed to two reasons: - 1) the

higher percentage of relevant events can significantly reduce the number of events with a feedback

value of 0 in the set of relevant events and 2) as the percentage of relevant events increases, the

chances of more events which are classified as non-relevant by the framework, being actually

relevant goes up. When the number of events with a feedback value of 0 reduces, thei

nfactor in

the adjustment scheme described in Eq. 17, also reduces and this in effect lessens the change in

the cumulative relevance of the events in the non-relevant set after each feedback iteration. The

reduced change in the value of the cumulative relevance coupled with the increased number of

events classified as non-relevant by the framework, being actually relevant, increases the iterations

needed to stabilize the system.

Figure 8.4: Performance of hybrid and fixed adjustment schemes with variation in the percentage

of relevant events

The hybrid approach gives a better performance. However the variation to the cut-off rele-

vance can have an impact on the accuracy of the system. Our next set of experiments study the

accuracy of the system with respect to variations in the number of events and the percentage of

127

Wednesday, August 12, 2009

we compare how many iterations it takes for the system to stabilize in both the approaches. as we can see the hybrid approach since it constantly adjusts almost maintains a constant convergence time and always converges faster. the second experiment measures hte same metrics, this time varying the percentage of relevant events.

Page 124: Semantics Enriched Service Environments

8.4. EVALUATION August 11, 2009

relevant events. The fourth experiment measures the variation in accuracy of both the feedback

Figure 8.5: Variation in the accuracy of feedback schemes with increase in the number of events.

schemes when the total number of events is changed. This is illustrated in Figure 8.5. The drop

in the precision of the hybrid approach with the increase in the total number of events is more

pronounced than that of the fixed approach. The adjustment made to the cutoff relevance in the

hybrid approach is responsible for this. This adjustment makes it possible for an event identified

as non-relevant by the feedback to manager, to be identified again as relevant by the framework.

The following example illustrates an anomaly in the hybrid approach to feedback-based ad-

justment. For the sake of this example, consider an event ei with cumulative relevance of 0.53. Let

the cut-off relevance to be 0.5. Let! be 0.05. The framework chooses ei as a relevant event. After

the first feedback iteration, ei is identified as non-relevant and its relevance is reduced to 0.48, by

Eq. 17. The set of relevant events is computed again. After the computation, let us assume for the

sake of this example, the new cut-off relevance to be 0.52. The adjusted relevance value of ei is

less than the cut-off relevance, making ei a non-relevant event. However, in the hybrid approach

we adjust the value of the cutoff relevance by !, reducing its value to 0.47. Now when the set of

relevant events is computed using this adjusted cutoff value, ei would be identified as relevant by

the framework, though the feedback indicated otherwise. This anomaly affects the accuracy of the

hybrid approach.

128

Wednesday, August 12, 2009

this experiment measures how any irrelavant events we find with both approaches for every relevant event. the flip side to the hybrid apporach is that on an average it finds more irrelvant events intially, as it tries to first find the optimal adjustment value.

Page 125: Semantics Enriched Service Environments

conclusions

Wednesday, August 12, 2009

Page 126: Semantics Enriched Service Environments

Environment

Wednesday, August 12, 2009

Rather than a specific problem, this dissertation outlines what is possible with what is out there today. we have created an environment that facilitates various tasks involved in creating a service oriented ecosystem. we have addressed the problems of discovery mediation composition and execution in a service type agnostic manner.

Page 127: Semantics Enriched Service Environments

Contributions to standards community

Wednesday, August 12, 2009

We have been actively involved in standardization and have contributed in terms of standards (SAWSDL , SA-REST) as well as refernece implentations. By grounding our research in these standards, we have also demonstrated the usefulness and the values of these standards. Our prototypes have always demonstrated comparable performance in terms of scalability and better performance in terms of doing the job at hand.

Page 128: Semantics Enriched Service Environments

marrying old school services with the cool restless RESTful crowd

Wednesday, August 12, 2009

We are one of the first to publish and implement a unifying search engine framework to search both Web APIs as well as conventional services.

Page 129: Semantics Enriched Service Environments

social approach

Wednesday, August 12, 2009

By having user annotated services, sharing nad discovery in the context of mashups we have demonstrated the value of incorporatin gsocial computing in services computing.

Page 130: Semantics Enriched Service Environments

tooling

Wednesday, August 12, 2009

beyond reference implementations, we have released open source tooling that is used in the community along with a bunch of Web based easy to use systems; we will soon release RESTful APIs (need to migrate to cloud) that will make it easier to use.

Page 131: Semantics Enriched Service Environments

Dr. Amit Sheth, for letting me do what I wantfor the most part of my research. This is a priceless

feature of this work environment.

Dr. Lakshmish Ramaswamy for guiding me through my research including my first paper at ICWS 07.

Dr. Kunal Verma for mentoring me and for continued collaboration and friendship

Kaarthik Sivashanmugam for getting me started on Web services

Wednesday, August 12, 2009

there was a technological freedom and allowed me to play with all sorts of areas.

Page 132: Semantics Enriched Service Environments

Wednesday, August 12, 2009

I wish to really thank Topher, Meena, Cartic and Ajith for making sure I stand here today. Ajith was and I hope will con

Page 133: Semantics Enriched Service Environments

Badri Viswanathan Prof. Randy Pausch

Wednesday, August 12, 2009

Also thank two people who were instrumental in this progress who are not here with me. My very good friend Badri who convinced me to start this journey in 2002 and Dr. Randy Paush, from whom I learnt two valuable lessons. Brick walls are there to keep those who dont want it badly out and you beat the reaper not by living long and by living well and by inspiring people to live well.

Page 134: Semantics Enriched Service Environments

Wednesday, August 12, 2009

Page 135: Semantics Enriched Service Environments

and one more thing...

Wednesday, August 12, 2009

Page 136: Semantics Enriched Service Environments

Wednesday, August 12, 2009

Page 137: Semantics Enriched Service Environments

Wednesday, August 12, 2009

Page 138: Semantics Enriched Service Environments

Wednesday, August 12, 2009

Page 139: Semantics Enriched Service Environments

resourceful

many to many model eg: annotation

social contributions

APIHut and RESTful aspects goes towards incorporataion of social web as part of the service Web framework

Used this for lightweight services, same thing can be extended to WSDL / SAWSDL

Wiki based approaches.

and such .. last slide(s)

Wednesday, August 12, 2009

Here is Homer Simpson