<?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.29 (Ruby 3.4.6) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-howe-vcon-wtf-extension-01" category="std" consensus="true" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.30.2 -->
  <front>
    <title abbrev="vCon WTF Extension">vCon World Transcription Format Extension</title>
    <seriesInfo name="Internet-Draft" value="draft-howe-vcon-wtf-extension-01"/>
    <author initials="T." surname="McCarthy-Howe" fullname="Thomas McCarthy-Howe">
      <organization>VCONIC</organization>
      <address>
        <email>ghostofbasho@gmail.com</email>
      </address>
    </author>
    <date year="2025" month="October" day="06"/>
    <area>Applications and Real-Time</area>
    <workgroup>vCon</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 127?>

<t>This document defines the World Transcription Format (WTF) extension for Virtualized Conversations (vCon). The WTF extension provides a standardized analysis framework for representing speech-to-text transcription data from multiple providers within vCon containers. This extension defines a comprehensive analysis format that enables consistent transcription processing, quality assessment, and interoperability across different transcription services while preserving provider-specific features through extensible fields.</t>
      <t>The WTF extension is designed as a Compatible Extension that introduces a new analysis type for transcription data without altering existing vCon semantics, ensuring backward compatibility with existing vCon implementations.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://vcon-dev.github.io/draft-howe-vcon-wtf-extension/draft-howe-vcon-wtf-extension-01.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-howe-vcon-wtf-extension/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        vCon 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/vcon-dev/draft-howe-vcon-wtf-extension"/>.</t>
    </note>
  </front>
  <middle>
    <?line 133?>

