<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.1 (Ruby 3.2.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ralston-mimi-terminology-03" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.18.2 -->
  <front>
    <title abbrev="MIMI Terminology">MIMI Terminology</title>
    <seriesInfo name="Internet-Draft" value="draft-ralston-mimi-terminology-03"/>
    <author fullname="Travis Ralston">
      <organization>The Matrix.org Foundation C.I.C.</organization>
      <address>
        <email>travisr@matrix.org</email>
      </address>
    </author>
    <date year="2023" month="October" day="23"/>
    <area>Applications and Real-Time</area>
    <workgroup>More Instant Messaging Interoperability</workgroup>
    <keyword>mimi terminology</keyword>
    <keyword>mimi definitions</keyword>
    <keyword>mimi words</keyword>
    <abstract>
      <?line 37?>

<t>This document introduces a set of terminology to use when discussing or describing
concepts within MIMI.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://turt2live.github.io/ietf-mimi-terminology/draft-ralston-mimi-terminology.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ralston-mimi-terminology/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        More Instant Messaging Interoperability Working Group mailing list (<eref target="mailto:mimi@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/mimi/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/mimi/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/turt2live/ietf-mimi-terminology"/>.</t>
    </note>
  </front>
  <middle>
    <?line 42?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The More Instant Messaging Interoperability (MIMI) working group is chartered to
specify the minimal set of mechanisms to make modern instant messaging applications
interoperable. Through prior discussions and upcoming documents, it's become important
to have a shared understanding for what is being discussed specifically.</t>
      <t>This document expands upon MLS's <xref target="I-D.ietf-mls-protocol"/> <xref target="I-D.ietf-mls-architecture"/>
terminology by defining terms specific to MIMI's purpose. Document authors SHOULD prefix
terms from MLS with "MLS" to denote where the term is specifically coming from. For example,
"MLS Group" versus "Group". This document defines terms which are non-conflicting to help
ensure clarity when the MLS prefix is missing, however.</t>
      <t>Documents within the MIMI working group may introduce their own terminology to explain
concepts within their context. Those documents SHOULD NOT override or change the terminology
described in this document or from MLS.</t>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t><strong>TODO(TR): How much of this is replaced by <xref target="I-D.barnes-mimi-arch"/>?</strong></t>
      <t>MIMI defines:</t>
      <t><strong>Messaging Provider</strong> or <strong>Provider</strong>: A service offering instant messaging to users.
Each provider has a server to route events between users (or clients, specifically).</t>
      <t><strong>User</strong>: A (normally) human operator of a client. Users have a <strong>User ID</strong> to identify
them canonically within the system.</t>
      <t><strong>User Identity</strong>: A mapping of <strong>User ID</strong> to external identifier, such as a phone number.
In some cases, the user identity can be synonymous with the user ID, however the default
assumption if not clarified is that they are different concepts.</t>
      <t><strong>Client</strong>: A user interface for messaging, performing encryption as needed. Presents
rooms to the user to interact with. Synonymous with MLS Client. Clients have a
<strong>Client ID</strong> to canonically identify them among a user's other clients. Clients
can additionally be called <strong>Devices</strong> to differentiate them from a named application.</t>
      <t><strong>Room</strong>: The place where users communicate. This is semantically distinct from an
MLS Group: an MLS Group is responsible for handling client keys while a room is
simply the user-facing construct for communication, however systems can declare a Room
to be the same as an MLS Group depending on their design. Rooms have a <strong>Room ID</strong> to
canonically identify them within the system. Rooms can additionally be called <strong>Chats</strong>,
<strong>Conversations</strong>, and <strong>Channels</strong>.</t>
      <t>A room can have any one of many different characterizations/behaviours, called <strong>Room Types</strong>:</t>
      <ul spacing="normal">
        <li>
          <t><strong>DM</strong>: A direct message room between exactly two users. DMs are typically created
when a user searches for another user to message, rather than creating a group Room.
All users in the room have the same permission capabilities under the access control
semantics. The room name is that of the other user in the DM. DMs are typically
canonical: exactly one Room with the other user exists at a time.</t>
        </li>
        <li>
          <t><strong>Group DM</strong>: A subtype of DMs where there are more than two users. The room name
consists of the other users in the DM. Inherited from DMs, Group DMs are also
canonical: creating a new Group DM with the exact same users ultimately redirects to
the existing room instead of creating a new one. These may also be called <strong>Ad-hoc Rooms</strong>
in some scenarios.</t>
        </li>
        <li>
          <t><strong>Group Chat</strong>: A room which requires an invite to be able to participate, and can have
zero or more users. A user-provided room name is defined for the room. Typically,
the creator has admin permissions while other designated users have either admin permissions
or moderator permissions. Most users have default permissions which allow them to send
events to the room. Unlike (Group) DMs, multiple rooms with the same set of users
can exist at the same time, even with the same room name.</t>
        </li>
        <li>
          <t><strong>Public Room</strong>: A group chat which does not require an invite to participate. Usually
these types of rooms are discovered through a directory or website. Rooms which require
a request to join, or knock, are considered public rooms. Sometimes these will be referred
to as <strong>Public Chatrooms</strong>.</t>
        </li>
        <li>
          <t><strong>Auditorium Room</strong>: Either a group chat or public room where most users are unable to
send events and cannot be seen as room participants by other users. When an event is sent,
it may appear to be sent by the room itself rather than the specific user who sent it.
Sometimes these are called <strong>Auditorium Chats</strong>.</t>
        </li>
      </ul>
      <t>Depending on the system, a room's type can be mutable. For example, a user may be permitted
to introduce new users to a group DM to implicitly convert it to a group room, or they
simply may be unable to implicitly or explicity change the room type.</t>
      <t><strong>Room Name</strong>: The title or human-focused textually distinguishing factor for the room. It
may be automatically generated based on the room participants.</t>
      <t><strong>Room Avatar</strong>: A picture or graphic associated with the room, usually in combination with
a room name. Room avatars can be automatically generated based on the room participants.</t>
      <t><strong>Room Participant</strong>: A joined user in the room. Note that this may have implications on the
associated MLS Members in the MLS Group for the user's devices.</t>
      <t><strong>Event</strong>: The container for an encrypted MLS Message, sent over the wire between servers
and clients (through their local servers). Events have an <strong>Event ID</strong> to canonically
identify them at least within the room.</t>
      <t><strong>Room Property</strong>: Information stored in the room, such as the name, topic, avatar, room participants,
etc. This may be in the shape of an event. Note that room properties are different from
what is needed to construct an MLS Group Context.</t>
      <t><strong>Message</strong>: Synonymous with an MLS Message. Messages have a <strong>Message ID</strong> to canonically
identify them at least within the group. These are essentially what a user would call a
"message", though specifically the unencrypted portion. When encrypted, they are called events.</t>
      <t><strong>Server</strong>: Responsible for routing events to other servers and local clients. The collection
of servers and clients in a room form the MLS Delivery Service (DS).</t>
      <t><strong>Hub Server</strong>: The specific server responsible for routing events to other servers in the
context of a room. Sometimes this is shortened to <strong>Hub</strong>.</t>
      <t><strong>Owning Server</strong>: If applicable, the server specifically responsible for applying access
control to a room. Typically, this will also be the hub server for the room. This should <em>not</em>
be shortened to "owner" to avoid confusion with other related concepts.</t>
      <t><strong>Client-Server API</strong>: The interface between a client and server. This may be nothing more
than a function call if the client and server are the same logical entity.</t>
      <t><strong>Server-Server API</strong>: The interface between a server and another server.</t>
      <t><strong>Transport</strong>: The method and format for moving information between entities. For example,
a Client-Server API might describe HTTPS and JSON as its transport. For added clarity,
documents should clarify which API surface they are defining a transport for ("Server-Server
Transport", for example). MIMI is not chartered to define the Client-Server Transport.</t>
      <t><strong>Message Format</strong>: The specific format that clients use within the encrypted body of an
MLS Message. Sometimes this will also be called the <strong>Content Format</strong>.</t>
      <t><strong>Access Control</strong>: The set of algorithms which determine whether an event or MLS Message
is permitted in the room/group. For instance, this may define whether an MLS Proposal
is accepted or whether the user is able to become a room participant.</t>
      <t><strong>Admin Permissions</strong>: Typically at least the user who created the room, these permissions
grant the associated users an ability to change the permissions of other users in the room.
The set of users with these permissions in a room are called <strong>Admins</strong>. Admin permissions
typically inherit moderator permissions.</t>
      <t><strong>Moderator Permissions</strong>: These permissions grant the associated users an ability to kick,
ban, or otherwise restrict another user's ability to use the room. For example, deleting
a spammer's events. The set of users with these permissions in a room are called <strong>Moderators</strong>.</t>
      <t>Note that with both moderator permissions and admin permissions a system may have finer
granularity, such as a set of users being able to kick but not ban. Documents with these
semantics should clarify this case.</t>
      <t><strong>Invite</strong>: An action taken by a user in a room to encourage another user to become a
room participant (or joined to the room). This can be explicit through the server-server API,
or implicit with an join link/join code.</t>
      <t><strong>Join Link</strong>: A machine-readable mechanism for a user to join the room, represented as a URL
or QR code.</t>
      <t><strong>Join Code</strong> or <strong>Join Password</strong>: A text-based string a user may enter to join a room.
The string may be shared with the user verbatim or encoded with a QR code, for example.</t>
      <t><strong>Direct Invite</strong>: An invite to a DM or Group DM. These invites might appear in a different
section of the client's UI to denote their semantic difference from a non-DM invite.</t>
      <t><strong>Kick</strong>: An action taken by a user to remove another user from a room, assuming the sender
has moderator permissions. The affected user can re-join the room with either another invite
or by simply joining, depending on the room type.</t>
      <t><strong>Ban</strong>: Similar to kicking, a user is kicked from the room and not allowed to re-join
until unbanned by a moderator. If a user is banned, they are typically not able to
knock to get back into the room either.</t>
      <t><strong>Knock</strong>: A request from a user (who is not currently a room participant) to join the
room. Upon acceptance, the requesting user may receive an invite or be directly joined to
the room. Upon rejection, the requesting user can be banned or otherwise declined.</t>
      <t><strong>Status</strong>: Temporarily displayed text or images associated with a user's profile. Instagram
Stories are an example of a user's status.</t>
      <section anchor="diagram-reference">
        <name>Diagram Reference</name>
        <t>In the simplest possible form, interoperable messaging between two end users looks as such:</t>
        <figure anchor="fig-typical-arch">
          <name>Typical, simplified, architecture for interoperability</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="160" width="592" viewBox="0 0 592 160" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,32 L 8,96" fill="none" stroke="black"/>
                <path d="M 48,104 L 48,144" fill="none" stroke="black"/>
                <path d="M 96,32 L 96,96" fill="none" stroke="black"/>
                <path d="M 160,32 L 160,96" fill="none" stroke="black"/>
                <path d="M 264,32 L 264,96" fill="none" stroke="black"/>
                <path d="M 328,32 L 328,96" fill="none" stroke="black"/>
                <path d="M 432,32 L 432,96" fill="none" stroke="black"/>
                <path d="M 496,32 L 496,96" fill="none" stroke="black"/>
                <path d="M 544,104 L 544,144" fill="none" stroke="black"/>
                <path d="M 584,32 L 584,96" fill="none" stroke="black"/>
                <path d="M 8,32 L 96,32" fill="none" stroke="black"/>
                <path d="M 160,32 L 264,32" fill="none" stroke="black"/>
                <path d="M 328,32 L 432,32" fill="none" stroke="black"/>
                <path d="M 496,32 L 584,32" fill="none" stroke="black"/>
                <path d="M 104,64 L 152,64" fill="none" stroke="black"/>
                <path d="M 272,64 L 320,64" fill="none" stroke="black"/>
                <path d="M 440,64 L 488,64" fill="none" stroke="black"/>
                <path d="M 8,96 L 96,96" fill="none" stroke="black"/>
                <path d="M 160,96 L 264,96" fill="none" stroke="black"/>
                <path d="M 328,96 L 432,96" fill="none" stroke="black"/>
                <path d="M 496,96 L 584,96" fill="none" stroke="black"/>
                <path d="M 48,144 L 544,144" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="552,104 540,98.4 540,109.6" fill="black" transform="rotate(270,544,104)"/>
                <polygon class="arrowhead" points="496,64 484,58.4 484,69.6" fill="black" transform="rotate(0,488,64)"/>
                <polygon class="arrowhead" points="448,64 436,58.4 436,69.6" fill="black" transform="rotate(180,440,64)"/>
                <polygon class="arrowhead" points="328,64 316,58.4 316,69.6" fill="black" transform="rotate(0,320,64)"/>
                <polygon class="arrowhead" points="280,64 268,58.4 268,69.6" fill="black" transform="rotate(180,272,64)"/>
                <polygon class="arrowhead" points="160,64 148,58.4 148,69.6" fill="black" transform="rotate(0,152,64)"/>
                <polygon class="arrowhead" points="112,64 100,58.4 100,69.6" fill="black" transform="rotate(180,104,64)"/>
                <polygon class="arrowhead" points="56,104 44,98.4 44,109.6" fill="black" transform="rotate(270,48,104)"/>
                <g class="text">
                  <text x="128" y="52">A</text>
                  <text x="296" y="52">B</text>
                  <text x="464" y="52">C</text>
                  <text x="44" y="68">Client</text>
                  <text x="80" y="68">1</text>
                  <text x="204" y="68">Provider</text>
                  <text x="248" y="68">1</text>
                  <text x="372" y="68">Provider</text>
                  <text x="416" y="68">2</text>
                  <text x="532" y="68">Client</text>
                  <text x="568" y="68">2</text>
                  <text x="296" y="132">D</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![CDATA[
+----------+       +------------+       +------------+       +----------+
|          |   A   |            |   B   |            |   C   |          |
| Client 1 |<----->| Provider 1 |<----->| Provider 2 |<----->| Client 2 |
|          |       |            |       |            |       |          |
+----------+       +------------+       +------------+       +----------+
     ^                                                             ^
     |                              D                              |
     +-------------------------------------------------------------+
]]></artwork>
          </artset>
        </figure>
        <t>In this figure, Client 1 is directly connected to Provider 1 over <tt>A</tt>. <tt>A</tt> is a
provider-specific Client-Server API and transport. Similarly, Client 2 is directly
connected to Provider 2 over <tt>C</tt>. <tt>C</tt> is also a provider-specific Client-Server API
and transport.</t>
        <t>Provider 1 and 2 talk to each other with a Server-Server API over a transport. This is <tt>B</tt>
in the figure.</t>
        <t>Clients additionally have an implicit method of communication (<tt>D</tt> in the figure) where
they use a shared Message Format. There is no transport for <tt>D</tt> in this figure: the figure
is denoting that servers/providers are unable to assist with a format conversion due
to the event's content (an MLS message) being encrypted.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="I-D.ietf-mls-protocol">
          <front>
            <title>The Messaging Layer Security (MLS) Protocol</title>
            <author fullname="Richard Barnes" initials="R." surname="Barnes">
              <organization>Cisco</organization>
            </author>
            <author fullname="Benjamin Beurdouche" initials="B." surname="Beurdouche">
              <organization>Inria &amp; Mozilla</organization>
            </author>
            <author fullname="Raphael Robert" initials="R." surname="Robert">
              <organization>Phoenix R&amp;D</organization>
            </author>
            <author fullname="Jon Millican" initials="J." surname="Millican">
              <organization>Meta Platforms</organization>
            </author>
            <author fullname="Emad Omara" initials="E." surname="Omara">
              <organization>Google</organization>
            </author>
            <author fullname="Katriel Cohn-Gordon" initials="K." surname="Cohn-Gordon">
              <organization>University of Oxford</organization>
            </author>
            <date day="27" month="March" year="2023"/>
            <abstract>
              <t>Messaging applications are increasingly making use of end-to-end security mechanisms to ensure that messages are only accessible to the communicating endpoints, and not to any servers involved in delivering messages.  Establishing keys to provide such protections is challenging for group chat settings, in which more than two clients need to agree on a key but may not be online at the same time.  In this document, we specify a key establishment protocol that provides efficient asynchronous group key establishment with forward secrecy (FS) and post-compromise security (PCS) for groups in size ranging from two to thousands.
              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-mls-protocol-20"/>
        </reference>
        <reference anchor="I-D.ietf-mls-architecture">
          <front>
            <title>The Messaging Layer Security (MLS) Architecture</title>
            <author fullname="Benjamin Beurdouche" initials="B." surname="Beurdouche">
              <organization>Inria &amp; Mozilla</organization>
            </author>
            <author fullname="Eric Rescorla" initials="E." surname="Rescorla">
              <organization>Mozilla</organization>
            </author>
            <author fullname="Emad Omara" initials="E." surname="Omara">
              <organization>Google</organization>
            </author>
            <author fullname="Srinivas Inguva" initials="S." surname="Inguva">
         </author>
            <author fullname="Alan Duric" initials="A." surname="Duric">
              <organization>Wire</organization>
            </author>
            <date day="26" month="July" year="2023"/>
            <abstract>
              <t>   The Messaging Layer Security (MLS) protocol (I-D.ietf-mls-protocol)
   provides a Group Key Agreement protocol for messaging applications.
   MLS is meant to protect against eavesdropping, tampering, message
   forgery, and provide Forward Secrecy (FS) and Post-Compromise
   Security (PCS).

   This document describes the architecture for using MLS in a general
   secure group messaging infrastructure and defines the security goals
   for MLS.  It provides guidance on building a group messaging system
   and discusses security and privacy tradeoffs offered by multiple
   security mechanisms that are part of the MLS protocol (e.g.,
   frequency of public encryption key rotation).  The document also
   provides guidance for parts of the infrastructure that are not
   standardized by MLS and are instead left to the application.

   While the recommendations of this document are not mandatory to
   follow in order to interoperate at the protocol level, they affect
   the overall security guarantees that are achieved by a messaging
   application.  This is especially true in the case of active
   adversaries that are able to compromise clients, the delivery
   service, or the authentication service.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-mls-architecture-11"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="I-D.barnes-mimi-arch">
          <front>
            <title>An Architecture for More Instant Messaging Interoperability (MIMI)</title>
            <author fullname="Richard Barnes" initials="R." surname="Barnes">
              <organization>Cisco</organization>
            </author>
            <date day="22" month="September" year="2023"/>
            <abstract>
              <t>   The More Instant Messaging Interoperability (MIMI) working group is
   defining a suite of protocols that allow messaging providers to
   interoperate with one another.  This document lays out an overall
   architecture enumerating the MIMI protocols and how they work
   together to enable an overall messaging experience.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-barnes-mimi-arch-01"/>
        </reference>
      </references>
    </references>
  </back>
  <!-- ##markdown-source:
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
wJ04a6v/AaL9db0xMAAA

-->

</rfc>
