Re: News and nntp URI schemes

Charles Lindsey wrote:

> the 'official' "@" in the <message-id> MUST NOT be %encoded
> (because it is a delimiter, and should be declared to
> be reserved

Yes, that makes sense, so for the news: URL scheme we have two
reserved characters "/" and "@", and for nntp only "/", ready.

> it is already so declared in 2396bis

That's not good enough, because we would get all (18) reserved
characters instead of the needed two (news) or one (nntp).  At
least that's how I understood Bruce's discussion of mailto:
here some weeks ago.

The ftp draft says:

| Within a name or CWD component, the characters "/" and ";"
| are reserved and must be encoded

The same for a Message-ID in news URLs could be:

  Within the left or right hand side of a message-id, and
  within a newsgroup-name, the characters "/" and "@" are
  reserved and must be encoded.

Where message-id and newsgroup-name are the terms in the
general syntax (2. for news).  Not yet optimal, because you
have another newsgroup-name  in 3. (nntp), but maybe you can
solve it with pointers, something like this:

 nntpURL        = "nntp:" news-server "/" newsgroup-name "/" range
 range          = article-number ["-" [article-number]]
 article-number = 1*DIGIT

 <news-server> and <newsgroup-name> are defined in 2.  Observe, in
[...]

> that would have to be <news:"foo%40bar"@domain>.
[...]
> it should be <news:"bro%25ken"@mdomain>.

Okay, that's clear now.

>> You didn't explicitly say that "/" is reserved,
> I think it is automatically reserved, and would have to
> be %-emcoded inside a <message-id>.

Better say so explicitly, we don't want the complete set of
potentially reserved characters, only "/" and "@" (and "%",
but that's really an implicit consequence of RfC 2396bis 2.1).

> That is what is not clear to me. Do we have to say that,
> given that the list of reserved characters in 2396bis is
> adequate for our purpose?

IMHO it's not, ":" / "?" / "#" / "[" / "]" / "!" / "$" / "&" /
               "'" / "(" / ")" / "*" / "+" / "," / ";" / "="
are irrelevant for our purposes.  My stupid UA always encodes
"$", and I have to decode this manually if I want to give a
normal Message-ID (or an equivalent Google URL).

>>| Note that user agents may extend the ability to refer to
>>| groups by use of "*" as a string wild-card.

> Then you would be allowing "wildmats" as defined in the NNTP
> draft. That might be workable, but does anyone anywhere
> inplement that?

No idea, it's just an elegant way to keep the similar RfC 1738
oddity somewhere without explicitly saying that it's dead.

> we would just have:
>        <URL:news:>

No, that would be illegal, and it wasn't allowed in RfC 1738,
The fixed syntax is...

| all-groups  = news-server [ "/" ]

...allowing (minus the "URL:" used only in texts of course):

>        <URL:news://news.example.com/>
>        <URL:news://news.example.com>

The version <news:*> was allowed in RfC 1738, and that's simply
a special case of Gilman's note in 2.2 newsgroup-name.  Not in
2.3 all-groups, where the news-server is _not_ more optional.

                          Bye, Frank

Received on Tuesday, 4 January 2005 20:37:23 UTC