<?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.39 (Ruby 4.0.6) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-riedl-moq-ad-creative-signaling-00" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.0 -->
  <front>
    <title abbrev="MSF Ad Creative Signaling">Ad Creative Signaling over the MSF Event Timeline</title>
    <seriesInfo name="Internet-Draft" value="draft-riedl-moq-ad-creative-signaling-00"/>
    <author initials="S." surname="Riedl" fullname="Steven Riedl">
      <organization>Paramount</organization>
      <address>
        <email>steven.riedl@pluto.tv</email>
      </address>
    </author>
    <date year="2026" month="September" day="03"/>
    <area>Web and Internet Transport</area>
    <workgroup>Media Over QUIC</workgroup>
    <keyword>media over quic</keyword>
    <keyword>moq</keyword>
    <keyword>msf</keyword>
    <keyword>event timeline</keyword>
    <keyword>advertising</keyword>
    <keyword>ad signaling</keyword>
    <keyword>ssai</keyword>
    <keyword>beacon</keyword>
    <abstract>

<t>This document defines the carriage of ad creative signaling -- creative
identity, tracking events, and measurement verification metadata as
specified by SVTA 2053-1 -- in records on a Media over QUIC (MOQT)
Streaming Format (MSF) Event Timeline track. It complements the carriage
of SCTE-35 splice signaling over the same mechanism: splice events
describe where placement opportunities occur on a media timeline, while
the event class defined here describes the creatives that fill them and
how their playback is to be measured. This binding is the MSF
counterpart of the DASH and HLS carriage bindings defined by SVTA
2053-1, which defines none for MOQT.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://riedlse.github.io/draft-riedl-moq-ad-creative-signaling/draft-riedl-moq-ad-creative-signaling.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-riedl-moq-ad-creative-signaling/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Media Over QUIC Working Group mailing list (<eref target="mailto:moq@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/moq/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/moq/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/riedlse/draft-riedl-moq-ad-creative-signaling"/>.</t>
    </note>
  </front>
  <middle>


<section anchor="introduction">
      <name>Introduction</name>
      <t>SCTE-35 messages <xref target="SCTE35"/> carried on an MSF Event Timeline track
<xref target="SCTE35-MOQ"/> give Media over QUIC deployments the function SCTE-35 was
built for: signaling placement opportunities -- break windows and splice
conditioning -- on a shared media timeline, using the Event Timeline
mechanism of the MOQT Streaming Format (<xref section="8.1" sectionFormat="of" target="MSF"/>). What
that layer deliberately does not carry is a description of what plays
inside those windows.</t>
      <t>On HLS and DASH, that gap is filled at the manifest: a packager or
stitcher decorates each session's playlist with creative identity and
tracking metadata. On a one-to-many publish/subscribe transport
<xref target="MOQT"/> there is no per-session manifest to decorate -- every
subscriber receives the same cached objects -- so anything a client
needs at render time (which creative is playing, which tracking
resources to request at which quartiles, which verification script to
load) must be delivered in band, on the shared timeline, ahead of the
splice point.</t>
      <t>This need is not incidental. Accurate measurement of server-side ad
insertion increasingly means client-requested tracking -- per-device
accounting at render time rather than server-side firing at publish
time, which measures the wrong clock -- and verification means
initializing a measurement script <xref target="OMSDK"/> before the slot renders.
SVTA 2053-1 <xref target="SVTA2053"/> already standardizes exactly this payload: a
Pod/Slot/TrackingEvent/Verification data model (Section 4 of
<xref target="SVTA2053"/>), explicitly agnostic to client-side, server-side, and
server-guided insertion, with carriage bindings defined per stream
format -- DASH EventStream, HLS EXT-X-DATERANGE, HLS Interstitials --
and none for MOQT.</t>
      <t>This document fills that gap using the structures <xref target="MSF"/> and
<xref target="SCTE35-MOQ"/> already put in place: it defines an Event Timeline event
class whose records carry SVTA 2053-1 Version 2 carriage envelopes,
specifies how those records are timed and correlated with splice
signaling, and gives operational guidance for tracking on one-to-many
delivery. It changes nothing in the SVTA 2053-1 data model; payload
normativity remains with <xref target="SVTA2053"/>, and this binding could
additionally be published as a carriage section in a future revision of
that specification.</t>
      <t>On status: <xref target="MSF"/> is an adopted work item of the MoQ Working Group,
and its Event Timeline mechanism is the substrate here; this document
and <xref target="SCTE35-MOQ"/> are individual submissions layered on that substrate,
and this one is written to track <xref target="MSF"/> as it evolves under WG change
control -- including following its registry, wherever that registry
ultimately lands.</t>
    </section>
    <section anchor="conventions">
      <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>

<t>This document uses the terms Track, Group, Object, Event Timeline, and
the index reference fields <tt>t</tt>, <tt>l</tt>, and <tt>m</tt> as defined in <xref target="MSF"/>, and
the terms Pod, Slot, Tracking Event, Verification, and carriage envelope
as defined in Sections 4 and 5 of <xref target="SVTA2053"/>.</t>
      <t>Additionally:</t>
      <dl>
        <dt>Distributor:</dt>
        <dd>
          <t>The party operating the publisher that emits the media and signaling
tracks (typically the party performing ad insertion).</t>
        </dd>
        <dt>Placement opportunity:</dt>
        <dd>
          <t>A window on the media timeline, typically signaled by SCTE-35, in
