<?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.23 (Ruby 3.3.6) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-thomson-aipref-sup-00" category="std" consensus="true" submissionType="IETF" updates="9309" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.26.0 -->
  <front>
    <title abbrev="Short Usage Strings for AI">Short Usage Preference Strings for Automated Processing</title>
    <seriesInfo name="Internet-Draft" value="draft-thomson-aipref-sup-00"/>
    <author fullname="Martin Thomson">
      <organization>Mozilla</organization>
      <address>
        <email>mt@lowentropy.net</email>
      </address>
    </author>
    <date year="2025" month="February" day="17"/>
    <area>Web and Internet Transport</area>
    <workgroup>AI Preferences</workgroup>
    <keyword>nope</keyword>
    <abstract>
      <?line 36?>

<t>Content creators and other stakeholders might wish to signal
their preferences about how their content
might be consumed by automated systems.
This document defines a very simple format for expressions.</t>
      <t>This document updates RFC 9309 to define one means of conveyance.
An HTTP header field is also defined.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://martinthomson.github.io/sup-ai/draft-thomson-aipref-sup.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-thomson-aipref-sup/"/>.
      </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/martinthomson/sup-ai"/>.</t>
    </note>
  </front>
  <middle>
    <?line 47?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The automated consumption of content by crawlers and other machines
has increased significantly in recent years.
This is partly due to the training of machine-learning models.</t>
      <t>Content creators and other stakeholders,
such as distributors,
might wish to have a say in what types of usage
by automatons is acceptable.
At the same time,
the operator of an automated system might
be happy to follow any guidance given.</t>
      <t>In the absence of a clear means of indicating preferences,
there is no way for preferences to conveyed.
This document seeks to address this shortcoming.</t>
      <t>The format of preferences is a simple string
that looks something like this:</t>
      <artwork><![CDATA[
ai=n,search=y
]]></artwork>
      <t>This format seeks to be:</t>
      <ul spacing="normal">
        <li>
          <t>Simple to understand and create</t>
        </li>
        <li>
          <t>Straightforward to consume</t>
        </li>
        <li>
          <t>Easily conveyed in multiple ways</t>
        </li>
      </ul>
      <t>The document defines extensions to "robots.txt" <xref target="ROBOTS"/> and HTTP <xref target="HTTP"/>
for making preferences available to automated processing systems.</t>
      <section anchor="applicability">
        <name>Applicability</name>
        <t>These expressions do not consider the process
of acquiring content.
They only express preferences regarding
how the content is ultimately used.
In particular,
this includes both the training of machine learning models
and the use of those models.</t>
        <t>This is not intended to replace copyright licensing
or other means of conveying similar information.
Rather, it is intended to provide clear information
that can be used by automatons to quickly identify
whether content is available or not for processing.</t>
        <t>Preference expressions do not apply
where usage is explicitly allowed or disallowed in law
or when licensing has been pre-arranged.</t>
        <t>This document assumes that
automatons have a default policy
that applies when no preferences have been expressed.
How those defaults are determined is not specified.</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?>

</section>
    </section>
    <section anchor="examples">
      <name>Examples</name>
      <t>The following string opts out of all forms of automated processing
for the associated content:</t>
      <artwork><![CDATA[
tdm=n
]]></artwork>
      <t>On its own, this string
does not define which content
is affected.</t>
      <t>The following shows how a preference
to allow general text and data mining,
except for artificial intelligence applications,
is applied to content that is delivered in an HTTP response;
see <xref target="http"/>.</t>
      <sourcecode type="http-message"><![CDATA[
404 Not Found
Date: Mon, 17 Feb 2025 03:32:05 GMT
Usage-Pref: tdm=y,ai=n
Content-Type: text/html

<HTML page contents omitted from this example>
]]></sourcecode>
      <t>Similarly, a website might use "robots.txt" (see <xref target="robots"/>)
