users@jersey.java.net

Re: [Jersey] Re: Hypermedia clarification

From: Roy T. Fielding <fielding_at_gbiv.com>
Date: Mon, 15 Feb 2010 14:26:43 -0800

On Feb 15, 2010, at 1:40 PM, Marc Hadley wrote:

> On Feb 15, 2010, at 4:26 PM, Roy T. Fielding wrote:
>>>
>>> I'm hoping you could clear up a point in a discussion we're having on the Jersey users list.
>>>
>>> When the REST architectural style is mapped to HTTP, do the terms hypermedia and hypertext encompass:
>>>
>>> (i) HTTP headers and the entity body
>>> (ii) Just the entity body
>>> (iii) Something else (please explain)
>>
>> A representation consists of representation data (body decoded)
>> and representation metadata (some of the headers).
>>
> Thanks for clearing that up. Just to be 100% certain that we understand: would you include the Location, Content-Location and (once standardized) Link headers in the representation metadata ?

Link is part of the representation metadata (that's its whole reason to exist).
Content-Location is representation metadata for the URI of this content.
Location is a response header used as part of the redirect aspects of HTTP.

All three are data for describing transitions from here to there, when used
according to the HTTP standards, and thus are part of the hypertext as far
as REST is concerned. This is necessary for the support of hypermedia
representations in a format that does not allow embedded links or overlays,
and for a lot of other reasons that I have no time to describe right now.

....Roy