which advertising content plays.</t>
        </dd>
        <dt>Splice signaling track:</dt>
        <dd>
          <t>An Event Timeline track carrying SCTE-35 records per <xref target="SCTE35-MOQ"/>.</t>
        </dd>
        <dt>Capability URL:</dt>
        <dd>
          <t>A URL whose knowledge alone grants the ability to perform a narrow
action, used here as a short-lived, opaque reference to a
distributor-operated tracking endpoint <xref target="CAP-URLS"/>.</t>
        </dd>
      </dl>
    </section>
    <section anchor="track-properties">
      <name>Track Properties</name>
      <t>An MSF track carrying ad creative signaling:</t>
      <ul spacing="normal">
        <li>
          <t><bcp14>MUST</bcp14> declare a packaging value of <tt>"eventtimeline"</tt>;</t>
        </li>
        <li>
          <t><bcp14>MUST</bcp14> declare an <tt>eventType</tt> value of
<tt>"urn:svta:advertising-wg:ad-creative-signaling"</tt>. This is the data
scheme URI defined in Section 5 of <xref target="SVTA2053"/>, used unversioned: as
in the DASH binding, the payload version is carried inside the
payload itself (<xref target="payload"/>);</t>
        </li>
        <li>
          <t><bcp14>MUST</bcp14> declare a <tt>depends</tt> attribute naming the media track or tracks
whose timeline its records index. When the track accompanies a splice
signaling track, it <bcp14>SHOULD</bcp14> name the same media track(s) as that
track.</t>
        </li>
      </ul>
      <t>Because <tt>eventType</tt> is uniform for a track, and because implementations
do not mix payload flavors within one Event Timeline track (see Section
4.3 of <xref target="SCTE35-MOQ"/> for the same rule applied to SCTE-35), ad
creative signaling is carried on a <em>sibling</em> Event Timeline track
alongside any splice signaling track, not interleaved within it.</t>
      <t>A splice signaling track is not required. Ad creative signaling describes
what plays inside a placement opportunity; it does not depend on how the
boundaries of that opportunity were signaled. A deployment <bcp14>MAY</bcp14> carry ad
creative signaling with no SCTE-35 records present, leaving break
detection to another mechanism entirely -- in-band timed metadata such as
ID3, an <tt>emsg</tt> box, or the timing carried by the creative records
themselves. Where a splice signaling track <em>is</em> present, the alignment
rules in <xref target="correlation"/> let the two be correlated; where it is absent,
those rules simply do not apply.</t>
    </section>
    <section anchor="record-format">
      <name>Record Format</name>
      <section anchor="record-structure">
        <name>Structure</name>
        <t>Each record is a JSON object <xref target="RFC8259"/> following the Event Timeline
data format of <xref section="8.1" sectionFormat="of" target="MSF"/>. A record <bcp14>MUST</bcp14> contain:</t>
        <ul spacing="normal">
          <li>
            <t>exactly one index reference field -- <tt>t</tt> (wallclock), <tt>l</tt> (MOQT
Location), or <tt>m</tt> (media time) -- selected per <xref target="index-selection"/>;
and</t>
          </li>
          <li>
            <t>a <tt>data</tt> field whose value is exactly one Version 2 carriage
envelope as defined in <xref target="payload"/>.</t>
          </li>
        </ul>
      </section>
      <section anchor="index-selection">
        <name>Index Reference Selection</name>
        <t>Records describing creatives spliced into the media timeline <bcp14>SHOULD</bcp14> use
the <tt>m</tt> (media time) index, expressed in the coordinate space of the
<tt>depends</tt> media track and sharing that track's timeline zero point. The
<tt>t</tt> (wallclock) index <bcp14>MAY</bcp14> be used where a placement opportunity is
defined in wallclock terms and no media time is available. The <tt>l</tt>
(MOQT Location) index <bcp14>MAY</bcp14> be used for records bound to a delivery
position rather than a media time.</t>
        <t>When a splice signaling track accompanies this track, records on the two
tracks that describe the same point on the media timeline <bcp14>SHOULD</bcp14> carry
index values of the same kind, chosen by the same precedence, so that a
consumer can correlate them without converting between index types
(<xref target="correlation"/>). The requirement is on the observable result --
comparable indices for co-timed records -- not on adopting any particular
document's selection algorithm. A deployment carrying SCTE-35 records per
<xref target="SCTE35-MOQ"/> satisfies it by applying that specification's index
selection rules (its Section 4.2) to both tracks.</t>
      </section>
      <section anchor="payload">
        <name>Payload: Version 2 Carriage Envelope</name>
        <t>The <tt>data</tt> field carries one SVTA 2053-1 Version 2 carriage envelope
(Section 5.2.2.1 of <xref target="SVTA2053"/>) directly:</t>
        <sourcecode type="json"><![CDATA[
{ "version": 2, "type": "...", "payload": [ ... ],
  "features": { ... } }
]]></sourcecode>
        <t>The envelope is self-describing -- version and payload type are fields
-- so no additional wrapper member is defined.</t>
        <t>Unlike the DASH and HLS bindings, where bare Version 1 payload objects
are also legal, records in this binding <bcp14>MUST</bcp14> carry Version 2 envelopes
only. On a fan-out transport the envelope's <tt>features</tt> flags are the
only capability-signaling mechanism available, and the envelope <tt>type</tt>
field is what allows a uniform track to carry <tt>pod</tt>, <tt>slot</tt>, and
<tt>trackingEvent</tt> payloads interchangeably.</t>
        <t>It is <bcp14>RECOMMENDED</bcp14> that a publisher emit one <tt>pod</tt> envelope per
