On Jan 17 2005, william(at)elan.net wrote:
It would be nice if you give direction on what to use in documents.
To expand my point of view, FWIW:
As a general principle, for (mail transport) discussions, commonly
used words such as "mail", "body", "header" should be invariant under
(mail transport) transformations. This is important, otherwise we have
to constantly think how the object being discussed changes as the mail
is moved. (This is a principle used in other areas of science).
For example, suppose the "header line" is defined as Charles proposed.
Say I want to discuss the third "header line" in the following text
Received: from sokol.elan.net (localhost.localdomain [127.0.0.1])
by sokol.elan.net (8.12.11/8.12.5) with ESMTP id j0I0l460005503;
Mon, 17 Jan 2005 16:47:04 -0800
I probably wouldn't discuss the third line because it's number three,
but I might say "let's discuss the header line containing the
date-time element". Now everybody has to waste time thinking about what
happens if the Received: line is reformatted, etc. This example is
easy enough, but other examples would not be.
Of course, sometimes it is important to discuss non-invariant
quantities. In those cases, it's reasonable to use more words to
describe sufficiently precisely the objects under scrutiny. For
example, the third "header line" in the example above could be called
the "third fold of the Received: field".
So the principle says that commonly used words should be reserved for
Since others are explaining their preferred terminology, here's what I
"header", "message header" or "mail header" refers to the full set of
data before the empty line which marks the beginning of the
body. (Actual layout and spaces play no role).
"header line" is a single unfolded "keyword: data" pair.
"X: header", "X: line", where X is a keyword is also a single unfolded
pair of the form "X: data".
"X: value" (e.g. From: value) is the data portion of the line.
I don't think I use anything else, it's too rare for me to discuss smaller
I do like to put the ':' after a field name to make implicitly clear
that it's a header line being discussed (e.g. let's discuss the
Received: line), even though the RFC (2)288 doesn't consider ':' part
of the field name.