to indicate that search indexing
is the only acceptable form of data use
for all resources with a path that starts with "/article/":</t>
      <sourcecode type="robots"><![CDATA[
User-Agent: *
Usage-Pref: tdm=n,search=y
Allow: /article/
]]></sourcecode>
    </section>
    <section anchor="preference-expression-strings">
      <name>Preference Expression Strings</name>
      <t>A preference expression string is a Unicode string.</t>
      <t>A preference expression string comprises zero or more directives,
where each directive is separated by a COMMA ("," or U+2C).</t>
      <section anchor="preference">
        <name>Preference</name>
        <t>Each preference consists of a label,
an EQUALS character ("=" or U+3D),
and value of either "y" (U+79) or "n" (U+6E).</t>
        <t>Preferences that do not conform to this syntax are ignored
and have no effect.</t>
        <t>Some whitespace --
specifically spaces (U+20) and horizontal tabs (U+9) --
are ignored to make authoring easier.
Whitespace is ignored before and after both labels and values.</t>
      </section>
      <section anchor="labels">
        <name>Labels</name>
        <t>Each label describes how an automaton might use content.
A set of core labels is defined in this document; see <xref target="usage"/>.</t>
        <t>A label that is not understood by an automaton are ignored.
Similarly, labels that do not apply to a usage are ignored.</t>
      </section>
      <section anchor="values">
        <name>Values</name>
        <t>Each preference includes one of two values: "y" or "n".</t>
        <t>A value of "y" indicates a preference to allow the associated usage,
unless there is a label for a more specific usage
that has a value of "n".</t>
        <t>A value of "n" indicates a preference to deny the associated usage,
unless there is a label for a more specific usage
that has a value of "y".</t>
        <t>Any other value causes a preference to be ignored.</t>
      </section>
      <section anchor="duplicates">
        <name>Duplicated Labels</name>
        <t>Preferences with duplicated labels are permitted.
This can happen when multiple preference expressions are combined;
see <xref target="multiple"/>.</t>
        <t>If multiple preferences include the same label,
any preference with a value of "n" applies.
Failing that, any preference with a value of "y" is used.
Preferences that cannot be parsed successfully
as either "y" or "n"
are ignored.</t>
        <t>For example, the following indicates a preference
to deny artificial intelligence uses.</t>
        <artwork><![CDATA[
ai=y,ai=n,ai=y,unknown=y
]]></artwork>
        <t>The order of duplicate labels has no effect on the outcome,
until the preference expression string exceeds the length
permitted by the automaton processing it.</t>
      </section>
      <section anchor="specificity">
        <name>Specificity</name>
        <t>A label might be defined to be more specific than another label.</t>
        <t>The value for the most specific applicable label applies,
even if the more general label has a contradictory value.</t>
        <t>For example, the following indicates a preference
to allow a use in generative AI applications,
but not for other AI applications:</t>
        <artwork><![CDATA[
garbage!!!,genai=y,ai=n
]]></artwork>
        <t>The order of preferences and the presence of invalid values
has no effect on the outcome.</t>
      </section>
    </section>
    <section anchor="usage">
      <name>Usage Labels</name>
      <t>This section defines a limited taxonomy of usages,
with just the following broad usage labels:</t>
      <dl newline="true">
        <dt>tdm:</dt>
        <dd>
          <t>The "tdm" label relates to all forms of automated processing of content.
The acronym TDM stands for "text and data mining".
This is a broad category
that refers to the practice of the automated extraction of any sort
of information from content.</t>
        </dd>
        <dt>ai:</dt>
        <dd>
          <t>The "ai" label describes usage
for all forms of artificial intelligence or machine learning.
This includes both the training of models using the content
and the use of a model that has been trained using the content.
The "ai" label is more specific than "tdm".</t>
        </dd>
        <dt>genai:</dt>
        <dd>
          <t>The "genai" label describes usage
