<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.29 (Ruby 3.4.4) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-aipref-vocab-05" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.31.0 -->
  <front>
    <title abbrev="AI Preference Vocabulary">A Vocabulary For Expressing AI Usage Preferences</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-aipref-vocab-05"/>
    <author fullname="Paul Keller">
      <organization>Open Future</organization>
      <address>
        <email>paul@openfuture.eu</email>
      </address>
    </author>
    <author fullname="Martin Thomson" role="editor">
      <organization>Mozilla</organization>
      <address>
        <email>mt@lowentropy.net</email>
      </address>
    </author>
    <date year="2025" month="December" day="01"/>
    <area>Web and Internet Transport</area>
    <workgroup>AI Preferences</workgroup>
    <keyword>AI Preferences</keyword>
    <keyword>Opt-Out</keyword>
    <keyword>Vocabulary</keyword>
    <abstract>
      <?line 59?>

<t>This document defines a vocabulary for expressing preferences
regarding how digital assets are used by automated processing systems.
This vocabulary allows for the declaration
of restrictions or permissions for use of digital assets by such systems.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://ietf-wg-aipref.github.io/drafts/draft-ietf-aipref-vocab.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-aipref-vocab/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        AI Preferences Working Group mailing list (<eref target="mailto:ai-control@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/ai-control/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/ai-control/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/ietf-wg-aipref/drafts"/>.</t>
    </note>
  </front>
  <middle>
    <?line 67?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>This document defines a vocabulary of preferences
regarding how automated systems process digital assets --
in particular, the training and use of AI models.
This vocabulary can be used to describe
the types of uses that a declaring party may wish to explicitly restrict or allow.</t>
      <t>The vocabulary is intended to be used
in jurisdictions where expressing preferences results in legal obligations,
as well as where there are no associated legal obligations.
In either case, expressing preferences is without prejudice to applicable laws,
including the applicability of exceptions and limitations to copyright.</t>
      <t><xref target="model"/> defines the data model for AI Preferences.
<xref target="vocab"/> defines the terms of the vocabulary.
<xref target="usage"/> explains how to use AI Preferences in a data processing application,
and <xref target="format"/> describes a way to serialize preferences into a string.
<xref target="usage"/> describes a process for determining the preference for a category of use.</t>
      <t><xref target="ATTACH"/> defines mechanisms to associate preferences with assets.
Other means of association might be defined separately in the future.</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>
      <?line -18?>

<t>This document uses the following terms:</t>
      <dl newline="true" spacing="compact">
        <dt>Artificial Intelligence (AI):</dt>
        <dd>
          <t>An engineered system of sufficient complexity that,
for a given set of human-defined objectives,
learns from data to generate outputs
such as content, predictions, recommendations, or decisions.</t>
        </dd>
        <dt>AI Training:</dt>
        <dd>
          <t>The application of machine learning to data
to produce or improve a model for an artificial intelligence system.</t>
        </dd>
        <dt>Asset:</dt>
        <dd>
          <t>A digital file or stream of data, usually with associated metadata.</t>
        </dd>
        <dt>Declaring party:</dt>
        <dd>
          <t>The entity that expresses a preference with regards to an Asset.</t>
        </dd>
        <dt>Machine Learning (ML):</dt>
        <dd>
          <t>The processing of data
to produce or improve a model that encodes the relationship
between the data and human-defined objectives.</t>
        </dd>
        <dt>Search Application:</dt>
        <dd>
          <t>A search application is a system that enables users
locate items on the internet or in a specific data store.</t>
        </dd>
      </dl>
    </section>
    <section anchor="model">
      <name>Statements of Preference</name>
      <t>The vocabulary is a set of categories,
each of which is defined to cover a class of usage for assets.
<xref target="vocab"/> defines the core set of usage categories in detail.</t>
      <t>A statement of preference -- or usage preference -- is made about an asset.
A statement of preference follows a simple data model where a preference
is assigned to each of the categories of use in the vocabulary.
A preference is either to allow or disallow
the usage associated with the category.</t>
      <t>A statement of preference can indicate preferences
about some, all, or none of the categories from the vocabulary.
This can mean that no preference is stated for a given usage category.</t>
      <t>Some categories describe a proper subset of the usages of other categories.
A preference that is stated for the more general category applies
if no preference is stated for the more specific category.</t>
      <t>For example, a more general category might be assigned a preference
that allows the associated usage.
In the absence of any statement of preference
regarding categories that are more specific subsets of that usage category,
usage within those categories would be also be allowed.
An explicit preference regarding the more specific usage category
can be used to disallow the more specific usage,
while indicating that other usage within the more general category
is permissible.</t>
      <t>After processing a statement of preferences
