



SML                                                         H.-J. Happel
Internet-Draft                                              audriga GmbH
Intended status: Standards Track                             7 July 2025
Expires: 8 January 2026


                      Structured vacation notices
             draft-ietf-sml-structured-vacation-notices-01

Abstract

   This document describes a machine-readable format for conveying
   unavailibility information in email messages.  This includes
   "vacation notices" of persons but also different forms of
   unavailibility for emails sent by programs.

   Structured vacation notices are supposed to be used in conjunction
   with conventional, human-readable vacation notices in most cases.
   They are based on the forthcoming "structured email" specification
   defined in [I-D.ietf-sml-structured-email-03] and related drafts.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at https://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on 8 January 2026.

Copyright Notice

   Copyright (c) 2025 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents (https://trustee.ietf.org/
   license-info) in effect on the date of publication of this document.
   Please review these documents carefully, as they describe your rights
   and restrictions with respect to this document.  Code Components



Happel                   Expires 8 January 2026                 [Page 1]

Internet-Draft         Structured vacation notices             July 2025


   extracted from this document must include Revised BSD License text as
   described in Section 4.e of the Trust Legal Provisions and are
   provided without warranty as described in the Revised BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   3
   2.  Conventions Used in This Document . . . . . . . . . . . . . .   4
   3.  Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . .   4
     3.1.  Subjects of Unavailabily  . . . . . . . . . . . . . . . .   4
     3.2.  Time periods  . . . . . . . . . . . . . . . . . . . . . .   4
       3.2.1.  Temporary . . . . . . . . . . . . . . . . . . . . . .   5
       3.2.2.  Permanent . . . . . . . . . . . . . . . . . . . . . .   5
   4.  Data model  . . . . . . . . . . . . . . . . . . . . . . . . .   6
     4.1.  Absence . . . . . . . . . . . . . . . . . . . . . . . . .   6
     4.2.  Replacements  . . . . . . . . . . . . . . . . . . . . . .   6
     4.3.  Mailbox status information  . . . . . . . . . . . . . . .   7
     4.4.  Note  . . . . . . . . . . . . . . . . . . . . . . . . . .   7
   5.  Use cases . . . . . . . . . . . . . . . . . . . . . . . . . .   7
     5.1.  Absentee  . . . . . . . . . . . . . . . . . . . . . . . .   7
       5.1.1.  Outgoing vacation notice  . . . . . . . . . . . . . .   7
       5.1.2.  Outgoing preemptive vaction notice  . . . . . . . . .   8
     5.2.  Communication partner . . . . . . . . . . . . . . . . . .   8
       5.2.1.  Incoming vacation notice  . . . . . . . . . . . . . .   8
       5.2.2.  Incoming preemptive vacation notice . . . . . . . . .   9
       5.2.3.  Message composition . . . . . . . . . . . . . . . . .   9
   6.  Implementation guidance . . . . . . . . . . . . . . . . . . .   9
     6.1.  Sending . . . . . . . . . . . . . . . . . . . . . . . . .   9
       6.1.1.  Leave structured vacation notices optional  . . . . .   9
       6.1.2.  Provide alternative representations . . . . . . . . .   9
     6.2.  Processing  . . . . . . . . . . . . . . . . . . . . . . .   9
       6.2.1.  Igore past time ranges  . . . . . . . . . . . . . . .   9
       6.2.2.  Prefer latest vacation time range . . . . . . . . . .  10
       6.2.3.  Strip when forwarding . . . . . . . . . . . . . . . .  10
   7.  Implementation status . . . . . . . . . . . . . . . . . . . .  10
     7.1.  Structured Vacation Notice plugin for Roundcube
           Webmail . . . . . . . . . . . . . . . . . . . . . . . . .  10
   8.  Security considerations . . . . . . . . . . . . . . . . . . .  10
   9.  Privacy considerations  . . . . . . . . . . . . . . . . . . .  11
   10. IANA Considerations . . . . . . . . . . . . . . . . . . . . .  11
   11. Appendix (Examples) . . . . . . . . . . . . . . . . . . . . .  11
     11.1.  Example 1: Minimum viable structured vacation notice . .  11
     11.2.  Example 2: Basic structured vacation notice  . . . . . .  11
     11.3.  Example 3: Basic structured vacation notice with
             AvailabilityPattern . . . . . . . . . . . . . . . . . .  12
     11.4.  Example 4: Structured vacation notice with
             AvailabilityPattern only  . . . . . . . . . . . . . . .  12




