vehicles 0.9.0 → 0.9.2
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/CHANGELOG.md +57 -7
- data/README.md +353 -69
- data/data/PROVENANCE-vehicles.md +2 -2
- data/data/plates/PROVENANCE.md +2 -2
- data/data/plates/_decode/at-districts.yml +2 -2
- data/data/plates/_decode/cn-issuing-offices.yml +2 -2
- data/data/plates/_decode/cn-provinces.yml +2 -2
- data/data/plates/_decode/cz-kraj.yml +1 -1
- data/data/plates/_decode/dk-serial-blocks.yml +1 -1
- data/data/plates/_decode/es-provinces.yml +1 -1
- data/data/plates/_decode/fr-departements.yml +2 -2
- data/data/plates/_decode/gb-age-identifiers.yml +1 -1
- data/data/plates/_decode/gb-memory-tags.yml +1 -1
- data/data/plates/_decode/gr-prefectures.yml +1 -1
- data/data/plates/_decode/hr-cities.yml +3 -3
- data/data/plates/_decode/ie-counties.yml +3 -3
- data/data/plates/_decode/in-state-codes.yml +2 -2
- data/data/plates/_decode/it-provinces.yml +3 -3
- data/data/plates/_decode/jp-office-marks.yml +2 -2
- data/data/plates/_decode/jp-use-marks.yml +2 -2
- data/data/plates/_decode/kr-authority-marks.yml +1 -1
- data/data/plates/_decode/mx-entity-series.yml +1 -1
- data/data/plates/_decode/my-index-marks.yml +4 -4
- data/data/plates/_decode/pt-trailer-services.yml +1 -1
- data/data/plates/_decode/ro-counties.yml +1 -1
- data/data/plates/_decode/se-diplomatic.yml +1 -1
- data/data/plates/_decode/si-regions.yml +1 -1
- data/data/plates/_decode/ua-regions.yml +1 -1
- data/data/plates/_meta/classes.yml +1 -1
- data/data/plates/_meta/separators.yml +1 -1
- data/data/plates/ad.yml +555 -52
- data/data/plates/ar.yml +8 -8
- data/data/plates/at.yml +91 -10
- data/data/plates/au-act.yml +13 -13
- data/data/plates/au-nsw.yml +9 -9
- data/data/plates/au-nt.yml +13 -14
- data/data/plates/au-qld.yml +7 -7
- data/data/plates/au-sa.yml +7 -7
- data/data/plates/au-tas.yml +10 -10
- data/data/plates/au-vic.yml +6 -6
- data/data/plates/au-wa.yml +8 -8
- data/data/plates/be.yml +11 -11
- data/data/plates/br.yml +14 -14
- data/data/plates/ca-ab.yml +10 -10
- data/data/plates/ca-bc.yml +6 -6
- data/data/plates/ca-mb.yml +4 -4
- data/data/plates/ca-nb.yml +9 -9
- data/data/plates/ca-nl.yml +11 -11
- data/data/plates/ca-ns.yml +12 -12
- data/data/plates/ca-nt.yml +7 -7
- data/data/plates/ca-nu.yml +7 -7
- data/data/plates/ca-on.yml +21 -21
- data/data/plates/ca-pe.yml +13 -13
- data/data/plates/ca-qc.yml +11 -11
- data/data/plates/ca-sk.yml +6 -6
- data/data/plates/ca-yt.yml +6 -6
- data/data/plates/ch.yml +14 -14
- data/data/plates/cn.yml +9 -9
- data/data/plates/cy.yml +6 -6
- data/data/plates/cz.yml +9 -9
- data/data/plates/de.yml +8 -8
- data/data/plates/dk.yml +12 -12
- data/data/plates/ee.yml +13 -13
- data/data/plates/eg.yml +708 -0
- data/data/plates/es.yml +8 -8
- data/data/plates/fi.yml +14 -14
- data/data/plates/fr.yml +12 -12
- data/data/plates/gb.yml +16 -16
- data/data/plates/gr.yml +14 -14
- data/data/plates/hr.yml +15 -15
- data/data/plates/hu.yml +16 -16
- data/data/plates/ie.yml +7 -7
- data/data/plates/in.yml +7 -7
- data/data/plates/is.yml +3 -3
- data/data/plates/it.yml +21 -21
- data/data/plates/jp.yml +121 -121
- data/data/plates/kr.yml +6 -6
- data/data/plates/li.yml +6 -6
- data/data/plates/lt.yml +10 -10
- data/data/plates/lu.yml +4 -4
- data/data/plates/lv.yml +9 -9
- data/data/plates/mc.yml +4 -4
- data/data/plates/mt.yml +5 -5
- data/data/plates/mx.yml +7 -7
- data/data/plates/my.yml +18 -18
- data/data/plates/ng.yml +346 -0
- data/data/plates/nl.yml +5 -5
- data/data/plates/no.yml +7 -7
- data/data/plates/nz.yml +18 -18
- data/data/plates/pl.yml +4 -4
- data/data/plates/pt.yml +13 -5
- data/data/plates/ro.yml +14 -14
- data/data/plates/se.yml +13 -13
- data/data/plates/si.yml +8 -8
- data/data/plates/sk.yml +15 -15
- data/data/plates/sm.yml +7 -7
- data/data/plates/th.yml +10 -10
- data/data/plates/tr.yml +432 -0
- data/data/plates/ua.yml +9 -9
- data/data/plates/us-ak.yml +11 -11
- data/data/plates/us-al.yml +12 -12
- data/data/plates/us-ar.yml +15 -15
- data/data/plates/us-as.yml +10 -10
- data/data/plates/us-az.yml +10 -10
- data/data/plates/us-ca.yml +13 -13
- data/data/plates/us-co.yml +14 -14
- data/data/plates/us-ct.yml +24 -24
- data/data/plates/us-dc.yml +7 -7
- data/data/plates/us-de.yml +10 -10
- data/data/plates/us-fl.yml +17 -17
- data/data/plates/us-ga.yml +10 -10
- data/data/plates/us-gu.yml +11 -11
- data/data/plates/us-hi.yml +11 -11
- data/data/plates/us-ia.yml +9 -9
- data/data/plates/us-id.yml +13 -13
- data/data/plates/us-il.yml +11 -11
- data/data/plates/us-in.yml +9 -9
- data/data/plates/us-ks.yml +8 -8
- data/data/plates/us-ky.yml +11 -11
- data/data/plates/us-la.yml +11 -11
- data/data/plates/us-ma.yml +10 -10
- data/data/plates/us-md.yml +7 -7
- data/data/plates/us-me.yml +16 -16
- data/data/plates/us-mi.yml +8 -8
- data/data/plates/us-mn.yml +13 -13
- data/data/plates/us-mo.yml +13 -13
- data/data/plates/us-mp.yml +12 -12
- data/data/plates/us-ms.yml +8 -8
- data/data/plates/us-mt.yml +12 -12
- data/data/plates/us-nc.yml +12 -12
- data/data/plates/us-nd.yml +10 -10
- data/data/plates/us-ne.yml +10 -10
- data/data/plates/us-nh.yml +8 -8
- data/data/plates/us-nj.yml +8 -8
- data/data/plates/us-nm.yml +14 -14
- data/data/plates/us-nv.yml +18 -18
- data/data/plates/us-ny.yml +17 -17
- data/data/plates/us-oh.yml +13 -13
- data/data/plates/us-ok.yml +12 -12
- data/data/plates/us-or.yml +15 -15
- data/data/plates/us-pa.yml +14 -14
- data/data/plates/us-pr.yml +15 -15
- data/data/plates/us-ri.yml +10 -10
- data/data/plates/us-sc.yml +7 -7
- data/data/plates/us-sd.yml +12 -12
- data/data/plates/us-tn.yml +8 -8
- data/data/plates/us-tx.yml +17 -17
- data/data/plates/us-ut.yml +12 -12
- data/data/plates/us-va.yml +14 -14
- data/data/plates/us-vi.yml +16 -16
- data/data/plates/us-vt.yml +9 -9
- data/data/plates/us-wa.yml +18 -18
- data/data/plates/us-wi.yml +8 -8
- data/data/plates/us-wv.yml +9 -9
- data/data/plates/us-wy.yml +10 -10
- data/data/plates/va.yml +7 -7
- data/data/plates/za.yml +11 -11
- data/data/vehicles.json +121081 -62015
- data/lib/generators/vehicles/templates/initializer.rb +21 -12
- data/lib/generators/vehicles/templates/vehicles_refresh_job.rb +8 -4
- data/lib/vehicles/color.rb +8 -1
- data/lib/vehicles/colors.rb +14 -10
- data/lib/vehicles/configuration.rb +82 -3
- data/lib/vehicles/data_source.rb +220 -0
- data/lib/vehicles/dataset.rb +38 -6
- data/lib/vehicles/dataset_resolution.rb +39 -3
- data/lib/vehicles/dataset_slice.rb +90 -0
- data/lib/vehicles/hosted_result.rb +94 -0
- data/lib/vehicles/http.rb +75 -7
- data/lib/vehicles/id_lookup.rb +37 -0
- data/lib/vehicles/kind_rule.rb +63 -0
- data/lib/vehicles/labels.rb +131 -0
- data/lib/vehicles/make.rb +45 -19
- data/lib/vehicles/model.rb +66 -19
- data/lib/vehicles/model_match.rb +16 -2
- data/lib/vehicles/model_matcher.rb +6 -7
- data/lib/vehicles/plates/series.rb +87 -8
- data/lib/vehicles/plates/template_fill.rb +2 -2
- data/lib/vehicles/plates/templates.rb +9 -5
- data/lib/vehicles/plates.rb +54 -8
- data/lib/vehicles/providers/hosted_provider.rb +145 -32
- data/lib/vehicles/providers/local_provider.rb +2 -2
- data/lib/vehicles/refresh_result.rb +74 -0
- data/lib/vehicles/refresher.rb +190 -54
- data/lib/vehicles/release_checks.rb +72 -0
- data/lib/vehicles/text_matcher.rb +19 -10
- data/lib/vehicles/validators/vehicle_make_validator.rb +18 -1
- data/lib/vehicles/validators/vehicle_model_validator.rb +17 -1
- data/lib/vehicles/version.rb +1 -1
- data/lib/vehicles.rb +119 -67
- data/rakelib/data_refresh.rake +1 -1
- data/rakelib/plates_refresh.rake +1 -1
- data/sig/vehicles.rbs +67 -13
- metadata +13 -2
data/data/plates/us-wi.yml
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# plates/us-wi.yml — Wisconsin (
|
|
1
|
+
# plates/us-wi.yml — Wisconsin (the plates spec gate L2, group midwest-a).
|
|
2
2
|
#
|
|
3
3
|
# WISCONSIN IS THE STATE THAT LEGISLATES THE SHEETING. Wis. Stat. 341.12(4)(am)
|
|
4
4
|
# is the single most renderable, most citable piece of US plate law found in
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
# REPRODUCTION of the same edict; the canonical docs.legis.wisconsin.gov
|
|
34
34
|
# citation accompanies each source line and was NOT fetched.
|
|
35
35
|
#
|
|
36
|
-
# NOT HERE, DELIBERATELY: individual special-plate DESIGNS (L4 per
|
|
36
|
+
# NOT HERE, DELIBERATELY: individual special-plate DESIGNS (L4 per the plates spec
|
|
37
37
|
# §2.5); the personalized series and Wisconsin's 'official' state plate series,
|
|
38
38
|
# both outside the L2 core-class list — the statutory personalized position
|
|
39
39
|
# limits are recorded instead inside the standard series' charset notes, where
|
|
@@ -46,7 +46,7 @@ binding: vehicle
|
|
|
46
46
|
statute_edition: "Wisconsin Statutes Chapter 341 (Registration of Vehicles), as reproduced by codes.findlaw.com and read 2026-08-02. FindLaw warns its text 'may not reflect the most recent version of the law'; currency is UNVERIFIED. The 341.12(4)(am) text read here includes the July 2022 commencement, so the reproduction is at least that recent."
|
|
47
47
|
|
|
48
48
|
# ---------------------------------------------------------------------------
|
|
49
|
-
# artwork_risk — required per jurisdiction by
|
|
49
|
+
# artwork_risk — required per jurisdiction by the plates spec §4.
|
|
50
50
|
# ---------------------------------------------------------------------------
|
|
51
51
|
artwork_risk:
|
|
52
52
|
posture: unresearched-default-adverse
|
|
@@ -66,10 +66,10 @@ artwork_risk:
|
|
|
66
66
|
sheeting, 150 cd/lx/m², luminance factor above 55 — is an EDICT OF
|
|
67
67
|
GOVERNMENT and public domain at every level, as are the plate-content rules
|
|
68
68
|
of 341.12(3) and the display rules of 341.15. Wisconsin is the strongest
|
|
69
|
-
case in this group for
|
|
69
|
+
case in this group for the plates spec §4's preference for statutes over
|
|
70
70
|
brochures: the statute gives a renderable spec that no brochure would.
|
|
71
71
|
emblem_rule: >-
|
|
72
|
-
|
|
72
|
+
the plates spec §3's placeholder default applies to the state name treatment and
|
|
73
73
|
any graphic element on the base. Render
|
|
74
74
|
`emblem: {present: true, rendered: placeholder}`. State-seal protection is
|
|
75
75
|
independent of copyright and is unresearched for Wisconsin.
|
|
@@ -161,7 +161,7 @@ series:
|
|
|
161
161
|
regex.
|
|
162
162
|
separator_note: >-
|
|
163
163
|
The hyphen is PRINTED on the Wisconsin plate, so it is spelled in both
|
|
164
|
-
the pattern and the regex per
|
|
164
|
+
the pattern and the regex per the plates spec §2.6 rule 2. The regex accepts
|
|
165
165
|
either emitted separator or none — `[- ]?` — which is a sanctioned
|
|
166
166
|
separator-only class under §2.8: it contains only separator characters
|
|
167
167
|
and is not negated, so a consumer deriving the separator-free twin can
|
|
@@ -465,7 +465,7 @@ series:
|
|
|
465
465
|
charset: { notes: "special group plates carry ordinary serials on an alternative design; 341.145's position caps apply where the combination is owner-chosen (6 positions on certain veteran and conservation plates, 5 on electric-vehicle plates — the statute varies the cap BY PLATE TYPE, which is unusual and is itself a modelling signal)" }
|
|
466
466
|
design:
|
|
467
467
|
background: { finish: retroreflective }
|
|
468
|
-
note: "one design per special group; the designs themselves are L4 scope (
|
|
468
|
+
note: "one design per special group; the designs themselves are L4 scope (the plates spec §2.5) and none is described here"
|
|
469
469
|
emblem: { present: true, rendered: placeholder }
|
|
470
470
|
design_authority: "Wis. Stat. 341.14: 'the department shall specify the design for special group plates, but the department shall consult' the relevant officials and organisations before finalising a design — so a Wisconsin special plate's design is departmental with a statutory consultation duty, not organisational"
|
|
471
471
|
program_index:
|
|
@@ -500,7 +500,7 @@ series:
|
|
|
500
500
|
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Wisconsin # LOCATOR ONLY: the individual special plates are listed without an aggregate count"
|
|
501
501
|
notes: >-
|
|
502
502
|
THE WISCONSIN SPECIALTY PROGRAM INDEX — one entry for the whole programme per
|
|
503
|
-
|
|
503
|
+
the plates spec §2.5, count declared as a gap, statutory mechanism recorded in
|
|
504
504
|
full because it is the durable half. Two details are worth carrying: the
|
|
505
505
|
threshold is SIGNATURES OF INTENT rather than applications, which is a
|
|
506
506
|
weaker commitment than Illinois demands and predicts a larger, churnier
|
data/data/plates/us-wv.yml
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# plates/us-wv.yml — West Virginia (
|
|
1
|
+
# plates/us-wv.yml — West Virginia (the plates spec gate L2, group southeast-a).
|
|
2
2
|
#
|
|
3
3
|
# THE WEST VIRGINIA FINDING: WV Code §17A-3-14 WAS GUTTED, AND THE GUTTING IS
|
|
4
4
|
# THE STORY. The section's own heading still promises "Registration plates
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
# plate per vehicle, a registration number "in a configuration determined by
|
|
10
10
|
# the commissioner", reflectorized material, and legibility at 100 feet. A
|
|
11
11
|
# researcher reading only the heading would expect a colour table; the body
|
|
12
|
-
# has none. Recorded here because it is exactly the trap
|
|
12
|
+
# has none. Recorded here because it is exactly the trap the plates spec §5.3 warns
|
|
13
13
|
# about, and because it means every WEST VIRGINIA FORMAT AND COLOUR CLAIM IS
|
|
14
14
|
# NON-STATUTORY BY CONSTRUCTION.
|
|
15
15
|
#
|
|
@@ -29,7 +29,7 @@ binding: vehicle
|
|
|
29
29
|
statute_edition: "West Virginia Code, Chapter 17A (Motor Vehicle Administration, Registration, Certificate of Title, and Antitheft Provisions), Article 3 — as served by code.wvlegislature.gov and read 2026-08-01"
|
|
30
30
|
|
|
31
31
|
# ---------------------------------------------------------------------------
|
|
32
|
-
# artwork_risk — required per jurisdiction by
|
|
32
|
+
# artwork_risk — required per jurisdiction by the plates spec §4.
|
|
33
33
|
# ---------------------------------------------------------------------------
|
|
34
34
|
artwork_risk:
|
|
35
35
|
posture: unresearched
|
|
@@ -56,7 +56,7 @@ artwork_risk:
|
|
|
56
56
|
Virginia's state-seal misuse law, which would bind the STATE SEAL
|
|
57
57
|
independently of any copyright answer.
|
|
58
58
|
emblem_rule: >-
|
|
59
|
-
|
|
59
|
+
the plates spec §3's placeholder default applies with extra force here, because
|
|
60
60
|
the posture is unknown rather than merely adverse. The current base carries
|
|
61
61
|
a gold-on-dark-blue "West Virginia" bar and, on the 2023 design, a STATE
|
|
62
62
|
OUTLINE used as the serial separator — a state-shape graphic sitting
|
|
@@ -156,7 +156,7 @@ series:
|
|
|
156
156
|
cosmetic OCR problem in West Virginia, it is a semantic one — "O12
|
|
157
157
|
345A" expires in October and "012 345A" is not a valid plate at all.
|
|
158
158
|
progression: "not published; the series letter and the block allocation for this base were not obtained (recorded gap)"
|
|
159
|
-
separator_note: "the gap between the two three-character groups is spelled as an optional space because the plate prints a gap there; on this base the physical separator is reported to be a STATE-OUTLINE graphic rather than a printed glyph, which under
|
|
159
|
+
separator_note: "the gap between the two three-character groups is spelled as an optional space because the plate prints a gap there; on this base the physical separator is reported to be a STATE-OUTLINE graphic rather than a printed glyph, which under the plates spec §2.6 is a design element (design.emblem), never a serial character and never something a consumer may strip as punctuation"
|
|
160
160
|
design:
|
|
161
161
|
plate: { w: 12, h: 6, unit: in, dimension_evidence: convention-not-sourced }
|
|
162
162
|
plate_dimension_note: "no West Virginia dimension is sourced — §17A-3-14 states none. 12 x 6 in is the North American convention (AAMVA -> SAE J686, voluntary), recorded as convention and not as a West Virginia claim."
|
|
@@ -189,7 +189,7 @@ series:
|
|
|
189
189
|
sources:
|
|
190
190
|
- "https://code.wvlegislature.gov/17A-3-14/ # §17A-3-14(a): one plate, registration number 'consisting of a combination of letters, numerals, symbols, or characters in a configuration determined by the commissioner' — the statutory basis for there being no statutory format; (b)(1) reflectorized; (b)(2) 100-foot legibility"
|
|
191
191
|
- "https://transportation.wv.gov/DMV/Vehicle-Services/Pages/Classifications.aspx # WV DMV: Class A = passenger cars and trucks of 10,000 lb or less, the class this base serves"
|
|
192
|
-
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_West_Virginia # LOCATOR ONLY (
|
|
192
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_West_Virginia # LOCATOR ONLY (the plates spec §4): the July 2023 start, the state-outline separator, the gold-on-blue top bar, the serial arrangement, and the month-code system reported as continuing 'today'. None asserted as sourced."
|
|
193
193
|
notes: >-
|
|
194
194
|
WEST VIRGINIA CURRENT STANDARD ISSUE (CLASS A). Everything structural
|
|
195
195
|
here — one plate, commissioner-set configuration, reflectorization,
|
|
@@ -200,7 +200,7 @@ series:
|
|
|
200
200
|
because putting it somewhere prominent is what will get it verified. The
|
|
201
201
|
series id is dated 2023 to the reported base change; if that date falls,
|
|
202
202
|
the id keeps its append-only guarantee and gains a former-id alias under
|
|
203
|
-
the
|
|
203
|
+
the quality spec I-5/I-6 contract.
|
|
204
204
|
|
|
205
205
|
# =========================================================================
|
|
206
206
|
# ONE SERIES BACK.
|
|
@@ -220,7 +220,7 @@ series:
|
|
|
220
220
|
notes: >-
|
|
221
221
|
THREE ARRANGEMENTS, ONE BASE — and the regex is their union, which is
|
|
222
222
|
still `strict` because the union is exactly what West Virginia issued
|
|
223
|
-
on this base and no wider (
|
|
223
|
+
on this base and no wider (the plates spec §2.7: narrower or equal is
|
|
224
224
|
strict; only a DELIBERATELY over-broad regex is recall-only). The
|
|
225
225
|
three reported arrangements, after the leading month character: one
|
|
226
226
|
letter plus four digits; two letters plus three digits; one digit,
|
|
@@ -411,7 +411,7 @@ series:
|
|
|
411
411
|
design:
|
|
412
412
|
plate: { unit: in }
|
|
413
413
|
background: { finish: retroreflective }
|
|
414
|
-
note: "one design per authorised programme; the designs themselves are L4 scope (
|
|
414
|
+
note: "one design per authorised programme; the designs themselves are L4 scope (the plates spec §2.5) and none is described here"
|
|
415
415
|
emblem: { present: true, rendered: placeholder }
|
|
416
416
|
program_index:
|
|
417
417
|
count_official: null
|
data/data/plates/us-wy.yml
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# plates/us-wy.yml — Wyoming (
|
|
1
|
+
# plates/us-wy.yml — Wyoming (the plates spec gate L2, northwest group).
|
|
2
2
|
#
|
|
3
3
|
# WYOMING IS THE ONLY STATE IN THIS GROUP WHOSE PLATE ARTWORK IS A REGISTERED
|
|
4
4
|
# STATE TRADEMARK, AND THE STATUTE PUTS THAT ARTWORK INSIDE THE SERIAL LINE.
|
|
@@ -43,7 +43,7 @@ statute_edition: >-
|
|
|
43
43
|
text-extracted 2026-08-02.
|
|
44
44
|
|
|
45
45
|
# ---------------------------------------------------------------------------
|
|
46
|
-
# artwork_risk — required per jurisdiction by
|
|
46
|
+
# artwork_risk — required per jurisdiction by the plates spec §4/§7.1.
|
|
47
47
|
# ---------------------------------------------------------------------------
|
|
48
48
|
artwork_risk:
|
|
49
49
|
posture: asserted
|
|
@@ -62,16 +62,16 @@ artwork_risk:
|
|
|
62
62
|
appropriates funds specifically to enforce it. W.S. 31-2-204(b) then puts
|
|
63
63
|
that mark ON THE PLATE, between the county number and the serial, on every
|
|
64
64
|
standard issue. Separately, Wyoming appears NOWHERE in the standing
|
|
65
|
-
per-state COPYRIGHT survey
|
|
65
|
+
per-state COPYRIGHT survey the plates spec §4 works from and no {{PD-WYGov}}
|
|
66
66
|
tag exists on Wikimedia Commons, so the copyright posture is unresearched
|
|
67
67
|
and the default (state works copyrighted unless the state says otherwise)
|
|
68
68
|
applies. THE TRADEMARK POINT IS INDEPENDENT OF COPYRIGHT AND SURVIVES IT:
|
|
69
69
|
even a favourable copyright finding would not clear the Bucking Horse and
|
|
70
70
|
Rider, because trademark protection is a separate regime — exactly the
|
|
71
|
-
hazard
|
|
71
|
+
hazard the plates spec §4 flags for state seals, here documented rather than
|
|
72
72
|
assumed.
|
|
73
73
|
emblem_rule: >-
|
|
74
|
-
|
|
74
|
+
the plates spec §3's placeholder default applies with unusual force. The
|
|
75
75
|
Bucking Horse and Rider MUST render as a neutral placeholder — it is a
|
|
76
76
|
live, licensed, revenue-generating state trademark, and it is not a
|
|
77
77
|
candidate for an emblem-slot upgrade at any gate absent an affirmative
|
|
@@ -196,7 +196,7 @@ series:
|
|
|
196
196
|
a DESIGN ELEMENT carried in `design.emblem`; it is NOT a separator
|
|
197
197
|
character, it is NOT part of the serial, and no consumer may treat it
|
|
198
198
|
as either. The separator position is spelled as the separator-only
|
|
199
|
-
class `[- ]`, sanctioned by
|
|
199
|
+
class `[- ]`, sanctioned by the plates spec §2.8, because the statute names
|
|
200
200
|
no separator GLYPH at all — it names a picture. `pattern` shows the
|
|
201
201
|
canonical printed form as a space.
|
|
202
202
|
tier_note: >-
|
|
@@ -327,7 +327,7 @@ series:
|
|
|
327
327
|
BOUND. NO "ONE SERIES BACK" ENTRY IS GIVEN: with an annual cycle and no
|
|
328
328
|
legislated design generations there is no primary-sourced predecessor
|
|
329
329
|
base to record, and inventing one from a collector table would be
|
|
330
|
-
exactly the laundering
|
|
330
|
+
exactly the laundering the plates spec §9 warns against. Recorded as a gap.
|
|
331
331
|
Distinct from us-wy-antique in carrying the year numerals, which the
|
|
332
332
|
antique plate is statutorily forbidden to bear.
|
|
333
333
|
|
|
@@ -365,7 +365,7 @@ series:
|
|
|
365
365
|
- "https://www.wyoleg.gov/statutes/compress/title31.pdf # W.S. 31-2-204(b): the 'Pioneer Wyo' inscription and the no-date prohibition; W.S. 31-2-205(a)(i)(A)(VII): antique vehicles excluded from the front plate; W.S. 31-2-223: the antique registration section (cross-referenced, not read in full)"
|
|
366
366
|
notes: >-
|
|
367
367
|
ANTIQUE ("Pioneer Wyo"). Worth its own series on two independent
|
|
368
|
-
|
|
368
|
+
the plates spec §2.3 grounds: the LEGEND is legislated verbatim, and the
|
|
369
369
|
no-date rule is a statutory design prohibition the standard series
|
|
370
370
|
inverts. `recall-only` because only the legend and the date prohibition
|
|
371
371
|
are sourced — the serial grammar is not, and the regex is deliberately
|
|
@@ -417,7 +417,7 @@ series:
|
|
|
417
417
|
Wyoming vehicles.
|
|
418
418
|
|
|
419
419
|
# =========================================================================
|
|
420
|
-
# SPECIALTY — THE PROGRAM INDEX, per
|
|
420
|
+
# SPECIALTY — THE PROGRAM INDEX, per the plates spec §2.5.
|
|
421
421
|
# =========================================================================
|
|
422
422
|
- id: us-wy-specialty-index
|
|
423
423
|
class: specialty
|
|
@@ -480,7 +480,7 @@ series:
|
|
|
480
480
|
- "https://www.wyoleg.gov/statutes/compress/title31.pdf # the disabled-plate serial specification (county numerals, emblem, up to three numbers and letters, international symbol of access) and the 3 x 6 inch small-plate minimum; W.S. 31-3-102(a)(xxii)-(xxiv): the optional-embossed fee and the EV/PHEV decals bearing the emblem; W.S. 31-2-226/31-2-227: street rod and custom vehicle classes"
|
|
481
481
|
notes: >-
|
|
482
482
|
THE WYOMING SPECIALTY INDEX — one entry standing for the whole
|
|
483
|
-
programme, per
|
|
483
|
+
programme, per the plates spec §2.5. Wyoming's catalogue is SMALL (23 named
|
|
484
484
|
programmes against Washington's 49 statutory entries and Idaho's
|
|
485
485
|
"over 40"), ENUMERATED rather than counted, and split by issuing route
|
|
486
486
|
in a way that matters operationally: nineteen go through the county
|
data/data/plates/va.yml
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# plates/va.yml — Vatican City State (
|
|
1
|
+
# plates/va.yml — Vatican City State (the plates spec gate L1, microstates group).
|
|
2
2
|
# DRAFT for verification. Fetched 2026-08-02.
|
|
3
3
|
#
|
|
4
4
|
# ---------------------------------------------------------------------------
|
|
@@ -162,7 +162,7 @@ common:
|
|
|
162
162
|
DATASET LIMITATION, stated because it affects two series. The pre-1988
|
|
163
163
|
plates printed the sigla WITH DOTS — "S.C.V." — and U+002E FULL STOP is
|
|
164
164
|
in _meta/separators.yml's FORGIVING set but NOT its EMITTED set, so
|
|
165
|
-
|
|
165
|
+
the plates spec §2.6 forbids writing it. The patterns below therefore spell
|
|
166
166
|
"SCV" undotted, exactly as ch.yml spells the Swiss mid-height point as a
|
|
167
167
|
space. A §2.6-conformant consumer strips the dots from a real "S.C.V. 84"
|
|
168
168
|
and reaches "SCV84", which the separator-free twin of these regexes
|
|
@@ -172,7 +172,7 @@ common:
|
|
|
172
172
|
status: UNRESOLVED
|
|
173
173
|
rule: >-
|
|
174
174
|
THREE SOURCES GIVE THREE DIFFERENT ANSWERS FOR THE MODERN REAR CAR PLATE
|
|
175
|
-
AND THEY ARE NOT RECONCILABLE.
|
|
175
|
+
AND THEY ARE NOT RECONCILABLE. The plates spec §5.3 says record the
|
|
176
176
|
disagreement and never average it, so no `design.plate` block in this
|
|
177
177
|
file carries a width and height. The claims, each attributed:
|
|
178
178
|
(a) 520 x 110 mm — en.wikipedia's infobox. This is exactly the EU
|
|
@@ -218,7 +218,7 @@ common:
|
|
|
218
218
|
rendered: placeholder
|
|
219
219
|
rule: >-
|
|
220
220
|
The papal arms (crossed keys and tiara) appear on the seal and on papal
|
|
221
|
-
plates.
|
|
221
|
+
plates. The plates spec §3's placeholder rule applies and there is no
|
|
222
222
|
affirmatively-clean licence route: the Holy See asserts control over its
|
|
223
223
|
insignia, and no permissive licence was located. Placeholder everywhere.
|
|
224
224
|
not_modelled:
|
|
@@ -374,7 +374,7 @@ series:
|
|
|
374
374
|
STATE two-wheelers and tractors. Square 177 x 177 mm, four digits. The
|
|
375
375
|
February 2009 redesign (border plus a horizontal dividing rule) is a
|
|
376
376
|
DESIGN change within one series rather than a new series: the format and
|
|
377
|
-
the eligibility are unchanged, so under
|
|
377
|
+
the eligibility are unchanged, so under the plates spec §2.3 it is a sub-entry
|
|
378
378
|
and it is recorded in `design.layout` rather than split out. A verifier
|
|
379
379
|
who pins an instrument for 2009 should reconsider that call.
|
|
380
380
|
sources:
|
|
@@ -508,7 +508,7 @@ series:
|
|
|
508
508
|
into va-scv-1988: the class boundary moved under it. Modelled as ONE
|
|
509
509
|
series across 1930-1988 rather than split into the generations the
|
|
510
510
|
sources describe, because those generation boundaries are exactly the
|
|
511
|
-
folklore-prone era boundaries
|
|
511
|
+
folklore-prone era boundaries the plates spec §9 warns about and no two
|
|
512
512
|
sources agree on them.
|
|
513
513
|
sources:
|
|
514
514
|
- "https://it.wikipedia.org/wiki/Targhe_d%27immatricolazione_della_Citt%C3%A0_del_Vaticano # SECONDARY: first plates 1930, 'S.C.V.' with dots and a growing number, two-line rear plates, the early-1980s single-line change"
|
|
@@ -551,7 +551,7 @@ series:
|
|
|
551
551
|
to Art. 10 of a "Regolamento per la circolazione degli autoveicoli" of
|
|
552
552
|
1930 — A NAMED INSTRUMENT THAT WAS NOT REACHED, in this pass or by any
|
|
553
553
|
route tried, and which is therefore never cited below as if it had been
|
|
554
|
-
read. RECORDED DISAGREEMENT, per
|
|
554
|
+
read. RECORDED DISAGREEMENT, per the plates spec §5.3: it.wikipedia has red
|
|
555
555
|
lettering as a CARDINALS-AND-DIGNITARIES entitlement ended in 1998, while
|
|
556
556
|
targheitaliane.it describes red plates numbered SCV 1-100 serving "the
|
|
557
557
|
Pope and Cardinals" without an end date. The two accounts cannot both be
|
data/data/plates/za.yml
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# plates/za.yml — South Africa (
|
|
1
|
+
# plates/za.yml — South Africa (the plates spec gate L3).
|
|
2
2
|
#
|
|
3
3
|
# EVERY grammar claim in this file comes from ONE regulation — regulation 27
|
|
4
4
|
# of the National Road Traffic Regulations, 2000 (GNR.225 of 17 March 2000),
|
|
@@ -85,11 +85,11 @@
|
|
|
85
85
|
# `format.regex` is the LINT-ROUND-TRIPPABLE regex; `format.regex_strict`
|
|
86
86
|
# carries the reg 27(2)(a)(ii) proviso alphabet, which `regex` cannot.
|
|
87
87
|
#
|
|
88
|
-
# SEPARATOR NOTE (
|
|
88
|
+
# SEPARATOR NOTE (the plates spec § 2.6): a South African plate prints NO separator
|
|
89
89
|
# glyph between the serial groups. Reg 35(3) prescribes the ARRANGEMENT of the
|
|
90
90
|
# groups ("with all the letters and figures in one line", or the two-line
|
|
91
91
|
# forms) and never a separator character; the millimetre spacing lives in
|
|
92
|
-
# SANS/SABS 1116, a paywalled SABS publication which
|
|
92
|
+
# SANS/SABS 1116, a paywalled SABS publication which the plates spec § 6 lets us
|
|
93
93
|
# build to and forbids us to reproduce. The space in every `pattern` here is
|
|
94
94
|
# the conventional textual rendering of that gap, and every regex accepts it
|
|
95
95
|
# as optional. The hyphen widely printed in the Western Cape ("CA 123-456") is
|
|
@@ -175,7 +175,7 @@ instrument:
|
|
|
175
175
|
("This gazette is also available free online at www.gpwonline.co.za")
|
|
176
176
|
accompanies the Government Gazette text quoted here. SANS/SABS 1116 is a
|
|
177
177
|
COPYRIGHTED SABS publication and is cited, never reproduced
|
|
178
|
-
(
|
|
178
|
+
(the plates spec § 6).
|
|
179
179
|
|
|
180
180
|
# ---------------------------------------------------------------------------
|
|
181
181
|
# Jurisdiction-wide facts, cited once and referenced per series.
|
|
@@ -217,7 +217,7 @@ common:
|
|
|
217
217
|
by GNR.404 of 4 May 2007.
|
|
218
218
|
hex_basis_note: >-
|
|
219
219
|
The Regulations NAME the colours and never number them; the chromaticity
|
|
220
|
-
lives in SANS/SABS 1116, which
|
|
220
|
+
lives in SANS/SABS 1116, which the plates spec § 6 forbids reproducing. Every
|
|
221
221
|
hex in this file is therefore `hex_basis: observed` inside a
|
|
222
222
|
statutorily named colour — the same posture plates/gb.yml takes for BS
|
|
223
223
|
AU 145e and plates/de.yml for "grünes Kennzeichen".
|
|
@@ -232,7 +232,7 @@ common:
|
|
|
232
232
|
Free State separately recognises a 305 x 165 mm plate for seven-character
|
|
233
233
|
personalised numbers (Provincial Notice 278 of 2006) — a size the
|
|
234
234
|
national regulation does not list, and the discrepancy is recorded, not
|
|
235
|
-
averaged (
|
|
235
|
+
averaged (the plates spec § 5.3).
|
|
236
236
|
character_height: >-
|
|
237
237
|
Reg 35(4): 75 mm is the norm and 60 mm characters may be approved by the
|
|
238
238
|
MEC for a rear illuminated space too small for 75 mm. The Free State
|
|
@@ -261,7 +261,7 @@ common:
|
|
|
261
261
|
Vehicles', Part 2: 'Registration plates (metal)' or Part 4: 'Registration
|
|
262
262
|
plates (plastic)'." Reg 50(1) binds registered manufacturers of number
|
|
263
263
|
plates to the same two parts.
|
|
264
|
-
posture: "cited, never reproduced — SABS 1116 is a paywalled SABS publication (
|
|
264
|
+
posture: "cited, never reproduced — SABS 1116 is a paywalled SABS publication (the plates spec § 6)"
|
|
265
265
|
source: "https://disasterlaw.ifrc.org/sites/default/files/media/disaster_law/2021-06/%20ROAD%20TRAFFIC%20REGULATIONS,%202000.pdf # reg 35(1), reg 35(6)(i), reg 50(1)(a)"
|
|
266
266
|
font:
|
|
267
267
|
name: "FE-Schrift, modified (\"FE modified\"), 75 mm — 60 mm on the 305 x 165 mm Free State personalised plate"
|
|
@@ -289,7 +289,7 @@ series:
|
|
|
289
289
|
# "a combination of three letters and three figures in any sequence ...
|
|
290
290
|
# and the licence mark of the province concerned".
|
|
291
291
|
# One series per province, because the provincial mark is a LITERAL and
|
|
292
|
-
# a series is one format (
|
|
292
|
+
# a series is one format (the plates spec § 2.2).
|
|
293
293
|
# =========================================================================
|
|
294
294
|
|
|
295
295
|
- id: za-gp-standard-3l3f
|
|
@@ -405,7 +405,7 @@ series:
|
|
|
405
405
|
adds a covert element: the retro-reflective sheeting carries the
|
|
406
406
|
manufacturer's identifier and "the Province by way of the letters
|
|
407
407
|
'FS' inside a 12 mm circle interspersed throughout the sheeting".
|
|
408
|
-
|
|
408
|
+
The plates spec § 3 placeholder rule applies to the cheetah landscape.
|
|
409
409
|
rear_differs: false
|
|
410
410
|
region_encoding: "plates/_decode/za-licence-marks.yml"
|
|
411
411
|
sources:
|
|
@@ -972,7 +972,7 @@ series:
|
|
|
972
972
|
statutory twin is unbounded and `regex` is deliberately narrower at
|
|
973
973
|
six characters, which is the longest serial any South African
|
|
974
974
|
provincial system issues. Narrower than the statute is still
|
|
975
|
-
`strict` (
|
|
975
|
+
`strict` (the plates spec § 2.7); the outer legal bound is in
|
|
976
976
|
`regex_statutory`, which is exactly what that field is for.
|
|
977
977
|
design:
|
|
978
978
|
plate: { w: 520, h: 113, unit: mm }
|
|
@@ -1006,7 +1006,7 @@ series:
|
|
|
1006
1006
|
categories: [car, van, truck, bus, motorcycle]
|
|
1007
1007
|
period: { start: 2000 }
|
|
1008
1008
|
period_evidence: instrument-in-force
|
|
1009
|
-
# RECALL-ONLY (
|
|
1009
|
+
# RECALL-ONLY (the plates spec § 2.7): reg 27(5)(d) delegates the ENTIRE
|
|
1010
1010
|
# grammar to the Director-General of Foreign Affairs and fixes exactly one
|
|
1011
1011
|
# thing about it — that the number "shall end in the letter 'D'". No
|
|
1012
1012
|
# DIRCO determination was located, so the regex below is a shape net built
|