the recipient associates each category of use
one of three preference values: "allowed", "disallowed", or "unknown".
In the absence of a statement of preference,
all usage categories are assigned a preference value of "unknown".</t>
      <t>The process for consulting a statement of preference is defined in <xref target="usage"/>.</t>
      <t>Different declaring parties might each make their own statement of preference
regarding a particular asset.
The process for managing multiple statements of preference is defined in <xref target="combine"/>.</t>
      <t>An exemplary syntax for statements of preference is defined in <xref target="format"/>.</t>
      <section anchor="conformance">
        <name>Conformance</name>
        <t>This document and <xref target="ATTACH"/>
describe how statements of preference are associated with assets.
An implementation is conformant to these specifications
if it correctly follows all normative requirements that apply to it.</t>
        <t>The process of obtaining a statement of preference has very limited scope
for variation between implementations.</t>
      </section>
      <section anchor="applicability">
        <name>Applicability and Effect</name>
        <t>This specification provides a set of definitions for different
categories of use, plus a system for associating simple
preferences to each (allow, disallow, or no preference; see <xref target="model"/>).</t>
        <t>This specification does not provide any enforcement mechanism
for those preferences, and conformance to it does not encompass
whether preferences are actually respected during data processing.</t>
        <t>Preferences do not themselves create rights or prohibitions,
either in the positive or the negative. Other mechanisms—technical,
legal, contractual, or otherwise—might enforce stated preferences
and thereby determine the consequences of following or not following
a stated preference.</t>
        <t>An entity that receives usage preferences <bcp14>MAY</bcp14> choose to respect
those preferences it has discovered, according to
an understanding of how the asset is used,
how that usage corresponds to the usage categories
where preferences have been stated,
and the applicable legal context.</t>
        <t>Usage preferences can be ignored due to express agreements
between relevant parties, explicit provisions of law, or
the exercise of discretion in situations where widely recognized
priorities justify doing so. Priorities that could justify
ignoring preferences include—but are not limited to—free
expression, safety, education, scholarship, research,
preservation, interoperability, and accessibility.</t>
        <t>The following lists examples of cases
where other priorities could lead someone to ignore expressed preferences
in a particular situation:</t>
        <ul spacing="normal">
          <li>
            <t>People with accessibility needs,
or organizations working on their behalf,
might decide to ignore a preference
in order to access automated captions
or generate accessible formats.</t>
          </li>
          <li>
            <t>A cultural heritage organization might decide to ignore a preference
in order to provide more useful, reliable, or discoverable access
to historical web collections.</t>
          </li>
          <li>
            <t>An educational institution might decide to ignore a preference
in order to enable scholars to develop or use tools
to facilitate scientific or other types of research.</t>
          </li>
          <li>
            <t>A website that permits user uploads might decide to ignore a preference
in order to develop or use tools that detect harmful content
according to established terms of use.</t>
          </li>
        </ul>
        <t>Because enforcement is not provided by this specification,
the consequences of ignoring preferences could vary
depending upon how a given legal jurisdiction recognizes preferences.</t>
      </section>
    </section>
    <section anchor="vocab">
      <name>Vocabulary Definition</name>
      <t>This section defines the categories of use in the vocabulary.</t>
      <section anchor="train-ai">
        <name>Foundation Model Production Category</name>
        <t>The act of using an asset to train or fine-tune a foundation model.</t>
        <t>Foundation models are large models that are produced using deep learning
or other machine learning techniques.
Foundation models are trained on very large numbers of assets
so that they can be applied to a wide range of use cases.
Foundation models typically possess generative capabilities
in one or more media.</t>
        <t>Fine-tuning can specialize a general-purpose foundation model
for a narrower set of use cases.</t>
      </section>
      <section anchor="search">
        <name>Search</name>
        <t>Using one or more assets in a search application
that directs users to the location from which the assets were retrieved.</t>
        <t>The presentation of any asset
that is included in search output
includes the following conditions:</t>
        <ul spacing="normal">
          <li>
            <t>A reference to the location that the asset was obtained
is presented as part of the output.</t>
          </li>
          <li>
            <t>The asset can only be represented in the output
with excerpts that are drawn verbatim from it.</t>
          </li>
        </ul>
        <t>An asset can be used in ranking,
but not present in output.</t>
        <t>Internal processing of assets
to perform ranking and presentation
can include the use and training of AI models.
This only includes any training that is necessary
to produce models used in the search application.</t>
        <t>With both these conditions,
