SA-REST and (S)Mashups: Adding Semantics to Restful Services
Total Page:16
File Type:pdf, Size:1020Kb
Wright State University CORE Scholar The Ohio Center of Excellence in Knowledge- Kno.e.sis Publications Enabled Computing (Kno.e.sis) 9-2007 SA-REST and (S)mashups: Adding Semantics to RESTful Services Jonathan Lathem Karthik Gomadam Wright State University - Main Campus Amit P. Sheth Wright State University - Main Campus, [email protected] Follow this and additional works at: https://corescholar.libraries.wright.edu/knoesis Part of the Bioinformatics Commons, Communication Technology and New Media Commons, Databases and Information Systems Commons, OS and Networks Commons, and the Science and Technology Studies Commons Repository Citation Lathem, J., Gomadam, K., & Sheth, A. P. (2007). SA-REST and (S)mashups: Adding Semantics to RESTful Services. Proceedings of the International Conference on Semantic Computing, 469-476. https://corescholar.libraries.wright.edu/knoesis/707 This Conference Proceeding is brought to you for free and open access by the The Ohio Center of Excellence in Knowledge-Enabled Computing (Kno.e.sis) at CORE Scholar. It has been accepted for inclusion in Kno.e.sis Publications by an authorized administrator of CORE Scholar. For more information, please contact library- [email protected]. SA-REST and (S)mashups : Adding Semantics to RESTful Services Jon Lathem Karthik Gomadam and Amit P. Sheth Department of Computer Science kno.e.sis center University of Georgia Department of Computer Science and Engineering Athens, GA, USA Wright State University, Dayton, OH [email protected] fgomadam-rajagopal.2, [email protected] Abstract of a read/write web. The reason for this is that it is diffi- cult for the average user with technical training to create a The evolution of the Web 2.0 phenomenon has led to mashup. Typically there is a lot of programming that goes the increased adoption of the RESTful services paradigm. into creating a mashup and the user would need to not only RESTful services often take the form of RSS/Atom feeds and understand how to write code but understand the API of all AJAX based light weight services. The XML based messag- the services that need to be included in the mashup. This is ing paradigm of RESTful services has made it possible to a time consuming task and impossible for the typical web compose various services together. Such compositions of user. To solve this problem, leading companies are now ac- RESTful services is widely referred to as Mashups. In this tively developing tools that can be used to create a mashup paper, we outline the limitations in current approaches to and require little to no programming knowledge form the creating mashups. We address these limitations by propos- user. These tools typically facilitate a way to select some ing a framework called as SA-REST. SA-REST adds seman- number of RESTful web services or other web resource and tics to RESTful services. Our proposed framework builds chain them together by piping one services output into the upon the original ideas in WSDL-S, our W3C submission, next services input while filtering content and making slight which was subsequently adapted for Semantic Annotation of format changes. Three of the leaders in this field are Yahoo! WSDL (SAWSDL), now a W3C proposed recommendation. Pipes, Google Mashup Editor, and IBMs QEDWiki. We demonstrate use of microformats for semantic annota- The drawback of these tools is that they are limited in tion of RESTful services and then the use of such semanti- the number of services that they can interact with. These cally enabled services with better support for interoperabil- tools normally deal with services that are internal to the ity for creating dynamic mashups called SMashups. company that the tool was developed from (Google Mashup Editor can use Google Maps) or to services that have stan- dard types of outputs such as RSS or ATOM. This leaves 1. Introduction out a vast number of services that cannot be utilized via these tools for the creation of mashups. This is an under- The evolution of the Web 2.0 phenomenon has led to standable limitation because it would be extremely difficult the increased adoption of the RESTful services paradigm. to work with a service whose inputs and outputs are in a RESTful services often take the form of RSS/Atom feeds nonstandard form. This makes it difficult to address issues and AJAX based light weight services. The XML based related to data mediation. It is true that that if one of these messaging paradigm of RESTful services has made it pos- companies wanted to add a new service that did not have a sible to bring discrete data from services together and cre- standard output or was not an internal service to their tool, ate more meaningful datasets. This is being referred to as it would be possible by making modifications to the exist- building a mashup. A mashup is the creation of a new ser- ing tooling in order to incorporate the interface of the new vice from two or more existing services. In other words, service. However, this is not a scalable solution due to the a mashup can be described as a composition of RESTful rate at which new services are coming online. The need to services. change the tool itself also removes the ideal of a customiz- Mashups really embrace the idea of a customizable web. able web. A user is most likely not going to want to browse Craigs We propose to address the limitations in both complex- list and look it the map for each location he finds on the ity and scalability, by adding semantics to the descriptions list. On the other hand mashups do not embrace the idea of RESTful services. The proposed SA-REST framework is a derivative of SAWSDL [11], the W3C PR for adding se- 3. SA-REST mantics to WSDL. SA-REST borrows the idea of grounding service descriptions to semantic meta-models using model- In this section we present the SA-REST approach to add reference annotations. In this paper we discuss adding an- semantics to RESTful Web services. Adding semantic an- notations using RDFa and GRDDL. SA-REST captures an- notations to a RESTful web service yields many benefits notations for service inputs, outputs, operations and faults. and alleviates many of problems associated with RESTful In addition to these elements, SAREST also captures the web services. In this section, we discuss why, what and how type of the request. The SA-REST approach is discussed in of adding semantic annotation to RESTful services. We call detail in section 3. this idea Semantic Annotation of RESTful web services or We illustrate the role of SA-REST in the context of a SA-REST. user-friendly, customizable and scalable approach to creat- There have been a number of efforts to add formal se- ing mashups, called Semantic Mashups (Smashups). The mantics to traditional Web services including OWL-S [8], idea behind creating Smashups is to exploit the explicit se- WSMO [12] and WSDL-S [9]. Driven primarily by the mantics modeled in SA-REST to demonstrate the use of se- W3C member input of our METEOR-S research group mantics in the creation and the customization of mashups. at LSDIS lab and Kno.e.sis Center, and in association Rest of the paper is organized as follows. In section 2, we with IBM [9], a W3C work group has recently released a motivate the need for our approach by illustrating the lim- candidate recommendation called Semantic Annotation of itations of the current mashups. We discuss the SA-REST WSDL or SAWSDL. We have developed SA-REST from framework in Section 3. Section 4 discusses creation of many of the ideas that were first presented in WSDL-S and mashups using the SA-REST framework. We present our then adapted in SAWSDL. The idea behind SAWSDL is conclusions and future work in Section 5. to add semantic annotations to the WSDL that describes service. The basic annotations that SAWSDL adds are in- puts, outputs, operation, interfaces, and faults. In terms of 2. Limitations in Current Mashups SAWSDL, semantic annotations are simply bits of xml that are embedded as properties in the WSDL. These properties are URIs of ontology objects. This means that the annota- tion of a concept in SAWSDL or SA-REST is a way to tie In this section we outline the limitations in current together the concept out of the SAWSDL or SA-REST to a mashups. We consider the housing maps mashup as an ex- class that exists in ontology. An ontology is a conceptual- ample [5]. The housing maps mashup integrates real estate ization of a domain represented in terms of concepts and the data from Craigslist.com [1] service and the location infor- relationships between those concepts. Furthermore, it em- mation from the Google map [3] web service. Now, it is bodies an agreement among its users and provides a com- conceivable that for a given geography, there can be other mon nomenclature to improve interoperability. Since the alternate real estate service providers along with other map adoptions of OWL (the Web Ontology Language,[6]) and service providers. In the current housing maps application, RDF (Resource Description Framework, [7]) with the as- it is not possible for users to change either the real estate ser- sociated language of RDFS for RDF schemas as languages vice (Craigslist) or the map service (Google maps). Further for ontology representation and semantic Web data, ontolo- it is also not possible for an user to to integrate a service that gies are most frequently represented in OWL or RDF. As provides information about the traffic in a given locality, in with SAWSDL, SA-REST does not enforce the choice of a this application.