I have been trying to understand the differences between REST and ROA. It seems they are useful only when they are coupled together. Specifically, they complement each other in terms the ground rules they lay down!!
REST advocates uniform interface for the system. ROA divides the entire system into resources. Everything in the system is a resource and accessed using a similar interface.
The following idea might be a little far-fetched or I might be completely wrong in understanding ROA/REST and UNIX file system!!
REST/ROA concepts might be new to enterprise application design. However, I feel such concepts have been in use in system design; though they are not referred to by the same name.
I feel UNIX file system is a good example of application of REST/ROA principles. Everything in the file system is a file any device, hard disk, console etc. are considered as files. So in the file system, file is the resource and access/usage to this resource is consistent across. Most of the operations that can be performed with a regular file can be done with any type of file.