200 likes | 326 Views
IRS-III: A Platform and Infrastructure for Creating WSMO-based Semantic Web Services John Domingue, Liliana Cabral, Farshad Hakimpour, Denilson Sell, and Enrico Motta. Presentation @ WSMO Workshop, September 2004.
E N D
IRS-III: A Platform and Infrastructure for CreatingWSMO-based Semantic Web Services John Domingue, Liliana Cabral, Farshad Hakimpour, Denilson Sell, and Enrico Motta Presentation @ WSMO Workshop, September 2004
The Internet Reasoning Service is an infrastructure for publishing, locating, executing and composing semantic web services, organized according to the WSMO framework
Design Principles • Compatible with WSMO • Tight integration • Open • Inspectable • Backward compatible • OWL-S import • Research platform for semantic web services
Features of IRS-III (1/2) • Based on Soap messaging standard • Provides Java API for client applications • Provides built-in brokering and service discovery support • Provides capability-centred service invocation
Features of IRS-3 (2/2) • Publishing support for variety of platforms • Java, Lisp, Web Applications, Java Web Services • Enables publication of ‘standard code’ • Provides clever wrappers automatically, which turn code into web services • One-click publishing of web services • Integrated with standard Web Services world • Published code appears as • Semantic web service to IRS • ‘Ordinary’ web service to web service world • IRS-III components are WSMO services • Web service discovery • Web service selection • Mediating input values
IRS-3 Server IRS Publisher Lisp Domain Models IRS Publisher Web Service Specifications+ Registry of Implementors Java IRS Publisher S O A P Java WS Goal Specifications+ SOAP Binding IRS Publisher SOAP IRS Client IRS-3 Framework
Java API Browser Browser Handler Publishing Clients OCML Publisher Handler WSMO Library Invocation Handler WSMX Invocation Client IRS-III Architecture Web Service Publishing Platforms Java Code Web Application SOAP SOAP WS Publisher Registry SOAP Handler IRS-III Server LispWeb Server OWL(-S) OWL(-S) Handler
Publishing Clients Publishing Platform Architecture WS Service Registry ServiceRegistrar SOAP Handler SOAP Service Invoker SOAP IRS-III Server IRS-III Publishing Platform SOAP HTTP Server Web Service 1 Web Service 2 Web Service 3 Invocation Client
IRS-III/WSMO differences • Underlying language OCML • Goals have inputs and outputs • IRS-III broker finds applicable web services via mediators • Used mediator within WS capability • Mediator source = goal • Web services have inputs and outputs ‘inherited’ from goal descriptions • Web service selected via assumption (in capability)
Additional Mediators • GW-Mediator • Transforms goal inputs -> web service inputs • WG-Mediator transforms web service output for goal • GInv-GInv-Mediator • Mediates between two goal invocations
SWS Creation & Usage Steps • Create a goal description • (e.g. exchange-rate-goal) • Add input and output roles • Include role type and soap binding • Create a wg-mediator description • Source = goal • Possibly add a mediation service • Create a web service description • Used-mediator of WS capability = wg-mediator above • Publish code or web service against web service description • Invoke web service by ‘achieve goal’
Defining a Mediation Service • Define a wg-mediator • Source = goal • Mediation-service = goal for mediation service • Mediation goal • Mediation goal input roles are a subset of goal input roles • Define mediator and WS as normal
Exchange Rate Example (goal & mediator) exchange-rate-goal (goal) has-input-role :value has_source_currency :value has_target_currency has-output-role :value has_exchange_rate has_source_currency :type currency has_target_currency :type currency has_exchange_rate :type positive-number exchange-rate-mediator (gw-mediator) has-source-component :value exchange-rate-goal has-mediation-service :value exchange-rate-mediation-goal
Exchange Rate Example (WS & capability) european-exchange-rate-web-service (web-service) has-capability :value european-exchange-rate-capability has-interface :value european-exchange-rate-web-service-interface exchange-rate-capability (capability) used-mediator :value exchange-rate-mediator european-exchange-rate-capability (exchange-rate-capability) has-assumption :value (kappa (?goal) (and (european-currency (wsmo-role-value ?goal 'has_source_currency)) (european-currency (wsmo-role-value ?goal 'has_target_currency))))
Exchange Rate Mediation Service Goal exchange-rate-mediation-goal (goal) has-input-role :value has_source_currency has-output-role :value has_mediated_currency has_source_currency :type currency has_mediated_currency :type fully-named-currency
Invocation Goal Based Invocation Goal -> WG Mediator -> WS/Capability/Used-mediator Instantiate Goal Description Exchange-rate-goal Has-source-currency: us-dollars Has-target-currency: pound Web Service Discovery European-exchange-rate-ws Non-european-exchange-rate-ws European-bank-exchange-rate-ws WS -> Capability -> Assumption expression Invocation Mediation Invoke selected web service European-exchange-rate Mediate input values ‘$’ -> us-dollar Web service selection European-exchange-rate
Summary • IRS-III features • WSMO compatible platform • Contains OWL-S import • One click publishing • Capability based invocation • IRS-III mediators • WS ‘inherit’ input/output roles from goals • Mediation service = goal • Openness • WS discovery, WS selection, input value mediation, orchestration are SWS • Already used by attendees in 2 tutorials and will be shown at tutorial at ISWC