Document 7138013

Download Report

Transcript Document 7138013

Service Publication

  Performed by

Service Provider

   Discover existing interfaces (services) to extend Create service implementations and WSDL based definitions Test , Deploy and Publish the services, in

Service Registries

(e.g.) Enhanced UDDI Semantics   Used to capture the behavior of the published service Enables effective discovery by service requestors 3 3

Service Discovery

 Based on

Service requestor

needs  To find the service providing  Required operations (methods)   Required signature for static/dynamic binding Satisfying the requestors constraints such as QoS, Service locality, etc.

 Semantics  To return relevant services ranked based on semantic match criteria 4 4

Service Invocation

 Service Invocation    Performed by

Service Requestor

after discovering required services Invoke a service using  WSDL Specifications  SOAP Protocol Semantics  Apply transformations when necessary to enable service invocation 5 5

Service Composition

Activity Choreography Web Service Composition

6 6

What does a service do?

To improve service discovery one must describe what a service does •Semantics of service: •Domain, Location and Semantics of operations •Semantics of input/output: -Name, Type and Annotation •Semantics of operation: 1)Classification of operation 2) output = pre ( input )  f ( input , state i ) V ¬ pre ( input )  g ( input, state i ) State i+1 = h ( input, state i ) assert post ( output, state i+1 ) = 1 f() – output function + g() – exception function + h() – transition function 7 + Unless there’s complete verification other exceptions are possible.

7

Semantic Web Services

 SWSA and SWSL Committees   To support the development of Semantic Web Services Architecture and Language, respectively.

To develop standardized ways of conceptualization and organizing semantic information about services.

”  Semantic markup of Service definitions  Enables definitions to be machine processable   Provides clear and unambiguous meaning of service functionality Enhances automation in service discovery and invocation 8 8

METEOR-S

    Uses semantics in the entire life cycle of Semantic Web Services and Processes  Semantics in Annotation, Publication, Discovery and Constraint Driven Composition of Web Services Comprehensive use of semantics (Data,Functional,QoS and Execution) Integrates and co-exists with current industry tools E.g. Eclipse BPWS4J Editor, BPEL4WS Execution Engine Consistent with and builds upon current standards and recommendations 9 9

OWL-S 1.1

 Represents Semantic Web Services via 4 files 10   Each service is created as an instance of service ontology Language: OWL + SWRL 10

WSMO –Web Service Modeling Ontology

 Represents Semantic Web Services by F-logic  F-logic is used to    Describe ontologies Describe rules and goals Uses Mediators to bring about inter-operability 11 11

METEOR-S Architecture

Front-End

12

Back-End

12

METEOR-S Front-End

    

Semantic Web Service Designer

 Developing Semantic Web Services

Semantic Description Generator

 Various types of semantic definitions for a service

Publishing Interface

 Making them available through UDDI registries (Enhanced UDDI)

Enhanced UDDI

 Reorganized UDDI to discover relevant service based on semantics

Discovery Engine

 To discover the relevant services according to requestor requirements 13 13

Semantic Web Service Designer

 Eclipse plug-in to design Semantic Web Services  User Interface for developing semantic web services  Facilitates annotation of source code with semantic information 14 14

Semantic Web Service Designer(contd.)

15 15

Source Code Annotation

 Easy to incorporate appropriate semantic descriptions while developing code  Similar to java documentation  Used to generate semantically enhanced annotated WSDL or WSDL-S  Annotations Generates Service Interfaces  Uses jdk1.5 Metadata feature (JSR 175 & JSR 181) 16 16

Annotated Java Source Code

17

- Semantic Concept

17

Semantic Description Generator

 Input  Annotated Source Code - semantically enrich to enable semantic web service  Output   

WSDL 1.1

annotated with semantic information via extensible tags

WSDL-S

–WSDL 2.0 with semantic annotation

OWL-S

files – Profile, Grounding, Process (basic) and associated WSDL 18 18

WSDL-S

  WSDL-S (WSDL with Semantic Annotation) Mapping Input and Output Message

Parts

to Ontology   XML Schema elements used in Input/Output messages do not reflect the semantics of the data involved in Web Service operation Use of ontologies or standard vocabulary * operational data provides well defined semantics for  Mapping

Operations

to Ontology    Service selection involves discovering appropriate WSDL description and locating an

operation

to invoke

Operations

with same signature could have different functionalities Ontology or vocabulary * depicting functionality is used for annotation  Additional tags to represent pre-conditions and effects/post conditions of each

operation

  Pre-conditions and Post-Conditions are added for each operation Can be optionally used for service discovery and selection

* RosettaNet Business/Technical dictionary

* Current implementation uses vocabularies

or ebXML Core Component catalog/dictionary

The focus of our work is not in developing ontologies for representing functionality/preconditions/effects but to use such ontologies for semantic annotation 19 19

Enhanced UDDI

Annotated Java Source Code

