Docs / Coverage Model

How DaedalMap describes country coverage.

Packs declare coverage against a shared reference list, not by enumerating every country. Two small fields capture the exceptions.

Why coverage is exclusion-based

Every global pack would otherwise list around 200 countries in its metadata. That breaks for two reasons. The list goes stale every time geometry expands to new territories. And a global pack that simply matches the World Factbook sovereign-state list ends up looking less complete than it is, because new geometry rows for territories have no equivalent rows in the dataset.

DaedalMap solves this by declaring two reference lists once, then asking packs to record only their differences against those lists.

Common countries

The common_countries set is the 200 sovereign states that most public datasets ship with. It tracks the World Factbook sovereign-state list and acts as the baseline that every global pack is measured against.

The complement is commonly_missing: 52 territories, dependencies, and special regions that are typically excluded by upstream publishers. Examples include Greenland, Puerto Rico, French overseas regions, and the British Overseas Territories.

Together these two lists cover 252 ISO3 codes that DaedalMap recognizes as valid country-level geography.

How a pack declares coverage

Each global pack declares a geographic_coverage object with four fields:

  • type: global, regional, or country.
  • common_count: how many of the 200 standard countries are included.
  • common_missing: which standard countries are absent. Empty means the pack covers all 200.
  • uncommonly_included: which territories from the commonly_missing list of 52 the pack adds back in.

Actual coverage is then derived as:

actual = common_countries - common_missing + uncommonly_included

Worked example

A pack carrying CO2 emissions for 217 countries declares:

  • common_count: 200
  • common_missing: empty
  • uncommonly_included: 17 entries such as ABW (Aruba), GRL (Greenland), PYF (French Polynesia)

The pack covers 217 ISO3 regions: all 200 standard countries plus 17 listed territories.

Country-specific packs

Single-country packs skip the exclusion lists entirely and declare a country directly:

  • type: country
  • country: ISO3 code, e.g. USA or AUS
  • admin_levels: which administrative levels carry data, e.g. [0, 1, 2] for national, state, and county scale

Regional packs

Regional packs cover a single sub-national region inside a country. They declare both a country code and a region scope, so coverage rolls up to the parent country in the source map and pack catalog.

Why this matters for users

The coverage model means three things in practice. The pack catalog can summarize each pack with one short label such as Global, USA, or 200 of 200, without listing every country. Adding new geometry for obscure territories does not make unrelated packs look less complete. And a pack's declared coverage is testable against the reference lists in continuous integration, so drift between metadata and actual data is caught before publication.

Where the lists live

The reference lists are part of the open engine. They live alongside the ISO codes, country aliases, and currency mappings under mapmover/reference/ in the public repository, and ship with every self-host install.