Happel                   Expires 8 January 2026                 [Page 2]

Internet-Draft         Structured vacation notices             July 2025


     11.5.  Example 5: Structured vacation notice with
             replacements  . . . . . . . . . . . . . . . . . . . . .  12
     11.6.  Example 6: Structured vacation notice for service with
             replacements  . . . . . . . . . . . . . . . . . . . . .  13
     11.7.  Example 7: Permanant unavailability  . . . . . . . . . .  14
     11.8.  Example 8: Permanant unavailability after future date  .  14
     11.9.  Example 9: Mailbox has moved . . . . . . . . . . . . . .  15
     11.10. Example 10: Minimum noreply address  . . . . . . . . . .  15
     11.11. Example 11: Noreply address with phone contact . . . . .  15
   12. Appendix (vCard properties) . . . . . . . . . . . . . . . . .  16
   13. Appendix (Related use cases)  . . . . . . . . . . . . . . . .  16
     13.1.  New contact data . . . . . . . . . . . . . . . . . . . .  17
     13.2.  Bounces  . . . . . . . . . . . . . . . . . . . . . . . .  17
   14. Informative References  . . . . . . . . . . . . . . . . . . .  17
   Author's Address  . . . . . . . . . . . . . . . . . . . . . . . .  19

1.  Introduction

   A "vacation notice" (also known as "out-of-office notice"
   [RFC3834][RFC5598] or "-reply") is a short text message which is
   automatically sent in response to incoming mail, if the recipient is
   absent or otherwise unable to answer immediately.  Its content is
   written by the absentee in advance and usually informs about the
   unavailibility and possible alternative contacts for urgent
   inquiries.

   The email system will return this content as an automatic repliy to
   incoming email messages, based on conditions set by the absentee.
   The most commonly used condition is the time period, during which
   incoming messages should be automatically answered with a vacation
   notice.

   Vacation notices have not been standardized as such.  A partial,
   implicit specification is contained in [RFC5230], which specifies an
   extension to the Sieve email filtering language.  The user interface
   of MUAs provides further formalization of the user input for a
   vacation notice.  While all this happens on the side of the absentee,
   vacation notices received by communication paterns just appear as a
   regular, human-readable email message.

   The goal of this specification is to allow absentees to include a
   machine-readable version of the vacation notice, so that their
   communication partners can be assisted by software when dealing with
   vacation notices.







Happel                   Expires 8 January 2026                 [Page 3]

Internet-Draft         Structured vacation notices             July 2025


   While this specification may be used stand-alone, is aims to be
   compliant to the "structured email" specification ([I-D.ietf-sml-
   structured-email-03]) and its trust and security recommendations ([I-
   D.happel-structured-email-trust-04]).

2.  Conventions Used in This Document

   The term "message" refers to "electronic mail messages" or "emails"
   as specified in [RFC5322].

   The term "Message User Agent" (MUA) denotes an email client
   application as per [RFC5598].  Based on the role of the communication
   partners, one can further distiguish into "Recipient MUA" (rMUA) and
   "Author MUA" (aMUA).

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
   "OPTIONAL" in this document are to be interpreted as described in BCP
   14 [RFC2119] [RFC8174] when, and only when, they appear in all
   capitals, as shown here.

3.  Scope

3.1.  Subjects of Unavailabily

   The unavailability of a particular mailbox owner (i.e., person) is
   the most common case for a vacation notice.  In practice, vacation
   notices and similar messages are also often used on generic _role
   acocunts_ ([RFC2142]) to indicate the unavailability of a certain
   service ("Our restaurant is closed till the end of August").