for artificial intelligence or machine learning models
that are able to produce content.
That content does not need to be similar in form
to the content that a preference expression is applied.
This includes both the training of models using the content
and the use of a model that has been trained using the content.
The "genai" label is more specific than "ai".</t>
        </dd>
        <dt>search:</dt>
        <dd>
          <t>The "search" label describes a use
of content for developing a search index
and the use of those indexes to find content.
The "search" label is more specific than "tdm".</t>
        </dd>
      </dl>
      <aside>
        <t>Note that although search applications often use machine learning,
  "search" is not more specific than the "ai" label.</t>
      </aside>
      <section anchor="new">
        <name>Defining New Labels</name>
        <t>The set of labels can be expanded,
but the core set is intended to be small.
The most important goal is to ensure that each label is
clearly understood and widely recognized.
A proliferation of choices makes it harder
to choose the right label to use
and increases the chances that a label is not recognized by an automaton.</t>
        <t>An entity processing a preference expression
only uses preferences that are known to it.
Preferences that contain labels unknown are ignored.
This potentially allows for the inclusion of preferences for new usages.</t>
        <t>Because new labels might not be recognized,
it might be necessary for preference expressions
to include values for more general labels
in addition to the new and more specific label.</t>
        <t>For example, if a new "example" usage
is defined to more specific
than the existing "tdm" label,
there are four potential expressions.
Depending on whether an automaton is updated to support the new label,
the outcome differs,
as shown in <xref target="_table-new-label"/>.</t>
        <table anchor="_table-new-label">
          <name>Backward Compatibility for New Labels</name>
          <thead>
            <tr>
              <th align="center">example</th>
              <th align="center">tdm</th>
              <th align="left">updated</th>
              <th align="left">old</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="center">n</td>
              <td align="center">n</td>
              <td align="left">DENIED</td>
              <td align="left">DENIED</td>
            </tr>
            <tr>
              <td align="center">n</td>
              <td align="center">y</td>
              <td align="left">DENIED</td>
              <td align="left">ALLOWED</td>
            </tr>
            <tr>
              <td align="center">y</td>
              <td align="center">n</td>
              <td align="left">ALLOWED</td>
              <td align="left">DENIED</td>
            </tr>
            <tr>
              <td align="center">y</td>
              <td align="center">y</td>
              <td align="left">ALLOWED</td>
              <td align="left">ALLOWED</td>
            </tr>
          </tbody>
        </table>
        <t>If automatons that might use content in the new way
can also be expected to understand the new label,
then the new label can be safely used.
Otherwise, there is a risk that automatons infer permission
based on more general preferences.</t>
        <t><xref target="iana"/> describes a process for registering new labels.</t>
      </section>
      <section anchor="new-chars">
        <name>Label Characters</name>
        <t>A preference expression
cannot include certain characters
when carried in specific protocols (see <xref target="carriage"/>):</t>
        <ul spacing="normal">
          <li>
            <t>A "#" (U+23) character is interpreted as a line ending
in the "robots.txt" format <xref target="robots"/>.</t>
          </li>
          <li>
            <t>The structured field dictionaries used for the
auto-usage field in HTTP <xref target="http"/>
limit character repertoire to
lowercase alphabetic characters ("a" through "z"),
digits ("0" through "9"),
"_", "-", ".", and "*".</t>
          </li>
          <li>
            <t>Line ending characters (U+10 and U+13)
and control characters (U+00 through U+31)
are not special in this format.
However, some systems could be incapable of
authoring, conveying, or rendering them
without alteration.</t>
          </li>
        </ul>
        <t>The format does not prohibit the use of these characters.
However, any new labels intended for wide compatibility
<bcp14>SHOULD</bcp14> use only lowercase alphabetical characters.</t>
      </section>
    </section>
    <section anchor="algorithm">
      <name>Processing Preference Expression Strings</name>
      <t>This section details an example algorithm
for processing of preference expressions.</t>
      <t>An automaton that receives a preference expression uses the following algorithm,
