INTERNET-DRAFT Charles H. Lindsey Usenet Format Working Group University of Manchester April 2001
6.16. Xref The Xref header is a local header (4.2.2.3) which indicates where an article was filed by the last server to process it, and whether it is a Replacement (6.15) for an earlier article. Xref-content = [CFWS] server-name 1*( CFWS location ) server-name = path-identity ; see 5.6.1 location = newsgroup-name ":" article-locator [ CFWS ( "revise" / "repost" ) ":" article-locator ] article-locator = 1*( %x21-7E ) ; US-ASCII printable characters The server-name is included so that software can determine which serving agent generated the header. The locations specify what newsgroups the article was filed under (which may differ from those in the Newsgroups header) 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 is a decimal number, with articles in each newsgroup numbered consecutively starting from 1. NNTP demands that such a model be provided, and much other software expects it, but it seems desirable to permit flexibility for unorthodox implementations. Whenever an Xref header is created by an agent for an article which includes a Replaces header with "disposition=revise" or "disposition=repost" (6.15), it SHOULD include, within the location field of each newsgroup in the Newsgroups header of whichever of the old articles referenced in that Replaces header is still current, a corresponding "revise:<old-article-locator>" or "repost:<old- article-locator>" for the oldest article known to be being replaced, where <old-article-locator> is the article-locator under which that oldest article was filed. If the Replaces header has a "disposition=replace" (explicit or implicit) the Xref header MUST NOT include any such reference to an <old-article-locator>. NOTE: This is to enable reading agents to avoid showing that article to users who have already read any of those older articles (see 6.15). Because several replacements for a given article may arrive in the period between attempts by a reader to read a given newsgroup, it is useful to include the oldest one in the Xref header. The information necessary to determine this article can be obtained from the Xref header of the current version of the article just before it is deleted. Observe that a server that never received one of the replaced articles can still generate suitable information from whichever earlier version it actually has. This is why it is useful for a Replaces header to mention more than one earlier article, especially when replacements are being issued in quick succession. NOTE: "revise" and "repost" are case-insensitive. An agent inserting an Xref header into an article MUST delete any previous Xref header(s). A relaying agent MAY delete it before relaying, but otherwise it SHOULD be ignored (and usually replaced) by any relying or serving agent receiving it. An agent MUST use the same serving-name in Xref headers as the path- identity it uses in Path headers.[Previous Up Next]
See also previous draft (03): 6.14. Xref
See also previous draft (02): 6.12 Xref
See also previous draft (son-of-1036): 6_12__Xref
See also previous draft (rfc-1036): RFC1036_2_2_13__Xref