<?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 3.4.10) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-morrison-substrate-provenance-grammar-04" category="info" version="3">
  <!-- xml2rfc v2v3 conversion 3.32.0 -->
  <front>
    <title abbrev="Substrate Provenance Grammar">Substrate-Provenance Annotation Grammar for Large-Language-Model Output</title>
    <seriesInfo name="Internet-Draft" value="draft-morrison-substrate-provenance-grammar-04"/>
    <author fullname="Blake Morrison">
      <organization>Alter Meridian Pty Ltd</organization>
      <address>
        <email>blake@truealter.com</email>
      </address>
    </author>
    <date year="2026" month="October" day="21"/>
    <abstract>
      

<t>This memo specifies a wire-level annotation grammar by which a
large-language-model output may carry, at emission and at the
granularity of an individual assertion, a provenance label drawn
from a closed enumerated vocabulary of substrate-class identifiers.
The memo defines the closed vocabulary, the per-assertion attachment
form, the admissibility discipline a relying party <bcp14>MAY</bcp14> apply to the
labels, and two terminal output states, <tt>unverified-inference</tt> and
<tt>decayed-to-uncertainty</tt>, equal-rank with assertion and denial.  The
memo does not specify what an inference system <bcp14>MUST</bcp14> do; it specifies
the wire grammar by which a relying party may inspect what the
inference system DID with respect to the substrates it consulted.
The memo is Informational.</t>
    </abstract>
  </front>
  <middle>
    

<section anchor="introduction">
      <name>Introduction</name>
      <t>When a large-language-model output is consumed by another agent,
by a downstream automation, or by a relying party with action
authority, the consuming entity has no wire-level mechanism to
distinguish three cases: (i) the model
emitted the assertion from training-corpus-resident pattern
without consulting any external substrate; (ii) the model
emitted the assertion after consulting an external substrate
whose state corroborated the assertion within an admissibility
window; (iii) the model emitted the assertion after consulting
an external substrate whose state did not corroborate the
assertion, and the model proceeded anyway.</t>
      <t>Existing approaches to this problem operate at the prose layer:
post-hoc citation insertion by a separate retrieval orchestrator,
natural-language hedge phrasing ("I believe", "it appears",
"according to"), per-paragraph confidence scores rendered as
adjectives, or refusal to answer.  All four are recognised from
surface form alone, and a model trained to substitute hedge
phrasing for substrate consultation defeats all four.</t>
      <t>This memo specifies a wire-level grammar by which the inference
system declares, at the granularity of an individual assertion
within its output, which substrate-class, if any, corroborated
the assertion at emission.  The grammar is closed-vocabulary,
finite, and version-anchored; the consuming entity parses the
annotation without interpreting prose.  Two terminal annotations,
<tt>unverified-inference</tt> and <tt>decayed-to-uncertainty</tt>, are equal-rank
with assertion and denial.  Each is an output state in its own
right; neither is a confidence score or a hedge phrase.</t>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      

<t>The following terms are defined for the purposes of this document:</t>
      <dl>
        <dt>Assertion</dt>
        <dd>
          <t>A token sequence in the inference system's output
that makes a truth-evaluable claim about state external to the
inference system itself.</t>
        </dd>
        <dt>Substrate</dt>
        <dd>
          <t>A source of state that is external to the inference system,
not writeable by the inference system at consultation time, and
observable to a relying party with independent access.</t>
        </dd>
        <dt>Substrate-class</dt>
        <dd>
          <t>A named, version-anchored category of
substrate.  A substrate-class identifier is an opaque string
drawn from the closed enumerated vocabulary of Section 3.</t>
        </dd>
        <dt>Provenance annotation</dt>
        <dd>
          <t>A wire-level label attached to an
individual assertion that names the substrate-class corroborating
the assertion, or names one of the two terminal annotations
defined in Section 4.</t>
        </dd>
        <dt>Admissibility window</dt>
        <dd>
          <t>A predicate, evaluated at assertion
emission time, that determines whether the corroborating
observation from a named substrate-class is recent enough to
count toward admission.</t>
        </dd>
        <dt>Cardinality-thresholded admissibility</dt>
        <dd>
          <t>A discipline by which
an assertion is admitted to the inference system's output only
if at least <em>k</em> corroborating observations from
substrate-class-distinct sources are available within the
admissibility window, where <em>k</em> is a relying-party-configurable
floor.</t>
        </dd>
      </dl>
    </section>
    <section anchor="the-closed-substrate-class-vocabulary">
      <name>The Closed Substrate-Class Vocabulary</name>
      <t>The vocabulary defined by this memo is closed, finite, and