or any process with an equivalent outcome,
to determine whether a particular usage is ALLOWED or DENIED according to that expression.</t>
      <ol spacing="normal" type="1"><li>
          <t>The automaton parses the preference expression
and produces a record of values for each label known to it
following the process in <xref target="parse"/>.</t>
        </li>
        <li>
          <t>The automaton selects the labels that apply to its current usage,
including labels at all levels of generality.
These are passed to the determination process in <xref target="deter"/>
to determine whether the usage is ALLOWED or DENIED.</t>
        </li>
      </ol>
      <section anchor="parse">
        <name>Parsing</name>
        <t>The process of parsing a preference expression
and updating the record of values, is as follows:</t>
        <ol spacing="normal" type="1"><li>
            <t>The automaton initializes a record one variable
for each of the labels that is known to it
with a value of UNKNOWN.
Include labels in this record
that are more general,
even if the specific usage is properly described by that subset
(for example, include "tdm" in addition to "search" for a simple search indexing function).</t>
          </li>
          <li>
            <t>The expression is split into a sequence of preferences
by splitting the string at each COMMA (",", U+2C).</t>
          </li>
          <li>
            <t>Each preference is then processed in turn:  </t>
            <t>
a. The preference is split into a label and a value
   at the first EQUALS ("=", U+3D).
   Preferences that do not contain an EQUALS ("=", U+3D) are skipped
   and processing continues with the next preference.  </t>
            <t>
b. Spaces (U+20) and tabs (U+9) are trimmed from the start and end
   of each label and value.
   (ISSUE: move this up a step for SF compatibility and easier parsing?)  </t>
            <t>
c. If the label is not understood by the automaton
   or the label does not apply to the current usage,
   it is ignored and the processing continues with the next preference.  </t>
            <t>
d. If the value is the string "n" (a single U+6E),
   the record for that the corresponding label is set to NO.  </t>
            <t>
e. If the value is the string "y" (a single U+79),
   and the current record for the corresponding label is not set,
   that record is set to YES.</t>
          </li>
        </ol>
      </section>
      <section anchor="deter">
        <name>Determination</name>
        <t>When values have been recorded
for known labels,
the automaton selects the labels that applies to a specific usage.</t>
        <t>This includes more general labels.
For example, a "genai" application
would include both "ai" and "tdm" labels.</t>
        <t>The following process can be followed to determine
whether that usage is ALLOWED or DENIED
according to a preference expression.</t>
        <ol spacing="normal" type="1"><li>
            <t>Starting with the most general labels,
iterate over the recorded value for each label.  </t>
            <t>
a. For each of the labels
   that are more specific than this label,
   replace any value of UNKNOWN for that more specific label
   with the value from this (more general) label.  </t>
            <t>
b. If all aspect of the usage
   is covered by more specific labels
   discard the more general label from the record.</t>
          </li>
          <li>
            <t>If the value for any of the remaining labels is UNKNOWN,
the automaton substitutes a YES or NO value
based on its configured policy for missing preferences
for the corresponding label.</t>
          </li>
          <li>
            <t>If the value for any of the remaining labels is NO,
resolve that the indicated preference
regarding the usage
is DENIED.</t>
          </li>
          <li>
            <t>Otherwise, resolve that the indicated preference
regarding the usage
is ALLOWED.</t>
          </li>
        </ol>
        <t>In addition to understanding which labels apply to a given usage,
automatons need to have a default policy
for each of those labels.</t>
      </section>
      <section anchor="optimization-and-length-limits">
        <name>Optimization and Length Limits</name>
        <t>The parsing of preference expressions
can be implemented in a streaming fashion,
requiring minimal state beyond that needed to track the value of applicable labels.</t>
        <t>A preference expression of arbitrary length can be processed efficiently.
However, implementations <bcp14>MAY</bcp14> choose to stop processing expressions
at any point once at least 1000 characters have been processed.</t>
      </section>
      <section anchor="multiple">
        <name>Multiple Preference Expressions</name>
        <t>An automaton that is consuming content