a preference to allow Search usage
enables the presentation of links and titles
in what is considered "traditional" search results.</t>
      </section>
      <section anchor="vocab-extension">
        <name>Vocabulary Extensions</name>
        <t>Extensions to this vocabulary need to be defined in an RFC
that updates this document.</t>
        <t>Any future extensions to this vocabulary <bcp14>MUST NOT</bcp14> introduce additional categories
that include existing categories defined in the vocabulary.
That is, new categories of use can be defined as a subset of an existing category,
but not a superset.</t>
        <t>Systems that use this vocabulary might define their own extensions
as part of a larger data model.
<xref target="mapping"/> describes how concepts from an alternative format
might be mapped to this vocabulary.</t>
      </section>
    </section>
    <section anchor="usage">
      <name>Applying Statements of Preference</name>
      <t>After acquiring a statement of preference,
which might use the process in <xref target="processing"/>,
an application can determine the status of a specific usage category
as follows:</t>
      <ol spacing="normal" type="1"><li>
          <t>If the statement of preference contains an explicit preference
regarding that category of use --
either to allow or disallow --
that is the result.</t>
        </li>
        <li>
          <t>Otherwise, if the usage category is a proper subset
of another usage category,
recursively apply this process to that category
and use the result of that process.</t>
        </li>
        <li>
          <t>Otherwise, no preference is stated.</t>
        </li>
      </ol>
      <t>This process results in one of three potential answers:
allow, disallow, and unknown.
Applications can use the answer to guide their behavior.</t>
      <t>One approach for dealing with an "unknown" outcome
is to assign a default value.
This document takes no position on what default might be assigned.</t>
      <section anchor="combine">
        <name>Combining Preferences</name>
        <t>The application might have multiple statements of preference,
obtained using different methods
or from different declaring parties.
This might result in conflicting answers.</t>
        <t>Absent some other means of resolving conflicts,
the following process applies to each usage category:</t>
        <ul spacing="normal">
          <li>
            <t>If any statement of preference indicates that the usage is disallowed,
the result is that the usage is disallowed.</t>
          </li>
          <li>
            <t>Otherwise, if any statement of preference allows the usage,
the result is that the usage is allowed.</t>
          </li>
          <li>
            <t>Otherwise, no preference is stated.</t>
          </li>
        </ul>
        <t>This process ensures that the most restrictive preference applies.</t>
      </section>
      <section anchor="more-specific-instructions">
        <name>More Specific Instructions</name>
        <t>A recipient of a statement of preferences
that follows the model in <xref target="model"/>
might receive more specific instructions in two ways:</t>
        <ul spacing="normal">
          <li>
            <t>Extensions to the vocabulary might define more specific categories of usage.
Preferences about more specific categories override those of any more general category.</t>
          </li>
          <li>
            <t>Contractual agreements or other specific arrangements might override
statements of preference.</t>
          </li>
        </ul>
        <t>For instance, a statement of preferences might indicate a preference
to disallow a category of use for an asset.
If arrangements, such as legal agreements, exist that explicitly permit the use of that asset,
those arrangements likely apply despite the existence of machine-readable statements of preference,
unless the terms of the arrangement explicitly say otherwise.</t>
      </section>
    </section>
    <section anchor="format">
      <name>Exemplary Serialization Format</name>
      <t>This section defines an exemplary serialization format for preferences.
The format describes how the abstract model could be turned into Unicode text or sequence of bytes.</t>
      <t>The format relies on the Dictionary type defined in <xref section="3.2" sectionFormat="of" target="FIELDS"/>.
The dictionary keys correspond to usage categories
and the dictionary values correspond to explicit preferences,
which can be either <tt>y</tt> or <tt>n</tt>; see <xref target="y-or-n"/>.</t>
      <t>For example, the following states a preference
to allow foundation model production (<xref target="train-ai"/>),
disallow search (<xref target="search"/>), and
and states no preference for other categories
other than subsets of these categories:</t>
      <artwork><![CDATA[
train-ai=y, search=n
]]></artwork>
      <section anchor="labels">
        <name>Usage Category Labels</name>
        <t>Each usage category in the vocabulary (<xref target="vocab"/>) is mapped to a short textual label.
<xref target="t-category-labels"/> tabulates this mapping.</t>
        <table anchor="t-category-labels">
          <name>Mappings for Categories</name>
          <thead>
            <tr>
              <th align="left">Category</th>
              <th align="left">Label</th>
              <th align="left">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">Foundation Model Production</td>
              <td align="left">train-ai</td>
              <td align="left">
                <xref target="train-ai"/></td>
            </tr>
            <tr>
              <td align="left">Search</td>
              <td align="left">search</td>
              <td align="left">
                <xref target="search"/></td>
            </tr>
          </tbody>
        </table>
        <t>These tokens are case sensitive.</t>
        <t>Tokens defined for a new usage category can only use
