Guiding Principles of The Interface
The uniform interface that any REST interface must provide is considered fundamental to the design of any REST service.
- Identification of resources
- Individual resources are identified in requests, for example using URIs in web-based REST systems. The resources themselves are conceptually separate from the representations that are returned to the client. For example, the server does not send its database, but rather, perhaps, some HTML, XML or JSON that represents some database records expressed, for instance, in Swahili and encoded in UTF-8, depending on the details of the request and the server implementation.
- Manipulation of resources through these representations
- When a client holds a representation of a resource, including any metadata attached, it has enough information to modify or delete the resource on the server, provided it has permission to do so.
- Self-descriptive messages
- Each message includes enough information to describe how to process the message. For example, which parser to invoke may be specified by an Internet media type (previously known as a MIME type). Responses also explicitly indicate their cacheability.
- Hypermedia as the engine of application state (aka HATEOAS)
- Clients make state transitions only through actions that are dynamically identified within hypermedia by the server (e.g., by hyperlinks within hypertext). Except for simple fixed entry points to the application, a client does not assume that any particular action is available for any particular resources beyond those described in representations previously received from the server.
Read more about this topic: Representational State Transfer
Famous quotes containing the words guiding principles of, guiding principles, guiding and/or principles:
“For the child whose impulsiveness is indulged, who retains his primitive-discharge mechanisms, is not only an ill-behaved child but a child whose intellectual development is slowed down. No matter how well he is endowed intellectually, if direct action and immediate gratification are the guiding principles of his behavior, there will be less incentive to develop the higher mental processes, to reason, to employ the imagination creatively. . . .”
—Selma H. Fraiberg (20th century)
“For the child whose impulsiveness is indulged, who retains his primitive-discharge mechanisms, is not only an ill-behaved child but a child whose intellectual development is slowed down. No matter how well he is endowed intellectually, if direct action and immediate gratification are the guiding principles of his behavior, there will be less incentive to develop the higher mental processes, to reason, to employ the imagination creatively. . . .”
—Selma H. Fraiberg (20th century)
“We are born to action; and whatever is capable of suggesting and guiding action has power over us from the first.”
—Charles Horton Cooley (18641929)
“In child rearing it would unquestionably be easier if a child were to do something because we say so. The authoritarian method does expedite things, but it does not produce independent functioning. If a child has not mastered the underlying principles of human interactions and merely conforms out of coercion or conditioning, he has no tools to use, no resources to apply in the next situation that confronts him.”
—Elaine Heffner (20th century)