<?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.18 (Ruby 3.3.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-lukianets-open-ethics-transparency-protocol-06" category="exp" tocDepth="3" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.22.0 -->
  <front>
    <title abbrev="OETP">Open Ethics Transparency Protocol</title>
    <seriesInfo name="Internet-Draft" value="draft-lukianets-open-ethics-transparency-protocol-06"/>
    <author initials="N." surname="Lukianets" fullname="Nikita Lukainets">
      <organization>Open Ethics Initiative</organization>
      <address>
        <email>n.lukianets@openethics.ai</email>
      </address>
    </author>
    <date year="2024" month="August" day="03"/>
    <area>General</area>
    <workgroup>dispatch</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 46?>

<t>The Open Ethics Transparency Protocol (OETP) is an application-level protocol for publishing and accessing ethical Disclosures of IT Products and their Components. The Protocol is based on HTTP exchange of information about the ethical "postures", provided in an open and standardized format. The scope of the Protocol covers Disclosures for systems such as Software as a Service (SaaS) Applications, Software Applications, Software Components, Application Programming Interfaces (API), Automated Decision-Making (ADM) systems, and systems using Artificial Intelligence (AI). OETP aims to bring more transparent, predictable, and safe environments for the end-users. The OETP Disclosure Schema is an extensible JSON-based format.</t>
    </abstract>
  </front>
  <middle>
    <?line 50?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The Open Ethics Transparency Protocol (OETP or Protocol) describes the creation and exchange of voluntary ethics Disclosures for IT products. It is brought as a solution to increase the transparency of how IT products are built and deployed. This document provides details on how disclosures for data collection and data processing practice are formed, stored, validated, and exchanged in a standardized and open format.</t>
      <t>OETP provides facilities for:</t>
      <ul spacing="normal">
        <li>
          <t><strong>Informed consumer choices</strong> : End-users able to make informed choices based on their own ethical preferences and product disclosure.</t>
        </li>
        <li>
          <t><strong>Industrial-scale monitoring</strong> : Discovery of best and worst practices within market verticals, technology stacks, and product value offerings.</t>
        </li>
        <li>
          <t><strong>Legally-agnostic guidelines</strong> : Suggestions for developers and product-owners, formulated in factual language, which are legally-agnostic and could be easily transformed into product requirements and safeguards.</t>
        </li>
        <li>
          <t><strong>Iterative improvement</strong> : Digital products, specifically, the ones powered by artificial intelligence could receive nearly real-time feedback on how their performance and ethical posture could be improved to cover security, privacy, diversity, fairness, power balance, non-discrimination, and other requirements.</t>
        </li>
        <li>
          <t><strong>Labeling and certification</strong> : Mapping to existing and future regulatory initiatives and standards.</t>
        </li>
      </ul>
      <t>The Open Ethics Transparency Protocol (OETP) is an application-level protocol for publishing and accessing ethical Disclosures of IT products and their components. The Protocol is based on HTTP exchange of information about the ethical "postures", provided in an open and standardized format. The scope of the Protocol covers Disclosures for systems such as Software as a Service (SaaS) Applications, Software Applications, Software Components, Application Programming Interfaces (API), Automated Decision-Making (ADM) systems, and systems using Artificial Intelligence (AI). OETP aims to bring more transparent, predictable, and safe environments for the end-users. The OETP Disclosure Schema is an extensible JSON-based format.</t>
    </section>
    <section anchor="requirement-levels">
      <name>Requirement Levels</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

</section>
    <section anchor="terminology">
      <name>Terminology</name>
      <dl>
        <dt>Disclosure:</dt>
        <dd>
          <t>Disclosure (Ethics Disclosure, or self-disclosure) is application-specific information about the data collection, data processing, and decision-making practices of a Product, provided by the Product Vendor (an individual developer or an organization).</t>
        </dd>
        <dt>Disclosure Feed:</dt>
        <dd>
          <t>A historical sequence of Disclosures, made for a specific Product.</t>
        </dd>
        <dt>Disclosure Identity Provider:</dt>
        <dd>
          <t>The automated Disclosure processing is enabled by requests to both the Open Ethics Disclosure database powered by Disclosure Identity Providers (DIP) and the Product's OETP Disclosure file, stored in the product's website root following OETP specification. DIP serves as a service point to generate and retrieve generated disclosures.</t>
        </dd>
        <dt>OETP Disclosure Schema:</dt>
        <dd>
          <t>A predefined structure for Disclosure, supplied in the form of the JSON schema.</t>
        </dd>
        <dt>Transparency Manifest:</dt>
        <dd>
          <t>A JSON file, typically named <tt>OETP.json</tt> or <tt>transparency.json</tt>, storing the Disclosure using the defined OETP Disclosure Schema.</t>
        </dd>
        <dt>Vendor:</dt>
        <dd>
          <t>A legal person (an individual developer or an organization) that owns one or several end-user Products, or acts as a Supplier and provides Components for other Vendors.</t>
        </dd>
        <dt>Integrator:</dt>
        <dd>
          <t>A legal person (an individual developer or an organization) that deploys technology-powered services to the end-users based on Product(s) from third-party Vendors.</t>
        </dd>
        <dt>Product:</dt>
        <dd>
          <t>An IT system in the form of software, software as a service system, application, software component, application programming interface, or a physically embodied automated decision-making agent.</t>
        </dd>
        <dt>Component:</dt>
        <dd>
          <t>An IT system supplied by Vendor and integrated/embedded into end-user Products. Components themselves do not necessarily interface with end-users.</t>
        </dd>
        <dt>Upstream Component:</dt>
        <dd>
          <t>A Component that sends its outputs to the Product Downstream in the data processing chain. Disclosure for the Upstream Component is represented as a Child relative to the Disclosure node of the Downstream Product.</t>
        </dd>
        <dt>Downstream Component:</dt>
        <dd>
          <t>A Component that receives inputs from the Components Upstream in the data processing chain. Disclosure for the Downstream Component is represented as a Parent relative to the Disclosure node of the Upstream Component.</t>
        </dd>
        <dt>Automated Decision-Making (ADM):</dt>
        <dd>
          <t>Automated decision-making is the process of making a decision by automated means without any human involvement. These decisions can be based on factual data, as well as on digitally created profiles or inferred data.</t>
        </dd>
        <dt>Validation:</dt>
        <dd>
          <t>A sequence of automated software-based checks to control validity and security elements in the OETP Disclosure.</t>
        </dd>
        <dt>Auditor:</dt>
        <dd>
          <t>A third-party legal person trusted to perform Verification checks and to issue Verification Proofs.</t>
        </dd>
        <dt>Auditing software:</dt>
        <dd>
          <t>An automated software-based tool authorized to perform Verification checks and to issue Verification Proofs.</t>
        </dd>
        <dt>Verification:</dt>
        <dd>
          <t>A procedure to control the correspondence of the elements in the OETP Disclosure and the actual data processing and data collection practices of the Vendors.</t>
        </dd>
        <dt>Verification Proof:</dt>
        <dd>
          <t>A result of the formal Disclosure Verification procedure presented to a requestor.</t>
        </dd>
        <dt>Chaining:</dt>
        <dd>
          <t>A process of combining Disclosures of individual Components into a composite high-level Disclosure for a Product.</t>
        </dd>
        <dt>Label:</dt>
        <dd>
          <t>User-facing graphical illustrations and textual descriptions of the Product that facilitate understanding of the values and risks the Product carries.</t>
        </dd>
      </dl>
    </section>
    <section anchor="protocol-model">
      <name>Protocol Model</name>
      <t>The Disclosure creation and delivery consist of the two parts, starting from (I) the submission of the Disclosure form, chaining of the Suppliers' Disclosures, Signature of the disclosed information, and the delivery part (II) that first checks that the Disclosure is Valid, and then that the information specified in it is Verified by the third-parties. <xref target="_figure-disclosure-creation"/> shows disclosure creation steps.</t>
      <!-- <img src="../diagrams/images/disclosure-creation/disclosure-creation.svg" alt="Creation of the Disclosure"> -->

<section anchor="creation-of-disclosure">
        <name>Creation of Disclosure</name>
        <t>The initial Disclosure is created by filling out a standardized disclosure form (for example, see 1. <eref target="https://openethics.ai/label/">https://openethics.ai/label/</eref>). A Vendor representative, a Product Owner, or a Developer, <bcp14>MUST</bcp14> submit data-processing and data-collection information about the Product. The information about the end-point URL, as well as a contact email address, <bcp14>MUST</bcp14> be specified. Disclosure <bcp14>MAY</bcp14> also be created in a fully automated way as a part of the CI/CD DevOps pipeline. <xref target="_figure-disclosure-submission-basic"/> shows basic disclosure submission process.</t>
        <!-- <img src="../diagrams/images/disclosure-submission-basic/disclosure-submission-basic.svg" alt="Basic Disclosure Submission"> -->

<section anchor="cryptographic-signature">
          <name>Cryptographic Signature</name>
          <t>The Disclosure is organized into a predefined data schema and <bcp14>MUST</bcp14> be cryptographically signed by the Signature Generator (Open Ethics or federated providers) using standard SHA3-512 hash implementation. The integrity hash <bcp14>MUST</bcp14> be appended to a disclosure as the <tt>OETP.schema.integrity</tt> element.</t>
        </section>
        <section anchor="immutable-storage">
          <name>Immutable Storage</name>
          <t>Both the signature integrity hash and the Disclosure <bcp14>SHOULD</bcp14> be stored in the log-centric root database and <bcp14>MAY</bcp14> be mirrored by other distributed databases for redundancy and safety.</t>
        </section>
        <section anchor="visual-labeling">
          <name>Visual Labeling</name>
          <t>Open Ethics Label <bcp14>SHOULD</bcp14> be automatically generated by mirroring the submitted Disclosure into a set of graphical icons and simple human-readable descriptions. Additional Labels <bcp14>MAY</bcp14> be generated following successful third-party Verification and by mapping the regulatory requirements to Verified Disclosures.</t>
        </section>
      </section>
      <section anchor="access-to-disclosure">
        <name>Access to Disclosure</name>
        <section anchor="initial-request-to-a-disclosure-file">
          <name>Initial Request to a Disclosure file</name>
          <t>The most recent OETP file <bcp14>SHOULD</bcp14> be stored in the root of the Product's specified end-point URL, allowing requests to the OETP file from third-party domains. When establishing a Vendor relationship, the Integrator or a downstream Vendor <bcp14>MAY</bcp14> examine the Disclosure for their Components using the following HTTP request: <tt>GET https://testexample.com/oetp.json</tt>, where <em>testexample.com</em> is the URL of the Supplier's end-point.</t>
        </section>
        <section anchor="access-to-visual-trust-labels">
          <name>Access to Visual Trust Labels</name>
          <t>A Vendor <bcp14>SHOULD</bcp14> place a visual Label generated as a result of the Disclosure process in the Product informational materials (for example Marketing Materials, User Guides, Safety Instructions, Privacy Policy, Terms of Service, etc). The Label reflects the content of the Disclosure and <bcp14>SHOULD</bcp14> be displayed in any digital media by embedding a software widget. Visual labels in the print media <bcp14>SHOULD</bcp14> carry a visually distinguishable Integrity signature to enable manual Validation by the User.</t>
        </section>
        <section anchor="requirements-for-placement-of-integrity-signature-in-visual-label">
          <name>Requirements for placement of Integrity Signature in Visual Label</name>
          <ul spacing="normal">
            <li>
              <t><strong>Labels in the online digital media</strong> <bcp14>MUST</bcp14> be generated automatically based on the content of the Disclosure and <bcp14>MUST</bcp14> contain a URL allowing to check the complete Integrity hash and explore more detailed information about the Disclosure.</t>
            </li>
            <li>
              <t><strong>Labels in the offline media</strong> <bcp14>MUST</bcp14> be generated automatically based on the content of the Disclosure and should carry the first 10 digits of the corresponding Integrity hash.</t>
            </li>
          </ul>
        </section>
        <section anchor="conformity-assessment-marks">
          <name>Conformity assessment marks</name>
          <t>Based on the Verification performed for the OETP Disclosure file, the labels <bcp14>MAY</bcp14> include Conformity assessment marks, Certification marks, as well as marks showing adherence to certain standards. These marks <bcp14>MAY</bcp14> be generated and displayed automatically based on the Verification Proofs.</t>
        </section>
        <section anchor="accessibility-considerations">
          <name>Accessibility considerations</name>
          <t>Accessibility of the Labels for the visually impaired Users <bcp14>SHOULD</bcp14> be considered. The OETP Processing system <bcp14>MUST</bcp14> provide alternative forms of the Label so that text-to-speech tools could be used to narrate the Label without the lost of meaning.</t>
          <t>1) A Label <bcp14>MUST</bcp14> contain a title. Title could be either marked by the <tt>aria-label</tt> attribute for the narration software or be labeled by another content tag(s) present via <tt>aria-labelledby</tt> attribute, pointing to the ID(s) describing the label content.</t>
          <figure anchor="_figure-example-oel-snippet">
            <name>Example Label Snippet Content</name>
            <sourcecode type="HTML"><![CDATA[
<!-- Open Ethics Label snippet: visible content -->
<a href="https://openethics.ai/label" target="_blank">
    <div id="label" aria-label="Open Ethics Label">
        <img src="/src/images/Open Ethics logo.svg" class="oesign svg" height="30" alt="Open Ethics Logo" role="img" aria-hidden="true">
        <!-- Dynamic Content of the Open Ethics Label goes here -->
    </div>
</a>
]]></sourcecode>
          </figure>
          <t>2) Every icon that is present in the visual Label <bcp14>MUST</bcp14> contain a title, describing the property illustrated by the icon. A more extended description <bcp14>MAY</bcp14> be provided when necessary. The following patterns are suggested:</t>
          <ul spacing="normal">
            <li>
              <t>Pattern for images embedded using SVG tags: <tt>&lt;img&gt; + role="img" + alt="[title text here]"</tt> OR <tt>&lt;img&gt; + role="img" + aria-label="[title text here]"</tt></t>
            </li>
            <li>
              <t>Pattern for images embedded using IMG tags: <tt>&lt;svg&gt; + role="img" + &lt;title&gt; + &lt;desc&gt; + aria-labelledby="[ID]"</tt></t>
            </li>
          </ul>
          <figure anchor="_figure-example-oel-icon-label-source-open">
            <name>Example of the SVG icon with ARIA attributes for Accessibility</name>
            <sourcecode type="XML"><![CDATA[
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg" role="img" aria-labelledby="iconOpenSourceCodeTitle iconOpenSourceCodeDescription">
<title id="iconOpenSourceCodeTitle">Algorithms and code libraries: Open Source Code</title>
<desc id="iconOpenSourceCodeDescription">This product/component has disclosed that it mainly uses the Open Source Code as a part of its codebase.</desc>
<circle cx="8" cy="8" r="7" fill="#FFFFFF" class="branding-accent" />
<path d="M10.56 4.83221C9.70667 4.08053 8.64 3.75839 7.46667 3.97315C5.44 4.18792 3.84 6.01342 3.84 8.16107V8.26845C3.84 8.37584 3.84 8.48322 3.84 8.5906C3.94666 9.98658 4.8 11.1678 6.08 11.9195C6.4 11.1678 6.61333 10.5235 6.82667 9.87919C6.18667 9.44966 5.86667 8.80537 5.86667 8.05369C5.86667 7.51678 6.08 7.08725 6.4 6.7651C7.14667 6.01342 8.21333 5.79866 9.06667 6.33557C9.81333 6.7651 10.1333 7.51678 10.1333 8.37584C10.0267 9.02013 9.70667 9.55704 9.17333 9.87919C9.38667 10.5235 9.70667 11.1678 9.92 11.9195C10.4533 11.5973 10.9867 11.1678 11.4133 10.6309C12.0533 9.77181 12.2667 8.69798 12.16 7.62416C12.0533 6.55033 11.52 5.47651 10.56 4.83221Z" fill="#333333" class="branding-main" />
<path d="M8 0C3.62667 0 0 3.54362 0 7.94631C0 12.349 3.62667 16 8 16C12.3733 16 16 12.4564 16 7.94631C16 3.43624 12.3733 0 8 0ZM9.92 12.8859C9.81333 12.8859 9.70667 12.9933 9.49333 12.8859C9.38667 12.8859 9.28 12.7785 9.17333 12.5638L8.10667 9.77181C8.10667 9.55705 8.21333 9.34228 8.42667 9.2349C8.85333 9.02013 9.06667 8.80537 9.17333 8.37584C9.17333 8.05369 9.17333 7.73154 8.96 7.51678C8.74667 7.19463 8.42667 6.97987 8.10667 6.97987C7.46667 6.97987 6.93333 7.30201 6.93333 7.94631C6.82667 8.48322 7.04 8.91275 7.57333 9.2349C7.89333 9.34228 8 9.55705 7.89333 9.87919L6.82667 12.6711C6.72 12.8859 6.61333 12.8859 6.61333 12.9933C6.61333 12.9933 6.50667 12.9933 6.4 12.9933C6.29333 12.9933 6.29333 12.9933 6.18667 12.9933C5.01333 12.5638 4.05333 11.7047 3.52 10.5235C2.98667 9.55705 2.88 8.80537 2.88 8.37584V8.26846C2.88 5.58389 4.8 3.43624 7.36 3.11409C10.1333 2.68456 12.5867 4.61745 13.12 7.30201C13.5467 9.66443 12.2667 12.0268 9.92 12.8859Z" fill="#333333" class="branding-main" />
</svg>
]]></sourcecode>
          </figure>
        </section>
      </section>
      <section anchor="verification-and-validation-of-disclosure">
        <name>Verification and Validation of Disclosure</name>
        <section anchor="automated-disclosure-processing">
          <name>Automated Disclosure processing</name>
          <t>The automated Disclosure processing is enabled by requests to both the Open Ethics Disclosure database powered by Disclosure Identity Providers and the Product's OETP Disclosure file.</t>
          <t>To allow efficient decentralization and access to the disclosures of autonomous systems, such as AI systems powered by trained machine learning models, the vendor (or a developer) <bcp14>MUST</bcp14> send requests to a Disclosure Identity Provider. Disclosures <bcp14>MAY</bcp14> be resolved using URIs. To satisfy the mentioned requirements for disclosure RI, it is proposed in <xref target="OETP-RI"/> to use the following formats:</t>
          <ul spacing="normal">
            <li>
              <t><tt>oetp://&lt;hash&gt;</tt> - Here integrity <tt>&lt;hash&gt;</tt> is the SHA3-512 generated during the disclosure process.</t>
            </li>
            <li>
              <t><tt>oetp://&lt;component&gt;@&lt;alias&gt;[:&lt;disclosure&gt;]</tt> - Here <tt>&lt;component&gt;</tt> is the ID assigned via Disclosure Identity Provider under its <tt>&lt;alias&gt;</tt> during the first disclosure.</t>
            </li>
            <li>
              <t><tt>oetp://&lt;domain&gt;[:&lt;disclosure&gt;]</tt> - For verified domains (Domain Validation), disclosure could be accessed using product's <tt>&lt;domain&gt;</tt> instead of <tt>&lt;component&gt;@&lt;alias&gt;</tt>.)</t>
            </li>
          </ul>
        </section>
        <section anchor="validation-of-vendor39s-disclosures">
          <name>Validation of Vendor's Disclosures</name>
          <t>The OETP Processing system <bcp14>MUST</bcp14> compare integrity hashes in the Open Ethics Disclosure database and entries that arrive as a result of the Disclosure Request response.</t>
        </section>
        <section anchor="verification-of-vendor39s-disclosures">
          <name>Verification of Vendor's Disclosures</name>
          <t>Every disclosure <bcp14>SHOULD</bcp14> be checked for the existence of the external Verification from Auditors for the entire Disclosures or one of the Disclosure elements.</t>
        </section>
        <section anchor="progressive-verification">
          <name>Progressive Verification</name>
          <t>To raise a level of trust in a Disclosure, a Vendor <bcp14>MAY</bcp14> decide to opt-in for a third-party Disclosure Verification. OETP suggests a Progressive Verification scheme where multiple independent external Verification Proofs COULD be issued by third parties to confirm the information specified in the Disclosure.</t>
          <t>The Progressive Verification applies to a whole Disclosure, or to specific elements of the Disclosure.</t>
          <t><xref target="_figure-disclosure-progressive-verification"/> displays a general scheme for Disclosure requests and responses.</t>
          <!-- <img src="../diagrams/images/disclosure-progressive-verification/disclosure-progressive-verification.svg" style="float: left; margin-right: 10px;" alt="Progressive Verification Scheme for Disclosures" /> -->

