ietf-nntp Article concepts
Clive D.W. Feather
clive at demon.net
Mon Mar 24 14:11:02 PST 2003
Russ Allbery said:
>> Be careful about that 'space' after the colon. It is not obligatory in
>> RFC 2822, and one day our arms may be twisted to allow it to be omitted
>> in Usefor (I would rather it were made obligatory in 2822bis, but that
>> is beyond our control).
> I included the space in my proposed wording intentionally, since if you
> read through the descriptions of various commands, you'll find that our
> current standard assumes that it will always be there. There are various
> references to it in, for example, the OVER and HDR descriptions.
>
> Those descriptions could potentially be rewritten to not make that
> assumption, but I'm not sure if it's worth it.
Indeed. In particular, if there are two or more spaces, we currently say
that the first one *only* is removed from the overview content. Would that
still be the case?
>>> OUTSTANDING ISSUE
>
>>> I would much prefer us to simply say there MUST be exactly one ID,
>>> but that negates the existing text which says "<0>" MUST be used
>>> if there is no message-id header line.
>
>> Yes, that is an exceedingly peculiar line in the present draft. How can
>> it ever come about?
>
> It comes about if you're serving out messages without a message ID, but I
> don't really see any need for NNTP to allow for that possibility.
Well, we've already got one person who's got a related situation.
And, as you pointed out to me, we can't assume that an NNTP server is only
handling USEFOR-conformant articles. Can we safely assume that no such
article will ever arrive?
If it does, then "ARTICLE 1234" could find itself serving that up.
> I think
> that text was in there for as long as I've been participating in this
> working group, so I don't know where it came from originally.
It's in 977.
>> 1. Any article stored by the server MUST have exactly one Message-ID
>> header.
>
> Too much article format stuff. I like the way that Clive handled this,
> and I think that all we additionally have to say is that any article
> stored by the server MUST be associated with a message ID and then
> eliminate the <0> stuff.
Actually, thinking it through, that's not where the problem is. See below.
>> 2. If an article arrives without one by POST, the server MUST generate
>> one before storing it.
> I would dearly like to not get involved in the responsibilities of an
> injecting agent and instead defer them to USEFOR.
[...]
Indeed.
>> But now you have to worry about comments and WSP both before and after
>> the <...> (Usefor currently disallows these, but RFC 2822 does not).
> No, you don't; parsing of the header field is outside the scope of the
> NNTP protocol. From the NNTP perspective, the server takes the news
> article, consults an oracle, and discovers its message ID. The details of
> how that happens can be deferred to the relevant article standard.
Right. And the oracle is allowed to say "none", in which case "<0>" comes
into play.
As I said, thinking it through, this isn't where the problems lie. The
problem is *because* I wrote:
... message-id, which is the content of the header ...
If, as you say, the server consults an oracle (obviously I won't word it
that way), then all this goes away, I think.
<FX: delay>
Okay, fitting that into the text was easy:
Each article SHOULD have a message-id. Two articles processed by
an NNTP server MUST NOT have the same message-id. Note that RFC
1036 further requires that message-ids are globally unique for all
time. Where an article does not have a message-id, the server MUST
use the placeholder "<0>" (without the double quotes) where it is
required to provide the message-id of that article.
For the purposes of this specification, message-ids are opaque
strings that MUST meet the following requirements:
[...]
considered semantically identical according to the specification in
RFC 2822.
This specification does not describe how the message-id of an
article is determined. Many servers will extract the message-id
from the contents of a header with name "Message-ID", but this is
not required by this document. In particular, if the article does
not contain such a header, the server MAY synthesise a message-id
or MAY choose not to assign a message-id to that article (this will
restrict the ways in which this article can be accessed by the
client).
The issues are then as follows:
* What text does POST need to say where the "same message-id" is?
* NEWNEWS needs to say that articles without message-ids are omitted.
* Does OVER return the message-id or the contents of the Message-ID header?
--
Clive D.W. Feather | Work: <clive at demon.net> | Tel: +44 20 8371 1138
Internet Expert | Home: <clive at davros.org> | Fax: +44 870 051 9937
Demon Internet | WWW: http://www.davros.org | Mobile: +44 7973 377646
Thus plc | |
More information about the ietf-nntp
mailing list