gnus: Headers
11.7.4 Headers
--------------
Internally Gnus uses a format for storing article headers that
corresponds to the NOV format in a mysterious fashion. One could almost
suspect that the author looked at the NOV specification and just
shamelessly _stole_ the entire thing, and one would be right.
“Header” is a severely overloaded term. “Header” is used in RFC 1036
to talk about lines in the head of an article (e.g., ‘From’). It is
used by many people as a synonym for “head”—“the header and the body”.
(That should be avoided, in my opinion.) And Gnus uses a format
internally that it calls “header”, which is what I’m talking about here.
This is a 9-element vector, basically, with each header (ouch) having
one slot.
These slots are, in order: ‘number’, ‘subject’, ‘from’, ‘date’, ‘id’,
‘references’, ‘chars’, ‘lines’, ‘xref’, and ‘extra’. There are macros
for accessing and setting these slots—they all have predictable names
beginning with ‘mail-header-’ and ‘mail-header-set-’, respectively.
All these slots contain strings, except the ‘extra’ slot, which
contains an alist of header/value pairs (To From Newsgroups).