TOC 
Usenet Format Working GroupK. Murchison, Ed.
Internet-DraftCarnegie Mellon University
Obsoletes:1036 (if approved)C. Lindsey
Intended status: Standards TrackUniversity of Manchester
Expires: March 21, 2007D. Kohn
 FlyDash, Inc.
 September 17, 2006


Netnews Article Format
draft-ietf-usefor-usefor-10

Status of this Memo

By submitting this Internet-Draft, each author represents that any applicable patent or other IPR claims of which he or she is aware have been or will be disclosed, and any of which he or she becomes aware will be disclosed, in accordance with Section 6 of BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts.

Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as “work in progress.”

The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt.

The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html.

This Internet-Draft will expire on March 21, 2007.

Copyright Notice

Copyright © The Internet Society (2006).

Abstract

This document specifies the syntax of Netnews articles in the context of the "Internet Message Format" (RFC 2822) and "Multipurpose Internet Mail Extensions (MIME)" (RFC 2045). This document obsoletes RFC 1036, providing an updated specification to reflect current practice and incorporating incremental changes specified in other documents.



Table of Contents

1.  Introduction
    1.1.  Basic Concepts
    1.2.  Scope
    1.3.  Requirements Notation
    1.4.  Syntax Notation
    1.5.  Definitions
    1.6.  Structure of This Document
2.  Format
    2.1.  Base
    2.2.  Header Fields
    2.3.  MIME Conformance
3.  News Header Fields
    3.1.  Mandatory Header Fields
        3.1.1.  Date
        3.1.2.  From
        3.1.3.  Message-ID
        3.1.4.  Newsgroups
        3.1.5.  Path
        3.1.6.  Subject
    3.2.  Optional Header Fields
        3.2.1.  Approved
        3.2.2.  Archive
        3.2.3.  Control
        3.2.4.  Distribution
        3.2.5.  Expires
        3.2.6.  Followup-To
        3.2.7.  Injection-Date
        3.2.8.  Injection-Info
        3.2.9.  Organization
        3.2.10.  References
        3.2.11.  Summary
        3.2.12.  Supersedes
        3.2.13.  User-Agent
        3.2.14.  Xref
    3.3.  Obsolete Header Fields
        3.3.1.  Lines
4.  Internationalization Considerations
5.  Security Considerations
6.  IANA Considerations
7.  References
    7.1.  Normative References
    7.2.  Informative References
Appendix A.  Acknowledgments
Appendix B.  Differences from RFC 1036 and its derivatives
Appendix C.  Differences from RFC 2822
§  Authors' Addresses
§  Intellectual Property and Copyright Statements




 TOC 

1.  Introduction



 TOC 

1.1.  Basic Concepts

"Netnews" is a set of protocols for generating, storing and retrieving news "articles" (whose format is a subset of that for Email messages), and for exchanging them amongst a readership that is potentially widely distributed. It is organized around "newsgroups", with the expectation that each reader will be able to see all articles posted to each newsgroup in which he participates. These protocols most commonly use a flooding algorithm which propagates copies throughout a network of participating servers. Typically, only one copy is stored per server, and each server makes it available on demand to readers able to access that server.



 TOC 

1.2.  Scope

This document specifies the syntax of Netnews articles in the context of the "Internet Message Format" [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) and "Multipurpose Internet Mail Extensions (MIME)" [RFC2045] (Freed, N. and N. Borenstein, “Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies,” November 1996.). This document obsoletes [RFC1036] (Horton, M. and R. Adams, “Standard for interchange of USENET messages,” December 1987.), updating the syntax of Netnews articles to reflect current practice and incorporating changes and clarifications specified in other documents such as [Son‑of‑1036] (Spencer, H., “News Article Format and Transmission,” June 1994.).

This is the first in a set of documents that obsolete [RFC1036] (Horton, M. and R. Adams, “Standard for interchange of USENET messages,” December 1987.). This document focuses on the syntax and semantics of Netnews articles. [I‑D.ietf‑usefor‑usepro] (Lindsey, C., “News Article Architecture and Protocols,” January 2006.) is also a standards-track document and describes the protocol issues of Netnews articles, independent of transport protocols such as [I‑D.ietf‑nntpext‑base] (Feather, C., “Network News Transfer Protocol,” June 2005.). A best-common-practice document, [I‑D.ietf‑usefor‑useage] (Lindsey, C., “Usenet Best Practice,” March 2005.), describes implementation recommendations to improve interoperability and usability.

This specification is intended as a definition of what article content format is to be passed between systems. Although many news systems locally store articles in this format (which eliminates the need for translation between formats), local storage is outside of the scope of this standard.



 TOC 

1.3.  Requirements Notation

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119] (Bradner, S., “Key words for use in RFCs to Indicate Requirement Levels,” March 1997.).



 TOC 

1.4.  Syntax Notation

Header fields defined in this specification use the Augmented Backus-Naur Form (ABNF) notation (including the Core Rules) specified in [RFC4234] (Crocker, D., Ed. and P. Overell, “Augmented BNF for Syntax Specifications: ABNF,” October 2005.) and many constructs defined in [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.), [RFC2045] (Freed, N. and N. Borenstein, “Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies,” November 1996.) as updated by [RFC2231] (Freed, N. and K. Moore, “MIME Parameter Value and Encoded Word Extensions: Character Sets, Languages, and Continuations,” November 1997.), and [RFC3986] (Berners-Lee, T., Fielding, R., and L. Masinter, “Uniform Resource Identifier (URI): Generic Syntax,” January 2005.), specifically:

token         = <see RFC2045 Section 5.1>
value         = <see RFC2045 Section 5.1>
parameter     = <see RFC2231 Section 7>
attribute     = <see RFC2231 Section 7>

FWS           = <see RFC2822 Section 3.2.3>
comment       = <see RFC2822 Section 3.2.3>
CFWS          = <see RFC2822 Section 3.2.3>
atext         = <see RFC2822 Section 3.2.4>
dot-atom-text = <see RFC2822 Section 3.2.4>
phrase        = <see RFC2822 Section 3.2.6>
utext         = <see RFC2822 Section 3.2.6>
date-time     = <see RFC2822 Section 3.3>
mailbox       = <see RFC2822 Section 3.4>
mailbox-list  = <see RFC2822 Section 3.4>
address-list  = <see RFC2822 Section 3.4>
body          = <see RFC2822 Section 3.5>
fields        = <see RFC2822 Section 3.6>

IPv6address   = <see RFC3986 Section 3.2.2>
IPv4address   = <see RFC3986 Section 3.2.2>

ALPHA         = <see RFC4234 Appendix B.1>
CRLF          = <see RFC4234 Appendix B.1>
DIGIT         = <see RFC4234 Appendix B.1>
DQUOTE        = <see RFC4234 Appendix B.1>
SP            = <see RFC4234 Appendix B.1>