version-anchored.  An implementation parsing a provenance
annotation <bcp14>MUST</bcp14> recognise the annotation if and only if the
substrate-class identifier appears in the version of the
vocabulary the implementation has loaded.  Unknown substrate-class
identifiers <bcp14>MUST NOT</bcp14> be silently interpreted; an implementation
that encounters one <bcp14>MUST</bcp14> treat the annotation as if it were
<tt>unverified-inference</tt> (Section 4).</t>
      <t>The version-anchor scheme used by this memo is a dotted
major.minor pair appearing as a leading element of the
substrate-class identifier.  The vocabulary defined in this
revision of the memo carries the version anchor <tt>1.0</tt>.  Future
revisions of this memo <bcp14>MAY</bcp14> add substrate-classes; addition is a
minor-version bump.  Future revisions <bcp14>MUST NOT</bcp14> remove
substrate-classes without a major-version bump.</t>
      <t>The version-1.0 closed substrate-class vocabulary:</t>
      <dl>
        <dt><tt>substrate.git.log</tt></dt>
        <dd>
          <t>The output of <tt>git log</tt> on a repository
observable to the relying party, with the assertion's content
appearing within a commit reachable from a named reference.
Compute-location: the relying party's local working tree or a
trusted mirror.</t>
        </dd>
        <dt><tt>substrate.grep</tt></dt>
        <dd>
          <t>The output of <tt>grep</tt> over a file-set
observable to the relying party, with the assertion's content
appearing in a named region of a named file.
Compute-location: the relying party's local file system.</t>
        </dd>
        <dt><tt>substrate.code.read</tt></dt>
        <dd>
          <t>The contents of a file at a specified
path, optionally with line offset and limit, as read from a
file system observable to the relying party.
Compute-location: the relying party's local file system.</t>
        </dd>
        <dt><tt>substrate.fs.mtime</tt></dt>
        <dd>
          <t>The modification timestamp of a file
observable to the relying party.
Compute-location: the relying party's local file system.</t>
        </dd>
        <dt><tt>substrate.mcp.brief</tt></dt>
        <dd>
          <t>The output of a query against a
Model-Context-Protocol-discoverable service per <xref target="MCPDNS"/> whose
state is owned by a party other than the inference system
vendor.
Compute-location: the MCP service's own infrastructure.</t>
        </dd>
        <dt><tt>substrate.do.sse-count</tt></dt>
        <dd>
          <t>The numeric subscriber count on a
server-sent-event channel per <xref target="SUBOBS"/>, observed by a relying
party with independent subscription to the same channel.
Compute-location: the SSE server's infrastructure.</t>
        </dd>
        <dt><tt>substrate.unix.peercred</tt></dt>
        <dd>
          <t>The kernel-reported peer
credentials on a Unix-domain socket connection, per <xref target="POSIX"/>.
Compute-location: the kernel of the host on which the
observation is made.</t>
        </dd>
        <dt><tt>unverified-inference</tt></dt>
        <dd>
          <t>A sentinel substrate-class
identifier reserved for assertions emitted without
corroboration from any other substrate-class in this
vocabulary.  This is the terminal annotation defined in
Section 4; it is listed here for parser completeness.</t>
        </dd>
      </dl>
      <t>The eight identifiers above constitute the entirety of the
version-1.0 closed vocabulary.</t>
      <t>The compute-location line on each class above uses the term as
defined in <xref target="COMPUTELOC"/> Section 2.</t>
    </section>
    <section anchor="terminal-annotations">
      <name>Terminal Annotations</name>
      <t>Two annotation values are terminal: they signal a distinct output
state of the inference system, equal-rank
with assertion and denial, rather than corroboration by any
substrate.</t>
      <dl>
        <dt><tt>unverified-inference</tt></dt>
        <dd>
          <t>The inference system emitted the assertion without corroboration
from any substrate-class in the vocabulary.  The annotation is the
inference system's declaration that the assertion is
uncorroborated, and is not a confidence score.</t>
        </dd>
        <dt><tt>decayed-to-uncertainty</tt></dt>
        <dd>
          <t>The inference system attempted to corroborate the assertion from
