90 likes | 171 Views
Semantic Descriptions for RESTful Services SA-REST by Knoesis Service Research Lab. Tomas Vitvar http://www.vitvar.com. Tomas Vitvar tomas.vitvar@deri.org. WSMO Phone Conference January 09, 2008.
E N D
Semantic Descriptions for RESTful ServicesSA-REST by Knoesis Service Research Lab Tomas Vitvar http://www.vitvar.com Tomas Vitvar tomas.vitvar@deri.org WSMO Phone Conference January 09, 2008
REpresentational State Transfer (REST) services -- great success in web content integration (mashups) • RESTful -- XML messaging and HTTP • no service contracts (when not used in combination with WSDL) • RESTful services -- basis for mashups • hard to create mashups manually • frameworks (mashup editors) supporting mashups development: Yahoo! pipes, IBM QEDwiki, Google Mashup Editor (-) limited to internal company services (-) limited to output of RSS or Atom (-) data integration problem REST, mashups
Two layers • Semantic Model - WSMO, WSMO-Lite, OWL-S, ... • Linking of the semantic model with technology for communication and invocation (e.g. WSMO grounding, SAWSDL annotations) • What we have • WSMO + WSMO grounding for WSDL (D24.2) • WSMO-Lite + SAWSDL for WSDL (D11) Semantics in Services
no service contracts (when not specified using WSDL) • description usually embedded in web pages in HTML • Challenge: how to annotate RESTful services available in HTML -> obvious solution: RDFa, GRDDL (adding meta-data to a human readable text so that a machine can glean semantics) • What SA-REST proposes[1, 2, 3] • any semantic model (but mostly ontology) (encourages OWL or RDF) + RDFa or GRDDL • building on the idea of WSDL-S (and SAWSDL) -- borrowing the modelReference annotation (linking non-semantic and semantic concepts) Representation of RESTful services
SA-REST mechanism (RDFa) • semantic annotations in RDFa in HTML describing the service • Triple: • subject -- the URL at which the service is invoked • predicate -- sarest:input, sarest:output, sarest:operation, sarest:lifting, sarest:lowering, sarest:fault (sarest prefix is the alias for the sarest namespace) • object -- URI or URL of a resource (semantic concept, etc.) depending on the predicate
SA-REST example (RDFa) SA-REST document for a Web service to search for houses on craigslist.com
SA-REST and GRDDL • SA-REST allows to use GRDDL to attach annotations • Basic steps • annotate the HTML page with microformat • add GRDDL profile attribute to <head> (it tells the agent the page is annotated with GRDDL) • link to <head> element pointing to translation document URL • Requirement: the resulting data from GRDDL transformation must conform to the RDF triples described by RDFa annotation.
Conclusions • SA-REST is the first step in using RDFa/GRDDL for enhancing RESTful services with semantics • SA-REST does not preclude any semantic model (in this way it is very similar approach to SAWSDL/WSDL-S) • SA-REST recommends to use standard languages (OWL, RDF), plus RDFa, GRDDL • SA-REST is "just" an annotation mechanism (like SAWSDL) • WSMO-Lite/WSMO can be used as the semantic model on top of SA-REST (would require more specifications) • Relevant work: Semantic Web Pipes (work done by Axel in DERI Galway) • Discussion in W3C SWS-testbed XG
References SA-REST done by Knoesis Service Research Lab:[1] http://knoesis.wright.edu/research/srl/standards/sa-rest/[2] http://dx.doi.org/10.1109/ICOSC.2007.4338383[3] http://doi.ieeecomputersociety.org/10.1109/MIC.2007.133