Additionally, Section 3.1.3 (Message-ID) specifies a stricter definition of <msg-id> than the syntax in [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) Section 3.6.4.



 TOC 

1.5.  Definitions

An "article" is the unit of Netnews, analogous to an [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) "message". A "proto-article" is one that has not yet been injected into the news system. In contrast to an "article", a "proto-article" may lack some mandatory header fields.

A "message identifier" (Section 3.1.3 (Message-ID)) is a unique identifier for an article, usually supplied by the "user agent" that posted it or, failing that, by the "news server". It distinguishes the article from every other article ever posted anywhere. Articles with the same message identifier are treated as if they are the same article regardless of any differences in the body or header fields.

A "newsgroup" is a forum having a name and intended for articles on a specific topic. An article is "posted to" a single newsgroup or several newsgroups. When an article is posted to more than one newsgroup, it is said to be "crossposted"; note that this differs from posting the same text as part of each of several articles, one per newsgroup.

A newsgroup may be "moderated", in which case submissions are not posted directly, but mailed to a "moderator" for consideration and possible posting. Moderators are typically human but may be implemented partially or entirely in software.

A "poster" is the person or software that composes and submits a potentially compliant article to a "user agent".

A "reader" is the person or software reading Netnews articles.

A "followup" is an article containing a response to the contents of an earlier article, its "precursor". Every followup includes a "References" header field identifying that precursor (but note that non-followup articles may also use a References header field).

A "control message" is an article which is marked as containing control information; a news server receiving such an article may (subject to the policies observed at that site) take actions beyond just filing and passing on the article.

A "news server" is software that may accept articles from a "user agent", and/or make articles available to user agents, and/or exchange articles with other news servers.

A "user agent" is software that may help posters submit proto-articles to a news server, and/or fetch articles from a news server and present them to a reader, and/or assist the reader in creating articles and followups.

The generic term "agent" is used when describing requirements that apply to both user agents and news servers.

An agent is said to "generate" a construct if it did not exist before the agent created it. Examples are when a user agent creates a message from text and addressing information supplied by a user, or when a news server creates an "Injection-Info" header field for a newly posted message.

An agent is said to "accept" a construct if some other entity generates it and passes it to the agent in question, and the agent processes it without treating it as a format or protocol error.



 TOC 

1.6.  Structure of This Document

This document uses a cite-by-reference methodology, rather than repeating the contents of other standards, which could otherwise result in subtle differences and interoperability challenges. Although this document is as a result rather short, it requires complete understanding and implementation of the normative references to be compliant.

Section 2 (Format) defines the format of Netnews articles. Section 3 (News Header Fields) details the header fields necessary to make an article suitable for the Netnews environment.



 TOC 

2.  Format



 TOC 

2.1.  Base

An article is said to be conformant to this specification if it conforms to the format specified in [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) Section 3 and to the additional requirements of this specification.

An article that uses the obsolete syntax specified in Section 4 of [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) is NOT conformant to this specification, except for the following two cases:

This document, and specifications that build upon it, specify how to handle conformant articles. Handling of non-conformant articles is outside the scope of this specification.

Agents conforming to this specification MUST generate only conformant articles.

The text below uses ABNF to specify restrictions on the syntax specified in [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.); this grammar is intended to be more restrictive than the [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) grammar. Articles must conform to the ABNF specified in [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) and also to the restrictions specified here, both those that are expressed as text and those that are expressed as ABNF.

NOTE: Other specifications use the term "header" as a synonym for what [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) calls "header field". This document follows the terminology in Section 2 of [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) in using the terms "line", "header field", "header field name", "header field body", and "folding", based on a belief that consistent terminology among specifications that depend on each other makes the specifications easier to use in the long run.



 TOC 

2.2.  Header Fields

All header fields in a Netnews article are compliant with [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.); this specification, however, is less permissive in what can be generated and accepted by agents. The syntax allowed for Netnews article headers is a strict subset of the "Internet Message Format" headers, making all headers compliant with this specification inherently compliant with [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.). Note however that the converse is not guaranteed to be true in all cases.

General rules which apply to all header fields (even those documented in [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) and [RFC2045] (Freed, N. and N. Borenstein, “Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies,” November 1996.)) are listed below, and those that apply to specific header fields are described in the relevant sections of this document.



 TOC 

2.3.  MIME Conformance

User agents MUST meet the definition of MIME conformance in [RFC2049] (Freed, N. and N. Borenstein, “Multipurpose Internet Mail Extensions (MIME) Part Five: Conformance Criteria and Examples,” November 1996.) and MUST also support [RFC2231] (Freed, N. and K. Moore, “MIME Parameter Value and Encoded Word Extensions: Character Sets, Languages, and Continuations,” November 1997.). This level of MIME conformance provides support for internationalization and multimedia in message bodies ([RFC2045] (Freed, N. and N. Borenstein, “Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies,” November 1996.), [RFC2046] (Freed, N. and N. Borenstein, “Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types,” November 1996.), [RFC2231] (Freed, N. and K. Moore, “MIME Parameter Value and Encoded Word Extensions: Character Sets, Languages, and Continuations,” November 1997.)), and support for internationalization of header fields ([RFC2047] (Moore, K., “MIME (Multipurpose Internet Mail Extensions) Part Three: Message Header Extensions for Non-ASCII Text,” November 1996.), [RFC2231] (Freed, N. and K. Moore, “MIME Parameter Value and Encoded Word Extensions: Character Sets, Languages, and Continuations,” November 1997.)). Note that [Errata] (, “RFC Editor Errata,” .) currently exist for [RFC2046] (Freed, N. and N. Borenstein, “Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types,” November 1996.) and [RFC2231] (Freed, N. and K. Moore, “MIME Parameter Value and Encoded Word Extensions: Character Sets, Languages, and Continuations,” November 1997.).

For the purposes of Section 5 of [RFC2047] (Moore, K., “MIME (Multipurpose Internet Mail Extensions) Part Three: Message Header Extensions for Non-ASCII Text,” November 1996.), all header fields defined in Section 3 (News Header Fields) of this standard are to be considered as "extension message header fields", permitting the use of [RFC2047] (Moore, K., “MIME (Multipurpose Internet Mail Extensions) Part Three: Message Header Extensions for Non-ASCII Text,” November 1996.) encodings within any <unstructured> header field, or within any <comment> or <phrase> permitted within any structured header field.

User agents MAY accept and generate other MIME extension header fields, and in particular SHOULD accept Content-Disposition [RFC2183] (Troost, R., Dorner, S., and K. Moore, “Communicating Presentation Information in Internet Messages: The Content-Disposition Header Field,” August 1997.) and Content-Language [RFC3282] (Alvestrand, H., “Content Language Headers,” May 2002.).



 TOC 

