<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.39 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-besleaga-sustainability-wellknown-07" category="info" submissionType="independent" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.0 -->
  <front>
    <title abbrev="Sustainability-Data Well-Known URI">The 'sustainability-data' Well-Known URI</title>
    <seriesInfo name="Internet-Draft" value="draft-besleaga-sustainability-wellknown-07"/>
    <author initials="A. N." surname="Besleaga" fullname="Andrei Nicolae Besleaga">
      <organization>Independent</organization>
      <address>
        <email>andrei.besleaga@ieee.org</email>
      </address>
    </author>
    <date year="2026" month="September" day="17"/>
    <workgroup>Independent Submission</workgroup>
    <keyword>Internet-Draft</keyword>
    <keyword>Sustainability</keyword>
    <keyword>Carbon Accounting</keyword>
    <keyword>Well-Known URI</keyword>
    <keyword>Energy Efficiency</keyword>
    <abstract>

<t>This document defines the "sustainability-data" well-known URI, at which a web origin publishes a single JSON document declaring the energy consumption, carbon footprint, and related environmental metrics of a reporting subject, typically the origin itself. The declaration is described by formal schemas and located at a fixed path, so that it can be retrieved, validated, and ingested automatically. It carries an optional embedded signature, may reference the declarations of upstream providers from which its figures derive, links to a methodology, and may link to third-party attestations. The metrics are self-asserted claims of the publisher. This document registers the well-known URI and the media type <tt>application/sustainability-data+json</tt>.</t>
    </abstract>
  </front>
  <middle>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The environmental impact of Internet systems is increasingly measured and disclosed, and the report of the IAB Workshop on Environmental Impact of Internet Applications and Systems <xref target="RFC9547"/> documents both the need for such data and the gaps in it. The quantities involved are already defined by corporate greenhouse-gas accounting <xref target="GHG-PROTOCOL"/> and by the disclosure regimes that build on it. What has been missing is a uniform place and form in which a web origin can publish those quantities so that a client can find and read them without prior arrangement.</t>
      <t>This document defines that place and form. A well-known URI <xref target="RFC8615"/> is used because the data is site-wide metadata about an origin, published by the origin, that a client must be able to locate knowing nothing but the origin, as security.txt (<xref target="RFC9116"/>) does for security contact information. The origin publishes one JSON document, the <em>declaration</em>, whose mandatory <tt>target</tt> member names the reporting subject: most commonly the origin itself, but equally a part of it (a subdomain, a service, or a resource path prefix), a device, a cloud tenant, a software product, a data source, or the publishing organization as a whole. The origin is where the declaration is published; the subject is what it is about.</t>
      <t>The smallest conformant declaration carries the seven mandatory members and at least one metric or evidence link (see <xref target="value-constraints-and-omitted-metrics"/>):</t>
      <sourcecode type="json"><![CDATA[
{
  "updated": "2026-03-01T12:00:00Z",
  "capabilities": "basic",
  "provider": "Example Corp (sustain@example.org)",
  "measurement-method": "cloud-billing",
  "methodology-uri": "https://example.com/methodology",
  "reporting-period": "2025",
  "target": "example.com",
  "carbon-footprint": 4140,
  "carbon-unit": "kgCO2e"
}
]]></sourcecode>
      <section anchor="requirements-language">
        <name>Requirements Language</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>

</section>
      <section anchor="goals-and-non-goals">
        <name>Goals and Non-Goals</name>
        <ul spacing="normal">
          <li>
            <t>Provide one fixed, cacheable location per origin at which a declaration can be found, and a formal schema against which it can be validated.</t>
          </li>
          <li>
            <t>Use member semantics that map onto quantities already defined by the GHG Protocol <xref target="GHG-PROTOCOL"/>, the EU Corporate Sustainability Reporting Directive <xref target="EU-CSRD"/> and its ESRS E1 climate standard <xref target="ESRS-E1"/>, and product-level regimes such as the Digital Product Passport of <xref target="EU-ESPR"/>, so that a publisher republishes figures it already produces.</t>
          </li>
          <li>
            <t>Let a declaration be signed, attested by a third party, and linked to the declarations of the providers it depends on, without changing how an unsigned, unattested declaration is published or read.</t>
          </li>
          <li>
            <t>This document does not define how energy or emissions are measured, does not verify any figure, and does not define network-equipment energy management, which is the subject of <xref target="RFC7326"/> and its successors.</t>
          </li>
        </ul>
      </section>
      <section anchor="roles-and-processing-model">
        <name>Roles and Processing Model</name>
        <t>The <em>publisher</em> operates an origin and publishes one declaration at the well-known URI. A <em>consumer</em> is anything that retrieves it: an aggregator, a procurement or reporting pipeline, a crawler, a browser extension, or a person with a command line. A consumer proceeds as follows:</t>
        <ol spacing="normal" type="1"><li>
            <t>Retrieve the declaration over HTTPS from the well-known URI (<xref target="mandatory-minimum-supported-service"/>).</t>
          </li>
          <li>
            <t>Check the media type and parse the body as JSON; validate it against the formal schemas and the prose rules of <xref target="payload-format-json-data-model"/>, applying the tolerance rules of <xref target="value-constraints-and-omitted-metrics"/>.</t>
          </li>
          <li>
            <t>Ignore any top-level member it does not recognize, and any <tt>extensions</tt> entry it does not implement.</t>
          </li>
          <li>
            <t>If the object carries a <tt>signed</tt> member, verify it as <xref target="signing"/> specifies; otherwise treat the object as unsigned.</t>
          </li>
          <li>
            <t>Attribute every value to the origin that served it, as a self-asserted claim of the publisher; judge freshness from <tt>updated</tt>, <tt>reporting-period</tt>, and the HTTP caching metadata.</t>
          </li>
          <li>
            <t>When it needs evidence, follow <tt>methodology-uri</tt>, <tt>disclosure-uri</tt>, <tt>verifiable-attestation-uri</tt>, and the <tt>upstream</tt> declarations, under the fetch limits of <xref target="consumer-considerations"/>. None of them turns a claim into a verified fact.</t>
          </li>
        </ol>
      </section>
      <section anchor="relationship-to-other-work">
        <name>Relationship to Other Work</name>
        <t>This document operates at the reporting layer of an HTTP origin. It does not overlap with network-equipment energy monitoring or management <xref target="RFC7326"/>. The carbon.txt convention <xref target="CARBON-TXT"/> is a TOML index of where an origin's disclosures live and carries no quantitative metrics; a declaration can link to such an index through <tt>disclosure-uri</tt>, and a carbon.txt file can list the well-known URI defined here among an origin's disclosures.</t>
      </section>
    </section>
    <section anchor="the-sustainability-data-well-known-uri">
      <name>The "sustainability-data" Well-Known URI</name>
      <section anchor="uri-definition">
        <name>URI Definition</name>
        <t>This document defines the "sustainability-data" well-known URI and requests its registration in the "Well-Known URIs" registry (<xref target="iana-considerations"/>). The declaration is published at the path <tt>/.well-known/sustainability-data</tt> on the origin, over HTTPS, with the media type <tt>application/sustainability-data+json</tt> registered by this document. It is the only resource this document defines.</t>
        <ul spacing="normal">
          <li>
            <t><strong>Origin</strong>: scheme, host, and optional port, as <xref target="RFC9110"/>, Section 4.3.1, defines it.</t>
          </li>
          <li>
            <t><strong>Declaration</strong> (in full, <em>Sustainability Declaration</em>): the JSON document returned from the well-known URI. Its body is one declaration object or an array of them (<xref target="payload-format-json-data-model"/>). The <em>Basic response</em> is the declaration returned for a request without query parameters.</t>
          </li>
          <li>
            <t><strong>Publisher</strong>: the entity operating the origin and publishing the declaration.</t>
          </li>
          <li>
            <t><strong>Reporting subject</strong>: the entity or scope the metrics describe, named by the mandatory <tt>target</tt> member.</t>
          </li>
          <li>
            <t><strong>Consumer</strong>: any client that retrieves the declaration.</t>
          </li>
        </ul>
      </section>
      <section anchor="mandatory-minimum-supported-service">
        <name>Mandatory Minimum Supported Service</name>
        <t>The declaration <bcp14>MUST</bcp14> be published and retrieved over HTTPS, and a consumer <bcp14>MUST NOT</bcp14> accept a declaration retrieved over unauthenticated HTTP. The HTTP methods, status codes, and header fields used here are defined in <xref target="RFC9110"/>.</t>
        <ul spacing="normal">
          <li>
            <t>A <tt>GET</tt> request without query parameters <bcp14>MUST</bcp14> be answered with <tt>200 OK</tt> and the declaration as the body, absent redirection or cache revalidation; responses to requests carrying query parameters are as <xref target="extended-query-parameters"/> specifies. A <tt>HEAD</tt> request <bcp14>MUST</bcp14> receive the same status and header fields with no body. When nothing is published, the server <bcp14>SHOULD</bcp14> respond <tt>404 Not Found</tt>. Access control is outside the scope of this document; a server <bcp14>MAY</bcp14> restrict access to the declaration, and a server that restricts or rate-limits a request responds as <xref target="RFC9110"/> defines (for example <tt>401</tt>, <tt>403</tt>, or <tt>429</tt>). Any other method <bcp14>SHOULD</bcp14> receive <tt>405 Method Not Allowed</tt> with <tt>Allow: GET, HEAD</tt>.</t>
          </li>
          <li>
            <t>A <tt>200 OK</tt> response <bcp14>MUST</bcp14> carry the <tt>Content-Type</tt> <tt>application/sustainability-data+json</tt> and <bcp14>MUST NOT</bcp14> carry any other media type; the body <bcp14>SHOULD</bcp14> follow I-JSON <xref target="RFC7493"/>. Caching directives are addressed in <xref target="operational-considerations"/>.</t>
          </li>
          <li>
            <t>A consumer <bcp14>SHOULD</bcp14> send an <tt>Accept</tt> header field whose value is <tt>application/sustainability-data+json, application/json;q=0.9</tt>. A consumer <bcp14>MUST</bcp14> process a <tt>200 OK</tt> response whose <tt>Content-Type</tt> is <tt>application/sustainability-data+json</tt> as a declaration, and <bcp14>MAY</bcp14> so process one whose <tt>Content-Type</tt> is <tt>application/json</tt>, under which declarations published before the registration of the dedicated type exist. A response carrying a media type other than those two is not a declaration. A consumer compares the media type ignoring any parameters: this document defines none, and a consumer ignores any it receives.</t>
          </li>
          <li>
            <t>Because the declaration is public and intended for browser-based consumers as well, a <tt>200 OK</tt> response <bcp14>SHOULD</bcp14> include <tt>Access-Control-Allow-Origin: *</tt>, following WebFinger (<xref target="RFC7033"/>).</t>
          </li>
          <li>
            <t>A server <bcp14>MAY</bcp14> redirect the well-known URI. A consumer that follows a redirect <bcp14>MUST</bcp14> require HTTPS on every hop and attributes the declaration to the origin of the final response; where that origin differs from the one it queried, the declaration is a claim by that other origin, and the consumer <bcp14>MUST NOT</bcp14> record it as a declaration of the origin it queried unless the object's <tt>target</tt> names the origin it queried. A publisher <bcp14>SHOULD NOT</bcp14> redirect to a different origin.</t>
          </li>
        </ul>
      </section>
      <section anchor="partial-knowledge-and-incremental-adoption">
        <name>Partial Knowledge and Incremental Adoption</name>
        <t>A publisher declares the subject it can stand behind. The <tt>target</tt> member names it (a single service, path prefix, product, device, tenant, or data source, classified by <tt>target-type</tt>), and the declaration then covers that subject in full; a publisher widens the subject as measurement coverage grows. Every metric member is optional, so a declaration carrying one measured quantity conforms. A figure for the whole subject may rest on estimation for the parts not directly measured, provided the methodology document says what is measured and what is estimated. A publisher <bcp14>MUST NOT</bcp14> present figures covering part of the declared subject as though they covered the whole of it.</t>
      </section>
      <section anchor="extended-query-parameters">
        <name>Extended Query Parameters</name>
        <t>A server <bcp14>MAY</bcp14> support the query parameters <tt>target</tt>, <tt>period</tt>, and <tt>granularity</tt> on the well-known URI. A server ignores a parameter it does not support and answers the rest of the request; a server that supports none of them ignores all three and returns the Basic response. The syntax is the following ABNF <xref target="RFC5234"/>, using the case-sensitive string notation of <xref target="RFC7405"/>, with <tt>date-fullyear</tt>, <tt>date-month</tt>, and <tt>date-mday</tt> from <xref target="RFC3339"/>, Appendix A, and <tt>unreserved</tt> and <tt>pct-encoded</tt> from <xref target="RFC3986"/>, Section 2. It matches the query as received, before percent-decoding. A <tt>target</tt> value therefore carries any "&amp;" or "=" of its own percent-encoded, as a query component requires:</t>
        <sourcecode type="abnf"><![CDATA[
sd-query     = param *( "&" param )
param        = target / period / granularity / other
target       = %s"target=" target-value
target-value = 1*( "/" *pchar-nd )
period       = %s"period=" period-value
period-value = date-fullyear
               [ "-" date-month [ "-" date-mday ] ]
granularity  = %s"granularity=" granularity-value
granularity-value = %s"monthly" / %s"daily"
other        = 1*qchar-nd [ "=" *qchar-nd ]
qchar-nd     = pchar-nd / "/" / "?"
pchar-nd     = unreserved / pct-encoded / "!" / "$" / "'" / "("
             / ")" / "*" / "+" / "," / ";" / ":" / "@"
]]></sourcecode>
        <t>A <tt>period-value</tt> names a whole calendar year, month, or day in UTC unless the methodology document states otherwise. A period has year, month, or day <em>precision</em> accordingly, year being the coarsest; the granularity <tt>monthly</tt> denotes month precision and <tt>daily</tt> denotes day precision. A publisher whose reporting year is not the calendar year publishes its constituent months or the enclosing calendar years and describes the alignment in the methodology document. One period is <em>within</em> another when every instant of the first is an instant of the second.</t>
        <t>A server supporting any of the parameters processes a request carrying one or more of them as follows; the responses the procedure names are requirements on a server that supports the parameter concerned:</t>
        <ol spacing="normal" type="1"><li>
            <t>Split the query at "&amp;" and each part at its first "=", then percent-decode names and values. Parameters are recognized by name: ignore any name other than the three defined here, whose values the steps below check. If one of the three appears more than once, respond <tt>400 Bad Request</tt>; a server that has entered this procedure does so whether or not it supports the repeated parameter.</t>
          </li>
          <li>
            <t>If <tt>period</tt> is present and its value does not match the <tt>period-value</tt> rule above or does not name a real calendar date, respond <tt>400 Bad Request</tt>. Let P be the named period, or, when <tt>period</tt> is absent, the <tt>reporting-period</tt> of the Basic response, and, where the Basic response is an array, the <tt>reporting-period</tt> of its last object.</t>
          </li>
          <li>
            <t>If <tt>granularity</tt> is present, let G be the precision its value denotes; ignore the parameter when the value is neither <tt>monthly</tt> nor <tt>daily</tt>, or when the precision it denotes is not finer than the precision of P. An unusable <tt>granularity</tt> only narrows a response that is otherwise well defined, so it is ignored rather than rejected.</t>
          </li>
          <li>
            <t>If <tt>target</tt> is present, compare its value, percent-decoded, with the publisher's published set of path prefixes, byte-wise, case-sensitively, and on complete segments. A value that does not match the <tt>target-value</tt> rule matches no prefix. If it matches none, respond <tt>404 Not Found</tt>. A server that honors the <tt>target</tt> parameter <bcp14>MUST</bcp14> publish the set of prefixes it honors in the document identified by <tt>methodology-uri</tt>; this document defines no in-band list, since one would disclose the path information that <xref target="privacy-considerations"/> protects. Every returned object then carries the matched prefix in its <tt>target</tt> member. A server that sees only percent-decoded parameter values applies the <tt>target-value</tt> rule to the decoded value; the two readings differ only for a value whose segment-initial "/" was itself percent-encoded, which no published prefix can require.</t>
          </li>
          <li>
            <t>Select from the entries the server holds for the subject, an entry being one declaration object for one period at one precision. When G is in effect, the response is the array of all held entries whose precision is G and whose period is within P, in ascending order; a server that holds no entries at that precision has no data for the request and responds <tt>404 Not Found</tt> rather than substituting a coarser figure. Otherwise the response is the single held entry whose period equals P; if there is none but held entries of finer precision lie within P, the response is their aggregate. The contributing entries are the held entries of one precision that lie within P: where the server holds more than one precision inside P, it takes the coarsest, so that two servers holding the same data return the same figures. They <bcp14>MUST NOT</bcp14> overlap, since a server that summed a month and a day inside it would count that day twice, and they <bcp14>MUST</bcp14> cover P, or, where P has not yet completed, the completed portion of it that step 6 provides for: a server holding figures for only part of a finished period cannot present their sum as a figure for the whole of it. A server whose held data cannot meet these conditions has no aggregate it can honestly serve and responds as it does when it has no data. The aggregate is formed as follows:  </t>
            <ul spacing="normal">
              <li>
                <t><tt>reporting-period</tt> is P, and <tt>capabilities</tt> is <tt>extended</tt>.</t>
              </li>
              <li>
                <t><tt>energy-consumption</tt>, <tt>carbon-footprint</tt> and the scope members are sums taken after converting the contributing entries to the unit the aggregate declares in <tt>energy-unit</tt> and <tt>carbon-unit</tt>, which is the unit declared by the last contributing entry in ascending order of <tt>reporting-period</tt>. Each of these members is carried only where every contributing entry reports it, and omitted otherwise, since summing where some entries are silent would understate the period.</t>
              </li>
              <li>
                <t><tt>updated</tt> is the latest <tt>updated</tt> of the contributing entries.</t>
              </li>
              <li>
                <t><tt>provider</tt>, <tt>measurement-method</tt>, <tt>methodology-uri</tt>, <tt>target</tt> and <tt>target-type</tt> are those of the contributing entries, which <bcp14>MUST</bcp14> agree; where they do not, the server <bcp14>MUST NOT</bcp14> serve an aggregate, since it could only misdescribe what the figures are about, and responds as it does when it has no data.</t>
              </li>
              <li>
                <t>Every other metric member is omitted unless the publisher recomputes it for the aggregated period and says so in the methodology document. Any other optional member that is not a metric, other than <tt>energy-unit</tt> and <tt>carbon-unit</tt>, whose values the rule on sums above fixes, is carried only where every contributing entry carries it with the same value, and omitted otherwise; <tt>signed</tt> is omitted unless the server signs the aggregate itself.</t>
              </li>
            </ul>
            <t>
