Semantic Web REST Gateway; SAWADL
Tuesday, October 28th, 2008A number of weeks ago, I began work on the software part of my MSc project. That software recently became feature complete.
The software is a gateway that takes what’s on the current Web and lifts it to the Semantic Web. It does that by means of several mechanisms: protocol handlers (e.g., for HTTP), content type handlers (lifting from various content types to RDF, and lowering from RDF to other content types), XML namespace handlers (lifting of XML documents based on document namespaces), and adaptations that for, e.g., certain REST services or URN namespaces can override the handlers and otherwise modify the requests and responses.
A major part of these adaptations is SAWADL, which is SAWSDL applied to WADL. As far as I know, there has been no previous specification of a format that extends WADL with semantic annotations, so I intend to publish such a specification. (Similar formats have certainly been thought of before, however.) The idea is that content and services on the existing Web can, in such a way, be given semantics (according to Semantic Web standards such as RDF) and also be made more RESTful.
My hope is that this type of software will both simplify usage of services on the Web and make them more powerful, particularly with regards to interoperability. Oh, and I should mention that the gateway itself operates according to REST principles and, for any URI given to it, acts as I believe should be best practice for a RESTful and Semantic Web. E.g., if asked for a HTML document (in the HTTP Accept header), that’s what it will return, and if asked for RDF XML or JSON-format data, it will give you that, for any Web resource.
Ok, I’ve finished my rather late espresso now and the shop’s closing. Anyway, I believe I’ll do some more posting about the software and the ideas behind it. Hopefully, I’ll be able to post the software itself (and its source) on the Web.