Files
republic-os/data/jurisdictions/us/states/ok/districts/02.md
T
Fabio 1beeaab2db Graph: national county↔district↔legislator authority layer
The first edges in the repo. Every US county now links to the districts it
sits in, weighted by area overlap, and every legislator links to the district
they represent — county → district → representative, traversable.

Data (PostGIS, no Atlas dependency — computed directly from geometry):
- data/county_district_edges.jsonl — 16,328 weighted edges. area_weight =
  ST_Area(ST_Intersection(county, district))/ST_Area(county) over ST_MakeValid
  Census TIGER 2024 geometries, overlaps <0.5% dropped. Uses area-intersection,
  NOT centroid-in-polygon, so urban districts that carve through counties
  (e.g. GA CD-5 / Atlanta across Clayton+DeKalb+Fulton) are captured, not
  silently dropped. Per-county weights sum to ~1.0 per district type.

build.py:
- ~6,896 new district nodes: 435 CD (ACS demographics where available; sparse
  for the 8 states missing from acs_cd) + 4,927 state-house + 1,897 state-senate
  (geometry-only). GEOID/number-keyed, stable.
- county index.md gains a `districts:` block (frontmatter) + a ## Districts
  section (body links, so link-integrity checks them).
- legislators + US House members gain `represents:` pointing at their district
  node; edge stored once on the person, inverse left to the view.
- schemas/jurisdiction: classification enum + chamber/districts fields.

Honest gaps (logged, not hidden): ID + NH have no state-house geometry, so
their house districts get nodes (represents resolves) but no county edges;
CD nodes for acs_cd-missing states are demographically sparse.

Deterministic (byte-identical rebuild); validate.py passes 26,617 records,
link-integrity clean (every district/represents link resolves).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-04 22:28:08 -04:00

60 lines
1.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
type: Jurisdiction
title: "OK-02"
classification: congressional-district
state: "OK"
district: "OK-02"
demographics:
population: 815354
population_under_18: 209548
population_18_64: 250992
population_65_plus: 354814
median_household_income: 56060
poverty_rate: 17.55
homeownership_rate: 72.32
unemployment_rate: 5.07
median_home_value: 176700
gini_index: 0.4599
vacancy_rate: 15.98
race_white: 515712
race_black: 25479
race_asian: 6527
hispanic: 54109
bachelors_plus: 116144
sources:
- field: demographics
source: "Census ACS 2023"
confidence: official
tags: [jurisdiction, congressional-district, ok]
timestamp: "2026-07-03"
---
# OK-02
Congressional district OK-02.
## Demographics (ACS 2023)
| Measure | Value |
| --- | --- |
| Population | 815354 |
| Under 18 | 209548 |
| 1864 | 250992 |
| 65+ | 354814 |
| Median household income | 56060 |
| Poverty rate | 17.55 |
| Homeownership rate | 72.32 |
| Unemployment rate | 5.07 |
| Median home value | 176700 |
| Gini index | 0.4599 |
| Vacancy rate | 15.98 |
| White | 515712 |
| Black | 25479 |
| Asian | 6527 |
| Hispanic/Latino | 54109 |
| Bachelor's or higher | 116144 |
## Source
- demographics: Census ACS 2023