A server that cannot form an aggregate carrying at least one metric member responds <tt>404 Not Found</tt>: an aggregate carrying no figure reports nothing about the requested period, whatever else it carries. If nothing lies within P, respond <tt>404 Not Found</tt>. A server <bcp14>MUST NOT</bcp14> return an array unless G is in effect.</t>
          </li>
          <li>
            <t>For a period that has not yet completed, report the completed portion to date. A publisher whose figures for a part of that portion have not yet reached it holds nothing it can aggregate for the period, and answers as it does when it has no data until they arrive, rather than presenting the part it has as the whole.</t>
          </li>
          <li>
            <t>Respond with the same status, media type and header fields as for the Basic response. An origin server computes the cache key of its own response cache from the parameters it honors, in a canonical order, rather than from the query string as received, so that requests differing only in parameters it ignores share one entry there (<xref target="operational-considerations"/>; <xref target="denial-of-service"/>).</t>
          </li>
        </ol>
        <t>The <tt>target</tt> parameter requests path-prefix scoping; the <tt>target</tt> member names the subject of whatever is returned. They are distinct. Because a server ignores a parameter it does not support, a consumer <bcp14>MUST</bcp14> compare the <tt>reporting-period</tt> and <tt>target</tt> of every object it receives against what it requested, and <bcp14>MUST NOT</bcp14> record a response as covering a period or a subject it does not name.</t>
      </section>
      <section anchor="payload-format-json-data-model">
        <name>Payload Format (JSON Data Model)</name>
        <t>The body is one declaration object <xref target="RFC8259"/> or an array of them. An array conveys a trend: its objects <bcp14>MUST</bcp14> be in ascending order of <tt>reporting-period</tt>, <bcp14>MUST NOT</bcp14> overlap, and <bcp14>MUST</bcp14> share the same period precision and the same <tt>target</tt>; <tt>target-type</tt> <bcp14>MUST</bcp14> be present in every object with the same value or absent from all; units <bcp14>SHOULD</bcp14> be the same across objects. A single object is equivalent to a one-object array, and a consumer <bcp14>MUST</bcp14> accept both forms, determined by the JSON top-level type; a body whose top-level value is neither an object nor an array is not a declaration. An array <bcp14>MUST</bcp14> contain at least one object; a consumer receiving an empty array <bcp14>SHOULD</bcp14> treat it as conveying no report.</t>
        <t>A declaration object contains the seven mandatory members, any of the optional members, and nothing else: a publisher <bcp14>MUST NOT</bcp14> add other top-level members (<xref target="extensions"/> defines where other data goes). A consumer <bcp14>MUST</bcp14> ignore a top-level member it does not recognize, since a revision of this document may define one. This document defines no version member: the media type identifies the format, and a format not compatible with this one would be given a different media type.</t>
        <section anchor="mandatory-members">
          <name>Mandatory Members</name>
          <ul spacing="normal">
            <li>
              <t><strong>updated</strong> (string): The <xref target="RFC3339"/> <tt>date-time</tt> at which the declaration was last updated.</t>
            </li>
            <li>
              <t><strong>capabilities</strong> (string): <tt>"basic"</tt> when the publisher offers only the Mandatory Minimum Supported Service, <tt>"extended"</tt> when it supports at least one Extended Query Parameter. The member describes query support only, never which members the object carries. It is a hint: a consumer determines actual support from the server's behavior.</t>
            </li>
            <li>
              <t><strong>provider</strong> (string): Human-readable identification of the publisher, such as a name and a role contact address.</t>
            </li>
            <li>
              <t><strong>measurement-method</strong> (string): The method behind the figures. The tokens <tt>hardware-metered</tt>, <tt>hardware-estimated</tt>, <tt>cloud-billing</tt>, and <tt>third-party-modeled</tt> are <bcp14>RECOMMENDED</bcp14> and are compared as protocol elements (<xref target="internationalization-considerations"/>); any other value is a brief human-readable description.</t>
            </li>
            <li>
              <t><strong>methodology-uri</strong> (string): An absolute "https" URI of a document describing the measurement or estimation method in enough detail to interpret the figures. It is the designated place for what other provisions of this document direct there: the honored path-prefix set, any non-UTC interpretation of periods, the meaning of <tt>functional-unit</tt>, the extrapolation behind <tt>estimated-annual-emissions-kgCO2e</tt>, the basis of any negative scope value, and any noise applied (<xref target="privacy-considerations"/>).</t>
            </li>
            <li>
              <t><strong>reporting-period</strong> (string): The period the object covers, in the <tt>period</tt> form of <xref target="extended-query-parameters"/> (<tt>YYYY</tt>, <tt>YYYY-MM</tt>, or <tt>YYYY-MM-DD</tt>).</t>
            </li>
            <li>
              <t><strong>target</strong> (string): The reporting subject. It is an opaque protocol element that <bcp14>MUST NOT</bcp14> be translated or transliterated, compared octet-for-octet except where <tt>target-type</tt> is <tt>origin</tt> or the value is otherwise a host name, in which case the host-name comparison rules of <xref target="internationalization-considerations"/> apply. For an origin-wide report the origin's host (for example <tt>"example.com"</tt>) is <bcp14>RECOMMENDED</bcp14>; other subjects are a path prefix (<tt>"/api/v1"</tt>), an organization, a tenant, a product or data source, or a device, as <tt>target-type</tt> can classify. A subject other than the origin is a claim made by the origin's publisher about that subject, and nothing more (<xref target="trust-and-spoofing"/>).</t>
            </li>
          </ul>
        </section>
        <section anchor="optional-members">
          <name>Optional Members</name>
          <t>Numeric members align with the GHG Protocol <xref target="GHG-PROTOCOL"/> and ESRS E1 <xref target="ESRS-E1"/>. Unless stated otherwise, a numeric member <bcp14>MUST NOT</bcp14> be negative.</t>
          <ul spacing="normal">
            <li>
              <t><strong>energy-consumption</strong> (number): Energy consumed by the subject during the period, in the unit of <tt>energy-unit</tt>.</t>
            </li>
            <li>
              <t><strong>energy-unit</strong> (string): One of <tt>Wh</tt>, <tt>kWh</tt>, <tt>MWh</tt>, <tt>GWh</tt>; when absent, <tt>kWh</tt> applies. Without an <tt>energy-consumption</tt> member it has no effect and <bcp14>SHOULD</bcp14> be omitted.</t>
            </li>
            <li>
              <t><strong>carbon-footprint</strong> (number): Gross emissions attributable to the subject during the period, in the unit of <tt>carbon-unit</tt>.</t>
            </li>
            <li>
              <t><strong>carbon-unit</strong> (string): One of <tt>gCO2e</tt>, <tt>kgCO2e</tt>, <tt>mtCO2e</tt>; when absent, <tt>gCO2e</tt> applies to <tt>carbon-footprint</tt> and to the scope members.</t>
            </li>
            <li>
              <t><strong>carbon-accounting</strong> (string): <tt>location-based</tt> or <tt>market-based</tt> <xref target="GHG-PROTOCOL"/>.</t>
            </li>
            <li>
              <t><strong>scope-1</strong>, <strong>scope-2</strong>, <strong>scope-3</strong> (number): Direct, purchased-energy, and value-chain emissions in the unit of <tt>carbon-unit</tt>. Where an object carries <tt>carbon-footprint</tt> and one or more scope members for the same period, the scope members <bcp14>SHOULD</bcp14> account for the figure in <tt>carbon-footprint</tt>, and a publisher whose scopes cover only part of that figure says so in the methodology document. These <bcp14>MAY</bcp14> be negative where the declared accounting method conveys removals or net figures; a publisher reporting a negative value <bcp14>SHOULD</bcp14> explain the basis in the methodology document.</t>
            </li>
            <li>
              <t><strong>sci-score</strong> (number): Software Carbon Intensity <xref target="GSF-SCI"/>, in grams of CO2e per <tt>functional-unit</tt>, which <bcp14>MUST</bcp14> then be present, regardless of <tt>carbon-unit</tt>.</t>
            </li>
            <li>
              <t><strong>functional-unit</strong> (string): The unit to which <tt>sci-score</tt> is expressed (for example <tt>per-request</tt>); its meaning is defined in the methodology document.</t>
            </li>
            <li>
              <t><strong>carbon-intensity-gCO2e-per-kWh</strong> (number): Weighted carbon intensity of the energy consumed.</t>
            </li>
            <li>
              <t><strong>estimated-annual-emissions-kgCO2e</strong> (number): Annualized gross emissions in kilograms of CO2e regardless of <tt>carbon-unit</tt>; when the period is shorter than a year it is an extrapolation described in the methodology document.</t>
            </li>
            <li>
              <t><strong>renewable-energy</strong> (number): Percentage of energy from renewable sources, between 0 and 100 inclusive.</t>
            </li>
            <li>
              <t><strong>verifiable-attestation-uri</strong> (string): An absolute "https" URI of a statement about the published metrics made and cryptographically signed by a party other than the publisher; a verifiable credential <xref target="VC-DATA-MODEL-2"/> is one such form, and the format is not constrained. It is the only mechanism here that can speak to the authenticity of the figures, and it does so only once the consumer has retrieved the statement and validated it against an issuer it trusts; the member's presence alone is evidence of nothing. A declaration carries at most one such URI; a subject with more than one attestation links an index of them, or the remaining ones, from <tt>disclosure-uri</tt>.</t>
            </li>
            <li>
              <t><strong>disclosure-uri</strong> (string): An absolute "https" URI of a machine-readable index of the subject's public sustainability disclosures (reports, certificates, hosting and energy-source evidence). The format and location of the index are not constrained.</t>
            </li>
            <li>
              <t><strong>target-type</strong> (string): Classifies the subject named by <tt>target</tt> as one of <tt>origin</tt> (the publishing origin; <tt>target</tt> <bcp14>SHOULD</bcp14> then be its host), <tt>path</tt>, <tt>organization</tt>, <tt>service</tt>, <tt>product</tt>, <tt>device</tt>, <tt>tenant</tt>, or <tt>data-source</tt>. It does not change the syntax or attribution rules of <tt>target</tt>.</t>
            </li>
            <li>
              <t><strong>upstream</strong> (array): The declarations of providers from which this object's figures derive (<xref target="upstream-declarations"/>).</t>
            </li>
            <li>
              <t><strong>extensions</strong> (object): Members defined outside this document (<xref target="extensions"/>).</t>
            </li>
            <li>
              <t><strong>signed</strong> (string): A signature over this object (<xref target="signing"/>).</t>
            </li>
          </ul>
          <t>The URI-valued members (<tt>methodology-uri</tt>, <tt>verifiable-attestation-uri</tt>, <tt>disclosure-uri</tt>, and <tt>upstream[].declaration</tt>) <bcp14>MUST</bcp14> be absolute URIs <xref target="RFC3986"/> with the "https" scheme; a consumer <bcp14>MUST NOT</bcp14> automatically dereference any other scheme, and one that dereferences them applies the protections of <xref target="consumer-considerations"/>.</t>
        </section>
        <section anchor="value-constraints-and-omitted-metrics">
          <name>Value Constraints and Omitted Metrics</name>
          <t>A metric not reported for the subject and period is omitted; there is no in-band "not reported" value, and a member that is present always carries an actual value. A published value may have been perturbed for the reason and under the conditions <xref target="privacy-considerations"/> gives, in which case the methodology document says so.</t>
          <t>A declaration object <bcp14>MUST</bcp14> carry at least one numeric metric member or at least one of <tt>disclosure-uri</tt> and <tt>verifiable-attestation-uri</tt>; an object with none is not conformant. This is judged on the members the object carries as served: a consumer that disregards a defective value under the rules below does not thereby make the object non-conformant, it simply has less to read. A consumer that receives an object carrying neither a metric member nor an evidence link <bcp14>MAY</bcp14> read its mandatory members but <bcp14>MUST NOT</bcp14> record it as reporting anything. An object that omits a mandatory member is not conformant; a consumer <bcp14>MAY</bcp14> read the members it does carry but <bcp14>MUST NOT</bcp14> treat it as a declaration.</t>
          <t>A consumer encountering a defective optional member <bcp14>SHOULD NOT</bcp14> reject the object; instead:</t>
          <ul spacing="normal">
            <li>
              <t>A value outside a member's stated range, or of the wrong JSON type (including <tt>null</tt>), is treated as not reported.</t>
            </li>
            <li>
              <t>A numeric value that the consumer cannot represent as a finite number, including one outside the range of IEEE 754 double precision (<xref target="RFC7493"/>, Section 2.2), is treated as not reported: a member that is present always carries an actual value. A publisher <bcp14>MUST NOT</bcp14> emit one.</t>
            </li>
            <li>
              <t>An unrecognized value of <tt>energy-unit</tt>, <tt>carbon-unit</tt>, <tt>carbon-accounting</tt>, or <tt>target-type</tt> causes that member to be disregarded; for a unit member the numeric members it parameterizes are then treated as not reported, and for <tt>target-type</tt> the consumer reads <tt>target</tt> as if the member were absent.</t>
            </li>
            <li>
              <t>A <tt>sci-score</tt> without <tt>functional-unit</tt> is treated as not reported.</t>
            </li>
            <li>
              <t>For <tt>signed</tt>, <tt>upstream</tt> and <tt>extensions</tt>, a value of the wrong JSON type is disregarded and the object is processed as though the member were absent.</t>
            </li>
          </ul>
          <t>A defective value of a mandatory member is a different matter, since disregarding it would leave the object without a member this document requires: a defective <tt>capabilities</tt> value, whether an unrecognized string or a value of the wrong JSON type, is read as <tt>basic</tt>, and a defective value of any other mandatory member leaves the object non-conformant. A mandatory member that is absent altogether is not a defective value: such an object is not a declaration, as stated above.</t>
          <t>The tolerance rules above are exhaustive: a defect they do not name, such as an <tt>extensions</tt> key that is not an absolute URI or whose value is not an object, an <tt>upstream</tt> member that is an array of no entries, or a mandatory member other than <tt>capabilities</tt> whose value is malformed rather than absent, leaves the object non-conformant, and a consumer that validates reports it as such rather than disregarding the member.</t>
          <t>The formal schemas close the enumerated value sets and the top-level member set. A validating consumer whose check fails only on such a value, or only on a top-level member it does not recognize, <bcp14>SHOULD</bcp14> apply the rules above rather than reject the object, on the assumption that the schemas, like the member set, will be extended over time.</t>
        </section>
        <section anchor="extensions">
          <name>Extensions</name>
          <t>Data that this document does not define is carried in the <tt>extensions</tt> member, an object whose member names are extension names and whose values are objects defined by the party that defined the name. An extension name is an absolute URI (<xref target="RFC3986"/>, Section 4.3): a scheme, a hier-part, an optional query, and no fragment, written in ASCII with the scheme in lowercase. Two forms are the ones used in practice. The first is an "https" URI under the definer's control when the name was minted, which <bcp14>SHOULD</bcp14> identify human-readable documentation of the extension. The second is a UUID URN, <tt>urn:uuid:</tt> followed by the hyphenated text form of a UUID (<xref target="RFC9562"/>, Section 4) in lowercase, which that section permits in either case and which this document fixes as lowercase so that names compare octet for octet, for a definer that has no domain or that wants a name independent of any domain; the Nil and Max UUIDs (<xref target="RFC9562"/>, Sections 5.9 and 5.10) <bcp14>MUST NOT</bcp14> be used, since they are guaranteed collisions.</t>
          <t>A name is an identifier, not a locator. It is compared as a string, octet for octet, and is never normalized, and a publisher writes it exactly as its definer published it. Nothing is ever fetched from a name: a consumer <bcp14>MUST NOT</bcp14> dereference a name, and <bcp14>MUST NOT</bcp14> automatically dereference or execute anything within a value it does not implement. Because a name is compared as a string and is never resolved, a later change of ownership of the domain it contains, or the loss of that domain, does not change the meaning of a document already published, and an archived declaration keeps its meaning with nothing left to retrieve. A consumer that implements a name's definition processes its value; a consumer that does not <bcp14>MUST</bcp14> ignore the value. The definer publishes the definition of the members of the value wherever it chooses, and no registry is defined. A publisher <bcp14>MAY</bcp14> use a name defined by another party when it implements that party's definition. The methodology document <bcp14>SHOULD</bcp14> list the extension names a publisher uses, each with its definition or a pointer to it. Values are subject to the same I-JSON expectations as the rest of the declaration.</t>
          <t>This is collision-resistant naming as <xref target="RFC7519"/>, Section 2, describes it: the name is drawn from a namespace, such as a domain name, an OID, or a UUID, that its definer controlled when the name was minted. Extension relation types are named the same way in <xref target="RFC8288"/>, Section 2.1.2, as URIs that are compared as strings (case-insensitively there, octet for octet here) and need not be dereferenceable, and SCIM <xref target="RFC7643"/> keys its extension schemas by URN.</t>
        </section>
        <section anchor="upstream-declarations">
          <name>Upstream Declarations</name>
          <t>A subject's figures commonly derive in part from what other providers deliver to it: hosting, cloud, content delivery, network transit, or electricity. The <tt>upstream</tt> member is an array of at least one object, each with a <tt>declaration</tt> member, the absolute "https" URI of that provider's declaration, and an <bcp14>OPTIONAL</bcp14> <tt>role</tt> member, a token such as <tt>hosting</tt>, <tt>cloud</tt>, <tt>cdn</tt>, <tt>network</tt>, or <tt>electricity</tt>. A publisher with nothing to name omits the member rather than carrying an empty array. For the subject, figures delivered by an upstream fall under Scope 3 of the GHG Protocol; for the upstream, under its own Scope 2.</t>
          <t>An upstream that reports what it delivers to one customer publishes a declaration whose <tt>target-type</tt> is <tt>tenant</tt> and whose <tt>target</tt> is an identifier of its choosing, at any "https" URI it chooses, for example a per-customer URI it gives that customer. Its own <tt>upstream</tt> member, if any, names its sources in turn. An upstream may also be the party that issues the statement a subject links from <tt>verifiable-attestation-uri</tt>; this document defines no separate mechanism for that case.</t>
          <t>A consumer <bcp14>MAY</bcp14> retrieve upstream declarations and compare the figures for the same <tt>reporting-period</tt>. It reads a retrieved declaration exactly as it reads any other, applying the tolerance rules of <xref target="value-constraints-and-omitted-metrics"/> rather than refusing one over a defective value. A consumer that does so <bcp14>MUST NOT</bcp14> follow a chain deeper than three declarations below the one it started from, <bcp14>MUST</bcp14> refuse any URI it has already retrieved during the walk, <bcp14>MUST</bcp14> bound the total number of retrievals it performs for one starting declaration, and applies the fetch limits of <xref target="consumer-considerations"/> to each.</t>
          <t>The comparison is defined where an upstream publishes a declaration about what it delivers to this subject: one whose <tt>target-type</tt> is <tt>tenant</tt>, cited by the URI in the <tt>upstream</tt> entry, which is the only identifier this document defines for that relationship. For the same <tt>reporting-period</tt>, and after conversion to a single unit, a subject whose declared scope covers what that upstream delivers cannot report a smaller <tt>energy-consumption</tt>, or a smaller <tt>carbon-footprint</tt>, than the upstream states it delivered. A consumer that finds otherwise has found an inconsistency between two self-asserted claims, and nothing more; it disregards a shortfall no larger than the rounding and unit conversion behind the two figures could account for.</t>
          <t>That is the only relation defined here, and it is deliberately loose, in four ways a consumer should present honestly. Whether a subject's declared scope covers a given upstream is not expressible in this format, so a subject that legitimately excludes one will read as inconsistent, and the finding is something to investigate rather than a failure to conform. No member carries the share of a subject's figures attributable to one upstream, so the converse, that the subject has not claimed more than the upstream delivered, cannot be checked at all. Each <tt>upstream</tt> entry is compared on its own, and no relation is defined over several of them together. And figures computed on different bases are not comparable, so a consumer compares <tt>carbon-footprint</tt> only where both objects declare the same <tt>carbon-accounting</tt> value or neither declares one.</t>
          <t>Where an upstream publishes only its own totals rather than a tenant-scoped declaration, no relation is defined at all. No such comparison is proof of either claim.</t>
        </section>
        <section anchor="formal-definition-cddl">
          <name>Formal Definition (CDDL)</name>
          <sourcecode type="cddl"><![CDATA[
; Root: a single declaration object, or an array for trends
sustainability-response =
  sustainability-metrics / [+ sustainability-metrics]

sustainability-metrics = {
  ; Mandatory members
  updated: tstr,                  ; RFC 3339 date-time
  capabilities: "basic" / "extended",
  provider: tstr,
  measurement-method: tstr,
  methodology-uri: tstr,          ; absolute https URI
  reporting-period: tstr,         ; YYYY, YYYY-MM, or YYYY-MM-DD
  target: tstr,                   ; reporting subject

  ; Energy; when energy-unit is absent, kWh applies
  ? energy-consumption: number,   ; non-negative
  ? energy-unit: "Wh" / "kWh" / "MWh" / "GWh",

  ; Carbon; when carbon-unit is absent, gCO2e applies
  ? carbon-footprint: number,     ; gross, non-negative
  ? carbon-unit: "gCO2e" / "kgCO2e" / "mtCO2e",
  ? carbon-accounting: "location-based" / "market-based",
  ? scope-1: number,              ; may be negative (removals)
  ? scope-2: number,              ; may be negative (removals)
  ? scope-3: number,              ; may be negative (removals)
  ? sci-score: number,            ; non-negative
  ? functional-unit: tstr,
  ? carbon-intensity-gCO2e-per-kWh: number,   ; non-negative
  ? estimated-annual-emissions-kgCO2e: number, ; non-negative
  ? renewable-energy: number,     ; percentage, 0-100

  ; Evidence links (absolute https URIs)
  ? verifiable-attestation-uri: tstr,
  ? disclosure-uri: tstr,

  ; Classification of the subject named by target
  ? target-type: "origin" / "path" / "organization" / "service"
               / "product" / "device" / "tenant" / "data-source",

  ; Declarations this object's figures derive from
  ? upstream: [+ upstream-entry],

  ; Members defined outside this document, keyed by
  ; an absolute URI (see Extensions)
  ? extensions: { * ext-name => { * tstr => any } },

  ; JWS Compact Serialization over this object minus "signed"
  ? signed: tstr,
}

upstream-entry = {
  declaration: tstr,              ; absolute https URI
  ? role: tstr,                   ; e.g. hosting, cloud, cdn
}

ext-name = tstr .regexp "[a-z][a-z0-9+.-]*:[!$-;=?-Z\\[\\]_a-z~]+"
]]></sourcecode>
        </section>
        <section anchor="formal-definition-jtd">
          <name>Formal Definition (JTD)</name>
          <t>The JSON Type Definition <xref target="RFC8927"/> of a declaration object:</t>
          <sourcecode type="json"><![CDATA[
{
  "properties": {
    "updated": { "type": "string" },
    "capabilities": { "enum": ["basic", "extended"] },
    "provider": { "type": "string" },
    "measurement-method": { "type": "string" },
    "methodology-uri": { "type": "string" },
    "reporting-period": { "type": "string" },
    "target": { "type": "string" }
  },
  "optionalProperties": {
    "energy-consumption": { "type": "float64" },
    "energy-unit": { "enum": ["Wh", "kWh", "MWh", "GWh"] },
    "carbon-footprint": { "type": "float64" },
    "carbon-unit": { "enum": ["gCO2e", "kgCO2e", "mtCO2e"] },
    "carbon-accounting": {
      "enum": ["location-based", "market-based"]
    },
    "scope-1": { "type": "float64" },
    "scope-2": { "type": "float64" },
    "scope-3": { "type": "float64" },
    "sci-score": { "type": "float64" },
    "functional-unit": { "type": "string" },
    "carbon-intensity-gCO2e-per-kWh": { "type": "float64" },
    "estimated-annual-emissions-kgCO2e": { "type": "float64" },
    "renewable-energy": { "type": "float64" },
    "verifiable-attestation-uri": { "type": "string" },
    "disclosure-uri": { "type": "string" },
    "target-type": {
      "enum": ["origin", "path", "organization", "service",
               "product", "device", "tenant", "data-source"]
    },
    "upstream": {
      "elements": {
        "properties": { "declaration": { "type": "string" } },
        "optionalProperties": { "role": { "type": "string" } }
      }
    },
    "extensions": {
      "values": { "properties": {}, "additionalProperties": true }
    },
    "signed": { "type": "string" }
  }
}
]]></sourcecode>
          <t>The schemas describe what a conforming publisher emits, and a publisher validates against them exactly. A consumer validates against them too, but applies the tolerance rules of <xref target="value-constraints-and-omitted-metrics"/> to what it receives, so that a defective value or an unrecognized top-level member does not cause it to reject an otherwise readable declaration.</t>
          <t>JSON Type Definition has no alternation at its root: a consumer validating an array body applies the schema above to each of its elements. The CDDL regular expression is an XSD regular expression, which matches a complete string (<xref target="RFC8610"/>, Section 3.8.3).</t>
          <t>The range constraints, the <tt>sci-score</tt>/<tt>functional-unit</tt> rule, the date and URI forms, the unit defaults, the URI form of the <tt>extensions</tt> keys and the requirement that their values be JSON objects and that <tt>upstream</tt> carry at least one entry (all three of which the CDDL captures, and the JTD only the requirement that the values be objects), the at-least-one rule, and the array ordering and uniformity rules are prose rules of this document, as are the exclusion of the Nil and Max UUIDs from the <tt>urn:uuid</tt> form of an extension name, the comparison of those names octet-for-octet, and the rule that a <tt>signed</tt> payload carries no <tt>signed</tt> member of its own, which neither schema captures; validating implementations enforce them.</t>
        </section>
      </section>
    </section>
    <section anchor="examples">
      <name>Examples</name>
      <section anchor="basic-response">
        <name>Basic Response</name>
        <t>Request: <tt>GET /.well-known/sustainability-data</tt></t>
        <sourcecode type="json"><![CDATA[
{
  "updated": "2026-03-01T12:00:00Z",
  "capabilities": "basic",
  "provider": "Example Corp (sustain@example.org)",
  "measurement-method": "cloud-billing",
  "methodology-uri": "https://example.com/methodology",
  "reporting-period": "2025",
  "target": "example.com",
  "energy-consumption": 15000,
  "energy-unit": "kWh",
  "carbon-footprint": 4140,
  "carbon-unit": "kgCO2e",
  "target-type": "origin"
}
]]></sourcecode>
      </section>
      <section anchor="yearly-trend-at-monthly-granularity">
        <name>Yearly Trend at Monthly Granularity</name>
        <t>Request: <tt>GET /.well-known/sustainability-data?period=2025&amp;granularity=monthly</tt></t>
        <t>One object per month; two are shown.</t>
        <sourcecode type="json"><![CDATA[
[
  {
    "updated": "2026-01-05T09:00:00Z",
    "capabilities": "extended",
    "provider": "CloudProvider Ops (ops@example.com)",
    "measurement-method": "hardware-metered",
    "methodology-uri": "https://example.com/methodology",
    "reporting-period": "2025-01",
    "target": "example.com",
    "energy-consumption": 1100,
    "energy-unit": "kWh",
    "carbon-footprint": 302,
    "carbon-unit": "kgCO2e",
    "carbon-accounting": "location-based",
    "renewable-energy": 45
  },
  {
    "updated": "2026-01-05T09:00:00Z",
    "capabilities": "extended",
    "provider": "CloudProvider Ops (ops@example.com)",
    "measurement-method": "hardware-metered",
    "methodology-uri": "https://example.com/methodology",
    "reporting-period": "2025-02",
    "target": "example.com",
    "energy-consumption": 1050,
    "energy-unit": "kWh",
    "carbon-footprint": 288,
    "carbon-unit": "kgCO2e",
    "carbon-accounting": "location-based",
    "renewable-energy": 48
  }
]
]]></sourcecode>
      </section>
      <section anchor="path-scoped-request-for-one-day">
        <name>Path-Scoped Request for One Day</name>
        <t>Request: <tt>GET /.well-known/sustainability-data?target=/api/v1&amp;period=2026-03-15</tt></t>
        <sourcecode type="json"><![CDATA[
{
  "updated": "2026-03-16T12:00:00Z",
  "capabilities": "extended",
  "provider": "Example Corp (sustain@example.org)",
  "measurement-method": "cloud-billing",
  "methodology-uri": "https://example.com/methodology",
  "reporting-period": "2026-03-15",
  "target": "/api/v1",
  "energy-consumption": 1.5,
  "energy-unit": "kWh",
  "carbon-footprint": 414,
  "carbon-unit": "gCO2e",
  "sci-score": 12,
  "functional-unit": "per-thousand-requests"
}
]]></sourcecode>
      </section>
      <section anchor="signed-declaration-with-scopes-and-attestation">
        <name>Signed Declaration with Scopes and Attestation</name>
        <t>Request: <tt>GET /.well-known/sustainability-data?target=/app/storage&amp;period=2026-03-20</tt></t>
        <t>The <tt>signed</tt> value is a JWS whose payload is this object without <tt>signed</tt>; it is elided here.</t>
        <sourcecode type="json"><![CDATA[
{
  "updated": "2026-03-21T00:05:00Z",
  "capabilities": "extended",
  "provider": "Global Storage Inc. (compliance@storage.example)",
  "measurement-method": "hardware-estimated",
  "methodology-uri": "https://storage.example/transparency/methods",
  "reporting-period": "2026-03-20",
  "target": "/app/storage",
  "energy-consumption": 12,
  "energy-unit": "kWh",
  "carbon-footprint": 3.2,
  "carbon-unit": "kgCO2e",
  "carbon-accounting": "market-based",
  "scope-1": 0.0,
  "scope-2": 2.1,
  "scope-3": 1.1,
  "carbon-intensity-gCO2e-per-kWh": 267,
  "estimated-annual-emissions-kgCO2e": 1168,
  "renewable-energy": 45,
  "verifiable-attestation-uri": "https://verify.example/vc/storage",
  "disclosure-uri": "https://storage.example/disclosures",
  "target-type": "path",
  "signed": "eyJhbGciOiJFZERTQSIsImN0eSI6InN1c3RhaW5hYm...(elided)"
}
]]></sourcecode>
      </section>
      <section anchor="organization-with-upstream-providers-and-extensions">
        <name>Organization with Upstream Providers and Extensions</name>
        <t>Request: <tt>GET /.well-known/sustainability-data</tt></t>
        <t>An organization reports its annual figures, names the cloud provider whose tenant-scoped declaration covers what it consumed there, publishes water and waste figures under an extension name whose "https" URI documents the members it defined itself, and carries one member defined by an industry group that names its extension with a UUID URN (this UUID was generated for this example).</t>
        <sourcecode type="json"><![CDATA[
{
  "updated": "2026-02-15T08:00:00Z",
  "capabilities": "basic",
  "provider": "Acme Retail plc (sustainability@acme.example)",
  "measurement-method": "third-party-modeled",
  "methodology-uri": "https://acme.example/esg/methodology",
  "reporting-period": "2025",
  "target": "Acme Retail plc",
  "target-type": "organization",
  "energy-consumption": 2.4,
  "energy-unit": "GWh",
  "carbon-footprint": 610,
  "carbon-unit": "mtCO2e",
  "carbon-accounting": "market-based",
  "scope-1": 90,
  "scope-2": 220,
  "scope-3": 300,
  "disclosure-uri": "https://acme.example/esg/disclosures",
  "upstream": [
    {
      "declaration": "https://cloud.example/tenants/acme.json",
      "role": "cloud"
    }
  ],
  "extensions": {
    "https://acme.example/esg/extensions/water-and-waste": {
      "water-consumption-m3": 1250,
      "waste-generated-kg": 340,
      "waste-recycled-percent": 62
    },
    "urn:uuid:16c36135-e6ae-40f9-a972-015eefc68845": {
      "packaging-recycled-percent": 71
    }
  }
}
]]></sourcecode>
        <t>The upstream's tenant-scoped declaration, retrieved from the URI above, has <tt>"target-type": "tenant"</tt> and <tt>"target": "acme"</tt>, and its <tt>energy-consumption</tt> and <tt>carbon-footprint</tt> are what the cloud provider states it delivered to that tenant in 2025.</t>
      </section>
      <section anchor="partial-reporting-with-default-units">
        <name>Partial Reporting with Default Units</name>
        <t>Request: <tt>GET /.well-known/sustainability-data</tt></t>
        <t>Energy is not reported; <tt>carbon-unit</tt> is omitted, so <tt>gCO2e</tt> applies to <tt>carbon-footprint</tt> and <tt>scope-2</tt>.</t>
        <sourcecode type="json"><![CDATA[
{
  "updated": "2026-04-01T00:00:00Z",
  "capabilities": "basic",
  "provider": "Partial Metrics Co. (sustainability@partial.example)",
  "measurement-method": "third-party-modeled",
  "methodology-uri": "https://partial.example/methodology",
  "reporting-period": "2026-03",
  "target": "partial.example",
  "carbon-footprint": 4200,
  "carbon-accounting": "location-based",
  "scope-2": 4200,
  "disclosure-uri": "https://partial.example/disclosures"
}
]]></sourcecode>
      </section>
    </section>
    <section anchor="operational-considerations">
      <name>Operational Considerations</name>
      <t>HTTP caching and conditional requests are as defined in <xref target="RFC9111"/> and <xref target="RFC9110"/>. A server <bcp14>SHOULD</bcp14> send cache directives (for example <tt>Cache-Control: max-age=86400</tt>), <bcp14>SHOULD</bcp14> send <tt>ETag</tt> or <tt>Last-Modified</tt> so that consumers can revalidate, and, for a <tt>period</tt> naming a completed past period, <bcp14>MAY</bcp14> use a long <tt>max-age</tt>. A server that computes responses to Extended Query Parameters on demand <bcp14>SHOULD</bcp14> precompute or cache them. A shared cache keys on the request URI (<xref target="RFC9111"/>, Section 4), so each distinct query string is a distinct entry there, while an origin server keys its own response cache as <xref target="extended-query-parameters"/> describes.</t>
      <t>A publisher behind a content delivery network or reverse proxy <bcp14>MUST</bcp14> ensure that the well-known path is served with the authoritative declaration, without rewriting or reformatting the body. A multi-tenant platform either publishes a declaration at each tenant's origin about that tenant, or one at its own origin about the platform; <tt>target</tt> and <tt>target-type</tt> say which. A worked example of a complete deployment is given in Appendix A.</t>
    </section>
    <section anchor="signing">
      <name>Signing</name>
      <t>HTTPS authenticates the origin and protects the declaration in flight; it says nothing about the declaration once stored, forwarded, or aggregated. The <tt>signed</tt> member lets integrity and continuity of authorship be verified later and by parties that did not perform the retrieval. It is <bcp14>OPTIONAL</bcp14>, and a consumer checks it only when it is present.</t>
      <section anchor="the-signed-member">
        <name>The signed Member</name>
        <t>The value of <tt>signed</tt> is a JSON Web Signature in the JWS Compact Serialization (<xref target="RFC7515"/>, Section 7.1) whose payload is the declaration object in which it appears, without the <tt>signed</tt> member, serialized as JSON by the publisher. In an array each object carries its own <tt>signed</tt> member, and a publisher that signs the objects of an array signs all of them. The payload <bcp14>MUST NOT</bcp14> itself contain a <tt>signed</tt> member. Its JOSE Header:</t>
        <ul spacing="normal">
          <li>
            <t><bcp14>MUST</bcp14> contain <tt>alg</tt> naming an asymmetric digital-signature algorithm. <tt>EdDSA</tt> with Ed25519 <xref target="RFC8037"/> and <tt>ES256</tt> (<xref target="RFC7518"/>, Section 3.4) are <bcp14>RECOMMENDED</bcp14>, and a verifier <bcp14>SHOULD</bcp14> implement both. <tt>none</tt> and MAC algorithms such as <tt>HS256</tt> <bcp14>MUST NOT</bcp14> be used, since verifiers hold no secret shared with the publisher.</t>
          </li>
          <li>
            <t><bcp14>MUST</bcp14> contain <tt>cty</tt> (<xref target="RFC7515"/>, Section 4.1.10) identifying the payload as this media type, which keeps the signature from being confused with a JWS produced for another purpose. A publisher writes the value <tt>sustainability-data+json</tt>, omitting the "application/" prefix as that section recommends; a consumer, as that section requires, treats a <tt>cty</tt> value containing no "/" as though "application/" were prepended, and so accepts either spelling, compared as a media type and ignoring any parameters.</t>
          </li>
          <li>
            <t><bcp14>SHOULD</bcp14> carry the verification key as <tt>jwk</tt> (<xref target="RFC7515"/>, Section 4.1.3) or <tt>x5c</tt> (<xref target="RFC7515"/>, Section 4.1.6), so that verification needs nothing but the declaration; a publisher that distributes its key out of band <bcp14>MAY</bcp14> instead identify it with <tt>kid</tt>.</t>
          </li>
        </ul>
        <t>A publisher <bcp14>MUST NOT</bcp14> serve an object whose <tt>signed</tt> payload differs from the object it accompanies, so a publisher regenerating an object regenerates its signature in the same step.</t>
      </section>
      <section anchor="verification">
        <name>Verification</name>
        <t>A consumer that verifies the member <bcp14>MUST</bcp14> reject it when <tt>alg</tt> is <tt>none</tt> or a MAC algorithm, when <tt>cty</tt> is absent or identifies any other media type, or when it carries a <tt>crit</tt> parameter the consumer does not understand; it determines the acceptable algorithm from the key and its own policy, never from <tt>alg</tt> alone (<xref target="RFC8725"/>, Sections 3.1 and 3.2). On success it parses the payload as a JSON object and validates it as a declaration object; a payload that is not one leaves the object unverified, and the consumer <bcp14>MUST NOT</bcp14> let such a payload take precedence over the members around it. A consumer <bcp14>MUST</bcp14> also treat the object as unverified when the payload's <tt>target</tt> or <tt>reporting-period</tt> differs from the object's, since the two then describe different things.</t>
        <t>What a consumer does with a verified payload depends on how far it trusts the key. Where the key was obtained out of band (that is, from a source the consumer selected independently of the declaration, never from a URI the declaration or its JOSE Header names), pinned from an earlier retrieval, or validated through an <tt>x5c</tt> chain to an anchor the consumer already trusts, the payload's members are the ones it uses, taking precedence over the members around them, in the manner of the <tt>signed_metadata</tt> parameter of <xref target="RFC8414"/>. Pinning establishes continuity, not identity: precedence rests on continuity, that the same holder signed the earlier declaration, and not on knowing who that holder is. In every other case the key is trusted no further than the declaration carrying it, the members served by the origin remain the ones the consumer uses, and the signature establishes only what <xref target="what-a-signature-proves"/> describes: letting a self-asserted payload override an origin-authenticated one would let anyone able to add a member replace every figure. A consumer that promotes an <tt>x5c</tt>-validated key <bcp14>MUST</bcp14> also require that the certificate identify the publisher, where the anchor is a general-purpose one by an acceptable match between the origin serving the declaration and the certificate's identity (<xref target="RFC9110"/>, Section 4.3.4), since a chain to a widely trusted anchor otherwise establishes only that some party holds a certificate. In either case a consumer <bcp14>MAY</bcp14> report a difference between the payload and the surrounding members as evidence that the object was modified after signing, which is not a verification failure.</t>
        <t>An absent <tt>signed</tt> member means only that the publisher did not sign; it <bcp14>MUST NOT</bcp14> be treated as evidence about the declaration. A member that fails to verify <bcp14>MUST</bcp14> cause the consumer to treat the object as unverified, never as false: a consumer that distinguishes verified from unverified data records it as unverified and <bcp14>MUST NOT</bcp14> present it downstream as verified.</t>
      </section>
      <section anchor="what-a-signature-proves">
        <name>What a Signature Proves</name>
        <t>A signature whose key arrives in its own header is as self-asserted as the metrics: whoever can publish the declaration can publish a key. It establishes integrity and key continuity, not identity, and it establishes nothing about accuracy: correctly signed false data is still false, and a consumer <bcp14>MUST NOT</bcp14> treat signature validity as evidence that a metric is accurate. Independent assurance about the figures comes only through <tt>verifiable-attestation-uri</tt>.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>A declaration is public, self-asserted data retrieved without authentication and intended for automated ingestion. Its threats are spoofing and misattribution, addressed by mandatory HTTPS, redirect attribution, and the <tt>signed</tt> member; tampering, addressed by HTTPS, the required media type, and the signature; false or selective figures, addressed only by the methodology link, the attestation channel, and the rule that consumers never label a claim as verified; information disclosure through the published figures, addressed in <xref target="privacy-considerations"/>; and denial of service against server or consumer, addressed below. Nothing here makes a published figure true: every mechanism concerns the integrity and provenance of a claim, never its accuracy.</t>
      <section anchor="transport-and-media-type">
        <name>Transport and Media Type</name>
        <t>A consumer <bcp14>MUST</bcp14> verify that the service identity is an acceptable match for the origin, as <xref target="RFC9110"/>, Section 4.3.4, requires, on every hop of a followed redirect and on every URI it dereferences from the declaration. HTTPS is required for integrity and origin authentication rather than confidentiality, without exception, as security.txt does for the same class of document (<xref target="RFC9116"/>, Section 5.7).</t>
      </section>
      <section anchor="trust-and-spoofing">
        <name>Trust and Spoofing</name>
        <t>An attacker who controls DNS, the certificate, or the origin can publish false data, and a party that obtained a declaration by any means other than an HTTPS fetch from its origin has no assurance of where it came from unless it verifies a <tt>signed</tt> member against a key it has reason to trust. Retrieval establishes attribution, that the origin published these claims, and nothing more. A consumer <bcp14>MUST NOT</bcp14> treat the presence of a declaration, or of any member in it, as verification of a claim, and one that presents, stores, or forwards the data <bcp14>MUST NOT</bcp14> represent it as verified; these are processing rules on conforming consumers, not statements about what any party may conclude by other means. A consumer that requires signatures defends against their removal by an origin-controlling attacker only through key pinning. A declaration that is correctly served, typed and signed can still be untrue: publishers <bcp14>SHOULD</bcp14> link authoritative reports and third-party attestations through <tt>disclosure-uri</tt> and <tt>verifiable-attestation-uri</tt>, and consumers <bcp14>SHOULD</bcp14> treat the declaration as a discovery mechanism and check claims against external sources when it matters.</t>
      </section>
      <section anchor="denial-of-service">
        <name>Denial of Service</name>
        <t>A server <bcp14>SHOULD</bcp14> rate-limit requests to the well-known URI and <bcp14>SHOULD</bcp14> precompute or cache responses, since <xref target="extended-query-parameters"/> can otherwise force on-demand aggregation; honoring <tt>target</tt> only for a published prefix set bounds the cache-key space. A response to a request naming a granularity is bounded by the calendar (at most 366 objects for daily granularity over a year), and nothing bounds the size of a Basic response; a consumer <bcp14>MUST NOT</bcp14> rely on any server bound: it <bcp14>MUST</bcp14> limit the bytes and objects it accepts and treat an excess as an error.</t>
      </section>
      <section anchor="consumer-considerations">
        <name>Consumer Considerations</name>
        <ul spacing="normal">
          <li>
            <t>A consumer <bcp14>SHOULD</bcp14> bound the time, size, and redirects of every fetch, including those of upstream declarations, and <bcp14>SHOULD</bcp14> refuse URIs that resolve to private or link-local addresses, since dereferencing URIs from an untrusted document exposes it to server-side request forgery.</t>
          </li>
          <li>
            <t>A consumer <bcp14>SHOULD</bcp14> parse with a JSON parser hardened against untrusted input (<xref target="RFC8259"/>, Section 12), validate before use, and treat every value as data: the format has no active content, and a consumer that evaluates a value has introduced a hazard the format does not contain. Duplicate member names make JSON interoperability unpredictable; a consumer whose parser exposes them <bcp14>SHOULD</bcp14> reject an object containing them, and one whose parser does not applies that parser's documented resolution consistently and states which it is.</t>
          </li>
          <li>
            <t>A consumer <bcp14>MUST NOT</bcp14> dereference an <tt>extensions</tt> name, which is an identifier and not a locator, and <bcp14>MUST NOT</bcp14> automatically dereference or execute anything within an <tt>extensions</tt> value it does not implement.</t>
          </li>
          <li>
            <t>A consumer that walks upstream declarations applies the depth, revisit, and total-retrieval limits of <xref target="upstream-declarations"/>, so that a chain of declarations cannot be turned into an amplifier.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="privacy-considerations">
      <name>Privacy Considerations</name>
      <t>Everything in a declaration is available to any party, including an adversary: energy and utilization figures can reveal capacity and load patterns, precise metrics can reveal hardware, path-scoped responses can reveal which paths exist, and contact strings can carry personal data. The publisher decides what to publish and at what aggregation; this document bounds what the mechanism itself exposes, following the guidance of <xref target="RFC6973"/>:</t>
      <ul spacing="normal">
        <li>
          <t>A server <bcp14>SHOULD NOT</bcp14> report at a granularity finer than 24 hours, and real-time telemetry is <bcp14>NOT RECOMMENDED</bcp14>, since either lets an observer correlate energy with individual user actions.</t>
        </li>
        <li>
          <t>A server <bcp14>MAY</bcp14> apply multiplicative noise within 1% of the true values to blunt hardware fingerprinting. Noise <bcp14>MUST</bcp14> be applied once, at generation time, deterministically per period and consistently across arithmetically related members, including any annualized or otherwise derived member, so that ratios are preserved and no unperturbed member discloses a perturbed one; bounded members <bcp14>MUST</bcp14> remain within their range; the noised values are the published values for caching purposes; and the methodology document <bcp14>MUST</bcp14> state that noise is applied and bound its magnitude. A publisher for whom ratio-based fingerprinting is a concern <bcp14>SHOULD</bcp14> omit the derived members instead.</t>
        </li>
        <li>
          <t>A server honoring <tt>target</tt> for arbitrary values would reveal, through the difference between a scoped and a no-data response, which paths exist and carry traffic; <xref target="extended-query-parameters"/> therefore restricts it to a published prefix set and answers every value outside that set with the same <tt>404 Not Found</tt> it returns when it holds no data. A server <bcp14>SHOULD</bcp14> make those two responses indistinguishable in body and in timing as well.</t>
        </li>
        <li>
          <t>A publisher <bcp14>SHOULD</bcp14> aggregate or omit any metric that could be linked to individual users or small groups, and <bcp14>SHOULD</bcp14> use a role rather than a personal contact address in <tt>provider</tt>. An aggregator publishing derived datasets <bcp14>SHOULD</bcp14> use privacy-preserving aggregation.</t>
        </li>
      </ul>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="well-known-uri-registration">
        <name>Well-Known URI Registration</name>
        <t>IANA is requested to register the following entry in the "Well-Known URIs" registry, per <xref target="RFC8615"/>, Section 3.1:</t>
        <ul spacing="normal">
          <li>
            <t><strong>URI Suffix</strong>: sustainability-data</t>
          </li>
          <li>
            <t><strong>Change Controller</strong>: Andrei Nicolae Besleaga (andrei.besleaga@ieee.org)</t>
          </li>
          <li>
            <t><strong>Specification Document(s)</strong>: This document.</t>
          </li>
          <li>
            <t><strong>Status</strong>: provisional</t>
          </li>
          <li>
            <t><strong>Related Information</strong>: Used with the "https" URI scheme. The resource is an <tt>application/sustainability-data+json</tt> document, defined by CDDL <xref target="RFC8610"/> and JTD <xref target="RFC8927"/> schemas in the specification, and accepts the <bcp14>OPTIONAL</bcp14> query parameters <tt>target</tt>, <tt>period</tt>, and <tt>granularity</tt>, whose syntax the specification defines.</t>
          </li>
        </ul>
        <t>The suffix names the class of data the resource carries, a machine-readable declaration of sustainability metrics for a declared reporting subject, rather than the topic of sustainability at large, in keeping with the precision <xref target="RFC8615"/>, Section 3, expects of a registered name. Provisional status is requested because this is an Independent Submission; the designated experts may promote the entry to permanent once the URI is found to be in broad use (<xref target="RFC8615"/>, Section 3.1).</t>
      </section>
      <section anchor="media-type-registration">
        <name>Media Type Registration</name>
        <t>IANA is requested to register <tt>application/sustainability-data+json</tt> in the "Media Types" registry, in the standards tree, per <xref target="RFC6838"/>; the "+json" suffix is registered in <xref target="RFC6839"/>, Section 3.1. As an Independent Submission, this document requests the standards-tree registration subject to IESG approval under <xref target="RFC6838"/>, Section 3.1, as <xref target="RFC7351"/>, <xref target="RFC7903"/>, <xref target="RFC8351"/>, and <xref target="RFC9230"/> did; change control is assigned to the IETF. The security analysis that <xref target="RFC6838"/>, Section 4.6, requires is in the "Security considerations" field below and in full in <xref target="security-considerations"/> and <xref target="privacy-considerations"/> of this document.</t>
        <ul spacing="normal">
          <li>
            <t><strong>Type name</strong>: application</t>
          </li>
          <li>
            <t><strong>Subtype name</strong>: sustainability-data+json</t>
          </li>
          <li>
            <t><strong>Required parameters</strong>: N/A</t>
          </li>
          <li>
            <t><strong>Optional parameters</strong>: N/A</t>
          </li>
          <li>
            <t><strong>Encoding considerations</strong>: binary. Documents are JSON text encoded in UTF-8 (<xref target="RFC8259"/>, Section 8.1); publishers follow I-JSON <xref target="RFC7493"/>.</t>
          </li>
          <li>
            <t><strong>Security considerations</strong>: Documents of this type are JSON text and inherit the security considerations of JSON (<xref target="RFC8259"/>, Section 12), notably the hazards of parsing untrusted input and the implementation-dependent handling of duplicate member names and of numbers outside the range exactly representable in IEEE 754 double precision. The format carries no active content. It defines URI-valued members that a consumer may dereference, which exposes it to server-side request forgery and redirect-based attacks; the specification restricts them to absolute "https" URIs and directs consumers to apply the usual protections and to bound the retrieval of linked declarations. The names that key its <tt>extensions</tt> member are absolute URIs used as identifiers only, which a consumer never dereferences. The content is self-asserted and carries no assurance of accuracy; misrepresentation is the principal content-level risk, mitigated only by a mandatory link to a methodology and by channels to third-party attestation, and consumers must not treat an instance as verified. Instances can carry operational information from which infrastructure characteristics, topology, or traffic patterns can be inferred, and contact strings that carry personal data; the specification directs publishers to aggregate and to bound granularity. An <bcp14>OPTIONAL</bcp14> embedded JWS <xref target="RFC7515"/> provides integrity outside the TLS session, with this media type as its <tt>cty</tt>; it does not establish accuracy. The full analysis is in the Security and Privacy Considerations of the specification.</t>
          </li>
          <li>
            <t><strong>Interoperability considerations</strong>: The structure of an instance is specified by CDDL <xref target="RFC8610"/> and JTD <xref target="RFC8927"/> schemas. Consumers ignore top-level members they do not recognize. Publishers follow I-JSON <xref target="RFC7493"/>; generic JSON parsers differ in their treatment of duplicate names and of large or high-precision numbers.</t>
          </li>
          <li>
            <t><strong>Published specification</strong>: This document.</t>
          </li>
          <li>
            <t><strong>Applications that use this media type</strong>: Publishers of environmental-impact, energy, and carbon-footprint declarations; clients, aggregators, procurement and reporting tools, and automated agents that retrieve them from the "/.well-known/sustainability-data" URI. The type also names, in the <tt>cty</tt> header parameter, the payload of the embedded signature the specification defines.</t>
          </li>
          <li>
            <t><strong>Fragment identifier considerations</strong>: As specified for "application/json" (<xref target="RFC6839"/>, Section 3.1).</t>
          </li>
          <li>
            <t><strong>Additional information</strong>: Deprecated alias names: N/A. Magic number(s): N/A. File extension(s): .json. Macintosh file type code(s): TEXT.</t>
          </li>
          <li>
            <t><strong>Person &amp; email address to contact for further information</strong>: Andrei Nicolae Besleaga (andrei.besleaga@ieee.org)</t>
          </li>
          <li>
            <t><strong>Intended usage</strong>: COMMON</t>
          </li>
          <li>
            <t><strong>Restrictions on usage</strong>: None.</t>
          </li>
          <li>
            <t><strong>Author</strong>: Andrei Nicolae Besleaga (andrei.besleaga@ieee.org)</t>
          </li>
          <li>
            <t><strong>Change controller</strong>: IETF</t>
          </li>
          <li>
            <t><strong>Provisional registration?</strong>: No</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="internationalization-considerations">
      <name>Internationalization Considerations</name>
      <t>A declaration is JSON and therefore UTF-8 (<xref target="RFC8259"/>, Section 8.1); a publisher <bcp14>SHOULD</bcp14> emit human-readable strings in Unicode Normalization Form C (<xref target="RFC5198"/>, Section 3). Following BCP 18 (<xref target="RFC2277"/>, Section 2), its members are protocol elements except where stated:</t>
      <ul spacing="normal">
        <li>
          <t>Member names, the values of the enumerated members, the <bcp14>RECOMMENDED</bcp14> <tt>measurement-method</tt> tokens, the <tt>role</tt> tokens, the extension names that key <tt>extensions</tt>, which are ASCII URIs and never IRIs, <tt>functional-unit</tt>, the date members, the URI members, and <tt>signed</tt> are ASCII protocol elements; where this document compares them it does so octet-for-octet, never case-folded, normalized, translated, or localized. Numbers have no language dimension.</t>
        </li>
        <li>
          <t><tt>target</tt> is an opaque identifier and <bcp14>MUST NOT</bcp14> be translated or transliterated. Where it is a host, the ordinary case-insensitive comparison rules for host names apply and an internationalized host is given in A-label form (<xref target="RFC5890"/>, Section 2.3.2.1); where it is a path prefix, it carries the percent-decoded form.</t>
        </li>
        <li>
          <t><tt>provider</tt>, a <tt>measurement-method</tt> value outside the <bcp14>RECOMMENDED</bcp14> set, and human-readable values within <tt>extensions</tt> are text. Language is conveyed at the HTTP layer, as problem details do (<xref target="RFC9457"/>, Section 3.1.3): a server publishing such text in a known language <bcp14>SHOULD</bcp14> send <tt>Content-Language</tt>, and one that negotiates on <tt>Accept-Language</tt> <bcp14>MUST</bcp14> send <tt>Vary: Accept-Language</tt> and, if it signs, signs each language variant separately. A consumer that displays such text <bcp14>SHOULD</bcp14> render it under the Unicode Bidirectional Algorithm <xref target="UAX9"/> and isolate it from surrounding text. A consumer that does not understand the language loses no interoperability.</t>
        </li>
      </ul>
      <t>No in-document language-tagging mechanism is defined.</t>
    </section>
    <section anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The author thanks the reviewers of earlier revisions of this document.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC3339" target="https://www.rfc-editor.org/info/rfc3339" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3339.xml">
          <front>
            <title>Date and Time on the Internet: Timestamps</title>
            <author fullname="G. Klyne" initials="G." surname="Klyne"/>
            <author fullname="C. Newman" initials="C." surname="Newman"/>
            <date month="July" year="2002"/>
          </front>
          <seriesInfo name="RFC" value="3339"/>
          <seriesInfo name="DOI" value="10.17487/RFC3339"/>
        </reference>
        <reference anchor="RFC3986" target="https://www.rfc-editor.org/info/rfc3986" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3986.xml">
          <front>
            <title>Uniform Resource Identifier (URI): Generic Syntax</title>
            <author fullname="T. Berners-Lee" initials="T." surname="Berners-Lee"/>
            <author fullname="R. Fielding" initials="R." surname="Fielding"/>
            <author fullname="L. Masinter" initials="L." surname="Masinter"/>
            <date month="January" year="2005"/>
          </front>
          <seriesInfo name="STD" value="66"/>
          <seriesInfo name="RFC" value="3986"/>
          <seriesInfo name="DOI" value="10.17487/RFC3986"/>
        </reference>
        <reference anchor="RFC5234" target="https://www.rfc-editor.org/info/rfc5234" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5234.xml">
          <front>
            <title>Augmented BNF for Syntax Specifications: ABNF</title>
            <author fullname="D. Crocker" initials="D." role="editor" surname="Crocker"/>
            <author fullname="P. Overell" initials="P." surname="Overell"/>
            <date month="January" year="2008"/>
          </front>
          <seriesInfo name="STD" value="68"/>
          <seriesInfo name="RFC" value="5234"/>
          <seriesInfo name="DOI" value="10.17487/RFC5234"/>
        </reference>
        <reference anchor="RFC6838" target="https://www.rfc-editor.org/info/rfc6838" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6838.xml">
          <front>
            <title>Media Type Specifications and Registration Procedures</title>
            <author fullname="N. Freed" initials="N." surname="Freed"/>
            <author fullname="J. Klensin" initials="J." surname="Klensin"/>
            <author fullname="T. Hansen" initials="T." surname="Hansen"/>
            <date month="January" year="2013"/>
          </front>
          <seriesInfo name="BCP" value="13"/>
          <seriesInfo name="RFC" value="6838"/>
          <seriesInfo name="DOI" value="10.17487/RFC6838"/>
        </reference>
        <reference anchor="RFC6839" target="https://www.rfc-editor.org/info/rfc6839" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6839.xml">
          <front>
            <title>Additional Media Type Structured Syntax Suffixes</title>
            <author fullname="T. Hansen" initials="T." surname="Hansen"/>
            <author fullname="A. Melnikov" initials="A." surname="Melnikov"/>
            <date month="January" year="2013"/>
          </front>
          <seriesInfo name="RFC" value="6839"/>
          <seriesInfo name="DOI" value="10.17487/RFC6839"/>
        </reference>
        <reference anchor="RFC7405" target="https://www.rfc-editor.org/info/rfc7405" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7405.xml">
          <front>
            <title>Case-Sensitive String Support in ABNF</title>
            <author fullname="P. Kyzivat" initials="P." surname="Kyzivat"/>
            <date month="December" year="2014"/>
          </front>
          <seriesInfo name="RFC" value="7405"/>
          <seriesInfo name="DOI" value="10.17487/RFC7405"/>
        </reference>
        <reference anchor="RFC7493" target="https://www.rfc-editor.org/info/rfc7493" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7493.xml">
          <front>
            <title>The I-JSON Message Format</title>
            <author fullname="T. Bray" initials="T." role="editor" surname="Bray"/>
            <date month="March" year="2015"/>
          </front>
          <seriesInfo name="RFC" value="7493"/>
          <seriesInfo name="DOI" value="10.17487/RFC7493"/>
        </reference>
        <reference anchor="RFC7515" target="https://www.rfc-editor.org/info/rfc7515" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7515.xml">
          <front>
            <title>JSON Web Signature (JWS)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <date month="May" year="2015"/>
          </front>
          <seriesInfo name="RFC" value="7515"/>
          <seriesInfo name="DOI" value="10.17487/RFC7515"/>
        </reference>
        <reference anchor="RFC7518" target="https://www.rfc-editor.org/info/rfc7518" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7518.xml">
          <front>
            <title>JSON Web Algorithms (JWA)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <date month="May" year="2015"/>
          </front>
          <seriesInfo name="RFC" value="7518"/>
          <seriesInfo name="DOI" value="10.17487/RFC7518"/>
        </reference>
        <reference anchor="RFC8037" target="https://www.rfc-editor.org/info/rfc8037" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8037.xml">
          <front>
            <title>CFRG Elliptic Curve Diffie-Hellman (ECDH) and Signatures in JSON Object Signing and Encryption (JOSE)</title>
            <author fullname="I. Liusvaara" initials="I." surname="Liusvaara"/>
            <date month="January" year="2017"/>
          </front>
          <seriesInfo name="RFC" value="8037"/>
          <seriesInfo name="DOI" value="10.17487/RFC8037"/>
        </reference>
        <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC8259" target="https://www.rfc-editor.org/info/rfc8259" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8259.xml">
          <front>
            <title>The JavaScript Object Notation (JSON) Data Interchange Format</title>
            <author fullname="T. Bray" initials="T." role="editor" surname="Bray"/>
            <date month="December" year="2017"/>
          </front>
          <seriesInfo name="STD" value="90"/>
          <seriesInfo name="RFC" value="8259"/>
          <seriesInfo name="DOI" value="10.17487/RFC8259"/>
        </reference>
        <reference anchor="RFC8610" target="https://www.rfc-editor.org/info/rfc8610" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8610.xml">
          <front>
            <title>Concise Data Definition Language (CDDL): A Notational Convention to Express Concise Binary Object Representation (CBOR) and JSON Data Structures</title>
            <author fullname="H. Birkholz" initials="H." surname="Birkholz"/>
            <author fullname="C. Vigano" initials="C." surname="Vigano"/>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <date month="June" year="2019"/>
          </front>
          <seriesInfo name="RFC" value="8610"/>
          <seriesInfo name="DOI" value="10.17487/RFC8610"/>
        </reference>
        <reference anchor="RFC8615" target="https://www.rfc-editor.org/info/rfc8615" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8615.xml">
          <front>
            <title>Well-Known Uniform Resource Identifiers (URIs)</title>
            <author fullname="M. Nottingham" initials="M." surname="Nottingham"/>
            <date month="May" year="2019"/>
          </front>
          <seriesInfo name="RFC" value="8615"/>
          <seriesInfo name="DOI" value="10.17487/RFC8615"/>
        </reference>
        <reference anchor="RFC8725" target="https://www.rfc-editor.org/info/rfc8725" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8725.xml">
          <front>
            <title>JSON Web Token Best Current Practices</title>
            <author fullname="Y. Sheffer" initials="Y." surname="Sheffer"/>
            <author fullname="D. Hardt" initials="D." surname="Hardt"/>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <date month="February" year="2020"/>
          </front>
          <seriesInfo name="BCP" value="225"/>
          <seriesInfo name="RFC" value="8725"/>
          <seriesInfo name="DOI" value="10.17487/RFC8725"/>
        </reference>
        <reference anchor="RFC8927" target="https://www.rfc-editor.org/info/rfc8927" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8927.xml">
          <front>
            <title>JSON Type Definition</title>
            <author fullname="U. Carion" initials="U." surname="Carion"/>
            <date month="November" year="2020"/>
          </front>
          <seriesInfo name="RFC" value="8927"/>
          <seriesInfo name="DOI" value="10.17487/RFC8927"/>
        </reference>
        <reference anchor="RFC9110" target="https://www.rfc-editor.org/info/rfc9110" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9110.xml">
          <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"/>
          </front>
          <seriesInfo name="STD" value="97"/>
          <seriesInfo name="RFC" value="9110"/>
          <seriesInfo name="DOI" value="10.17487/RFC9110"/>
        </reference>
        <reference anchor="RFC9111" target="https://www.rfc-editor.org/info/rfc9111" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9111.xml">
          <front>
            <title>HTTP Caching</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"/>
          </front>
          <seriesInfo name="STD" value="98"/>
          <seriesInfo name="RFC" value="9111"/>
          <seriesInfo name="DOI" value="10.17487/RFC9111"/>
        </reference>
        <reference anchor="RFC9562" target="https://www.rfc-editor.org/info/rfc9562" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9562.xml">
          <front>
            <title>Universally Unique IDentifiers (UUIDs)</title>
            <author fullname="K. Davis" initials="K." surname="Davis"/>
            <author fullname="B. Peabody" initials="B." surname="Peabody"/>
            <author fullname="P. Leach" initials="P." surname="Leach"/>
            <date month="May" year="2024"/>
          </front>
          <seriesInfo name="RFC" value="9562"/>
          <seriesInfo name="DOI" value="10.17487/RFC9562"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC7519" target="https://www.rfc-editor.org/info/rfc7519" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7519.xml">
          <front>
            <title>JSON Web Token (JWT)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <date month="May" year="2015"/>
          </front>
          <seriesInfo name="RFC" value="7519"/>
          <seriesInfo name="DOI" value="10.17487/RFC7519"/>
        </reference>
        <reference anchor="RFC7643" target="https://www.rfc-editor.org/info/rfc7643" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7643.xml">
          <front>
            <title>System for Cross-domain Identity Management: Core Schema</title>
            <author fullname="P. Hunt" initials="P." role="editor" surname="Hunt"/>
            <author fullname="K. Grizzle" initials="K." surname="Grizzle"/>
            <author fullname="E. Wahlstroem" initials="E." surname="Wahlstroem"/>
            <author fullname="C. Mortimore" initials="C." surname="Mortimore"/>
            <date month="September" year="2015"/>
          </front>
          <seriesInfo name="RFC" value="7643"/>
          <seriesInfo name="DOI" value="10.17487/RFC7643"/>
        </reference>
        <reference anchor="RFC8288" target="https://www.rfc-editor.org/info/rfc8288" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8288.xml">
          <front>
            <title>Web Linking</title>
            <author fullname="M. Nottingham" initials="M." surname="Nottingham"/>
            <date month="October" year="2017"/>
          </front>
          <seriesInfo name="RFC" value="8288"/>
          <seriesInfo name="DOI" value="10.17487/RFC8288"/>
        </reference>
        <reference anchor="VC-DATA-MODEL-2" target="https://www.w3.org/TR/vc-data-model-2.0/">
          <front>
            <title>Verifiable Credentials Data Model v2.0</title>
            <author>
              <organization>W3C Verifiable Credentials Working Group</organization>
            </author>
            <date year="2025" month="May" day="15"/>
          </front>
        </reference>
        <reference anchor="UAX9" target="https://www.unicode.org/reports/tr9/">
          <front>
            <title>Unicode Standard Annex #9: Unicode Bidirectional Algorithm</title>
            <author>
              <organization>The Unicode Consortium</organization>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="GHG-PROTOCOL" target="https://ghgprotocol.org/corporate-standard">
          <front>
            <title>The Greenhouse Gas Protocol: A Corporate Accounting and Reporting Standard (Revised Edition)</title>
            <author>
              <organization>World Resources Institute and World Business Council for Sustainable Development</organization>
            </author>
            <date year="2004"/>
          </front>
        </reference>
        <reference anchor="GSF-SCI" target="https://sci.greensoftware.foundation/">
          <front>
            <title>Software Carbon Intensity (SCI) Specification (standardized as ISO/IEC 21031:2024)</title>
            <author>
              <organization>Green Software Foundation</organization>
            </author>
            <date year="2024"/>
          </front>
        </reference>
        <reference anchor="RFC9547" target="https://www.rfc-editor.org/info/rfc9547" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9547.xml">
          <front>
            <title>Report from the IAB Workshop on Environmental Impact of Internet Applications and Systems, 2022</title>
            <author fullname="J. Arkko" initials="J." surname="Arkko"/>
            <author fullname="C. S. Perkins" initials="C. S." surname="Perkins"/>
            <author fullname="S. Krishnan" initials="S." surname="Krishnan"/>
            <date month="February" year="2024"/>
          </front>
          <seriesInfo name="RFC" value="9547"/>
          <seriesInfo name="DOI" value="10.17487/RFC9547"/>
        </reference>
        <reference anchor="EU-CSRD" target="https://eur-lex.europa.eu/eli/dir/2022/2464/oj">
          <front>
            <title>Directive (EU) 2022/2464 as regards corporate sustainability reporting (CSRD)</title>
            <author>
              <organization>European Parliament and Council</organization>
            </author>
            <date year="2022" month="December"/>
          </front>
        </reference>
        <reference anchor="CARBON-TXT" target="https://carbontxt.org/">
          <front>
            <title>carbon.txt: A TOML convention for discovering an origin's sustainability disclosures</title>
            <author>
              <organization>Green Web Foundation</organization>
            </author>
            <date year="2026"/>
          </front>
        </reference>
        <reference anchor="ESRS-E1" target="https://eur-lex.europa.eu/eli/reg_del/2023/2772/oj">
          <front>
            <title>Commission Delegated Regulation (EU) 2023/2772 supplementing Directive 2013/34/EU as regards sustainability reporting standards (ESRS; Annex I, ESRS E1 Climate change)</title>
            <author>
              <organization>European Commission</organization>
            </author>
            <date year="2023" month="July"/>
          </front>
        </reference>
        <reference anchor="EU-ESPR" target="https://eur-lex.europa.eu/eli/reg/2024/1781/oj">
          <front>
            <title>Regulation (EU) 2024/1781 establishing a framework for the setting of ecodesign requirements for sustainable products (ESPR; Digital Product Passport)</title>
            <author>
              <organization>European Parliament and Council</organization>
            </author>
            <date year="2024" month="June"/>
          </front>
        </reference>
        <reference anchor="RFC9116" target="https://www.rfc-editor.org/info/rfc9116" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9116.xml">
          <front>
            <title>A File Format to Aid in Security Vulnerability Disclosure</title>
            <author fullname="E. Foudil" initials="E." surname="Foudil"/>
            <author fullname="Y. Shafranovich" initials="Y." surname="Shafranovich"/>
            <date month="April" year="2022"/>
          </front>
          <seriesInfo name="RFC" value="9116"/>
          <seriesInfo name="DOI" value="10.17487/RFC9116"/>
        </reference>
        <reference anchor="RFC7326" target="https://www.rfc-editor.org/info/rfc7326" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7326.xml">
          <front>
            <title>Energy Management Framework</title>
            <author fullname="J. Parello" initials="J." surname="Parello"/>
            <author fullname="B. Claise" initials="B." surname="Claise"/>
            <author fullname="B. Schoening" initials="B." surname="Schoening"/>
            <author fullname="J. Quittek" initials="J." surname="Quittek"/>
            <date month="September" year="2014"/>
          </front>
          <seriesInfo name="RFC" value="7326"/>
          <seriesInfo name="DOI" value="10.17487/RFC7326"/>
        </reference>
        <reference anchor="RFC7033" target="https://www.rfc-editor.org/info/rfc7033" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7033.xml">
          <front>
            <title>WebFinger</title>
            <author fullname="P. Jones" initials="P." surname="Jones"/>
            <author fullname="G. Salgueiro" initials="G." surname="Salgueiro"/>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Smarr" initials="J." surname="Smarr"/>
            <date month="September" year="2013"/>
          </front>
          <seriesInfo name="RFC" value="7033"/>
          <seriesInfo name="DOI" value="10.17487/RFC7033"/>
        </reference>
        <reference anchor="RFC8414" target="https://www.rfc-editor.org/info/rfc8414" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8414.xml">
          <front>
            <title>OAuth 2.0 Authorization Server Metadata</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <date month="June" year="2018"/>
          </front>
          <seriesInfo name="RFC" value="8414"/>
          <seriesInfo name="DOI" value="10.17487/RFC8414"/>
        </reference>
        <reference anchor="RFC6973" target="https://www.rfc-editor.org/info/rfc6973" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6973.xml">
          <front>
            <title>Privacy Considerations for Internet Protocols</title>
            <author fullname="A. Cooper" initials="A." surname="Cooper"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <author fullname="B. Aboba" initials="B." surname="Aboba"/>
            <author fullname="J. Peterson" initials="J." surname="Peterson"/>
            <author fullname="J. Morris" initials="J." surname="Morris"/>
            <author fullname="M. Hansen" initials="M." surname="Hansen"/>
            <author fullname="R. Smith" initials="R." surname="Smith"/>
            <date month="July" year="2013"/>
          </front>
          <seriesInfo name="RFC" value="6973"/>
          <seriesInfo name="DOI" value="10.17487/RFC6973"/>
        </reference>
        <reference anchor="RFC7351" target="https://www.rfc-editor.org/info/rfc7351" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7351.xml">
          <front>
            <title>A Media Type for XML Patch Operations</title>
            <author fullname="E. Wilde" initials="E." surname="Wilde"/>
            <date month="August" year="2014"/>
          </front>
          <seriesInfo name="RFC" value="7351"/>
          <seriesInfo name="DOI" value="10.17487/RFC7351"/>
        </reference>
        <reference anchor="RFC7903" target="https://www.rfc-editor.org/info/rfc7903" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7903.xml">
          <front>
            <title>Windows Image Media Types</title>
            <author fullname="S. Leonard" initials="S." surname="Leonard"/>
            <date month="September" year="2016"/>
          </front>
          <seriesInfo name="RFC" value="7903"/>
          <seriesInfo name="DOI" value="10.17487/RFC7903"/>
        </reference>
        <reference anchor="RFC8351" target="https://www.rfc-editor.org/info/rfc8351" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8351.xml">
          <front>
            <title>The PKCS #8 EncryptedPrivateKeyInfo Media Type</title>
            <author fullname="S. Leonard" initials="S." surname="Leonard"/>
            <date month="June" year="2018"/>
          </front>
          <seriesInfo name="RFC" value="8351"/>
          <seriesInfo name="DOI" value="10.17487/RFC8351"/>
        </reference>
        <reference anchor="RFC9230" target="https://www.rfc-editor.org/info/rfc9230" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9230.xml">
          <front>
            <title>Oblivious DNS over HTTPS</title>
            <author fullname="E. Kinnear" initials="E." surname="Kinnear"/>
            <author fullname="P. McManus" initials="P." surname="McManus"/>
            <author fullname="T. Pauly" initials="T." surname="Pauly"/>
            <author fullname="T. Verma" initials="T." surname="Verma"/>
            <author fullname="C.A. Wood" initials="C.A." surname="Wood"/>
            <date month="June" year="2022"/>
          </front>
          <seriesInfo name="RFC" value="9230"/>
          <seriesInfo name="DOI" value="10.17487/RFC9230"/>
        </reference>
        <reference anchor="RFC5198" target="https://www.rfc-editor.org/info/rfc5198" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5198.xml">
          <front>
            <title>Unicode Format for Network Interchange</title>
            <author fullname="J. Klensin" initials="J." surname="Klensin"/>
            <author fullname="M. Padlipsky" initials="M." surname="Padlipsky"/>
            <date month="March" year="2008"/>
          </front>
          <seriesInfo name="RFC" value="5198"/>
          <seriesInfo name="DOI" value="10.17487/RFC5198"/>
        </reference>
        <reference anchor="RFC2277" target="https://www.rfc-editor.org/info/rfc2277" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2277.xml">
          <front>
            <title>IETF Policy on Character Sets and Languages</title>
            <author fullname="H. Alvestrand" initials="H." surname="Alvestrand"/>
            <date month="January" year="1998"/>
          </front>
          <seriesInfo name="BCP" value="18"/>
          <seriesInfo name="RFC" value="2277"/>
          <seriesInfo name="DOI" value="10.17487/RFC2277"/>
        </reference>
        <reference anchor="RFC5890" target="https://www.rfc-editor.org/info/rfc5890" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5890.xml">
          <front>
            <title>Internationalized Domain Names for Applications (IDNA): Definitions and Document Framework</title>
            <author fullname="J. Klensin" initials="J." surname="Klensin"/>
            <date month="August" year="2010"/>
          </front>
          <seriesInfo name="RFC" value="5890"/>
          <seriesInfo name="DOI" value="10.17487/RFC5890"/>
        </reference>
        <reference anchor="RFC9457" target="https://www.rfc-editor.org/info/rfc9457" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9457.xml">
          <front>
            <title>Problem Details for HTTP APIs</title>
            <author fullname="M. Nottingham" initials="M." surname="Nottingham"/>
            <author fullname="E. Wilde" initials="E." surname="Wilde"/>
            <author fullname="S. Dalal" initials="S." surname="Dalal"/>
            <date month="July" year="2023"/>
          </front>
          <seriesInfo name="RFC" value="9457"/>
          <seriesInfo name="DOI" value="10.17487/RFC9457"/>
        </reference>
      </references>

