Scope freeze — landfilled_waste_composition YEARLOCATIONDEX (US state × year)
Frozen 2026-07-03. Seventh YearLocationdex — Mike's 2-layer concept (area × time),
the slot is a (place, time) cell addressable by either axis. Built from a chat-pasted
data.gov URL (feedback_integrate_sources_via_chat).
What it is
The EPA ORD Landfilled Waste Composition Dataset v1 compiles how many short tons of
each material stream were disposed (landfilled, not recycled/composted/incinerated)
in each US state's landfills in each reporting year. That is a place × time grid: US
states × reporting years. Neither a pure Locationdex (place only) nor a pure Yeardex
(year only) fits, so — like drought — it is stored as ONE flat place-sorted
spine-parquet, rows = one reported (state, year, facility-type, waste-stream) disposal record, sorted by (state, year) so a state's whole disposal history reads
contiguously, with a by-year index alongside so the year cross-section is direct too.
- 45 states/jurisdictions (incl. Guam), reporting years 1938–2023.
- 126,959 disposal records (spine rows) across 847 state-year slots.
- ~7.77 billion short tons total. Cross-check: 2018 MSW ≈ 143 M short tons, matching EPA's official ~146 M-ton landfilled-MSW figure for that year, confirming the tonnages are the reported physical quantities, not a re-estimate.
- 11 ORD waste streams (MSW, CDD, Industrial, Ash, Sludge, Asbestos, Tires, Wood & Green Waste, NDD, Other, Uncategorized) × 6 ORD facility types (MSWLF, CDLF, Industrial LF, LCLF, Ash LF, Tire Monofill).
Source + bright line
- IN: the whole tonnage table. EPA ORD Landfilled Waste Composition Dataset v1,
ScienceHub DOI 10.23719/1532324 (Max Krause). The tonnages are reported measured
disposal quantities — scale-weighed amounts the states record and EPA transcribes
from state government reports/repositories/databases. That is a measurement of what was
physically landfilled, admissible on the same administrative-record footing as
femadeclarations and the USDMdroughtgrid (feedback_measured_reality_only). No forecast, projection, or reanalysis is involved, so nothing is held out. - The "ORD-Designated" columns are a CLASSIFICATION crosswalk, not a model. EPA maps
each state's own waste description / facility label to a standard ORD bucket (
List of Waste Types,Facility types by Statesheets). That is a categorization of measured records, not a modeled estimate of a physical quantity. We carry the original state waste description alongside the ORD-aligned stream (and the state-defined facility type alongside the ORD facility type) so the crosswalk is transparent and reversible.
Slot = state × year (data is data)
Per feedback_data_is_data_partial_coverage ("data is data"):
- A record whose mass cell is non-numeric (e.g.
N/A; 128 such in the source) is kept with a null mass — the disposal record still happened; only the tonnage is unknown. It is not dropped. - Only rows with no parseable reporting year are dropped (a year-location cell needs a
year): 74 rows, a count recorded in the index (
n_rows_dropped_no_year). - Recent-year coverage tapers (2021: 20 states, 2022: 12, 2023: 2) because states report with a lag. Those thin recent slots are carried as-is; the fuller picture backfills as states publish. Early sparse years (a handful of states with long records back to 1938) are likewise carried, not truncated.
Storage + validation
data/yearlocation_storehouse/landfilled_waste_composition/:
landfilled_waste_composition_spine.parquet— the 126,959 place-sorted disposal records (state, year, facility type ORD + state, waste stream ORD + original description, mass short tons, calendar/fiscal, reporting/disposal period, data source).landfilled_waste_composition_byyear_index.json— top-level totals (n_cells, n_state_year_slots, n_states, year range, total short tons, stream + facility-type + state lists) and aby_yearcross-section (per year: n_cells, n_states, short tons, and short tons per ORD stream).
The build self-validates via dex_validator.validate_yearlocationdex_or_raise — the
shared data-layer check. Its integrity identity: the per-year cell counts sum to the
index n_cells, which equals the spine parquet row count (126,959 = 126,959 = 126,959),
0 errors. pytest logic tests pin the parse path (_num, _year, parse_dataset_rows) in
tests/test_monitor/test_landfilled_waste_composition_yearlocationdex.py.
Provenance
KIND_SOURCES["landfilled_waste_composition"] = ["epa_ord_landfilled_waste_composition"],
registered in KNOWN_SOURCES with the ScienceHub DOI as the citable URL.
Deferred
No live edge: EPA posts the dataset as a versioned bulk file (v1), not a rolling feed. A v2 re-pull is a manual re-run when EPA publishes it. Facility-level geolocation (many rows are state aggregates named "State of X"; some carry real facility names) is a possible future refinement but is not needed for the state × year grid.