placement opportunity. <tt>slot</tt> and <tt>trackingEvent</tt> envelopes <bcp14>MAY</bcp14> be used
(mirroring the granularity options of the DASH binding), but
deduplication under redelivery is simplest at pod granularity (see
<xref target="open-issues"/>).</t>
      </section>
      <section anchor="invariance">
        <name>Subscriber Invariance</name>
        <t>Records on this track <bcp14>MUST</bcp14> be subscriber-invariant: no field value may
vary between subscribers. Per-session values enter only after delivery,
either by client-side macro substitution (Section 6 of <xref target="VAST"/>) against
broadcast templates, or by request-time indirection through capability
URLs (<xref target="capability-urls"/>). A macro template is conformant precisely
because the template is identical for every subscriber; substitution is
a post-delivery operation.</t>
        <t>The DASH and HLS bindings of <xref target="SVTA2053"/> assume a per-session manifest,
so payload fields carrying session-scoped tracking values are
well-formed in those bindings. That assumption does not hold here:
records on a shared Event Timeline track are delivered identically to
every subscriber and are relay-cacheable, so a session-scoped field
would both leak across sessions and defeat caching.</t>
      </section>
    </section>
    <section anchor="timing">
      <name>Timing and Correlation</name>
      <section anchor="index-space">
        <name>Shared Index Space</name>
        <t>A creative signaling record's index values are interpreted in the same
coordinate space, with the same timeline zero point, as the <tt>depends</tt>
media track -- and therefore the same space as an accompanying splice
signaling track that names the same media track.</t>
      </section>
      <section anchor="correlation">
        <name>Correlation with Splice Signaling</name>
        <t>The record or records describing a placement opportunity <bcp14>SHOULD</bcp14> carry
the same index value as the SCTE-35 record whose splice point opens
that opportunity (the same <tt>m</tt>, or the same <tt>l</tt> Location when the
splice is immediate). A pod whose start differs from the splice point
<bcp14>MUST</bcp14> carry an index within the window the splice defines.</t>
      </section>
      <section anchor="publication-lead">
        <name>Publication Lead</name>
        <t>The publisher <bcp14>SHOULD</bcp14> publish a placement opportunity's creative
signaling record(s) at least one full Group ahead of the media Group
containing the splice point. Clients render seconds behind delivery,
while render-time tracking and verification fire windows are
sub-second: the tracking table must already be resident on the device
when the first ad frame displays, with no time for a lookup round
trip.</t>
        <t/>
      </section>
      <section anchor="interior-timing">
        <name>Container-Relative Interior Timing</name>
        <t>Within the envelope, timing is container-relative, per Sections 4.4.2
and 4.4.5 of <xref target="SVTA2053"/>: a Slot's <tt>start</tt> is relative to its Pod, and
a Tracking Event's <tt>offset</tt> is relative to its container. Only the
record's index reference is absolute. Consequently, redelivery, looped
schedules, and regional timeline shifts never require payload rewrites
-- which matters where relays cache and re-serve objects.</t>
      </section>
    </section>
    <section anchor="example">
      <name>Worked Example</name>
      <t>An SCTE-35 record on the splice signaling track (reproduced from
Section 5.1 of <xref target="SCTE35-MOQ"/>) announces a splice at media time
480500 ms:</t>
      <sourcecode type="json"><![CDATA[
{
  "m": 480500,
  "data": {
    "scte35_payload":
      "/DAhAAAAAAAAAP/wFAUAAArXf+/+AAAAAH4AARSyAAAAAA=="
  }
}
]]></sourcecode>
      <t>The companion record on the ad creative signaling track, published at
least one Group earlier (<xref target="publication-lead"/>), carries the same index.
It describes a 45.045-second pod with two slots: explicit quartile
tracking and a verification resource on slot 1 (no <tt>offset</tt> on the
quartile events, so timing is driven by event-type semantics per
Section 4.4.5 of <xref target="SVTA2053"/>), and lazily resolved tracking on slot 2
via <tt>$remote</tt> (<xref target="capability-urls"/>):</t>
      <sourcecode type="json"><![CDATA[
{
  "m": 480500,
  "data": {
    "version": 2,
    "type": "pod",
    "payload": [{
      "duration": 45.045,
      "slots": [
        {
          "type": "linear",
          "start": 0.0,
          "duration": 30.03,
          "identifiers": [{
            "scheme":
      "urn:smpte:ul:060E2B34.01040101.01200900.00000000",
            "value": "ABCD1234567H"
          }],
          "tracking": [
            { "type": "impression", "urls": [
              "https://beacons.example.net/c/7f3a92/imp"
            ] },
            { "type": "firstQuartile", "urls": [
              "https://beacons.example.net/c/7f3a92/q1"
            ] },
            { "type": "midpoint", "urls": [
              "https://beacons.example.net/c/7f3a92/q2"
            ] },
            { "type": "thirdQuartile", "urls": [
              "https://beacons.example.net/c/7f3a92/q3"
            ] },
            { "type": "complete", "urls": [
              "https://beacons.example.net/c/7f3a92/done"
            ] }
          ],
          "verifications": [{
            "vendor": "vendor.example-omid",
            "parameters": "key=value",
            "resource":
              "https://cdn.vendor.example/omid-verify.js"
          }]
        },
        {
          "type": "linear",
          "start": 30.03,
          "duration": 15.015,
          "identifiers": [{
            "scheme": "urn:com:example:ads:id",
            "value":
              "972c79e1-2363-403e-9287-a0fa4323c389"
          }],
          "$remote": {
            "tracking":
              "https://beacons.example.net/c/9d41c7/trk"
          }
        }
      ],
      "tracking": [
        { "type": "podStart", "urls": [
          "https://beacons.example.net/c/p8842/start"
        ] },
        { "type": "podEnd", "urls": [
          "https://beacons.example.net/c/p8842/end"
        ] }
      ]
    }],
    "features": { "remoteFields": true }
  }
}
]]></sourcecode>
    </section>
    <section anchor="capability-urls">
      <name>Tracking Indirection and Capability URLs</name>
      <t>Two patterns satisfy <xref target="invariance"/>. In the first, the record carries