a substrate-class in the vocabulary, but the observation aged
beyond the admissibility window before emission.  The annotation
is the inference system's declaration that corroboration was
attempted and aged out, and is not a confidence score.</t>
        </dd>
      </dl>
      <t>Both terminal annotations are output tokens.  A relying party
parsing the wire output finds them in the same slot in which
substrate-class identifiers appear; the parser applies the
terminal-annotation disposition without inspecting prose.  The two
terminal annotations are distinct from refusal to answer, from
explicit denial, and from the absence of annotation.</t>
    </section>
    <section anchor="attachment-form">
      <name>Attachment Form</name>
      <t>A provenance annotation is attached to an individual assertion in
the inference system's output.  This memo specifies the abstract
attachment relationship; the concrete wire encoding is the
implementation's choice and is not normative herein.</t>
      <t>The annotation form is the tuple:</t>
      <artwork><![CDATA[
(assertion-span, substrate-class-identifier, observation-id?, ts?)
]]></artwork>
      <t>where:</t>
      <ul spacing="normal">
        <li>
          <t><tt>assertion-span</tt> identifies the token sequence to which the
annotation applies (the implementation's choice of identifier:
character offsets, token offsets, structured-output field path,
or equivalent);</t>
        </li>
        <li>
          <t><tt>substrate-class-identifier</tt> is drawn from the closed
vocabulary of Section 3 or is one of the terminal annotations
of Section 4;</t>
        </li>
        <li>
          <t><tt>observation-id</tt> (<bcp14>OPTIONAL</bcp14>) is a stable identifier for the
specific observation that corroborated the assertion, suitable
for re-querying the same substrate to confirm the binding;</t>
        </li>
        <li>
          <t><tt>ts</tt> (<bcp14>OPTIONAL</bcp14>) is the time at which the corroborating
observation was made.</t>
        </li>
      </ul>
      <t><tt>observation-id</tt> and <tt>ts</tt> remain <bcp14>OPTIONAL</bcp14> to emit.  Omitting
either does not make an annotation malformed, and this memo does
not constrain what an inference system emits.  Omitting either
does bound what a relying party can later do with the annotation
under Section 6.  An annotation carrying no <tt>ts</tt> cannot be counted
under the procedure of Section 6 at any floor, k = 2 included,
because that procedure counts only annotations whose <tt>ts</tt> falls
within the admissibility window.  An annotation carrying no
<tt>observation-id</tt> cannot be independently re-verified, and so
cannot be counted toward the k = 3 floor.  An annotation carrying
neither is never counted.</t>
      <t>Two concrete encodings are illustrative and not normative:</t>
      <t>JSON-structured-output encoding per <xref target="RFC8259"/>:</t>
      <artwork><![CDATA[
{
  "assertion": "the file CHANGELOG.md contains an entry dated 2026-05-25",
  "provenance": {
    "substrate_class": "substrate.code.read",
    "observation_id": "sha256:e3b0c4...",
    "ts": "2026-05-28T11:40:00Z"
  }
}
]]></artwork>
      <t>In-line bracketed annotation, for free-text outputs:</t>
      <artwork><![CDATA[
The file CHANGELOG.md contains an entry dated 2026-05-25.
[substrate.code.read; observation-id=sha256:e3b0c4...;
 ts=2026-05-28T11:40:00Z]
]]></artwork>
    </section>
    <section anchor="admissibility-discipline">
      <name>Admissibility Discipline</name>
      <t>A relying party <bcp14>MAY</bcp14> apply a cardinality-thresholded admissibility
discipline to inference system output annotated under this grammar.
The discipline is parameterised by:</t>
      <ul spacing="normal">
        <li>
          <t><tt>k</tt>, the floor cardinality of distinct substrate-classes
required to corroborate an assertion before the relying party
admits the assertion for downstream action.</t>
        </li>
        <li>
          <t><tt>W</tt>, the admissibility window: a per-substrate-class duration
beyond which an observation is considered aged.</t>
        </li>
      </ul>
      <t>Reference values:</t>
      <ul spacing="normal">
        <li>
          <t>k = 2 is the floor for assertions whose downstream effect is
bounded to the relying party's own state.</t>
        </li>
        <li>
          <t>k = 3 is the floor for assertions whose downstream effect
affects state external to the relying party (settlement,
policy decision, automated action with external visibility).</t>
        </li>
      </ul>
      <t>The relying party applies the discipline by counting, for each
