{
  "about": "Column definitions for the British Resilience Index release downloads. Every indicator is published by a UK official statistics producer under the Open Government Licence v3; the index adds scoring, not measurement. Cite both the British Resilience Index and the underlying publisher.",
  "scoreConvention": "All scores are stress scores from 0 to 100 where HIGHER MEANS MORE STRESS. Bands by id (label): 0 to 24 stable (Stable), 25 to 49 strained (Strained), 50 to 74 fragile (Fragile), 75 to 89 critical (High stress), 90 to 100 near_midnight (Extreme stress). The top two labels were renamed in August 2026; the ids are permanent.",
  "columns": {
    "release_period": "The release this row belongs to, for example 'August 2026'.",
    "metric_id": "Stable identifier for the indicator. Safe to join on across releases.",
    "metric_name": "Human readable indicator name.",
    "domain_id": "Identifier of the domain the indicator sits in.",
    "domain_name": "Human readable domain name.",
    "unit": "Unit of latest_value as published by the source.",
    "latest_value": "The indicator's value as published. Not rescaled.",
    "latest_period": "The period the value covers, in the publisher's own wording.",
    "previous_value": "The preceding observation, used for the trend component.",
    "direction_of_badness": "higher_is_worse or lower_is_worse: which way stress runs.",
    "stress_score": "0 to 100 composite for this indicator. From the September 2026 release: two thirds level and one third trend, renormalised over the components that could be measured, so an indicator whose trend is not computable rests on its level alone. Releases up to and including August 2026: 60% level, 30% trend, 10% volatility, with an unmeasurable component contributing a neutral 50. Check release_period before recomputing.",
    "level_score": "0 to 100 level component. Published so the composite can be recomputed: two thirds of the blend from September 2026, 60% before.",
    "level_normalisation": "percentile = ranked within the indicator's own verified history (needs at least 8 points); bounds = linear against best and worst observed bounds, used until that history exists.",
    "trend_score": "0 to 100 trend component. 50 is neutral.",
    "trend_basis": "measured = computed from a real change; no_change = the latest reading equals the previous one, so the component is a measured 50; not_computable = the previous value is zero and no fractional change can be formed. From September 2026 a not_computable trend is dropped from the blend and the stress score rests on level alone; before then it contributed a neutral 50.",
    "volatility_score": "0 to 100 volatility component. 50 is neutral. Published on every indicator; part of the stress blend only up to August 2026.",
    "volatility_basis": "measured = computed from at least four history points; insufficient_history = fewer than four, so the component is a neutral 50.",
    "confidence_score": "0 to 1 data quality score for the indicator's source.",
    "scored": "true = enters domain and national scoring. false = a provisional placeholder with no published official figure, displayed for transparency and excluded from every score.",
    "verified": "true = the value was transcribed or fetched from the named official source.",
    "geographic_coverage": "The geography the indicator is published for: uk, gb, england, england_wales, scotland, wales, ni. A devolved measure is never blended into a UK figure to fill a gap.",
    "source_id": "Identifier into the source registry (source-registry.json).",
    "source_organisation": "The publishing body.",
    "source_url": "The dataset or release page the figure comes from.",
    "weight_pct": "The domain's weight in the national score, in percent. Weights sum to 100.",
    "score": "Domain stress score: the median of its indicators' stress scores.",
    "average_score": "The mean of the same indicators, published for comparison with the median.",
    "risk_band": "Band label for the score.",
    "previous_score": "The domain's score at the previous published release, read from that release's archive, when delta_basis is release. Empty when delta_basis is unavailable. For rows with delta_basis data_step it is the score of a synthetic previous snapshot, not an archived release.",
    "delta": "Signed change in score. Positive means more stress. Read delta_basis: it is the change since the previous published release only when delta_basis is release. Empty when delta_basis is unavailable.",
    "delta_basis": "release = compared with the archived previous published release. unavailable = no archived comparator existed for this view at that release, so previous_score and delta are empty. data_step = an archive written before the September 2026 correction, whose delta compared each indicator's latest observation with the one before it (a synthetic previous snapshot), not the previous release; the September 2026 archive was reissued as revision 2 on the release basis.",
    "metric_count": "How many indicators the domain's score was computed from."
  }
}
