A followup (ie, any article that is in response to another article) will always have a special header line, References: , which contains a list of the Message-ID's of all articles prior in this thread (subsection of the discussion).
As an example, take a look at the following discussion. Letters denote articles, and lines indicate where the article was a followup to.
A -- B -- C -- D -- E -- F
In this example, "A B C" is one thread, and "A D F" is another. Article
"F" contains the Message-ID's of "A" and "D" in its References:
It is easy to see how the discussion evolved, and you can even skip a certain 'sub-thread' if you think it is going off-topic, for example. But it's even more powerful. Imagine that a person reads article "B", and wants to followup, even though "B" was a few days old. His article, "G", now arrives at your site. Where should it go? With subject/date sorting, the article tree would look like this:
A -- B -- C | |-- D -- E | | -- F -- G
but that's not correct. The correct location for article "G" would be as another branch off "B".
A -- B -- C | | -- G -- D -- E -- F
Using the Usenet threading mechanism, this can be done quite easily. The newsreader simply adds the Message-ID of "B" to the References: header of "B", and then copies that new header to the header section of article "G".
When article "G" now arrives at a new server, the readers there can see that article "G" was a followup to "B", and so it should be put in the thread at the location above.
Last modified: 26 Jan 1997
Author: Arnoud "Galactus" Engelfriet
This document was generated with Orb v1.3 for OS/2.