assertion in the inference system's output, the distinct
substrate-class identifiers appearing in the assertion's
provenance annotations whose <tt>ts</tt> field is within W.  Assertions
not meeting the cardinality floor are not admitted; assertions
annotated with <tt>unverified-inference</tt> or <tt>decayed-to-uncertainty</tt>
are not admitted by virtue of the terminal annotation itself.</t>
      <t>The rules of this section determine what a relying party may
count toward a floor.  They do not constrain what an inference
system may emit.  Admission affects emission in one direction
only: an emitter has a reason to include a field because an
annotation that omits it may be uncountable.  Admission never
bounds what an emitter may say.  An implementation <bcp14>MUST NOT</bcp14> read the cardinality
language of this section as emission-time semantics.</t>
      <t>A provenance annotation <bcp14>MUST NOT</bcp14> be counted toward the k = 3
floor unless the relying party has independently re-verified it,
per the Annotation Fabrication discussion in Security
Considerations.  Independent re-verification requires an
observation-id; an annotation lacking an observation-id <bcp14>MUST NOT</bcp14>
be counted toward the k = 3 floor.  This requirement does not
apply to the k = 2 floor, where an annotation remains admissible
under the counting procedure above without independent
re-verification.</t>
      <t>Independent re-verification is meaningful only where re-querying
the named substrate can confirm the earlier observation rather
than produce a second, unrelated one.  A relying party <bcp14>MUST</bcp14>
apply that test per annotation before counting it toward the k = 3
floor, and <bcp14>MUST NOT</bcp14> treat a later reading as confirming an earlier
one where the substrate's value may legitimately have changed in
between, or where the observed condition no longer exists to be
queried.</t>
      <t><tt>substrate.do.sse-count</tt>, whose subscriber count legitimately
differs on every observation, and <tt>substrate.unix.peercred</tt>, which
is unavailable once the connection it described has closed, fail
that test in every case.  <tt>substrate.mcp.brief</tt> names state owned
by a third party and may fail it depending on whether that state
is stable across the interval.  The test is stated as a property
because the re-queryability of a given observation is not a fixed
attribute of its class.</t>
      <t>An annotation that fails the test remains admissible toward
k = 2.  Some annotations can never contribute to the k = 3 floor,
and an implementer counting toward that floor should expect this.</t>
      <t>This memo does not specify what the relying party <bcp14>MUST</bcp14> do with
an inadmissible assertion.  Common dispositions include:
discarding the assertion silently, surfacing it to a human
reviewer, requesting re-emission from the inference system, or
substituting an explicit refusal in the relying party's own
output to the next consuming entity.  Each disposition is the
relying party's own policy choice and is not constrained by this
memo.</t>
    </section>
    <section anchor="why-the-vocabulary-is-closed">
      <name>Why the Vocabulary Is Closed</name>
      <t>An open-extensible vocabulary would permit any inference system to
introduce a new substrate-class identifier and emit corroboration
annotations under it.  A relying party encountering an
unrecognised identifier would face a choice: trust the new
identifier on its face, refuse the assertion, or treat the
identifier as equivalent to a fallback known identifier.  Each
choice fails in a way the closed vocabulary avoids:</t>
      <ul spacing="normal">
        <li>
          <t>Trusting the unrecognised identifier on its face permits an
inference system to bypass the admissibility discipline by
inventing self-corroborating substrate-classes.</t>
        </li>
        <li>
          <t>Refusing the assertion stalls the consuming pipeline on a
vocabulary-version mismatch, an interop-combinatorics failure
mode shared with the envelope-coordination anti-pattern of
<xref target="SUBOBS"/>.</t>
        </li>
        <li>
          <t>Fallback-equivalence collapses the semantic distinctions the
vocabulary is intended to preserve.</t>
        </li>
      </ul>
      <t>The closed-vocabulary posture treats unrecognised identifiers as
<tt>unverified-inference</tt> (Section 4).  This preserves the
admissibility discipline under vocabulary drift while leaving the
relying party free to upgrade its parser to a newer vocabulary
version.</t>
    </section>
    <section anchor="relation-to-prior-art">
      <name>Relation to Prior Art</name>
      <t>This memo combines a closed substrate-class vocabulary,
per-assertion attachment, and two terminal annotations in a single
wire-level grammar.  Each adjacent family of prior work differs
from this grammar in at least one of those three components:</t>
      <t>Retrieval-Augmented Generation <xref target="RAG"/> performs retrieval against an
