Country data registry

104 published datasets across 56 countries: PV labels, national installation registers, aggregate statistics and building/roof layers. Use it to find out what a country already publishes before starting a mapping campaign. The role tag is derived from whether PV presence is confirmed and whether records carry geometry, because that decides whether a source can train a model, only calibrate one, or neither.

Train on itConfirmed PV with geometry: Gold or Silver labels.
Roof contextBuildings or roof potential, no PV label. Negatives and the roof universe. Potential is not installed PV.
Bronze onlyModel-derived detections. Active-learning pool; agreement is not validation.
Calibrate onlyCounts or capacity by area, no geometry. Never training labels.
Ask firstRegister exists, record-level export restricted. A partnership lead.
Train on it: what to do next

Clip to an AOI, dissolve overlapping geometry (labels.dissolve_overlapping), then `earthpv labels --aoi <aoi>` and `earthpv chips --aoi <aoi>`. If the records are points rather than polygons, they are Silver: match them to building footprints first and verify a sample against imagery.

Roof context: what to do next

Use as the building layer (`buildings.py`) and for roofclf negatives. Roof POTENTIAL is not installed PV -- never label these as positives.

Bronze only: what to do next

Bronze only. Use for active-learning candidate pools and completeness comparisons; verify a sample before any retrain, and never report agreement with them as validation.

Calibrate only: what to do next

No geometry, so no training. Compare against `density`/atlas output per region the way `validate-mastr` and `validate-france` do, and use for adoption priors and sampling allocation.

Ask first: what to do next

Treat as a partnership lead. Ask for privacy-safe coordinates or building identifiers plus an operational-status field; that is what turns it into `train_positives`.

CountryDataset RolePriority ScaleLicence / access