might encounter multiple preference expressions
that relate to the same piece of content.
For example, preference expressions might be carried by
both "robots.txt" (<xref target="robots"/>) and content metadata (<xref target="metadata"/>).</t>
        <t>Multiple preference expressions can be combined
by simple concatenation in any order.
A single comma (",") is inserted between each expression.</t>
        <t>For an identical outcome, the parsing process (<xref target="parse"/>)
can be run separately for each expression,
updating the same record of values
rather than starting anew for each.</t>
      </section>
      <section anchor="multi">
        <name>Multiple Usages</name>
        <t>An automaton that might use content for multiple purposes
can parse preference expressions once.</t>
        <t>The parsing process (<xref target="parse"/>) can be run,
recording the value of all labels
that apply to any of the potential usages.</t>
        <t>The state that is produced from parsing
can be retained and applied (<xref target="deter"/>) to each different usage.</t>
      </section>
    </section>
    <section anchor="carriage">
      <name>Carrying Preference Expressions</name>
      <t>A preference expression might be propagated by multiple different mechanisms.
This provides content creators and distributors choice
in how they manage the signaling of their preferences.</t>
      <section anchor="robots">
        <name>The "robots.txt" Format</name>
        <t>Use of "robots.txt" ,
or the Robots Exclusion Protocol <xref target="ROBOTS"/>,
provides automated crawlers with information
about what resources can be gathered.</t>
        <t>This is a file that is served in a well-known location by HTTP servers.</t>
        <t>An extension is defined for this format
to allow for carrying simple usage preference strings.
A rule name of "usage" is added to each group,
appearing between the <tt>startgroupline</tt> and <tt>rule</tt> lines as follows:</t>
        <sourcecode type="abnf"><![CDATA[
group = startgroupline
        *(startgroupline / emptyline)
        *(usage / emptyline)
        *(rule / emptyline)
usage = *WS "usage" *WS ":" usage-pref-exp EOL
usage-pref-exp = *UTF8-char-noctl
]]></sourcecode>
        <t>Notes:</t>
        <ul spacing="normal">
          <li>
            <t>The label "usage" is case insentive,
but the preference expression is case sensitive.</t>
          </li>
          <li>
            <t>Preference expressions will be truncated
at the first "#" character (U+23);
see <xref target="new-chars"/>.
Labels that include this character can be omitted.</t>
          </li>
        </ul>
      </section>
      <section anchor="http">
        <name>HTTP Header Field</name>
        <t>An HTTP Response Header field called Content-Usage is defined.</t>
        <t>This field is defined as a structured field dictionary,
as defined in <xref section="3.2" sectionFormat="of" target="RFC9651"/>.</t>
        <t>Dictionary members <bcp14>MUST</bcp14> all include a single token value
(<xref section="3.3.4" sectionFormat="of" target="RFC9651"/>) that is either "y" or "n".</t>
        <t>The Content-Usage field applies to the content
of a request or response,
not the resource or representation.</t>
        <t>The Content-Usage field can be used in requests
to have the preference apply to the content of the request.
Servers could retain a copy of preferences if the content of a request
is used to answer later requests.
For example,
the content of a PUT request that is used
to answer subsequent GET requests.
Servers <bcp14>SHOULD</bcp14> reject requests that include Content-Usage
unless the same or compatible preferences can be provided
to entities that might obtain the included content.
Obviously, servers that have not been updated
to this specification will not.</t>
        <t>Content-Usage does not have any special effect on caching.</t>
        <t>The value of this field <bcp14>MAY</bcp14> be first parsed
using a structured field parser.
This implies the following restrictions:</t>
        <ul spacing="normal">
          <li>
            <t>Structured field parsers do not permit whitespace
