Semantic Web services Chankyu Park 08/04/2005
Agenda Next Generation Web Tutorial of Ontology for SWS Concept of SWS OWL-S ontology OWL-S Development Tools Other efforts to SWS
Next Generation Web Semantic Web Services Semantic Web TechniquesWeb Services Techniques XML Automated Knowledge Bases Rules (RuleML) Ontologies (OWL) Databases (SQL, XQuery, RDF) Two interwoven aspects: Program: Web Services Data: Semantic Web API’s on Web (WSDL, SOAP) First Generation Web
SWSI Language effort, on top of Current WS Standards Stack Wire ProtocolService Description, BPML The Semantic Web Services Initiative (SWSI) is an ad hoc initiative of academic and industrial researchers, many of which are involved in DARPA and EU funded research projects.
Tutorial of Ontology for SWS “ An ontology is a specification of a conceptualization. ” Ontologies consists of: -Concepts -Relations (between concepts) -Instances (specific, non generic concepts) -Axioms (knowledge using logics) Used for: -Defining knowledge -Communication -Knowledge reuse -A reasoner can be used to make inferences about concepts in ontologies
Ontology Example Shape CircleSquar e radius concept relationship subClassOf property
OWL Web Ontology Language XML-based language for representing ontologies W3C recommendation Build on RDF and RDFS
XML representation of OWL
Semantic Web Services Web services were designed to be loosely coupled and inter-operable Traditional Web services require a huge amount of human interaction for integration of multiple applications –Because it requires an understanding of data and functions of the involved entities Semantic Web technologies add annotations to data and functions using ontologies
Semantic Web Services This helps create a machine processable information which can be used for automated service publication, service discovery, service composition, negotiation and execution as primary goals In other words: Semantic Web Services = Web Services + Semantic Web Technology
Traditional Web Service Traditional Web Service Input ( name=isbn, type=int) Input ( name=title, type=String) Input ( name=year, type=int) Output ( name=price, type=float) getPrice
Semantic Web Service Semantic Web Service getPrice Domain Ontology Functional Ontology Operation = Ont#getPrice Output (name=price, type=Ont#BookPrice) Input(name=year, type=Ont#PrintYear) Input (name=isbn, type=Ont#ISBN) Input ( name=title, type=Ont#BookTitle) Location=Georgia Category=Book Stores Supply Time=2 days QoS Ontology Availability = 0.9
OWL-S Ontology OWL-S is an OWL ontology to describe Web services Formerly called DAML_S by DAML Group W3C Note OWL-S leverages on OWL to –Support capability based discovery of Web services –Support automatic composition of Web Services –Support automatic invocation of Web services –OWL-S provides a semantic layer over Web services standards OWL-S relies on WSDL for Web service invocation (see Grounding) OWL-s Expands UDDI for Web service discovery (OWL- S/UDDI mapping)
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
Service Profile (What does it do?) High-level characterization/summary of a service –“Black box” view: Information needed to find and select a service – IOPE: Inputs, outputs, preconditions, effects –“Binding rules” for inputs, outputs –“Roles” involved Can employ logical rules Analogous to procedure header, DB schema
OWL-S IOPEs Example Input: –ItemDescription (several forms), PriceRange, AcctName, Passwd, CreditCard#, Shipping-address, Input usage rule: –Exists(Acct) => Defined (CreditCard#, Shipping- Address) Precondition: –Exists(Acct) | CanCreate(Acct) Output: –‘Succeed’ + Receipt | ‘Cancel’ | ‘Fail’ Effect: –‘Succeed’ ShippingOrderPlaced
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 Protocol Specification Abstract Messages Capability specification General features of the Service Quality of Service Classification in Service taxonomies
Service Model (How does it work?) Interpretable description of service provider’s behavior Tells service user how and when to interact (read/write messages) “Glass box” view Detailed characterization of what it does Can employ logical rules Analogous to procedure body (but abstract) Used for: –Service invocation, planning/composition, interoperation, monitoring
OWL-S Service Model
Composite Process Example book flight service customer name flight numbers dates credit card no.... confirmation no.... failure notification errror information … ? book hotel service confirmation no. dates room type credit card no.... confirmation no.... failure notification … ? book car service customer name location car type dates credit card no.... confirmation no.... failure notification … ? ? Input & Preconditions Output & Effects
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
OWL-S/WSDL Grounding
Service Grounding (How is it used?) Implementation-specific Message formatting, transport mechanisms, protocols, serializations of types Service Model + Grounding give everything needed for using the service Examples: HTTP forms, SOAP, KQML, CORBA IDL, OAA ICL, Java RMI
Grounding Example Transport: Secure HTTP Protocol: HTTP Forms Address: Type Serializations –ItemDescription (keywords): Set of DAML literals –PriceRange: pair of monetary units, ISO 5678 –CreditCard: mat
OWL-S Development Tools WSDL2OWLS. Available at OWL-S/UDDI matchmaker Available at er. Complete implementation of OWL-S 1.1 API
Other efforts to SWS Web Service Modeling Framework (WSML)- Web Service Modeling Ontology (WSMO) Internet Reasoning Service (IRS-II) and (IRS-III) are Semantic Web Services Framework, developed by KMI, …
References OWL-S The main repository of papers on OWL-S is at archive.html archive.html The main source of information on OWL-S is the Web site W3C reference