Ashley, Strictly speaking, HATEOAS is a constituent part of the Uniform Interface constraint:
"5.1.5 Uniform Interface ... In order to obtain a uniform interface, multiple architectural constraints are needed to guide the behavior of components. REST is defined by four interface constraints: identification of resources; manipulation of resources through representations; self-descriptive messages; and, hypermedia as the engine of application state. These constraints will be discussed in Section 5.2." [1] Regards, Alan Dean [1] http://roy.gbiv.com/pubs/dissertation/rest_arch_style.htm#sec_5_1_5 On Thu, Dec 4, 2008 at 10:28 AM, Ashley at Metamaxim <[EMAIL PROTECTED]> wrote: > Hi Alan > > Shouldn't "Hypermedia as the engine of application state" be in the list? > > Rgds > Ashley > > Alan Dean wrote: > > Can we be a little scientific about this discussion? > > Roy stipulates [1] the derivation of REST as: > > Style = nil > Style += Client/Server > Style += Stateless > Style += Caching (optional) > Style += Uniform Interface > Style += Layered System > Style += Code on Demand (optional) > > So long as the architecture of your system falls within these > constraints, your system can be considered RESTful. If your system > breaches a constraint, it is isn't RESTful. There is no such thing as > 'partially' RESTful [2] which doesn't mean that you can't relax the > constraints [3] just don't call the resulting system RESTful. > > In my experience, the most frequently breached constraint in > non-trivial systems is statelessness. The next most-often breached > constraint is the uniform interface. This is entirely anecdotal. > > I don't have any numbers, but what is needed to clarify this > discussion is an estimate of the number of systems without breached > constraints. > > I have no idea which side of the current discussion this assists (if any). > > Regards, > Alan Dean > > [1] http://tinyurl.com/56nrp8 (slide 40 onwards) > [2] http://tinyurl.com/5e4ghv > [3] http://tinyurl.com/6kojzx > [see also] http://tinyurl.com/6qgcat > [see also] http://delicious.com/alan.dean/rest+roy.fielding > > >
