<?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.43 (Ruby 3.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-vcon-vcon-core-05" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.1 -->
  <front>
    <title abbrev="JSON vCon">The JSON format for vCon - Conversation Data Container</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-vcon-vcon-core-05"/>
    <author fullname="Daniel G Petrie">
      <organization>SIPez LLC</organization>
      <address>
        <email>dan.ietf@sipez.com</email>
      </address>
    </author>
    <date year="2026" month="October" day="31"/>
    <area>Applications and Real-Time</area>
    <workgroup>Virtualized Conversations</workgroup>
    <keyword>conversation</keyword>
    <keyword>vcon</keyword>
    <keyword>CDR</keyword>
    <keyword>call detail record</keyword>
    <keyword>call meta data</keyword>
    <keyword>call recording</keyword>
    <keyword>email thread</keyword>
    <keyword>text conversation</keyword>
    <keyword>video recording</keyword>
    <keyword>video conference</keyword>
    <keyword>conference recording</keyword>
    <abstract>
      <?line 154?>

<t>vCon is a standardized framework for the exchange of conversational data.
Conversations, which may involve one or more participants, occur across a wide variety of modes and application platforms.
This document defines a JSON format for representing conversational data, encompassing metadata, conversation media, related documents, and analysis.
The goal of this standard is to provide an abstracted, platform-independent data format for conversations, regardless of the mode or application platform.
By doing so, it facilitates the integration and seamless exchange of conversational data across application platforms, enterprises, and trust boundaries.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://ietf-wg-vcon.github.io/draft-ietf-vcon-vcon-core/draft-ietf-vcon-vcon-core.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-vcon-vcon-core/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Virtualized Conversations Working Group mailing list (<eref target="mailto:vcon@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/vcon/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/vcon/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/ietf-wg-vcon/draft-ietf-vcon-vcon-core"/>.</t>
    </note>
  </front>
  <middle>
    <?line 162?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>This document specifies the <strong>vCon</strong> (Conversational Data Exchange) standard, which defines a unified format for representing and exchanging conversational data across different communication platforms and modalities.
The goal of <strong>vCon</strong> is to provide a standardized, platform-agnostic structure for capturing and sharing conversational information, allowing for seamless integration between systems, enterprises, and trust boundaries.</t>
      <section anchor="purpose-of-vcon">
        <name>Purpose of vCon</name>
        <t>The <strong>vCon</strong> standard enables the abstraction of conversation data, making it easier to integrate communication platforms with external services, including post-conversation analysis tools, customer support systems, and business intelligence platforms.
By defining a consistent data format, <strong>vCon</strong> ensures interoperability across various platforms, regardless of the communication mode - whether text, audio, video, or other formats.</t>
        <t>The <strong>vCon</strong> format captures the essential components of a conversation, including metadata, media content, related documents, and post-conversation analysis.
This abstraction simplifies data exchange, enables AI-driven analysis, and supports model training and testing.</t>
      </section>
      <section anchor="extending-the-vcon-schema">
        <name>Extending the vCon Schema</name>
        <t>In addition to the core <strong>vCon</strong> schema, this document provides a framework for extending the <strong>vCon</strong> format to support specialized use cases.
The <strong>vCon</strong> schema can be customized to address the needs of specific industries or applications, such as:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Contact Centers</strong>: Adding specific metadata related to customer service interactions, case management, and priority tracking.</t>
          </li>
          <li>
            <t><strong>Messaging Platforms</strong>: Supporting the integration of different message formats, including SMS, email, and chat, group concepts, along with platform-specific information.</t>
          </li>
          <li>
            <t><strong>ECRIT (Emergency Communication) Centers</strong>: Extending the schema to capture critical data such as location, urgency, and incident details for emergency communications.</t>
          </li>
        </ul>
        <t>The ability to add extensions ensure that <strong>vCon</strong> remains flexible and adaptable, enabling its use in a wide range of domains while maintaining a consistent format for data exchange.</t>
      </section>
      <section anchor="benefits-of-vcon">
        <name>Benefits of vCon</name>
        <t>The <strong>vCon</strong> standard offers several key benefits:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Interoperability</strong>: A consistent data format for conversational data facilitates integration across diverse platforms and systems.</t>
          </li>
          <li>
            <t><strong>AI-Driven Analysis</strong>: By capturing data in a structured format, <strong>vCon</strong> enables the application of AI analysis such as sentiment analysis, categorization, transcription, and decision-making.</t>
          </li>
          <li>
            <t><strong>Data Automation</strong>: The <strong>vCon</strong> format simplifies the automation of processes involving conversational data, improving efficiency and reducing the risk of errors.</t>
          </li>
          <li>
            <t><strong>Enterprise Integration</strong>: The ability to integrate conversation data with third-party tools and services enhances the value of conversations by providing deeper insights and driving business decisions.</t>
          </li>
        </ul>
      </section>
      <section anchor="scope-of-the-document">
        <name><strong>Scope of the Document</strong></name>
        <t>This document defines the core structure and schema for <strong>vCon</strong> as a JSON format.
Detailed specifications for the various parameters and the extension framework will be provided in subsequent sections.
The primary focus is on creating a flexible, extensible standard for the exchange of conversational data that can be easily adopted across industries, use cases, and communication technologies.</t>
      </section>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

<section anchor="terminology">
        <name>Terminology</name>
        <ul spacing="normal">
          <li>
            <t>analysis - analysis, transformations, summary, sentiment, or translation typically of the dialog data</t>
          </li>
          <li>
            <t>contributor - a party that generated, or potentially generated, any part of the Dialog Content of a Dialog Object</t>
          </li>
          <li>
            <t>conversation - an exchange of communication using text, audio or video medium between at least one human and one or more bots or humans</t>
          </li>
          <li>
            <t>de-identification - removal of all information that could identify a party in a conversation.  This includes PII as well as audio and video recordings.  Voice recordings might be re-vocalized with a different speaker.</t>
          </li>
          <li>
            <t>dialog - the captured conversation in its original form (e.g. text, audio or video)</t>
          </li>
          <li>
            <t>encrypted form - encrypted JWE document with the JWS signed vCon form contained in the ciphertext</t>
          </li>
          <li>
            <t>file - a data block either included or referenced in a vCon</t>
          </li>
          <li>
            <t>object - JSON object containing key and value pairs</t>
          </li>
          <li>
            <t>parameter - JSON key and value pair</t>
          </li>
          <li>
            <t>party - an observer, facilitator or participant to the conversation, either passive or active, which may be a contributor, a receiver, both or neither (e.g. the organizer of a conference)</t>
          </li>
          <li>
            <t>payload - the contents or bytes that make up a file</t>
          </li>
          <li>
            <t>PII - Personal Identifiable Information</t>
          </li>
          <li>
            <t>PII masked - may include voice recordings, but PII is removed from transcripts and recordings (audio and video).</t>
          </li>
          <li>
            <t>receiver - a party to which any part of the dialog in a session was sent and potentially received</t>
          </li>
          <li>
            <t>regex - a regular expression, a sequence of characters that defines a search pattern used to match, locate or validate strings of text</t>
          </li>
          <li>
            <t>vCon - container for conversational information</t>
          </li>
          <li>
            <t>vCon instance - a vCon populated with data for a specific conversation</t>
          </li>
          <li>
            <t>vCon instance version - a single version of an instance of a conversation, which may be modified to redact or amend additional information  forming a subsequent vCon instance version</t>
          </li>
          <li>
            <t>vCon syntax version - the version for the data syntax used for form a vCon</t>
          </li>
          <li>
            <t>signed form - JWS signed document with the unsigned vCon form contained in the payload</t>
          </li>
        </ul>
      </section>
      <section anchor="json-notation">
        <name>JSON Notation</name>
        <t>For the ease of documentation, the convention for <xref target="JSON"/> notation used in this document is copied from sections 1.1-1.5 of <xref target="JMAP"/>.</t>
        <ul spacing="normal">
          <li>
            <t>Date - A string that <bcp14>MUST</bcp14> have the form of an <xref target="RFC3339"/> date string as defined for the Date type in section 1.4 of <xref target="JMAP"/>.</t>
          </li>
          <li>
            <t>"*" - The type is undefined; the value can be any JSON type, although permitted values may be constrained by the context of the value, as defined in section 1.1 of <xref target="JMAP"/>.</t>
          </li>
          <li>
            <t>"String" - a JSON string type.</t>
          </li>
          <li>
            <t>"UnsignedInt" - a positive JSON integer as defined in section 1.3 of <xref target="JMAP"/>.</t>
          </li>
          <li>
            <t>"UnsignedFloat" - a positive JSON floating point number containing a decimal point as defined in section 6 of <xref target="JSON"/>.</t>
          </li>
          <li>
            <t>"Mediatype" - A "String" value that <bcp14>MUST</bcp14> be of the following form as defined in section 5.1 of <xref target="MIME"/>:  </t>
            <t>
type "/" subtype</t>
          </li>
          <li>
            <t>"ContentHash" - The string token value is generated using the same approach used in section 6 of <xref target="STIR-PASS"/>.
The relevant text is copied here for convenience and to remove the normative dependency.
The hash string token values are formed from combining a string that
defines the crypto algorithm used to generate the digest along with the Base64Url Encoded value of the
SHA-512 hash, as defined in section 6.3 and 6.4 <xref target="SHA-512"/>, of the body of the content at the given url.
The hash algorithm is identified by "sha512".
SHA-512 is part of the SHA-2 set of cryptographic hash functions <xref target="SHA-512"/> defined by the US National
Institute of Standards and Technology (NIST).
Implementations <bcp14>MAY</bcp14> support additional recommended hash algorithms in <xref target="IANA-COSE-ALG"/>; that is, the hash
algorithm has "Yes" in the "Recommended" column of the IANA registry.
Hash algorithm identifiers <bcp14>MUST</bcp14> use only lowercase letters, and they <bcp14>MUST NOT</bcp14> contain hyphen characters.
The character following the algorithm string <bcp14>MUST</bcp14> be a hyphen character, "-", or ASCII 45.
The subsequent characters are the Base64Url encoded (see Section 2 <xref target="JWS"/>) digest of a canonicalized and concatenated string
or binary data based on the JSON pointer referenced elements of "rcd" claim or the URI referenced content
contained in the claim.</t>
          </li>
          <li>
            <t>"SessionId" - An object with the String parameters: "local" and "remote".
The String values of these parameters are UUIDs as defined in section 5 of <xref target="SESSION-ID"/> as "local-uuid" and "remote-uuid".
This is designed to also work with the H.323 correlated <xref target="H-460-27"/> which refers to them as "Sender-UUID" and "Recipient-UUID".  </t>
            <t>
{ "local": String, "remote": String }</t>
          </li>
          <li>
            <t>"A[]" and array of values of type A.</t>
          </li>
        </ul>
        <t>All parameters are assumed to be mandatory unless otherwise noted.</t>
        <t>Objects or arrays with no or null values <bcp14>MAY</bcp14> be excluded from the vCon.</t>
      </section>
      <section anchor="inline-files">
        <name>Inline Files</name>
        <t>Objects that contain a file or data inline (i.e. within the vCon) <bcp14>MUST</bcp14> have the parameters: body and encoding.
JSON does not support binary data values.
For this reason inline files <bcp14>MUST</bcp14> be Base64url (see Section 2 <xref target="JWS"/>) encoded to be included as a valid JSON string value if they are not already valid JSON strings.</t>
        <section anchor="body">
          <name>body</name>
          <t>The body parameter contains the payload of the file to be included inline.
Depending upon the data in the file, it may require encoding to be represented as a valid JSON value.</t>
          <ul spacing="normal">
            <li>
              <t>body: "*"</t>
            </li>
          </ul>
        </section>
        <section anchor="encoding">
          <name>encoding</name>
          <t>The encoding parameter describes the type of encoding, if any, that was performed to represent the file payload as the value of the body parameter.
If the body parameter is provided and is not an empty string, the encoding parameter <bcp14>MUST</bcp14> be provided.
In the interest of being tolerant for interoperability, if the encoding value is not provided, applications can attempt to derive the encoding token value based upon the mediatype parameter or filename extension if either is provided.</t>
          <ul spacing="normal">
            <li>
              <t>encoding: "String"</t>
            </li>
          </ul>
          <t>The string <bcp14>MUST</bcp14> have the value of one of the following tokens or a value defined in a vCon extension:</t>
          <ul spacing="normal">
            <li>
              <t>"base64url": The payload of the file has been Base64Url encoded and provided as the string value of the body parameter.</t>
            </li>
            <li>
              <t>"json": The value of the body parameter is a JSON value (object, array, number, string, or one of the literals true, false, or null) as defined in <xref target="JSON"/>.</t>
            </li>
            <li>
              <t>"none": The payload of the file is a valid JSON string and can be included without modification as the string value to the body parameter.</t>
            </li>
          </ul>
          <t>A vCon extension which defines an additional encoding value also defines the form of the body parameter value for that encoding, either a string or another JSON value.
An Object with an encoding which is not recognized cannot be decoded and is handled as described in <xref target="extending-vcon"/>.
Such an extension is Incompatible, and its name is listed in the critical parameter, if a vCon cannot be processed correctly when the Object is ignored.</t>
        </section>
      </section>
      <section anchor="externally-referenced-files">
        <name>Externally Referenced Files</name>
        <t>Files and data stored externally from the vCon <bcp14>MUST</bcp14> be "signed" to ensure that they have not been modified.
Objects that refer to a file which is externally stored from the vCon <bcp14>MUST</bcp14> have the parameters: url,
content_hash.
These parameters are defined in the following subsections.
The values and format of the hashes are defined in <xref target="json-notation"/> type: ContentHash.
The use of <xref target="SHA-512"/> hash for ensuring that the externally referenced data or file has not been modified, is defined in this document.
Other methods of ensuring integrity may be added in the future.</t>
        <section anchor="url">
          <name>url</name>
          <t>The url value contains the <xref target="HTTPS"/> URL where the externally referenced file is stored.
HTTPS <bcp14>MUST</bcp14> be used for retrieval to protect the privacy of the contents of the file.</t>
          <ul spacing="normal">
            <li>
              <t>url: "String"</t>
            </li>
          </ul>
        </section>
        <section anchor="content_hash">
          <name>content_hash</name>
          <t>The integrity of externally referenced files are protected using a hash of the external content.
The algorithm and hash value are contained in the content_hash parameter.
The value of the content_hash can be a single token or an array of tokens if multiple hash
algorithms are desired to be provided.
The SHA-512 <xref target="SHA-512"/> algorithm <bcp14>MUST</bcp14> be supported.
Other algorithms <bcp14>MAY</bcp14> be included.
The algorithm used for signing the externally referenced file is defined in section 6.3 and 6.4 of <xref target="SHA-512"/>.</t>
          <ul spacing="normal">
            <li>
              <t>content_hash: "ContentHash" | "ContentHash[]"</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="extending-vcon">
        <name>Extending vCon</name>
        <t>vCon provides a means to extend the schema defined in this document.
A vCon extension can define new parameters at any level of the schema.
It can also define additional allowed values for an existing parameter, such as a new token for a type parameter.
It can also define new Objects, which appear as the value of a new parameter or as the elements of a new array parameter.
It can also redefine the semantics of or deprecate existing parameters.
A vCon extension is defined in its own document.
In addition to the standard sections of an Internet-Draft, a vCon extension document <bcp14>MUST</bcp14> also contain the following sections.</t>
        <ul spacing="normal">
          <li>
            <t><strong>Extension Name</strong>:
State the registered extensions token name for the extension.
The name <bcp14>MUST</bcp14> appear in the <xref target="extensions"><tt>extensions</tt></xref> parameter of any vCon which uses the extension; state whether and under what conditions the name also appears in the <xref target="critical"><tt>critical</tt></xref> parameter.
This is the name registered in the <xref target="vcon-extensions-names-registry">vCon Extensions Names Registry</xref> and the name against which implementations determine whether they support the extension.</t>
          </li>
          <li>
            <t><strong>Parameter Definitions</strong>:
Define each new parameter, the level of the schema at which it appears, its value type, and its semantics.
For any existing parameter whose meaning or permitted values are redefined, state the new semantics and values.
For any value added to the allowed values of an existing parameter, define the value and its semantics and state which parameters apply when the value is used.
For each new Object, define the parameters of the Object in the same manner.
For each new Object, a new parameter names registry <bcp14>SHOULD</bcp14> be requested from IANA with the parameters of the new Object as its initial values (see <xref target="vcon-json-registry"/>).
For any deprecated parameter, state what is to be used in its stead and the migration approach.
Use the snake case naming convention for all parameter names, as opposed to camel case.
Register each new parameter in the appropriate Object registry with IANA.
Register each new value in the appropriate registry with IANA, where one exists.</t>
          </li>
          <li>
            <t><strong>Compatibility Considerations</strong>:
Describe how the extension behaves in the presence of implementations that do not support it.
Identify the parameters and semantics the extension introduces or changes, and explain for each why an implementation that does not recognize the extension can continue to process the vCon correctly by ignoring the additions, or state the conditions under which that holds.
A value added to the allowed values of an existing parameter is not recognized by an implementation that does not support the extension, and by default the Object which contains it is ignored.
For any such value, describe the effect of the Object being ignored and state whether this makes the extension Incompatible.
An extension that is <strong>Compatible</strong> under all conditions states so explicitly and justifies that claim.</t>
          </li>
          <li>
            <t><strong>Incompatibility Considerations</strong>:
Demonstrate either that the extension introduces no incompatibilities, or enumerate each incompatibility that it does introduce.
For each incompatibility, state the processing that is affected, for example redaction versus transcription, whether the extension name is therefore required in the <xref target="critical"><tt>critical</tt></xref> parameter, and the behavior required of implementations that do not support the extension.
An extension that claims to be <strong>Compatible</strong> uses this section to show why no incompatibility exists.</t>
          </li>
          <li>
            <t><strong>Privacy and Integrity Considerations</strong>:
Describe how the extension's parameters interact with redaction and de-identification, including whether any of them can carry party-identifying data or PII and how a redactor is expected to handle them. In particular, state whether the string redaction feature of the vCon will work to redact any sensitive information, or if there is additional extension-specific redaction capabilities needed.</t>
          </li>
        </ul>
        <t>State whether the extension introduces any new external content references, and if so, the integrity mechanism that protects them, such as <xref target="content_hash"/>.</t>
        <t>A markdown template for a vCon extension document containing these sections is referenced in <xref target="vcon-extension-template">vCon Extension Template</xref>.</t>
        <t>Extensions to the vCon schema can be classified into two categories:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Compatible</strong>: These extensions introduce additional data or fields without altering the meaning or structure of existing elements. Implementations that do not recognize these extensions can safely ignore them while maintaining valid processing of the vCon.</t>
          </li>
          <li>
            <t><strong>Incompatible</strong>: These extensions modify existing semantics or schema definitions in ways that render a vCon incompatible with implementations that do not support the extension. Interpreting such a vCon correctly requires explicit awareness of the extension.</t>
          </li>
        </ul>
        <t>Wherever feasible, extensions <strong><bcp14>SHOULD</bcp14></strong> be designed as <strong>Compatible</strong> to preserve compatibility with existing implementations.
The question of Compatible vs Incompatible is a little subjective.
A transcriber for vCon can be fairly tolerant of changes adding new parameters or objects to a vCon. In these cases a transcriber will likely only need to look at the critical extensions.
On the other hand, a redactor must be aware of the implications of all parameters in the vCon to be sure to redact all of the objective information. If an extension adds information which cannot be removed by the vCon string redaction feature, this may make the extension incompatible.
A redactor which needs a 100% guarantee that it can redact everything, perhaps should reject vCons with any extension that it does not support. Others, may choose to accept them, assuming the string redaction is sufficient.</t>
        <t>However, when Incompatible extensions are necessary, the names of all such extensions <strong><bcp14>MUST</bcp14></strong> be listed in the <xref target="critical"><tt>critical</tt></xref> parameter of the vCon.
This allows implementations to determine whether they are capable of processing the vCon safely and accurately.
Implementations that encounter a vCon containing an Incompatible extension listed in the critical parameter, but do not support that extension, <strong><bcp14>MUST NOT</bcp14></strong> process the vCon except to reject it or report unsupported content.</t>
        <t>A parameter may contain a token value which an implementation does not recognize, such as a type defined in an extension which the implementation does not support.
If an unsupported extension is listed in the critical parameter, the vCon is not processed as described above.
Otherwise, the implementation <bcp14>SHOULD</bcp14> ignore the Object which contains the unrecognized value and continue to process the rest of the vCon.
An ignored Object remains in its array so that the indexes which reference Objects in that array are not changed.</t>
      </section>
    </section>
    <section anchor="vcon-json-object">
      <name>vCon JSON Object</name>
      <t>The JSON form of a vCon is contained in a JSON object in one of three forms:</t>
      <ul spacing="normal">
        <li>
          <t>unsigned</t>
        </li>
        <li>
          <t>signed</t>
        </li>
        <li>
          <t>encrypted</t>
        </li>
      </ul>
      <t>The unsigned form of the vCon has a single top level object.
This top level vCon object is also contained as described in the <xref target="signed-form-of-vcon-object">signed</xref> and <xref target="encrypted-form-of-vcon-object">encrypted</xref> forms of the vCon.
The selection of the JSON format enables interchange between application and lower layers of the network stack, critical for enablement of analysis of conversations.
The signed form of vCon is defined in <xref target="signed-form-of-vcon-object"/> using <xref target="JWS"/> to provide integrity and proof of the conversation data.
The encrypted form of vCon is defined in <xref target="encrypted-form-of-vcon-object"/> using <xref target="JWE"/> to provide complete privacy of the conversational data.
Partial privacy or data minimization can be provided for a vCon using the techniques outlined in <xref target="redaction_techniques">Redaction Techniques</xref>.</t>
    </section>
    <section anchor="unsigned-form-of-vcon-object">
      <name>Unsigned Form of vCon Object</name>
      <t>The unsigned form of the top level vCon object is necessary as in many cases, a vCon will be partially constructed and in process as conversation data is collected.
This may change while the conversation is in progress or on-going.
The vCon may start with only meta data and party information, then progress to contain dialog information.
It may then get analysis added or it could be passed to another security domain for analysis.
A vCon in the unsigned form <bcp14>SHOULD</bcp14> contain at least one of the parties, dialog, analysis or attachments parameters.</t>
      <t>A vCon may be constructed across several security domains.
When a vCon is to be exported from one security domain to another, it <bcp14>SHOULD</bcp14> be signed or encrypted by the domain that constructed it.
The subsequent domain may have need to redact or amend data to the vCon.
Alternatively the originating domain may want to redact the vCon before providing it to another domain.
The second or subsequent domain, <bcp14>MAY</bcp14> modify the prior vCon instance version and when complete or exporting to another security domain, it <bcp14>SHOULD</bcp14> sign or encrypt the new vCon instance version.
The new vCon instance version <bcp14>SHOULD</bcp14> refer to the prior vCon instance version via the redacted_from (<xref target="redacted_from"/>) or amended_from (<xref target="amended_from"/>) parameters - see <xref target="redaction_techniques">Redaction Techniques</xref>.</t>
      <section anchor="vcon-json-object-keys-and-values">
        <name>vCon JSON Object Keys and Values</name>
        <t>The keys and values for the top level vCon JSON object are defined in the following subsections.</t>
        <section anchor="vcon">
          <name>vcon</name>
          <t>The "vcon" parameter is DEPRECATED as of the publication of this document as an RFC.
The "vcon" parameter was used to differentiate schema changes to the vCon core container when
incompatibilities were created in Internet-Draft versions.
The extension mechanism replaces the need for schema versioning.
The vcon parameter was used to contain the syntactic version of the JSON format used in the vCon.
(see <xref target="name-non-upward-compatible-changes-to-the-vcon-container">Non-Upward Compatible Changes to the vCon Container</xref>)</t>
          <ul spacing="normal">
            <li>
              <t>vcon: "String"</t>
            </li>
          </ul>
          <t>For syntax defined in this document, the string <bcp14>MUST</bcp14> have the value: "0.5.0"</t>
        </section>
        <section anchor="uuid">
          <name>uuid</name>
          <t>The <xref target="UUID"/> for the vCon is used to refer to it when privacy or security may not allow for inclusion or URL
reference to a vCon.
The UUID value <bcp14>MUST</bcp14> be globally unique.
All vCon documents <bcp14>MUST</bcp14> have the uuid parameter and value set.</t>
          <ul spacing="normal">
            <li>
              <t>uuid: "String"</t>
            </li>
          </ul>
          <t>The value of the string <bcp14>SHOULD</bcp14> be generated using the version 8 UUID defined in <xref target="UUID"/> which is generated
identically to a version 7 UUID with the exception that:</t>
          <ul spacing="normal">
            <li>
              <t>rand_b/custom_c is generated from the high 62 bits of the SHA-1 hash of the FQHN string</t>
            </li>
            <li>
              <t>the variant and version fields are set as described for version 8 UUID</t>
            </li>
          </ul>
          <t>The DNS name string used in generating the uuid value <bcp14>SHOULD</bcp14> be the same FQHN, or a subdomain to allow
for more distributed generation of UUIDs, as would used in the signing certificate as they are the same
domains of uniqueness.</t>
        </section>
        <section anchor="extensions">
          <name>extensions</name>
          <t>The vCon schema can be extended through the definition of new extensions.
The extensions parameter <bcp14>MUST</bcp14> contain the list of names of all vCon extensions which define any parameters, Objects or parameter values used in the vCon that are not defined in this core vCon schema document.
Each extension name listed in the critical parameter <bcp14>MUST</bcp14> also be listed in the extensions parameter (see <xref target="critical"/>).</t>
          <ul spacing="normal">
            <li>
              <t>extensions: "String[]" (optional, <bcp14>MUST</bcp14> be present if any vCon extension is used)</t>
            </li>
          </ul>
        </section>
        <section anchor="critical">
          <name>critical</name>
          <t>Implementations that include extensions which are incompatible with the core vCon schema <bcp14>MUST</bcp14> list the names of those extensions in the critical parameter.
A vCon that includes a critical parameter indicates that correct interpretation of the vCon requires explicit support for the listed extensions.
An implementation that does not recognize or support the extensions listed in the critical parameter <bcp14>MUST NOT</bcp14> attempt to process or operate on the vCon, except to reject it or report unsupported content.</t>
          <ul spacing="normal">
            <li>
              <t>critical: "String[]" (optional, <bcp14>MUST</bcp14> be present if any Incompatible vCon extension is used)</t>
            </li>
          </ul>
        </section>
        <section anchor="created_at">
          <name>created_at</name>
          <t>The created_at parameter provides the creation time of this vcon, which <bcp14>MUST</bcp14> be present, and should not
change once the vcon object is created.</t>
          <ul spacing="normal">
            <li>
              <t>created_at: "Date"</t>
            </li>
          </ul>
        </section>
        <section anchor="updated_at">
          <name>updated_at</name>
          <t>The updated_at parameter provides the last modified time of this vcon, which <bcp14>MAY</bcp14> be present.
For unsigned forms, the updated_at of the vcon object <bcp14>SHOULD</bcp14> be updated as it is modified.
For signed forms of the vCon object, the updated_at contains the time when this vcon was last signed.
Future updates <bcp14>MUST</bcp14> first set the updated_at to the new signing time as the vcon object is signed again.</t>
          <ul spacing="normal">
            <li>
              <t>updated_at: "Date"</t>
            </li>
          </ul>
        </section>
        <section anchor="subject">
          <name>subject</name>
          <t>The subject or the topic of the conversation is provided in the subject parameter.
This parameter is optional as not all conversations have a defined subject.
Email threads and prescheduled calls and video conferences typically have a subject which can be captured here.
The subject may also be derived from analysis of the dialog.</t>
          <ul spacing="normal">
            <li>
              <t>subject: "String" (optional)</t>
            </li>
          </ul>
          <t>The string value of the subject parameter is a free formed JSON string with no constrained syntax.</t>
        </section>
        <section anchor="redacted_from">
          <name>redacted_from</name>
          <t>A redacted vCon <bcp14>SHOULD</bcp14> provide a reference to the unredacted or prior, less redacted, vCon instance version of itself.
The purpose of the <xref target="redacted_from-object">Redacted_from Object</xref> is to provide the reference to the unredacted or less redacted version of the vCon from which this vCon was derived.
For privacy reasons, it may be necessary to redact a vCon to construct another vCon without the PII.
This allows the non-PII portion of the vCon to still be analyzed or used in a broader scope.
The <xref target="redacted_from-object">Redacted_from Object</xref> <bcp14>SHOULD</bcp14> contain the uuid parameter and <bcp14>MAY</bcp14> include the url, content_hash parameters (see <xref target="externally-referenced-files">Externally Referenced Files</xref>).
If a reference to the unredacted vCon is provided in the url parameter, the access to that URL <bcp14>MUST</bcp14>
be restricted to only those who should be allowed to see the identity or PII for the redacted vCon.</t>
          <t>Redaction techniques are discussed in more detail in <xref target="redaction_techniques">Redaction Techniques</xref>. The assurance of the accuracy of the redaction is made by the entity that creates the redaction which
<bcp14>SHOULD</bcp14> sign the redacted version of the vCon.</t>
          <ul spacing="normal">
            <li>
              <t>redacted_from: "Redacted_from" (optional, mutually exclusive with amended_from parameter)</t>
            </li>
          </ul>
          <section anchor="redacted_from-object">
            <name>Redacted_from Object</name>
            <t>A Redacted_from Object contains the following parameters:</t>
            <ul spacing="normal">
              <li>
                <t>uuid: "String"</t>
              </li>
            </ul>
            <t>The value contains the <xref target="uuid">uuid string value</xref> of the unredacted/prior vCon instance version.
The absence of a value for uuid indicates that the less redacted version of this vCon is not available or
does not exist.</t>
            <ul spacing="normal">
              <li>
                <t>type: "String"</t>
              </li>
            </ul>
            <t>The value of the redacted type parameter is used to indicate the type of redaction that was performed on
this vCon relative to the less redacted version referenced by the redacted uuid parameter.
This should indicate the type of information that was redacted, and has the same set of values defined for the type field of the redacted_string object.</t>
            <t>The the location of the referenced vCon <bcp14>MAY</bcp14> be provided as defined in <xref target="externally-referenced-files">Externally Referenced Files</xref> by including url  and content_hash.
content_hash <bcp14>MUST</bcp14> be included if url is provided.</t>
            <ul spacing="normal">
              <li>
                <t>url: "String"</t>
              </li>
              <li>
                <t>content_hash: "ContentHash" | "ContentHash[]"</t>
              </li>
            </ul>
            <t>The following diagram illustrates an example partial JSON object tree for a redacted vCon.
The top level object is a JWS signed vCon which contains a vCon in the unsigned form in the payload
parameter.
The second level object is the redacted vcon which refers to the encrypted unredacted vCon in it's
redacted_from parameter.
Note that the redacted vCon references the JWE encrypted vCon by UUID and may reference it by URL.
The JWE encrypted unredacted vCon contains the signed version of the unredacted vCon in the ciphertext
parameter.
The signed unredacted vCon contains the unredacted vCon in the unsigned form in it's payload parameter.</t>
            <figure anchor="diagram1">
              <name>redacted vCon object tree</name>
              <artwork><![CDATA[
                --------------
Signed          | JWS   uuid-|-- redacted vCon uuid in header
redacted vCon:  |            |
                |    payload-|-- unsigned redacted vCon in
                -------------- / payload parameter
                              /
            ----------------    /
vCon which  |vCon          |<---
has been    |              |
redacted:   |redacted_from-|-- Redacted Object
            ---------------- / refers to JWE
                            /  encrypted unredacted vCon
                           /
                          /
                         /
                        /
                       /
                      /
                     /
                    / ---------------   signed unredacted vCon
                    ->| JWE    uuid-|-- uuid in unprotected
Encrypted signed      |             |
unredacted vCon:      |  cyphertext-|--- JWS signed
                      ---------------  / unredacted vCon
                                      / in cyphertext
                 /-------------------/ parameter
                /
               /  -------------
Signed         -> |JWS   uuid-|-- unredacted vCon uuid in header
unredacted vcon:  |           |
                  |   payload-|-- unsigned unredacted vCon
                  -------------  \ in payload
                                  \   ----------
                                   -->| vCon   |
Unsigned unredacted vCon:             |        |
                                      ----------
]]></artwork>
            </figure>
          </section>
        </section>
        <section anchor="amended_from">
          <name>amended_from</name>
          <t>A signed or encrypted vCon cannot be modified without invalidating it.
In these cases, to allow for adding of additional information a new vCon instance version <bcp14>MUST</bcp14> be created.
The prior vCon instance version is referenced by the <xref target="amended_from-object">Amended_from Object</xref>.
The vCon with amended data contains all of the data that is in the referenced vCon with the exception of data that is amended.
That is to say that the newer version of the vCon is a deep copy of the prior version with the amended and additional data added to it.</t>
          <t>The prior vCon instance version <bcp14>SHOULD</bcp14> be referenced via the uuid of the prior vCon instance version, and <bcp14>MAY</bcp14> include the url and content_hash parameters (see <xref target="externally-referenced-files">Externally Referenced Files</xref>).</t>
          <ul spacing="normal">
            <li>
              <t>amended_from: "Amended_from" (optional, mutually exclusive with redacted_from parameter)</t>
            </li>
          </ul>
          <section anchor="amended_from-object">
            <name>Amended_from Object</name>
            <t>The Amended_from Object contains the following parameters:</t>
            <ul spacing="normal">
              <li>
                <t>uuid: "String" (optional if external reference provided)</t>
              </li>
            </ul>
            <t>The value contains the <xref target="uuid">uuid string value</xref> of the prior vCon instance version, to which this vCon's amendments were applied.
The prior vCon instance version may be the original vCon, a redacted vCon, or a previously amended vCon.</t>
            <t>The location of the referenced vCon <bcp14>MAY</bcp14> be provided, as defined in <xref target="externally-referenced-files">Externally Referenced Files</xref> by including url and content_hash.  content_hash <bcp14>MUST</bcp14> be provided if url is provided.</t>
            <ul spacing="normal">
              <li>
                <t>url: "String"</t>
              </li>
              <li>
                <t>content_hash: "ContentHash" | "ContentHash[]"</t>
              </li>
            </ul>
            <t>The following figure illustrates an example partial JSON object tree for an amended vCon.
The top level object is the JWS signed amended vCon which contains the unsigned form of the vCon in its payload parameter.
The second level object is the amended vCon with additional conversational data (e.g. analysis data).
It refers to the prior vCon instance version in its amended parameter.
Note: the amended_from parameter may refer to the prior vCon instance version via URL.
The amended vCon in this figure refers to the JWS signed version of the vCon, which in turn contains the original vCon in unsigned form in its payload parameter.</t>
            <figure anchor="diagram2">
              <name>amended vCon object tree</name>
              <artwork><![CDATA[
                --------------
Signed          | JWS   uuid-|-- amended vCon uuid in header
amended vCon:   |            |
                |    payload-|-- payload parameter
                -------------- / contains unsigned
                              / amended vCon
            ---------------  /
vCon with   |vCon         |<-
amended     |             |
data:       |amended_from-|--- amended_from parameter
            |    analysis-|  / refers to JWS
            --------------- / signed original vCon
                           / along with additional
                          / conversational data
                         / (e.g. analysis)
                        /
                       /
                      /
                     /
                    / ------------
                    ->| JWS uuid-|-- original vCon uuid in header
signed                |          |
original vCon:        |  payload-|--- payload parameter
                      ------------  / contains unsigned
                                   / original vCon
                  -------------   /
Original vCon:    |vCon       |<--
                  |           |
                  |   parties |
                  |   dialog  |
                  -------------
]]></artwork>
            </figure>
          </section>
        </section>
        <section anchor="sessions-objects-array">
          <name>sessions Objects Array</name>
          <t>A vCon can contain a single conversation, several conversations, sub-conversations or side bar conversations.
The Session Object is used to group dialog Objects into sets of dialog to represent those conversations.
A Session Object can "contain" other Session Objects by reference.
A simple conversation has only 1 Session Object for all of the Dialogs.
At least one Session Object <bcp14>MUST</bcp14> exist if the Events array or the Dialog array contain objects.</t>
          <t>TODO: Session Object required if Attachments is not empty too?</t>
          <ul spacing="normal">
            <li>
              <t>sessions: "Session[]" (optional)</t>
            </li>
          </ul>
          <t>The value of the sessions parameter is an array of <xref target="session-object">Session Objects</xref>.</t>
          <t>Examples of where  multiple Session Objects are used to show the topology of the conversation and dialog include:</t>
          <section anchor="call-transfer">
            <name>Call Transfer</name>
            <t>A customer calls into a contact center, which results in a call to a bot, that call gets transferred to an agent, the agent has a consultation with a supervisor, the customer gets transferred to the supervisor.
From the customer's perspective this was one call.
In reality it was 3 different calls.</t>
            <t>This may be represented as Session Object which references 3 other Session Object:</t>
            <ul spacing="normal">
              <li>
                <t>The original call with the bot</t>
              </li>
              <li>
                <t>the call between the agent and the supervisor</t>
              </li>
              <li>
                <t>The call resulting from the transfer of the customer to the supervisor</t>
              </li>
            </ul>
          </section>
          <section anchor="dialog-per-stream">
            <name>Dialog per Stream</name>
            <t>Some call recorders create a separate single channel recording for each leg or stream in the call, each resulting in a Dialog Object.
To show that those Dialog Objects are all in the same call or conversation, we create a Session Object which refers to all of the Dialog Objects that were a part of it.</t>
          </section>
          <section anchor="dialog-per-talk-spurt">
            <name>Dialog per Talk Spurt</name>
            <t>Some call recorders create separate single channel recordings for each contiguous talk spurt for a Party or stream.
This may result in several Dialogs for some of the parties in the call.
In this case we need the Session Object to indicate which Dialogs compose the call or conversation.
We also need the Session Object to declare the start and duration of the call, as each Dialog Object only defines the start and duration of its talk spurt.</t>
          </section>
          <section anchor="agent-coaching">
            <name>Agent Coaching</name>
            <t>In contact centers, an agent talking to a customer may be monitored by a supervisor.
In this scenario, the customer and the agent can hear each other, the agent and the supervisor can hear each other, but the customer cannot hear the supervisor, the supervisor can hear both the customer and the agent.
In the simple case, we have 3 Dialog Objects and 2 Session Objects.</t>
            <t>Dialog Objects containing:</t>
            <ul spacing="normal">
              <li>
                <t>The customer talking</t>
              </li>
              <li>
                <t>The agent talking</t>
              </li>
              <li>
                <t>The supervisor talking</t>
              </li>
            </ul>
            <t>Session Objects referencing Session and Dialog Objects:</t>
            <ul spacing="normal">
              <li>
                <t>The top level Session Object which references the following Session Objects</t>
              </li>
              <li>
                <t>The customer Session which references the customer and agent dialog recordings</t>
              </li>
              <li>
                <t>The supervisor Session which references the customer, the agent and supervisor dialog recordings</t>
              </li>
            </ul>
          </section>
          <section anchor="ai-agent">
            <name>AI Agent</name>
            <t>A conversation may occur between an AI agent and a human.
That AI agent in turn may converse with other AI agents, to fulfill a response to the human.
This can recurse such that the second tier AI agents talk to 3rd tier AI agents or even other humans and so on.
The top level Session object might represent the conversation between the human and the top level AI agent.
That top level Session Object would refer to other Session Objects for the second tier AI agent conversations.
Those Session Objects may refer to Session Objects for the 3rd tier AI agent conversations and so on.
This example describes how both human to AI agent as well as AI agent to AI agent conversations can be captured in a vCon.</t>
          </section>
        </section>
        <section anchor="parties-objects-array">
          <name>parties Objects Array</name>
          <t>The name, identity or contact information of all of the parties involved with the conversation are included in the parties object array.
Whether the parties were observers, passive or active participants in the conversation, they each are included as a Party Object in the parties array.</t>
          <ul spacing="normal">
            <li>
              <t>parties: "Party[]" (optional)</t>
            </li>
          </ul>
          <t>The value of the parties parameter is an array of <xref target="party-object">Party Objects</xref>.</t>
        </section>
        <section anchor="events-objects-array">
          <name>events Objects Array</name>
          <t>All events which occur related to this vCon are included in this array of Event Objects.
Event Objects <bcp14>MAY</bcp14> appear in any order in the events array and are not required to be in chronological order.
Events may be in non-chronological order because of network or consolidation delays.
The time parameter of each Event Object is used to determine the sequence in which the events occurred.</t>
          <ul spacing="normal">
            <li>
              <t>events: "Event[]" (optional)</t>
            </li>
          </ul>
          <t>The value of the events parameter is an array of <xref target="event-object">Event Objects</xref>.</t>
        </section>
        <section anchor="dialog-objects-array">
          <name>dialog Objects Array</name>
          <t>The actual conversation which occurred over text, audio or video that was captured, is contained in the dialog Objects Array.</t>
          <ul spacing="normal">
            <li>
              <t>dialog: "Dialog[]" (optional)</t>
            </li>
          </ul>
          <t>The value of the dialog parameter is an array of <xref target="dialog-object">Dialog Objects</xref>.
It should be noted that the Dialog Objects may not be sorted in chronological order.
They are in the order that they were added.
It is the applications responsibility to sort dialog and transcriptions if they are needed in chronological order.</t>
        </section>
        <section anchor="analysis-objects-array">
          <name>analysis Objects Array</name>
          <t>Analysis, which is performed on the conversational data, is stored in the analysis Objects array.</t>
          <ul spacing="normal">
            <li>
              <t>analysis: "Analysis[]" (optional)</t>
            </li>
          </ul>
          <t>The value of the analysis parameter is an array of <xref target="analysis-object">Analysis Objects</xref>.</t>
        </section>
        <section anchor="attachments-objects-array">
          <name>attachments Objects Array</name>
          <t>Ancillary documents, discussed, presented, referenced or related to the conversation may be stored in the attachments array.
It should be noted that the Attachment Objects may not be sorted in chronological order.
They are in the order that they were added.</t>
          <ul spacing="normal">
            <li>
              <t>attachments: "Attachment[]" (optional)</t>
            </li>
          </ul>
          <t>The value of the attachments parameter is an array of <xref target="attachment-object">Attachment Objects</xref>.</t>
        </section>
        <section anchor="redactedstrings-objects-array">
          <name>redacted_strings Objects Array</name>
          <t>A vCon can contain sensitive information in string values in many places. A text dialog containing chat messages or emails might contain a person's first name, or a street address, or an account number. Events, like a tool call made by an AI agent - can contain an account ID or social security number.</t>
          <t>The vCon format provides a general purpose solution for redacting sensitive information from any string in the object.
Any string which has a substring containing sensitive information can be replaced by "<em>_REDACTED_REF</em>#", where the value of # is a positive integer which uniquely identifies the substring that was replaced. Within the redacted_strings array there will be a member that contains a matching reference, along with meta-data about the redaction, such as the type of information that was redacted.</t>
          <t>The redacted_strings array is defined as:</t>
          <ul spacing="normal">
            <li>
              <t>redacted_strings: "Redacted_string[]" (optional)</t>
            </li>
          </ul>
          <t>Where the Redacted_string object is defined in <xref target="redacted_string-object">Redacted_string Object</xref>.</t>
          <t>As an example, consider the following simplified event, which contains a tool call that has an account ID in it. Several mandatory parameters have been omitted for ease of understanding:</t>
          <artwork><![CDATA[
{
  "events" : [
    {
      "type" : "tool-call",
      "tool_name" : "close_account_by_id",
      "input-params" : [
        {
          "input-name" : "account_id",
          "input-value" : "293827344"
        }
      ]
    }
  ]
}
]]></artwork>
          <t>You can see that this contains a sensitive account ID. Here is a version that is now redacted.</t>
          <artwork><![CDATA[
{
  "events" : [
    {
      "type" : "tool-call",
      "tool_name" : "close_account_by_id",
      "input-params" : [
        {
          "input-name" : "account_id",
          "input-value" : "__REDACTED_REF_1"
        }
      ]
    }
  ]
}
]]></artwork>
          <t>There will then be an entry in the redacted_strings array like this:</t>
          <artwork><![CDATA[
  "redacted_strings" : [
    {
      "ref" : 1,
      "type" : "FIN_ID_NUM"
    }
  ]
]]></artwork>
          <t>Implementations created a vCon that perform this kind of string redaction <bcp14>MUST</bcp14> include an entry in the redacted_strings array for every unique substring value they redact. A single vCon <bcp14>MUST NOT</bcp14> have more than 99999 such substrings redacted, to provide an upper bound on the integer value and to allow bounded regex parsing.</t>
          <t>Furthermore, a processor of the VCON <bcp14>MUST</bcp14> validate that - for each instance of the regular expression "<em>_REDACTED_REF</em>\d{1,5}$" it finds in the vCon,  there is a corresponding entry in the redacted_strings array whose ref value matches the reference digit sequence.
If there is no match, then it means the substring was not actually redacted, and the literal substring value is actually whatever matched "<em>_REDACTED_REF</em>\d{1,5}$" for that reference ID.
This can happen if a user were to literally type a chat message or email like, "Yeah I'm going to try to break vcon by typing __REDACTED_REF_3 hah hah hah!".</t>
          <t>This redaction technique allows vCon to have a way of redacting information from strings anywhere, including future extensions to vCon. This means, unless an extension might convey sensitive information in a way for which string redaction is insufficient, it will not need any specific redaction capability defined.</t>
        </section>
      </section>
      <section anchor="session-object">
        <name>Session Object</name>
        <t>The Session Object is used to show the scope for conversational dialog and events.
It provides the ability to group dialog and events into sub-conversation.
A Session Object can contain by reference other Session Objects to create a nesting or tree relationship with child session(s).
It can also support peer relationships to group in logical sequences of evolution of a conversation.
For example a conference may split into break out sessions and then merge back together as one conference again.</t>
        <section anchor="session-start">
          <name>start</name>
          <t>The start parameter indicates when this session was started.
The start parameter <bcp14>SHOULD</bcp14> be present.
The start of the session may be before or after the start of the Dialog and Event Objects which are part of this session (see <xref target="session-duration"/>).
For example it could be the scheduled start time for a conference where everyone shows up late.</t>
          <ul spacing="normal">
            <li>
              <t>start: "Date"</t>
            </li>
          </ul>
          <t>The value of the start parameter is the date and time at which the session started.</t>
        </section>
        <section anchor="session-duration">
          <name>duration</name>
          <t>The duration parameter contains the duration in seconds of the session.
The start and duration parameters together define the time period of the session, which includes its start and end.
The time period of the session need not include the entire time period of the Dialog and Event Objects that are part of this session.
Dialog Content of a Dialog Object which is outside of the time period of the session <bcp14>SHOULD</bcp14> be considered to not be part of that session.
Whether or how an application renders Dialog Content outside of the time period of the session is an application choice.</t>
          <t>This allows a session to be scoped to part of a recording without having to split the recording into separate Dialog Objects.
For example, a Session Object may be added to a vCon to mark up the portion of a conversation which is of interest, saving a consumer of the vCon from having to listen to or review the whole conversation.
Such a Session Object may be a child or a peer of the Session Object for the whole conversation (see <xref target="session-reference-type"/>).
Dialog Objects referenced by the session may also be entirely outside of the time period of the session.
For example, a recording Dialog Object of the opening of a call may be entirely before the time period of a session which marks up a later portion of that call.</t>
          <t>A "text" type Dialog Object is part of the session in its entirety if any part of the time period given by its start and duration is within the time period of the session.
This is because the Dialog Content of a "text" type Dialog Object has no time stamps by which it could be divided.
A vCon extension may define a form of text Dialog Content with time stamps at a finer granularity, such as per word, along with how it is scoped by the time period of a session.
An "incomplete" type Dialog Object is likewise part of the session in its entirety if any part of the time period given by its start and duration is within the time period of the session.</t>
          <t>Event Objects which are part of this session are part of the session even if they are outside of the time period of the session.
For example, it may be important to know that a party dropped out of the conversation before the start of the session.</t>
          <t>If the duration parameter is not present, the time period of the session has no end.
In this case, all of the Dialog Content of the Dialog Objects referenced by the session which is at or after the start of the session is part of the session.</t>
          <ul spacing="normal">
            <li>
              <t>duration: "UnsignedInt" | "UnsignedFloat" (optional)</t>
            </li>
          </ul>
          <t>The value <bcp14>MUST</bcp14> be the session duration in seconds.</t>
        </section>
        <section anchor="session-parties">
          <name>parties</name>
          <t>The Session Object parties parameter references the Party Objects from the parties Array that are the receivers of the dialog in this session.
The parties parameter <bcp14>SHOULD</bcp14> be present.
A party is a receiver if they potentially received any part of the dialog that was exchanged in this session.
This is not a guarantee that they received any part of the dialog, only that some part of any dialog in this session was sent to them.
The contributors to the dialog in this session are indicated in the <xref target="dialog-parties">Dialog Object parties parameter</xref> of each of the Dialog Objects that are part of this session.
A contributor is not necessarily a receiver.
For example, an automated announcement or prompt player contributes to the dialog, but does not receive any of it.
A contributor that did not potentially receive any part of the dialog in this session <bcp14>SHOULD NOT</bcp14> be included in the Session Object parties parameter.
The originator of the session <bcp14>MAY</bcp14> be included in the Session Object parties parameter even if it is not a receiver (see <xref target="session-originator"/>).
To determine what part(s) of the dialog that a party potentially heard or received, the Event Objects may provide data as to when a party joined, dropped out, went on or off hold.</t>
          <ul spacing="normal">
            <li>
              <t>parties: "UnsignedInt[]"</t>
            </li>
          </ul>
          <t>The value of the parties parameter is an array of the indices into the parties Object array to the Party Objects that are the receivers of the dialog in the session.</t>
        </section>
        <section anchor="session-originator">
          <name>originator</name>
          <t>The originator party for this session.
For email and text, this is the sender of the first message.
For audio and video calls, this is the calling party.
For a scheduled meeting or conference, this is the organizer, the party that scheduled or created the meeting.
The organizer may be a party that never joins the conference; such a party may still be included in the parties array.
The organizer is distinct from the party acting as host or controller of the conference at any point during the meeting; identifying the host or controller is out of scope for this document.
It is implied that the first party in the Session Object parties list is the originator of the session.
If the originator is not known, an empty Party Object (see <xref target="party-object">Party Object</xref>) may be used as the first party or as the party referenced by the originator parameter.
The originator parameter is only provided if the first party of the Session Object parties list is NOT the originator.</t>
          <ul spacing="normal">
            <li>
              <t>originator: "UnsignedInt" (optional)</t>
            </li>
          </ul>
          <t>The originator value is the index into the parties Objects Array, to the party that originated the session.</t>
        </section>
        <section anchor="session-session-id">
          <name>session_id</name>
          <t>The <xref target="SESSION-ID"/> <bcp14>MAY</bcp14> be included for the session if it applies to all of the Dialog Objects in the session.</t>
          <ul spacing="normal">
            <li>
              <t>session_id: "SessionId" (optional)</t>
            </li>
          </ul>
          <t>The value of the session_id parameter is a single SessionId Object (see <xref target="session_id"/>).
A <xref target="SESSION-ID"/> which applies to only some of the parties or Dialog Objects in the session is captured in the session_id parameter of the Dialog Object.</t>
        </section>
        <section anchor="session-sessions">
          <name>sessions</name>
          <t>A Session Object may refer to other Session Objects in one of several different relationships using the <xref target="session-reference-object">Session_Reference Object</xref>.</t>
          <ul spacing="normal">
            <li>
              <t>sessions: "Session_Reference[]" (optional)</t>
            </li>
          </ul>
          <t>The sessions parameter is an array of Session Reference Objects.
The sessions parameter can be used to create a tree or graph of session.
A Session Reference Object also labels the relationship between this Session Object and the reference one.
Event Objects are not inherited through these relationships; an Event Object applies only to the Session Objects listed in its sessions parameter (see <xref target="event-sessions"/>).</t>
        </section>
        <section anchor="session-dialog">
          <name>dialog</name>
          <t>All <xref target="dialog-objects-array">Dialog Objects</xref> <bcp14>SHOULD</bcp14> be referenced by at least one of the Session Objects in a vCon.
The dialog parameter in the Session Object is an array of Dialog Object indices to the <xref target="dialog-objects-array">dialog Object array</xref>.</t>
          <ul spacing="normal">
            <li>
              <t>dialog: "UnsignedInt[]" (optional)</t>
            </li>
          </ul>
          <t>The value of the Session Object dialog parameter is an array of indices to the dialog in the Dialog Object array which are part of this session.</t>
        </section>
        <section anchor="session-reference-object">
          <name>Session_Reference Object</name>
          <t>A Session Reference Object specifies the relationship from one Session Object to another.</t>
          <section anchor="session-reference-session">
            <name>session</name>
            <t>The session parameter is used to define a relationship from one session to another.</t>
            <ul spacing="normal">
              <li>
                <t>session: "UnsignedInt"</t>
              </li>
            </ul>
            <t>The session parameter value is an index into the <xref target="sessions-objects-array">sessions Object Array</xref> for the session that is referenced.
The session parameter <bcp14>MUST</bcp14> be provided.</t>
          </section>
          <section anchor="session-reference-type">
            <name>type</name>
            <t>The type parameter specifies a specific type of relationship to the reference session.</t>
            <ul spacing="normal">
              <li>
                <t>type: "String"</t>
              </li>
            </ul>
            <t>The string <bcp14>MUST</bcp14> have the value of one of the following tokens or a value defined in a vCon extension:</t>
            <ul spacing="normal">
              <li>
                <t>"child" - a session contained within this session</t>
              </li>
              <li>
                <t>"peer" - a session that occurred in parallel or overlapping this session</t>
              </li>
              <li>
                <t>"precursor" - a session that occurred before and leading up to this session</t>
              </li>
              <li>
                <t>"breakout" - a separate session that included some subset of the parties in this session and typically overlapping with this session</t>
              </li>
            </ul>
            <t>The handling of a Session_Reference Object with a type which is not recognized is described in <xref target="extending-vcon"/>.</t>
            <t>TODO: other types?</t>
          </section>
          <section anchor="session-reference-description">
            <name>description</name>
            <t>The description parameter is used to better describe the relationship to the referenced Session Object.</t>
            <ul spacing="normal">
              <li>
                <t>description: "String" (optional)</t>
              </li>
            </ul>
            <t>The value of the description parameter is a free form text description of the relationship.</t>
            <t>TODO: alternative name: relation?</t>
            <t>The description parameter is an open text String.</t>
          </section>
        </section>
      </section>
      <section anchor="event-object">
        <name>Event Object</name>
        <t>Events occur during a conversation which are important to capture in a vCon, but which are not part of the content of the conversation.
An Event Object captures one such occurrence.
An event is a point in time occurrence, unlike a Dialog Object which captures the actual conversation over some duration.
A period of time, such as the time that a party was on hold, is captured by a pair of Event Objects and not by a duration.</t>
        <t>Every Event Object has a type and the time at which the event occurred.
Depending upon its type, an Event Object also references the session(s) in which it occurred, the party to which it relates, or the Dialog Object to which it relates.
Each Event Object occurs within the scope of one or more Session Objects, referenced either directly by its sessions parameter, or through the Dialog Object referenced by its dialog parameter.</t>
        <t>The following types of events are defined in this document:</t>
        <ul spacing="normal">
          <li>
            <t>party event types - a change in the participation of a party in a session (see <xref target="event-type-party"/>)</t>
          </li>
          <li>
            <t>key event types - a key or button was pressed or released (see <xref target="event-type-key"/>)</t>
          </li>
          <li>
            <t>transfer event types - a transfer operation and the relationship between the sessions involved (see <xref target="event-type-transfer"/>)</t>
          </li>
          <li>
            <t>channel contributors event type - a change in the party(s) contributing to a channel of a recording (see <xref target="event-type-channel-contributors"/>)</t>
          </li>
        </ul>
        <t>Additional event types may be defined in a vCon extension (see <xref target="extending-vcon"/>).</t>
        <t>The parameters which are present in an Event Object depend upon the type of the event.
The event types are described first in the subsections of the type parameter (see <xref target="event-type"/>).
The parameters which apply to each event type are summarized in <xref target="event-object-parameter-applicability-by-type"/>.
The parameters which are specific to an event type are defined in the subsections which follow.</t>
        <section anchor="event-type">
          <name>type</name>
          <t>The type parameter indicates the type of event that occurred.</t>
          <ul spacing="normal">
            <li>
              <t>type: "String"</t>
            </li>
          </ul>
          <t>The string token for the event <bcp14>MUST</bcp14> be one of the tokens defined in the following subsections or in a vCon extension.
The handling of an Event Object with a type which is not recognized is described in <xref target="extending-vcon"/>.</t>
          <section anchor="event-type-party">
            <name>Party Event Types</name>
            <t>Participants in a session may not all join and leave at the same time.
The party event types support the capturing of the information when parties join, drop, go on hold or mute and unmute.
Party events may also be used to determine which parties were present or potentially received dialog from other parties in the conversation.
The party parameter references the party that joined, dropped, was put on or taken off hold or was muted or unmuted.</t>
            <t>The following party event types are defined:</t>
            <ul spacing="normal">
              <li>
                <t>"join" - when the party joins the session</t>
              </li>
              <li>
                <t>"drop" - when the party drops out of the session</t>
              </li>
              <li>
                <t>"hold" - when the party is put on hold</t>
              </li>
              <li>
                <t>"unhold" - when the party is taken off hold</t>
              </li>
              <li>
                <t>"mute" - when the party is muted</t>
              </li>
              <li>
                <t>"unmute" - when the party is taken off mute</t>
              </li>
            </ul>
          </section>
          <section anchor="event-type-key">
            <name>Key Event Types</name>
            <t>The key event types capture when a party presses or releases a DTMF or application key or button.
The party parameter references the party that pressed or released the key or button.
The key or button is identified in the button parameter (see <xref target="event-button"/>).</t>
            <t>The following key event types are defined:</t>
            <ul spacing="normal">
              <li>
                <t>"keydown" - when a DTMF or application key/button was pressed</t>
              </li>
              <li>
                <t>"keyup" - when a DTMF or application key/button was released</t>
              </li>
            </ul>
          </section>
          <section anchor="event-type-transfer">
            <name>Transfer Event Types</name>
            <t>The transfer event types document the roles of three parties and the relationship between two or three sessions.
In a transfer operation, the roles of the three parties to a transfer are defined in <xref target="SIP-XFER"/> as:</t>
            <ul spacing="normal">
              <li>
                <t>Transferee</t>
              </li>
              <li>
                <t>Transferor</t>
              </li>
              <li>
                <t>Transfer Target</t>
              </li>
            </ul>
            <t>There are two or three calls in which the parties are connected:</t>
            <ul spacing="normal">
              <li>
                <t>original call</t>
              </li>
              <li>
                <t>consultative call (optional as this call may not get created)</t>
              </li>
              <li>
                <t>target call</t>
              </li>
            </ul>
            <t>Each of these calls is represented by a Session Object.</t>
            <t>The following transfer event types are defined:</t>
            <ul spacing="normal">
              <li>
                <t>"consultation-start" - when the Transferor starts a consultative call with the Transfer Target</t>
              </li>
              <li>
                <t>"blind-transfer" - when the Transferor transfers the Transferee to the Transfer Target without a consultative call</t>
              </li>
              <li>
                <t>"consultative-transfer" - when the Transferor transfers the Transferee to the Transfer Target following a consultative call</t>
              </li>
              <li>
                <t>"transfer-abandoned" - when the Transferor abandons an attempt to transfer the Transferee without completing the transfer</t>
              </li>
            </ul>
            <t>The "blind-transfer" and "consultative-transfer" type Event Objects do not indicate that the target call succeeded.
The following table summarizes the transfer cases, the Event Objects which capture each case and the results.</t>
            <table>
              <thead>
                <tr>
                  <th align="left">Case</th>
                  <th align="left">Event Objects</th>
                  <th align="left">Results</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="left">Consultative call fails or is not answered</td>
                  <td align="left">consultation-start, transfer-abandoned</td>
                  <td align="left">consultation Session Object references an "incomplete" type Dialog Object</td>
                </tr>
                <tr>
                  <td align="left">Consultative call succeeds, Transferor does not transfer</td>
                  <td align="left">consultation-start, transfer-abandoned</td>
                  <td align="left">Transferee is not transferred in this attempt</td>
                </tr>
                <tr>
                  <td align="left">Consultative call succeeds, Transferor transfers, target call succeeds</td>
                  <td align="left">consultation-start, consultative-transfer</td>
                  <td align="left">target Session Object references the Dialog Objects for the target call</td>
                </tr>
                <tr>
                  <td align="left">Consultative call succeeds, Transferor transfers, target call fails or is not answered</td>
                  <td align="left">consultation-start, consultative-transfer</td>
                  <td align="left">target Session Object references an "incomplete" type Dialog Object</td>
                </tr>
                <tr>
                  <td align="left">Blind transfer, target call succeeds</td>
                  <td align="left">blind-transfer</td>
                  <td align="left">target Session Object references the Dialog Objects for the target call</td>
                </tr>
                <tr>
                  <td align="left">Blind transfer, target call fails or is not answered</td>
                  <td align="left">blind-transfer</td>
                  <td align="left">target Session Object references an "incomplete" type Dialog Object</td>
                </tr>
                <tr>
                  <td align="left">Transferor abandons before a consultative call or transfer</td>
                  <td align="left">transfer-abandoned</td>
                  <td align="left">Transferee is not transferred in this attempt</td>
                </tr>
              </tbody>
            </table>
            <t>A "consultative-transfer" or "transfer-abandoned" type Event Object which follows a consultation references the same Session Object in the consultation parameter as the "consultation-start" type Event Object.</t>
            <t>It is also possible for there to be more than one consultation.
This may occur for a number of reasons.
Call attempts may fail.
The caller may decide the consultation with a party is not the desired transfer target.
When a transfer attempt fails or is abandoned, the Transferor may attempt the transfer again.
Depending upon the system, a subsequent "consultative-transfer" type Event Object may reference the same consultation Session Object if the consultative call still exists.
Alternatively, the Transferor may start another consultative call, which is captured in a new "consultation-start" type Event Object, or may perform a blind transfer.
If the target call fails and the Transferor does not attempt the transfer again, no further transfer Event Object is created.</t>
            <t>More than one transfer may occur in a vCon.
After a transfer has completed or failed, additional transfers may be attempted.
Each transfer is captured in its own transfer Event Objects.
A Session Object may be referenced in more than one transfer event when multiple transfers occur.
For example, the Session Object for the target call of one transfer may be the Session Object for the original call of a subsequent transfer.</t>
            <t>The following figure illustrates the transfer event types and the calls to which they relate.</t>
            <figure anchor="diagram3">
              <name>transfer event states</name>
              <artwork><![CDATA[
   transfer-abandoned
      +-------+
      |       |
      v       |
+------------------+                          +--------------------+
|  Original call   |----consultation-start--->|    Consultation    |
|    (session)     |<---transfer-abandoned----|   (consultation)   |
+------------------+                          +--------------------+
   ^        |                                   |                ^
   :        |             consultative-transfer |    target call :
   :        | blind-transfer                    |    fails       :
   :        |                                   |                :
   :        |                                   v                :
   :        |                                 +--------------------+
   :        +-------------------------------->|    Target call     |
   :..........................................|  (target_session)  |
     target call fails                        +--------------------+
                                                        :
                                                        : target
                                                        : call
                                                        v succeeds
                                              +--------------------+
                                              |    Transferred     |
                                              +--------------------+

----  Event Object
....  result determined from the target Session Object

]]></artwork>
            </figure>
            <t>In the transfer event types, the sessions parameter references the Session Object for the original call and the party parameter references the Transferor.
The transferee and transfer_target parameters reference the other two parties to the transfer (see <xref target="event-transferee"/> and <xref target="event-transfer-target"/>).
The consultation and target_session parameters reference the Session Objects for the consultative call and the target call (see <xref target="event-consultation"/> and <xref target="event-target-session"/>).</t>
            <t>There are scenarios where we know that a transfer has occurred, but we have no information for one or two of the consultation, target or original calls.
In this case a placeholder Session Object is created and its index is used for the consultation, target_session or sessions parameter.
A placeholder Session Object may contain no parameters or may reference a placeholder Dialog Object.
A unique Session Object <bcp14>SHOULD</bcp14> be referenced for each role in the transfer.</t>
            <t>The transfer event types only capture the roles, operations and events of the parties and the session setup.
They do not capture the purpose or reason for the transfer as that is analysis to be captured in the analysis section of the vCon after the conversation has occurred.</t>
          </section>
          <section anchor="event-type-channel-contributors">
            <name>Channel Contributors Event Type</name>
            <t>The channel contributors event type indicates the time at which the party(s) contributing to a channel of a recording Dialog Object change.
This supports the channel contributor changes recording topology (see <xref target="dialog-type-recording"/>).
For example, a conference bridge may create a recording with fewer channels than there are parties in the conference, and select the party(s) captured on each channel based upon which parties it detects as talking.
At times a channel may capture no party at all.</t>
            <t>The dialog parameter references the recording Dialog Object and the channel parameter identifies the channel in that recording (see <xref target="event-dialog"/> and <xref target="event-channel"/>).
The contributors parameter indicates the party(s) contributing to that channel, starting at the time of the event (see <xref target="event-contributors"/>).
These parties contribute to the channel until the time of the next channel-contributors Event Object for the same Dialog Object and channel, or until the end of the recording.
The contributors at the start of the recording are indicated in the parties parameter of the Dialog Object (see <xref target="dialog-parties"/>).
The time parameter of a channel-contributors Event Object <bcp14>SHOULD</bcp14> be within the time period given by the start and duration parameters of the referenced Dialog Object.
Each channel-contributors Event Object applies to exactly one channel.
If the contributors to more than one channel change at the same time, a separate channel-contributors Event Object is used for each channel, each with the same time parameter value.</t>
            <t>The channel-contributors Event Object <bcp14>MAY</bcp14> be used with a recording Dialog Object in any of the recording topologies (see <xref target="dialog-type-recording"/>), although it may not be useful in some of them, such as talk spurt.
It indicates which parties are captured on a channel; it does not indicate that a party joined or dropped from the session.
A party may be in the session, but not captured on any channel of the recording.
The sessions and party parameters <bcp14>MUST NOT</bcp14> be present in the channel-contributors Event Object (see <xref target="event-sessions"/> and <xref target="event-party"/>).</t>
            <t>The following channel contributors event type is defined:</t>
            <ul spacing="normal">
              <li>
                <t>"channel-contributors" - when the party(s) contributing to a channel of a recording change</t>
              </li>
            </ul>
          </section>
          <section anchor="event-object-parameter-applicability-by-type">
            <name>Event Object Parameter Applicability by Type</name>
            <t>The following tables summarize which Event Object parameters apply to each Event Object type.
The parameter definitions in the subsections of this document are definitive; these tables are provided as a summary.
The symbols used in the tables are: M the parameter <bcp14>MUST</bcp14> be present, O the parameter is optional, SN the parameter <bcp14>SHOULD NOT</bcp14> be present, X the parameter <bcp14>MUST NOT</bcp14> be present.</t>
            <t>The following table applies to the party and key event types.</t>
            <table>
              <thead>
                <tr>
                  <th align="left">Parameter</th>
                  <th align="left">join, drop, hold, unhold, mute, unmute</th>
                  <th align="left">keydown, keyup</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="left">type</td>
                  <td align="left">M</td>
                  <td align="left">M</td>
                </tr>
                <tr>
                  <td align="left">time</td>
                  <td align="left">M</td>
                  <td align="left">M</td>
                </tr>
                <tr>
                  <td align="left">sessions</td>
                  <td align="left">M</td>
                  <td align="left">M</td>
                </tr>
                <tr>
                  <td align="left">party</td>
                  <td align="left">M</td>
                  <td align="left">M</td>
                </tr>
                <tr>
                  <td align="left">dialog</td>
                  <td align="left">SN</td>
                  <td align="left">SN</td>
                </tr>
                <tr>
                  <td align="left">channel</td>
                  <td align="left">X</td>
                  <td align="left">X</td>
                </tr>
                <tr>
                  <td align="left">contributors</td>
                  <td align="left">X</td>
                  <td align="left">X</td>
                </tr>
                <tr>
                  <td align="left">button</td>
                  <td align="left">X</td>
                  <td align="left">M</td>
                </tr>
                <tr>
                  <td align="left">transferee</td>
                  <td align="left">X</td>
                  <td align="left">X</td>
                </tr>
                <tr>
                  <td align="left">transfer_target</td>
                  <td align="left">X</td>
                  <td align="left">X</td>
                </tr>
                <tr>
                  <td align="left">consultation</td>
                  <td align="left">X</td>
                  <td align="left">X</td>
                </tr>
                <tr>
                  <td align="left">target_session</td>
                  <td align="left">X</td>
                  <td align="left">X</td>
                </tr>
              </tbody>
            </table>
            <t>The following table applies to the transfer event types.</t>
            <table>
              <thead>
                <tr>
                  <th align="left">Parameter</th>
                  <th align="left">consultation-start</th>
                  <th align="left">blind-transfer</th>
                  <th align="left">consultative-transfer</th>
                  <th align="left">transfer-abandoned</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="left">type</td>
                  <td align="left">M</td>
                  <td align="left">M</td>
                  <td align="left">M</td>
                  <td align="left">M</td>
                </tr>
                <tr>
                  <td align="left">time</td>
                  <td align="left">M</td>
                  <td align="left">M</td>
                  <td align="left">M</td>
                  <td align="left">M</td>
                </tr>
                <tr>
                  <td align="left">sessions</td>
                  <td align="left">M (1)</td>
                  <td align="left">M (1)</td>
                  <td align="left">M (1)</td>
                  <td align="left">M (1)</td>
                </tr>
                <tr>
                  <td align="left">party</td>
                  <td align="left">M (2)</td>
                  <td align="left">M (2)</td>
                  <td align="left">M (2)</td>
                  <td align="left">M (2)</td>
                </tr>
                <tr>
                  <td align="left">dialog</td>
                  <td align="left">SN</td>
                  <td align="left">SN</td>
                  <td align="left">SN</td>
                  <td align="left">SN</td>
                </tr>
                <tr>
                  <td align="left">channel</td>
                  <td align="left">X</td>
                  <td align="left">X</td>
                  <td align="left">X</td>
                  <td align="left">X</td>
                </tr>
                <tr>
                  <td align="left">contributors</td>
                  <td align="left">X</td>
                  <td align="left">X</td>
                  <td align="left">X</td>
                  <td align="left">X</td>
                </tr>
                <tr>
                  <td align="left">button</td>
                  <td align="left">X</td>
                  <td align="left">X</td>
                  <td align="left">X</td>
                  <td align="left">X</td>
                </tr>
                <tr>
                  <td align="left">transferee</td>
                  <td align="left">M</td>
                  <td align="left">M</td>
                  <td align="left">M</td>
                  <td align="left">M</td>
                </tr>
                <tr>
                  <td align="left">transfer_target</td>
                  <td align="left">M</td>
                  <td align="left">M</td>
                  <td align="left">M</td>
                  <td align="left">O</td>
                </tr>
                <tr>
                  <td align="left">consultation</td>
                  <td align="left">M</td>
                  <td align="left">X</td>
                  <td align="left">M</td>
                  <td align="left">O</td>
                </tr>
                <tr>
                  <td align="left">target_session</td>
                  <td align="left">X</td>
                  <td align="left">M</td>
                  <td align="left">M</td>
                  <td align="left">X</td>
                </tr>
              </tbody>
            </table>
            <t>(1) A single index which references the Session Object for the original call.</t>
            <t>(2) References the Transferor.</t>
            <t>The following table applies to the channel contributors event type.</t>
            <table>
              <thead>
                <tr>
                  <th align="left">Parameter</th>
                  <th align="left">channel-contributors</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="left">type</td>
                  <td align="left">M</td>
                </tr>
                <tr>
                  <td align="left">time</td>
                  <td align="left">M</td>
                </tr>
                <tr>
                  <td align="left">sessions</td>
                  <td align="left">X</td>
                </tr>
                <tr>
                  <td align="left">party</td>
                  <td align="left">X</td>
                </tr>
                <tr>
                  <td align="left">dialog</td>
                  <td align="left">M</td>
                </tr>
                <tr>
                  <td align="left">channel</td>
                  <td align="left">M</td>
                </tr>
                <tr>
                  <td align="left">contributors</td>
                  <td align="left">O (3)</td>
                </tr>
                <tr>
                  <td align="left">button</td>
                  <td align="left">X</td>
                </tr>
                <tr>
                  <td align="left">transferee</td>
                  <td align="left">X</td>
                </tr>
                <tr>
                  <td align="left">transfer_target</td>
                  <td align="left">X</td>
                </tr>
                <tr>
                  <td align="left">consultation</td>
                  <td align="left">X</td>
                </tr>
                <tr>
                  <td align="left">target_session</td>
                  <td align="left">X</td>
                </tr>
              </tbody>
            </table>
            <t>(3) A null value or the absence of the contributors parameter indicates that no party contributes to the channel.</t>
          </section>
        </section>
        <section anchor="event-time">
          <name>time</name>
          <t>The time parameter indicates the time at which this event occurred.</t>
          <ul spacing="normal">
            <li>
              <t>time: "Date"</t>
            </li>
          </ul>
          <t>The time parameter <bcp14>MUST</bcp14> be provided as it is used to determine the sequence in which events occurred.</t>
        </section>
        <section anchor="event-sessions">
          <name>sessions</name>
          <t>The sessions parameter indicates the session(s) in which this event occurred.</t>
          <ul spacing="normal">
            <li>
              <t>sessions: "UnsignedInt" | "UnsignedInt[]" (not used in channel-contributors events)</t>
            </li>
          </ul>
          <t>The value of the sessions parameter is the index, or an array of indices, into the sessions Object array to the Session Object(s) in which this event occurred.
The sessions parameter <bcp14>MUST</bcp14> be present in all of the Event Object types defined in this document, except "channel-contributors" type Event Objects, in which it <bcp14>MUST NOT</bcp14> be present.
An Event Object applies only to the Session Objects listed in its sessions parameter.
An Event Object does not apply to the child or parent Session Objects of the Session Objects listed in its sessions parameter, unless they are also listed (see <xref target="session-sessions"/>).
If an Event Object applies to more than one Session Object, each of those Session Objects <bcp14>MUST</bcp14> be listed in its sessions parameter.
The session(s) in which a "channel-contributors" type Event Object occurred are the Session Object(s) which reference the Dialog Object referenced by its dialog parameter (see <xref target="event-dialog"/>).
For the transfer event types, the value of the sessions parameter <bcp14>MUST</bcp14> be a single index, which references the Session Object for the original call between the Transferee and the Transferor.</t>
        </section>
        <section anchor="event-party">
          <name>party</name>
          <t>The party parameter indicates the party for this event.</t>
          <ul spacing="normal">
            <li>
              <t>party: "UnsignedInt" (not used in channel-contributors events)</t>
            </li>
          </ul>
          <t>The value of the party parameter is the index into the parties Object array to the party for this event.
The party parameter <bcp14>MUST</bcp14> be present in all of the Event Object types defined in this document, except "channel-contributors" type Event Objects, in which it <bcp14>MUST NOT</bcp14> be present.
The parties contributing to a channel are indicated in the contributors parameter of the "channel-contributors" type Event Object (see <xref target="event-contributors"/>).
For the transfer event types, the party parameter references the party that played the role of the Transferor.</t>
        </section>
        <section anchor="event-dialog">
          <name>dialog</name>
          <t>The dialog parameter indicates the Dialog Object to which this event relates.</t>
          <ul spacing="normal">
            <li>
              <t>dialog: "UnsignedInt" (required for channel-contributors events)</t>
            </li>
          </ul>
          <t>The value of the dialog parameter is the index into the dialog Object array to the Dialog Object to which this event relates.
The dialog parameter <bcp14>MUST</bcp14> be present in "channel-contributors" type Event Objects and <bcp14>SHOULD NOT</bcp14> be present in the other Event Object types defined in this document.
The Dialog Object referenced by a "channel-contributors" type Event Object <bcp14>MUST</bcp14> be of type "recording".
Event Object types defined in a vCon extension may use the dialog parameter, and may allow its value to be an array of indices to Dialog Objects.
An implementation <bcp14>SHOULD NOT</bcp14> treat an array value for the dialog parameter as an error in an Event Object type defined in a vCon extension.</t>
        </section>
        <section anchor="event-channel">
          <name>channel</name>
          <t>The channel parameter indicates the channel of the recording to which this event relates.</t>
          <ul spacing="normal">
            <li>
              <t>channel: "UnsignedInt" (required for channel-contributors events)</t>
            </li>
          </ul>
          <t>The value of the channel parameter is the index of the channel in the recording of the Dialog Object referenced by the dialog parameter, where 0 is the first channel.
The channel index corresponds to the index of the channel in the parties parameter of that Dialog Object (see <xref target="dialog-parties"/>).
The value <bcp14>MUST</bcp14> be less than the number of channels in the recording.
For a single channel recording, the value <bcp14>MUST</bcp14> be 0.
The channel parameter <bcp14>MUST</bcp14> be present in "channel-contributors" type Event Objects and <bcp14>MUST NOT</bcp14> be present in the other Event Object types defined in this document.</t>
        </section>
        <section anchor="event-contributors">
          <name>contributors</name>
          <t>The contributors parameter indicates the party(s) contributing to the channel, starting at the time of this event.</t>
          <ul spacing="normal">
            <li>
              <t>contributors: "UnsignedInt" | "UnsignedInt[]" | null (optional)</t>
            </li>
          </ul>
          <t>The value of the contributors parameter is the index, or an array of indices, into the parties Object array to the Party Objects which contribute to the channel, starting at the time of this event.
A null value, or the absence of the contributors parameter, in a "channel-contributors" type Event Object indicates that no party contributes to the channel, starting at the time of this event.
The contributors parameter <bcp14>MUST NOT</bcp14> be present in the other Event Object types defined in this document.</t>
        </section>
        <section anchor="event-button">
          <name>button</name>
          <t>The button parameter indicates the key or button that was pressed or released.</t>
          <ul spacing="normal">
            <li>
              <t>button: "String" (required for keydown and keyup events)</t>
            </li>
          </ul>
          <t>The button parameter value is the String value of the DTMF digit, character or string label for the button that was pressed or released.
The button parameter <bcp14>MUST</bcp14> be present in "keydown" and "keyup" type Event Objects and <bcp14>MUST NOT</bcp14> be present in other Event Object types.</t>
        </section>
        <section anchor="event-transferee">
          <name>transferee</name>
          <t>The transferee parameter indicates the Transferee in the transfer event types.</t>
          <ul spacing="normal">
            <li>
              <t>transferee: "UnsignedInt" (required for transfer event types)</t>
            </li>
          </ul>
          <t>The value of the transferee parameter is the index into the parties Object array to the party that played the role of the Transferee.
The transferee parameter <bcp14>MUST</bcp14> be present in the transfer event types and <bcp14>MUST NOT</bcp14> be present in other Event Object types.
If the Transferee is not known, an empty Party Object (see <xref target="party-object">Party Object</xref>) is referenced.</t>
        </section>
        <section anchor="event-transfer-target">
          <name>transfer_target</name>
          <t>The transfer_target parameter indicates the Transfer Target in the transfer event types.
Other parties may be part of the Session Object for the target call; the transfer_target parameter identifies the party that was the target of the transfer operation.</t>
          <ul spacing="normal">
            <li>
              <t>transfer_target: "UnsignedInt" (required for consultation-start, blind-transfer and consultative-transfer events, optional for transfer-abandoned events)</t>
            </li>
          </ul>
          <t>The value of the transfer_target parameter is the index into the parties Object array to the party that played the role of the Transfer Target.
The transfer_target parameter <bcp14>MUST</bcp14> be present in "consultation-start", "blind-transfer" and "consultative-transfer" type Event Objects.
If the Transfer Target is not known, an empty Party Object (see <xref target="party-object">Party Object</xref>) is referenced.
The transfer_target is optional in "transfer-abandoned" type Event Objects in the case where the transfer is abandoned before the target was identified.
The transfer_target parameter <bcp14>MUST NOT</bcp14> be present in Event Object types other than the transfer event types.</t>
        </section>
        <section anchor="event-consultation">
          <name>consultation</name>
          <t>The consultation parameter indicates the session for the consultative call in the transfer event types.</t>
          <ul spacing="normal">
            <li>
              <t>consultation: "UnsignedInt" (required for consultation-start and consultative-transfer events, optional for transfer-abandoned events)</t>
            </li>
          </ul>
          <t>The value of the consultation parameter is the index into the sessions Object array to the Session Object for the consultative call between the Transferor and the Transfer Target.
The consultation parameter <bcp14>MUST</bcp14> be present in "consultation-start" and "consultative-transfer" type Event Objects.
The consultation parameter is optional in "transfer-abandoned" type Event Objects in the case where the transfer is abandoned without a consultative call.
The consultation parameter <bcp14>MUST NOT</bcp14> be present in "blind-transfer" type Event Objects or in Event Object types other than the transfer event types.</t>
        </section>
        <section anchor="event-target-session">
          <name>target_session</name>
          <t>The target_session parameter indicates the session for the target call in the transfer event types.</t>
          <ul spacing="normal">
            <li>
              <t>target_session: "UnsignedInt" (required for blind-transfer and consultative-transfer events)</t>
            </li>
          </ul>
          <t>The value of the target_session parameter is the index into the sessions Object array to the Session Object</t>
        </section>
      </section>
      <section anchor="party-object">
        <name>Party Object</name>
        <t>A Party Object contains information about a specific party or participant in the conversation.
The information that is available about the party varies with the context, the communication mode and platform.
There are times when no information is available for a party either initially or over the entire life of the vCon.
In such situations, it is possible to have a Party Object with no parameters in it.
A Party Object <bcp14>SHOULD</bcp14> be created for each participant.
This may result in more than one empty Party Object.
They are distinct by the order or index in the Party Object array.</t>
        <section anchor="tel">
          <name>tel</name>
          <t>If the tel URL for the party is known, it can be included in the tel parameter.</t>
          <ul spacing="normal">
            <li>
              <t>tel: "String" (optional)</t>
            </li>
          </ul>
          <t>The value of the tel parameter <bcp14>SHOULD</bcp14> be a valid <xref target="TEL"/> URL.  The URL scheme prefix (i.e. "tel:") is optional.</t>
        </section>
        <section anchor="sip">
          <name>sip</name>
          <t>The <xref target="SIP"/> URL for the party can be provided in the sip parameter.</t>
          <ul spacing="normal">
            <li>
              <t>sip: "String" (optional)  </t>
              <t>
The value of the sip parameter is the addr-spec as defined in section 25.1 of <xref target="SIP"/>.</t>
            </li>
          </ul>
        </section>
        <section anchor="stir">
          <name>stir</name>
          <t>If the STIR <xref target="PASSporT"/> was provided to identify the party, the PASSporT can be included in the stir
parameter for the party.</t>
          <ul spacing="normal">
            <li>
              <t>stir: "String" (optional)</t>
            </li>
          </ul>
          <t>The string value of the stir parameter contains the <xref target="PASSporT"/> in the JWS Compact Serialization form.</t>
        </section>
        <section anchor="mailto">
          <name>mailto</name>
          <t>If the mailto URL is known for the party, it can be included in the mailto parameter.</t>
          <ul spacing="normal">
            <li>
              <t>mailto: "String" (optional)</t>
            </li>
          </ul>
          <t>The value of the mailto parameter is a string containing an email address for the party.
It <bcp14>MAY</bcp14> be provided in any common form, such as a bare address or a <xref target="MAILTO"/> URL; when a <xref target="MAILTO"/> URL is used, the "mailto:" scheme prefix is optional.</t>
        </section>
        <section anchor="name">
          <name>name</name>
          <t>If the party's name is known, it can be included in the name parameter.</t>
          <ul spacing="normal">
            <li>
              <t>name: "String" (optional)</t>
            </li>
          </ul>
          <t>The string value of the name parameter is a free form JSON string in which part or all of the party's name can be included.
It may be necessary, for privacy reasons, to not identify any information about the party.
This <bcp14>MAY</bcp14> be indicated by creating a Party Object with only the name parameter and setting its value to "anonymous".
A Party Object <bcp14>SHOULD</bcp14> be create for each anonymous party in the conversation.
This is necessary to capture the number of parties and distinction between which party contributed what data or dialog in the conversation.
Hence it is possible to have multiple anonymous Party Objects in the vCon.
They are distinct by the order or index in the Party Object array.</t>
        </section>
        <section anchor="party-did">
          <name>did</name>
          <t>If a Decentralized Identifier <xref target="DID"/> is known for the party, it can be included in the did parameter.</t>
          <ul spacing="normal">
            <li>
              <t>did: "String" (optional)</t>
            </li>
          </ul>
          <t>The value of the did parameter <bcp14>MUST</bcp14> be a valid DID URI that enables verifiable, decentralized digital identity for the party.
DIDs are designed to be decoupled from centralized registries and identity providers, allowing the controller of the DID to prove control without requiring permission from other parties.
The DID can refer to any subject (person, organization, thing, etc.) as determined by the controller of the DID.</t>
        </section>
        <section anchor="validation">
          <name>validation</name>
          <t>Proof of authorization of the communication channel through STIR, login or possession of a device, is often not sufficient proof of the identity of the person at the other end of the communications channel.
It is common in call centers to validate the identity of the person on the communication channel through verification of some sort of personal identification information.
The methods used, often varies with the situation and is business practices specific.
The purpose of the validation parameter, is to allow the validator to save a label or token which identifies the method of identity validation used to identify the person at the other end of the communication channel.
For confidentially reasons, it <bcp14>SHOULD NOT</bcp14> contain the data used to validate the name.
However it <bcp14>MAY</bcp14> name the data used to validate the name (e.g. "SSN", "DOB", "user ID and password").
It is up to the domain creating the vCon to define the set of tokens or values to be used for the validation parameter.</t>
          <ul spacing="normal">
            <li>
              <t>validation: "String" (<bcp14>SHOULD</bcp14> be provided if name parameter is provided)</t>
            </li>
          </ul>
          <t>The value of the validation string <bcp14>MAY</bcp14> be "none" or enterprise or domain defined token or string values.</t>
        </section>
        <section anchor="gmlpos">
          <name>gmlpos</name>
          <t>If the geolocation of the party is known, it can be added in the gmlpos parameter.
The gmlpos parameter contains the latitude and longitude of the location of the party at the time of the conversation start.</t>
          <ul spacing="normal">
            <li>
              <t>gmlpos: "String" (optional)</t>
            </li>
          </ul>
          <t>The gmlpos parameter value contains a string of the same format as the gml:pos element defined in section 3.2 of the <xref target="PIDF-LO"/> PIDF.</t>
        </section>
        <section anchor="civicaddress">
          <name>civicaddress</name>
          <t>The the civicaddress parameter value contains a Civicaddress Object which is optional and contains civic address information about the location for the party.</t>
          <ul spacing="normal">
            <li>
              <t>civicaddress: "Civicaddress" (optional)</t>
            </li>
          </ul>
          <t>The Civicaddress Object <bcp14>MAY</bcp14> contain any or all of the following parameters: country, a1, a2, a3, a4, a5, a6, prd, pod, sts, hno, hns, lmk, loc, flr, nam, pc as defined in section 2.2.1 of <xref target="GEOPRIV"/>.
The values of all of these parameters are of type String.
Note that the parameter names <bcp14>MUST</bcp14> be in lower case when contained in the Civicaddress Object even though they are in upper case in <xref target="GEOPRIV"/>.</t>
          <ul spacing="normal">
            <li>
              <t>country: "String" (optional)</t>
            </li>
            <li>
              <t>a1: "String" (optional)</t>
            </li>
            <li>
              <t>a2: "String" (optional)</t>
            </li>
            <li>
              <t>a3: "String" (optional)</t>
            </li>
            <li>
              <t>a4: "String" (optional)</t>
            </li>
            <li>
              <t>a5: "String" (optional)</t>
            </li>
            <li>
              <t>a6: "String" (optional)</t>
            </li>
            <li>
              <t>prd: "String" (optional)</t>
            </li>
            <li>
              <t>pod: "String" (optional)</t>
            </li>
            <li>
              <t>sts: "String" (optional)</t>
            </li>
            <li>
              <t>hno: "String" (optional)</t>
            </li>
            <li>
              <t>hns: "String" (optional)</t>
            </li>
            <li>
              <t>lmk: "String" (optional)</t>
            </li>
            <li>
              <t>loc: "String" (optional)</t>
            </li>
            <li>
              <t>flr: "String" (optional)</t>
            </li>
            <li>
              <t>nam: "String" (optional)</t>
            </li>
            <li>
              <t>pc: "String" (optional)</t>
            </li>
          </ul>
        </section>
        <section anchor="party-uuid">
          <name>uuid</name>
          <t>The uuid is a unique identifier for the participant.
In a contact center, this is particularly important for the call agent participant, and must be static across interactions to allow correlation with the actual agent configuration provisioned into the systems.
The value of the uuid parameter is a free form unique identifier string for the participant.
The value is not constrained to the syntax defined in <xref target="UUID"/>.
Operators often have existing methods of generating unique participant identifiers and <bcp14>MAY</bcp14> use any unique string value.</t>
          <ul spacing="normal">
            <li>
              <t>uuid: "String" (optional)</t>
            </li>
          </ul>
        </section>
        <section anchor="party-type">
          <name>type</name>
          <t>There are different types of parties that participate in or contribute information to a conversation.
The type parameter may be used to indicate the type of participant represented by the Party Object.</t>
          <ul spacing="normal">
            <li>
              <t>type: "String" (optional)</t>
            </li>
          </ul>
          <t>The value of the type parameter <bcp14>SHOULD</bcp14> be one of the following: "person", "bot", "organization"</t>
        </section>
        <section anchor="party-org">
          <name>org</name>
          <t>The party may belong to or be an organization.
The org parameter is a free form text string for containing the organization identifier.</t>
          <ul spacing="normal">
            <li>
              <t>org: "String" (optional)</t>
            </li>
          </ul>
        </section>
        <section anchor="party-dept">
          <name>dept</name>
          <t>The party may belong to a department with in an organization.
The dept parameter is a free form text string for containing the party's department identifier.</t>
          <ul spacing="normal">
            <li>
              <t>dept: "String" (optional)</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="dialog-object">
        <name>Dialog Object</name>
        <t>The Dialog object references or contains text, audio or video captured from the conversation.
Currently five types of dialog objects are defined in this document:</t>
        <ul spacing="normal">
          <li>
            <t>Text based media communications</t>
          </li>
          <li>
            <t>Audio or Video recorded media communications</t>
          </li>
          <li>
            <t>Metadata for failed or incompleted communications</t>
          </li>
        </ul>
        <t>Media captured in a media-based Dialog Object (type text and recording) <bcp14>SHOULD</bcp14> satisfy two constraints: the media is part of the conversation itself, and the media is transcribable.
Media is part of the conversation when it is the communication exchanged between the parties, as opposed to a document or item that is referenced, discussed or presented within the conversation.
Media that is transcribable can be converted into a textual representation of sequential communication between parties.
Text media is already in textual form and is therefore always transcribable.
While images such as sunsets, cows, photographs of documents, or application forms may be describable, they are not transcribable in a concise manner and <bcp14>SHOULD NOT</bcp14> be included as Dialog Objects.
They <bcp14>SHOULD</bcp14> be included as Attachment Objects.</t>
        <t>Text and audio may be subject to interpretation, but they are transcribable to a precise dialog representation.
Although transcriptions may not always be accurate, there exists a single correct transcription for any given content.</t>
        <t>Media that is not transcribable <bcp14>SHOULD</bcp14> be included in the vCon as Attachment Objects rather than Dialog Objects.</t>
        <t>Whether a fax or photograph of a text-based letter belongs in a Dialog Object depends upon its role in the conversation.
A letter faxed to the other party as the communication itself, such as a letter faxed to a doctor, is both transcribable and part of the conversation and <bcp14>MAY</bcp14> be included as a Dialog Object.
The same letter shared or discussed within some other conversation is referenced material rather than the conversation itself and <bcp14>SHOULD</bcp14> be included as an Attachment Object, even though it is transcribable.
Most other faxes and photographs <bcp14>SHOULD</bcp14> be included as Attachment Objects and <bcp14>SHOULD NOT</bcp14> be included as Dialog Objects.
Similarly, a musical recording, even if it is in MP3 audio format, <bcp14>SHOULD</bcp14> be included as an Attachment and <bcp14>SHOULD NOT</bcp14> be included as a Dialog Object.</t>
        <t>It may not always be known at the time of vCon construction whether an image or recording is transcribable.</t>
        <t>This distinction is important for interoperability.
If it is ambiguous as to what belongs in a Dialog Object versus an Attachment Object, interoperability cannot be achieved, as vCon constructors will not be able to consistently determine where content should be placed and users of vCons will not know where content can be found within the vCon.</t>
        <t>There are situations when little or no information is available for a dialog either initially or over the entire life of the vCon and yet it is known that the dialog occurred.
For example this may occur in some call transfer cases where there is nothing known about the consultative call.
In such situations, it is possible to have a placeholder Dialog Object which contains only the type parameter and, for the "incomplete" type, the required disposition parameter.
As the consultative call is a call, a placeholder Dialog Object for it <bcp14>MUST</bcp14> be of type "recording" if the call was set up, or of type "incomplete" if it was not.
There may be more than one placeholder Dialog Object in the vCon.
They are distinct by the order or index in the Dialog Object array.</t>
        <section anchor="dialog-type">
          <name>type</name>
          <ul spacing="normal">
            <li>
              <t>type: "String" (required, unless the Dialog Object is empty)</t>
            </li>
          </ul>
          <t>The string <bcp14>MUST</bcp14> have the value of either "recording", "text" or "incomplete", or a value defined in a vCon extension.
The handling of a Dialog Object with a type which is not recognized is described in <xref target="extending-vcon"/>.
The type parameter <bcp14>MUST</bcp14> be present in all Dialog Objects, unless the Dialog Object is completely empty.
An empty Dialog Object ({}) contains no parameters and has no meaning.
An empty Dialog Object may be used to hold a position in the dialog array, such that the indices of the other Dialog Objects, and the references to them, do not change.
For example, an empty Dialog Object may be inserted as a placeholder for a Dialog Object that is to be filled in later, or may replace a Dialog Object that is removed when a vCon is redacted (see <xref target="redaction_techniques">Redaction Techniques</xref>) or edited.
The semantics of each Dialog Object type are described in the following subsections.
The applicability of each of the Dialog Object parameters to each of the types is summarized in <xref target="dialog-object-parameter-applicability-by-type"/>.</t>
          <section anchor="dialog-type-recording">
            <name>recording</name>
            <t>A dialog of type "recording" has Dialog Content that either contains a body or refers to via url, which is a recording of the video and/or audio of a segment of the conversation.</t>
            <t>A recording of a conversation may be captured using one of a number of topologies.
The following recording topologies are supported by the recording Dialog Object:</t>
            <ul spacing="normal">
              <li>
                <t>single channel - a single recording Dialog Object with one channel, into which the audio of all of the parties is mixed</t>
              </li>
              <li>
                <t>multi-channel - a single recording Dialog Object with a separate channel for each party or set of parties</t>
              </li>
              <li>
                <t>per party - a separate single channel recording Dialog Object for each party, which starts when the party joins and ends when the party drops</t>
              </li>
              <li>
                <t>talk spurt - a separate recording Dialog Object for each party and each contiguous period in which that party talks, with the silence trimmed out</t>
              </li>
              <li>
                <t>channel contributor changes - a recording Dialog Object in which the party(s) contributing to a channel change over the duration of the recording, for example a conference bridge which records only the parties that it detects as talking (see <xref target="event-type-channel-contributors"/>)</t>
              </li>
              <li>
                <t>segmented - any of the other topologies, in which a recording is stopped and a new recording Dialog Object is started for the same party(s), for example when the recording reaches a maximum duration, such that the recording is a sequence of consecutive recording Dialog Objects</t>
              </li>
            </ul>
            <t>The per party, talk spurt and segmented topologies use more than one recording Dialog Object, which collectively represent the call or session.
In these topologies, the Session Object is important in defining which Dialog Objects are part of a conversation, side bar conversation or call segment (see <xref target="session-dialog"/>).
This allows a single vCon to contain multiple, clearly defined conversations, side bar conversations or call segments (see <xref target="sessions-objects-array"/>).</t>
          </section>
          <section anchor="dialog-type-text">
            <name>text</name>
            <t>A dialog of type "text" has Dialog Content that either contains a body or refers to via url, which contains a single message from one of the parties.</t>
          </section>
          <section anchor="dialog-type-incomplete">
            <name>incomplete</name>
            <t>A dialog of type "incomplete" captures a call or conversation that failed to be setup to the point of exchanging any conversation.
As no conversation was exchanged, an incomplete Dialog Object does not have Dialog Content (see <xref target="dialog-content"/>).
An incomplete Dialog Object has a required disposition parameter which indicates why the call or conversation failed (see <xref target="disposition"/>).</t>
          </section>
          <section anchor="dialog-object-parameter-applicability-by-type">
            <name>Dialog Object Parameter Applicability by Type</name>
            <t>The following table summarizes which Dialog Object parameters apply to each Dialog Object type.
The parameter definitions in the subsections of this document are definitive; this table is provided as a summary.</t>
            <t>The symbols used in the table are defined as follows.</t>
            <dl>
              <dt>M</dt>
              <dd>
                <t>The parameter <bcp14>MUST</bcp14> be present.</t>
              </dd>
              <dt>S</dt>
              <dd>
                <t>The parameter <bcp14>SHOULD</bcp14> be present.</t>
              </dd>
              <dt>O</dt>
              <dd>
                <t>The parameter is optional.</t>
              </dd>
              <dt>SN</dt>
              <dd>
                <t>The parameter <bcp14>SHOULD NOT</bcp14> be present.</t>
              </dd>
              <dt>X</dt>
              <dd>
                <t>The parameter <bcp14>MUST NOT</bcp14> be present.</t>
              </dd>
            </dl>
            <table>
              <thead>
                <tr>
                  <th align="left">Parameter</th>
                  <th align="left">recording</th>
                  <th align="left">text</th>
                  <th align="left">incomplete</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="left">type</td>
                  <td align="left">M</td>
                  <td align="left">M</td>
                  <td align="left">M</td>
                </tr>
                <tr>
                  <td align="left">start</td>
                  <td align="left">S</td>
                  <td align="left">S</td>
                  <td align="left">S</td>
                </tr>
                <tr>
                  <td align="left">duration</td>
                  <td align="left">O</td>
                  <td align="left">O</td>
                  <td align="left">O</td>
                </tr>
                <tr>
                  <td align="left">parties</td>
                  <td align="left">S</td>
                  <td align="left">S</td>
                  <td align="left">O</td>
                </tr>
                <tr>
                  <td align="left">mediatype</td>
                  <td align="left">M (1)</td>
                  <td align="left">M (1)</td>
                  <td align="left">X</td>
                </tr>
                <tr>
                  <td align="left">filename</td>
                  <td align="left">O</td>
                  <td align="left">O</td>
                  <td align="left">X</td>
                </tr>
                <tr>
                  <td align="left">body</td>
                  <td align="left">S (2)</td>
                  <td align="left">S (2)</td>
                  <td align="left">X</td>
                </tr>
                <tr>
                  <td align="left">encoding</td>
                  <td align="left">S (3)</td>
                  <td align="left">S (3)</td>
                  <td align="left">X</td>
                </tr>
                <tr>
                  <td align="left">url</td>
                  <td align="left">S (2)</td>
                  <td align="left">S (2)</td>
                  <td align="left">X</td>
                </tr>
                <tr>
                  <td align="left">content_hash</td>
                  <td align="left">S (4)</td>
                  <td align="left">S (4)</td>
                  <td align="left">X</td>
                </tr>
                <tr>
                  <td align="left">disposition</td>
                  <td align="left">SN</td>
                  <td align="left">SN</td>
                  <td align="left">M</td>
                </tr>
                <tr>
                  <td align="left">session_id</td>
                  <td align="left">O</td>
                  <td align="left">O</td>
                  <td align="left">O</td>
                </tr>
                <tr>
                  <td align="left">application</td>
                  <td align="left">O</td>
                  <td align="left">O</td>
                  <td align="left">O</td>
                </tr>
                <tr>
                  <td align="left">message_id</td>
                  <td align="left">O</td>
                  <td align="left">O</td>
                  <td align="left">X</td>
                </tr>
                <tr>
                  <td align="left">redacted_segments</td>
                  <td align="left">O</td>
                  <td align="left">SN</td>
                  <td align="left">X</td>
                </tr>
              </tbody>
            </table>
            <t>(1) <bcp14>MUST</bcp14> be present for inline Dialog Content; optional for externally referenced Dialog Content when the media type is provided in the <xref target="HTTPS"/> Content-Type header; not required when Dialog Content is absent, such as in a placeholder Dialog Object or a redacted vCon.</t>
            <t>(2) body or url <bcp14>MAY</bcp14> be absent in a redacted vCon.</t>
            <t>(3) <bcp14>MUST</bcp14> be present when the body parameter is present and is not an empty string (see <xref target="inline-files">Inline Files</xref>).</t>
            <t>(4) <bcp14>MUST</bcp14> be present when the url parameter is present (see <xref target="content_hash"/>).</t>
          </section>
        </section>
        <section anchor="dialog-start">
          <name>start</name>
          <t>The start parameter contains the date and time for the beginning of the captured piece of dialog.
The start parameter <bcp14>SHOULD</bcp14> be present unless it is not known.
For text it is the time that the party started typing or if not available, then it is the time the text was sent.
For audio and video recordings, it is the time which corresponds to the beginning of the recording.
It should be noted that Dialog Objects may not be ordered by the value of the start parameter.
Dialog Objects in the dialog array are in order that they were added to the vCon and cannot be reordered with out correcting the dialog indices which occur in other Objects in the vCon.</t>
          <ul spacing="normal">
            <li>
              <t>start: "Date"</t>
            </li>
          </ul>
        </section>
        <section anchor="dialog-duration">
          <name>duration</name>
          <t>The duration parameter contains the duration in seconds of the referenced or included piece of dialog.
For text, if known, it is the time duration from when the party started typing to when they completed typing and the text was sent.
For recordings, it is the duration of the recording.
For an "incomplete" type Dialog Object, the duration parameter may capture the time from the attempt to setup the call or conversation until it failed.</t>
          <ul spacing="normal">
            <li>
              <t>duration: "UnsignedInt" | "UnsignedFloat" (optional)</t>
            </li>
          </ul>
          <t>The value <bcp14>MUST</bcp14> be the dialog duration in seconds.</t>
        </section>
        <section anchor="dialog-parties">
          <name>parties</name>
          <t>The party(s) which generated the text or recording for this piece of dialog are indicated in the parties parameter.
These parties are the contributors to the Dialog Object.
The receivers of the dialog are indicated in the parties parameter of the Session Object which references this Dialog Object (see <xref target="session-parties"/>).
The parties parameter <bcp14>SHOULD</bcp14> be present in "recording" and "text" type Dialog Objects.
The parties parameter is optional for "incomplete" type Dialog Objects, where it indicates the party that attempted to set up the call or conversation (i.e. the caller or originator).
The party(s) to which the call or conversation setup was attempted are indicated in the parties parameter of the Session Object which references the "incomplete" type Dialog Object.</t>
          <ul spacing="normal">
            <li>
              <t>parties: "UnsignedInt" | "UnsignedInt[]" | ("UnsignedInt" | "UnsignedInt[]" | null)[]</t>
            </li>
          </ul>
          <t>Single channel recordings should have a parties value of the form: "UnsignedInt" or "UnsignedInt[]" where the integer value or array of integer values are the indices to the Party Object(s) in the parties array that contributed to the mix for the single channel recording.
The index for the Party Object <bcp14>SHOULD</bcp14> be included even if the indicated party was silent the entire piece of dialog.</t>
          <t>Multi-channel recordings <bcp14>MUST</bcp14> have a parties value that is an array of the same size as the number of channels in the recording.
The values in that array are either an integer or an array of integers which are the indices to the parties that contributed to the mix for the associated channel of the recording.
The index for Party Objects <bcp14>SHOULD</bcp14> be included even if the party was silent the entire conversation.
If not all channels are used in a recording, such that no parties are recorded on one or more channels, a null placeholder <bcp14>MUST</bcp14> be inserted into the parties array for the corresponding channel.</t>
          <t>By default, the party(s) indicated in the parties parameter for a channel are the contributors to that channel for the entire duration of the recording.
The contributors to a channel may change over the duration of the recording (see the channel contributor changes recording topology in <xref target="dialog-type-recording"/>).
Such changes are indicated by channel-contributors Event Objects which reference the Dialog Object and the channel (see <xref target="event-type-channel-contributors"/>).
When one or more channel-contributors Event Objects exist for a channel, the parties parameter for that channel indicates the contributors at the start of the recording.
In that case, a null value for the channel indicates that no party contributes to the channel at the start of the recording.
If the contributors to a channel change, but the times at which they change are not known, the parties parameter for that channel <bcp14>SHOULD</bcp14> contain all of the parties which contributed to that channel over the duration of the recording, and no channel-contributors Event Object is provided for that channel.</t>
          <t>Some recording systems represent a single call or session using multiple recording Dialog Objects.
This may occur when recordings are periodically segmented or when separate recordings are created for each party and talk spurt.
In these cases, a single recording Dialog Object identifies only the parties captured, or potentially captured, in that recording.
Other participants are identified only in the recording Dialog Objects in which they are captured or potentially captured.
As a result, no single recording Dialog Object necessarily identifies all parties participating in the conversation.
The parties parameter of a Dialog Object only references the parties that contributed, or potentially contributed, to the Dialog Content of that Dialog Object.
The complete call or session is represented by a Session Object which references the Dialog Objects that are part of it (see <xref target="session-object"/>).
The parties parameter of the Session Object identifies the receivers of the dialog in the call or session (see <xref target="session-parties"/>).
The start and duration parameters of the Session Object identify the time period of the call or session, which may differ from the time periods of the Dialog Objects which it references (see <xref target="session-start"/> and <xref target="session-duration"/>).</t>
          <t>The originator of the call or session is indicated in the Session Object (see <xref target="session-originator"/>).
In some cases, there may be a separate recording file for each party in a conversation, where only one party is recorded per file.
It should be noted that the recordings may be shorter than the collective conference when there is a separate recording per speaker/party.
For example the recording(s) of the individual speaker may be trimmed to only the parts where they are actually speaking.</t>
          <t>In the email context, <xref target="SMTP"/> messages have the headers From, To, Cc and Bcc.
The party in the From header is the sender of the message and the contributor to the text Dialog Object.
The From header party <bcp14>SHOULD</bcp14> be the only party in the parties parameter for the text Dialog Object.
The parties listed in the To, Cc and Bcc <xref target="SMTP"/> headers (if present) are the receivers of the message.
The sender is also a receiver of the message, as the sender retains a copy of the message that they sent.
The sender and the other receivers <bcp14>SHOULD</bcp14> be included in the parties parameter of the Session Object which references the text Dialog Object (see <xref target="session-parties"/>).
The Bcc parties are private to the sender.
The sender <bcp14>SHOULD</bcp14> be allowed to set a policy, through out of band means, as to whether the Bcc parties are included in the vCon.
In the absence of such a policy, the Bcc parties <bcp14>MAY</bcp14> be included in a vCon which is for the use of the sender, and <bcp14>SHOULD NOT</bcp14> be included in a vCon which is for broader use.
When the Bcc parties are not included in the vCon, they <bcp14>SHOULD NOT</bcp14> be referenced in the Session Object parties parameter.
A Party Object <bcp14>SHOULD NOT</bcp14> be included for a Bcc party, unless that party is also the sender or a To or Cc receiver of another message in the vCon.
The Bcc header <bcp14>SHOULD</bcp14> also be removed from the Dialog Content, and the Session Objects <bcp14>SHOULD</bcp14> be constructed as if the Bcc parties were not receivers of that message.
A vCon which includes the Bcc parties may be redacted to remove them for broader use (see <xref target="redaction_techniques">Redaction Techniques</xref>).
A text Dialog Object should only contain a single <xref target="SMTP"/> message.
Each message in an email thread may have a different set of receivers.
The set of receivers of a message includes its sender.
If all of the messages in the thread have the same set of receivers, a single Session Object which references all of the text Dialog Objects for the thread is sufficient.
Otherwise, the thread is represented by a parent Session Object which references a child Session Object for each set of receivers (see <xref target="session-sessions"/>).
Each time the set of receivers changes from one message to the next, a new Session Object is created as a child of the Session Object for the email thread.
That child Session Object references the text Dialog Object(s) for the message(s) sent to that set of receivers.
The parties parameter of each child Session Object contains the receivers of the messages referenced by that child Session Object.
The parties parameter of the parent Session Object contains the receivers of all of the messages in the thread.</t>
        </section>
        <section anchor="dialog-mediatype">
          <name>mediatype</name>
          <t>The media type for the piece of dialog included or referenced is provided in the mediatype parameter.
The mediatype parameter <bcp14>MUST</bcp14> be provided for inline dialog files and <bcp14>MUST</bcp14> be provided if the Content-Type header in the <xref target="HTTPS"/> response for the externally referenced URL is not provided.
The mediatype parameter is not required when the Dialog Content is absent, such as in a placeholder Dialog Object or when the body and url have been redacted.
The mediatype parameter <bcp14>MUST NOT</bcp14> be present in "incomplete" type Dialog Objects as they do not have Dialog Content.</t>
          <ul spacing="normal">
            <li>
              <t>mediatype: "Mediatype" (optional for externally referenced files, if absent, this is provided in the <xref target="HTTPS"/> Content-Type header)</t>
            </li>
          </ul>
          <t>The media types <bcp14>SHOULD</bcp14> be one of the following strings:</t>
          <ul spacing="normal">
            <li>
              <t>"text/plain"</t>
            </li>
            <li>
              <t>"audio/x-wav"</t>
            </li>
            <li>
              <t>"audio/x-mp3"</t>
            </li>
            <li>
              <t>"audio/x-mp4"</t>
            </li>
            <li>
              <t>"audio/ogg"</t>
            </li>
            <li>
              <t>"video/x-mp4"</t>
            </li>
            <li>
              <t>"video/ogg"</t>
            </li>
            <li>
              <t>"multipart/mixed"  </t>
              <t>
Note: multi-part will also likely include the boundary parameter</t>
            </li>
          </ul>
        </section>
        <section anchor="dialog-filename">
          <name>filename</name>
          <t>It is sometimes useful to preserve the name of the file which originally contained this piece of dialog.
This can be done in the filename parameter.
The filename parameter <bcp14>MUST NOT</bcp14> be present in "incomplete" type Dialog Objects as they do not have Dialog Content.</t>
          <ul spacing="normal">
            <li>
              <t>filename: "String" (optional)</t>
            </li>
          </ul>
        </section>
        <section anchor="dialog-content">
          <name>Dialog Content</name>
          <t>The Dialog Object <bcp14>SHOULD</bcp14> contain the body and encoding parameters or the url and content_hash parameters for all dialog types other than "incomplete" (see <xref target="inline-files">Inline Files</xref> and <xref target="externally-referenced-files">Externally Referenced Files</xref>).
These parameters <bcp14>MUST NOT</bcp14> be present for the "incomplete" dialog type.
The exception to this is that the body or url <bcp14>MAY</bcp14> be absent if it is redacted.</t>
          <t>For inline included dialog:</t>
          <ul spacing="normal">
            <li>
              <t>body: "*" (optional in a redacted vCon)</t>
            </li>
            <li>
              <t>encoding: "String"</t>
            </li>
          </ul>
          <t>Alternatively, for externally referenced dialog:</t>
          <ul spacing="normal">
            <li>
              <t>url: "String"  (optional in a redacted vCon)</t>
            </li>
            <li>
              <t>content_hash: "ContentHash" | "ContentHash[]"</t>
            </li>
          </ul>
        </section>
        <section anchor="disposition">
          <name>disposition</name>
          <t>If the dialog type is "incomplete", it <bcp14>MUST</bcp14> have a disposition parameter.
If the reason that the call or conversation failed is not known, such as in a placeholder Dialog Object, the disposition value "failed" <bcp14>SHOULD</bcp14> be used.
The value of the disposition parameter provides the reason that the "call control" failed.
The term: "call control" is used in a loose sense, as there in not always a call involved, to differentiate from a call disposition that an agent may assign to a call to indicate the reason, issue addressed or outcome of a conversation.
This latter definition of call disposition is not dialog, but analysis of the conversation and is not included in the dialog portion.</t>
          <ul spacing="normal">
            <li>
              <t>disposition: "String" (required for incomplete type Dialog Objects, <bcp14>SHOULD NOT</bcp14> be present for other dialog types)</t>
            </li>
          </ul>
          <t>The value of the disposition parameter <bcp14>MUST</bcp14> be one of the following strings or a value defined in a vCon extension:</t>
          <ul spacing="normal">
            <li>
              <t>"no-answer" - a call or connection was attempted, but no one answered or accepted the connection</t>
            </li>
            <li>
              <t>"congestion" - a call or connection was attempted, but was unable to be completed due to system load</t>
            </li>
            <li>
              <t>"failed" - a call or connection was attempted, but failed</t>
            </li>
            <li>
              <t>"busy" - a call or connection was attempted, but the party was busy with another conversation</t>
            </li>
            <li>
              <t>"hung-up" - a call or connection was made, but the party hung-up before any conversation occurred</t>
            </li>
            <li>
              <t>"voicemail-no-message" - a call or connection was made, the voicemail system answered, but no message was left  </t>
              <t>
Note: if a message was left with the voicemail system this is no longer an "incomplete" type dialog, it is a "recording" type and the conversation <bcp14>SHOULD</bcp14> be included in the Dialog Content.</t>
            </li>
          </ul>
          <t>The handling of a Dialog Object with a disposition which is not recognized is described in <xref target="extending-vcon"/>.</t>
        </section>
        <section anchor="session_id">
          <name>session_id</name>
          <t>The <xref target="SESSION-ID"/> <bcp14>MAY</bcp14> be included for the dialog.
If the same <xref target="SESSION-ID"/> applies to all the parties in a dialog, than a single instance of the
SessionId Object is provided as the value of session_id.
If some parties have a different or no associated <xref target="SESSION-ID"/> for this Dialog Object, then the array structure of the session_id objects <bcp14>MUST</bcp14> correlate to the array structure of the Dialog Object's parties index array.
Parties which do not have a <xref target="SESSION-ID"/> associated with this dialog, <bcp14>MUST</bcp14> have an empty object ({}) for the SessionId Object.
That an empty Object and not an Object with two "nil UUIDs" as defined in section 7 of <xref target="SESSION-ID"/>.
It is also possible that the SessionId Object will not have values for both the local and remote parameters in some conferencing situations (See <xref target="SESSION-ID"/>).
In the case that one end of the <xref target="SESSION-ID"/> does not have a UUID, the "nil UUID" String value <bcp14>SHOULD</bcp14> be used as defined in section 7 of <xref target="SESSION-ID"/>.
When a call or session is represented by multiple Dialog Objects, each may capture only a leg or subset of the parties of the call or session; the session_id values on those Dialog Objects follow the party correlation rules above.
The Session Object is the appropriate place to capture a session identifier that applies to the call or session as a whole (see <xref target="session-session-id"/>).</t>
          <ul spacing="normal">
            <li>
              <t>session_id: "SessionId" | "SessionId[]" | ("SessionId" | "SessionId[]")[] (optional)</t>
            </li>
          </ul>
        </section>
        <section anchor="application">
          <name>application</name>
          <t>The application parameter is used to capture the application, communication channel or context over which the conversation was held.
The conversation mode can be identified by looking at the dialog type.
However that does not different between different communication platform service providers or hosting service.
For example, the application parameter can be used to identify the web conference hosting service.</t>
          <ul spacing="normal">
            <li>
              <t>application: "String" (optional)</t>
            </li>
          </ul>
        </section>
        <section anchor="message_id">
          <name>message_id</name>
          <t>Some messaging systems assign a unique message identifier to each message.
The message_id parameter is applicable to "recording" and "text" type Dialog Objects and <bcp14>MUST NOT</bcp14> be present in "incomplete" type Dialog Objects.
The message_id parameter may be used to label the message for either cross referencing back to the messaging system or to prevent the addition of duplicate messages to the vCon.
For example SMTP <xref target="SMTP"/> messages have a message-id in the SMTP header.
In the SMTP case a message may exist in multiple mailboxes or tags.
When exporting these SMTP messages, the message_id parameter may be used to avoid adding the same message,
to the vCon containing the email thread, more than once.</t>
          <ul spacing="normal">
            <li>
              <t>message_id: "String" (optional)</t>
            </li>
          </ul>
        </section>
        <section anchor="redacted_segments">
          <name>redacted_segments</name>
          <t>One of the ways to perform redaction on audio content is to substitute the segments containing the information with a "beep" sound for audio. For video, specific parts of the video can be blurred out, or the video can be blackened entirely. When this happens, a human can easily discern that redaction has occurred. However, it is not easy for software systems to determine this. There are many cases where we want a piece of software processing a VCON to know that such redaction has happened, where it happened, and which parties content was redacted. For example, a troubleshooting tool might want to call out these segments to a user whose role is to confirm that redaction is working well.</t>
          <t>The redacted_segments field contains an array of one or more <xref target="redacted_segments-object">Redacted_segments Objects</xref>. This field is optional, but <bcp14>SHOULD</bcp14> be included in a redacted vCon.</t>
          <ul spacing="normal">
            <li>
              <t>redacted_segments: "Redacted_segments[]" (optional)</t>
            </li>
          </ul>
          <section anchor="redacted_segments-object">
            <name>Redacted_segments Object</name>
            <t>The object contains the following parameters:</t>
            <ul spacing="normal">
              <li>
                <t>start: "Date" (required)</t>
              </li>
            </ul>
            <t>The start time of the audiovisual redaction.</t>
            <ul spacing="normal">
              <li>
                <t>end: "Date" (required)</t>
              </li>
            </ul>
            <t>The end time of the audiovisual redaction.</t>
            <t>TODO: should use duration instead of end?</t>
            <ul spacing="normal">
              <li>
                <t>parties: "UnsignedInt[]" (optional)</t>
              </li>
            </ul>
            <t>An array of indices into the parties Object array to the parties whose content has been redacted.
This is useful when the dialog contains a blend of multiple contributors, and it is desired to indicate which one has been redacted.</t>
          </section>
        </section>
      </section>
      <section anchor="attachment-object">
        <name>Attachment Object</name>
        <t>Ancillary documents to the conversation are included or referenced in the Attachment Object.
There is no constraint on the types files which can be included or referenced.
As most modes of communication, that allow the exchange of files, do not constrain the file type, any file type may be included here.</t>
        <section anchor="attachment-purpose">
          <name>purpose</name>
          <t>The purpose parameter may be used to provide a text base description of the purpose or point of the attachment.
There is no restricted set of values for this description.</t>
          <ul spacing="normal">
            <li>
              <t>purpose: "String" (optional)</t>
            </li>
          </ul>
        </section>
        <section anchor="attachment-start">
          <name>start</name>
          <t>The start parameter contains the date and time that the Attachment Object was sent/exchanged.
It should be noted that Attachment Objects may not be ordered by the value of the start parameter.
Attachment Objects in the attachments array are in order that they were added to the vCon and cannot be reordered with out correcting the attachment indices which may occur in other Objects in the vCon.</t>
          <ul spacing="normal">
            <li>
              <t>start: "Date"</t>
            </li>
          </ul>
        </section>
        <section anchor="party">
          <name>party</name>
          <t>In most conversations, ancillary documents originate from one of the parties involved in the conversation.
This party is not necessarily the document's author, but rather the party that distributed the document.
The distributing party is identified by the party parameter in the Attachment Object.
To provide provenance for the attachment, the party index <bcp14>MUST</bcp14> be specified.
The identified party need not be a participant in the conversation itself.
For example, an organization that processes or constructs the vCon may add attachments containing information about the conversation.
The organization or entity that adds the attachment <bcp14>SHOULD</bcp14> be represented as a Party Object.</t>
          <ul spacing="normal">
            <li>
              <t>party: "UnsignedInt"</t>
            </li>
          </ul>
          <t>The value of the party parameter is the index into the Party Object array to the party that contributed the attachment.</t>
        </section>
        <section anchor="attachment-dialog">
          <name>dialog</name>
          <t>Attachments are added as data related to a dialog or a session.
The dialog parameter is used to identify the dialog that the attachment is part of.</t>
          <ul spacing="normal">
            <li>
              <t>dialog: "UnsignedInt" (optional)</t>
            </li>
          </ul>
          <t>The value of the dialog parameter is the index into the dialog Object array to the Dialog Object to which this Attachment Object relates.
At least one of the dialog or session parameters <bcp14>MUST</bcp14> be present (see <xref target="attachment-session"/>).</t>
        </section>
        <section anchor="attachment-session">
          <name>session</name>
          <t>Attachments may be related to one or more sessions as opposed to a specific dialog.
The session parameter is used to identify the sessions that the attachment is part of.</t>
          <ul spacing="normal">
            <li>
              <t>session: "UnsignedInt" | "UnsignedInt[]" (optional)</t>
            </li>
          </ul>
          <t>The value of the session parameter is the index to the session or array of indices to the Session Object array to which this Attachment Object relates.
The requirement for the dialog or session parameter to be present is defined in <xref target="attachment-dialog"/>.</t>
        </section>
        <section anchor="attachment-mediatype">
          <name>mediatype</name>
          <t>The media type for the included or referenced attachment file is provided in the mediatype parameter.
The mediatype parameter <bcp14>MUST</bcp14> be provided for inline attachment files and <bcp14>MUST</bcp14> be provided if the Content-Type header in the <xref target="HTTPS"/> response for the externally referenced URL is not provided.
The mediatype parameter is not required when the Attachment Content is absent, such as when the body and url have been redacted.</t>
          <ul spacing="normal">
            <li>
              <t>mediatype: "Mediatype" (optional for externally referenced files, if absent, this is provided in the <xref target="HTTPS"/> Content-Type header)</t>
            </li>
          </ul>
          <t>The mediatype string contains the media type or <xref target="MIME"/> type of the attached file.</t>
        </section>
        <section anchor="attachment-filename">
          <name>filename</name>
          <t>It is sometimes useful to preserve the name of the file which originally contained this attachment file.
This can be done in the filename parameter.</t>
          <ul spacing="normal">
            <li>
              <t>filename: "String" (optional)</t>
            </li>
          </ul>
          <t>The file name string contains an optional name for the attachment file referenced in this Attachment Object.</t>
        </section>
        <section anchor="attachment-content">
          <name>Attachment Content</name>
          <t>The Attachment Object <bcp14>SHOULD</bcp14> contain the body and encoding parameters or the url and content_hash parameters
(see <xref target="inline-files">Inline Files</xref> and <xref target="externally-referenced-files">Externally Referenced Files</xref>).
The exception to this is that the body or url <bcp14>MAY</bcp14> be absent if it is redacted.</t>
          <t>For inline included attachments:</t>
          <ul spacing="normal">
            <li>
              <t>body: "*"</t>
            </li>
            <li>
              <t>encoding: "String"</t>
            </li>
          </ul>
          <t>Alternatively, for externally referenced attachments:</t>
          <ul spacing="normal">
            <li>
              <t>url: "String"</t>
            </li>
            <li>
              <t>content_hash: "ContentHash" | "ContentHash[]"</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="analysis-object">
        <name>Analysis Object</name>
        <t>Analysis is a broad and in some cases developing field.
This document does not attempt to suggest a <bcp14>SHOULD</bcp14> support list of types.
Nor are formats for analysis data defined in this document.
That is for research and specification outside the scope of this document.
For this reason the Analysis Object provides multiple ways to define the media type of the analysis file.
If a well known media type is defined, it <bcp14>SHOULD</bcp14> be used.
For analysis data or files types for which a media type is not defined, the vendor and schema parameters <bcp14>SHOULD</bcp14> be used.</t>
        <section anchor="analysis-type">
          <name>type</name>
          <t>The type parameter is used to label the semantic type of analysis data.</t>
          <ul spacing="normal">
            <li>
              <t>type: "String"</t>
            </li>
          </ul>
          <t>The string value <bcp14>SHOULD</bcp14> be one of the following:</t>
          <ul spacing="normal">
            <li>
              <t>"report"</t>
            </li>
            <li>
              <t>"sentiment"</t>
            </li>
            <li>
              <t>"summary"</t>
            </li>
            <li>
              <t>"transcript"</t>
            </li>
            <li>
              <t>"translation"</t>
            </li>
            <li>
              <t>"tts"</t>
            </li>
          </ul>
        </section>
        <section anchor="analysis-dialog">
          <name>dialog</name>
          <t>Analysis typically pertains to one or more of the Dialog Objects in the dialog array.
The dialog parameter is used to indicate which Dialog Objects this analysis was based upon.</t>
          <ul spacing="normal">
            <li>
              <t>dialog: "UnsignedInt" | "UnsignedInt[]" (optional)</t>
            </li>
          </ul>
          <t>The value of the dialog parameter is the index to the dialog or array of indices to the Dialog Object array to which this Analysis Object corresponds.
At least one of the dialog, sessions, attachment or analysis parameters <bcp14>SHOULD</bcp14> be present to indicate the scope of what was input to the analysis (see <xref target="analysis-sessions"/>, <xref target="analysis-attachment"/> and <xref target="analysis-analysis"/>).
Analysis may also be based upon data which is not contained in the vCon, in which case none of these parameters may apply.</t>
        </section>
        <section anchor="analysis-sessions">
          <name>sessions</name>
          <t>Analysis may pertain to one or more sessions as a whole, as opposed to specific Dialog Objects.
The sessions parameter is used to indicate which Session Objects this analysis was based upon.</t>
          <ul spacing="normal">
            <li>
              <t>sessions: "UnsignedInt" | "UnsignedInt[]" (optional)</t>
            </li>
          </ul>
          <t>The value of the sessions parameter is the index to the session or array of indices to the Session Object array to which this Analysis Object corresponds.</t>
        </section>
        <section anchor="analysis-attachment">
          <name>attachment</name>
          <t>The analysis may pertain to one or more of the Attachment Objects in the attachment array.
The attachment parameter is used to indicate which Attachment Objects this analysis was based upon.</t>
          <ul spacing="normal">
            <li>
              <t>attachment: "UnsignedInt" | "UnsignedInt[]" (optional)</t>
            </li>
          </ul>
          <t>The value of the attachment parameter is the index to the attachment or array of indices to the Attachment Object array to which this analysis object corresponds.</t>
        </section>
        <section anchor="analysis-analysis">
          <name>analysis</name>
          <t>The analysis may be derived from one or more of the other Analysis Objects in the analysis array.
The analysis parameter is used to indicate which Analysis Objects this analysis was based upon.</t>
          <ul spacing="normal">
            <li>
              <t>analysis: "UnsignedInt" | "UnsignedInt[]" (optional)</t>
            </li>
          </ul>
          <t>The value of the analysis parameter is the index to the analysis or array of indices to the Analysis Object array to which this Analysis Object corresponds.
An Analysis Object <bcp14>MUST NOT</bcp14> reference itself in the analysis parameter.</t>
        </section>
        <section anchor="analysis-mediatype">
          <name>mediatype</name>
          <t>The media type for the included or referenced analysis file is provided in the mediatype parameter.
The mediatype parameter <bcp14>SHOULD</bcp14> be provided for inline analysis files and for externally referenced analysis files when the Content-Type header in the <xref target="HTTPS"/> response is not provided.
A media type may not be defined for the format of the analysis data; in this case the vendor, product and schema parameters <bcp14>SHOULD</bcp14> be used to identify the data format instead.</t>
          <ul spacing="normal">
            <li>
              <t>mediatype: "Mediatype" (optional)</t>
            </li>
          </ul>
          <t>The mediatype string contains the media type or <xref target="MIME"/> type of the analysis file.</t>
        </section>
        <section anchor="analysis-filename">
          <name>filename</name>
          <t>It is sometimes useful to preserve the name of the file which originally contained this analysis data.
This can be done in the filename parameter.</t>
          <ul spacing="normal">
            <li>
              <t>filename: "String" (optional)</t>
            </li>
          </ul>
          <t>The file name string contains an optional name for the analysis data file referenced in this Analysis Object.</t>
        </section>
        <section anchor="vendor">
          <name>vendor</name>
          <t>There may not be a IANA registered media type for the file format containing the analysis data.
Even if a media type is defined, it is often useful to keep a record of the vendor that produced the software that produced the analysis.
Different implementations perform differently and knowing the implementation can be useful in interpreting the analysis.
For this reason, the vendor or product name is provided in the vendor parameter.
The vendor parameter is provided even when the mediatype parameter fully identifies the data format, as a record of the implementation that generated or provided the analysis.</t>
          <ul spacing="normal">
            <li>
              <t>vendor: "String"</t>
            </li>
          </ul>
          <t>The vendor string value contains the vendor or product name of the software which generated this analysis.</t>
        </section>
        <section anchor="product">
          <name>product</name>
          <t>As the vendor may have more than one product, the product parameter may be used to differentiate it from other products which may have different schemas of analysis data.</t>
          <ul spacing="normal">
            <li>
              <t>product: "String" (optional)</t>
            </li>
          </ul>
        </section>
        <section anchor="schema">
          <name>schema</name>
          <t>The same vendor or software product may produce different formats or data for the same analysis.
The schema parameter allows the data format, schema or configuration used to generate the analysis to be saved with the included or referenced analysis data.</t>
          <ul spacing="normal">
            <li>
              <t>schema: "String" (optional)</t>
            </li>
          </ul>
          <t>The schema string contains a token or label for the data format or schema for the analysis data.
As the vendor name may not be specific enough to identify the format of the analysis, the schema value is provide to differentiate from potentially multiple data formats for analysis provided by the same vendor or software.</t>
        </section>
        <section anchor="analysis-content">
          <name>Analysis Content</name>
          <t>The Analysis Object <bcp14>SHOULD</bcp14> contain the body and encoding parameters or the url and content_hash parameters
(see <xref target="inline-files">Inline Files</xref> and <xref target="externally-referenced-files">Externally Referenced Files</xref>).
The exception to this is that the body or url <bcp14>MAY</bcp14> be absent if it is redacted.
If the Analysis Object contains or references content, sufficient information to interpret the format of that content <bcp14>SHOULD</bcp14> be provided in the Analysis Object.
The mediatype parameter identifies the syntax of the content.
Some media types, such as "text/vtt", fully identify the data format.
Generic media types, such as "application/json" or "text/csv", identify only the syntax and not the schema of the data within it.
When the mediatype parameter is absent or does not fully identify the data format, the schema parameter, together with the vendor and product parameters, <bcp14>SHOULD</bcp14> identify the data format.
For externally referenced content, the media type may also be provided by the Content-Type header in the <xref target="HTTPS"/> response (see <xref target="analysis-mediatype"/>).</t>
          <t>For inline included analysis:</t>
          <ul spacing="normal">
            <li>
              <t>body: "*"</t>
            </li>
            <li>
              <t>encoding: "String"</t>
            </li>
          </ul>
          <t>Alternatively, for externally referenced analysis:</t>
          <ul spacing="normal">
            <li>
              <t>url: "String"</t>
            </li>
            <li>
              <t>content_hash: "ContentHash" | "ContentHash[]"</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="redacted_string-object">
        <name>Redacted_string Object</name>
        <t>The redacted string object provides information about a string which was redacted from the vCon.</t>
        <section anchor="ref">
          <name>Ref</name>
          <ul spacing="normal">
            <li>
              <t>ref: "UnsignedInt" (required)</t>
            </li>
          </ul>
          <t>The reference to the string which was redacted, which will be present elsewhere in the document. This is always between 1 and 99999.</t>
        </section>
        <section anchor="type">
          <name>Type</name>
          <ul spacing="normal">
            <li>
              <t>type: "String" (optional)</t>
            </li>
          </ul>
          <t>The type of string information which was redacted. This is an extensible string enumeration. The following values are defined, representing the most common forms of sensitive information redacted from conversations:</t>
          <ul spacing="normal">
            <li>
              <t>GOVT_ID_NUM: A government issued identifier, such as a social security number, passport number, drivers license number, taxpayer ID, and o on.</t>
            </li>
            <li>
              <t>FIN_ID_NUM: A financial institution identifier, such as a bank account number, a routing number, a wire number, PIN codes, and so on.</t>
            </li>
            <li>
              <t>MED_ID_NUM: A medical identifier, such as a patient ID</t>
            </li>
            <li>
              <t>BIOMETRIC: A string containing biometric data, typically in some encoded form for representation. Examples would include a fingerprint, retina scan, or face geometry.</t>
            </li>
            <li>
              <t>AUTH_DATA: Data used for a user to authenticate themselves, such as a password, digital certificate, or security questions or answers.</t>
            </li>
            <li>
              <t>CONTACT_INFO: Full name, email, physical mailing address, phone numbers, and so on.</t>
            </li>
            <li>
              <t>LOC_INFO: Zip code, GPS location data, IP addresses, MAC addresses</t>
            </li>
            <li>
              <t>EMPL_INFO: Work information, such as a job title, job code, salary, and so on.</t>
            </li>
            <li>
              <t>BELIEF_INFO: Religious preference, political party or preference, sexual orientation</t>
            </li>
            <li>
              <t>UNSPECIFIED: Used when the type is not known, not specified, or not able to be determined.</t>
            </li>
          </ul>
          <t>TODO: add IANA registry.</t>
          <t>Other values can be used, in which case an implementation not familiar with the value treats it as UNSPECIFIED. Absence of this field is also the same as UNSPECIFIED.</t>
        </section>
        <section anchor="orig">
          <name>Orig</name>
          <ul spacing="normal">
            <li>
              <t>orig: "String" (optional)</t>
            </li>
          </ul>
          <t>The original, unredacted value of the string.
This is useful in applications of vCons where the desired property is not data redaction, but data identification.
This may allow downstream vCon processors to perform the redaction (which is as simple as removing the "orig" field), or to allow redaction in the user interface (for example, a first name in a transcript is not shown to the user unless they right-click and elect to reveal the information).
It is also useful for downstream data processing applications which generate analytics and create aggregates off of this information.</t>
        </section>
      </section>
    </section>
    <section anchor="redaction_techniques">
      <name>Redaction Techniques</name>
      <t>vCon has many ways in which sensitive information can be redacted from a vCon. This section summarizes them.</t>
      <t>Whenever any of these redaction techniques are employed, the redacted_from element <bcp14>SHOULD</bcp14> be added to the vCon referencing its prior, unredacted version. Data which is to be completely removed from the redacted version, that is contained in a JSON array in the unredacted vCon, <bcp14>SHOULD</bcp14> create an empty placeholder such that object array indices do not change for the rest of the elements of the array. If an element is removed entirely, all indexes to that array <bcp14>MUST</bcp14> be revised.</t>
      <section anchor="recording-content-removal">
        <name>Recording Content Removal</name>
        <t>If an audio recording, or a text chat, contains sensitive information, the offending Dialog Content (either the body or the url) can be removed from the vCon. Note that, in this case, the Dialog object itself is still present with its meta-data, such as the start and end times.</t>
        <t>It is <bcp14>RECOMMENDED</bcp14> that the Dialog Content is removed - rather than removing the entire Dialog object itself. Doing so requires the Dialog array to be reindexed and all references to it updated. It also obscures the fact that redaction was performed, which may confuse downstream processors or players.</t>
      </section>
      <section anchor="participant-information-hiding">
        <name>Participant Information Hiding</name>
        <t>It may be desired to hide the fact that a participant was present in a conversation.
In that case, the simplest approach is to remove all of their attributes from their Party object - resulting in an empty but valid party object of {}.
This approach is efficient in that it can be done without touching anything else in the vCon.
The vCon still indicates that SOMEONE was there, but there is no identifying information for them.</t>
        <t>Similarly, if a dialog contains emails and the desire is to remove the set of participants who were BCC'd, those parties can be removed from the corresponding parties array in the session object. String redaction can also be used to hide the identity of the party that was BCC'd, while still indicating that someone received the mail.</t>
      </section>
      <section anchor="audiovisual-content-rewriting">
        <name>Audiovisual Content Rewriting</name>
        <t>For audio, a "beep" can be added; for video, the video can have blur effects applied or the entire video can be blackened. These all require codec-level operations. If they are done, the fact that they were done <bcp14>SHOULD</bcp14> be signaled with the inclusion of the redacted_segments field in the Dialog object.</t>
      </section>
      <section anchor="string-redaction">
        <name>String Redaction</name>
        <t>The vCon format supports a general purpose string redaction methodology, through the usage of the redacted_strings array. This can be used to remove any sensitive information present in string format anywhere in the vCon.</t>
        <t>When an audio or video recording has been transcribed, and the transcription is present in the vCon, if a segment of audio or video is redacted, it is <bcp14>RECOMMENDED</bcp14> to also redact the transcript of the transcribed version of that sensitive information, using string redaction.</t>
        <t>A tempting alternative to using the redacted_strings array is to just perform inline substitution of text, replacing (for example) a social security number with "XXX-XX-XXXX".
This is <bcp14>NOT RECOMMENDED</bcp14>. Downstream processors cannot easily differentiate a redacted version of a field with a valid field, potentially breaking them.</t>
      </section>
      <section anchor="regeneration-of-the-vcon">
        <name>Regeneration of the vCon</name>
        <t>In some cases, the goal of redaction is to also hide the fact that redaction was ever even done. In that case, the vCon can be regenerated. Regeneration produces a totally new vCon with no connections to the original, all arrays (like Party) reindexed to hide any missing information, and the redacted_from field removed. Similarly, sensitive strings like a social security number can be replaced with valid, but incorrect versions.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The security concerns for vCons can put into two categories: making the conversation immutable through integrity verification and protecting the confidentiality of privacy of the parties to the conversation and/or their PII.
These requirements along with need to evolve a vCon (e.g. adding analysis, translations and transcriptions) conflict in some ways.
To enable this, multiple versions of a vCon may be created.
Versions of a vCon may add information (e.g. analysis added to a prior vCon referenced by the amended_from (<xref target="amended_from"/>)) and versions that remove information (e.g. redactions of privacy information removed from the vCon referenced in the redacted_from (<xref target="redacted_from"/>)).
Redactions may be at different levels for example:</t>
      <ul spacing="normal">
        <li>
          <t>PII masked to remove PII data in the text, audio, video or transcripts</t>
        </li>
        <li>
          <t>De-identified to remove segments or whole recordings that might be used for voice printing or facial recognition</t>
        </li>
      </ul>
      <t>Different parts and versions of a vCon may be created in different security domains over a period of time.
In addition, some conversation data may be referenced externally through an HTTPS URL as opposed to completely contained within the vCon.
Typically a conversation of one mode, will be hosted or observed in a single domain.
This will likely fall into one of the following hosting situations:</t>
      <ul spacing="normal">
        <li>
          <t>Enterprise Hosted Communications</t>
        </li>
        <li>
          <t>Software as a Service (SaaS) Hosted Communications</t>
        </li>
        <li>
          <t>Service Provider Hosted Communications</t>
        </li>
      </ul>
      <t>The distinction among these has gotten clouded over recent years.
The import consideration is that each is a different security domain.
Information about a conversation captured in an enterprise communications system (e.g. meta data and Dialog Object(s) recorded in an IP PBX) is a different security domain from a SaaS transcription service (i.e. an Analysis Object).
Before a vCon leaves a security domain, it <bcp14>SHOULD</bcp14> be signed to prevent it from being altered.
If the new security domain needs to alter it, a new vCon is created with the removed or added data and the prior version is referenced (i.e. via the redacted_from (<xref target="redacted_from"/>) or amended_from (<xref target="amended_from"/>)).
See the redacted vCon object tree figure-1 and amended vCon object tree figure-2.
If information is redacted for privacy reasons, the vCon referenced in the redacted_from (<xref target="redacted_from"/>), if inline, <bcp14>SHOULD</bcp14> be encrypted to protect the privacy information in the unredacted version of the vCon.</t>
      <t>The secure storage and access of externally referenced conversation data is considered out of scope from this document.
Secure mechanisms for HTTPS access and storage of files are well defined.
Identity and credentials for accessing externally stored data will be exchanged out of band from the vCon.
The one requirement for externally referenced data from the perspective of this document, is proof of integrity of that data.</t>
      <t>Using the above described approach for redaction and amending of data, we can reduce the security operations on a vCon to signing and encryption.
Two approaches to signing are needed as we have data, in JSON format, that is contained within the vCon and may have data (typically media and file formats, often binary) not contained, inline in the vCon, that is externally referenced.</t>
      <t>Externally referenced data will be "signed" using <xref target="SHA-512"/> hash which along with the URL of the externally referenced data is included in the vCon.
<xref target="SHA-512"/> was chosen due to the relatively low cost to generate and verify the signature for what could be very large externally referenced media files.
As the hash for each externally referenced file is contained in the vCon which will be signed, the chain of authentication is provided via the signature on the vCon itself.</t>
      <t>This document specifies the JSON format for vCons.
So it seemed the logical solution for signing vCons, is JOSE <xref target="JWS"/> JSON Serialization and likewise for
encrypting vCons is JOSE <xref target="JWE"/> JSON Serialization.
The solutions are well documents, implementations are readily available and tested.</t>
      <t>A redacted vCon <bcp14>SHOULD</bcp14> reference it's non-redacted version.
The non-redacted version of the vCon referenced from the redacted vCon <bcp14>MUST</bcp14> be encrypted such that only those with permission to view the non-redacted content can decrypt it.</t>
      <t>Any time a vCon is shared outside its original security domain, it <bcp14>SHOULD</bcp14> be signed and optionally encrypted.
Files externally referenced by a vCon <bcp14>SHOULD</bcp14> always be signed with the verification information included in the vCon that references the external file as defined in <xref target="externally-referenced-files">Externally Referenced Files</xref> and <xref target="signing-externally-referenced-files">Signing Externally Referenced Files</xref>.
Externally referenced files <bcp14>SHOULD</bcp14> only be transported over <xref target="HTTPS"/> and <bcp14>SHOULD</bcp14> be access controlled to those who are permitted to read the contents of that non-redacted vCon.
vCons transported over non-secure channels such as email <bcp14>MUST</bcp14> be in the encrypted form.</t>
      <section anchor="signing-externally-referenced-files">
        <name>Signing Externally Referenced Files</name>
        <t>In some deployments, it is not practical to include all of the file contents of a vCon inline.
In support of that, a file may be externally referenced.
When external files are referenced, the signature on the vCon does not secure the file contents from modification.
For this reason any externally referenced files <bcp14>SHOULD</bcp14> also have a signature.
vCons use the <xref target="SHA-512"/> hash method for integrity checking of externally referenced file content and include
its url and content_hash in the vCon which are included in the integrity signature for the whole vCon.</t>
        <t>After retrieving externally referenced files, before using its content, the payload of the HTTPS request should be verified using the signature parameter value for the hash for the url body using the procedure defined in section 6.3 and 6.4 of <xref target="SHA-512"/>.</t>
      </section>
      <section anchor="signed-form-of-vcon-object">
        <name>Signed Form of vCon Object</name>
        <t>A signed vCon uses <xref target="JWS"/> and takes the General JWS JSON Serialization Syntax form as defined in section 7.2.1 of <xref target="JWS"/>.
The vCon General JWS JSON Serialization <bcp14>MUST</bcp14> include x5c or x5u in the unprotected header.</t>
        <ul spacing="normal">
          <li>
            <t>payload: "String"</t>
          </li>
        </ul>
        <t>The value of the payload is the Base64Url Encoded string containing either: the unsigned form of the JSON vCon; or the gzipped <xref target="GZIP"/> unsigned form of the JSON vCon.
The general construction of the payload string value is described in section 7.2.1 of <xref target="JWS"/></t>
        <ul spacing="normal">
          <li>
            <t>signatures: "Signature[]"</t>
          </li>
        </ul>
        <t>The value of signatures is an array of <xref target="signature-object">Signature Objects</xref></t>
        <section anchor="signature-object">
          <name>Signature Object</name>
          <t>The Signature Object <bcp14>MUST</bcp14> contain a header and signature parameter as defined in section 7.2.1 of <xref target="JWS"/>.
The protected parameter <bcp14>MUST</bcp14> be present when the JWS Protected Header is not empty and <bcp14>MUST</bcp14> be absent otherwise, as defined in section 7.2.1 of <xref target="JWS"/>.</t>
          <ul spacing="normal">
            <li>
              <t>header: "Header"</t>
            </li>
          </ul>
          <t>The value of header is defined in <xref target="jws-header-object">Header Object</xref>.</t>
          <ul spacing="normal">
            <li>
              <t>protected: "String" (present when the JWS Protected Header is not empty)</t>
            </li>
          </ul>
          <t>The string value of protected is the Base64Url encoded JWS Protected Header as defined in section 7.2.1 of <xref target="JWS"/>.</t>
          <ul spacing="normal">
            <li>
              <t>signature: "String"</t>
            </li>
          </ul>
          <t>The string value of signature is the Base64Url encoded JWS Signature as defined in section 7.2.1 of <xref target="JWS"/>.</t>
        </section>
        <section anchor="jws-header-object">
          <name>Header Object</name>
          <t>The Header Object and its contents are defined in section 4 of <xref target="JWS"/>.
The Header Object for a signed vCon <bcp14>MUST</bcp14> include at least one of x5c or x5u.
The alg parameter <bcp14>MUST</bcp14> be present in either the JWS Protected Header or the Header Object.
The alg parameter <bcp14>SHOULD</bcp14> be present in the JWS Protected Header so that it is integrity protected.
The alg parameter <bcp14>MUST NOT</bcp14> have the value "none".
As defined in section 7.2.1 of <xref target="JWS"/>, a header parameter <bcp14>MUST NOT</bcp14> be present in both the JWS Protected Header and the Header Object.
The x5c or x5u requirement makes the management and use of vCons easier, allowing the certificate chain to be found as the vCon is moved.
Other header parameters defined for <xref target="JWS"/> <bcp14>MAY</bcp14> be present in the Header Object.</t>
          <ul spacing="normal">
            <li>
              <t>alg: "String" (<bcp14>MUST</bcp14> be present here or in the JWS Protected Header)</t>
            </li>
          </ul>
          <t>The string value of alg is defined in section 4.1.1 of <xref target="JWS"/>.  For a signed vCon this value <bcp14>SHOULD</bcp14> be "RS256" to maximize interoperability.</t>
          <ul spacing="normal">
            <li>
              <t>x5c: "String[]" (<bcp14>MUST</bcp14> provide at least one of x5c or x5u)</t>
            </li>
          </ul>
          <t>The array of string values for x5c are defined in section 4.1.6 of <xref target="JWS"/>.</t>
          <ul spacing="normal">
            <li>
              <t>x5u: "String" (<bcp14>MUST</bcp14> provide at least one of x5c or x5u)</t>
            </li>
          </ul>
          <t>The string value of x5u <bcp14>MUST</bcp14> contain an <xref target="HTTPS"/> URL as defined in section 4.1.5 of <xref target="JWS"/>.</t>
          <ul spacing="normal">
            <li>
              <t>uuid: "String" (<bcp14>SHOULD</bcp14> be provided)</t>
            </li>
          </ul>
          <t>The string value of the UUID for the vCon contained in the payload parameter.
This is added for convenience to not require verification of the signed vCon to get it's UUID.
When the vCon is verified, the value of this uuid parameter <bcp14>SHOULD</bcp14> be verified against the UUID in the signed vCon.</t>
        </section>
        <section anchor="long-term-archiving-of-signed-vcons">
          <name>Long Term Archiving of Signed vCons</name>
          <t>In some use cases, it may be necessary to store or archive signed vCons for compliances or records purposes for as long as 10 years or more.
In most cases the keys and certificates used to sign the vCon and construct the <xref target="JWS"/> or signed form of the vCon, will have an expiration on the order of a few years at best.
Below is an approach on how integrity may be maintained on the archived vCon.
There may be other approaches to this as well.</t>
          <t>For our example illustrated below, we have a vCon which was signed (labeled as JWS1).
The certificate used to sign JWS1 has an expiration date.
Before the expiration of the JWS1 signing certificate, the content of JWS1 (the vCon) is verified and then JWS1 is signed as the payload to construct JWS2.
Before the expiration of the JWS2 certificate, the contents of JWS2 (JWS1) is verified and then JWS2 is signed as the payload to construct JWS3.
The process is continued for the life of the vCon archiving.</t>
          <t>When it is desired to access the data in the archived vCon, first the outer JWS (JWS3 in diagram) is verified (payload of JWS2), then the vCon (payload in JWS1) is assumed to have valid integrity.</t>
          <artwork><![CDATA[
 ____________
|    JWS3    |
| __________ |
||   JWS2   ||
|| ________ ||
|||  JWS1  |||
||| ______ |||
|||| vCon ||||
||||______||||
|||________|||
||__________||
|____________|

]]></artwork>
        </section>
      </section>
      <section anchor="encrypted-form-of-vcon-object">
        <name>Encrypted Form of vCon Object</name>
        <t>A vCon <bcp14>MUST</bcp14> be signed first using JWS as defined in <xref target="signed-form-of-vcon-object">Signed Form of vCon Object</xref>, then encrypted using JWE as opposed to just encrypted with integrity protection.
The rationale is that meta data and dialog will typically be collected in one security domain, then may be stored or exported to another.
The signing is likely for the lifetime of the vCon, where the encryption may be shorter term or domain specific.
vCons may be stored in unencrypted form, but the signed form <bcp14>MUST</bcp14> be maintained to ensure its integrity.</t>
        <t>An encrypted vCon uses <xref target="JWE"/> and takes the General JWE JSON Serialization Syntax form as defined in section 7.2.1 of <xref target="JWE"/>.
The alg and enc header parameters <bcp14>MUST</bcp14> each be present in one of the header locations permitted by <xref target="JWE"/>.
The enc parameter is the same for all recipients and is present in either the JWE Protected Header or the Unprotected Object.
The alg parameter is present in the JWE Protected Header, the Unprotected Object or the Header Object of each recipient.
As defined in section 7.2.1 of <xref target="JWE"/>, a header parameter <bcp14>MUST NOT</bcp14> be present in more than one of these locations.</t>
        <ul spacing="normal">
          <li>
            <t>protected: "String" (optional)</t>
          </li>
        </ul>
        <t>The string value of protected is the Base64Url encoded JWE Protected Header as defined in section 7.2.1 of <xref target="JWE"/>.</t>
        <ul spacing="normal">
          <li>
            <t>unprotected: "Unprotected"</t>
          </li>
          <li>
            <t>recipients: "Recipient[]"</t>
          </li>
          <li>
            <t>iv: "String"</t>
          </li>
        </ul>
        <t>The string value of iv is the Initialization Vector as constructed as defined in section 7.2.1 of <xref target="JWE"/>.</t>
        <ul spacing="normal">
          <li>
            <t>ciphertext: "String"</t>
          </li>
        </ul>
        <t>The string value of ciphertext is constructed as defined in section 7.2.1 of <xref target="JWE"/> using the signed form of the vCon as the plaintext input for encryption.</t>
        <ul spacing="normal">
          <li>
            <t>tag: "String"</t>
          </li>
        </ul>
        <t>The string value of tag is the Authentication Tag as defined in section 7.2.1 of <xref target="JWE"/>.</t>
        <ul spacing="normal">
          <li>
            <t>aad: "String" (optional)</t>
          </li>
        </ul>
        <t>The string value of aad is the Base64Url encoded Additional Authenticated Data as defined in section 7.2.1 of <xref target="JWE"/>.</t>
        <section anchor="unprotected-object">
          <name>Unprotected Object</name>
          <ul spacing="normal">
            <li>
              <t>cty: "String"</t>
            </li>
          </ul>
          <t>The string value of cty <bcp14>SHOULD</bcp14> be either "application/vcon" or "application/vcon+gzip"</t>
          <ul spacing="normal">
            <li>
              <t>enc: "String" (<bcp14>MUST</bcp14> be present here or in the JWE Protected Header)</t>
            </li>
          </ul>
          <t>The string value of enc <bcp14>SHOULD</bcp14> be "A256CBC-HS512"</t>
          <ul spacing="normal">
            <li>
              <t>alg: "String" (<bcp14>MUST</bcp14> be present here, in the Header Object of each recipient or in the JWE Protected Header)</t>
            </li>
          </ul>
          <t>The string value of alg is defined in section 4.1.1 of <xref target="JWE"/>.</t>
          <ul spacing="normal">
            <li>
              <t>uuid: "String" (<bcp14>SHOULD</bcp14> be provided)</t>
            </li>
          </ul>
          <t>The string value of the UUID for the vCon contained in the ciphertext parameter.
This is provided for identification of the encrypted vCon without the need of the key to decrypt the vCon.
The value of this uuid parameter <bcp14>SHOULD</bcp14> be verified when the vCon is decrypted.</t>
          <t>Other header parameters defined for <xref target="JWE"/> <bcp14>MAY</bcp14> be present.</t>
        </section>
        <section anchor="recipient-object">
          <name>Recipient Object</name>
          <ul spacing="normal">
            <li>
              <t>header: "Header" (optional)</t>
            </li>
          </ul>
          <t>The value of header is defined in <xref target="jwe-header-object">Header Object</xref>.</t>
          <ul spacing="normal">
            <li>
              <t>encrypted_key: "String" (present when the JWE Encrypted Key is not empty)</t>
            </li>
          </ul>
          <t>The string value of encrypted_key is defined in section 7.2.1 of <xref target="JWE"/>.</t>
        </section>
        <section anchor="jwe-header-object">
          <name>Header Object</name>
          <ul spacing="normal">
            <li>
              <t>alg: "String" (<bcp14>MUST</bcp14> be present here, in the Unprotected Object or in the JWE Protected Header)</t>
            </li>
          </ul>
          <t>The string value of alg <bcp14>SHOULD</bcp14> be "RSA-OAEP".</t>
          <t>Other header parameters defined for <xref target="JWE"/> <bcp14>MAY</bcp14> be present.</t>
        </section>
      </section>
      <section anchor="differentiation-of-vcon-forms">
        <name>Differentiation of vCon forms</name>
        <t>vCons in the unsigned, signed and encrypted form are all valid JSON.
A vCon in any of these forms may additionally be compressed using <xref target="GZIP"/> as described in <xref target="gzip-format-vcon-mediatype"/>.
It is necessary to distinguish which form a vCon is in, and whether it is compressed, in order to properly handle it.
For example a signed vCon needs to be verified.
The following is the recommended approaches to identifying which form a particular vCon is in:</t>
        <ul spacing="normal">
          <li>
            <t>unsigned  </t>
            <t>
The presence of one or more of the following parameters indicates that the vCon is in the unsigned form:  </t>
            <ul spacing="normal">
              <li>
                <t>parties</t>
              </li>
              <li>
                <t>dialog</t>
              </li>
              <li>
                <t>analysis</t>
              </li>
              <li>
                <t>attachments</t>
              </li>
              <li>
                <t>sessions</t>
              </li>
              <li>
                <t>events</t>
              </li>
            </ul>
          </li>
          <li>
            <t>signed (JWS)  </t>
            <t>
The presence of both of the following parameters indicates that the vCon is in the signed (JWS) form:  </t>
            <ul spacing="normal">
              <li>
                <t>payload</t>
              </li>
              <li>
                <t>signatures</t>
              </li>
            </ul>
          </li>
          <li>
            <t>encrypted (JWE)  </t>
            <t>
The presence of both of the following parameters indicates that the vCon is in the encrypted (JWE) form:  </t>
            <ul spacing="normal">
              <li>
                <t>ciphertext</t>
              </li>
              <li>
                <t>recipients</t>
              </li>
            </ul>
          </li>
        </ul>
        <t>A gzip compressed vCon is not JSON and is differentiated from the JSON forms before the above parameter based rules can be applied.
The gzip compressed vCon <bcp14>SHOULD</bcp14> be identified by the media type "application/vcon+gzip" when a media type is available, such as in the <xref target="HTTPS"/> Content-Type header.
When no media type is available, a gzip compressed vCon can be identified by the gzip member header magic numbers defined in section 2.3.1 of <xref target="GZIP"/>.
Once decompressed, the contained vCon is in one of the JSON forms and is differentiated using the parameter based rules above.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This section includes the information required for IANA to register the application/vcon media type per
<xref target="MEDIATYPE"/>.</t>
      <section anchor="json-format-vcon-mediatype">
        <name>JSON Format vCon Mediatype</name>
        <t>The JSON format for vCon is mandatory to implement.</t>
        <ul spacing="normal">
          <li>
            <t>Type name: application</t>
          </li>
          <li>
            <t>Subtype name: vcon</t>
          </li>
          <li>
            <t>Required parameters: N/A</t>
          </li>
          <li>
            <t>Optional parameters: N/A; unrecognized parameters should be ignored.</t>
          </li>
          <li>
            <t>Encoding considerations: 8bit</t>
          </li>
          <li>
            <t>Additional information: <xref target="JSON"/> format</t>
          </li>
          <li>
            <t>Security considerations: See Security Considerations section of this document.</t>
          </li>
          <li>
            <t>Interoperability considerations: The vCon schema is defined in RFC XXXX.  The schema may be extended through extensions as defined there.</t>
          </li>
          <li>
            <t>Published specification: This document: RFC XXXX</t>
          </li>
          <li>
            <t>Applications that use this media type:</t>
          </li>
          <li>
            <t>Fragment identifier considerations: N/A</t>
          </li>
          <li>
            <t>Additional Information:  </t>
            <ul spacing="normal">
              <li>
                <t>Deprecated alias names for this type: N/A</t>
              </li>
              <li>
                <t>Magic number(s): N/A</t>
              </li>
              <li>
                <t>File extension(s): "vcon"</t>
              </li>
              <li>
                <t>Macintosh file type code(s): N/A</t>
              </li>
              <li>
                <t>Windows Clipboard Name: VCON</t>
              </li>
            </ul>
          </li>
          <li>
            <t>Author: See the Author's Addresses section of this document.</t>
          </li>
          <li>
            <t>Change controller: IETF</t>
          </li>
        </ul>
      </section>
      <section anchor="gzip-format-vcon-mediatype">
        <name>gzip Format vCon Mediatype</name>
        <t>A gzip format vCon is a JSON format vCon that has been compressed using the gzip <xref target="GZIP"/> compression algorithm.
The gzip format is used to reduce the size of potentially very large vCons containing audio or video media in
dialog objects.
Applications <bcp14>SHOULD</bcp14> support the receiving of gzip format vCons, but do not need to use the gzip format
when sending.</t>
        <ul spacing="normal">
          <li>
            <t>Type name: application</t>
          </li>
          <li>
            <t>Subtype name: vcon+gzip</t>
          </li>
          <li>
            <t>Required parameters: N/A</t>
          </li>
          <li>
            <t>Optional parameters: N/A; unrecognized parameters should be ignored.</t>
          </li>
          <li>
            <t>Encoding considerations: binary</t>
          </li>
          <li>
            <t>Additional information: <xref target="GZIP"/> compression of <xref target="JSON"/> format</t>
          </li>
          <li>
            <t>Security considerations: See Security Considerations section of this document.</t>
          </li>
          <li>
            <t>Interoperability considerations: The vCon schema is defined in RFC XXXX.  The schema may be extended through extensions as defined there.</t>
          </li>
          <li>
            <t>Published specification: This document: RFC XXXX</t>
          </li>
          <li>
            <t>Applications that use this media type:</t>
          </li>
          <li>
            <t>Fragment identifier considerations: N/A</t>
          </li>
          <li>
            <t>Additional Information:  </t>
            <ul spacing="normal">
              <li>
                <t>Deprecated alias names for this type: N/A</t>
              </li>
              <li>
                <t>Magic number(s): N/A</t>
              </li>
              <li>
                <t>File extension(s): "vcon"</t>
              </li>
              <li>
                <t>Macintosh file type code(s): N/A</t>
              </li>
              <li>
                <t>Windows Clipboard Name: VCON</t>
              </li>
            </ul>
          </li>
          <li>
            <t>Author: See the Author's Addresses section of this document.</t>
          </li>
          <li>
            <t>Change controller: IETF</t>
          </li>
        </ul>
      </section>
      <section anchor="vcon-json-registry">
        <name>vCon JSON Registry</name>
        <t>This document defines a number of new IANA registries for the JSON vCon schema.
Each Object (i.e. dict, map, dictionary) has its own registry of parameter names.
All of those registries have the same registry template which is defined in the following subsection.
When registering new entries, the following template should be used.
The registration policy for these registries is Specification Required as defined in <xref target="RFC8126"/>.
The Designated Experts are expected to verify that the specification is publicly available, that the name follows the naming conventions of this document and that the registration does not duplicate the semantics of an existing registered entry.</t>
        <t>A registry created for a new Object defined in a vCon extension (see <xref target="extending-vcon"/>) is named in the same form as the registries defined in this document, for example "Party Object Parameter Names Registry".
It is created within the vCon JSON Registry group and uses the same registry template and registration policy as the registries defined in this document.</t>
        <section anchor="object-registry-template">
          <name>Object Registry Template</name>
          <t>Parameter Name:</t>
          <t>The string name of a parameter to be used within the Object.
  The name is case sensitive.
  Names may not match other registered names in a case-insensitive manner unless the Designated Experts state that there is a compelling reason to allow an exception.</t>
          <t>Parameter Description:</t>
          <t>Brief description of the parameter</t>
          <t>Change Controller:</t>
          <t>For Standards Track RFCs, list the "IESG".  For others, give the
   name of the responsible party.  Other details (e.g., postal
   address, email address, home page URI) may also be included.</t>
          <t>Specification Document(s):</t>
          <t>Reference to the document or documents that specify the parameter,
   preferably including URIs that can be used to retrieve copies of
   the documents.  An indication of the relevant sections may also be
   included but is not required.</t>
        </section>
        <section anchor="vcon-object-parameter-names-registry">
          <name>vCon Object Parameter Names Registry</name>
          <t>The following defines the initial values for the vCon Object Parameter Names Registry.
Use the template in <xref target="object-registry-template">Object Registry Template</xref> when registering additional entries to this table.</t>
          <table>
            <thead>
              <tr>
                <th align="left">Parameter Name</th>
                <th align="left">Parameter Description</th>
                <th align="left">Change Controller</th>
                <th align="left">Specification Document(s)</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">vcon</td>
                <td align="left">Schema version number</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="vcon"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">uuid</td>
                <td align="left">vCon instance UUID</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="uuid"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">extensions</td>
                <td align="left">list of extensions used</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="extensions"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">critical</td>
                <td align="left">list of incompatible extensions used</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="critical"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">created_at</td>
                <td align="left">creation date</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="created_at"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">updated_at</td>
                <td align="left">modification date</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="updated_at"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">subject</td>
                <td align="left">conversation subject</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="subject"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">redacted_from</td>
                <td align="left">Redacted Object</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="redacted_from"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">amended_from</td>
                <td align="left">Amended Object</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="amended_from"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">group</td>
                <td align="left">reserved for future extension</td>
                <td align="left">IESG</td>
                <td align="left">RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">sessions</td>
                <td align="left">Session Objects array</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="sessions-objects-array"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">events</td>
                <td align="left">Event Objects array</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="events-objects-array"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">parties</td>
                <td align="left">Party Objects array</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="parties-objects-array"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">dialog</td>
                <td align="left">Dialog Objects array</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="dialog-objects-array"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">analysis</td>
                <td align="left">Analysis Objects array</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="analysis-objects-array"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">attachments</td>
                <td align="left">Attachment Objects array</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="attachments-objects-array"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">redacted_strings</td>
                <td align="left">Redacted Strings array</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="redacted_string-object"/></td>
              </tr>
            </tbody>
          </table>
        </section>
        <section anchor="party-object-parameter-names-registry">
          <name>Party Object Parameter Names Registry</name>
          <t>The following defines the initial values for the Party Object Parameter Names Registry.
Use the template in <xref target="object-registry-template">Object Registry Template</xref> when registering additional entries to this table.</t>
          <table>
            <thead>
              <tr>
                <th align="left">Parameter Name</th>
                <th align="left">Parameter Description</th>
                <th align="left">Change Controller</th>
                <th align="left">Specification Document(s)</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">tel</td>
                <td align="left">tel URL</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="tel"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">sip</td>
                <td align="left">SIP URL</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="tel"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">stir</td>
                <td align="left">STIR token</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="stir"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">mailto</td>
                <td align="left">mailto URL</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="mailto"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">name</td>
                <td align="left">participant name</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="name"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">validation</td>
                <td align="left">validation method</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="validation"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">gmlpos</td>
                <td align="left">participant geolocation</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="gmlpos"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">civicaddress</td>
                <td align="left">civic address</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="civicaddress"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">uuid</td>
                <td align="left">participant unique identifier</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="party-uuid"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">type</td>
                <td align="left">participant type</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="party-type"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">org</td>
                <td align="left">participant organization</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="party-org"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">dept</td>
                <td align="left">participant department</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="party-dept"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">did</td>
                <td align="left">decentralized identifier</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="party-did"/> RFC XXXX</td>
              </tr>
            </tbody>
          </table>
        </section>
        <section anchor="dialog-object-parameter-names-registry">
          <name>Dialog Object Parameter Names Registry</name>
          <t>The following defines the initial values for the Dialog Object Parameter Names Registry.
Use the template in <xref target="object-registry-template">Object Registry Template</xref> when registering additional entries to this table.</t>
          <table>
            <thead>
              <tr>
                <th align="left">Parameter Name</th>
                <th align="left">Parameter Description</th>
                <th align="left">Change Controller</th>
                <th align="left">Specification Document(s)</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">type</td>
                <td align="left">dialog type name</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="dialog-type"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">start</td>
                <td align="left">dialog start time</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="dialog-start"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">duration</td>
                <td align="left">dialog duration period</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="dialog-duration"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">parties</td>
                <td align="left">dialog parties list</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="dialog-parties"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">mediatype</td>
                <td align="left">dialog content media type</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="dialog-mediatype"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">filename</td>
                <td align="left">dialog content filename</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="dialog-filename"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">body</td>
                <td align="left">dialog inline content</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="dialog-content"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">encoding</td>
                <td align="left">dialog inline content encoding</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="dialog-content"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">url</td>
                <td align="left">dialog referenced content URL</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="dialog-content"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">content_hash</td>
                <td align="left">dialog content hash</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="dialog-content"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">disposition</td>
                <td align="left">dialog disposition</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="disposition"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">session_id</td>
                <td align="left">RFC7989 session ID</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="session_id"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">application</td>
                <td align="left">dialog source application</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="application"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">message_id</td>
                <td align="left">dialog message id</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="message_id"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">redacted_segments</td>
                <td align="left">redacted segments</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="redacted_segments"/> RFC XXXX</td>
              </tr>
            </tbody>
          </table>
          <section anchor="dialog-type-name-registry">
            <name>Dialog Type Name Registry</name>
            <t>This document defines a new registry for the token name values that are permitted as values to the <xref target="dialog-type">dialog type</xref> parameter.</t>
            <section anchor="dialog-type-name-registration-template">
              <name>Dialog Type Name Registration Template</name>
              <t>Dialog Type Name:</t>
              <t>The string token name of a Dialog Object Type
  The name is case sensitive.
  Names may not match other registered names in a case-insensitive manner unless the Designated Experts state that there is a compelling reason to allow an exception.</t>
              <t>Dialog Type Description:</t>
              <t>Brief description of the Dialog Object type</t>
              <t>Change Controller:</t>
              <t>For Standards Track RFCs, list the "IESG".  For others, give the
   name of the responsible party.  Other details (e.g., postal
   address, email address, home page URI) may also be included.</t>
              <t>Specification Document(s):</t>
              <t>Reference to the document or documents that specify the parameter,
   preferably including URIs that can be used to retrieve copies of
   the documents.  An indication of the relevant sections may also be
   included but is not required.</t>
            </section>
            <section anchor="dialog-type-name-registration-initial-values">
              <name>Dialog Type Name Registration Initial Values</name>
              <t>The following table defines the initial values for the Dialog Object Types Registry.</t>
              <table>
                <thead>
                  <tr>
                    <th align="left">Dialog Type Name</th>
                    <th align="left">Dialog Type Description</th>
                    <th align="left">Change Controller</th>
                    <th align="left">Specification Document(s)</th>
                  </tr>
                </thead>
                <tbody>
                  <tr>
                    <td align="left">text</td>
                    <td align="left">text dialog</td>
                    <td align="left">IESG</td>
                    <td align="left">
                      <xref target="dialog-type"/> RFC XXXX</td>
                  </tr>
                  <tr>
                    <td align="left">recording</td>
                    <td align="left">recording dialog</td>
                    <td align="left">IESG</td>
                    <td align="left">
                      <xref target="dialog-type"/> RFC XXXX</td>
                  </tr>
                  <tr>
                    <td align="left">incomplete</td>
                    <td align="left">incomplete dialog</td>
                    <td align="left">IESG</td>
                    <td align="left">
                      <xref target="dialog-type"/> RFC XXXX</td>
                  </tr>
                </tbody>
              </table>
            </section>
          </section>
        </section>
        <section anchor="session-object-parameter-names-registry">
          <name>Session Object Parameter Names Registry</name>
          <t>The following defines the initial values for the Session Object Parameter Names Registry.
Use the template in <xref target="object-registry-template">Object Registry Template</xref> when registering additional entries to this table.</t>
          <table>
            <thead>
              <tr>
                <th align="left">Parameter Name</th>
                <th align="left">Parameter Description</th>
                <th align="left">Change Controller</th>
                <th align="left">Specification Document(s)</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">start</td>
                <td align="left">session start time</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="session-start"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">duration</td>
                <td align="left">session duration period</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="session-duration"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">parties</td>
                <td align="left">session parties list</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="session-parties"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">originator</td>
                <td align="left">session originator party</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="session-originator"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">session_id</td>
                <td align="left">RFC7989 session ID</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="session-session-id"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">sessions</td>
                <td align="left">Session_Reference Objects array</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="session-sessions"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">dialog</td>
                <td align="left">session dialog index list</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="session-dialog"/> RFC XXXX</td>
              </tr>
            </tbody>
          </table>
        </section>
        <section anchor="sessionreference-object-parameter-names-registry">
          <name>Session_Reference Object Parameter Names Registry</name>
          <t>The following defines the initial values for the Session_Reference Object Parameter Names Registry.
Use the template in <xref target="object-registry-template">Object Registry Template</xref> when registering additional entries to this table.</t>
          <table>
            <thead>
              <tr>
                <th align="left">Parameter Name</th>
                <th align="left">Parameter Description</th>
                <th align="left">Change Controller</th>
                <th align="left">Specification Document(s)</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">session</td>
                <td align="left">referenced session index</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="session-reference-session"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">type</td>
                <td align="left">session relationship type</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="session-reference-type"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">description</td>
                <td align="left">session relationship description</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="session-reference-description"/> RFC XXXX</td>
              </tr>
            </tbody>
          </table>
          <section anchor="sessionreference-type-name-registry">
            <name>Session_Reference Type Name Registry</name>
            <t>This document defines a new registry for the token name values that are permitted as values to the <xref target="session-reference-type">Session_Reference Object type</xref> parameter.</t>
            <section anchor="sessionreference-type-name-registration-template">
              <name>Session_Reference Type Name Registration Template</name>
              <t>Session_Reference Type Name:</t>
              <t>The string token name of a Session_Reference Object type.
  The name is case sensitive.
  Names may not match other registered names in a case-insensitive manner unless the Designated Experts state that there is a compelling reason to allow an exception.</t>
              <t>Session_Reference Type Description:</t>
              <t>Brief description of the Session_Reference Object type</t>
              <t>Change Controller:</t>
              <t>For Standards Track RFCs, list the "IESG".  For others, give the
   name of the responsible party.  Other details (e.g., postal
   address, email address, home page URI) may also be included.</t>
              <t>Specification Document(s):</t>
              <t>Reference to the document or documents that specify the parameter,
   preferably including URIs that can be used to retrieve copies of
   the documents.  An indication of the relevant sections may also be
   included but is not required.</t>
            </section>
            <section anchor="sessionreference-type-name-registration-initial-values">
              <name>Session_Reference Type Name Registration Initial Values</name>
              <t>The following table defines the initial values for the Session_Reference Type Name Registry.</t>
              <table>
                <thead>
                  <tr>
                    <th align="left">Session_Reference Type Name</th>
                    <th align="left">Session_Reference Type Description</th>
                    <th align="left">Change Controller</th>
                    <th align="left">Specification Document(s)</th>
                  </tr>
                </thead>
                <tbody>
                  <tr>
                    <td align="left">child</td>
                    <td align="left">contained session</td>
                    <td align="left">IESG</td>
                    <td align="left">
                      <xref target="session-reference-type"/> RFC XXXX</td>
                  </tr>
                  <tr>
                    <td align="left">peer</td>
                    <td align="left">parallel or overlapping session</td>
                    <td align="left">IESG</td>
                    <td align="left">
                      <xref target="session-reference-type"/> RFC XXXX</td>
                  </tr>
                  <tr>
                    <td align="left">precursor</td>
                    <td align="left">preceding session</td>
                    <td align="left">IESG</td>
                    <td align="left">
                      <xref target="session-reference-type"/> RFC XXXX</td>
                  </tr>
                  <tr>
                    <td align="left">breakout</td>
                    <td align="left">breakout session with a subset of the parties</td>
                    <td align="left">IESG</td>
                    <td align="left">
                      <xref target="session-reference-type"/> RFC XXXX</td>
                  </tr>
                </tbody>
              </table>
            </section>
          </section>
        </section>
        <section anchor="event-object-parameter-names-registry">
          <name>Event Object Parameter Names Registry</name>
          <t>The initial values for the Event Object Parameter Names Registry are listed in the following table.
Use the template in <xref target="object-registry-template">Object Registry Template</xref> when registering additional entries to this table.</t>
          <table>
            <thead>
              <tr>
                <th align="left">Parameter Name</th>
                <th align="left">Parameter Description</th>
                <th align="left">Change Controller</th>
                <th align="left">Specification Document(s)</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">type</td>
                <td align="left">event type name</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="event-type"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">time</td>
                <td align="left">time event occurred</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="event-time"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">sessions</td>
                <td align="left">event session indices</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="event-sessions"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">party</td>
                <td align="left">event party index</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="event-party"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">dialog</td>
                <td align="left">event dialog index</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="event-dialog"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">channel</td>
                <td align="left">recording channel index</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="event-channel"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">contributors</td>
                <td align="left">recording channel contributor party indices</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="event-contributors"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">button</td>
                <td align="left">button label character or string</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="event-button"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">transferee</td>
                <td align="left">transferee party index</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="event-transferee"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">transfer_target</td>
                <td align="left">transfer target party index</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="event-transfer-target"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">consultation</td>
                <td align="left">consultation session index</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="event-consultation"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">target_session</td>
                <td align="left">target session index</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="event-target-session"/> RFC XXXX</td>
              </tr>
            </tbody>
          </table>
          <section anchor="event-type-name-registry">
            <name>Event Type Name Registry</name>
            <t>This document defines a new registry for the token name values that are permitted as values to the <xref target="event-type">Event Object type</xref> parameter.</t>
            <section anchor="event-type-name-registration-template">
              <name>Event Type Name Registration Template</name>
              <t>Event Type Name:</t>
              <t>The string token name of an Event Object type.
  The name is case sensitive.
  Names may not match other registered names in a case-insensitive manner unless the Designated Experts state that there is a compelling reason to allow an exception.</t>
              <t>Event Type Description:</t>
              <t>Brief description of the Event Object type</t>
              <t>Change Controller:</t>
              <t>For Standards Track RFCs, list the "IESG".  For others, give the
   name of the responsible party.  Other details (e.g., postal
   address, email address, home page URI) may also be included.</t>
              <t>Specification Document(s):</t>
              <t>Reference to the document or documents that specify the parameter,
   preferably including URIs that can be used to retrieve copies of
   the documents.  An indication of the relevant sections may also be
   included but is not required.</t>
            </section>
            <section anchor="event-type-name-registration-initial-values">
              <name>Event Type Name Registration Initial Values</name>
              <t>The following table defines the initial values for the Event Type Name Registry.</t>
              <table>
                <thead>
                  <tr>
                    <th align="left">Event Type Name</th>
                    <th align="left">Event Type Description</th>
                    <th align="left">Change Controller</th>
                    <th align="left">Specification Document(s)</th>
                  </tr>
                </thead>
                <tbody>
                  <tr>
                    <td align="left">join</td>
                    <td align="left">party join event</td>
                    <td align="left">IESG</td>
                    <td align="left">
                      <xref target="event-type-party"/> RFC XXXX</td>
                  </tr>
                  <tr>
                    <td align="left">drop</td>
                    <td align="left">party drop event</td>
                    <td align="left">IESG</td>
                    <td align="left">
                      <xref target="event-type-party"/> RFC XXXX</td>
                  </tr>
                  <tr>
                    <td align="left">hold</td>
                    <td align="left">party on hold event</td>
                    <td align="left">IESG</td>
                    <td align="left">
                      <xref target="event-type-party"/> RFC XXXX</td>
                  </tr>
                  <tr>
                    <td align="left">unhold</td>
                    <td align="left">party off hold event</td>
                    <td align="left">IESG</td>
                    <td align="left">
                      <xref target="event-type-party"/> RFC XXXX</td>
                  </tr>
                  <tr>
                    <td align="left">mute</td>
                    <td align="left">party on mute event</td>
                    <td align="left">IESG</td>
                    <td align="left">
                      <xref target="event-type-party"/> RFC XXXX</td>
                  </tr>
                  <tr>
                    <td align="left">unmute</td>
                    <td align="left">party off mute event</td>
                    <td align="left">IESG</td>
                    <td align="left">
                      <xref target="event-type-party"/> RFC XXXX</td>
                  </tr>
                  <tr>
                    <td align="left">keydown</td>
                    <td align="left">DTMF/app key/button press event</td>
                    <td align="left">IESG</td>
                    <td align="left">
                      <xref target="event-type-key"/> RFC XXXX</td>
                  </tr>
                  <tr>
                    <td align="left">keyup</td>
                    <td align="left">DTMF/app key/button release event</td>
                    <td align="left">IESG</td>
                    <td align="left">
                      <xref target="event-type-key"/> RFC XXXX</td>
                  </tr>
                  <tr>
                    <td align="left">consultation-start</td>
                    <td align="left">transfer consultation start event</td>
                    <td align="left">IESG</td>
                    <td align="left">
                      <xref target="event-type-transfer"/> RFC XXXX</td>
                  </tr>
                  <tr>
                    <td align="left">blind-transfer</td>
                    <td align="left">blind transfer event</td>
                    <td align="left">IESG</td>
                    <td align="left">
                      <xref target="event-type-transfer"/> RFC XXXX</td>
                  </tr>
                  <tr>
                    <td align="left">consultative-transfer</td>
                    <td align="left">consultative transfer event</td>
                    <td align="left">IESG</td>
                    <td align="left">
                      <xref target="event-type-transfer"/> RFC XXXX</td>
                  </tr>
                  <tr>
                    <td align="left">transfer-abandoned</td>
                    <td align="left">transfer abandoned event</td>
                    <td align="left">IESG</td>
                    <td align="left">
                      <xref target="event-type-transfer"/> RFC XXXX</td>
                  </tr>
                  <tr>
                    <td align="left">channel-contributors</td>
                    <td align="left">recording channel contributors change event</td>
                    <td align="left">IESG</td>
                    <td align="left">
                      <xref target="event-type-channel-contributors"/> RFC XXXX</td>
                  </tr>
                </tbody>
              </table>
            </section>
          </section>
        </section>
        <section anchor="attachment-object-parameter-names-registry">
          <name>Attachment Object Parameter Names Registry</name>
          <t>The following defines the initial values for the Attachment Object Parameter Names Registry.
Use the template in <xref target="object-registry-template">Object Registry Template</xref> when registering additional entries to this table.</t>
          <table>
            <thead>
              <tr>
                <th align="left">Parameter Name</th>
                <th align="left">Parameter Description</th>
                <th align="left">Change Controller</th>
                <th align="left">Specification Document(s)</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">purpose</td>
                <td align="left">attachment object purpose description</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="attachment-purpose"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">start</td>
                <td align="left">attachment start time</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="attachment-start"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">party</td>
                <td align="left">sending party index</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="party"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">dialog</td>
                <td align="left">associated dialog index</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="attachment-dialog"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">session</td>
                <td align="left">associated session index</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="attachment-session"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">mediatype</td>
                <td align="left">attachment body media type</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="attachment-mediatype"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">filename</td>
                <td align="left">attachment content filename</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="attachment-filename"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">body</td>
                <td align="left">attachment inline content</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="attachment-content"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">encoding</td>
                <td align="left">attachment inline content encoding</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="attachment-content"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">url</td>
                <td align="left">attachment referenced content URL</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="attachment-content"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">content_hash</td>
                <td align="left">attachment content hash</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="attachment-content"/> RFC XXXX</td>
              </tr>
            </tbody>
          </table>
        </section>
        <section anchor="analysis-object-parameter-names-registry">
          <name>Analysis Object Parameter Names Registry</name>
          <t>The following defines the initial values for the Analysis Object Parameter Names Registry.
Use the template in <xref target="object-registry-template">Object Registry Template</xref> when registering additional entries to this table.</t>
          <table>
            <thead>
              <tr>
                <th align="left">Parameter Name</th>
                <th align="left">Parameter Description</th>
                <th align="left">Change Controller</th>
                <th align="left">Specification Document(s)</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">type</td>
                <td align="left">analysis type</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="analysis-type"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">dialog</td>
                <td align="left">associated dialog index</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="analysis-dialog"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">sessions</td>
                <td align="left">associated session indices</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="analysis-sessions"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">attachment</td>
                <td align="left">associated attachment index</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="analysis-attachment"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">analysis</td>
                <td align="left">associated analysis index</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="analysis-analysis"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">mediatype</td>
                <td align="left">analysis body media type</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="analysis-mediatype"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">filename</td>
                <td align="left">analysis content filename</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="analysis-filename"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">vendor</td>
                <td align="left">vendor producing content</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="vendor"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">product</td>
                <td align="left">vendor product producing content</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="product"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">schema</td>
                <td align="left">product schema of content</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="schema"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">body</td>
                <td align="left">analysis inline content</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="analysis-content"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">encoding</td>
                <td align="left">analysis inline content encoding</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="analysis-content"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">url</td>
                <td align="left">analysis referenced content URL</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="analysis-content"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">content_hash</td>
                <td align="left">analysis content hash</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="analysis-content"/> RFC XXXX</td>
              </tr>
            </tbody>
          </table>
        </section>
        <section anchor="redactedfrom-object-parameter-names-registry">
          <name>Redacted_from Object Parameter Names Registry</name>
          <t>The following defines the initial values for the Redacted_from Object Parameter Names Registry.
Use the template in <xref target="object-registry-template">Object Registry Template</xref> when registering additional entries to this table.</t>
          <table>
            <thead>
              <tr>
                <th align="left">Parameter Name</th>
                <th align="left">Parameter Description</th>
                <th align="left">Change Controller</th>
                <th align="left">Specification Document(s)</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">uuid</td>
                <td align="left">less redacted vCon UUID</td>
                <td align="left">IESG</td>
                <td align="left">
                  <eref target="_#redacted_from_-object"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">type</td>
                <td align="left">redaction type or reason</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="redacted_from-object"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">url</td>
                <td align="left">referenced less redacted vCon URL</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="redacted_from-object"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">content_hash</td>
                <td align="left">less redacted vCon hash</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="redacted_from-object"/> RFC XXXX</td>
              </tr>
            </tbody>
          </table>
        </section>
        <section anchor="amendedfrom-object-parameter-names-registry">
          <name>Amended_from Object Parameter Names Registry</name>
          <t>The following defines the initial values for the Amended_from Object Parameter Names Registry.
Use the template in <xref target="object-registry-template">Object Registry Template</xref> when registering additional entries to this table.</t>
          <table>
            <thead>
              <tr>
                <th align="left">Parameter Name</th>
                <th align="left">Parameter Description</th>
                <th align="left">Change Controller</th>
                <th align="left">Specification Document(s)</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">uuid</td>
                <td align="left">prior vCon version UUID</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="amended_from-object"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">url</td>
                <td align="left">referenced prior version vCon URL</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="amended_from-object"/> RFC XXXX</td>
              </tr>
              <tr>
                <td align="left">content_hash</td>
                <td align="left">prior version vCon hash</td>
                <td align="left">IESG</td>
                <td align="left">
                  <xref target="amended_from-object"/> RFC XXXX</td>
              </tr>
            </tbody>
          </table>
        </section>
      </section>
      <section anchor="vcon-extensions-names-registry">
        <name>vCon Extensions Names Registry</name>
        <t>This document defines and new registry for the token name values that are permitted as values to the <xref target="extensions"/> parameter.
However it does not define any values for this registry.
Values for this registry are to be defined in subsequent documents which define extensions to the vCon schema.
The registration policy for this registry is Specification Required as defined in <xref target="RFC8126"/>.</t>
        <section anchor="extensions-registration-template">
          <name>Extensions Registration Template</name>
          <t>Extension Name:</t>
          <t>The string token name of an extension to the vCon JSON schema.
  The name is case sensitive.
  Names may not match other registered names in a case-insensitive manner unless the Designated Experts state that there is a compelling reason to allow an exception.</t>
          <t>Extension Description:</t>
          <t>Brief description of the vCon extension</t>
          <t>Change Controller:</t>
          <t>For Standards Track RFCs, list the "IESG".  For others, give the
   name of the responsible party.  Other details (e.g., postal
   address, email address, home page URI) may also be included.</t>
          <t>Specification Document(s):</t>
          <t>Reference to the document or documents that specify the parameter,
   preferably including URIs that can be used to retrieve copies of
   the documents.  An indication of the relevant sections may also be
   included but is not required.</t>
        </section>
      </section>
      <section anchor="json-web-signature-and-encryption-header-parameters">
        <name>JSON Web Signature and Encryption Header Parameters</name>
        <t>This document registers the following new parameter in the <xref target="JWS"/> JSON Web Signature and Encryption Header Parameters registry.</t>
        <ul spacing="normal">
          <li>
            <t>Header Parameter Name: "uuid"</t>
          </li>
          <li>
            <t>Header Parameter Description: UUID of the signed object</t>
          </li>
          <li>
            <t>Header Parameter Usage Location(s): JWS, JWE</t>
          </li>
          <li>
            <t>Change Controller: IESG</t>
          </li>
          <li>
            <t>Specification Document(s): <xref target="jws-header-object">Header Object</xref>, <xref target="unprotected-object">Unprotected Object</xref> of RFC XXXX</t>
          </li>
        </ul>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC3339">
          <front>
            <title>Date and Time on the Internet: Timestamps</title>
            <author fullname="G. Klyne" initials="G." surname="Klyne"/>
            <author fullname="C. Newman" initials="C." surname="Newman"/>
            <date month="July" year="2002"/>
            <abstract>
              <t>This document defines a date and time format for use in Internet protocols that is a profile of the ISO 8601 standard for representation of dates and times using the Gregorian calendar.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3339"/>
          <seriesInfo name="DOI" value="10.17487/RFC3339"/>
        </reference>
        <reference anchor="DID" target="https://www.w3.org/TR/did-core/">
          <front>
            <title>Decentralized Identifiers (DIDs) v1.0</title>
            <author>
              <organization>W3C</organization>
            </author>
            <date year="2022" month="July"/>
          </front>
        </reference>
        <reference anchor="GEOPRIV">
          <front>
            <title>A Presence-based GEOPRIV Location Object Format</title>
            <author fullname="J. Peterson" initials="J." surname="Peterson"/>
            <date month="December" year="2005"/>
            <abstract>
              <t>This document describes an object format for carrying geographical information on the Internet. This location object extends the Presence Information Data Format (PIDF), which was designed for communicating privacy-sensitive presence information and which has similar properties. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4119"/>
          <seriesInfo name="DOI" value="10.17487/RFC4119"/>
        </reference>
        <reference anchor="GZIP">
          <front>
            <title>GZIP file format specification version 4.3</title>
            <author fullname="P. Deutsch" initials="P." surname="Deutsch"/>
            <date month="May" year="1996"/>
            <abstract>
              <t>This specification defines a lossless compressed data format that is compatible with the widely used GZIP utility. This memo provides information for the Internet community. This memo does not specify an Internet standard of any kind.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="1952"/>
          <seriesInfo name="DOI" value="10.17487/RFC1952"/>
        </reference>
        <reference anchor="HTTPS">
          <front>
            <title>HTTP Semantics</title>
            <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding"/>
            <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham"/>
            <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke"/>
            <date month="June" year="2022"/>
            <abstract>
              <t>The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. This document describes the overall architecture of HTTP, establishes common terminology, and defines aspects of the protocol that are shared by all versions. In this definition are core protocol elements, extensibility mechanisms, and the "http" and "https" Uniform Resource Identifier (URI) schemes.</t>
              <t>This document updates RFC 3864 and obsoletes RFCs 2818, 7231, 7232, 7233, 7235, 7538, 7615, 7694, and portions of 7230.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="97"/>
          <seriesInfo name="RFC" value="9110"/>
          <seriesInfo name="DOI" value="10.17487/RFC9110"/>
        </reference>
        <reference anchor="IANA-COSE-ALG" target="&lt;https://www.iana.org/assignments/cose/cose.xhtml&gt;">
          <front>
            <title>COSE Algorithms</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="H-460-27" target="https://www.itu.int/rec/T-REC-H.460.27">
          <front>
            <title>End-to-End Session Identifier for H.323 Systems</title>
            <author>
              <organization/>
            </author>
            <date year="2015" month="November"/>
          </front>
          <refcontent>H.460.27</refcontent>
        </reference>
        <reference anchor="JMAP">
          <front>
            <title>The JSON Meta Application Protocol (JMAP)</title>
            <author fullname="N. Jenkins" initials="N." surname="Jenkins"/>
            <author fullname="C. Newman" initials="C." surname="Newman"/>
            <date month="July" year="2019"/>
            <abstract>
              <t>This document specifies a protocol for clients to efficiently query, fetch, and modify JSON-based data objects, with support for push notification of changes and fast resynchronisation and for out-of- band binary data upload/download.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8620"/>
          <seriesInfo name="DOI" value="10.17487/RFC8620"/>
        </reference>
        <reference anchor="JSON">
          <front>
            <title>The JavaScript Object Notation (JSON) Data Interchange Format</title>
            <author fullname="T. Bray" initials="T." role="editor" surname="Bray"/>
            <date month="December" year="2017"/>
            <abstract>
              <t>JavaScript Object Notation (JSON) is a lightweight, text-based, language-independent data interchange format. It was derived from the ECMAScript Programming Language Standard. JSON defines a small set of formatting rules for the portable representation of structured data.</t>
              <t>This document removes inconsistencies with other specifications of JSON, repairs specification errors, and offers experience-based interoperability guidance.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="90"/>
          <seriesInfo name="RFC" value="8259"/>
          <seriesInfo name="DOI" value="10.17487/RFC8259"/>
        </reference>
        <reference anchor="JWS">
          <front>
            <title>JSON Web Signature (JWS)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>JSON Web Signature (JWS) represents content secured with digital signatures or Message Authentication Codes (MACs) using JSON-based data structures. Cryptographic algorithms and identifiers for use with this specification are described in the separate JSON Web Algorithms (JWA) specification and an IANA registry defined by that specification. Related encryption capabilities are described in the separate JSON Web Encryption (JWE) specification.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7515"/>
          <seriesInfo name="DOI" value="10.17487/RFC7515"/>
        </reference>
        <reference anchor="JWE">
          <front>
            <title>JSON Web Encryption (JWE)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Hildebrand" initials="J." surname="Hildebrand"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>JSON Web Encryption (JWE) represents encrypted content using JSON-based data structures. Cryptographic algorithms and identifiers for use with this specification are described in the separate JSON Web Algorithms (JWA) specification and IANA registries defined by that specification. Related digital signature and Message Authentication Code (MAC) capabilities are described in the separate JSON Web Signature (JWS) specification.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7516"/>
          <seriesInfo name="DOI" value="10.17487/RFC7516"/>
        </reference>
        <reference anchor="MAILTO">
          <front>
            <title>The 'mailto' URI Scheme</title>
            <author fullname="M. Duerst" initials="M." surname="Duerst"/>
            <author fullname="L. Masinter" initials="L." surname="Masinter"/>
            <author fullname="J. Zawinski" initials="J." surname="Zawinski"/>
            <date month="October" year="2010"/>
            <abstract>
              <t>This document defines the format of Uniform Resource Identifiers (URIs) to identify resources that are reached using Internet mail. It adds better internationalization and compatibility with Internationalized Resource Identifiers (IRIs; RFC 3987) to the previous syntax of 'mailto' URIs (RFC 2368). [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6068"/>
          <seriesInfo name="DOI" value="10.17487/RFC6068"/>
        </reference>
        <reference anchor="MEDIATYPE">
          <front>
            <title>Media Type Specifications and Registration Procedures</title>
            <author fullname="N. Freed" initials="N." surname="Freed"/>
            <author fullname="J. Klensin" initials="J." surname="Klensin"/>
            <author fullname="T. Hansen" initials="T." surname="Hansen"/>
            <date month="January" year="2013"/>
            <abstract>
              <t>This document defines procedures for the specification and registration of media types for use in HTTP, MIME, and other Internet protocols. This memo documents an Internet Best Current Practice.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="13"/>
          <seriesInfo name="RFC" value="6838"/>
          <seriesInfo name="DOI" value="10.17487/RFC6838"/>
        </reference>
        <reference anchor="MIME">
          <front>
            <title>Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies</title>
            <author fullname="N. Freed" initials="N." surname="Freed"/>
            <author fullname="N. Borenstein" initials="N." surname="Borenstein"/>
            <date month="November" year="1996"/>
            <abstract>
              <t>This initial document specifies the various headers used to describe the structure of MIME messages. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2045"/>
          <seriesInfo name="DOI" value="10.17487/RFC2045"/>
        </reference>
        <reference anchor="PASSporT">
          <front>
            <title>PASSporT: Personal Assertion Token</title>
            <author fullname="C. Wendt" initials="C." surname="Wendt"/>
            <author fullname="J. Peterson" initials="J." surname="Peterson"/>
            <date month="February" year="2018"/>
            <abstract>
              <t>This document defines a method for creating and validating a token that cryptographically verifies an originating identity or, more generally, a URI or telephone number representing the originator of personal communications. The Personal Assertion Token, PASSporT, is cryptographically signed to protect the integrity of the identity of the originator and to verify the assertion of the identity information at the destination. The cryptographic signature is defined with the intention that it can confidently verify the originating persona even when the signature is sent to the destination party over an insecure channel. PASSporT is particularly useful for many personal-communications applications over IP networks and other multi-hop interconnection scenarios where the originating and destination parties may not have a direct trusted relationship.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8225"/>
          <seriesInfo name="DOI" value="10.17487/RFC8225"/>
        </reference>
        <reference anchor="PIDF-LO">
          <front>
            <title>GEOPRIV Presence Information Data Format Location Object (PIDF-LO) Usage Clarification, Considerations, and Recommendations</title>
            <author fullname="J. Winterbottom" initials="J." surname="Winterbottom"/>
            <author fullname="M. Thomson" initials="M." surname="Thomson"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <date month="March" year="2009"/>
            <abstract>
              <t>The Presence Information Data Format Location Object (PIDF-LO) specification provides a flexible and versatile means to represent location information. There are, however, circumstances that arise when information needs to be constrained in how it is represented. In these circumstances, the range of options that need to be implemented are reduced. There is growing interest in being able to use location information contained in a PIDF-LO for routing applications. To allow successful interoperability between applications, location information needs to be normative and more tightly constrained than is currently specified in RFC 4119 (PIDF-LO). This document makes recommendations on how to constrain, represent, and interpret locations in a PIDF-LO. It further recommends a subset of Geography Markup Language (GML) 3.1.1 that is mandatory to implement by applications involved in location-based routing. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5491"/>
          <seriesInfo name="DOI" value="10.17487/RFC5491"/>
        </reference>
        <reference anchor="SESSION-ID">
          <front>
            <title>End-to-End Session Identification in IP-Based Multimedia Communication Networks</title>
            <author fullname="P. Jones" initials="P." surname="Jones"/>
            <author fullname="G. Salgueiro" initials="G." surname="Salgueiro"/>
            <author fullname="C. Pearce" initials="C." surname="Pearce"/>
            <author fullname="P. Giralt" initials="P." surname="Giralt"/>
            <date month="October" year="2016"/>
            <abstract>
              <t>This document describes an end-to-end session identifier for use in IP-based multimedia communication systems that enables endpoints, intermediary devices, and management systems to identify a session end-to-end, associate multiple endpoints with a given multipoint conference, track communication sessions when they are redirected, and associate one or more media flows with a given communication session. While the identifier is intended to work across multiple protocols, this document describes its usage in the Session Initiation Protocol (SIP).</t>
              <t>This document also describes a backwards-compatibility mechanism for an existing session identifier implementation (RFC 7329) that is sufficiently different from the procedures defined in this document.</t>
              <t>This document obsoletes RFC 7329.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7989"/>
          <seriesInfo name="DOI" value="10.17487/RFC7989"/>
        </reference>
        <reference anchor="SMTP">
          <front>
            <title>Simple Mail Transfer Protocol</title>
            <author fullname="J. Klensin" initials="J." surname="Klensin"/>
            <date month="October" year="2008"/>
            <abstract>
              <t>This document is a specification of the basic protocol for Internet electronic mail transport. It consolidates, updates, and clarifies several previous documents, making all or parts of most of them obsolete. It covers the SMTP extension mechanisms and best practices for the contemporary Internet, but does not provide details about particular extensions. Although SMTP was designed as a mail transport and delivery protocol, this specification also contains information that is important to its use as a "mail submission" protocol for "split-UA" (User Agent) mail reading systems and mobile environments. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5321"/>
          <seriesInfo name="DOI" value="10.17487/RFC5321"/>
        </reference>
        <reference anchor="TEL">
          <front>
            <title>The tel URI for Telephone Numbers</title>
            <author fullname="H. Schulzrinne" initials="H." surname="Schulzrinne"/>
            <date month="December" year="2004"/>
            <abstract>
              <t>This document specifies the URI (Uniform Resource Identifier) scheme "tel". The "tel" URI describes resources identified by telephone numbers. This document obsoletes RFC 2806. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3966"/>
          <seriesInfo name="DOI" value="10.17487/RFC3966"/>
        </reference>
        <reference anchor="UUID">
          <front>
            <title>New UUID Formats</title>
            <author fullname="Brad Peabody" initials="B." surname="Peabody">
         </author>
            <author fullname="Kyzer R. Davis" initials="K. R." surname="Davis">
         </author>
            <date day="23" month="June" year="2022"/>
            <abstract>
              <t>   This document presents new Universally Unique Identifier (UUID)
   formats for use in modern applications and databases.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-peabody-dispatch-new-uuid-format-04"/>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="CBOR">
          <front>
            <title>Concise Binary Object Representation (CBOR)</title>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <date month="December" year="2020"/>
            <abstract>
              <t>The Concise Binary Object Representation (CBOR) is a data format whose design goals include the possibility of extremely small code size, fairly small message size, and extensibility without the need for version negotiation. These design goals make it different from earlier binary serializations such as ASN.1 and MessagePack.</t>
              <t>This document obsoletes RFC 7049, providing editorial improvements, new details, and errata fixes while keeping full compatibility with the interchange format of RFC 7049. It does not create a new version of the format.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="94"/>
          <seriesInfo name="RFC" value="8949"/>
          <seriesInfo name="DOI" value="10.17487/RFC8949"/>
        </reference>
        <reference anchor="CDDL">
          <front>
            <title>Concise Data Definition Language (CDDL): A Notational Convention to Express Concise Binary Object Representation (CBOR) and JSON Data Structures</title>
            <author fullname="H. Birkholz" initials="H." surname="Birkholz"/>
            <author fullname="C. Vigano" initials="C." surname="Vigano"/>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <date month="June" year="2019"/>
            <abstract>
              <t>This document proposes a notational convention to express Concise Binary Object Representation (CBOR) data structures (RFC 7049). Its main goal is to provide an easy and unambiguous way to express structures for protocol messages and data formats that use CBOR or JSON.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8610"/>
          <seriesInfo name="DOI" value="10.17487/RFC8610"/>
        </reference>
        <reference anchor="ISOBMFF" target="https://www.iso.org/standard/83102.html">
          <front>
            <title>Information technology -- Coding of audio-visual objects -- Part 12: ISO base media file format</title>
            <author>
              <organization/>
            </author>
            <date year="2022" month="January"/>
          </front>
          <refcontent>ISO/IEC 14496-12:2022</refcontent>
        </reference>
        <reference anchor="JWT">
          <front>
            <title>JSON Web Token (JWT)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>JSON Web Token (JWT) is a compact, URL-safe means of representing claims to be transferred between two parties. The claims in a JWT are encoded as a JSON object that is used as the payload of a JSON Web Signature (JWS) structure or as the plaintext of a JSON Web Encryption (JWE) structure, enabling the claims to be digitally signed or integrity protected with a Message Authentication Code (MAC) and/or encrypted.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7519"/>
          <seriesInfo name="DOI" value="10.17487/RFC7519"/>
        </reference>
        <reference anchor="RFC8126">
          <front>
            <title>Guidelines for Writing an IANA Considerations Section in RFCs</title>
            <author fullname="M. Cotton" initials="M." surname="Cotton"/>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <author fullname="T. Narten" initials="T." surname="Narten"/>
            <date month="June" year="2017"/>
            <abstract>
              <t>Many protocols make use of points of extensibility that use constants to identify various protocol parameters. To ensure that the values in these fields do not have conflicting uses and to promote interoperability, their allocations are often coordinated by a central record keeper. For IETF protocols, that role is filled by the Internet Assigned Numbers Authority (IANA).</t>
              <t>To make assignments in a given registry prudently, guidance describing the conditions under which new values should be assigned, as well as when and how modifications to existing values can be made, is needed. This document defines a framework for the documentation of these guidelines by specification authors, in order to assure that the provided guidance for the IANA Considerations is clear and addresses the various issues that are likely in the operation of a registry.</t>
              <t>This is the third edition of this document; it obsoletes RFC 5226.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="26"/>
          <seriesInfo name="RFC" value="8126"/>
          <seriesInfo name="DOI" value="10.17487/RFC8126"/>
        </reference>
        <reference anchor="SHA-512">
          <front>
            <title>US Secure Hash Algorithms (SHA and SHA-based HMAC and HKDF)</title>
            <author fullname="D. Eastlake 3rd" initials="D." surname="Eastlake 3rd"/>
            <author fullname="T. Hansen" initials="T." surname="Hansen"/>
            <date month="May" year="2011"/>
            <abstract>
              <t>Federal Information Processing Standard, FIPS</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6234"/>
          <seriesInfo name="DOI" value="10.17487/RFC6234"/>
        </reference>
        <reference anchor="SIP">
          <front>
            <title>SIP: Session Initiation Protocol</title>
            <author fullname="J. Rosenberg" initials="J." surname="Rosenberg"/>
            <author fullname="H. Schulzrinne" initials="H." surname="Schulzrinne"/>
            <author fullname="G. Camarillo" initials="G." surname="Camarillo"/>
            <author fullname="A. Johnston" initials="A." surname="Johnston"/>
            <author fullname="J. Peterson" initials="J." surname="Peterson"/>
            <author fullname="R. Sparks" initials="R." surname="Sparks"/>
            <author fullname="M. Handley" initials="M." surname="Handley"/>
            <author fullname="E. Schooler" initials="E." surname="Schooler"/>
            <date month="July" year="2002"/>
            <abstract>
              <t>This document describes Session Initiation Protocol (SIP), an application-layer control (signaling) protocol for creating, modifying, and terminating sessions with one or more participants. These sessions include Internet telephone calls, multimedia distribution, and multimedia conferences. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3261"/>
          <seriesInfo name="DOI" value="10.17487/RFC3261"/>
        </reference>
        <reference anchor="SIP-XFER">
          <front>
            <title>Session Initiation Protocol (SIP) Call Control - Transfer</title>
            <author fullname="R. Sparks" initials="R." surname="Sparks"/>
            <author fullname="A. Johnston" initials="A." role="editor" surname="Johnston"/>
            <author fullname="D. Petrie" initials="D." surname="Petrie"/>
            <date month="June" year="2009"/>
            <abstract>
              <t>This document describes providing Call Transfer capabilities in the Session Initiation Protocol (SIP). SIP extensions such as REFER and Replaces are used to provide a number of transfer services including blind transfer, consultative transfer, and attended transfer. This work is part of the SIP multiparty call control framework. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="149"/>
          <seriesInfo name="RFC" value="5589"/>
          <seriesInfo name="DOI" value="10.17487/RFC5589"/>
        </reference>
        <reference anchor="STIR-PASS">
          <front>
            <title>PASSporT Extension for Rich Call Data</title>
            <author fullname="Chris Wendt" initials="C." surname="Wendt">
              <organization>Somos Inc.</organization>
            </author>
            <author fullname="Jon Peterson" initials="J." surname="Peterson">
              <organization>Neustar Inc.</organization>
            </author>
            <date day="5" month="June" year="2023"/>
            <abstract>
              <t>   This document extends PASSporT, a token for conveying
   cryptographically-signed call information about personal
   communications, to include rich meta-data about a call and caller
   that can be signed and integrity protected, transmitted, and
   subsequently rendered to the called party.  This framework is
   intended to include and extend caller and call specific information
   beyond human-readable display name comparable to the "Caller ID"
   function common on the telephone network and is also enhanced with a
   integrity mechanism that is designed to protect the authoring and
   transport of this information for different authoritative use-cases.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-stir-passport-rcd-26"/>
        </reference>
        <reference anchor="vCard">
          <front>
            <title>jCard: The JSON Format for vCard</title>
            <author fullname="P. Kewisch" initials="P." surname="Kewisch"/>
            <date month="January" year="2014"/>
            <abstract>
              <t>This specification defines "jCard", a JSON format for vCard data. The vCard data format is a text format for representing and exchanging information about individuals and other entities, for example, telephone numbers, email addresses, structured names, and delivery addresses. JSON is a lightweight, text-based, language- independent data interchange format commonly used in Internet applications.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7095"/>
          <seriesInfo name="DOI" value="10.17487/RFC7095"/>
        </reference>
        <reference anchor="vCon-white-paper" target="https://github.com/vcon-dev/vcon/blob/main/docs/vCons_%20an%20Open%20Standard%20for%20Conversation%20Data.pdf">
          <front>
            <title>vCon: an Open Standard for Conversation Data</title>
            <author initials="T." surname="Howe" fullname="Thomas Howe">
              <organization>STROLID Inc.</organization>
            </author>
            <author initials="D." surname="Petrie" fullname="Daniel Petrie">
              <organization>SIPez LLC</organization>
            </author>
            <author initials="M." surname="Lieberman" fullname="Mitch Lieberman">
              <organization>Conversational X</organization>
            </author>
            <author initials="A." surname="Quayle" fullname="Alan Quayle">
              <organization>TADHack and TADSummit</organization>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="CDR" target="https://www.itu.int/rec/T-REC-Q.825">
          <front>
            <title>Recommendation Q.825: Specification of TMN applications at the Q3 interface: Call detail recording</title>
            <author>
              <organization>ITU</organization>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="PY-VCON" target="https://github.com/py-vcon/py-vcon">
          <front>
            <title>Python open source vCon command line interface, library and workflow server</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
      </references>
    </references>
    <?line 3000?>

<section anchor="name-non-upward-compatible-changes-to-the-vcon-container">
      <name>Non-Upward Compatible Changes to the vCon Container</name>
      <t>This appendix outlines the changes between versions of the vCon container which are not upward compatible, and the high level operations needed to migrate a vCon from one version to the next.
It does not describe every detail of the migration.</t>
      <section anchor="version-040-to-050">
        <name>Version 0.4.0 to 0.5.0</name>
        <ul spacing="normal">
          <li>
            <t>The "vcon" parameter value was changed from "0.4.0" to "0.5.0".</t>
          </li>
          <li>
            <t>The Session Object and the "sessions" array were added.
A 0.4.0 vCon is migrated by adding a Session Object which references all of its Dialog Objects.</t>
          </li>
          <li>
            <t>The "party_history" Dialog Object parameter was replaced by the Event Object and the "events" array.
Each Party_History Object becomes an Event Object, with "event" renamed to "type", whose sessions parameter references the Session Object for the Dialog Object from which it came.
The converted Event Object does not reference the Dialog Object, as the dialog parameter <bcp14>SHOULD NOT</bcp14> be present in the party and key event types.</t>
          </li>
          <li>
            <t>The "transfer" type Dialog Object was replaced by the transfer Event Object types.
Each "transfer" type Dialog Object becomes one or two Event Objects in which "transferor" becomes "party", and the Dialog Objects referenced by "original", "consultation" and "target_dialog" are each referenced through a Session Object.</t>
          </li>
          <li>
            <t>The "originator" Dialog Object parameter was moved to the Session Object.</t>
          </li>
          <li>
            <t>The Dialog Object "parties" parameter contains only the contributors, and the receivers are in the Session Object "parties" parameter.
In 0.4.0, the parties parameter of a "text" type Dialog Object contained the sender and all of the receivers of the message, with the first party being the sender unless originator was set.
A 0.4.0 "text" type Dialog Object is migrated by reducing its parties to the sender, and by including all of its parties, including the sender, in the parties of the Session Object for that message.
Similarly, the parties of a 0.4.0 "incomplete" type Dialog Object are reduced to the originator, or the first party if originator is not set, and the remaining parties are included in the parties of the Session Object.</t>
          </li>
          <li>
            <t>The "redacted" parameter was renamed to "redacted_from", and the Redacted Object was renamed to the Redacted_from Object.</t>
          </li>
          <li>
            <t>The "amended" parameter was renamed to "amended_from", and the Amended Object was renamed to the Amended_from Object.</t>
          </li>
          <li>
            <t>The "recording-set" type Dialog Object, and the "recordings" and "recording_set" Dialog Object parameters, were replaced by the Session Object.
A 0.4.0 "recording-set" type Dialog Object is migrated by creating a Session Object which references the Dialog Objects listed in its recordings parameter, and by removing the recording_set parameter from the recording Dialog Objects which referenced it.</t>
          </li>
          <li>
            <t>Each removed "transfer" and "recording-set" type Dialog Object is replaced by an empty Dialog Object (see <xref target="dialog-type"/>), so that the indices of the other Dialog Objects, and the references to them, do not change.</t>
          </li>
          <li>
            <t>The alg parameter <bcp14>MUST NOT</bcp14> have the value "none".
A 0.4.0 signed vCon which uses the alg value "none" is migrated by signing the vCon again with a permitted algorithm.</t>
          </li>
          <li>
            <t>The extensions parameter <bcp14>MUST</bcp14>, rather than <bcp14>SHOULD</bcp14>, list the names of all vCon extensions used in the vCon.
A 0.4.0 vCon which uses an extension that is not listed in its extensions parameter is migrated by adding the extension name.</t>
          </li>
          <li>
            <t>Some implementations of version 0.4.0 repeated header parameters, with identical values, in more than one header of the signed and encrypted forms.
Implementations which read vCons produced by those implementations may choose to accept them.</t>
          </li>
        </ul>
      </section>
      <section anchor="version-030-to-040">
        <name>Version 0.3.0 to 0.4.0</name>
        <ul spacing="normal">
          <li>
            <t>The "appended" Object was renamed to "amended"</t>
          </li>
          <li>
            <t>The "must_support" parameter was renamed to "critical" to be consistent with other IETF JSON schema extension mechanisms.</t>
          </li>
          <li>
            <t>The "session_id" Dialog Object parameter was changes from a String to a SessionId Object.</t>
          </li>
        </ul>
      </section>
      <section anchor="version-002-to-030">
        <name>Version 0.0.2 to 0.3.0</name>
        <ul spacing="normal">
          <li>
            <t>"transfer-target" parameter was renamed to "transfer_target" to be consistent with other compound names that use the underscore ("_").</t>
          </li>
          <li>
            <t>"target-dialog" parameter was renamed to "target_dialog" to be consistent with other compound names that use the underscore ("_").</t>
          </li>
        </ul>
      </section>
      <section anchor="version-001-to-002">
        <name>Version 0.0.1 to 0.0.2</name>
        <ul spacing="normal">
          <li>
            <t>"mimetype" parameters were renamed to "mediatype"</t>
          </li>
          <li>
            <t>"alg" and "signature" were combined into "content_hash"</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="example-vcons">
      <name>Example vCons</name>
      <t>This appendix contains example vCons in the unsigned, signed and encrypted form.
The JSON has been indented for readability.
The vCons have been formatted such that long text lines have been wrapped with a left hand white space indent for readability purposes.
Links for unformatted versions of the vCons are provided for each of the examples.
The example vCons in this document were generated using the <xref target="PY-VCON"/> command line interface.</t>
      <section anchor="two-party-call-vcon-with-inline-recording">
        <name>Two Party Call vCon With Inline Recording</name>
        <t>This example vCon is for a simple 2 party PSTN call.
It has a single Dialog Object which contains a single channel wav format recording with the two parties audio mixed into the single channel.</t>
        <t>The unformatted version of the following example can be downloaded from:
https://raw.githubusercontent.com/ietf-wg-vcon/draft-ietf-vcon-vcon-core/refs/heads/main/examples/ab_call_int_rec.vcon</t>
        <t>Note to the RFC Editor: This example, and its unformatted version at the URL above, contain the vcon parameter (see <xref target="vcon"/>), which is included in the Internet-Draft versions of this document to indicate the version of the schema upon which the example is based.
The vcon parameter is to be removed from the example and its unformatted version before publication as an RFC.
Please remove this note before publication.</t>
        <artwork><![CDATA[
{
  "vcon": "0.5.0",
  "created_at": "2022-06-21T13:53:00-04:00",
  "parties": [
    {
      "tel": "+12345678901",
      "name": "Alice"
    },
    {
      "tel": "+19876543210",
      "name": "Bob"
    }
  ],
  "dialog": [
    {
      "type": "recording",
      "start": "2022-06-21T17:53:26.000+00:00",
      "duration": 4.72,
      "parties": [
        0,
        1
      ],
      "mediatype": "audio/x-wav",
      "filename": "ab_call.wav",
      "encoding": "base64url",
      "body": "UklGRioeAABXQVZFZm10IBQAAAAxAAEAQB8AAFkGAABBAAAAAg
        BAAWZhY3QEAAAAgJMAAGRhdGH2HQAAoxjXHYXCRekuye4gK4Tsiv4wZeN
        htuvu3RMkgyPXme4NeahQLG0yeLayx5HCIiRWK7psbQrQTFm57NwQJvIb
        q1aNxk6VpMYAXSm5Bb1rgStIStvEzmCaOIabxs2gjReJ02Rk0BQtOxHkh
        UTIZd4VGKoq1KuoCGhrZTx1vRZICuZEcgkGjdH2jiCU1a0NMW6BE8lVHN
        -OYFPHcZspr0CSl1aeo2hOWUx3CbovpGqKsApWteunk8gMPMOdynRVFWR
        5o0l2BvaQDcWugGRHrQa9NcEbG1LWQq_AWLpsXKdMQefGrZu4ZE2ZSDIR
        GJLTKpIzDybqSyZishQmjuVGztMKNlcyt2vW546JsutgllyppQWroAtHb
        kyrrGAx3bIiX81g1sR-oVaBbtkobA08fpJYscQSlHHcGm7hDriuWTRm8A
        6GKQ1Fbcn10M30DcHctnEchwaAI7dxI2knYCQ5biNHB2Djxm3bFmyU5TA
        3ALZt3DaSeABIkiRJcm0AxpEkSZI7AEiSJEmSwUYZ1mQLYNu2bdumPWDb
        tm3b9gOAJEmSJFkFgCRJkiQZbHRhTccDtm3btm0qAEaOJEmSPABIkiRJk
        jAASJIkSZLBRhfW9CKAJEmS49gCgCRJkiQ5P2Dbtm3bZgSAJEmSJClkcm
        VNLgBIkiRJkm8ASJIkSZIvAkiSJEmOswM2btu2bcMVmd3kIoDkyJEkySO
        AJEmS3AgGgCRJkhypC2DjuG3j9mxOWQiyEUQ1DAtyvQJS9aTWWc4KuFqL
        O9F4CCJX4yeFkMaSUWSLYMkYinzGa4HzyrEi6-pgHVdXe6mugKzW7VqHY
        OzcDDsXWnJkeVXHFKpuLDZSrAroZOQohtASpE4dyZSRxozJQC6hJE2OLG
        iNYLM1ruIWzsCcRhEW6c3AJhq6bmp9cZ0IvAy2a5xJVcUMNE8Qq3G0CEJ
        y30SNxwrUqUy5NczWkI3S7UCk4iyrBM3AzCvJqkisQPQkcekWjYDoJk4D
        pWiPmUzXCtKFMkuy1g7MtWnrqLwMSqpjR8vXDipSKzk1D-bOjdLzgNQol
        lapqqCUmjChmctA6jRmYPOLYJtHbatocTAZCfAQ3LHs6O2zDuCC_LyStA
        gkklFHZesUspXsSr0S5lCRYg-hXc2tKqMsgeqYkNzSVmLc9mk08zbhzUK
        O3fhkzJQsvBTCcNk2s-oUxO5zpatkETyFn-xtrxRaTR0hZk3WDo5ELiFW
        Oq7hmMxgKjdcY0SO4Fk7cijHC6EYNXEZI6oDUQz2EeJMMh1orxSOup04u
        UUjOtyjwVQ3HdhpuSRyJv0WzpRTo-so7pMpdgKWUk0jlEwjiqBJAwcuw5
        lca39VznGdMLAg6o-EEenbKEQxgkeS0xxEteISQcQUNPm8KxaV1xKKIq-
        BFEpsm_bjIFPLiJwpRoEoSZEuqWuBJLuu1oxZC8ksQB0Wkt_IqrwaSMq8
        p4mzEPrFksdx9i9KZVv36AvGkMmyKsHI864U2eThk-iNKRsvgRsqL1vMT
        UHbPK2ZqVwNHW3oEIay3EaN7xJGgV4mmK8Q1k0O4jHPCFpRzHYxBtbOEZ
        FMQeMoOVQ2F8GTOXvh9-qARmvOaH9MYaOpdTIFaS-ZJO4OGmZOvo3fEig
        5M8lQvwxinfXKhc4QrPGM0pIJthKKkixBYjvlZJlNwXTljSW8VWFex6ts
        hg7BUiVuU8VoDtlMwRBEkqXknPYWWNFMRtW_FMhsVIpV4RDESZlqtFXHV
        I3GSmHZyNFMV24h48qsHAdLYeumkSKhTYG1Qp0LpWhr1UitEmaJ1DxuXw
        gGEe62VbkIUKKbdkv2CFhIZMdnkebSjRKzoCG7Uc32ywDkqkauEsuAzOq
        K1vnNoKFOtloMaa5YBWwbZI_aPtKzFMpyqx7WNBXEqt43TasSiiaAKW8U
        2NSFxMuA6htzZ8ougZAbtgLVamHcwpHZgq6B40DSETuvriVpKyFIUpxog
        TQvwrBFaY5MScRRE6GFMFGqYp5L26r4Eo2kooM941UsSSRC6NVuXVFmol
        1pueTN7sLdPY-uiHbuECmzJFAvywh-KivWrRRtmK4u4p1Va666LNhrFMt
        F3tZKlTDvgdOFlqN-zUGbWLWajishIrY5DTNLYovSDJJ2co6MCCwrxmmd
        6u0wU-CtiptRtUQohlesWT1X0I4kR-NrCEmIIFRGelq51TpDpN2jnuxFr
        UWfaop44QqkpsixOkeSsFwpyiIoHV4IN-NAtFJboRbtIqoILbeS0SJe1i
        2_tl8Xi4xizaGMTbVg3w4C6biZ8LrTot8bmqK5TWIKQWqUWloIyQhHJaA
        MTQaq4SQWNzTeTaoc5MHEkWrWHEY8moxcmLeQkQStoV9lsiM7S6HlKE6n
        LKfAJK3GVq0WQeK8fmKNcascCXElWJJd9iwvNSi9mNvGsRwsvvxyHsw0O
        qqptnxsWafZojyKIykTLXobrtrgcAoryw9tNE7TVstKaCBBmEJ2LMUsXJ
        KCCBk1kWpsul1ZnZRgWoSnleyJ9njK9VrZXCrYFojg6ofqqAam-jOFbEv
        QIIcLJF9f-quNDsQiS9ac_ljMEE30OjQXKrmVeCxG7iE3UmIcLO4g0zVP
        FXAN5biakMaMydRuQRlJ2NuaTOEqKabgJg8hc8KNG6PLgDxn1fDGZAzRL
        OsMhnEGF6--CEZJU6ly4hJmqiXpha4Wumlis26U5hAVtMxgmpVUIzPOoF
        gpsVVLLOHiSOrKysoBq0Zx4xZZTVFJOwqozvXM7WEQtpmkq7GqF-ZKnqo
        2YBGysVvsSJPm0I1kDMHOdHEkN09hm8NtJWnmgA1HDhVoL2ENW6odeXkN
        2SjJCmjxotduUws-l3OyDu8KtGUMMc7ICrJu6XpMSsdQkSTuwEC3ddtk1
        sBUQyktmMqA8Ti6G-crYSsVVlmFXE5VLeQOtC5kuFCrCEaqTeuJWQu662
        W5sr4KQGcrRVjLFlHVdK1AV8Wt23ivgJmLsuU8TcEjG_ZdREvB1iiaHKh
        cz1xJMxPOah1FhvcK8lOaK1nSFjSPk8iRxghUySuliw230olEzwCfOKfz
        Wq1gbFMH82iPYAk3rlNhzICdTIYblWwvYSnWDliN3TRvLwcmQhMcPlYJ2
        G0NuYpJD0KtVEqpSuaU1fJLgdp0aRyn1kAzM6_jW-6Ab1vxovqtwJTZzm
        Z3YM0gTVgRVm-zNm61DvaQaqVr1A4IUsQ8LLkMJpXarHRIxlLSNK3Akqh
        uGv2uQA6pcuSkrmCpllETvY4g4sgt3IZgbhUtSQ3orOouknUJ1taUPXRI
        Dbq5EVeuvgzEsQQ5jgvmTk10zaCg2G2Tm9ZAzCJO3ZSLwN3M9XWerUD9y
        motaWDvHEm_DMyQrMou9w7OsB05t1MLNLZrvBlRCyiKjkSNicYUzuazIJ
        WzclQ3ziAtZVVs5a6Azhg6GYPKYGHFPaTKYO5ULdIIuIVksabFDJrRRdw
        9tAxEiUvZpcIOmrAj69TTtpaJsMpgneyUu9ZtweRYk6l2zKDS5JJsq0xh
        JBfulMtcL5kscBlAcSNHUsIK9qirs87yELpvrLnOzBCklpo5lYvGlJFUj
        IBTKTkkcU2BGheP1KqrgF1TrSljrYDcpm5KK2RSYU1nAERu3LaNXQDIce
        RIjmMASHIjSZI0AkiS5EiSgUcX1gQDgCRJkiR5B2Akx5EkqQOAJEmSJJk
        FgOQ4kiQZcJQhMbwENm7bxnHnBLZx3MaRbwBIkiTJcTcAOHIkSZLBNhvW
        xiSAJEmS5DgFYBxJkiRpB4AkSZIkeTxg27Zt28ZoLB1FqA84qpop2DMPx
        B3yyHWxCEq-fmsS1w4YUjo9rZTHlFH0q2AdUZIptdIgy0RuGddqgdyotU
        Kb6kDbE4ukV4FunQyxDEpOHKgiUSHekezIka8Kys0TR3PlCFqPHrR10te
        OkYSnQKOlepQdzQALJTqbhIqAomiNxIiNQFTXZWWneXHhSPESVm4lyc1O
        EahpnMKFsBQojionS9MISIq9u9dX59iNgu2gpbd5mlatoGmpjpyqjmBt5
        mp0Za5gpVZzpUR17lgp0gqgLVIIdvMIpMbktErBDJqS65hy7ApUjiOjsZ
        jXVtnitEDxJq5aG66ApGvxHWmugByp0ds4LmGdNmmEymntVCmzCtSY5M1
        qUBO8kizbWc8NqLsw9nW0Gs7tY1vtFaiWTVDsoGVNdfvy7EFD0zJMJMuh
        I8etAzstQSK9TqvpdEzdBMUeNm5USi3YDuxszZiSWgyyWeoovtoMyHWWq
        2ZV91RVoMpgpZpQ1zgMgaS7rZxLzEDtpK2trKygm6OGJjhtTtkkxQyorh
        vXclcNUm6s1VLtDlhq1joy3Qo2RpWU-ZK3zs1CNSH1RJqjWGsho6Zx2oS
        sgGJIcZs6ziDMOLLqmo20XU34CDxWFAlOzAwIclQXst8MptWj3tLfCOz1
        7dx5VMYMkhLXgCU1Tg1GjMAbNW7bZkNg47Zt2-bugBtDMS63bTCdKbESG
        k7cNHK5EMBNJbmW4hLKcq0pfkQL4lCtJpZcZ5lRYExhk0XS7spt4ROnLe
        TaHEJbJykFmkoBhLVwfG1lDRkpRBIW0aM6dXgKONwlc6IpD-5YTcW9ySC
        6cTwpkhfWUFbUi2AfdLNotAyhFTuqiuqzQF43RreH1EHc2G2famXv3GQz
        EbaFWyWKvA54ay1HF-0WaJMjq906C-JtlpSGDtaOkSItYVtKktMmrGCT1
        qEbaSxh1DZOJObUoCBLiW2dhTBZSboKOn4bOVnLCsim9Vyu6wioklaqLM
        wMRpELrXJT15RJUHWB4zRiZbPWgFzGEW1m7GCjCpoi6w7ArGdeWR1xUdV
        E4AhQkiPNbtYLqG2e6JS1CkRf_tqZwgo4U6xWhpT3lokwzIBRsy3tVIsg
        WTSNDUusYBTn6eN4rWCcrBCVxGDNVEXBCm6R5sZ2KBO2buNHk98WyK7DX
        HWwCsQ1pNVVy-YUSnKsYVypCiTXrkDsqC4TR61A2aJ02vjOIJ2ujquiZO
        -cSL4MSpGOSs3HCiZxVDdx8hbGiZS5qekUStXiHI5P1o5N0sqA6vpMc_u
        tIDWYcuJI7GB2uf5jpa2A1k7O2hJ1S50MvwjebFu4sckMmFXwNDJdC2gP
        GbeqYB24bSA5bg7XWI0ky2DTiDPkIu6A4WapZRrtoJu8rhnJy4CktZkdm
        2QuWUj0CnjWs1anShG4kiTXnKkQFnggS42-DhS-8spVTOYSjjIvgZtOSi
        QV7IC9NHYYg8yAy-Sq4mduYeU4rsSaXE-dSdsI1MmiVVS8ErZp3kBO5wj
        EUZ4litUKhlYLm5QIFtPFgkxBVCWnInXNoIVYldbH66DrRk768I6gWceU
        HbhsbZ1MuBLKqaPWZtUSumrm0pKsEkSW8bZx9gzKVdvYjBkIn41UzoBFK
        3LyJsuA6kZz3MUuQeU0DhvnbYEcW5bdqWANoUQrDbibYg2RxwykcQtFxu
        oKIuEcw871DDhunD4tzhWRiZKuwORIrt6cHWGatkIUN7RA5GRSnbytgA2
        mUh5lce5QSPAOVI1y5IjtErKQGbd1vwxM0p1FrtcMZJIdtTLS1s6NgKxA
        tkKwi3lMgWQ3umtJ7EAdaSMlRayAXbdarDp5LxEpxAgMd4zJkKwMhp4iu
        TKzDKaQSkOh3w7Gkde4udP2zowSzGDUzMPuSMvAJUlVLASPgOSocix9s4
        DzYFbqOmlN2Si5CDBPTUeN3AyiSASTj_gKQrGctqdxE0QupVatDbeMTdK
        KQCOVhgu562BiGc8kqZSgbmtJFpWswNs2N6N8cTEdLcAIqLKKN2nHDKay
        FL-VSAtmrgY5caoKppCbxnRPxkzJ4IxAzLamG0dPweK2jp0WzCAUF4lmu
        GuB5PqpZGWxi-Tdu83IkRu58bvpIpTjyo49xVau11BOPq_Mb1I30pTKhu
        LbE-qCppVr1bMoG5MWofRNaO9FTtUULKkcxK1se60u4PnCSpYeriVaxor
        WtSTbT3ZK-p8kPe3OUiL2Y0mSV6vGnamuo-xkacV8jGIsCdadKA_ipsBK
        XQamggPJeduCoXCctcQSaILpxDhsIvSya1mXrwzUEtw0g9UKyjCDNMmYF
        xWa1G6BBUWGlK_WoJooLVmiBGHikq3TOO9AEUt8yriBEt1F5gjCrW17ll
        gN6E7bRoi2FDau7PaxcRMsVt5Wr9go19VEzaBf2C4UUY5gmjI1SF2MQJU
        7ZWVKrUDpFujiln1R4UivHsaQmzSNxgpGtiM9t9kSpn4bzbHvCnaKZmWq
        2AfTjebrYBCpdao7zaCoRVZr8-pgwzgwjVDtAJ0mjdKkiRBhRbsKSrXlN
        KtbD-aKFDROcw1Ehiq5jtAIKHooV3bV9lCVdKsge8N14oiuIJm0ccukra
        AjR32iF89grKzNdamJcSEltQ7aTZpjxc0KIillx5XHCHysPSmv5gx4W2O
        7Nxf4EFLybMEchVUcy81g-kryZoEsoRzLTe5Iz2DuuJGTo4TWsS7EEqZq
        ZPWVzwm8cSfnTlMNZnTdRBWqLFRO0FhyCwrNsgWL4WWmlaQNfAKyp7a_o
        iJiLDOWg3KsAU5ZdmQWsYhsm3Ua6JUbian3EvyU9yIn9BBIfVv4gU81SF
        F9pZFK-RRuGcuho3tJyUIEIdS4jUsJZ2ElNbAWKI9ApOJ10yWFL91xwha
        ia6MmSbQUVIm9V4avEEx1c5up0g7a8M1AJlYnF9pUb4H7NrZay2vBJrc2
        k2XXIB0rbxGVbEHSTPLkdHVP3SiyFkrSfMuqxxSoUywTl7IK1nkqWR3qF
        NigHFmJWfeOTZKu4OsYU5RWNWLaxG3QKsxAH0Xr5MYsgRRlrRxdeTFZKP
        QOWKXeYsHHFFSVOiuy4xLmktxOiccSTLEdt06UeF2KVM1gajRx2oivgNS
        oT9Uo1WEamTIm9CohXLeNQMbUdBiaxp2WflvGlTgayFeymZpJEhaXJbvJ
        bhY-6rEiNo1q35r2NWEeGLEiFZUh7qBmzS6rAtsoEfP2qgIqN07jV62KJ
        L5mJ8xvQMXyuSqOmKTZmr0gILnRjZnWLNy3E6apVcqEmXur4e1Ezc0Mhk
        FCmGVjYezBbFiQqsRKoZqj4hX5pCtSP8sQhnUaqW1RJSqSNgF3q6VIkts
        6gbI6OvI3h4nQmlz1ozQkau0juIS0Qiw7auE3tEEvYXRsZuaB2jJr6uOY
        LyWaxR4Y1iR7T2sS6u4Z3ULmGNjN21tO7hS4nJs8rxUoT9HUi6Ds6-5mx
        y1BJLdNZmZPgc7IbpV61UCqx7FkV4FwUSi1CpI5kpRt8Agwbx1liMIIYg
        vVuNbBCKTsXsSQmQeVyYQ0IV2XedKKrSAvabkyS-5gMV0WNe3twGuVgdy
        kiZNZTb8MQkvFX_GvDiqZ7Jqx6Qy4kc0YieoUxlCMptKYB1WRQO_AZunS
        7XqsYBZOkdyUruCy6A2gRc6A21apH0mB9Slu2wbkbbohLvQWuEnhBE2qF
        qZQlXpJsBRaRZ4qzkyZ5SIjVEHMJknKsq1BI7RtG_eKABbHbKrC7kCkWI
        dGQ4GyoUnzCjItYBipvAq8yFbt7WcMKI5j6s3iDkRSmwxGV-cOlub0oNv
        Y0poFzYBrV5kx60thYpm17IgtARLGrKsJfdFYkcIUJrr1mHrzCMLzKzV9
        xgy6Vh1Hpe0SuDYd125Nm9hzUw-hHjlS3JiNQJ1Ijdu2fWbj2CcZ14pk8
        msp48awbTU3Vhr-TrTvKFIcJPojF333KkjyGUaSZTV6aQ3L1U5roOuwHE
        eaE3BkySIiTaBS7LYsgZnfdoSZBqHdpK1LJ6nQXJpwFchNZ-vv8xp4cqv
        Lqa0cGpWl9XayEpCRW4nNE_pKXYuXQZRLUfXLKmFox06kAmxhaUUlY2rP
        QBndZc5KgVBZVccIYtqqta31CDpUHcdw6hTWRcLIlSsKUoKsXoqS1xKRs
        q3AEDV1YXdNQVsLcavky2BUuV3TLK2A5BI-god9seFE9A6yU9tW2-oKUq
        Z0RZLgCjw5p0l25BC4kZnYadDW1I1grKALt9LbprSAbMalGvUuQSahbhP
        JagGlRHEktWixXCXhDOQRDBlSVh0mU7LYCU0RTgM_Q7Y6EtCuUUuyS_aO
        ldRNYTI30c12jsDe9orzdy2Bs1qyYl1X4TtVsuuqWM4YTasUyMbarHYtE
        byJ3Bo12BWYivAUrq0sGlIcSajNGBOaV83iXSaO2orMgR1LTvvmbqIkV1
        bqhycBO6edpup4cqVNsBKorPfKk-kQVj4uOb2vFDR71CiSzRK2yQu9bRk
        2U5GA74Bmmc-a3Duh2wt71OqKId1YaORWTKF70pIrx4lS3SjKDFAtoq5N
        RBOoUKRmaXYWRJGeyNbGFNphZDhQSOeQyWBtYUOViaKmq4Ds5tTbOi1hV
        D-ObJWqoF3EMeuQZM0kSbIUxka8to7uDEI22iqLLA1GVqU1kdkKUm7juL
        HMxtBJwoygoxXHHceqgNI0coPGksAkukX7kCphGrtuXkWBENVIzxI-MSU
        nUrAIukf69lHJDDYvE0teUQ1Y1V9IUo3mzkVUz6AUtQccy8pgLSQ5BXnL
        IBYzmirr7WBhyUVr9WjuHE0rCwhyWueNtw5IbfpWqrgUNnoiaXLDCiy50
        lvsjtdQkWKLAKNekZZirKCnaDVvVu3gHNlVYX3MQLIoSq6KgTCdRPIO0I
        2jusa2CmbG5uautQ5Ipl3WT64IOLVbW9PQKNcZZ8-A7Dp3pswbQdQ6PYG
        NK6HaxUDiVs2AZRnOzRaRUJ1Z6RRI0iTHyfYKRI4cOjrxEqgqospuKyO4
        VZK_1lMokw2JQ2EolrXkqIzAI9wynWjn4FHvUqacrIC0RnZac4WPmUzNE
        CZOpSgqWw2qbCREedIMNFu0NS7rDCQRm5iOledUzULLgCLLkIOJzyDaI6
        6hO--g3DQi01zLYCJHtJ2biVHhKPYMtKkxqW7hDEp1K9Uh1g6aTE04qTY
        AYJ3fXApcCBWS5MWA3OSpIoePwJXFTVo2rGAVRlHst8tgbmeSpDZxUJUk
        sA6kcd4lkuUIso2UtZG9ClrW79RZ6QpmbuLiclb31E2k7CAqw45ki60A4
        6rW27Yq4D2fkhOizUDkok4SxYkyWSmyCFauWgc2xgT6dKJu7dAIqpENKQ
        bnCDROpEfX1vfUiXK1YHY3fvRXzGD8yJUhCY0A3TJtU4XvgNpMip1KbQ-
        VLPQMwoxUJ1rIDDQuKyN5qg5Ek_28smIPSHotx9XY9lJF5MxAqi4uJffq
        QLS4qSZr12BVG3lb7q1gmRdtnJiNcF0kyAqGNkw5KuoOyG3XXJbpCMxxZ
        zuZ9A7IjBzXzRQHk4Xi66Ciak0sa9ZAk7uQJJmtIBrDQhIZDCCisukrYW
        2QWUj1CrhUGrmp9grYb-oYUuwMOGlkzJLUCMht7lzQHpubADSzYJ1ftv4
        KrIGVNW4YtUphGyv65IpeYkaXigzfwRxbJK4eULOsuofVTeKhI0V7rVx6
        syVN58RFipMWLcXb7HWa0ool1tVSbRerw1U13_R970Yst2rTUDSHiqJEk
        dDB3u8tLXXEZRi3iLuKOJJsq89gTZ4TTUs9wXJSZIUvXR-7sZUYe8uDt1
        KkJhPJMc6uUfVsadMGMupEzmqFtXHdstEeH4X3qL6u60iO3kZOOfwyo_K
        eppGj8RXzk2zV00dWW80n0QTMxLbTfSB8jmdFp02aKlNlK1l97XheSYTX
        kOLGwR4faduDnqHCOE2_ZLbx6rq35oJe0p26lepuXOWTt7Ie_DmLNi4ID
        SZom4YzSEtD47tmVUra4GERBpUJACE0Uua5njuKvpK2ddy599W22r4k_U
        2rbBguUz2dY6tWrvTZuZr9sdZE7-olvZu1lUrIGj9QIfauaCtaeXRZr4k
        fW5Hlxb0fr3U2lWqt6sOSaYEyZJEIdkWdSu89fZvqdnrVNRmum_xp2jTn
        h2ISAYJiKwN0oNFtnSyD5Eiyw3dPBAY5diql0b9ecXVDBo2Rs63nWNr6t
        fuyXTmu8nIabShdNojSNGobq52IxMKBgybmG60GIeX0pUNWh0AA9KxbRY
        yBJnluZH2Jc4hI2iigbuXGkTgINqqeKLVUDKTR2dQt6gpWMhzXTRd4B2B
        ULCDiSHXDgy8AnTuMqiROgCsJsYs4tGAjt1WcVdE2SATnCLSKbNhtyAJQ
        ciPHaL0Eyo0bWcX0DiZu29hwFntXxIIy4KuVckrtDCD4tGYSHctAFDmNz
        VbPQCvDauJGqTgafrcINDGcNGnZR7Zt3PoALxSCUqY0wbyrSHmTIZc"
    }
  ],
  "analysis": [],
  "attachments": [],
  "sessions": [
    {
      "start": "2022-06-21T17:53:26.000+00:00",
      "duration": 4.72,
      "parties": [
        0,
        1
      ],
      "dialog": [
        0
      ]
    }
  ],
  "uuid": "01a16b86-9a63-8346-b9a2-279e0d16bc46",
  "events": [
    {
      "type": "join",
      "time": "2022-06-21T17:53:26.000+00:00",
      "sessions": 0,
      "party": 0
    },
    {
      "type": "join",
      "time": "2022-06-21T17:53:26.000+00:00",
      "sessions": 0,
      "party": 1
    },
    {
      "type": "drop",
      "time": "2022-06-21T17:53:30.720+00:00",
      "sessions": 0,
      "party": 0
    },
    {
      "type": "drop",
      "time": "2022-06-21T17:53:30.720+00:00",
      "sessions": 0,
      "party": 1
    }
  ]
}
]]></artwork>
      </section>
      <section anchor="email-thread-multipart-vcon">
        <name>Email Thread Multipart vCon</name>
        <t>The following is an unsigned form of an vCon for a 2 message email thread between 2 parties.
The email messages are multipart MIME message bodies.</t>
        <t>The unformatted version of the following example can be downloaded from:
https://raw.githubusercontent.com/ietf-wg-vcon/draft-ietf-vcon-vcon-core/refs/heads/main/examples/ab_email_acct_prob_thread.vcon</t>
        <t>Note to the RFC Editor: This example, and its unformatted version at the URL above, contain the vcon parameter (see <xref target="vcon"/>), which is included in the Internet-Draft versions of this document to indicate the version of the schema upon which the example is based.
The vcon parameter is to be removed from the example and its unformatted version before publication as an RFC.
Please remove this note before publication.</t>
        <artwork><![CDATA[
{
  "vcon": "0.5.0",
  "parties": [
    {
      "mailto": "b@example.com",
      "name": "Bob"
    },
    {
      "mailto": "a@example.com",
      "name": "Alice"
    }
  ],
  "dialog": [
    {
      "type": "text",
      "start": "2022-09-23T21:44:25.000+00:00",
      "duration": 0,
      "parties": [
        0
      ],
      "mediatype": "multipart/mixed; boundary=\"----=_Part_388314
        _1108189513.1663969465698\"",
      "encoding": "none",
      "body": "------=_Part_388314_1108189513.1663969465698\r\nCo
        ntent-Type: multipart/alternative;\r\n\tboundary=\"----=_
        Part_388313_805631480.1663969465697\"\r\n\r\n------=_Part
        _388313_805631480.1663969465697\r\nContent-Type: text/pla
        in; charset=UTF-8\r\nContent-Transfer-Encoding: 7bit\r\n\
        r\nAlice:Please find the image attached.\r\n\r\nRegards,B
        ob\r\n\r\n------=_Part_388313_805631480.1663969465697\r\n
        Content-Type: text/html; charset=UTF-8\r\nContent-Transfe
        r-Encoding: 7bit\r\n\r\n<html><head></head><body><div cla
        ss=\"yahoo-style-wrap\" style=\"font-family:Helvetica Neu
        e, Helvetica, Arial, sans-serif;font-size:16px;\"><div di
        r=\"ltr\" data-setdir=\"false\"><div><div dir=\"ltr\" sty
        le=\"font-family: &quot;Helvetica Neue&quot;, Helvetica, 
        Arial, sans-serif; font-size: 16px;\">Alice:</div><div di
        r=\"ltr\" style=\"font-family: &quot;Helvetica Neue&quot;
        , Helvetica, Arial, sans-serif; font-size: 16px;\">Please
         find the image attached.<br></div><div dir=\"ltr\" style
        =\"font-family: &quot;Helvetica Neue&quot;, Helvetica, Ar
        ial, sans-serif; font-size: 16px;\"><br></div><div dir=\"
        ltr\" style=\"font-family: &quot;Helvetica Neue&quot;, He
        lvetica, Arial, sans-serif; font-size: 16px;\">Regards,</
        div><div dir=\"ltr\" style=\"font-family: &quot;Helvetica
         Neue&quot;, Helvetica, Arial, sans-serif; font-size: 16p
        x;\">Bob</div></div><br></div></div></body></html>\r\n---
        ---=_Part_388313_805631480.1663969465697--\r\n\r\n------=
        _Part_388314_1108189513.1663969465698\r\nContent-Type: im
        age/png\r\nContent-Transfer-Encoding: base64\r\nContent-D
        isposition: attachment; filename=\"=?UTF-8?b?c2NyZWVuc2hv
        dC5wbmc=?=\"\r\nContent-ID: <c4c28087-6fa1-395e-e50f-dcef
        d3d6bf96@yahoo.com>\r\n\r\niVBORw0KGgoAAAANSUhEUgAAACYAAA
        AeCAIAAADPdvs5AAAAA3NCSVQICAjb4U/gAAAAGXRFWHRT\r\nb2Z0d2F
        yZQBnbm9tZS1zY3JlZW5zaG907wO/PgAAALpJREFUSInl1t0NgzAMBOC7
        qPvP1gW6Qjdo\r\nj4f0J4qAJI6NROvniE8+mwCvtzv6imTnyf1K/UclH
        UFWjIvaIL3CHCABSPKKtJckWfY6zw+sj5dq\r\nISdVIzmj2klzTZG2Rm
        e7NKgOwY6qPrMcUs+2PqchL14P+oyz+fHx77K5Sv8xyxAyZ0uBaxn/Spc
        U\r\n8NxcosAut1Y3NtjVX7UjZlmpgWTSFyvVQPKB16tSqW53bFnKtyyZ
        vYT3rSsAWADWAlOjseYFfwAA\r\nAABJRU5ErkJggg==\r\n\r\n-----
        -=_Part_388314_1108189513.1663969465698--\r\n",
      "message_id": "<1126698042.388315.1663969465698@mail.yahoo.
        com>"
    },
    {
      "type": "text",
      "start": "2022-09-23T21:44:59.000+00:00",
      "duration": 0,
      "parties": [
        1
      ],
      "mediatype": "multipart/alternative; boundary=\"----=_Part_
        390234_811845464.1663969499935\"",
      "encoding": "none",
      "body": "------=_Part_390234_811845464.1663969499935\r\nCon
        tent-Type: text/plain; charset=UTF-8\r\nContent-Transfer-
        Encoding: 7bit\r\n\r\n Hi Bob:Got it. Thanks.\r\n\r\n    
        On Friday, September 23, 2022, 9:44:40 PM UTC, Bob <b@exa
        mple.com> wrote:  \r\n \r\n Alice:Please find the image a
        ttached.\r\n\r\nRegards,Bob\r\n  \r\n------=_Part_390234_
        811845464.1663969499935\r\nContent-Type: text/html; chars
        et=UTF-8\r\nContent-Transfer-Encoding: 7bit\r\n\r\n<html>
        <head></head><body><div class=\"ydp89e479a0yahoo-style-wr
        ap\" style=\"font-family:Helvetica Neue, Helvetica, Arial
        , sans-serif;font-size:16px;\"><div></div>\r\n        <di
        v><div><div dir=\"ltr\" style=\"font-family: Helvetica Ne
        ue, Helvetica, Arial, sans-serif; font-size: 16px;\">Hi B
        ob:</div><div dir=\"ltr\" style=\"font-family: Helvetica 
        Neue, Helvetica, Arial, sans-serif; font-size: 16px;\">Go
        t it. Thanks.</div></div><br></div><div><br></div>\r\n   
             \r\n        </div><div id=\"ydpdc5150a3yahoo_quoted_
        4829810715\" class=\"ydpdc5150a3yahoo_quoted\">\r\n      
              <div style=\"font-family:'Helvetica Neue', Helvetic
        a, Arial, sans-serif;font-size:13px;color:#26282a;\">\r\n
                        \r\n                <div>\r\n            
                On Friday, September 23, 2022, 9:44:40 PM UTC, Bo
        b &lt;b@example.com&gt; wrote:\r\n                </div>\
        r\n                <div><br></div>\r\n                <di
        v><br></div>\r\n                <div><div id=\"ydpdc5150a
        3yiv4578005613\"><div><div style=\"font-family:Helvetica 
        Neue, Helvetica, Arial, sans-serif;font-size:16px;\" clas
        s=\"ydpdc5150a3yiv4578005613yahoo-style-wrap\"><div dir=\
        "ltr\"><div><div dir=\"ltr\" style=\"font-family:Helvetic
        a, Arial, sans-serif;font-size:16px;\">Alice:</div><div d
        ir=\"ltr\" style=\"font-family:Helvetica, Arial, sans-ser
        if;font-size:16px;\">Please find the image attached.<br><
        /div><div dir=\"ltr\" style=\"font-family:Helvetica, Aria
        l, sans-serif;font-size:16px;\"><br></div><div dir=\"ltr\
        " style=\"font-family:Helvetica, Arial, sans-serif;font-s
        ize:16px;\">Regards,</div><div dir=\"ltr\" style=\"font-f
        amily:Helvetica, Arial, sans-serif;font-size:16px;\">Bob<
        /div></div><br></div></div></div></div></div>\r\n        
            </div>\r\n        </div></body></html>\r\n------=_Par
        t_390234_811845464.1663969499935--\r\n",
      "message_id": "<2031327240.390235.1663969499936@mail.yahoo.
        com>"
    }
  ],
  "analysis": [],
  "attachments": [],
  "created_at": "2026-10-24T01:29:10.590+00:00",
  "subject": "Account problem",
  "sessions": [
    {
      "start": "2022-09-23T21:44:25.000+00:00",
      "duration": 34,
      "parties": [
        0,
        1
      ],
      "dialog": [
        0,
        1
      ]
    }
  ],
  "uuid": "01a16b86-acc8-8c6d-b9a2-279e0d16bc46"
}
]]></artwork>
      </section>
      <section anchor="email-thread-text-vcon">
        <name>Email Thread Text vCon</name>
        <t>The following is an unsigned form of an vCon for a 3 message email thread between 2 parties.
The email messages are plain text message bodies.</t>
        <t>The unformatted version of the following example can be downloaded from:
https://raw.githubusercontent.com/ietf-wg-vcon/draft-ietf-vcon-vcon-core/refs/heads/main/examples/ab_email_prob_followup_text_thread.vcon</t>
        <t>Note to the RFC Editor: This example, and its unformatted version at the URL above, contain the vcon parameter (see <xref target="vcon"/>), which is included in the Internet-Draft versions of this document to indicate the version of the schema upon which the example is based.
The vcon parameter is to be removed from the example and its unformatted version before publication as an RFC.
Please remove this note before publication.</t>
        <artwork><![CDATA[
{
  "vcon": "0.5.0",
  "parties": [
    {
      "mailto": "a@example.com",
      "name": "Alice"
    },
    {
      "mailto": "b@example.com",
      "name": "Bob"
    }
  ],
  "dialog": [
    {
      "type": "text",
      "start": "2022-09-23T23:24:59.000+00:00",
      "duration": 0,
      "parties": [
        0
      ],
      "mediatype": "text/plain",
      "encoding": "none",
      "body": "Hi Bob:\nI just wanted to follow up to see that yo
        ur account is ok now.\n\nRegards,\nAlice\n\n",
      "message_id": "<1402576211.401234.1663975499936@mail.yahoo.
        com>"
    },
    {
      "type": "text",
      "start": "2022-09-23T23:34:32.000+00:00",
      "duration": 0,
      "parties": [
        1
      ],
      "mediatype": "text/plain; charset=UTF-8",
      "encoding": "none",
      "body": "Hi Alice:\nAll is fine. Thanks.\n\n    On Friday, 
        September 23, 2022, 23:24:59 PM UTC, Alice <a@example.com
        > wrote:  \n \n  Hi Bob:\n  I just wanted to follow up to
         see that your account is ok now.\n  \n  Regards,\n  Alic
        e\n",
      "message_id": "<1879233410.402112.1663976072118@mail.yahoo.
        com>"
    },
    {
      "type": "text",
      "start": "2022-09-23T23:38:12.000+00:00",
      "duration": 0,
      "parties": [
        0
      ],
      "mediatype": "text/plain",
      "encoding": "none",
      "body": "Awesome!\n\n    On Friday, September 23, 2022, 23:
        34: PM UTC, Bob <b@example.com> wrote:  \n\n  Hi Alice:\n
          All is fine. Thanks.\n  \n      On Friday, September 23
        , 2022, 23:24:59 PM UTC, Alice <a@example.com> wrote:  \n
           \n    Hi Bob:\n    I just wanted to follow up to see t
        hat your account is ok now.\n    \n    Regards,\n    Alic
        e\n",
      "message_id": "<1535873320.402417.1663976292034@mail.yahoo.
        com>"
    }
  ],
  "analysis": [],
  "attachments": [],
  "created_at": "2026-10-24T01:29:12.007+00:00",
  "subject": "Account issue followup",
  "sessions": [
    {
      "start": "2022-09-23T23:24:59.000+00:00",
      "duration": 793,
      "parties": [
        0,
        1
      ],
      "dialog": [
        0,
        1,
        2
      ]
    }
  ],
  "uuid": "01a16b86-b24d-8057-b9a2-279e0d16bc46"
}
]]></artwork>
      </section>
      <section anchor="two-party-call-vcon-with-externally-referenced-recording">
        <name>Two Party Call vCon With Externally Referenced Recording</name>
        <t>This example vCon is for a simple 2 party PSTN call.
It has a single Dialog Object which reference a single channel wav format recording with the two parties audio mixed into the single channel.</t>
        <t>The unformatted version of the following example can be downloaded from:
https://raw.githubusercontent.com/ietf-wg-vcon/draft-ietf-vcon-vcon-core/refs/heads/main/examples/ab_call_ext_rec.vcon</t>
        <t>Note to the RFC Editor: This example, and its unformatted version at the URL above, contain the vcon parameter (see <xref target="vcon"/>), which is included in the Internet-Draft versions of this document to indicate the version of the schema upon which the example is based.
The vcon parameter is to be removed from the example and its unformatted version before publication as an RFC.
Please remove this note before publication.</t>
        <artwork><![CDATA[
{
  "vcon": "0.5.0",
  "created_at": "2022-06-21T13:53:00-04:00",
  "parties": [
    {
      "tel": "+12345678901",
      "name": "Alice"
    },
    {
      "tel": "+19876543210",
      "name": "Bob"
    }
  ],
  "dialog": [
    {
      "type": "recording",
      "start": "2022-06-21T17:53:26.000+00:00",
      "duration": 32.932396,
      "parties": [
        0,
        1
      ],
      "url": "https://github.com/ietf-wg-vcon/draft-ietf-vcon-vco
        n-core/raw/refs/heads/main/examples/ab_call_2ch.ogg",
      "mediatype": "audio/ogg",
      "filename": "ab_call_2ch.ogg",
      "content_hash": "sha512-Y-Q9eclT6b5hFyIfLtnFAAXgqFzN5_Cjr3J
        Q3DMmcnpXHkGMgtvaxrLW2R2OhFTzR-DinyrngBG2w9lTZXr1EQ"
    }
  ],
  "analysis": [],
  "attachments": [],
  "sessions": [
    {
      "start": "2022-06-21T17:53:26.000+00:00",
      "duration": 32.932396,
      "parties": [
        0,
        1
      ],
      "dialog": [
        0
      ]
    }
  ],
  "uuid": "01a16b86-96e7-80a8-b9a2-279e0d16bc46"
}
]]></artwork>
      </section>
      <section anchor="two-party-call-vcon-with-analysis">
        <name>Two Party Call vCon with Analysis</name>
        <t>The unformatted version of the following example can be downloaded from:
https://raw.githubusercontent.com/ietf-wg-vcon/draft-ietf-vcon-vcon-core/refs/heads/main/examples/ab_call_ext_rec_analysis.vcon</t>
        <t>Note to the RFC Editor: This example, and its unformatted version at the URL above, contain the vcon parameter (see <xref target="vcon"/>), which is included in the Internet-Draft versions of this document to indicate the version of the schema upon which the example is based.
The vcon parameter is to be removed from the example and its unformatted version before publication as an RFC.
Please remove this note before publication.</t>
        <artwork><![CDATA[
{
  "vcon": "0.5.0",
  "created_at": "2022-06-21T13:53:00-04:00",
  "parties": [
    {
      "tel": "+12345678901",
      "name": "Alice"
    },
    {
      "tel": "+19876543210",
      "name": "Bob"
    }
  ],
  "dialog": [
    {
      "type": "recording",
      "start": "2022-06-21T17:53:26.000+00:00",
      "duration": 32.932396,
      "parties": [
        0,
        1
      ],
      "url": "https://github.com/ietf-wg-vcon/draft-ietf-vcon-vco
        n-core/raw/refs/heads/main/examples/ab_call_2ch.ogg",
      "mediatype": "audio/ogg",
      "filename": "ab_call_2ch.ogg",
      "content_hash": "sha512-Y-Q9eclT6b5hFyIfLtnFAAXgqFzN5_Cjr3J
        Q3DMmcnpXHkGMgtvaxrLW2R2OhFTzR-DinyrngBG2w9lTZXr1EQ"
    }
  ],
  "analysis": [
    {
      "type": "transcript",
      "dialog": 0,
      "body": {
        "metadata": {
          "transaction_key": "deprecated",
          "request_id": "01a16b9c-30a8-7941-9b74-a9c73124938a",
          "sha256": "460145629244a6c72d4f0b94707ec3ca4e92da1ae11f
            e1d04a3fc88143795c63",
          "created": "2026-10-24T01:52:40.996Z",
          "duration": 32.925938,
          "channels": 2,
          "models": [
            "2187e11a-3532-4498-b076-81fa530bdd49"
          ],
          "model_info": {
            "2187e11a-3532-4498-b076-81fa530bdd49": {
              "name": "general-nova-3",
              "version": "2025-07-31.0",
              "arch": "nova-3"
            }
          },
          "diarize_info": {
            "model_uuid": "a9f85c2b-5afb-4b9d-b49b-492c43a01cfb",
            "arch": "v1"
          }
        },
        "results": {
          "channels": [
            {
              "alternatives": [
                {
                  "transcript": "Hi. I'd like to add Foo to my se
                    rvice. My name is Alice and my number is 1234
                    567890. No. Thank you. Goodbye.",
                  "confidence": 0.99609375,
                  "words": [
                    {
                      "word": "hi",
                      "start": 5.52,
                      "end": 6.16,
                      "confidence": 0.8781738,
                      "speaker": 0,
                      "speaker_confidence": 0.93691725,
                      "punctuated_word": "Hi."
                    },
                    {
                      "word": "i'd",
                      "start": 6.24,
                      "end": 6.56,
                      "confidence": 0.9951172,
                      "speaker": 0,
                      "speaker_confidence": 0.93691725,
                      "punctuated_word": "I'd"
                    },
                    {
                      "word": "like",
                      "start": 6.56,
                      "end": 6.72,
                      "confidence": 0.99902344,
                      "speaker": 0,
                      "speaker_confidence": 0.93691725,
                      "punctuated_word": "like"
                    },
                    {
                      "word": "to",
                      "start": 6.72,
                      "end": 6.7999997,
                      "confidence": 0.99902344,
                      "speaker": 0,
                      "speaker_confidence": 0.93691725,
                      "punctuated_word": "to"
                    },
                    {
                      "word": "add",
                      "start": 6.7999997,
                      "end": 7.12,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.93691725,
                      "punctuated_word": "add"
                    },
                    {
                      "word": "foo",
                      "start": 7.12,
                      "end": 7.52,
                      "confidence": 0.6496582,
                      "speaker": 0,
                      "speaker_confidence": 0.93691725,
                      "punctuated_word": "Foo"
                    },
                    {
                      "word": "to",
                      "start": 7.52,
                      "end": 7.8399997,
                      "confidence": 0.9902344,
                      "speaker": 0,
                      "speaker_confidence": 0.93691725,
                      "punctuated_word": "to"
                    },
                    {
                      "word": "my",
                      "start": 7.8399997,
                      "end": 8,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.93691725,
                      "punctuated_word": "my"
                    },
                    {
                      "word": "service",
                      "start": 8,
                      "end": 8.4,
                      "confidence": 0.99560547,
                      "speaker": 0,
                      "speaker_confidence": 0.93691725,
                      "punctuated_word": "service."
                    },
                    {
                      "word": "my",
                      "start": 13.695001,
                      "end": 13.935,
                      "confidence": 0.99609375,
                      "speaker": 0,
                      "speaker_confidence": 0.9877569,
                      "punctuated_word": "My"
                    },
                    {
                      "word": "name",
                      "start": 13.935,
                      "end": 14.175,
                      "confidence": 0.9980469,
                      "speaker": 0,
                      "speaker_confidence": 0.9877569,
                      "punctuated_word": "name"
                    },
                    {
                      "word": "is",
                      "start": 14.175,
                      "end": 14.255,
                      "confidence": 0.99902344,
                      "speaker": 0,
                      "speaker_confidence": 0.9877569,
                      "punctuated_word": "is"
                    },
                    {
                      "word": "alice",
                      "start": 14.255,
                      "end": 14.815001,
                      "confidence": 0.9902344,
                      "speaker": 0,
                      "speaker_confidence": 0.9877569,
                      "punctuated_word": "Alice"
                    },
                    {
                      "word": "and",
                      "start": 14.815001,
                      "end": 15.215,
                      "confidence": 0.7080078,
                      "speaker": 0,
                      "speaker_confidence": 0.9877569,
                      "punctuated_word": "and"
                    },
                    {
                      "word": "my",
                      "start": 15.215,
                      "end": 15.455,
                      "confidence": 0.99609375,
                      "speaker": 0,
                      "speaker_confidence": 0.9877569,
                      "punctuated_word": "my"
                    },
                    {
                      "word": "number",
                      "start": 15.455,
                      "end": 15.695,
                      "confidence": 0.9970703,
                      "speaker": 0,
                      "speaker_confidence": 0.9877569,
                      "punctuated_word": "number"
                    },
                    {
                      "word": "is",
                      "start": 15.695,
                      "end": 16.335,
                      "confidence": 0.9970703,
                      "speaker": 0,
                      "speaker_confidence": 0.9877569,
                      "punctuated_word": "is"
                    },
                    {
                      "word": "1234567890",
                      "start": 16.335,
                      "end": 20.255001,
                      "confidence": 0.9845703,
                      "speaker": 0,
                      "speaker_confidence": 0.98775685,
                      "punctuated_word": "1234567890."
                    },
                    {
                      "word": "no",
                      "start": 27.820936,
                      "end": 28.380938,
                      "confidence": 0.8015137,
                      "speaker": 0,
                      "speaker_confidence": 0.89424765,
                      "punctuated_word": "No."
                    },
                    {
                      "word": "thank",
                      "start": 28.380938,
                      "end": 28.700937,
                      "confidence": 0.9941406,
                      "speaker": 0,
                      "speaker_confidence": 0.89424765,
                      "punctuated_word": "Thank"
                    },
                    {
                      "word": "you",
                      "start": 28.700937,
                      "end": 29.180937,
                      "confidence": 0.98657227,
                      "speaker": 0,
                      "speaker_confidence": 0.89424765,
                      "punctuated_word": "you."
                    },
                    {
                      "word": "goodbye",
                      "start": 29.180937,
                      "end": 29.500937,
                      "confidence": 0.85009766,
                      "speaker": 0,
                      "speaker_confidence": 0.89424765,
                      "punctuated_word": "Goodbye."
                    }
                  ],
                  "paragraphs": {
                    "transcript": "\nSpeaker 0: Hi. I'd like to a
                      dd Foo to my service. My name is Alice and 
                      my number is 1234567890. No. Thank you.\n\n
                      Goodbye.",
                    "paragraphs": [
                      {
                        "sentences": [
                          {
                            "text": "Hi.",
                            "start": 5.52,
                            "end": 6.16
                          },
                          {
                            "text": "I'd like to add Foo to my se
                              rvice.",
                            "start": 6.24,
                            "end": 8.4
                          },
                          {
                            "text": "My name is Alice and my numb
                              er is 1234567890.",
                            "start": 13.695001,
                            "end": 20.255001
                          },
                          {
                            "text": "No.",
                            "start": 27.820936,
                            "end": 28.380938
                          },
                          {
                            "text": "Thank you.",
                            "start": 28.380938,
                            "end": 29.180937
                          }
                        ],
                        "speaker": 0,
                        "num_words": 21,
                        "start": 5.52,
                        "end": 29.180937
                      },
                      {
                        "sentences": [
                          {
                            "text": "Goodbye.",
                            "start": 29.180937,
                            "end": 29.500937
                          }
                        ],
                        "speaker": 0,
                        "num_words": 1,
                        "start": 29.180937,
                        "end": 29.500937
                      }
                    ]
                  }
                }
              ]
            },
            {
              "alternatives": [
                {
                  "transcript": "Hello. This is example.com. My n
                    ame is Bob. How can I help you? Okay. Can you
                     give me your name and phone number so I can 
                    look up your account? Thank you. Okay. I've a
                    dded food to your service. Is there anything 
                    else I can help you with? Goodbye. Have a nic
                    e day.",
                  "confidence": 1,
                  "words": [
                    {
                      "word": "hello",
                      "start": 1.12,
                      "end": 1.68,
                      "confidence": 0.9790039,
                      "speaker": 0,
                      "speaker_confidence": 0.5035404,
                      "punctuated_word": "Hello."
                    },
                    {
                      "word": "this",
                      "start": 1.68,
                      "end": 2.08,
                      "confidence": 0.99902344,
                      "speaker": 0,
                      "speaker_confidence": 0.5035404,
                      "punctuated_word": "This"
                    },
                    {
                      "word": "is",
                      "start": 2.08,
                      "end": 2.24,
                      "confidence": 0.9951172,
                      "speaker": 0,
                      "speaker_confidence": 0.5035404,
                      "punctuated_word": "is"
                    },
                    {
                      "word": "example.com",
                      "start": 2.24,
                      "end": 3.28,
                      "confidence": 0.939209,
                      "speaker": 0,
                      "speaker_confidence": 0.5035404,
                      "punctuated_word": "example.com."
                    },
                    {
                      "word": "my",
                      "start": 3.28,
                      "end": 3.4399998,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.5035404,
                      "punctuated_word": "My"
                    },
                    {
                      "word": "name",
                      "start": 3.4399998,
                      "end": 3.6,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.5035404,
                      "punctuated_word": "name"
                    },
                    {
                      "word": "is",
                      "start": 3.6,
                      "end": 3.6799998,
                      "confidence": 0.99902344,
                      "speaker": 0,
                      "speaker_confidence": 0.5035404,
                      "punctuated_word": "is"
                    },
                    {
                      "word": "bob",
                      "start": 3.6799998,
                      "end": 4.16,
                      "confidence": 0.99853516,
                      "speaker": 0,
                      "speaker_confidence": 0.5035404,
                      "punctuated_word": "Bob."
                    },
                    {
                      "word": "how",
                      "start": 4.16,
                      "end": 4.4,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.24978054,
                      "punctuated_word": "How"
                    },
                    {
                      "word": "can",
                      "start": 4.4,
                      "end": 4.56,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.24978054,
                      "punctuated_word": "can"
                    },
                    {
                      "word": "i",
                      "start": 4.56,
                      "end": 4.64,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.24978054,
                      "punctuated_word": "I"
                    },
                    {
                      "word": "help",
                      "start": 4.64,
                      "end": 4.88,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.24978054,
                      "punctuated_word": "help"
                    },
                    {
                      "word": "you",
                      "start": 4.88,
                      "end": 5.36,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.24978054,
                      "punctuated_word": "you?"
                    },
                    {
                      "word": "okay",
                      "start": 9.04,
                      "end": 9.759999,
                      "confidence": 0.99853516,
                      "speaker": 0,
                      "speaker_confidence": 0.42573488,
                      "punctuated_word": "Okay."
                    },
                    {
                      "word": "can",
                      "start": 10.08,
                      "end": 10.32,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.42573488,
                      "punctuated_word": "Can"
                    },
                    {
                      "word": "you",
                      "start": 10.32,
                      "end": 10.4,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.42573488,
                      "punctuated_word": "you"
                    },
                    {
                      "word": "give",
                      "start": 10.4,
                      "end": 10.559999,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.42573488,
                      "punctuated_word": "give"
                    },
                    {
                      "word": "me",
                      "start": 10.559999,
                      "end": 10.719999,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.42573488,
                      "punctuated_word": "me"
                    },
                    {
                      "word": "your",
                      "start": 10.719999,
                      "end": 10.88,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.49732846,
                      "punctuated_word": "your"
                    },
                    {
                      "word": "name",
                      "start": 10.88,
                      "end": 11.12,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.49732846,
                      "punctuated_word": "name"
                    },
                    {
                      "word": "and",
                      "start": 11.12,
                      "end": 11.28,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.49732846,
                      "punctuated_word": "and"
                    },
                    {
                      "word": "phone",
                      "start": 11.28,
                      "end": 11.5199995,
                      "confidence": 0.99902344,
                      "speaker": 0,
                      "speaker_confidence": 0.49732846,
                      "punctuated_word": "phone"
                    },
                    {
                      "word": "number",
                      "start": 11.5199995,
                      "end": 11.679999,
                      "confidence": 0.99902344,
                      "speaker": 0,
                      "speaker_confidence": 0.49732846,
                      "punctuated_word": "number"
                    },
                    {
                      "word": "so",
                      "start": 11.679999,
                      "end": 11.92,
                      "confidence": 0.9350586,
                      "speaker": 0,
                      "speaker_confidence": 0.49732846,
                      "punctuated_word": "so"
                    },
                    {
                      "word": "i",
                      "start": 11.92,
                      "end": 12.08,
                      "confidence": 0.99902344,
                      "speaker": 0,
                      "speaker_confidence": 0.49732846,
                      "punctuated_word": "I"
                    },
                    {
                      "word": "can",
                      "start": 12.08,
                      "end": 12.16,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.2417295,
                      "punctuated_word": "can"
                    },
                    {
                      "word": "look",
                      "start": 12.16,
                      "end": 12.32,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.2417295,
                      "punctuated_word": "look"
                    },
                    {
                      "word": "up",
                      "start": 12.32,
                      "end": 12.48,
                      "confidence": 0.9921875,
                      "speaker": 0,
                      "speaker_confidence": 0.2417295,
                      "punctuated_word": "up"
                    },
                    {
                      "word": "your",
                      "start": 12.48,
                      "end": 12.639999,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.2417295,
                      "punctuated_word": "your"
                    },
                    {
                      "word": "account",
                      "start": 12.639999,
                      "end": 13.04,
                      "confidence": 0.9980469,
                      "speaker": 0,
                      "speaker_confidence": 0.2417295,
                      "punctuated_word": "account?"
                    },
                    {
                      "word": "thank",
                      "start": 20.635,
                      "end": 20.955,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.492307,
                      "punctuated_word": "Thank"
                    },
                    {
                      "word": "you",
                      "start": 20.955,
                      "end": 21.435,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.492307,
                      "punctuated_word": "you."
                    },
                    {
                      "word": "okay",
                      "start": 22.795,
                      "end": 23.515,
                      "confidence": 0.9995117,
                      "speaker": 0,
                      "speaker_confidence": 0.492307,
                      "punctuated_word": "Okay."
                    },
                    {
                      "word": "i've",
                      "start": 23.994999,
                      "end": 24.395,
                      "confidence": 0.99853516,
                      "speaker": 0,
                      "speaker_confidence": 0.492307,
                      "punctuated_word": "I've"
                    },
                    {
                      "word": "added",
                      "start": 24.395,
                      "end": 24.715,
                      "confidence": 0.99902344,
                      "speaker": 0,
                      "speaker_confidence": 0.492307,
                      "punctuated_word": "added"
                    },
                    {
                      "word": "food",
                      "start": 24.715,
                      "end": 24.955,
                      "confidence": 0.9580078,
                      "speaker": 0,
                      "speaker_confidence": 0.492307,
                      "punctuated_word": "food"
                    },
                    {
                      "word": "to",
                      "start": 24.955,
                      "end": 25.115,
                      "confidence": 0.96435547,
                      "speaker": 0,
                      "speaker_confidence": 0.492307,
                      "punctuated_word": "to"
                    },
                    {
                      "word": "your",
                      "start": 25.115,
                      "end": 25.275,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.492307,
                      "punctuated_word": "your"
                    },
                    {
                      "word": "service",
                      "start": 25.275,
                      "end": 25.595001,
                      "confidence": 0.99560547,
                      "speaker": 0,
                      "speaker_confidence": 0.492307,
                      "punctuated_word": "service."
                    },
                    {
                      "word": "is",
                      "start": 25.595001,
                      "end": 25.755001,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.49394125,
                      "punctuated_word": "Is"
                    },
                    {
                      "word": "there",
                      "start": 25.755001,
                      "end": 25.915,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.49394125,
                      "punctuated_word": "there"
                    },
                    {
                      "word": "anything",
                      "start": 25.915,
                      "end": 26.154999,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.49394125,
                      "punctuated_word": "anything"
                    },
                    {
                      "word": "else",
                      "start": 26.154999,
                      "end": 26.395,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.49394125,
                      "punctuated_word": "else"
                    },
                    {
                      "word": "i",
                      "start": 26.395,
                      "end": 26.635,
                      "confidence": 0.97314453,
                      "speaker": 0,
                      "speaker_confidence": 0.49394125,
                      "punctuated_word": "I"
                    },
                    {
                      "word": "can",
                      "start": 26.635,
                      "end": 26.795,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.49394125,
                      "punctuated_word": "can"
                    },
                    {
                      "word": "help",
                      "start": 26.795,
                      "end": 26.955,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.49394125,
                      "punctuated_word": "help"
                    },
                    {
                      "word": "you",
                      "start": 26.955,
                      "end": 27.035,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.49394125,
                      "punctuated_word": "you"
                    },
                    {
                      "word": "with",
                      "start": 27.035,
                      "end": 27.275,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.49394125,
                      "punctuated_word": "with?"
                    },
                    {
                      "word": "goodbye",
                      "start": 30.320875,
                      "end": 30.960875,
                      "confidence": 0.99121094,
                      "speaker": 0,
                      "speaker_confidence": 0.21964735,
                      "punctuated_word": "Goodbye."
                    },
                    {
                      "word": "have",
                      "start": 30.960875,
                      "end": 31.200874,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.21964735,
                      "punctuated_word": "Have"
                    },
                    {
                      "word": "a",
                      "start": 31.200874,
                      "end": 31.360876,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.21964735,
                      "punctuated_word": "a"
                    },
                    {
                      "word": "nice",
                      "start": 31.360876,
                      "end": 31.520876,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0.21964735,
                      "punctuated_word": "nice"
                    },
                    {
                      "word": "day",
                      "start": 31.520876,
                      "end": 31.760876,
                      "confidence": 1,
                      "speaker": 0,
                      "speaker_confidence": 0,
                      "punctuated_word": "day."
                    }
                  ],
                  "paragraphs": {
                    "transcript": "\nSpeaker 0: Hello. This is ex
                      ample.com. My name is Bob. How can I help y
                      ou? Okay.\n\nCan you give me your name and 
                      phone number so I can look up your account?
                       Thank you. Okay. I've added food to your s
                      ervice. Is there anything else I can help y
                      ou with?\n\nGoodbye. Have a nice day.",
                    "paragraphs": [
                      {
                        "sentences": [
                          {
                            "text": "Hello.",
                            "start": 1.12,
                            "end": 1.68
                          },
                          {
                            "text": "This is example.com.",
                            "start": 1.68,
                            "end": 3.28
                          },
                          {
                            "text": "My name is Bob.",
                            "start": 3.28,
                            "end": 4.16
                          },
                          {
                            "text": "How can I help you?",
                            "start": 4.16,
                            "end": 5.36
                          },
                          {
                            "text": "Okay.",
                            "start": 9.04,
                            "end": 9.759999
                          }
                        ],
                        "speaker": 0,
                        "num_words": 14,
                        "start": 1.12,
                        "end": 9.759999
                      },
                      {
                        "sentences": [
                          {
                            "text": "Can you give me your name an
                              d phone number so I can look up you
                              r account?",
                            "start": 10.08,
                            "end": 13.04
                          },
                          {
                            "text": "Thank you.",
                            "start": 20.635,
                            "end": 21.435
                          },
                          {
                            "text": "Okay.",
                            "start": 22.795,
                            "end": 23.515
                          },
                          {
                            "text": "I've added food to your serv
                              ice.",
                            "start": 23.994999,
                            "end": 25.595001
                          },
                          {
                            "text": "Is there anything else I can
                               help you with?",
                            "start": 25.595001,
                            "end": 27.275
                          }
                        ],
                        "speaker": 0,
                        "num_words": 34,
                        "start": 10.08,
                        "end": 27.275
                      },
                      {
                        "sentences": [
                          {
                            "text": "Goodbye.",
                            "start": 30.320875,
                            "end": 30.960875
                          },
                          {
                            "text": "Have a nice day.",
                            "start": 30.960875,
                            "end": 31.760876
                          }
                        ],
                        "speaker": 0,
                        "num_words": 5,
                        "start": 30.320875,
                        "end": 31.760876
                      }
                    ]
                  }
                }
              ]
            }
          ],
          "paragraphs": {
            "transcript": "\nChannel 1: Speaker 0: Hello. This is
               example.com. My name is Bob. How can I help you?\n
              \nChannel 0: Hi. I'd like to add Foo to my service.
              \n\nChannel 1: Okay. Can you give me your name and 
              phone number so I can look up your account?\n\nChan
              nel 0: My name is Alice and my number is 1234567890
              .\n\nChannel 1: Thank you. Okay. I've added food to
               your service. Is there anything else I can help yo
              u with?\n\nChannel 0: No. Thank you. Goodbye.\n\nCh
              annel 1: Goodbye. Have a nice day.",
            "paragraphs": [
              {
                "sentences": [
                  {
                    "text": "Hello.",
                    "start": 1.12,
                    "end": 1.68
                  },
                  {
                    "text": "This is example.com.",
                    "start": 1.68,
                    "end": 3.28
                  },
                  {
                    "text": "My name is Bob.",
                    "start": 3.28,
                    "end": 4.16
                  },
                  {
                    "text": "How can I help you?",
                    "start": 4.16,
                    "end": 5.36
                  }
                ],
                "speaker": 0,
                "channel": 1,
                "num_words": 13,
                "start": 1.12,
                "end": 5.36
              },
              {
                "sentences": [
                  {
                    "text": "Hi.",
                    "start": 5.52,
                    "end": 6.16
                  },
                  {
                    "text": "I'd like to add Foo to my service.",
                    "start": 6.24,
                    "end": 8.4
                  }
                ],
                "speaker": 0,
                "channel": 0,
                "num_words": 9,
                "start": 5.52,
                "end": 8.4
              },
              {
                "sentences": [
                  {
                    "text": "Okay.",
                    "start": 9.04,
                    "end": 9.759999
                  },
                  {
                    "text": "Can you give me your name and phone 
                      number so I can look up your account?",
                    "start": 10.08,
                    "end": 13.04
                  }
                ],
                "speaker": 0,
                "channel": 1,
                "num_words": 17,
                "start": 9.04,
                "end": 13.04
              },
              {
                "sentences": [
                  {
                    "text": "My name is Alice and my number is 12
                      34567890.",
                    "start": 13.695001,
                    "end": 20.255001
                  }
                ],
                "speaker": 0,
                "channel": 0,
                "num_words": 9,
                "start": 13.695001,
                "end": 20.255001
              },
              {
                "sentences": [
                  {
                    "text": "Thank you.",
                    "start": 20.635,
                    "end": 21.435
                  },
                  {
                    "text": "Okay.",
                    "start": 22.795,
                    "end": 23.515
                  },
                  {
                    "text": "I've added food to your service.",
                    "start": 23.994999,
                    "end": 25.595001
                  },
                  {
                    "text": "Is there anything else I can help yo
                      u with?",
                    "start": 25.595001,
                    "end": 27.275
                  }
                ],
                "speaker": 0,
                "channel": 1,
                "num_words": 18,
                "start": 20.635,
                "end": 27.275
              },
              {
                "sentences": [
                  {
                    "text": "No.",
                    "start": 27.820936,
                    "end": 28.380938
                  },
                  {
                    "text": "Thank you.",
                    "start": 28.380938,
                    "end": 29.180937
                  },
                  {
                    "text": "Goodbye.",
                    "start": 29.180937,
                    "end": 29.500937
                  }
                ],
                "speaker": 0,
                "channel": 0,
                "num_words": 4,
                "start": 27.820936,
                "end": 29.500937
              },
              {
                "sentences": [
                  {
                    "text": "Goodbye.",
                    "start": 30.320875,
                    "end": 30.960875
                  },
                  {
                    "text": "Have a nice day.",
                    "start": 30.960875,
                    "end": 31.760876
                  }
                ],
                "speaker": 0,
                "channel": 1,
                "num_words": 5,
                "start": 30.320875,
                "end": 31.760876
              }
            ]
          }
        }
      },
      "encoding": "json",
      "vendor": "deepgram",
      "schema": "deepgram_prerecorded",
      "product": "transcription"
    }
  ],
  "attachments": [],
  "sessions": [
    {
      "start": "2022-06-21T17:53:26.000+00:00",
      "duration": 32.932396,
      "parties": [
        0,
        1
      ],
      "dialog": [
        0
      ]
    }
  ],
  "uuid": "01a16b86-96e7-80a8-b9a2-279e0d16bc46"
}
]]></artwork>
      </section>
      <section anchor="signed-vcon">
        <name>Signed vCon</name>
        <t>This example vCon is the signed form of the <xref target="two-party-call-vcon-with-externally-referenced-recording">Two Party Call vCon With Externally Referenced Recording</xref> example.
The private key used to sign this can be found at:</t>
        <artwork><![CDATA[
https://raw.githubusercontent.com/vcon-dev/vcon/main/certs/fake_grp.key
]]></artwork>
        <t>The certificate chain is included in the x5c parameter of the header Object.</t>
        <t>The unformatted version of the following example can be downloaded from:
https://raw.githubusercontent.com/ietf-wg-vcon/draft-ietf-vcon-vcon-core/refs/heads/main/examples/ab_call_ext_rec_signed.vcon</t>
        <t>Note to the RFC Editor: This example, and its unformatted version at the URL above, contain the vcon parameter (see <xref target="vcon"/>), which is included in the Internet-Draft versions of this document to indicate the version of the schema upon which the example is based.
The vcon parameter is to be removed from the example and its unformatted version before publication as an RFC.
Please remove this note before publication.</t>
        <artwork><![CDATA[
{
  "payload": "eyJ2Y29uIjoiMC41LjAiLCJjcmVhdGVkX2F0IjoiMjAyMi0wNi0
    yMVQxMzo1MzowMC0wNDowMCIsInBhcnRpZXMiOlt7InRlbCI6IisxMjM0NTY3
    ODkwMSIsIm5hbWUiOiJBbGljZSJ9LHsidGVsIjoiKzE5ODc2NTQzMjEwIiwib
    mFtZSI6IkJvYiJ9XSwiZGlhbG9nIjpbeyJ0eXBlIjoicmVjb3JkaW5nIiwic3
    RhcnQiOiIyMDIyLTA2LTIxVDE3OjUzOjI2LjAwMCswMDowMCIsImR1cmF0aW9
    uIjozMi45MzIzOTYsInBhcnRpZXMiOlswLDFdLCJ1cmwiOiJodHRwczovL2dp
    dGh1Yi5jb20vaWV0Zi13Zy12Y29uL2RyYWZ0LWlldGYtdmNvbi12Y29uLWNvc
    mUvcmF3L3JlZnMvaGVhZHMvbWFpbi9leGFtcGxlcy9hYl9jYWxsXzJjaC5vZ2
    ciLCJtZWRpYXR5cGUiOiJhdWRpby9vZ2ciLCJmaWxlbmFtZSI6ImFiX2NhbGx
    fMmNoLm9nZyIsImNvbnRlbnRfaGFzaCI6InNoYTUxMi1ZLVE5ZWNsVDZiNWhG
    eUlmTHRuRkFBWGdxRnpONV9DanIzSlEzRE1tY25wWEhrR01ndHZheHJMVzJSM
    k9oRlR6Ui1EaW55cm5nQkcydzlsVFpYcjFFUSJ9XSwiYW5hbHlzaXMiOltdLC
    JhdHRhY2htZW50cyI6W10sInNlc3Npb25zIjpbeyJzdGFydCI6IjIwMjItMDY
    tMjFUMTc6NTM6MjYuMDAwKzAwOjAwIiwiZHVyYXRpb24iOjMyLjkzMjM5Niwi
    cGFydGllcyI6WzAsMV0sImRpYWxvZyI6WzBdfV0sInV1aWQiOiIwMWExNmI4N
    i05NmU3LTgwYTgtYjlhMi0yNzllMGQxNmJjNDYifQ",
  "signatures": [
    {
      "header": {
        "x5c": [
          "MIID0TCCArkCAQEwDQYJKoZIhvcNAQELBQAwgasxCzAJBgNVBAYTAl
            VTMQswCQYDVQQIDAJNQTERMA8GA1UEBwwIRmFrZXRvd24xETAPBgN
            VBAoMCEZha2VWY29uMREwDwYDVQQLDAhEaXZpc2lvbjEYMBYGA1UE
            AwwPZGl2LmZha2V2Y29uLmlvMSEwHwYJKoZIhvcNAQkBFhJhZG1pb
            kBmYWtldmNvbi5vcmcxGTAXBgNVHREMEGRpdi5mYWtldmNvbi5vcm
            cwHhcNMjIwNjA0MDE0MzI1WhcNMzIwNjAxMDE0MzI1WjCBsDELMAk
            GA1UEBhMCVVMxCzAJBgNVBAgMAk1BMREwDwYDVQQHDAhGYWtldG93
            bjERMA8GA1UECgwIRmFrZVZjb24xDjAMBgNVBAsMBUdyb3VwMRwwG
            gYDVQQDDBNncnAuZGl2LmZha2V2Y29uLmlvMSEwHwYJKoZIhvcNAQ
            kBFhJhZG1pbkBmYWtldmNvbi5vcmcxHTAbBgNVHREMFGdycC5kaXY
            uZmFrZXZjb24ub3JnMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
            CgKCAQEAtMtTCxeIROb1FmWIexe7Op95qYIVNEqn+fDghxWqoYm6T
            75BGsl4rB9txFQeef3Q5SJIzeqffJDssXDsyREuwQ2iTcOrZaZxs8
            h1NX9NjVD6MMAwx7tw0Cgmu8rj6+/Kjs0KI8OzCuDXZGTGf/bH6EQ
            W85qYh9IF0Pvijf3uq+HCke6WApusx76LpUp36IzvYEuTbWBFeoLo
            +dyUdWmXpj0ghHiWZtT5zxJn9VrUhJX5KlaI0palWd0fOnr7mkdq7
            9sFsKjEOcr1lanceAicCpD3/zRW+7AS8atGKAMfe2CcXEABucI7Dt
            tLMXcDIJM6EOkyW7n4due1RXGuNgnjeQIDAQABMA0GCSqGSIb3DQE
            BCwUAA4IBAQAQLjhKomSx1OqThhcO+aK0rzX6RjKh0eM0X7O7pPC8
            1HxZKCDLhDvnUO9++17U6ba0bTnznKYKKG7HnDcB4dKBbH8XP2u3E
            nDskyoMrKpYRsRKwwJa8+RwOS7JEg+OtXYCRbWZvPjAC/z6o6OZK+
            QPTyK5Grw2Px2mTr6BAdBQv7XsYWBRwOZyvSGnKyK60jcPlYUnu6Q
            t0fYXiYp6qF5l956fuT0d2UyDkM7S/Z7K+OC9+aIBNKH32B3nfXqZ
            PuP8WuiTOxcMwnefPwjxaqndFUkyk2Y+i6nXU8oN/DGUOTfY4xbm3
            s3q7Dq5QPtq5kljB9yYkvcOULCSAmWBZl+G",
          "MIIEyTCCArECAQEwDQYJKoZIhvcNAQELBQAwgagxCzAJBgNVBAYTAl
            VTMQswCQYDVQQIDAJNQTERMA8GA1UEBwwIRmFrZXRvd24xFTATBgN
            VBAoMDEZha2VWY29uIEluYzESMBAGA1UECwwJQ29ycG9yYXRlMRQw
            EgYDVQQDDAtmYWtldmNvbi5pbzEhMB8GCSqGSIb3DQEJARYSYWRta
            W5AZmFrZXZjb24ub3JnMRUwEwYDVR0RDAxmYWtldmNvbi5vcmcwHh
            cNMjIwNTI5MjEzOTMxWhcNMzIwNTI2MjEzOTMxWjCBqzELMAkGA1U
            EBhMCVVMxCzAJBgNVBAgMAk1BMREwDwYDVQQHDAhGYWtldG93bjER
            MA8GA1UECgwIRmFrZVZjb24xETAPBgNVBAsMCERpdmlzaW9uMRgwF
            gYDVQQDDA9kaXYuZmFrZXZjb24uaW8xITAfBgkqhkiG9w0BCQEWEm
            FkbWluQGZha2V2Y29uLm9yZzEZMBcGA1UdEQwQZGl2LmZha2V2Y29
            uLm9yZzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM81
            SKie1S78VAOBDc3LflYNSL9phecmjQs/9P+iqDXSVm3xpoqszGoLn
            7w21aUAxl++F9Z80Tc70URn2qqUcVTYcx3SmgHuYgspEmJsMRor/m
            n3HpHr2ajh+26RKgDGPBrtebeH1si8mX15a/ICzHxrUaE2Y/6DZ/2
            wGTXrAE4bYAOUaYft5GGSZl6yP6dXg3EJy2bK2cUTdMIZG/Y7Ny1D
            3N4V7MBirDd5FU7k6pMbyr3d/xoi8VL8F1mRCf6zxfFOjaMFT0atE
            iTp3M0rw6iS08hy0cDFsPJzIcPgXEitUgGPo/NLgeb8ZmL1kg9B2v
            MgaanbuZB6il79A4GgDIUCAwEAATANBgkqhkiG9w0BAQsFAAOCAgE
            AWOJJlvSQDsDROQZNdX3kMkAH3HYyAlE7LHNtIYHVhyt7I7WuqS6Z
            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
            g=="
        ],
        "uuid": "01a16b86-96e7-80a8-b9a2-279e0d16bc46"
      },
      "signature": "HJA8mITP_gPp5FjIA2qw982rnUP44vDSeJRYGNXCxZhWm
        1c5dGRTlpbssDFBweCE_eOHpi8O2GhIulx9XBod3NgColJu2FDBC6mmk7
        5ke37A2AmSBuIl6AhQpEkfs6FRunG9OQ3I-r6dok9WHYI7JmgqcZY-2GH
        vzCIMW3LgaJZ1Vdt7TK3vqMR_Nn8Cpo3jkodtwMAuXivUtHWz4oldkScz
        uVqUMKtawLIU0GvPMfShR1C7ayuWgXkg7f1yiU9cKNtQM-biEyvIfGe_3
        tSPl6G09IToJRo-17Ji1qmm1eTaMwudG4hWvFmlvWnQCq-QRFi30gfBYV
        EYyrAJj7p_Bg",
      "protected": "eyJhbGciOiJSUzI1NiJ9"
    }
  ]
}
]]></artwork>
      </section>
      <section anchor="encrypted-vcon">
        <name>Encrypted vCon</name>
        <t>This example vCon is the encrypted form of the <xref target="signed-vcon">Signed vCon</xref> example.
The private key to decrypt it can be found at:</t>
        <artwork><![CDATA[
https://raw.githubusercontent.com/vcon-dev/vcon/main/certs/fake_grp.key
]]></artwork>
        <t>The unformatted version of the following example can be downloaded from:
https://raw.githubusercontent.com/ietf-wg-vcon/draft-ietf-vcon-vcon-core/refs/heads/main/examples/ab_call_ext_rec_encrypted.vcon</t>
        <t>Note to the RFC Editor: This example, and its unformatted version at the URL above, contain the vcon parameter (see <xref target="vcon"/>), which is included in the Internet-Draft versions of this document to indicate the version of the schema upon which the example is based.
The vcon parameter is to be removed from the example and its unformatted version before publication as an RFC.
Please remove this note before publication.</t>
        <artwork><![CDATA[
{
  "protected": "eyJhbGciOiJSU0EtT0FFUCIsImVuYyI6IkEyNTZDQkMtSFM1M
    TIifQ",
  "iv": "2LXY42Qg-9NPezg9KrThkQ",
  "ciphertext": "tntDlZelgX_ECWMNDZ_gV14bCDhEPlBJS84xDDN_7P2jpyi0
    EzWZWIQyhomCGVI-doUnVEbWRi3dfkF3t_uOOZIZ4F5-2ebiE94E6_JgJKHj0
    ow92cO_l5jGcnt_U8nNWJU2m1gm0E_TyAkbGvoGWeBcvfunof5YbnQFVC0WZ9
    Jns-JnY3mEKF18Z_ZKUyDrd9Q-b_MDDfrgfnVbCToGAupX7t26cgTFcEBudRX
    xeDbe-YJ2BaIN5GEPXT2Jeu4Aamq82hIdog8woW_QPpWGr6R44TjKLxz7n0AB
    ny2mHy6vNbpyzG3_EpTqGWbfsDlM11ObJR2sViKVb18u1-bEGFbRQgL9NlLkt
    B3QsK-j8j9Lc4hNqlCLLYE5cfSqkATPQJWevOdNuvri1FUZSlwo165_Gqu812
    Fl94UcL0YHDStPZILL0b-G2CxAq-mcwoQXW6-ZlSj5aFIJAQuMl5KlEPSzIno
    kHr7Uuzr1sQofGIKfsw6nLCnP4N1Ijr6ulxNmKVn6TXa2koWYhUoTFx8iPMeV
    iXoIIAwkljQytXSVOOw8cGh3SrKEVSIsoKwFQpL0S5N_MWVBcZhhUmHF0BfOI
    M0pxevJYdA7T2rAiKgCDer-ofPe1l3bS21joWsHrRcxhNEHYddZL4FwgZV14X
    6Nf9IglGLjo-iihenziSoE9njdBGwoctcGNosH_PvEmP1snfUjAZ81cdC9khw
    JIevVR6YU8liub7QOrI6vgFhoYDJVIO-d8fCNAL5Bx7Yh_--pPP2uTd6USTY4
    KGJhncbmT0YOqmY2ccwvrU4C395Lj-ZncDjbs0GKF8FawIGiP7KYT_ndsje_5
    _HdMCgkatrudRiNw8NGwQyt1idwF8aY5jVkI_RTg5i5tBs_PV3CT3-2oHCaKz
    fSvMvuwKR1cWJava7sh6G4EFNWo8FAjAhsUVNLkXySh0o6TI96MEFJPsspXeA
    nf9rtZmQ1o2CCbYrXlmtr7eB4G2BhRzmxENFWA7EGBK6WG8KwxvQ3WRsXkmt4
    cybNAFVIe9Juhw3IpMLXhwSWQFWfqzU53bz856b6pC5IBMcdZ2AcwW3wjfEWA
    XvI56V4rTLtqF2rcHxoO2D_goTL2G6r4zuPHn2anJd7j-WlEBdpBTGYLwdlB3
    42xAu49G1J04i2pqnkp1MGL43C6-RqFhyg5V1iYDySTRJIR057zku7ch4Fn7U
    T_GOVnXxLZHjFZHNLwEvbicj8s6UaQWrsCoL3_KwB8hoZYM7SEXp37KApRI2b
    4BqnIs3OEDnXRmv3Mr5IDXqBTMq7i7WCW1vikF5YvwPljhDZO05wC7t647435
    FVz8-bssvSJRPz973HD2u7aJc8Cm_i0HXz3iIto7xx10c9QNXtHs_QPeQ8omQ
    C8PpGDW09F6vgJY6VV6LkunFtRxmEpnA72F0oK4n7QxwRBe8I5a_wUot0RyQD
    z5j6PpdWe-vv9dfzm7uskZbTQCugM_NOqq3AqLndtDcUYUVUIAN9bienC--dM
    DuevNHyeMCUuF01X_EoLglcD6UMKyrZsPOIU9OpOyd1t_xNIRObQKk6Crahzl
    Md-Wa5bBJ6PT4eZtIT-3S8r9ucF6ZM2IeSZBPRxxLiGnTygKtVVfI5nwDSloR
    l1PFzR4A9YHY4mQcWB796eyP9l62cMtdRKveM5sh4CzPNdoIjgI-V-_YdV27L
    UJW3UMO5VXXEBF0mHmCvHZ_dJvxvTrXtqyG7uFICvfm6Pq_fjJ5pJUQwicLgJ
    JhJrPZldyvMIinh_nJgbDTeg_QM0xsxoavVGggaqktlQDOOJTLwODugi_9T87
    pUNUGR2LKW8XQVbXZIk_3G--AA6fvFh5rNZk5h5R589SDTodDI6URlt0KSKKX
    xI7KO2NIXRIHzSOsTdENv2p4O4D8faWREYs8P8QYSvnKcHMpYTr3jVYOIEDuP
    Ypi3p25dmc7mUfDR_GzybN1APK9WbjLQ67u46ie8jUEBpSqMBNw5JW_UJn-ju
    29mw8NCfJIl1I-BIb4x-CvYGKK1oNqVsymXy68mNcqSajHUnI3-fD_WbMYlmY
    mG35RxA8Z_IiueuOiM_MY6NkpSVClp6_e0ho7UbgcOfb4X4pngNHhDR6MyqP7
    j5Li6anHVGODh3n6-EKxr4jDsGdZzw740uGoKQeqI0PcuOMO4nUQUXyUWwAQU
    RtJ4_zfz2DIYET4Hi8VuQCp6NH6Gzt-mjYwKxKuRvjYUOCnJQWqeb66J5acuY
    zfUjCil4sLgQoalAFwN0x8jgB0QOQsFEE1YW-KHdkBNN7TKntz9jY-awL6-ue
    UBMs6w2LmuRzx1Mxb-Sxi8dZMhHC2F6FgEeHU1No2CGGTg3ab1tjCQaTBGuFg
    -YVlsWee_GLDPivX8YXD5fFu59mtS7e_ybpn2nq0OKgktzFuV2f9P8Mr62z9M
    yDYEXm9222-146-Z_z9CI3SzfL5oh_pF4UCKigHCrtEhiogrCe_1GcDYstUdN
    gY3ynQ6NGovi3KfkepQH9EkOkTS4sumUayT5X2Umy3jIPsKeyDL3vNzvaMJ6h
    dJRLTbEs8n2l8KHslXm22pFRqRTx-04vw49KANvikMStuCT3Mb8GodSs7f9xr
    nST0wjlVs1w3EHxcN3y5WJzj5LgeliPxQcDTbnnGY8AM-KET3qQ2jBv4uMwCk
    fh6TZxhTeIqizj7ER04qFfCITmZoYykSOpcZpO47O9hehRfgtqJDgi_nPZGUe
    C2xNiDT5QMJP6JOUaYW6W5-0Zl-KbtMKRc_Dtl_lKL2gflUPq63ABPYZO0EEi
    pzyq3boaULteaX65tv9v6fnE-o8exnRmlUbwbZCRl3b4OvAe90krnKttS8GC1
    mUBn_PFQdbZeI0iFWcNIUnfpq7QLMNnx_j0V33wHlA8qYeAP9uEUuswtdot7m
    bKumZ_2T23_QuKFO-VbBxUQ8Uu1hiyPwEzDPVg8ZjLlFKYiYSST5pEIA202Kn
    rLbRZzWV5d43o-5nBJP9PIVh6bz7nbYYhTMffSZRdZsj2kehIhE3M2rvVBVDk
    OVXESX0g1rEmT4teL7sNKjfO4i9h3AM-uwQm5TJW5-0UMYn_t5kdDOy02PSeX
    06vgKOIeUanwtdmLfFFM77JSielGHrrCGrjWPHEqO8s5yQMZxxEtr7exk2Zxq
    BCfCdgpJf-uNsLScYhHmixXOtc9XdWXXC9Uy6nVIBIbetrHmySUWYM4Vomxcn
    ywu6pCIfQqadB3LKNHnreN4WcMf9qoh1GRzQci_H7B8mpQj7QG8kgHNSLzqZd
    qQjlVZUxwTAPikhRoGoFlDDBZQPdjt7iNHJtm1JCVtKBK6ix3M8vn86KJ0koR
    M2uysbBKIIwYRL7Y1tyB10zEuT4qVi6p50w1h7qEmRC7rdnGc523n5aQN07wm
    JyhhgilJ6B4XkXf-dwEHGjczgztS1FWS6uD8C7TCWKQn9EUOz2ZvD4NyEolWO
    HtzmjWi2Wxozaf-ucZ7dyc_cPNT_UF761lhsgtbmoodAZqZoGSrtMX6EpKTgn
    DEDlMThw2xnuGFZXwFoCJqGytwOyFCyYNyC4AibyPz86n6Hdg_wli-_Bt5ipq
    oARee0inWXiun4gjXc8vUmFKzvQiM4b_6MoloJ4XX984Nc3i-N9NPzwZ2WSZw
    x0RTYH6hb9a7fG_NYw_08-P56BRQXv9X325RLIjwSbjSIogHANafLLUtm8rjj
    cGlBwNwlRy-HMj1bcR_axhfTXLVXwMKLKovPHTP1YRoGFVHKHoypaZrP0gd_p
    d8WLzHzmhG5rsB0utWP4PK6JSIlMd9Ua_32Ujf1dSg_FD6qFPKF-TDqgd9hTE
    k7oP2KP90piE1bHobxE3-HwXUlyBcnYJOKEwTlUpnCW_QkV4qiKwmJEt8tsMB
    effisR4tTablF0ReE-EsDEm7OVRYig6IGKYsPmqHyytSyjSTLnWNkflMfDARa
    -vykTWUXI4mVJCSWn4dRstPYLOL87YOol6VKA_R6PjSBguPb_xbYDadKOfpWO
    Rm2FshHaYkC8MJyaAAn679Ae-CDQosQKEjmk1N63te2kx628mvFhpxUVv9orB
    Zw65ldjL5UGHvIuamQVAFSL0lcUABLxq-mNAwwuIGNEW31keGZm9J41SvmO_P
    uoa3aJsipiq2xPrDFiODEjUceWyFzMnynByVO6cid8cksYIpG0DkePfJVfJ2A
    VsW1f34XbICw5YDCo8kNYynMS354E7fLSAq1dxQjbE1UgNF3pyq15zUcuJhMf
    ldtOZVOO5lL8be1bRiPwF7UrCmcD-_92DE10VJ3lfkvHRSSwMz0-a0jcMjALr
    hV_qYTJqtNiFDhiWCaklJSJ78LbHnm6khf0stb3HbvpwqL4tkfjWl_p2Sba7I
    6WJqAbHtPnd0OZE_eD4R8tHWe_tgU4CVM_mbFhnSJkiAMEgGRSH7zRFymwCUL
    zoO5w-cAi6HJoL4atY_KmsVAnt2tAeuzlQ7ONOrHvhGa3oGFK01wERTHbdqI_
    XVun7c8cWA1m-fyKke7lgp_BTj9Qu93KmyFUYai_doFxnxXqvihuC7nT2mm1t
    D4IK0pRB1fkM4xjwMJps-eWupL_-xCP_5HTlHd2fPtNpTlMaRqyN7DjG1pdCs
    MASWIxo22RKZRcW5WjB7D7c7hnEFPb1JxPZuUjn1yFBUKtKXzl85nXm0_wnW3
    bp2NwO05wJDAzLJG1OIy0w2tOkWhySBv0s8hIDaixQpdcQOEPGw5gcHwCFOP4
    0hsPnjtvaIUC80uhS1lhm38oAT90qs2s6JtqEVHE0PF2hoMWbKLMGUXRUdL4d
    4w_HxD0pY2IywQhFy1SpGNAs5uvhxIySFcRv4DUQU02aF3G8bwHEcWBcrOzbw
    mUE0ugaqllknpiN_lu-Dk94FudPJUAL4Ckzd0xi0IOv8Y5bWfiggPBt4K20CF
    kMpCMROTSnTcX_rsHxUp1pMrbp2QsbOfealVIq-jzaLXs7Q8Fr8TlTkIQj7Is
    WzS4cVt9o6id9CvfaD_ykERw1cc2zkAf3RwGYdS--9TiQL8xsw2nhqCqEEkN8
    G2ZWsbu-jt8LcQ3BZFUHjfgZeO5o5oYhPLV5-j8--XQeXoY6BY___eX8Ur0iB
    G3Q4Ev9GhwNtDqrJCFvcq8YXNrN0cJRM9PlJgHQAWreZBKegq9uVR4ZTIufqX
    gheiVGS4VmYBCgUam4McC20qOVAltqdc154BzwoJgiWHgqu2MJ24yt1_1r_ay
    LI8aX6UIqBcGAFZKDkjLnzlvlWDhD7ZL5hd_3hu24mF5QM6XG8fZupwSS0kY7
    XYeqAuOOoRvV52k3ajYtxtghWXhxwKwZ8Luf03B-N5Jopd7wMZC3zhMXYUBv2
    yjn3adGIvRqFtm-GY7W0PecYDwbx0XILJDoakGXbIyXeqSmN_gVVNPQ9AsGZT
    UnLVwiJkwIdtgTXPyKwuJTrAHAo3in24iATKLbACFvOqOhQ4ac3sne1fy1b1O
    EwZMTX-SchuPsNucrM-VZJkHtdcrpACJ-d1B7hWKvCONcYtwnkoNMdEjihKMs
    2XjmjbM8u7qMco1j0B8FTOX0T497WWPPwQpjXeueR0AKJIaOl6C-w9O0vihCY
    fHB-ep8FDWnnMv9O10q6oG9fcX3iNPcGHskPEW9AdnIAYsgRCs3Bs9Ju9c-aO
    RRVNzvngs8Q0oB-ZI-p1DWUcw8lzfFUfMoiG1JlrQrTtmAABz51_ZKc9B46wC
    pxQRNlBYYDjAzZbZyn2Z7c0tKs3UHa3865-VxEVqRgDkOljRmOgt2bCTwCKQb
    f73Yszq1RQfyhoTf9NiU3k90FdZUYzm8UYzTnQBJSP7TLz4hbAREGGTfR1QF9
    Z1l5X9iPNEArh9RnW2NP8aiyES8Wt9MVaVO5I9CQDntef2cluOPNM2SRc8KgW
    g3ORIKP7X_R1tFBTyawaetdkt2B5MQq8S9CG1t43eLMP2Y1RXkqYFUHb10dbE
    -rB2UGqHRxIDscCXUBuz-zG01fyIOtaBTrQJSnodaPl-A3pCC0hx-KJ6FT5mC
    vkqf71j29IDNTtb07XKFUboZ29N5QnQIkqxlMUDJbxRPuqyyhDH2oCNr8dvzB
    p5Gf3ykljPZzjyzOeEkQwLoe0dAqcNnVj_EXLt-pOl9EbhqxPwNL4OEqt-qGD
    r5AKoDLWcDYEcjkY-10wHouY6f9DO7BtNceO8ZZg9VvEuC4Bf4341tpF_sMY8
    vi0EUMd86F8HE8Vwjxql__WDB_T3rTGm6lr_7Cibtk_upaxN6nQgwfHMgT1CV
    gBfbh4NlYZ9lc4HQAKXL80F0-xafW4d05pXoHCnuANktWmJQ_8HgrPuWqv_C8
    Qt3pfzaFeEgsErLb9yndbpu4HEty33fs9Q0ZVgINjvA4pniw9vP6md3PV2lDK
    h1w-Cu71c63gHIW9UnLW2xWll1Zgv2vNTOzsmI8g4wZWV33P0wUsHkDh6NjHR
    SUT1olkIrevpNJ56sHKHijPSUy9meRXkiFIN0B0Q9by-zCAayiNS7lB1tw7rU
    RFKAJV7HRnE6FdaIWcI_8XwVtNh6VS460qGWKJ-g_Mhktw3CCFZ8HZkBzhRNc
    x1rVTykoMMaYbe3TLTl5kql4y5PRXfIiTFytjCIRLLt9dtgeUfMfMxYRLoPbK
    YmDso385cmFeHIfvlxeyoF_NASXmf0tOhCqbRT45WI1BUmqH3EHhYAzlAspY7
    D7Ur5l8_VrbWSlVaq1x095SajyEoNNL7qjADeppjlBsNPNqlpUwU8_VXJDrah
    l4dE40zptNer-ST2PLRPqrBlRB59ehYFBUxzI_Ap8_Is7HtfjGcvYcGHQ1kmM
    CJJDtRgG4FSV2pA10bzBsfWTlJGTbAgqf0kQEyxuD516GY3ydPZZ9-E3Q_rgw
    kYQci_0zlwTrErI-lBQkvyp27O3_9hjhO_dKYxqeBjiFZGOo3BhJz4D0d-68H
    _BNQIakLvyoL_FQWCSeBnQee-HRsPRd-qrFGpLwSrTCumeEhm8b9m82MvbABm
    NS0YmyAIaykiwyiUTnrwoxsCszArX4AtwurMHSImKVyv8JX_wdb4Arp16QTjN
    bBGmxt_SAEVnBUWi0gtKQ_-iylcjkVAnDY1SOqRa5FNVHfF49SeDgYzW-78C9
    Y74RJLWZRApSfMKeG0tN8mKcVk3qZruX3cbw1WuUnmZXl-OQEoNbyJxt2e9T8
    Kqw66Ds8XYzJxtpzKQMDQyeEYMM8-QSOq27FkGn3C3zkwJPvU8ajEC7UcFbAy
    8VFHFV7t2Crr8zgnOpMtvN5T80nkANiQ9x6ZFwQfd7EHOXGMC8S-f9SqId4Mh
    6fT_Og19bmFeDgvJjULNvkDMuQ2IjMFb-c2qiRIUnluah1jzYq_WdrR1M9aVL
    EzvkqNFlHLZ9ZmIxmjFoGQnC9hMclrHqhhox5Ydip0SJsP7a-slbf2M5ti3Nm
    vCuw3F9ZzgRc6UNKla3V8J5QQ1gNfXh3nS8JbqV226LFKKnI9JwPIbuK3fsS-
    u0kkqTf483_s6U151yydWWp0XXF7l0kWnJC6pyuf-STLBDt66Emg6zIsgc55o
    FHl-3KCqtRRK6oVkZHiWW5E7l8DeTgDrN5si_2i1Q-QaBr3cCbfvi405aXvAV
    Z6FYN4rbFcc1VluMOfVaiFzww56D_c7WFZ-JXS3CClHK9gL_tOrvsVScQACre
    j0oycGjfJ9U2TDX0fxtOblC2nsOKk88LuxqTN5LfjMf7FdqKCCWHykIaIf954
    J03poSH_dc4nQuWwPEaIa29INMGK2zvPT_2lU-HOPqwPWGZffgym44yyvbWG8
    Rixp-lat5LI9byCT12M6zZapCydqUlnxUs8GcLfg_w1_HvErv_MV0BxiF9W9i
    Ii7t4U8B2uvxSqpQtageMybDlz69CobbXLWhgakXnY1iRpE9906vM4BfqaUzq
    7Wnj6q9iH3L6e4IunE2vXPK7jgW605ws66dYf7Pyo4ayn60R6mQMdbTL-3_UC
    pmLyCHFLv8LhT-Vn6yVY7H_bUN4d_d0HB5ohOiUHzT_BGqWx85o8oHEkMDp2W
    N05qof81g9kMzE3nqGfwgRE5l1PBmlxwLLgosqGY02q5f4ls6-4GFBZruIcj2
    YYXgNsKwVMnQ0V9E6_VlSfFDvv6y46EOIJsu4DBwQHNrCmZArSXDZ_XXruxwM
    -w6ZwszOW1gThfSf_FHs1XXS6rliC_MXu_hZsqsSv7mwh6uHMhRUAVKfxGFj1
    a1FJlM8Ppyn_qAj3zaVaISYVTxHdK0dSQ6vZ-XGm46S7wIXaeTEse4E_cWZhH
    _tMlhUbQHA2y-aZZnQamgNiGhD_r8_-7wWtLr0Y1xspp4UQq5AdvseQA9rsCO
    WHT19nuFKTTTtfLjjgI68_yeRmKwMk2cXFbyg_ilOnGWuPEJPeFuXLAxRMgMY
    teSdIj_nI8SvJ6t0f0xlfWTPbhXezZcpWrj2ZdE8agQGGOw5I_Vf1TYj1eJ_l
    ZEz5X03Z7XdOqJawddYCTfcefMeOUIgnSXV4h7Cz-FLLKBAeWiOllU2i88kFL
    f4wm07LiTeh6v8NGL3xhxsMja4piZASkexICYHHgZvNqeqY18j-o4IFnNPgJq
    MvTMisflnUinWYIdgHu-CNZE6ZO-c3iEcOR-UVDgv9dt2w4vmk_7h-JvJtlQ-
    Mk9wgRr3Ef0mnrYVxZzxgt6uIuqJlRjP_FFyjzzWgaL9QlQg8-sHoAUQ8JDRO
    555sdMFQCpHiTrhQ",
  "tag": "hyXd3meC4V_SRrDsobgH4f8skmb0R1XQUD1dNz268FI",
  "recipients": [
    {
      "encrypted_key": "Sm_D7ScQI9hhTknxXnSeg5ph2WugCTVUxmxJX-jmr
        GuxFdnLsJO2ww7hczEVsfdCPXXu2WjS2_nGBKr5T8YqfJnGqgvnoeddWC
        nlhnFDARrQCaj-Ra0rLADoCukdwubwsVnCuVaS1uuLRh0BGLq7GOSug5A
        NoXDyylfscaGO_2m2Jp1R8fk0G08SZ78SGRexkOhnpDAPFX1kOpVMWzS1
        ZYmYVTkZxjtv3Sm7YABnhvDhxdxHZFR_n83EYVSjIfenJOPnJ7M_hyWh2
        eStg2n-V6dpqc_PC9cHB-bGYey_Lnx4kDOiGeqjvg5yo_qYK0PYn-pr59
        Su0q0qZkp_3g80vQ"
    }
  ],
  "unprotected": {
    "uuid": "01a16b86-96e7-80a8-b9a2-279e0d16bc46",
    "cty": "application/vcon"
  }
}
]]></artwork>
      </section>
      <section anchor="redacted-vcon">
        <name>Redacted vCon</name>
        <t>This is an example redaction of the vCon in the example <xref target="two-party-call-vcon-with-externally-referenced-recording">Two Party Call vCon With Externally Referenced Recording</xref>.
Most notable is the <xref target="redacted_from">Redacted_from object</xref> which references the lesser redacted version of this vCon.
In addition the <strong>url</strong> parameter has been redacted from the <xref target="dialog-object">Dialog Object</xref>, but the rest of the <xref target="dialog-object">Dialog Object</xref> was left in the redaction.</t>
        <t>The unformatted version of the following example can be downloaded from:
https://raw.githubusercontent.com/ietf-wg-vcon/draft-ietf-vcon-vcon-core/refs/heads/main/examples/ab_call_ext_rec_redacted.vcon</t>
        <t>Note to the RFC Editor: This example, and its unformatted version at the URL above, contain the vcon parameter (see <xref target="vcon"/>), which is included in the Internet-Draft versions of this document to indicate the version of the schema upon which the example is based.
The vcon parameter is to be removed from the example and its unformatted version before publication as an RFC.
Please remove this note before publication.</t>
        <t>TODO: need a better conversation/recording to demonstrate redaction</t>
        <artwork><![CDATA[
{
  "vcon": "0.5.0",
  "created_at": "2022-06-21T13:53:00-04:00",
  "parties": [
    {
      "name": "Alice"
    },
    {
      "name": "Bob"
    }
  ],
  "dialog": [
    {
      "type": "recording",
      "start": "2022-06-21T17:53:26.000+00:00",
      "duration": 32.932396,
      "parties": [
        0,
        1
      ],
      "mediatype": "audio/ogg",
      "filename": "ab_call_2ch.ogg",
      "content_hash": "sha512-Y-Q9eclT6b5hFyIfLtnFAAXgqFzN5_Cjr3J
        Q3DMmcnpXHkGMgtvaxrLW2R2OhFTzR-DinyrngBG2w9lTZXr1EQ"
    }
  ],
  "analysis": [
    {
      "type": "transcript-redacted",
      "dialog": 0,
      "body": [
        {
          "parties": 0,
          "start": "2022-06-21T17:53:31.520000+00:00",
          "duration": 0.6400000000000006,
          "text": "Hi."
        },
        {
          "parties": 0,
          "start": "2022-06-21T17:53:32.240000+00:00",
          "duration": 2.16,
          "text": "I'd like to add Foo to my service."
        },
        {
          "parties": 0,
          "start": "2022-06-21T17:53:39.695001+00:00",
          "duration": 6.5600000000000005,
          "text": "My name is Alice and my number is {{BAN}}."
        },
        {
          "parties": 0,
          "start": "2022-06-21T17:53:53.820936+00:00",
          "duration": 0.5600020000000008,
          "text": "No."
        },
        {
          "parties": 0,
          "start": "2022-06-21T17:53:54.380938+00:00",
          "duration": 0.7999989999999997,
          "text": "Thank you."
        },
        {
          "parties": 0,
          "start": "2022-06-21T17:53:55.180937+00:00",
          "duration": 0.3200000000000003,
          "text": "Goodbye."
        },
        {
          "parties": 1,
          "start": "2022-06-21T17:53:27.120000+00:00",
          "duration": 0.5599999999999998,
          "text": "Hello."
        },
        {
          "parties": 1,
          "start": "2022-06-21T17:53:27.680000+00:00",
          "duration": 1.5999999999999999,
          "text": "This is {{URL}}."
        },
        {
          "parties": 1,
          "start": "2022-06-21T17:53:29.280000+00:00",
          "duration": 0.8800000000000003,
          "text": "My name is Bob."
        },
        {
          "parties": 1,
          "start": "2022-06-21T17:53:30.160000+00:00",
          "duration": 1.2000000000000002,
          "text": "How can I help you?"
        },
        {
          "parties": 1,
          "start": "2022-06-21T17:53:35.040000+00:00",
          "duration": 0.7199990000000014,
          "text": "{{US_STATE}}."
        },
        {
          "parties": 1,
          "start": "2022-06-21T17:53:36.080000+00:00",
          "duration": 2.959999999999999,
          "text": "Can you give me your name and phone number so 
            I can look up your account?"
        },
        {
          "parties": 1,
          "start": "2022-06-21T17:53:46.635000+00:00",
          "duration": 0.7999999999999972,
          "text": "Thank you."
        },
        {
          "parties": 1,
          "start": "2022-06-21T17:53:48.795000+00:00",
          "duration": 0.7199999999999989,
          "text": "{{US_STATE}}."
        },
        {
          "parties": 1,
          "start": "2022-06-21T17:53:49.994999+00:00",
          "duration": 1.600002,
          "text": "I've added food to your service."
        },
        {
          "parties": 1,
          "start": "2022-06-21T17:53:51.595001+00:00",
          "duration": 1.6799989999999987,
          "text": "Is there anything else I can help you with?"
        },
        {
          "parties": 1,
          "start": "2022-06-21T17:53:56.320875+00:00",
          "duration": 0.6400000000000006,
          "text": "Goodbye."
        },
        {
          "parties": 1,
          "start": "2022-06-21T17:53:56.960875+00:00",
          "duration": 0.8000009999999982,
          "text": "Have a nice day."
        }
      ],
      "encoding": "json",
      "vendor": "CapitalOne",
      "schema": "data_labeler_schema",
      "product": "dataprofiler"
    }
  ],
  "attachments": [],
  "sessions": [
    {
      "start": "2022-06-21T17:53:26.000+00:00",
      "duration": 32.932396,
      "parties": [
        0,
        1
      ],
      "dialog": [
        0
      ]
    }
  ],
  "uuid": "01928e10-193e-8231-b9a2-279e0d16bc46",
  "redacted_from": {
    "uuid": "01a16b86-96e7-80a8-b9a2-279e0d16bc46",
    "type": "PII Redaction"
  }
}
]]></artwork>
      </section>
      <section anchor="amended-signed-vcon">
        <name>Amended Signed vCon</name>
        <t>This is an example vCon with an <xref target="amended_from-object">Amended_from Object</xref> referencing the vCon that it amends or adds additional content.
In this case it is referencing the signed vCon example above.
An example text Dialog Object (index 1) is the amendment.</t>
        <t>The unformatted version of the following example can be downloaded from:
https://raw.githubusercontent.com/ietf-wg-vcon/draft-ietf-vcon-vcon-core/refs/heads/main/examples/ab_call_ext_rec_amended.vcon</t>
        <t>Note to the RFC Editor: This example, and its unformatted version at the URL above, contain the vcon parameter (see <xref target="vcon"/>), which is included in the Internet-Draft versions of this document to indicate the version of the schema upon which the example is based.
The vcon parameter is to be removed from the example and its unformatted version before publication as an RFC.
Please remove this note before publication.</t>
        <artwork><![CDATA[
{
  "vcon": "0.5.0",
  "created_at": "2022-06-21T13:53:00-04:00",
  "parties": [
    {
      "tel": "+12345678901",
      "name": "Alice"
    },
    {
      "tel": "+19876543210",
      "name": "Bob"
    }
  ],
  "dialog": [
    {
      "type": "recording",
      "start": "2022-06-21T17:53:26.000+00:00",
      "duration": 32.932396,
      "parties": [
        0,
        1
      ],
      "url": "https://github.com/ietf-wg-vcon/draft-ietf-vcon-vco
        n-core/raw/refs/heads/main/examples/ab_call_2ch.ogg",
      "mediatype": "audio/ogg",
      "filename": "ab_call_2ch.ogg",
      "content_hash": "sha512-Y-Q9eclT6b5hFyIfLtnFAAXgqFzN5_Cjr3J
        Q3DMmcnpXHkGMgtvaxrLW2R2OhFTzR-DinyrngBG2w9lTZXr1EQ"
    },
    {
      "type": "text",
      "start": "2022-06-21T17:53:26.000+00:00",
      "parties": [
        1
      ],
      "mediatype": "text/plain",
      "body": "Good day!",
      "encoding": "none"
    }
  ],
  "analysis": [],
  "attachments": [],
  "sessions": [
    {
      "start": "2022-06-21T17:53:26.000+00:00",
      "duration": 32.932396,
      "parties": [
        0,
        1
      ],
      "dialog": [
        0,
        1
      ]
    }
  ],
  "uuid": "01a16b86-9ea3-8a32-a20f-d188127fad29",
  "amended_from": {
    "uuid": "01a16b86-96e7-80a8-b9a2-279e0d16bc46"
  }
}
]]></artwork>
      </section>
    </section>
    <section anchor="vcon-json-schema">
      <name>vCon JSON Schema</name>
      <t>This JSON schema is provided as informational.
The text in sections 1-6 of this document define the normative definition of the vCon schema.
If the JSON schema provided below differs from that in the text of the above sections, the text should be taken as the definitive definition and the JSON Schema below should be consider incorrect.
The JSON Schema is permissive: parameters and type values which are not defined in this document do not cause validation to fail.</t>
      <t>The JSON Schema definition below has been formatted with line breaks to
print nicely on the page.
The unformatted version of the JSON schema can be downloaded from:
https://raw.githubusercontent.com/ietf-wg-vcon/draft-ietf-vcon-vcon-core/refs/heads/main/vcon_json_schema.json</t>
      <artwork><![CDATA[
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "$id": "https://ietf.org/vcon/schemas/unsigned-vcon.json",
  "title": "vCon - Unsigned Form",
  "description": "JSON schema for the unsigned form of vCon (Conv
    ersational Data Container) as defined in RFCXXXX",
  "type": "object",
  "required": [
    "uuid",
    "created_at"
  ],
  "properties": {
    "vcon": {
      "type": "string",
      "description": "DEPRECATED: Syntactic version of the JSON f
        ormat. This was used to indicate schema changes in the In
        ternet-Draft versions",
      "const": "0.5.0"
    },
    "uuid": {
      "type": "string",
      "description": "Globally unique identifier for the vCon. SH
        OULD be a version 8 UUID",
      "format": "uuid"
    },
    "extensions": {
      "type": "array",
      "description": "List of names of all vCon extensions used b
        y this vCon",
      "items": {
        "type": "string"
      }
    },
    "critical": {
      "type": "array",
      "description": "List of extension names that a consumer MUS
        T support to safely process this vCon",
      "items": {
        "type": "string"
      }
    },
    "created_at": {
      "type": "string",
      "description": "Creation time of this vCon in RFC3339 forma
        t",
      "format": "date-time"
    },
    "updated_at": {
      "type": "string",
      "description": "Last modified time of this vCon in RFC3339 
        format",
      "format": "date-time"
    },
    "subject": {
      "type": "string",
      "description": "Subject or topic of the conversation"
    },
    "redacted_from": {
      "type": "object",
      "description": "Reference to the unredacted or less redacte
        d vCon prior instance (Redacted_from Object); mutually ex
        clusive with amended_from",
      "required": [
        "type"
      ],
      "properties": {
        "uuid": {
          "type": "string",
          "description": "UUID of the unredacted or less redacted
             vCon prior instance",
          "format": "uuid"
        },
        "type": {
          "type": "string",
          "description": "Type of redaction performed; same set o
            f values as the type parameter of the Redacted_string
             Object"
        },
        "url": {
          "type": "string",
          "description": "HTTPS URL where the referenced vCon is 
            stored",
          "format": "uri"
        },
        "content_hash": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          ],
          "description": "Hash(es) of the external content using 
            format: algorithm-base64url_encoded_hash"
        }
      },
      "dependencies": {
        "url": [
          "content_hash"
        ]
      }
    },
    "amended_from": {
      "type": "object",
      "description": "Reference to the prior vCon instance versio
        n that this vCon amends (Amended_from Object); mutually e
        xclusive with redacted_from",
      "properties": {
        "uuid": {
          "type": "string",
          "description": "UUID of the prior vCon instance version
            ",
          "format": "uuid"
        },
        "url": {
          "type": "string",
          "description": "HTTPS URL where the referenced vCon is 
            stored",
          "format": "uri"
        },
        "content_hash": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          ],
          "description": "Hash(es) of the external content (requi
            red if url is provided)"
        }
      },
      "dependencies": {
        "url": [
          "content_hash"
        ]
      },
      "if": {
        "not": {
          "required": [
            "url"
          ]
        }
      },
      "then": {
        "required": [
          "uuid"
        ],
        "$comment": "uuid is optional only if an external referen
          ce is provided"
      }
    },
    "redacted_strings": {
      "type": "array",
      "description": "Array of Redacted_string Objects, one for e
        ach unique substring replaced by __REDACTED_REF_# in the 
        vCon",
      "items": {
        "$ref": "#/definitions/RedactedString"
      }
    },
    "sessions": {
      "type": "array",
      "description": "Array of Session Objects, each grouping the
         Dialog and Event Objects of one session of the conversat
        ion",
      "items": {
        "$ref": "#/definitions/Session"
      }
    },
    "parties": {
      "type": "array",
      "description": "Array of Party Objects representing all par
        ties involved in the conversation",
      "items": {
        "$ref": "#/definitions/Party"
      }
    },
    "events": {
      "type": "array",
      "description": "Array of Event Objects; order is not signif
        icant, Event Objects are sequenced by their time paramete
        r",
      "items": {
        "$ref": "#/definitions/Event"
      }
    },
    "dialog": {
      "type": "array",
      "description": "Array of Dialog Objects containing the capt
        ured conversation content",
      "items": {
        "$ref": "#/definitions/Dialog"
      }
    },
    "analysis": {
      "type": "array",
      "description": "Array of Analysis Objects containing analys
        is performed on the conversational data",
      "items": {
        "$ref": "#/definitions/Analysis"
      }
    },
    "attachments": {
      "type": "array",
      "description": "Array of Attachment Objects for ancillary d
        ocuments related to the conversation",
      "items": {
        "$ref": "#/definitions/Attachment"
      }
    }
  },
  "definitions": {
    "Session": {
      "type": "object",
      "description": "Represents one session of the conversation 
        and references the Dialog Objects which are part of it; a
         Session Object with no parameters is permitted",
      "properties": {
        "start": {
          "type": "string",
          "format": "date-time",
          "description": "Start time of the session in RFC3339 fo
            rmat; SHOULD be present"
        },
        "duration": {
          "anyOf": [
            {
              "type": "integer",
              "minimum": 0
            },
            {
              "type": "number",
              "minimum": 0
            }
          ],
          "description": "Duration of the session in seconds"
        },
        "parties": {
          "type": "array",
          "items": {
            "type": "integer",
            "minimum": 0
          },
          "description": "Indices of the parties that are the rec
            eivers of the dialog in the session; SHOULD be presen
            t; the first party is the implied originator"
        },
        "originator": {
          "type": "integer",
          "minimum": 0,
          "description": "Index of the originating party; only pr
            ovided if the first party in parties is not the origi
            nator"
        },
        "session_id": {
          "$ref": "#/definitions/SessionId"
        },
        "sessions": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/SessionReference"
          },
          "description": "Relationships to other Session Objects"
        },
        "dialog": {
          "type": "array",
          "items": {
            "type": "integer",
            "minimum": 0
          },
          "description": "Indices of the Dialog Objects which are
             part of the session"
        }
      }
    },
    "SessionReference": {
      "type": "object",
      "description": "Session_Reference Object: the relationship 
        of another Session Object to the Session Object which con
        tains this reference",
      "required": [
        "session",
        "type"
      ],
      "properties": {
        "session": {
          "type": "integer",
          "minimum": 0,
          "description": "Index of the referenced Session Object 
            in the sessions array"
        },
        "type": {
          "type": "string",
          "description": "Type of relationship: child, peer, prec
            ursor, breakout, or a value defined in a vCon extensi
            on"
        },
        "description": {
          "type": "string",
          "description": "Free form text description of the relat
            ionship"
        }
      }
    },
    "Party": {
      "type": "object",
      "description": "Represents a party involved in the conversa
        tion",
      "properties": {
        "tel": {
          "type": "string",
          "description": "TEL URL (RFC3966) for the party"
        },
        "sip": {
          "type": "string",
          "description": "SIP URL for the party"
        },
        "stir": {
          "type": "string",
          "description": "STIR PASSporT in JWS Compact Serializat
            ion form"
        },
        "mailto": {
          "type": "string",
          "description": "Email address for the party in any comm
            on form, including a bare address or a MAILTO URL"
        },
        "name": {
          "type": "string",
          "description": "Name of the party"
        },
        "did": {
          "type": "string",
          "description": "Decentralized Identifier (DID) URI for 
            the party"
        },
        "validation": {
          "type": "string",
          "description": "Label or token identifying the method o
            f identity validation used"
        },
        "gmlpos": {
          "type": "string",
          "description": "Geographic location in GML pos format (
            latitude longitude)"
        },
        "civicaddress": {
          "$ref": "#/definitions/Civicaddress"
        },
        "uuid": {
          "type": "string",
          "description": "Free form unique identifier for the par
            ticipant; not constrained to UUID syntax"
        },
        "type": {
          "type": "string",
          "description": "Participant type"
        },
        "org": {
          "type": "string",
          "description": "Organization to which the party belongs
            "
        },
        "dept": {
          "type": "string",
          "description": "Department to which the party belongs"
        }
      }
    },
    "Civicaddress": {
      "type": "object",
      "description": "Civic address information for a party's loc
        ation",
      "properties": {
        "country": {
          "type": "string"
        },
        "a1": {
          "type": "string",
          "description": "National subdivision (state/province)"
        },
        "a2": {
          "type": "string",
          "description": "County/parish/district"
        },
        "a3": {
          "type": "string",
          "description": "City/township"
        },
        "a4": {
          "type": "string",
          "description": "City division/borough"
        },
        "a5": {
          "type": "string",
          "description": "Neighborhood/block"
        },
        "a6": {
          "type": "string",
          "description": "Street"
        },
        "prd": {
          "type": "string",
          "description": "Leading street direction"
        },
        "pod": {
          "type": "string",
          "description": "Trailing street suffix"
        },
        "sts": {
          "type": "string",
          "description": "Street suffix"
        },
        "hno": {
          "type": "string",
          "description": "House number"
        },
        "hns": {
          "type": "string",
          "description": "House number suffix"
        },
        "lmk": {
          "type": "string",
          "description": "Landmark"
        },
        "loc": {
          "type": "string",
          "description": "Additional location info"
        },
        "flr": {
          "type": "string",
          "description": "Floor"
        },
        "nam": {
          "type": "string",
          "description": "Name/occupant"
        },
        "pc": {
          "type": "string",
          "description": "Postal code"
        }
      }
    },
    "Event": {
      "type": "object",
      "description": "Represents an event which occurred in a ses
        sion, such as a party joining, a key press or a transfer"
        ,
      "required": [
        "type",
        "time"
      ],
      "properties": {
        "type": {
          "type": "string",
          "description": "Type of event: join, drop, hold, unhold
            , mute, unmute, keydown, keyup, consultation-start, b
            lind-transfer, consultative-transfer, transfer-abando
            ned, channel-contributors, or a value defined in a vC
            on extension"
        },
        "time": {
          "type": "string",
          "format": "date-time",
          "description": "Time of the event in RFC3339 format"
        },
        "sessions": {
          "oneOf": [
            {
              "type": "integer",
              "minimum": 0
            },
            {
              "type": "array",
              "items": {
                "type": "integer",
                "minimum": 0
              }
            }
          ],
          "description": "Index or indices of the Session Objects
             in which the event occurred; the event applies only 
            to the listed Session Objects; for transfer event typ
            es, a single index to the Session Object for the orig
            inal call; MUST NOT be present for channel-contributo
            rs"
        },
        "party": {
          "type": "integer",
          "minimum": 0,
          "description": "Index of the party to which the event a
            pplies; for transfer event types, the Transferor; MUS
            T NOT be present for channel-contributors"
        },
        "dialog": {
          "type": "integer",
          "minimum": 0,
          "description": "Index of the Dialog Object to which the
             event relates; required for channel-contributors, wh
            ere it references a recording Dialog Object; SHOULD N
            OT be present for the other event types defined in RF
            CXXXX; an event type defined in a vCon extension may 
            allow an array of indices"
        },
        "channel": {
          "type": "integer",
          "minimum": 0,
          "description": "Index of the channel of the recording, 
            where 0 is the first channel (channel-contributors on
            ly)"
        },
        "contributors": {
          "anyOf": [
            {
              "type": "integer",
              "minimum": 0
            },
            {
              "type": "array",
              "items": {
                "type": "integer",
                "minimum": 0
              }
            },
            {
              "type": "null"
            }
          ],
          "description": "Index or indices of the parties contrib
            uting to the channel starting at the time of the even
            t; null or absent means no party contributes (channel
            -contributors only)"
        },
        "button": {
          "type": "string",
          "description": "DTMF digit, character or string (requir
            ed for keydown and keyup events)"
        },
        "transferee": {
          "type": "integer",
          "minimum": 0,
          "description": "Party index of the Transferee (transfer
             event types)"
        },
        "transfer_target": {
          "type": "integer",
          "minimum": 0,
          "description": "Party index of the Transfer Target (tra
            nsfer event types; optional for transfer-abandoned)"
        },
        "consultation": {
          "type": "integer",
          "minimum": 0,
          "description": "Session index of the consultative call 
            (consultation-start and consultative-transfer; option
            al for transfer-abandoned)"
        },
        "target_session": {
          "type": "integer",
          "minimum": 0,
          "description": "Session index of the target call (blind
            -transfer and consultative-transfer)"
        }
      },
      "allOf": [
        {
          "if": {
            "properties": {
              "type": {
                "enum": [
                  "join",
                  "drop",
                  "hold",
                  "unhold",
                  "mute",
                  "unmute",
                  "keydown",
                  "keyup",
                  "consultation-start",
                  "blind-transfer",
                  "consultative-transfer",
                  "transfer-abandoned"
                ]
              }
            },
            "required": [
              "type"
            ]
          },
          "then": {
            "required": [
              "sessions",
              "party"
            ],
            "not": {
              "anyOf": [
                {
                  "required": [
                    "channel"
                  ]
                },
                {
                  "required": [
                    "contributors"
                  ]
                }
              ]
            }
          }
        },
        {
          "if": {
            "properties": {
              "type": {
                "enum": [
                  "consultation-start",
                  "blind-transfer",
                  "consultative-transfer",
                  "transfer-abandoned"
                ]
              }
            },
            "required": [
              "type"
            ]
          },
          "then": {
            "properties": {
              "sessions": {
                "type": "integer",
                "minimum": 0
              }
            }
          }
        },
        {
          "if": {
            "properties": {
              "type": {
                "enum": [
                  "join",
                  "drop",
                  "hold",
                  "unhold",
                  "mute",
                  "unmute"
                ]
              }
            },
            "required": [
              "type"
            ]
          },
          "then": {
            "not": {
              "anyOf": [
                {
                  "required": [
                    "button"
                  ]
                },
                {
                  "required": [
                    "transferee"
                  ]
                },
                {
                  "required": [
                    "transfer_target"
                  ]
                },
                {
                  "required": [
                    "consultation"
                  ]
                },
                {
                  "required": [
                    "target_session"
                  ]
                }
              ]
            }
          }
        },
        {
          "if": {
            "properties": {
              "type": {
                "enum": [
                  "keydown",
                  "keyup"
                ]
              }
            },
            "required": [
              "type"
            ]
          },
          "then": {
            "required": [
              "button"
            ],
            "not": {
              "anyOf": [
                {
                  "required": [
                    "transferee"
                  ]
                },
                {
                  "required": [
                    "transfer_target"
                  ]
                },
                {
                  "required": [
                    "consultation"
                  ]
                },
                {
                  "required": [
                    "target_session"
                  ]
                }
              ]
            }
          }
        },
        {
          "if": {
            "properties": {
              "type": {
                "const": "consultation-start"
              }
            },
            "required": [
              "type"
            ]
          },
          "then": {
            "required": [
              "transferee",
              "transfer_target",
              "consultation"
            ],
            "not": {
              "anyOf": [
                {
                  "required": [
                    "button"
                  ]
                },
                {
                  "required": [
                    "target_session"
                  ]
                }
              ]
            }
          }
        },
        {
          "if": {
            "properties": {
              "type": {
                "const": "blind-transfer"
              }
            },
            "required": [
              "type"
            ]
          },
          "then": {
            "required": [
              "transferee",
              "transfer_target",
              "target_session"
            ],
            "not": {
              "anyOf": [
                {
                  "required": [
                    "button"
                  ]
                },
                {
                  "required": [
                    "consultation"
                  ]
                }
              ]
            }
          }
        },
        {
          "if": {
            "properties": {
              "type": {
                "const": "consultative-transfer"
              }
            },
            "required": [
              "type"
            ]
          },
          "then": {
            "required": [
              "transferee",
              "transfer_target",
              "consultation",
              "target_session"
            ],
            "not": {
              "anyOf": [
                {
                  "required": [
                    "button"
                  ]
                }
              ]
            }
          }
        },
        {
          "if": {
            "properties": {
              "type": {
                "const": "transfer-abandoned"
              }
            },
            "required": [
              "type"
            ]
          },
          "then": {
            "required": [
              "transferee"
            ],
            "not": {
              "anyOf": [
                {
                  "required": [
                    "button"
                  ]
                },
                {
                  "required": [
                    "target_session"
                  ]
                }
              ]
            }
          }
        },
        {
          "if": {
            "properties": {
              "type": {
                "const": "channel-contributors"
              }
            },
            "required": [
              "type"
            ]
          },
          "then": {
            "required": [
              "dialog",
              "channel"
            ],
            "not": {
              "anyOf": [
                {
                  "required": [
                    "sessions"
                  ]
                },
                {
                  "required": [
                    "party"
                  ]
                },
                {
                  "required": [
                    "button"
                  ]
                },
                {
                  "required": [
                    "transferee"
                  ]
                },
                {
                  "required": [
                    "transfer_target"
                  ]
                },
                {
                  "required": [
                    "consultation"
                  ]
                },
                {
                  "required": [
                    "target_session"
                  ]
                }
              ]
            }
          }
        }
      ],
      "$comment": "The rules for each known type follow the Event
         Object Parameter Applicability by Type tables. SHOULD NO
        T statements, such as dialog in the event types other tha
        n channel-contributors, are not enforced. An Event Object
         with a type which is not listed is only checked for the 
        parameters common to all types."
    },
    "Dialog": {
      "type": "object",
      "description": "Represents a segment of captured conversati
        on; an empty Dialog Object holds a position in the dialog
         array",
      "anyOf": [
        {
          "required": [
            "type"
          ]
        },
        {
          "maxProperties": 0,
          "$comment": "An empty Dialog Object has no type and no 
            meaning"
        }
      ],
      "properties": {
        "type": {
          "type": "string",
          "description": "Type of dialog: recording, text, incomp
            lete, or a value defined in a vCon extension"
        },
        "start": {
          "type": "string",
          "format": "date-time",
          "description": "Start time of the dialog in RFC3339 for
            mat; SHOULD be present unless not known"
        },
        "duration": {
          "anyOf": [
            {
              "type": "integer",
              "minimum": 0
            },
            {
              "type": "number",
              "minimum": 0
            }
          ],
          "description": "Duration in seconds"
        },
        "parties": {
          "anyOf": [
            {
              "type": "integer",
              "minimum": 0
            },
            {
              "type": "array",
              "items": {
                "type": "integer",
                "minimum": 0
              }
            },
            {
              "type": "array",
              "items": {
                "anyOf": [
                  {
                    "type": "integer",
                    "minimum": 0
                  },
                  {
                    "type": "array",
                    "items": {
                      "type": "integer",
                      "minimum": 0
                    }
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            }
          ],
          "description": "Index/indices of the parties that contr
            ibuted to the dialog content; SHOULD be present for r
            ecording and text types"
        },
        "mediatype": {
          "type": "string",
          "description": "Media type of the dialog content; MUST 
            be present for inline content; not required when Dial
            og Content is absent"
        },
        "filename": {
          "type": "string",
          "description": "Original filename of the dialog content
            "
        },
        "body": {
          "description": "Inline content of the dialog (for inlin
            e files).  Any type for encoding json; a string for e
            ncoding base64url or none."
        },
        "encoding": {
          "type": "string",
          "description": "Encoding type for inline content: base6
            4url, json, none, or a value defined in a vCon extens
            ion"
        },
        "url": {
          "type": "string",
          "format": "uri",
          "description": "HTTPS URL for externally referenced con
            tent"
        },
        "content_hash": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          ],
          "description": "Hash(es) of external content"
        },
        "disposition": {
          "type": "string",
          "description": "Reason the call or conversation failed 
            (required for incomplete type, SHOULD NOT be present 
            for other types): no-answer, congestion, failed, busy
            , hung-up, voicemail-no-message, or a value defined i
            n a vCon extension; \"failed\" SHOULD be used when th
            e reason is not known"
        },
        "session_id": {
          "anyOf": [
            {
              "$ref": "#/definitions/SessionId"
            },
            {
              "type": "array",
              "items": {
                "$ref": "#/definitions/SessionId"
              }
            },
            {
              "type": "array",
              "items": {
                "oneOf": [
                  {
                    "$ref": "#/definitions/SessionId"
                  },
                  {
                    "type": "array",
                    "items": {
                      "$ref": "#/definitions/SessionId"
                    }
                  }
                ]
              }
            }
          ],
          "description": "Session ID(s) for the dialog, correlate
            d with the parties parameter"
        },
        "application": {
          "type": "string",
          "description": "Application, communication channel or c
            ontext of the conversation"
        },
        "message_id": {
          "type": "string",
          "description": "Unique message identifier from the mess
            aging system"
        },
        "redacted_segments": {
          "type": "array",
          "description": "Redacted_segments Objects for the audio
            visual segments which were redacted; SHOULD NOT be pr
            esent for text; MUST NOT be present for incomplete",
          "items": {
            "$ref": "#/definitions/RedactedSegments"
          }
        }
      },
      "dependencies": {
        "url": [
          "content_hash"
        ]
      },
      "allOf": [
        {
          "if": {
            "properties": {
              "type": {
                "const": "incomplete"
              }
            },
            "required": [
              "type"
            ]
          },
          "then": {
            "required": [
              "disposition"
            ],
            "not": {
              "anyOf": [
                {
                  "required": [
                    "mediatype"
                  ]
                },
                {
                  "required": [
                    "filename"
                  ]
                },
                {
                  "required": [
                    "body"
                  ]
                },
                {
                  "required": [
                    "encoding"
                  ]
                },
                {
                  "required": [
                    "url"
                  ]
                },
                {
                  "required": [
                    "content_hash"
                  ]
                },
                {
                  "required": [
                    "message_id"
                  ]
                },
                {
                  "required": [
                    "redacted_segments"
                  ]
                }
              ]
            }
          }
        },
        {
          "if": {
            "required": [
              "body"
            ],
            "properties": {
              "body": {
                "not": {
                  "const": ""
                }
              }
            }
          },
          "then": {
            "required": [
              "encoding"
            ]
          }
        },
        {
          "if": {
            "required": [
              "body"
            ],
            "properties": {
              "body": {
                "not": {
                  "const": ""
                }
              }
            }
          },
          "then": {
            "required": [
              "mediatype"
            ]
          }
        },
        {
          "if": {
            "properties": {
              "encoding": {
                "enum": [
                  "base64url",
                  "none"
                ]
              }
            },
            "required": [
              "encoding"
            ]
          },
          "then": {
            "properties": {
              "body": {
                "type": "string"
              }
            }
          }
        }
      ],
      "$comment": "The rules for each known type follow the Dialo
        g Object Parameter Applicability by Type table. A Dialog 
        Object with a type which is not listed is only checked fo
        r the rules common to all types."
    },
    "SessionId": {
      "type": "object",
      "description": "Session identifier with local and remote UU
        IDs",
      "properties": {
        "local": {
          "type": "string",
          "description": "Local UUID for the session"
        },
        "remote": {
          "type": "string",
          "description": "Remote UUID for the session"
        }
      }
    },
    "Attachment": {
      "type": "object",
      "description": "Represents an ancillary document related to
         the conversation",
      "required": [
        "start",
        "party"
      ],
      "properties": {
        "purpose": {
          "type": "string",
          "description": "text description of what the attachment
             is for"
        },
        "start": {
          "type": "string",
          "format": "date-time",
          "description": "Time the attachment was sent/exchanged 
            in RFC3339 format"
        },
        "party": {
          "type": "integer",
          "minimum": 0,
          "description": "Index of the party that contributed the
             attachment"
        },
        "dialog": {
          "type": "integer",
          "minimum": 0,
          "description": "Index of the dialog this attachment is 
            part of (optional; at least one of dialog or session 
            MUST be present)"
        },
        "session": {
          "oneOf": [
            {
              "type": "integer",
              "minimum": 0
            },
            {
              "type": "array",
              "items": {
                "type": "integer",
                "minimum": 0
              }
            }
          ],
          "description": "Index/indices of the Session Object(s) 
            this attachment is related to"
        },
        "mediatype": {
          "type": "string",
          "description": "Media type of the attachment content; M
            UST be present for inline content; not required when 
            Attachment Content is absent"
        },
        "filename": {
          "type": "string",
          "description": "Original filename of the attachment"
        },
        "body": {
          "description": "Inline content of the attachment (for i
            nline files).  Any type for encoding json; a string f
            or encoding base64url or none."
        },
        "encoding": {
          "type": "string",
          "description": "Encoding type for inline content: base6
            4url, json, none, or a value defined in a vCon extens
            ion"
        },
        "url": {
          "type": "string",
          "format": "uri",
          "description": "HTTPS URL for externally referenced att
            achment"
        },
        "content_hash": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          ],
          "description": "Hash(es) of external content"
        }
      },
      "dependencies": {
        "url": [
          "content_hash"
        ]
      },
      "anyOf": [
        {
          "required": [
            "dialog"
          ]
        },
        {
          "required": [
            "session"
          ]
        }
      ],
      "allOf": [
        {
          "if": {
            "required": [
              "body"
            ],
            "properties": {
              "body": {
                "not": {
                  "const": ""
                }
              }
            }
          },
          "then": {
            "required": [
              "encoding"
            ]
          }
        },
        {
          "if": {
            "required": [
              "body"
            ],
            "properties": {
              "body": {
                "not": {
                  "const": ""
                }
              }
            }
          },
          "then": {
            "required": [
              "mediatype"
            ]
          }
        },
        {
          "if": {
            "properties": {
              "encoding": {
                "enum": [
                  "base64url",
                  "none"
                ]
              }
            },
            "required": [
              "encoding"
            ]
          },
          "then": {
            "properties": {
              "body": {
                "type": "string"
              }
            }
          }
        }
      ]
    },
    "Analysis": {
      "type": "object",
      "description": "Represents analysis performed on the conver
        sational data",
      "required": [
        "type",
        "vendor"
      ],
      "properties": {
        "type": {
          "type": "string",
          "description": "Semantic type of analysis (e.g., report
            , sentiment, summary, transcript, translation, tts)"
        },
        "dialog": {
          "oneOf": [
            {
              "type": "integer",
              "minimum": 0
            },
            {
              "type": "array",
              "items": {
                "type": "integer",
                "minimum": 0
              }
            }
          ],
          "description": "Index/indices of dialog objects this an
            alysis is based on (optional)"
        },
        "sessions": {
          "oneOf": [
            {
              "type": "integer",
              "minimum": 0
            },
            {
              "type": "array",
              "items": {
                "type": "integer",
                "minimum": 0
              }
            }
          ],
          "description": "Index/indices of Session Objects this a
            nalysis is based on (optional)"
        },
        "attachment": {
          "oneOf": [
            {
              "type": "integer",
              "minimum": 0
            },
            {
              "type": "array",
              "items": {
                "type": "integer",
                "minimum": 0
              }
            }
          ],
          "description": "Index/indices of attachment objects thi
            s analysis is based on (optional)"
        },
        "analysis": {
          "oneOf": [
            {
              "type": "integer",
              "minimum": 0
            },
            {
              "type": "array",
              "items": {
                "type": "integer",
                "minimum": 0
              }
            }
          ],
          "description": "Index/indices of other Analysis Objects
             this analysis is based on (optional); MUST NOT refer
            ence itself"
        },
        "mediatype": {
          "type": "string",
          "description": "Media type of the analysis content; SHO
            ULD be provided for inline content and for external c
            ontent without an HTTPS Content-Type header; when no 
            media type is defined for the data format, the vendor
            , product and schema parameters SHOULD identify the f
            ormat instead"
        },
        "filename": {
          "type": "string",
          "description": "Original filename of the analysis data"
        },
        "vendor": {
          "type": "string",
          "description": "Vendor or product name that generated t
            he analysis"
        },
        "product": {
          "type": "string",
          "description": "Product name to differentiate from othe
            r vendor products"
        },
        "schema": {
          "type": "string",
          "description": "Token or label for the data format/sche
            ma of the analysis"
        },
        "body": {
          "description": "Inline content of the analysis (for inl
            ine files).  Any type for encoding json; a string for
             encoding base64url or none."
        },
        "encoding": {
          "type": "string",
          "description": "Encoding type for inline content: base6
            4url, json, none, or a value defined in a vCon extens
            ion"
        },
        "url": {
          "type": "string",
          "format": "uri",
          "description": "HTTPS URL for externally referenced ana
            lysis"
        },
        "content_hash": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          ],
          "description": "Hash(es) of external content"
        }
      },
      "dependencies": {
        "url": [
          "content_hash"
        ]
      },
      "allOf": [
        {
          "if": {
            "required": [
              "body"
            ],
            "properties": {
              "body": {
                "not": {
                  "const": ""
                }
              }
            }
          },
          "then": {
            "required": [
              "encoding"
            ]
          }
        },
        {
          "if": {
            "properties": {
              "encoding": {
                "enum": [
                  "base64url",
                  "none"
                ]
              }
            },
            "required": [
              "encoding"
            ]
          },
          "then": {
            "properties": {
              "body": {
                "type": "string"
              }
            }
          }
        }
      ],
      "$comment": "At least one of the dialog, sessions, attachme
        nt or analysis parameters SHOULD be present. An Analysis 
        Object MUST NOT reference itself in the analysis paramete
        r; this is not enforced by this schema."
    },
    "RedactedString": {
      "type": "object",
      "description": "Information about a substring of the vCon w
        hich was replaced by __REDACTED_REF_#",
      "required": [
        "ref"
      ],
      "properties": {
        "ref": {
          "type": "integer",
          "minimum": 1,
          "maximum": 99999,
          "description": "Reference number of the redacted substr
            ing"
        },
        "type": {
          "type": "string",
          "description": "Type of information redacted: GOVT_ID_N
            UM, FIN_ID_NUM, MED_ID_NUM, BIOMETRIC, AUTH_DATA, CON
            TACT_INFO, LOC_INFO, EMPL_INFO, BELIEF_INFO, UNSPECIF
            IED or another value; absent means UNSPECIFIED"
        },
        "orig": {
          "type": "string",
          "description": "Original, unredacted value of the subst
            ring"
        }
      },
      "$comment": "That each __REDACTED_REF_# substring has a Red
        acted_string Object with a matching ref is not enforced b
        y this schema."
    },
    "RedactedSegments": {
      "type": "object",
      "description": "An audiovisual segment of a recording which
         was redacted",
      "required": [
        "start",
        "end"
      ],
      "properties": {
        "start": {
          "type": "string",
          "format": "date-time",
          "description": "Start time of the redaction in RFC3339 
            format"
        },
        "end": {
          "type": "string",
          "format": "date-time",
          "description": "End time of the redaction in RFC3339 fo
            rmat"
        },
        "parties": {
          "type": "array",
          "items": {
            "type": "integer",
            "minimum": 0
          },
          "description": "Indices of the parties whose content wa
            s redacted"
        }
      },
      "$comment": "TODO: should use duration instead of end?"
    }
  },
  "not": {
    "required": [
      "redacted_from",
      "amended_from"
    ],
    "$comment": "The redacted_from and amended_from parameters ar
      e mutually exclusive"
  },
  "allOf": [
    {
      "if": {
        "anyOf": [
          {
            "required": [
              "dialog"
            ],
            "properties": {
              "dialog": {
                "minItems": 1
              }
            }
          },
          {
            "required": [
              "events"
            ],
            "properties": {
              "events": {
                "minItems": 1
              }
            }
          }
        ]
      },
      "then": {
        "required": [
          "sessions"
        ],
        "properties": {
          "sessions": {
            "minItems": 1
          }
        },
        "$comment": "At least one Session Object MUST exist if th
          e events array or the dialog array contain Objects"
      }
    }
  ],
  "$comment": "This schema is permissive: parameters and type val
    ues which are not defined in RFCXXXX do not cause validation 
    to fail. At least one of the parties, dialog, analysis or att
    achments parameters SHOULD be present. SHOULD-level statement
    s are not enforced by this schema. Index values are not check
    ed against the size of the array which they reference."
}

]]></artwork>
    </section>
    <section anchor="vcon-cddl">
      <name>vCon CDDL</name>
      <t>This CDDL for vCon core is provided as informational.
The text in sections 1-6 of this document define the normative definition of the vCon CDDL.
If the CDDL provided below differs or conflicts from that in the text of the above sections, the text should be taken as the definitive definition and the CDDL below should be consider incorrect.
The CDDL is strict: parameters and type values which are not defined in this document cause validation to fail unless the CDDL for the vCon extension which defines them is also used.
Failing validation against this CDDL is not by itself a reason to reject a vCon (see <xref target="extending-vcon"/>).</t>
      <artwork><![CDATA[
; CDDL for the JSON vCon - Conversation Data Container
; Generated from the prose of draft-ietf-vcon-vcon-core
; (syntax version 0.5.0).
; The prose of the draft is normative.
; This CDDL is informative.
; Constraints that cannot be expressed in CDDL are stated in
; comments.
;
; This CDDL follows the text of the draft at commit 7f1fee9.
;
; This CDDL is strict.  A parameter or value which is not defined
; here does not validate, unless the CDDL of the vCon extension
; which defines it is used together with this CDDL.  Failing
; validation against this CDDL is not by itself a reason to
; reject a vCon.  The draft defines how parameters and values
; which are not recognized are handled (see Extending vCon).
;
; Extension points
; ----------------
; The extension points are CDDL sockets (RFC 8610, Section 3.9).
;
; 1. Adding parameters to an Object.
;
; Each Object ends with a group socket named for that Object.
; A vCon extension adds parameters to that Object only, with for
; example:
;
;     $$party-ext //= ( ? example_parameter: tstr )
;
; The "*" before each of these sockets allows the socket to match
; nothing, so that this CDDL can be used with no extensions, and
; allows more than one extension to add to the same Object.
;
; 2. Adding a value which selects other parameters.
;
; The dialog-type-ext socket adds a Dialog Object type along with
; the parameters which apply to that type.  The event-type-ext
; socket does the same for an Event Object type.  An Event Object
; type defined in a vCon extension may allow the value of its
; dialog parameter to be an array of Dialog Object indices
; (dialog_index_or_list_type).  The encoding-ext
; socket adds an encoding value along with the form of the body
; parameter for that encoding.  For example:
;
;     $$dialog-type-ext //= example_dialog_type
;     example_dialog_type = (
;         type: "example",
;         dialog_common_type,
;         ? example_parameter: tstr,
;         * $$example-dialog-ext
;       )
;
;     $$encoding-ext //= ( encoding: "example", body: tstr )
;
; A group which defines a new type is best given a rule name and
; ended with a socket of its own, as above, so that another
; extension can add parameters to that type.
;
; 3. Adding a value to a list of values.
;
; The disposition-ext socket adds a disposition value.  The
; session-reference-type-ext socket adds a Session_Reference
; Object type value.  For example:
;
;     $disposition-ext /= "example"
;
; The sockets in 2 and 3 are alternatives in a choice.  They have
; no "*" and are not to be given one.
;
; The header objects of the signed and encrypted forms have no
; socket.  They are open, as any JWS or JWE header parameter MAY
; be present in them.

; A vCon JSON object is in one of three forms: unsigned, signed
; (JWS) or encrypted (JWE).

vcon = unsigned_vcon_type / signed_vcon_type / encrypted_vcon_type

; Unsigned Form of vCon Object
;_____________________________

; Not enforced by this CDDL:
; - At least one Session Object MUST exist if the events array or
;   the dialog array contain Objects.
; - An index MUST refer to an Object which exists in the array
;   that it indexes.
unsigned_vcon_type = {
    ; DEPRECATED
    ? "vcon": "0.5.0",
    uuid: uuid_value_type,
    ? extensions: [* tstr],
    ? critical: [* tstr],
    created_at: date_type,
    ? updated_at: date_type,
    ? subject: tstr,
    ; redacted_from and amended_from are mutually exclusive
    ? ( redacted_from: redacted_from_object_type //
        amended_from: amended_from_object_type ),
    ? redacted_strings: [* redacted_string_object_type],
    ; at least one of parties, dialog, analysis or attachments
    ; SHOULD be present
    ? sessions: [* session_object_type],
    ? parties: [* party_object_type],
    ? events: [* event_object_type],
    ? dialog: [* dialog_object_type],
    ? analysis: [* analysis_object_type],
    ? attachments: [* attachment_object_type],
    * $$vcon-ext
  }

; Object and multi-parameter types
;_________________________________

; Redacted_from Object
; uuid SHOULD be provided.
; content_hash MUST be provided if url is provided.
; type has the same set of values as the type parameter of the
; Redacted_string Object.
redacted_from_object_type = {
    ? uuid: uuid_value_type,
    type: tstr,
    ? ( url: url_value_type,
        content_hash: content_hash_type ),
    * $$redacted-from-ext
  }

; Amended_from Object
; uuid is optional only if an external reference is provided.
; content_hash MUST be provided if url is provided.
amended_from_object_type = {
    ? uuid: uuid_value_type,
    ? ( url: url_value_type,
        content_hash: content_hash_type ),
    * $$amended-from-ext
  }

; Redacted_string Object
; Not enforced by this CDDL:
; - Each "__REDACTED_REF_#" substring in the vCon has a
;   Redacted_string Object with a matching ref value.
redacted_string_object_type = {
    ref: 1..99999,
    ; type is an extensible string enumeration: "GOVT_ID_NUM",
    ; "FIN_ID_NUM", "MED_ID_NUM", "BIOMETRIC", "AUTH_DATA",
    ; "CONTACT_INFO", "LOC_INFO", "EMPL_INFO", "BELIEF_INFO",
    ; "UNSPECIFIED" or another value; absent is "UNSPECIFIED"
    ? type: tstr,
    ? orig: tstr,
    * $$redacted-string-ext
  }

; Session Object
; A Session Object with no parameters is permitted.
; start and duration define the time period of the session,
; which need not include the entire time period of its Dialog
; and Event Objects.
session_object_type = {
    ; start SHOULD be present
    ? start: date_type,
    ? duration: duration_type,
    ; parties SHOULD be present; the first party is the implied
    ; originator of the session
    ? parties: [* party_index_type],
    ; only provided if the first party in parties is not the
    ; originator
    ? originator: party_index_type,
    ; a single SessionId Object
    ? session_id: session_id_object_type,
    ? sessions: [* session_reference_object_type],
    ? dialog: [* dialog_index_type],
    * $$session-ext
  }

; Session_Reference Object
session_reference_object_type = {
    session: session_index_type,
    type: session_reference_type_value_type,
    ? description: tstr,
    * $$session-reference-ext
  }

session_reference_type_value_type = "child" / "peer" /
    "precursor" / "breakout" / $session-reference-type-ext

; Event Object
; The type selects which parameters apply (see Event Object
; Parameter Applicability by Type).
; A vCon extension adds an Event Object type through the
; event-type-ext socket and adds parameters to all Event Object
; types through the event-ext socket.
; Not enforced by this CDDL:
; - An Event Object applies only to the Session Objects listed in
;   its sessions parameter, and not to their child or parent
;   Session Objects unless they are also listed.
event_object_type = {
    ( event_party_type //
      event_key_type //
      event_consultation_start_type //
      event_blind_transfer_type //
      event_consultative_transfer_type //
      event_transfer_abandoned_type //
      event_channel_contributors_type //
      $$event-type-ext ),
    * $$event-ext
  }

; Parameters common to the party and key event types
event_common_type = (
    "time": date_type,
    sessions: session_index_or_list_type,
    party: party_index_type,
    ; dialog SHOULD NOT be present
    ? dialog: dialog_index_type
  )

; Parameters common to the transfer event types
; sessions is a single index which references the Session Object
; for the original call, and party references the Transferor.
event_transfer_common_type = (
    "time": date_type,
    sessions: session_index_type,
    party: party_index_type,
    ; dialog SHOULD NOT be present
    ? dialog: dialog_index_type
  )

; Party event types
event_party_type = (
    type: "join" / "drop" / "hold" / "unhold" / "mute" / "unmute",
    event_common_type
  )

; Key event types
event_key_type = (
    type: "keydown" / "keyup",
    event_common_type,
    button: tstr
  )

; Transfer event types
; transferee and transfer_target reference Party Objects.
; consultation and target_session reference Session Objects.
event_consultation_start_type = (
    type: "consultation-start",
    event_transfer_common_type,
    transferee: party_index_type,
    transfer_target: party_index_type,
    consultation: session_index_type
  )

event_blind_transfer_type = (
    type: "blind-transfer",
    event_transfer_common_type,
    transferee: party_index_type,
    transfer_target: party_index_type,
    target_session: session_index_type
  )

event_consultative_transfer_type = (
    type: "consultative-transfer",
    event_transfer_common_type,
    transferee: party_index_type,
    transfer_target: party_index_type,
    consultation: session_index_type,
    target_session: session_index_type
  )

event_transfer_abandoned_type = (
    type: "transfer-abandoned",
    event_transfer_common_type,
    transferee: party_index_type,
    ? transfer_target: party_index_type,
    ? consultation: session_index_type
  )

; Channel contributors event type
; sessions and party MUST NOT be present.  The sessions of the
; event are the Session Objects which reference its Dialog
; Object.
; Not enforced by this CDDL:
; - dialog MUST reference a "recording" type Dialog Object.
; - channel MUST be less than the number of channels in the
;   recording.
event_channel_contributors_type = (
    type: "channel-contributors",
    "time": date_type,
    dialog: dialog_index_type,
    channel: uint,
    ; absent or null: no party contributes to the channel
    ? contributors: party_index_type / [* party_index_type] /
        null
  )

; Party Object
; A Party Object with no parameters is permitted.
party_object_type = {
    ? tel: tstr,
    ? sip: tstr,
    ? stir: tstr,
    ? mailto: tstr,
    ? name: tstr,
    ? did: tstr,
    ? validation: tstr,
    ? gmlpos: tstr,
    ? civicaddress: civicaddress_type,
    ; a free form unique identifier for the participant;
    ; not constrained to UUID syntax
    ? uuid: tstr,
    ; type SHOULD be "person", "bot" or "organization"
    ? type: tstr,
    ? org: tstr,
    ? dept: tstr,
    * $$party-ext
  }

; Civicaddress Object
civicaddress_type = {
    ? country: tstr,
    ? a1: tstr,
    ? a2: tstr,
    ? a3: tstr,
    ? a4: tstr,
    ? a5: tstr,
    ? a6: tstr,
    ? prd: tstr,
    ? pod: tstr,
    ? sts: tstr,
    ? hno: tstr,
    ? hns: tstr,
    ? lmk: tstr,
    ? loc: tstr,
    ? flr: tstr,
    ? nam: tstr,
    ? pc: tstr,
    * $$civicaddress-ext
  }

; Dialog Object
; The type selects which parameters apply (see Dialog Object
; Parameter Applicability by Type).
; A placeholder Dialog Object contains only the type parameter and,
; for the "incomplete" type, the required disposition parameter.
; A placeholder Dialog Object MUST be of type "recording" if the
; call was set up, or of type "incomplete" if it was not.
; An empty Dialog Object has no type and no meaning; it holds a
; position in the dialog array.
; A vCon extension adds a Dialog Object type through the
; dialog-type-ext socket and adds parameters to all Dialog Object
; types through the dialog-ext socket.
dialog_object_type = {
    ( dialog_recording_type //
      dialog_text_type //
      dialog_incomplete_type //
      $$dialog-type-ext ),
    * $$dialog-ext
  } / empty_dialog_object_type

empty_dialog_object_type = {}

; Parameters common to all Dialog Object types
dialog_common_type = (
    ; start SHOULD be present; MAY be omitted if not known
    ? start: date_type,
    ? duration: duration_type,
    ? session_id: session_id_parameter_type,
    ? application: tstr
  )

dialog_recording_type = (
    type: "recording",
    dialog_common_type,
    dialog_media_based_type
  )

dialog_text_type = (
    type: "text",
    dialog_common_type,
    dialog_media_based_type
  )

; Parameters of the "recording" and "text" type Dialog Objects
dialog_media_based_type = (
    ; parties SHOULD be present
    ? parties: dialog_parties_type,
    ; mediatype MUST be present for inline content; not required
    ; when Dialog Content is absent
    ? mediatype: media_type_value_type,
    ? filename: tstr,
    ? message_id: tstr,
    ; disposition SHOULD NOT be present
    ? disposition: disposition_value_type,
    ; redacted_segments SHOULD NOT be present in "text" type
    ; Dialog Objects
    ? redacted_segments: [* redacted_segments_object_type],
    ; Dialog Content SHOULD be present;
    ; body or url MAY be absent if redacted
    ? file_content_type
  )

; Redacted_segments Object
; TODO: should use duration instead of end?
redacted_segments_object_type = {
    start: date_type,
    end: date_type,
    ? parties: [* party_index_type],
    * $$redacted-segments-ext
  }

; mediatype, filename, message_id, redacted_segments and Dialog
; Content MUST NOT be present in "incomplete" type Dialog
; Objects.
dialog_incomplete_type = (
    type: "incomplete",
    dialog_common_type,
    ? parties: dialog_parties_type,
    ; "failed" SHOULD be used when the reason is not known
    disposition: disposition_value_type
  )

; Attachment Object
attachment_object_type = {
    ? purpose: tstr,
    start: date_type,
    party: party_index_type,
    ; at least one of dialog or session MUST be present
    ( ( dialog: dialog_index_type,
        ? session: session_index_or_list_type ) //
      session: session_index_or_list_type ),
    ; mediatype MUST be present for inline content; not required
    ; when Attachment Content is absent
    ? mediatype: media_type_value_type,
    ? filename: tstr,
    ; Attachment Content SHOULD be present;
    ; body or url MAY be absent if redacted
    ? file_content_type,
    * $$attachment-ext
  }

; Analysis Object
; At least one of dialog, sessions, attachment or analysis SHOULD
; be present.
; An Analysis Object MUST NOT reference itself in the analysis
; parameter.  This is not enforced by this CDDL.
analysis_object_type = {
    ; type SHOULD be one of: "report", "sentiment", "summary",
    ; "transcript", "translation", "tts"
    type: tstr,
    ? dialog: dialog_index_or_list_type,
    ? sessions: session_index_or_list_type,
    ? attachment: attachment_index_or_list_type,
    ? analysis: analysis_index_or_list_type,
    ; mediatype SHOULD be present for inline content; when no
    ; media type is defined for the analysis data format, the
    ; vendor, product and schema parameters SHOULD identify the
    ; format instead
    ? mediatype: media_type_value_type,
    ? filename: tstr,
    vendor: tstr,
    ? product: tstr,
    ? schema: tstr,
    ; Analysis Content SHOULD be present;
    ; body or url MAY be absent if redacted
    ? file_content_type,
    * $$analysis-ext
  }

; Inline Files and Externally Referenced Files
;_____________________________________________

; When the url of externally referenced content has been
; redacted, the content_hash MAY remain without the url.
file_content_type = ( inline_content_type //
    external_content_type // redacted_content_type )

; body is any JSON value when encoding is "json";
; otherwise body is a string.
; A vCon extension which adds an encoding value also defines the
; form of body for that encoding.
inline_content_type = (
    ( encoding: "json",
      body: any ) //
    ( encoding: "none" / "base64url",
      body: tstr ) //
    $$encoding-ext
  )

external_content_type = (
    url: url_value_type,
    content_hash: content_hash_type
  )

redacted_content_type = (
    content_hash: content_hash_type
  )

; SessionId Object
; The empty object is the placeholder for a party with no session id.
session_id_object_type = {
    ? "local": uuid_value_type,
    ? "remote": uuid_value_type
  }

session_id_parameter_type =
    session_id_object_type /
    [* ( session_id_object_type / [* session_id_object_type] )]

; Basic types and single parameter types
;_______________________________________

; RFC3339 date string
; The pattern is in two parts only to keep the lines short.  The
; first 19 characters are the date, "T" and the time.  The rest is
; the optional fraction of a second and the time zone offset.
date_type = date_and_time_type .and date_offset_type
date_and_time_type = tstr .regexp
    "[0-9]{4}-[0-9]{2}-[0-9]{2}[Tt][0-9]{2}:[0-9]{2}:[0-9]{2}.*"
date_offset_type = tstr .regexp
    ".{19}([.][0-9]+)?([Zz]|[+-][0-9]{2}:[0-9]{2})"

; String token of the form: hash algorithm, "-", Base64Url encoded
; digest, e.g. "sha512-..."
content_hash_value_type = tstr .regexp "[a-z0-9]+-[A-Za-z0-9_-]+"

content_hash_type =
    content_hash_value_type / [* content_hash_value_type]

; Duration in seconds; MUST be non-negative
duration_type = uint / float

; Dialog Object disposition values
disposition_value_type = "no-answer" / "congestion" / "failed" /
    "busy" / "hung-up" / "voicemail-no-message" /
    $disposition-ext

; Media type of the form: type "/" subtype
media_type_value_type = tstr .regexp
    "[A-Za-z0-9!#$&^_.+-]+/[A-Za-z0-9!#$&^_.+-]+(;.*)?"

party_index_type = uint

dialog_index_type = uint

dialog_index_or_list_type = dialog_index_type / [* dialog_index_type]

attachment_index_type = uint

attachment_index_or_list_type =
    attachment_index_type / [* attachment_index_type]

session_index_type = uint

session_index_or_list_type =
    session_index_type / [* session_index_type]

analysis_index_type = uint

analysis_index_or_list_type =
    analysis_index_type / [* analysis_index_type]

; Index or indices of parties; the nested array form is used for
; multi-channel recordings with one entry per channel; null is the
; placeholder for an unused channel.
dialog_parties_type = party_index_type /
    [* ( party_index_type / [* party_index_type] / null )]

; UUID string
uuid_value_type = tstr .regexp
    "[0-9a-fA-F]{8}(-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}"

; HTTPS URL
url_value_type = tstr .regexp "https://.+"

; Signed Form of vCon Object
;___________________________

signed_vcon_type = {
    payload: base64url_value_type,
    signatures: [+ signature_object_type],
    * $$signed-ext
  }

; Signature Object
signature_object_type = {
    header: signed_header_object_type,
    ; present when the JWS Protected Header is not empty
    ? protected: base64url_value_type,
    signature: base64url_value_type,
    * $$signature-ext
  }

; Header Object of the signed form
; MUST include at least one of x5c or x5u.
; Other JWS header parameters MAY be present.
; Not enforced by this CDDL, as the JWS Protected Header is an
; opaque string here:
; - alg MUST be present here or in the JWS Protected Header, and
;   SHOULD be in the JWS Protected Header.
; - alg MUST NOT be "none" in the JWS Protected Header.
; - A header parameter MUST NOT be present in both the JWS
;   Protected Header and the Header Object.
signed_header_object_type = {
    ; SHOULD be "RS256"; MUST NOT be "none"
    ? alg: tstr .ne "none",
    ( ( x5c: [+ tstr],
        ? x5u: url_value_type ) //
      x5u: url_value_type ),
    ? uuid: uuid_value_type,                 ; SHOULD be provided
    * tstr => any
  }

; Encrypted Form of vCon Object
;______________________________

; Not enforced by this CDDL, as the JWE Protected Header is an
; opaque string here:
; - enc MUST be present in the JWE Protected Header or the
;   Unprotected Object.
; - alg MUST be present in the JWE Protected Header, the
;   Unprotected Object or the Header Object of each recipient.
; - A header parameter MUST NOT be present in more than one of
;   those locations.
encrypted_vcon_type = {
    ? protected: base64url_value_type,
    unprotected: unprotected_object_type,
    recipients: [+ recipient_object_type],
    iv: base64url_value_type,
    ciphertext: base64url_value_type,
    tag: base64url_value_type,
    ? aad: base64url_value_type,
    * $$encrypted-ext
  }

; Unprotected Object
; Other JWE header parameters MAY be present.
unprotected_object_type = {
    ; cty SHOULD be "application/vcon" or "application/vcon+gzip"
    cty: tstr,
    ; enc SHOULD be "A256CBC-HS512"
    ? enc: tstr,
    ? alg: tstr,
    ? uuid: uuid_value_type,                 ; SHOULD be provided
    * tstr => any
  }

; Recipient Object
; A Recipient Object with no parameters is permitted.
recipient_object_type = {
    ? header: recipient_header_object_type,
    ; present when the JWE Encrypted Key is not empty
    ? encrypted_key: base64url_value_type,
    * $$recipient-ext
  }

; Header Object of a recipient in the encrypted form
; Other JWE header parameters MAY be present.
recipient_header_object_type = {
    ? alg: tstr,                             ; SHOULD be "RSA-OAEP"
    * tstr => any
  }

; Base64Url encoded string
base64url_value_type = tstr .regexp "[A-Za-z0-9_-]+"
]]></artwork>
    </section>
    <section anchor="vcon-extension-template">
      <name>vCon Extension Template</name>
      <t>A template for writing a vCon extension Internet-Draft is provided in kramdown-rfc markdown.
It contains the sections required of an extension document in <xref target="extending-vcon">Extending vCon</xref>, along with JSON Schema and CDDL appendices.
The template can be downloaded from:
https://raw.githubusercontent.com/ietf-wg-vcon/draft-ietf-vcon-vcon-core/refs/heads/main/template-draft-vcon-xxxx-extension.md</t>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <ul spacing="normal">
        <li>
          <t>Thank you to Thomas McCarthy-Howe for inventing the concept of a vCon and the many discussions that we had while this concept was developed into reality.</t>
        </li>
        <li>
          <t>Thank you to Jonathan Rosenberg and Andrew Siciliano for their input to the vCon container requirements in the form of I-D: draft-rosenberg-vcon-cc-usecases and for the data structure ideas to create Session Objects instead of recording-sets type Dialogs and elevating party_history event Objects into the Event Object array at the top level and the contribution for tagging redactions and enumerating the vCon redaction techniques possible in vCon.</t>
        </li>
        <li>
          <t>Thank you to Rohan Mahy for his help in exploring the CDDL schema and CBOR format for vCon and testing out the extension framework with MIME.</t>
        </li>
        <li>
          <t>The examples in this document were generated using the command line interface (CLI) from the py-vcon <xref target="PY-VCON"/> python open source project.</t>
        </li>
        <li>
          <t>Thank you to Steve Lasker for formatting and spelling edits.</t>
        </li>
        <li>
          <t>Thank you to Mike Jones for input and help media types, version and helping to form the extension framework.</t>
        </li>
        <li>
          <t>Thank you to Jonathan Lennox for numerous inputs including separate single channel recordings per party and the extension framework.</t>
        </li>
        <li>
          <t>Thank you to Marc Petit-Huguenin for sorting out session_id.</t>
        </li>
        <li>
          <t>Thank you to Rob Sliwa for helping to review and test the JSON Schema.</t>
        </li>
        <li>
          <t>Thank you to Mike Jones, Richard Barnes and Mike Ounsworth for their help with providing an approach to maintaining integrity for long term storage of signed vCons.</t>
        </li>
        <li>
          <t>Thank you to Scott Godin for several thorough reviews and the idea and help on designing the multi-segment recording metadata concept for recording-set.</t>
        </li>
        <li>
          <t>Thank you to Henk Birkholz for identifying a few ambiguities in the syntax and a few missing IANA entries.</t>
        </li>
        <li>
          <t>Thank you to Eugene Tcipnjatov for pushing me to solve the recording topology case where the contributors change over time.</t>
        </li>
      </ul>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA9y963obR5Io+B9PUYfe87WoASBLst1tenb60CLVZh/rMiLd
7l61jk4BKJI1AlCYqgIptKR5ln2WfbKNa2ZkVhYAyvZ8s6vvsyVUZeUlMjIy
7jEajQZt2c6Lo+zg4rrI/nz+4nl2WdWLvMW/spsn1TIbZfD/m6Ju8raEnyd5
m+OTNi+XRX0wyCeTuriBDuhj/OJgMM3b4qqqN0dZ084Gg1k1XeYLGGRW55ft
qCzay9HNtFry/6ZVXYy+/HowaNaTRdk0MEi7WUHrs9OLp1n2RZbPmwr6L5ez
YlXA/5btwTA7ODv+Hv6CSR6cvbp4ejBYrheToj4azGDsowF03BTLZt0cZW29
LgYwwceDvC5y6Oh4tZqXU1pNk+XLWfaqyOeji3JRHAxuq/rdVV2tV9DuL2Xd
rvN5+Y9iFoCgORi8KzbQcnY0AOhMzSv8jYvCv5+cvKLX+XyezQoA1zyrC1js
zD1dwNMM5pu7J9ygXF7hk2KB37TXMGv6pi3et93RyllRhd/xI2h4WdTFclrI
JOWXaXtTLNcAqyzbY8VZxpty8DNACD7O/oTf4HOcJTzHZf8P3NpxVV/h87ye
XsPz67ZdNUcPHmAzfFTeFGNt9gAfPJjU1W1TPMAOHuCHV2V7vZ7gjiOi3F4R
mjzoxR38ZA6b3rRmNPvpmDscl1V/J/1vxtftYn4wGOTr9rqqccdhvCy7XM/n
jNQn+bIs5tmfspdFW5cFvYW1wdN/EPCOsvOzl8U/sh9/fELvCgbYLF8SHP5H
U66Kf4yn1WIwWNLRAwgdDaDpq6dPHj9+/C39++Ts5Ii+bvP6qoCV6kJvb2/H
t48JmBevHszKGS+H28rRPimmcGhq2dgzPEHlZQmbm92DfpvD7Obh+MsD+sSt
MpNlHGU/P+Z508HK/ryeb7JHXz56hLP60+mLl6/O/nKEU/3q4cNv6dn/dfaS
Hjz89mtq9MPFxctzevLtw4df4pOz4+fHoycvzk9Hxz/+KVzWP9t1lfkyZzQB
qnC1XMC8mwfTCnAF/zd+jzvzL8FKsdPseA60B7Z8AWiL44+++ubL0aPf98Ov
bNfjctk+gJPx4GL06vTJ6IcxfDN+9Hvb+elyNmqrEfyVnRdEpgwoiVz+MH78
6HF2vmnaYtHQp3VxCXjUQqujLOiTgfm8uimQagFAH349cBA/gy/qJSFPPs8u
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
beLXkmhP48rr+uiL/mx38cr181yLC4Xm+O3wPlwXxFLen0lbBmGwFnKHlu8D
fWI99LqVoep9TEfauN6ZRYoykGz9LBVCo5qPy2/7luwvjcCaa2eP2UDUSJ6t
Z6WVlPNf7TejNFasQXGZd+V59djda27s5c62ps9fd10xbG20jdR4t/ywyVZy
MdFc03zrG5u45S1aeqRPZE0c+Of2NhSP8kUruIvgdFWE6JQ364p02bXao6G7
ZFrzWdUK3WqzqahdR3pXvb7nDeau1ez2LPtQmo3H9YagRK+XwGoKUaFTMXet
QAXiFrNHmaOqUFtPPavYaWtx7U0769NhOI8qalA3vUJ9Lly15kexVVaUZcV0
d2JB7hSHkz473bWVOpeA2uN34p3l7AvTsmIde6E2ca/y6Gz63cga1qO6LfuA
e13XvWNrr0krl5eCGh8zQEqDZbPlbzSvBvQrbzpfBa853zxdzdNu3o4a/by7
20hA5G5up+tQkoOFwzR3KVq3c5rUaU/H+qkgbK1DZRc1RKnnefPSel53WkCN
Dk3jdVQoe1Ys9t28rsd2oDEvzG5aKlqd17oZSNfRRnP7uiw40aSmzVb+7qzn
JdFynHNl0Wv1LuGb7B4r5rmsFhnHqY3OH2WhM7ish4K+nSv65bVg5uzgsvKE
0JteBzOjIl6L7Tjud2deeaaGck0QDiu2Dqs3dX49ua+6/LGfOcPRaj/bTJvq
YdCZjvOd7aV1CkahqQ7KqgpE68nooyFd/Jr2zmwgVt8atMeqWZLChlJZbdyJ
Gi63oVtStGpfWVvaviQcL0r9Iu7rzab4MT+WTeUVbCk7m3V/1ZFyU6B86PHW
K0X9iyIK4kYu75SwvyoKzmjdUCWx3vDH/UL+onYG9cL5tGUraWnVoSuvJ8pc
BEJKWTsKwrmgV2Ig4de012Gh0XeWe/AZZV3u1UbBSrsUj81+oDNKaxcXC7GZ
D9bn7nwt9OTZ28De9OZvJdm6dOxA/hjGh/NZ9pTLaebURKmwtw/qtHRgsxhZ
Zq/j9tUPYzwDJL48DpdKZaqO1IF27pYmUnhu9PKLoDJchuZ06gTT88aYdVYS
492TsSotjGXY63U68nxsxZfyeeDa0Xls6bo8GwibKF9VjE5Rmg8LprabApna
OpojJld7s7riFVRBc2dgIVredjEwRpPhWtk0Le3sF9UPB6jJM1O7dIyLu/L7
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
ktVALdaW4MwUP+zt2Loqbduzy/J5aV9U2b20OlqsmnrxbM6qG6kf1zZA8/WF
kTRh9GHfAsqJL3wsCscPxVpIhWVvWfo4ThdAcX+99JVta5lvlGb9SCkvgBzp
Dy2wJOsJi4eZD94mw5MHplYIxHZ7AvZ6VDmYFcF+L76Grvgm97zoXF8s606/
UxmeGwerHPc/Phitngzk8kFeBYDOzbslZ107FEx3uon2gF/qnbx9aRy6I/tU
kWJvfOmWFkAa9VvD85lZ3a/xqt6oibvmdXGdTnp2eWFVqy1Ls/OhVl817Fo8
6ffdSGwG7clWXLVbLSsEataS+VCKE1XZFVrBVukGrg+0reU65y2V+DQcdx2g
/w+U1nAb1ZzrpOfH60Zbvi77hY/oyPZCCsTufKSWl5ECCMnlWAVHy1ja2sIy
rx+n6Xndl8qGMhiHsfcxnxnSVszPa8H8zHAyvMxHlddpx/KH6kBfrGs9Vct7
nlOI5vJ6agSnglIovU/rtfwyjIrBTGnLPevQFxhGbdrNUvwaDRYLYTW1StYg
lsbQawbUx9mqPJspYf206MsrUTkuprlauFKWxmvcjhi/kOz+9q0/1Kux8jEP
tc2wO4x94eoeOtGitwkjweiVF6XDoBpX89a4ZK/G44/TxXtn1gPD97u7V4A/
dvE6z+c3qvqa3+cns+F5sJ59yM3Xnbvp+PmiJjkjRyo49dpia8jLGbOy2uNB
9zQtf2ibuL0/9Fpjofi+GqzP1QCoG17fyPvFqmP48WKszqKaaLy33cHIKoss
4k5eeW55eZWFqF2uRe5cCbRyV5g2faXfaAl5JdYq+10sHX2puNlcKvW6WiwG
Zfudi8kJ1k0zVq7FzbIaqcFxtopXQT3crIRaznOOq7jgKGDDd/WJ+KHFWivS
jMV0BWAkED7USs85r/MfQUkpOuohqoZjWVsKl1Uf6K22upHj1/rH6njY7IP5
aOrG7jvQvnYzFgeyLYoyoDKWdBoBSbUT7eVLuyJYl1Np89ZsLCsb6+Dk13VD
X8zbTa84DaulvToKqiwm5yO+LGZu/LoXtbW83Yy8nTzqeuvD/8/emzc3qmT7
ov/vT+G3T8Q994ZbZeahejiXWUgCDYAQen1CwSQBYpIAIXTj3M/+QNiy5bIl
udpVu/q8duzytlCyWPnLlWvKzAUKiXupT68qKxIwQBDdGZBqsu4BFEX299bk
WctVdC8Oi3kX6tmIJ0K+v7KKmbBWV6K82bj9wVRj++oEcsY5tkp1yTvM1ImD
0BB9oqANGNZXujN2VRFUrBbSxp8MV0zWy4wMyQUqyEHdnjocpFBqzAyUviV7
eUX1nnWU7Y+65gDgqgSwdHsGsP68gEiv5ON8thfFCukXU3u9zVmGrQkaStfO
KZ6N5OcVkKk1GjM71ix6wqaObJdbW5RZwZaFeD7B5zk8SqjBXmG0jQGUVrVV
unVsPLdfb95/qt/ZbKF/vHKqbvvi4qkiyze7/P+wrfyvjh0c2z81etXJYwml
5sgFaIKYRWAd0sTgDgEjWMciTagD4aQLOPVXNoK1hywe67S8e6ahecPHc5+a
yu0fgOAFmMBZ/5uDA20fvjmb8cOfC158bvM2khueCwP1kH5mf3/cc8FnGfnt
v46nc5qTb9yxApvqHc//SkWY+03748G210U8/eNBoKeTi8cTaY9V+dqqTMcz
cNBTwYvH2m55S/mpYhT0dFTt8Vjfsc3jHe2BwOjEgyRK3ImalTjHu/7JDq8d
O7gwbTtfpNvEWrRw/OsY23+PY2zvnkxrRj1Pjgem/vcjv41EXTpd9qf3KJiX
Kbw83/bbrSfUjpV03jucRnYgWIXArwjyFUKvWDTgsjn7xoadHUc7TfWH44nV
P9eTvGjKUlZ//fvvnfrnr4vmTO4CJggYfHbRFyAIECBBoiD8BcQwmMRIBEMx
kvj772+fWTtWsfjmuFqn880j3qe8/XvMPC+EHDVEp3m/1tdndfVghs2kOb7q
58/NDX/Pv+nOicLzQ+EFAaBY/XACOHsm/vffj0Tqfy85fUbhyt1Hjl8y2gz5
Qxq+WEqJ/3x82WTm5n/VVL5DnN3zVHqAewTy6x1u+fmRpROF+sNR+r4+Tqil
/1jCxI8ald36VfX8furIxF01NUf/9OxWJtZbnbyhb89JhG876eVReL1rz714
q4/1v780dP72l0ax/+0vD+3/GuH5218cf3dnv0Ayy+oRrkwvSTpZXoVupzlK
//ff744f6q+WSfMmFTPyw+pr1w13blOh4k52nxeMa8V9+uJPd9S2nr5/ustq
Pju1SfKXfz5SyPyD+xXE0v2f//57y4TzvBVjWz8nzLf1Ux0zN5uaNo7fXFua
YeY+tn+66bltzeFzWuo1q3f/Y1Mk+Z/POHbba2fsPidTvuH77pnxuyfOW5H5
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
xqRrhypmoR5fictBHvMUNVtt+IOMLphgCz+f6h/DrBTZcTrrrgVple/M/Xag
QxNo6PHqYdJh/bjaxitagEoyVOezLciNf6UjFp8gCf/QOQvMxWvbahIft61H
Y0U9QvfPbIAWT+P/L0v0L0v0L0v0L0v0a1iid5IizSYYe+unL1IjJ4l5TnQ8
5iH+z4m5GqXcbLZan129eyRo2o04LNbuMXnhuGktZM0U+v1PL5tu3U3hZvni
pQ0h7Q7cmA+cRMAOaeFIxyRtHAYhhIQJ8/z+GlMIxZp7EQwA60lVx9oIYmI2
DjnIErBIBAdw14ZtE3FJyDFB0wXB5QsKdUgPOgBiwkubIEAExknUxuDzhzxO
/m/DbBT6igBfSBKbn9/wajJAaM34OcU2yGoGBTr7Ikqc9vL/e8bj7xBI4DXn
ZgdGYaiDIGRtXQEc6xDg0kRhwHIchPz9xS3/+S3VhV+rz1dDdSvl13e9UDft
K+fCTpzsahpnOBzbPSrqR/DQDoB3YPAL8G1Dc2t7bfbrSOjs6/968em/zqH2
za1/cN/pXNvxJxfFJJcEakNWBzWXVgexSKdjIWT9FwnZCGwCoL20XvF14moH
vuTomZ8X3NTC3LyTPXs9HV4M9vmofoPpix2O37Z+647jXS/m7zGr/OVO/Pfm
JX/r9tWkjnPHJ0nzZ1Tdvdzk/+Jnu6ttzpc7qTq+iLIxyW1WrrG89V1xcczm
1Zcby/UmhdacfbmTk8fsYJNo+3InJIljVe6Xb4a7RSaJl83LXe1Gko4TCSBh
HH2zbVlbqLdBeQ+Y021HU+K/ycKxzZOtQ7+g0LuN3Lihg30BsXebvOoOgRMg
fj7xzx+buuba3b5Usu+1WbxGCsZIEIfeROp4X1rEdl4cXZYnBGrB+P3N5v/1
NpWrkPr/7lzHFPsCIVcxRW/GlCRREMTfH6WfjGk90T4X02bW3gLqBcSeQL2A
0jegHje2vD9OPxnVIwifCmue3ALqBcROoJLND/7PimyNw6fiWhuXm4C9glqL
Lv4FvFFkwV8Fz6b/nwroMrlBUi8C9YTlBVP2quMYQmIo8cvo1NpZ+fmT/yJe
T5AS8Acn/3/ruR9Vt8B6DbMW2/edpF9z3td9/1QsM/fogV8H9H2gHoH88r68
fetKYQCKvD80PxnTRww+2Um9RUpB+AtGogDwvni14NbtSPj9Pn0gmmkf/w/g
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
8vRzOZ92ax7tWq7pJ2vcN8zCVTG/1IWfME/ff6/are9Tu+E9at8XY92sQC6/
J+2GN4l9D3/XXvp44wuxbngZ1s+1OG+5BTdIwpV+/ARJvnVAriQHb0jgflfc
e+NejhsTtDekL3+u7ntLs92A+JV+nPfhZQL1+Zunv06jUtO0E6c57FPjHmTJ
88mH33f145Kms787rpuutubzC3p+z2zPjcyX3y3SbW3c7LqHLw6q/55uE6ew
j4P6nI31k8cDBg03R5x/N/PctL2oFuqjQLcXMzfL6rbPIv5/To9/BOt3CICg
DoB1IFAF8a8o/BXCvgAAcA8AX4Hn18X/7hRb8/jYGj3oCwlDMIk981jT8l9N
pBfj+2T///OZmm+Gyeq8/VOjV/0qCv+4Tw0ATRCzCKxDYi7eIQCT6FikCXUg
nHQBp/7KRrDff/uv3/7v//2/v/32b/92p/iruHZvdkwS//bbMYP2mD47Xmrc
+9qXuMvaVstkG90ly+Ol/1ctk7tR3aPqjjHDsG2u197DHbc/vqgvDKu7ibus
x6rWHk79ZzNk9fj/5//8t7xMOg0YVceum3V2dhJ3Gsej455u7WxPt3a2T7f+
r1Nur2bVvUu3/s7M3bu1W90VmXv0zxpO75o3kh29HcuteS7qgMXMv/52RMzL
8zT7+vCwNcsvq/qRhVXfua0ZqJVc3qQMH47cOO7u+MdDZPrxg+1u8+xhWU/J
xWqbfqmf99uRgea6v/Tthol6UvpHvPzYDovGZfTjI1B71L5rcrORW/ftCT3P
NZ3609AKXDv/0lIr4gbfWkCb8XC3jUQ+NV8mYZiUR1fucXQee+ckZRwm5tFD
3SbR19+u989382WnXB1Rf3C25jLvHC8d+338VaPtPtT4Zw8Nm1mLweODswfT
WjSjtqjHalGPzKKVjS/Nnb/9Jif5MVnUMD3hmTvO8fNk+/XupWT96RhC+nn2
Zo/N/HizNhncmVayq1s3zJuPYDZPeYHm/8zcWhJriWqu/6//9ae70vNt761R
EONGsty8wzY9fnpa1gJct3cSu2i0QsO8HzvtmB6feD4SrT66K9L6Uvuw5urT
qNSELLOWxFY+XzHbzKWkGbStG9Uda0fs7PZLuFhufa2W+cIKG+aOUGX1HQ3M
X34bhW793EfKbY/iZii+vasWtmbuNxquVkhVIzyN3nCrHmRAZCEGiS8xCDgI
KH/A9AI7mnqOMF3PIB44fhdQleQDpey3mqiSpuO9dEjA+l8pMfUXbPN/MRNj
2rPjSTqfSf4wzHExnoQWI2Kin+2lQAJk1YCPFIbsupSU+oYI9Sxd84d+j7aE
MJgrPXLQzfz66Vnz5P6BQ4esDcnq+CAFXCn6pd++bjni87lSU173dobfI2dK
6c+F0LMEMhaD1Kq7BrgzOmyI1N0JLLi3NnU0bgjYLQ+TmtVx/WSxklixGqgU
NFDF/ZTl4GGgHYaBCNV41N3KSumpe9EEtCMeMPU2g9YAd5B8BJUO4mGoGq/6
n5UDlndqQOubyqaLidOdlPYh2Q0gJz1ScAQPNHw0sCBgZ+pTYO6D8LwCj6My
gCaVoc+BgR6GjmDkTiTvLP/xO13eta/bjLRdzRI8gHvhPJZ2pjD15l1pZ+l8
avlk6Ap8bgv70K5IzwjJwND32ezQC0wG3c3bHI7djHk+1yepMZugtnAcDc+p
P1sVWTc6fh+Z+j60nkCPeH8GyTXY7XbkpRTJySAi43nVgFSz2Yx7PFmaAn8w
m/GP5cRQtb3kg/PBlEPnupxN2bkv655wpOBqYaR2J8VkzdO64OwncTqUpyRr
xuJBCbnDhANzA0JLnfO2EwCMne7cc7s9aXroKdKRwppMJuEE03yQq8cZtSM0
Hq/tyjmE2ZRPDTvgeU1p5cTQa6HrhgezldJ6hI4U6j53J54BeTUWKGBXIqaD
QD2kcmjDcmpB6OFRsA6OwFdO061ALKVAzCXWOFLIpYDXJNXGZFXCpMAoJJYq
+weqHNaC1EjevDutapBrYog/DKRqEKxrsZZQuf6uHYuGshCGx6cfqEyaAo3U
pfWw7ebHa7SzbK7FU9DUj9JbSjq3lyMRkY8UfACVIw0eqKvSUFe5EYRePXUr
+RCGkjCuG/YCmTX85fj31guqFbmZF1v3DT+otVdnK9+/14btVUzwuySKLKAy
DLVdM9SYK9mx0esnc9Hb2XL9eUCPqXJlZnvmQPXolTylKUOlwjN3cqpK46xk
xgY7HY9FlurJY5WbSBQhUKDG0WUpTiJ+O59Ndg6E7DmVGtWEzinQVCIx3Nwz
oanezBBpUnNSHgkOWMrjzNk8taFwZwWcIdHGkfAZBaosR7UGgQbRkUg7zaJw
Jylc2S1fdmlN817Pmwtgev7m9zUdGXoetvMUraelvRdUatb0uTvhJE6YpI6P
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
YBKuxa27S+UeimW18+0HI0WryMit5cfnRRmggTFpVZ0DQ5mVLyt4SIN5iW8f
s0l8n+pN8e4k5jDeMUXdFhfErJzmsodNFQQDNoLe73VWC8lb5yXMMPyc6M7X
9MGbyO3+1D24narVOpEk07BcWB2oIbrehEiFjiazpeirfJUHjDgZDHKy1oNu
Pd+X0r4O6pKR1eJgRGyWwARqR7zbFZe7cO9WCb+QKWUWLYF86DEba6IiqC6C
tFZ76DDX9QzqEFJZ+qjt2dp3RENiMd1auhJOzQ24B0hUMYM6mpPlAb4JKNZN
0yCkM3kkb8JUK7W69azHbs02kxMiDocAhzSX3W1HUaHRYDLabOlwQqOk6xm1
77M/iAsqJRZihnfzZSDYO6NWfmNwHbX5KKbXY/PJSkB4ZQqlFAhYBzpb6mrY
E1SLWm2WwHrMVfuCRUFMMODKGc3nZIeDx4vtqvVA1kYTVgOHsFS33FbshPR4
vatSCB/CC9ILvOHC6Rv7jUsHPj8XhglMe70DwgJOByPaXSQLWh6L5nqwq5LB
gh/rjOLS8dh1O91JNpo4nc2WF9JBqWxVpohczosIi4wISNpZFN1GzbICGFFF
iWa19svK19T/r70v70okeRb9309R15nznj0jKKi4nXlzaBbFFjdw7duPU0AB
pUUV1gLivL6f/WVELpVZC6C23TO/ac+cnqKWzMjIyNgyMsJ2J86TV/Kei+7N
ZtGfBG79sFEbfrqajneOblqTbnuz6I5yhfPmPfWqtT8eDJ/8VqNYubI/Xl6b
633/03krY04tstaJcly+zTVOHy/0rerJ1WGvurnbMMr92+frzPZOiXLa2+3N
i6Pj67uL4qjRq38yDtb9k53hp87Vw8bjnRvcbHTak9x1cGkP726szOk5meP2
9OjJzxu7Tbo2Pz1OCoWyt3Nz+0zuj54/ndfL51Ojcluv72TOSff57erDgb1B
ZP7D5OhsfLmj31dK25edartINZCdq+ph9Wrbz5dcd+e5b5+O6v74ZKu5s24/
FE/M892nwl11ct7rblcOT28O6qWdRqa323isdTfrlKIKvWbrtJ/bbROqLvfH
R/eXxyfjh3I9OM/X7uvVdqaTfzQvape2FeiD3P3z7WPruute5Oq7+tUx2+8m
3Pqkah0e3+3eDWtPw/uqc3Bul3YH9Y7lHj4OBs7T1m3XHK03jryzbT3jWe1e
vr7lmxsndDbHpWCyUd29e+5fdAqXJ58sfeNq52jr/DzXP+ndDDbsxs5R+/Eq
ny8cVz99smu7R5OzWjv4RNhXI0OtxfWHh8dmb3Nno+UVLnNbuem0e309Wr+5
qW5b6w/X9lGpMJoGPbJmjj+W/UKhMuwXnmtev7O1Rfd5q4dWZuNT6dG/uPhU
cK4e7g7N6+utyra1Uzaa/bJ7suWZrbyZO8+c6x/djU6p3Rubm+tb+s24SHn1
XaF6e7LptqudTu7KCuqnvSvdrD5PJluFcquzfV29yxzdNAhvsg4/7faPW/6p
O/auGp3zYsmlHs77dWfaObjvHe1e5pvlm/Xek3/atkp52zv99LBDdMGnx+bJ
1nHvvt7brnYfP5VK14fTh5pe6+1uUQvlaH1j5DQOW93Opn0eXE/OKnpNJ1L0
pH7wKf88Pmu28tZl5vD07HFydn1w1+v1p8PNzel03L4+oDR5YT6NMpbubx3X
CDsuNXP5euH5Th+Vpt3HS8t+uvR2DjrHvX5rkmsdjivuuFW/Wv/4ZFZ3r3ep
l7Vmbvublzsf88H4qfE4Ovf1vlGftsvWc2G35LTbN8fXg77+cGPf5syLUWV3
d70wrhPx+ahfPlNv0va1fV943DUPN44LxmYtsCv58c3Zp+37/nWB2G9eodC9
7W2fTZ1NfWoX1i8Kw/N6t908zmy0LpkmNjyelg6rx+Od40Ezc2UXple324et
9uXJZrfVXT/8uOUMTs3Lw+dm6+PB4/XTzpaz4xxWHurlUZ5qQSfrW49ObyfX
332oP1c27MeD3qR/Udmycmcfh9bT5Pi473iPB7fr+cet3qblFTKbB9WPZN3X
OvdUM7+9vemfeJ8mV3X7fP1qt1JoXVmNXrU8Hhemm4XKae3ICzbLHyfnhydu
aXhXdBs35bvWzY0bPE0or85MCncT7/n0OtdvDnqNXqt66OVubhoF1zJLrfpN
0BrceY9eY7w9nAwKwWF9cHFZvPrUezqo3lN/tZ6rHln1nbPR1G49Fu83nvUr
vda4vWo+HXY/rXcb54XxXebmYLhZaGxPaje60ax4xmal1bm+GzBe7detwWX7
/LCYn2b0uzv7XB/2T8yDQbnl7rQy25Nr/9hdv809eaPR5uX541axO/aM8+Ku
65WoXn192Mzt2kH1U7PZ9HvH9/f9WmGnNTUuhp8m9Yd856banvZbpnVqH1wH
Z5WjM6Ma3BwXny7q/TpLmmE0urX7ll3baYyPCv56b/3JIiLrrD24MZ7vOqNr
9z5/163s6P3zg4PTyVatddXLNW/vc8ZRi+6Q3lWet27WN+62b7qnj0f6pNu9
LTV7HaNXN04va327cXO1OdguPWeqx8efPhaNa/PUsi7z5s7OQ5Vyud7mZLi+
fWw2jUFhvHNycLzxNHjy6vf65si8KzYejKda6fbwsH83Pnk0Hm9zO/cZZ7NW
tU/O+keUquvjZt30epZ9adrXt7Vu/zDIlE7uKoW700xnw6x0Ti8yl1eEBxP9
Iz/ZHA8fWtuDzNH4yLfOKZerP+wSGnQ3Kr31oe3eXj3dPT/1/UJQCx6PrIv7
s1a1Or1/fr7u68e759Z5fyfjHTrFy/Odo/IFnYutrS2vW6+el0aHZtMdsKAn
skIh2mkwveluDI3S5lWrceESZafdP9zs7XgPw/b6Re7m/LKc65485ws71Rr9
zjU65sjkOdOwA5EZRITdtR6MKbTeGLbK24Tb1XYHg+aD/XRjN4z+1miQvw76
pebV5dPw6egmcz8Mw+QPgqdq1z72jk7zk8n2oPNcufJ63dLZzU2Qv75v5Fv2
wcdPLhF2t4+9I/vgsT+2HaPbvS6JFmxrYFfLxQv3vKTfZy70dfe4WHZKwUN3
ErQn3pVdCq70Ri4Iji8G6x8Pjh+3D04bQX8rDLQ/cW7K06nV8zr6wWkrP8wf
jXIXO72H9YP1ncbd9k7j4MJ4ejgd2KNy8ax6k3s4HV3Vr58b4THeu9shWW8P
d0/3/nijMdy+LX60B+Py4Kn7dHhXvWjZOxuV26vGfa1n2EenZ/bRdr01mF4P
wgNJRsPv5+3MVaE7euy0zkq7HWLrtg9ujWnr2H7afCifmgfG4/24vzV1Wo+3
n9bPbu3MyN0KDyM3gvXH9ce7h1Fro7+zPj6PZr8LbDnOjs7hy4KdaQTtcsfH
udZHIx7Mh4Gl0N9XKV72wujqnUi4rImhgjzO0MU3pKhGGkVrK8GIPyTXXHap
7ng+xC7qbRpPiSG8fEgtDJl0MIEb6caVb39g8ZiiXfqtZXie4WquQIocz0na
h2Fll2o2pBw2ESfw1W+/Ba71229S9OZA97S2YdhhSyJ883MZUwayxHIELppC
MEPh/LCqtQMa1OoaZGw8LHn2R9qE9GcZPZ9Pi5izf3biOo69n/HC/5x44eZp
+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
f/8ffDdpuI4iBQA=

-->

</rfc>
