{
  "$schema": "/api/schemas/documents.schema.json",
  "apiVersion": "1.1.0",
  "lastModified": "2026-10-14T18:52:04.686Z",
  "sourcePath": "src/main/data/docs",
  "docId": "RFC9931",
  "document": {
    "abstract": "In HTTP/1.1, the client can request a change to a new protocol on the existing connection. This document discusses the security considerations that apply to data sent by the client before this request is confirmed and adds new requirements to RFCs 9112 and 9298 to avoid related security issues.",
    "abstract$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML abstract",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc9931/",
      "updated": "2026-10-14T18:52:04.686Z",
      "version": "extractDocs.js@commit:673dd514c094"
    },
    "authors": [
      {
        "name": "Benjamin M. Schwartz"
      }
    ],
    "authors$meta": {
      "confidence": "high",
      "note": "Parsed from Datatracker doc page article:author (profile full names)",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc9931/",
      "updated": "2026-10-14T18:52:04.686Z",
      "version": "extractDocs.js@commit:673dd514c094"
    },
    "docId": "RFC9931",
    "docId$meta": {
      "confidence": "high",
      "note": "Derived from RFC number or Datatracker identifier",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc9931/",
      "updated": "2026-10-14T18:52:04.685Z",
      "version": "extractDocs.js@commit:673dd514c094"
    },
    "docLabel": "IETF RFC 9931",
    "docLabel$meta": {
      "confidence": "high",
      "note": "Constructed from provider and document identifier",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc9931/",
      "updated": "2026-10-14T18:52:04.685Z",
      "version": "extractDocs.js@commit:673dd514c094"
    },
    "docNumber": "9931",
    "docNumber$meta": {
      "confidence": "high",
      "note": "Parsed from RFC info page report metadata",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc9931/",
      "updated": "2026-10-14T18:52:04.686Z",
      "version": "extractDocs.js@commit:673dd514c094"
    },
    "docTitle": "Security Considerations for Optimistic Protocol Transitions in HTTP/1.1",
    "docTitle$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML title",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc9931/",
      "updated": "2026-10-14T18:52:04.686Z",
      "version": "extractDocs.js@commit:673dd514c094"
    },
    "docType": "Standard",
    "docType$meta": {
      "confidence": "high",
      "note": "Mapped from Datatracker std_level or RFC status text",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc9931/",
      "updated": "2026-10-14T18:52:04.686Z",
      "version": "extractDocs.js@commit:673dd514c094"
    },
    "doi": "10.17487/RFC9931",
    "doi$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML doi",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc9931/",
      "updated": "2026-10-14T18:52:04.686Z",
      "version": "extractDocs.js@commit:673dd514c094"
    },
    "href": "https://doi.org/10.17487/RFC9931",
    "href$meta": {
      "confidence": "high",
      "note": "Derived from DOI (https://doi.org/<doi>)",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc9931/",
      "updated": "2026-10-14T18:52:04.686Z",
      "version": "extractDocs.js@commit:673dd514c094"
    },
    "keywords": [
      "Request Smuggling",
      "False Start",
      "HTTP CONNECT"
    ],
    "keywords$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML keywords",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc9931/",
      "updated": "2026-10-14T18:52:04.686Z",
      "version": "extractDocs.js@commit:673dd514c094"
    },
    "pages": "11",
    "pages$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML page-count",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc9931/",
      "updated": "2026-10-14T18:52:04.686Z",
      "version": "extractDocs.js@commit:673dd514c094"
    },
    "publicationDate": "2026-03-01",
    "publicationDate$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML date",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc9931/",
      "updated": "2026-10-14T18:52:04.686Z",
      "version": "extractDocs.js@commit:673dd514c094"
    },
    "publisher": "IETF",
    "publisher$meta": {
      "confidence": "high",
      "note": "Static: provider",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc9931/",
      "updated": "2026-10-14T18:52:04.686Z",
      "version": "extractDocs.js@commit:673dd514c094"
    },
    "references": {
      "bibliographic": [
        "RFC9484",
        "RFC9113",
        "RFC9114",
        "RFC2817",
        "RFC8446",
        "RFC6455",
        "orphan/RFC9931/h:a9cbb1a0"
      ],
      "bibliographic$meta": {
        "confidence": "high",
        "note": "Parsed from RFC HTML references/informative sections",
        "originalValue": [],
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc9931/",
        "updated": "2026-10-14T18:52:04.686Z",
        "version": "extractDocs.js@commit:673dd514c094"
      },
      "normative": [
        "RFC9298",
        "RFC9110",
        "RFC9112",
        "RFC2119",
        "RFC8174"
      ],
      "normative$meta": {
        "confidence": "high",
        "note": "Parsed from RFC HTML normative references sections",
        "originalValue": [],
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc9931/",
        "updated": "2026-10-14T18:52:04.686Z",
        "version": "extractDocs.js@commit:673dd514c094"
      }
    },
    "resolvedHref": "https://www.rfc-editor.org/info/rfc9931/",
    "resolvedHref$meta": {
      "confidence": "high",
      "note": "Final URL resolved via URL redirect verification",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc9931/",
      "updated": "2026-10-14T18:52:04.686Z",
      "version": "extractDocs.js@commit:673dd514c094"
    },
    "status": {
      "active": true,
      "active$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc9931/",
        "updated": "2026-10-14T18:52:04.686Z",
        "version": "extractDocs.js@commit:673dd514c094"
      },
      "amends": [
        "RFC9112",
        "RFC9298"
      ],
      "amends$meta": {
        "confidence": "high",
        "note": "Parsed from RFC index XML",
        "originalValue": [],
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc9931/",
        "updated": "2026-10-14T18:52:04.686Z",
        "version": "extractDocs.js@commit:673dd514c094"
      },
      "errataExist": false,
      "errataExist$meta": {
        "confidence": "high",
        "note": "Derived from presence of errata links on RFC/Datatracker pages",
        "originalValue": null,
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc9931/",
        "updated": "2026-10-14T18:52:04.686Z",
        "version": "extractDocs.js@commit:673dd514c094"
      },
      "latestVersion": true,
      "latestVersion$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc9931/",
        "updated": "2026-10-14T18:52:04.686Z",
        "version": "extractDocs.js@commit:673dd514c094"
      },
      "statusNote": "Proposed Standard",
      "statusNote$meta": {
        "confidence": "high",
        "note": "Mapped from Datatracker doc.json std_level",
        "originalValue": null,
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc9931/",
        "updated": "2026-10-14T18:52:04.686Z",
        "version": "extractDocs.js@commit:673dd514c094"
      },
      "superseded": false,
      "superseded$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc9931/",
        "updated": "2026-10-14T18:52:04.686Z",
        "version": "extractDocs.js@commit:673dd514c094"
      }
    }
  }
}