3.  News Header Fields

The following news header fields extend those defined in Section 3.6 of [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.):

fields          =/ *( approved /
                      archive /
                      control /
                      distribution /
                      expires /
                      followup-to /
                      injection-date /
                      injection-info /
                      lines /
                      newsgroups /
                      organization /
                      path /
                      summary /
                      supersedes /
                      user-agent /
                      xref )

Each of these header fields may occur at most once in a news article.

The following header fields defined in this document do not allow comments (CFWS):

Control
Distribution
Newsgroups
Followup-To
Lines
Path
Supersedes
Xref

This also applies to the following header field defined in [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.):

Message-ID

Most of these header fields are mainly of interest to news servers, and news servers often need to process these fields very rapidly. Thus some header fields prohibit <comment>s.



 TOC 

3.1.  Mandatory Header Fields

Each Netnews article conformant with this specification MUST have exactly one of each of the following header fields: Date, From, Message-ID, Newsgroups, Path, Subject.



 TOC 

3.1.1.  Date

The Date header field is the same as that specified in Sections 3.3 and 3.6.1 of [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) with the added restrictions detailed above in Section 2.2 (Header Fields). However, the use of "GMT" as a time zone (part of <obs-zone>), although deprecated, is widespread in Netnews articles today. Therefore, agents MUST accept <date-time> constructs that use the "GMT" zone.

orig-date       =  "Date:" SP date-time CRLF

NOTE: This specification does not change [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.), which says that agents MUST NOT generate <date-time> constructs which include any zone names defined by <obs-zone>.

Software that accepts dates with unknown timezones SHOULD treat such timezones as equivalent to "-0000" when comparing dates, as specified in [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) Section 4.3.

Also note that these requirements apply wherever <date-time> is used, including Injection-Date and Expires in Section 3.2.7 (Injection-Date) and Section 3.2.5 (Expires), respectively.



 TOC 

3.1.2.  From

The From header field is the same as that specified in Section 3.6.2 of [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) with the added restrictions detailed above in Section 2.2 (Header Fields).

from            =  "From:" SP mailbox-list CRLF


 TOC 

3.1.3.  Message-ID

The Message-ID header field contains a unique message identifier. Netnews is more dependent on message identifier uniqueness and fast comparison than Email is, and some news software and standards [I‑D.ietf‑nntpext‑base] (Feather, C., “Network News Transfer Protocol,” June 2005.) might have trouble with the full range of possible <msg-id>s permitted by [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.). This section therefore restricts the syntax of <msg-id> as compared to Section 3.6.4 of [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.). The global uniqueness requirement for <msg-id> in [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) is to be understood as applying across all protocols using such message identifiers, and across both Email and Netnews in particular.

message-id      =  "Message-ID:" SP *WSP msg-id *WSP CRLF

msg-id          =  "<" msg-id-core ">"
                   ; maximum length is 250 octets

msg-id-core     =  id-left "@" id-right

id-left         =  dot-atom-text / no-fold-quote

id-right        =  dot-atom-text / no-fold-literal

no-fold-quote   =  DQUOTE
                      ( "." *mqtext /
                        *mqtext "." /
                        *mqtext mqspecial *mqtext )
                      DQUOTE

mqtext          =  atext / "." / mqspecial

mqspecial       =  "(" / ")" /      ; same as specials except
                   "<" /            ; "\" and DQUOTE quoted
                   "[" / "]" /      ; "." doubled and ">" omitted
                   ":" / ";" /
                   "@" / "," /
                   ".." / "\\" / "\" DQUOTE

no-fold-literal =  "[" *( mdtext / "\[" / "\]" / "\\" ) "]"

mdtext          =  %d33-61 /        ; The rest of the US-ASCII
                   %d63-90 /        ; characters not including
                   %d94-126         ; ">", "[", "]", or "\"

The msg-id MUST NOT be more than 250 octets in length.

NOTE: The length restriction ensures that systems that accept message identifiers as a parameter when referencing an article (e.g. [I‑D.ietf‑nntpext‑base] (Feather, C., “Network News Transfer Protocol,” June 2005.)) can rely on a bounded length.

Observe that msg-id includes the < and >.

Observe also that in contrast to the corresponding header field in [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.):

This is to simplify processing by news servers and to ensure interoperability with existing implementations and compliance with [I‑D.ietf‑nntpext‑base] (Feather, C., “Network News Transfer Protocol,” June 2005.). Thus, whereas under [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) the following <msg-id>s would be considered semantically equivalent,

<ab.cd@example.com>
<"ab.cd"@example.com>
<"ab.\cd"@example.com>

only the first of them is syntactically permitted by this standard, and hence a simple comparison of octets will always suffice to determine the identity of two <msg-id>s.

Also note that this updated ABNF applies wherever <msg-id> is used, including the References header field discussed in Section 3.2.10 (References) and the Supersedes header field discussed in Section 3.2.12 (Supersedes).

Some software will try to match the <id-right> of a <msg-id> in a case-insensitive fashion; some will match it in a case-sensitive fashion. Implementations MUST NOT generate a Message-ID where the only difference from another Message-ID is the case of characters in the <id-right> part.

When generating a <msg-id>, implementations SHOULD use a domain name as the <id-right>.

NOTE: Section 3.6.4 of [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) recommends that the <id-right> should be a domain name or a domain literal. Domain literals are troublesome since many IP addresses are not globally unique; domain names are more likely to generate unique Message-IDs.



 TOC 

3.1.4.  Newsgroups

The Newsgroups header field specifies the newsgroup(s) to which the article is posted.

newsgroups      =  "Newsgroups:" SP newsgroup-list CRLF

newsgroup-list  =  *WSP newsgroup-name
                   *( [FWS] "," [FWS] newsgroup-name ) *WSP

newsgroup-name  =  component *( "." component )

component       =  1*component-char

component-char  =  ALPHA / DIGIT / "+" / "-" / "_"

Not all servers support [FWS] in the list of newsgroups. In particular, folding the Newsgroups header field over several lines has been shown to harm propagation significantly. [FWS] in the <newsgroup-list> SHOULD NOT be generated, but MUST be accepted.

A <component> SHOULD NOT consist solely of digits and SHOULD NOT contain uppercase letters. Such <component>s MAY be used only to refer to existing groups that do not conform to this naming scheme, but MUST NOT be used otherwise.

NOTE: All-digit <component>s conflict with one widely used storage scheme for articles. Mixed-case groups cause confusion between systems with case-sensitive matching and systems with case-insensitive matching of <newsgroup-name>s.