external corpus and conditions generation on the retrieved
context.  RAG is an inference-system architecture; this memo
specifies an output-side annotation grammar.  A RAG-architected
inference system <bcp14>MAY</bcp14> emit annotations under this grammar; a
non-RAG inference system <bcp14>MAY</bcp14> emit annotations under this grammar.
The grammar is orthogonal to the architecture.</t>
      <t>Constitutional AI <xref target="CAI"/> and self-critique architectures apply a
second model pass to evaluate the first pass's output against a
specification.  The output of such a system is not annotated at
the granularity of an individual assertion against an external
substrate-class; it is annotated, if at all, with a critique-pass
verdict against a specification authored by the model vendor.
Annotation against a vendor-authored specification is distinct
from annotation against a substrate observable to a relying
party.</t>
      <t>Multi-agent debate <xref target="DEBATE"/> and related multi-pass deliberation
architectures produce a single consensus output from multiple
agent passes.  The output's provenance is the agents' agreement
process, not a substrate observable to a relying party.</t>
      <t>Hidden-state probing <xref target="PROBE"/> inspects the inference system's
internal activations to estimate the system's own confidence in
its output.  Confidence is a property of the inference system;
substrate-class corroboration is a property of the relying party's
own observation surface.</t>
      <t>Cryptographically-anchored append-only logs (Certificate
Transparency <xref target="RFC9162"/>, trusted timestamping per <xref target="RFC3161"/>) are
candidate corroborating substrates under this grammar, and each is
a substrate-class a future revision of the vocabulary <bcp14>MAY</bcp14> add.  A
chained log considered in isolation is not a per-assertion
annotation grammar.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This memo requires no IANA actions in its present revision.  A
future revision may request establishment of an IANA registry for
substrate-class identifiers, governed by the closed-vocabulary
discipline of Sections 3 and 7.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The grammar specified by this memo surfaces three classes of
attack absent from prose-only or hedge-phrasing approaches.  The
mitigations described below are operational rather than wire-level;
this memo specifies the grammar only, and an implementation's
operational posture is its own.</t>
      <section anchor="annotation-fabrication">
        <name>Annotation Fabrication</name>
        <t>An inference system may emit a provenance annotation citing a
substrate-class corroboration that did not in fact occur.  The
grammar specified by this memo provides no cryptographic binding
between the annotation and any observed substrate state.  A
relying party <bcp14>MUST NOT</bcp14> treat the annotation as evidence of
corroboration; the annotation declares the inference system's claim
about its own behaviour.  The relying party <bcp14>MAY</bcp14> independently verify
that claim by re-querying the named substrate with the optional
observation-id.</t>
        <t>Admissibility Discipline requires this independent
re-verification before a provenance annotation may be counted
toward the k = 3 floor; the <bcp14>MAY</bcp14> above is the relying party's
general option to verify any annotation, and is superseded, for
that floor, by the <bcp14>MUST</bcp14> stated there.</t>
      </section>
      <section anchor="vocabulary-drift">
        <name>Vocabulary Drift</name>
        <t>An inference system implemented against a newer version of the
vocabulary may emit substrate-class identifiers not present in a
relying party's older vocabulary.  Per Section 3, the relying
party treats unrecognised identifiers as <tt>unverified-inference</tt>.
This fails closed.  A relying party
operating at a substantially older vocabulary version <bcp14>SHOULD</bcp14>
upgrade its parser to the current published version of this
memo.</t>
      </section>
      <section anchor="substrate-capture">
        <name>Substrate Capture</name>
        <t>An adversary controlling a substrate identified in the vocabulary
may engineer the substrate's state to corroborate assertions of
the adversary's choice.  The admissibility discipline of
Section 6, with k = 2 or k = 3, mitigates this by requiring
corroboration from substrate-class-distinct sources before
admission.  An adversary controlling all k substrate-classes can
defeat the discipline; selection of independent substrate-classes
is the relying party's operational responsibility and is not
specified by this memo.</t>
      </section>
    </section>
    <section anchor="privacy-considerations">
      <name>Privacy Considerations</name>
      <t>Provenance annotations expose to consumers of the inference
system's output the categories of substrate the inference system
consulted.  In typical deployments, the substrate-class identifier
is a category not a record; the per-record observation-id, if
emitted, may carry the privacy properties of the underlying
substrate (a filesystem path, a content hash, a peer credential
identifier).</t>
      <t>A relying party emitting annotations under this grammar to a