@interface ( domain = "naics:Computer and Electronic Product Manufacturing" , description = "Computer PowerSupply Battery Buy Quote Order Status ", businessService = "Battery Outlet") public interface BatterySupplier { @operation (name = "placeOrder", action = "

rosetta: #RequestPurchaseOrder

" ) @parameters ({ @inParam ( name = "order", element = "

rosetta: #PurchaseOrderRequest

@outParam( name="orderConfirmation", element="

rosetta: #PurchaseOrderConfirmation

" ) }) QuoteConfirmation getQuote (QuoteRequest qRequest );

.

.

.

Enhanced UDDI - Publishing Interface

20 20

Discovery Engine

 Input  Semantic service template built by user /execution engine  Output  List of services ranked by relevance to query  Ranking algorithm employed -Matches operation/input/output semantic concepts of Published Services Vs. service template.

-Employs heuristic based subsumption relations of ontological concepts 21 21

Discovery Engine

user Execution Engine

Service Template

uses .

.

. .

Discovery Engine Ranked Response 22 22

METEOR-S Back-End

Design-Time

uses Abstract Process Designer (BPWS4J Editor) Abstract BPEL Process Process Repository

Process Instance Initiation Time

Execution Engine ( BPWS4J ) Executable BPEL Process

Constraint Analyzer

Optimized Service Set Binder query Enhanced UDDI Discovery Engine Ranked Response Process Annotation Tool (Eclipse Plug-in) Service Template(s) 23 23

Conclusion

   Semantics help to   Enhance discovery of relevant services Reduces manual intervention in service composition Source code annotations   Enable easy means of developing Semantic Web Services Alternative –METEOR-S Web Services Annotation Framework Annotated WSDL/ WSDL-S   Light-weight approach to semantically enhance Web service definitions Minimal effort to gain benefits in discovery and composition.

24 24

References

       [Ankolenkar et al., 2003] The DAML Services Coalition, DAML-S: Web Service Description for the Semantic Web, The First International Semantic Web Conference -ISWC, Italy [METEOR-S, 2002] METEOR-S:Semantic Web Services and Processes, http://swp.semanticweb.org, 2002. [Sivashanmugam et al., 2003] K. Sivashanmugam, K. Verma, A. Sheth, J. Miller, Adding Semantics to Web Services Standards, Proceedings of 1st International Conference of Web Service ICWS, June 2003 (pp. 395-401). [Sheth et al., 1996] A. Sheth, K. Kochut, J. Miller, D. Worah, S. Das, C. Lin, D. Palaniswami, J. Lynch, I. Shvchenko, Supporting State-wide Immunization Tracking using Multi-Paradign WorkflowTechnology, Proceedings of the 22nd Intl. Conf. on Very Large Databases (VLDB96) September 1996 [Roman et al., 2004] D.Roman, U. Keller, H.Lausen, WSMO – Web Service Modeling Ontology (WSMO), DERI Working Draft 14 February 2004, http://www.wsmo.org/2004/d2/v0.1/20040214/ [Verma et al., 2004] K. Verma, K. Sivashanmugam, A. Sheth, A. Patil, S. Oundhakar and J. Miller, METEOR–S WSDI: A Scalable Infrastructure of Registries for Semantic Publication and Discovery of Web Services, Journal of Information Technology and Management (to appear), (2004).

[Aggarwal et al., 2004] R. Aggarwal, K. Verma, J. Miller, W. Milnor, Constraint Driven Web Service Composition in METEOR-S, Proceedings of the IEEE SCC (to appear), 2004.

25 25

Questions…

Thank You

WSDL-S Meta-Model

28 28

WSDL-S OWL Ontology

29 29

Service Oriented Architecture

 Application Integration via loose coupling  Loose coupling between interfaces and implementation  Interfaces universally available for providers and consumers  Implementation is programming language and platform neutral 30 30

Where Are We on Web Services?

BPEL4WS WSDL, WS-Policy, UDDI, Inspection Composition Description Security Reliable Messaging SOAP (Logical Messaging) XML, Encoding Transactions Quality of Service Other protocols Other services Interaction 31 31

SOA and Web services

Web Services

 SOA are realized via Web Services “Web services are a new breed of Web application. They are

self-contained

,

self-describing

, modular applications that can be

published

,

located

, and

invoked

across the Web. Web services perform functions, which can be anything from simple requests to complicated business processes. … Once a Web service is deployed, other applications (and other Web services) can discover and invoke the deployed service.”

IBM web service tutorial

32 32

Limitations of Current Service Discovery

    Keyword/Categorization based search   No stemming of keywords Synonyms of a word return different results Context of use is not captured   E.g. buyTicket- services returned include buying Air Ticket, Raffle Ticket, Movie Ticket etc.

Service discovery requires human filtering according to service needs Returned Services are not ranked according to relevance Dynamic Binding requires automation in discovering relevant services 33 33

WSDL-S (Contd.)

Normal WSDL Complex Input

Annotated WSDL-S Complex Input:

34 34

Discovery Ranking Algorithm

  Rank Weights Domain – 1, Location – 1, Operation concept –2, Output Concept –3, Input Concept - 4 The actual ranking algorithm employed is:  If URI's refer to different ontologies: Rank = 0   If the URI's are the 'same' Rank = 1 If the URI's are concepts:      1. Find the maximum distance of either URI from the deepest common parent.

2. Depending upon the distance - decrease the rank.

3. Find the minimum distance of either URI from the common subclass 4. If common child exists, increase the rank 5. List the properties of both concepts    (a) See the number of properties that match using the property matching algorithm below.

 (b) Depending upon the ratio of the number of properties that match/total properties, decide the rank If uri's are properties:   1. Check the data-type 2. Check the cardinality 3. Give a rank accordingly 35 35

OWL-S / WSMO Comparison

OWL-S Profiles used as - Advertisement of service - Requirements of requestor Profile hierarchy -Defined as taxonomy of profiles Profile has many non-functional properties of same type Defines geographic radius WSMO Profile is expressed as two files - Requestor view - Provider view Taxonomy defined as REAL goals WSMO has cardinality restrictions on non functional properties Absent in WSMO Rating property can be interpreted in many ways Interpret rating in terms of performance, reliability,security, etc.

Has process- flow represented Lacks logical formalism of rules Absent in OWL Offers no modeling for choreography/orchestration Based on rules and goals Post conditions defines relationship between input and output 36 36