<component>s beginning with underline ("_") are reserved for use by future versions of this standard and SHOULD NOT be generated by user agents (whether in header fields or in newgroup control messages as defined by [I‑D.ietf‑usefor‑usepro] (Lindsey, C., “News Article Architecture and Protocols,” January 2006.)). However, such names MUST be accepted by news servers.

<component>s beginning with "+" and "-" are reserved for private use and SHOULD NOT be generated by user agents (whether in header fields or in newgroup control messages [I‑D.ietf‑usefor‑usepro] (Lindsey, C., “News Article Architecture and Protocols,” January 2006.)) without a private prior agreement to do so. However, such names MUST be accepted by news servers.

The following <newsgroup-name>s are reserved and MUST NOT be used as the name of a newsgroup:

The following <newsgroup-name>s have been used for specific purposes in various implementations and protocols and therefore MUST NOT be used for the names of normal newsgroups. They MAY be used for their specific purpose or by local agreement.

NOTE: "example.*" is reserved for examples in this and other standards; "poster" has a special meaning in the Followup-To header field; "to.*" is reserved for certain point-to-point communications in conjunction with the "ihave" control message as defined in [I‑D.ietf‑usefor‑usepro] (Lindsey, C., “News Article Architecture and Protocols,” January 2006.); "control.*" and "junk" have special meanings in some news servers; "all" is used as a wildcard in some implementations; and "ctl" was formerly used to indicate a <control-command> within the Newsgroups header field.



 TOC 

3.1.5.  Path

The Path header field indicates the route taken by an article since its injection into the Netnews system. Each agent that processes an article is required to prepend at least one <path-identity> to this header field body. This is primarily so that news servers are able to avoid sending articles to sites already known to have them, in particular the site they came from, and additionally to permit tracing the route articles take in moving over the network, and for gathering statistics.

path            =  "Path:" SP *WSP path-list tail-entry *WSP CRLF

path-list       =  *( path-identity [FWS] [path-diagnostic] "!" )

path-diagnostic =  diag-match / diag-other / diag-deprecated

diag-match      =  "!"		; another "!"

diag-other      =  "!." diag-keyword [ "." diag-identity ] [FWS]

diag-deprecated =  "!" IPv4address [FWS]

diag-keyword    =  1*ALPHA	; see [I-D.ietf-usefor-usepro]

diag-identity   =  path-identity / IPv4address / IPv6address

tail-entry      =  path-nodot
                   ; may be the string "not-for-mail"

path-identity   =  ( 1*( label "." ) toplabel ) / path-nodot

path-nodot      =  1*( alphanum / "-" / "_" )	; legacy names

label           =  alphanum [ *( alphanum / "-" ) alphanum ]

toplabel        =  ( [ label *( "-" ) ] ALPHA *( "-" ) label ) /
                   ( label *( "-" ) ALPHA [ *( "-" ) label ] ) /
                   ( label 1*( "-" ) label )

alphanum        =  ALPHA / DIGIT	; compare RFC3696

A <path-identity> is a name identifying a site. It takes the form of a domain name having two or more components separated by dots, or a single name with no dots (<path-nodot>).

Each <path-identity> in the <path-list> (which does not include the <tail-entry>) indicates, from right to left, the successive agents through which the article has passed. The use of the <diag-match>, which appears as "!!", indicates that the agent to its left verified the identity of the agent to its right before accepting the article (whereas the <path-delimiter> "!" implies no such claim).

NOTE: Historically, the <tail-entry> indicated the name of the sender. If not used for this purpose, the string "not-for-mail" is often used instead (since at one time the whole path could be used as a mail address for the sender).

NOTE: Although case-insensitive, it is intended that the <diag-keyword>s should be in uppercase, to distinguish them from the <path-identity>s which are traditionally in lower case.

A <path-diagnostic> is an item inserted into the Path header field for purposes other than to indicate the name of a site. The use of these is described in [I‑D.ietf‑usefor‑usepro] (Lindsey, C., “News Article Architecture and Protocols,” January 2006.).

NOTE: One usage of a <path-diagnostic> is to record an IP address. The fact that <IPv6address>es are allowed means that the colon (:) is permitted; note that this may cause interoperability problems at older sites that regard ":" as a <path-delimiter> and have neighbors whose names have 4 or fewer characters, and where all the characters are valid HEX digits.

NOTE: Although <IPv4address>es have occasionally been used in the past (usually with a diagnostic intent), their continued use is deprecated (though it is still acceptable in the form of the <diag-deprecated>).



 TOC 

3.1.6.  Subject

The Subject header field is the same as that specified in Section 3.6.5 of [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) with the added restrictions detailed above in Section 2.2 (Header Fields). Further discussion of the content of the Subject header field appears in [I‑D.ietf‑usefor‑usepro] (Lindsey, C., “News Article Architecture and Protocols,” January 2006.) and [I‑D.ietf‑usefor‑useage] (Lindsey, C., “Usenet Best Practice,” March 2005.).

subject         =  "Subject:" SP unstructured CRLF


 TOC 

3.2.  Optional Header Fields

None of the header fields appearing in this section is required to appear in every article, but some of them may be required in certain types of article. Further discussion of these requirements appears in [I‑D.ietf‑usefor‑usepro] (Lindsey, C., “News Article Architecture and Protocols,” January 2006.) and [I‑D.ietf‑usefor‑useage] (Lindsey, C., “Usenet Best Practice,” March 2005.).

The header fields Comments, Keywords, Reply-To, and Sender are used in Netnews articles in the same circumstances and with the same meanings as those specified in [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) with the added restrictions detailed above in Section 2.2 (Header Fields). Multiple occurrences of the Keywords header field are not permitted.

comments        =  "Comments:" SP unstructured CRLF

keywords        =  "Keywords:" SP phrase *("," phrase) CRLF

reply-to        =  "Reply-To:" SP address-list CRLF

sender          =  "Sender:" SP mailbox CRLF

The MIME header fields MIME-Version, Content-Type, Content-Transfer-Encoding, Content-Disposition, and Content-Language are used in Netnews articles in the same circumstances and with the same meanings as those specified in [RFC2045] (Freed, N. and N. Borenstein, “Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies,” November 1996.), [RFC2183] (Troost, R., Dorner, S., and K. Moore, “Communicating Presentation Information in Internet Messages: The Content-Disposition Header Field,” August 1997.), and [RFC3282] (Alvestrand, H., “Content Language Headers,” May 2002.) with the added restrictions detailed above in Section 2.2 (Header Fields).

All remaining news header fields are described below.



 TOC 

3.2.1.  Approved

The Approved header field indicates the mailing addresses (and possibly the full names) of the persons or entities approving the article for posting. Its principal uses are in moderated articles and in group control messages; see [I‑D.ietf‑usefor‑usepro] (Lindsey, C., “News Article Architecture and Protocols,” January 2006.).

