{
  "_artifact": "OCG chaingraph_export:xbrl — EBA COREP concept-map SCAFFOLD",
  "_status": "UNPOPULATED. Maps OCG tool output fields to PUBLIC COREP template/row references. The machine-readable XBRL concepts (eba_met qnames), dimensional members, entry-point schemaRefs, and exact row/col coordinates MUST be populated from the published EBA taxonomy package before this is used to emit a submission. DO NOT FABRICATE eba_met qnames (OCG Standard §13.8 / core project rule). Until eba_qname is populated, exporters/xbrl.mjs returns a 'pending' error for these taxonomies and the ocg-ext profile is used instead.",
  "_version": "0.1-scaffold",
  "_created": "2026-06-19",
  "source_of_truth": {
    "framework": "EBA Reporting Framework 4.0 (DPM + XBRL taxonomy)",
    "reporting_framework_url": "https://www.eba.europa.eu/risk-and-data-analysis/reporting/reporting-frameworks/reporting-framework-40",
    "note": "Download the COREP / Liquidity entry points + the DPM dictionary; bind each eba_qname below to the taxonomy's metric (eba_met:*) and dimensional members. Confirm every template/row reference against the ITS Annexes (templates) and Annex II (instructions)."
  },
  "conventions": {
    "entity_identifier_scheme": "https://www.gleif.org/ (LEI) — preferred over the tool id used by ocg-ext",
    "period": "instant (reference date) — bind to artifact.generated_at",
    "monetary_unit": "iso4217 reporting currency (institution-specific; tool fields are in £bn/$bn — scale to absolute units on bind)",
    "ratios": "report as decimals where the taxonomy item is a percentage/decimal; confirm scale per item",
    "scale_warning": "art-07 fields are in billions (suffix _bn) and sim-01 LCR/NSFR are ratios (e.g. 1.45 = 145%). Convert to the taxonomy's expected units/decimals on bind."
  },

  "eba-corep-own-funds": {
    "entry_point_schemaRef": null,
    "_entry_point_note": "Populate with the COREP OF entry-point .xsd from EBA RF 4.0.",
    "templates_referenced": {
      "C 01.00": "Own Funds (CET1 / AT1 / T2 / Total own funds amounts)",
      "C 02.00": "Own Funds Requirements (Total Risk Exposure Amount / RWA)",
      "C 03.00": "Capital Ratios (CET1 / T1 / Total capital ratio)"
    },
    "fields": [
      {
        "payload_field": "basel31_rwa_bn",
        "source_tools": ["art-07-basel31-reporting-delta-calculator", "sim-03-basel-rwa-scenario-modeler", "optimize_settlement_capital (504)"],
        "corep_template": "C 02.00",
        "item_label": "TOTAL RISK EXPOSURE AMOUNT (TREA)",
        "corep_ref_indicative": "row 0010 — CONFIRM vs ITS Annex I",
        "eba_qname": null,
        "unit": "monetary",
        "status": "unmapped"
      },
      {
        "payload_field": "cet1_ratio_basel31_pct",
        "source_tools": ["art-07-basel31-reporting-delta-calculator"],
        "corep_template": "C 03.00",
        "item_label": "Common Equity Tier 1 Capital ratio",
        "corep_ref_indicative": "row 0010 — CONFIRM vs ITS Annex I",
        "eba_qname": null,
        "unit": "percent",
        "status": "unmapped"
      },
      {
        "payload_field": "floor_rwa_bn",
        "source_tools": ["art-07-basel31-reporting-delta-calculator"],
        "corep_template": "C 02.00",
        "item_label": "Total risk exposure amount — output floor (72.5%) reference",
        "corep_ref_indicative": "output-floor memo item — CONFIRM; CRR3 output-floor row may differ by RF version",
        "eba_qname": null,
        "unit": "monetary",
        "status": "unmapped"
      },
      {
        "payload_field": "current_rwa_bn",
        "source_tools": ["art-07-basel31-reporting-delta-calculator"],
        "corep_template": "C 02.00",
        "item_label": "TREA — comparative/prior basis (not a distinct COREP cell)",
        "corep_ref_indicative": "no direct cell — carry as ocg-ext memo or omit",
        "eba_qname": null,
        "unit": "monetary",
        "status": "no_direct_mapping"
      },
      {
        "payload_field": "capital_shortfall_bn",
        "source_tools": ["art-07-basel31-reporting-delta-calculator"],
        "corep_template": null,
        "item_label": "Derived capital shortfall (OCG-computed, not a COREP reported cell)",
        "corep_ref_indicative": "no direct cell — keep under ocg-ext namespace",
        "eba_qname": null,
        "unit": "monetary",
        "status": "no_direct_mapping"
      }
    ]
  },

  "eba-corep-lcr-nsfr": {
    "entry_point_schemaRef": null,
    "_entry_point_note": "Populate with the Liquidity (LCR + NSFR) entry-point .xsd from EBA RF 4.0.",
    "templates_referenced": {
      "C 72.00": "LCR — Liquid assets (HQLA)",
      "C 73.00": "LCR — Outflows",
      "C 74.00": "LCR — Inflows",
      "C 76.00": "LCR — Calculation (Liquidity Coverage Ratio)",
      "C 80.00-C 83.00": "NSFR — Available / Required Stable Funding components",
      "C 84.00": "NSFR — Calculation (Net Stable Funding Ratio)"
    },
    "fields": [
      {
        "payload_field": "lcr_median_day30",
        "source_tools": ["sim-01-lcr-nsfr-liquidity-stress-test"],
        "corep_template": "C 76.00",
        "item_label": "Liquidity Coverage Ratio (%)",
        "corep_ref_indicative": "LCR ratio row — CONFIRM vs ITS (LCR DA); ratio is a stressed median, label as scenario output",
        "eba_qname": null,
        "unit": "percent",
        "status": "unmapped"
      },
      {
        "payload_field": "nsfr_median_day250",
        "source_tools": ["sim-01-lcr-nsfr-liquidity-stress-test"],
        "corep_template": "C 84.00",
        "item_label": "Net Stable Funding Ratio (%)",
        "corep_ref_indicative": "NSFR ratio row — CONFIRM vs ITS",
        "eba_qname": null,
        "unit": "percent",
        "status": "unmapped"
      },
      {
        "payload_field": "hqla_l1 / hqla_l2a / hqla_l2b (inputs)",
        "source_tools": ["sim-01-lcr-nsfr-liquidity-stress-test"],
        "corep_template": "C 72.00",
        "item_label": "Liquid assets — Level 1 / Level 2A / Level 2B",
        "corep_ref_indicative": "C 72.00 asset-class rows — CONFIRM; these are policy_parameters, decide whether to report",
        "eba_qname": null,
        "unit": "monetary",
        "status": "unmapped"
      },
      {
        "payload_field": "retail_outflow / wholesale_outflow / secured_outflow (inputs)",
        "source_tools": ["sim-01-lcr-nsfr-liquidity-stress-test"],
        "corep_template": "C 73.00",
        "item_label": "Outflows — retail / wholesale / secured",
        "corep_ref_indicative": "C 73.00 outflow rows — CONFIRM",
        "eba_qname": null,
        "unit": "monetary",
        "status": "unmapped"
      }
    ]
  },

  "_next_steps": [
    "1. Download EBA RF 4.0 COREP-OF and Liquidity entry points + DPM dictionary.",
    "2. For each field with status 'unmapped', set eba_qname to the taxonomy metric qname and add any required dimensional members (eba_dim:*) + their domain members.",
    "3. Set entry_point_schemaRef for each taxonomy.",
    "4. Confirm every corep_ref against the ITS Annexes; replace '_indicative' with the validated row/col.",
    "5. In exporters/xbrl.mjs, load this map for the eba-corep-* taxonomies and build typed facts with contexts/units/dimensions; remove the 'pending' guard once a taxonomy is fully populated.",
    "6. Validate the emitted instance against the EBA taxonomy with an XBRL processor (e.g. Arelle) before claiming COREP conformance."
  ]
}