3.2.  Time periods

   Many systems allow to specify a time range, during which a vacation
   notice should be sent.  Notably, this time range must not exactly
   match the actual absence time, even though this is probably the most
   common case in practice.

   When realized using the Sieve vacation extension ([RFC5230]), time
   periods are typically defined in conjuction with a currentdate test
   ([RFC5260]).

   We distinguish temporary and permantenty availability for considering
   the time periods of unavailability denoted by a structured vacation
   notice.






Happel                   Expires 8 January 2026                 [Page 4]

Internet-Draft         Structured vacation notices             July 2025


3.2.1.  Temporary

   Temporary unavailabily for a certain time range is the most common
   case for vacation notices, typically specifying a start and an end
   date.  Some systems also allow for an open-ended time period, leaving
   start or end date empty.

   The specification of fixed workdays for a person or of service days
   for an organization is currently not supported by most systems.

3.2.2.  Permanent

   Permanent unavailability can be seen as a special case of
   unavailability, in which a person or service will be no more
   available in the future.  This is mentioned as part of the "Change of
   address" case in [RFC3834] and can already be modeled in some systems
   by leaving both, start and end date, empty.

   Even though the corresponding mailbox will eventually cease to exist
   at some point, it is not uncommon that affected persons or services
   return a "permanent unavailability" message during a phase-out
   period.

3.2.2.1.  Mailbox move

   A mailbox move is a special form of permanent unavailability.  While
   the original mailbox will become permantently unavailable at some
   point, there exists a new mailbox replacing the former one (also
   mentioned in the "Change of address" case in [RFC3834]).

   Reasons for this might be a name change in the local part (e.g., due
   to marriage) or a name change in the domain part (e.g., a company
   merge or renaming).

3.2.2.2.  Noreply

   A "noreply" message is an internet naming convention, indicating that
   a sending mailbox is not attended and replies to that mailbox will
   likely be discarded.  This fact is typically conveyed by the name of
   the email address ("noreply@example.com") and sometimes explained in
   the email body.  It is typically used on machine-generated,
   transactional emails.

   Noreply messages can be considered as a form of unavailability and
   hence fit into this draft.  "Replacement" information as described in
   the data model of this specification can be used to point receipients
   to other communication channels such as a phone hotline.




Happel                   Expires 8 January 2026                 [Page 5]

Internet-Draft         Structured vacation notices             July 2025


4.  Data model

   The minimum data for a vacation notice is the actual notice content
   as specified by the absentee.  It might be as short as "I am
   currently out of office".

   This document specifies an RDF class UnavailabilityInformation which
   is described in the following sections.

4.1.  Absence

   start and end are optional date fields in the format YYYY-MM-
   DDThh:mm:ssZ following ISO 8601 ([iso8601]).  Since both dates are
   fixed in time, they do not require timezone information for
   interpretation.  Hence, the date MUST only be formatted in UTC.

   availabilityPattern is a text String with similar semantics as the
   Schema.org openingHours property ([openingHours]).
   availabilityTimezone is a text String with an identifier from the
   IANA Time Zone Database ([tzdb]).  If an availabilityPattern is set,
   the availabilityTimezone property MUST be set as well.

   Both start/end and availabilityPattern might be used in parallel.  In
   this case, the start/end dates override the availabilityPattern in
   case of conflict.

   A permanent absence can be signaled explicily using mailbox status
   information as explained below.

