vehicles 0.6.1 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop_todo.yml +164 -0
- data/CHANGELOG.md +274 -0
- data/README.md +55 -10
- data/data/PROVENANCE-vehicles.md +12 -0
- data/data/plates/PROVENANCE.md +5 -4
- data/data/plates/_decode/at-districts.yml +287 -0
- data/data/plates/_decode/ch-cantons.yml +110 -0
- data/data/plates/_decode/cn-issuing-offices.yml +463 -0
- data/data/plates/_decode/cn-provinces.yml +614 -0
- data/data/plates/_decode/cz-kraj.yml +159 -0
- data/data/plates/_decode/dk-serial-blocks.yml +327 -0
- data/data/plates/_decode/fr-departements.yml +191 -0
- data/data/plates/_decode/gb-age-identifiers.yml +170 -0
- data/data/plates/_decode/gb-memory-tags.yml +202 -0
- data/data/plates/_decode/gr-prefectures.yml +1408 -0
- data/data/plates/_decode/hr-cities.yml +315 -0
- data/data/plates/_decode/ie-counties.yml +227 -0
- data/data/plates/_decode/in-state-codes.yml +169 -0
- data/data/plates/_decode/is-districts-1938.yml +116 -0
- data/data/plates/_decode/it-provinces.yml +348 -0
- data/data/plates/_decode/jp-office-marks.yml +960 -0
- data/data/plates/_decode/jp-use-marks.yml +205 -0
- data/data/plates/_decode/kr-authority-marks.yml +146 -0
- data/data/plates/_decode/kr-use-syllables.yml +194 -0
- data/data/plates/_decode/lu-series-order.yml +638 -0
- data/data/plates/_decode/mx-entity-series.yml +380 -0
- data/data/plates/_decode/my-index-marks.yml +271 -0
- data/data/plates/_decode/no-counties-1913.yml +148 -0
- data/data/plates/_decode/no-districts.yml +901 -0
- data/data/plates/_decode/pl-powiats.yml +567 -0
- data/data/plates/_decode/pt-trailer-services.yml +96 -0
- data/data/plates/_decode/ro-counties.yml +213 -0
- data/data/plates/_decode/se-diplomatic.yml +220 -0
- data/data/plates/_decode/si-regions.yml +123 -0
- data/data/plates/_decode/sk-districts.yml +314 -0
- data/data/plates/_decode/th-registration-elements.yml +208 -0
- data/data/plates/_decode/ua-regions.yml +393 -0
- data/data/plates/_decode/za-licence-marks.yml +215 -0
- data/data/plates/_meta/classes.yml +1 -0
- data/data/plates/_meta/separators.yml +102 -0
- data/data/plates/ad.yml +961 -0
- data/data/plates/ar.yml +762 -0
- data/data/plates/at.yml +1424 -0
- data/data/plates/au-act.yml +472 -0
- data/data/plates/au-nsw.yml +282 -0
- data/data/plates/au-nt.yml +431 -0
- data/data/plates/au-qld.yml +272 -0
- data/data/plates/au-sa.yml +248 -0
- data/data/plates/au-tas.yml +302 -0
- data/data/plates/au-vic.yml +215 -0
- data/data/plates/au-wa.yml +309 -0
- data/data/plates/be.yml +1840 -0
- data/data/plates/br.yml +1152 -0
- data/data/plates/ca-ab.yml +430 -0
- data/data/plates/ca-bc.yml +697 -0
- data/data/plates/ca-mb.yml +499 -0
- data/data/plates/ca-nb.yml +537 -0
- data/data/plates/ca-nl.yml +743 -0
- data/data/plates/ca-ns.yml +808 -0
- data/data/plates/ca-nt.yml +610 -0
- data/data/plates/ca-nu.yml +280 -0
- data/data/plates/ca-on.yml +881 -0
- data/data/plates/ca-pe.yml +592 -0
- data/data/plates/ca-qc.yml +1036 -0
- data/data/plates/ca-sk.yml +256 -0
- data/data/plates/ca-yt.yml +656 -0
- data/data/plates/ch.yml +1273 -0
- data/data/plates/cn.yml +1431 -0
- data/data/plates/cy.yml +688 -0
- data/data/plates/cz.yml +1179 -0
- data/data/plates/de.yml +553 -118
- data/data/plates/dk.yml +1647 -0
- data/data/plates/ee.yml +1275 -0
- data/data/plates/es.yml +228 -32
- data/data/plates/fi.yml +1271 -0
- data/data/plates/fr.yml +1265 -0
- data/data/plates/gb.yml +1188 -0
- data/data/plates/gr.yml +721 -0
- data/data/plates/hr.yml +860 -0
- data/data/plates/hu.yml +959 -0
- data/data/plates/ie.yml +775 -0
- data/data/plates/in.yml +1172 -0
- data/data/plates/is.yml +667 -0
- data/data/plates/it.yml +1317 -0
- data/data/plates/jp.yml +3650 -0
- data/data/plates/kr.yml +1375 -0
- data/data/plates/li.yml +1010 -0
- data/data/plates/lt.yml +879 -0
- data/data/plates/lu.yml +842 -0
- data/data/plates/lv.yml +924 -0
- data/data/plates/mc.yml +1024 -0
- data/data/plates/mt.yml +854 -0
- data/data/plates/mx.yml +1372 -0
- data/data/plates/my.yml +685 -0
- data/data/plates/nl.yml +44 -0
- data/data/plates/no.yml +1018 -0
- data/data/plates/nz.yml +1699 -0
- data/data/plates/pl.yml +1296 -0
- data/data/plates/pt.yml +847 -0
- data/data/plates/ro.yml +785 -0
- data/data/plates/se.yml +1091 -0
- data/data/plates/si.yml +1105 -0
- data/data/plates/sk.yml +1439 -0
- data/data/plates/sm.yml +1119 -0
- data/data/plates/th.yml +1150 -0
- data/data/plates/ua.yml +1672 -0
- data/data/plates/us-ak.yml +763 -0
- data/data/plates/us-al.yml +457 -0
- data/data/plates/us-ar.yml +427 -0
- data/data/plates/us-as.yml +454 -0
- data/data/plates/us-az.yml +430 -0
- data/data/plates/us-ca.yml +892 -0
- data/data/plates/us-co.yml +452 -0
- data/data/plates/us-ct.yml +427 -0
- data/data/plates/us-dc.yml +614 -0
- data/data/plates/us-de.yml +551 -0
- data/data/plates/us-fl.yml +319 -96
- data/data/plates/us-ga.yml +644 -0
- data/data/plates/us-gu.yml +658 -0
- data/data/plates/us-hi.yml +585 -0
- data/data/plates/us-ia.yml +438 -0
- data/data/plates/us-id.yml +531 -0
- data/data/plates/us-il.yml +516 -0
- data/data/plates/us-in.yml +324 -0
- data/data/plates/us-ks.yml +351 -0
- data/data/plates/us-ky.yml +770 -0
- data/data/plates/us-la.yml +568 -0
- data/data/plates/us-ma.yml +379 -0
- data/data/plates/us-md.yml +536 -0
- data/data/plates/us-me.yml +445 -0
- data/data/plates/us-mi.yml +408 -0
- data/data/plates/us-mn.yml +411 -0
- data/data/plates/us-mo.yml +356 -0
- data/data/plates/us-mp.yml +402 -0
- data/data/plates/us-ms.yml +432 -0
- data/data/plates/us-mt.yml +619 -0
- data/data/plates/us-nc.yml +602 -0
- data/data/plates/us-nd.yml +419 -0
- data/data/plates/us-ne.yml +483 -0
- data/data/plates/us-nh.yml +394 -0
- data/data/plates/us-nj.yml +547 -0
- data/data/plates/us-nm.yml +574 -0
- data/data/plates/us-nv.yml +655 -0
- data/data/plates/us-ny.yml +592 -0
- data/data/plates/us-oh.yml +404 -0
- data/data/plates/us-ok.yml +513 -0
- data/data/plates/us-or.yml +392 -0
- data/data/plates/us-pa.yml +506 -0
- data/data/plates/us-pr.yml +507 -0
- data/data/plates/us-ri.yml +445 -0
- data/data/plates/us-sc.yml +605 -0
- data/data/plates/us-sd.yml +428 -0
- data/data/plates/us-tn.yml +471 -0
- data/data/plates/us-tx.yml +535 -0
- data/data/plates/us-ut.yml +384 -0
- data/data/plates/us-va.yml +567 -0
- data/data/plates/us-vi.yml +489 -0
- data/data/plates/us-vt.yml +458 -0
- data/data/plates/us-wa.yml +484 -0
- data/data/plates/us-wi.yml +509 -0
- data/data/plates/us-wv.yml +446 -0
- data/data/plates/us-wy.yml +523 -0
- data/data/plates/va.yml +604 -0
- data/data/plates/za.yml +1141 -0
- data/data/vehicles.json +160653 -105090
- data/lib/vehicles/configuration.rb +17 -3
- data/lib/vehicles/dataset.rb +73 -18
- data/lib/vehicles/fuzzy.rb +115 -0
- data/lib/vehicles/http.rb +48 -0
- data/lib/vehicles/make.rb +36 -6
- data/lib/vehicles/mcp_server.rb +5 -5
- data/lib/vehicles/model.rb +21 -2
- data/lib/vehicles/plates/series.rb +172 -18
- data/lib/vehicles/plates/template_fill.rb +188 -0
- data/lib/vehicles/plates/templates.rb +162 -0
- data/lib/vehicles/plates.rb +12 -0
- data/lib/vehicles/providers/hosted_provider.rb +28 -55
- data/lib/vehicles/validators/vehicle_make_validator.rb +3 -1
- data/lib/vehicles/validators/vehicle_model_validator.rb +1 -1
- data/lib/vehicles/version.rb +1 -1
- data/lib/vehicles.rb +32 -16
- data/rakelib/data_refresh.rake +109 -0
- data/rakelib/plates_refresh.rake +29 -0
- data/sig/vehicles.rbs +18 -0
- metadata +164 -2
data/data/plates/hu.yml
ADDED
|
@@ -0,0 +1,959 @@
|
|
|
1
|
+
# plates/hu.yml — Hungary (PRD-PLATES gate L1, wave 2).
|
|
2
|
+
#
|
|
3
|
+
# WHAT IS PRIMARY HERE AND WHAT IS NOT — read this before trusting any line.
|
|
4
|
+
#
|
|
5
|
+
# TWO instruments were reached in their own official databases and are cited as
|
|
6
|
+
# primaries:
|
|
7
|
+
#
|
|
8
|
+
# * 326/2011. (XII. 28.) Korm. rendelet a közúti közlekedési igazgatási
|
|
9
|
+
# feladatokról, a közúti közlekedési okmányok kiadásáról és visszavonásáról
|
|
10
|
+
# — the decree that governs Hungarian registration plates today. Read on the
|
|
11
|
+
# Nemzeti Jogszabálytár (njt.jog.gov.hu) and on net.jogtar.hu, 2026-08-02.
|
|
12
|
+
# * 303/2021. (VI. 1.) Korm. rendelet a közúti közlekedési igazgatási
|
|
13
|
+
# feladatokról, a közúti közlekedési okmányok kiadásáról és visszavonásáról
|
|
14
|
+
# szóló 326/2011. (XII. 28.) Korm. rendelet módosításáról — THE 2022 FORMAT
|
|
15
|
+
# CHANGE, and its commencement sentence is quoted verbatim below.
|
|
16
|
+
#
|
|
17
|
+
# EVERYTHING ELSE IN THIS FILE IS SECONDARY, AND IT IS TAGGED, PER FACT, WITH
|
|
18
|
+
# `evidence_tier: secondary-wikipedia` AND THE ARTICLE URL. That tagging is
|
|
19
|
+
# deliberate and exhaustive: one `grep -n secondary-wikipedia plates/hu.yml`
|
|
20
|
+
# enumerates every fact in this file that rests on Wikipedia, so the whole
|
|
21
|
+
# Wikipedia-derived surface can be re-decided in one pass if the programme ever
|
|
22
|
+
# revisits the directive. An untagged Wikipedia-derived fact would be the defect;
|
|
23
|
+
# there is intended to be none. The facts are re-expressed in this schema's own
|
|
24
|
+
# shape and ordering — nothing here mirrors an article's table layout.
|
|
25
|
+
#
|
|
26
|
+
# THE FOUR STRUCTURAL FACTS THAT SHAPE THIS FILE
|
|
27
|
+
#
|
|
28
|
+
# 1. THE 2022 CHANGE IS DATED TO THE DAY, BY THE INSTRUMENT ITSELF, AND THE
|
|
29
|
+
# INSTRUMENT IS NOT THE SERIES DATE. 303/2021. (VI. 1.) Korm. rendelet was
|
|
30
|
+
# made and published on 1 June 2021. Its own commencement provision reads,
|
|
31
|
+
# verbatim: "Ez a rendelet 2022. július 1-jén lép hatályba." So the
|
|
32
|
+
# instrument's date is 2021 and the SERIES date is 2022-07-01, thirteen
|
|
33
|
+
# months later. This file records 2022, not 2021 — which is exactly the trap
|
|
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 PRD-PLATES §5.3
|
|
36
|
+
# puts era boundaries at the top of the audit. The thirteen-month gap is not
|
|
37
|
+
# incidental: it is the lead time the plate manufacturer and the county
|
|
38
|
+
# government offices were given.
|
|
39
|
+
#
|
|
40
|
+
# 2. HUNGARY DOES NOT ENCODE REGION, AND THERE IS THEREFORE NO hu-* DECODE
|
|
41
|
+
# TABLE. This is a POSITIVE FINDING, not a gap, and it is the same shape as
|
|
42
|
+
# the Finnish outcome in plates/fi.yml. Neither the 1990 three-letter series
|
|
43
|
+
# nor the 2022 four-letter series carries a geographic element; letter blocks
|
|
44
|
+
# are allocated nationally and sequentially by use-class (taxi, trailer,
|
|
45
|
+
# commercial), never by county. A 2012 proposal to add a geographic marker
|
|
46
|
+
# was abandoned. Consequently every series below carries
|
|
47
|
+
# `region_encoding: none`, no plates/_decode/hu-*.yml file is authored, and a
|
|
48
|
+
# parse API must NEVER return a Hungarian county from a Hungarian serial. The
|
|
49
|
+
# pre-1958 systems DID encode region (a single letter for the district — B
|
|
50
|
+
# for the Budapest area, D for Debrecen) and are described in
|
|
51
|
+
# `historic_regional_systems` below, but they are not modelled as series and
|
|
52
|
+
# no decode table is authored for them either, because no primary listing the
|
|
53
|
+
# district letters was reached.
|
|
54
|
+
#
|
|
55
|
+
# 3. THE SPEC — COLOURS, DIMENSIONS, THE PLATE-TYPE TABLE — LIVES IN THE
|
|
56
|
+
# MELLÉKLETEK OF 326/2011, AND THE MELLÉKLETEK WERE NOT TEXT-EXTRACTABLE IN
|
|
57
|
+
# THIS PASS. The decree's operative sections were read (§ 42, § 53 "A
|
|
58
|
+
# rendszámtábla és a regisztrációs matrica", §§ 58-59 the individually chosen
|
|
59
|
+
# and individually produced plate, §§ 60-62 the special plate, §§ 63 and 63/A
|
|
60
|
+
# the temporary plate) and they DELEGATE the detail to numbered mellékletek.
|
|
61
|
+
# Both njt.jog.gov.hu and net.jogtar.hu render the decree's body but truncate
|
|
62
|
+
# before the annexes at the sizes this pass could retrieve, and the Magyar
|
|
63
|
+
# Közlöny PDF archive at kozlonyok.hu answers with a certificate that does not
|
|
64
|
+
# cover its own hostname. That is a RECORDED DEAD END, listed in
|
|
65
|
+
# `dead_ends` below with every URL tried, and it is why every colour and every
|
|
66
|
+
# millimetre in this file is `secondary-wikipedia` and every hex is
|
|
67
|
+
# `hex_basis: observed`. Nothing here is dressed as a spec claim.
|
|
68
|
+
#
|
|
69
|
+
# 4. THE VOWEL/CONSONANT RULE IS REAL, DISTINCTIVE, AND DELIBERATELY NOT
|
|
70
|
+
# ENCODED AS A REGEX. The 2022 series' first letter pair must be two vowels
|
|
71
|
+
# or two consonants, and the Hungarian digraphs CS, GY, TY, LY, NY, SZ, ZS
|
|
72
|
+
# are barred. To turn that into a `regex_strict` this file would have to
|
|
73
|
+
# decide which Latin letters count as vowels for the purpose (is Y a vowel
|
|
74
|
+
# here? is I issued at all, given that I, O and Q are avoided elsewhere in
|
|
75
|
+
# the system?), and the source states the rule without stating the letter
|
|
76
|
+
# sets. Inventing them would be precisely the confident guess PRD-PLATES
|
|
77
|
+
# forbids, so the rule is recorded verbatim in `format.charset` and NO
|
|
78
|
+
# `regex_strict` is shipped for the standard series. The gap is named in
|
|
79
|
+
# `verifier_targets`.
|
|
80
|
+
jurisdiction: hu
|
|
81
|
+
authority:
|
|
82
|
+
name: Belügyminisztérium — közúti közlekedési igazgatási hatóság (326/2011. (XII. 28.) Korm. rendelet)
|
|
83
|
+
url: "https://njt.jog.gov.hu/jogszabaly/2011-326-20-22"
|
|
84
|
+
binding: vehicle
|
|
85
|
+
binding_note: >-
|
|
86
|
+
VEHICLE-bound. § 42 (7) of 326/2011. (XII. 28.) Korm. rendelet, verbatim: "A
|
|
87
|
+
jármű forgalomba helyezése nyilvántartásba vétellel, a forgalmi engedély, a
|
|
88
|
+
rendszámtábla ... kiadásával valósul meg" — the plate is issued as part of
|
|
89
|
+
putting THE VEHICLE into service, so vehicle-keyed consumers may join on it.
|
|
90
|
+
Note the one qualification the same decree creates: §§ 58-59 govern the
|
|
91
|
+
"egyénileg kiválasztott" (individually chosen) and "egyedileg előállított"
|
|
92
|
+
(individually produced) plate, which is a right of the applicant rather than
|
|
93
|
+
of the vehicle; whether that right survives a change of vehicle was NOT
|
|
94
|
+
established in this pass and is a recorded gap.
|
|
95
|
+
instrument:
|
|
96
|
+
citation: "326/2011. (XII. 28.) Korm. rendelet a közúti közlekedési igazgatási feladatokról, a közúti közlekedési okmányok kiadásáról és visszavonásáról"
|
|
97
|
+
kihirdetve: "2011-12-28"
|
|
98
|
+
structure_read: >-
|
|
99
|
+
§ 42 (forgalomba helyezés), § 53 (A rendszámtábla és a regisztrációs
|
|
100
|
+
matrica), §§ 58-59 (az egyénileg kiválasztott és az egyedileg előállított
|
|
101
|
+
rendszámtábla), §§ 60-62 (A különleges rendszámtábla), § 63 and § 63/A (Az
|
|
102
|
+
ideiglenes rendszámtábla), plus § 1/C which names the Központi Kormányablak
|
|
103
|
+
as exclusively competent for the "I" betűjelű ideiglenes rendszámtábla.
|
|
104
|
+
Every one of these sections delegates its detail to a melléklet.
|
|
105
|
+
amendment_that_changed_the_format:
|
|
106
|
+
citation: "303/2021. (VI. 1.) Korm. rendelet a közúti közlekedési igazgatási feladatokról, a közúti közlekedési okmányok kiadásáról és visszavonásáról szóló 326/2011. (XII. 28.) Korm. rendelet módosításáról"
|
|
107
|
+
kihirdetve: "2021-06-01"
|
|
108
|
+
hatalyba_lepes: "2022-07-01"
|
|
109
|
+
verbatim: "Ez a rendelet 2022. július 1-jén lép hatályba."
|
|
110
|
+
note: >-
|
|
111
|
+
THE INSTRUMENT-DATE RULE IN ONE LINE. Made 2021-06-01, in force
|
|
112
|
+
2022-07-01. The series date is the second one. Any dataset that shipped
|
|
113
|
+
"2021" for the four-letter Hungarian plate took the instrument's own date
|
|
114
|
+
for the series period and is wrong by thirteen months.
|
|
115
|
+
source: "https://njt.jog.gov.hu/jogszabaly/2021-303-20-22 # 303/2021. (VI. 1.) Korm. rendelet — title and commencement provision read on the Nemzeti Jogszabálytár, accessed 2026-08-02"
|
|
116
|
+
source: "https://njt.jog.gov.hu/jogszabaly/2011-326-20-22 # 326/2011. (XII. 28.) Korm. rendelet, consolidated text on the Nemzeti Jogszabálytár, accessed 2026-08-02; corroborated against https://net.jogtar.hu/jogszabaly?docid=a1100326.kor"
|
|
117
|
+
|
|
118
|
+
# ---------------------------------------------------------------------------
|
|
119
|
+
# Jurisdiction-wide facts, cited once and referenced per series.
|
|
120
|
+
# ---------------------------------------------------------------------------
|
|
121
|
+
common:
|
|
122
|
+
region_encoding:
|
|
123
|
+
finding: none
|
|
124
|
+
evidence_tier: secondary-wikipedia
|
|
125
|
+
statement: >-
|
|
126
|
+
NO HUNGARIAN SERIES IN THIS FILE ENCODES GEOGRAPHY, AND NO hu-* DECODE
|
|
127
|
+
TABLE IS AUTHORED. Letter blocks in both the 1990 and the 2022 systems are
|
|
128
|
+
allocated nationally by use-class, not by county; a proposal to introduce
|
|
129
|
+
a geographic marker was raised in 2012 and abandoned. This mirrors the
|
|
130
|
+
Finnish outcome (plates/fi.yml) and is a sourced NEGATIVE: "no decode
|
|
131
|
+
table" is the correct deliverable for Hungary, not a missing one.
|
|
132
|
+
consumer_rule: >-
|
|
133
|
+
A parse API must not return a Hungarian county, city or region from a
|
|
134
|
+
Hungarian serial of any post-1958 series. There is no information there to
|
|
135
|
+
return.
|
|
136
|
+
source: "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Hungary # the current system has no geographic linkage; the 2012 geographic-marker proposal was discarded. Accessed 2026-08-02"
|
|
137
|
+
historic_regional_systems:
|
|
138
|
+
evidence_tier: secondary-wikipedia
|
|
139
|
+
finding: >-
|
|
140
|
+
Region WAS encoded before 1958, and is recorded here as context rather than
|
|
141
|
+
as data. From 1910 a district letter preceded the number (B for the
|
|
142
|
+
Budapest area, D for Debrecen, and so on across fifteen districts), with
|
|
143
|
+
the year of issue added from 1922; two-letter/three-number and
|
|
144
|
+
one-letter/four-number arrangements followed through the 1930s and 1940s.
|
|
145
|
+
NO PRIMARY listing the district letters was reached in this pass, so
|
|
146
|
+
neither a series nor a decode table is authored for the pre-1958 world.
|
|
147
|
+
The instruments NAMED by the secondary as governing those systems, offered
|
|
148
|
+
here as locators for a later pass and not as citations for any claim, are
|
|
149
|
+
57.000/1910. számú belügyminisztériumi rendelet and 5397/1920. számú
|
|
150
|
+
ME-rendelet.
|
|
151
|
+
source: "https://hu.wikipedia.org/wiki/Magyarorsz%C3%A1gi_forgalmi_rendsz%C3%A1mok # pre-1958 formats and the two decrees named as their basis. Accessed 2026-08-02"
|
|
152
|
+
alphabet:
|
|
153
|
+
evidence_tier: secondary-wikipedia
|
|
154
|
+
letters_avoided: [I, O, Q]
|
|
155
|
+
statement: >-
|
|
156
|
+
The letter O is not issued (confusable with the digit 0), and I, O and Q
|
|
157
|
+
are avoided in the standard series. The secondary states the avoidance
|
|
158
|
+
without stating the positions it binds, and states separately that I, O and
|
|
159
|
+
Q may not be the FINAL character of a standard serial — two rules that do
|
|
160
|
+
not obviously compose. Neither is written into any regex in this file.
|
|
161
|
+
vowel_consonant_rule_2022:
|
|
162
|
+
verbatim: "Az első két betű vagy két magánhangzó vagy két mássalhangzó kell legyen, de a CS, GY, TY, LY, NY, SZ, ZS betűkombinációk nem használhatók."
|
|
163
|
+
translation: >-
|
|
164
|
+
The first two letters must be either two vowels or two consonants, and
|
|
165
|
+
the digraph combinations CS, GY, TY, LY, NY, SZ and ZS may not be used.
|
|
166
|
+
not_encoded_because: >-
|
|
167
|
+
The source gives the RULE but not the LETTER SETS. Encoding it would
|
|
168
|
+
require this file to decide, unsourced, which Latin letters count as
|
|
169
|
+
vowels for the purpose and whether I is issued at all. See header fact 4.
|
|
170
|
+
source: "https://hu.wikipedia.org/wiki/Magyarorsz%C3%A1gi_forgalmi_rendsz%C3%A1mok # the vowel/consonant and digraph rule, verbatim. Accessed 2026-08-02"
|
|
171
|
+
design_defaults:
|
|
172
|
+
evidence_tier: secondary-wikipedia
|
|
173
|
+
plate_mm: { w: 520, h: 110 }
|
|
174
|
+
colours_note: >-
|
|
175
|
+
Hungary's statutory colour and dimension specification lives in the
|
|
176
|
+
mellékletek of 326/2011, which this pass could not retrieve (see
|
|
177
|
+
`dead_ends`). Every colour in this file is therefore an OBSERVED rendering
|
|
178
|
+
of a NAMED colour reported by a secondary — never a spec claim, never a
|
|
179
|
+
cited chromaticity gamut. Contrast plates/at.yml, whose CIE quadrangles
|
|
180
|
+
come out of KDV Anlage 5e, and plates/es.yml, whose gamut constraint is in
|
|
181
|
+
Anexo XVIII. Hungary has neither in this file, and says so.
|
|
182
|
+
standard_colours: "black characters on a white retroreflective ground, front and rear"
|
|
183
|
+
source: "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Hungary # 520 x 110 mm; black on white. Accessed 2026-08-02"
|
|
184
|
+
euro_band:
|
|
185
|
+
side: left
|
|
186
|
+
content: eu-stars+H
|
|
187
|
+
evidence_tier: secondary-wikipedia
|
|
188
|
+
from: "2004-05-01"
|
|
189
|
+
note: >-
|
|
190
|
+
The EU band arrived with accession. The secondary dates the first
|
|
191
|
+
EU-format Hungarian plate to 1 May 2004 and names its serial as JDA-001 —
|
|
192
|
+
a first-issue claim, tagged `secondary-first-issue` on the series, not an
|
|
193
|
+
instrument claim. No Hungarian instrument prescribing the band's geometry
|
|
194
|
+
was reached; the only hard Euroband geometry secured anywhere in this
|
|
195
|
+
programme remains German (FZV Anlage 4).
|
|
196
|
+
source: "https://hu.wikipedia.org/wiki/Magyarorsz%C3%A1gi_forgalmi_rendsz%C3%A1mok # EU-format plates from 2004-05-01, first serial JDA-001. Accessed 2026-08-02"
|
|
197
|
+
coat_of_arms_2022:
|
|
198
|
+
evidence_tier: secondary-wikipedia
|
|
199
|
+
present: true
|
|
200
|
+
note: >-
|
|
201
|
+
The 2022 plate added the Hungarian coat of arms, and the secondary places
|
|
202
|
+
it in the gap between the two letter pairs. If that placement is right,
|
|
203
|
+
Hungary joins Italy (the marchio ufficiale) and Austria (the Landeswappen)
|
|
204
|
+
in the class of jurisdictions whose printed "separator" is in fact an
|
|
205
|
+
EMBLEM occupying the gap — see PRD-PLATES §2.6 and the never_separator
|
|
206
|
+
note in _meta/separators.yml. The dataset accordingly writes that gap as
|
|
207
|
+
the emitted SPACE and carries the emblem in `design.emblem`; no glyph is
|
|
208
|
+
ever inside a Hungarian serial. THE PLACEMENT ITSELF IS SECONDARY and is a
|
|
209
|
+
named verifier target — if the arms in fact sit at the plate edge, the
|
|
210
|
+
pattern is unaffected but `design.emblem.position` is wrong.
|
|
211
|
+
licensing: >-
|
|
212
|
+
The coat of arms of Hungary is a state symbol whose use is regulated
|
|
213
|
+
independently of copyright. PRD-PLATES §3 placeholder rule applies:
|
|
214
|
+
renders carry `emblem: {present: true, rendered: placeholder}`.
|
|
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
|
+
personalisation:
|
|
217
|
+
statutory_basis: >-
|
|
218
|
+
PRIMARY. §§ 58-59 of 326/2011. (XII. 28.) Korm. rendelet govern "az
|
|
219
|
+
egyénileg kiválasztott és az egyedileg előállított rendszámtábla" — the
|
|
220
|
+
individually CHOSEN plate (a serial picked out of the ordinary grammar)
|
|
221
|
+
and the individually PRODUCED plate (a serial made to order). Two distinct
|
|
222
|
+
products, both inside the official frame, hence PRD-PLATES §2.3 sub-entry
|
|
223
|
+
treatment rather than a series of their own. The fee, the eligibility and
|
|
224
|
+
the grammar each product must obey are in the mellékletek and were not
|
|
225
|
+
retrieved.
|
|
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
|
+
|
|
228
|
+
# ---------------------------------------------------------------------------
|
|
229
|
+
# Dead ends — recorded so the next pass does not repeat them (PRD-PLATES §5.3).
|
|
230
|
+
# ---------------------------------------------------------------------------
|
|
231
|
+
dead_ends:
|
|
232
|
+
- what: "The mellékletek (annexes) of 326/2011 — the plate-type table, colours, dimensions and the serial grammar."
|
|
233
|
+
tried:
|
|
234
|
+
- "https://njt.jog.gov.hu/jogszabaly/2011-326-20-22 # renders the body; the retrieval truncated inside Chapter IV, before any melléklet"
|
|
235
|
+
- "https://net.jogtar.hu/jogszabaly?docid=a1100326.kor # same document, same truncation; §§ 1/C and 42(7) were readable and are quoted above"
|
|
236
|
+
- "https://njt.hu/jogszabaly/2011-326-20-22 # socket hang up"
|
|
237
|
+
- "https://net.jogtar.hu/jogszabaly?docid=a2100303.kor # HTTP 404"
|
|
238
|
+
outcome: "NOT RETRIEVED. Every colour, dimension and plate-type row below is secondary-wikipedia in consequence."
|
|
239
|
+
- what: "The Magyar Közlöny issue of 2021-06-01 carrying 303/2021. (VI. 1.) Korm. rendelet in full, which would contain the new melléklet text."
|
|
240
|
+
tried:
|
|
241
|
+
- "https://www.kozlonyok.hu/nkonline/MKPDF/hiteles/MK21102.pdf # TLS failure: the certificate presented covers *.mhk.hu and does not include kozlonyok.hu"
|
|
242
|
+
- "https://kozlonyok.hu/nkonline/MKPDF/hiteles/MK21102.pdf # same certificate failure"
|
|
243
|
+
- "https://www.mhk.hu/nkonline/MKPDF/hiteles/MK21102.pdf # socket closed"
|
|
244
|
+
outcome: "NOT RETRIEVED. The commencement sentence was obtained from the Nemzeti Jogszabálytár instead, which is sufficient for the date but not for the annex text."
|
|
245
|
+
- what: "The 1990 instrument that started the ABC-123 series, and 1/1958. BM. és KPM. együttes rendelet."
|
|
246
|
+
tried: ["the two consolidated-law databases above carry only law still in force; neither pre-2011 instrument was located"]
|
|
247
|
+
outcome: "NOT RETRIEVED. The 1958 decree is cited below as a NAMED LOCATOR only (`secondary-locator-unverified`); no 1990 instrument is named at all, and the 1990 series is dated by a reported first issue."
|
|
248
|
+
|
|
249
|
+
verifier_targets:
|
|
250
|
+
- "The mellékletek of 326/2011 — every colour, dimension and plate-type row in this file is waiting on them."
|
|
251
|
+
- "Which Latin letters the vowel/consonant rule treats as vowels, and whether I is issued in the 2022 series at all (header fact 4)."
|
|
252
|
+
- "The position of the coat of arms on the 2022 plate (between the letter pairs, or at the edge)."
|
|
253
|
+
- "Whether ABC-123 plates continued to be issued from stock after 2022-07-01; this file assumes a clean cutover and says so in hu-standard-2004."
|
|
254
|
+
- "The instrument that started the 1990 ABC-123 series. None was located."
|
|
255
|
+
|
|
256
|
+
series:
|
|
257
|
+
|
|
258
|
+
# =========================================================================
|
|
259
|
+
# THE CURRENT STANDARD SERIES — four letters, three digits, from 2022-07-01.
|
|
260
|
+
# =========================================================================
|
|
261
|
+
- id: hu-standard-2022
|
|
262
|
+
class: standard
|
|
263
|
+
categories: [car, van, truck, bus]
|
|
264
|
+
period: { start: 2022 }
|
|
265
|
+
period_evidence: enacted-commencement
|
|
266
|
+
period_commencement: "2022-07-01"
|
|
267
|
+
period_commencement_verbatim: "Ez a rendelet 2022. július 1-jén lép hatályba."
|
|
268
|
+
matching: strict
|
|
269
|
+
format:
|
|
270
|
+
pattern: "LL LL-999"
|
|
271
|
+
regex: '\A[A-Z]{2} ?[A-Z]{2}-?\d{3}\z'
|
|
272
|
+
charset:
|
|
273
|
+
evidence_tier: secondary-wikipedia
|
|
274
|
+
rule_verbatim: "Az első két betű vagy két magánhangzó vagy két mássalhangzó kell legyen, de a CS, GY, TY, LY, NY, SZ, ZS betűkombinációk nem használhatók."
|
|
275
|
+
letters_avoided: [I, O, Q]
|
|
276
|
+
notes: >-
|
|
277
|
+
NOT ENCODED AS A REGEX, DELIBERATELY. The rule above is the sourced
|
|
278
|
+
text; the letter sets it presupposes (which letters are vowels; whether
|
|
279
|
+
I is issued) are not sourced, so no `regex_strict` is shipped. See the
|
|
280
|
+
file header, fact 4. A consumer that needs the tightening must wait for
|
|
281
|
+
the melléklet.
|
|
282
|
+
separator_note: >-
|
|
283
|
+
The gap between the two letter pairs is reported to be occupied by the
|
|
284
|
+
Hungarian coat of arms, not by a separator glyph; the hyphen before the
|
|
285
|
+
digits is printed. Both are written per PRD-PLATES §2.6: the emblem gap
|
|
286
|
+
as an optional emitted SPACE, the printed hyphen as an optional emitted
|
|
287
|
+
HYPHEN-MINUS. `pattern` shows the canonical printed form.
|
|
288
|
+
progression: >-
|
|
289
|
+
Not established. No block-allocation order for the four-letter space was
|
|
290
|
+
sourced, so a 2022-series Hungarian plate cannot be dated from its serial
|
|
291
|
+
by anything in this file. Recorded gap.
|
|
292
|
+
design:
|
|
293
|
+
plate: { w: 520, h: 110, unit: mm }
|
|
294
|
+
background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
|
|
295
|
+
foreground: "#000000"
|
|
296
|
+
band: { side: left, color: "#003399", content: eu-stars+H, hex_basis: observed, stars_color: "#FFCC00" }
|
|
297
|
+
emblem: { present: true, rendered: placeholder, position: "between the two letter pairs", position_evidence: secondary-wikipedia, note: "the Hungarian coat of arms, added with the 2022 format" }
|
|
298
|
+
rear_differs: false
|
|
299
|
+
evidence_tier: secondary-wikipedia
|
|
300
|
+
region_encoding: none
|
|
301
|
+
region_encoding_mechanism: >-
|
|
302
|
+
NONE. See common.region_encoding — Hungary encodes no geography and this
|
|
303
|
+
dataset ships no hu-* decode table.
|
|
304
|
+
variants:
|
|
305
|
+
- class: personalized
|
|
306
|
+
format: { pattern: "LL LL-999", regex: '\A[A-Z]{2} ?[A-Z]{2}-?\d{3}\z' }
|
|
307
|
+
note: >-
|
|
308
|
+
EGYÉNILEG KIVÁLASZTOTT / EGYEDILEG ELŐÁLLÍTOTT RENDSZÁMTÁBLA — §§ 58-59
|
|
309
|
+
of 326/2011 create two distinct personalisation products: a plate whose
|
|
310
|
+
serial the applicant CHOOSES out of the ordinary grammar, and a plate
|
|
311
|
+
individually PRODUCED to order. A sub-entry rather than a series
|
|
312
|
+
(PRD-PLATES §2.3) because neither is reported to change the format or
|
|
313
|
+
the design. Which of the two may depart from the ordinary grammar, and
|
|
314
|
+
how far, is in the mellékletek and is a recorded gap.
|
|
315
|
+
sources:
|
|
316
|
+
- "https://njt.jog.gov.hu/jogszabaly/2011-326-20-22 # §§ 58-59, 'Az egyénileg kiválasztott és az egyedileg előállított rendszámtábla' — section scope read on the Nemzeti Jogszabálytár, accessed 2026-08-02"
|
|
317
|
+
sources:
|
|
318
|
+
- "https://njt.jog.gov.hu/jogszabaly/2021-303-20-22 # 303/2021. (VI. 1.) Korm. rendelet — the amending instrument and its commencement, 'Ez a rendelet 2022. július 1-jén lép hatályba.' PERIOD CLAIM"
|
|
319
|
+
- "https://njt.jog.gov.hu/jogszabaly/2011-326-20-22 # 326/2011. (XII. 28.) Korm. rendelet as amended — the governing decree; § 53 'A rendszámtábla és a regisztrációs matrica'; §§ 58-59 personalisation"
|
|
320
|
+
- "https://hu.wikipedia.org/wiki/Magyarorsz%C3%A1gi_forgalmi_rendsz%C3%A1mok # secondary-wikipedia: FORMAT (AA AA-999, two letter pairs then three digits), the vowel/consonant and digraph rule verbatim, the coat of arms. Accessed 2026-08-02"
|
|
321
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Hungary # secondary-wikipedia: COLOURS (black on white) and DIMENSIONS (520 x 110 mm); no geographic encoding. Accessed 2026-08-02"
|
|
322
|
+
notes: >-
|
|
323
|
+
THE CURRENT HUNGARIAN PLATE, AND THE FILE'S ONE HARD DATE. In force from 1
|
|
324
|
+
July 2022 by the express commencement provision of 303/2021. (VI. 1.) Korm.
|
|
325
|
+
rendelet, which is itself dated 1 June 2021 — thirteen months earlier. The
|
|
326
|
+
period recorded here is the commencement, never the instrument's own date.
|
|
327
|
+
The seventh character was added because the six-character space was running
|
|
328
|
+
out, not because anything geographic was introduced: the 2022 plate is as
|
|
329
|
+
regionally silent as the 1990 one. Format, colours and dimensions are
|
|
330
|
+
secondary-wikipedia and are tagged as such per claim in `sources`; only the
|
|
331
|
+
DATE and the personalisation sections are primary.
|
|
332
|
+
|
|
333
|
+
# =========================================================================
|
|
334
|
+
# ONE SERIES BACK — three letters, three digits, with the EU band.
|
|
335
|
+
# =========================================================================
|
|
336
|
+
- id: hu-standard-2004
|
|
337
|
+
class: standard
|
|
338
|
+
categories: [car, van, truck, bus]
|
|
339
|
+
period: { start: 2004, end: 2022 }
|
|
340
|
+
period_evidence: secondary-first-issue
|
|
341
|
+
period_end_evidence: enacted-commencement
|
|
342
|
+
period_note: >-
|
|
343
|
+
START is a reported FIRST ISSUE, not an instrument: the secondary dates the
|
|
344
|
+
first EU-format Hungarian plate to 1 May 2004 — accession day — and names
|
|
345
|
+
its serial JDA-001. END is instrument-dated: issuance of the six-character
|
|
346
|
+
format stopped when 303/2021's commencement took effect on 2022-07-01.
|
|
347
|
+
Whether county government offices issued ABC-123 plates from remaining
|
|
348
|
+
stock after that day was NOT established and is a named verifier target;
|
|
349
|
+
if they did, this series' end moves and the two standard series overlap in
|
|
350
|
+
fact as well as at the boundary year.
|
|
351
|
+
matching: strict
|
|
352
|
+
format:
|
|
353
|
+
pattern: "LLL-999"
|
|
354
|
+
regex: '\A[A-Z]{3}-?\d{3}\z'
|
|
355
|
+
charset:
|
|
356
|
+
evidence_tier: secondary-wikipedia
|
|
357
|
+
letters_avoided: [I, O, Q]
|
|
358
|
+
notes: >-
|
|
359
|
+
O is reported never to be issued (confusable with 0), and I, O and Q
|
|
360
|
+
are reported not to occur as the final character. Not encoded, for the
|
|
361
|
+
same reason as the 2022 series: the rules as reported do not compose
|
|
362
|
+
into a single sourced alphabet.
|
|
363
|
+
blocks_reserved:
|
|
364
|
+
- { block: "EAA-EDZ", use: taxi, evidence_tier: secondary-wikipedia }
|
|
365
|
+
- { block: "FIA-FZZ", use: "commercial goods vehicles", evidence_tier: secondary-wikipedia }
|
|
366
|
+
- { block: "X**", use: "trailers, until the block was exhausted in 2014", evidence_tier: secondary-wikipedia }
|
|
367
|
+
- { block: "W**", use: "trailers, from 2014 until 2022", evidence_tier: secondary-wikipedia }
|
|
368
|
+
progression: >-
|
|
369
|
+
Sequential by letter block, nationally, with blocks reserved by USE and
|
|
370
|
+
never by place (see `blocks_reserved`). The first EU-band plate is
|
|
371
|
+
reported as JDA-001, which is the only anchor this file has for dating a
|
|
372
|
+
1990-system serial, and it is a single reported point rather than a
|
|
373
|
+
published allocation table.
|
|
374
|
+
design:
|
|
375
|
+
plate: { w: 520, h: 110, unit: mm }
|
|
376
|
+
background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
|
|
377
|
+
foreground: "#000000"
|
|
378
|
+
band: { side: left, color: "#003399", content: eu-stars+H, hex_basis: observed, stars_color: "#FFCC00" }
|
|
379
|
+
emblem: { present: false }
|
|
380
|
+
rear_differs: false
|
|
381
|
+
evidence_tier: secondary-wikipedia
|
|
382
|
+
region_encoding: none
|
|
383
|
+
sources:
|
|
384
|
+
- "https://hu.wikipedia.org/wiki/Magyarorsz%C3%A1gi_forgalmi_rendsz%C3%A1mok # secondary-wikipedia: EU-format plates from 2004-05-01, first serial JDA-001; the ABC-123 format. PERIOD START. Accessed 2026-08-02"
|
|
385
|
+
- "https://njt.jog.gov.hu/jogszabaly/2021-303-20-22 # 303/2021. (VI. 1.) Korm. rendelet, in force 2022-07-01 — PERIOD END, primary"
|
|
386
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Hungary # secondary-wikipedia: the reserved letter blocks (taxi EAA-EDZ, commercial FIA-FZZ, trailers X then W) and the colours. Accessed 2026-08-02"
|
|
387
|
+
notes: >-
|
|
388
|
+
THE EU-BAND SIX-CHARACTER PLATE — the format most Hungarian vehicles on the
|
|
389
|
+
road still carry. Distinct from hu-standard-1990 only in DESIGN (the band);
|
|
390
|
+
the serial grammar is character-for-character the same and the letter
|
|
391
|
+
sequence ran continuously across the 2004 boundary, so a JDA-001-or-later
|
|
392
|
+
serial implies the band while an earlier one does not. Distinct from
|
|
393
|
+
hu-standard-2022 in FORMAT. Existing plates were not recalled at either
|
|
394
|
+
boundary: both older designs remain valid on the road, which is why this
|
|
395
|
+
file models three overlapping-at-the-edges standard series rather than one.
|
|
396
|
+
|
|
397
|
+
- id: hu-standard-1990
|
|
398
|
+
class: standard
|
|
399
|
+
categories: [car, van, truck, bus]
|
|
400
|
+
period: { start: 1990, end: 2004 }
|
|
401
|
+
period_evidence: secondary-first-issue
|
|
402
|
+
period_note: >-
|
|
403
|
+
START: the secondary reports issuance beginning in August 1990 with AAB-001
|
|
404
|
+
as the first plate. No instrument introducing the series was located — a
|
|
405
|
+
recorded gap, and the reason this is `secondary-first-issue` rather than
|
|
406
|
+
`enacted-commencement`. END is the EU band's arrival on 2004-05-01, which is
|
|
407
|
+
a design change and not a format change.
|
|
408
|
+
matching: strict
|
|
409
|
+
format:
|
|
410
|
+
pattern: "LLL-999"
|
|
411
|
+
regex: '\A[A-Z]{3}-?\d{3}\z'
|
|
412
|
+
charset:
|
|
413
|
+
evidence_tier: secondary-wikipedia
|
|
414
|
+
letters_avoided: [I, O, Q]
|
|
415
|
+
notes: "as hu-standard-2004 — the same grammar and the same reported letter avoidances; the 2004 change touched only the design."
|
|
416
|
+
design:
|
|
417
|
+
plate: { w: 520, h: 110, unit: mm }
|
|
418
|
+
background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
|
|
419
|
+
foreground: "#000000"
|
|
420
|
+
band: { side: none }
|
|
421
|
+
band_note: "No EU band before 2004-05-01; the left field carried no blue zone."
|
|
422
|
+
emblem: { present: false }
|
|
423
|
+
rear_differs: false
|
|
424
|
+
evidence_tier: secondary-wikipedia
|
|
425
|
+
region_encoding: none
|
|
426
|
+
sources:
|
|
427
|
+
- "https://hu.wikipedia.org/wiki/Magyarorsz%C3%A1gi_forgalmi_rendsz%C3%A1mok # secondary-wikipedia, verbatim: 'A sorozat kibocsátása 1990 augusztusában kezdődött meg, hivatalosan az első ilyen rendszám az AAB-001-es volt.' PERIOD START + FORMAT. Accessed 2026-08-02"
|
|
428
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Hungary # secondary-wikipedia: the 1990-2022 three-letter/three-number system and its colours. Accessed 2026-08-02"
|
|
429
|
+
notes: >-
|
|
430
|
+
THE POST-COMMUNIST REFORM PLATE. Hungary changed system as the old order
|
|
431
|
+
ended: the two-letter/four-digit plate of 1958 gave way in August 1990 to
|
|
432
|
+
ABC-123, and the change dropped the commercial/private colour inversion
|
|
433
|
+
that had been the visual signature of the previous system. This entry
|
|
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 PRD-PLATES
|
|
436
|
+
§2.3 makes a series boundary — the same cut plates/it.yml makes at 1999.
|
|
437
|
+
|
|
438
|
+
# =========================================================================
|
|
439
|
+
# THE PRE-1990 SYSTEM — the real "one system back".
|
|
440
|
+
# =========================================================================
|
|
441
|
+
- id: hu-standard-1958
|
|
442
|
+
class: standard
|
|
443
|
+
categories: [car, van, truck, bus, motorcycle]
|
|
444
|
+
period: { start: 1958, end: 1990 }
|
|
445
|
+
period_evidence: secondary-locator-unverified
|
|
446
|
+
period_note: >-
|
|
447
|
+
The secondary dates the six-character two-letter/four-digit plate to autumn
|
|
448
|
+
1958 and NAMES its legal basis as "1/1958. BM. és KPM. együttes rendelet" —
|
|
449
|
+
a joint decree of the Interior and Transport ministries. That instrument was
|
|
450
|
+
NOT retrieved (the Hungarian consolidated-law databases carry only law in
|
|
451
|
+
force), so the decree is recorded as a LOCATOR for a later pass and the
|
|
452
|
+
period claim rests on the secondary alone. Hence
|
|
453
|
+
`secondary-locator-unverified` and not `enacted-commencement`.
|
|
454
|
+
matching: recall-only
|
|
455
|
+
format:
|
|
456
|
+
pattern: "LL 99-99"
|
|
457
|
+
regex: '\A[A-Z]{2} ?\d{2}-?\d{2}\z'
|
|
458
|
+
pattern_note: >-
|
|
459
|
+
RECALL-ONLY, and the reason is the SEPARATORS rather than the characters.
|
|
460
|
+
The character shape — two letters then four digits — is consistently
|
|
461
|
+
reported, but the printed grouping is rendered in the enthusiast web with
|
|
462
|
+
a middle dot ("AB·12·34"), which is not a character this dataset emits
|
|
463
|
+
(_meta/separators.yml: emitted separators are HYPHEN-MINUS and SPACE
|
|
464
|
+
only, and the middle dot is in the FORGIVING set, so a lenient consumer
|
|
465
|
+
deletes it and reaches the same serial either way). Because this file
|
|
466
|
+
cannot say from a primary whether the plate printed one gap or two, or
|
|
467
|
+
which glyph occupied them, the regex accepts a range of arrangements and
|
|
468
|
+
a match is a shape hit, never a validity claim.
|
|
469
|
+
charset:
|
|
470
|
+
evidence_tier: secondary-wikipedia
|
|
471
|
+
notes: "No alphabet restriction was sourced for this era. Recorded gap."
|
|
472
|
+
design:
|
|
473
|
+
background: { color: "#FFFFFF", finish: painted, hex_basis: observed }
|
|
474
|
+
foreground: "#000000"
|
|
475
|
+
band: { side: none }
|
|
476
|
+
emblem: { present: false }
|
|
477
|
+
inversion:
|
|
478
|
+
evidence_tier: secondary-wikipedia
|
|
479
|
+
rule: >-
|
|
480
|
+
THE COLOUR CARRIED THE OWNERSHIP CLASS, and this is the one genuinely
|
|
481
|
+
distinctive design fact of the period: private vehicles ran black
|
|
482
|
+
characters on white, while commercial/state vehicles ran the inverse —
|
|
483
|
+
WHITE CHARACTERS ON BLACK. Same format, opposite colours, and the
|
|
484
|
+
inversion disappeared with the 1990 reform. Modelled here as a
|
|
485
|
+
documented colour inversion on one series rather than as two series,
|
|
486
|
+
because format and period are identical (PRD-PLATES §2.3).
|
|
487
|
+
inverse_background: "#000000"
|
|
488
|
+
inverse_foreground: "#FFFFFF"
|
|
489
|
+
evidence_tier: secondary-wikipedia
|
|
490
|
+
region_encoding: none
|
|
491
|
+
region_encoding_note: >-
|
|
492
|
+
The two letters of this series are NOT a district code. Region encoding in
|
|
493
|
+
Hungary ended with the pre-1958 systems (see common.historic_regional_
|
|
494
|
+
systems); no source consulted attributes geography to the 1958 letter pair,
|
|
495
|
+
and none is asserted.
|
|
496
|
+
sources:
|
|
497
|
+
- "https://hu.wikipedia.org/wiki/Magyarorsz%C3%A1gi_forgalmi_rendsz%C3%A1mok # secondary-wikipedia, verbatim: '1958 őszén vezették be a hatkarakteres rendszámokat, amelyek két betűből és négy számból álltak'; names 1/1958. BM. és KPM. együttes rendelet as the basis. PERIOD + FORMAT. Accessed 2026-08-02"
|
|
498
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Hungary # secondary-wikipedia: black on white for private vehicles, white on black for commercial ones, 1958-1990. COLOURS. Accessed 2026-08-02"
|
|
499
|
+
notes: >-
|
|
500
|
+
THE SOCIALIST-ERA PLATE. Two letters and four digits from autumn 1958 until
|
|
501
|
+
the August 1990 reform, with the private/commercial colour inversion
|
|
502
|
+
described above. This is the layer either side of which Hungary changed
|
|
503
|
+
political system, and it is the file's weakest-evidenced standard series:
|
|
504
|
+
the instrument is named but unread, and the printed separator is unknown.
|
|
505
|
+
Both facts are recorded rather than smoothed over, and the series is
|
|
506
|
+
`recall-only` in consequence.
|
|
507
|
+
|
|
508
|
+
# =========================================================================
|
|
509
|
+
# TAXI — the yellow plate, before and after the format change.
|
|
510
|
+
# =========================================================================
|
|
511
|
+
- id: hu-taxi-2022
|
|
512
|
+
class: taxi
|
|
513
|
+
categories: [car]
|
|
514
|
+
period: { start: 2022 }
|
|
515
|
+
period_evidence: enacted-commencement
|
|
516
|
+
period_commencement: "2022-07-01"
|
|
517
|
+
matching: strict
|
|
518
|
+
format:
|
|
519
|
+
pattern: "TX LL-999"
|
|
520
|
+
regex: '\ATX ?[A-Z]{2}-?\d{3}\z'
|
|
521
|
+
design:
|
|
522
|
+
plate: { w: 520, h: 110, unit: mm }
|
|
523
|
+
background: { color: "#FFCC00", finish: retroreflective, hex_basis: observed }
|
|
524
|
+
foreground: "#000000"
|
|
525
|
+
band: { side: left, color: "#003399", content: eu-stars+H, hex_basis: observed }
|
|
526
|
+
emblem: { present: true, rendered: placeholder }
|
|
527
|
+
evidence_tier: secondary-wikipedia
|
|
528
|
+
region_encoding: none
|
|
529
|
+
sources:
|
|
530
|
+
- "https://hu.wikipedia.org/wiki/Magyarorsz%C3%A1gi_forgalmi_rendsz%C3%A1mok # secondary-wikipedia: TX AA-999 on yellow for hired transport under the 2022 system. FORMAT + COLOUR. Accessed 2026-08-02"
|
|
531
|
+
- "https://njt.jog.gov.hu/jogszabaly/2021-303-20-22 # 303/2021. (VI. 1.) Korm. rendelet, in force 2022-07-01 — the date the 2022 system began. PERIOD"
|
|
532
|
+
notes: >-
|
|
533
|
+
THE 2022 TAXI PLATE. Hungary moved taxis from a reserved letter BLOCK
|
|
534
|
+
inside the ordinary series to a dedicated TX prefix when the format changed
|
|
535
|
+
— a structural simplification: under the 1990 system a taxi was identified
|
|
536
|
+
by where its serial fell in the national sequence, and under the 2022
|
|
537
|
+
system it is identified by two literal characters. The yellow ground
|
|
538
|
+
survived the change.
|
|
539
|
+
|
|
540
|
+
- id: hu-taxi-1990
|
|
541
|
+
class: taxi
|
|
542
|
+
categories: [car]
|
|
543
|
+
period: { start: 1990, end: 2022 }
|
|
544
|
+
period_evidence: corroboration-only
|
|
545
|
+
period_note: >-
|
|
546
|
+
The EAA-EDZ block is reported without a first-issue date. The start recorded
|
|
547
|
+
here is the start of the SYSTEM the block sits inside (August 1990), not a
|
|
548
|
+
sourced first issue for taxis, and the end is the 2022-07-01 commencement.
|
|
549
|
+
`corroboration-only` marks exactly that: the block is corroborated, its own
|
|
550
|
+
dates are not.
|
|
551
|
+
matching: strict
|
|
552
|
+
format:
|
|
553
|
+
pattern: "ELL-999"
|
|
554
|
+
regex: '\AE[A-Z]{2}-?\d{3}\z'
|
|
555
|
+
regex_strict: '\AE[A-D][A-Z]-?\d{3}\z'
|
|
556
|
+
charset:
|
|
557
|
+
evidence_tier: secondary-wikipedia
|
|
558
|
+
notes: >-
|
|
559
|
+
The sourced fact is the BLOCK, EAA to EDZ — first letter E, second
|
|
560
|
+
letter A to D. `regex` carries the round-trippable form (E plus two
|
|
561
|
+
letters), `regex_strict` carries the sourced block bound. The tier
|
|
562
|
+
order regex_strict subset regex holds by construction.
|
|
563
|
+
design:
|
|
564
|
+
plate: { w: 520, h: 110, unit: mm }
|
|
565
|
+
background: { color: "#FFCC00", finish: retroreflective, hex_basis: observed }
|
|
566
|
+
foreground: "#000000"
|
|
567
|
+
band: { side: left, color: "#003399", content: eu-stars+H, hex_basis: observed, note: "from 2004-05-01 only; earlier taxi plates of this block carried no band" }
|
|
568
|
+
evidence_tier: secondary-wikipedia
|
|
569
|
+
region_encoding: none
|
|
570
|
+
sources:
|
|
571
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Hungary # secondary-wikipedia: taxis allocated the EAA-EDZ block on yellow. FORMAT + COLOUR + BLOCK. Accessed 2026-08-02"
|
|
572
|
+
- "https://hu.wikipedia.org/wiki/Magyarorsz%C3%A1gi_forgalmi_rendsz%C3%A1mok # secondary-wikipedia: the 1990 system's dates, which bound this series. Accessed 2026-08-02"
|
|
573
|
+
notes: >-
|
|
574
|
+
THE BLOCK-ALLOCATED TAXI PLATE. Under the 1990 system a Hungarian taxi
|
|
575
|
+
carried an ordinary six-character serial drawn from a reserved range, on a
|
|
576
|
+
yellow ground — so the FORMAT is the standard one and only the block and
|
|
577
|
+
the colour distinguish it. It is a series rather than a sub-entry because
|
|
578
|
+
the design differs (PRD-PLATES §2.3). Its dates are the system's, not its
|
|
579
|
+
own; see period_note.
|
|
580
|
+
|
|
581
|
+
# =========================================================================
|
|
582
|
+
# ELECTRIC — the green plate, spanning the format change.
|
|
583
|
+
# =========================================================================
|
|
584
|
+
- id: hu-electric-2015
|
|
585
|
+
class: electric
|
|
586
|
+
categories: [car, van, truck, bus]
|
|
587
|
+
period: { start: 2015, end: 2022 }
|
|
588
|
+
period_evidence: secondary-dated
|
|
589
|
+
period_note: "The secondary dates the green plate to October 2015; the end is the 2022-07-01 format change, after which the same class continues on the four-letter grammar (hu-electric-2022)."
|
|
590
|
+
matching: recall-only
|
|
591
|
+
format:
|
|
592
|
+
pattern: "LLL-999"
|
|
593
|
+
regex: '\A[A-Z]{3}-?\d{3}\z'
|
|
594
|
+
pattern_note: >-
|
|
595
|
+
RECALL-ONLY. The green plate is reported as a COLOUR treatment of the
|
|
596
|
+
ordinary six-character serial, with no reserved letter block sourced, so
|
|
597
|
+
this regex is the whole 1990-system serial space and a match says only
|
|
598
|
+
"this has the shape of a 1990-system Hungarian plate" — never "this is a
|
|
599
|
+
green plate". A parse API must take the colour from the image, not from
|
|
600
|
+
the string.
|
|
601
|
+
design:
|
|
602
|
+
plate: { w: 520, h: 110, unit: mm }
|
|
603
|
+
background: { color: "#B5E3B5", finish: retroreflective, hex_basis: observed, note: "reported as a pale green ground; no spec value was reached, so the hex is an observed rendering of a named colour" }
|
|
604
|
+
foreground: "#000000"
|
|
605
|
+
band: { side: left, color: "#003399", content: eu-stars+H, hex_basis: observed }
|
|
606
|
+
evidence_tier: secondary-wikipedia
|
|
607
|
+
region_encoding: none
|
|
608
|
+
sources:
|
|
609
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Hungary # secondary-wikipedia: green plates for electric and plug-in hybrid vehicles since October 2015. PERIOD START. Accessed 2026-08-02"
|
|
610
|
+
- "https://hu.wikipedia.org/wiki/Magyarorsz%C3%A1gi_forgalmi_rendsz%C3%A1mok # secondary-wikipedia: the pale-green 'eco' plate. COLOUR. Accessed 2026-08-02"
|
|
611
|
+
notes: >-
|
|
612
|
+
HUNGARY'S GREEN PLATE, FIRST GENERATION. Introduced in October 2015 for
|
|
613
|
+
pure-electric and plug-in hybrid vehicles, as a coloured ground on the
|
|
614
|
+
ordinary serial rather than as a distinct serial space. Hungary is
|
|
615
|
+
therefore unlike China (a distinct format for NEVs) and like Austria
|
|
616
|
+
(green LETTERING on the ordinary plate, KFG § 49 Abs. 4 Z 5) in kind,
|
|
617
|
+
though the Austrian rule is instrument-sourced and this one is not.
|
|
618
|
+
|
|
619
|
+
- id: hu-electric-2022
|
|
620
|
+
class: electric
|
|
621
|
+
categories: [car, van, truck, bus]
|
|
622
|
+
period: { start: 2022 }
|
|
623
|
+
period_evidence: enacted-commencement
|
|
624
|
+
period_commencement: "2022-07-01"
|
|
625
|
+
matching: recall-only
|
|
626
|
+
format:
|
|
627
|
+
pattern: "LL LL-999"
|
|
628
|
+
regex: '\A[A-Z]{2} ?[A-Z]{2}-?\d{3}\z'
|
|
629
|
+
pattern_note: "recall-only for the same reason as hu-electric-2015: the green ground carries no reserved block that this pass could source, so the regex is the whole 2022 serial space."
|
|
630
|
+
design:
|
|
631
|
+
plate: { w: 520, h: 110, unit: mm }
|
|
632
|
+
background: { color: "#B5E3B5", finish: retroreflective, hex_basis: observed }
|
|
633
|
+
foreground: "#000000"
|
|
634
|
+
band: { side: left, color: "#003399", content: eu-stars+H, hex_basis: observed }
|
|
635
|
+
emblem: { present: true, rendered: placeholder }
|
|
636
|
+
evidence_tier: secondary-wikipedia
|
|
637
|
+
region_encoding: none
|
|
638
|
+
sources:
|
|
639
|
+
- "https://hu.wikipedia.org/wiki/Magyarorsz%C3%A1gi_forgalmi_rendsz%C3%A1mok # secondary-wikipedia: the eco plate on the 2022 four-letter grammar, pale green. FORMAT + COLOUR. Accessed 2026-08-02"
|
|
640
|
+
- "https://njt.jog.gov.hu/jogszabaly/2021-303-20-22 # 303/2021. (VI. 1.) Korm. rendelet, in force 2022-07-01. PERIOD"
|
|
641
|
+
notes: >-
|
|
642
|
+
THE GREEN PLATE AFTER THE FORMAT CHANGE — the same environmental class on
|
|
643
|
+
the seven-character grammar. Modelled as its own series rather than as a
|
|
644
|
+
period extension because the FORMAT differs from hu-electric-2015, which is
|
|
645
|
+
the PRD-PLATES §2.3 boundary; the two are otherwise the same programme and
|
|
646
|
+
that continuity is the reason both carry the same class.
|
|
647
|
+
|
|
648
|
+
# =========================================================================
|
|
649
|
+
# DIPLOMATIC — the one Hungarian series with a decode that is NOT geographic.
|
|
650
|
+
# =========================================================================
|
|
651
|
+
- id: hu-diplomatic-2017
|
|
652
|
+
class: diplomatic
|
|
653
|
+
categories: [car, van]
|
|
654
|
+
period: { start: 2017 }
|
|
655
|
+
period_evidence: secondary-dated
|
|
656
|
+
period_note: >-
|
|
657
|
+
The secondary dates the DT and CK series' expiry to 2017 and describes the
|
|
658
|
+
CD six-digit series as the current one, which places the CD series' start at
|
|
659
|
+
that changeover. No instrument was reached. The 2022 format change did NOT
|
|
660
|
+
touch this series as far as any source consulted says — the diplomatic plate
|
|
661
|
+
is numeric and was never part of the letter-space exhaustion that drove the
|
|
662
|
+
2022 reform.
|
|
663
|
+
matching: strict
|
|
664
|
+
format:
|
|
665
|
+
pattern: "CD 999-999"
|
|
666
|
+
regex: '\ACD ?\d{3}-?\d{3}\z'
|
|
667
|
+
progression:
|
|
668
|
+
evidence_tier: secondary-wikipedia
|
|
669
|
+
note: >-
|
|
670
|
+
THE FIRST THREE DIGITS ARE A COUNTRY CODE and the last three are a rank
|
|
671
|
+
or sequence within the mission — a genuine decode, but a MISSION decode
|
|
672
|
+
rather than a geographic one, so it does not disturb this file's
|
|
673
|
+
no-decode-table finding. Two reported points: 001 is the Holy See and
|
|
674
|
+
020 the United States. The full mission-to-code mapping was NOT sourced
|
|
675
|
+
and is NOT authored here; PRD-PLATES puts diplomatic decode tables at
|
|
676
|
+
gate L4, and plates/fi.yml made the same call for the Finnish table.
|
|
677
|
+
design:
|
|
678
|
+
plate: { w: 520, h: 110, unit: mm }
|
|
679
|
+
background: { color: "#4A90D9", finish: retroreflective, hex_basis: observed, note: "reported as a light blue ground; no spec value reached" }
|
|
680
|
+
foreground: "#FFFFFF"
|
|
681
|
+
band: { side: left, color: "#003399", content: eu-stars+H, hex_basis: observed }
|
|
682
|
+
evidence_tier: secondary-wikipedia
|
|
683
|
+
region_encoding: none
|
|
684
|
+
sources:
|
|
685
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Hungary # secondary-wikipedia: CD plus six digits on light blue, first three digits a country code (001 Holy See, 020 United States); DT and CK expired 2017. FORMAT + COLOUR + PERIOD. Accessed 2026-08-02"
|
|
686
|
+
- "https://hu.wikipedia.org/wiki/Magyarorsz%C3%A1gi_forgalmi_rendsz%C3%A1mok # secondary-wikipedia: CD 999-999 on blue. Accessed 2026-08-02"
|
|
687
|
+
notes: >-
|
|
688
|
+
THE CURRENT DIPLOMATIC PLATE. Six digits behind a CD prefix, on a light blue
|
|
689
|
+
ground, with the leading triple naming the sending state. Note what this
|
|
690
|
+
series is NOT: it is not evidence that Hungary encodes region. The only
|
|
691
|
+
Hungarian decode of any kind in this file is a decode of FOREIGN MISSIONS,
|
|
692
|
+
and even that is described rather than tabulated, because the mapping was
|
|
693
|
+
not sourced.
|
|
694
|
+
|
|
695
|
+
- id: hu-diplomatic-1990
|
|
696
|
+
class: diplomatic
|
|
697
|
+
categories: [car, van]
|
|
698
|
+
period: { start: 1990, end: 2017 }
|
|
699
|
+
period_evidence: secondary-dated
|
|
700
|
+
period_note: "The secondary gives this series as 1990-2017, expiring when the CD six-digit series took over."
|
|
701
|
+
matching: strict
|
|
702
|
+
format:
|
|
703
|
+
pattern: "DT-9999"
|
|
704
|
+
regex: '\ADT-?\d{4}\z'
|
|
705
|
+
design:
|
|
706
|
+
plate: { w: 520, h: 110, unit: mm }
|
|
707
|
+
background: { color: "#003087", finish: retroreflective, hex_basis: observed, note: "reported as a dark blue ground" }
|
|
708
|
+
foreground: "#FFFFFF"
|
|
709
|
+
band: { side: left, color: "#003399", content: eu-stars+H, hex_basis: observed, note: "from 2004-05-01 only" }
|
|
710
|
+
evidence_tier: secondary-wikipedia
|
|
711
|
+
region_encoding: none
|
|
712
|
+
sources:
|
|
713
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Hungary # secondary-wikipedia: DT plus four digits on dark blue, 1990-2017, for personnel holding immunity. FORMAT + COLOUR + PERIOD. Accessed 2026-08-02"
|
|
714
|
+
notes: >-
|
|
715
|
+
THE DT SERIES — dark blue, four digits, issued to immunity-holding
|
|
716
|
+
personnel from the 1990 reform until 2017. A companion series in the same
|
|
717
|
+
era, CK on red-over-white for non-Hungarian embassy STAFF without immunity,
|
|
718
|
+
is described in `unmodelled_series` below rather than authored, because its
|
|
719
|
+
format was reported without a period this file could bound at both ends.
|
|
720
|
+
|
|
721
|
+
# =========================================================================
|
|
722
|
+
# TRAILERS — the block that ran out, and its replacement.
|
|
723
|
+
# =========================================================================
|
|
724
|
+
- id: hu-trailer-1990
|
|
725
|
+
class: trailer
|
|
726
|
+
categories: [trailer]
|
|
727
|
+
period: { start: 1990, end: 2014 }
|
|
728
|
+
period_evidence: corroboration-only
|
|
729
|
+
period_note: >-
|
|
730
|
+
END is the better-sourced boundary: the X block is reported EXHAUSTED in
|
|
731
|
+
2014, which is a capacity event rather than a legal one and is dated only
|
|
732
|
+
to the year. START is the 1990 system's start, not a sourced first issue
|
|
733
|
+
for trailers.
|
|
734
|
+
matching: strict
|
|
735
|
+
format:
|
|
736
|
+
pattern: "XLL-999"
|
|
737
|
+
regex: '\AX[A-Z]{2}-?\d{3}\z'
|
|
738
|
+
design:
|
|
739
|
+
plate: { w: 520, h: 110, unit: mm }
|
|
740
|
+
background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
|
|
741
|
+
foreground: "#000000"
|
|
742
|
+
band: { side: left, color: "#003399", content: eu-stars+H, hex_basis: observed, note: "from 2004-05-01 only" }
|
|
743
|
+
evidence_tier: secondary-wikipedia
|
|
744
|
+
region_encoding: none
|
|
745
|
+
sources:
|
|
746
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Hungary # secondary-wikipedia: trailers used the X series until it was exhausted in 2014. FORMAT + PERIOD END. Accessed 2026-08-02"
|
|
747
|
+
notes: >-
|
|
748
|
+
THE X TRAILER BLOCK. A worked example of why letter-block allocation is a
|
|
749
|
+
capacity system and not a taxonomy: the block did not change because the
|
|
750
|
+
law changed, it changed because it filled up, and the date this file can
|
|
751
|
+
give is therefore a year and not a day. Note the collision hazard for a
|
|
752
|
+
parse API — the secondary also reports an unrelated X-prefixed series for
|
|
753
|
+
RENTAL vehicles discontinued in July 2004, with a different shape (X plus
|
|
754
|
+
one letter plus four digits); see `unmodelled_series`.
|
|
755
|
+
|
|
756
|
+
- id: hu-trailer-2014
|
|
757
|
+
class: trailer
|
|
758
|
+
categories: [trailer]
|
|
759
|
+
period: { start: 2014, end: 2022 }
|
|
760
|
+
period_evidence: corroboration-only
|
|
761
|
+
period_note: "START is the reported exhaustion of the X block in 2014; END is the 2022-07-01 format change. Neither boundary is instrument-sourced."
|
|
762
|
+
matching: strict
|
|
763
|
+
format:
|
|
764
|
+
pattern: "WLL-999"
|
|
765
|
+
regex: '\AW[A-Z]{2}-?\d{3}\z'
|
|
766
|
+
design:
|
|
767
|
+
plate: { w: 520, h: 110, unit: mm }
|
|
768
|
+
background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
|
|
769
|
+
foreground: "#000000"
|
|
770
|
+
band: { side: left, color: "#003399", content: eu-stars+H, hex_basis: observed }
|
|
771
|
+
evidence_tier: secondary-wikipedia
|
|
772
|
+
region_encoding: none
|
|
773
|
+
sources:
|
|
774
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Hungary # secondary-wikipedia: the W series carried trailers from 2014 until 2022. FORMAT + PERIOD. Accessed 2026-08-02"
|
|
775
|
+
notes: >-
|
|
776
|
+
THE W TRAILER BLOCK — the X block's successor, and the shortest-lived
|
|
777
|
+
Hungarian block in this file: eight years, ended not by exhaustion but by
|
|
778
|
+
the 2022 reform. WHAT REPLACED IT AFTER 2022-07-01 WAS NOT ESTABLISHED and
|
|
779
|
+
is a recorded gap; this file does not guess a post-2022 trailer prefix.
|
|
780
|
+
|
|
781
|
+
# =========================================================================
|
|
782
|
+
# HISTORIC AND TEMPORARY.
|
|
783
|
+
# =========================================================================
|
|
784
|
+
- id: hu-historic-2022
|
|
785
|
+
class: historic
|
|
786
|
+
categories: [car, van, truck, bus, motorcycle]
|
|
787
|
+
period: { start: 2022 }
|
|
788
|
+
period_evidence: enacted-commencement
|
|
789
|
+
period_commencement: "2022-07-01"
|
|
790
|
+
period_note: >-
|
|
791
|
+
The OT (old-timer) plate itself PREDATES 2022 — the secondary describes an
|
|
792
|
+
earlier OT-plus-four-digit form without giving it a start date, which is
|
|
793
|
+
why only the post-2022 form is authored here and the earlier one is
|
|
794
|
+
recorded in `unmodelled_series`. Dating a series to a system change it
|
|
795
|
+
survived would be the instrument-date error in another dress.
|
|
796
|
+
matching: strict
|
|
797
|
+
format:
|
|
798
|
+
pattern: "OT LL-999"
|
|
799
|
+
regex: '\AOT ?[A-Z]{2}-?\d{3}\z'
|
|
800
|
+
eligibility:
|
|
801
|
+
evidence_tier: secondary-wikipedia
|
|
802
|
+
rule: "vehicle at least 30 years old and in original specification"
|
|
803
|
+
design:
|
|
804
|
+
plate: { w: 520, h: 110, unit: mm }
|
|
805
|
+
background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
|
|
806
|
+
foreground: "#000000"
|
|
807
|
+
band: { side: left, color: "#003399", content: eu-stars+H, hex_basis: observed }
|
|
808
|
+
emblem: { present: true, rendered: placeholder }
|
|
809
|
+
evidence_tier: secondary-wikipedia
|
|
810
|
+
region_encoding: none
|
|
811
|
+
sources:
|
|
812
|
+
- "https://hu.wikipedia.org/wiki/Magyarorsz%C3%A1gi_forgalmi_rendsz%C3%A1mok # secondary-wikipedia: OT AA-999 under the 2022 system. FORMAT. Accessed 2026-08-02"
|
|
813
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Hungary # secondary-wikipedia: OT for vehicles at least 30 years old in original specification. ELIGIBILITY. Accessed 2026-08-02"
|
|
814
|
+
- "https://njt.jog.gov.hu/jogszabaly/2021-303-20-22 # 303/2021. (VI. 1.) Korm. rendelet, in force 2022-07-01. PERIOD"
|
|
815
|
+
notes: >-
|
|
816
|
+
THE OLD-TIMER PLATE on the 2022 grammar. Hungary's historic regime is a
|
|
817
|
+
PLATE regime, unlike Italy's, which has none at all (plates/it.yml
|
|
818
|
+
no_historic_series) and routes veteran vehicles through the temporary
|
|
819
|
+
series instead. The thirty-year threshold is the same order as the German
|
|
820
|
+
H-Kennzeichen's.
|
|
821
|
+
|
|
822
|
+
- id: hu-temporary-2022
|
|
823
|
+
class: temporary
|
|
824
|
+
categories: [car, van, truck, bus, motorcycle, trailer]
|
|
825
|
+
period: { start: 2022 }
|
|
826
|
+
period_evidence: enacted-commencement
|
|
827
|
+
period_commencement: "2022-07-01"
|
|
828
|
+
matching: recall-only
|
|
829
|
+
format:
|
|
830
|
+
pattern: "I 99LL"
|
|
831
|
+
regex: '\AI ?\d{2} ?[A-Z]{2}\z'
|
|
832
|
+
pattern_note: >-
|
|
833
|
+
RECALL-ONLY AND HONESTLY UNCERTAIN. That an "I" betűjelű ideiglenes
|
|
834
|
+
rendszámtábla EXISTS is PRIMARY — § 1/C of 326/2011 names the Központi
|
|
835
|
+
Kormányablak as exclusively competent to issue it. Its SERIAL SHAPE is
|
|
836
|
+
not: the secondary renders it "I 99AA DD", where the trailing pair is
|
|
837
|
+
believed to be a validity marker rather than part of the serial, and this
|
|
838
|
+
file could not confirm that from the mellékletek. The regex covers the
|
|
839
|
+
serial part only and a match is a shape hit. This is a named verifier
|
|
840
|
+
target.
|
|
841
|
+
design:
|
|
842
|
+
background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
|
|
843
|
+
foreground: "#000000"
|
|
844
|
+
evidence_tier: secondary-wikipedia
|
|
845
|
+
region_encoding: none
|
|
846
|
+
sources:
|
|
847
|
+
- "https://njt.jog.gov.hu/jogszabaly/2011-326-20-22 # PRIMARY: § 1/C, the Központi Kormányablak's exclusive competence for the 'I' betűjelű ideiglenes rendszámtábla; §§ 63 and 63/A, 'Az ideiglenes rendszámtábla'. EXISTENCE + LETTER"
|
|
848
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Hungary # secondary-wikipedia: the general 'I' plate consolidated the former SP, M and Y categories from July 2022. SCOPE. Accessed 2026-08-02"
|
|
849
|
+
notes: >-
|
|
850
|
+
THE CONSOLIDATED TEMPORARY PLATE. The 2022 reform did more than lengthen
|
|
851
|
+
the serial: it collapsed several single-purpose categories — motorsport
|
|
852
|
+
(SP), agricultural (M) and slow-vehicle (Y) — into one "I" plate. This is
|
|
853
|
+
the only special series in the file whose EXISTENCE is primary-sourced
|
|
854
|
+
while its FORMAT is not, and the entry is written to make that asymmetry
|
|
855
|
+
visible rather than to hide it behind a confident regex.
|
|
856
|
+
|
|
857
|
+
- id: hu-temporary-1990
|
|
858
|
+
class: temporary
|
|
859
|
+
categories: [car, van, truck, bus, motorcycle, trailer]
|
|
860
|
+
period: { start: 1990, end: 2022 }
|
|
861
|
+
period_evidence: corroboration-only
|
|
862
|
+
period_note: >-
|
|
863
|
+
START is the 1990 system's start rather than a sourced first issue; END is
|
|
864
|
+
the 2022-07-01 commencement, after which the "I" plate consolidated these
|
|
865
|
+
categories. The individual letters' own dates were not sourced.
|
|
866
|
+
matching: recall-only
|
|
867
|
+
format:
|
|
868
|
+
pattern: "L99999"
|
|
869
|
+
regex: '\A[A-Z] ?\d{5}\z'
|
|
870
|
+
pattern_note: >-
|
|
871
|
+
RECALL-ONLY: a UNION over four distinct purposes that shared one shape —
|
|
872
|
+
one letter and five digits. The letters and their meanings, as reported:
|
|
873
|
+
E for a plate valid up to 180 days; P for trial running; Z for export,
|
|
874
|
+
valid 30 days; V for customs. A match tells a consumer the string has the
|
|
875
|
+
shape of a pre-2022 Hungarian temporary plate and nothing more — it
|
|
876
|
+
cannot say which of the four, and it will also match unrelated
|
|
877
|
+
single-letter series of the same shape.
|
|
878
|
+
letters:
|
|
879
|
+
evidence_tier: secondary-wikipedia
|
|
880
|
+
E: "temporary, maximum 180 days"
|
|
881
|
+
P: "trial running"
|
|
882
|
+
Z: "export, 30 days"
|
|
883
|
+
V: "customs"
|
|
884
|
+
design:
|
|
885
|
+
background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
|
|
886
|
+
foreground: "#000000"
|
|
887
|
+
evidence_tier: secondary-wikipedia
|
|
888
|
+
region_encoding: none
|
|
889
|
+
sources:
|
|
890
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Hungary # secondary-wikipedia: E, P, Z and V temporary plates, one letter plus five numbers, with their validity rules. FORMAT + SCOPE. Accessed 2026-08-02"
|
|
891
|
+
- "https://njt.jog.gov.hu/jogszabaly/2011-326-20-22 # PRIMARY: §§ 63 and 63/A, 'Az ideiglenes rendszámtábla' — the temporary-plate sections of the governing decree"
|
|
892
|
+
notes: >-
|
|
893
|
+
THE FOUR-LETTER TEMPORARY FAMILY of the 1990 system. Note the EXPORT letter
|
|
894
|
+
Z in particular: Hungary, unlike Austria (plates/at.yml records that Austria
|
|
895
|
+
has no export series at all and uses the green Überstellungskennzeichen
|
|
896
|
+
instead), does issue a dedicated export plate, and it is one of the four
|
|
897
|
+
here. Because all four share a shape, they are one recall-only series with
|
|
898
|
+
a documented letter key rather than four series with identical regexes.
|
|
899
|
+
|
|
900
|
+
# =========================================================================
|
|
901
|
+
# MOPEDS.
|
|
902
|
+
# =========================================================================
|
|
903
|
+
- id: hu-moped-2014
|
|
904
|
+
class: moped
|
|
905
|
+
categories: [moped]
|
|
906
|
+
period: { start: 2014 }
|
|
907
|
+
period_evidence: secondary-dated
|
|
908
|
+
period_note: "The secondary dates the moped plate requirement to 2014. Whether the 2022 reform changed its shape was not established — a recorded gap, and the reason the series is left open rather than closed at 2022."
|
|
909
|
+
matching: recall-only
|
|
910
|
+
format:
|
|
911
|
+
pattern: "S LLL-99"
|
|
912
|
+
regex: '\AS ?[A-Z]{3}-?\d{2}\z'
|
|
913
|
+
pattern_note: >-
|
|
914
|
+
RECALL-ONLY BECAUSE THE ARRANGEMENT IS INFERRED. The sourced fact is the
|
|
915
|
+
CHARACTER INVENTORY — an S prefix, three letters, two digits — not the
|
|
916
|
+
printed grouping. This file's pattern is its best reading of that
|
|
917
|
+
inventory and the regex accepts a range of separator arrangements around
|
|
918
|
+
it, so a match is a shape hit. Named as a verifier target.
|
|
919
|
+
design:
|
|
920
|
+
background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
|
|
921
|
+
foreground: "#000000"
|
|
922
|
+
evidence_tier: secondary-wikipedia
|
|
923
|
+
region_encoding: none
|
|
924
|
+
sources:
|
|
925
|
+
- "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Hungary # secondary-wikipedia: moped plates since 2014, S plus three letters plus two numbers. PERIOD + CHARACTER INVENTORY. Accessed 2026-08-02"
|
|
926
|
+
notes: >-
|
|
927
|
+
HUNGARY'S MOPED PLATE, mandatory from 2014 — late by European standards
|
|
928
|
+
(the Netherlands and Germany have run moped plates for decades) and worth
|
|
929
|
+
recording as such. The entry is deliberately `recall-only`: the file knows
|
|
930
|
+
what characters are on the plate and does not know how they are grouped,
|
|
931
|
+
and saying so is more useful to a consumer than a confident regex would be.
|
|
932
|
+
|
|
933
|
+
# ---------------------------------------------------------------------------
|
|
934
|
+
# Described but NOT modelled — every one of these is a real reported series
|
|
935
|
+
# that this pass could not bound well enough to author. Listed so the next pass
|
|
936
|
+
# starts from a map rather than from nothing (the plates/it.yml
|
|
937
|
+
# `unsourced_series` shape).
|
|
938
|
+
# ---------------------------------------------------------------------------
|
|
939
|
+
unmodelled_series:
|
|
940
|
+
evidence_tier: secondary-wikipedia
|
|
941
|
+
source: "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Hungary # every row below. Accessed 2026-08-02"
|
|
942
|
+
reason_not_modelled: >-
|
|
943
|
+
Each lacks at least one of: a start date this file could defend, a format
|
|
944
|
+
whose grouping is known, or a colour. PRD-PLATES §5.3 prefers the recorded
|
|
945
|
+
gap to the averaged guess, and a well-evidenced gap is a deliverable.
|
|
946
|
+
rows:
|
|
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." }
|
|
948
|
+
- { token: "R + letter + 4 digits", use: police, note: "RB reported as the common form; RR 00-49 law enforcement and RR 50-99 customs. Reported to have become RA under the 2022 system. No date at either end." }
|
|
949
|
+
- { token: "MA + 4 digits", use: ambulance, note: "reported introduced 2006; no format grouping and no colour sourced, and `ambulance` is not in _meta/classes.yml — it would land as `government`, which is a judgement this file declines to make unsourced." }
|
|
950
|
+
- { token: "BA", use: "prison service", note: "2022-system prefix; nothing else sourced." }
|
|
951
|
+
- { token: "NA", use: "national tax and customs administration", note: "2022-system prefix; nothing else sourced." }
|
|
952
|
+
- { token: "CK + 4 digits", use: "non-immunity embassy staff", note: "red on white, reported expired 2017; no start date sourced." }
|
|
953
|
+
- { token: "C + letter + 4 digits", use: "foreign residents", note: "reported last issued April 2009; no start date sourced." }
|
|
954
|
+
- { token: "X + letter + 4 digits", use: "rental vehicles", note: "reported discontinued July 2004. COLLIDES IN PREFIX with the X trailer block (hu-trailer-1990) but not in shape — a parse hazard worth recording." }
|
|
955
|
+
- { token: "SP + 2 digits + 2 digits", use: motorsport, note: "restricted use; replaced by the general I plate in July 2022. No start date sourced." }
|
|
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
|
+
- { 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
|
+
- { 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 (PRD-PLATES §2.3), not a data-file decision." }
|