{
  "$schema": "/api/schemas/documents.schema.json",
  "apiVersion": "1.1.0",
  "lastModified": "2026-10-20T21:46:48.222Z",
  "sourcePath": "src/main/data/docs",
  "docId": "RFC8896",
  "document": {
    "abstract": "This document is an extension to the base Application-Layer Traffic Optimization (ALTO) protocol. It extends the ALTO cost information service so that applications decide not only 'where' to connect but also 'when'. This is useful for applications that need to perform bulk data transfer and would like to schedule these transfers during an off-peak hour, for example. This extension introduces the ALTO Cost Calendar with which an ALTO Server exposes ALTO cost values in JSON arrays where each value corresponds to a given time interval. The time intervals, as well as other Calendar attributes, are specified in the Information Resources Directory and ALTO Server responses.",
    "abstract$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML abstract",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc8896/",
      "updated": "2026-10-20T21:46:48.222Z",
      "version": "extractDocs.js@commit:92f3ced618ff"
    },
    "authors": [
      {
        "name": "Sabine Randriamasy"
      },
      {
        "name": "Y. Richard Yang"
      },
      {
        "name": "Qin Wu"
      },
      {
        "name": "Deng Lingli"
      },
      {
        "name": "Nico Schwan"
      }
    ],
    "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/rfc8896/",
      "updated": "2026-10-20T21:46:48.222Z",
      "version": "extractDocs.js@commit:92f3ced618ff"
    },
    "docId": "RFC8896",
    "docId$meta": {
      "confidence": "high",
      "note": "Derived from RFC number or Datatracker identifier",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc8896/",
      "updated": "2026-10-20T21:46:48.222Z",
      "version": "extractDocs.js@commit:92f3ced618ff"
    },
    "docLabel": "IETF RFC 8896",
    "docLabel$meta": {
      "confidence": "high",
      "note": "Constructed from provider and document identifier",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc8896/",
      "updated": "2026-10-20T21:46:48.222Z",
      "version": "extractDocs.js@commit:92f3ced618ff"
    },
    "docNumber": "8896",
    "docNumber$meta": {
      "confidence": "high",
      "note": "From the RFC index entry (rfc-index.xml <doc-id>)",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc8896/",
      "updated": "2026-10-20T21:46:48.222Z",
      "version": "extractDocs.js@commit:92f3ced618ff"
    },
    "docTitle": "Application-Layer Traffic Optimization (ALTO) Cost Calendar",
    "docTitle$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML title",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc8896/",
      "updated": "2026-10-20T21:46:48.222Z",
      "version": "extractDocs.js@commit:92f3ced618ff"
    },
    "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/rfc8896/",
      "updated": "2026-10-20T21:46:48.222Z",
      "version": "extractDocs.js@commit:92f3ced618ff"
    },
    "doi": "10.17487/RFC8896",
    "doi$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML doi",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc8896/",
      "updated": "2026-10-20T21:46:48.222Z",
      "version": "extractDocs.js@commit:92f3ced618ff"
    },
    "href": "https://doi.org/10.17487/RFC8896",
    "href$meta": {
      "confidence": "high",
      "note": "Derived from DOI (https://doi.org/<doi>)",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc8896/",
      "updated": "2026-10-20T21:46:48.222Z",
      "version": "extractDocs.js@commit:92f3ced618ff"
    },
    "pages": "35",
    "pages$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML page-count",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc8896/",
      "updated": "2026-10-20T21:46:48.222Z",
      "version": "extractDocs.js@commit:92f3ced618ff"
    },
    "publicationDate": "2020-11-01",
    "publicationDate$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML date",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc8896/",
      "updated": "2026-10-20T21:46:48.222Z",
      "version": "extractDocs.js@commit:92f3ced618ff"
    },
    "publisher": "IETF",
    "publisher$meta": {
      "confidence": "high",
      "note": "Static: provider",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc8896/",
      "updated": "2026-10-20T21:46:48.222Z",
      "version": "extractDocs.js@commit:92f3ced618ff"
    },
    "references": {
      "bibliographic": [
        "IETF.draft-ietf-alto-performance-metrics-09",
        "10.1287-trsc.17.3.301",
        "RFC2818",
        "RFC5693",
        "RFC6708",
        "RFC7159",
        "10.1145-863955.863974",
        "10.1016-j.future.2018.09.048",
        "orphan/RFC8896/h:6eef7e5b",
        "orphan/RFC8896/h:76f6cc6d"
      ],
      "bibliographic$meta": {
        "confidence": "high",
        "note": "Parsed from RFC HTML references/informative sections",
        "originalValue": [],
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc8896/",
        "updated": "2026-10-20T21:46:48.222Z",
        "version": "extractDocs.js@commit:92f3ced618ff"
      },
      "normative": [
        "10.1109-IEEESTD.2019.8766229",
        "RFC2119",
        "RFC5246",
        "RFC7231",
        "RFC7285",
        "RFC8174",
        "RFC8189",
        "RFC8259",
        "RFC8446",
        "RFC8895"
      ],
      "normative$meta": {
        "confidence": "high",
        "note": "Parsed from RFC HTML normative references sections",
        "originalValue": [],
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc8896/",
        "updated": "2026-10-20T21:46:48.222Z",
        "version": "extractDocs.js@commit:92f3ced618ff"
      }
    },
    "resolvedHref": "https://www.rfc-editor.org/info/rfc8896/",
    "resolvedHref$meta": {
      "confidence": "high",
      "note": "Final URL resolved via URL redirect verification",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc8896/",
      "updated": "2026-10-20T21:46:48.222Z",
      "version": "extractDocs.js@commit:92f3ced618ff"
    },
    "status": {
      "active": true,
      "active$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc8896/",
        "updated": "2026-10-20T21:46:48.222Z",
        "version": "extractDocs.js@commit:92f3ced618ff"
      },
      "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/rfc8896/",
        "updated": "2026-10-20T21:46:48.222Z",
        "version": "extractDocs.js@commit:92f3ced618ff"
      },
      "latestVersion": true,
      "latestVersion$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc8896/",
        "updated": "2026-10-20T21:46:48.222Z",
        "version": "extractDocs.js@commit:92f3ced618ff"
      },
      "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/rfc8896/",
        "updated": "2026-10-20T21:46:48.222Z",
        "version": "extractDocs.js@commit:92f3ced618ff"
      },
      "superseded": false,
      "superseded$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc8896/",
        "updated": "2026-10-20T21:46:48.222Z",
        "version": "extractDocs.js@commit:92f3ced618ff"
      }
    }
  }
}