Fwd: draft-hoffman-news-nntp-uri-00.txt

------- Forwarded message -------
From: "Charles Lindsey" <chl@clerew.man.ac.uk>
To: paul.hoffman@vpnc.org
Subject: draft-hoffman-news-nntp-uri-00.txt
Date: Mon, 23 Aug 2004 21:40:33 +0100

This draft contains the same problems as the earlier drafts
draft-hoffman-rfc1738bis-*.txt, about which I am sure that wrote to you at
the time.

The relevant portion is:

      A news URL takes one of two forms:

         newsURL     =  scheme ":" [ news-server ] [ refbygroup | message ]
         scheme      =  "news" | "nntp"
         news-server =  "//" server "/"
         refbygroup  = group [ "/" messageno [ "-" messageno ] ]
         messageno   = local-part "@" domain

      A <group> is a period-delimited hierarchical name, such as
      "comp.lang.perl.modules".  A <messageno> corresponds to the
      Message-ID of section 2.1.5 of RFC 1036 [RFC1036], without the
      enclosing "<" and ">"; it takes the form <unique>@<full_domain_name>.
      A message identifier may be distinguished from a news group name by
      the presence of the commercial at "@" character.  No additional
      characters are reserved within the components of a news URL.

      If <newsgroup-name> is "*" (as in <URL:news:*>), it is used to refer
      to "all available news groups".

First of all, the syntax problems:

1. No syntax for <message> is given

2. I suspect that the syntax for <messageno> should have been just
1*DIGIT, since it is evidently to be used in the same way as the
<article-number> of RFC 1738.

3. I suspect that the syntax given for <messageno> was actually intended
to be the syntax for <message> (in which case it should have been called
<message-id> as in RFC 1738). However, if that was intended to represent
a syntax for message-id, then it differs from the syntax for message-id
given in RFC 2822 and in RFC 1036 and in Usefor, which does not seem
particularly useful. Essentially , it is to be regarded as an opaque
string, but there are problems which are discussed in Appendix B.2 of
draft-ietf-nntpext-base-21.txt, as well as in Usefor. Clearly, it must
have an '@' in it somewhere.

4. It would be better to use <newsgroup-name> where you have used <group>,
since this is the term commonly used (and was used in RFC 1738).

Next, the changes you have introduced.

1. You have introduced an optional <newsgroup-name> into the 'news'
scheme. This is probably a Good Thing, and may even have been implemented
already in some places.

2. You have combined the 'news' and 'nntp' schemes. Again, this may be OK,
but you have broken the 'nntp' scheme in the process. In RFC 1738, the
<newsgroup-name> was mandatory in the 'nntp' scheme. You have made it
optional, and that does not work. The reason is that <article-number>s
within a group are unique to a server, but bear no resemblance to the
<article-number>s for the same article on a different server. Therefore,
if you do not specify the server
in a URL using such numbers, then you are likely to get the wrong articles.

Thus an 'nntp' scheme does not specify a global resource, since most
servers are picky about whom they will grant access to (there is wording
to that effect in RFC 1738).

So if you want to combine the 'news' and 'nntp' schemes, the syntax needs
to make it clear that <news-server> is not optional if the <refbygroup>
alternative is present and includes any <article-number>.

3. You have allowed a range of <article-numbers> to be specified in a
<refbygroup> (it would have been better to use the term <range>, as it
used in draft-ietf-nntpext-base-21.txt). Again, this may be OK, but it is
not clear what is to be returned when you access such a URL - a collection
of articles, but in what format?

4. You also need to state the semantics for the case where the URL
contains a <newsgroup-name> only. Granted RFC 1738 was silent on that, the
usual interpretation has been that it should open that group in your
favourite news reader (or just open your favourite news reader in the case
of the '*' option.

5. The meaning of the '*' option is not clear in the case of the ex-'nntp'
scheme, where it was not previously allowed; i.e. what is the meaning of
       nntp://some-host/*/1234 ?
There may well be lots of articles numbered '1234' in assorted groups on
that host.

All in all, I think it would be better to keep the 'news' and 'nntp'
schemes separate, because they are intended to do rather different things.



-- 
Charles H. Lindsey ---------At Home, doing my own thing------------------------
Tel: +44 161 436 6131 Fax: +44 161 436 6133   Web: http://www.cs.man.ac.uk/~chl
Email: chl@clerew.man.ac.uk      Snail: 5 Clerewood Ave, CHEADLE, SK8 3JU, U.K.
PGP: 2C15F1A9      Fingerprint: 73 6D C2 51 93 A0 01 E7 65 E8 64 7E 14 A4 AB A5

Received on Wednesday, 25 August 2004 11:41:38 UTC