Raw JSONL to structured tree: 11,285 entity files
One record, one file. The jurisdiction tree is now real: us/people/ 542 federal us/states/<xx>/people/ 7,561 state us/states/fl/counties/<c>/people/ 1,058 county .../municipalities/<m>/people/ 2,124 municipal (67 FL counties) Each file is OKF markdown + YAML frontmatter: fixed key order, field-level source provenance, Atlas UUIDs for round-tripping, deterministic paths and slugs. Converter passes the determinism test: two runs, byte-identical tree. Generated by scripts/convert_officeholders.py from data/officeholders-v2.jsonl (unchanged). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
---
|
||||
type: Person
|
||||
title: "Avi Schnall"
|
||||
description: "NJ House District 30 — NJ State House of Representatives District 30"
|
||||
role: "NJ House District 30"
|
||||
party: "D"
|
||||
level: "state"
|
||||
branch: "legislative"
|
||||
state: "NJ"
|
||||
district: "NJ State House of Representatives District 30"
|
||||
tenure:
|
||||
start: "2024-01-09"
|
||||
current: true
|
||||
election:
|
||||
term_length: 2
|
||||
term_limit: "varies"
|
||||
ids:
|
||||
person: "669c4eb5-dc01-4914-ac3f-2cddd1e7466e"
|
||||
office: "70d0877f-1194-499f-b7a0-6455cfbfedb2"
|
||||
tenure: "22f45a54-f55d-4893-a76c-1cc6a8dcfd26"
|
||||
jurisdiction: "92e238e1-60dc-497e-bd2e-0986f450a948"
|
||||
sources:
|
||||
- field: tenure
|
||||
source: "OpenStates YAML via GitHub 2026-06-20"
|
||||
- field: jurisdiction
|
||||
source: "SLDL (Census 2025)"
|
||||
confidence: official
|
||||
tags: [officeholder, state, legislative, nj]
|
||||
timestamp: "2026-06-20"
|
||||
---
|
||||
|
||||
# Avi Schnall
|
||||
|
||||
Current NJ House District 30 (NJ State House of Representatives District 30).
|
||||
|
||||
## Sources
|
||||
|
||||
- tenure: OpenStates YAML via GitHub 2026-06-20
|
||||
- jurisdiction: SLDL (Census 2025)
|
||||
|
||||
Generated from the Atlas officeholders v2 export (2026-06-20).
|
||||
Reference in New Issue
Block a user