vehicles 0.6.1 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop_todo.yml +164 -0
- data/CHANGELOG.md +274 -0
- data/README.md +55 -10
- data/data/PROVENANCE-vehicles.md +12 -0
- data/data/plates/PROVENANCE.md +5 -4
- data/data/plates/_decode/at-districts.yml +287 -0
- data/data/plates/_decode/ch-cantons.yml +110 -0
- data/data/plates/_decode/cn-issuing-offices.yml +463 -0
- data/data/plates/_decode/cn-provinces.yml +614 -0
- data/data/plates/_decode/cz-kraj.yml +159 -0
- data/data/plates/_decode/dk-serial-blocks.yml +327 -0
- data/data/plates/_decode/fr-departements.yml +191 -0
- data/data/plates/_decode/gb-age-identifiers.yml +170 -0
- data/data/plates/_decode/gb-memory-tags.yml +202 -0
- data/data/plates/_decode/gr-prefectures.yml +1408 -0
- data/data/plates/_decode/hr-cities.yml +315 -0
- data/data/plates/_decode/ie-counties.yml +227 -0
- data/data/plates/_decode/in-state-codes.yml +169 -0
- data/data/plates/_decode/is-districts-1938.yml +116 -0
- data/data/plates/_decode/it-provinces.yml +348 -0
- data/data/plates/_decode/jp-office-marks.yml +960 -0
- data/data/plates/_decode/jp-use-marks.yml +205 -0
- data/data/plates/_decode/kr-authority-marks.yml +146 -0
- data/data/plates/_decode/kr-use-syllables.yml +194 -0
- data/data/plates/_decode/lu-series-order.yml +638 -0
- data/data/plates/_decode/mx-entity-series.yml +380 -0
- data/data/plates/_decode/my-index-marks.yml +271 -0
- data/data/plates/_decode/no-counties-1913.yml +148 -0
- data/data/plates/_decode/no-districts.yml +901 -0
- data/data/plates/_decode/pl-powiats.yml +567 -0
- data/data/plates/_decode/pt-trailer-services.yml +96 -0
- data/data/plates/_decode/ro-counties.yml +213 -0
- data/data/plates/_decode/se-diplomatic.yml +220 -0
- data/data/plates/_decode/si-regions.yml +123 -0
- data/data/plates/_decode/sk-districts.yml +314 -0
- data/data/plates/_decode/th-registration-elements.yml +208 -0
- data/data/plates/_decode/ua-regions.yml +393 -0
- data/data/plates/_decode/za-licence-marks.yml +215 -0
- data/data/plates/_meta/classes.yml +1 -0
- data/data/plates/_meta/separators.yml +102 -0
- data/data/plates/ad.yml +961 -0
- data/data/plates/ar.yml +762 -0
- data/data/plates/at.yml +1424 -0
- data/data/plates/au-act.yml +472 -0
- data/data/plates/au-nsw.yml +282 -0
- data/data/plates/au-nt.yml +431 -0
- data/data/plates/au-qld.yml +272 -0
- data/data/plates/au-sa.yml +248 -0
- data/data/plates/au-tas.yml +302 -0
- data/data/plates/au-vic.yml +215 -0
- data/data/plates/au-wa.yml +309 -0
- data/data/plates/be.yml +1840 -0
- data/data/plates/br.yml +1152 -0
- data/data/plates/ca-ab.yml +430 -0
- data/data/plates/ca-bc.yml +697 -0
- data/data/plates/ca-mb.yml +499 -0
- data/data/plates/ca-nb.yml +537 -0
- data/data/plates/ca-nl.yml +743 -0
- data/data/plates/ca-ns.yml +808 -0
- data/data/plates/ca-nt.yml +610 -0
- data/data/plates/ca-nu.yml +280 -0
- data/data/plates/ca-on.yml +881 -0
- data/data/plates/ca-pe.yml +592 -0
- data/data/plates/ca-qc.yml +1036 -0
- data/data/plates/ca-sk.yml +256 -0
- data/data/plates/ca-yt.yml +656 -0
- data/data/plates/ch.yml +1273 -0
- data/data/plates/cn.yml +1431 -0
- data/data/plates/cy.yml +688 -0
- data/data/plates/cz.yml +1179 -0
- data/data/plates/de.yml +553 -118
- data/data/plates/dk.yml +1647 -0
- data/data/plates/ee.yml +1275 -0
- data/data/plates/es.yml +228 -32
- data/data/plates/fi.yml +1271 -0
- data/data/plates/fr.yml +1265 -0
- data/data/plates/gb.yml +1188 -0
- data/data/plates/gr.yml +721 -0
- data/data/plates/hr.yml +860 -0
- data/data/plates/hu.yml +959 -0
- data/data/plates/ie.yml +775 -0
- data/data/plates/in.yml +1172 -0
- data/data/plates/is.yml +667 -0
- data/data/plates/it.yml +1317 -0
- data/data/plates/jp.yml +3650 -0
- data/data/plates/kr.yml +1375 -0
- data/data/plates/li.yml +1010 -0
- data/data/plates/lt.yml +879 -0
- data/data/plates/lu.yml +842 -0
- data/data/plates/lv.yml +924 -0
- data/data/plates/mc.yml +1024 -0
- data/data/plates/mt.yml +854 -0
- data/data/plates/mx.yml +1372 -0
- data/data/plates/my.yml +685 -0
- data/data/plates/nl.yml +44 -0
- data/data/plates/no.yml +1018 -0
- data/data/plates/nz.yml +1699 -0
- data/data/plates/pl.yml +1296 -0
- data/data/plates/pt.yml +847 -0
- data/data/plates/ro.yml +785 -0
- data/data/plates/se.yml +1091 -0
- data/data/plates/si.yml +1105 -0
- data/data/plates/sk.yml +1439 -0
- data/data/plates/sm.yml +1119 -0
- data/data/plates/th.yml +1150 -0
- data/data/plates/ua.yml +1672 -0
- data/data/plates/us-ak.yml +763 -0
- data/data/plates/us-al.yml +457 -0
- data/data/plates/us-ar.yml +427 -0
- data/data/plates/us-as.yml +454 -0
- data/data/plates/us-az.yml +430 -0
- data/data/plates/us-ca.yml +892 -0
- data/data/plates/us-co.yml +452 -0
- data/data/plates/us-ct.yml +427 -0
- data/data/plates/us-dc.yml +614 -0
- data/data/plates/us-de.yml +551 -0
- data/data/plates/us-fl.yml +319 -96
- data/data/plates/us-ga.yml +644 -0
- data/data/plates/us-gu.yml +658 -0
- data/data/plates/us-hi.yml +585 -0
- data/data/plates/us-ia.yml +438 -0
- data/data/plates/us-id.yml +531 -0
- data/data/plates/us-il.yml +516 -0
- data/data/plates/us-in.yml +324 -0
- data/data/plates/us-ks.yml +351 -0
- data/data/plates/us-ky.yml +770 -0
- data/data/plates/us-la.yml +568 -0
- data/data/plates/us-ma.yml +379 -0
- data/data/plates/us-md.yml +536 -0
- data/data/plates/us-me.yml +445 -0
- data/data/plates/us-mi.yml +408 -0
- data/data/plates/us-mn.yml +411 -0
- data/data/plates/us-mo.yml +356 -0
- data/data/plates/us-mp.yml +402 -0
- data/data/plates/us-ms.yml +432 -0
- data/data/plates/us-mt.yml +619 -0
- data/data/plates/us-nc.yml +602 -0
- data/data/plates/us-nd.yml +419 -0
- data/data/plates/us-ne.yml +483 -0
- data/data/plates/us-nh.yml +394 -0
- data/data/plates/us-nj.yml +547 -0
- data/data/plates/us-nm.yml +574 -0
- data/data/plates/us-nv.yml +655 -0
- data/data/plates/us-ny.yml +592 -0
- data/data/plates/us-oh.yml +404 -0
- data/data/plates/us-ok.yml +513 -0
- data/data/plates/us-or.yml +392 -0
- data/data/plates/us-pa.yml +506 -0
- data/data/plates/us-pr.yml +507 -0
- data/data/plates/us-ri.yml +445 -0
- data/data/plates/us-sc.yml +605 -0
- data/data/plates/us-sd.yml +428 -0
- data/data/plates/us-tn.yml +471 -0
- data/data/plates/us-tx.yml +535 -0
- data/data/plates/us-ut.yml +384 -0
- data/data/plates/us-va.yml +567 -0
- data/data/plates/us-vi.yml +489 -0
- data/data/plates/us-vt.yml +458 -0
- data/data/plates/us-wa.yml +484 -0
- data/data/plates/us-wi.yml +509 -0
- data/data/plates/us-wv.yml +446 -0
- data/data/plates/us-wy.yml +523 -0
- data/data/plates/va.yml +604 -0
- data/data/plates/za.yml +1141 -0
- data/data/vehicles.json +160653 -105090
- data/lib/vehicles/configuration.rb +17 -3
- data/lib/vehicles/dataset.rb +73 -18
- data/lib/vehicles/fuzzy.rb +115 -0
- data/lib/vehicles/http.rb +48 -0
- data/lib/vehicles/make.rb +36 -6
- data/lib/vehicles/mcp_server.rb +5 -5
- data/lib/vehicles/model.rb +21 -2
- data/lib/vehicles/plates/series.rb +172 -18
- data/lib/vehicles/plates/template_fill.rb +188 -0
- data/lib/vehicles/plates/templates.rb +162 -0
- data/lib/vehicles/plates.rb +12 -0
- data/lib/vehicles/providers/hosted_provider.rb +28 -55
- data/lib/vehicles/validators/vehicle_make_validator.rb +3 -1
- data/lib/vehicles/validators/vehicle_model_validator.rb +1 -1
- data/lib/vehicles/version.rb +1 -1
- data/lib/vehicles.rb +32 -16
- data/rakelib/data_refresh.rake +109 -0
- data/rakelib/plates_refresh.rake +29 -0
- data/sig/vehicles.rbs +18 -0
- metadata +164 -2
|
@@ -0,0 +1,438 @@
|
|
|
1
|
+
# plates/us-ia.yml — Iowa (PRD-PLATES gate L2, group midwest-b).
|
|
2
|
+
#
|
|
3
|
+
# IOWA PUTS THE COUNTY ON EVERY PLATE, BY STATUTE, AND IT IS NOT A CODE. Iowa
|
|
4
|
+
# Code § 321.166(2): "Every registration plate issued by the county treasurer
|
|
5
|
+
# shall display the name of the county". That is a mandatory geographic legend on
|
|
6
|
+
# essentially every Iowa plate — a stronger rule than Florida's, where the county
|
|
7
|
+
# name is a county-level opt-out — but it encodes nothing in the SERIAL. So Iowa
|
|
8
|
+
# is the clearest case in this dataset of geography that is READABLE but not
|
|
9
|
+
# DECODABLE: you can see the county on the plate and you cannot recover it from
|
|
10
|
+
# the plate number. `region_encoding` below says exactly that.
|
|
11
|
+
#
|
|
12
|
+
# IOWA ALSO SPELLS THREE SERIAL AFFIXES INTO STATUTE, which is unusual and
|
|
13
|
+
# genuinely useful, because each is a sourced literal a parser can key on:
|
|
14
|
+
# * "DV" PRECEDES the number on disabled-veteran plates (§ 321.166(6));
|
|
15
|
+
# * "D" appears on dealer plates, at serial character size (§ 321.166(3));
|
|
16
|
+
# * "special" appears on special truck plates (§ 321.166(2)).
|
|
17
|
+
# Those are specified as their own series below.
|
|
18
|
+
#
|
|
19
|
+
# AND IOWA LEGISLATES THAT EACH NEW SERIES MUST LOOK DIFFERENT FROM THE LAST:
|
|
20
|
+
# § 321.166(5), "When a new series of registration plates is issued to replace a
|
|
21
|
+
# current series, the new registration plates shall be of a distinctively
|
|
22
|
+
# different color from the series which is replaced." Kansas legislates the same
|
|
23
|
+
# idea (K.S.A. 8-147(d)). Two neighbouring states have independently made their
|
|
24
|
+
# own series boundaries visually detectable, which is a gift to this dataset.
|
|
25
|
+
jurisdiction: us-ia
|
|
26
|
+
authority:
|
|
27
|
+
name: Iowa Department of Transportation, Motor Vehicle Division (plates issued through the county treasurers)
|
|
28
|
+
url: "https://www.legis.iowa.gov/docs/code/321.166.pdf"
|
|
29
|
+
binding: vehicle
|
|
30
|
+
statute_edition: "Iowa Code 2026, Chapter 321 (Motor Vehicles and Law of the Road), §§ 321.34 and 321.166 as published by the Iowa Legislature; and Iowa Administrative Code 761 ch. 401 (Special Registration Plates), whose rule 401.3 carries [ARC 8937C, IAB 2/19/25, effective 3/26/25]"
|
|
31
|
+
|
|
32
|
+
# ---------------------------------------------------------------------------
|
|
33
|
+
# artwork_risk — required per jurisdiction by PRD-PLATES §4.
|
|
34
|
+
# ---------------------------------------------------------------------------
|
|
35
|
+
artwork_risk:
|
|
36
|
+
posture: unresearched
|
|
37
|
+
basis: >-
|
|
38
|
+
IOWA WAS NOT LOCATED IN ANY COPYRIGHT SURVEY READ FOR THIS PASS. The Wikipedia survey
|
|
39
|
+
of subnational-government copyright status carries per-state sections for seventeen
|
|
40
|
+
states and NO section for Iowa; no {{PD-IAGov}} tag was found on Commons. The
|
|
41
|
+
dossier's default therefore governs: 17 U.S.C. § 105 does not reach the states, so an
|
|
42
|
+
Iowa plate design is presumed COPYRIGHTED unless Iowa says otherwise, and Iowa has not
|
|
43
|
+
been shown to say otherwise. Recorded as unresearched, not adverse — absence of a
|
|
44
|
+
fetched source is weak evidence either way.
|
|
45
|
+
edict_carve_out: >-
|
|
46
|
+
Iowa's carve-out is unusually wide because Iowa legislates unusually much of its plate.
|
|
47
|
+
The size ceiling, the character height and stroke limits, the 100-foot daylight
|
|
48
|
+
readability rule, the county-name legend, the contrast rule, the distinct-colour rule
|
|
49
|
+
for new series, the DV prefix, the dealer D and the 'special' truck legend are ALL in
|
|
50
|
+
the Iowa Code, and the minimum and maximum character counts are in the Iowa
|
|
51
|
+
Administrative Code. Edicts of government are uncopyrightable at every level
|
|
52
|
+
({{PD-US-GovEdict}}), so nearly the whole factual layer of this file is affirmatively
|
|
53
|
+
clean regardless of Iowa's posture on artwork.
|
|
54
|
+
emblem_rule: >-
|
|
55
|
+
PRD-PLATES §3's placeholder default applies to the current Iowa base graphic and to
|
|
56
|
+
the 'processed emblem' and 'organization decal' that § 321.166(9) provides space for
|
|
57
|
+
on special plates. The organization decals carry an ADDITIONAL layer: § 321.34(13)
|
|
58
|
+
decals are designed by nonprofit organizations and approved by the department, so they
|
|
59
|
+
are third-party artwork licensed into a state program rather than state work at all,
|
|
60
|
+
and a clean state posture would not clear them. Render
|
|
61
|
+
`emblem: {present: true, rendered: placeholder}`. Iowa state-seal misuse statutes are
|
|
62
|
+
unresearched.
|
|
63
|
+
sources:
|
|
64
|
+
- "https://en.wikipedia.org/wiki/Copyright_status_of_works_by_subnational_governments_of_the_United_States # LOCATOR ONLY (PRD-PLATES §4): read to establish that Iowa has NO section in the survey — a negative result, recorded as such"
|
|
65
|
+
- "https://www.legis.iowa.gov/docs/code/321.166.pdf # Iowa Code § 321.166, the statutory plate specification itself — an edict of government, PD"
|
|
66
|
+
|
|
67
|
+
us_standards:
|
|
68
|
+
no_federal_mandate: true
|
|
69
|
+
chain: "SAE J686 -> AAMVA License Plate Standard Edition 3 (September 2025) -> voluntary state adoption. AAMVA has no enforcement power; its declarative present is RECOMMENDED PRACTICE."
|
|
70
|
+
dimensions_delegated: >-
|
|
71
|
+
AAMVA §3.1 sends dimensions and bolt holes to SAE J686, whose text is PAYWALLED and
|
|
72
|
+
UNPINNED, and no J686 dimension is quoted here. IOWA IS THE ONE STATE IN GROUP
|
|
73
|
+
MIDWEST-B THAT DOES NOT NEED IT: § 321.166(1)(a) states a size ceiling in law — plates
|
|
74
|
+
'of a size NOT TO EXCEED six inches by twelve inches' — so Iowa's dimension is sourced
|
|
75
|
+
to an Iowa edict and owes nothing to the standards chain or to the uncited 1956 story.
|
|
76
|
+
geometry_available: >-
|
|
77
|
+
AAMVA §2.1 and §2.2 supply the renderable layout geometry generally. For Iowa the
|
|
78
|
+
CHARACTER geometry is in statute and is stricter in kind: § 321.166(3) caps character
|
|
79
|
+
height at four inches and stroke width at five-eighths of an inch, where AAMVA §2.2
|
|
80
|
+
sets a 2.5-inch character-height FLOOR. The two are compatible — AAMVA's minimum sits
|
|
81
|
+
below Iowa's maximum — but note they are opposite instruments, a floor and a ceiling.
|
|
82
|
+
retroreflectivity: "AAMVA §3.3: legible day and night from at least 75 feet; ASTM D4956-19 and ISO 7591:1982 clause 3; entrance angle 0.2 deg, observation angle -4 deg, minimum 45 cd/lx/m^2. Iowa's own statutory legibility rule is a 100-foot DAYLIGHT test (§ 321.166(4)), which is a different measurement, not a stricter version of the same one."
|
|
83
|
+
replacement_cycle_recommendation: "AAMVA §1.1 recommends a cycle 'not to exceed 7 to 10 years'. Iowa legislates NO replacement cycle in § 321.166 or § 321.34; instead § 321.34(2)(a) lets the department REASSIGN existing plates indefinitely and issue an annual validation sticker. Recorded gap as to any Iowa cycle."
|
|
84
|
+
source: "https://www.aamva.org/getmedia/646bcc8a-219b-47d8-b5cd-726240473163/License-Plate-Standard-Edition-3_September-2025-Update.pdf"
|
|
85
|
+
folklore_caution: >-
|
|
86
|
+
The '1956 AMA standardization agreement' said to have fixed the 6x12 inch plate is
|
|
87
|
+
UNCITED in its Wikipedia source (a `citation needed` since 2017, copied across
|
|
88
|
+
articles — circular). Recorded as COMMONLY REPEATED, UNSOURCED. Iowa is the state where
|
|
89
|
+
this matters least and is easiest to demonstrate: Iowa's six-by-twelve is cited below to
|
|
90
|
+
§ 321.166(1)(a), which states it in law, so nothing in this file depends on the folklore.
|
|
91
|
+
|
|
92
|
+
# ---------------------------------------------------------------------------
|
|
93
|
+
# Display rules. Iowa is a TWO-PLATE state with a six-class single-plate list.
|
|
94
|
+
# ---------------------------------------------------------------------------
|
|
95
|
+
display_rules:
|
|
96
|
+
default: "TWO plates. Iowa Code § 321.34(1): the county treasurer 'shall issue to the owner one registration plate for a motorcycle, motorized bicycle, autocycle, truck tractor, trailer, or semitrailer and TWO registration plates for every other motor vehicle'."
|
|
97
|
+
single_plate_classes: ["motorcycle", "motorized bicycle", "autocycle", "truck tractor", "trailer", "semitrailer"]
|
|
98
|
+
validation_sticker: >-
|
|
99
|
+
§ 321.34(2)(a): one validation sticker per set of plates, specifying the month and
|
|
100
|
+
year of expiration, 'displayed only on the rear registration plate, EXCEPT that the
|
|
101
|
+
sticker shall be displayed on the FRONT registration plate of a truck tractor' — the
|
|
102
|
+
truck-tractor inversion again, this time applied to the sticker rather than the plate.
|
|
103
|
+
A sticker for the upcoming year issued before the current year expires does not
|
|
104
|
+
invalidate the registration and need not be displayed until the vehicle would otherwise
|
|
105
|
+
be driving on an expired registration under § 321.39.
|
|
106
|
+
expiration_on_plate: "§ 321.166(7): the year and month of expiration, which may be abbreviated, shall be displayed on plates issued by the county treasurer; the department may prescribe a distinctive emblem or validation sticker to designate them. Not required on § 321.19 plates."
|
|
107
|
+
plate_retention_on_transfer: "§ 321.34(1): plates are assigned to the OWNER, not the vehicle — on transferring the vehicle the owner REMOVES the plates and either forwards them to a county treasurer or has them assigned to another vehicle within thirty days. Iowa is therefore closer to the Swiss owner-binding model than most US states, though the binding is still recorded as `vehicle` because registration itself is vehicle-keyed."
|
|
108
|
+
sources:
|
|
109
|
+
- "https://www.legis.iowa.gov/docs/code/321.34.pdf # Iowa Code § 321.34(1): one plate for six named classes and two for every other motor vehicle, plates assigned to the owner, removal on transfer and the thirty-day reassignment window; (2)(a) the validation sticker, its month-and-year content, rear display and the truck-tractor front-display exception, and the early-sticker rule"
|
|
110
|
+
- "https://www.legis.iowa.gov/docs/code/321.166.pdf # Iowa Code § 321.166(7): the year and month of expiration displayed on county-treasurer-issued plates"
|
|
111
|
+
|
|
112
|
+
series:
|
|
113
|
+
|
|
114
|
+
# =========================================================================
|
|
115
|
+
# THE STANDARD-ISSUE SERIES.
|
|
116
|
+
# =========================================================================
|
|
117
|
+
- id: us-ia-standard
|
|
118
|
+
class: standard
|
|
119
|
+
categories: [car, van, truck, bus]
|
|
120
|
+
period: { start: 2026 }
|
|
121
|
+
period_evidence: instrument-in-force-upper-bound
|
|
122
|
+
matching: recall-only
|
|
123
|
+
format:
|
|
124
|
+
pattern: "LLL999"
|
|
125
|
+
regex: '\A[A-Z0-9](?: ?[A-Z0-9]){1,6}\z'
|
|
126
|
+
charset:
|
|
127
|
+
min_characters: 2
|
|
128
|
+
min_characters_basis: "Iowa Admin. Code r. 761-401.3(1): 'Plates will be issued with a minimum of two characters.' A sourced FLOOR, which almost no state states."
|
|
129
|
+
notes: >-
|
|
130
|
+
§ 321.166(2) is the statutory grammar and it is broad: 'Every registration plate
|
|
131
|
+
or pair of plates shall display a registration plate number which shall consist of
|
|
132
|
+
ALPHABETICAL OR NUMERICAL CHARACTERS OR A COMBINATION THEREOF and the name of this
|
|
133
|
+
state, which may be abbreviated.' No width and no arrangement are stated, and the
|
|
134
|
+
department is authorised to 'adopt rules to implement this subsection'. NO LETTER
|
|
135
|
+
EXCLUSIONS appear in § 321.166 or § 321.34 — whether Iowa skips I/O/Q was NOT
|
|
136
|
+
established (recorded gap).
|
|
137
|
+
pattern_note: >-
|
|
138
|
+
REPRESENTATIVE SHAPE ONLY, on the nl-export precedent. Iowa's serial ARRANGEMENT is
|
|
139
|
+
not stated in the Code, the implementing rules were not located, and the Iowa DOT
|
|
140
|
+
website returned HTTP 403 to every request in this pass. What IS sourced is a
|
|
141
|
+
two-character FLOOR (761-401.3(1)) and, for emblem plates, a five-character ceiling
|
|
142
|
+
(761-401.3(2)); the regex encodes the floor and stays wide above it, and
|
|
143
|
+
`matching: recall-only` says a hit is a shape hit only.
|
|
144
|
+
design:
|
|
145
|
+
plate: { w: 12, h: 6, unit: in, w_mm: 304.8, h_mm: 152.4 }
|
|
146
|
+
plate_dimension_note: >-
|
|
147
|
+
§ 321.166(1)(a), verbatim: plates 'shall be of metal and of a size NOT TO EXCEED six
|
|
148
|
+
inches by twelve inches, except that the size of plates issued for use on autocycles,
|
|
149
|
+
motorized bicycles, motorcycles, motorcycle trailers, and trailers with an empty
|
|
150
|
+
weight of two thousand pounds or less shall be established by the department.' Note
|
|
151
|
+
this is a CEILING, unlike Florida's § 320.06(3)(a), which states minima for the same
|
|
152
|
+
two numbers. The reduced sizes are departmental and were not obtained (gap).
|
|
153
|
+
small_trailer_option: "§ 321.166(1)(b) and (8): trailers of 2,000 lb empty weight or less receive smaller plates by rule, but 'may, upon request, be licensed with regular-sized license plates'"
|
|
154
|
+
character_geometry: "§ 321.166(3): the registration plate number 'shall be displayed in characters which shall not exceed a height of four inches nor a stroke width exceeding five-eighths of an inch'. Sizes for autocycles, motorized bicycles, motorcycles, small trailers and motorcycle trailers are prescribed by the department."
|
|
155
|
+
legibility: "§ 321.166(4): the plate number, except on the small-vehicle classes, 'shall be of sufficient size to be readable from a distance of one hundred feet during daylight' — a DAYLIGHT test, where Minnesota's counterpart is a night test"
|
|
156
|
+
contrast_rule: "§ 321.166(5): 'There shall be a marked contrast between the color of the registration plates and the data which is required to be displayed on the registration plates.'"
|
|
157
|
+
series_colour_change_rule: >-
|
|
158
|
+
§ 321.166(5), verbatim and consequential for this dataset: 'When a new series of
|
|
159
|
+
registration plates is issued to replace a current series, the new registration
|
|
160
|
+
plates shall be of a DISTINCTIVELY DIFFERENT COLOR from the series which is
|
|
161
|
+
replaced, except for collegiate registration plates issued under section 321.34,
|
|
162
|
+
subsection 7 or 7A.' Iowa has legislated that its series boundaries are visually
|
|
163
|
+
detectable — and then carved collegiate plates out of the rule, so collegiate plates
|
|
164
|
+
alone may span a boundary without changing colour.
|
|
165
|
+
legend_state: "Iowa (may be abbreviated, § 321.166(2))"
|
|
166
|
+
legend_county: "the name of the county — mandatory on every plate issued by a county treasurer (§ 321.166(2))"
|
|
167
|
+
colour_note: >-
|
|
168
|
+
NO HEX IS RECORDED. Iowa mandates CONTRAST and mandates CHANGE-ON-REISSUE but names
|
|
169
|
+
no colour value, the implementing rules were not located, and the Iowa DOT site
|
|
170
|
+
returned 403. Recorded gap rather than an eyedropped value.
|
|
171
|
+
emblem: { present: true, rendered: placeholder }
|
|
172
|
+
material: "metal (§ 321.166(1)(a))"
|
|
173
|
+
region_encoding:
|
|
174
|
+
geographic_legend: >-
|
|
175
|
+
PRESENT, MANDATORY AND NOT DECODABLE. § 321.166(2): 'Every registration plate issued
|
|
176
|
+
by the county treasurer shall display the name of the county, including any plate
|
|
177
|
+
issued pursuant to section 321.34' — with named exceptions for Pearl Harbor and
|
|
178
|
+
purple heart plates issued before 1 January 1997, and for collegiate, fire fighter
|
|
179
|
+
and medal of honor plates. So the county appears as PRINTED TEXT on essentially
|
|
180
|
+
every Iowa plate, and encodes nothing in the serial. There is no geographic decode
|
|
181
|
+
in an Iowa plate string.
|
|
182
|
+
contrast_with_florida: >-
|
|
183
|
+
Iowa's county legend is STRONGER than Florida's. Florida § 320.06(3)(a) lets a county
|
|
184
|
+
commission vote the county name off its plates in favour of the state motto or
|
|
185
|
+
'Sunshine State'; Iowa gives the county no such opt-out and instead exempts specific
|
|
186
|
+
PLATE TYPES. The modelling consequence differs accordingly: in Florida the bottom
|
|
187
|
+
legend is a property of the selling county, in Iowa it is a property of the plate type.
|
|
188
|
+
contrast_with_neighbours: >-
|
|
189
|
+
Worth stating for the encyclopedia, because this group contains both designs: Iowa and
|
|
190
|
+
Kansas put the county on the plate as a LEGEND or letters, while Nebraska and (by
|
|
191
|
+
report) South Dakota put a county NUMBER into the serial itself. Only the latter is
|
|
192
|
+
machine-decodable from a plate string.
|
|
193
|
+
sources:
|
|
194
|
+
- "https://www.legis.iowa.gov/docs/code/321.166.pdf # Iowa Code § 321.166(1)(a)-(b): metal, the six-by-twelve CEILING, departmental sizes for small vehicles, the small-trailer regular-plate option; (2) the alphabetical-or-numerical-or-combination grammar, the abbreviable state name, the MANDATORY county name with its Pearl Harbor / purple heart / collegiate / fire fighter / medal of honor exceptions, the 'special' truck legend and the rulemaking authority; (3) four-inch character height and five-eighths-inch stroke ceilings and the dealer 'D'; (4) the 100-foot daylight readability rule; (5) marked contrast and the distinctively-different-colour rule for new series with its collegiate carve-out; (6) the DV prefix; (7) year and month of expiration; (8) small-trailer plates; (9) design consistency and emblem space for special plates; (10) no issuance fee on a special-plate redesign"
|
|
195
|
+
- "https://www.legis.iowa.gov/docs/iac/chapter/761.401.pdf # Iowa Admin. Code r. 761-401.3(1): the two-character minimum; 401.3(2): the five-character maximum for plates with a processed emblem and for § 321.34(13) plates. [ARC 8937C, IAB 2/19/25, effective 3/26/25]"
|
|
196
|
+
notes: >-
|
|
197
|
+
IOWA STANDARD ISSUE. THE ID IS DELIBERATELY UNDATED and the series is deliberately
|
|
198
|
+
`recall-only`: Iowa legislates its plate's PHYSICS in unusual detail — a size ceiling,
|
|
199
|
+
a character-height ceiling, a stroke ceiling, a daylight readability distance — and
|
|
200
|
+
leaves its GRAMMAR to rules this pass could not reach, with the Iowa DOT website
|
|
201
|
+
returning 403 to every request.
|
|
202
|
+
PERIOD CAVEAT: `start: 2026` is the Iowa Code edition read and is an UPPER BOUND on the
|
|
203
|
+
true start of the current base, not a claim about it. THE ONE SERIES BACK IS A
|
|
204
|
+
RECORDED GAP — but Iowa is the state where recovering it should be EASIEST, because
|
|
205
|
+
§ 321.166(5) guarantees that each new series differs in colour from the one it
|
|
206
|
+
replaced, so the series history is in principle a colour sequence and a single
|
|
207
|
+
departmental source would unlock the whole chain.
|
|
208
|
+
|
|
209
|
+
# =========================================================================
|
|
210
|
+
# THE THREE STATUTORY SERIAL AFFIXES. Each is a sourced literal, which makes
|
|
211
|
+
# these the most confidently specified Iowa series in the file.
|
|
212
|
+
# =========================================================================
|
|
213
|
+
- id: us-ia-disabled-veteran
|
|
214
|
+
class: standard
|
|
215
|
+
categories: [car, van, truck]
|
|
216
|
+
period: { start: 2026 }
|
|
217
|
+
period_evidence: instrument-in-force-upper-bound
|
|
218
|
+
matching: strict
|
|
219
|
+
format:
|
|
220
|
+
pattern: "DV999"
|
|
221
|
+
regex: '\ADV ?[A-Z0-9]{1,5}\z'
|
|
222
|
+
charset:
|
|
223
|
+
prefix_literal: "DV"
|
|
224
|
+
notes: >-
|
|
225
|
+
§ 321.166(6), verbatim: 'Registration plates issued to a disabled veteran under
|
|
226
|
+
the provisions of section 321.105 shall display the alphabetical characters "DV"
|
|
227
|
+
which shall PRECEDE the registration plate number.' A statutory literal PREFIX is
|
|
228
|
+
the single most parser-friendly fact a plate statute can contain, and Iowa states
|
|
229
|
+
it unambiguously. The number following DV is the ordinary registration plate
|
|
230
|
+
number, whose grammar is unsourced (see us-ia-standard).
|
|
231
|
+
pattern_note: "the DV prefix is a sourced literal and is fixed in the regex; the following number is left wide because Iowa's serial grammar is not sourced. The optional separator reflects that § 321.166 prescribes no spacing."
|
|
232
|
+
design:
|
|
233
|
+
note: "§ 321.166(6): the plates 'may also display a persons with disabilities parking sticker if issued to the disabled veteran by the department under section 321L.2'"
|
|
234
|
+
emblem: { present: true, rendered: placeholder }
|
|
235
|
+
colour_note: "no hex recorded; § 321.166 names no colour value"
|
|
236
|
+
region_encoding: "county name legend as on the standard series (§ 321.166(2))"
|
|
237
|
+
sources:
|
|
238
|
+
- "https://www.legis.iowa.gov/docs/code/321.166.pdf # Iowa Code § 321.166(6): the mandatory 'DV' prefix on disabled-veteran plates issued under § 321.105, and the optional persons-with-disabilities parking sticker under § 321L.2"
|
|
239
|
+
notes: >-
|
|
240
|
+
DISABLED VETERAN PLATES. Its own series because the statute mandates a FORMAT
|
|
241
|
+
difference — a literal prefix inside the plate number — which under PRD-PLATES §2.3 is
|
|
242
|
+
a series-making difference of a stronger kind than a mere legend change. CLASS
|
|
243
|
+
CAVEAT: recorded as `standard`, since _meta/classes.yml has no veteran or disability
|
|
244
|
+
class and this is an ordinary registration carrying a mandated prefix. Iowa's
|
|
245
|
+
eligibility criteria are in § 321.105, which was not read in this pass (gap).
|
|
246
|
+
|
|
247
|
+
- id: us-ia-dealer
|
|
248
|
+
class: dealer
|
|
249
|
+
categories: [car, van, truck, motorcycle, trailer]
|
|
250
|
+
period: { start: 2026 }
|
|
251
|
+
period_evidence: instrument-in-force-upper-bound
|
|
252
|
+
matching: recall-only
|
|
253
|
+
format:
|
|
254
|
+
pattern: "D9999"
|
|
255
|
+
regex: '\A[A-Z0-9](?: ?[A-Z0-9]){1,6}\z'
|
|
256
|
+
charset:
|
|
257
|
+
marker_literal: "D"
|
|
258
|
+
notes: >-
|
|
259
|
+
§ 321.166(3), verbatim: 'Special plates issued to dealers shall display the
|
|
260
|
+
alphabetical character "D", which shall be of the SAME SIZE as the characters in
|
|
261
|
+
the registration plate.' Note what the statute does and does not say: it requires
|
|
262
|
+
the character D to appear, at serial character size, but — unlike the DV rule in
|
|
263
|
+
subsection (6) — it does NOT say the D precedes the number or forms part of it.
|
|
264
|
+
Its POSITION is therefore unsourced, which is why this series is `recall-only`
|
|
265
|
+
while the disabled-veteran series above is `strict`.
|
|
266
|
+
pattern_note: >-
|
|
267
|
+
REPRESENTATIVE SHAPE ONLY. The regex deliberately does NOT pin the D, because
|
|
268
|
+
pinning it to the front would assert a position the statute does not state. The
|
|
269
|
+
sourced fact — that a same-size D appears — is carried in
|
|
270
|
+
`charset.marker_literal` instead, where it cannot be mistaken for a grammar.
|
|
271
|
+
design:
|
|
272
|
+
note: "the D is required to be the same size as the serial characters, which distinguishes it from a small legend or emblem and is why it may well be part of the number"
|
|
273
|
+
emblem: { present: true, rendered: placeholder }
|
|
274
|
+
binding: business
|
|
275
|
+
region_encoding: "county name legend as on the standard series, since dealer plates are issued by the county treasurer (§ 321.166(2))"
|
|
276
|
+
sources:
|
|
277
|
+
- "https://www.legis.iowa.gov/docs/code/321.166.pdf # Iowa Code § 321.166(3): the dealer 'D' at the same size as the registration plate characters"
|
|
278
|
+
notes: >-
|
|
279
|
+
DEALER PLATES. `binding: business` on the standing reasoning that the plate follows the
|
|
280
|
+
trade rather than a vehicle. The interesting discipline point is the CONTRAST WITH THE
|
|
281
|
+
DV RULE two subsections away: Iowa's legislature said 'shall PRECEDE the registration
|
|
282
|
+
plate number' for DV and merely 'shall display the alphabetical character "D"' for
|
|
283
|
+
dealers, and this file honours that difference by pinning one and not the other. It
|
|
284
|
+
would have been easy, and wrong, to write both as prefixes.
|
|
285
|
+
|
|
286
|
+
- id: us-ia-special-truck
|
|
287
|
+
class: standard
|
|
288
|
+
categories: [truck]
|
|
289
|
+
period: { start: 2026 }
|
|
290
|
+
period_evidence: instrument-in-force-upper-bound
|
|
291
|
+
matching: recall-only
|
|
292
|
+
format:
|
|
293
|
+
pattern: "LLL999"
|
|
294
|
+
regex: '\A[A-Z0-9](?: ?[A-Z0-9]){1,6}\z'
|
|
295
|
+
pattern_note: "REPRESENTATIVE SHAPE ONLY; § 321.166(2) mandates a LEGEND on these plates and says nothing about their serial, so the standard series' unsourced grammar applies and `matching: recall-only` follows"
|
|
296
|
+
design:
|
|
297
|
+
legend: "special"
|
|
298
|
+
legend_rule: "§ 321.166(2), verbatim: 'Special truck registration plates shall display the word \"special\".'"
|
|
299
|
+
emblem: { present: true, rendered: placeholder }
|
|
300
|
+
colour_note: "no hex recorded; § 321.166 names no colour value"
|
|
301
|
+
region_encoding: "county name legend as on the standard series (§ 321.166(2))"
|
|
302
|
+
sources:
|
|
303
|
+
- "https://www.legis.iowa.gov/docs/code/321.166.pdf # Iowa Code § 321.166(2): the mandatory 'special' legend on special truck registration plates"
|
|
304
|
+
notes: >-
|
|
305
|
+
SPECIAL TRUCK PLATES. A statutory legend series on the Florida model — us-fl-restricted
|
|
306
|
+
and us-fl-wrecker are the same shape of record. CLASS CAVEAT: recorded as `standard`,
|
|
307
|
+
because the vocabulary has no commercial or farm-truck class and the legend carries the
|
|
308
|
+
meaning. What a 'special truck' IS under Iowa law is defined elsewhere in Chapter 321
|
|
309
|
+
and was not resolved in this pass (recorded gap) — the legend and its mandate are
|
|
310
|
+
sourced, the underlying vehicle class is not.
|
|
311
|
+
|
|
312
|
+
# =========================================================================
|
|
313
|
+
# BLACKOUT — statutory, and the Iowa half of a two-state Midwestern pattern.
|
|
314
|
+
# =========================================================================
|
|
315
|
+
- id: us-ia-blackout
|
|
316
|
+
class: specialty
|
|
317
|
+
categories: [car, van, truck, motorcycle]
|
|
318
|
+
period: { start: 2026 }
|
|
319
|
+
period_evidence: instrument-in-force-upper-bound
|
|
320
|
+
matching: recall-only
|
|
321
|
+
format:
|
|
322
|
+
pattern: "LLL999"
|
|
323
|
+
regex: '\A[A-Z0-9](?: ?[A-Z0-9]){1,6}\z'
|
|
324
|
+
pattern_note: "REPRESENTATIVE SHAPE ONLY; § 321.34(11C) authorises the plate and its design without stating a serial grammar, so the standard series' unsourced grammar applies"
|
|
325
|
+
design:
|
|
326
|
+
note: >-
|
|
327
|
+
THE DESIGN IS SOURCED ONLY BY ITS NAME AND BY AN EXEMPTION. § 321.34(11C) creates
|
|
328
|
+
'Blackout plates' as a numbered special-plate subsection, and § 321.166(9) lists
|
|
329
|
+
blackout plates among the special plates EXEMPT from the rule that special plates
|
|
330
|
+
'shall be consistent with the design and color of regular registration plates' —
|
|
331
|
+
which is the statutory way of saying the blackout plate is allowed to look
|
|
332
|
+
completely unlike an Iowa plate. Its actual colours are not stated in the Code and
|
|
333
|
+
the Iowa DOT site returned 403, so no hex is recorded here.
|
|
334
|
+
design_freedom_basis: "§ 321.166(9) exempts gold star, medal of honor, collegiate, fire fighter, natural resources, BLACKOUT and flying our colors plates from the design-and-colour-consistency requirement imposed on other special plates"
|
|
335
|
+
emblem: { present: false }
|
|
336
|
+
colour_note: >-
|
|
337
|
+
NO HEX RECORDED — and the contrast with North Dakota is the point. North Dakota
|
|
338
|
+
legislated its blackout plate's colours as VALUES (NDCC § 39-04-10.18(2): 'a solid
|
|
339
|
+
black background', 'white numbers and letters'), so us-nd-blackout carries
|
|
340
|
+
`hex_basis: statute`. Iowa legislated only that its blackout plate need not match
|
|
341
|
+
the regular design. Same plate concept, two states, and only one of them is
|
|
342
|
+
citable for a colour.
|
|
343
|
+
region_encoding: "county name legend as on the standard series, since these are county-treasurer-issued plates (§ 321.166(2))"
|
|
344
|
+
sources:
|
|
345
|
+
- "https://www.legis.iowa.gov/docs/code/321.34.pdf # Iowa Code § 321.34(11C): 'Blackout plates' as an authorised special registration plate subsection"
|
|
346
|
+
- "https://www.legis.iowa.gov/docs/code/321.166.pdf # Iowa Code § 321.166(9): blackout plates among those exempt from the design-and-colour-consistency requirement, i.e. the statutory licence for the design to differ"
|
|
347
|
+
notes: >-
|
|
348
|
+
BLACKOUT PLATES. Broken out as its own series because § 321.166(9) expressly frees it
|
|
349
|
+
from the design and colour of the regular plate, which is a design difference in the
|
|
350
|
+
§2.3 sense even though the Code never says what the design IS. Iowa and North Dakota
|
|
351
|
+
both run statutory blackout plates — a small Midwestern convergence worth recording
|
|
352
|
+
for the encyclopedia — and comparing the two is instructive about sourcing: one state
|
|
353
|
+
wrote the colours into law and the other wrote only a permission.
|
|
354
|
+
|
|
355
|
+
# =========================================================================
|
|
356
|
+
# SPECIALTY — THE PROGRAM INDEX, per PRD-PLATES §2.5. Counted from the statute.
|
|
357
|
+
# =========================================================================
|
|
358
|
+
- id: us-ia-specialty-index
|
|
359
|
+
class: specialty
|
|
360
|
+
categories: [car, van, truck, motorcycle]
|
|
361
|
+
period: { start: 2026 }
|
|
362
|
+
period_evidence: instrument-in-force-upper-bound
|
|
363
|
+
matching: recall-only
|
|
364
|
+
format:
|
|
365
|
+
pattern: "LLL99"
|
|
366
|
+
regex: '\A[A-Z0-9](?: ?[A-Z0-9]){1,6}\z'
|
|
367
|
+
charset:
|
|
368
|
+
max_characters_emblem_plates: 5
|
|
369
|
+
max_characters_basis: "Iowa Admin. Code r. 761-401.3(2): 'Plates with a processed emblem, and plates issued under Iowa Code section 321.34(13), are limited to five characters whether personalized or issued as a letter-number designated plate.' A sourced, emblem-conditional ceiling — the frame narrows because the emblem takes plate space."
|
|
370
|
+
min_characters: 2
|
|
371
|
+
pattern_note: "REPRESENTATIVE SHAPE ONLY; the index stands for many programs, and the sourced constraints are the two-character floor and the five-character emblem-plate ceiling rather than any arrangement"
|
|
372
|
+
design:
|
|
373
|
+
consistency_rule: >-
|
|
374
|
+
§ 321.166(9): special plates other than the exempt list 'shall be CONSISTENT WITH THE
|
|
375
|
+
DESIGN AND COLOR of regular registration plates but shall provide a space on a
|
|
376
|
+
portion of the plate for the purpose of allowing the placement of a distinguishing
|
|
377
|
+
processed emblem or an organization decal.' So Iowa's default specialty plate is the
|
|
378
|
+
standard plate plus an emblem slot — which is why the emblem-plate character ceiling
|
|
379
|
+
exists and why most Iowa specialty designs are not free-form.
|
|
380
|
+
exempt_from_consistency: ["gold star", "medal of honor", "collegiate", "fire fighter", "natural resources", "blackout", "flying our colors"]
|
|
381
|
+
note: "one design per authorised program; the designs themselves are L4 scope (PRD-PLATES §2.5) and none is described here"
|
|
382
|
+
emblem: { present: true, rendered: placeholder }
|
|
383
|
+
program_index:
|
|
384
|
+
count_statutory: 30
|
|
385
|
+
count_basis: >-
|
|
386
|
+
COUNTED FROM THE STATUTE — the numbered subsections of Iowa Code § 321.34 that
|
|
387
|
+
authorise a plate type: radio operators (3), permanent (4), personalized (5), sample
|
|
388
|
+
(6), collegiate (7), medal of honor (8), ex-prisoner of war (8A), fire fighter (10),
|
|
389
|
+
emergency medical services (10A), natural resources (11), love our kids (11A),
|
|
390
|
+
motorcycle rider education (11B), blackout (11C), flying our colors (11D), persons
|
|
391
|
+
with disabilities (14), legion of merit (15), national guard (16), Pearl Harbor (17),
|
|
392
|
+
purple heart (18), United States armed forces retired (19), silver or bronze star
|
|
393
|
+
(20), distinguished service / navy / air force cross (20A), soldier's / navy and
|
|
394
|
+
marine corps / airman's medal (20B), Iowa heritage (21), education (22), breast
|
|
395
|
+
cancer awareness (23), gold star (24), civil war sesquicentennial (25), fallen peace
|
|
396
|
+
officers (26) and United States veteran (27).
|
|
397
|
+
count_caveat: >-
|
|
398
|
+
SUBSECTIONS ARE NOT DESIGNS, and in Iowa the gap is wide in both directions.
|
|
399
|
+
§ 321.34(7) collegiate plates cover every participating institution under one
|
|
400
|
+
subsection, and § 321.34(13) is an open-ended NONPROFIT ORGANIZATION DECAL program
|
|
401
|
+
under which any qualifying organization may have a decal approved — so the number of
|
|
402
|
+
DESIGNS offered is materially greater than 30 and was not obtained. Conversely the
|
|
403
|
+
count includes subsections that are not really specialty designs at all (permanent
|
|
404
|
+
plates, sample plates). No Iowa DOT figure exists to reconcile against, because the
|
|
405
|
+
Iowa DOT site returned HTTP 403 on every request in this pass. Recorded, not
|
|
406
|
+
averaged (PRD-PLATES §5.3).
|
|
407
|
+
organization_decal_program: >-
|
|
408
|
+
§ 321.34(13) with Iowa Admin. Code r. 761-401.4: a nonprofit organization meeting the
|
|
409
|
+
§ 321.34(13)'a'/'b' criteria applies on Form 411346 for approval of a decal DESIGN,
|
|
410
|
+
and the department must notify approval or denial within 60 days; the department may
|
|
411
|
+
revoke an approved decal on finding a false statement, with notice. This is the
|
|
412
|
+
mechanism by which the Iowa catalogue grows without further legislation, and it is
|
|
413
|
+
the reason the design count is unbounded from the statute alone.
|
|
414
|
+
personalized_rules: >-
|
|
415
|
+
Iowa Admin. Code r. 761-401.5: personalized plates under § 321.34(5) are orderable
|
|
416
|
+
online; an application is rejected if the requested combination is already issued or
|
|
417
|
+
reserved for any other plate series; the department must not issue a combination it
|
|
418
|
+
determines falls into the rule's prohibited categories (the specific categories were
|
|
419
|
+
not extracted — gap); personalized plates are unavailable for the plate types listed
|
|
420
|
+
in 401.2(2)'a' onward.
|
|
421
|
+
fee_relief_on_redesign: "§ 321.166(10): if the department reissues a new design for a special plate, existing holders 'shall not be required to pay the issuance fee' — a rare statutory protection against redesign churn costs"
|
|
422
|
+
official_list_url: "https://www.legis.iowa.gov/docs/code/321.34.pdf"
|
|
423
|
+
iowa_dot_status: "the Iowa DOT plate pages (iowadot.gov) returned HTTP 403 on every request in this pass, via WebFetch and curl alike; recorded so a later run does not mistake it for unfetched-but-fine"
|
|
424
|
+
region_encoding: "county name legend, EXCEPT that § 321.166(2) exempts collegiate, fire fighter and medal of honor plates, and Pearl Harbor and purple heart plates issued before 1 January 1997 — so on those types the county is genuinely absent"
|
|
425
|
+
sources:
|
|
426
|
+
- "https://www.legis.iowa.gov/docs/code/321.34.pdf # Iowa Code § 321.34: the thirty numbered plate-authorising subsections counted above, including (11C) blackout and (13) the nonprofit organization decal program; (3) radio operator call-letter plates; (5) personalized plates"
|
|
427
|
+
- "https://www.legis.iowa.gov/docs/code/321.166.pdf # Iowa Code § 321.166(9): the design-and-colour consistency rule, the emblem/decal space requirement and the seven-type exemption list; (10) no issuance fee on a special-plate redesign; (2) the county-name exemptions for collegiate, fire fighter and medal of honor plates"
|
|
428
|
+
- "https://www.legis.iowa.gov/docs/iac/chapter/761.401.pdf # Iowa Admin. Code 761 ch. 401: r. 401.3 the two-character floor and five-character emblem-plate ceiling; r. 401.4 the nonprofit decal approval process, Form 411346, the 60-day decision and revocation; r. 401.5 personalized plate ordering, rejection and prohibition rules"
|
|
429
|
+
notes: >-
|
|
430
|
+
THE SPECIALTY PROGRAM INDEX — one entry standing for the whole program, per
|
|
431
|
+
PRD-PLATES §2.5, with no individual designs. Iowa counts cleanly from the statute the
|
|
432
|
+
way North Dakota does, and carries the same honest caveat in sharper form: the
|
|
433
|
+
open-ended § 321.34(13) decal program means the DESIGN count is unbounded from the
|
|
434
|
+
Code alone, while several counted subsections are not designs at all. The genuinely
|
|
435
|
+
novel Iowa facts for this dataset are structural rather than numeric — the default
|
|
436
|
+
specialty plate is the STANDARD plate plus an emblem slot (§ 321.166(9)), the emblem
|
|
437
|
+
slot COSTS characters (five-character ceiling, r. 761-401.3(2)), and a redesign cannot
|
|
438
|
+
be charged to existing holders (§ 321.166(10)).
|