approved        =  "Approved:" SP mailbox-list CRLF


 TOC 

3.2.2.  Archive

The Archive header field provides an indication of the poster's intent regarding preservation of the article in publicly accessible long-term or permanent storage.

archive         =  "Archive:" SP [CFWS] ("no" / "yes")
                   *( [CFWS] ";" [CFWS] archive-param ) [CFWS] CRLF

archive-param   =  parameter

The presence of an Archive header field in an article with a field body of "no" indicates that the poster does not permit redistribution from publicly accessible long-term or permanent archives. A field body of "yes" indicates that the poster permits such redistribution.

No <parameter>s are currently defined; if present, they can be ignored. Further discussion of the use of the Archive header field appears in [I‑D.ietf‑usefor‑useage] (Lindsey, C., “Usenet Best Practice,” March 2005.).



 TOC 

3.2.3.  Control

The Control header field marks the article as a control message and specifies the desired actions (additional to the usual ones of storing and/or relaying the article).

control         =  "Control:" SP *WSP control-command *WSP CRLF

control-command =  verb *( 1*WSP argument )

verb            =  token

argument        =  1*( %x21-7E )

The verb indicates what action should be taken, and the argument(s) (if any) supply details. In some cases, the <body> (as defined in [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.)) of the article may also contain details. The legal verbs and respective arguments are discussed in the companion document, [I‑D.ietf‑usefor‑usepro] (Lindsey, C., “News Article Architecture and Protocols,” January 2006.).

An article with a Control header field MUST NOT also have a Supersedes header field.



 TOC 

3.2.4.  Distribution

The Distribution header field specifies geographic or organizational limits on an article's propagation.

distribution    =  "Distribution:" SP dist-list CRLF

dist-list       =  *WSP dist-name
                   *( [FWS] "," [FWS] dist-name ) *WSP

dist-name       =  ALPHA / DIGIT
                   *( ALPHA / DIGIT / "+" / "-" / "_" )

The <dist-name>s "world" and "local" are reserved. "world" indicates unlimited distribution and SHOULD NOT be used explicitly, since it is the default when the Distribution header field is absent entirely. "local" is reserved for indicating distribution only to the local site, as defined by local software configuration.

"All" MUST NOT be used as a <dist-name>. <dist-name>s SHOULD contain at least three characters, except when they are two-letter country codes drawn from [ISO3166‑1] (International Organization for Standardization, “ISO 3166-1:1997. Codes for the representation of names of countries and their subdivisions -- Part 1: Country codes,” 1997.). <dist-name>s are case-insensitive (i.e. "US", "Us", "uS", and "us" all specify the same distribution).

[FWS] in the <dist-list> SHOULD NOT be generated, but MUST be accepted.



 TOC 

3.2.5.  Expires

The Expires header field specifies a date and time when the poster deems the article to be no longer relevant and could usefully be removed ("expired").

NOTE: This header field is useful when the poster desires an unusually long or an unusually short expiry time.

expires         =  "Expires:" SP date-time CRLF

See the remarks under Section 3.1.1 (Date) regarding the syntax of <date‑time> and the requirements and recommendations to which it is subject.

NOTE: The Expires header field is also sometimes used in Email with a similar meaning; see [RFC2156] (Kille, S., “MIXER (Mime Internet X.400 Enhanced Relay): Mapping between X.400 and RFC 822/MIME,” January 1998.).



 TOC 

3.2.6.  Followup-To

The Followup-To header field specifies to which newsgroup(s) the poster has requested that followups are to be posted. The Followup-To header field SHOULD NOT appear in a message, unless its content is different from the content of the Newsgroups header field.

followup-to     =  "Followup-To:" SP ( newsgroup-list / poster-text )
                   CRLF

poster-text     =  *WSP %d112.111.115.116.101.114 *WSP
                   ; "poster" in lower-case

The syntax is the same as that of the Newsgroups (Newsgroups) header field, with the exception that the keyword "poster" requests that followups should be emailed directly to the article's poster (using the addresses contained in the Reply-To header field if one exists, otherwise using the addresses contained in the From header field) rather than posted to any newsgroups. Agents MUST generate the keyword "poster" in lower-case, but MAY choose to recognize case-insensitive forms such as "Poster".

As in the Newsgroups (Newsgroups) header field, [FWS] in the <newsgroup-list> SHOULD NOT be generated, but MUST be accepted.



 TOC 

3.2.7.  Injection-Date

The Injection-Date header field contains the date and time that the article was injected into the network. Its purpose is to enable news servers, when checking for "stale" articles, to use a <date-time> that was added by a news server at injection time rather than one added by the user agent at message composition time.

This header field MUST be inserted whenever an article is injected. However, software that predates this standard does not use this header, and therefore agents MUST accept articles without the Injection-Date header field.

injection-date  =  "Injection-Date:" SP date-time CRLF

See the remarks under Section 3.1.1 (Date) regarding the syntax of <date‑time> and the requirements and recommendations to which it is subject.

NOTE: Since clocks on various agents are not necessarily synchronized, the <date-time> in this header field might not be a later value than that in the Date header field. Agents MUST NOT alter a pre-existing Date header field when adding an Injection-Date header field.

This header field is intended to replace the currently-used but undocumented "NNTP-Posting-Date" header field, whose use is now deprecated.



 TOC 

3.2.8.  Injection-Info

The Injection-Info header field contains information provided by the injecting news server as to how an article entered the Netnews system and to assist in tracing its true origin. It can also specify one or more addresses where complaints concerning the poster of the article may be sent.

injection-info  =  "Injection-Info:" SP [CFWS] path-identity
                   [CFWS] *( ";" [CFWS] parameter ) [CFWS] CRLF

NOTE: The syntax of <parameter> ([RFC2045] (Freed, N. and N. Borenstein, “Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies,” November 1996.) Section 5.1 as amended by [RFC2231] (Freed, N. and K. Moore, “MIME Parameter Value and Encoded Word Extensions: Character Sets, Languages, and Continuations,” November 1997.)), taken in conjunction with the folding rules of [RFC0822] (Crocker, D., “Standard for the format of ARPA Internet text messages,” August 1982.), effectively allows [CFWS] to occur on either side of the "=" inside a <parameter>.

The following table gives the <attribute> and the format of the <value> for each <parameter> defined for use with this header field. At most one occurrence of each such <parameter> is allowed.

<attribute>              format of <value>
--------------------     -----------------
"posting-host"           a <host-value>
"posting-account"        any <value>
"logging-data"           any <value>
"mail-complaints-to"     an <address-list>

where

host-value      =  dot-atom-text / IPv4address / IPv6address /
                   (dot-atom-text ":" ( IPv4address / IPv6address ))

