Re: When is percent-encoding required.

Hello Charles,

On 2010/01/16 2:16, Charles Lindsey wrote:
> On Wed, 13 Jan 2010 18:09:50 -0000, Julien ÉLIE <julien@trigofacile.com>
> wrote:
>
>> Hi Charles,
>>
>>> Here is the wording I now propose:
>>>
>>> According to [RFC 3968], characters that are in <gen-delims> (a
>>> subset of <reserved>) MUST be percent-encoded (though it is not wrong
>>> to encode others). Specifically, the characters allowed in
>>> <msg-id-core> that must be encoded are
>>> "/" "?" "#" "[" and "]"
>>> Note that an agent which seeks to interpret a 'news' URI needs to
>>> decode all these percent-encoded characters before passing it on to
>>> an NNTP server to be acted upon.
>>>
>>> Comments anyone?
>>
>> MUSTn't "%" also be encoded?
>
> Ah yes! That pesky '%' which, for some strange reason, is not included
> in <gen-delims>

Of course it's not in gen-delims, because it's not a delimiter, it's the 
escape character.

>> I see in to-be RFC 5538:
>>
>> mid-left = 1*( mid-atext / "." ) / ; <dot-atom-text>
>> ( "%22" mid-quote "%22" ) ; <no-fold-quote>
>> mid-right = 1*( mid-atext / "." ) / ; <dot-atom-text>
>> ( "%5B" mid-literal "%5D" ) ; <no-fold-literal>
>> mid-atext = ALPHA / DIGIT / ; RFC 2822 <atext>
>> "!" / "$" / "&" / "'" / ; allowed sub-delims
>> "*" / "+" / "=" / ; allowed sub-delims
>> "-" / "_" / "~" / ; allowed unreserved
>> "%23" / "%25" / "%2F" / ; "#" / "%" / "/"
>> "%3F" / "%5E" / "%60" / ; "?" / "^" / "`"
>> "%7B" / "%7C" / "%7D" ; "{" / "|" / "}"
>>
> well the final form of RFC 5538 is reverting to the <msg-id-core> syntax
> of RFC 5537. So the cases we are actually interested in is the
> intersection of (<gen-delims> plus '%') with <atext>. But that indeed
> does inlcude '%'.
>
>> but if I have a message-ID that contains "%23", isn't is mandatory to
>> convert it into "%2523" (URI)?
>
> But of course "%23" is not in <atext>, whatever nonsense we might have
> had in <mid-atext>.
>
> So here is another attempt at my wording:
>
> According to [RFC 3968], characters that are in <gen-delims> (a subset
> of <reserved>), together with the character "%", MUST be percent-encoded
> (though it is not wrong to encode others). Specifically, the characters
> allowed in <msg-id-core>
> that must be encoded are
> "/" "?" "#" "[" "]" and "%"
> Note that an agent which seeks to interpret a 'news' URI needs to
> decode all these percent-encoded characters before passing it on to an
> NNTP server to be acted upon.

Looks okay to me.

Regards,   Martin.


-- 
#-# Martin J. Dürst, Professor, Aoyama Gakuin University
#-# http://www.sw.it.aoyama.ac.jp   mailto:duerst@it.aoyama.ac.jp

Received on Saturday, 16 January 2010 09:45:32 UTC