lowercase latin characters (a-z), digits (0-9), "_", "-", ".", or "*".
These are encoded using the mappings in <xref target="ASCII"/>.</t>
      </section>
      <section anchor="y-or-n">
        <name>Preference Labels</name>
        <t>The data model in <xref target="model"/> used has two options for preferences
associated with each category: allow and disallow.
These are mapped to single byte Tokens (<xref section="3.3.4" sectionFormat="of" target="FIELDS"/>)
of <tt>y</tt> and <tt>n</tt>, respectively.</t>
      </section>
      <section anchor="text-encoding">
        <name>Text Encoding</name>
        <t>Structured Fields <xref target="FIELDS"/> describes a byte-level encoding of information,
not a text encoding.
This makes this format suitable for inclusion in any protocol or format that carries bytes.</t>
        <t>Some formats are defined in terms of strings rather than bytes.
These formats might need to decode the bytes of this format to obtain a string.
As the syntax is limited to ASCII <xref target="ASCII"/>,
an ASCII decoder or UTF-8 decoder <xref target="UTF8"/> can be used.
This results in the strings that this document uses.</t>
        <t>Processing (see <xref target="processing"/>) requires a sequence of bytes,
so any format that uses strings needs to encode strings first.
Again, this process can use ASCII or UTF-8.</t>
      </section>
      <section anchor="extension">
        <name>Syntax Extensions</name>
        <t>There are two ways by which this syntax might be extended:
the addition of new labels and the addition of parameters.</t>
        <t>New labels might be defined to correspond to new usage categories.
<xref target="vocab-extension"/> addresses the considerations for defining new categories.
New labels might also be defined for other types of extension
that do not assign a preference to a usage category.
In either case, when processing a parsed Dictionary to obtain preferences,
any unknown labels <bcp14>MUST</bcp14> be ignored.</t>
        <t>The Dictionary syntax (<xref section="3.2" sectionFormat="of" target="FIELDS"/>) can associate parameters
with each key-value pair.
This document does not define any semantics for any parameters that might be included.
When processing a parsed Dictionary to obtain preferences,
any unknown parameters <bcp14>MUST</bcp14> be ignored.</t>
        <t>In either case,
new extensions need to be defined in an RFC that updates this document.</t>
      </section>
      <section anchor="processing">
        <name>Processing Algorithm</name>
        <t>To process a series of bytes to recover the stated preferences,
those bytes are parsed into a Dictionary (<xref section="4.2.2" sectionFormat="of" target="FIELDS"/>),
then preferences are assigned to each usage category in the vocabulary.</t>
        <t>This algorithm produces a keyed collection of values,
where each key has at most one value and optional parameters.</t>
        <t>To obtain preferences,
iterate through the defined categories in the vocabulary.
For the label that corresponds to that category (see <xref target="t-category-labels"/>),
obtain the corresponding value from the collection,
disregarding any parameters.
A preference is assigned as follows:</t>
        <ul spacing="normal">
          <li>
            <t>If the value is a Token with a value of <tt>y</tt>,
the associated preference is to allow that category of use.</t>
          </li>
          <li>
            <t>If the value is a Token with a value of <tt>n</tt>,
the associated preference is to disallow that category of use.</t>
          </li>
          <li>
            <t>Otherwise, no preference is stated for that category of use.</t>
          </li>
        </ul>
        <t>Note that this last alternative includes
the key being absent from the collection,
values that are not Tokens,
and Token values that are other than <tt>y</tt> or <tt>n</tt>.
All of these are not errors,
they only result in no preference being inferred.</t>
        <t>It is important to note that
if the same key appears multiple times,
only the last value is taken.
This means that duplicating a key could result in unexpected outcomes.
For example, the following expresses no preferences:</t>
        <artwork><![CDATA[
train-ai=y, train-ai="n", search=n, search
]]></artwork>
        <t>If the parsing of the Dictionary fails, no preferences are stated.
This includes where keys include uppercase characters,
as this format is case sensitive
(more correctly, it operates on bytes, not strings).</t>
        <t>This document does not define a use for parameters.
Where parameters are used,
only those parameters associated with the value that is selected
according to <xref section="4.2.2" sectionFormat="of" target="FIELDS"/>.
Parameters can therefore be carried for any preference value,
including where no preference is expressed.</t>
        <t>For example, the following <tt>train-ai</tt> preference has parameters