between dictionary key, the "=" separator, and value.
Therefore, this additional space <bcp14>MUST</bcp14> be removed
before creating the field.</t>
          </li>
          <li>
            <t>Dictionary members are tokens,
not Booleans (<xref section="3.3.6" sectionFormat="of" target="RFC9651"/>).
Boolean members <bcp14>MUST</bcp14> be ignored.</t>
          </li>
          <li>
            <t>Dictionary members with parameters <bcp14>MUST</bcp14> be ignored.</t>
          </li>
        </ul>
      </section>
      <section anchor="metadata">
        <name>Content Metadata</name>
        <t>Specific formats can define how preference expressions
are carried in content metadata.</t>
        <t>This document does not define any such format.</t>
        <aside>
          <t>Question:
Should we define how to use HTML meta, or rely on http-equiv?</t>
        </aside>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This document defines a preference mechanism,
not a security feature.</t>
      <t>The primary consideration for security
is the correct and efficient implementation of parsing.
Errors in parsers have been known to be exploited by actors
that produce malicious input
to effect one of two common types of problem:</t>
      <ul spacing="normal">
        <li>
          <t>buffer overruns,
where malicious input is formed to enable remote code execution</t>
        </li>
        <li>
          <t>denial of service,
where malicious input is constructed to be difficult to process
in order to exhaust resources</t>
        </li>
      </ul>
      <t>The algorithms in <xref target="algorithm"/> are not immune to these issues
if incautiously implemented by an automaton.
They are exemplary only
and are biased toward being comprehensible
rather than being secure.</t>
      <t>Preference strings could include characters
that can create confusing or misleading renderings.
For instance, invisible characters or U+8 (backspace) could be used
to create a misleading representation.
These characters can be avoided when authoring preference expressions
and replaced when displaying them (using U+FFFD for example).</t>
    </section>
    <section anchor="iana">
      <name>IANA Considerations</name>
      <t>This document defines a new registry for labels (<xref target="iana-labels"/>) and
an HTTP header field (<xref target="iana-http"/>).</t>
      <section anchor="iana-labels">
        <name>Preference Label Registry</name>
        <t>This document establishes a registry
that lists Labels for Preference Expressions
for Automated Use of Content
with IANA.
The policy for new registrations
is Specification Required <xref target="RFC8126"/>.</t>
        <t>Each entry has the following fields:</t>
        <dl newline="true" spacing="compact">
          <dt>Label:</dt>
          <dd>
            <t>a Unicode string (see <xref target="new"/> for advice on selecting values)</t>
          </dd>
          <dt>Definition:</dt>
          <dd>
            <t>a short description of the automated usage
that the label applies to</t>
          </dd>
          <dt>Narrows:</dt>
          <dd>
            <t>a list of other labels
that this label is more specific than</t>
          </dd>
          <dt>Specification:</dt>
          <dd>
            <t>a link to a publicly accessible specification
that contains a more complete definition</t>
          </dd>
          <dt>Status:</dt>
          <dd>
            <t>either is "provisional" or "permanent" (see below)</t>
          </dd>
          <dt>Date:</dt>
          <dd>
            <t>the date of the last update to the registration</t>
          </dd>
          <dt>Change Controller:</dt>
          <dd>
            <t>the entity responsible for the specification</t>
          </dd>
          <dt>Contact:</dt>
          <dd>
            <t>contact details for the registrant</t>
          </dd>
        </dl>
        <section anchor="registration-guidance">
          <name>Registration Guidance</name>
          <t>An ideal label for a new registration is
short, descriptive, and memorable.
Lowercase characters (U+61 through U+7A) are most compatible;
see <xref target="new-chars"/>.</t>
          <t>Provisional registrations can be used
by entities other than a change controller
to register labels in order to avoid registration collisions.
Provisional registrations can omit fields.
However, provisional labels can be removed
if details are not provided within 12 months.
Removals are subject to approval by the IESG.</t>
          <t>Designated experts are advised to discourage new permanent registrations
