Presentation is loading. Please wait.

Presentation is loading. Please wait.

Preeda Rajasekaran, John Miller,Kunal Verma, Amit Sheth LSDIS Lab, University of Georgia Enhancing Web Services Description and Discovery to Facilitate.

Similar presentations


Presentation on theme: "Preeda Rajasekaran, John Miller,Kunal Verma, Amit Sheth LSDIS Lab, University of Georgia Enhancing Web Services Description and Discovery to Facilitate."— Presentation transcript:

1 Preeda Rajasekaran, John Miller,Kunal Verma, Amit Sheth LSDIS Lab, University of Georgia Enhancing Web Services Description and Discovery to Facilitate Composition

2 2 2 Service Oriented Architecture (SOA) for Web Services - Semantics

3 3 3 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

4 4 4 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

5 5 5 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

6 6 6 Service Composition Activity Choreography Web Service Composition

7 7 7 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 + Unless there’s complete verification other exceptions are possible.

8 8 8 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

9 9 9 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

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

11 11 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

12 12 METEOR-S Architecture Front-End Back-End

13 13 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

14 14 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

15 15 Semantic Web Service Designer(contd.)

16 16 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 Service Interfaces Uses jdk1.5 Metadata feature (JSR 175 & JSR 181) Generates

17 17 Annotated Java Source Code - Semantic Concept

18 18 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

19 19 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* provides well defined semantics for operational data 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 or ebXML Core Component catalog/dictionary * Current implementation uses vocabularies The focus of our work is not in developing ontologies for representing functionality/preconditions/effects but to use such ontologies for semantic annotation

20 20 Enhanced UDDI @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 );. Annotated Java Source Code Enhanced UDDI - Publishing Interface

21 21 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

22 22 Discovery Engine <namespace rosetta=“http://lsdis.cs.uga.edu\METEOR-S\Rosetta.owl/> <namespace …. <domain name=Computer and Electronic Product Manufacturing <operation name=“placeOrder “ concept= "rosetta: #RequestPurchaseOrder" > <input name=“order” concept="rosetta: #PurchaseOrderRequest" /> <output name=“orderConfirmation” concept="rosetta: #PurchaseOrderConfirmation" /> <operation…... Service Template Execution Engine uses Ranked Response user Discovery Engine

23 23 Ranked Response uses Abstract BPEL Process Enhanced UDDI Discovery Engine Service Template(s) METEOR-S Back-End Abstract Process Designer (BPWS4J Editor) query Constraint Analyzer Optimized Service Set Process Repository Process Annotation Tool (Eclipse Plug-in) Executable BPEL Process Binder Execution Engine ( BPWS4J ) Design-Time Process Instance Initiation Time

24 24 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.

25 25 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.

26 Questions…

27 Thank You

28 28 WSDL-S Meta-Model

29 29 WSDL-S OWL Ontology

30 30 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

31 31 Where Are We on Web Services? SOAP (Logical Messaging) Interaction WSDL, WS-Policy, UDDI, Inspection Quality of Service Transactions CompositionBPEL4WS XML, Encoding Other protocols Other services Reliable Messaging Security Description

32 32 SOA and 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 Web Services

33 33 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

34 34 WSDL-S (Contd.) Normal WSDL Complex Input Annotated WSDL-S Complex Input:

35 35 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

36 36 OWL-S / WSMO Comparison OWL-SWSMO Profiles used as - Advertisement of service - Requirements of requestor Profile is expressed as two files - Requestor view - Provider view Profile hierarchy -Defined as taxonomy of profiles Taxonomy defined as REAL goals Profile has many non-functional properties of same type WSMO has cardinality restrictions on non- functional properties Defines geographic radius Absent in WSMO Rating property can be interpreted in many ways Interpret rating in terms of performance, reliability,security, etc. Has process- flow represented Offers no modeling for choreography/orchestration Lacks logical formalism of rules Based on rules and goals Absent in OWLPost conditions defines relationship between input and output


Download ppt "Preeda Rajasekaran, John Miller,Kunal Verma, Amit Sheth LSDIS Lab, University of Georgia Enhancing Web Services Description and Discovery to Facilitate."

Similar presentations


Ads by Google