<section anchor="requirements-language">
      <name>Requirements Language</name>
      <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 <xref target="RFC8174">RFC2119</xref> when, and only when, they appear in all capitals, as shown here.</t>
    </section>
    <section anchor="introduction">
      <name>Introduction</name>
      <t>Virtualized Conversations (vCon) <xref target="I-D.draft-ietf-vcon-core-00"/> provide a standardized container format for conversation data, enabling interoperability across different communication platforms and modalities. As speech-to-text technology becomes increasingly important for conversation analysis, compliance, and accessibility, there is a growing need for standardized transcription analysis representation within vCon containers.</t>
      <t>Current transcription services each use proprietary formats, making it difficult to:</t>
      <ul spacing="normal">
        <li>
          <t>Switch between transcription providers without data conversion</t>
        </li>
        <li>
          <t>Perform comparative analysis across different providers</t>
        </li>
        <li>
          <t>Maintain consistent data processing pipelines</t>
        </li>
        <li>
          <t>Preserve transcription metadata during system migrations</t>
        </li>
        <li>
          <t>Ensure long-term accessibility and archival compliance</t>
        </li>
      </ul>
      <t>This document defines the World Transcription Format (WTF) extension for vCon, which addresses these challenges by providing a comprehensive analysis framework that includes:</t>
      <ul spacing="normal">
        <li>
          <t>A unified analysis schema for transcription data from any speech-to-text provider</t>
        </li>
        <li>
          <t>Hierarchical organization from words to segments to complete transcripts</t>
        </li>
        <li>
          <t>Extensible fields for provider-specific analytical features</t>
        </li>
        <li>
          <t>Built-in quality metrics and confidence scoring for analysis assessment</t>
        </li>
        <li>
          <t>Support for real-time and batch transcription analysis workflows</t>
        </li>
        <li>
          <t>Consistent export capabilities to standard subtitle and caption formats</t>
        </li>
      </ul>
      <t>The WTF extension defines a new category of vCon analysis specifically for speech-to-text transcription. This analysis type enables organizations to standardize their transcription analysis workflows while maintaining the flexibility to use multiple providers and preserve provider-specific analytical enhancements.</t>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <section anchor="core-terms">
        <name>Core Terms</name>
        <t><strong>World Transcription Format (WTF)</strong>: A standardized analysis framework and JSON schema for representing speech-to-text transcription data from any provider in a consistent, interoperable format. WTF defines a comprehensive analysis type for vCon that includes transcription content, quality metrics, confidence scoring, and provider-specific analytical features.</t>
        <t><strong>Transcription Analysis</strong>: The structured representation of speech-to-text conversion results, including the transcribed text, timing information, confidence metrics, speaker identification, and quality assessments.</t>
        <t><strong>Transcription Provider</strong>: A service or system that converts audio or video content to text, such as Whisper(TM), Deepgram(TM), AssemblyAI(TM), Google Cloud Speech-to-Text(TM), Amazon Transcribe(TM), or Azure Speech Services(TM).</t>
        <t><strong>Segment</strong>: A logical chunk of transcribed content, typically representing sentence or phrase boundaries with associated timing information and analytical metadata.</t>
        <t><strong>Speaker Diarization</strong>: The process of partitioning an audio stream into homogeneous segments according to the speaker identity, enabling "who spoke when" analysis.</t>
        <t><strong>Compatible Extension</strong>: A vCon extension that introduces additional data without altering the meaning or structure of existing elements, as defined in <xref target="I-D.draft-ietf-vcon-core-00"/>.</t>
      </section>
    </section>
    <section anchor="world-transcription-format-overview">
      <name>World Transcription Format Overview</name>
      <t>The World Transcription Format defines a comprehensive analysis framework using a hierarchical JSON structure designed to capture transcription analysis results at multiple levels of granularity while maintaining consistency across different providers.</t>
      <section anchor="design-principles">
        <name>Design Principles</name>
        <t><strong>Completeness</strong>: WTF captures all essential transcription analysis data including text, timing, confidence scores, speaker information, and quality assessments.</t>
        <t><strong>Consistency</strong>: Provides uniform analysis structure regardless of the underlying transcription provider.</t>
        <t><strong>Extensibility</strong>: Supports provider-specific analytical features through structured extension fields.</t>
        <t><strong>Validation</strong>: Includes built-in data integrity checking and quality metrics for analysis assessment.</t>
        <t><strong>Hierarchical Organization</strong>: Natural progression from words to segments to complete transcripts enables multi-level analysis.</t>
      </section>
      <section anchor="core-structure">
        <name>Core Structure</name>
        <t>WTF uses a hierarchical JSON structure with three required sections and multiple optional enrichment layers:</t>
        <artwork type="json"><![CDATA[
{
  "transcript": { /* Required: Core transcript information */ },
  "segments": [ /* Required: Time-aligned text segments */ ],
  "metadata": { /* Required: Processing metadata */ },
  "words": [ /* Optional: Word-level details */ ],
  "speakers": { /* Optional: Speaker diarization */ },
  "alternatives": [ /* Optional: Alternative transcriptions */ },
  "enrichments": { /* Optional: Analysis features */ },
  "extensions": { /* Optional: Provider-specific data */ },
  "quality": { /* Optional: Quality metrics */ },
  "streaming": { /* Optional: Streaming information */ }
}
]]></artwork>
      </section>
    </section>
    <section anchor="vcon-wtf-extension-definition">
      <name>vCon WTF Extension Definition</name>
      <section anchor="extension-classification">
        <name>Extension Classification</name>
        <t>The WTF extension is a <strong>Compatible Extension</strong> as defined in Section 2.5 of <xref target="I-D.draft-ietf-vcon-core-00"/>. This extension:</t>
        <ul spacing="normal">
          <li>
            <t>Introduces a new analysis type for transcription data without altering existing vCon semantics</t>
          </li>
          <li>
            <t>Defines a comprehensive analysis framework for speech-to-text results</t>
          </li>
          <li>
            <t>Can be safely ignored by implementations that don't support transcription analysis</t>
          </li>
          <li>
            <t>Does not require listing in the <tt>must_support</tt> parameter</t>
          </li>
          <li>
            <t>Maintains backward compatibility with existing vCon implementations</t>
          </li>
        </ul>
      </section>
      <section anchor="extension-registration">
        <name>Extension Registration</name>
        <t>This document defines the "wtf_transcription" extension token for registration in the vCon Extensions Names Registry:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Extension Name</strong>: wtf_transcription</t>
          </li>
          <li>
            <t><strong>Extension Description</strong>: World Transcription Format - A standardized analysis framework for speech-to-text transcription with multi-provider support, quality metrics, and confidence scoring</t>
          </li>
          <li>
            <t><strong>Change Controller</strong>: IESG</t>
          </li>
          <li>
            <t><strong>Specification Document</strong>: This document</t>
          </li>
        </ul>
      </section>
      <section anchor="extension-usage">
        <name>Extension Usage</name>
        <t>vCon instances that include WTF transcription analysis SHOULD include "wtf_transcription" in the <tt>extensions</tt> array to indicate support for the WTF analysis framework:</t>
        <artwork type="json"><![CDATA[
{
  "uuid": "01234567-89ab-cdef-0123-456789abcdef",
  "extensions": ["wtf_transcription"],
  "created_at": "2025-01-02T12:00:00Z",
  "parties": [...],
  "dialog": [...],
  "analysis": [
    {
      "type": "wtf_transcription",
      "start": "2025-01-02T12:15:30Z",
      "party": 0,
      "dialog": 0,
      "encoding": "json",
      "body": {
        // WTF transcription analysis data structure defined below
      }
    }
  ]
}
]]></artwork>
      </section>
    </section>
    <section anchor="wtf-analysis-structure">
      <name>WTF Analysis Structure</name>
      <section anchor="analysis-storage">
        <name>Analysis Storage</name>
        <t>Transcription analysis results MUST be stored as vCon analysis using the standard analysis object structure defined in Section 4.3 of <xref target="I-D.draft-ietf-vcon-core-00"/>. The analysis mechanism provides the association between the analysis results and the corresponding dialog elements.</t>
        <t>The WTF transcription analysis object MUST include:</t>
        <ul spacing="normal">
          <li>
            <t><strong>type</strong>: MUST be set to "wtf_transcription" to identify this as a WTF analysis</t>
          </li>
          <li>
            <t><strong>encoding</strong>: MUST be set to "json" for structured analysis data</t>
          </li>
          <li>
            <t><strong>body</strong>: MUST contain the WTF transcription analysis data structure as defined below</t>
          </li>
        </ul>
        <t>The WTF transcription analysis SHOULD include:</t>
        <ul spacing="normal">
          <li>
            <t><strong>start</strong>: ISO 8601 timestamp when the transcription analysis was performed</t>
          </li>
          <li>
            <t><strong>party</strong>: Index of the party in the vCon parties array (for single-speaker transcription analysis)</t>
          </li>
          <li>
            <t><strong>dialog</strong>: Index of the associated dialog in the vCon dialog array</t>
          </li>
        </ul>
      </section>
      <section anchor="wtf-analysis-schema">
        <name>WTF Analysis Schema</name>
        <t>The <tt>body</tt> field of the WTF transcription analysis object MUST contain a JSON object conforming to the WTF analysis schema with the following structure:</t>
        <section anchor="required-fields">
          <name>Required Fields</name>
          <section anchor="transcript-object">
            <name>Transcript Object</name>
            <artwork type="json"><![CDATA[
"transcript": {
  "text": "string",       // Complete transcription text
  "language": "string",   // BCP-47 language code (e.g., "en-US")
  "duration": "number",   // Total audio duration in seconds
  "confidence": "number"  // Overall confidence score \[0.0-1.0\]
}
]]></artwork>
            <t>The transcript object provides the high-level summary of the entire transcription:</t>
            <ul spacing="normal">
              <li>
                <t><strong>text</strong>: The complete, concatenated transcription text</t>
              </li>
              <li>
                <t><strong>language</strong>: MUST use BCP-47 format <xref target="BCP47"/> (examples: "en-US", "es-MX", "fr-CA")</t>
              </li>
              <li>
                <t><strong>duration</strong>: Floating-point seconds, MUST be &gt;= 0</t>
              </li>
              <li>
                <t><strong>confidence</strong>: Normalized to <tt>[0, 1]</tt> range regardless of provider scale</t>
              </li>
            </ul>
          </section>
          <section anchor="segments-array">
            <name>Segments Array</name>
            <artwork type="json"><![CDATA[
"segments": [
  {
    "id": "integer",              // Sequential segment identifier
    "start": "number",            // Start time in seconds
    "end": "number",              // End time in seconds
    "text": "string",             // Segment text content
    "confidence": "number",       // Segment-level confidence \[0.0-1.0\]
    "speaker": "integer|string",  // Optional: Speaker identifier
    "words": ["integer"]          // Optional: Array of word indices
  }
]
]]></artwork>
            <t>Segments represent logical chunks of transcribed content, typically sentence or phrase boundaries:</t>
            <ul spacing="normal">
              <li>
                <t><strong>id</strong>: MUST be unique within the document, typically sequential</t>
              </li>
              <li>
                <t><strong>start</strong>/<strong>end</strong>: Floating-point seconds, where end &gt; start</t>
              </li>
              <li>
                <t><strong>text</strong>: SHOULD be trimmed of leading/trailing whitespace</t>
              </li>
              <li>
                <t><strong>speaker</strong>: Can be integer (<tt>0</tt>, <tt>1</tt>, <tt>2</tt>) or string ("Speaker A")</t>
              </li>
              <li>
                <t><strong>words</strong>: References indices in the words array</t>
              </li>
            </ul>
          </section>
          <section anchor="metadata-object">
            <name>Metadata Object</name>
            <artwork type="json"><![CDATA[
"metadata": {
  "created_at": "string",        // ISO 8601 timestamp
  "processed_at": "string",      // ISO 8601 timestamp
  "provider": "string",          // Provider name (lowercase)
  "model": "string",             // Model/version identifier
  "processing_time": "number",   // Optional: Processing duration in seconds
  "audio": {
    "duration": "number",        // Source audio duration in seconds
    "sample_rate": "integer",    // Optional: Sample rate in Hz
    "channels": "integer",       // Optional: Number of channels
    "format": "string",          // Optional: Audio format
    "bitrate": "integer"         // Optional: Bitrate in kbps
  },
  "options": "object"            // Provider-specific options used
}
]]></artwork>
            <t>The metadata object captures processing and source information:</t>
            <ul spacing="normal">
              <li>
                <t><strong>created_at</strong>/<strong>processed_at</strong>: MUST use ISO 8601 format</t>
              </li>
              <li>
                <t><strong>provider</strong>: Lowercase identifier for supported providers</t>
              </li>
              <li>
                <t><strong>model</strong>: Provider's model identifier (e.g., "whisper-large-v3", "nova-2")</t>
              </li>
              <li>
                <t><strong>options</strong>: Preserves provider-specific configuration</t>
              </li>
            </ul>
          </section>
        </section>
        <section anchor="optional-fields">
          <name>Optional Fields</name>
          <section anchor="words-array">
            <name>Words Array</name>
            <artwork type="json"><![CDATA[
"words": [
  {
    "id": "integer",              // Sequential word identifier
    "start": "number",            // Word start time in seconds
    "end": "number",              // Word end time in seconds
    "text": "string",             // Word text
    "confidence": "number",       // Word-level confidence \[0.0-1.0\]
    "speaker": "integer|string",  // Optional: Speaker identifier
    "is_punctuation": "boolean"   // Optional: Punctuation marker
  }
]
]]></artwork>
          </section>
          <section anchor="speakers-object">
            <name>Speakers Object</name>
            <artwork type="json"><![CDATA[
"speakers": {
  "speaker_id": {
    "id": "integer|string",       // Speaker identifier
    "label": "string",            // Human-readable speaker name
    "segments": ["integer"],      // Array of segment IDs for this speaker
    "total_time": "number",       // Total speaking time in seconds
    "confidence": "number"        // Diarization confidence \[0.0-1.0\]
  }
}
]]></artwork>
          </section>
          <section anchor="quality-object">
            <name>Quality Object</name>
            <artwork type="json"><![CDATA[
"quality": {
  "audio_quality": "string",      // high, medium, low
  "background_noise": "number",   // Noise level \[0.0-1.0\]
  "multiple_speakers": "boolean",
  "overlapping_speech": "boolean",
  "silence_ratio": "number",      // Percentage of silence
  "average_confidence": "number",
  "low_confidence_words": "integer",
  "processing_warnings": ["string"]
}
]]></artwork>
          </section>
          <section anchor="extensions-object">
            <name>Extensions Object</name>
            <artwork type="json"><![CDATA[
"extensions": {
  "provider_name": {
    // Provider-specific fields preserved during conversion
  }
}
]]></artwork>
          </section>
        </section>
      </section>
    </section>
    <section anchor="provider-integration-guidelines">
      <name>Provider Integration Guidelines</name>
      <section anchor="supported-providers">
        <name>Supported Providers</name>
        <t>The WTF extension supports integration with major transcription providers:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Whisper(TM)</strong>: OpenAI's open-source speech recognition system</t>
          </li>
          <li>
            <t><strong>Deepgram(TM)</strong>: Real-time speech-to-text API</t>
          </li>
          <li>
            <t><strong>AssemblyAI(TM)</strong>: AI-powered transcription and audio intelligence</t>
          </li>
          <li>
            <t><strong>Google Cloud Speech-to-Text(TM)</strong>: Google's speech recognition service</t>
          </li>
          <li>
            <t><strong>Amazon Transcribe(TM)</strong>: AWS speech-to-text service</t>
          </li>
          <li>
            <t><strong>Azure Speech Services(TM)</strong>: Microsoft's speech recognition platform</t>
          </li>
          <li>
            <t><strong>Rev.ai(TM)</strong>: Automated and human transcription services</t>
          </li>
          <li>
            <t><strong>Speechmatics(TM)</strong>: Real-time and batch speech recognition</t>
          </li>
          <li>
            <t><strong>Wav2Vec2(TM)</strong>: Facebook's self-supervised speech recognition model</t>
          </li>
          <li>
            <t><strong>Parakeet(TM)</strong>: NVIDIA's speech recognition toolkit</t>
          </li>
        </ul>
      </section>
      <section anchor="conversion-requirements">
        <name>Conversion Requirements</name>
        <t>When converting from provider-specific formats to WTF:</t>
        <ol spacing="normal" type="1"><li>
            <t><strong>Normalize confidence scores</strong> to <tt>[0.0, 1.0]</tt> range</t>
          </li>
          <li>
            <t><strong>Convert timestamps</strong> to floating-point seconds</t>
          </li>
          <li>
            <t><strong>Standardize language codes</strong> to BCP-47 format</t>
          </li>
          <li>
            <t><strong>Preserve provider-specific features</strong> in extensions field</t>
          </li>
          <li>
            <t><strong>Validate output</strong> against WTF schema requirements</t>
          </li>
        </ol>
      </section>
      <section anchor="provider-specific-mappings">
        <name>Provider-Specific Mappings</name>
        <section anchor="whisper-integration">
          <name>Whisper Integration</name>
          <artwork type="json"><![CDATA[
{
  "extensions": {
    "whisper": {
      "tokens": ["array of token IDs"],
      "temperature": "number",
      "compression_ratio": "number",
      "avg_logprob": "number",
      "no_speech_prob": "number"
    }
  }
}
]]></artwork>
        </section>
        <section anchor="deepgram-integration">
          <name>Deepgram Integration</name>
          <artwork type="json"><![CDATA[
{
  "extensions": {
    "deepgram": {
      "utterances": ["array of utterance objects"],
      "paragraphs": ["array of paragraph objects"],
      "search_terms": ["array of detected search terms"]
    }
  }
}
]]></artwork>
        </section>
      </section>
    </section>
    <section anchor="quality-and-confidence-metrics">
      <name>Quality and Confidence Metrics</name>
      <section anchor="confidence-score-normalization">
        <name>Confidence Score Normalization</name>
        <t>All confidence scores MUST be normalized to the <tt>[0.0, 1.0]</tt> range:</t>
        <ul spacing="normal">
          <li>
            <t><strong>1.0</strong>: Highest confidence (perfect recognition)</t>
          </li>
          <li>
            <t><strong>0.9-1.0</strong>: High confidence</t>
          </li>
          <li>
            <t><strong>0.7-0.9</strong>: Medium confidence</t>
          </li>
          <li>
            <t><strong>0.5-0.7</strong>: Low confidence</t>
          </li>
          <li>
            <t><strong>0.0-0.5</strong>: Very low confidence</t>
          </li>
        </ul>
        <t>Provider-specific scales are converted during import:</t>
        <ul spacing="normal">
          <li>
            <t>Percentage (0-100) -&gt; divide by 100</t>
          </li>
          <li>
            <t>Log probability -&gt; exponential transformation</t>
          </li>
          <li>
            <t>Custom scales -&gt; linear normalization</t>
          </li>
        </ul>
      </section>
      <section anchor="quality-metrics">
        <name>Quality Metrics</name>
        <t>The quality object provides assessment metrics:</t>
        <ul spacing="normal">
          <li>
            <t><strong>audio_quality</strong>: Categorical assessment (high/medium/low)</t>
          </li>
          <li>
            <t><strong>background_noise</strong>: Noise level [0.0-1.0]</t>
          </li>
          <li>
            <t><strong>multiple_speakers</strong>: Boolean indicator of multi-speaker content</t>
          </li>
          <li>
            <t><strong>overlapping_speech</strong>: Boolean indicator of speaker overlap</t>
          </li>
          <li>
            <t><strong>silence_ratio</strong>: Percentage of audio that is silence</t>
          </li>
          <li>
            <t><strong>average_confidence</strong>: Mean confidence across all words/segments</t>
          </li>
          <li>
            <t><strong>low_confidence_words</strong>: Count of words below 0.5 confidence</t>
          </li>
          <li>
            <t><strong>processing_warnings</strong>: Array of processing issues or notices</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <section anchor="data-privacy">
        <name>Data Privacy</name>
        <t>Transcription data often contains sensitive personal information. Implementations SHOULD:</t>
        <ul spacing="normal">
          <li>
            <t>Apply appropriate access controls to WTF analysis objects</t>
          </li>
          <li>
            <t>Consider encryption requirements for transcription data at rest and in transit</t>
          </li>
          <li>
            <t>Implement data retention policies consistent with privacy regulations</t>
          </li>
          <li>
            <t>Provide mechanisms for transcription data redaction or anonymization</t>
          </li>
        </ul>
      </section>
      <section anchor="provider-specific-security">
        <name>Provider-Specific Security</name>
        <t>When integrating with external transcription providers:</t>
        <ul spacing="normal">
          <li>
            <t>Validate provider credentials and API security</t>
          </li>
          <li>
            <t>Implement secure communication channels (TLS 1.2 or higher)</t>
          </li>
          <li>
            <t>Consider data residency requirements for audio processing</t>
          </li>
          <li>
            <t>Audit provider data handling practices and compliance certifications</t>
          </li>
        </ul>
      </section>
      <section anchor="integrity-protection">
        <name>Integrity Protection</name>
        <t>WTF transcription analysis objects SHOULD be integrity protected using vCon signing mechanisms as defined in <xref target="I-D.draft-ietf-vcon-core-00"/> to prevent unauthorized modification of transcription data.</t>
      </section>
      <section anchor="temporal-validation">
        <name>Temporal Validation</name>
        <t>Implementations SHOULD validate that transcription timestamps are consistent with the associated dialog timing information to detect potential tampering or synchronization issues.</t>
      </section>
    </section>
    <section anchor="wtf-as-an-analysis-framework">
      <name>WTF as an Analysis Framework</name>
      <t>The World Transcription Format is fundamentally an <strong>analysis framework</strong> that defines how speech-to-text transcription results should be structured, validated, and stored within vCon containers. This section clarifies the distinction between WTF as an analysis type and its storage mechanism.</t>
      <section anchor="analysis-vs-storage">
        <name>Analysis vs. Storage</name>
        <t><strong>WTF defines an analysis type</strong>: The core contribution of this specification is the definition of a standardized analysis framework for transcription data. This includes:</t>
        <ul spacing="normal">
          <li>
            <t>Structured representation of transcription content (words, segments, complete transcripts)</t>
          </li>
          <li>
            <t>Quality assessment metrics (confidence scores, audio quality indicators)</t>
          </li>
          <li>
            <t>Speaker diarization analysis</t>
          </li>
          <li>
            <t>Provider-specific analytical features</t>
          </li>
          <li>
            <t>Processing metadata and provenance information</t>
          </li>
        </ul>
        <t><strong>Attachments provide storage</strong>: The vCon analysis mechanism is used as the storage container for WTF analysis results. The analysis type "wtf_transcription" identifies the stored data as conforming to the WTF analysis schema.</t>
      </section>
      <section anchor="analysis-processing-workflow">
        <name>Analysis Processing Workflow</name>
        <t>The typical workflow for WTF transcription analysis is:</t>
        <ol spacing="normal" type="1"><li>
            <t><strong>Audio Processing</strong>: Dialog audio is processed by a transcription provider</t>
          </li>
          <li>
            <t><strong>Analysis Generation</strong>: Provider results are converted to WTF analysis schema</t>
          </li>
          <li>
            <t><strong>Quality Assessment</strong>: Analysis includes confidence scores and quality metrics</t>
          </li>
          <li>
            <t><strong>Storage</strong>: WTF analysis is stored as a vCon attachment with type "wtf_transcription"</t>
          </li>
          <li>
            <t><strong>Retrieval</strong>: Consumers read the attachment to access transcription analysis results</t>
          </li>
          <li>
            <t><strong>Utilization</strong>: Analysis data is used for search, compliance, accessibility, or further processing</t>
          </li>
        </ol>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="vcon-extensions-names-registry">
        <name>vCon Extensions Names Registry</name>
        <t>This document requests IANA to register the following extension in the vCon Extensions Names Registry established by <xref target="I-D.draft-ietf-vcon-core-00"/>:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Extension Name</strong>: wtf_transcription</t>
          </li>
          <li>
            <t><strong>Extension Description</strong>: World Transcription Format - A standardized analysis framework for speech-to-text transcription with multi-provider support, quality metrics, and confidence scoring</t>
          </li>
          <li>
            <t><strong>Change Controller</strong>: IESG</t>
          </li>
          <li>
            <t><strong>Specification Document</strong>: This document</t>
          </li>
        </ul>
      </section>
      <section anchor="wtf-analysis-type-values-registry">
        <name>WTF Analysis Type Values Registry</name>
        <t>This document requests IANA to establish a new registry for WTF analysis type values with the following initial registration:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Type Value</strong>: wtf_transcription</t>
          </li>
          <li>
            <t><strong>Description</strong>: Structured speech-to-text transcription analysis using the World Transcription Format framework, including transcription content, quality metrics, confidence scoring, and provider-specific analytical features</t>
          </li>
          <li>
            <t><strong>Change Controller</strong>: IESG</t>
          </li>
          <li>
            <t><strong>Specification Document</strong>: This document</t>
          </li>
        </ul>
        <t>Registration Template:
