Re: #431: URI path starting with "//"

On Sun, Feb 10, 2013 at 9:45 AM, Julian Reschke <julian.reschke@gmx.de> wrote:
> On 2013-02-08 23:48, Zhong Yu wrote:
>>
>> On Fri, Feb 8, 2013 at 11:05 AM, Julian Reschke <julian.reschke@gmx.de>
>> wrote:
>>>
>>> On 2013-02-01 19:37, Zhong Yu wrote:
>>>>
>>>>
>>>> If user clicks a URL http://example.com//abc, the browser should send
>>>>
>>>>       GET //abc HTTP/1.1
>>>>       Host: example.com
>>>>
>>>> However the latest bis draft seems to forbid "origin-form" to start with
>>>> "//"
>>>>
>>>>
>>>> http://tools.ietf.org/html/draft-ietf-httpbis-p1-messaging-21#section-5.3
>>>>
>>>>       origin-form    = path-absolute [ "?" query ]
>>>>
>>>> http://tools.ietf.org/html/rfc3986#section-3.3
>>>>
>>>>       path-absolute   ; begins with "/" but not "//"
>>>>
>>>> I couldn't find anything in RFC 3986 that accurately describe the path
>>>> part that we really want, which should be
>>>>
>>>>       path-xxx = "/" *( "/" / pchar )
>>>>
>>>> HTTP probably need to define this term. It'll also help people to
>>>> finally refer to this thingy with a proper name.
>>>>
>>>> Zhong Yu
>>>
>>>
>>>
>>> We have
>>>
>>>    origin-form    = path-absolute [ "?" query ]
>>>
>>> with
>>>
>>>    path-absolute = "/" [ segment-nz *( "/" segment ) ] ;
>>> <http://greenbytes.de/tech/webdav/rfc3986.html#path>
>>>
>>> Using
>>>
>>>    origin-form  = "/" [ segment *( "/" segment ) ] [ "?" query ]
>>
>>
>> This should work too
>>
>>      origin-form  = 1*( "/" segment )  [ "?" query ]
>>
>>
>>>
>>> ...seems to be the minimal change (or can we simplify that production
>>> further without losing readability?)
>>>
>>> Best regards, Julian
>
>
> Proposed patch:
> <http://trac.tools.ietf.org/wg/httpbis/trac/attachment/ticket/431/431.diff>
>
> ...I ended up defining a new production, for the absolute path, because
> other parts of the spec refer to it in prose.

I like the term "absolute-path".

I think

    absolute-path = 1*( "/" segment )

will make the intention more obviously.

>
> Feedback appreciated,
>
> Julian
>

Received on Sunday, 10 February 2013 16:24:10 UTC