[NNTP] News and nntp URI schemes
Charles Lindsey
chl at clerew.man.ac.uk
Fri Dec 17 04:56:30 PST 2004
http://www.ietf.org/internet-drafts/draft-hoffman-news-nntp-uri-03.txt has
recently appeared, but it does not yet reflect all the discussions that
have taken place on the uri.w3.org list.
What follows is a suggested text for the central portion of that draft,
taking those discussions into account, and which I have just posted to
uri.w3.org. I am also posting it to the nntp and Usefor lists for
information. If you want to comment, please do so to the URI list, to
which Reply-To has been set.
2. The News URL Scheme
The news URL scheme is used to refer to either news groups
or individual Netnews articles, as defined in RFC 1036.
The news URL takes the form:
newsURL = "news:" ( article / group / all-groups )
article = [ news-server "/" ] message-id
group = [ news-server "/" ] newsgroup-name
all-groups = news-server [ "/" [ "*" ] ] / "*"
news-server = "//" server
<server> is defined in [2396bis], and provides for a <host>, a <port>
(defaulting to 119 in this scheme) and possibly a <userinfo>.
If no <news-server> is specified, the resources are to be retrieved
from whatever server has been configured for local use.
2.1 The newsURL contains an <article>
A <message-id> corresponds to the <msg-id> of RFC 2822 and to the
Message-ID of section 2.1.5 of RFC 1036, but without the enclosing
"<" and ">".
The resource retrieved by this URL is the Netnews article with the
given <message-id>. In a properly working Netnews system, the same
article will be obtained whatever server is accessed for the purpose
(assuming the server in question carried that article in the first
place and that it has not expired).
<id-left> and <id-right> are defined in Section 3.6.4 of RFC 2822
[RFC2822]. They MUST be in a canonical form in which no
<quoted-string> or <quoted-pair> is used in a context where the same
semantic meaning could have been rendered without such quoting;
moreover, no whitespace or ">" may be included, whether %-encoded or
not and/or quoted or not.
For example, neither
news:"abcd"@example.com
nor
news:"ab\cd"@example.com
is in canonical form, because the form
news:abcd at example.com
is available.
2.2 The newsURL contains a <group>
The <newsgroup-name> is a period-delimited hierarchical name, such as
"comp.lang.perl.modules".
The resource retrieved by this URL is some means to gain access to
the articles in the given <newsgroup-name> that are available on the
given <server> (usually by invoking a suitable news reading agent
initialized to access that group).
2.2 The newsURL contains an <all-groups>
If the newsURL is of one of the following forms:
<URL:news:*>
<URL:news://news.example.com/*>
<URL:news://news.example.com/>
<URL:news://news.example.com>
it refers to "all available news groups". The resource retrieved by
this URL is some means to gain access to all the newsgroups that are
available on the given <server> (usually by invoking a suitable news
reading agent).
[Issue: Do we really want all those forms? Only the first was in RFC 1738.
Some agents are known to barf on anything with '*' in it; there exist
agents which recognize the last two forms. Maybe the '*' part of the
notation should be dispensed with.]
3. The nntp URL scheme
The nntp URL scheme is used to refer to individual Netnews articles,
as defined in RFC 1036.
The nntp URL takes the form:
nntpURL = "nntp" ":" news-server "/" newsgroup-name "/" range
news-server = "//" server
range = article-number ["-" [article-number]]
article-number = 1*DIGIT
Observe, in contradistinction to the news scheme, that the
<news-server> is not optional here, because the mapping from
<article-numbers> to actual articles is established independently by
each server.
3.1 The range is a single <article-number>
The resource retrieved by this URL is the Netnews article numbered
by the given <article-number> in the given <newsgroup-name> on the
given <server>.
3.2 The range encompasses more than a single <article-number>
The resource retrieved by this URL is some means to gain access to
the articles numbered within the given <range> of <article-
number>s in the given <newsgroup-name> on the given <server>
(usually by invoking a suitable news reading agent initialized to
access that range). A <range> of the form "nnnn-" provides access to
all articles numbered "nnnn" and above.
--
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 at 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
More information about the ietf-nntp
mailing list