<strong>Type Value</strong>: The string value used as the analysis type identifier in vCon attachments
<strong>Description</strong>: Brief description of the analysis type and its analytical capabilities
<strong>Change Controller</strong>: For Standards Track RFCs, list "IESG". For others, give the name of the responsible party.
<strong>Specification Document(s)</strong>: Reference to defining documents with URIs where available</t>
      </section>
      <section anchor="wtf-provider-registry">
        <name>WTF Provider Registry</name>
        <t>This document requests IANA to establish a new registry for WTF transcription analysis providers with initial registrations for supported providers:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Provider Name</strong>: whisper</t>
          </li>
          <li>
            <t><strong>Description</strong>: OpenAI Whisper(TM) speech recognition system</t>
          </li>
          <li>
            <t><strong>Change Controller</strong>: IESG</t>
          </li>
          <li>
            <t><strong>Specification Document</strong>: This document
(Additional provider registrations would be added for each supported provider)</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="examples">
      <name>Examples</name>
      <section anchor="basic-two-party-call-transcription-analysis">
        <name>Basic Two-Party Call Transcription Analysis</name>
        <artwork type="json"><![CDATA[
{
  "uuid": "01928e10-193e-8231-b9a2-279e0d16bc46",
  "vcon": "0.0.2",
  "extensions": ["wtf_transcription"],
  "created_at": "2025-01-02T12:00:00Z",
  "parties": [
    {
      "tel": "+1-555-123-4567",
      "name": "Alice"
    },
    {
      "tel": "+1-555-987-6543",
      "name": "Bob"
    }
  ],
  "dialog": [
    {
      "type": "recording",
      "start": "2025-01-02T12:15:30Z",
      "duration": 65.2,
      "parties": [0, 1],
      "mediatype": "audio/wav",
      "filename": "call-recording.wav"
    }
  ],
  "analysis": [
    {
      "type": "wtf_transcription",
      "start": "2025-01-02T12:16:35Z",
      "dialog": 0,
      "encoding": "json",
      "body": {
        "transcript": {
          "text": "Hello, this is Alice from customer service. " +
                  "How can I help you today? Hi Alice, I'm having " +
                  "trouble with my account. Can you help me reset " +
                  "my password?",
          "language": "en-US",
          "duration": 65.2,
          "confidence": 0.92
        },
        "segments": [
          {
            "id": 0,
            "start": 0.5,
            "end": 4.8,
            "text": "Hello, this is Alice from customer service. " +
                    "How can I help you today?",
            "confidence": 0.95,
            "speaker": 0,
            "words": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
          },
          {
            "id": 1,
            "start": 5.2,
            "end": 9.1,
            "text": "Hi Alice, I'm having trouble with my account. " +
                    "Can you help me reset my password?",
            "confidence": 0.88,
            "speaker": 1,
            "words": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
                      30, 31]
          }
        ],
        "words": [
          {
            "id": 0,
            "start": 0.5,
            "end": 0.8,
            "text": "Hello",
            "confidence": 0.98,
            "speaker": 0,
            "is_punctuation": false
          },
          {
            "id": 1,
            "start": 0.9,
            "end": 1.1,
            "text": ",",
            "confidence": 0.95,
            "speaker": 0,
            "is_punctuation": true
          }
          // Additional words...
        ],
        "speakers": {
          "0": {
            "id": 0,
            "label": "Alice (Customer Service)",
            "segments": [0],
            "total_time": 4.3,
            "confidence": 0.95
          },
          "1": {
            "id": 1,
            "label": "Bob (Customer)",
            "segments": [1],
            "total_time": 3.9,
            "confidence": 0.88
          }
        },
        "metadata": {
          "created_at": "2025-01-02T12:15:30Z",
          "processed_at": "2025-01-02T12:16:35Z",
          "provider": "deepgram",
          "model": "nova-2",
          "processing_time": 12.5,
          "audio": {
            "duration": 65.2,
            "sample_rate": 8000,
            "channels": 1,
            "format": "wav",
            "bitrate": 128
          },
          "options": {
            "punctuate": true,
            "diarize": true,
            "language": "en"
          }
        },
        "quality": {
          "audio_quality": "high",
          "background_noise": 0.1,
          "multiple_speakers": true,
          "overlapping_speech": false,
          "silence_ratio": 0.15,
          "average_confidence": 0.92,
          "low_confidence_words": 0,
          "processing_warnings": []
        },
        "extensions": {
          "deepgram": {
            "utterances": [
              {
                "start": 0.5,
                "end": 4.8,
                "confidence": 0.95,
                "channel": 0,
                "transcript": "Hello, this is Alice from customer service. " +
                              "How can I help you today?"
              }
            ]
          }
        }
      }
    }
  ]
}
]]></artwork>
      </section>
      <section anchor="multi-provider-transcription-analysis-comparison">
        <name>Multi-Provider Transcription Analysis Comparison</name>
        <artwork type="json"><![CDATA[
{
  "analysis": [
    {
      "type": "wtf_transcription",
      "dialog": 0,
      "encoding": "json",
      "body": {
        "transcript": {
          "text": "The quick brown fox jumps over the lazy dog.",
          "language": "en-US",
          "duration": 3.5,
          "confidence": 0.96
        },
        "segments": [
          {
            "id": 0,
            "start": 0.0,
            "end": 3.5,
            "text": "The quick brown fox jumps over the lazy dog.",
            "confidence": 0.96,
            "speaker": 0
          }
        ],
        "metadata": {
          "created_at": "2025-01-02T12:00:00Z",
          "processed_at": "2025-01-02T12:00:15Z",
          "provider": "whisper",
          "model": "whisper-large-v3",
          "processing_time": 15.2
        },
        "extensions": {
          "whisper": {
            "temperature": 0.0,
            "compression_ratio": 2.1,
            "avg_logprob": -0.25,
            "no_speech_prob": 0.01
          }
        }
      }
    },
    {
      "type": "wtf_transcription",
      "dialog": 0,
      "encoding": "json",
      "body": {
        "transcript": {
          "text": "The quick brown fox jumps over the lazy dog.",
          "language": "en-US",
          "duration": 3.5,
          "confidence": 0.94
        },
        "segments": [
          {
            "id": 0,
            "start": 0.0,
            "end": 3.5,
            "text": "The quick brown fox jumps over the lazy dog.",
            "confidence": 0.94,
            "speaker": 0
          }
        ],
        "metadata": {
          "created_at": "2025-01-02T12:00:00Z",
          "processed_at": "2025-01-02T12:00:08Z",
          "provider": "deepgram",
          "model": "nova-2",
          "processing_time": 8.1
        },
        "extensions": {
          "deepgram": {
            "model_info": {
              "name": "nova-2",
              "version": "2024-01-09",
              "uuid": "4d892fb6-7cc1-4e7a-a1b3-1c2e3f4a5b6c"
            }
          }
        }
      }
    }
  ]
}
]]></artwork>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC2119" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
          <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" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
          <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>
        <reference anchor="RFC3339" target="https://www.rfc-editor.org/rfc/rfc3339.html">
          <front>
            <title>Date and Time on the Internet: Timestamps</title>
            <author initials="G." surname="Klyne" fullname="G. Klyne">
              <organization/>
            </author>
            <date year="2002" month="July"/>
          </front>
        </reference>
        <reference anchor="I-D.draft-ietf-vcon-core-00" target="I-D.draft-ietf-vcon-core-00">
          <front>
            <title>Virtualized Conversation (vCon) Container</title>
            <author initials="D." surname="Petrie" fullname="Daniel Petrie">
              <organization>SIPez LLC</organization>
            </author>
            <date year="2025" month="March"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-vcon-core-00"/>
        </reference>
        <reference anchor="RFC8949" target="https://www.rfc-editor.org/rfc/rfc8949.html">
          <front>
            <title>Concise Binary Object Representation (CBOR)</title>
            <author initials="C." surname="Bormann" fullname="C. Bormann">
              <organization/>
            </author>
            <date year="2020" month="December"/>
          </front>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="I-D.draft-ietf-vcon-overview" target="I-D.draft-ietf-vcon-overview-00">
          <front>
            <title>The vCon - Conversation Data Container - Overview</title>
            <author initials="T." surname="McCarthy-Howe" fullname="Thomas McCarthy-Howe">
              <organization>Strolid</organization>
            </author>
            <date year="2025" month="July"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-vcon-overview-00"/>
        </reference>
        <reference anchor="BCP47" target="https://www.rfc-editor.org/rfc/rfc5646.html">
          <front>
            <title>Tags for Identifying Languages</title>
            <author initials="A." surname="Phillips" fullname="A. Phillips">
              <organization/>
            </author>
            <date year="2009" month="September"/>
          </front>
        </reference>
        <reference anchor="WHISPER" target="https://openai.com/research/whisper">
          <front>
            <title>Whisper: Robust Speech Recognition via Large-Scale Weak Supervision</title>
            <author initials="A." surname="Radford" fullname="A. Radford">
              <organization/>
            </author>
            <author initials="J. W." surname="Kim" fullname="J. W. Kim">
              <organization/>
            </author>
            <author initials="T." surname="Xu" fullname="T. Xu">
              <organization/>
            </author>
            <author initials="G." surname="Brockman" fullname="G. Brockman">
              <organization/>
            </author>
            <author initials="C." surname="McLeavey" fullname="C. McLeavey">
              <organization/>
            </author>
            <author initials="I." surname="Sutskever" fullname="I. Sutskever">
              <organization/>
            </author>
            <date year="2022" month="September"/>
          </front>
        </reference>
      </references>
    </references>
    <?line 832?>

