Hi-REST, Lo-REST and Everything-in-between-REST

Joe Gregorio

So Don Box has unintentionally coined terms for a couple different kinds of REST.

Lo-REST
Just using GET and POST like HTML does today.
Hi-REST
Using all four methods (GET, PUT, POST and DELETE) like the Atom Publishing Protocol.

By why stop there? How about an intermediate level that just uses three methods?

Somewhere-in-the-middle-REST
Using just three methods (GET, PUT, and DELETE).

And remember, just using one method can still be RESTful if you use it correctly.

Didn't-even-know-I-was-doing-REST
Just using GETs to deliver hypertext. For example, syndication feeds are perfectly RESTful.

Of course, you can go too far with just one method, and start abusing it. That would give you:

Google-web-accelerator-road-rash-REST
Using GETs for things GETs shouldn't be used for. This is a synonym for GETSful.

Now it's possible to use too many methods and not rely on the other aspects of REST such as hypermedia as the engine of application state. In that case you get:

All-verbs-and-no-resources-makes-jack-a-dull-boy-REST
WebDAV.

Now you may look over all these definitions and not see a definition of REST you like. In that case you have:

Rorschach-REST
If you squint your eyes hard enough anything can be made to look like REST.
comments powered by Disqus