{
  "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: 0 to 24 stable, 25 to 49 strained, 50 to 74 fragile, 75 to 89 critical, 90 to 100 crisis.",
  "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: 60% level, 30% trend, 10% volatility.",
    "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 neutral 50; not_computable = the previous value is zero and no fractional change can be formed.",
    "volatility_score": "0 to 100 volatility component. 50 is neutral. Provisional measure.",
    "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.",
    "delta": "Signed change since the previous release. Positive means more stress.",
    "metric_count": "How many indicators the domain's score was computed from."
  }
}
