Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall Semantic Web Services Semantic Web - Fall 2005 Computer Engineering Department Sharif University of Technology
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall We have Ubiquitous Communications: Internet Universal Data Format:XML Service Interactions:SOAP Formal Service Descriptions:WSDL Publish, Find, Use Services:UDDI UDDI : Universal Description Discovery and Integration WSDL: Web Service Description Language SOAP : Simple Object Access Protocol URIHTMLHTTP UDDIWSDLSOAP
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall Web Service: Amazon Example On the surface
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall Web Service: Amazon Example Response in XML... XML header and HTTP request information... XML data here Request in REST (Representational State Transfer) m/onca/xml?Service=AWSECo mmerceService&Subscription Id=[Your Subscription ID Here]&Operation=ItemSearch &Keywords=[A Keywords String]&SearchIndex=[A Search Index String]&Sort=[A Sort String] Under the surface
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall Web Service: Amazon Example True ASYDZOX0HKBSE New new Y01Y Y USD $2.49 Usually ships in 1-2 business days
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall What is missing? It doesn’t know whether ‘1984’ is a year or the name of a book when you search on Amazon.com Well, I can still use “advanced search” to say ‘1984’ is the title. But actually the book uses alias “Nineteen Eighty-Four” Nineteen Eighty-Four Anyway, I eventually find two offers for the book with my human intelligence, one is USD 2.49, anther is JPY 150. Does USD mean UzbekiStan Dollar? Or even University of San Diego, University of South Dakota, Unified School District …University of San Diego University of South Dakota Thanks God, a friend tells me on the phone that USD is United States Dollar and JPY is Japanese Yen. which one is cheaper? I remembered some websites have currency converter, em, is it CNN, MSN, Yahoo, or Google…? Let’s try them all… Oops! it takes me 2 hours (including the surfing time on CNN news, MSN Chat, MyYahoo! …) to finish the job Mission: find and buy the book 1984 on the web
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall What is missing? Bad news: web service is not machine understandable Even worse news: Web service is not even human understandable -- sometimes It’s hard for agent To understand the result, like what is 1984, USD, JPY To find service, like finding currency converter. To compose services (like link the currency converter to book searching) To decompose service (like also search on half.com, books.com…) Web Web Service Static, human understandable Dynamic, human understandable No Semantics !
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall Review: Semantic Web Web Semantic Web Static, human understandable Static, machine understandable Add meaning (ontology) to the web
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall Semantic Web Service Combine them ! Mechanized support is needed in finding and comparing vendors and their offers. Machine processable semantics of information allows to mechanize these tasks. Mechanized support is needed in dealing with numerous and heterogeneous data formats. Ontology technology is required to define such standards better and to map between them. Mechanized support is needed in dealing with numerous and heterogeneous business logics. Mediation is needed to compensate these differences, allowing partners to cooperate properly. Web Semantic Web Static, human understandable Static, machine understandable Web Service Dynamic, human understandable Semantic Web Service Dynamic, machine understandable
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall OWL-S OWL-S is not a language, its just an ontology (defined in OWL language) It describes services. DAML-S (Rules, FOL?) RDF (Resource Description Framework) RDFS (RDF Schema) DAML+OIL OWL (Ontology) OWL-S (Services)
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall What is OWL-S? Ontology Web Language for Services An OWL ontology/language for (formally) describing properties and capabilities of Web services An approach that draws on many sources Description logic AI planning Workflow Formal process modeling Agents Web services
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall Automation Enabled by OWL-S Web Service Discovery & Selection Find an airline that can fly me to New York, NY Web Service Invocation Book flight tickets from USAirways to arrive May 18 Web Service Composition & Interoperation Arrange taxis, flights and hotel for travel from Santa Barbara to Boston, MA, via New York, NY Web Service Execution Monitoring Has the taxi to Newark Airport been reserved yet?
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall OWL-S: Upper Level
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall OWL-S: Upper Level
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall Service Profile: “What does it do?” High-level characterization/summary of a service Used for Populating service registries A service can have many profiles Automated service discovery Service selection (matchmaking) One can derive: Service advertisements Service requests
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall Service Profile: Functionality Description Functional Specification of what the service provides in terms of parameters, subclassed as: preconditions preconditions inputs inputs outputs outputs effects effects Summarizes the top-level Process
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall Service Profile: Non-Functional Properties
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall Exploiting Profile Hierarchies
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall Process Model: “How does it work?” Process Interpretable description of service provider’s behavior Tells service user how and when to interact (read/write messages) & Process control Ontology of process state; supports status queries (stubbed out at present) Used for: Service invocation, planning/composition, interoperation, monitoring All processes have Inputs, outputs, preconditions and effects Function/dataflow metaphor; action/process metaphor Composite processes Control flow Data flow
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall Service Model / Process Model
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall Atomic Process Example
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall Composite Process Example
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall Service Grounding: “How to access it” Implementation-specific Message formatting, transport mechanisms, protocols, serializations of types Service Model + Grounding give everything needed for using the service Builds upon WSDL
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall OWL-S / WSDL Grounding
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall OWL-S / WSDL Grounding (cont’d)