broadcast tracking templates and the client performs macro substitution
locally at activation; SVTA 2053-1 payloads carry over from the DASH and
HLS bindings unchanged and no distributor infrastructure is required, at
the cost of exposing vendor endpoint inventory in shared bytes,
inflating every record by the full tracking list, and leaving per-device
accounting to the macros alone. The second, described in the remainder
of this section, defers resolution to a distributor-operated endpoint.
Both are conformant; a publisher chooses per deployment.</t>
      <t>Section 5.2.2.2 of <xref target="SVTA2053"/> already says interpreters <bcp14>SHOULD</bcp14> defer
<tt>$remote</tt> resolution until the containing object is about to become
active. That deferral maps naturally onto broadcast fan-out, with one
addition: on a shared timeline, the URLs in tracking and <tt>$remote</tt>
fields <bcp14>SHOULD</bcp14> be short-lived capability URLs <xref target="CAP-URLS"/> referencing a
distributor-operated tracking endpoint (a "beacon proxy"), rather than
raw measurement-vendor URLs.</t>
      <t>At activation, the client requests the capability URL (or resolves
<tt>$remote</tt> from it), appending a client identifier (<xref target="client-identity"/>).
The endpoint performs macro substitution per Section 6 of <xref target="VAST"/> (as
Section 5.2.3 of <xref target="SVTA2053"/> provides) and requests the corresponding
vendor resources with the calling device's context. Two properties fall
out for free on one-to-many delivery:</t>
      <ul spacing="normal">
        <li>
          <t><strong>Payload size</strong>: shared-timeline records stay small even for heavy
vendor tracking lists, with late binding after the pod record ships.</t>
        </li>
        <li>
          <t><strong>Privacy and cache-safety</strong>: no per-user macro values and no vendor
endpoint inventory appear in bytes that every subscriber and relay
cache can read.</t>
        </li>
      </ul>
      <section anchor="client-identity">
        <name>Client Identity and Per-Device Accounting</name>
        <t>Because every subscriber receives identical records, per-device
measurement requires the device to identify itself at request time, not
in the payload. A client <bcp14>SHOULD</bcp14> append a pseudonymous, session-scoped
client identifier (issued and signed out of band, for example with the
playback session) as a query parameter when requesting capability URLs.
This mechanism applies to the indirection pattern; under client-side
substitution, per-device accounting rests on the macro values alone.
The tracking endpoint can then deduplicate on (resource, event, client
identifier), count unique reach, and forward at most one request per
device per event to vendor resources with that device's context --
preserving per-device measurement semantics without per-device
payloads. Raw device identifiers <bcp14>MUST NOT</bcp14> appear in requested URLs.</t>
      </section>
      <section anchor="load-shaping">
        <name>Load Shaping</name>
        <t>On a shared fixed timeline, every subscriber reaches the same tracking
instant at the same wallclock moment; naive activation-time behavior
synchronizes both the <tt>$remote</tt> resolution fetches and the tracking
requests of the entire audience. This applies with particular force
under client-side substitution, where no distributor endpoint sits in
the path to absorb the burst. Clients <bcp14>SHOULD</bcp14> resolve <tt>$remote</tt>
fields within a randomized window ahead of activation (the publication
lead of <xref target="publication-lead"/> provides the margin), and <bcp14>SHOULD</bcp14> apply
bounded random jitter to tracking requests whose measurement semantics
tolerate it, carrying the original event time as data where the
measurement moment must be preserved. Verification-critical requests
with sub-second fire windows are the exception and are expected to be
provisioned for.</t>
      </section>
    </section>
    <section anchor="insertion-plans">
      <name>Per-Session Insertion Plans</name>
      <t>Everything above is deliberately identical bytes for every subscriber
-- that is what makes it relay-cacheable. Server-guided insertion,
per-session capability URLs, and entitlement-scoped fields are
per-session by definition and cannot ride the shared timeline. The
authors believe the standardization target for that layer is a separate
per-session insertion plan mechanism: a unicast-scoped metadata track
(or equivalent side channel) carrying distributor session metadata --
the session's pod assignment for each shared-timeline placement
opportunity, its capability URLs, and policy fields -- which composes
with the shared events defined here (the shared timeline announces
placement geometry and the broadcast/default pod; the insertion plan
overlays the per-session decision).</t>
      <t>That mechanism is out of scope for this document and deserves its own.
It is named here only as a design constraint: the event class defined
in this document is intended to be overridden or parameterized by such
a layer without being redefined by it.</t>
    </section>
    <section anchor="open-issues">
      <name>Open Issues</name>
      <t>This section lists issues to be resolved through working group
