W3C home > Mailing lists > Public > www-tag@w3.org > April 2004

RE: HTTP Methods

From: Thompson, Bryan B. <BRYAN.B.THOMPSON@saic.com>
Date: Wed, 14 Apr 2004 10:01:49 -0400
Message-Id: <D24D16A6707B0A4B9EF084299CE99B390D6BB61D@mcl-its-exs02.mail.saic.com>
To: "Roy T. Fielding" <fielding@gbiv.com>, "Thompson, Bryan B." <BRYAN.B.THOMPSON@saic.com>
Cc: www-tag@w3.org

Roy,

Could you expand on your comment concerning creating an implementation
dependency between the client and the server?

You wrote:

> However, personally, I would avoid use of anything other than id's, since
> manipulation of the XML data tree will create an implementation dependency
> between client and server.

The original message is below.

Thanks,

-bryan

-----Original Message-----
From: Roy T. Fielding [mailto:fielding@gbiv.com] 
Sent: Friday, February 27, 2004 11:55 PM
To: Thompson, Bryan B.
Cc: www-tag@w3.org
Subject: Re: HTTP Methods


> Any comment on combining the use of the XPointer Framework with the 
> HTTP "Range" request header?  A server that understands the "xpointer" 
> range-unit would process the XPointer expression (in the Range header) 
> and send back the addressed sub-resources as a multipart MIME type.

Umm, yuck!  But at least that is compliant with HTTP.  Range is very hard to
do right, and almost always breaks across proxies. Generally speaking, it
should only be used for byte ranges, and only then for the sake of finishing
incomplete downloads or working around limited client buffers.

> The use of the HTTP "Range:" request header seems to be the key to 
> having the server process the XPointer expression since, as you point 
> out, the fragment identifier is not even transmitted in the HTTP 
> request.
>
> [1] http://wiki.cognitiveweb.org/XPointerAndHttpRange (rough draft)

I can't access that directly, but if I go to

      http://cweb.sourceforge.net/cgi-bin/moin.cgi/HttpRangeAndXPointer

it redirects to the right content. *shrug*

A better solution is to let the server define its own URI space such that it
gives the client a license to dig deeper.  E.g., a link header field like

    Link: <http://example.com/big/resource;xpf=>; rel="xpointable"

tells the client the URI

    http://example.com/big/resource;xpf=xpath(//item/3)

can be constructed to identify the resource that is described by that xpath.
However, personally, I would avoid use of anything other than id's, since
manipulation of the XML data tree will create an implementation dependency
between client and server.

....Roy
Received on Wednesday, 14 April 2004 10:01:55 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Thursday, 26 April 2012 12:47:25 GMT