in favor of provisional registrations.
Once utility and -- critically -- understanding
of labels has been demonstrated,
provisional registrations can be upgraded to permanent status.</t>
          <t>Designated experts are expected to help ensure that registrations
correctly identify which labels are more general.
This could include updates to existing labels,
to reference a new registration as being more general.</t>
          <t>Designated experts are expected to deny registration requests for
large numbers of labels,
labels that are unclear in purpose,
labels that are too similar to existing labels,
labels that are long, and
labels that promote proprietary products or unproven concepts.</t>
          <t>Expert decisions can be appealed to the IESG.</t>
        </section>
        <section anchor="initial-registry-contents">
          <name>Initial Registry Contents</name>
          <t><xref target="_table-iana-labels"/> tabulates the other fields
for registrations of labels from <xref target="labels"/>.</t>
          <table anchor="_table-iana-labels">
            <name>Initial Label Registrations</name>
            <thead>
              <tr>
                <th align="left">Label</th>
                <th align="left">Definition</th>
                <th align="left">Narrows</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">tdm</td>
                <td align="left">Any automated process that extracts information from content</td>
                <td align="left"> </td>
              </tr>
              <tr>
                <td align="left">ai</td>
                <td align="left">Training or use of any machine learning system (or AI)</td>
                <td align="left">tdm</td>
              </tr>
              <tr>
                <td align="left">genai</td>
                <td align="left">Training or use of machine learning (or AI) that can generate content</td>
                <td align="left">ai</td>
              </tr>
              <tr>
                <td align="left">search</td>
                <td align="left">Generation of search index or use for search applications</td>
                <td align="left">tdm</td>
              </tr>
            </tbody>
          </table>
          <t>Initial registrations in this registry also include the following values:</t>
          <dl spacing="compact">
            <dt>Specification:</dt>
            <dd>
              <t>this document</t>
            </dd>
            <dt>Status:</dt>
            <dd>
              <t>permanent</t>
            </dd>
            <dt>Date:</dt>
            <dd>
              <t>the date of publication of this document</t>
            </dd>
            <dt>Change Controller:</dt>
            <dd>
              <t>IETF</t>
            </dd>
            <dt>Contact:</dt>
            <dd>
              <t>IETF AI-PREF WG (ai-control@ietf.org)</t>
            </dd>
          </dl>
        </section>
      </section>
      <section anchor="iana-http">
        <name>HTTP Content-Usage Field Registration</name>
        <t>An HTTP field named Content-Usage is registered