discussion; it is to be removed before publication.</t>
      <ol spacing="normal" type="1"><li>
          <t><strong>Granularity</strong>: one <tt>pod</tt> envelope per placement opportunity (the
<bcp14>RECOMMENDED</bcp14> default), or <tt>slot</tt>/<tt>trackingEvent</tt> envelopes per
creative? Redelivery deduplication is simpler at pod granularity.</t>
        </li>
        <li>
          <t><strong>Update semantics for live</strong>: pods change close to air. Is a later
record at the same index a full supersede (last-writer-wins), or is
a patch rule needed? <xref target="SVTA2053"/> has no cancel/supersede concept;
SCTE-35 inherits cancellation from its payload semantics.</t>
        </li>
        <li>
          <t><strong>Deduplication and late joiners</strong>: the DASH/HLS bindings give each
event a manifest-unique id for dedup on re-encounter; MSF records
carry no id. Is (eventType, index, payload) a sufficient dedup key
under relay redelivery and FETCH catch-up -- and which past records
<bcp14>MUST</bcp14> a mid-break joiner fetch?</t>
        </li>
        <li>
          <t><strong>Switching sets</strong>: when ladder rungs are separate tracks, does one
creative signaling track <tt>depends</tt> on all of them? Splice
conditioning can land at slightly different media times per rung;
container-relative interior offsets survive that, but a single <tt>m</tt>
may not. Sender-side track switching under discussion in the MOQ
Working Group sharpens this: if relays select the delivered rung per
subscriber and switch at Group boundaries, (a) these records must
remain valid for every rung of a switching set, (b) splice
conditioning must keep switching sets coherent at placement
boundaries, and (c) the delivered rendition is known only at the
client, so rendition-level measurement is necessarily
client-observed.</t>
        </li>
        <li>
          <t><strong>Common-format scope</strong>: is the Event Timeline binding the whole
story, or is a container-level mapping (the envelope in CMAF <tt>emsg</tt>)
also wanted so one payload survives packager transit across
HLS/DASH/MOQT boundaries?</t>
        </li>
        <li>
          <t><strong>Feature negotiation on one-to-many</strong>: <xref target="SVTA2053"/> interpreters
<bcp14>SHOULD</bcp14> error on unsupported flagged features -- sensible unicast
behavior, but a broadcast publisher cannot negotiate per subscriber.
Should the catalog advertise which features a track uses so clients
subscribe eyes-open?</t>
        </li>
        <li>
          <t><strong>Record integrity</strong>: do these records need payload signing (JWS or
COSE over the envelope, or a catalog-pinned key) beyond transport
authentication? See <xref target="security"/>.</t>
        </li>
      </ol>
    </section>
    <section anchor="impl-status">
      <name>Implementation Status</name>
      <t>(This section follows <xref target="RFC7942"/> and is to be removed before
publication as an RFC.)</t>
      <t>The author operates a continuously running server-side ad insertion
deployment over MoQ. This section states what that deployment does and
does not implement, because the two are easy to conflate: the mechanism
this document specifies is NOT yet what the deployment publishes.</t>
      <t>Running today:</t>
      <ul spacing="normal">
        <li>
          <t>Fixed-timeline linear channels, publisher to relay to browser, with ad
creatives spliced server-side into one shared broadcast -- so every
subscriber receives the same media objects, which is the condition that
motivates this document (<xref target="introduction"/>).</t>
        </li>
        <li>
          <t>Placement opportunities detected from <strong>inbound</strong> in-band SCTE-35
(<tt>emsg</tt>), parsed to a break window and duration. The deployment
consumes SCTE-35; it does not publish SCTE-35 records, and it does not
publish a splice signaling track.</t>
        </li>
        <li>
          <t>Creative identity and per-creative tracking published <strong>in band</strong>,
ahead of the splice, on a control track the subscriber reads before the
first event renders. That validates the delivery model in
<xref target="publication-lead"/>. The track's schema is the deployment's own and is
NOT the event class defined here.</t>
        </li>
        <li>
          <t>Tracking indirection exactly as described in <xref target="capability-urls"/>: a
proxy holds vendor beacon URLs and returns compact per-event
capability URLs, which devices fire with their own client identifier,
with per-<tt>{uuid, event, client}</tt> deduplication so a shared broadcast
yields per-device counts. This is the part of the document with the
most operational experience behind it.</t>
        </li>
        <li>
          <t>An MSF catalog, published automatically by the MoQ implementation in
use and verified against an interop profile by a tool in the same
codebase. A capture from the live deployment validates clean, so the
transport and catalog layers this document builds on are exercised,
not assumed.</t>
        </li>
      </ul>
      <t>NOT yet implemented:</t>
      <ul spacing="normal">
        <li>
          <t>The event class this document defines. No track advertises
<tt>eventType</tt> <tt>urn:svta:advertising-wg:ad-creative-signaling</tt>, and no
record carries an SVTA 2053-1 Version 2 carriage envelope
(<xref target="payload"/>). Migrating the control track to the envelope form is in
progress.</t>
        </li>
        <li>
          <t>The IANA registration in <xref target="iana"/>, which this document requests.</t>
        </li>
        <li>
          <t>Correlation with a co-published splice signaling track
(<xref target="correlation"/>), since no such track is published.</t>
        </li>
      </ul>
      <t>Consequently the timing and lead-time rules in <xref target="timing"/> and
