<?xml version="1.0" encoding="utf-8"?>
<!-- name="GENERATOR" content="github.com/mmarkdown/mmark Mmark Markdown Processor - mmark.miek.nl" -->
<rfc version="3" ipr="trust200902" docName="draft-billon-expires-10" submissionType="IETF" category="std" xml:lang="en" xmlns:xi="http://www.w3.org/2001/XInclude" indexInclude="true" consensus="true">

<front>
<title abbrev="expires">Updated Use of the Expires Message Header Field</title><seriesInfo value="draft-billon-expires-10" stream="IETF" status="standard" name="Internet-Draft"></seriesInfo>
<author initials="B." surname="Billon" fullname="Benjamin Billon"><organization>Splio</organization><address><postal><street></street>
</postal><email>bbillon@splio.com</email>
</address></author><author initials="J." surname="Levine" fullname="John Levine"><organization>Standcore LLC</organization><address><postal><street></street>
</postal><email>standards@standcore.com</email>
</address></author><date/>
<area>Application</area>
<workgroup></workgroup>
<keyword>email</keyword>

<abstract>
<t>This document allows broader use of the Expires message header field for mail messages.
Message creators can then indicate when a message
expires, while recipients would use this information to
handle an expired message differently.</t>
</abstract>

</front>

<middle>

<section anchor="introduction"><name>Introduction</name>
<t><xref target="RFC2156"></xref> defined a mapping of header fields between X.400 and
RFC822/MIME.  One of the mapped fields is the &quot;Expires&quot; header
field, which provides a date and time at which a message is
considered to lose its validity.</t>
<t>Netnews articles <xref target="RFC5536"></xref> have an Expires header with a similar slightly more strict syntax and similar meaning.</t>
<t>This document extends the use of the &quot;Expires&quot; header field to
Internet email in general, whether the message comes from an X.400
gateway or elsewhere.</t>
<t>The date and time of expiration can be used by the mailbox provider or the MUA to indicate to the user that certain messages could be de-emphasized
or not shown to the user, to unclutter the user's mailbox.</t>
<t>The key words &quot;MUST&quot;, &quot;MUST NOT&quot;, &quot;REQUIRED&quot;, &quot;SHALL&quot;, &quot;SHALL NOT&quot;, &quot;SHOULD&quot;, &quot;SHOULD NOT&quot;, &quot;RECOMMENDED&quot;, &quot;NOT RECOMMENDED&quot;, &quot;MAY&quot;, and &quot;OPTIONAL&quot; in this document are to be interpreted as described in BCP 14 <xref target="RFC2119"></xref> <xref target="RFC8174"></xref> when, and only when, they appear in all capitals, as shown here.</t>
<t>A Message Creator is an agent that generates messages for delivery.
In <xref target="RFC5598"></xref> parlance, this is an Author or Originator.</t>
<t>A Message Reader is either an agent consuming a message or an agent
storing a message. In RFC 5589 parlance, this is a Message Store or a
Message User Agent.</t>
</section>

<section anchor="expiration"><name>Defining Expiration</name>
<t><xref target="RFC2156"></xref> defined a field called &quot;Expires&quot;, which replaced &quot;Expiry-Date&quot; introduced in <xref target="RFC1327"></xref>.
It did not define the term further, except to say that no automatic handling past that date can be expected.
<xref target="RFC5536"></xref> defined &quot;Expires&quot; for Netnews as a date and time beyond which the poster deems the article
to be no longer relevant and could usefully be removed, but did not actually require such removal.
The consensus definition used in this document is that beyond the stated expiration date, the message &quot;loses its validity&quot;.</t>
<t>The header field's use in e-mail has been limited, with no formal semantic definition to date.
No consensus exists to establish a more precise definition, in deference to existing implementations.
Accordingly, no additional normative definition is provided here, nor is any requirement established for any particular
handling by Message Readers.</t>
</section>

<section anchor="definition"><name>Header Field definition</name>
<t>The header field definition remains the same as in
<xref target="RFC2156"></xref> and <xref target="RFC4021"></xref>.
It indicates the time at which a message loses its validity.
Using the ABNF from <xref target="RFC5322"></xref>, its syntax is:</t>

<sourcecode type="abnf">expires = &quot;Expires:&quot; date-time CRLF
</sourcecode>
<t>Example:</t>
<t><tt>Expires: Wed, 1 Dec 2024 17:22:57 +0000</tt></t>
<t>Message creators MUST NOT include more than one Expires header field in a message.</t>
<t>Message Transfer Agents (MTAs) MUST NOT discard or reject a message based
solely on the content of this header field, if present.</t>
<t>Automatic deletion of a message bearing an Expires field with a date
and time in the past is NOT RECOMMENDED unless configured by the
mailbox owner.</t>
</section>

<section anchor="senders"><name>Advice to Message Creators</name>
<t>Message creators add the header field along with a relevant date and time when they know that the message loses
its validity.
This could apply to commercial newsletters that include time-limited offers, event announcements, social notifications,
and periodic announcement messages.</t>
</section>

<section anchor="receivers"><name>Advice to Message Readers</name>
<t>Message readers, such as mailbox providers, web mail and MUAs
could de-emphasize the display of expired messages or not display them.
They could
allow users to control the actions to take for expired messages.</t>
<t>The information provided in the header field is intended to be used as
a signal to provide an improved
experience to the end-user. For instance, systems might allow automatic
rules to clean up expired email from specific message creators or with
defined characteristics, or to provide a mode to quickly handle all
expired email.</t>
</section>

<section anchor="interop"><name>Interoperability Considerations</name>
<t>As &quot;Expires&quot; has never been formally defined for Internet messages
other than those translated from X.400, there might have been
implementations that used this header field name in an incompatible way.
Though the IETF has never seen such a message, there is a theoretical risk of confusion.</t>
</section>

<section anchor="security"><name>Security considerations</name>
<t>A message creator can put any date in an Expires header field, including dates in the distant past or future.
Without further knowledge about the message creator, recipient systems and message readers cannot assume
that the contents of the header are accurate or benign.</t>
<t>For example, a malicious message creator might send spam mail that includes a expiry date in the past,
in the hope that recipients will not see or report the mail, and then adaptive spam filters
would use it as non-spam training material.
A creator might include a date in the immediate future in the hope that a recipient would
see and act on a message, but could not find it later to complain about it.
Or a creator might include a date in the distant future in the hope that the message
would stay in a recipient's inbox and would be more likely to be read.</t>
<t>While the header field can be useful to determine how to display a message to a user,
it is unlikely to be useful to determine whether or not the message is wanted or is fraudulent.</t>
</section>

<section anchor="acknowledgements"><name>Acknowledgements</name>
<t>This document was informed by discussions with and/or contributions from Barry Leiba, Alexey Melnikov, Jonathan Loriaux, Charles Sauthier and Simon Bressier.</t>
</section>

<section anchor="iana-considerations"><name>IANA Considerations</name>
<t>IANA is requested to update an existing entry in the <eref target="https://www.iana.org/assignments/message-headers/message-headers.xhtml">Permanent Message Headers Field Names registry</eref></t>
<t>Header field name: Expires</t>
<t>Applicable protocol: mail</t>
<t>Status: standard</t>
<t>Author/Change controller: IETF</t>
<t>Specification document: this document</t>
</section>

</middle>

<back>
<references><name>Normative References</name>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.2156.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.4021.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.5322.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml"/>
</references>
<references><name>Informative References</name>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.1327.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.5536.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.5598.xml"/>
</references>

</back>

</rfc>