<section numbered="false" anchor="acknowledgements">
      <name>Acknowledgements</name>
      <ul spacing="normal">
        <li>
          <t>Appreciation to the transcription provider community for their input on standardization requirements and analysis framework design.</t>
        </li>
        <li>
          <t>Thanks to the vCon working group for their feedback and guidance on extension design patterns and the distinction between analysis types and attachment mechanisms.</t>
        </li>
      </ul>
    </section>
    <section numbered="false" anchor="trademark-notice">
      <name>Trademark Notice</name>
      <t>All trademarks mentioned in this document are the property of their respective owners. The use of these trademarks does not imply endorsement by the IETF or the authors of this document. The following trademarks are referenced:</t>
      <ul spacing="normal">
        <li>
          <t>Whisper(TM) is a trademark of OpenAI, Inc.</t>
        </li>
        <li>
          <t>Deepgram(TM) is a trademark of Deepgram, Inc.</t>
        </li>
        <li>
          <t>AssemblyAI(TM) is a trademark of AssemblyAI, Inc.</t>
        </li>
        <li>
          <t>Google Cloud Speech-to-Text(TM) is a trademark of Google LLC.</t>
        </li>
        <li>
          <t>Amazon Transcribe(TM) is a trademark of Amazon.com, Inc.</t>
        </li>
        <li>
          <t>Azure Speech Services(TM) is a trademark of Microsoft Corporation.</t>
        </li>
        <li>
          <t>Rev.ai(TM) is a trademark of Rev.com, Inc.</t>
        </li>
        <li>
          <t>Speechmatics(TM) is a trademark of Speechmatics Limited.</t>
        </li>
        <li>
          <t>Wav2Vec2(TM) is a trademark of Meta Platforms, Inc.</t>
        </li>
        <li>
          <t>Parakeet(TM) is a trademark of NVIDIA Corporation.</t>
        </li>
      </ul>
    </section>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