further downstream consumer <bcp14>SHOULD</bcp14> apply the same identity-binding
considerations articulated in <xref target="SUBOBS"/> for substrate observables:
pseudonymous tier observations need not carry strong identifiers;
identity-bound tier observations carry the identity-binding
strength of the underlying substrate.</t>
      <t>The grammar specified by this memo does not require, and does not
recommend, attachment of identifiers tying the inference system's
output to a particular human end-user.  Such attachments, if made,
are outside the scope of this memo.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/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" target="https://www.rfc-editor.org/info/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="RFC8259" target="https://www.rfc-editor.org/info/rfc8259" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8259.xml">
          <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="SUBOBS" target="https://datatracker.ietf.org/doc/html/draft-morrison-substrate-observation-04">
          <front>
            <title>Substrate-Observation as an Alternative to Envelope Coordination for Concurrent Sessions</title>
            <author fullname="Blake Morrison">
              <organization>Alter Meridian Pty Ltd</organization>
            </author>
            <date year="2026"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-morrison-substrate-observation-04"/>
        </reference>
        <reference anchor="MCPDNS" target="https://datatracker.ietf.org/doc/html/draft-morrison-mcp-dns-discovery-09">
          <front>
            <title>Discovery of Model Context Protocol Servers via DNS TXT Records</title>
            <author fullname="Blake Morrison">
              <organization>Alter Meridian Pty Ltd</organization>
            </author>
            <date year="2026"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-morrison-mcp-dns-discovery-09"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="IDCOMMITS" target="https://datatracker.ietf.org/doc/html/draft-morrison-identity-attributed-commits-04">
          <front>
            <title>Identity-Attributed Git Commits via Tier-Structured Trailers</title>
            <author fullname="Blake Morrison">
              <organization>Alter Meridian Pty Ltd</organization>
            </author>
            <date year="2026"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-morrison-identity-attributed-commits-04"/>
        </reference>
        <reference anchor="IDPRONOUNS" target="https://datatracker.ietf.org/doc/html/draft-morrison-identity-pronouns-05">
          <front>
            <title>Identity Pronouns: A Reference-Axis Extension to ~handle Identity Systems</title>
            <author fullname="Blake Morrison">
              <organization>Alter Meridian Pty Ltd</organization>
            </author>
            <date year="2026"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-morrison-identity-pronouns-05"/>
        </reference>
        <reference anchor="RFC9162" target="https://www.rfc-editor.org/info/rfc9162" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9162.xml">
          <front>
            <title>Certificate Transparency Version 2.0</title>
            <author fullname="B. Laurie" initials="B." surname="Laurie"/>
            <author fullname="E. Messeri" initials="E." surname="Messeri"/>
            <author fullname="R. Stradling" initials="R." surname="Stradling"/>
            <date month="December" year="2021"/>
            <abstract>
              <t>This document describes version 2.0 of the Certificate Transparency (CT) protocol for publicly logging the existence of Transport Layer Security (TLS) server certificates as they are issued or observed, in a manner that allows anyone to audit certification authority (CA) activity and notice the issuance of suspect certificates as well as to audit the certificate logs themselves. The intent is that eventually clients would refuse to honor certificates that do not appear in a log, effectively forcing CAs to add all issued certificates to the logs.</t>
              <t>This document obsoletes RFC 6962. It also specifies a new TLS extension that is used to send various CT log artifacts.</t>
              <t>Logs are network services that implement the protocol operations for submissions and queries that are defined in this document.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9162"/>
          <seriesInfo name="DOI" value="10.17487/RFC9162"/>
        </reference>
        <reference anchor="RFC3161" target="https://www.rfc-editor.org/info/rfc3161" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3161.xml">
          <front>
            <title>Internet X.509 Public Key Infrastructure Time-Stamp Protocol (TSP)</title>
            <author fullname="C. Adams" initials="C." surname="Adams"/>
            <author fullname="P. Cain" initials="P." surname="Cain"/>
            <author fullname="D. Pinkas" initials="D." surname="Pinkas"/>
            <author fullname="R. Zuccherato" initials="R." surname="Zuccherato"/>
            <date month="August" year="2001"/>
            <abstract>
              <t>This document describes the format of a request sent to a Time Stamping Authority (TSA) and of the response that is returned. It also establishes several security-relevant requirements for TSA operation, with regards to processing requests to generate responses. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3161"/>
          <seriesInfo name="DOI" value="10.17487/RFC3161"/>
        </reference>
        <reference anchor="COMPUTELOC" target="https://datatracker.ietf.org/doc/html/draft-morrison-compute-location-gate-04">
          <front>
            <title>The Compute-Location Gate: Provenance-Class Routing of Identity Inference with Wire-Layer Refusal of Unconsented Provenance Classes</title>
            <author fullname="Blake Morrison">
              <organization>Alter Meridian Pty Ltd</organization>
            </author>
            <date year="2026"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-morrison-compute-location-gate-04"/>
        </reference>
        <reference anchor="POSIX" target="https://pubs.opengroup.org/onlinepubs/9699919799/">
          <front>
            <title>IEEE Std 1003.1-2017, Standard for Information Technology - Portable Operating System Interface (POSIX) Base Specifications</title>
            <author>
              <organization/>
            </author>
            <date year="2017"/>
          </front>
        </reference>
        <reference anchor="RAG" target="https://arxiv.org/abs/2005.11401">
          <front>
            <title>Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks</title>
            <author fullname="Patrick Lewis">
              <organization/>
            </author>
            <author fullname="Ethan Perez">
              <organization/>
            </author>
            <author fullname="Aleksandra Piktus">
              <organization/>
            </author>
            <date year="2020"/>
          </front>
        </reference>
        <reference anchor="CAI" target="https://arxiv.org/abs/2212.08073">
          <front>
            <title>Constitutional AI: Harmlessness from AI Feedback</title>
            <author fullname="Yuntao Bai">
              <organization/>
            </author>
            <date year="2022"/>
          </front>
        </reference>
        <reference anchor="DEBATE" target="https://arxiv.org/abs/1805.00899">
          <front>
            <title>AI Safety via Debate</title>
            <author fullname="Geoffrey Irving">
              <organization/>
            </author>
            <date year="2018"/>
          </front>
        </reference>
        <reference anchor="PROBE" target="https://arxiv.org/abs/2304.13734">
          <front>
            <title>The Internal State of an LLM Knows When It's Lying</title>
            <author fullname="Amos Azaria">
              <organization/>
            </author>
            <author fullname="Tom Mitchell">
              <organization/>
            </author>
            <date year="2023"/>
          </front>
        </reference>
      </references>
    

