INDEPENDENT POLICY & RESEARCHConceptual framework Edition 0.17.0
CORE-006 · Method 0.2.0

Source freshness and comparability

Which records exceed the declared age threshold, have unknown observation dates, or use incomparable periods and units?

Operational calculation / structured check · Unit tested · Not empirically calibrated

Load MAR-HTP example · MAR-HTP support and governance examples

Worked example

A trade analyst can check whether monthly data cover the same periods, geography and definitions. Mark a missing release as missing before comparing totals.

Keep observation dates, retrieval dates, revisions and forecasts distinct under a declared assessment date.

Try it yourself

The calculator opens with the fictional example already filled in. Change one input, choose Calculate locally, and compare the result to the original values below. Use Reset fictional fixture to start over.

An unknown result means the available inputs do not support a value. Check the calculator’s Warnings tab for what is missing or uncertain.

Go to the calculator Browse all calculators

Changing the label does not improve capacity, speed, error rates or confidence. Enter measured differences explicitly.
Comparison conditions and human review
Record budget, staffing, resources, information release dates, scenario conditions and evaluation criteria. Material differences can make options not comparable.

This declaration is not legal certification. Blocked, pending or assumed gates stop transaction-dependent evaluation.

Keep units consistent within each table. Enter zero when the amount is known to be zero. Leave optional amounts blank when they are unknown. If a required value is missing, the calculator will ask for it.

Advanced: complete input envelope and optional fields

Edit optional fields using the method dictionary. Apply validates and recalculates the entire input. Unknown values remain null.

Import local JSON or CSV

Files stay in this browser. Maximum 1 MiB. JSON imports are recalculated. CSV supports flat observation tables, with column types taken from the displayed fixture. Empty cells become null.

Compare the arrangements

Keep physical resources and evaluation conditions equal. With identical inputs, all three approaches produce identical arithmetic. The comparison refuses material differences in declared conditions; it does not verify those declarations.

Privacy: comparison inputs may contain sensitive notes or operational details. Storage is off by default. Do not enter personal records or sensitive infrastructure details. Reproduction exports include supplied inputs and notes, including raw small-cell inputs suppressed from CORE-009 result tables. Suppression of displayed results does not make a reproduction export safe to publish.

Executive brief and reproducible export

Review for personal, confidential or sensitive material before saving or sharing. No automatic submission occurs.

Read the generated brief

Method, inputs and limits

Keep observation dates, retrieval dates, revisions and forecasts distinct under a declared assessment date. Method version 0.2.0. Make an old observation current by retrieving it, interpolate missing years, or validate a forecast.

CORE-006 input dictionary
InputUnit / typeRequired interpretation
records — Dated source recordsrecords / jsonid, label, observedAt (nullable ISO), retrievedAt (ISO), publishedAt and revisedAt (optional ISO), unit, seriesType (observed/forecast/scenario), methodId.
asOf — Assessment dateISO date / dateUse the supplied schema and declared units.
staleAfterDays — Declared stale thresholddays / numberUse the supplied schema and declared units. Minimum 0.
expectedUnit — Comparison unitunit label / textUse the supplied schema and declared units.
expectedMethodId — Required measurement method (optional)method ID / textMatch the method ID used by the records you want to compare.
expectedObservationYear — Comparison observation yearyear / numberUse the supplied schema and declared units. Minimum 1. Maximum 9999.
expectedPeriods — Expected periods (optional count or unique ID list)periods / jsonDeclare the expected set or count; ratios never infer unreported periods.
observedPeriods — Observed periods (optional matching count or ID list)periods / jsonUse the supplied schema and declared units.
expectedGeographies — Expected geographies (optional count or unique ID list)geographies / jsonUse the supplied schema and declared units.
observedGeographies — Observed geographies (optional matching count or ID list)geographies / jsonUse the supplied schema and declared units.

Visible mathematics / decision rules

age in days = (asOf − observation date) / 86,400,000

stale = age > declared staleAfterDays; unknown observation dates remain unknown

missing-period ratio = (expected periods − observed periods) / expected periods

geographic coverage ratio = observed geographies / expected geographies; zero expected denominator is undefined

What this result cannot establish

What would falsify the assumptions?

Reproducible fictional fixture and independently calculated expectations

This fixture is synthetic. It does not describe a country, government, company or event.

{
  "observations": {
    "unit": "records",
    "origin": "synthetic",
    "sources": [
      {
        "id": "SYN-001",
        "kind": "synthetic",
        "label": "Fictional dated records",
        "url": null
      }
    ],
    "records": [
      {
        "id": "R1",
        "label": "Historical count",
        "observedAt": "2024-01-01",
        "retrievedAt": "2025-01-02",
        "publishedAt": "2024-02-01",
        "revisedAt": "2024-12-01",
        "unit": "people",
        "seriesType": "observed",
        "methodId": "count-v1"
      },
      {
        "id": "R2",
        "label": "Current period count",
        "observedAt": "2025-01-01",
        "retrievedAt": "2025-01-02",
        "publishedAt": "2025-01-02",
        "revisedAt": null,
        "unit": "people",
        "seriesType": "observed",
        "methodId": "count-v1"
      }
    ]
  },
  "parameters": {
    "asOf": "2025-01-11",
    "staleAfterDays": 30,
    "expectedUnit": "people",
    "expectedMethodId": null,
    "expectedObservationYear": 2025
  }
}

Expected checks

{
  "staleCount": 1,
  "unknownObservationDates": 0,
  "notComparableCount": 1
}
Download input fixture

Authoritative background references

These sources inform definitions or review practices. They do not validate this implementation or endorse MAR.