<?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.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-aipref-vocab-04" 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-04"/>
    <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="October" day="28"/>
    <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, the Automated Processing category might be assigned a preference that allows the associated usage.
In the absence of any statement of preference regarding the AI Training category,
that usage would be also be allowed,
as AI Training is a subset of the Automated Processing category.
In comparison, an explicit preference regarding AI Training might disallow that usage,
while permitting other usage within the Automated Processing category.</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
disallowing Automated Processing (<xref target="bots"/>)
in order to access automated captions
or generate accessible formats.</t>
          </li>
          <li>
            <t>A cultural heritage organization might decide to ignore a preference
disallowing Automated Processing (<xref target="bots"/>)
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
disallowing Foundation Model Production (<xref target="train-ai"/>)
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
disallowing Automated Processing (<xref target="bots"/>)
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>
      <t><xref target="f-categories"/> shows the relationship between these categories:</t>
      <figure anchor="f-categories">
        <name>Relationsehip Betweeen Categories of Use</name>
        <artset>
          <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="368" width="424" viewBox="0 0 424 368" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
              <path d="M 8,48 L 8,336" fill="none" stroke="black"/>
              <path d="M 40,128 L 40,224" fill="none" stroke="black"/>
              <path d="M 192,128 L 192,224" fill="none" stroke="black"/>
              <path d="M 232,128 L 232,304" fill="none" stroke="black"/>
              <path d="M 248,224 L 248,272" fill="none" stroke="black"/>
              <path d="M 368,224 L 368,272" fill="none" stroke="black"/>
              <path d="M 384,128 L 384,304" fill="none" stroke="black"/>
              <path d="M 416,48 L 416,336" fill="none" stroke="black"/>
              <path d="M 24,32 L 400,32" fill="none" stroke="black"/>
              <path d="M 56,112 L 176,112" fill="none" stroke="black"/>
              <path d="M 248,112 L 368,112" fill="none" stroke="black"/>
              <path d="M 264,208 L 352,208" fill="none" stroke="black"/>
              <path d="M 56,240 L 176,240" fill="none" stroke="black"/>
              <path d="M 264,288 L 352,288" fill="none" stroke="black"/>
              <path d="M 248,320 L 368,320" fill="none" stroke="black"/>
              <path d="M 24,352 L 400,352" fill="none" stroke="black"/>
              <path d="M 24,32 C 15.16936,32 8,39.16936 8,48" fill="none" stroke="black"/>
              <path d="M 400,32 C 408.83064,32 416,39.16936 416,48" fill="none" stroke="black"/>
              <path d="M 56,112 C 47.16936,112 40,119.16936 40,128" fill="none" stroke="black"/>
              <path d="M 176,112 C 184.83064,112 192,119.16936 192,128" fill="none" stroke="black"/>
              <path d="M 248,112 C 239.16936,112 232,119.16936 232,128" fill="none" stroke="black"/>
              <path d="M 368,112 C 376.83064,112 384,119.16936 384,128" fill="none" stroke="black"/>
              <path d="M 264,208 C 255.16936,208 248,215.16936 248,224" fill="none" stroke="black"/>
              <path d="M 352,208 C 360.83064,208 368,215.16936 368,224" fill="none" stroke="black"/>
              <path d="M 56,240 C 47.16936,240 40,232.83064 40,224" fill="none" stroke="black"/>
              <path d="M 176,240 C 184.83064,240 192,232.83064 192,224" fill="none" stroke="black"/>
              <path d="M 264,288 C 255.16936,288 248,280.83064 248,272" fill="none" stroke="black"/>
              <path d="M 352,288 C 360.83064,288 368,280.83064 368,272" fill="none" stroke="black"/>
              <path d="M 248,320 C 239.16936,320 232,312.83064 232,304" fill="none" stroke="black"/>
              <path d="M 368,320 C 376.83064,320 384,312.83064 384,304" fill="none" stroke="black"/>
              <path d="M 24,352 C 15.16936,352 8,344.83064 8,336" fill="none" stroke="black"/>
              <path d="M 400,352 C 408.83064,352 416,344.83064 416,336" fill="none" stroke="black"/>
              <g class="text">
                <text x="160" y="68">Automated</text>
                <text x="244" y="68">Processing</text>
                <text x="116" y="164">Foundation</text>
                <text x="276" y="164">AI</text>
                <text x="316" y="164">Output</text>
                <text x="112" y="180">Model</text>
                <text x="116" y="196">Production</text>
                <text x="308" y="244">Search</text>
              </g>
            </svg>
          </artwork>
          <artwork type="ascii-art"><![CDATA[
 .------------------------------------------------.
|                                                  |
|              Automated Processing                |
|                                                  |
|                                                  |
|    .----------------.      .----------------.    |
|   |                  |    |                  |   |
|   |                  |    |                  |   |
|   |    Foundation    |    |    AI Output     |   |
|   |      Model       |    |                  |   |
|   |    Production    |    |                  |   |
|   |                  |    |  .------------.  |   |
|   |                  |    | |              | |   |
|    '----------------'     | |    Search    | |   |
|                           | |              | |   |
|                           | |              | |   |
|                           |  '------------'  |   |
|                           |                  |   |
|                            '----------------'    |
|                                                  |
 '------------------------------------------------'
]]></artwork>
        </artset>
      </figure>
      <section anchor="bots">
        <name>Automated Processing Category</name>
        <t>The act of using automated processing on one or more assets
to analyze text and data in order to generate information
which includes but is not limited to patterns, trends and correlations.</t>
        <t>The use of assets for automated processing encompasses all the subsequent categories.</t>
      </section>
      <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>
        <t>The use of assets for Foundation Model Production
is a proper subset of Automated Processing usage.</t>
      </section>
      <section anchor="ai-output">
        <name>AI Output</name>
        <t>The act of using an asset in an AI-based system
to generate outputs
that are presented to clients of that system.</t>
        <t>This does not apply to any assets
that are directly provided as inputs
to the system by clients.
This does not include the construction of the system, only its use.</t>
        <t>This includes the output of search results.
This includes outputs that are presented to human users
and outputs that are presented to automated clients.</t>
        <t>The AI Output category of use includes whatever model training is necessary
to produce the models that are used
in the generation of these outputs.</t>
        <t>The use of assets for AI Output is a proper subset of Automated Processing usage.</t>
      </section>
      <section anchor="search">
        <name>Search</name>
        <t>The Search category of use is a refinement of the AI Output category,
with the addition of the following two 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>If these conditions cannot be met,
the asset then is not included in the output.</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>
        <t>Like the AI Output category of use,
Search includes whatever model training is necessary
to produce the models that are used
in the generation of these outputs.</t>
        <t>The use of assets for Search is a proper subset of AI Output usage.</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 that the use of an asset is disallowed for AI Training.
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 automated processing (<xref target="bots"/>),
disallow foundation model production (<xref target="train-ai"/>), and
and states no preference for other categories
other than subsets of these categories:</t>
      <artwork><![CDATA[
bots=y, train-ai=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">Automated Processing</td>
              <td align="left">bots</td>
              <td align="left">
                <xref target="bots"/></td>
            </tr>
            <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">AI Output</td>
              <td align="left">ai-output</td>
              <td align="left">
                <xref target="ai-output"/></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, bots=n, bots=()
]]></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="October" day="28"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-aipref-attach-04"/>
        </reference>
      </references>
    </references>
    <?line 636?>

<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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
S8vfHI99guz/AG0bfOwqWQAA

-->

</rfc>