<section anchor="worked-example-a-live-deployment">
      <name>Worked Example: A Live Deployment</name>
      <t>This appendix walks through one complete deployment of this specification, from figures to verified retrieval. Hostnames are illustrative.</t>
      <ol spacing="normal" type="1"><li>
          <t><strong>Figures.</strong> A small service on a hosted platform has no wall-plug metering available to it, so it takes a constant average draw for its container (3 W), multiplies by the hours in the completed calendar month, and converts to emissions with the grid intensity published for its region (373 gCO2e/kWh). Because the draw is an assumption and the conversion is a model, <tt>measurement-method</tt> is <tt>third-party-modeled</tt>, and the methodology page states the formula, the basis of the assumed draw, the intensity source, and what is not covered.</t>
        </li>
        <li>
          <t><strong>Declaration.</strong> The publisher generates the object for the last completed month, with <tt>target</tt> an identifier of the service and <tt>target-type</tt> <tt>service</tt>, <tt>capabilities</tt> <tt>extended</tt> (it also serves <tt>?period=&lt;year&gt;&amp;granularity=monthly</tt>), a <tt>disclosure-uri</tt>, and a <tt>verifiable-attestation-uri</tt>. The platform publishes no declaration of its own, so the object carries no <tt>upstream</tt> member and the methodology page says so; were one published, <tt>upstream</tt> would name it with <tt>role</tt> <tt>hosting</tt>.</t>
        </li>
        <li>
          <t><strong>Signing.</strong> At generation time the publisher serializes the object, signs those bytes with an Ed25519 key (<tt>alg</tt> <tt>EdDSA</tt>, <tt>cty</tt> <tt>sustainability-data+json</tt>, the public key carried as <tt>jwk</tt>, so that verification needs nothing but the declaration), and inserts the result as <tt>signed</tt>. The same happens for every object of the monthly array.</t>
        </li>
        <li>
          <t><strong>Serving.</strong> The declaration is served at <tt>/.well-known/sustainability-data</tt> over HTTPS with <tt>Content-Type: application/sustainability-data+json</tt>, <tt>Cache-Control: max-age=3600</tt>, an <tt>ETag</tt>, and <tt>Access-Control-Allow-Origin: *</tt>; <tt>HEAD</tt> returns the same header fields; other methods receive <tt>405</tt>. The signature travels inside the body, so an edge cache that serves a stale or re-encoded copy cannot separate the two.</t>
        </li>
        <li>
          <t><strong>Attestation.</strong> An issuer, having reviewed the methodology and the figures, issues a verifiable credential <xref target="VC-DATA-MODEL-2"/> and signs it with a key it publishes; the credential is served at the <tt>verifiable-attestation-uri</tt>. In this deployment its <tt>credentialSubject</tt> carries the derivation model, its constants and its formulas, from which every period's figures follow, so that a consumer can tell what exactly was attested; an issuer attesting the figures of one period instead carries a copy of that declaration. Where the issuer is not independent of the publisher, as here, the credential says so, and a consumer records the attestation as no stronger than that relationship allows. This document does not constrain the credential format, so an issuer using another arrangement states it in its own profile.</t>
        </li>
        <li>
          <t><strong>Retrieval.</strong> A consumer fetches the declaration, validates it, verifies <tt>signed</tt> with the key in the JOSE Header, pinned from an earlier retrieval so that a change of signer is detectable, fetches the credential, verifies its signature against the issuer's key, and recomputes the verified payload's figures from the credential's model. It records: attributed to the origin; integrity verified; attested by that issuer; accuracy unknown.</t>
        </li>
        <li>
          <t><strong>Static variant.</strong> A publisher on static hosting produces the same object with an offline tool that signs and writes one file, and uploads it; nothing else in this appendix changes.</t>
        </li>
      </ol>
    </section>
    <section anchor="implementations">
      <name>Implementations</name>
      <ul empty="true">
        <li>
          <t>[Note to the RFC Editor: please remove this appendix before publication.]</t>
        </li>
      </ul>
      <t>Three open-source implementations, all BSD-3-Clause licensed and maintained by the author, implement this revision: the npm package <tt>sustainability-wellknown-publisher</tt>, a library and command-line tool that generates, signs, and serves declarations; the npm package <tt>sustainability-wellknown-consumer</tt>, a library and command-line tool that retrieves, validates, verifies, and walks upstream declarations; and a gateway that relays declarations for third-party subjects and publishes its own signed and attested declaration. All three are in the repository <eref target="https://github.com/andreibesleaga/rfc-sustainability-wellknown">https://github.com/andreibesleaga/rfc-sustainability-wellknown</eref>. The gateway is deployed at <eref target="https://sustainability.up.railway.app/">https://sustainability.up.railway.app/</eref>, which is the live form of the deployment described in Appendix A.</t>
    </section>
    <section anchor="changelog">
      <name>Changelog</name>
      <ul empty="true">
        <li>
          <t>[Note to the RFC Editor: please remove this appendix before publication.]</t>
        </li>
      </ul>
      <section anchor="since-06">
        <name>Since -06</name>
        <ul spacing="normal">
          <li>
            <t>One registered resource: the companion signature suffix "sustainability-data.jws" and the detached signature are withdrawn. The signature is now the <bcp14>OPTIONAL</bcp14> <tt>signed</tt> member embedded in each declaration object, a JWS over the object itself, typed by <tt>cty</tt> with the existing media type.</t>
          </li>
          <li>
            <t>The <tt>version</tt> member is removed; the media type identifies the format. Seven members are mandatory.</t>
          </li>
          <li>
            <t>Extension members are no longer top-level reverse-domain names: that form is withdrawn. They live under <tt>extensions</tt>, keyed by an absolute URI, in practice an "https" URI under the definer's control when the name was minted or a <tt>urn:uuid</tt> name, and the top-level member set is closed. A URI is used rather than a reverse-domain name because it is a collision-resistant name in the sense of <xref target="RFC7519"/>, Section 2, and because a name is an identifier compared as a string, so a later change of domain ownership does not change what an existing document means; the <tt>urn:uuid</tt> form exists for a definer that has no domain.</t>
          </li>
          <li>
            <t>New <bcp14>OPTIONAL</bcp14> <tt>upstream</tt> member linking to the declarations of providers a subject's figures derive from, with tenant-scoped upstream declarations and a bounded consumer comparison.</t>
          </li>
          <li>
            <t>A declaration object <bcp14>MUST</bcp14> carry at least one numeric metric or one evidence link; the conditions on the retrievability of the methodology resource are removed.</t>
          </li>
          <li>
            <t>Extended Query Parameters now specify the syntax in ABNF and the processing as a numbered procedure; a repeated parameter, or a <tt>period</tt> that is malformed or names no real calendar date, receives 400, while an unusable <tt>granularity</tt> is ignored and an unmatched <tt>target</tt> receives 404.</t>
          </li>
          <li>
            <t>The server-side array cap is removed in favor of a consumer-side bound.</t>
          </li>
          <li>
            <t>The <tt>Accept</tt> header field and the processing of <tt>Content-Type</tt> values are specified separately. The <tt>X-Content-Type-Options</tt> recommendation is removed. Access control is stated to be outside the scope of this document, and a server <bcp14>MAY</bcp14> restrict access. The duplicate-member-name rule now binds a consumer whose parser exposes duplicates, and one whose parser does not applies its resolution consistently and states which it is. The tolerance rules are stated to be exhaustive.</t>
          </li>
          <li>
            <t>Text that stated that publication is voluntary, that referred to IETF or IRTF groups, or that explained design rationale is removed; Security Considerations is condensed; a worked deployment example is added as an appendix.</t>
          </li>
          <li>
            <t>Verification of <tt>signed</tt> is specified: a consumer rejects <tt>alg</tt> <tt>none</tt> or a MAC algorithm, an absent or foreign <tt>cty</tt>, and a <tt>crit</tt> parameter it does not understand, and treats the object as unverified when the payload is not a declaration object or when the payload's <tt>target</tt> or <tt>reporting-period</tt> differs from the object's. Precedence between the payload and the surrounding members is conditional on how far the key is trusted: a key obtained out of band, pinned from an earlier retrieval, or validated through an <tt>x5c</tt> chain to an already-trusted anchor gives the payload precedence, while a key trusted no further than the declaration that carries it leaves the members served by the origin as the ones the consumer uses.</t>
          </li>
          <li>
            <t>The Basic response is no longer required to be a single JSON object, and the rules that it <bcp14>MUST</bcp14> cover the most recently completed reporting period and the full declared reporting subject are gone; what remains is the Partial Knowledge rule that figures covering part of a declared subject <bcp14>MUST NOT</bcp14> be presented as the whole.</t>
          </li>
          <li>
            <t>A consumer that follows a redirect to another origin <bcp14>MUST NOT</bcp14> record the result as a declaration of the origin it queried unless the object's <tt>target</tt> names that origin.</t>
          </li>
          <li>
            <t>A defective <tt>capabilities</tt> value is now read as <tt>basic</tt>, rather than disregarded in favor of observed server behavior; the tolerance rules otherwise apply to <bcp14>OPTIONAL</bcp14> members only.</t>
          </li>
          <li>
            <t>The anti-fingerprinting noise rules are tightened: noise <bcp14>MUST</bcp14> also be consistent across annualized and otherwise derived members, and the methodology document <bcp14>MUST</bcp14> state that noise is applied and bound its magnitude, where -06 only <bcp14>SHOULD</bcp14> have disclosed it.</t>
          </li>
          <li>
            <t>The separate Interoperability and Deployment sections and the "Alternatives Considered" discussion are removed; the deployment material that remains is in Operational Considerations, and an Implementations appendix, marked for removal before publication, records the three reference implementations.</t>
          </li>
          <li>
            <t>Two requirements a -06 implementer must act on: a publisher <bcp14>MUST NOT</bcp14> emit a numeric value that a receiver cannot represent as a finite number, and a consumer that promotes an <tt>x5c</tt>-validated key <bcp14>MUST</bcp14> require that the certificate identify the publisher.</t>
          </li>
          <li>
            <t>Rules stated for the first time in this revision: a server that honors <tt>target</tt> <bcp14>MUST</bcp14> publish the set of prefixes it honors in the document identified by <tt>methodology-uri</tt>, and <bcp14>SHOULD</bcp14> make an unmatched value indistinguishable from a no-data response; a declaration carries at most one <tt>verifiable-attestation-uri</tt>, and a subject with more than one attestation links an index of them from <tt>disclosure-uri</tt>; where scope members accompany <tt>carbon-footprint</tt> for the same period they <bcp14>SHOULD</bcp14> account for it; and pinning a key establishes continuity of authorship, not identity, which is what the precedence rule rests on.</t>
          </li>
        </ul>
      </section>
      <section anchor="earlier-revisions">
        <name>Earlier revisions</name>
        <t>-06 (2026-09-10) added mandatory HTTPS, the dedicated media type, and a detached signature; -05 (2026-07-28) added Internationalization Considerations and format-agnostic disclosure links; -04 renamed the suffix to "sustainability-data" and added <tt>target-type</tt>; -03 reworked the data model around member omission and a mandatory <tt>target</tt>; -00 to -02 were the first revisions under the present name; the document replaces draft-besleaga-green-sustainability-wellknown, whose revisions -00 to -05 preceded it.</t>
      </section>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+29+3Lb2JU3+j+fAqP5vmlJISjqaluapKOW1d3KtC9jyelk
