usefor-article-04 April 2001
[< Prev]
[TOC] [ Next >]
5.5. Newsgroups
The Newsgroups header's content specifies the newsgroup(s) in which
the article is intended to appear. It is an inheritable header
(4.2.2.2) which then becomes the default Newsgroups header of any
followup, unless a Followup-To header is present to prescribe
otherwise.
Newsgroups-content = newsgroup-name
*( *FWS ng-delim *FWS newsgroup-name )
*FWS
newsgroup-name = component *( "." component )
component = component-start
*( component-start / component-other )
component-start = Un-lowercase / Un-digit
Un-lowercase = <Unicode Letter, Lowercase> /
<Unicode Letter, Other>
Un-digit = <Unicode Number, Decimal Digit> /
<Unicode Number, Other>
component-other = "+" / "-" / "_"
ng-delim = ","
where the <Unicode ...> items are as described in [UNICODE].
The inclusion of folding white space within a Newsgroups-content is a
newly introduced feature in this standard. It MUST be accepted by all
conforming implementations (relaying agents, serving agents and
reading agents). Posting agents should be aware that such postings
may be rejected by overly-critical old-style relaying agents. When a
sufficient number of relaying agents are in conformance, posting
agents SHOULD generate such whitespace in the form of <CRLF WS> so as
to keep the length of lines in the relevant headers (notably
Newsgroups and Followup-To) to no more than than 79 characters (or
other agreed policy limit - see 4.5). Before such critical mass
occurs, injecting agents MAY reformat such headers by removing
whitespace inserted by the posting agent, but relaying agents MUST
NOT do so.
A newsgroup-name consists of one or more components. Components MAY
contain non-ASCII letters, but these MUST be encoded in UTF-8 and not
according to [RFC 2047]. A component MUST contain at least one
letter (and MUST, according to the syntax, begin with a letter or
digit). Components SHOULD begin with a letter. Composite characters
(made by overlaying one character with another) and format
characters, as allowed in certain parts of Unicode and needed by
certain languages, must use whatever canonical conventions apply to
those parts of Unicode (such conventions are not defined in this
Standard). The use of "_" in a component is deprecated. Serving
agents MAY refuse to accept newsgroups using such a component.
NOTE: Components composed entirely of digits would cause
problems for the commonly used implementation technique of using
the component as the name of a directory, whilst also using
sequential numbers to distinguish the articles within a group.
Components containing other non-permitted characters could cause
problems when newsgroup-names appear in URLs [RFC 1738] (for
example an '@' character would prevent distinguishing between
newsgroup-names and message identifiers).
NOTE: According to the syntax, uppercase letters cannot occur in
newsgroup-names, but this standard imposes no requirement on
software to check this condition, since it would be unreasonable
to expect it to do so in parts of Unicode for which it was not
configured (in general, a table lookup is required). Rather, it
is the responsibility of those creating new newsgroups (7.1) not
to violate it. It is, moreover, to be expected that a newsgroup
created in violation of this condition will not be propagated
particularly well.
Whilst there is no longer any technical reason to limit the length of
a component (formerly, it was limited to 14 characters) nor to limit
the total length of a newsgroup-name, it should be noted that these
names are also used in the newsgroups line (7.1.2) where an overall
policy limit applies, and moreover excessively long names can be
exceedingly inconvenient in practical use. Agencies responsible for
individual hierarchies Ought therefore, as a matter of policy, to set
reasonable limits for the length of a component and of a newsgroup-
name. In the absence of such explicit policies, the default limits
are 30 characters and 71 characters respectively.
[If the checkpolicies proposal is included in the Standard, there should
be a reference to it here.]
NOTE: The newsgroup-name as encoded in UTF-8 should be regarded
as the canonical form. Reading agents may convert it to whatever
character set they are able to display (see 4.4.1) and serving
agents may possibly need to convert it to some form more
suitable as a filename. Simple algorithms for both kinds of
conversion are readily available. Observe that the syntax does
not allow comments within the Newsgroups header; this is to
simplify processing by relaying and serving agents which have a
requirement to process this header extremely rapidly.
Posters SHOULD use only the names of existing newsgroups in the
Newsgroups header. However, it is legitimate to cross-post to
newsgroup(s) which do not exist on the posting agent's host, provided
that at least one of the newsgroups DOES exist there, and followup
agents SHOULD accept this (posting agents MAY accept it, but Ought at
least to alert the poster to the situation and request confirmation).
Relaying agents MUST NOT rewrite Newsgroups headers in any way, even
if some or all of the newsgroups do not exist on the relaying agent's
host. Serving agents MUST NOT create new newsgroups simply because an
unrecognised newsgroup-name occurs in a Newsgroups header (see 7.1
for the correct method of newsgroup creation).
The Newsgroups header is intended for use in Netnews articles rather
than in mail messages. It MAY be used in a mail message to indicate
that it is a copy also posted to the listed newsgroups, but it SHOULD
NOT be used in a mail-only reply to a Netnews article (thus the
"inheritable" property of this header applies only to followups to a
newsgroup, and not to followups to the poster). Moreover, if a
newsgroup-name contains any non-ASCII character, it MAY be encoded
using the mechanism defined in [RFC 2047] when sent by mail but, if
it is subsequently returned to the Netnews environment, it MUST then
be re-encoded into UTF-8.
[< Prev]
[TOC] [ Next >]
#Diff to first older
--- ../usefor-article-03/Newsgroups.out February 2000
+++ ../usefor-article-04/Newsgroups.out April 2001
@@ -1,9 +1,10 @@
5.5. Newsgroups
- The Newsgroups header's content specifies which newsgroup(s) the
- article is posted to. It is an inheritable header (4.2.2.2) which
- SHOULD then become the default Newsgroups header of any followup,
- unless a Followup-To header is present to prescribe otherwise.
+ The Newsgroups header's content specifies the newsgroup(s) in which
+ the article is intended to appear. It is an inheritable header
+ (4.2.2.2) which then becomes the default Newsgroups header of any
+ followup, unless a Followup-To header is present to prescribe
+ otherwise.
Newsgroups-content = newsgroup-name
*( *FWS ng-delim *FWS newsgroup-name )
@@ -71,12 +72,13 @@
names are also used in the newsgroups line (7.1.2) where an overall
policy limit applies, and moreover excessively long names can be
exceedingly inconvenient in practical use. Agencies responsible for
- individual hierarchies SHOULD therefore, as a matter of policy, set
+ individual hierarchies Ought therefore, as a matter of policy, to set
reasonable limits for the length of a component and of a newsgroup-
- name. In the absence of such explicit policies, the default figures
+ name. In the absence of such explicit policies, the default limits
are 30 characters and 71 characters respectively.
[If the checkpolicies proposal is included in the Standard, there should
be a reference to it here.]
+
NOTE: The newsgroup-name as encoded in UTF-8 should be regarded
as the canonical form. Reading agents may convert it to whatever
character set they are able to display (see 4.4.1) and serving
@@ -91,8 +93,8 @@
Newsgroups header. However, it is legitimate to cross-post to
newsgroup(s) which do not exist on the posting agent's host, provided
that at least one of the newsgroups DOES exist there, and followup
- agents SHOULD accept this (posting agents MAY accept it, but SHOULD
- at least alert the poster to the situation and request confirmation).
+ agents SHOULD accept this (posting agents MAY accept it, but Ought at
+ least to alert the poster to the situation and request confirmation).
Relaying agents MUST NOT rewrite Newsgroups headers in any way, even
if some or all of the newsgroups do not exist on the relaying agent's
host. Serving agents MUST NOT create new newsgroups simply because an