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/hr.yml
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# plates/hr.yml — Croatia (
|
|
1
|
+
# plates/hr.yml — Croatia (the plates spec gate L1, wave 2).
|
|
2
2
|
#
|
|
3
3
|
# EVERY format, colour and class claim in this file is read from Narodne novine
|
|
4
4
|
# — the Croatian official gazette — in the instruments' own published text, on
|
|
@@ -64,7 +64,7 @@
|
|
|
64
64
|
# ČK, KŽ, PŽ, ŠI, VŽ and ŽU carry a caron; the serial alphabet in
|
|
65
65
|
# plates/_meta/separators.yml is A-Z 0-9. Every `[A-Z]{2}` prefix below is
|
|
66
66
|
# therefore NARROWER than the issuing grammar for those six areas — still
|
|
67
|
-
# `matching: strict` per
|
|
67
|
+
# `matching: strict` per the plates spec §2.7 (narrower is strict), but a
|
|
68
68
|
# consumer matching a photographed plate must ASCII-fold first. The
|
|
69
69
|
# regulation knows the problem: čl. 22 st. 7 refuses a by-choice mark that
|
|
70
70
|
# could "doći do dupliranja prilikom transliteracije registarskih brojeva".
|
|
@@ -88,7 +88,7 @@
|
|
|
88
88
|
# 22/93, 19/96, 149/02), which NN 12/1993 čl. 34 expressly kept alive for a
|
|
89
89
|
# transitional period and which was not fetched.
|
|
90
90
|
# The registration-area position prints six codes with a caron (ČK KŽ PŽ ŠI
|
|
91
|
-
# VŽ ŽU). Declared here in exact codepoints per
|
|
91
|
+
# VŽ ŽU). Declared here in exact codepoints per the plates spec §2.6 so the regexes
|
|
92
92
|
# below can express the plate's REAL alphabet instead of an ASCII shadow of it.
|
|
93
93
|
# The SERIAL-suffix position does NOT carry diacritics — see regex_strict, which
|
|
94
94
|
# enumerates the Croatian alphabet without them — so only the AREA position is
|
|
@@ -188,7 +188,7 @@ common:
|
|
|
188
188
|
For the ORDINARY mark, čl. 18 prescribes no separator glyph at all — the
|
|
189
189
|
hyphen is visible only in Obrazac 3, a drawing. Every ordinary regex here
|
|
190
190
|
therefore spells that position as the separator-only class `[- ]`
|
|
191
|
-
(
|
|
191
|
+
(the plates spec §2.8, the es-consular precedent): the printed hyphen is
|
|
192
192
|
certain from the drawing, its statutory basis is not, and `pattern` shows
|
|
193
193
|
the canonical printed form.
|
|
194
194
|
arms_position: >-
|
|
@@ -203,7 +203,7 @@ common:
|
|
|
203
203
|
font: >-
|
|
204
204
|
NO TYPEFACE IS NAMED. As in the UK, Germany, Spain and Austria, the legal
|
|
205
205
|
object is a DRAWING — Obrazac 15 — and the render layer must derive glyphs
|
|
206
|
-
from it rather than from any third-party TTF (
|
|
206
|
+
from it rather than from any third-party TTF (the plates spec §6). Unlike the
|
|
207
207
|
Austrian KDV, Obrazac 15 publishes no per-glyph millimetres in a form this
|
|
208
208
|
pass could read (see structural fact 6). Recorded gap.
|
|
209
209
|
source: "https://narodne-novine.nn.hr/clanci/sluzbeni/2017_12_130_2993.html # čl. 19. Accessed 2026-08-02"
|
|
@@ -230,7 +230,7 @@ common:
|
|
|
230
230
|
artwork_note: >-
|
|
231
231
|
The Croatian coat of arms is a state symbol whose use is regulated
|
|
232
232
|
independently of copyright, and no assessment was made in this pass.
|
|
233
|
-
|
|
233
|
+
The plates spec §3 applies unchanged: `rendered: placeholder` on every series.
|
|
234
234
|
dimensions:
|
|
235
235
|
obrazac_3: { note: "single-line plate for motor vehicles, trailers, tractors and machines — čl. 18 st. 5. Dimensions NOT legible in the published raster; see structural fact 6" }
|
|
236
236
|
obrazac_4: { w: 280, h: 200, unit: mm, basis: read-from-drawing, note: "two-line plate for vehicles whose construction cannot take Obrazac 3 — čl. 18 st. 6. 280 and 200 are the two figures legible in the published drawing" }
|
|
@@ -244,7 +244,7 @@ common:
|
|
|
244
244
|
system in 1991, so authoring it in each national file would duplicate a
|
|
245
245
|
single historical layer in two places, give it two ids, and invite the two
|
|
246
246
|
copies to drift. It belongs in ONE historical jurisdiction file at gate L4
|
|
247
|
-
(
|
|
247
|
+
(the plates spec §7), not twice at L1. What IS recorded here is the hinge, from
|
|
248
248
|
the Croatian primary itself.
|
|
249
249
|
hinge: >-
|
|
250
250
|
NN 12/1993 čl. 34, verbatim: "Danom stupanja na snagu ovoga Pravilnika
|
|
@@ -325,7 +325,7 @@ series:
|
|
|
325
325
|
code holds the ŠAHOVNICA and is written as an optional emitted space.
|
|
326
326
|
The gap between digits and letters is a printed hyphen, certain from
|
|
327
327
|
Obrazac 3 but not spelled in čl. 18, so it is written as the
|
|
328
|
-
separator-only class `[- ]` per
|
|
328
|
+
separator-only class `[- ]` per the plates spec §2.8.
|
|
329
329
|
design:
|
|
330
330
|
plate: { w: 520, h: 110, unit: mm, basis: secondary-wikipedia, basis_note: "the pravilnik delegates dimensions to Obrazac 3, whose figures are illegible in the published 229x70 raster — see the file header, structural fact 6" }
|
|
331
331
|
plate_variants:
|
|
@@ -358,7 +358,7 @@ series:
|
|
|
358
358
|
plates carrying "unaprijed zadanim registarskim brojem vozila iz
|
|
359
359
|
članka 18. stavka 2. ovoga Pravilnika ako je zatraženi registarski
|
|
360
360
|
broj slobodan" — a CHOSEN serial inside the ordinary grammar, so a
|
|
361
|
-
sub-entry rather than a series (
|
|
361
|
+
sub-entry rather than a series (the plates spec §2.3). Format and design
|
|
362
362
|
are identical to the standard series. It is new in NN 130/2017: no
|
|
363
363
|
equivalent appears in NN 151/2008. Čl. 21 st. 2 supplies the file's
|
|
364
364
|
only direct statement about the ordinary alphabet.
|
|
@@ -373,7 +373,7 @@ series:
|
|
|
373
373
|
kojima je odobren privremeni ili stalni boravak i za privremeno
|
|
374
374
|
registrirana vozila, otisnute brojke i slova zelene su boje." A
|
|
375
375
|
COLOUR-ONLY variant of the same format and period, therefore a
|
|
376
|
-
sub-entry and not a series (
|
|
376
|
+
sub-entry and not a series (the plates spec §2.3). Note that the 2008 text
|
|
377
377
|
of the same rule also covered foreign trade, transport and cultural
|
|
378
378
|
representations and foreign correspondents; NN 130/2017 dropped that
|
|
379
379
|
clause.
|
|
@@ -494,7 +494,7 @@ series:
|
|
|
494
494
|
- "https://narodne-novine.nn.hr/files/_web/sluzbeni-dio/2017/130000/images/9521.jpg # Obrazac 5, the dimensioned drawing: 180 x 180 mm, three-line layout"
|
|
495
495
|
- "https://narodne-novine.nn.hr/clanci/sluzbeni/2016_05_45_1165.html # čl. 9 replaces Obrasci 5-12 and čl. 10 dates the change to 2016-07-04"
|
|
496
496
|
notes: >-
|
|
497
|
-
A SEPARATE SERIES ON DESIGN, NOT ON FORMAT (
|
|
497
|
+
A SEPARATE SERIES ON DESIGN, NOT ON FORMAT (the plates spec §2.3): the mark is
|
|
498
498
|
the čl. 18 st. 2 mark, but the plate is a 180 mm square whose layout puts
|
|
499
499
|
the digits and letters on separate lines, which a renderer must model and
|
|
500
500
|
a one-line pattern cannot express. NN 130/2017 čl. 59 defers the motorcycle
|
|
@@ -556,7 +556,7 @@ series:
|
|
|
556
556
|
Obrazac 8, or on the 7+8 combination, are three to SIX characters.
|
|
557
557
|
why_recall_only: >-
|
|
558
558
|
The regex above is deliberately wider than the issuing grammar and a
|
|
559
|
-
match is a shape hit only (
|
|
559
|
+
match is a shape hit only (the plates spec §2.7). It does not enforce the
|
|
560
560
|
"at least one letter if digits are chosen" rule, does not count the
|
|
561
561
|
hyphen against the seven-character budget, does not enforce the
|
|
562
562
|
three-character floor, and cannot express čl. 22 st. 7 at all — that
|
|
@@ -620,7 +620,7 @@ series:
|
|
|
620
620
|
notes: >-
|
|
621
621
|
PV IS A LITERAL, NOT A LETTER GROUP: the two characters are fixed, so this
|
|
622
622
|
series' regex is genuinely strict without a strict twin — the sourced
|
|
623
|
-
grammar IS the pattern (the
|
|
623
|
+
grammar IS the pattern (the plates spec §2.7 case where 29 of 31 L0 series
|
|
624
624
|
needed no twin). The oldtimer mark is protected from collision in two
|
|
625
625
|
directions: čl. 22 st. 7 refuses a by-choice mark that would coincide with
|
|
626
626
|
it, and čl. 22 st. 9 forbids choosing a mark for an oldtimer at all.
|
|
@@ -753,7 +753,7 @@ series:
|
|
|
753
753
|
mission, not a geographic area code — hr-cities.yml must not be consulted
|
|
754
754
|
for it. The country-code table itself is NOT published in the pravilnik
|
|
755
755
|
and was not obtained from any primary in this pass: it is a RECORDED GAP,
|
|
756
|
-
and
|
|
756
|
+
and the plates spec puts diplomatic decode tables at gate L4 in any case.
|
|
757
757
|
sources:
|
|
758
758
|
- "https://narodne-novine.nn.hr/clanci/sluzbeni/1993_02_12_185.html # NN 12/1993 čl. 19 — the blue/yellow plate with country number, activity letter and vehicle number, from the founding instrument"
|
|
759
759
|
- "https://narodne-novine.nn.hr/clanci/sluzbeni/2008_12_151_4118.html # NN 151/2008 čl. 16 — the A/C/M letter set stated in the modern wording, plus the CMD/CD/CC ellipse"
|
|
@@ -790,7 +790,7 @@ series:
|
|
|
790
790
|
Because there is nothing to be strict about. The regex is an admitted
|
|
791
791
|
catch-all: a match says only "this string has a shape a Croatian test
|
|
792
792
|
plate could have" and is emphatically not a validity claim
|
|
793
|
-
(
|
|
793
|
+
(the plates spec §2.7). Shipping a confident pattern here would be inventing
|
|
794
794
|
one; the gap is recorded instead.
|
|
795
795
|
design:
|
|
796
796
|
background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed, spec_note: "'bijele su boje' plus 'retro-reflektivnog bijelog laminata' (čl. 34 st. 3) — laminate, not the metal-and-foil construction of čl. 18" }
|
data/data/plates/hu.yml
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# plates/hu.yml — Hungary (
|
|
1
|
+
# plates/hu.yml — Hungary (the plates spec gate L1, wave 2).
|
|
2
2
|
#
|
|
3
3
|
# WHAT IS PRIMARY HERE AND WHAT IS NOT — read this before trusting any line.
|
|
4
4
|
#
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
# instrument's date is 2021 and the SERIES date is 2022-07-01, thirteen
|
|
33
33
|
# months later. This file records 2022, not 2021 — which is exactly the trap
|
|
34
34
|
# plates/es.yml fell into once (a 1999-2000 decree window shipped as the
|
|
35
|
-
# period for a format that ran three decades) and the reason
|
|
35
|
+
# period for a format that ran three decades) and the reason the plates spec §5.3
|
|
36
36
|
# puts era boundaries at the top of the audit. The thirteen-month gap is not
|
|
37
37
|
# incidental: it is the lead time the plate manufacturer and the county
|
|
38
38
|
# government offices were given.
|
|
@@ -73,7 +73,7 @@
|
|
|
73
73
|
# decide which Latin letters count as vowels for the purpose (is Y a vowel
|
|
74
74
|
# here? is I issued at all, given that I, O and Q are avoided elsewhere in
|
|
75
75
|
# the system?), and the source states the rule without stating the letter
|
|
76
|
-
# sets. Inventing them would be precisely the confident guess
|
|
76
|
+
# sets. Inventing them would be precisely the confident guess the plates spec
|
|
77
77
|
# forbids, so the rule is recorded verbatim in `format.charset` and NO
|
|
78
78
|
# `regex_strict` is shipped for the standard series. The gap is named in
|
|
79
79
|
# `verifier_targets`.
|
|
@@ -202,7 +202,7 @@ common:
|
|
|
202
202
|
it in the gap between the two letter pairs. If that placement is right,
|
|
203
203
|
Hungary joins Italy (the marchio ufficiale) and Austria (the Landeswappen)
|
|
204
204
|
in the class of jurisdictions whose printed "separator" is in fact an
|
|
205
|
-
EMBLEM occupying the gap — see
|
|
205
|
+
EMBLEM occupying the gap — see the plates spec §2.6 and the never_separator
|
|
206
206
|
note in _meta/separators.yml. The dataset accordingly writes that gap as
|
|
207
207
|
the emitted SPACE and carries the emblem in `design.emblem`; no glyph is
|
|
208
208
|
ever inside a Hungarian serial. THE PLACEMENT ITSELF IS SECONDARY and is a
|
|
@@ -210,7 +210,7 @@ common:
|
|
|
210
210
|
pattern is unaffected but `design.emblem.position` is wrong.
|
|
211
211
|
licensing: >-
|
|
212
212
|
The coat of arms of Hungary is a state symbol whose use is regulated
|
|
213
|
-
independently of copyright.
|
|
213
|
+
independently of copyright. The plates spec §3 placeholder rule applies:
|
|
214
214
|
renders carry `emblem: {present: true, rendered: placeholder}`.
|
|
215
215
|
source: "https://hu.wikipedia.org/wiki/Magyarorsz%C3%A1gi_forgalmi_rendsz%C3%A1mok # the coat of arms was added with the 2022 format. Accessed 2026-08-02"
|
|
216
216
|
personalisation:
|
|
@@ -219,14 +219,14 @@ common:
|
|
|
219
219
|
egyénileg kiválasztott és az egyedileg előállított rendszámtábla" — the
|
|
220
220
|
individually CHOSEN plate (a serial picked out of the ordinary grammar)
|
|
221
221
|
and the individually PRODUCED plate (a serial made to order). Two distinct
|
|
222
|
-
products, both inside the official frame, hence
|
|
222
|
+
products, both inside the official frame, hence the plates spec §2.3 sub-entry
|
|
223
223
|
treatment rather than a series of their own. The fee, the eligibility and
|
|
224
224
|
the grammar each product must obey are in the mellékletek and were not
|
|
225
225
|
retrieved.
|
|
226
226
|
source: "https://njt.jog.gov.hu/jogszabaly/2011-326-20-22 # §§ 58-59 headings and scope, Nemzeti Jogszabálytár, accessed 2026-08-02"
|
|
227
227
|
|
|
228
228
|
# ---------------------------------------------------------------------------
|
|
229
|
-
# Dead ends — recorded so the next pass does not repeat them (
|
|
229
|
+
# Dead ends — recorded so the next pass does not repeat them (the plates spec §5.3).
|
|
230
230
|
# ---------------------------------------------------------------------------
|
|
231
231
|
dead_ends:
|
|
232
232
|
- what: "The mellékletek (annexes) of 326/2011 — the plate-type table, colours, dimensions and the serial grammar."
|
|
@@ -282,7 +282,7 @@ series:
|
|
|
282
282
|
separator_note: >-
|
|
283
283
|
The gap between the two letter pairs is reported to be occupied by the
|
|
284
284
|
Hungarian coat of arms, not by a separator glyph; the hyphen before the
|
|
285
|
-
digits is printed. Both are written per
|
|
285
|
+
digits is printed. Both are written per the plates spec §2.6: the emblem gap
|
|
286
286
|
as an optional emitted SPACE, the printed hyphen as an optional emitted
|
|
287
287
|
HYPHEN-MINUS. `pattern` shows the canonical printed form.
|
|
288
288
|
progression: >-
|
|
@@ -309,7 +309,7 @@ series:
|
|
|
309
309
|
of 326/2011 create two distinct personalisation products: a plate whose
|
|
310
310
|
serial the applicant CHOOSES out of the ordinary grammar, and a plate
|
|
311
311
|
individually PRODUCED to order. A sub-entry rather than a series
|
|
312
|
-
(
|
|
312
|
+
(the plates spec §2.3) because neither is reported to change the format or
|
|
313
313
|
the design. Which of the two may depart from the ordinary grammar, and
|
|
314
314
|
how far, is in the mellékletek and is a recorded gap.
|
|
315
315
|
sources:
|
|
@@ -432,7 +432,7 @@ series:
|
|
|
432
432
|
ABC-123, and the change dropped the commercial/private colour inversion
|
|
433
433
|
that had been the visual signature of the previous system. This entry
|
|
434
434
|
exists as its own series rather than as a design note on hu-standard-2004
|
|
435
|
-
because the EU band is a design difference of exactly the kind
|
|
435
|
+
because the EU band is a design difference of exactly the kind the plates spec
|
|
436
436
|
§2.3 makes a series boundary — the same cut plates/it.yml makes at 1999.
|
|
437
437
|
|
|
438
438
|
# =========================================================================
|
|
@@ -483,7 +483,7 @@ series:
|
|
|
483
483
|
WHITE CHARACTERS ON BLACK. Same format, opposite colours, and the
|
|
484
484
|
inversion disappeared with the 1990 reform. Modelled here as a
|
|
485
485
|
documented colour inversion on one series rather than as two series,
|
|
486
|
-
because format and period are identical (
|
|
486
|
+
because format and period are identical (the plates spec §2.3).
|
|
487
487
|
inverse_background: "#000000"
|
|
488
488
|
inverse_foreground: "#FFFFFF"
|
|
489
489
|
evidence_tier: secondary-wikipedia
|
|
@@ -575,7 +575,7 @@ series:
|
|
|
575
575
|
carried an ordinary six-character serial drawn from a reserved range, on a
|
|
576
576
|
yellow ground — so the FORMAT is the standard one and only the block and
|
|
577
577
|
the colour distinguish it. It is a series rather than a sub-entry because
|
|
578
|
-
the design differs (
|
|
578
|
+
the design differs (the plates spec §2.3). Its dates are the system's, not its
|
|
579
579
|
own; see period_note.
|
|
580
580
|
|
|
581
581
|
# =========================================================================
|
|
@@ -642,7 +642,7 @@ series:
|
|
|
642
642
|
THE GREEN PLATE AFTER THE FORMAT CHANGE — the same environmental class on
|
|
643
643
|
the seven-character grammar. Modelled as its own series rather than as a
|
|
644
644
|
period extension because the FORMAT differs from hu-electric-2015, which is
|
|
645
|
-
the
|
|
645
|
+
the plates spec §2.3 boundary; the two are otherwise the same programme and
|
|
646
646
|
that continuity is the reason both carry the same class.
|
|
647
647
|
|
|
648
648
|
# =========================================================================
|
|
@@ -672,7 +672,7 @@ series:
|
|
|
672
672
|
rather than a geographic one, so it does not disturb this file's
|
|
673
673
|
no-decode-table finding. Two reported points: 001 is the Holy See and
|
|
674
674
|
020 the United States. The full mission-to-code mapping was NOT sourced
|
|
675
|
-
and is NOT authored here;
|
|
675
|
+
and is NOT authored here; the plates spec puts diplomatic decode tables at
|
|
676
676
|
gate L4, and plates/fi.yml made the same call for the Finnish table.
|
|
677
677
|
design:
|
|
678
678
|
plate: { w: 520, h: 110, unit: mm }
|
|
@@ -941,7 +941,7 @@ unmodelled_series:
|
|
|
941
941
|
source: "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Hungary # every row below. Accessed 2026-08-02"
|
|
942
942
|
reason_not_modelled: >-
|
|
943
943
|
Each lacks at least one of: a start date this file could defend, a format
|
|
944
|
-
whose grouping is known, or a colour.
|
|
944
|
+
whose grouping is known, or a colour. The plates spec §5.3 prefers the recorded
|
|
945
945
|
gap to the averaged guess, and a well-evidenced gap is a deliverable.
|
|
946
946
|
rows:
|
|
947
947
|
- { token: "H + letter + 4 digits", use: military, note: "the letter is reported to denote vehicle kind (A cars, B buses, N motorcycles, T trucks); a tricolour design is reported. Reported to have become HA under the 2022 system. No date at either end." }
|
|
@@ -956,4 +956,4 @@ unmodelled_series:
|
|
|
956
956
|
- { token: "M + 6 digits", use: agricultural, note: "green on white, three-year validity; replaced by the general I plate in July 2022. No start date sourced." }
|
|
957
957
|
- { token: "Y + 3 letters + 3 digits", use: "slow vehicles", note: "red on white; moved onto the normal series in July 2022. No start date sourced." }
|
|
958
958
|
- { token: "OT + 4 digits", use: "old-timer, pre-2022 form", note: "the predecessor of hu-historic-2022; no start date sourced, which is why only the post-2022 form is authored." }
|
|
959
|
-
- { token: "grey repeater plate", use: "bicycle-rack repeater", note: "reported from April 2017. A REPEATER plate has no class in _meta/classes.yml; adding one is a vocabulary PR (
|
|
959
|
+
- { token: "grey repeater plate", use: "bicycle-rack repeater", note: "reported from April 2017. A REPEATER plate has no class in _meta/classes.yml; adding one is a vocabulary PR (the plates spec §2.3), not a data-file decision." }
|
data/data/plates/ie.yml
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# plates/ie.yml — Ireland (
|
|
1
|
+
# plates/ie.yml — Ireland (the plates spec gate L1, wave 2).
|
|
2
2
|
#
|
|
3
3
|
# EVERY format, colour, dimension and period claim in this file is read off an
|
|
4
4
|
# instrument on irishstatutebook.ie, fetched 2026-08-02. Wikipedia was used as a
|
|
@@ -163,7 +163,7 @@ common:
|
|
|
163
163
|
millimetres which shall extend horizontally for a distance of not less than
|
|
164
164
|
13 millimetres and not more than 22 millimetres." So `ie-standard-1987`
|
|
165
165
|
spells a space and `ie-standard-1991`/`ie-standard-2013` spell a hyphen, and
|
|
166
|
-
both are the printed form the instrument itself prescribes (
|
|
166
|
+
both are the printed form the instrument itself prescribes (the plates spec §2.6
|
|
167
167
|
rule 2).
|
|
168
168
|
no_nought_rule: >-
|
|
169
169
|
First Schedule para. 3(b), verbatim: "The identification mark shall not
|
|
@@ -172,7 +172,7 @@ common:
|
|
|
172
172
|
the Irish no-leading-zero rule: the sequence number is printed as assigned,
|
|
173
173
|
never padded, so "121-D-7" is a whole registration and "121-D-0007" is not
|
|
174
174
|
one. It is carried in `regex_strict`, never in `regex`, because the
|
|
175
|
-
round-trip (
|
|
175
|
+
round-trip (the plates spec §2.7) forbids `regex` from carrying charset rules.
|
|
176
176
|
NOTE THE PERIOD: this paragraph is in Third Schedule Part III (1991) and the
|
|
177
177
|
First Schedule (1992 onward). Part II (1987-1990) has no equivalent, so
|
|
178
178
|
ie-standard-1987 makes no leading-zero claim.
|
|
@@ -318,7 +318,7 @@ series:
|
|
|
318
318
|
stripe: { side: right, color: "#009639", hex_basis: observed, color_spec: "Pantone 7481 C", w: 30, unit: mm, finish: retroreflective }
|
|
319
319
|
note: >-
|
|
320
320
|
THE GREEN FLASH, from 1 July 2025 (S.I. 268/2025 art. 2). A sub-entry
|
|
321
|
-
and not a series, on the
|
|
321
|
+
and not a series, on the plates spec §2.3 test: same format, same
|
|
322
322
|
period, same mark — only the design differs, and only optionally. New
|
|
323
323
|
Reg. 9(10): "an eligible vehicle MAY display a plate which contains a
|
|
324
324
|
stripe which is green in colour", where "eligible vehicle" is defined
|
|
@@ -478,7 +478,7 @@ series:
|
|
|
478
478
|
characters at least 81 mm tall, groups separated by a wide SPACE, and no
|
|
479
479
|
EU band, no black border and no Irish county name anywhere on it. It ran
|
|
480
480
|
for exactly four years. Cutting it as its own series rather than as the
|
|
481
|
-
early stretch of ie-standard-1991 is the
|
|
481
|
+
early stretch of ie-standard-1991 is the plates spec §2.3 test applied
|
|
482
482
|
literally: the design differs (no band, no placename, no border), the
|
|
483
483
|
printed format differs (space versus hyphen) and the period is closed by
|
|
484
484
|
an instrument — three of three. START DATE PRECISION: both halves of the
|
|
@@ -531,7 +531,7 @@ series:
|
|
|
531
531
|
only "that the index mark appears as a separate unit from the
|
|
532
532
|
registration number", and para. 8 sets the minimum gap at 38 mm on
|
|
533
533
|
one-line layouts. The regex spells the position as the separator-only
|
|
534
|
-
class `[- ]` (
|
|
534
|
+
class `[- ]` (the plates spec §2.8) because the instrument prescribes a
|
|
535
535
|
separation and no character to make it with.
|
|
536
536
|
design:
|
|
537
537
|
background: { color: "#000000", finish: painted, hex_basis: observed }
|
|
@@ -618,7 +618,7 @@ series:
|
|
|
618
618
|
digits in the pattern follow that example and the regex allows one to
|
|
619
619
|
six, claiming nothing.
|
|
620
620
|
separator_note: >-
|
|
621
|
-
Spelled as the separator-only class `[- ]` (
|
|
621
|
+
Spelled as the separator-only class `[- ]` (the plates spec §2.8) because the
|
|
622
622
|
instrument leaves the position genuinely open: First Schedule para. 16(d)
|
|
623
623
|
would prescribe a hyphen, but para. 23 expressly lets a ZV mark comply
|
|
624
624
|
instead with the OLD 1982 Part I spec, which prescribes a gap and no
|
data/data/plates/in.yml
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# plates/in.yml — India (
|
|
1
|
+
# plates/in.yml — India (the plates spec gate L3). DRAFT for human verification.
|
|
2
2
|
#
|
|
3
3
|
# EVERY format, colour, dimension and class claim in this file comes from one
|
|
4
4
|
# of five primaries, all fetched and quoted verbatim in the dossier:
|
|
@@ -102,7 +102,7 @@
|
|
|
102
102
|
# instrument imposes NO digit count and our regex invents a practical bound
|
|
103
103
|
# (the diplomatic series).
|
|
104
104
|
#
|
|
105
|
-
# SEPARATOR NOTE (
|
|
105
|
+
# SEPARATOR NOTE (the plates spec § 2.6): an Indian plate prints NO separator
|
|
106
106
|
# glyph. Rule 50(3) prescribes a two-LINE layout (state+district code above,
|
|
107
107
|
# the rest below) and rule 51 prescribes inter-character spacing in
|
|
108
108
|
# millimetres; the space in every `pattern` here is the conventional textual
|
|
@@ -388,7 +388,7 @@ series:
|
|
|
388
388
|
calls it "registering authority code" and rule 35(3) calls it "RTO Code".
|
|
389
389
|
Each State creates, merges and renumbers its own offices, and there are
|
|
390
390
|
well over a thousand of them, so this dimension is OPEN and is deliberately
|
|
391
|
-
NOT tabled here (
|
|
391
|
+
NOT tabled here (the plates spec § 2.4 mechanism-note rule). A decode may
|
|
392
392
|
return the State with confidence and the district only against a
|
|
393
393
|
State-published list of that State's own offices, dated. THIRD ELEMENT,
|
|
394
394
|
FLAGGED AS UNSOURCED: several States are widely reported to spend the
|
|
@@ -541,7 +541,7 @@ series:
|
|
|
541
541
|
photograph of an Indian truck-trailer combination will see the same
|
|
542
542
|
mark twice and a second, different mark once; it must not treat the
|
|
543
543
|
repetition as two vehicles. Colour-only variant of this series, hence
|
|
544
|
-
a sub-entry (
|
|
544
|
+
a sub-entry (the plates spec § 2.3). Rule 50(6) exempts agricultural
|
|
545
545
|
tractors: "The registration mark of the drawing agricultural tractor
|
|
546
546
|
may not be exhibited on the agricultural trailer or trailers", and
|
|
547
547
|
rule 50(7) does the same for a modular hydraulic trailer behind a
|
|
@@ -587,7 +587,7 @@ series:
|
|
|
587
587
|
colour on Green background" (rule 50(2A)) — the same green plate with
|
|
588
588
|
yellow characters instead of white. Colour-only variant of the same
|
|
589
589
|
format and period, hence a sub-entry rather than a series
|
|
590
|
-
(
|
|
590
|
+
(the plates spec § 2.3). This is the one place in Indian plate law where
|
|
591
591
|
the transport/non-transport split changes the FOREGROUND rather than
|
|
592
592
|
the background.
|
|
593
593
|
sources:
|
|
@@ -800,7 +800,7 @@ series:
|
|
|
800
800
|
Rule 35(3) says the letter "Represents serial number of class of
|
|
801
801
|
vehicle as prescribed in Rule 34(2) i.e. from A to J"; rule 34(2)
|
|
802
802
|
lists those classes as clauses (a) to (j), which is the closed
|
|
803
|
-
primary list inlined above (
|
|
803
|
+
primary list inlined above (the plates spec § 2.4 small-inline-table
|
|
804
804
|
rule). NOTE THE TRAP: this is the one Indian series in which the
|
|
805
805
|
letter I IS issued — it is E-cart — while BH and temporary marks
|
|
806
806
|
expressly exclude I. A parse API must not apply a blanket I/O
|
|
@@ -961,7 +961,7 @@ series:
|
|
|
961
961
|
not a place decode — and the MEA list was NOT reached in this pass, so
|
|
962
962
|
this dataset cannot turn "13 CD 1" into a country. That table is the
|
|
963
963
|
single most requested Indian plate decode after the state codes and is a
|
|
964
|
-
recorded gap for gate L4 (
|
|
964
|
+
recorded gap for gate L4 (the plates spec § 7 lists diplomatic decode tables
|
|
965
965
|
there).
|
|
966
966
|
sources:
|
|
967
967
|
- "https://web.archive.org/web/20211130113450id_/https://morth.nic.in/sites/default/files/CMVR-chapter3.pdf # rule 76(1)-(6) with footnote 96 dating the substitution of sub-rule (6) to G.S.R. 221(E) 28-3-2001; rule 77(1)(i) 'with deep blue background, the registration mark and the number being in white'; rule 77(1) plate size '41 centimetres by 14 centimetres'; rule 77(2)-(3); accessed 2026-08-02"
|
data/data/plates/is.yml
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# plates/is.yml — Iceland (
|
|
1
|
+
# plates/is.yml — Iceland (the plates spec gate L1, wave 2).
|
|
2
2
|
#
|
|
3
3
|
# THE 1989 CUTOVER IS THE WHOLE STORY, AND IT IS DATED — just not by the
|
|
4
4
|
# instrument that made it. Read this before trusting any period below.
|
|
@@ -152,7 +152,7 @@ common:
|
|
|
152
152
|
"rönd á brúnum, stafir og bandstrik" together in every colour rule, and
|
|
153
153
|
the two-row rule of 669/2008 places the bandstrik on the letter row. It is
|
|
154
154
|
therefore written as the emitted HYPHEN in every `pattern` below, per
|
|
155
|
-
|
|
155
|
+
the plates spec §2.6, and the regexes accept a hyphen or a space at that
|
|
156
156
|
position under the §2.8 separator-only class rule.
|
|
157
157
|
source: "https://www.reglugerd.is/reglugerdir/allar/nr/751-2003 # 18.-19. gr. Accessed 2026-08-02"
|
|
158
158
|
|
|
@@ -457,7 +457,7 @@ series:
|
|
|
457
457
|
ORANGE, for létt bifhjól í flokki I (the slowest class, up to 25 km/h),
|
|
458
458
|
added by reglugerð 1515/2020 of 14 December 2020 together with plate
|
|
459
459
|
type E. A colour-only variant of the same format and period, hence a
|
|
460
|
-
sub-entry per
|
|
460
|
+
sub-entry per the plates spec §2.3.
|
|
461
461
|
sources:
|
|
462
462
|
- "https://www.reglugerd.is/reglugerdir/allar/nr/1515-2020 # adds gerð E (168 x 133 mm) and the orange plate for létt bifhjól í flokki I. Accessed 2026-08-02"
|
|
463
463
|
sources:
|
data/data/plates/it.yml
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# plates/it.yml — Italy (
|
|
1
|
+
# plates/it.yml — Italy (the plates spec gate L1).
|
|
2
2
|
#
|
|
3
3
|
# EVERY format, colour, dimension and period claim in this file comes from the
|
|
4
4
|
# consolidated text of the REGOLAMENTO DI ESECUZIONE E DI ATTUAZIONE DEL NUOVO
|
|
@@ -12,10 +12,10 @@
|
|
|
12
12
|
#
|
|
13
13
|
# The L0 EU research dossier recorded Italy as its worst gap — "**No primary
|
|
14
14
|
# source secured.** Everything below is from Wikipedia and must be confirmed
|
|
15
|
-
# against the Codice della Strada and DPR 495/1992" (
|
|
15
|
+
# against the Codice della Strada and DPR 495/1992" (the EU research dossier
|
|
16
16
|
# §2.5 and DEAD-ENDS §8). This file closes that gap: every claim below is
|
|
17
17
|
# instrument-dated, and where the primaries and the enthusiast web disagree the
|
|
18
|
-
# disagreement is RECORDED rather than averaged (
|
|
18
|
+
# disagreement is RECORDED rather than averaged (the plates spec §5.3).
|
|
19
19
|
#
|
|
20
20
|
# THE SIX STRUCTURAL FACTS THAT SHAPE THIS FILE
|
|
21
21
|
#
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
# always names it BETWEEN two character groups, so the printed gaps on an
|
|
42
42
|
# Italian plate are occupied by an emblem, exactly as the German gap is
|
|
43
43
|
# occupied by the Plaketten (see plates/de.yml). The dataset writes those gaps
|
|
44
|
-
# as the emitted SPACE separator (
|
|
44
|
+
# as the emitted SPACE separator (the plates spec §2.6) and carries the emblem in
|
|
45
45
|
# `design.emblem`; no glyph is ever inside an Italian serial.
|
|
46
46
|
#
|
|
47
47
|
# 3. 1993, NOT 1994 — AND THE PRIMARY SAYS SO TWICE. Art. 260 comma 5 as
|
|
@@ -176,7 +176,7 @@ common:
|
|
|
176
176
|
licensing: >-
|
|
177
177
|
The emblem is the Stella d'Italia between olive and oak — an element of the
|
|
178
178
|
emblem of the Italian Republic, whose use is regulated independently of
|
|
179
|
-
copyright.
|
|
179
|
+
copyright. The plates spec §3 placeholder rule applies: renders carry
|
|
180
180
|
`emblem: {present: true, rendered: placeholder}` until a per-emblem
|
|
181
181
|
clearance exists.
|
|
182
182
|
source: "https://www.normattiva.it/uri-res/N2Ls?urn:nir:stato:decreto.del.presidente.della.repubblica:1992-12-16;495~art262 # art. 262 Marchio ufficiale, verbatim"
|
|
@@ -234,7 +234,7 @@ common:
|
|
|
234
234
|
licence: >-
|
|
235
235
|
Italy is the fourth surveyed country to prescribe the glyphs by STATUTORY
|
|
236
236
|
DRAWING rather than by named licensable font (after DE, ES and UK — EU
|
|
237
|
-
dossier §6).
|
|
237
|
+
dossier §6). The plates spec §6 therefore applies unchanged: the render layer
|
|
238
238
|
derives glyphs from the statutory figures, never from a third-party
|
|
239
239
|
"Italian plate font" TTF whose own licence is unstated. The figures
|
|
240
240
|
themselves were not text-extractable from Normattiva's export and are a
|
|
@@ -355,13 +355,13 @@ series:
|
|
|
355
355
|
The two printed gaps are occupied by the marchio ufficiale (Appendice XII
|
|
356
356
|
lett. a) names it between the first letter pair and the digits), not by a
|
|
357
357
|
separator glyph. Both regexes accept the gap as an optional emitted SPACE
|
|
358
|
-
per
|
|
358
|
+
per the plates spec §2.6.
|
|
359
359
|
reserved_combinations: >-
|
|
360
360
|
Art. 100 comma 8 of the codice lets the holder request "una specifica
|
|
361
361
|
combinazione alfanumerica" at cost, "ferma restando la sequenza
|
|
362
362
|
alfanumerica fissata dal regolamento" — a personalised SERIAL inside the
|
|
363
363
|
standard grammar, hence the `personalized` variant below rather than a
|
|
364
|
-
series of its own (
|
|
364
|
+
series of its own (the plates spec §2.3).
|
|
365
365
|
design:
|
|
366
366
|
plate: { w: 520, h: 110, unit: mm, note: "targa posteriore, formato A" }
|
|
367
367
|
plate_variants:
|
|
@@ -403,7 +403,7 @@ series:
|
|
|
403
403
|
the office checks the combination is unused, registers the vehicle, and
|
|
404
404
|
the Istituto Poligrafico delivers the plates within thirty days. Format
|
|
405
405
|
and design are identical to the standard series — a sub-entry, not a
|
|
406
|
-
series, per
|
|
406
|
+
series, per the plates spec §2.3. Italy has no vanity ALPHABET: the requested
|
|
407
407
|
combination must still obey Appendice XII.
|
|
408
408
|
sources:
|
|
409
409
|
- "https://www.normattiva.it/uri-res/N2Ls?urn:nir:stato:decreto.legislativo:1992-04-30;285!vig=~art100 # art. 100 c. 8, verbatim"
|
|
@@ -442,7 +442,7 @@ series:
|
|
|
442
442
|
l'esaurimento delle targhe di vecchio tipo ancora in giacenza presso gli
|
|
443
443
|
uffici provinciali della Direzione generale della M.C.T.C. e comunque non
|
|
444
444
|
oltre il 31 dicembre 1996". Legal commencement and full coverage are three
|
|
445
|
-
years apart and the regulation says so — the
|
|
445
|
+
years apart and the regulation says so — the plates spec §2.2
|
|
446
446
|
`period.rollout` case, arriving in Italy.
|
|
447
447
|
matching: strict
|
|
448
448
|
format:
|
|
@@ -487,7 +487,7 @@ series:
|
|
|
487
487
|
categories: [car, van, truck, bus]
|
|
488
488
|
period: { start: 1959, end: 1996 }
|
|
489
489
|
period_evidence: instrument-in-force
|
|
490
|
-
# RECALL-ONLY (
|
|
490
|
+
# RECALL-ONLY (the plates spec §2.7): the 1959 regolamento fixes the province
|
|
491
491
|
# sigla and nothing else — the rest of the mark is "un numero o una
|
|
492
492
|
# combinazione di lettere e cifre", with no length, no alphabet and no
|
|
493
493
|
# arrangement. Any regex covering it is necessarily wider than what was
|
|
@@ -524,7 +524,7 @@ series:
|
|
|
524
524
|
white retroreflective. No instrument changing the colour was located in
|
|
525
525
|
this pass, so the black-on-white variant is a RECORDED GAP and is not
|
|
526
526
|
asserted; the sourced colours are recorded here and the discrepancy is
|
|
527
|
-
flagged rather than averaged (
|
|
527
|
+
flagged rather than averaged (the plates spec §5.3).
|
|
528
528
|
region_encoding: "plates/_decode/it-provinces.yml"
|
|
529
529
|
region_encoding_mechanism: >-
|
|
530
530
|
THE PROVINCE IS IN THE MARK ITSELF — this is the only Italian series where a
|
|
@@ -578,7 +578,7 @@ series:
|
|
|
578
578
|
fact in Italian plate law: while cars carried white on black, motorcycles
|
|
579
579
|
carried BLUE on white under the same 1959 regolamento. Its own series rather
|
|
580
580
|
than a variant of it-provincial-1959 because both design and dimensions
|
|
581
|
-
differ (
|
|
581
|
+
differ (the plates spec §2.3). The 165 x 165 mm square survived the 1993 reform
|
|
582
582
|
unchanged and did not grow until 1999.
|
|
583
583
|
|
|
584
584
|
# =========================================================================
|
|
@@ -589,7 +589,7 @@ series:
|
|
|
589
589
|
categories: [motorcycle]
|
|
590
590
|
period: { start: 1999 }
|
|
591
591
|
period_evidence: instrument-in-force
|
|
592
|
-
# RECALL-ONLY (
|
|
592
|
+
# RECALL-ONLY (the plates spec §2.7), and the reason is a documented conflict
|
|
593
593
|
# rather than a union of issued shapes — see notes. A match is a shape hit.
|
|
594
594
|
matching: recall-only
|
|
595
595
|
format:
|
|
@@ -603,7 +603,7 @@ series:
|
|
|
603
603
|
discarded — see notes.
|
|
604
604
|
charset:
|
|
605
605
|
letters_excluded: [I, O, Q, U]
|
|
606
|
-
notes: "Appendice XII comma 2's 22-letter alphabet governs whichever shape is in fact issued; it is not written into `regex` because a recall-only series may carry no regex_strict (
|
|
606
|
+
notes: "Appendice XII comma 2's 22-letter alphabet governs whichever shape is in fact issued; it is not written into `regex` because a recall-only series may carry no regex_strict (the plates spec §2.7)."
|
|
607
607
|
design:
|
|
608
608
|
plate: { w: 177, h: 177, unit: mm, note: "art. 258 c. 1 lett. e-bis), inserted by D.P.R. 355/1998 — the motorcycle plate GREW from 165x165 to 177x177 when the EU band arrived" }
|
|
609
609
|
background: { color: "#FFFFFF", finish: retroreflective, hex_basis: spec }
|
|
@@ -629,7 +629,7 @@ series:
|
|
|
629
629
|
sostituisce." A self-built yellow panel repeating the vehicle's own
|
|
630
630
|
registration, legal only on race days and race routes, and only for FMI
|
|
631
631
|
licence holders. Colour-and-substrate variant of the same serial, hence a
|
|
632
|
-
sub-entry (
|
|
632
|
+
sub-entry (the plates spec §2.3).
|
|
633
633
|
sources:
|
|
634
634
|
- "https://www.normattiva.it/uri-res/N2Ls?urn:nir:stato:decreto.legislativo:1992-04-30;285!vig=~art100 # art. 100 c. 10, second sentence"
|
|
635
635
|
sources:
|
|
@@ -648,7 +648,7 @@ series:
|
|
|
648
648
|
Art. 257 c. 2 supplies a lawful mechanism by which both could be true — the
|
|
649
649
|
Minister may set a different character succession by decree without amending
|
|
650
650
|
the appendix — and no such decree was located. Averaging the two would be
|
|
651
|
-
exactly the failure
|
|
651
|
+
exactly the failure the plates spec §5.3 forbids, so the series is `recall-only`
|
|
652
652
|
with a union regex, the appendix text is quoted in the sources, and this is
|
|
653
653
|
the FIRST item on the verifier's list (see dossier-it.md §Verification).
|
|
654
654
|
period.start 1999 is the design date (D.P.R. 355/1998 + art. 260 c. 5's
|
|
@@ -805,7 +805,7 @@ series:
|
|
|
805
805
|
scritta 'Rimorchio', due caratteri alfabetici, il marchio ufficiale della
|
|
806
806
|
Repubblica italiana e cinque caratteri numerici". It is carried in
|
|
807
807
|
`design.legend` because it contains a full stop and a space and could never
|
|
808
|
-
be spelled inside a serial under
|
|
808
|
+
be spelled inside a serial under the plates spec §2.6.
|
|
809
809
|
design:
|
|
810
810
|
plate: { w: 340, h: 109, unit: mm, note: "art. 258 c. 1 lett. d) as enacted" }
|
|
811
811
|
background: { color: "#FFFFFF", finish: retroreflective, hex_basis: spec }
|
|
@@ -830,7 +830,7 @@ series:
|
|
|
830
830
|
categories: [trailer]
|
|
831
831
|
period: { start: 1993 }
|
|
832
832
|
period_evidence: instrument-in-force
|
|
833
|
-
# RECALL-ONLY (
|
|
833
|
+
# RECALL-ONLY (the plates spec §2.7): a repeater plate carries the TOWING vehicle's
|
|
834
834
|
# registration, transcribed by the owner into empty boxes. Its regex is a
|
|
835
835
|
# container, not a grammar; a match says only that the string could sit in
|
|
836
836
|
# those boxes. Same situation as nl-export.
|
|
@@ -929,7 +929,7 @@ series:
|
|
|
929
929
|
regex: '\A[A-Z]{2} ?\d{3} ?[A-Z]\z'
|
|
930
930
|
regex_strict: '\A[ABCDEFGHJKLMNPRSTVWXYZ]{2} ?\d{3} ?[ABCDEFGHJKLMNPRSTVWXYZ]\z'
|
|
931
931
|
charset: { letters_excluded: [I, O, Q, U] }
|
|
932
|
-
legend_note: "the 'Rim. Agr.' legend contains a full stop and a space and is therefore a design element, never part of the serial (
|
|
932
|
+
legend_note: "the 'Rim. Agr.' legend contains a full stop and a space and is therefore a design element, never part of the serial (the plates spec §2.6)"
|
|
933
933
|
design:
|
|
934
934
|
plate: { w: 340, h: 109, unit: mm, note: "art. 258 c. 1 lett. d)" }
|
|
935
935
|
background: { color: "#FFCC00", finish: retroreflective, hex_basis: observed }
|
|
@@ -1096,7 +1096,7 @@ series:
|
|
|
1096
1096
|
square. Note the order differs from the car EE plate as well: here "EE" comes
|
|
1097
1097
|
FIRST and the marchio and the national sign follow, where lett. p) opens with
|
|
1098
1098
|
the marchio. Two entries rather than one because both format and dimensions
|
|
1099
|
-
differ (
|
|
1099
|
+
differ (the plates spec §2.3).
|
|
1100
1100
|
|
|
1101
1101
|
# =========================================================================
|
|
1102
1102
|
# TEMPORARY — targa provvisoria, the only Italian plate with a region prefix
|