NOTE: Since any such <host-value> or <address-list> also has to be a syntactically correct <value>, it will usually be necessary to encapsulate it as a <quoted-string>, for example:

    posting-host = "posting@example.com:192.168.0.1"

Other <attribute>s SHOULD NOT be used unless defined in extensions to this standard. If non-standards-based <attribute>s are used, they MUST begin with an "x-".

Although comments and folding of white space are permitted throughout the Injection-Info header field, folding SHOULD NOT be used within any <parameter>. Folding SHOULD only occur before or after the ";" separating <parameter>s, and comments SHOULD only be used following the last <parameter>.

NOTE: Some of this information has previously been sent in non-standardized header fields such as NNTP-Posting-Host, X-Trace, X-Complaints-To, and others. Once a news server generates an Injection-Info header field, it should have no need to send these non-standard header fields.

The "posting-host" <parameter> specifies the FQDN and/or IP address (IPv4address or IPv6address) of the host from which the news server received the article.

NOTE: If the "posting-host" <parameter> fails to deterministically identify the host (e.g. dynamic IP address allocation), the "posting-account" or the "logging-data" <parameter> may provide additional information about the true origin of the article.

The "posting-account" <parameter> identifies the source from which that news server received the article, in a notation that can be interpreted by the news server administrator. This notation can include any information the administrator deems pertinent. In order to limit the exposure of personal data, it SHOULD be given in a form that cannot be interpreted by other sites. However, to make it useful for rate limiting and abuse detection, two messages posted from the same source SHOULD have the same value of "posting-account", and two messages from different sources SHOULD have differing values of "posting-account". The exact definition of "source" is left to the discretion of the news server administrator.

The "logging-data" <parameter> contains information (typically a session number or other non-persistent means of identifying a posting account) that will enable the true origin of the article to be determined by reference to logging information kept by the news server.

The "mail-complaints-to" <parameter> specifies one or more mailboxes for sending complaints concerning the behavior of the poster of the article.

It is a matter of local policy which of the above <parameter>s to include. Some pieces of information have privacy implications; this is discussed in [I‑D.ietf‑usefor‑useage] (Lindsey, C., “Usenet Best Practice,” March 2005.).



 TOC 

3.2.9.  Organization

The Organization header field is a short phrase identifying the poster's organization.

organization    =  "Organization:" SP unstructured CRLF

NOTE: There is no "s" in Organization.



 TOC 

3.2.10.  References

The References header field is the same as that specified in Section 3.6.4 of [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) with the added restrictions detailed above in Section 2.2 (Header Fields) and those listed below:

references      =  "References:" SP [CFWS] msg-id *(CFWS msg-id)
                   [CFWS] CRLF


 TOC 

3.2.11.  Summary

The Summary header field is a short phrase summarizing the article's content.

summary         =  "Summary:" SP unstructured CRLF


 TOC 

3.2.12.  Supersedes

The Supersedes header field contains a message identifier specifying an article to be superseded upon the arrival of this one. An article containing a Supersedes header field is equivalent to a "cancel" [I‑D.ietf‑usefor‑usepro] (Lindsey, C., “News Article Architecture and Protocols,” January 2006.) control message for the specified article, followed immediately by the new article without the Supersedes header field.

supersedes      =  "Supersedes:" SP *WSP msg-id *WSP CRLF

NOTE: There is no "c" in Supersedes.

NOTE: The Supersedes header field defined here has no connection with the Supersedes header field that sometimes appears in Email messages converted from X.400 according to [RFC2156] (Kille, S., “MIXER (Mime Internet X.400 Enhanced Relay): Mapping between X.400 and RFC 822/MIME,” January 1998.); in particular, the syntax here permits only one <msg-id> in contrast to the multiple <msg-id>s in that Email version.



 TOC 

3.2.13.  User-Agent

The User-Agent header field contains information about the user agent (typically a newsreader) generating the article, for statistical purposes and tracing of standards violations to specific software needing correction. It is intended that this header field be suitable for use in Email.

user-agent      =  "User-Agent:" SP 1*product [CFWS] CRLF

product         =  [CFWS] token [ [CFWS] "/" product-version ]

product-version =  [CFWS] token

This header field MAY contain multiple <product> tokens identifying the user agent and any subproducts which form a significant part of it, listed in order of their significance for identifying the application.

NOTE: Some of this information has previously been sent in non-standardized header fields such as X-Newsreader, X-Mailer, X-Posting-Agent, X-Http-User-Agent, and others. Once a user agent generates a User-Agent header field, it should have no need to send these non-standard header fields.

NOTE: [RFC2616] (Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter, L., Leach, P., and T. Berners-Lee, “Hypertext Transfer Protocol -- HTTP/1.1,” June 1999.) describes a similar facility for the HTTP protocol. The Netnews article format differs in that "{" and "}" are allowed in tokens (<product> and <product-version>) and comments are permitted wherever whitespace is allowed.



 TOC 

3.2.14.  Xref

The Xref header field indicates where an article was filed by the last news server to process it. User agents often use the information in the Xref header field to avoid multiple processing of crossposted articles.

xref            =  "Xref:" SP *WSP server-name
                   1*( FWS location ) *WSP CRLF

server-name     =  path-identity

location        =  newsgroup-name ":" article-locator

article-locator =  1*( %x21-27 / %x29-3A / %x3C-7E )
                   ; US-ASCII printable characters
                   ; except '(' and ';'

The <server-name> is included so that software can determine which news server generated the header field. The locations specify what newsgroups the article was filed under (which may differ from those in the Newsgroups header field) and where it was filed under them. The exact form of an <article-locator> is implementation-specific.

NOTE: The traditional form of an <article-locator> (as required by [I‑D.ietf‑nntpext‑base] (Feather, C., “Network News Transfer Protocol,” June 2005.)) is a decimal number, with articles in each newsgroup numbered consecutively starting from 1.



 TOC 

3.3.  Obsolete Header Fields

The header fields Date-Received, Posting-Version, and Relay-Version defined in [RFC0850] (Horton, M., “Standard for interchange of USENET messages,” June 1983.), as well as Also-Control, Article-Names, Article-Updates, and See-Also defined in [Son‑of‑1036] (Spencer, H., “News Article Format and Transmission,” June 1994.) are declared obsolete. See the cited specification documents for further information on their original use.

These header fields MUST NOT be generated and SHOULD be ignored.



 TOC 

3.3.1.  Lines

The Lines header field indicates the number of lines in the <body> (as defined in [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.)) of the article.

lines           =  "Lines:" SP *WSP 1*DIGIT *WSP CRLF

The line count is the number of CRLF separators in the <body>.

