REST Oriented Architectures (ROA): Taking a resourceful approach to web data

Kurt Cagle

O'Reilly Networks

Copyright © 2008 Kurt Cagle

expand Kurt Cagle

Balisage logo


expand How to cite this paper

REST Oriented Architectures (ROA): Taking a resourceful approach to web data

Balisage: The Markup Conference 2008
August 12 - 15, 2008


Resource Oriented Architectures use the fundamental characteristics of the web itself in order to provide and update content on the web. While much of the philosophy concerning REST has been around since the early 1990s, the tools for turning these philosophies into working systems are only now becoming feasible. The fundamental tenets of ROA — that the web itself is primarily a giant database, that resources are abstractions that can be manifest in different representations, that a query-oriented resource architecture is more robust than a verb-oriented services architecture, and that a common publishing and syndication protocol is necessary to make such an architectural system work — are being adopted increasingly by people who realize that services oriented architecture are not effective at getting data from users or providing it to them in an easy to use way, but that ROA can do precisely that.

Such a shift in perception is necessary but will nonetheless take a while to happen. It's necessary because the amount of information on the web is piling up faster than it can be indexed, and because under the current architectures the cost of developing "editors" for that data is prohibitive compared to the value of that information. It's necessary because the data within organizations is getting more complex than can be readily handled with a name/value approach to application development, and is increasingly contained within non-traditional data sources — Excel spreadsheets or Microsoft Word documents, for instance, or external data streams.

Adoption will take time, however, because such an approach reduces the competitive barrier impedence that corporations can utilize to sell services, because it will take time to educate people in the underlying technologies and because there is a long-standing belief that ROA and SOA systems are incompatible. The rapidity at which companies lined up behind AtomPub, on the other hand, points to the fact that many IT organizations recognize the value to themselves that an AtomPub-type architecture opens up, while the educational curve is frankly true of most technologies — it will happen, slower than its proponents may hope but faster than its critics anticipate.