<xref target="publication-lead"/> derive from running code, while the record format
in <xref target="record-format"/> and the payload constraint in <xref target="payload"/> are
specified but unexercised. The JSON Schema and test vectors in
<xref target="schema"/> are conformance examples written against this specification,
not captured output; the rules they express are executed in the
implementation's own test suite, so they are internally consistent, but
they have not yet been produced by a publisher.</t>
      <t/>
    </section>
    <section anchor="security">
      <name>Security Considerations</name>
      <section anchor="integrity">
        <name>Integrity of Tracking Records</name>
        <t>Tracking URLs move money. A relay path is not end-to-end confidential
or authentic by default, and a tampered creative signaling record turns
a large synchronized audience into a request cannon aimed at an
arbitrary URL -- amplifying the denial-of-service concerns already
noted for splice records (Section 6.3 of <xref target="SCTE35-MOQ"/>) with an
attacker-chosen target. Deployments <bcp14>MUST</bcp14> authenticate the publication
path for this track, and receivers <bcp14>SHOULD</bcp14> restrict tracking requests to
URL authorities the distributor has designated (capability URLs at a
distributor endpoint make this restriction natural). Whether records
additionally need payload signing is tracked in <xref target="open-issues"/>.</t>
      </section>
      <section anchor="amplification">
        <name>Amplification and Load</name>
        <t>Even absent an attacker, activation-synchronized behavior across a
broadcast audience is a self-inflicted denial of service; the
mitigations in <xref target="load-shaping"/> are accordingly stated as client
SHOULDs. Capability URLs bound the blast radius of both cases: devices
address the distributor's endpoint, which applies its own policy before
any vendor is contacted.</t>
      </section>
      <section anchor="validation">
        <name>Payload Validation</name>
        <t>Receivers <bcp14>MUST</bcp14> treat record payloads as untrusted input: enforce size
and nesting limits on the JSON envelope, and accept only <tt>https</tt> URLs
in tracking, <tt>$remote</tt>, and verification fields. Verification resources
are executable code; clients <bcp14>MUST</bcp14> apply their platform's script-loading
policy and <bcp14>SHOULD</bcp14> load them only for slots that will actually render.</t>
      </section>
      <section anchor="privacy">
        <name>Privacy</name>
        <t>By construction, the shared timeline carries no per-user data: records
are identical for every subscriber, per-device identity is appended by
the client at request time (<xref target="client-identity"/>), and identifiers are
pseudonymous and session-scoped. Indirection through capability URLs
additionally keeps vendor endpoint inventories and macro-expanded
values out of relay caches. Distributor tracking endpoints handle real
device context (addresses, user agents) and <bcp14>MUST</bcp14> apply applicable
consent and data-protection policy before forwarding it to vendors.</t>
      </section>
    </section>
    <section anchor="iana">
      <name>IANA Considerations</name>
      <t>This document requests registration of the following entry in the "MSF
Event Timeline Types" registry established by <xref section="14.2" sectionFormat="of" target="MSF"/>.
<xref target="SCTE35-MOQ"/> registers entries in that same registry; this document
follows the same pattern.</t>
      <table>
        <name>Addition to the MSF Event Timeline Types registry</name>
        <thead>
          <tr>
            <th align="left">Event Type</th>
            <th align="left">Description</th>
            <th align="left">Reference</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">urn:svta:advertising-wg:ad-creative-signaling</td>
            <td align="left">SVTA 2053-1 ad creative signaling, Version 2 carriage envelope</td>
            <td align="left">This document; <xref target="SVTA2053"/></td>
          </tr>
        </tbody>
      </table>
      <t>Editor's note (to be resolved before publication): the URN is defined and
