Review checklist¶
Work through this before opening a PR. Reviewers use the same list.
Licensing¶
- Source appears on the green list, or its terms have been checked and explicitly cleared
-
source.name,source.url,source.licenseandsource.retrievedare all filled in -
licenseis a valid SPDX identifier - Attribution requirements, if any, are satisfiable by the catalog page
- Data is not from GADM, a proprietary provider, or an unlicensed source
Naming and layout¶
- Path is
data/{body}/{CODE}/{CODE}_{LEVEL}.geojson -
CODEis the correct uppercase ISO 3166-1 alpha-3 - Extension is
.geojson, and there is no duplicate.json - Previews are in
preview/named{stem}.preview.geojson - No spaces, accents or non-ASCII characters in any path
File contents¶
- Valid GeoJSON (
npx @mapbox/geojsonhint file.geojson) -
FeatureCollectionwith a top-levelbbox - No
crsmember — forbidden by RFC 7946 - Coordinates are longitude-first, EPSG:4326 / CRS84
- No more than 6 decimal places of coordinate precision
- Minified, not pretty-printed
- Right-hand-rule winding
- Antimeridian crossings cut at 180°, if applicable
- No
nullgeometries
Properties¶
-
shapeName,shapeISO,shapeGroup,shapeTypeon every feature -
shapeISOis a string, zero-padded where the official code requires -
shapeTypematches the file's level - Source attributes preserved under
src_ - Esri artifacts removed (
objectid,st_area_sh,st_length_,shape_leng) - Names carry correct diacritics and show no mojibake (
Ã,Â,â€) - Names are not abbreviated
Nesting, where multiple levels are present¶
- Every ADMn feature nests inside exactly one ADMn-1 feature
-
parentISOis populated and resolves - All levels come from the same vintage
Manifest¶
-
manifest.jsonexists in the country directory - Hand-authored fields complete:
body,iso_a3,iso_a2,m49_region,name,crs,source,status -
datasetsregenerated withbuild_manifest.py, not hand-edited - Feature count matches the official number of units, or
notesexplains the discrepancy - Bounding box is in the correct hemisphere
Previews¶
- A preview exists for every dataset
- Each preview is under 2 MB (target: under 800 KB)
- Preview feature count equals the source feature count
- Rendered preview looks like the country — no missing islands, no slivers
Size¶
- Every
.geojsonis under 50 MB - No Git LFS
Documentation¶
- If the country has quirks — missing levels, disputed areas, unusual
codes — they are in
notes - If a new convention was needed, Reference is updated in the same PR
Build¶
-
mkdocs build --strictpasses - The new pages render correctly under
mkdocs serve