Ol1DiIQkxCDAAKBkxtXzLOdZzpOddd17bQCU7E7OV3WqTirVpkhc9mXtdV+/
FcfxoMmaPD2ONq7u0uirelk3SVYk11meNat4ljTJV9GPaZ7H/1GUD0X0/t3F
xiC5vq7Se7jlMrz6JVzduXhWTotkDi+YVclNE1+ndZ4mt0ncetMD3PYB74rH
zwYPZfXhtiqXi+PoopilixT+UzTR5fJ6ntV1VhaDadKkt2W1Oo6y4qYc1O6X
ZrVI8Ut31yBbVMdRU8Hr9sbjF+O9wYd0BS+YHQ+iKIbnN2lVpE38EodHX4Wz
oq/Okuq6LKLT6bRcFk1W3NK34VTpq/MirW5X0fnNTTbN0mK6GgySZXNXVvy2
rKiPo9NR9HoUfSMLAd9HEa/QaTGr0ix6nU3LPEnDK8rqNimyvycNzDFYFfo1
nSdZfhwl9ICRrvHvszRNR3DnYFCU1RzuvU9xHO++Pdvb3X0hH/f3993HF8+P
5OPh3v6BfDx6vv/cf9Rrnx2MD93HF/v68XD30H/U256P95/px91n+tzne4f6
sOdHu2P/UZ/w/Nme+/hiT5/wYtddCx939ePh0d7xYIDUEM4UhuGGfHSw7979
nAb3x7P45enVafzqzcvzH+K9Y1pNPRF/TKvsJkuu8zQ6q1Jc7CzJ64jI/FU5
S/Pofm803qB7/C7j/2Lcr+Pox/2zaM1DfgQSBzqKvkMy57cm1W3aHEd3TbOo
j3d2Hh4eRg/7uH07V+927qd0GOM5vjeG1+7QTfAdjHRvvHcYjw/j3UP48v3p
n16E83hfAEXN0uiyAQJJqhkQWpF+jP71xXGkP32TzbIqnSJ1JXl0msPZypq7
+SNzQ3ahd5+VRV1WTbacr53Jki+l6VTpAq6ud5rqBc7iu++/i9++e3P15uzN
D+HA8R3fVWla3JXLGj4mdfS2KpsSzgecFnhtBQ+CFTAHE89A9I5egH+5KW++
S++zOp1F57MMZ7n12LaVVY4PqctlNU1rOG01jGgJ78GH86/fLOusSOsaBrEs
plkeAd15zgGb/TK9T/NyMdcj2l6U27vbhcyFFmWqk4lrGXOwweMDXKnLb+PL
s4twkS7Lm+YhqVJlUsjRiho4V7QJ125Fl4t0ChQ4JdYRberTs7/DYsCCXly+
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
DpU+WFL9P/byQXbXMwEA

-->

</rfc>
