REST Web Service Description for Graph-Based Service Discovery

Unlike WSDL/SOAP based services, REST services lack a widely accepted service description since it increases the coupling between clients and servers, hampering service evolution. In practice, REST services are described through informal, ad-hoc and semi-structured documents, often written in natural language, which worsens the level of coupling. Most of the few REST service descriptions currently proposed follow an operation-centric approach with unclear additional benefits for developers and consumers. We propose a service description model focused on hypermedia allowing the generation of a graph that captures state transitions in an activity layer; we also capture resource, transition, and response semantics in a semantic layer. Using graph queries we traverse the graph and facilitate service discovery and composition. The service model was implemented as Microdata-based annotations, and a JSON description. A prototype was developed using Neo4J, and a set of real Web APIs was chosen to illustrate our approach.

[1]  Reto Krummenacher,et al.  Towards Linked Open Services and Processes , 2010, FIS.

[2]  Amit P. Sheth,et al.  SA-REST: Semantically Interoperable and Easier-to-Use Services and Mashups , 2007, IEEE Internet Computing.

[3]  Marc J. Hadley,et al.  Web application description language (WADL) , 2006 .

[4]  Amit P. Sheth,et al.  SA-REST and (S)mashups : Adding Semantics to RESTful Services , 2007, International Conference on Semantic Computing (ICSC 2007).

[5]  Steffen Stadtmüller,et al.  Data-Fu: a language and an interpreter for interaction with read/write linked data , 2013, WWW.

[6]  Rik Van de Walle,et al.  Description and interaction of RESTful services for automatic discovery and execution , 2011 .

[7]  Cesare Pautasso,et al.  Composing RESTful Services with JOpera , 2009, SC@TOOLS.

[8]  Ingo Weber,et al.  Facilitating Enterprise Service Discovery for Non-technical Business Users , 2010, ICSOC Workshops.

[9]  R. Fielding,et al.  Architectural Styles and the Design of Network-based Software Architectures (CHAPTER 5) , 2000 .

[10]  Ben Adida hGRDDL: Bridging microformats and RDFa , 2008, J. Web Semant..

[11]  Tomas Vitvar,et al.  hRESTS: An HTML Microformat for Describing RESTful Web Services , 2008, 2008 IEEE/WIC/ACM International Conference on Web Intelligence and Intelligent Agent Technology.

[12]  John Domingue,et al.  Automated Information Extraction from Web APIs Documentation , 2012, WISE.

[13]  Erik Wilde,et al.  RESTler: crawling RESTful services , 2010, WWW '10.

[14]  Jacek Kopecky,et al.  iServe: a linked services publishing platform , 2010 .

[15]  Tantek Çelik,et al.  Microformats: a pragmatic path to the semantic web , 2006, WWW '06.

[16]  Eleni Stroulia,et al.  Web service matching for RESTful web services , 2011, 2011 13th IEEE International Symposium on Web Systems Evolution (WSE).

[17]  Craig A. Knoblock,et al.  Semi-Automatically Modeling Web APIs to Create Linked APIs , 2012, ESWC 2012.

[18]  Roberto Chinnici,et al.  Web Services Description Language (WSDL) Version 2.0 Part 1: Core Language , 2007 .

[19]  Christian Gütl,et al.  Hydra: A Vocabulary for Hypermedia-Driven Web APIs , 2013, LDOW.

[20]  Yong-Ju Lee Semantic-Based Data Mashups Using Hierarchical Clustering and Pattern Analysis Methods , 2014, J. Inf. Sci. Eng..

[21]  M. S. Rajasree,et al.  RESTDoc: Describe, Discover and Compose RESTful Semantic Web Services using Annotated Documentations , 2013 .

[22]  Simon Mayer,et al.  An extensible discovery service for smart things , 2011, WoT '11.

[23]  Erik Wilde,et al.  Hypermedia-Driven RESTful Service Composition , 2010, ICSOC Workshops.

[24]  Steven Pemberton,et al.  RDFa in XHTML: Syntax and Processing A collection of attributes and processing rules for extending XHTML to support RDF , 2008 .

[25]  Johanna Völker,et al.  Deployment of RDFa, Microdata, and Microformats on the Web - A Quantitative Analysis , 2013, International Semantic Web Conference.

[26]  Frank Leymann,et al.  Service Composition for REST , 2014, 2014 IEEE 18th International Enterprise Distributed Object Computing Conference.

[27]  Matthias Klusch Service Discovery , 2014, Encyclopedia of Social Network Analysis and Mining.

[28]  René Peinl,et al.  Performance of graph query languages: comparison of cypher, gremlin and native access in Neo4j , 2013, EDBT '13.

[29]  Cesare Pautasso,et al.  Control-Flow Patterns for Decentralized RESTful Service Composition , 2013, TWEB.