{
  "$schema": "/api/schemas/documents.schema.json",
  "apiVersion": "1.1.0",
  "lastModified": "2026-10-22T01:45:53.624Z",
  "sourcePath": "src/main/data/docs",
  "docId": "RFC8991",
  "document": {
    "abstract": "This document is a conceptual outline of an Application Programming Interface (API) for the GeneRic Autonomic Signaling Protocol (GRASP). Such an API is needed for Autonomic Service Agents (ASAs) calling the GRASP protocol module to exchange Autonomic Network messages with other ASAs. Since GRASP is designed to support asynchronous operations, the API will need to be adapted according to the support for asynchronicity in various programming languages and operating systems.",
    "abstract$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML abstract",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc8991/",
      "updated": "2026-10-22T01:45:53.624Z",
      "version": "extractDocs.js@commit:acc1bcda23fc"
    },
    "authors": [
      {
        "name": "Brian E. Carpenter"
      },
      {
        "name": "Bing Liu"
      },
      {
        "name": "Wendong Wang"
      },
      {
        "name": "Xiangyang Gong"
      }
    ],
    "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/rfc8991/",
      "updated": "2026-10-22T01:45:53.624Z",
      "version": "extractDocs.js@commit:acc1bcda23fc"
    },
    "docId": "RFC8991",
    "docId$meta": {
      "confidence": "high",
      "note": "Derived from RFC number or Datatracker identifier",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc8991/",
      "updated": "2026-10-22T01:45:53.624Z",
      "version": "extractDocs.js@commit:acc1bcda23fc"
    },
    "docLabel": "IETF RFC 8991",
    "docLabel$meta": {
      "confidence": "high",
      "note": "Constructed from provider and document identifier",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc8991/",
      "updated": "2026-10-22T01:45:53.624Z",
      "version": "extractDocs.js@commit:acc1bcda23fc"
    },
    "docNumber": "8991",
    "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/rfc8991/",
      "updated": "2026-10-22T01:45:53.624Z",
      "version": "extractDocs.js@commit:acc1bcda23fc"
    },
    "docTitle": "GeneRic Autonomic Signaling Protocol Application Program Interface (GRASP API)",
    "docTitle$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML title",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc8991/",
      "updated": "2026-10-22T01:45:53.624Z",
      "version": "extractDocs.js@commit:acc1bcda23fc"
    },
    "docType": "Informational",
    "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/rfc8991/",
      "updated": "2026-10-22T01:45:53.624Z",
      "version": "extractDocs.js@commit:acc1bcda23fc"
    },
    "doi": "10.17487/RFC8991",
    "doi$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML doi",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc8991/",
      "updated": "2026-10-22T01:45:53.624Z",
      "version": "extractDocs.js@commit:acc1bcda23fc"
    },
    "href": "https://doi.org/10.17487/RFC8991",
    "href$meta": {
      "confidence": "high",
      "note": "Derived from DOI (https://doi.org/<doi>)",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc8991/",
      "updated": "2026-10-22T01:45:53.624Z",
      "version": "extractDocs.js@commit:acc1bcda23fc"
    },
    "keywords": [
      "Autonomic Networking",
      "Autonomous Operation",
      "Self-management"
    ],
    "keywords$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML keywords",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc8991/",
      "updated": "2026-10-22T01:45:53.624Z",
      "version": "extractDocs.js@commit:acc1bcda23fc"
    },
    "pages": "29",
    "pages$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML page-count",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc8991/",
      "updated": "2026-10-22T01:45:53.624Z",
      "version": "extractDocs.js@commit:acc1bcda23fc"
    },
    "publicationDate": "2021-05-01",
    "publicationDate$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML date",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc8991/",
      "updated": "2026-10-22T01:45:53.624Z",
      "version": "extractDocs.js@commit:acc1bcda23fc"
    },
    "publisher": "IETF",
    "publisher$meta": {
      "confidence": "high",
      "note": "Static: provider",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc8991/",
      "updated": "2026-10-22T01:45:53.624Z",
      "version": "extractDocs.js@commit:acc1bcda23fc"
    },
    "references": {
      "bibliographic": [
        "IETF.draft-ciavaglia-anima-coordination-01",
        "IETF.draft-ietf-anima-asa-guidelines-00",
        "IETF.draft-ietf-anima-grasp-distribution-02",
        "RFC8993",
        "RFC8994",
        "RFC8995",
        "orphan/RFC8991/h:67e8a7e7"
      ],
      "bibliographic$meta": {
        "confidence": "high",
        "note": "Parsed from RFC HTML references/informative sections",
        "originalValue": [],
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc8991/",
        "updated": "2026-10-22T01:45:53.624Z",
        "version": "extractDocs.js@commit:acc1bcda23fc"
      },
      "normative": [
        "RFC8610",
        "RFC8949",
        "RFC8990"
      ],
      "normative$meta": {
        "confidence": "high",
        "note": "Parsed from RFC HTML normative references sections",
        "originalValue": [],
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc8991/",
        "updated": "2026-10-22T01:45:53.624Z",
        "version": "extractDocs.js@commit:acc1bcda23fc"
      }
    },
    "resolvedHref": "https://www.rfc-editor.org/info/rfc8991/",
    "resolvedHref$meta": {
      "confidence": "high",
      "note": "Final URL resolved via URL redirect verification",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc8991/",
      "updated": "2026-10-22T01:45:53.624Z",
      "version": "extractDocs.js@commit:acc1bcda23fc"
    },
    "status": {
      "active": true,
      "active$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc8991/",
        "updated": "2026-10-22T01:45:53.624Z",
        "version": "extractDocs.js@commit:acc1bcda23fc"
      },
      "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/rfc8991/",
        "updated": "2026-10-22T01:45:53.624Z",
        "version": "extractDocs.js@commit:acc1bcda23fc"
      },
      "latestVersion": true,
      "latestVersion$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc8991/",
        "updated": "2026-10-22T01:45:53.624Z",
        "version": "extractDocs.js@commit:acc1bcda23fc"
      },
      "statusNote": "Informational",
      "statusNote$meta": {
        "confidence": "high",
        "note": "Mapped from Datatracker doc.json std_level",
        "originalValue": null,
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc8991/",
        "updated": "2026-10-22T01:45:53.624Z",
        "version": "extractDocs.js@commit:acc1bcda23fc"
      },
      "superseded": false,
      "superseded$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc8991/",
        "updated": "2026-10-22T01:45:53.624Z",
        "version": "extractDocs.js@commit:acc1bcda23fc"
      }
    }
  }
}