in the Hypertext Transfer Protocol (HTTP) Field Name Registry,
following the procedures in <xref section="18.4" sectionFormat="of" target="HTTP"/>.
The following values are registered:</t>
        <dl spacing="compact">
          <dt>Field Name:</dt>
          <dd>
            <t>Content-Usage</t>
          </dd>
          <dt>Status:</dt>
          <dd>
            <t>permanent</t>
          </dd>
          <dt>Reference:</dt>
          <dd>
            <t>this document</t>
          </dd>
          <dt>Comments:</dt>
          <dd>
            <t>(none)</t>
          </dd>
        </dl>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="ROBOTS">
          <front>
            <title>Robots Exclusion Protocol</title>
            <author fullname="M. Koster" initials="M." surname="Koster"/>
            <author fullname="G. Illyes" initials="G." surname="Illyes"/>
            <author fullname="H. Zeller" initials="H." surname="Zeller"/>
            <author fullname="L. Sassman" initials="L." surname="Sassman"/>
            <date month="September" year="2022"/>
            <abstract>
              <t>This document specifies and extends the "Robots Exclusion Protocol" method originally defined by Martijn Koster in 1994 for service owners to control how content served by their services may be accessed, if at all, by automatic clients known as crawlers. Specifically, it adds definition language for the protocol, instructions for handling errors, and instructions for caching.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9309"/>
          <seriesInfo name="DOI" value="10.17487/RFC9309"/>
        </reference>
        <reference anchor="HTTP">
          <front>
            <title>HTTP Semantics</title>
            <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding"/>
            <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham"/>
            <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke"/>
            <date month="June" year="2022"/>
            <abstract>
              <t>The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. This document describes the overall architecture of HTTP, establishes common terminology, and defines aspects of the protocol that are shared by all versions. In this definition are core protocol elements, extensibility mechanisms, and the "http" and "https" Uniform Resource Identifier (URI) schemes.</t>
              <t>This document updates RFC 3864 and obsoletes RFCs 2818, 7231, 7232, 7233, 7235, 7538, 7615, 7694, and portions of 7230.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="97"/>
          <seriesInfo name="RFC" value="9110"/>
          <seriesInfo name="DOI" value="10.17487/RFC9110"/>
        </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>
        <reference anchor="RFC9651">
          <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="RFC8126">
          <front>
            <title>Guidelines for Writing an IANA Considerations Section in RFCs</title>
            <author fullname="M. Cotton" initials="M." surname="Cotton"/>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <author fullname="T. Narten" initials="T." surname="Narten"/>
            <date month="June" year="2017"/>
            <abstract>
              <t>Many protocols make use of points of extensibility that use constants to identify various protocol parameters. To ensure that the values in these fields do not have conflicting uses and to promote interoperability, their allocations are often coordinated by a central record keeper. For IETF protocols, that role is filled by the Internet Assigned Numbers Authority (IANA).</t>
              <t>To make assignments in a given registry prudently, guidance describing the conditions under which new values should be assigned, as well as when and how modifications to existing values can be made, is needed. This document defines a framework for the documentation of these guidelines by specification authors, in order to assure that the provided guidance for the IANA Considerations is clear and addresses the various issues that are likely in the operation of a registry.</t>
              <t>This is the third edition of this document; it obsoletes RFC 5226.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="26"/>
          <seriesInfo name="RFC" value="8126"/>
          <seriesInfo name="DOI" value="10.17487/RFC8126"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="REP-PURPOSE">
          <front>
            <title>Robots Exclusion Protocol User Agent Purpose Extension</title>
            <author fullname="Gary Illyes" initials="G." surname="Illyes">
              <organization>Google LLC.</organization>
            </author>
            <date day="18" month="October" year="2024"/>
            <abstract>
              <t>   The Robots Exclusion Protocol defined in [RFC9309] specifies the
   user-agent rule for targeting automatic clients either by prefix
   matching their self-defined product token or by a global rule * that
   matches all clients.

   This document extends [RFC9309] by defining a new rule for targeting
   automatic clients based on the clients' purpose for accessing the
   service.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-illyes-rep-purpose-00"/>
        </reference>
        <reference anchor="VOCAB">
          <front>
            <title>Vocabulary for Expressing Content Preferences for AI Training</title>
            <author fullname="Thom Vaughan" initials="T." surname="Vaughan">
              <organization>Common Crawl Foundation</organization>
            </author>
            <date day="20" month="January" year="2025"/>
            <abstract>
              <t>   This document proposes a vocabulary for expressing content
   preferences for rightsholders who wish to manage the use of their
   content in AI training.  This vocabulary allows publishers to express
   preferences through metadata or content-delivery protocols.  The
   vocabulary can be applied at different levels of granularity and
   incorporates preferences for permissions, usage scope, and data
   retention, providing a foundation for interoperability across various
   Internet protocols.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-vaughan-aipref-vocab-00"/>
        </reference>
      </references>
    </references>
    <?line 810?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>This document is informed by discussions at the AI-CONTROL workshop.</t>
      <t>Drafts from Gary Ilyes (<xref target="REP-PURPOSE"/>
and Thom Vaughan <xref target="VOCAB"/>
helped inform some of the choices.
This document aims to be more complete than the former
and simpler than the latter.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
G0eNPzaqWwAA

-->

</rfc>
