REST and Web Services: In Theory and in Practice

There are two competing architectural styles employed for building Web services: RESTful services and services based on the WS– ∗ standards (also known as “SOAP Web services”). These two styles have separate follower bases, but many differences between them are ideological rather than factual. In order to promote the healthy growth of Web services research and practice, it is important to distinguish arguments for implementation practices over abstract concepts represented by these styles, carefully evaluating the respective advantages of RESTful and WS– ∗ Web services. Understanding these distinctions is especially critical for the development of enterprise systems, because in this domain, tool vendors have preferred WS– ∗ services to the neglect of RESTful solutions. This chapter evaluates some of the key questions regarding the real and perceived distinctions between these two styles of Web services. It analyzes how the current tools for building RESTful Web services embody the principles of REST. Finally, it presents select open research questions to further the growth of RESTful Web services.

[1]  Marc Hadley,et al.  Exploring hypermedia support in Jersey , 2010, WS-REST '10.

[2]  Roy T. Fielding,et al.  Hypertext Transfer Protocol - HTTP/1.0 , 1996, RFC.

[3]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[4]  Lawrence C. Stewart,et al.  HTTP Authentication: Basic and Digest Access Authentication , 1999 .

[5]  Haim Kilov From semantic to object-oriented data modeling , 1990, Systems Integration '90. Proceedings of the First International Conference on Systems Integration.

[6]  Raul Santos Leiva Web service security: WSS , 2010 .

[7]  Apostolos V. Zarras,et al.  A Comparison Framework for Middleware Infrastructures , 2004, J. Object Technol..

[8]  Roy Fielding,et al.  Architectural Styles and the Design of Network-based Software Architectures"; Doctoral dissertation , 2000 .

[9]  Sam Ruby,et al.  RESTful Web Services , 2007 .

[10]  E. James Whitehead,et al.  HTTP Extensions for Distributed Authoring - WEBDAV , 1999, RFC.

[11]  Subbarao Kambhampati,et al.  A snapshot of public web services , 2005, SGMD.

[12]  Cesare Pautasso,et al.  First International Workshop on RESTful Design (WS-REST 2010) , 2010, WS-REST '10.

[13]  Hagen Overdick Towards Resource-Oriented BPEL , 2007, WEWST.

[14]  Michael J. Feeley,et al.  The Measured Access Characteristics of World-Wide-Web Client Proxy Caches , 1997, USENIX Symposium on Internet Technologies and Systems.

[15]  Ralph Johnson,et al.  Non-compliant and Proud: A Case Study of HTTP Compliance , 2008 .

[16]  Cesare Pautasso,et al.  Restful web services vs. "big"' web services: making the right architectural decision , 2008, WWW.

[17]  Dave Thomas,et al.  Practice , 2004, IEEE Softw..

[18]  Paul Clements,et al.  Software architecture in practice , 1999, SEI series in software engineering.

[19]  Marcel-Catalin Rosu,et al.  A survey of public web services , 2004, WWW Alt. '04.

[20]  Phillip Hallam-Baker,et al.  Web services security: soap message security , 2003 .

[21]  Paul Prescod Roots of the REST/SOAP Debate , 2002, Extreme Markup Languages®.

[22]  Jesse James Garrett Ajax: A New Approach to Web Applications , 2007 .

[23]  Steve Vinoski Serendipitous Reuse , 2008, IEEE Internet Computing.