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

Julian Reschke <julian.reschke@gmx.de> Mon, 11 February 2013 14:16 UTC

Return-Path: <ietf-http-wg-request@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 82EC321F88F7 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Mon, 11 Feb 2013 06:16:52 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -8.987
X-Spam-Level:
X-Spam-Status: No, score=-8.987 tagged_above=-999 required=5 tests=[AWL=1.612, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id gyqgmLo2apli for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Mon, 11 Feb 2013 06:16:49 -0800 (PST)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) by ietfa.amsl.com (Postfix) with ESMTP id AFE7E21F88A8 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Mon, 11 Feb 2013 06:16:49 -0800 (PST)
Received: from lists by frink.w3.org with local (Exim 4.72) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1U4uAD-0006aX-NQ for ietf-http-wg-dist@listhub.w3.org; Mon, 11 Feb 2013 14:15:21 +0000
Resent-Date: Mon, 11 Feb 2013 14:15:21 +0000
Resent-Message-Id: <E1U4uAD-0006aX-NQ@frink.w3.org>
Received: from lisa.w3.org ([128.30.52.41]) by frink.w3.org with esmtp (Exim 4.72) (envelope-from <julian.reschke@gmx.de>) id 1U4uA2-0005Cm-HX for ietf-http-wg@listhub.w3.org; Mon, 11 Feb 2013 14:15:10 +0000
Received: from mout.gmx.net ([212.227.15.18]) by lisa.w3.org with esmtp (Exim 4.72) (envelope-from <julian.reschke@gmx.de>) id 1U4u9u-0004ay-GO for ietf-http-wg@w3.org; Mon, 11 Feb 2013 14:15:10 +0000
Received: from mailout-de.gmx.net ([10.1.76.20]) by mrigmx.server.lan (mrigmx002) with ESMTP (Nemesis) id 0MUiSQ-1UPfbb3Hsy-00Y9uv for <ietf-http-wg@w3.org>; Mon, 11 Feb 2013 15:14:35 +0100
Received: (qmail invoked by alias); 11 Feb 2013 14:14:35 -0000
Received: from mail.greenbytes.de (EHLO [192.168.1.102]) [217.91.35.233] by mail.gmx.net (mp020) with SMTP; 11 Feb 2013 15:14:35 +0100
X-Authenticated: #1915285
X-Provags-ID: V01U2FsdGVkX19yjrZKZvdyRkGu8Na3ObOcB3Z7ARkWcKwfAcmJIG +e/Esz+SDyYjYs
Message-ID: <5118FCCB.5030308@gmx.de>
Date: Mon, 11 Feb 2013 15:14:35 +0100
From: Julian Reschke <julian.reschke@gmx.de>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130107 Thunderbird/17.0.2
MIME-Version: 1.0
To: Zhong Yu <zhong.j.yu@gmail.com>
CC: HTTP Working Group <ietf-http-wg@w3.org>
References: <CACuKZqHi6gBmd-khrW-_7febxoh-pNd4hzfyA4EgRNKQ4ivWog@mail.gmail.com> <51153061.9010603@gmx.de> <CACuKZqGOg06CxABULxDi+DSSgryp0aBoyvhJdEs3d89-4Y43iQ@mail.gmail.com> <5117C088.9040105@gmx.de> <CACuKZqF8k=fxtiy=cnjNFrzUBeE84tGsVjeubbq84f8QfoMmAQ@mail.gmail.com>
In-Reply-To: <CACuKZqF8k=fxtiy=cnjNFrzUBeE84tGsVjeubbq84f8QfoMmAQ@mail.gmail.com>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
X-Y-GMX-Trusted: 0
Received-SPF: pass client-ip=212.227.15.18; envelope-from=julian.reschke@gmx.de; helo=mout.gmx.net
X-W3C-Hub-Spam-Status: No, score=-3.5
X-W3C-Hub-Spam-Report: AWL=-3.450, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001
X-W3C-Scan-Sig: lisa.w3.org 1U4u9u-0004ay-GO b04dcdc0cb18bd0a8fc62e92fdb69ead
X-Original-To: ietf-http-wg@w3.org
Subject: Re: #431: URI path starting with "//"
Archived-At: <http://www.w3.org/mid/5118FCCB.5030308@gmx.de>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/16551
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <http://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

On 2013-02-10 17:23, Zhong Yu wrote:
> 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.

...incorporated with 
<http://trac.tools.ietf.org/wg/httpbis/trac/changeset/2181>.

Best regards, Julian