<t>The following elements <bcp14>MAY</bcp14> serve as sources for various kinds of Verification proofs:
* Qualified Auditor reports
* Qualified Vendor of Auditing software tests
* Certification Authority assessments
* Conformity assessments
* User Feedback
* Market Brokers
* Real-time Loggers</t>
        </section>
      </section>
      <section anchor="end-to-end-transparency-and-formation-of-the-composite-disclosure">
        <name>End-to-end transparency and formation of the composite Disclosure</name>
        <t>The IT industry is getting more mature with Vendors becoming more specialized. Surface-level transparency is not sufficient as supply chains are becoming more complex and distributed across various Components. The following steps <bcp14>MUST</bcp14> be satisfied for the end-to-end transparency:</t>
        <section anchor="open-supplier-policy">
          <name>Open Supplier Policy</name>
          <t>Every Integrator or a Vendor <bcp14>SHOULD</bcp14> disclose the information about their Suppliers (sub-processing Vendors), indicating the scope of the data processing in the Components they provide.</t>
          <t>If the Supplier information is not provided, Disclosure <bcp14>SHOULD</bcp14> contain information that a Vendor (Integrator) has not provided Supplier information.</t>
          <section anchor="first-party-components">
            <name>First-party Components</name>
            <t>For greater transparency, Vendors may decide to reveal Components even if they originate from themselves (first-party Components). For the first-party Component, the Supplier identity information <bcp14>SHOULD NOT</bcp14> be provided because it was already disclosed earlier.</t>
            <t>Required: (<xref target="component-information"/>) only</t>
          </section>
          <section anchor="third-party-components">
            <name>Third-party Components</name>
            <t>When disclosing Components originating from the third-party Vendors <bcp14>SHOULD</bcp14> provide both the Supplier identity information and Component information</t>
            <t>Required: (<xref target="supplier-identity"/>, <xref target="component-information"/>)</t>
          </section>
          <section anchor="elements-of-supplier-disclosure">
            <name>Elements of Supplier disclosure</name>
            <section anchor="supplier-identity">
              <name>Supplier identity</name>
              <ul spacing="normal">
                <li>
                  <t>Vendor Name</t>
                </li>
                <li>
                  <t>Vendor URL</t>
                </li>
                <li>
                  <t>Vendor ID</t>
                </li>
                <li>
                  <t>Vendor DPO Contact Email</t>
                </li>
              </ul>
            </section>
            <section anchor="component-information">
              <name>Component information</name>
              <ul spacing="normal">
                <li>
                  <t>Component Scope of use</t>
                </li>
                <li>
                  <t>Personal Data Being Processed by Component</t>
                </li>
                <li>
                  <t>Is a Safety Component (YES)/(NO)</t>
                </li>
                <li>
                  <t>Component URL (if different from the Vendor URL)</t>
                </li>
                <li>
                  <t>Component Disclosure URL (if different from the default <tt>Component URL/oetp.json</tt>)</t>
                </li>
                <li>
                  <t>Component DPO Contact (if different from Vendor DPO Contact Email)</t>
                </li>
              </ul>
            </section>
          </section>
        </section>
        <section anchor="request-for-supplier39s-disclosures">
          <name>Request for Supplier's Disclosures</name>
          <t>The OETP Processing system <bcp14>MUST</bcp14> send GET requests to the URLs of each Component to obtain their Disclosures. Based on the response to each Disclosure request, the OETP Processing system <bcp14>MUST</bcp14> specify which Components have Disclosures and which don't have Disclosures.</t>
          <t><xref target="_figure-disclosure-chaining-request"/> shows the process of how Disclosure Chaining requests and responses happen.</t>
          <!-- <img src="../diagrams/images/disclosure-chaining-request/disclosure-chaining-request.svg" alt="Disclosure Chaining: Request-Response"> -->