Historically, this header field was used by the [I‑D.ietf‑nntpext‑base] (Feather, C., “Network News Transfer Protocol,” June 2005.) overview facility, but its use for this purpose is now deprecated. As a result, this header field is to be regarded as obsolescent, and it is likely to be removed entirely in a future version of this standard. All agents SHOULD ignore it and SHOULD NOT generate it.



 TOC 

4.  Internationalization Considerations

Internationalization of Netnews article header fields and bodies is provided using MIME mechanisms discussed in Section 2.3 (MIME Conformance). Note that the generation of internationalized <newsgroup-name>s for use in header fields is not addressed in this document.



 TOC 

5.  Security Considerations

The Netnews article format specified in this document does not provide any security services, such as confidentiality, authentication of sender, or non-repudiation. Instead, such services need to be layered above, using such protocols as S/MIME [RFC3851] (Ramsdell, B., “Secure/Multipurpose Internet Mail Extensions (S/MIME) Version 3.1 Message Specification,” July 2004.) or PGP/MIME [RFC3156] (Elkins, M., Del Torto, D., Levien, R., and T. Roessler, “MIME Security with OpenPGP,” August 2001.), or below, using secure versions of news transport protocols. Additionally, several currently non-standardized protocols such as [PGPVERIFY] (Lawrence, D., “PGPverify,” June 1999.) may be standardized in the near future.

Message identifiers (Section 3.1.3 (Message-ID)) in Netnews articles are required to be unique; articles may be refused (in server-to-server transfer) if the identifier has already been seen. If a malicious agent can predict the identifier of an article, it can preempt the article by posting its own article (possibly to a quite different group) with the same message identifier, thereby preventing the target article from propagating. Therefore, agents that generate message identifiers for Netnews articles SHOULD ensure that they are unpredictable.

MIME security considerations are discussed in [RFC2046] (Freed, N. and N. Borenstein, “Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types,” November 1996.). Note that the full range of encodings allowed for parameters in [RFC2046] (Freed, N. and N. Borenstein, “Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types,” November 1996.) and [RFC2231] (Freed, N. and K. Moore, “MIME Parameter Value and Encoded Word Extensions: Character Sets, Languages, and Continuations,” November 1997.) permits constructs that simple parsers may fail to parse correctly; examples of hard-to-parse constructs are:

Content-Type: multipart/mixed
  (; boundary=foo ; xyz=");bOuNdArY*=''next%20part(")

Content-Type: multipart/digest;
  boundary (not=me) = ("yes ;-) simple (foo;bar") ; x-foo = xyzzy

Such deficiencies in parsing may be used as part of an attack.

Further security considerations are discussed in [I‑D.ietf‑usefor‑usepro] (Lindsey, C., “News Article Architecture and Protocols,” January 2006.).



 TOC 

6.  IANA Considerations

IANA is requested to register the following header fields in the Permanent Message Header Field Repository, in accordance with the procedures set out in [RFC3864] (Klyne, G., Nottingham, M., and J. Mogul, “Registration Procedures for Message Header Fields,” September 2004.).

Header field name: Also-Control
Applicable protocol: netnews
Status: obsoleted
Author/change controller: IETF
Specification document(s): [Son‑of‑1036] (Spencer, H., “News Article Format and Transmission,” June 1994.) (Section 6.15)

Header field name: Approved
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.2.1 (Approved))

Header field name: Archive
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.2.2 (Archive))

Header field name: Article-Names
Applicable protocol: netnews
Status: obsoleted
Author/change controller: IETF
Specification document(s): [Son‑of‑1036] (Spencer, H., “News Article Format and Transmission,” June 1994.) (Section 6.17)

Header field name: Article-Updates
Applicable protocol: netnews
Status: obsoleted
Author/change controller: IETF
Specification document(s): [Son‑of‑1036] (Spencer, H., “News Article Format and Transmission,” June 1994.) (Section 6.18)

Header field name: Comments
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.2 (Optional Header Fields)),
[RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) (Section 3.6.5)

Header field name: Control
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.2.3 (Control))

Header field name: Date
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.1.1 (Date)),
[RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) (Section 3.6.1)

Header field name: Date-Received
Applicable protocol: netnews
Status: obsoleted
Author/change controller: IETF
Specification document(s): [RFC0850] (Horton, M., “Standard for interchange of USENET messages,” June 1983.) (Section 2.2.4)

Header field name: Distribution
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.2.4 (Distribution))

Header field name: Expires
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.2.5 (Expires))

Header field name: Followup-To
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.2.6 (Followup-To))

Header field name: From
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.1.2 (From)),
[RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) (Section 3.6.2)

Header field name: Injection-Date
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.2.7 (Injection-Date))

Header field name: Injection-Info
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.2.8 (Injection-Info))

Header field name: Keywords
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.2 (Optional Header Fields)),
[RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) (Section 3.6.5)

Header field name: Lines
Applicable protocol: netnews
Status: deprecated
Author/change controller: IETF
Specification document(s): This document (Section 3.3.1 (Lines))
Related information: [I‑D.ietf‑nntpext‑base] (Feather, C., “Network News Transfer Protocol,” June 2005.) (Section 8.1)

Header field name: Message-ID
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.1.3 (Message-ID))
Related information: [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) (Section 3.6.4)

Header field name: Newsgroups
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.1.4 (Newsgroups))

Header field name: NNTP-Posting-Date
Applicable protocol: netnews
Status: obsoleted
Author/change controller: IETF
Specification document(s): none

Header field name: NNTP-Posting-Host
Applicable protocol: netnews
Status: obsoleted
Author/change controller: IETF
Specification document(s): [RFC2980] (Barber, S., “Common NNTP Extensions,” October 2000.) (Section 3.4.1)

Header field name: Organization
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.2.9 (Organization))

Header field name: Path
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.1.5 (Path))

Header field name: Posting-Version
Applicable protocol: netnews
Status: obsoleted
Author/change controller: IETF
Specification document(s): [RFC0850] (Horton, M., “Standard for interchange of USENET messages,” June 1983.) (Section 2.1.2)

Header field name: References
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.2.10 (References)),
[RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) (Section 3.6.4)

Header field name: Relay-Version
Applicable protocol: netnews
Status: obsoleted
Author/change controller: IETF
Specification document(s): [RFC0850] (Horton, M., “Standard for interchange of USENET messages,” June 1983.) (Section 2.1.1)

Header field name: Reply-To
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.2 (Optional Header Fields)),
[RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) (Section 3.6.2)

Header field name: See-Also
Applicable protocol: netnews
Status: obsoleted
Author/change controller: IETF
Specification document(s): [Son‑of‑1036] (Spencer, H., “News Article Format and Transmission,” June 1994.) (Section 6.16)

Header field name: Sender
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.2 (Optional Header Fields)),
[RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) (Section 3.6.2)

