Start here
Why some numbers are blank when the data clearly exists. WorldMonitor buys, fetches, and computes with data from dozens of publishers. Many of them allow us to use their figures but not to republish them. Those are different permissions, and the difference is the whole subject of this page. So the indicator drill-down does two things at once:- Always serves WorldMonitor’s own derived output — the normalized score, the weight, the contribution, and full credit to whoever published the underlying data.
- Sometimes serves the raw upstream number too, but only when that publisher’s terms clearly permit it.
- Licensing — the value exists and was used, and we may not republish it. That is what the table below records, source by source.
- State — there was no measured value to publish in the first place. A row
that is
imputed,fallback,missing,inactive,retired,not-applicable, orsource-failurenever carries a raw value regardless of licence, and neither does one whose provider or retrieval time is ambiguous.
state and its raw-value policy status before concluding
anything from a blank. Treating every absence as a licence restriction
misclassifies genuine data gaps and inactive indicators.
The policy is fail-closed: if a source has not been reviewed yet, or a
composite indicator draws on one source that has not, the raw value is withheld.
Being publicly accessible is not permission, and neither is a general licence
label in our own registry — only a completed review of the exact dataset counts.
This is also why this particular response refuses JMESPath projection. A
projection could separate a licensed raw value from the attribution and
retrieval fields that authorize publishing it, so both REST and MCP reject a
non-empty projection here rather than risk stripping the credit.
Detailed policy
The Pro indicator drill-down returns all 72 registered indicator rows and a normalized score whenever the scorer has one. It returns a raw source value only when the exact observation is measured, every contributing provider has a completed redistribution review, the response includes the required attribution, and the exact contributing seed has a retrieval timestamp. An imputed, fallback, missing, inactive, retired, not-applicable, source-failure, provider-ambiguous, or retrieval-time-ambiguous row never includes a raw value. The broadlicense label in the indicator registry is source inventory metadata. It is not permission to redistribute a value. The executable policy in server/worldmonitor/resilience/v1/_indicator-source-policy.ts is stricter and uses the exact provider provenance of each observation.
REST and MCP discovery do not advertise JMESPath projection for this response. Both runtimes reject a non-empty projection request because it could detach a permitted raw value from the attribution and retrieval fields that authorize its redistribution.
Each source entry includes the dataset URL, license label, canonical licenseUrl, and a separate attributionUrl when the required attribution target differs from the dataset URL.
Decisions by source
This table reflects the repository source-attribution manifest and the issue-specific source review. Provider terms can change. A new source, mirror, fallback, or constituent makes the observation ineligible until the policy and its tests are updated.
Time and provenance fields
sourceYear or the source observation timestamp describes when the provider measured the phenomenon. retrievedAt describes when WorldMonitor fetched or seeded it. They are not interchangeable. World Bank observations from the static resilience batch use the selected country payload’s seededAt. A dataset recovered from an older batch uses its own _recovered.seededAt, not the new batch metadata time. Other source paths remain unavailable until their exact contributing seed retrieval timestamp is carried into the trace. The API withholds an otherwise licensable raw value when that timestamp is unavailable; it does not reuse the response data version or another seed’s time. Observation age is calculated from the source observation date, never retrieval time. If the source does not publish an observation date, the API leaves source year and observation age absent.
When a composite uses observations from different years, sourceYear is the oldest contributing year. This conservative rule prevents a recent constituent from hiding the age of an older input.
Composite indicators must list every provider that contributed to the selected value. This is required for the World Bank/Eurostat and World Bank/UN Comtrade decisions above.
Normalized scores when raw values are suppressed
A normalized score is WorldMonitor’s derived output after direction, goalposts, runtime weighting, and any documented policy adjustment. The API can therefore expose the normalized score and effective contribution even when upstream terms prevent raw-value redistribution. Suppression is represented by the raw-policy status and reason; it is not represented by a numeric zero.Fail-closed review rules
- Default to no raw value for an unknown indicator or missing provider provenance.
- Require
observedstate. Never expose raw data for imputed, fallback, missing, or inactive rows. - Check every provider in a composite observation. One unreviewed constituent suppresses the complete raw value.
- Do not infer permission from the registry license category, source key, a provider’s public accessibility, or an attribution statement alone.
- Keep provider attribution, source links, license labels, and license URLs with each allow decision. The
observationProvenancefield distinguishes an exact selected source from registry-only attribution. - Re-review provider terms when the source, mirror, extraction path, or dataset-specific terms change.
- Add the indicator to the exhaustive policy table and its tests before serving a new registry entry.
