vehicles 0.4.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 +321 -0
- data/README.md +88 -15
- data/data/PROVENANCE-vehicles.md +12 -0
- data/data/plates/PROVENANCE.md +10 -0
- 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/es-provinces.yml +116 -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 +26 -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 +1107 -0
- data/data/plates/dk.yml +1647 -0
- data/data/plates/ee.yml +1275 -0
- data/data/plates/es.yml +888 -0
- 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 +1016 -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 +741 -0
- 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 +18 -2
- 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 +42 -6
- data/lib/vehicles/plates/jurisdiction.rb +32 -0
- data/lib/vehicles/plates/series.rb +291 -0
- data/lib/vehicles/plates/template_fill.rb +188 -0
- data/lib/vehicles/plates/templates.rb +162 -0
- data/lib/vehicles/plates.rb +122 -0
- data/lib/vehicles/providers/hosted_provider.rb +49 -58
- data/lib/vehicles/providers/local_provider.rb +4 -3
- 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 +53 -16
- data/rakelib/data_refresh.rake +109 -0
- data/rakelib/plates_refresh.rake +29 -0
- data/sig/vehicles.rbs +18 -0
- metadata +174 -2
|
@@ -0,0 +1,614 @@
|
|
|
1
|
+
# plates/us-dc.yml — District of Columbia (PRD-PLATES gate L2, mid-Atlantic group).
|
|
2
|
+
#
|
|
3
|
+
# THE DISTRICT IS THE ONLY JURISDICTION IN THE UNITED STATES WHOSE STANDARD
|
|
4
|
+
# PLATE LEGEND IS A POLITICAL DEMAND, AND THE DEMAND IS IN THE STATUTE.
|
|
5
|
+
# DC Official Code § 50-1501.02(f-1) provides that identification tags designed
|
|
6
|
+
# under subsection (f)(3) — excluding for-hire vehicles, organization plates,
|
|
7
|
+
# motorcycles and autocycles — 'shall display the phrase "End Taxation Without
|
|
8
|
+
# Representation"'. And in the same breath it legislates an OPT-OUT: 'An
|
|
9
|
+
# individual who does not wish to display the phrase "End Taxation Without
|
|
10
|
+
# Representation" on his or her identification tag may request an identification
|
|
11
|
+
# tag featuring an alternate design, to be supplied by the Department of Motor
|
|
12
|
+
# Vehicles.' A MANDATED SLOGAN WITH A STATUTORY CONSCIENCE CLAUSE — structurally
|
|
13
|
+
# the same wrinkle as Florida's county-name legend, which is a county-commission
|
|
14
|
+
# opt-out, and modelled the same way: the alternate is its own series because
|
|
15
|
+
# its design differs.
|
|
16
|
+
#
|
|
17
|
+
# THE ARTWORK FINDING HERE IS A DEBUNK, NOT A LOOKUP. Wikimedia Commons carries
|
|
18
|
+
# a {{PD-DC}} template asserting that District of Columbia government works are
|
|
19
|
+
# public domain. THE DISTRICT'S OWN TERMS OF USE SAY THE OPPOSITE: dc.gov
|
|
20
|
+
# content 'is licensed under a Creative Commons Attribution 3.0 License'. A CC BY
|
|
21
|
+
# licence is an EXERCISE of copyright, not a disclaimer of it — you cannot
|
|
22
|
+
# licence what you do not own. The Commons tag and the District's own statement
|
|
23
|
+
# cannot both be right, and the District's own statement is the better authority
|
|
24
|
+
# about the District. See `artwork_risk`; this is recorded as a folklore
|
|
25
|
+
# correction, exactly as PRD-PLATES §4 asks.
|
|
26
|
+
#
|
|
27
|
+
# period_evidence / format_evidence vocabularies as in us-ny.yml.
|
|
28
|
+
jurisdiction: us-dc
|
|
29
|
+
authority:
|
|
30
|
+
name: District of Columbia Department of Motor Vehicles (DC DMV)
|
|
31
|
+
url: "https://dmv.dc.gov/"
|
|
32
|
+
binding: vehicle
|
|
33
|
+
statute_edition: "Code of the District of Columbia, Title 50, Chapter 15, as served by code.dccouncil.gov and read 2026-08-02. DCMR Title 18 § 422 ('Display of Identification Tags', effective 11 August 2017) was identified in the DC Register index but its TEXT was not retrieved — the register serves rule metadata and puts the text behind a per-notice viewer. Recorded gap."
|
|
34
|
+
|
|
35
|
+
# ---------------------------------------------------------------------------
|
|
36
|
+
# artwork_risk — required per jurisdiction by PRD-PLATES §4.
|
|
37
|
+
# ---------------------------------------------------------------------------
|
|
38
|
+
artwork_risk:
|
|
39
|
+
posture: asserted-but-openly-licensed
|
|
40
|
+
basis: >-
|
|
41
|
+
THE DISTRICT ASSERTS COPYRIGHT AND THEN LICENSES IT OPENLY. dc.gov's own
|
|
42
|
+
terms and conditions of use state that 'content on this site is licensed
|
|
43
|
+
under a Creative Commons Attribution 3.0 License' (excluding third-party
|
|
44
|
+
copyrighted content), that user submissions are granted to the world under
|
|
45
|
+
the same licence, and that data on the DC Open Data portal carries a
|
|
46
|
+
'Creative Commons CC0 1.0 Universal' dedication. The same page separately
|
|
47
|
+
notes that 'federal government-produced materials appearing on this site or
|
|
48
|
+
elsewhere are not copyright protected' — the District distinguishing FEDERAL
|
|
49
|
+
material (public domain) from DISTRICT material (CC BY 3.0), which is itself
|
|
50
|
+
the clearest possible statement that it does not consider its own works
|
|
51
|
+
federal.
|
|
52
|
+
folklore_correction: >-
|
|
53
|
+
WIKIMEDIA COMMONS IS WRONG, OR AT LEAST UNSUPPORTED, ABOUT THE DISTRICT.
|
|
54
|
+
Commons carries {{PD-DCGov}} (a redirect to {{PD-DC}}), which asserts that
|
|
55
|
+
District of Columbia government works are PUBLIC DOMAIN and cites, for
|
|
56
|
+
authority, the US Copyright Office's Compendium chapter 300 with no pinpoint
|
|
57
|
+
to any DC-specific holding. That assertion is inconsistent with the
|
|
58
|
+
District's own published terms, which licence District content CC BY 3.0 —
|
|
59
|
+
an act that presupposes ownership. The likely root of the error is the
|
|
60
|
+
federal-enclave intuition (that anything in Washington is federal), but
|
|
61
|
+
17 U.S.C. § 101 defines a 'work of the United States Government' as one
|
|
62
|
+
prepared by an officer or employee OF THE UNITED STATES GOVERNMENT, and the
|
|
63
|
+
District government is a municipal government created by Congress, not a
|
|
64
|
+
federal agency. RECORDED AS A FOLKLORE CORRECTION per PRD-PLATES §4's
|
|
65
|
+
standing treatment of circular and unsupported claims. Anyone relying on
|
|
66
|
+
{{PD-DC}} for a DC plate design should stop.
|
|
67
|
+
practical_effect: >-
|
|
68
|
+
The CC BY 3.0 grant is genuinely useful and genuinely encumbered: it permits
|
|
69
|
+
reuse of dc.gov CONTENT with ATTRIBUTION, which is a real obligation that
|
|
70
|
+
would propagate into any dataset that copied that content. Because our
|
|
71
|
+
renders are generated from facts and never derived from District material,
|
|
72
|
+
the attribution obligation NEVER ATTACHES — the same argument that makes
|
|
73
|
+
Commons' CC BY-SA photographs harmless to us. The grant is recorded, not
|
|
74
|
+
relied upon.
|
|
75
|
+
emblem_rule: >-
|
|
76
|
+
RENDER PLACEHOLDER. The District's tags carry the DC flag device (three
|
|
77
|
+
stars over two bars) in several roles — as a graphic on the plate, as a
|
|
78
|
+
SERIAL SEPARATOR on the trailer series, and in the corners of the current
|
|
79
|
+
temporary tag. The flag is the District's heraldic device and carries
|
|
80
|
+
protection independent of copyright, unresearched here as everywhere.
|
|
81
|
+
photograph_caution: "Standard §4 reading: a Commons photograph carries the photographer's licence on the photograph and says nothing about the design."
|
|
82
|
+
sources:
|
|
83
|
+
- "https://dc.gov/page/terms-and-conditions-use # the District's own terms: 'content on this site is licensed under a Creative Commons Attribution 3.0 License'; DC Open Data under CC0 1.0; 'federal government-produced materials appearing on this site or elsewhere are not copyright protected'"
|
|
84
|
+
- "https://commons.wikimedia.org/wiki/Template:PD-DCGov # the Commons tag (a redirect to Template:PD-DC) asserting DC government works are public domain, citing the Copyright Office Compendium chapter 300 with no DC-specific pinpoint — RECORDED AS CONTRADICTED by the District's own terms"
|
|
85
|
+
|
|
86
|
+
# ---------------------------------------------------------------------------
|
|
87
|
+
# The US standards chain. Voluntary; J686 never quoted.
|
|
88
|
+
# ---------------------------------------------------------------------------
|
|
89
|
+
us_standards:
|
|
90
|
+
no_federal_mandate: true
|
|
91
|
+
chain: "SAE J686 -> AAMVA License Plate Standard Edition 3 (September 2025) -> voluntary state adoption. The District is an AAMVA member jurisdiction like any state; there is no federal plate mandate even in the federal district."
|
|
92
|
+
aamva_edition_3:
|
|
93
|
+
dimensions_delegated: "AAMVA §3.1 sends dimensions and bolt holes to SAE J686 (paywalled, NOT obtained). DC Code Chapter 15 states no tag dimension; the design is delegated wholesale to the Mayor by § 50-1501.02(f)(3). No sourced dimension is carried here — though see the temporary tag, whose mounting holes DC DMV states are 'set to vehicle industry standards', an agency acknowledgement of the same unpinned standard."
|
|
94
|
+
stacked_characters: >-
|
|
95
|
+
AAMVA: 'If stacked characters are used, they are part of the official
|
|
96
|
+
license plate number. No more than two characters are to be stacked.' THE
|
|
97
|
+
DISTRICT ACTUALLY STACKS. Its motorcycle tags are reported with a stacked
|
|
98
|
+
letter pair — M over a series letter — followed by the numerals. Under
|
|
99
|
+
AAMVA's rule the stacked pair is SERIAL, not decoration, which is exactly
|
|
100
|
+
the normalisation trap the dossier flagged: a consumer that reads a
|
|
101
|
+
stacked pair as one character, or drops it, gets a DC motorcycle serial
|
|
102
|
+
wrong. Recorded on us-dc-motorcycle.
|
|
103
|
+
replacement_cycle: "AAMVA §1.1 recommends a cycle 'not to exceed 7 to 10 years'. No District replacement cycle was located; DC DMV offers tag replacement as a service rather than as a schedule."
|
|
104
|
+
source: "https://www.aamva.org/getmedia/646bcc8a-219b-47d8-b5cd-726240473163/License-Plate-Standard-Edition-3_September-2025-Update.pdf"
|
|
105
|
+
folklore_caution: "The '1956 AMA standardization agreement' is UNCITED in its Wikipedia source and is recorded as COMMONLY REPEATED, UNSOURCED. Note the dossier's finding that the same uncited passage was copied verbatim into the Puerto Rico and Canada articles — territory articles are where this particular folklore propagates."
|
|
106
|
+
|
|
107
|
+
# ---------------------------------------------------------------------------
|
|
108
|
+
# Display rules. The District is a TWO-TAG jurisdiction.
|
|
109
|
+
# ---------------------------------------------------------------------------
|
|
110
|
+
display_rules:
|
|
111
|
+
default: "TWO tags. DC DMV: 'Vehicles are required to display two current tags: one on the front and the other on the rear of the vehicle.'"
|
|
112
|
+
exceptions: "DC DMV: 'Exceptions are for motorcycles, mopeds and trailers. For these, one tag is issued to be displayed on the rear of the vehicle.'"
|
|
113
|
+
mounting: "DC DMV: 'The vehicle tags must be securely fastened in a horizontal position, so that they do not fall off and can be easily read.'"
|
|
114
|
+
obstruction: "DC DMV: 'District law requires that the tags be visible and not obstructed or covered by any substance (e.g., glass, plastic, spray, license tag holders, etc.).' The underlying instrument is DCMR 18-422 'Display of Identification Tags' (effective 11 August 2017), whose text was not retrieved."
|
|
115
|
+
issuance: "DC Code § 50-1501.02: the Mayor issues identification tags as part of the registration certificate to owners meeting the statutory requirements; § 50-1501.02(f) requires the Mayor to establish (1) application forms, (2) the forms of registration and special use certificates, (3) THE DESIGN OF IDENTIFICATION TAGS, and (4) a records programme."
|
|
116
|
+
sources:
|
|
117
|
+
- "https://dmv.dc.gov/service/dmv-vehicle-tags # DC DMV: two tags front and rear; motorcycles, mopeds and trailers rear only; horizontal secure fastening; the visibility and non-obstruction rule"
|
|
118
|
+
- "https://code.dccouncil.gov/us/dc/council/code/sections/50-1501.02 # DC Code § 50-1501.02: issuance of identification tags; (f)(1)-(f)(4) the Mayor's rulemaking duties including 'The design of identification tags'; (f-1) the mandated phrase and the individual opt-out"
|
|
119
|
+
- "https://dcregs.dc.gov/Common/DCMR/SectionList.aspx?SectionNumber=18-422 # DCMR 18-422 'DISPLAY OF IDENTIFICATION TAGS', effective 11 August 2017 — index metadata only; the rule TEXT was not retrievable through this interface (recorded gap)"
|
|
120
|
+
|
|
121
|
+
series:
|
|
122
|
+
|
|
123
|
+
# =========================================================================
|
|
124
|
+
# THE CURRENT STANDARD-ISSUE SERIES — with a legend Congress-adjacent
|
|
125
|
+
# politics put in the statute.
|
|
126
|
+
# =========================================================================
|
|
127
|
+
- id: us-dc-end-taxation
|
|
128
|
+
class: standard
|
|
129
|
+
categories: [car, van, truck, bus]
|
|
130
|
+
period: { start: 2017 }
|
|
131
|
+
period_evidence: secondary-locator-unverified
|
|
132
|
+
format_evidence: secondary-locator-unverified
|
|
133
|
+
matching: strict
|
|
134
|
+
format:
|
|
135
|
+
pattern: "LL-9999"
|
|
136
|
+
regex: '\A[A-Z]{2}-?\d{4}\z'
|
|
137
|
+
charset:
|
|
138
|
+
notes: >-
|
|
139
|
+
NO CHARSET RULE IS IN THE DC CODE. § 50-1501.02 delegates 'The design
|
|
140
|
+
of identification tags' to the Mayor entire and states no length, no
|
|
141
|
+
alphabet and no exclusions. The two-letter / four-numeral arrangement
|
|
142
|
+
is locator-grade. Note that the District has been running this same
|
|
143
|
+
arrangement since at least November 2000 across every base change,
|
|
144
|
+
which is unusual stability: the DESIGN changes and the GRAMMAR does not.
|
|
145
|
+
pattern_note: >-
|
|
146
|
+
SEPARATOR CAVEAT. The locator writes DC serials as AB-1234 with a hyphen,
|
|
147
|
+
but it also describes at least one DC issue as using 'district flag used
|
|
148
|
+
as separator in serial' — i.e. the gap may carry the DC flag device
|
|
149
|
+
rather than a printed hyphen, as it demonstrably does on the trailer
|
|
150
|
+
series. The dataset spells the emitted hyphen and records the doubt here
|
|
151
|
+
rather than guessing; if the current base uses the flag device, the
|
|
152
|
+
correct treatment is the New Jersey one (space in the pattern, glyph in
|
|
153
|
+
`design.graphic`) and this series should be amended. FLAGGED FOR THE
|
|
154
|
+
VERIFIER — it is a one-photograph question.
|
|
155
|
+
progression: "reported to run FN-4000 to GV-9999, then JA-0000 to JU-7808 as of 26 October 2025 (locator)."
|
|
156
|
+
design:
|
|
157
|
+
background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
|
|
158
|
+
foreground: "#003087"
|
|
159
|
+
colour_note: "blue serial on reflective white (locator); `hex_basis: observed`. The DC Code states no colour."
|
|
160
|
+
legend_top: "WASHINGTON, DC"
|
|
161
|
+
legend_bottom: "END TAXATION WITHOUT REPRESENTATION"
|
|
162
|
+
legend_rule: >-
|
|
163
|
+
THE LEGEND IS STATUTORY. DC Code § 50-1501.02(f-1): identification tags
|
|
164
|
+
designed under subsection (f)(3), 'not including identification tags for
|
|
165
|
+
vehicles for-hire, motor vehicles bearing organization plates,
|
|
166
|
+
motorcycles, or autocycles, shall display the phrase "End Taxation
|
|
167
|
+
Without Representation"'. NOTE THE FOUR CARVE-OUTS — for-hire vehicles,
|
|
168
|
+
organization plates, motorcycles and autocycles are excluded from the
|
|
169
|
+
mandate by name, which is why the taxi and motorcycle series below carry
|
|
170
|
+
no such legend and why an autocycle (a class no other jurisdiction in
|
|
171
|
+
this group legislates for) appears in a plate statute at all.
|
|
172
|
+
legend_history_note: >-
|
|
173
|
+
The phrase CHANGED at this base. The 2013 base and its predecessors read
|
|
174
|
+
'TAXATION WITHOUT REPRESENTATION'; this base reads 'END TAXATION WITHOUT
|
|
175
|
+
REPRESENTATION'. One word, and it converts a statement of grievance into
|
|
176
|
+
a demand. The statute as read today carries the longer phrase, which is
|
|
177
|
+
consistent with the 2017 base being the one the current subsection
|
|
178
|
+
describes.
|
|
179
|
+
graphic: { present: true, rendered: placeholder, description: "DC flag device (three stars over two bars) — position on the current base not established; see the separator caveat above" }
|
|
180
|
+
emblem: { present: true, rendered: placeholder }
|
|
181
|
+
band: { side: none }
|
|
182
|
+
rear_differs: false
|
|
183
|
+
dimension_note: "NO SOURCED DIMENSION — the DC Code states none and SAE J686 is unpinned."
|
|
184
|
+
region_encoding: none
|
|
185
|
+
sources:
|
|
186
|
+
- "https://code.dccouncil.gov/us/dc/council/code/sections/50-1501.02 # § 50-1501.02(f)(3) the Mayor designs the tags; (f-1) the mandated 'End Taxation Without Representation' phrase, its four carve-outs, and the individual opt-out to an alternate design"
|
|
187
|
+
- "https://dmv.dc.gov/service/dmv-vehicle-tags # DC DMV: two tags front and rear — the agency-page-in-force evidence for the display regime"
|
|
188
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Washington,_D.C. # LOCATOR ONLY (PRD-PLATES §4): August 2017 base, 'WASHINGTON, DC' at top with 'END TAXATION WITHOUT REPRESENTATION' at bottom, AB-1234 from FN-4000, blue on reflective white"
|
|
189
|
+
notes: >-
|
|
190
|
+
END TAXATION WITHOUT REPRESENTATION (2017-) — THE CURRENT DISTRICT
|
|
191
|
+
STANDARD ISSUE, and the only standard-issue plate in the United States
|
|
192
|
+
whose legend is a political demand fixed by law. The statutory opt-out
|
|
193
|
+
makes the District structurally like Florida: one statutory design with a
|
|
194
|
+
legislated escape hatch, so the bottom legend is not a property of the
|
|
195
|
+
series but of the REGISTRANT'S CHOICE. Modelled as two series because the
|
|
196
|
+
designs differ; see us-dc-alternate-design. `start: 2017` is locator-grade,
|
|
197
|
+
though the statute's use of the longer phrase corroborates it. Parallel
|
|
198
|
+
issuance with the 2013 base is real — no recall was located — which is why
|
|
199
|
+
the periods overlap with distinct notes.
|
|
200
|
+
|
|
201
|
+
- id: us-dc-alternate-design
|
|
202
|
+
class: standard
|
|
203
|
+
categories: [car, van, truck, bus]
|
|
204
|
+
period: { start: 2018 }
|
|
205
|
+
period_evidence: secondary-locator-unverified
|
|
206
|
+
format_evidence: secondary-locator-unverified
|
|
207
|
+
matching: strict
|
|
208
|
+
format:
|
|
209
|
+
pattern: "LL-9999"
|
|
210
|
+
regex: '\A[A-Z]{2}-?\d{4}\z'
|
|
211
|
+
charset: { notes: "identical grammar to the mandated-legend base — the opt-out changes the LEGEND, not the serial. Reported range EA-3000 onward." }
|
|
212
|
+
design:
|
|
213
|
+
background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
|
|
214
|
+
foreground: "#003087"
|
|
215
|
+
legend_top: "WASHINGTON, DC"
|
|
216
|
+
legend_bottom: "www.dc.gov"
|
|
217
|
+
legend_rule: >-
|
|
218
|
+
THE STATUTORY OPT-OUT MADE VISIBLE. § 50-1501.02(f-1): 'An individual who
|
|
219
|
+
does not wish to display the phrase "End Taxation Without
|
|
220
|
+
Representation" on his or her identification tag may request an
|
|
221
|
+
identification tag featuring an alternate design, to be supplied by the
|
|
222
|
+
Department of Motor Vehicles.' The alternate the District actually
|
|
223
|
+
supplies is reported to carry a URL where the demand would be — first
|
|
224
|
+
www.washingtondc.gov (from 2002), then www.dc.gov (from about 2018).
|
|
225
|
+
A CONSCIENCE CLAUSE ANSWERED WITH A WEB ADDRESS, which is either
|
|
226
|
+
deliberately anodyne or accidentally perfect.
|
|
227
|
+
graphic: { present: true, rendered: placeholder }
|
|
228
|
+
emblem: { present: true, rendered: placeholder }
|
|
229
|
+
band: { side: none }
|
|
230
|
+
region_encoding: none
|
|
231
|
+
sources:
|
|
232
|
+
- "https://code.dccouncil.gov/us/dc/council/code/sections/50-1501.02 # § 50-1501.02(f-1): the individual opt-out and the Department's duty to supply an alternate design"
|
|
233
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Washington,_D.C. # LOCATOR ONLY: the alternate issue reading 'www.dc.gov' screened in blue at the bottom from about 2018, EA-3000 onward; the earlier 'www.washingtondc.gov' alternate from January 2002"
|
|
234
|
+
notes: >-
|
|
235
|
+
THE ALTERNATE DESIGN (2018-). Its own series rather than a variant because
|
|
236
|
+
its DESIGN differs from the mandated-legend base while its format and
|
|
237
|
+
period overlap it — the §2.3 test. It is also, together with Florida's
|
|
238
|
+
county-name opt-out, the second example in this dataset of a US
|
|
239
|
+
legislature writing an INDIVIDUAL CHOICE into a plate's design, and the
|
|
240
|
+
first where the choice is a matter of conscience rather than of local
|
|
241
|
+
government. A consumer must not treat the legend as diagnostic of the
|
|
242
|
+
series: two District plates issued the same week can read differently and
|
|
243
|
+
both are standard issue.
|
|
244
|
+
|
|
245
|
+
# =========================================================================
|
|
246
|
+
# ONE SERIES BACK.
|
|
247
|
+
# =========================================================================
|
|
248
|
+
- id: us-dc-district-of-columbia
|
|
249
|
+
class: standard
|
|
250
|
+
categories: [car, van, truck, bus]
|
|
251
|
+
period: { start: 2013, end: 2017 }
|
|
252
|
+
period_evidence: secondary-locator-unverified
|
|
253
|
+
format_evidence: secondary-locator-unverified
|
|
254
|
+
matching: strict
|
|
255
|
+
format:
|
|
256
|
+
pattern: "LL-9999"
|
|
257
|
+
regex: '\A[A-Z]{2}-?\d{4}\z'
|
|
258
|
+
charset: { notes: "same grammar again. Reported range EK-0000 to FN-3999, plus ALL-NUMERIC REMAKES in a 000-000 form — a parallel numeric shape the letter-led regex does not cover and which is recorded here rather than silently folded in." }
|
|
259
|
+
design:
|
|
260
|
+
background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
|
|
261
|
+
foreground: "#003087"
|
|
262
|
+
legend_top: "DISTRICT OF COLUMBIA"
|
|
263
|
+
legend_bottom: "TAXATION WITHOUT REPRESENTATION"
|
|
264
|
+
legend_note: "the jurisdiction name at the top is the FORMAL one on this base and the colloquial 'WASHINGTON, DC' on the base before and after it — the District has alternated between its two names across issues, which is a small but real trap for any OCR or classifier keyed on the top legend."
|
|
265
|
+
graphic: { present: true, rendered: placeholder }
|
|
266
|
+
emblem: { present: true, rendered: placeholder }
|
|
267
|
+
band: { side: none }
|
|
268
|
+
region_encoding: none
|
|
269
|
+
sources:
|
|
270
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Washington,_D.C. # LOCATOR ONLY: July 2013 to August 2017, 'DISTRICT OF COLUMBIA' in blue at top, 'TAXATION WITHOUT REPRESENTATION', AB-1234 from EK-0000 to FN-3999, all-numeric remakes"
|
|
271
|
+
notes: >-
|
|
272
|
+
DISTRICT OF COLUMBIA (2013-2017) — THE PREVIOUS BASE. `end: 2017` closes
|
|
273
|
+
ISSUANCE, not validity: no recall was located and these tags remain
|
|
274
|
+
current registrations. The reported ALL-NUMERIC REMAKES on this base are
|
|
275
|
+
worth a verifier's attention — a remake is a replacement plate carrying
|
|
276
|
+
the same registration, and if the District issued them in a different
|
|
277
|
+
grammar then the same registration can exist in two shapes, which no
|
|
278
|
+
format model in this dataset currently expresses.
|
|
279
|
+
|
|
280
|
+
# =========================================================================
|
|
281
|
+
# CORE DISTINCT CLASSES.
|
|
282
|
+
# =========================================================================
|
|
283
|
+
- id: us-dc-motorcycle
|
|
284
|
+
class: motorcycle
|
|
285
|
+
categories: [motorcycle]
|
|
286
|
+
period: { start: 2021 }
|
|
287
|
+
period_evidence: secondary-locator-unverified
|
|
288
|
+
format_evidence: secondary-locator-unverified
|
|
289
|
+
matching: recall-only
|
|
290
|
+
format:
|
|
291
|
+
pattern: "MY9999"
|
|
292
|
+
regex: '\A(?:M[TRCXY]\d{4}|\d{4}M|MC\d{3})\z'
|
|
293
|
+
charset:
|
|
294
|
+
notes: >-
|
|
295
|
+
THE DISTRICT STACKS ITS MOTORCYCLE SERIAL. The locator renders the
|
|
296
|
+
reported forms with superscripts and subscripts — M over T, R, C, X or
|
|
297
|
+
Y, followed by four numerals — which is the printed convention for a
|
|
298
|
+
STACKED CHARACTER PAIR. AAMVA is explicit that 'If stacked characters
|
|
299
|
+
are used, they are part of the official license plate number. No more
|
|
300
|
+
than two characters are to be stacked', so the stacked letter is
|
|
301
|
+
SERIAL and must not be dropped or merged. `matching: recall-only`
|
|
302
|
+
because three different reported shapes are unioned here (M+letter+4
|
|
303
|
+
digits, 4 digits + M, and MC + 3 digits) and none is dated well enough
|
|
304
|
+
to elect as current; a match is a shape hit only.
|
|
305
|
+
stacked_characters_note: >-
|
|
306
|
+
A RENDER AND NORMALISATION PROBLEM, NOT A FORMAT ONE. The dataset
|
|
307
|
+
records the stacked pair as two ordinary characters in sequence, which
|
|
308
|
+
is what AAMVA says they are. The RENDER layer must know they are set one
|
|
309
|
+
above the other, and a normaliser reading a photograph must emit them in
|
|
310
|
+
the right order. This is the first stacked serial in the dataset and it
|
|
311
|
+
should inform the render manifest before any US gallery ships.
|
|
312
|
+
design:
|
|
313
|
+
background: { finish: retroreflective }
|
|
314
|
+
legend_top: "WASHINGTON, DC"
|
|
315
|
+
legend_exclusion: "§ 50-1501.02(f-1) EXCLUDES motorcycles from the mandated 'End Taxation Without Representation' phrase by name — so a District motorcycle tag carries no political legend as a matter of law."
|
|
316
|
+
emblem: { present: true, rendered: placeholder }
|
|
317
|
+
dimension_note: "NO SOURCED DIMENSION."
|
|
318
|
+
region_encoding: none
|
|
319
|
+
sources:
|
|
320
|
+
- "https://code.dccouncil.gov/us/dc/council/code/sections/50-1501.02 # § 50-1501.02(f-1): motorcycles and autocycles are excluded from the mandated phrase"
|
|
321
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Washington,_D.C. # LOCATOR ONLY: motorcycle forms 1234M, MC123 and the stacked M-over-letter series (M/T, M/R, M/C, M/X, M/Y), current series from 2021"
|
|
322
|
+
- "https://www.aamva.org/getmedia/646bcc8a-219b-47d8-b5cd-726240473163/License-Plate-Standard-Edition-3_September-2025-Update.pdf # AAMVA: stacked characters are part of the official plate number, at most two stacked"
|
|
323
|
+
notes: >-
|
|
324
|
+
MOTORCYCLE — THE DATASET'S FIRST STACKED SERIAL. It is also the only
|
|
325
|
+
series in the mid-Atlantic group whose legend is governed by a statutory
|
|
326
|
+
EXCLUSION rather than a statutory mandate, which is a nice demonstration
|
|
327
|
+
that carve-outs are as load-bearing as rules: a classifier trained to
|
|
328
|
+
expect the District's slogan will fail on every DC motorcycle, taxi and
|
|
329
|
+
organization plate, all three excluded by name in § 50-1501.02(f-1).
|
|
330
|
+
|
|
331
|
+
- id: us-dc-trailer
|
|
332
|
+
class: trailer
|
|
333
|
+
categories: [trailer]
|
|
334
|
+
period: { start: 1974 }
|
|
335
|
+
period_evidence: secondary-locator-unverified
|
|
336
|
+
format_evidence: secondary-locator-unverified
|
|
337
|
+
matching: strict
|
|
338
|
+
format:
|
|
339
|
+
pattern: "T-99999"
|
|
340
|
+
regex: '\AT-?\d{3,5}\z'
|
|
341
|
+
charset: { notes: "reported literal T prefix on a numeric serial of variable width, the current sequence reported to have started in 1974 at T-101 and to be running still. A FIFTY-YEAR UNBROKEN SEQUENCE is the longest-running serial space in the mid-Atlantic group and rivals Delaware's." }
|
|
342
|
+
separator_note: >-
|
|
343
|
+
THE DISTRICT FLAG IS THE SEPARATOR ON THIS SERIES. The locator states it
|
|
344
|
+
in terms — the trailer plate uses the 'district flag' as the separator in
|
|
345
|
+
the serial. That is the THIRD graphic separator found in this group,
|
|
346
|
+
after New Jersey's state outline and Maryland's War of 1812 flag device,
|
|
347
|
+
and the pattern is now unmistakable: US jurisdictions routinely put a
|
|
348
|
+
DEVICE where European ones put a hyphen. The dataset spells an emitted
|
|
349
|
+
hyphen and carries the flag in `design.graphic`, per
|
|
350
|
+
`_meta/separators.yml`'s `never_separator_note`.
|
|
351
|
+
design:
|
|
352
|
+
background: { finish: retroreflective }
|
|
353
|
+
legend_top: "WASHINGTON, DC"
|
|
354
|
+
graphic: { present: true, rendered: placeholder, description: "DC flag device (three stars over two bars) printed in the serial gap as the separator" }
|
|
355
|
+
emblem: { present: true, rendered: placeholder }
|
|
356
|
+
display_note: "trailers get ONE tag, displayed on the rear (DC DMV)."
|
|
357
|
+
region_encoding: none
|
|
358
|
+
sources:
|
|
359
|
+
- "https://dmv.dc.gov/service/dmv-vehicle-tags # DC DMV: trailers among the one-tag, rear-display exceptions"
|
|
360
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Washington,_D.C. # LOCATOR ONLY: trailer T-12345 with district flag separator, sequence started 1974 at T-101"
|
|
361
|
+
notes: >-
|
|
362
|
+
TRAILER. The 1974 start is the earliest period start in the mid-Atlantic
|
|
363
|
+
group and it is locator-grade, so it is recorded with that grade rather
|
|
364
|
+
than rounded to the base year. The graphic separator is the interesting
|
|
365
|
+
structural fact and the reason this series carries its own separator_note.
|
|
366
|
+
|
|
367
|
+
- id: us-dc-dealer
|
|
368
|
+
class: dealer
|
|
369
|
+
categories: [car, van, truck, motorcycle, trailer]
|
|
370
|
+
period: { start: 2017 }
|
|
371
|
+
period_evidence: secondary-locator-unverified
|
|
372
|
+
format_evidence: secondary-locator-unverified
|
|
373
|
+
matching: recall-only
|
|
374
|
+
binding: business
|
|
375
|
+
format:
|
|
376
|
+
pattern: "DLL-9999"
|
|
377
|
+
regex: '\AD[A-Z]{2}-?\d{4,5}\z'
|
|
378
|
+
charset:
|
|
379
|
+
notes: >-
|
|
380
|
+
The reported serial is a literal DLR prefix on a four- or five-digit
|
|
381
|
+
numeric serial, the width varying by year. THE DATASET CANNOT SPELL IT
|
|
382
|
+
EXACTLY, AND THAT IS A SCHEMA FINDING — see `pattern_note`.
|
|
383
|
+
pattern_note: >-
|
|
384
|
+
THE HUMAN-PATTERN DSL CANNOT EXPRESS A LITERAL 'L'. `format.pattern`
|
|
385
|
+
reads 9 as any digit, L as any letter, and every other character as a
|
|
386
|
+
literal, with no escape mechanism — so 'DLR' is unspellable: the L is
|
|
387
|
+
eaten as a wildcard and the lint's round-trip generates DUR, DXR, DAR
|
|
388
|
+
and rejects the exact regex. The same hole exists for a literal '9'.
|
|
389
|
+
This series is therefore modelled `matching: recall-only` with the
|
|
390
|
+
middle character widened to any letter: the regex is DELIBERATELY WIDER
|
|
391
|
+
than the issuing grammar (which is DLR and nothing else), so a match is
|
|
392
|
+
a shape hit only, which is precisely what §2.7's recall-only tier means.
|
|
393
|
+
RECOMMENDED AMENDMENT: give the pattern DSL an escape (a backslash, or a
|
|
394
|
+
quoted-literal run) so that literal L and literal 9 can be spelled;
|
|
395
|
+
until then, any US jurisdiction with an L or a 9 in a fixed serial
|
|
396
|
+
position lands in recall-only for a notation reason rather than a
|
|
397
|
+
factual one, and that is the wrong reason to lose precision.
|
|
398
|
+
design:
|
|
399
|
+
background: { finish: retroreflective }
|
|
400
|
+
legend_top: "WASHINGTON, DC"
|
|
401
|
+
legend_bottom: "DEALER"
|
|
402
|
+
annual_redesign: >-
|
|
403
|
+
THE DISTRICT REDESIGNS ITS DEALER TAGS EVERY YEAR, with a unique colour
|
|
404
|
+
combination per year (locator). That is a genuinely unusual cadence — an
|
|
405
|
+
ANNUAL design cycle on one class while the standard base runs for years
|
|
406
|
+
— and it means the dealer tag's COLOUR is a date field. If confirmed
|
|
407
|
+
from a primary it would be the sharpest era-inference signal anywhere in
|
|
408
|
+
this group, because the plate literally encodes its year in its palette.
|
|
409
|
+
emblem: { present: true, rendered: placeholder }
|
|
410
|
+
region_encoding: none
|
|
411
|
+
sources:
|
|
412
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Washington,_D.C. # LOCATOR ONLY: dealer DLR-1234 / DLR-12345, annual designs with unique colour combinations"
|
|
413
|
+
notes: >-
|
|
414
|
+
DEALER. `binding: business`. The annual-colour claim is locator-grade and
|
|
415
|
+
is the highest-value thing in this entry to verify — a per-year colour
|
|
416
|
+
table would be a decode table in the §2.4 sense, keyed on colour rather
|
|
417
|
+
than on characters, which nothing in the schema currently anticipates.
|
|
418
|
+
|
|
419
|
+
- id: us-dc-taxi
|
|
420
|
+
class: taxi
|
|
421
|
+
categories: [car, van]
|
|
422
|
+
period: { start: 2017 }
|
|
423
|
+
period_evidence: statutory-authority-undated
|
|
424
|
+
format_evidence: secondary-locator-unverified
|
|
425
|
+
matching: strict
|
|
426
|
+
format:
|
|
427
|
+
pattern: "H-99999"
|
|
428
|
+
regex: '\AH-?\d{5}\z'
|
|
429
|
+
charset: { notes: "reported literal H prefix on a five-digit numeric serial for for-hire vehicles." }
|
|
430
|
+
design:
|
|
431
|
+
background: { finish: retroreflective }
|
|
432
|
+
legend_top: "WASHINGTON, DC"
|
|
433
|
+
legend_exclusion: "§ 50-1501.02(f-1) excludes 'identification tags for vehicles for-hire' from the mandated 'End Taxation Without Representation' phrase by name — the statutory basis for the for-hire class being visually distinct."
|
|
434
|
+
emblem: { present: true, rendered: placeholder }
|
|
435
|
+
region_encoding: none
|
|
436
|
+
sources:
|
|
437
|
+
- "https://code.dccouncil.gov/us/dc/council/code/sections/50-1501.02 # § 50-1501.02(f-1): for-hire vehicles excluded from the mandated phrase"
|
|
438
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Washington,_D.C. # LOCATOR ONLY: taxi H-12345"
|
|
439
|
+
notes: >-
|
|
440
|
+
TAXI (FOR-HIRE). The only `taxi`-class series in the mid-Atlantic group,
|
|
441
|
+
and it exists as a distinct class BECAUSE THE STATUTE CARVES IT OUT: DC
|
|
442
|
+
legislates that for-hire tags do not carry the political legend, which
|
|
443
|
+
necessarily makes them a different design and therefore a different series
|
|
444
|
+
under §2.3. A carve-out creating a class is a pattern worth watching for
|
|
445
|
+
in other jurisdictions.
|
|
446
|
+
|
|
447
|
+
- id: us-dc-government
|
|
448
|
+
class: government
|
|
449
|
+
categories: [car, van, truck, bus]
|
|
450
|
+
period: { start: 2017 }
|
|
451
|
+
period_evidence: secondary-locator-unverified
|
|
452
|
+
format_evidence: secondary-locator-unverified
|
|
453
|
+
matching: strict
|
|
454
|
+
binding: business
|
|
455
|
+
format:
|
|
456
|
+
pattern: "99999"
|
|
457
|
+
regex: '\A\d{5}\z'
|
|
458
|
+
charset:
|
|
459
|
+
notes: >-
|
|
460
|
+
Five numerals. The locator writes the District fleet format as
|
|
461
|
+
'D/C 12345', where D/C is a legend printed beside the number rather
|
|
462
|
+
than a serial token — the same shape as Maryland's S/G and L/G markers.
|
|
463
|
+
THE DATASET CANNOT SPELL THE SOLIDUS: '/' is in
|
|
464
|
+
`_meta/separators.yml`'s FORGIVING set but not its EMITTED set, so a
|
|
465
|
+
literal '/' in a pattern or regex is a lint failure by design, and the
|
|
466
|
+
marker is carried as a legend where it belongs. A parallel GT-1234
|
|
467
|
+
form is also reported and is not covered by this regex; it is recorded
|
|
468
|
+
rather than folded in.
|
|
469
|
+
design:
|
|
470
|
+
background: { finish: retroreflective }
|
|
471
|
+
legend_top: "WASHINGTON, DC"
|
|
472
|
+
legend_bottom: "D/C"
|
|
473
|
+
emblem: { present: true, rendered: placeholder }
|
|
474
|
+
region_encoding: none
|
|
475
|
+
sources:
|
|
476
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Washington,_D.C. # LOCATOR ONLY: 'D/C 12345' District government fleet, and a parallel GT-1234 form"
|
|
477
|
+
notes: >-
|
|
478
|
+
DISTRICT GOVERNMENT FLEET. Locator-grade throughout. The second
|
|
479
|
+
independent appearance of a slash-marker legend in this group (after
|
|
480
|
+
Maryland's S/G and L/G) is quietly useful evidence that the separator
|
|
481
|
+
contract's exclusion of the solidus is right: three jurisdictions print it,
|
|
482
|
+
none of them uses it inside a serial, and in every case it belongs to the
|
|
483
|
+
legend layer.
|
|
484
|
+
|
|
485
|
+
- id: us-dc-temporary
|
|
486
|
+
class: temporary
|
|
487
|
+
categories: [car, van, truck, bus, motorcycle, trailer]
|
|
488
|
+
period: { start: 2024 }
|
|
489
|
+
period_evidence: agency-page-in-force
|
|
490
|
+
format_evidence: secondary-locator-unverified
|
|
491
|
+
matching: recall-only
|
|
492
|
+
format:
|
|
493
|
+
pattern: "LLLLLLLL"
|
|
494
|
+
regex: '\A[A-Z0-9]{8}\z'
|
|
495
|
+
charset:
|
|
496
|
+
notes: >-
|
|
497
|
+
DC DMV states the MECHANISM but not the grammar: the tags carry
|
|
498
|
+
'laser-printed alphanumeric digits generated by the DESTINY motor
|
|
499
|
+
vehicle information system'. The locator reports the printed form as
|
|
500
|
+
an eight-character alphanumeric. `matching: recall-only` because an
|
|
501
|
+
eight-character alphanumeric catch-all is far wider than whatever
|
|
502
|
+
DESTINY actually emits — a match is a shape hit and nothing more.
|
|
503
|
+
Earlier reported forms (12345DA, X12345, Z12345, K12345, N12345)
|
|
504
|
+
belonged to the pre-2024 cardboard tags and are not modelled.
|
|
505
|
+
design:
|
|
506
|
+
background: { color: "#FFFFFF", finish: none, hex_basis: observed }
|
|
507
|
+
material: "DC DMV: 'weather resistant, fade proof and tear proof paper' with 'plate mounting holes set to vehicle industry standards' — an agency acknowledgement of the same unpinned physical standard AAMVA delegates to SAE J686"
|
|
508
|
+
legend_top: "Washington, DC"
|
|
509
|
+
graphic: { present: true, rendered: placeholder, description: "DC DMV: 'the DC flag in the upper left and right corner with a Washington, DC heading and the DMV logo in the lower right corner'" }
|
|
510
|
+
emblem: { present: true, rendered: placeholder }
|
|
511
|
+
validity: "45 days. DC DMV replaced the temporary registration WINDOW STICKER with a temporary registration CARD 'to be carried in the vehicle for 45 days'."
|
|
512
|
+
transition: "the redesign took effect 30 September 2024 and tags of the old design remained valid through 14 November 2024 — a stated six-week overlap window, the most precisely dated transition in the entire mid-Atlantic group."
|
|
513
|
+
region_encoding: none
|
|
514
|
+
sources:
|
|
515
|
+
- "https://dmv.dc.gov/release/dc-dmv-redesigns-temporary-tags-mitigate-fraud # DC DMV's own release: the 30 September 2024 changeover, the DESTINY-generated laser-printed alphanumeric, weather-resistant/fade-proof/tear-proof paper, industry-standard mounting holes, the DC flag corners and DMV logo, the 45-day temporary registration card, and the 14 November 2024 expiry of the old design"
|
|
516
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Washington,_D.C. # LOCATOR ONLY: the eight-character A1B2C3D4 printed form and the superseded cardboard forms"
|
|
517
|
+
notes: >-
|
|
518
|
+
TEMPORARY — THE BEST-DATED SERIES IN THE MID-ATLANTIC GROUP, AND THE ONLY
|
|
519
|
+
ONE WITH A PRIMARY FOR ITS OWN START DATE. DC DMV published the change
|
|
520
|
+
itself, with a reason (fraud mitigation), an effective date, a transition
|
|
521
|
+
window and a physical description. Every other period boundary in this
|
|
522
|
+
group is locator-grade; this one is agency-stated, which is why
|
|
523
|
+
`period_evidence` is `agency-page-in-force` and why 2024 is a real claim
|
|
524
|
+
rather than an upper bound. It is also a useful reminder that agency PRESS
|
|
525
|
+
RELEASES are systematically better sources for plate transitions than
|
|
526
|
+
agency service pages, and should be the first place a US pass looks.
|
|
527
|
+
|
|
528
|
+
# =========================================================================
|
|
529
|
+
# SPECIALTY — THE PROGRAM INDEX, per PRD-PLATES §2.5.
|
|
530
|
+
# =========================================================================
|
|
531
|
+
- id: us-dc-specialty-index
|
|
532
|
+
class: specialty
|
|
533
|
+
categories: [car, van, truck, motorcycle]
|
|
534
|
+
period: { start: 2017 }
|
|
535
|
+
period_evidence: agency-page-in-force
|
|
536
|
+
format_evidence: official-agency-text
|
|
537
|
+
matching: strict
|
|
538
|
+
format:
|
|
539
|
+
pattern: "LL-9999"
|
|
540
|
+
regex: '\A[A-Z]{2}-?\d{4}\z'
|
|
541
|
+
charset: { notes: "specialty tags carry ordinary serials on an alternative design. § 50-1501.02(f-1) excludes 'motor vehicles bearing organization plates' from the mandated phrase, so a District specialty tag is legally free of the political legend." }
|
|
542
|
+
design:
|
|
543
|
+
background: { finish: retroreflective }
|
|
544
|
+
note: "one design per approved programme; the designs themselves are L4 scope (PRD-PLATES §2.5) and none is described here"
|
|
545
|
+
emblem: { present: true, rendered: placeholder }
|
|
546
|
+
program_index:
|
|
547
|
+
count_official: 13
|
|
548
|
+
count_official_method: >-
|
|
549
|
+
ENUMERATED FROM DC DMV'S OWN SPECIALTY TAG PAGE on 2026-08-02. The agency
|
|
550
|
+
publishes the complete menu inline rather than a number, so this is OUR
|
|
551
|
+
COUNT OF THE AGENCY'S OWN LIST — not an agency claim. Two of the
|
|
552
|
+
thirteen are counted as single entries although they cover multiple
|
|
553
|
+
designs: 'Veterans Specialty' spans Army, Navy, Marines, Air Force and
|
|
554
|
+
Coast Guard, so a design-level count would be higher.
|
|
555
|
+
programmes_official:
|
|
556
|
+
- "Anacostia River Commemorative"
|
|
557
|
+
- "Breast Cancer Awareness"
|
|
558
|
+
- "DC Veteran"
|
|
559
|
+
- "DC Woman Veteran"
|
|
560
|
+
- "Disabled American Veteran (DAV)"
|
|
561
|
+
- "Pride Lives Here"
|
|
562
|
+
- "Washington Capitals"
|
|
563
|
+
- "Washington Mystics"
|
|
564
|
+
- "Washington Nationals"
|
|
565
|
+
- "Washington Wizards"
|
|
566
|
+
- "We Demand Statehood"
|
|
567
|
+
- "Veterans Specialty (Army, Navy, Marines, Air Force, Coast Guard)"
|
|
568
|
+
- "Vision Zero Bicycle Awareness"
|
|
569
|
+
scale_note: >-
|
|
570
|
+
THIRTEEN. That is the whole District programme, against Delaware's 149
|
|
571
|
+
and New York's 206, and it makes the District the smallest specialty
|
|
572
|
+
programme in the group by an order of magnitude. Two of the thirteen —
|
|
573
|
+
'We Demand Statehood' and 'Pride Lives Here' — are POLITICAL, which no
|
|
574
|
+
state programme in this group offers: a District whose standard plate is
|
|
575
|
+
already a political demand also runs statehood advocacy as an optional
|
|
576
|
+
design.
|
|
577
|
+
official_list_url: "https://dmv.dc.gov/service/specialty-vehicle-tags"
|
|
578
|
+
index_url: "https://dmv.dc.gov/service/dmv-vehicle-tags"
|
|
579
|
+
churn_note: "no discontinuation rule was located in Chapter 15; recorded gap."
|
|
580
|
+
region_encoding: none
|
|
581
|
+
sources:
|
|
582
|
+
- "https://dmv.dc.gov/service/specialty-vehicle-tags # DC DMV's complete specialty tag menu — the source of the enumeration above, including the newest 'We Demand Statehood' and 'Pride Lives Here' tags"
|
|
583
|
+
- "https://code.dccouncil.gov/us/dc/council/code/sections/50-1501.02 # § 50-1501.02(f-1): organization plates excluded from the mandated phrase"
|
|
584
|
+
notes: >-
|
|
585
|
+
THE SPECIALTY PROGRAM INDEX. The District is the small, complete,
|
|
586
|
+
enumerable case — thirteen programmes, all listed on one agency page,
|
|
587
|
+
countable in one read. Set against Delaware (149, enumerable), New York
|
|
588
|
+
(206, agency-counted), New Jersey (17 in one of five tracks, no total) and
|
|
589
|
+
Pennsylvania (unknown, unenumerable), the mid-Atlantic group now covers the
|
|
590
|
+
full range of how badly or well a US jurisdiction publishes its own
|
|
591
|
+
catalogue — which is itself the finding the specialty INDEX exists to
|
|
592
|
+
surface.
|
|
593
|
+
|
|
594
|
+
# ---------------------------------------------------------------------------
|
|
595
|
+
# CLASSES THE DISTRICT ISSUES THAT ARE DELIBERATELY NOT MODELLED AS SERIES.
|
|
596
|
+
# ---------------------------------------------------------------------------
|
|
597
|
+
unmodelled_classes:
|
|
598
|
+
personalized: "DC DMV offers personalised tags but its 'Tag Variations' page 404'd on two URL attempts in this pass, so no character cap, alphabet or fee was obtained. No series is minted without a format. RECORDED GAP."
|
|
599
|
+
diplomatic: "the District hosts essentially the entire US diplomatic corps, but DIPLOMATIC PLATES ARE ISSUED BY THE US DEPARTMENT OF STATE, NOT BY DC DMV — they are a FEDERAL series that happens to be concentrated in the District, and they belong in a us.yml federation-level file rather than here. Recorded so a later pass does not mistake their absence for an omission."
|
|
600
|
+
autocycle: "§ 50-1501.02(f-1) names AUTOCYCLES as a class excluded from the mandated legend — the only mention of autocycles in any statute read in this group. Whether the District serialises them apart was not established."
|
|
601
|
+
|
|
602
|
+
# ---------------------------------------------------------------------------
|
|
603
|
+
# GAPS.
|
|
604
|
+
# ---------------------------------------------------------------------------
|
|
605
|
+
gaps:
|
|
606
|
+
- "DCMR 18-422 ('Display of Identification Tags', effective 11 August 2017) TEXT NOT RETRIEVED — dcregs.dc.gov serves rule metadata and puts the text behind a per-notice viewer. The display rules here rest on DC DMV's own summary."
|
|
607
|
+
- "SEPARATOR UNRESOLVED ON THE STANDARD BASE: hyphen or DC flag device? The locator says the flag is used as a separator on at least one issue and demonstrably on the trailer series. One photograph settles it."
|
|
608
|
+
- "Base-design years (2017, 2013, 2018 alternate) and all serial ranges are locator-grade. Only the 2024 temporary tag has a primary for its own date."
|
|
609
|
+
- "NO SOURCED DIMENSION and NO SOURCED COLOUR VALUE — the DC Code delegates design wholesale to the Mayor."
|
|
610
|
+
- "Personalised tag rules unobtained (DC DMV 'Tag Variations' 404'd twice)."
|
|
611
|
+
- "The annual dealer-tag colour cycle is locator-grade and would be a colour-keyed decode table if confirmed."
|
|
612
|
+
- "The all-numeric 'remakes' reported on the 2013 base are unexplained — same registration in a second grammar is a case the schema does not model."
|
|
613
|
+
- "{{PD-DC}} on Commons contradicts the District's own CC BY 3.0 terms. Recorded as a folklore correction; a Copyright Office pinpoint either way would settle it."
|
|
614
|
+
- "SCHEMA LIMITATION SURFACED BY THIS FILE: the human-pattern DSL has no escape for a literal 'L' or a literal '9', so the District's DLR dealer prefix is unspellable and the series had to be widened to recall-only for a NOTATION reason. See us-dc-dealer format.pattern_note for the recommended amendment."
|