</section>
        <section anchor="disclosure-chaining">
          <name>Disclosure Chaining</name>
          <t>The same Request-response operation applies recursively for Components of the Components, for the Components of the Components of the Components, etc. It is proposed to view the supply chain as a tree-like hierarchical data structure, where the information about Components is assembled using Level Order Tree Traversal algorithm.</t>
          <t>In this tree:
* Node is a structure that contains the Component's Disclosure;
* Root is the top Node representing a Product's Disclosure information;
* Edge is the connection between one Node and another, representing the scope of the Data Processing by the Component.</t>
          <t><xref target="_figure-disclosure-chaining-tree"/> displays the order of the Disclosure Chaining with Level Order Tree Traversal algorithm.</t>
          <!-- <img src="../diagrams/images/disclosure-chaining-tree/disclosure-chaining-tree.svg" alt="Disclosure Chaining: Level Order Traversal"> -->

</section>
        <section anchor="generation-of-the-composite-disclosure">
          <name>Generation of the Composite Disclosure</name>
          <t>The current consensus from the user &amp; developer community suggests that Composite Disclosure should follow The "Weakest Link" model. According to this model, the risk that the Product is carrying should not be considered any less than the risk for each of the Components. A similar approach in dealing with software licenses has been successful by allowing to generate Software Bills of Materials (SBOMs) by providing package information in the <xref target="SPDX"/> files.</t>
          <t>Formally this approach could be illustrated with the use of a conjunction table for risk modeling (see <xref target="conjunction-table-risk-modeling"/>). The Truth Table for Logical AND operator below takes one risk factor and evaluates risk outcomes as High (H) or Low (L) for hypothetical Disclosure options of the Product(P) and its Component(C).</t>
          <table anchor="conjunction-table-risk-modeling">
            <name>Conjunction Table for Risk Modeling</name>
            <thead>
              <tr>
                <th align="center">Disclosed risk of P</th>
                <th align="center">Disclosed risk of  C</th>
                <th align="center">Composite P &amp; C</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="center">L</td>
                <td align="center">L</td>
                <td align="center">
                  <strong>L</strong></td>
              </tr>
              <tr>
                <td align="center">L</td>
                <td align="center">H</td>
                <td align="center">
                  <strong>H</strong></td>
              </tr>
              <tr>
                <td align="center">H</td>
                <td align="center">L</td>
                <td align="center">
                  <strong>H</strong></td>
              </tr>
              <tr>
                <td align="center">H</td>
                <td align="center">H</td>
                <td align="center">
                  <strong>H</strong></td>
              </tr>
            </tbody>
          </table>
          <t>Further evaluation of this approach is required.</t>
        </section>
      </section>
    </section>
    <section anchor="example-oetp-disclosure-file">
      <name>Example OETP Disclosure File</name>
      <figure anchor="_figure-example-oetp-json">
        <name>Example OETP Disclosure File</name>
        <sourcecode type="JSON"><![CDATA[
{
    "schema": {
        "name": "Open Ethics Transparency Protocol",
        "version": "0.9.3 RFC",
        "integrity": "156d624b8f2dbea87128a2147f255842652475c5dc595c79f64c90c7ff486d59007c3e18c993e3163395812e26b70ea70dfc413f7ca128869d115f12e5699bf2"
    },
    "snapshot": {
        "product": {
            "url": "testexample.com",
            "description": ""
        },
        "timestamp": 1608273946,
        "generator": {
            "name": "Open Ethics",
            "alias": "oe",
            "type": "root",
            "website": "https://openethics.ai"
        },
        "label": {
            "data": {
                "type": "open",
                "practice": ""
            },
            "source": {
                "type": "open",
                "practice": ""
            },
            "decision": {
                "type": "restricted",
                "practice": ""
            }
        }
    }
}
]]></sourcecode>
      </figure>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <section anchor="response-content">
        <name>Response content</name>
        <t>OETP exchanges data using JSON <xref target="RFC8259"/> which is a lightweight data-interchange format. A JSON-based application can be attacked in multiple ways such as sending data in an improper format or embedding attack vectors in the data. It is important for any application using JSON format to validate the inputs before being processed. To mitigate this attack type, the JSON Key Profile is provided for OETP responses.</t>
      </section>
      <section anchor="spoofing">
        <name>Spoofing</name>
        <t>OETP Processors should be aware of the potential for spoofing attacks where the attacker publishes an OETP disclosure with the <tt>OETP.snapshot</tt> value from another product, or, perhaps with an outdated <tt>OETP.snapshot.label</tt> element. For example, an OETP Processor could suppress the display of falsified entries by comparing the snapshot integrity from the submission database and a calculated hash for the <tt>OETP.snapshot</tt> object. In that situation, the OETP Processor might also take steps to determine whether the disclosures originated from the same publisher require further investigation of the Disclosure Feed and alert the downstream OETP Processors.</t>
      </section>
      <section anchor="falsification">
        <name>Falsification</name>
        <t>Dishonest or falsified Disclosures is a problem that is hard to address generally. The approach to it is public control and systematic checks. Vendors or user-facing applications and services could further raise the level of trust in their Disclosures by implementing programmatic control scoring mechanisms, as well as the external verification by trusted Auditors.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>Disclosures <bcp14>MAY</bcp14> be resolved using their URIs. To allow this requirement, the <tt>oetp://</tt> URI scheme should be registered with IANA.</t>
    </section>
    <section anchor="areas-for-future-study">
      <name>Areas for Future Study</name>
      <t>The following topics not addressed in this version of the document are possible areas for the future study:</t>
      <ul spacing="normal">
        <li>
          <t>Extensibility of the OETP Disclosure Schema.</t>
        </li>
        <li>
          <t>Evaluate other methods of Generation of the Composite Disclosure based on the Disclosure Tree</t>
        </li>
        <li>
          <t>Disclosure Chaining mechanisms and various use-cases.</t>
        </li>
        <li>
          <t>Typical scenarios and templates for Disclosure submissions.</t>
        </li>
        <li>
          <t>Mapping of the regulatory requirements and future Disclosure elements.</t>
        </li>
        <li>
          <t>Standardizing Privacy Disclosure and PII data-collection practices.</t>
        </li>
        <li>
          <t>Enhancing Label accessibility with ARIA W3C Recommendation and other approaches.</t>
        </li>
        <li>
          <t>Use of the OETP Disclosure in the ADM explainability (XAI).</t>
        </li>
        <li>
          <t>Disclosure Schemas for families of "Generative AI" technologies such as Generative Adversarial Networks (GANs), Variational Autoencoders (VAEs), Conditional Variational Autoencoders (CVAEs), Attention Mechanisms, Transformer-based Models.</t>
        </li>
      </ul>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="SPDX" target="https://spdx.dev/">
          <front>
            <title>SPDX Specification – Version 2.2</title>
            <author>
              <organization>The Linux Foundation</organization>
            </author>
            <date year="2020"/>
          </front>
          <format type="PDF" target="https://spdx.dev/wp-content/uploads/sites/41/2020/08/SPDX-specification-2-2.pdf"/>
          <format type="HTML" target="https://spdx.github.io/spdx-spec/"/>
        </reference>
        <reference anchor="OETP-RI" target="https://github.com/OpenEthicsAI/OETP-RI-scheme">
          <front>
            <title>Resource Identifier Scheme for OETP</title>
            <author>
              <organization>Open Ethics Initiative</organization>
            </author>
            <date year="2022"/>
          </front>
        </reference>
        <reference anchor="RFC8259">
          <front>
            <title>The JavaScript Object Notation (JSON) Data Interchange Format</title>
            <author fullname="T. Bray" initials="T." role="editor" surname="Bray"/>
            <date month="December" year="2017"/>
            <abstract>
              <t>JavaScript Object Notation (JSON) is a lightweight, text-based, language-independent data interchange format. It was derived from the ECMAScript Programming Language Standard. JSON defines a small set of formatting rules for the portable representation of structured data.</t>
              <t>This document removes inconsistencies with other specifications of JSON, repairs specification errors, and offers experience-based interoperability guidance.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="90"/>
          <seriesInfo name="RFC" value="8259"/>
          <seriesInfo name="DOI" value="10.17487/RFC8259"/>
        </reference>
      </references>
    </references>
    <?line 412?>