owned by the SVTA Advertising Working Group; this registration is made in
coordination with that group.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="MSF">
          <front>
            <title>MOQT Streaming Format</title>
            <author fullname="Will Law" initials="W." surname="Law">
              <organization>Akamai</organization>
            </author>
            <author fullname="Suhas Nandakumar" initials="S." surname="Nandakumar">
              <organization>Cisco</organization>
            </author>
            <date day="2" month="June" year="2026"/>
            <abstract>
              <t>   This document specifies the MOQT Streaming Format, designed to
   operate on Media Over QUIC Transport.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-moq-msf-01"/>
        </reference>
        <reference anchor="RFC8259">
          <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="SVTA2053" target="https://www.svta.org/product/svta2053/">
          <front>
            <title>SVTA 2053-1: Ad Creative Signaling in DASH and HLS, Revision 1.0</title>
            <author>
              <organization>Streaming Video Technology Alliance (SVTA), Advertising Working Group</organization>
            </author>
            <date year="2025" month="May" day="19"/>
          </front>
        </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="SCTE35-MOQ">
          <front>
            <title>SCTE35 transmission over MSF Event Timeline</title>
            <author fullname="Will Law" initials="W." surname="Law">
              <organization>Akamai</organization>
            </author>
            <author fullname="Suhas Nandakumar" initials="S." surname="Nandakumar">
              <organization>Cisco</organization>
            </author>
            <date day="6" month="July" year="2026"/>
            <abstract>
              <t>   Defines the transmission of SCTE 35 data over MSF Event Timeline
   tracks.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-wilaw-moq-scte35-event-timeline-00"/>
        </reference>
        <reference anchor="MOQT">
          <front>
            <title>Media over QUIC Transport</title>
            <author fullname="Suhas Nandakumar" initials="S." surname="Nandakumar">
              <organization>Cisco</organization>
            </author>
            <author fullname="Victor Vasiliev" initials="V." surname="Vasiliev">
              <organization>Google</organization>
            </author>
            <author fullname="Ian Swett" initials="I." surname="Swett">
              <organization>Google</organization>
            </author>
            <author fullname="Alan Frindell" initials="A." surname="Frindell">
              <organization>Meta</organization>
            </author>
            <date day="31" month="August" year="2026"/>
            <abstract>
              <t>   This document defines Media over QUIC Transport (MOQT), a publish/
   subscribe protocol that runs over QUIC and WebTransport.  MOQT
   leverages the features of these transports, such as streams,
   datagrams, priorities, and partial reliability.  MOQT operates both
   point-to-point and through intermediate relays, enabling scalable
   low-latency delivery.  Despite its name, MOQT is media agnostic and
   can be used for a wide range of use cases.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-moq-transport-20"/>
        </reference>
        <reference anchor="SCTE35">
          <front>
            <title>Digital Program Insertion Cueing Message</title>
            <author>
              <organization>Society of Cable Telecommunications Engineers</organization>
            </author>
            <date year="2022"/>
          </front>
          <seriesInfo name="ANSI/SCTE" value="35 2022"/>
        </reference>
        <reference anchor="VAST" target="https://iabtechlab.com/standards/vast/">
          <front>
            <title>Digital Video Ad Serving Template (VAST), Version 4.2</title>
            <author>
              <organization>IAB Technology Laboratory</organization>
            </author>
            <date year="2019" month="June"/>
          </front>
        </reference>
        <reference anchor="OMSDK" target="https://iabtechlab.com/standards/open-measurement-sdk/">
          <front>
            <title>Open Measurement SDK</title>
            <author>
              <organization>IAB Technology Laboratory</organization>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="CAP-URLS" target="https://www.w3.org/TR/capability-urls/">
          <front>
            <title>Good Practices for Capability URLs</title>
            <author initials="J." surname="Tennison" fullname="Jeni Tennison">
              <organization/>
            </author>
            <date year="2014" month="February"/>
          </front>
          <seriesInfo name="W3C" value="First Public Working Draft"/>
        </reference>
        <reference anchor="RFC7942">
          <front>
            <title>Improving Awareness of Running Code: The Implementation Status Section</title>
            <author fullname="Y. Sheffer" initials="Y." surname="Sheffer"/>
            <author fullname="A. Farrel" initials="A." surname="Farrel"/>
            <date month="July" year="2016"/>
            <abstract>
              <t>This document describes a simple process that allows authors of Internet-Drafts to record the status of known implementations by including an Implementation Status section. This will allow reviewers and working groups to assign due consideration to documents that have the benefit of running code, which may serve as evidence of valuable experimentation and feedback that have made the implemented protocols more mature.</t>
              <t>This process is not mandatory. Authors of Internet-Drafts are encouraged to consider using the process for their documents, and working groups are invited to think about applying the process to all of their protocol specifications. This document obsoletes RFC 6982, advancing it to a Best Current Practice.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="205"/>
          <seriesInfo name="RFC" value="7942"/>
          <seriesInfo name="DOI" value="10.17487/RFC7942"/>
        </reference>
      </references>
    

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>This document deliberately reuses the carriage pattern established by
Will Law and Suhas Nandakumar in <xref target="SCTE35-MOQ"/>, and is designed to
compose with it. The payload data model is the work of the SVTA
Advertising Working Group <xref target="SVTA2053"/>.</t>
      <t/>
    </section>
    <section numbered="false" anchor="schema">
      <name>JSON Schema and Test Vectors</name>
      <t>A JSON Schema for the record shape and a set of test vectors are published
alongside this document at
<eref target="https://riedlse.github.io/draft-riedl-moq-ad-creative-signaling/">https://riedlse.github.io/draft-riedl-moq-ad-creative-signaling/</eref>.</t>
      <t>The schema encodes exactly the two requirements of <xref target="record-structure"/> -- one
index reference field, and a <tt>data</tt> member holding one Version 2 envelope -- and
nothing further; the envelope's own contents are governed by <xref target="SVTA2053"/>, not
by this document.</t>
      <t>The vectors come in two sets, and both matter: six that <bcp14>MUST</bcp14> validate, and six
that <bcp14>MUST NOT</bcp14>. A validator that accepts everything passes the first set alone.
The rejecting cases pin the constraints most likely to be implemented loosely:</t>
      <table>
        <thead>
          <tr>
            <th align="left">Vector</th>
            <th align="left">Rejected because</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">
              <tt>two-index-fields</tt></td>
            <td align="left">carries both <tt>m</tt> and <tt>t</tt>; exactly one is allowed</td>
          </tr>
          <tr>
            <td align="left">
              <tt>no-index-field</tt></td>
            <td align="left">carries none</td>
          </tr>
          <tr>
            <td align="left">
              <tt>missing-data</tt></td>
            <td align="left">index only, no envelope</td>
          </tr>
          <tr>
            <td align="left">
              <tt>v1-bare-payload</tt></td>
            <td align="left">a bare Version 1 payload object, which the DASH and HLS bindings accept and this one does not (<xref target="payload"/>)</td>
          </tr>
          <tr>
            <td align="left">
              <tt>wrong-envelope-version</tt></td>
            <td align="left">
              <tt>"version": 1</tt> inside <tt>data</tt></td>
          </tr>
          <tr>
            <td align="left">
              <tt>unknown-envelope-type</tt></td>
            <td align="left">a <tt>type</tt> outside <tt>pod</tt>, <tt>slot</tt>, <tt>trackingEvent</tt></td>
          </tr>
        </tbody>
      </table>
      <t>A minimal conforming record, one <tt>pod</tt> envelope describing a single 30 s
