Hi,
Alejandro Colomar via Mutt-dev <[email protected]> writes:
Because that would be invalid. A mail thread is a tree;
References: describes a path through a tree, like a pathname of
a file. In a tree, a node can only have one parent. Message
threads, being trees, do not allow multiple parents.
This is allowed. In-Reply-To can have more than one message
IDs. Quoting RFC 5322:
The "References:" and "In-Reply-To:" fields each contain
one or more unique message identifiers, optionally separated by
CFWS.
I have personally used this one or two times, when replying to
more than one message at once. I suspect that --since I did it
manually--, I got the References from only one of them, but I
don't remember.
Out of curiosity, I've grepped for all mails that have something
like that in my maildir:
JFYI, this was discussed in the IETF working group during the work
on either 2822 or 5322, I think it may have been in 2003 or 2004
but don't hold me to that.
A mail thread is not necessarily a tree. Many people want it to
be, much software expects it to be, but that relies on cooperation
by everyone, and some email software doesn't cooperate. You can
say it's a DAG, but I've even seen cycles.
Some people DO send a single message that replies to several other
messages in a thread. Fact of life. Like it or not.
The cycles are due to bugs or attacks, I think, but the DAG nature
is due to intentional behaviour.
The conclusion at the time was twofold. ① In-Reply-To should name
all the messages to which this message is a direct reply. ②
References should contain the References of the message being
replied to and Message-Id of that message, if this message is a
reply to a single message. ③ There is no specified algorithm for
constructing References for a message that is a reply to several
messages. I think someone mentioned a MUA that can construct such
replies, one with a four-letter abbreviation as name, but nobody
wanted to discuss this in detail or standardise it. Yes, this is
the third point in a two-point list, and it's a no-op.
Arnt