WWF Terrestrial Ecoregions of the World (2017)

Global dataset of 847 terrestrial ecoregions delineated by the World Wildlife Fund, grouped into 14 biomes and 9 biogeographic realms, based on the Olson et al. (2001) classification updated by Dinerstein et al. (2017). Each ecoregion represents a distinct community of plants and animals sharing an evolutionary history. Includes Nature Needs Half (NNH) protection status indicating the degree to which each ecoregion meets a 50% habitat-protection threshold.

biodiversity conservation ecology global-coverage geoparquet pmtiles h3

Dataset files (1 x .filegdb)

Source Cooperative product page

## README.md
# WWF Terrestrial Ecoregions of the World

**847 global terrestrial ecoregions** grouped into 14 biomes and 9 biogeographic realms, with Nature Needs Half (NNH) protection status for each.

- **Source**: World Wildlife Fund / Dinerstein et al. (2017)
- **License**: CC-BY 4.0
- **DOI**: [10.1093/biosci/bix014](https://doi.org/10.1093/biosci/bix014)
- **Temporal coverage**: Based on Olson et al. (2001), updated 2017

## Files

| File | Format | Description |
|------|--------|-------------|
| `ecoregion.parquet` | GeoParquet | 847 ecoregion polygons |
| `ecoregion.pmtiles` | PMTiles | Web map tiles (source-layer: `ecoregion`) |
| `ecoregion/hex/` | H3 Parquet (res 8) | Hex-indexed, partitioned by h0 |
| `ecoregions.gdb/` | ESRI GDB | Original source geodatabase |

## Data Dictionary

| Column | Type | Description |
|--------|------|-------------|
| `ECO_NAME` | string | Ecoregion name (unique) |
| `ECO_ID` | float | Unique numeric ecoregion ID |
| `BIOME_NUM` | float | Biome code (1–14) |
| `BIOME_NAME` | string | Biome type (see below) |
| `REALM` | string | Biogeographic realm (see below) |
| `ECO_BIOME_` | string | Combined ecoregion–biome code |
| `NNH` | float | Nature Needs Half code (1–4) |
| `NNH_NAME` | string | NNH category (see below) |
| `COLOR` | string | Hex color for ecoregion display |
| `COLOR_BIO` | string | Hex color for biome display |
| `COLOR_NNH` | string | Hex color for NNH display |
| `LICENSE` | string | Always "CC-BY 4.0" |
| `SHAPE_Area` | float | Area in degrees² (use geometry for real area) |
| `SHAPE` | bytes | WKB geometry, EPSG:4326, MultiPolygon |
| `bbox` | struct | Bounding box (xmin, ymin, xmax, ymax) |
| `h8` | uint64 | H3 res-8 cell (hex parquet only, INTEGER encoding) |
| `h0` | int64 | H3 res-0 partition key (hex parquet only) |

### Biomes (BIOME_NAME)

| Code | Name | Count |
|------|------|-------|
| 1 | Tropical & Subtropical Moist Broadleaf Forests | 230 |
| 2 | Tropical & Subtropical Dry Broadleaf Forests | 56 |
| 3 | Tropical & Subtropical Coniferous Forests | 15 |
| 4 | Temperate Broadleaf & Mixed Forests | 83 |
| 5 | Temperate Conifer Forests | 47 |
| 6 | Boreal Forests/Taiga | 26 |
| 7 | Tropical & Subtropical Grasslands, Savannas & Shrublands | 58 |
| 8 | Temperate Grasslands, Savannas & Shrublands | 48 |
| 9 | Flooded Grasslands & Savannas | 25 |
| 10 | Montane Grasslands & Shrublands | 46 |
| 11 | Tundra | 51 |
| 12 | Mediterranean Forests, Woodlands & Scrub | 40 |
| 13 | Deserts & Xeric Shrublands | 102 |
| 14 | Mangroves | 19 |

### Realms (REALM)

| Realm | Count |
|-------|-------|
| Palearctic | 205 |
| Neotropic | 179 |
| Afrotropic | 116 |
| Nearctic | 115 |
| Indomalayan | 106 |
| Australasia | 83 |
| Oceania | 24 |
| Antarctica | 18 |

### Nature Needs Half (NNH_NAME)

| Code | Category | Count | Meaning |
|------|----------|-------|---------|
| 1 | Half Protected | 98 | ≥50% of ecoregion currently under formal protection |
| 2 | Nature Could Reach Half Protected | 313 | <50% protected but enough intact habitat remains to reach 50% |
| 3 | Nature Could Recover | 228 | Insufficient intact habitat, but restoration could achieve 50% |
| 4 | Nature Imperiled | 207 | Heavily converted; reaching 50% protection would require major restoration |

## Usage Examples

### DuckDB

```sql
INSTALL httpfs; LOAD httpfs;
SET s3_endpoint='s3-west.nrp-nautilus.io';
SET s3_url_style='path';

-- Count ecoregions per biome
SELECT BIOME_NAME, COUNT(*) as n_ecoregions
FROM read_parquet('s3://public-ecoregion/ecoregion.parquet')
GROUP BY BIOME_NAME
ORDER BY n_ecoregions DESC;

-- Join hex parquet with ecoregion attributes
SELECT h8, ECO_NAME, BIOME_NAME, NNH_NAME
FROM read_parquet('s3://public-ecoregion/ecoregion/hex/**/*.parquet')
LIMIT 100;
```

### MapLibre GL JS

```javascript
const map = new maplibregl.Map({ /* ... */ });

map.on('load', () => {
  map.addSource('ecoregion', {
    type: 'vector',
    url: 'pmtiles://https://s3-west.nrp-nautilus.io/public-ecoregion/ecoregion.pmtiles'
  });

  map.addLayer({
    id: 'ecoregion-fill',
    type: 'fill',
    source: 'ecoregion',
    'source-layer': 'ecoregion',   // always 'ecoregion' for this dataset
    paint: {
      'fill-color': ['get', 'COLOR'],
      'fill-opacity': 0.6
    }
  });

  map.addLayer({
    id: 'ecoregion-outline',
    type: 'line',
    source: 'ecoregion',
    'source-layer': 'ecoregion',
    paint: {
      'line-color': '#333',
      'line-width': 0.5
    }
  });
});
```

## Citation

Dinerstein, E., et al. (2017). An Ecoregion-Based Approach to Protecting Half the Terrestrial Realm. *BioScience*, 67(6), 534–545. https://doi.org/10.1093/biosci/bix014

Original classification:
Olson, D. M., et al. (2001). Terrestrial Ecoregions of the World: A New Map of Life on Earth. *BioScience*, 51(11), 933–938.

extent.temporal: None (probe sample) widened to ['2001-01-01T00:00:00Z', '2017-01-01T00:00:00Z'] using README-stated coverage ['2001', '2017'].


EPA Water Datasets

Polygon service-area boundaries for 44,656 community public water systems (CWS) in the United States, covering all 50 states, DC, and tribal/territorial areas (~99% of U.S. CWS-served population). Roughly 60% of boundaries are authoritative (from state primacy agencies and utilities); the remainder are EPA-modeled using building footprints, parcels, population data, and OpenStreetMap. Published as GeoParquet, PMTiles, and H3-partitioned hex parquet for spatial joins.

hydrology administrative-boundaries drinking-water geoparquet pmtiles h3 demographics environmental-monitoring

cws.parquet

[admin_code] Two-letter state or EPA-region code of the regulating primacy agency

geom

[geometry] MultiPolygon service area boundary, WGS84 (EPSG:4326)

epa-sab-v3/cws/hex

[spatial_index] H3 cell at native resolution 10 (~15,000 m² per cell)

[spatial_index] H3 parent cell at resolution 0; used as hive partition key

[spatial_index] H3 parent cell at resolution 8

[spatial_index] H3 parent cell at resolution 9

13 files sampled for this table

Source Cooperative product page

## epa-sab-v3__cws__README.md
# EPA Community Water System Service Area Boundaries (v3)

Polygon service-area boundaries for **community public water systems (CWS)** in the United States — version 3 (March 2026) of the U.S. EPA Office of Research and Development's Service Area Boundary (SAB) dataset, reprocessed into cloud-native formats.

- **Coverage:** 44,656 community water systems (~99% of U.S. population served by CWS), all 50 states + DC + tribal/territorial. The H3 hex asset represents 44,128 of these (528 very-small features did not cover a single H3 res-10 cell).
- **Provenance:** ~60% authoritative (state primacy agencies, utilities); ~40% EPA-modeled from building footprints, parcels, population, OSM. The `Model_Method` column is empty for authoritative boundaries.
- **Geometry:** MultiPolygon, reprojected from NAD83 (EPSG:4269) to WGS84 (EPSG:4326).
- **License:** U.S. federal data — public domain (no restrictions).
- **Source:** https://www.epa.gov/ground-water-and-drinking-water/community-water-system-service-area-boundaries
- **Citation:** EPA Office of Research and Development. *Community Water System Service Area Boundaries v3*, March 2026. https://github.com/USEPA/ORD_SAB_Model

## What's in this collection

The full v3 release also contains a `T_NTNC` layer (transient + non-transient non-community water systems — schools, campgrounds, gas stations, etc., ~77k features). Only the **CWS** layer is published here; T_NTNC may be added later.

| Asset | Path | Use |
|---|---|---|
| GeoParquet | `epa-sab-v3/cws.parquet` | DuckDB / Polars queries, joins to SDWIS |
| PMTiles | `epa-sab-v3/cws.pmtiles` | Web map (`source-layer: cws`) |
| H3 hex parquet | `epa-sab-v3/cws/hex/h0={cell}/data_0.parquet` | Spatial joins, overlays with watersheds, fire-risk, demographics |

The raw EPA zip (with documentation PDF and census crosswalk tables) is preserved at `raw/PWS_Boundaries_Latest.zip`.

## Key columns

| Column | Type | Notes |
|---|---|---|
| `PWSID` | string | EPA Public Water System ID — canonical join key to SDWIS. ~13 PWSIDs appear on more than one feature; not strictly unique. |
| `PWS_Name` | string | Utility name as reported by the primacy agency. |
| `Primacy_Agency` | string | Two-letter state/EPA-region code regulating the system. |
| `Pop_Cat_5` | string | Size bucket: `<=500`, `501-3,300`, `3,301-10,000`, `10,001-100,000`, `>100,000`. |
| `Population_Served_Count` | int | Population served by the entire system (range 0–8.3M). |
| `Service_Connections_Count` | int | Active service connections (meters). |
| `Service_Area_Type` | string | EPA SDWIS classification — `Residential Area`, `Municipality`, `Mobile Home Park`, etc. |
| `Model_Method` | string | `` (authoritative) / `Random Forest` / `Decision Tree` / `Parcel` / `OSM`. Empty = highest confidence. |

See the [STAC collection](./stac-collection.json) for the full data dictionary including values for coded columns and per-feature aggregation warnings on the hex asset.

## Usage

### DuckDB (GeoParquet)

```sql
INSTALL spatial; LOAD spatial;
INSTALL httpfs; LOAD httpfs;

-- All Texas community water systems serving >100k people
SELECT PWSID, PWS_Name, Population_Served_Count, Service_Area_Type
FROM read_parquet('https://s3-west.nrp-nautilus.io/public-epa-water/epa-sab-v3/cws.parquet')
WHERE Primacy_Agency = 'TX' AND Pop_Cat_5 = '>100,000'
ORDER BY Population_Served_Count DESC;
```

### DuckDB (H3 hex — spatial joins)

H3 hex parquet is hive-partitioned by `h0`. **Always include an `h0` filter** when querying a region — otherwise you scan all 122 partitions.

```sql
-- Population served by any CWS overlapping a HydroBasins HUC8 (example)
WITH region AS (
  SELECT DISTINCT h8 FROM read_parquet(
    'https://s3-west.nrp-nautilus.io/public-hydrobasins/.../hex/h0=*/data_0.parquet'
  ) WHERE HYBAS_ID = 7080023860
),
systems AS (
  SELECT DISTINCT cws.PWSID, cws.PWS_Name, cws.Population_Served_Count
  FROM read_parquet(
    'https://s3-west.nrp-nautilus.io/public-epa-water/epa-sab-v3/cws/hex/h0=*/data_0.parquet'
  ) cws
  JOIN region USING (h8)
)
SELECT SUM(Population_Served_Count) AS total_pop, COUNT(*) AS n_systems FROM systems;
```

The `SELECT DISTINCT cws.PWSID, ...` step is essential — `Population_Served_Count` is repeated on every hex row a service area covers. See the hex asset's `table:columns` description for the full duplication caveat.

### MapLibre GL JS

```js
map.addSource('epa-sab-cws', {
  type: 'vector',
  url: 'pmtiles://https://s3-west.nrp-nautilus.io/public-epa-water/epa-sab-v3/cws.pmtiles'
});

map.addLayer({
  id: 'epa-sab-cws-fill',
  type: 'fill',
  source: 'epa-sab-cws',
  'source-layer': 'cws',   // <-- last segment of --dataset, NOT the GDB layer name
  paint: {
    'fill-color': '#1f78b4',
    'fill-opacity': 0.35,
    'fill-outline-color': '#08306b'
  }
});
```

## Processing notes

- Reprojected from NAD83 (EPSG:4269) to WGS84 (EPSG:4326) at conversion time.
- `Shape_Area` and `Shape_Length` are carried through from the source dataset in the original CRS units; they are **not** recomputed after reprojection. For accurate area, compute from the WGS84 geometry or use the H3 hex count.
- H3 native resolution **10** (≈15,000 m² cells), with parent rollups at 9, 8, and 0.
- One row per (CWS feature, H3 cell) pair in the hex asset.
- Built with [`cng-datasets`](https://github.com/boettiger-lab/datasets) on NRP Nautilus.

license: U.S. federal government work — public domain with no use restrictions under 17 U.S.C. § 105. No SPDX identifier was explicitly assigned; nearest equivalent is CC0-1.0.

providers: role [producer] for 'State primacy agencies and water utilities' is an AI guess — Authoritative boundaries (~60%) were supplied by state primacy agencies and utilities; they are the original spatial data producers for that subset.. Verify before flipping to _state: reviewed.

providers: role [processor] for 'boettiger-lab/cng-datasets (NRP Nautilus)' is an AI guess — Identified as the processing pipeline that reprojected to WGS84 and produced the cloud-native GeoParquet, PMTiles, and H3 hex assets.. Verify before flipping to _state: reviewed.

extent.spatial.bbox: omitted; spatial reference is categorical via [epa-sab-v3.geom (geometry), epa-sab-v3.Primacy_Agency (admin_code), epa-sab-v3/cws/hex.h10 (spatial_index), epa-sab-v3/cws/hex.h9 (spatial_index), epa-sab-v3/cws/hex.h8 (spatial_index), epa-sab-v3/cws/hex.h0 (spatial_index), epa-sab-v3/cws/hex.Primacy_Agency (admin_code)]. Add bbox once the placename → bbox gazetteer covers it.


Wildfire Boundary Polygons from USGS and CalFire in cloud native formats

Snapshots of fire polygon boundaries from USGS Monitoring Trends in Burn Severity (MTBS) and the California Department of Forestry and Fire Protection (CalFire), including burned area extents and controlled burn treatments through 2022. Also includes Wildfire Hazard Potential raster data for the contiguous United States at 270-m resolution. Distributed in cloud-native formats including PMTiles and GeoParquet.

wildfire conservation fire-perimeters burned-area wildfire-hazard pmtiles

Dataset files (1 x .filegdb)

Source Cooperative product page

## README.md
# fire

Snapshots of fire polygons data from multiple sources.  Cloud-optimized formats include PMTiles and (Geo)Parquet serializations.

## USGS MTBS Fire perimiters:

- Original shapefiles for burned area extent downloaded from: https://edcintl.cr.usgs.gov/downloads/sciweb1/shared/MTBS_Fire/data/composite_data/burned_area_extent_shapefile/mtbs_perimeter_data.zip

## Calfire

- Original geodatabase file up to year 2022 downloaded from: https://www.fire.ca.gov/what-we-do/fire-resource-assessment-program/gis-mapping-and-data-analytics

PMTiles created using gdal 3.8.4 via

```
ogr2ogr -dsco MAX_SIZE=50000000 -dsco MAX_FEATURES=20000000 calfire-2022.pmtiles CALFIRE/fire22_1.gdb
```

[Example map](https://data.source.coop/cboettig/fire/fire-pmtiles.html) created using [map.py](https://data.source.coop/cboettig/fire/map.py)

## Wildfire Hazard Potential

> Dillon, Gregory K. 2023. Wildfire Hazard Potential for the United States (270-m), version 2023. 4th Edition. Fort Collins, CO: Forest Service Research Data Archive. https://doi.org/10.2737/RDS-2015-0047-4

license: AI returned 'unknown' (README does not state a license). Verify with publisher before flipping to _state: reviewed.

providers: role [producer] for 'USDA Forest Service Research Data Archive' is an AI guess — Cited as publisher of the Wildfire Hazard Potential dataset (DOI 10.2737/RDS-2015-0047-4); assumed producer role. Verify before flipping to _state: reviewed.

providers: role [processor] for 'cboettig' is an AI guess — Source Cooperative account that produced the cloud-native PMTiles and GeoParquet serializations from original source files. Verify before flipping to _state: reviewed.


Parquet Snapshots of the FishBase Database

Versioned parquet and CSV snapshots of the FishBase and SeaLifeBase MySQL backend databases, exported roughly annually and curated for programmatic access via the rOpenSci rfishbase package. The dataset comprises dozens of raw relational tables covering fish and marine species biology, taxonomy, ecology, abundance, and fisheries statistics. Data structure reflects the original MySQL schema and may require multi-table joins for common queries.

fish fisheries ecology biodiversity marine-biology species-database conservation

abnorm.parquet

Location

[placename] Named location where the abnormality or disease was observed

abnormref.parquet

abundance.parquet

Locality

[placename] Named locality where the abundance record was collected

[admin_code] Country code for the abundance record location

abundancedelta.parquet

acknowledge.parquet

withoutpicture.parquet

withphotos.parquet

wpicture.parquet

zweb_picturetype.parquet

zweb_speciesgroups.parquet

Source Cooperative product page

## README.md
---
license: cc-by-nc-4.0
---

# Dataset Card for FishBase

<!-- Provide a quick summary of the dataset. -->

Snapshots of FishBase data tables used by the [rOpenSci package `rfishbase`](https://github.com/ropensci/rfishbase) and the FishBase API.

## Dataset Details

### Dataset Description

<!-- Provide a longer summary of what this dataset is. -->

- **Curated by:** Carl Boettiger
- **License:** CC-BY-NC, FishBase.org Team

### Dataset Sources

<https://fishbase.org>, <https://sealifebase.org>, via exclusive export of backend MySQL databases.

## Uses

<!-- Address questions around how the dataset is intended to be used. -->

### Direct Use

This data is provided to facilitate access to fishbase statistics through `rfishbase`.
Curation has evolved over the past decade and now provides basically direct access to versioned snapshots of the fishbase backend data.

### Out-of-Scope Use

Reuse of this data is not licensed for commerical applications. Developers should contact the FishBase team directly. See <https://fishbase.org> for details.

## Dataset Structure

Data provided here are raw CSV and parquet exports from the MySQL database backend powering <https://fishbase.org> and its sister site, <https://sealifebase.org>.
Please note that there are many tables here which have evolved over decades and were not developed with the intent of ever supporting direct access by end users.
The data structure can be highly unintuitive and common tasks may require joins across multiple tables.  These files represent a snapshot in time as indicated
by the version numbers (e.g. v24.07 is data snapshot dated to July of 2024).

## Dataset Creation

Dataset creation relies on ingesting a MySQL dump provided roughly annually from the FishBase team to this maintainer.  Current process imports this into
a MySQL (mariadb) server in docker, connects a the `duckdb` `mysql` extension and exports as parquet and csv, as shown in the `creation.py` script.

### Source Data

See <https://fishbase.org> for details.

license: Licensed CC-BY-NC by the FishBase.org Team; commercial reuse requires contacting FishBase directly.

extent.spatial.bbox: omitted; spatial reference is categorical via [abundance.Locality (placename), abundance.C_Code (admin_code), abnorm.Location (placename)]. Add bbox once a placename → bbox gazetteer is available.


H3-Indexed cloud-optimized snapshots of GBIF

Cloud-optimized GeoParquet snapshots of Global Biodiversity Information Facility (GBIF) occurrence records covering over 3 billion biodiversity observations worldwide. Records are enriched with H3 hierarchical hexagonal spatial index keys at resolutions 0–10 and partitioned by H3 resolution-0 cell for fast spatial aggregations. Includes derived products: taxonomic aggregation counts per hexagon and a spatial join with historical US redlining (Mapping Inequality) polygons.

biodiversity h3 geoparquet global-coverage ecology species-occurrences environmental-monitoring

2024-10-01

countrycode

[admin_code] ISO 2-letter country code of occurrence

stateprovince

[placename] State or province name of occurrence

decimallatitude

[latlon] Decimal latitude of occurrence record

decimallongitude

[latlon] Decimal longitude of occurrence record

geom

[geometry] OGC CRS84 point geometry of occurrence

5 files sampled for this table

taxonomy

[spatial_index] H3 resolution-0 hexagonal cell index for taxonomic aggregation grouping

4 files sampled for this table

tmp.parquet

[spatial_index] H3 resolution-0 hexagonal cell index (partition key); h1–h11 also present at finer resolutions

Source Cooperative product page

## README.md
# GBIF Occurrence Data & Derived Products

Processed GBIF occurrence data hexed at H3 resolutions 0-10, plus derived products.

GBIF releases new snapshots periodically. Releases are versioned by `year-month` (e.g., `2025-06`) so multiple versions can coexist in the bucket during transitions. **Always use the most recent release for new work.**

## Current Release: 2025-06

**Path:** `s3://public-gbif/2025-06/hex/`

Global GBIF occurrences partitioned by H3 resolution 0 cell. 94 non-empty h0 partitions covering the globe.

### Schema

- Taxonomic columns: `gbifid`, `datasetkey`, `occurrenceid`, `kingdom`, `phylum`, `class`, `order`, `family`, `genus`, `species`, `infraspecificepithet`, `taxonrank`, `scientificname`, `verbatimscientificname`, `verbatimscientificnameauthorship`
- Spatial/occurrence columns: `countrycode`, `locality`, `stateprovince`, `occurrencestatus`, `individualcount`, `decimallatitude`, `decimallongitude`, `coordinateuncertaintyinmeters`, `coordinateprecision`, `elevation`, `depth`, `eventdate`, `day`, `month`, `year`, `taxonkey`, `specieskey`, `basisofrecord`, `institutioncode`, `collectioncode`, `catalognumber`, `recordnumber`, `identifiedby`, `dateidentified`, `license`, `rightsholder`, `recordedby`, `typestatus`, `establishmentmeans`, `lastinterpreted`, `mediatype`, `issue`, `geom`
- H3 hex columns: `h0` (VARCHAR, partition key), `h1`-`h10` (UBIGINT)

### DuckDB Example

```sql
INSTALL h3 FROM community; LOAD h3;
INSTALL httpfs; LOAD httpfs;
SET s3_endpoint = 's3-west.nrp-nautilus.io';
SET s3_url_style = 'path';

-- Count occurrences by family in a single h0 cell
SELECT family, COUNT(*) AS n
FROM read_parquet('s3://public-gbif/2025-06/hex/h0=8009fffffffffff/part/*.parquet')
GROUP BY family
ORDER BY n DESC
LIMIT 20;
```

## Deprecated: Legacy Hex (pre-2025)

**Path:** `s3://public-gbif/hex/` — **DEPRECATED, do not use for new work.**

This is the original hex partition with all h0-h11 columns stored as VARCHAR strings. It is retained only for backward compatibility with existing applications. It will be removed once no active apps depend on it. See [GitHub issue](https://github.com/boettiger-lab/data-workflows/issues) for tracking.

## Other Assets

### GBIF Occurrences in Redlined Cities
**File:** `s3://public-gbif/redlined_cities_gbif.parquet`

Spatial join of GBIF occurrences with "Mapping Inequality" (Redlining) polygons for US cities.

**Schema:** `gbifid`, `scientificname`, `kingdom`, `phylum`, `class`, `order`, `family`, `genus`, `species`, `recordedby`, `date`, `coordinateuncertaintyinmeters`, `city`, `state`, `grade` (A-D), `residential`, `commercial`, `industrial`

### Taxonomic Aggregations by H3 Hexagon
**Prefix:** `s3://public-gbif/taxonomy/` (partitioned by `h0`)

Aggregated counts of taxa within H3 resolution 0 hexagons.

**Schema:** `scientificname`, `kingdom`, `phylum`, ... `species`, `n` (count), `h0`

### Taxa List
**File:** `s3://public-gbif/taxa.parquet`

Reference list of all taxa found in the dataset.

## Source & Citation

- **Producer:** Global Biodiversity Information Facility (GBIF)
- GBIF.org (2025). GBIF Occurrence Download. <https://www.gbif.org/>
- Nelson, R. K., et al. (2023). Mapping Inequality. (for redlined cities asset)

## License

- **GBIF Data:** See [GBIF Data Use Agreement](https://www.gbif.org/terms). Individual records may have specific licenses (CC0, CC-BY, CC-BY-NC).
- **Redlining Data:** CC-BY-NC-SA 4.0.

extent.spatial.bbox: omitted; spatial reference is categorical via [..decimallatitude (latlon), ..decimallongitude (latlon), ..geom (geometry), ..h0 (spatial_index), ..countrycode (admin_code), ..stateprovince (placename), 2024-10-01.decimallatitude (latlon), 2024-10-01.decimallongitude (latlon), 2024-10-01.geom (geometry), 2024-10-01.h0 (spatial_index), 2024-10-01.countrycode (admin_code), 2024-10-01.stateprovince (placename), taxonomy.h0 (spatial_index)]. Add bbox once the placename → bbox gazetteer covers it.


Annual apparent fishing effort derived from AIS vessel tracking, aggregated to H3 resolution-6 hexagonal cells (~36 km²) by gear type for the global ocean. Covers 2012–2024 in Hive-partitioned Parquet files, with supplementary annual Cloud-Optimized GeoTIFFs at 0.1° resolution. Gear type is preserved in aggregation; flag state is dropped.

h3 oceanography global-coverage time-series cloud-optimized-geotiff fishing-effort vessel-tracking

00

[spatial_index] H3 resolution-6 hexagonal cell ID (~36 km² average area)

[spatial_index] H3 resolution-0 parent cell, used as Hive partition key

10 files sampled for this table

Source Cooperative product page

## README.md
# Global Fishing Watch Annual Fishing Effort v3 (2012–2024)

Annual apparent fishing effort from AIS vessel tracking, aggregated to H3 resolution-6 hexagonal cells (~36 km²) by gear type. Annual Cloud-Optimized GeoTIFFs at 0.1° resolution are also available for raster visualization.

- **Source:** [Global Fishing Watch / Zenodo](https://zenodo.org/records/14982712) — fleet-monthly v3.0 (released March 2025)
- **License:** CC BY-NC 4.0 — **non-commercial use only**
- **Coverage:** 2012–2024, global ocean
- **Bucket:** `s3://public-gfw/`

## Data Structure

```
s3://public-gfw/
├── raw/                                              # Original Zenodo ZIPs
│   └── fleet-monthly-csvs-10-v3-{YYYY}.zip
├── gfw-fishing-effort-{YYYY}-cog.tif                # Annual COG (2012–2024)
└── gfw-fishing-effort/
    └── hex/
        └── h0={cell}/data_00.parquet                # h0-partitioned hex (all years)
```

**Hex columns:** `h6` (H3 res-6 cell), `h0` (partition key), `year`, `geartype`, `fishing_hours`, `ais_hours`, `vessel_month_count`

**H3 resolution:** 6 (~36 km² avg cell area). Source data is 0.1° (~123 km²) monthly by flag+geartype. Each 0.1° cell center maps to ~3 H3 res-6 cells. Flag state is dropped in aggregation; gear type is preserved.

**Partition layout:** Hive-partitioned by `h0` (H3 resolution-0 parent cell) — the standard layout shared by all datasets in this catalog. All 13 years (2012–2024) are stored together within each h0 file; filter with `WHERE year = YYYY` for single-year queries.

## Gear Types

Values present in data: `dredge_fishing`, `fishing` (unclassified), `fixed_gear` (subtype uncertain), `other_purse_seines`, `pole_and_line`, `pots_and_traps`, `purse_seines`, `seiners`, `set_gillnets`, `set_longlines`, `trawlers`, `trollers`, `tuna_purse_seines`

## DuckDB Examples

```sql
-- Total fishing hours by gear type in 2022 (single-year query)
SELECT geartype, SUM(fishing_hours) as fishing_hours
FROM read_parquet('https://s3-west.nrp-nautilus.io/public-gfw/gfw-fishing-effort/hex/h0=*/data_00.parquet',
                  hive_partitioning = true)
WHERE year = 2022
GROUP BY geartype ORDER BY fishing_hours DESC;

-- Annual trawling effort trend globally
SELECT year, SUM(fishing_hours) as trawl_hours
FROM read_parquet('https://s3-west.nrp-nautilus.io/public-gfw/gfw-fishing-effort/hex/h0=*/data_00.parquet',
                  hive_partitioning = true)
WHERE geartype = 'trawlers'
GROUP BY year ORDER BY year;

-- Fishing effort inside EEZs by sovereign state (2022)
-- h0 join prunes both datasets to matching ocean cells
LOAD h3;
SELECT e.SOVEREIGN1, SUM(f.fishing_hours) as fishing_hours
FROM read_parquet('https://s3-west.nrp-nautilus.io/public-gfw/gfw-fishing-effort/hex/h0=*/data_00.parquet',
                  hive_partitioning = true) f
JOIN read_parquet('https://s3-west.nrp-nautilus.io/public-high-seas/iho/eez/hex/h0=*/data_0.parquet',
                  hive_partitioning = true) e
  ON f.h0 = e.h0
  AND h3_cell_to_parent(f.h6, 8) = e.h8
WHERE f.year = 2022
GROUP BY e.SOVEREIGN1 ORDER BY fishing_hours DESC LIMIT 10;
```

## MapLibre GL JS (COG via titiler)

No PMTiles are provided — use the annual COGs with a titiler raster tile source for web map visualization:

```javascript
map.addSource('gfw-2022', {
  type: 'raster',
  tiles: [
    'https://titiler.xyz/cog/tiles/WebMercatorQuad/{z}/{x}/{y}.png' +
    '?url=https://s3-west.nrp-nautilus.io/public-gfw/gfw-fishing-effort-2022-cog.tif' +
    '&colormap_name=hot_r&rescale=0,500'
  ],
  tileSize: 256
});
map.addLayer({
  id: 'gfw-2022',
  type: 'raster',
  source: 'gfw-2022',
  paint: { 'raster-opacity': 0.8 }
});
```

Replace `2022` with any year 2012–2024. Adjust `rescale` (fishing hours range) to taste.

## Notes

- `ais_hours` is total AIS presence time (fishing + transiting + loitering); always ≥ `fishing_hours`.
- `vessel_month_count` sums monthly MMSI presences — **not unique vessels**. A vessel active 12 months contributes 12.
- `fishing` and `fixed_gear` are catch-all gear types used when the model cannot classify more specifically.
- AIS adoption improved significantly over time — early years (2012–2014) undercount effort relative to later years.

providers: role [host] for 'Zenodo' is an AI guess — Zenodo is cited as the upstream source archive; assumed host of original ZIPs based on the Zenodo record URL in the README.. Verify before flipping to _state: reviewed.

extent.temporal: None (probe sample) widened to ['2012-01-01T00:00:00Z', '2024-01-01T00:00:00Z'] using README-stated coverage ['2012', '2024'].

extent.spatial.bbox: omitted; spatial reference is categorical via [00.h6 (spatial_index), 00.h0 (spatial_index)]. Add bbox once the placename → bbox gazetteer covers it.


Wildlife Habitat Corridors

Ungulate wildlife habitat corridors in the Western United States, derived from the USGS Ungulate Migrations of the Western United States, Volume 2. The dataset covers migration routes and corridors for elk and other large ungulates across the western US, distributed in vector formats including Shapefile, GeoParquet, GeoPackage, and PMTiles.

wildlife biodiversity habitat-corridors ungulates migration conservation western-us

Dataset files (96 x .shp)

Source Cooperative product page

## README.md
# Wildlife Habitat Corridors

[Ungulate corridors in Western US from Conservation.gov](https://www.conservation.gov/datasets/0deb6a49c1a74ca0a9d52577134e5e14_0/about), based on
USGS Ungulate Migrations of the Western United States, Volume 2.

> Kauffman, M.J., Lowrey, B., Beck, J., Berg, J., Bergen, S., Berger, J., Cain, J., Dewey, S., Diamond, J., Duvuvuei, O., Fattebert, J., Gagnon, J., Garcia, J., Greenspan, E., Hall, E., Harper, G., Harter, S., Hersey, K., Hnilicka, P., Hurley, M., Knox, L., Lawson, A., Maichak, E., Meacham, J., Merkle, J., Middleton, A., Olson, D., Olson, L., Reddell, C., Robb, B., Rozman, G., Sawyer, H., Schroeder, C., Scurlock, B., Short, J., Sprague, S., Steingisser, A., and Tatman, N., 2022, Ungulate Migrations of the Western United States, Volume 2: U.S. Geological Survey data release, https://doi.org/10.5066/P9TKA3L8.

Additional data appears to be available in the USGS record


GEBCO 2025 is a global terrain model for ocean and land at 15 arc-second resolution (~450 m at the equator), providing elevation values in metres relative to mean sea level (negative for ocean depth, positive for land elevation). This sub-ice topography variant includes bathymetry beneath the Greenland and Antarctic ice sheets. Data are distributed as a Cloud-Optimized GeoTIFF and as H3 resolution-8 hexagonal Parquet tiles.

oceanography digital-elevation-model topography elevation global-coverage cloud-optimized-geotiff h3 cryosphere

ebsa.parquet

[geometry] Polygon boundary geometry in EPSG:4326

ebsa/hex

[spatial_index] H3 resolution-8 cell index

[spatial_index] H3 resolution-0 base cell index

[spatial_index] H3 resolution-5 cell index

[spatial_index] H3 resolution-6 cell index

[spatial_index] H3 resolution-7 cell index

4 files sampled for this table

seafloor-geomorphology/hex

STRUCT(xmin FLOAT, ymin FLOAT, xmax FLOAT, ymax FLOAT)

5 files sampled for this table

Source Cooperative product page

## README.md
# GEBCO 2025 Global Seafloor Bathymetry

Global terrain model for ocean and land at 15 arc-second intervals (~450m at equator). Sub-ice topography variant — includes bathymetry beneath the Greenland and Antarctic ice sheets. Values are in metres relative to mean sea level; negative = ocean depth, positive = land elevation.

**Source:** [GEBCO 2025 Gridded Bathymetry Data](https://www.gebco.net/data-products/gridded-bathymetry-data/)
**License:** [GEBCO Data Licence](https://www.gebco.net/data-products/gridded-bathymetry-data/#licence) — free to use with attribution
**Citation:** GEBCO Compilation Group (2025) GEBCO 2025 Grid (doi:10.5285/8896b933-5744-4bdf-862b-43a76c3f91a8)

## Files

| File | Description |
|------|-------------|
| `gebco-2025-cog.tif` | Cloud-optimized GeoTIFF, 15 arc-sec, EPSG:4326, ~3.3 GB |
| `gebco-2025/hex/h0=*/data_0.parquet` | H3 resolution 8 hex parquet, mean elevation per cell |

## DuckDB Example

```sql
INSTALL httpfs; LOAD httpfs;

-- Sample bathymetry near the Mariana Trench (h0 cell covering NW Pacific)
SELECT
  h8,
  elevation as depth_m,
  h3_cell_to_lat(h8) as lat,
  h3_cell_to_lng(h8) as lng
FROM read_parquet('https://s3-west.nrp-nautilus.io/public-high-seas/gebco-2025/hex/h0=*/data_0.parquet')
WHERE elevation < -8000
ORDER BY elevation
LIMIT 10;

-- Depth distribution in the high seas (< -200m)
SELECT
  FLOOR(elevation / 1000) * 1000 as depth_bin,
  COUNT(*) as n_cells
FROM read_parquet('https://s3-west.nrp-nautilus.io/public-high-seas/gebco-2025/hex/h0=*/data_0.parquet')
WHERE elevation < -200
GROUP BY depth_bin
ORDER BY depth_bin;
```

## TiTiler / MapLibre Example

The COG can be visualized via TiTiler:

```
https://titiler.xyz/cog/tiles/{z}/{x}/{y}.png
  ?url=https://s3-west.nrp-nautilus.io/public-high-seas/gebco-2025-cog.tif
  &colormap_name=blues_r
  &rescale=-6000,0
```

```javascript
map.addSource('gebco', {
  type: 'raster',
  tiles: [
    'https://titiler.xyz/cog/tiles/{z}/{x}/{y}.png' +
    '?url=https://s3-west.nrp-nautilus.io/public-high-seas/gebco-2025-cog.tif' +
    '&colormap_name=blues_r&rescale=-6000,0'
  ],
  tileSize: 256
});
map.addLayer({
  id: 'gebco-bathymetry',
  type: 'raster',
  source: 'gebco'
});
```

extent.spatial.bbox: omitted; spatial reference is categorical via [..geom (geometry), ebsa/hex.h8 (spatial_index), ebsa/hex.h7 (spatial_index), ebsa/hex.h6 (spatial_index), ebsa/hex.h5 (spatial_index), ebsa/hex.h0 (spatial_index), seafloor-geomorphology/hex.h6 (spatial_index), seafloor-geomorphology/hex.h5 (spatial_index), seafloor-geomorphology/hex.h0 (spatial_index)]. Add bbox once the placename → bbox gazetteer covers it.


iNaturalist Species Ranges & Taxonomy

Species range maps, taxonomic hierarchy, and vernacular names derived from iNaturalist's Geomodel and expert range estimation products. Ranges are provided as GeoParquet polygons partitioned by iconic taxon group and as H3 resolution-4 hexagonal grid cells. Taxonomy tables include the full Linnaean hierarchy and common names in hundreds of languages.

biodiversity ecology global-coverage h3 geoparquet species-ranges taxonomy

hex

[spatial_index] H3 resolution 4 hexagon index representing rasterized species range cells

5 files sampled for this table

taxon

[geometry] Modeled species range polygon geometry in OGC:CRS84 (WGS 84 geographic)

3 files sampled for this table

taxonomy

2 files sampled for this table

Source Cooperative product page

## README.md
# iNaturalist Species Ranges & Taxonomy

This dataset contains species range maps, taxonomic information, and vernacular names from iNaturalist. It appears to be derived from the iNaturalist Geomodel or similar range estimation products.

## Assets

### 1. Species Ranges (GeoParquet)
**Prefix:** `s3://public-inat/taxon/`
Partitioned by `iconic_taxon_name` (e.g., Animalia, Plantae, Insecta).

**Schema:**
- `taxon_id`: iNaturalist Taxon ID
- `scientificName`: Scientific Name
- `geom`: Geometry (likely modeled range polygons)
- `geomodel_version`: Version of the range model
- `kingdom`, `phylum`, `class`,...: Taxonomic hierarchy

### 2. Range Hexagons (H4)
**File:** `s3://public-inat/ranges.parquet`
Species ranges rasterized/indexed to H3 resolution 4 hexagons.

**Schema:**
- `taxon_id`: iNaturalist Taxon ID
- `name`: Species Name
- `h4`: H3 resolution 4 index
- `iconic_taxon_name`: High-level group

### 3. Taxonomy & Common Names
**Files:**
- `s3://public-inat/taxonomy/taxa.parquet`: Core taxonomy table.
- `s3://public-inat/taxonomy/taxa_and_common.parquet`: Taxonomy with common names.
- `s3://public-inat/taxonomy/vernacular/*.csv`: Common names in hundreds of languages.

## Source

- **Producer:** iNaturalist
- **Link:** [iNaturalist.org](https://www.inaturalist.org/)
- **Note:** This dataset likely represents the "Geomodel" or expert range maps used by iNaturalist for automated identification priors.

## License

- **iNaturalist Data:** See [iNaturalist Terms of Service](https://www.inaturalist.org/pages/terms).
- **Open Data:** Many iNaturalist datasets are CC0 or CC-BY, but check specific taxon licensing.

extent.spatial.bbox: omitted; spatial reference is categorical via [taxon.geom (geometry), hex.h4 (spatial_index)]. Add bbox once the placename → bbox gazetteer covers it.


LandMark is the world's first global platform documenting land rights of Indigenous Peoples and local communities, comprising 124,616 community-level polygon boundaries, 2,646 point locations, and 17,539 model-estimated indicative extents of indigenous and community territories. The v202509 release aggregates boundaries and attributes—including recognition status, population estimates, and area measurements—from local, national, and regional mapping initiatives worldwide.

indigenous-peoples land-tenure global-coverage conservation geoparquet pmtiles h3

indicative-poly.parquet

country

[placename] Country where the territory is located

[admin_code] ISO 3166-1 alpha-3 country code

geom

[geometry] Territory boundary or point geometry in WGS84 (OGC:CRS84)

landmark/indicative-poly/hex

[spatial_index] H3 hex index at resolution 8

[spatial_index] H3 hex parent index at resolution 0

4 files sampled for this table

landmark/iplc-pt/hex

bbox

STRUCT(xmin DOUBLE, ymin DOUBLE, xmax DOUBLE, ymax DOUBLE)

[spatial_index] H3 hex index at resolution 10

[spatial_index] H3 hex index at resolution 9

5 files sampled for this table

Source Cooperative product page

## README.md
# LandMark: Indigenous & Community Land Rights (v202509)

[LandMark](https://landmarkmap.org) provides the world's first global platform to map land rights of Indigenous Peoples and local communities. This collection covers the September 2025 (v202509) release.

**License:** [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/)
**Citation:** LandMark: The Global Platform of Indigenous and Community Lands (v202509). https://landmarkmap.org
**Source:** https://landmarkmap.org/data-methods/

---

## Datasets

| Layer | Features | Geometry | Formats |
|-------|----------|----------|---------|
| IPLC Polygon | 124,616 | Polygon | GeoParquet, PMTiles, H3 hex |
| IPLC Point | 2,646 | Point | GeoParquet, PMTiles |
| Indicative Polygon | 17,539 | Polygon | GeoParquet, PMTiles, H3 hex |

### IPLC Polygon (`iplc-poly`)
Community-level polygon boundaries aggregated from local, national, and regional mapping initiatives. Each feature represents a documented indigenous or community territory.

```
https://s3-west.nrp-nautilus.io/public-indigenous/landmark/iplc-poly.parquet
https://s3-west.nrp-nautilus.io/public-indigenous/landmark/iplc-poly.pmtiles
https://s3-west.nrp-nautilus.io/public-indigenous/landmark/iplc-poly/hex/h0=*/data_0.parquet
```

**PMTiles source-layer:** `iplc-poly`

### IPLC Point (`iplc-pt`)
Point locations (centroids or representative points) for IPLC areas. Useful for overview mapping and tabular joins.

```
https://s3-west.nrp-nautilus.io/public-indigenous/landmark/iplc-pt.parquet
https://s3-west.nrp-nautilus.io/public-indigenous/landmark/iplc-pt.pmtiles
```

**PMTiles source-layer:** `iplc-pt`

### Indicative Areas Polygon (`indicative-poly`)
Model-estimated indicative extent of indigenous and community lands in areas where direct boundary mapping is unavailable. Derived from population surveys, national statistics, and modeling.

```
https://s3-west.nrp-nautilus.io/public-indigenous/landmark/indicative-poly.parquet
https://s3-west.nrp-nautilus.io/public-indigenous/landmark/indicative-poly.pmtiles
https://s3-west.nrp-nautilus.io/public-indigenous/landmark/indicative-poly/hex/h0=*/data_0.parquet
```

**PMTiles source-layer:** `indicative-poly`

---

## Field Descriptions

All polygon and point layers share the same schema:

| Field | Type | Description |
|-------|------|-------------|
| `_cng_fid` | int64 | Internal feature ID |
| `OGC_FID` | int64 | Original source feature ID |
| `identity` | string | Identity type (Indigenous Peoples / Local Communities) |
| `name` | string | Name of the community or people |
| `form_rec` | string | Form of recognition of the land right |
| `doc_status` | string | Documentation status |
| `stat_date` | string | Date of status determination |
| `stat_note` | string | Notes on status |
| `country` | string | Country where territory is located |
| `category` | string | Category of land right |
| `ethncty_1` | string | Primary ethnicity/group classification |
| `populatn` | int64 | Population estimate |
| `pop_source` | string | Source of population estimate |
| `pop_year` | int64 | Year of population estimate |
| `area_ofcl` | double | Official recorded area (hectares) |
| `area_gis` | double | GIS-computed area (hectares) |
| `scale` | string | Scale/accuracy of mapped boundary |
| `method` | string | Method used to delineate boundary |
| `data_ctrb` | string | Data contributor organization |
| `data_src` | string | Primary data source name |
| `data_src_s` | string | Data source short name |
| `data_src_l` | string | Data source URL |
| `data_date` | string | Date of source data |
| `add_note` | string | Additional notes |
| `more_info` | string | URL for more information |
| `layer` | string | Source layer name |
| `download` | string | Download URL for source data |
| `iso_code` | string | ISO 3166-1 alpha-3 country code (polygon layers) |
| `geom` | geometry | Geometry in WGS84 (OGC:CRS84) |

---

## Usage Examples

### DuckDB

```sql
INSTALL httpfs; LOAD httpfs;
INSTALL spatial; LOAD spatial;

-- Count IPLC territories by country
SELECT country, COUNT(*) as n_territories, SUM(area_gis) as total_ha
FROM read_parquet('https://s3-west.nrp-nautilus.io/public-indigenous/landmark/iplc-poly.parquet')
GROUP BY country
ORDER BY n_territories DESC
LIMIT 20;

-- Query H3 hex index at resolution 8
SELECT h0, h3_index, identity, COUNT(*) as n_cells
FROM read_parquet('https://s3-west.nrp-nautilus.io/public-indigenous/landmark/iplc-poly/hex/h0=*/data_0.parquet',
                  hive_partitioning=true)
WHERE resolution = 8
GROUP BY h0, h3_index, identity
LIMIT 10;
```

### MapLibre GL JS (IPLC Polygon)

```javascript
map.addSource('iplc-poly', {
  type: 'vector',
  url: 'pmtiles://https://s3-west.nrp-nautilus.io/public-indigenous/landmark/iplc-poly.pmtiles'
});

map.addLayer({
  id: 'iplc-poly-fill',
  type: 'fill',
  source: 'iplc-poly',
  'source-layer': 'iplc-poly',   // <-- this is the source-layer name
  paint: {
    'fill-color': '#2196f3',
    'fill-opacity': 0.4
  }
});
```

### MapLibre GL JS (Indicative Areas)

```javascript
map.addSource('indicative-poly', {
  type: 'vector',
  url: 'pmtiles://https://s3-west.nrp-nautilus.io/public-indigenous/landmark/indicative-poly.pmtiles'
});

map.addLayer({
  id: 'indicative-poly-fill',
  type: 'fill',
  source: 'indicative-poly',
  'source-layer': 'indicative-poly',   // <-- this is the source-layer name
  paint: {
    'fill-color': '#ff9800',
    'fill-opacity': 0.3
  }
});
```

---

## Processing Notes

- Source: LandMark v202509 shapefiles downloaded from https://landmarkmap.org/data-methods/
- Raw source files archived at `s3://public-indigenous/raw/`
- Processed using `cng-datasets` on NRP Nautilus Kubernetes cluster
- H3 hex tiling at resolution 10 with parent resolutions 9, 8, 0
- `indicative-pt` (point layer) processing pending upstream fix for Measured 3D MultiPoint geometry

extent.spatial.bbox: omitted; spatial reference is categorical via [landmark.geom (geometry), landmark.country (placename), landmark.iso_code (admin_code), landmark/indicative-poly/hex.country (placename), landmark/indicative-poly/hex.iso_code (admin_code), landmark/indicative-poly/hex.h8 (spatial_index), landmark/indicative-poly/hex.h0 (spatial_index), landmark/iplc-pt/hex.country (placename), landmark/iplc-pt/hex.iso_code (admin_code), landmark/iplc-pt/hex.h10 (spatial_index), landmark/iplc-pt/hex.h9 (spatial_index), landmark/iplc-pt/hex.h8 (spatial_index), landmark/iplc-pt/hex.h0 (spatial_index)]. Add bbox once the placename → bbox gazetteer covers it.


Climate and Economic Justice Screening Tool (cloud-native formats)

The Climate and Economic Justice Screening Tool (CEJST) identifies U.S. census tracts considered disadvantaged based on climate, energy, health, housing, legacy pollution, transportation, water, and workforce burden indicators. Mandated by the January 2021 Executive Order on Tackling the Climate Crisis, it is used by federal agencies to prioritize historically overburdened and underserved communities for program benefits. This repository republishes the data in cloud-native PMTiles and GeoParquet formats for streaming analysis and interactive mapping.

environmental-justice climate disadvantaged-communities census-tracts census federal-policy land-use

U.S. Digital Service / Council on Environmental Quality

Dataset files (1 x .filegdb)

Source Cooperative product page

## README.md
# Climate and Economic Justice Screening Tool

The official tool is hosted at https://screeningtool.geoplatform.gov

This source.coop repository provides access to this data as PMTiles and geoparquet.  PMTiles provides static vector tiles enabling many popular client-side libraries to quickly and easily render interactive maps involving very large vector datasets. The Geoparquet format is optimized for cloud-based (i.e. streaming) analysis workflows without the need to download and store the data.

## Using PMTiles

[example map](https://data.source.coop/cboettig/justice40/justice40.html)

See [map.py](https://data.source.coop/cboettig/justice40/map.py) for soruce code

## Using geoparquet

```python
import ibis # pip install ibis-framework
from ibis import _

summary = (ibis
    .read_parquet("https://data.source.coop/cboettig/justice40/disadvantaged-communities.parquet")
    .group_by(_.StateName)
    .agg(fraction_disadvantaged = (_.Disadvan * _.SHAPE_Area).sum() / _.SHAPE_Area.sum())
    .order_by(ibis.desc(_.fraction_disadvantaged))
    .to_pandas()
)

summary
```

providers: role [processor] for 'Carl Boettiger (cboettig)' is an AI guess — Inferred as processor: converted original FileGDB to cloud-native PMTiles and GeoParquet for this repository. Verify before flipping to _state: reviewed.


Land Cover Datasets

Global land cover classification at 100 m resolution for the year 2019, produced by the Copernicus Global Land Service (CGLS-LC100 v3.0.1) using the FAO Land Cover Classification System (LCCS) with 23 canonical classes and approximately 80% overall accuracy. Distributed as a Cloud-Optimized GeoTIFF and an H3 resolution-9 hive-partitioned GeoParquet hex layer with parent indexes for multi-scale analysis.

land-cover global-coverage remote-sensing earth-observation cloud-optimized-geotiff h3 geoparquet

cgls-lc100-2019/hex

[spatial_index] H3 resolution-9 cell index (~174 m edge), primary spatial key

[spatial_index] H3 resolution-0 base cell, used as hive partition key

[spatial_index] H3 resolution-5 parent index for multi-scale joins

[spatial_index] H3 resolution-6 parent index for multi-scale joins

[spatial_index] H3 resolution-7 parent index for multi-scale joins

[spatial_index] H3 resolution-8 parent index for multi-scale joins

5 files sampled for this table

nlcd-2024/hex

[spatial_index] H3 resolution-10 cell index, primary spatial key

[spatial_index] H3 resolution-9 parent index for multi-scale joins

5 files sampled for this table

Source Cooperative product page

## README.md
# Copernicus Global Land Cover 100 m v3.0.1 (CGLS-LC100, 2019)

Global land cover classification at 100 m resolution for 2019, from the
[Copernicus Global Land Service Land Cover product v3.0.1 (Collection 3)](https://land.copernicus.eu/global/products/lc).
Uses the FAO Land Cover Classification System (LCCS); overall accuracy ~80%.

License: **CC-BY-4.0**. Source: <https://zenodo.org/records/3939050>.

## Assets

| Asset | Format | Path |
|---|---|---|
| `cgls-lc100-2019-cog` | Cloud-Optimized GeoTIFF (EPSG:4326, uint8) | `https://s3-west.nrp-nautilus.io/public-land-cover/cgls-lc100-2019-cog.tif` |
| `cgls-lc100-2019-hex` | H3 hex GeoParquet (resolution 9, hive-partitioned by `h0`) | `https://s3-west.nrp-nautilus.io/public-land-cover/cgls-lc100-2019/hex/h0=*/data_0.parquet` |

The hex layer aggregates the source raster to **H3 resolution 9** (~174 m edge,
~10 source pixels per cell) by **mode** (most frequent class per cell). One row per
`h9` cell. `lc_class` is **categorical** — only the 23 canonical LCCS codes appear.
Re-hexed on the antimeridian/polar-fixed pipeline (boettiger-lab/datasets #88, #92,
#93); the prior resolution-8 build inflated and dropped cells at the ±180° seam
(boettiger-lab/data-workflows #186).

## Querying the hex layer (DuckDB)

```sql
INSTALL httpfs; LOAD httpfs;
-- Global class histogram (cell counts)
SELECT lc_class, COUNT(*) AS cells
FROM read_parquet('https://s3-west.nrp-nautilus.io/public-land-cover/cgls-lc100-2019/hex/h0=*/data_0.parquet')
GROUP BY lc_class ORDER BY cells DESC;
```

`lc_class` is a class code — **never `SUM` or `AVG` it.** To estimate the area of a
class, count distinct cells and multiply by the H3 resolution-9 cell area:

```sql
-- Approx area (km²) of forest classes (111–126), res-9 cell ≈ 0.105 km²
SELECT COUNT(DISTINCT h9) * 0.105 AS forest_km2
FROM read_parquet('https://s3-west.nrp-nautilus.io/public-land-cover/cgls-lc100-2019/hex/h0=*/data_0.parquet')
WHERE lc_class BETWEEN 111 AND 126;
```

Parent indexes `h8`, `h7`, `h6`, `h5` are present for multi-scale joins; partition on
`h0` to prune reads.

## Displaying the COG (MapLibre GL JS via TiTiler)

The raster has no PMTiles layer; render the COG through a TiTiler XYZ endpoint:

```js
map.addSource('cgls-lc100', {
  type: 'raster',
  tiles: ['https://titiler.../cog/tiles/{z}/{x}/{y}.png?url=' +
    encodeURIComponent('https://s3-west.nrp-nautilus.io/public-land-cover/cgls-lc100-2019-cog.tif') +
    '&colormap_name=...'],   // use the categorical class palette (see classification:classes in STAC)
  tileSize: 256
});
map.addLayer({ id: 'cgls-lc100', type: 'raster', source: 'cgls-lc100' });
```

## Land cover classes (FAO LCCS)

| Code | Class | | Code | Class |
|---|---|---|---|---|
| 0 | No input data | | 113 | Closed forest, deciduous needle leaf |
| 20 | Shrubs | | 114 | Closed forest, deciduous broad leaf |
| 30 | Herbaceous vegetation | | 115 | Closed forest, mixed |
| 40 | Cultivated / managed | | 116 | Closed forest, unknown |
| 50 | Urban / built-up | | 121 | Open forest, evergreen needle leaf |
| 60 | Bare / sparse vegetation | | 122 | Open forest, evergreen broad leaf |
| 70 | Snow and ice | | 123 | Open forest, deciduous needle leaf |
| 80 | Permanent water bodies | | 124 | Open forest, deciduous broad leaf |
| 90 | Herbaceous wetland | | 125 | Open forest, mixed |
| 100 | Moss and lichen | | 126 | Open forest, unknown |
| 111 | Closed forest, evergreen needle leaf | | 200 | Open sea |

Value 0 ("No input data") is a retained fill class; the COG GDAL NoData sentinel is 255.

## Citation

Buchhorn, M., Lesiv, M., Tsendbazar, N-E., Herold, M., Bertels, L., Smets, B. (2020).
Copernicus Global Land Cover Layers — Collection 2. *Remote Sensing*, 12(6), 1044.
doi:10.3390/rs12061044

extent.temporal: None (probe sample) widened to ['2019-01-01T00:00:00Z', '2019-01-01T00:00:00Z'] using README-stated coverage ['2019', '2019'].

extent.spatial.bbox: omitted; spatial reference is categorical via [cgls-lc100-2019/hex.h9 (spatial_index), cgls-lc100-2019/hex.h8 (spatial_index), cgls-lc100-2019/hex.h7 (spatial_index), cgls-lc100-2019/hex.h6 (spatial_index), cgls-lc100-2019/hex.h5 (spatial_index), cgls-lc100-2019/hex.h0 (spatial_index), nlcd-2024/hex.h10 (spatial_index), nlcd-2024/hex.h9 (spatial_index), nlcd-2024/hex.h8 (spatial_index), nlcd-2024/hex.h7 (spatial_index), nlcd-2024/hex.h6 (spatial_index), nlcd-2024/hex.h5 (spatial_index), nlcd-2024/hex.h0 (spatial_index)]. Add bbox once the placename → bbox gazetteer covers it.


Mapping Inequality Data -- Redlining

Historical data on residential neighborhood designations and lending discrimination practices in US cities, derived from Home Owners' Loan Corporation (HOLC) maps created between 1935-1940. Maps document how federal lending policies and racial/economic discrimination shaped neighborhoods and property investment eligibility.

redlining housing-discrimination historical-maps urban-history residential-investment us-cities

University of Richmond Digital Scholarship Lab

Dataset files (7 x .parquet)

Source Cooperative product page


Map of Biodiversity Importance, NatureServe

Demonstration of generating and serving static raster tiles with GDAL using Map of Biodiversity Importance (MOBI) data from NatureServe, (2022) https://www.natureserve.org/map-biodiversity-importance, original data files from https://geohub-natureserve.opendata.arcgis.com/search?q=mobi

raster cog tiles static biodiversity gdal


Nature's Contributions to People (NCP) - Biodiversity Indicators

Global indicators of Nature's Contributions to People (NCP) derived from Chaplin-Kramer et al. (2019), scoring locations by how many NCP categories they rank highly for. Two layers are provided: NCP weighted by biodiversity and natural habitat (0–20) and NCP alone (0–19). Data are distributed as cloud-optimized GeoTIFFs in WGS84 and as H3 resolution-7 hex grids with area-weighted mean values.

biodiversity conservation global-coverage h3 ecology remote-sensing cloud-optimized-geotiff

hex/ncp_biod_nathab

[spatial_index] H3 resolution-7 hex cell identifier (primary spatial key)

[spatial_index] H3 resolution-0 partition key used for file partitioning

[spatial_index] H3 resolution-5 parent cell identifier

[spatial_index] H3 resolution-6 parent cell identifier

5 files sampled for this table

hex/ncp_only

5 files sampled for this table

Source Cooperative product page

## README.md
# Nature's Contributions to People (NCP) — biodiversity & natural habitat

Global NCP indicators from Chaplin-Kramer et al. (2019) — integer scores counting the
Nature's Contributions to People a location ranks highly for. Two layers:
- **`ncp_biod_nathab`** — NCP weighted by biodiversity & natural habitat (0–20)
- **`ncp_only`** — NCP alone (0–19)

Source rasters are 2 km **World Eckert IV** (equal-area); reprojected to **WGS84** for
the COG assets and aggregated to **H3 resolution 7** by area-weighted **mean**.

## Assets

| Asset | Format | Path |
|---|---|---|
| `ncp-biod-nathab-cog` / `ncp-only-cog` | COG (WGS84) | `…/public-ncp/NCP_{biod_nathab,only}_4326_cog.tif` |
| `ncp-biod-nathab-hex` / `ncp-only-hex` | H3 hex (res 7, mean) | `…/public-ncp/hex/{ncp_biod_nathab,ncp_only}/h0=*/data_0.parquet` |

Each hex layer is one row per `h7` cell (parents `h6/h5`, partitioned by `h0`), gap-free.
The value column (`ncp_biod_nathab` / `ncp_only`) is the area-weighted **mean** indicator —
an intensity: aggregate with `AVG`/`MIN`/`MAX`, **never `SUM`**.

## Querying (DuckDB)

```sql
INSTALL httpfs; LOAD httpfs;
-- Mean NCP-biodiversity score within an AOI given as h7 cells
SELECT AVG(n.ncp_biod_nathab) AS mean_ncp
FROM read_parquet('https://s3-west.nrp-nautilus.io/public-ncp/hex/ncp_biod_nathab/h0=*/data_0.parquet') n
SEMI JOIN aoi_h7 m ON n.h7 = m.h7;
```

Query `h7` directly — no `GROUP BY`/`AVG` collapse needed (one row per cell). This
replaces the prior res-8 point-binned build, which left coverage gaps and ~1 row per
source pixel.

## Citation

Chaplin-Kramer, R., et al. (2019). Global modeling of nature's contributions to people.
*Science*, 366(6462), 255–258. doi:10.1126/science.aaw3372

providers: role [producer] for 'Chaplin-Kramer, R., et al.' is an AI guess — Lead authors of the source Science paper; assumed producer as the researchers who generated the original NCP indicator model.. Verify before flipping to _state: reviewed.

extent.spatial.bbox: omitted; spatial reference is categorical via [hex/ncp_biod_nathab.h7 (spatial_index), hex/ncp_biod_nathab.h6 (spatial_index), hex/ncp_biod_nathab.h5 (spatial_index), hex/ncp_biod_nathab.h0 (spatial_index), hex/ncp_only.h7 (spatial_index), hex/ncp_only.h6 (spatial_index), hex/ncp_only.h5 (spatial_index), hex/ncp_only.h0 (spatial_index)]. Add bbox once the placename → bbox gazetteer covers it.


OBIS: Ocean Biodiversity Information System (2024)

Snapshot of the official OBIS parquet, see https://obis.org/data/access/


Overture Maps Divisions

Global administrative boundaries (countries, regions/states, and counties/districts) derived from the Overture Maps Foundation Divisions theme, release 2026-02-18.0. Available in cloud-native GeoParquet and PMTiles formats, covering 219 countries, 3,908 regions, and 38,833 counties worldwide. Includes an added English-language name column and H3-partitioned Parquet for spatial aggregation.

administrative-boundaries global-coverage pmtiles geoparquet h3 vector-tiles

2026-02-18.0/counties/hex

STRUCT(xmin FLOAT, xmax FLOAT, ymin FLOAT, ymax FLOAT)

sources

STRUCT(property VARCHAR, dataset VARCHAR, license VARCHAR, record_id VARCHAR, update_time VARCHAR, confidence DOUBLE, "between" DOUBLE[])[]

names

STRUCT("primary" VARCHAR, common MAP(VARCHAR, VARCHAR), rules STRUCT(variant VARCHAR, "language" VARCHAR, perspectives STRUCT("mode" VARCHAR, countries VARCHAR[]), "value" VARCHAR, "between" DOUBLE[], side VARCHAR)[])

5 files sampled for this table

countries.parquet

2026-02-18.0/countries/hex

2 files sampled for this table

counties/hex

[spatial_index] H3 resolution 10 cell index

[spatial_index] H3 resolution 8 parent cell index

[spatial_index] H3 resolution 9 parent cell index

sources

STRUCT(property VARCHAR, dataset VARCHAR, record_id VARCHAR, update_time VARCHAR, confidence DOUBLE, "between" DOUBLE[])[]

[spatial_index] H3 resolution 0 hive-partition key

3 files sampled for this table

countries.parquet

geometry

[geometry] OGC:CRS84 polygon geometry of the administrative division

country

[admin_code] ISO country code for the feature

region

[admin_code] ISO region code (e.g. US-CA) for sub-national features

[placename] English-language name of the administrative division

countries.parquet

hex/regions

53 files sampled for this table

regions/hex

33 files sampled for this table

Source Cooperative product page

## README.md
# Overture Maps Divisions

Global administrative boundaries (countries, regions/states, counties/districts) from the [Overture Maps Foundation](https://overturemaps.org/) Divisions theme. Processed into cloud-native formats with an English-language name column added.

**Current release:** 2026-02-18.0

## Datasets

| Dataset | Features | PMTiles | Parquet |
|---------|----------|---------|---------|
| Countries | 219 | [countries.pmtiles](https://s3-west.nrp-nautilus.io/public-overturemaps/2026-02-18.0/countries.pmtiles) | [countries.parquet](https://s3-west.nrp-nautilus.io/public-overturemaps/2026-02-18.0/countries.parquet) |
| Regions | 3,908 | [regions.pmtiles](https://s3-west.nrp-nautilus.io/public-overturemaps/2026-02-18.0/regions.pmtiles) | [regions.parquet](https://s3-west.nrp-nautilus.io/public-overturemaps/2026-02-18.0/regions.parquet) |
| Counties | 38,833 | [counties.pmtiles](https://s3-west.nrp-nautilus.io/public-overturemaps/2026-02-18.0/counties.pmtiles) (~150MB) | [counties.parquet](https://s3-west.nrp-nautilus.io/public-overturemaps/2026-02-18.0/counties.parquet) |

## Key Column: `name_en`

The `name_en` column provides English-language names for all features:

```sql
name_en = COALESCE(names.common['en'], names.primary)
```

This falls back to the primary (native-language) name when no English translation is available. Use `name_en` for English-language queries; use `names.primary` for local-language display.

## License

[CDLA Permissive 2.0](https://cdla.dev/permissive-2-0/) — free to use with attribution to Overture Maps Foundation.

## DuckDB Examples

```sql
-- Install spatial extension (once)
INSTALL httpfs; INSTALL spatial;
LOAD httpfs; LOAD spatial;

-- Query countries by English name
SELECT id, name_en, country, population
FROM read_parquet('https://s3-west.nrp-nautilus.io/public-overturemaps/2026-02-18.0/countries.parquet')
WHERE name_en = 'Brazil'
LIMIT 5;

-- Find all US states/regions
SELECT id, name_en, region, population
FROM read_parquet('https://s3-west.nrp-nautilus.io/public-overturemaps/2026-02-18.0/regions.parquet')
WHERE country = 'US'
ORDER BY name_en;

-- Find counties in California
SELECT id, name_en, region, population
FROM read_parquet('https://s3-west.nrp-nautilus.io/public-overturemaps/2026-02-18.0/counties.parquet')
WHERE region = 'US-CA'
ORDER BY population DESC;

-- Spatial join: which county is a point in?
SELECT c.name_en AS county, c.region
FROM read_parquet('https://s3-west.nrp-nautilus.io/public-overturemaps/2026-02-18.0/counties.parquet') c
WHERE ST_Contains(c.geometry, ST_Point(-122.4194, 37.7749));  -- San Francisco
```

## MapLibre GL JS Example

```javascript
const map = new maplibregl.Map({ /* ... */ });

map.on('load', () => {
  // Countries layer
  map.addSource('overture-countries', {
    type: 'vector',
    url: 'pmtiles://https://s3-west.nrp-nautilus.io/public-overturemaps/2026-02-18.0/countries.pmtiles'
  });
  map.addLayer({
    id: 'countries-fill',
    type: 'fill',
    source: 'overture-countries',
    'source-layer': 'countries',   // <-- always "countries" for this dataset
    paint: {
      'fill-color': '#4CAF50',
      'fill-opacity': 0.3
    }
  });

  // Counties layer
  map.addSource('overture-counties', {
    type: 'vector',
    url: 'pmtiles://https://s3-west.nrp-nautilus.io/public-overturemaps/2026-02-18.0/counties.pmtiles'
  });
  map.addLayer({
    id: 'counties-line',
    type: 'line',
    source: 'overture-counties',
    'source-layer': 'counties',    // <-- always "counties" for this dataset
    paint: {
      'line-color': '#333',
      'line-width': 0.5
    }
  });
});
```

**PMTiles source-layer names:** `countries`, `regions`, `counties` (matches the dataset name).

## H3 Hex Parquet

Hex-partitioned parquet for spatial aggregation and joins, hive-partitioned by h0 cell:

```
s3://public-overturemaps/2026-02-18.0/countries/hex/h0={cell}/data_0.parquet
s3://public-overturemaps/2026-02-18.0/regions/hex/h0={cell}/data_0.parquet
s3://public-overturemaps/2026-02-18.0/counties/hex/h0={cell}/data_0.parquet
```

H3 resolution 10 with parent resolutions 9, 8, 0. Hex columns: `h10`, `h9`, `h8`, `h0` (UBIGINT).

## Update Pipeline

To update to a new Overture Maps release:

1. **Check for new releases:**
   ```bash
   aws s3 ls s3://overturemaps-us-west-2/release/ --no-sign-request
   ```

2. **Find the correct parquet file URL for the new release** by listing the divisions directory at the new release URL. The filename (UUID) changes with each release.

3. **Edit the preprocessing job** (`catalog/overturemaps/k8s/preprocess-<VERSION>.yaml`):
   - Update `RELEASE` variable
   - Update `SOURCE` URL with new filename

4. **Run preprocessing** to extract countries/regions/counties from the raw release:
   ```bash
   kubectl apply -f catalog/overturemaps/k8s/preprocess-<VERSION>.yaml
   ```

5. **Generate workflow YAMLs** (with version prefix in dataset name):
   ```bash
   for subtype in countries regions counties; do
     cng-datasets workflow \
       --dataset <VERSION>/$subtype \
       --source-url s3://public-overturemaps/<VERSION>/$subtype.parquet \
       --bucket public-overturemaps \
       --h3-resolution 10 --parent-resolutions "9,8,0" \
       --hex-memory 32Gi --max-completions 200 --max-parallelism 50 \
       --output-dir catalog/overturemaps/k8s/<VERSION>/$subtype
   done
   ```
   **Note:** Replace dots in version string with dashes in job names (e.g., `2026-02-18.0` → `om-2026-XX-YY-Z`) because Kubernetes pod names cannot contain dots.

6. **Apply sequentially** (one at a time due to 200-pod namespace quota):
   ```bash
   kubectl apply -f catalog/overturemaps/k8s/<VERSION>/countries/configmap.yaml \
                 -f catalog/overturemaps/k8s/<VERSION>/countries/workflow.yaml
   kubectl wait job/om-<VERSION>-countries-workflow --for=condition=complete --timeout=7200s -n biodiversity
   # repeat for regions, counties
   ```

extent.spatial.bbox: omitted; spatial reference is categorical via [..geometry (geometry), ..country (admin_code), ..region (admin_code), ..name_en (placename), counties/hex.h10 (spatial_index), counties/hex.h9 (spatial_index), counties/hex.h8 (spatial_index), counties/hex.h0 (spatial_index)]. Add bbox once the placename → bbox gazetteer covers it.


United States Protected Areas Database (PAD-US) 3.0

The Protected Areas Database of the United States (PAD-US) 3.0 is a national inventory of protected lands compiled by the USGS Gap Analysis Project. This processed version is subset to the continental US and restricted to Fee and Easement feature classes plus tribal Proclamation boundaries, serialized to GeoParquet and PMTiles formats for efficient remote access. It covers approximately 883,000 polygon features representing federally, state, locally, and tribally managed protected areas.

protected-areas conservation biodiversity land-management land-use

Dataset files (1 x .filegdb)

Source Cooperative product page

## README.md
---
license: pddl
---

# United States Protected Areas Database

> U.S. Geological Survey (USGS) Gap Analysis Project (GAP), 2022, Protected Areas Database of the United States (PAD-US) 3.0: U.S. Geological Survey data release, https://doi.org/10.5066/P9Q9LQ4B.

The PAD database classifications are complex and include overlapping and apparently duplicate polygons. For instance, national park boundaries can be found are listed in Proclamation feature class and also in Fee class (showing internal holes within boundaries). The processed PAD data layers here have been subset to the continental US (matching availability in MOBI data), and restricted to feature classes of "Fee" and "Easements", except for tribal boundaries which are taken from the "Proclamations."  See [ProtectedLands.net](https://www.protectedlands.net/pad-us-data-structure-attributes/) for a more detailed discussion of the data structure and classification involved in PAD.  Code for reproducing this processing can be found at [https://github.com/boettiger-lab/pad-us-3](https://github.com/boettiger-lab/pad-us-3)

USGS PAD-v3 is distributed as an ESRI Geodatabase.  After subsetting the data and labelling according to the additional classification listed above based
on manager type indicated in the data, core attributes are serialized into [PMTiles](https://docs.protomaps.com/pmtiles/) and [Geoparquet](https://geoparquet.org/)
formats hosted on [source.coop](https://beta.source.coop/repositories/cboettig/pad-us-3/description/).  PMTiles allows for rapid rendering of vector objects
at the appropriate zoom level in an interactive map from remote servers.  Geoparquet provides a high-performance serialization that can be efficiently queried directly from
remote https addresses without download using software such as [duckdb](https://duckdb.org), widely available in python, R, and other languages.

## Contents Overview

- `PADUS3` contains files extracted from the orginal zip archive and associated geodatabase distributed by the USGS.
- `pad-us3-combined.parquet` contains a geoparquet version of the geodatabase protected areas layer
- `pad-us3-combined.fgb` contains a FlatGeobuff version of the geodatabase protected areas layer

PMTiles are computed with GDAL 3.8.4 up to max zoom 10 as follows:

```
ogr2ogr -dsco MAX_SIZE=90000000 -dsco MAX_FEATURES=50000000 -dsco MAXZOOM=10 public.pmtiles public_protected.fgb
```

## Examples

Examples are generated with the `map.py` script.

[Dark map - full page](https://data.source.coop/cboettig/pad-us-3/protected-areas-dark.html)

license: Open Data Commons Public Domain Dedication and License (ODC PDDL); README frontmatter specifies 'pddl'.


Protected Areas of the United States (PAD-US)

The Protected Areas Database of the United States (PAD-US) 4.1 Combined layer is America's official national inventory of protected areas, managed by the USGS Gap Analysis Project. It integrates fee ownership, easements, proclamation boundaries, marine protected areas, and designation areas from federal, state, local, and private land management agencies into a comprehensive national resource. Coverage spans all 50 states, DC, Puerto Rico, the U.S. Virgin Islands, and other U.S. territories, comprising 656,986 protected area features.

conservation protected-areas biodiversity administrative-boundaries land-use geoparquet pmtiles h3

U.S. Geological Survey Gap Analysis Project (USGS GAP)

Dataset files (3 x .filegdb)

Source Cooperative product page

## README.md
# PAD-US 4.1 Combined: Protected Areas Database of the United States

## Overview

The Protected Areas Database of the United States (PAD-US) is America's official national inventory of protected areas, managed by the USGS Gap Analysis Project (GAP). This dataset represents the **Combined layer** which integrates all protection types: fee ownership, easements, proclamation boundaries, marine protected areas, and designation areas into a comprehensive national resource.

PAD-US 4.1 combines data from federal, state, local, and private land management agencies to provide a complete picture of conservation lands and waters in the United States, including territories and freely associated states.

## Citation

U.S. Geological Survey (USGS) Gap Analysis Project (GAP). 2023. Protected Areas Database of the United States (PAD-US) 4.1: U.S. Geological Survey data release. https://doi.org/10.5066/P96WBCHS

## License

**Public Domain (U.S. Government Work)** - As a work of the U.S. Government, PAD-US is not subject to copyright protection within the United States (17 U.S.C. § 105). International copyright and database rights may apply.

**Attribution:** When using PAD-US data, please cite the USGS GAP as shown above.

## Data Formats

This dataset is available in three cloud-native formats:

| Format | Path | Use Case |
|--------|------|---------|
| **GeoParquet** | `s3://public-padus/padus-4-1/combined.parquet` | Analytical queries with DuckDB, Polars, pandas |
| **PMTiles** | `s3://public-padus/padus-4-1/combined.pmtiles` | Web map visualization at multiple zoom levels |
| **H3 Hex Parquet** | `s3://public-padus/padus-4-1/combined/hex/h0=*/` | Spatial joins, aggregation by H3 hexagons (resolution 10 + 8) |

### H3 Resolution Notes

Most features (99.997%) are indexed at **H3 resolution 10** (~15m² cells). However, **20 features** with extremely complex geometries (>800K vertices) are indexed at the coarser **H3 resolution 8** (~0.74 km² cells) due to computational constraints. These features include:

- Tongass National Forest (2 parts)
- Arctic District Office
- Yukon Delta National Wildlife Refuge (2 parts)
- Alaska Maritime National Wildlife Refuge (5 parts)
- Anchorage Field Office
- Chugach National Forest
- Appalachian National Scenic Trail
- Joint Base Langley-Eustis
- Aleutian Islands Wilderness Area
- Marjory Stoneman Douglas Wilderness Area
- Oregon Islands National Wildlife Refuge
- Glacier Bay Wilderness Area
- West Chichagof-Yakobi Wilderness
- Chincoteague National Wildlife Refuge

All features maintain consistent parent resolution columns (h9, h8, h0) enabling seamless integration during spatial queries.

## Dataset Statistics

- **Total Features:** 656,986 protected areas
- **Coverage:** United States (50 states + DC, Puerto Rico, U.S. Virgin Islands, territories, freely associated states)
- **Temporal Range:** 1800s to present (Date_Est field)
- **Spatial Reference:** EPSG:4326 (WGS84)
- **Original CRS:** USA Contiguous Albers Equal Area Conic (USGS version, NAD83)

## Data Dictionary

### Administrative & Identification Fields

| Column | Type | Description |
|--------|------|-------------|
| `_cng_fid` | integer | Cloud-native geometry feature ID (unique identifier) |
| `Source_PAID` | string | Protected Area ID from source agency dataset |
| `Unit_Nm` | string | Unit name - official name of the protected area unit |
| `Loc_Nm` | string | Local name - alternative or historical name if different from Unit_Nm |
| `State_Nm` | string | State, territory, or freely associated state name |

### Classification & Designation

| Column | Type | Description |
|--------|------|-------------|
| `FeatClass` | string | Feature class: Fee (ownership), Easement, Designation (administrative boundary),  Marine, or Proclamation |
| `Category` | string | GAP stewardship category: Federal Land, State Land, Local Land, Private Conservation Land, Joint Ownership, Designation Area |
| `Des_Tp` | string | Designation type code (see Designation_Type lookup table) |
| `Loc_Ds` | string | Local designation - official designation in original language or local terminology |

### Ownership

| Column | Type | Description |
|--------|------|-------------|
| `Own_Type` | string | Owner type: FED (Federal), STAT (State), LOC (Local), PVT (Private), JNT (Joint), TRIB (Tribal), TERR (Territorial), DIST (District), NGO (Non-Governmental Organization) |
| `Own_Name` | string | Owner name - specific agency, organization, or entity that holds title |
| `Loc_Own` | string | Local owner - owner name in local terminology or original language |

### Management

| Column | Type | Description |
|--------|------|-------------|
| `Mang_Type` | string | Manager type code - same categories as Own_Type |
| `Mang_Name` | string | Manager name - agency or organization responsible for day-to-day management |
| `Loc_Mang` | string | Local manager - manager name in local terminology |

### Conservation Status

| Column | Type | Description |
|--------|------|-------------|
| `GAP_Sts` | string | GAP Status Code: 1 = Permanent protection, biodiversity as primary goal; 2 = Permanent protection, biodiversity as primary/major goal; 3 = Permanent protection, multiple uses; 4 = No known biodiversity mandate. See GAP_Status lookup table |
| `GAPCdSrc` | string | Source of GAP Status Code assignment |
| `GAPCdDt` | string | Date GAP Status Code was assigned (YYYYMMDD or YYYY) |
| `IUCN_Cat` | string | IUCN Protected Area Management Category: Ia (Strict Nature Reserve), Ib (Wilderness Area), II (National Park), III (Natural Monument), IV (Habitat/Species Management), V (Protected Landscape/Seascape), VI (Protected Area with Sustainable Use). See IUCN_Category lookup table |
| `IUCNCtSrc` | string | Source of IUCN Category assignment |
| `IUCNCtDt` | string | Date IUCN Category was assigned |
| `WDPA_Cd` | integer | World Database on Protected Areas (WDPA) site code for internationally recognized sites |

### Public Access

| Column | Type | Description |
|--------|------|-------------|
| `Pub_Access` | string | Public access status: OA (Open Access), RA (Restricted Access), XA (Closed/No Public Access), UK (Unknown). See Public_Access lookup table |
| `Access_Src` | string | Source of public access information |
| `Access_Dt` | string | Date public access status was determined |

### Temporal Information

| Column | Type | Description |
|--------|------|-------------|
| `Date_Est` | string | Date established - when protection was formally established (YYYYMMDD, YYYY, or text description) |
| `Term` | integer | Term flag: 1 = Temporary/Term protection, 0 or NULL = Permanent protection |
| `Duration` | string | Duration description for temporary protections (e.g., "20 years", "until 2050") |

### Data Provenance

| Column | Type | Description |
|--------|------|-------------|
| `Agg_Src` | string | Aggregator source - organization that aggregated/compiled the data (often state agencies) |
| `GIS_Src` | string | GIS source - original GIS data provider or source dataset name |
| `Src_Date` | string | Source date - date of source data (YYYYMMDD or YYYY) |
| `Comments` | string | Additional information, caveats, or notes about the feature |

### Spatial Measures

| Column | Type | Description |
|--------|------|-------------|
| `GIS_Acres` | integer | GIS-calculated area in acres (most reliable area measure, calculated from geometry) |
| `SHAPE_Length` | double | Perimeter length in meters (original CRS units) |
| `SHAPE_Area` | double | Area in square meters (original CRS units) |

### Geometry Fields

| Column | Type | Description |
|--------|------|-------------|
| `SHAPE` | geometry | Geometry in WKB format (EPSG:4326, typically MULTIPOLYGON) |
| `bbox` | struct | Bounding box with xmin, ymin, xmax, ymax in EPSG:4326 coordinates |

## Usage Examples

### Query by State

```sql
-- Find all protected areas in California
SELECT Unit_Nm, Category, GAP_Sts, GIS_Acres
FROM read_parquet('https://s3-west.nrp-nautilus.io/public-padus/padus-4-1/combined.parquet')
WHERE State_Nm = 'CA'
ORDER BY GIS_Acres DESC;
```

### Filter by GAP Status

```sql
-- Get highest protection status areas (GAP 1 or 2)
SELECT Unit_Nm, Own_Name, Des_Tp, GIS_Acres
FROM read_parquet('https://s3-west.nrp-nautilus.io/public-padus/padus-4-1/combined.parquet')
WHERE GAP_Sts IN ('1', '2')
  AND GIS_Acres > 1000;
```

### Calculate Federal Land by Manager

```sql
-- Total federal acres by managing agency
SELECT Mang_Name,
       COUNT(*) as num_units,
       SUM(GIS_Acres) as total_acres
FROM read_parquet('https://s3-west.nrp-nautilus.io/public-padus/padus-4-1/combined.parquet')
WHERE Own_Type = 'FED'
GROUP BY Mang_Name
ORDER BY total_acres DESC;
```

### Spatial Join with H3 Hexagons

```sql
-- Find all protected areas intersecting specific H3 cells
SELECT pa.Unit_Nm, pa.GAP_Sts, hex.h3
FROM read_parquet('https://s3-west.nrp-nautilus.io/public-padus/padus-4-1/combined/hex/h0=*/') hex
JOIN read_parquet('https://s3-west.nrp-nautilus.io/public-padus/padus-4-1/combined.parquet') pa
  ON hex._cng_fid = pa._cng_fid
WHERE hex.h8 = 612845965541203967;
```

## Important Notes

1. **Overlapping Features:** The Combined layer contains overlapping features (fee, easement, designation, marine, proclamation). A single location may be covered by multiple records. When calculating total protected area, use geometric operations to handle overlaps appropriately.

2. **Temporal Coverage:** Features span from the 1800s to present. Check `Date_Est` and `Src_Date` fields for temporal relevance.

3. **Access vs. Protection:** `Pub_Access` indicates public access rights, not protection status. A highly protected area (GAP 1) may have no public access (XA).

4. **Mixed Resolutions:** Most features use H3 resolution 10, but 20 extremely complex features use resolution 8. Both resolutions share common parent columns (h9, h8, h0) for compatibility.

5. **Null Values:** Many fields may be NULL where information is not available or not applicable to that protection type.

## Related Resources

- **USGS GAP Analysis Project:** https://www.usgs.gov/programs/gap-analysis-project
- **PAD-US Data Portal:** https://www.usgs.gov/programs/gap-analysis-project/science/pad-us-data-download
- **DOI:** https://doi.org/10.5066/P96WBCHS
- **PAD-US Standards Manual:** https://www.usgs.gov/programs/gap-analysis-project/science/pad-us-standards-and-methods

## Contact

For questions about PAD-US data content and standards, contact USGS GAP Analysis Project.

For questions about this cloud-native format, contact the Boettiger Lab at UC Berkeley.

## Processing Notes

This cloud-native version was processed using the `cng-datasets` tool:
- Source: PADUS4_1Combined_Proclamation_Marine_Fee_Designation_Easement layer from PADUS4_1Geodatabase.gdb
- Converted to GeoParquet with spatial indexes
- Generated PMTiles at zoom levels 0-14
- Indexed by H3 hexagons at resolutions 10 and 8
- Original CRS converted from USA Contiguous Albers Equal Area Conic to EPSG:4326

Last updated: February 2026

license: AI returned 'unknown' (README does not state a license). Verify with publisher before flipping to _state: reviewed.

providers: role [processor] for 'Boettiger Lab at UC Berkeley' is an AI guess — Credited with producing the cloud-native version using the cng-datasets tool; no broader role stated in README.. Verify before flipping to _state: reviewed.

extent.temporal: None (probe sample) widened to ['1800-01-01T00:00:00Z', '2026-01-01T00:00:00Z'] using README-stated coverage ['1800', '2026'].


Population & Demography Data

Global human population distribution for 2020 derived from the Global Human Settlement Layer (GHSL R2023A), published by the European Commission JRC. Available as a Cloud-Optimized GeoTIFF at ~90 m resolution (3 arc-seconds, WGS84) and as area-weighted H3 hexagonal grid aggregations at resolution 9, with a validated global total of 7.84 billion people. Intended as a growing collection of population and demography surfaces, with WorldPop and LandScan layers planned.

demographics global-coverage h3 cloud-optimized-geotiff geoparquet remote-sensing earth-observation

European Commission Joint Research Centre (JRC) — GHSL

Dataset files (2 x .tif)

Source Cooperative product page

## README.md
# public-population

Global and regional human **population & demography** layers on NRP S3.
Seeded with GHS-POP (GHSL R2023A); future home for WorldPop, LandScan, and age-stratified surfaces.

## ghs-pop-2020 — GHS-POP 2020 Global Population (R2023A, 3 arc-second / ~90 m)

Source: European Commission JRC, GHSL R2023A. License: CC-BY-4.0. Projection: WGS84 (EPSG:4326).

**Assets**
- COG: `https://s3-west.nrp-nautilus.io/public-population/raw/ghs-pop-2020-cog.tif`
- H3 hex (res 9, area-weighted SUM): `https://s3-west.nrp-nautilus.io/public-population/ghs-pop-2020/hex/h0=*/data_0.parquet`

The hex layer is **area-weighted to H3 resolution 9 via exact_extract** — one row per h9 cell,
population already summed into the cell. `SUM(population)` is directly valid (no GROUP BY / dedup).
Validated against the COG pixel-sum: **7.84 billion** (2020 world population).

### DuckDB

```sql
INSTALL httpfs; LOAD httpfs;
-- global total population
SELECT SUM(population) AS people
FROM read_parquet('https://s3-west.nrp-nautilus.io/public-population/ghs-pop-2020/hex/h0=*/data_0.parquet',
                  hive_partitioning => true);
-- → ~7.84e9

-- roll up to a coarser resolution (parents are precomputed)
SELECT h6, SUM(population) AS people
FROM read_parquet('https://s3-west.nrp-nautilus.io/public-population/ghs-pop-2020/hex/h0=*/data_0.parquet',
                  hive_partitioning => true)
GROUP BY h6;
```

Raster-derived dataset: COG + H3 hex only (no PMTiles). Visualize the COG via titiler.

extent.temporal: None (probe sample) widened to ['2020-01-01T00:00:00Z', '2020-01-01T00:00:00Z'] using README-stated coverage ['2020', '2020'].


Rangeland vegetation cover (RAP / rangeland-s2)

Vegetation cover estimates for rangelands across the contiguous United States, derived from Sentinel-2 satellite imagery through the Rangeland Analysis Platform (RAP). The dataset provides fractional cover metrics (e.g. bare ground, annual/perennial forbs and grasses, shrubs, trees) at high spatial resolution as cloud-optimized GeoTIFFs.

remote-sensing earth-observation sentinel-2 land-cover environmental-monitoring rangeland vegetation-cover

Dataset files (240 x .tif)

Source Cooperative product page

providers: role [producer, licensor] for 'Rangeland Analysis Platform (RAP) — University of Montana / USDA Agricultural Research Service' is an AI guess — RAP is a known product of University of Montana and USDA-ARS; assumed producer and licensor in the absence of a README.. Verify before flipping to _state: reviewed.


American Rivers Datasets

A collection of five U.S. river vector datasets compiled by American Rivers: a point database of 2,126 dam removals (1912–2025), two snapshots of the National Park Service Nationwide Rivers Inventory (NRI 2016 and 2024) cataloguing free-flowing segments assessed for Wild and Scenic River designation, a dataset of all formally designated Wild and Scenic River segments, and a dataset of segments found eligible or suitable for designation. All datasets have national coverage including Alaska, Hawaii, and Puerto Rico.

hydrology conservation geoparquet pmtiles h3 rivers dam-removal

Dataset files (8 x .pmtiles)

Source Cooperative product page

## american-rivers__dam-removal__README.md
# American Rivers Dam Removal Database

Dam removals in the United States, 1912–2025. Compiled by [American Rivers](https://www.americanrivers.org).

**2,126 dam removals** (of 2,325 total; records without valid coordinates excluded) | Points | CC BY 4.0

Source: [Figshare](https://figshare.com/articles/dataset/American_Rivers_Dam_Removal_Database/5234068) (DOI: 10.6084/m9.figshare.5234068)

## Files

| Format | URL |
|--------|-----|
| GeoParquet | `https://s3-west.nrp-nautilus.io/public-rivers/american-rivers/dam-removal.parquet` |
| PMTiles | `https://s3-west.nrp-nautilus.io/public-rivers/american-rivers/dam-removal.pmtiles` |
| H3 hex (res 10) | `https://s3-west.nrp-nautilus.io/public-rivers/american-rivers/dam-removal/hex/h0=*/data_0.parquet` |

**PMTiles source-layer name:** `dam-removal`

## DuckDB Example

```sql
INSTALL spatial; LOAD spatial;
INSTALL httpfs; LOAD httpfs;
SET s3_endpoint='s3-west.nrp-nautilus.io';
SET s3_url_style='path';
SET s3_use_ssl=false;

-- Top states by dam removals
SELECT State, COUNT(*) AS removals
FROM read_parquet('s3://public-rivers/american-rivers/dam-removal.parquet')
GROUP BY State ORDER BY removals DESC LIMIT 10;

-- Dams removed for ecology since 2000
SELECT Dam_Name, River, State, Year_Removed, Miles_Restored_US
FROM read_parquet('s3://public-rivers/american-rivers/dam-removal.parquet')
WHERE Reason_for_removal ILIKE '%ecology%'
  AND TRY_CAST(Year_Removed AS INTEGER) >= 2000
ORDER BY TRY_CAST(Year_Removed AS INTEGER) DESC
LIMIT 20;
```

## MapLibre GL JS Example

```javascript
const map = new maplibregl.Map({ /* ... */ });

map.on('load', () => {
  map.addSource('dam-removal', {
    type: 'vector',
    url: 'pmtiles://https://s3-west.nrp-nautilus.io/public-rivers/american-rivers/dam-removal.pmtiles'
  });

  map.addLayer({
    id: 'dam-removal-points',
    type: 'circle',
    source: 'dam-removal',
    'source-layer': 'dam-removal',
    paint: {
      'circle-radius': 5,
      'circle-color': '#2196F3',
      'circle-opacity': 0.8,
      'circle-stroke-width': 1,
      'circle-stroke-color': '#fff'
    }
  });
});
```

## american-rivers__nri-2016__README.md
# Nationwide Rivers Inventory 2016 (NRI)

Free-flowing river segments with outstanding values assessed for potential Wild and Scenic River designation, maintained by the National Park Service. 2016 version.

**3,213 segments** | LineString | National (including Alaska, Hawaii, Puerto Rico)

Source: [NPS Nationwide Rivers Inventory](https://www.nps.gov/subjects/rivers/nri.htm)

## Files

| Format | URL |
|--------|-----|
| GeoParquet | `https://s3-west.nrp-nautilus.io/public-rivers/american-rivers/nri-2016.parquet` |
| PMTiles | `https://s3-west.nrp-nautilus.io/public-rivers/american-rivers/nri-2016.pmtiles` |
| H3 hex (res 8) | `https://s3-west.nrp-nautilus.io/public-rivers/american-rivers/nri-2016/hex/h0=*/data_0.parquet` |

**PMTiles source-layer name:** `nri-2016`

Line features were hexed to H3 resolution 8 by buffering each segment by the H3 cell circumradius before polyfill.

## DuckDB Example

```sql
INSTALL spatial; LOAD spatial;
INSTALL httpfs; LOAD httpfs;
SET s3_endpoint='s3-west.nrp-nautilus.io';
SET s3_url_style='path';
SET s3_use_ssl=false;

-- Segments by classification
SELECT Classifica, COUNT(*) AS n
FROM read_parquet('s3://public-rivers/american-rivers/nri-2016.parquet')
GROUP BY Classifica ORDER BY n DESC;

-- Wild segments in Alaska
SELECT River, Reach, GIS_Miles, ORV
FROM read_parquet('s3://public-rivers/american-rivers/nri-2016.parquet')
WHERE State1 = 'AK' AND Classifica = 'Wild'
ORDER BY GIS_Miles DESC LIMIT 10;
```

## MapLibre GL JS Example

```javascript
map.addSource('nri-2016', {
  type: 'vector',
  url: 'pmtiles://https://s3-west.nrp-nautilus.io/public-rivers/american-rivers/nri-2016.pmtiles'
});

map.addLayer({
  id: 'nri-2016-lines',
  type: 'line',
  source: 'nri-2016',
  'source-layer': 'nri-2016',
  paint: {
    'line-color': [
      'match', ['get', 'Classifica'],
      'Wild', '#1a6b3c',
      'Scenic', '#2196F3',
      'Recreational', '#FF9800',
      '#9C27B0'
    ],
    'line-width': 2,
    'line-opacity': 0.8
  }
});
```

## american-rivers__nri-2024__README.md
# Nationwide Rivers Inventory 2024 (NRI)

Free-flowing river segments with outstanding values assessed for potential Wild and Scenic River designation, maintained by the National Park Service. 2024 update with expanded coverage.

**4,496 segments** | LineString | National (including Alaska, Hawaii, Puerto Rico)

Source: [NPS Nationwide Rivers Inventory](https://www.nps.gov/subjects/rivers/nri.htm)

## Files

| Format | URL |
|--------|-----|
| GeoParquet | `https://s3-west.nrp-nautilus.io/public-rivers/american-rivers/nri-2024.parquet` |
| PMTiles | `https://s3-west.nrp-nautilus.io/public-rivers/american-rivers/nri-2024.pmtiles` |
| H3 hex (res 8) | `https://s3-west.nrp-nautilus.io/public-rivers/american-rivers/nri-2024/hex/h0=*/data_0.parquet` |

**PMTiles source-layer name:** `nri-2024`

Line features were hexed to H3 resolution 8 by buffering each segment by the H3 cell circumradius before polyfill.

## DuckDB Example

```sql
INSTALL spatial; LOAD spatial;
INSTALL httpfs; LOAD httpfs;
SET s3_endpoint='s3-west.nrp-nautilus.io';
SET s3_url_style='path';
SET s3_use_ssl=false;

-- Segments by study type and eligibility
SELECT Study_Type, In_Eligibl, COUNT(*) AS n
FROM read_parquet('s3://public-rivers/american-rivers/nri-2024.parquet')
GROUP BY Study_Type, In_Eligibl ORDER BY n DESC;

-- Segments added since 2016 (in NRI-2024 but not NRI-2016 by count)
-- Note: compare NRI datasets to identify new segments
SELECT State1, COUNT(*) AS n
FROM read_parquet('s3://public-rivers/american-rivers/nri-2024.parquet')
GROUP BY State1 ORDER BY n DESC LIMIT 15;
```

## MapLibre GL JS Example

```javascript
map.addSource('nri-2024', {
  type: 'vector',
  url: 'pmtiles://https://s3-west.nrp-nautilus.io/public-rivers/american-rivers/nri-2024.pmtiles'
});

map.addLayer({
  id: 'nri-2024-lines',
  type: 'line',
  source: 'nri-2024',
  'source-layer': 'nri-2024',
  paint: {
    'line-color': [
      'match', ['get', 'Classifica'],
      'Wild', '#1a6b3c',
      'Scenic', '#2196F3',
      'Recreational', '#FF9800',
      '#9C27B0'
    ],
    'line-width': 2,
    'line-opacity': 0.8
  }
});
```

## american-rivers__wild-scenic-designated__README.md
# Designated Wild and Scenic Rivers

All river segments formally designated under the Wild and Scenic Rivers Act and subsequent legislation.

**1,052 segments** | LineString | National (including Alaska, Hawaii, Puerto Rico)

Source: American Rivers / [rivers.gov](https://www.rivers.gov/)

## Files

| Format | URL |
|--------|-----|
| GeoParquet | `https://s3-west.nrp-nautilus.io/public-rivers/american-rivers/wild-scenic-designated.parquet` |
| PMTiles | `https://s3-west.nrp-nautilus.io/public-rivers/american-rivers/wild-scenic-designated.pmtiles` |
| H3 hex (res 8) | `https://s3-west.nrp-nautilus.io/public-rivers/american-rivers/wild-scenic-designated/hex/h0=*/data_0.parquet` |

**PMTiles source-layer name:** `wild-scenic-designated`

Line features were hexed to H3 resolution 8 by buffering each segment by the H3 cell circumradius before polyfill.

## DuckDB Example

```sql
INSTALL httpfs; LOAD httpfs;
SET s3_endpoint='s3-west.nrp-nautilus.io';
SET s3_url_style='path';
SET s3_use_ssl=false;

-- Designated rivers by agency and classification
SELECT AGENCY, CLASSIFICA, COUNT(*) AS segments, SUM(TRY_CAST(SEGMENT_MI AS DOUBLE)) AS miles
FROM read_parquet('s3://public-rivers/american-rivers/wild-scenic-designated.parquet')
GROUP BY AGENCY, CLASSIFICA ORDER BY miles DESC NULLS LAST LIMIT 15;

-- Wild segments managed by USFS
SELECT WSR_RIVER_, STATE, SEGMENT_MI, ORV_LIST
FROM read_parquet('s3://public-rivers/american-rivers/wild-scenic-designated.parquet')
WHERE CLASSIFICA = 'Wild' AND AGENCY ILIKE '%USFS%'
ORDER BY TRY_CAST(SEGMENT_MI AS DOUBLE) DESC NULLS LAST LIMIT 10;
```

## MapLibre GL JS Example

```javascript
map.addSource('wild-scenic-designated', {
  type: 'vector',
  url: 'pmtiles://https://s3-west.nrp-nautilus.io/public-rivers/american-rivers/wild-scenic-designated.pmtiles'
});

map.addLayer({
  id: 'wsd-lines',
  type: 'line',
  source: 'wild-scenic-designated',
  'source-layer': 'wild-scenic-designated',
  paint: {
    'line-color': [
      'match', ['get', 'CLASSIFICA'],
      'Wild', '#1a6b3c',
      'Scenic', '#2196F3',
      'Recreational', '#FF9800',
      '#9C27B0'
    ],
    'line-width': 2.5,
    'line-opacity': 0.9
  }
});
```

## american-rivers__wild-scenic-eligible__README.md
# Eligible and Suitable Wild and Scenic Rivers

River segments formally assessed for Wild and Scenic River eligibility and suitability by federal land management agencies.

**5,357 segments** | LineString | National (including Alaska, Hawaii, territories)

Source: American Rivers / federal land management agencies

## Files

| Format | URL |
|--------|-----|
| GeoParquet | `https://s3-west.nrp-nautilus.io/public-rivers/american-rivers/wild-scenic-eligible.parquet` |
| PMTiles | `https://s3-west.nrp-nautilus.io/public-rivers/american-rivers/wild-scenic-eligible.pmtiles` |
| H3 hex (res 8) | `https://s3-west.nrp-nautilus.io/public-rivers/american-rivers/wild-scenic-eligible/hex/h0=*/data_0.parquet` |

**PMTiles source-layer name:** `wild-scenic-eligible`

Line features were hexed to H3 resolution 8 by buffering each segment by the H3 cell circumradius before polyfill.

## DuckDB Example

```sql
INSTALL httpfs; LOAD httpfs;
SET s3_endpoint='s3-west.nrp-nautilus.io';
SET s3_url_style='path';
SET s3_use_ssl=false;

-- Suitable segments ready for Congressional designation
SELECT RIVER_NAME, STATE1, SEGMENT_CL, MILES, ORV
FROM read_parquet('s3://public-rivers/american-rivers/wild-scenic-eligible.parquet')
WHERE SUITABLE = 'Yes'
ORDER BY MILES DESC LIMIT 20;

-- Summary by status
SELECT STATUS, SEGMENT_CL, COUNT(*) AS n
FROM read_parquet('s3://public-rivers/american-rivers/wild-scenic-eligible.parquet')
GROUP BY STATUS, SEGMENT_CL ORDER BY n DESC;
```

## MapLibre GL JS Example

```javascript
map.addSource('wild-scenic-eligible', {
  type: 'vector',
  url: 'pmtiles://https://s3-west.nrp-nautilus.io/public-rivers/american-rivers/wild-scenic-eligible.pmtiles'
});

map.addLayer({
  id: 'wse-lines',
  type: 'line',
  source: 'wild-scenic-eligible',
  'source-layer': 'wild-scenic-eligible',
  paint: {
    'line-color': [
      'match', ['get', 'STATUS'],
      'Suitable', '#1a6b3c',
      'Eligible', '#2196F3',
      'Eligible and Not Suitable', '#9E9E9E',
      '#ccc'
    ],
    'line-width': 2
  }
});
```

license: CC BY 4.0 is explicitly stated for the Dam Removal Database only; the NRI and Wild and Scenic River datasets do not state a license in the README.

providers: role [producer] for 'National Park Service' is an AI guess — NPS is named as the maintainer of the Nationwide Rivers Inventory; assumed producer as the authoritative source agency.. Verify before flipping to _state: reviewed.

providers: role [producer] for 'U.S. Federal Land Management Agencies' is an AI guess — Described collectively as source for eligible/suitable Wild and Scenic segments; specific agencies not named in the README.. Verify before flipping to _state: reviewed.

extent.temporal: None (probe sample) widened to ['1912-01-01T00:00:00Z', '2025-01-01T00:00:00Z'] using README-stated coverage ['1912', '2025'].


Carbon Stocks of Individual Trees in African Drylands: Allometry and Output Data -- Cloud formats

Cloud-optimized GeoTIFF versions of allometry and output data characterizing carbon stocks of individual trees across African drylands, spanning the Sahel and Sahara regions. The dataset provides tree-level carbon estimates derived via machine learning from satellite imagery, covering approximately West to East Africa (18°W–42°E, 9°N–24°N). Original data published at ORNL DAAC by Tucker et al. (2022).

carbon-stocks trees drylands sahel remote-sensing

Tucker, C.J., M. Brandt, P. Hiernaux, A. Kariryaa, J.L. Small, and J. Meyers

Dataset files (3 x .tif)

Source Cooperative product page


Social Vulnerability Index

Cloud-native copy of the CDC/ATSDR Social Vulnerability Index (SVI) for 2020, aggregated at the US Census tract level. The SVI quantifies community vulnerability to external stressors using 15 US Census variables grouped into four themes: socioeconomic status, household characteristics, racial and ethnic minority status, and housing type and transportation. Available in cloud-optimized formats (GeoParquet and PMTiles).

social-vulnerability census-tracts census public-health demographics

CDC / ATSDR (Agency for Toxic Substances and Disease Registry)

Dataset files (11 x .pmtiles)

Source Cooperative product page

## README.md
# CDC Social Vulnerability Index (2020)

Copy of the CDC Social Vulnerability Index (2020) in cloud native formats. Original data and documentation at: https://www.atsdr.cdc.gov/placeandhealth/svi/data_documentation_download.html

## Social Vulnerability Measures

![](https://www.atsdr.cdc.gov/placeandhealth/svi/documentation/SVI-Variables.png)

See column definitions in [CDC documentation](https://www.atsdr.cdc.gov/placeandhealth/svi/documentation/pdf/SVI2020Documentation_08.05.22.pdf)

## [Interactive Map](https://data.source.coop/cboettig/social-vulnerability/map.html)

providers: role [processor] for 'cboettig' is an AI guess — Account holder on Source Cooperative; assumed to have converted original CDC data to cloud-native formats. Verify before flipping to _state: reviewed.