<section anchor="appendix">
      <name>Appendix</name>
      <section anchor="figures">
        <name>Figures</name>
        <t>Diagrams could be built from code using the below <tt>*.puml</tt> files automatically using <eref target="https://plantuml.com/">PlantUML</eref>.</t>
        <section anchor="creation-of-disclosure-1">
          <name>Creation of Disclosure</name>
          <figure anchor="_figure-disclosure-creation">
            <name>Creation of the Disclosure</name>
            <sourcecode type="PUML"><![CDATA[
@startuml

title Disclosure Creation Process

skinparam roundCorner 15

actor "Supplier A" as SA
actor "Supplier B" as SB
actor Vendor as V

component "Component A" as CA
component "Component B" as CB
file "Disclosure A" as DA
file "Disclosure B" as DB
file "Composite Disclosure" as D

V-right->(Creation):disclose
SA-up->CA
SB-up->CB
CA-up->DA
CB-up->DB
DA-up->(Chaining)
DB-up->(Chaining)
(Creation)->(Chaining)
(Chaining)->(Validation)
(Validation)->(Verification)
(Verification)->D
@enduml
]]></sourcecode>
          </figure>
        </section>
        <section anchor="basic-disclosure-submission">
          <name>Basic Disclosure Submission</name>
          <figure anchor="_figure-disclosure-submission-basic">
            <name>Basic Disclosure Submission</name>
            <sourcecode type="PUML"><![CDATA[
@startuml
title Basic Disclosure Submission

skinparam roundCorner 15
autonumber

actor Vendor
database "Disclosure Identity Provider" as ID
control "Signature Generator" as SIG
database "Federated Identity Provider" as DIS

Vendor -> ID: Request with Disclosure payload
ID -> ID: Validate input
ID -> SIG: Structured Data, Initialized

ID <-- SIG: SHA3-512 integrity hash
    group Distributed Identity Storage
DIS <-- SIG: SHA3-512 integrity hash
end
ID -> ID: Log OETP file and a corresponding intgrity hash
Vendor <-- ID: OETP Disclosure File
@enduml
]]></sourcecode>
          </figure>
        </section>
        <section anchor="progressive-verification-scheme-for-disclosures">
          <name>Progressive Verification Scheme for Disclosures</name>
          <figure anchor="_figure-disclosure-progressive-verification">
            <name>Progressive Verification Scheme for Disclosures</name>
            <sourcecode type="PUML"><![CDATA[
@startuml

title Progressive Verification with multiple Auditors

skinparam roundCorner 15
autonumber
actor User
User -> Vendor: Disclosure Request
User <-- Vendor: OETP Disclosure File

database "Disclosure Identity Provider" as ID

User -> ID: Disclosure Validation and Verification Request

group Progressive Disclosure Verification
    ID -> ID: Retrieve and Compare Disclosure Integrity
    ID -> "Auditor 1": Disclosure Verification Request
    ID <-- "Auditor 1": Verification Proof 1
    ID -> "Auditor N": Disclosure Verification Request
    ID <-- "Auditor N": Verification Proof N
end

User <-- ID: Verification response

User -> Vendor: Service Request
User <-- Vendor: Service Response
@enduml
]]></sourcecode>
          </figure>
        </section>
        <section anchor="disclosure-chaining-request-response">
          <name>Disclosure Chaining: Request-Response</name>
          <figure anchor="_figure-disclosure-chaining-request">
            <name>Disclosure Chaining: Request-Response</name>
            <sourcecode type="PUML"><![CDATA[
@startuml
title Disclosure Chaining: Request-Response


start
repeat
  :Request Component's Disclosure;
    if (Disclosure Obtained?) then (yes)
      :Validate Disclosure;
      :Verify Disclosure;
      :Chain Disclosure;
      :Obtain list of Child Components;
      if (Supplier information exists?) then (yes)
        :Update Tree with (yet)
        Unchained Disclosures;
      else (no)
        #Gold:**Alert** "Vendor has not provided
        Supplier information";
      endif
    else (no)
      #pink:**Alert** "Vendor has not provided
      any Disclosure";
      stop
    endif
repeat while (Unchained Disclosures in the Disclosure Tree?) is (yes) not (no)
:**Generate**
Composite Disclosure;
#palegreen:**Display** Label for "Composite Disclosure";
stop

@enduml
]]></sourcecode>
          </figure>
        </section>
        <section anchor="disclosure-chaining-level-order-traversal">
          <name>Disclosure Chaining: Level Order Traversal</name>
          <figure anchor="_figure-disclosure-chaining-tree">
            <name>Disclosure Chaining: Level Order Traversal</name>
            <sourcecode type="PUML"><![CDATA[
@startmindmap
title Disclosure Chaining: Level Order Traversal

skinparam roundCorner 15
* Root (Product)
        * 1 (Component)
                * 3 (Component)
                        * 7 (Component)
                * 4 (Component)
        * 2 (Component)
                * 5 (Component)
                        * 8 (Component)
                        * 9 (Component)
                * 6 (Component)
@endmindmap
]]></sourcecode>
          </figure>
        </section>
      </section>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Part of this work related to Verification and Validation of Disclosure and Disclosure Chaining was supported by the H2020 Programme of the European Commission under Article 15 of Grant Agreement No. 951972 StandICT.eu 2023</t>
      <t>The Open Ethics community and expert volunteers contributed with their valuable feedback, discussions, and comments. Thank you Ashley Duque Kienzle, Angela Kim, Ioannis Zempekakis, Karl Müdespacher, Ida Varošanec, Claudia Del Pozo, Joerg Buss, Mariia Kriuchok, Minhaaj Rehman, Oleksii Molchanovskyi, Roberta Barone, Phil Volkofsky and others.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
DSMU839wegAA

-->

</rfc>