<section numbered="false" anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>This memo specifies a grammar layered above the
substrate-observation primitive of <xref target="SUBOBS"/>, the identity
substrate of <xref target="IDPRONOUNS"/> and <xref target="IDCOMMITS"/>, and the discovery
mechanism of <xref target="MCPDNS"/>.</t>
      <t>Mikhail Sergeev read -01 closely and asked where the memo's
normative boundary between emission and admission sits.  The
boundary existed in -01 but the text did not state it.  The two
paragraphs added to Sections 5 and 6 in -02 state it, and the
placement is his suggestion.</t>
    </section>
    <section numbered="false" anchor="ipr-posture">
      <name>IPR Posture</name>
      <t>The applicant of any patent rights that may be construed to read
on the grammar specified by this memo will file an IPR disclosure
under the IETF's standard procedures.  The applicant's intended
licensing posture for any such rights is royalty-free with
defensive-termination, consistent with the applicant's published
IPR disclosures on companion memos in the morrison-* family.</t>
    </section>
    <section numbered="false" anchor="document-history">
      <name>Document History</name>
      <t>draft-morrison-substrate-provenance-grammar-04:</t>
      <ul spacing="normal">
        <li>
          <t>Prose revised against the drafting rules, and the references to
other drafts pinned to their current posted revisions.  No
requirement, identifier or encoding changes.</t>
        </li>
        <li>
          <t>The two terminal-annotation names are spelled in lower case, as the
tokens are, wherever the text names them.  The references to other
drafts are moved to the revisions submitted alongside this one.</t>
        </li>
        <li>
          <t><xref target="IDCOMMITS"/> and <xref target="IDPRONOUNS"/> move to the informative references;
the text cites them only for background.</t>
        </li>
        <li>
          <t>Certificate Transparency cited as RFC 9162 in place of the
obsoleted RFC 6962.</t>
        </li>
      </ul>
      <t>draft-morrison-substrate-provenance-grammar-03:</t>
      <ul spacing="normal">
        <li>
          <t>Section 3: added an informative reference to Section 2 of
<xref target="COMPUTELOC"/> for the term used in the compute-location line on
each class.</t>
        </li>
        <li>
          <t>Section 5: removed the instruction to carry the field notes
forward and the closing sentence about an emitter capping its own
annotations; stated that an annotation with neither field is never
counted.</t>
        </li>
        <li>
          <t>Section 6: removed the characterisation of the k = 3 consequence
