<authoritem> ::= FROM: <SP> <user> <SP> AT <SP> <host>
<dateitem> ::= DATE: <SP> <date> <SP> <time> - <zone>
<subjectitem> ::= SUBJECT: <SP> <line>
<miscitem> ::= <keyword> : <SP> <line>
<date> ::= <vdate> ! <tdate>
<vdate> ::= <dayofmonth> <SP> <vmonth> <SP> <vyear>
<tdate> ::= <tmonth> / <dayofmonth> / <tyear>
<dayofmonth> ::= one or two decimal digits
<vmonth> ::= JAN ! FEB ! MAR ! APR ! MAY ! JUN !
JUL ! AUG ! SEP ! OCT ! NOV ! DEC
<tmonth> ::= one or two decimal digits
<vyear> ::= four decimal digits
<tyear> ::= two decimal digits
<zone> ::= EST ! EDT ! CST ! CDT ! MST ! MDT !
PST ! PDT ! GMT ! GDT
<time> ::= four decimal digits
<user> ::= <word>
<host> ::= a standard host name
<message> ::= <line> <CRLF> ! <line> <CRLF> <message>
<keyword> ::= <word>
<line> ::= a string containing any of the 128 ASCII
characters except CR and LF
<word> ::= a string containing any of the 128 ASCII
characters except CR, LF, and SP
<CRLF> ::= CR LF
<SP> ::= space
Please note the following:
(1) <authoritem>, <dateitem>, and <subjectitem> may each
appear at most once in <header>; <miscitem> may occur any
number of times. The order of <authoritem>, <dateitem>,
and <subjectitem> is insignificant, but they must proceed
all occurrences of <miscitem>.
(2) The case (upper or lower) of keywords -- specifically,
'FROM', 'DATE', 'SUBJECT' ,'AT', <host>, <zone>, <vmonth>
and <keyword> -- is insignificant. Although 'FROM', for
example, appears in upper-case in the formal syntax above,
in the header of an actual message it may appear as 'From'
(as in the example), or 'from', or 'FrOm', etc.
(3) No attempt has been made to legislate the format of
<user>, except to exclude spaces from it.
(4) The time has no internal punctuation.
(5) No provision is made for multiple authors.
We recommend that mail-sending subsystems which prefix header
information to the text of the user's message be modified