Difference between revisions of "SA-REST"

From Knoesis wiki
Jump to: navigation, search
(Background)
(People)
Line 3: Line 3:
  
 
==People==
 
==People==
* Amit P. Sheth,kno.e.sis center, Wright State University, Dayton, OH.
+
Collaborators in the SA-REST initiative are listed by their affiliations.
* Karthik Gomadam, kno.e.sis center, Wright State University, Dayton, OH.
+
* '''kno.e.sis center, Wright State University, Dayton, OH'''
+
** Amit P. Sheth.
 +
** Karthik Gomadam.
 +
** Ajith Ranabahu
  
 
==Introduction==
 
==Introduction==

Revision as of 22:03, 18 September 2008

SA-REST is a simple and open format for enhancing Web APIs HTML or XHTML. In addition to HTML and XHTML, the SA-REST approach can also be used to enrich Atom, RSS, and arbitrary XML. SA-REST is one of several open microformat standards.

People

Collaborators in the SA-REST initiative are listed by their affiliations.

  • kno.e.sis center, Wright State University, Dayton, OH
    • Amit P. Sheth.
    • Karthik Gomadam.
    • Ajith Ranabahu

Introduction

Services based on the REpresentational State Transfer (REST) paradigm, a lightweight implementation of a service-oriented architecture, have found even greater success than their heavyweight siblings, which are based on the Web Services Description Language (WSDL) and SOAP (Reconciling Web Services and REST Services). By using XML-based messaging, RESTful services can bring together discrete data from different services to create meaningful data sets; mashups such as these are extremely popular today.

Current mashup tools and technologies

Although mashups fully embrace the idea of customization on the Web, read-write is another story. The complexity of application development using javascript makes it hard for average developers to create new mashups and to customize the existing ones. To solve this problem, several companies are developing tools for mashup creation that require little or no programming knowledge. These tools, exemplified by Yahoo! pipes, IBM's QEDwiki and Google's Mashup Editor, facilitate the selection of some number of RESTful Web services or other Web resources and chain them together by piping one service's output into the next service's input while filtering content and making slight format changes.

Limitations

One of the main drawbacks of the current state of the art is the lack of support for interoperability, especially that of data. Since most these deal with services internal to the company that created them (for example, Google Mashup Editor can use Google Maps) or to services that have standard types of outputs such as RSS or Atom (Yahoo! Pipes), the problem of interop does not seem to arise.

Another drawback of the current approach to mashups is the complexity of their development itself. Frameworks like Pipes that do not require any programming have limited capabilities. Google Mashup Editor has a steeper learning curve and can do much more than Yahoo! Pipes. The need to be proficient in languages such as javascript is mandatory to create more complex mashups. We identify two types of this complexity

  • Visual: Complexity arising out of the need to create intuitive visual elements and handle various events relating to them
  • Data: Complexity arising due to heterogeneous in data schemas and formats.

SA-REST in a nutshell

SA-REST is a microformat to add additional meta-data to REST API descriptions in HTML and XHTML. Developers can directly embed meta-data from various models such an ontology, taxonomy or a tag cloud into their API descriptions. The embedded meta-data can be used to improve search (for example: perform faceted search for APIs), data mediation (in conjunction with XML annotation) as well as help in easier integration of services to create mashups.

Background

Researchers in the area of Semantic Web Services have proposed various specifications, the prominent of which are

  • OWL-S
  • WSDL-S
  • WSMO

In 2005, the W3C initiated a charter to create a standard for adding semantics to WSDL descriptions. The WSDL-S specification (submitted by Services Research Lab at kno.e.sis from LSDIS Lab in GA along with IBM) was taken as the primary input for the charter. This led to the standardization of SAWSDL (Semantic Annotation of WSDL and XML Schema). SAWSDL has had a significant impact in the evolution of SA-REST. However, the adoption of a microformat based approach is a key difference between the SAWSDL and SA-REST frameworks. However, it must be noted here that the principles of Schema annotation, lifting and lowering can be directly used from SAWSDL for XML data objects in the RESTful environment.

Usage Scenarios

SA-REST Elements

Processing SA-REST