Header field name: Subject
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.1.6 (Subject)),
[RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) (Section 3.6.5)

Header field name: Summary
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.2.11 (Summary))

Header field name: Supersedes
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.2.12 (Supersedes))

Header field name: User-Agent
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.2.13 (User-Agent))
Related information: [RFC2616] (Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter, L., Leach, P., and T. Berners-Lee, “Hypertext Transfer Protocol -- HTTP/1.1,” June 1999.) (Section 14.43)

Header field name: Xref
Applicable protocol: netnews
Status: standard
Author/change controller: IETF
Specification document(s): This document (Section 3.2.14 (Xref))



 TOC 

7.  References



 TOC 

7.1. Normative References

[Errata] RFC Editor Errata,”  http://www.rfc-editor.org/errata.html.
[RFC2045] Freed, N. and N. Borenstein, “Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies,” RFC 2045, November 1996.
[RFC2046] Freed, N. and N. Borenstein, “Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types,” RFC 2046, November 1996.
[RFC2047] Moore, K., “MIME (Multipurpose Internet Mail Extensions) Part Three: Message Header Extensions for Non-ASCII Text,” RFC 2047, November 1996 (TXT, HTML, XML).
[RFC2049] Freed, N. and N. Borenstein, “Multipurpose Internet Mail Extensions (MIME) Part Five: Conformance Criteria and Examples,” RFC 2049, November 1996 (TXT, HTML, XML).
[RFC2119] Bradner, S., “Key words for use in RFCs to Indicate Requirement Levels,” BCP 14, RFC 2119, March 1997 (TXT, HTML, XML).
[RFC2183] Troost, R., Dorner, S., and K. Moore, “Communicating Presentation Information in Internet Messages: The Content-Disposition Header Field,” RFC 2183, August 1997 (TXT, HTML, XML).
[RFC2231] Freed, N. and K. Moore, “MIME Parameter Value and Encoded Word Extensions: Character Sets, Languages, and Continuations,” RFC 2231, November 1997 (TXT, HTML, XML).
[RFC2822] Resnick, P., “Internet Message Format,” RFC 2822, April 2001.
[RFC3282] Alvestrand, H., “Content Language Headers,” RFC 3282, May 2002.
[RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, “Uniform Resource Identifier (URI): Generic Syntax,” STD 66, RFC 3986, January 2005 (TXT, HTML, XML).
[RFC4234] Crocker, D., Ed. and P. Overell, “Augmented BNF for Syntax Specifications: ABNF,” RFC 4234, October 2005 (TXT, HTML, XML).


 TOC 

7.2. Informative References

[I-D.ietf-nntpext-base] Feather, C., “Network News Transfer Protocol,” draft-ietf-nntpext-base-27 (work in progress), June 2005.
[I-D.ietf-usefor-useage] Lindsey, C., “Usenet Best Practice,” draft-ietf-usefor-useage-01 (work in progress), March 2005.
[I-D.ietf-usefor-usepro] Lindsey, C., “News Article Architecture and Protocols,” draft-ietf-usefor-usepro-05 (work in progress), January 2006.
[ISO3166-1] International Organization for Standardization, “ISO 3166-1:1997. Codes for the representation of names of countries and their subdivisions -- Part 1: Country codes,” 1997.
[PGPVERIFY] Lawrence, D., “PGPverify,”  ftp://ftp.isc.org/pub/pgpcontrol/README.html, June 1999.
[RFC0822] Crocker, D., “Standard for the format of ARPA Internet text messages,” STD 11, RFC 822, August 1982.
[RFC0850] Horton, M., “Standard for interchange of USENET messages,” RFC 850, June 1983.
[RFC1036] Horton, M. and R. Adams, “Standard for interchange of USENET messages,” RFC 1036, December 1987.
[RFC2156] Kille, S., “MIXER (Mime Internet X.400 Enhanced Relay): Mapping between X.400 and RFC 822/MIME,” RFC 2156, January 1998.
[RFC2616] Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter, L., Leach, P., and T. Berners-Lee, “Hypertext Transfer Protocol -- HTTP/1.1,” RFC 2616, June 1999 (TXT, PS, PDF, HTML, XML).
[RFC2980] Barber, S., “Common NNTP Extensions,” RFC 2980, October 2000.
[RFC3156] Elkins, M., Del Torto, D., Levien, R., and T. Roessler, “MIME Security with OpenPGP,” RFC 3156, August 2001.
[RFC3696] Klensin, J., “Application Techniques for Checking and Transformation of Names,” RFC 3696, February 2004.
[RFC3851] Ramsdell, B., “Secure/Multipurpose Internet Mail Extensions (S/MIME) Version 3.1 Message Specification,” RFC 3851, July 2004.
[RFC3864] Klyne, G., Nottingham, M., and J. Mogul, “Registration Procedures for Message Header Fields,” BCP 90, RFC 3864, September 2004.
[Son-of-1036] Spencer, H., “News Article Format and Transmission,”  ftp://ftp.zoo.toronto.edu/pub/news.txt.Z, June 1994.


 TOC 

Appendix A.  Acknowledgments

As this document is the result of an eight year effort, the number of people that have contributed to its content are too numerous to mention individually. Many thanks go out to all past and present members of the USEFOR Working Group of the Internet Engineering Task Force (IETF) and its accompanying mailing list.



 TOC 

Appendix B.  Differences from RFC 1036 and its derivatives

This appendix contains a list of changes that have been made in the Netnews Article Format from earlier standards, specifically [RFC1036] (Horton, M. and R. Adams, “Standard for interchange of USENET messages,” December 1987.).



 TOC 

Appendix C.  Differences from RFC 2822

This appendix lists the differences between the syntax allowed by the Netnews Article Format (this document) as compared to the Internet Message Format, as specified in [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.).

The Netnews article format is a strict subset of the Internet Message Format; all Netnews articles conform to the syntax of [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.).

The following restrictions are important:



 TOC 

Authors' Addresses

  Kenneth Murchison (editor)
  Carnegie Mellon University
  5000 Forbes Avenue
  Cyert Hall 285
  Pittsburgh, PA 15213
  U.S.A.
Phone:  +1 412 268 2638
Email:  murch@andrew.cmu.edu
  
  Charles H. Lindsey
  University of Manchester
  5 Clerewood Avenue
  Heald Green
  Cheadle
  Cheshire SK8 3JU
  U.K.
Phone:  +44 161 436 6131
Email:  chl@clerew.man.ac.uk
  
  Dan Kohn
  FlyDash, Inc.
  425 Alma St. #411
  Palo Alto, CA 94301
  U.S.A.
Phone:  +1 415 233 1000
Email:  dan@dankohn.com


 TOC 

Full Copyright Statement

Intellectual Property

Acknowledgment