and of the reason the test is stated as a property.</t>
        </li>
        <li>
          <t>Section 8: reworded the opening paragraph to describe what the
grammar combines, without a statement of contribution.</t>
        </li>
        <li>
          <t>Section 10.1: removed the sentence on cryptographic binding.</t>
        </li>
        <li>
          <t>Section 10.2: removed the evaluative sentence on the fail-closed
posture.</t>
        </li>
        <li>
          <t>Acknowledgements: reworded the account of the question about
emission and admission.</t>
        </li>
        <li>
          <t>Conventions and Definitions: BCP 14 key-words paragraph now
generated by the boilerplate directive; text unchanged.</t>
        </li>
        <li>
          <t>Added the <xref target="COMPUTELOC"/> informative reference.</t>
        </li>
        <li>
          <t>Rewrote sentences across the document in plainer terms, set the
definitions and the vocabulary as definition lists, and removed
emphasis capitals outside BCP 14 key words.  No requirement,
identifier or encoding changes.</t>
        </li>
      </ul>
      <t>draft-morrison-substrate-provenance-grammar-02:</t>
      <ul spacing="normal">
        <li>
          <t>Sections 5 and 6: stated the boundary between emission and
admission, and the conditions under which an annotation counts
toward the k = 2 and k = 3 floors.</t>
        </li>
      </ul>
    </section>
    <section numbered="false" anchor="contributors">
      <name>Contributors</name>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA9Vd63LcNpb+j6fAan7YTjU7knyJLU1mVraVRLu+aC15M1mX
a40m0d0csclegpTck0qeZZ9ln2zPDSDIZsvKVLZq9kcq6m4SwDk4l+9cACdJ
opq8KeyR3rtoZ66pTWOT87q6tqUpU6tPyrJqTJNXpf6+NquVqfW8qvUrUy9s
8sqUi9bAH6+rzBb6bdus22ZPmdmsttfxiDoaUYbZU1mVlmYFM2e1mTfJqqrr
3FVl4sI61uGtZMFvJfuPVAo/Lap6c6Tzcl6pfF0f6aZuXXO4v/9s/1Ap0zbL
qj5SWifwn9bztih4pueFubL6tcxEP1b1wpT534jEI31SNLbWr22dZ7kp9Xmz
0a+ajB60K5MXR3qGQ/wzzGcNPjtNq5VSZVWvYIRri5O+++7F4cHBM/nz6cE3
j/yfh4/p24v3z98+vziiUbeZ/3bmbH3NLDdOwypoUSWNr5tKn5bXtqjWVr+o
qjrLS34Ud+VFVaZtXduy0RfWOfja7dEsHUe+yI/fwJEMlnukD/cPn9BHWHZu
He6Jn+isxIXbJnmJO3zLRlcdzbjDtEhiqR/p8i+XR3rZNGt39PXXMK+B99Ir
YH9um/kUVvw1SNPXy2ZVfH33SV6/OH/5ZrAPL3OXgtDVG13NNYs1cLWxnxuU
4aZKqwJ4W8MTTl/nRsMAuDj9zqawGf/Q7F6l6yQrXZJ5EpP9Z78rq0cnULjC
SDvOXr54+/r12eWA72cZSG3ebJKTpqnzWdvYTH+fN8D81SpvmNeXua2TC1C9
tGlr+P2yBo2EjfhHZnru6TKBriRlmn5vSf/iVGcvz9+9ffP2/VDmPe9Rwsuq
LR1wBAR6bsGSgOk9+Zw7ffq5sSVaFLRAvy5NmRVWhxcvNq6xq/8fG7EWIpP9
x/837O9PAHb/2cGTQ3EBDw+eHOCfoAPn7y9PX7190d+KyyWa9RW4UfCuVSqO
l0jvXGjyojDO6XdV2+TlAg1V2IizUnZN3+TNUv+Y1+ilN8BU2M/WmQKffl+m
4BngDdChyDHTqPYfehNTYU0hrEkWaNh/Zz26ZZLztxdnfxkoz+npqb5oMn2w
v/9wepAc7h98M4EvQENMnZFbPvMWEPby0qbLsiqqxUYn+ryqGzMDRXq7tuCi
cDNZk5gPcwO7cp/mfKCfG2f1xdqm+TzndclONQjFmo7WNTi8KcCDclFX7Zoo
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

-->

</rfc>
