Sunday, March 30, 2008

Understanding REST - a disgrace of Wikipedia definition

[Note 22-Feb-2009] This entry is based on the wikipedia page from March 2008 (http://en.wikipedia.org/w/index.php?title=Representational_State_Transfer&oldid=200824060). Since then there have been 300+ changes to this page and it looks 100% alright to me now :). Thanks for the comment B.C.!

In my honest belief, the following page on REST in wikipedia is a shame for otherwise often good source of information:

http://en.wikipedia.org/wiki/Restful

As abstracting with credit is allowed, for the own reference, providing the abstract from the

"Principled Design of the Modern Web Architecture" ROY T. FIELDING, Day Software and RICHARD N. TAYLOR, University of California, Irvine

REST is a coordinated set of architectural constraints that attempts to minimize latency and network communication, while at the same time maximizing the independence and scalability of component implementations. This is achieved by placing constraints on connector semantics, where other styles have focused on component semantics. REST enables the caching and reuse of interactions, dynamic substitutability of components, and processing of actions by intermediaries, in order to meet the needs of an Internet-scale distributed hypermedia system. The first edition of REST was developed between October 1994 and August 1995, primarily as a means for communicating Web concepts while developing the HTTP/1.0 specification and the initial HTTP/1.1 proposal. It was iteratively improved over the next five years and applied to various revisions and extensions of the Web protocol standards. REST was originally referred to as the “HTTP object model,” but that name often led to its misinterpretation as the implementation model of an HTTP server. The name “Representational State Transfer” is intended to evoke an image of how a well-designed Web application behaves: a network of Web pages forms a virtual state machine, allowing a user to progress through the application by selecting a link or submitting a short data-entry form, with each action resulting in a transition to the next state of the application by transferring a representation of that state to the user.

2 comments:

B.C. said...

If your excerpt above came originally from Wikipedia--what's the problem with it? I thought it was a pretty good definition.

stan said...

Thanks for the comment - that's a curse of writing static entries against dynamic wikipedia articles!
I see since then they have got around 300 changes on the page for REST and now it is very corresponding to the Fielding's paper plus gives very actual technology context on REST.
The content at the time (http://en.wikipedia.org/w/index.php?title=Representational_State_Transfer&oldid=200824060) was far from what it is now. Stan.