4.2.  Replacements

   Vacation notice content may also contain information about if a
   message is automatically forwarded to a replacement person
   (isForwarded), or details about replacement persons to contact for
   urgent inquiries (replacement).

   When considering organizational users or role accounts, a replacement
   can also be another organization ("While our doctor's office is
   closed, refer to Dr. Doe in case of emergencies").  Values of the
   replacement property are of type Replacement, which:

   *  MAY contain a description to add context for distinguishing
      multiple replacement options
   *  MAY contain an availabilityPattern and availabilityTimezone
   *  and MUST contain instances of either Schema.Org Person ([person])
      or Organization ([organization]) or any of its subclasses.





Happel                   Expires 8 January 2026                 [Page 6]

Internet-Draft         Structured vacation notices             July 2025


4.3.  Mailbox status information

   For a clear distinction of cases of temporary and permanent
   unavailability, senders MAY specify an unavailabilityType property in
   UnavailabilityInformation.

   unavailabilityType is text field, allowing for the following values:

   *  temporary (temporary absence/classic vacation notice; implicit
      default value)
   *  permanent (infinite absence / mailbox is not used anymore)
   *  moved (mailbox name has changed)
   *  noreply (mailbox is send only)

   For any value which is not temporary, potentially conflicting
   information from the end date MUST be ignored.  The start date
   however MUST be considered if set.

4.4.  Note

   The note property is a text String which allows for an optional free-
   form message in addition to the structured data.

For discussion, see also:
https://github.com/hhappel/draft-happel-sml-structured-vacation-notices/issues/1

5.  Use cases

   For the use cases, we distinguish the absentee, willing to answer
   incoming messages with a vacation notice, and communication
   partner(s), which are sending messages to the absentee during or
   around the time of her absence.

5.1.  Absentee

   The absentee might want to send vacation notices in two difference
   scenarios.  Besides the common, dedicated vacation notice
   autoreplies, machine-readable vacation notices might also be added to
   regular email messages sent to communication partners ("preemptive
   vacation notice").

5.1.1.  Outgoing vacation notice

   For adding a structured vacation notice in a common vacation notice
   message, a JSON-LD snippet using the UnavailabilityInformation type
   defined in the previous section needs to be embedded in the text/html
   representation of the vacation notice email (TODO sync with [I-
   D.ietf-sml-structured-email-03]).



Happel                   Expires 8 January 2026                 [Page 7]

Internet-Draft         Structured vacation notices             July 2025


   In systems using the Sieve vacation extension ([RFC5230]), text/html
   body parts are supported when using the parameter to include MIME
   content (:mime).

   If the user interface already allows to set date ranges, the
   structured vacation notice data may be added or prefilled
   automatically, without extra user effort.

5.1.2.  Outgoing preemptive vaction notice

   Structured vacation notices can support a second use case, in which
   information can be preemptively added to regular outgoing email
   messages by the absentee.

   This may be helpful in three scenarios, if an absentee sends a
   message:

   *  _during_ her absence, to proactively inform communication partners
   *  _before_ her absence, so that communication partners can
      preemptively learn about an upcoming absence and take according
      actions
   *  _after_ her absence, communication partners could learn that the
      absentee is available again (in particular, if no initial absence
      end date was given, or if the absence ended earlier than planned)

   <a/>

For discussion, see also:
https://github.com/hhappel/draft-happel-sml-structured-vacation-notices/issues/2

5.2.  Communication partner

   Structured vacation notices may be processed by the communication
   partner (resp. her MUA) in different ways.

5.2.1.  Incoming vacation notice

   If an incoming vacation notice contains structured vacation notice
   data, the MUA of the communication partner MAY extract and store this
   data.

   Since the MUA can make sense of the structured vacation notice, it
   MAY also employ various forms of user assistance at its own
   discretion, such as:

   *  Highlighting the absence in a special way
   *  Allowing the user to take certain actions (e.g., set a reminder,
      store to calendar, or forward the message to a replacement person)



Happel                   Expires 8 January 2026                 [Page 8]

Internet-Draft         Structured vacation notices             July 2025


5.2.2.  Incoming preemptive vacation notice

   As described before, the absentee may decide to add structured
   vacation notices in regular messages sent before, during, or after
   her absence.

   When receiving such messages, the MUA of the communication partner
   MAY extract and store the structured vacation notice and MAY display
   the absence information.

5.2.3.  Message composition

   If a communication partner wants to send a message to a person, for
   which a structured vacation notice has been received earlier, the MUA
   MAY inform its user about this upcoming or ongoing absence.

6.  Implementation guidance

   The following points should be considered when implementing
   (structured) vacation notices from a sender and recipient-side
   processing perspective.

6.1.  Sending

6.1.1.  Leave structured vacation notices optional

   Adding structured data to a vacation notice should be left as a
   choice to the user.  A MUA SHOULD not add structured data to vacation
   notices without explicit consent or action of the user.

6.1.2.  Provide alternative representations

   Vacation notices containing structured data which are sent to human
   readers MUST contain a human readable alternative version of the
   vacation notice using text/plain and/or text/html multipart/
   alternative body parts.

   Vacation notices sent between mailboxes that are known to be
   processed by programs only may just contain a structured vacation
   notice as their main message body part.

6.2.  Processing

6.2.1.  Igore past time ranges

   A MUA MUST ignore structured vacation notices with time ranges in the
   past.




Happel                   Expires 8 January 2026                 [Page 9]

Internet-Draft         Structured vacation notices             July 2025


6.2.2.  Prefer latest vacation time range

   If multiple structured vacation notices exist for a user, prefer the
   one from the most recently received message.

6.2.3.  Strip when forwarding

   In the case of preemptive structured vacation notices, strip the
   structured data from the message when it is forwarded to a third
   party by the user.

7.  Implementation status

   < RFC Editor: before publication please remove this section and the
   reference to [RFC7942] >

   This section records the status of known implementations of the
   protocol defined by this specification at the time of posting of this
   Internet-Draft, and is based on a proposal described in [RFC7942].
   The description of implementations in this section is intended to
   assist the IETF in its decision processes in progressing drafts to
   RFCs.  Please note that the listing of any individual implementation
   here does not imply endorsement by the IETF.  Furthermore, no effort
   has been spent to verify the information presented here that was
   supplied by IETF contributors.  This is not intended as, and must not
   be construed to be, a catalog of available implementations or their
   features.  Readers are advised to note that other implementations may
   exist.

   According to [RFC7942], "this will allow reviewers and working groups
   to assign due consideration to documents that have the benefit of
   running code, which may serve as evidence of valuable experimentation
   and feedback that have made the implemented protocols more mature.
   It is up to the individual working groups to use this information as
   they see fit".

7.1.  Structured Vacation Notice plugin for Roundcube Webmail

   This draft is implemented in an open source plugin for the Roundcube
   Webmail system [RC-SVN], partly based on the Roundcube managesieve
   plugin.

8.  Security considerations

   In particular when using structured vacation notices in conjunction
   with the Sieve filtering language, the security considerations of the
   corresponding RFCs should be taken into account:




Happel                   Expires 8 January 2026                [Page 10]

Internet-Draft         Structured vacation notices             July 2025


   *  Sieve base specification [RFC5228]
   *  Sieve Vacation extension [RFC5230]
   *  [I-D.happel-sml-structured-email-trust-00]

9.  Privacy considerations

   Vacation notices expose certain potentially sensitive information to
   third parties, such as absence times, absence reasons and
   organizational details (such as replacement staff and their contact
   information).

   For this reason, absentees are typically free to decide how much
   information they expose in the written text of their vacation notice.

   Accordingly, software systems SHOULD leave absentees the same level
   of freedom when adding structured vacation notices and, e.g., not
   enforce the inclusion of certain information or even do so
   implicitly.

   Information exposure might also be limited by restricting the usage
   of structured vacation notices to certain communication partners
   (e.g., using address book information [RFC6134] as discussed in
   [RFC6133]).

10.  IANA Considerations

   This document has no IANA actions at this time.

11.  Appendix (Examples)

   The following snippet shows a potential extension to the [SchemaOrg]
   vocabulary in [JSONLD] format.

Note that this is a preliminary specification only. Do not use examples in practice.

11.1.  Example 1: Minimum viable structured vacation notice

   {
           "@context": "https://sml.draft.iana.org",
           "@type": "UnavailabilityInformation",
   }

11.2.  Example 2: Basic structured vacation notice








Happel                   Expires 8 January 2026                [Page 11]

Internet-Draft         Structured vacation notices             July 2025


   {
           "@context": "https://sml.draft.iana.org",
           "@type": "UnavailabilityInformation",
           "start": "2025-06-22T00:00",
           "end": "2025-08-22T00:00",
           "note": "I am currently on vacation."
   }

11.3.  Example 3: Basic structured vacation notice with
       AvailabilityPattern

   {
           "@context": "https://sml.draft.iana.org",
           "@type": "UnavailabilityInformation",
           "start": "2025-06-22T00:00",
           "end": "2025-08-22T00:00",
           "availabilityPattern": "Mo,Tu 12:00-15:00",
           "availabilityTimezone": "Europe/London",
           "note": "I am currently on vacation."
   }

11.4.  Example 4: Structured vacation notice with AvailabilityPattern
       only

   {
           "@context": "https://sml.draft.iana.org",
           "@type": "UnavailabilityInformation",
           "availabilityPattern": "Mo,Tu 12:00-15:00",
           "availabilityTimezone": "Europe/London",
           "note": "I am in office Mondays and Tuesday afternoon."
   }

11.5.  Example 5: Structured vacation notice with replacements


















Happel                   Expires 8 January 2026                [Page 12]

Internet-Draft         Structured vacation notices             July 2025


   {
           "@context": "https://sml.draft.iana.org",
           "@type": "UnavailabilityInformation",
           "unavailabilityType": "temporary",
           "start": "2025-06-22T00:00",
           "end": "2025-08-22T00:00",
           "isForwarded": false,
           "replacement": [
               {
                   "@type": "Replacement",
                   "description": "Project A",
                           "replacedBy": {
                                   "@type": "http://schema.org/Person",
                                   "name": "John Doe",
                                   "email": "john@doe.com",
                                   "phone": "+1234567890"
                           }
               },
               {
                   "@type": "Replacement",
                   "description": "Project B",
                           "availabilityPattern": "Mo,Tu 12:00-15:00",
                           "availabilityTimezone": "Europe/London",
                           "replacedBy": {
                                   "@type": "http://schema.org/Person",
                                   "name": "Jane Doe",
                                   "email": "jane@doe.com",
                                   "phone": "+9876543210"
                           }
               }
           ],
           "note": "I am currently on vacation."
   }

11.6.  Example 6: Structured vacation notice for service with
       replacements















Happel                   Expires 8 January 2026                [Page 13]

Internet-Draft         Structured vacation notices             July 2025


   {
           "@context": "https://sml.draft.iana.org",
           "@type": "UnavailabilityInformation",
           "unavailabilityType": "temporary",
           "start": "2025-06-22T00:00",
           "end": "2025-08-22T00:00",
           "isForwarded": false,
           "replacement": [
               {
                   "@type": "Replacement",
                           "replacedBy": {
                                   "@type": "http://schema.org/Physician",
                                   "name": "Dr. Alice",
                                   "email": "contact@alice.example.com",
                                   "phone": "+1234567890"
                           }
               },
               {
                   "@type": "Replacement",
                           "availabilityPattern": "Mo,Tu,We",
                           "replacedBy": {
                                   "@type": "http://schema.org/Physician",
                                   "name": "Dr. Bob",
                                   "email": "contact@bob.example.com",
                                   "phone": "+9876543210"
                           }
               }
           ],
           "note": "Our doctor's office is closed for holidays."
   }

11.7.  Example 7: Permanant unavailability

   {
           "@context": "https://sml.draft.iana.org",
           "@type": "UnavailabilityInformation",
           "unavailabilityType": "permanent",
           "note": "This address is not used anymore"
   }

11.8.  Example 8: Permanant unavailability after future date










Happel                   Expires 8 January 2026                [Page 14]

Internet-Draft         Structured vacation notices             July 2025


   {
           "@context": "https://sml.draft.iana.org",
           "@type": "UnavailabilityInformation",
           "unavailabilityType": "permanent",
           "start": "2025-08-31T00:00",
           "note": "This address is not used anymore after August 2025"
   }

11.9.  Example 9: Mailbox has moved

   {
           "@context": "https://sml.draft.iana.org",
           "@type": "UnavailabilityInformation",
           "unavailabilityType": "moved",
           "isForwarded": false,
           "replacement":
               {
                   "@type": "Replacement",
                           "replacedBy": {
                                   "@type": "http://schema.org/Person",
                                   "email": "john@doe.com",
                           }
               },
           "note": "May email has changed"
   }

11.10.  Example 10: Minimum noreply address

   {
           "@context": "https://sml.draft.iana.org",
           "@type": "UnavailabilityInformation",
           "unavailabilityType": "noreply",
   }

11.11.  Example 11: Noreply address with phone contact
















Happel                   Expires 8 January 2026                [Page 15]

Internet-Draft         Structured vacation notices             July 2025


   {
           "@context": "https://sml.draft.iana.org",
           "@type": "UnavailabilityInformation",
           "unavailabilityType": "noreply",
           "replacement":
               {
                   "@type": "Replacement",
                           "replacedBy": {
                                   "@type": "http://schema.org/Organization",
                                   "name": "Customer support",
                                   "phone": "+9876543210"
                           }
               }
   }

12.  Appendix (vCard properties)

   The following vCard X-Properties are currently used by the [RC-SVN]
   implementation to store incoming structured vacation notice data of
   absentees in the address book of the communication partner.  I.e., if
   an email message with a structured vacation notice is processed, the
   implementation will lookup the absentee in the communication
   partner's address book and store the absence information, if an
   address book entry was found.

   While this is mostly for internal data management in [RC-SVN],
   standardizing the vCard properties could be useful from a data
   portability perspective.

   Most X-Properties directly map to the example OutOfOffice JSON-LD
   snippet above, X-OOF-UPDATED was added to store the receiving date of
   the email message which contained the structured vacation notice.

   X-OOF-UPDATED:2023-10-01
   X-OOF-START:2023-10-01
   X-OOF-END:2023-11-01
   X-OOF-IS-FORWARDED:false
   X-OOF-REPLACEMENT:Jane Doe,Marketing,jane.doe@corp.com,+1234567-89
   X-OOF-REPLACEMENT:John Doe,Development,john.doe@corp.com,+1234567-99
   X-OOF-NOTE:I am out of office please reach my replacement instead

13.  Appendix (Related use cases)

   There are some use cases which are somehow related to "vacation
   notices", mostly by providing automated messages about a certain
   status of the recipient.





Happel                   Expires 8 January 2026                [Page 16]

Internet-Draft         Structured vacation notices             July 2025


   Those related use cases may be worth further consideration within the
   design space of this draft or may result in future related drafts.

For discussion, see also:
https://github.com/hhappel/draft-happel-sml-structured-vacation-notices/issues/3

13.1.  New contact data

   Beyond the email addresses, senders sometimes highlight updated
   information in the signature of a message, such as:

   *  Updated postal address
   *  Updated phone number

13.2.  Bounces

   Another category of automated email messages are Delivery Status
   Notifications (DSNs) ([RFC3464]).  DSNs are messages sent by a
   receiving MTA to the original sender to convey meta information about
   the delivery.  The most common case is to report isuses with an email
   received, a case also refered to as "NDR" (Non-Delivery Report) or
   "bounce message".

   Status codes to be used in DSNs are defined in [RFC3463].  Common
   include:

   *  5.1.1 User unknown
   *  4.2.2/5.2.2 Mailbox full
   *  5.3.4 Message size
   *  5.7.1 Security or policy-related issues

   At least the first case could already be modeled according to this
   specification (see Example 7).  As this specification indends to
   enabled MUAs to propose actions on issues encountered, one may
   consider to include further NDR cases.

   Alternatively, implementation guidance might advice MUAs to parse
   certain DSN and offer similar user interactions as for Structured
   Vacation Notices.

14.  Informative References

   [JSONLD]   W3C JSON-LD Working Group, "JSON-LD 1.1",
              <https://www.w3.org/TR/json-ld/>.

   [RC-SVN]   audriga GmbH, "Structured Vacation Notice plugin for
              Roundcube Webmail", <https://github.com/audriga/roundcube-
              structured-vacation-notice/>.



Happel                   Expires 8 January 2026                [Page 17]

Internet-Draft         Structured vacation notices             July 2025


   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/info/rfc2119>.

   [RFC2142]  Crocker, D., "Mailbox Names for Common Services, Roles and
              Functions", RFC 2142, DOI 10.17487/RFC2142, May 1997,
              <https://www.rfc-editor.org/info/rfc2142>.

   [RFC3834]  Moore, K., "Recommendations for Automatic Responses to
              Electronic Mail", RFC 3834, DOI 10.17487/RFC3834, August
              2004, <https://www.rfc-editor.org/info/rfc3834>.

   [RFC5228]  Guenther, P., Ed. and T. Showalter, Ed., "Sieve: An Email
              Filtering Language", RFC 5228, DOI 10.17487/RFC5228,
              January 2008, <https://www.rfc-editor.org/info/rfc5228>.

   [RFC5230]  Showalter, T. and N. Freed, Ed., "Sieve Email Filtering:
              Vacation Extension", RFC 5230, DOI 10.17487/RFC5230,
              January 2008, <https://www.rfc-editor.org/info/rfc5230>.

   [RFC5260]  Freed, N., "Sieve Email Filtering: Date and Index
              Extensions", RFC 5260, DOI 10.17487/RFC5260, July 2008,
              <https://www.rfc-editor.org/info/rfc5260>.

   [RFC5322]  Resnick, P., Ed., "Internet Message Format", RFC 5322,
              DOI 10.17487/RFC5322, October 2008,
              <https://www.rfc-editor.org/info/rfc5322>.

   [RFC5598]  Crocker, D., "Internet Mail Architecture", RFC 5598,
              DOI 10.17487/RFC5598, July 2009,
              <https://www.rfc-editor.org/info/rfc5598>.

   [RFC6133]  George, R., Leiba, B., and A. Melnikov, "Sieve Email
              Filtering: Use of Presence Information with Auto-Responder
              Functionality", RFC 6133, DOI 10.17487/RFC6133, July 2011,
              <https://www.rfc-editor.org/info/rfc6133>.

   [RFC6134]  Melnikov, A. and B. Leiba, "Sieve Extension: Externally
              Stored Lists", RFC 6134, DOI 10.17487/RFC6134, July 2011,
              <https://www.rfc-editor.org/info/rfc6134>.

   [RFC7942]  Sheffer, Y. and A. Farrel, "Improving Awareness of Running
              Code: The Implementation Status Section", BCP 205,
              RFC 7942, DOI 10.17487/RFC7942, July 2016,
              <https://www.rfc-editor.org/info/rfc7942>.





Happel                   Expires 8 January 2026                [Page 18]

Internet-Draft         Structured vacation notices             July 2025


   [RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
              2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
              May 2017, <https://www.rfc-editor.org/info/rfc8174>.

   [SchemaOrg]
              W3C Schema.org Community Group, "Schema.org",
              <https://schema.org/>.

   [iso8601]  ISO, "ISO 8601 Date and time format",
              <https://www.iso.org/iso-8601-date-and-time-format.html>.

   [openingHours]
              W3C Schema.org Community Group, "Schema.org openingHours",
              <https://schema.org/openingHours>.

   [organization]
              W3C Schema.org Community Group, "Schema.org Organization",
              <https://schema.org/Organization>.

   [person]   W3C Schema.org Community Group, "Schema.org Person",
              <https://schema.org/Person>.

   [tzdb]     IANA, "Time Zone Database",
              <https://www.iana.org/time-zones>.

Author's Address

   Hans-Joerg Happel
   audriga GmbH
   Email: happel@audriga.com
   URI:   https://www.audriga.com




















Happel                   Expires 8 January 2026                [Page 19]
