It is important to note that REST is a style of software architecture as opposed to a set of standards. As a result, such applications or architectures are sometimes referred to as RESTful or REST-style applications or architectures. REST has proved to be a popular choice for implementing Web Services. For example, the books suggested at the bottom of many of these article pages are dynamically generated, in part, using a REST architecture. It is one of the options for Amazon Web Services
An application or architecture considered RESTful or REST-style is characterized by:
- State and functionality are divided into distributed resources
- Every resource is uniquely addressable using a uniform and minimal set of commands (typically using HTTP commands of GET, POST, PUT, or DELETE over the Internet)
- The protocol is client/server, stateless, layered, and supports caching
This is essentially the architecture of the Internet and helps to explain the popularity and ease-of-use for REST.
More information: Roy Fielding's doctoral dissertation
REST and Web Services
The following figure illustrates using REST for Web Services. Also see Web Services Explained.
Context for Representational State Transfer (REST)
Related Articles for Representational State Transfer (REST)
- Asynchronous Application Service Protocol (ASAP) for SOAP
- Message Service Specification (MSS)
- RosettaNet Business Message
- XML Protocol (XMLP)
- Web Distributed Data Exchange (WDDX)
- Web Services Addressing (WS-Addressing)
- Web Services Eventing (WS-Eventing)
- Web Services Notification (WSN)
- Web Services Reliability (WS-Reliability)
- Web Services Reliable Messaging (WS-ReliableMessaging)
The Savvy Manager's Guide
Douglas K Barry is also the author of a book that explains Web Services, service-oriented architecture, and Cloud Computing in an easy-to-understand, non-technical manner.
Web Services, Service-Oriented Architectures, and Cloud Computing: The Savvy Manager's Guide (Second Edition)
by Douglas K Barry with David Dick
This is a guide for the savvy manager who wants to capitalize on the wave of change that is occurring with Web Services, service-oriented architecture, and—more recently—Cloud Computing. The changes wrought by these technologies will require both a basic grasp of the technologies and an effective way to deal with how these changes will affect the people who build and use the systems in our organizations. This book covers both issues. Managers at all levels of all organizations must be aware of both the changes that we are now seeing and ways to deal with issues created by those changes.