even though no preference is expressed:</t>
        <artwork><![CDATA[
train-ai;has;parameters="?";
]]></artwork>
        <t>This process produces an abstract data model
that assigns a preference to each usage category
as described in <xref target="model"/>.</t>
      </section>
      <section anchor="mapping">
        <name>Alternative Formats</name>
        <t>This format is only an exemplary way to represent preferences.
The data model described in <xref target="model"/>, can be used without this serialization.</t>
        <t>Any alternative format needs to define the mapping
both from that format to the model used in this document
and from the model to the alternative format.
This includes any potential for extensions (<xref target="extension"/>).</t>
        <t>The mapping between the data model and the alternative format
does not need to be complete,
it only needs to be clear and unambiguous.</t>
        <t>For example, an alternative format
might only provide the ability to convey preferences
for a subset of the categories of use.
A mapping might then define that no preference is associated with other categories.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>Preferences are not a security mechanism.
<xref target="applicability"/> addresses what it means to express a preference.</t>
      <t>Processing a concrete instantiation
of the exemplary format described in <xref target="format"/>
is subject to the security considerations in <xref section="6" sectionFormat="of" target="FIELDS"/>.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="ASCII">
          <front>
            <title>ASCII format for network interchange</title>
            <author fullname="V.G. Cerf" initials="V.G." surname="Cerf"/>
            <date month="October" year="1969"/>
          </front>
          <seriesInfo name="STD" value="80"/>
          <seriesInfo name="RFC" value="20"/>
          <seriesInfo name="DOI" value="10.17487/RFC0020"/>
        </reference>
        <reference anchor="FIELDS">
          <front>
            <title>Structured Field Values for HTTP</title>
            <author fullname="M. Nottingham" initials="M." surname="Nottingham"/>
            <author fullname="P-H. Kamp" surname="P-H. Kamp"/>
            <date month="September" year="2024"/>
            <abstract>
              <t>This document describes a set of data types and associated algorithms that are intended to make it easier and safer to define and handle HTTP header and trailer fields, known as "Structured Fields", "Structured Headers", or "Structured Trailers". It is intended for use by specifications of new HTTP fields.</t>
              <t>This document obsoletes RFC 8941.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9651"/>
          <seriesInfo name="DOI" value="10.17487/RFC9651"/>
        </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="UTF8">
          <front>
            <title>UTF-8, a transformation format of ISO 10646</title>
            <author fullname="F. Yergeau" initials="F." surname="Yergeau"/>
            <date month="November" year="2003"/>
            <abstract>
              <t>ISO/IEC 10646-1 defines a large character set called the Universal Character Set (UCS) which encompasses most of the world's writing systems. The originally proposed encodings of the UCS, however, were not compatible with many current applications and protocols, and this has led to the development of UTF-8, the object of this memo. UTF-8 has the characteristic of preserving the full US-ASCII range, providing compatibility with file systems, parsers and other software that rely on US-ASCII values but are transparent to other values. This memo obsoletes and replaces RFC 2279.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="63"/>
          <seriesInfo name="RFC" value="3629"/>
          <seriesInfo name="DOI" value="10.17487/RFC3629"/>
        </reference>
        <reference anchor="ATTACH">
          <front>
            <title>A Vocabulary For Expressing AI Usage Preferences</title>
            <author fullname="Gary Illyes">
              <organization>Google</organization>
            </author>
            <author fullname="Martin Thomson" role="editor">
              <organization>Mozilla</organization>
            </author>
            <date year="2025" month="December" day="01"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-aipref-attach-00"/>
        </reference>
      </references>
    </references>
    <?line 577?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The following individuals made significant contributions to this document:</t>
      <ul spacing="compact">
        <li>
          <t><contact fullname="Lila Bailey"/></t>
        </li>
        <li>
          <t><contact fullname="Cullen Miller"/></t>
        </li>
        <li>
          <t><contact fullname="Laurent Le Meur"/></t>
        </li>
        <li>
          <t><contact fullname="Krishna Madhavan"/></t>
        </li>
        <li>
          <t><contact fullname="Felix Reda"/></t>
        </li>
        <li>
          <t><contact fullname="Leonard Rosenthol"/></t>
        </li>
        <li>
          <t><contact fullname="Sebastian Posth"/></t>
        </li>
        <li>
          <t><contact fullname="Erin Simon"/></t>
        </li>
        <li>
          <t><contact fullname="Timid Robot Zehta"/></t>
        </li>
      </ul>
    </section>
  </back>
  <!-- ##markdown-source:
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
h/5cxP8C+lb9RdZOAAA=

-->

</rfc>
