Subject: Re: Fragments in "Location" field

From: "Roy T. Fielding" <[email-masked]>
Date: Fri, 06 Aug 1999 17:01:07 -0700

>Something's come up in the CGI RFC discussion, and I'm hoping
>you can clarify.
>
>RFC 2396 contains the following bits:
>
>> absoluteURI   = scheme ":" ( hier_part | opaque_part )
>	:
>> URI-reference = [ absoluteURI | relativeURI ] [ "#" fragment ]
>
>but 2616 says:
>
>> Location       = "Location" ":" absoluteURI
>
>Does this mean that "Location" values cannot include fragments?

Yes.  Oops.  draft-bos-http-redirect-00.txt seems to assume a fragment
is allowed in redirects.  The HTTP syntax should be

   Location       = "Location" ":" absoluteURI [ "#" fragment ]

The CGI syntax also allows relative references, since those are interpreted
internally by the server (unlike HTTP).

....Roy

---

From: "Larry Masinter" <[email-masked]>
Date: Fri, 6 Aug 1999 17:37:25 PDT

> The HTTP syntax should be
> 

I suppose this belongs in the errata, although we might need to explain
the circumstances under which a fragment identifier is appropriate.

---

From: "Scott Lawrence" <[email-masked]>
Date: Mon, 9 Aug 1999 09:04:46 -0400

> From: Larry Masinter

I'll update the errata page.

When would it not be appropriate? I can't think of a case... but then it's
Monday morning.

---

From: "Larry Masinter" <[email-masked]>
Date: Mon, 9 Aug 1999 08:40:09 PDT

> When would it not be appropriate? I can't think of a case... but then it's

Well, let's see. 

- I don't think it's appropriate to have a fragment
  with a 201 Created response, e.g., to a POST.

- I don't know what it would mean to return a fragment with a 300
Multiple Choices, since the choice decision is intended to be made
on resource characteristics and not fragment characteristics (?).

- I think we're mainly concerned with 301/302/303/307, but I don't think
it makes sense to POST to a URI with a fragment.

- I don't think it's appropriate to return a fragment with
 305 Use Proxy.

In addition, we should specify the behavior in the case where
there was a fragment with the original URI, e.g.,
  http://host1.com/resource1#fragment1
where /resource1 redirects to
  http://host2.com/resource2#fragment2
is 'fragment1' discarded? Do you find fragment2 and then
find fragment1 within it? We don't have fragment combination rules.

Larry

---

From: John Stracke <[email-masked]>
Date: Mon, 09 Aug 1999 12:32:02 -0400

> on resource characteristics and not fragment characteristics (?).

Might it mean "make your choice based on resource characteristics, then use the
fragment on your next request"?

--
/=============================================================\
|John Stracke    | My opinions are my own | S/MIME & HTML OK  |
[email-masked]|============================================|
|Chief Scientist | NT's lack of reliability is only surpassed |
|eCal Corp.      |  by its lack of scalability. -- John Kirch |
\=============================================================/

---

From: Rodent of Unusual Size <[email-masked]>
Date: Thu, 12 Aug 1999 12:59:49 -0400

>    Location       = "Location" ":" absoluteURI [ "#" fragment ]

Does this mean that we (in the CGI work) can assume that fragments
are legal in our overload definition of Location?
-- 
#ken    P-)}

Ken Coar                    <http://Web.Golux.Com/coar/>
Apache Software Foundation  <http://www.apache.org/>
"Apache Server for Dummies" <http://ASFD.MeepZor.Com/>

---

From: "Scott Lawrence" <[email-masked]>
Date: Mon, 16 Aug 1999 10:06:05 -0400

> From: Rodent of Unusual Size <[email-masked]>

> are legal in our overload definition of Location?

I don't understand the question; I looked at:
	http://web.golux.com/coar/cgi/draft-coar-cgi-v11-03.html#7.2.1.2

and it looks ok to me.  In what way do you consider it to be overloaded?

--
Scott Lawrence           Director of R & D        <[email-masked]>
Agranat Systems, Inc.  Embedded Web Technology   http://www.agranat.com/