creative with its quartile chain (timings taken from a running deployment, so
the values are the real ones a 30 s transcode produces -- note <tt>30030</tt>, not
<tt>30000</tt>):</t>
      <sourcecode type="json"><![CDATA[
{
  "m": 60000,
  "data": {
    "version": 2,
    "type": "pod",
    "payload": [
      {
        "id": "brk-947",
        "startTime": 60000,
        "duration": 30030,
        "slots": [
          {
            "id": "ad-32600921",
            "index": 0,
            "startTime": 60000,
            "duration": 30030,
            "trackingEvents": [
              { "event": "start",         "startTime": 0,
                "urls": ["https://aip.example/9f2c/start"] },
              { "event": "firstQuartile", "startTime": 7507,
                "urls": ["https://aip.example/9f2c/firstQuartile"] },
              { "event": "midpoint",      "startTime": 15015,
                "urls": ["https://aip.example/9f2c/midpoint"] },
              { "event": "thirdQuartile", "startTime": 22522,
                "urls": ["https://aip.example/9f2c/thirdQuartile"] },
              { "event": "complete",      "startTime": 30030,
                "urls": ["https://aip.example/9f2c/complete"] }
            ]
          }
        ]
      }
    ],
    "features": { "capabilityUrls": true, "perDeviceDedup": true }
  }
}
]]></sourcecode>
      <t>The <tt>urls</tt> values are capability URLs (<xref target="capability-urls"/>), abbreviated here.</t>
      <t>Two notes on provenance, so implementers know what these are and are not.</t>
      <t>The vectors are <strong>conformance examples authored against this specification</strong>,
not captured output. The reference implementation publishes its break timeline
on a non-standard control track today; migrating it to the envelope form
described here is in progress, and vectors captured from it will replace these
once that lands. Their timings, identifiers and quartile offsets are taken from
a live deployment, so they are realistic, but the record framing is this
document's.</t>
      <t>The rules the schema expresses are executable and run in that implementation's
CI, so the published vectors cannot silently drift from the prose: the valid set
is asserted to pass and the invalid set to fail, each for the specific reason its
name claims.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA619+3LbRtbn/3iKXnqrIvkjqKvjmJrLp8h24vlsy7GUZKam
pkYg0ZQQgwADgJIZxVP7EPsA+yz7KPske37nnG40QDhxJl+mJhFx6cvpc78h
juOoyZrcTs3oNDVnlU2a7Naai+y6SPKsuDblra1Mc2PNq4vn5tmtLRpzmS0t
3bOjKJnNKntL7+Lm4PujKC3nRbKkCdIqWTRxldk0j5flj3GSxnN9Pq7d8/H+
fjRPGntdVpupyYpFGdXr2TKr66wsms2Kxnnx7PJ5NC+L2hb1up6aplrbKKJV
HEXZquLfdXO4v/9k/zBKaAJa3vd2ZpIiNS+KxlaFpS1USVGvyqoZRXdl9e66
KtcrbMOmWWLOseVvvn1xNore2Q3dT6eRic2SbzI8flxnc75U/sj/qRf4j2Xo
NAodXElSerrJatqY/DR+o/hd10mG/85sQvuJorqhRf4zycuCtrmxdVQvk6r5
54/rsrG00aKMVtnU/L0p52NT0+Iru6jpr80Sf/yDYGCLtaW1mo/uxxiB4eh7
2jWO9ys8ievLJMvpOu3oPzPbLCZldY3LSTW/ocs3TbOqp3t7eAqX6Mwm7rE9
XNibVeVdbffo/T28d501N+sZvcnnTTc+6fTxZk6nXzfBnDrCRIacZOWnjfVp
T01ummU+iqJk3dyUFc6ZlmAI8QjeFxPzFm/zlcU6zwWPLxocdHCLYJAU2U80
cllMzZukSpblumj4nhW41vzOhBfzn6t83ZST5jaKirJa8oJwaERDhNzxUwYs
r5jxyrx9fvbF4aMneOTiu8vTw/1HR1Me2xEurhpcjg+mw1RI+zFPTy++ZiL4
+uXF2Ly1txlIyhxM9kc8mocA/xNjV9grjbXECN9lqS3NpZ3fFGVeXm/MaZ5n
STG3Zgfz745pZo/spoNePGRKxzqlVR4+ivcfxQdPZAdJdW3prN1R393dTerb
JmG0WlVlup43e7iA3e3xKw/M5fnTcyKZRVlZ0/KGqSESWmTVkpkVUdIst2a1
nuXZ3Hz79qWhx00AKHNH2MSP4qKO3NnBVxOzc3mT1eYuqU1i3tGppuVdYe6n
03m5XBKpfzCzvJy/A7IQcHiwv52+oqkqYlVEUA0xm7EOfXeTzW8MjVaUjbml
Q0nlWRzIMtG3GWPNgjDGNKWZrbM8NUljkjw3/+9//W9+hHZYN7TV5SrLrY5t
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

-->

</rfc>
