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: "Bob Singer"
|
||||
description: "NJ Senate District 30 — NJ State Senate District 30"
|
||||
role: "NJ Senate District 30"
|
||||
party: "R"
|
||||
level: "state"
|
||||
branch: "legislative"
|
||||
state: "NJ"
|
||||
district: "NJ State Senate District 30"
|
||||
tenure:
|
||||
start: "1993-10-14"
|
||||
current: true
|
||||
election:
|
||||
term_length: 2
|
||||
term_limit: "varies"
|
||||
ids:
|
||||
person: "ff4a0453-755a-4209-a392-4074227ea2c1"
|
||||
office: "7282db5c-b2fb-4d5b-af1e-efb527c010a2"
|
||||
tenure: "c216fcb0-19a3-4215-81ed-1455b77ae5c4"
|
||||
jurisdiction: "5228727c-4d5b-4eb8-ac29-78f7156f45ec"
|
||||
sources:
|
||||
- field: tenure
|
||||
source: "OpenStates YAML via GitHub 2026-06-20"
|
||||
- field: jurisdiction
|
||||
source: "SLDU (Census 2025)"
|
||||
confidence: official
|
||||
tags: [officeholder, state, legislative, nj]
|
||||
timestamp: "2026-06-20"
|
||||
---
|
||||
|
||||
# Bob Singer
|
||||
|
||||
Current NJ Senate District 30 (NJ State Senate District 30).
|
||||
|
||||
## Sources
|
||||
|
||||
- tenure: OpenStates YAML via GitHub 2026-06-20
|
||||
- jurisdiction: SLDU (Census 2025)
|
||||
|
||||
Generated from the Atlas officeholders v2 export (2026-06-20).
|
||||
Reference in New Issue
Block a user