vehicles 0.4.1 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (189) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop_todo.yml +164 -0
  3. data/CHANGELOG.md +321 -0
  4. data/README.md +88 -15
  5. data/data/PROVENANCE-vehicles.md +12 -0
  6. data/data/plates/PROVENANCE.md +10 -0
  7. data/data/plates/_decode/at-districts.yml +287 -0
  8. data/data/plates/_decode/ch-cantons.yml +110 -0
  9. data/data/plates/_decode/cn-issuing-offices.yml +463 -0
  10. data/data/plates/_decode/cn-provinces.yml +614 -0
  11. data/data/plates/_decode/cz-kraj.yml +159 -0
  12. data/data/plates/_decode/dk-serial-blocks.yml +327 -0
  13. data/data/plates/_decode/es-provinces.yml +116 -0
  14. data/data/plates/_decode/fr-departements.yml +191 -0
  15. data/data/plates/_decode/gb-age-identifiers.yml +170 -0
  16. data/data/plates/_decode/gb-memory-tags.yml +202 -0
  17. data/data/plates/_decode/gr-prefectures.yml +1408 -0
  18. data/data/plates/_decode/hr-cities.yml +315 -0
  19. data/data/plates/_decode/ie-counties.yml +227 -0
  20. data/data/plates/_decode/in-state-codes.yml +169 -0
  21. data/data/plates/_decode/is-districts-1938.yml +116 -0
  22. data/data/plates/_decode/it-provinces.yml +348 -0
  23. data/data/plates/_decode/jp-office-marks.yml +960 -0
  24. data/data/plates/_decode/jp-use-marks.yml +205 -0
  25. data/data/plates/_decode/kr-authority-marks.yml +146 -0
  26. data/data/plates/_decode/kr-use-syllables.yml +194 -0
  27. data/data/plates/_decode/lu-series-order.yml +638 -0
  28. data/data/plates/_decode/mx-entity-series.yml +380 -0
  29. data/data/plates/_decode/my-index-marks.yml +271 -0
  30. data/data/plates/_decode/no-counties-1913.yml +148 -0
  31. data/data/plates/_decode/no-districts.yml +901 -0
  32. data/data/plates/_decode/pl-powiats.yml +567 -0
  33. data/data/plates/_decode/pt-trailer-services.yml +96 -0
  34. data/data/plates/_decode/ro-counties.yml +213 -0
  35. data/data/plates/_decode/se-diplomatic.yml +220 -0
  36. data/data/plates/_decode/si-regions.yml +123 -0
  37. data/data/plates/_decode/sk-districts.yml +314 -0
  38. data/data/plates/_decode/th-registration-elements.yml +208 -0
  39. data/data/plates/_decode/ua-regions.yml +393 -0
  40. data/data/plates/_decode/za-licence-marks.yml +215 -0
  41. data/data/plates/_meta/classes.yml +26 -0
  42. data/data/plates/_meta/separators.yml +102 -0
  43. data/data/plates/ad.yml +961 -0
  44. data/data/plates/ar.yml +762 -0
  45. data/data/plates/at.yml +1424 -0
  46. data/data/plates/au-act.yml +472 -0
  47. data/data/plates/au-nsw.yml +282 -0
  48. data/data/plates/au-nt.yml +431 -0
  49. data/data/plates/au-qld.yml +272 -0
  50. data/data/plates/au-sa.yml +248 -0
  51. data/data/plates/au-tas.yml +302 -0
  52. data/data/plates/au-vic.yml +215 -0
  53. data/data/plates/au-wa.yml +309 -0
  54. data/data/plates/be.yml +1840 -0
  55. data/data/plates/br.yml +1152 -0
  56. data/data/plates/ca-ab.yml +430 -0
  57. data/data/plates/ca-bc.yml +697 -0
  58. data/data/plates/ca-mb.yml +499 -0
  59. data/data/plates/ca-nb.yml +537 -0
  60. data/data/plates/ca-nl.yml +743 -0
  61. data/data/plates/ca-ns.yml +808 -0
  62. data/data/plates/ca-nt.yml +610 -0
  63. data/data/plates/ca-nu.yml +280 -0
  64. data/data/plates/ca-on.yml +881 -0
  65. data/data/plates/ca-pe.yml +592 -0
  66. data/data/plates/ca-qc.yml +1036 -0
  67. data/data/plates/ca-sk.yml +256 -0
  68. data/data/plates/ca-yt.yml +656 -0
  69. data/data/plates/ch.yml +1273 -0
  70. data/data/plates/cn.yml +1431 -0
  71. data/data/plates/cy.yml +688 -0
  72. data/data/plates/cz.yml +1179 -0
  73. data/data/plates/de.yml +1107 -0
  74. data/data/plates/dk.yml +1647 -0
  75. data/data/plates/ee.yml +1275 -0
  76. data/data/plates/es.yml +888 -0
  77. data/data/plates/fi.yml +1271 -0
  78. data/data/plates/fr.yml +1265 -0
  79. data/data/plates/gb.yml +1188 -0
  80. data/data/plates/gr.yml +721 -0
  81. data/data/plates/hr.yml +860 -0
  82. data/data/plates/hu.yml +959 -0
  83. data/data/plates/ie.yml +775 -0
  84. data/data/plates/in.yml +1172 -0
  85. data/data/plates/is.yml +667 -0
  86. data/data/plates/it.yml +1317 -0
  87. data/data/plates/jp.yml +3650 -0
  88. data/data/plates/kr.yml +1375 -0
  89. data/data/plates/li.yml +1010 -0
  90. data/data/plates/lt.yml +879 -0
  91. data/data/plates/lu.yml +842 -0
  92. data/data/plates/lv.yml +924 -0
  93. data/data/plates/mc.yml +1024 -0
  94. data/data/plates/mt.yml +854 -0
  95. data/data/plates/mx.yml +1372 -0
  96. data/data/plates/my.yml +685 -0
  97. data/data/plates/nl.yml +1016 -0
  98. data/data/plates/no.yml +1018 -0
  99. data/data/plates/nz.yml +1699 -0
  100. data/data/plates/pl.yml +1296 -0
  101. data/data/plates/pt.yml +847 -0
  102. data/data/plates/ro.yml +785 -0
  103. data/data/plates/se.yml +1091 -0
  104. data/data/plates/si.yml +1105 -0
  105. data/data/plates/sk.yml +1439 -0
  106. data/data/plates/sm.yml +1119 -0
  107. data/data/plates/th.yml +1150 -0
  108. data/data/plates/ua.yml +1672 -0
  109. data/data/plates/us-ak.yml +763 -0
  110. data/data/plates/us-al.yml +457 -0
  111. data/data/plates/us-ar.yml +427 -0
  112. data/data/plates/us-as.yml +454 -0
  113. data/data/plates/us-az.yml +430 -0
  114. data/data/plates/us-ca.yml +892 -0
  115. data/data/plates/us-co.yml +452 -0
  116. data/data/plates/us-ct.yml +427 -0
  117. data/data/plates/us-dc.yml +614 -0
  118. data/data/plates/us-de.yml +551 -0
  119. data/data/plates/us-fl.yml +741 -0
  120. data/data/plates/us-ga.yml +644 -0
  121. data/data/plates/us-gu.yml +658 -0
  122. data/data/plates/us-hi.yml +585 -0
  123. data/data/plates/us-ia.yml +438 -0
  124. data/data/plates/us-id.yml +531 -0
  125. data/data/plates/us-il.yml +516 -0
  126. data/data/plates/us-in.yml +324 -0
  127. data/data/plates/us-ks.yml +351 -0
  128. data/data/plates/us-ky.yml +770 -0
  129. data/data/plates/us-la.yml +568 -0
  130. data/data/plates/us-ma.yml +379 -0
  131. data/data/plates/us-md.yml +536 -0
  132. data/data/plates/us-me.yml +445 -0
  133. data/data/plates/us-mi.yml +408 -0
  134. data/data/plates/us-mn.yml +411 -0
  135. data/data/plates/us-mo.yml +356 -0
  136. data/data/plates/us-mp.yml +402 -0
  137. data/data/plates/us-ms.yml +432 -0
  138. data/data/plates/us-mt.yml +619 -0
  139. data/data/plates/us-nc.yml +602 -0
  140. data/data/plates/us-nd.yml +419 -0
  141. data/data/plates/us-ne.yml +483 -0
  142. data/data/plates/us-nh.yml +394 -0
  143. data/data/plates/us-nj.yml +547 -0
  144. data/data/plates/us-nm.yml +574 -0
  145. data/data/plates/us-nv.yml +655 -0
  146. data/data/plates/us-ny.yml +592 -0
  147. data/data/plates/us-oh.yml +404 -0
  148. data/data/plates/us-ok.yml +513 -0
  149. data/data/plates/us-or.yml +392 -0
  150. data/data/plates/us-pa.yml +506 -0
  151. data/data/plates/us-pr.yml +507 -0
  152. data/data/plates/us-ri.yml +445 -0
  153. data/data/plates/us-sc.yml +605 -0
  154. data/data/plates/us-sd.yml +428 -0
  155. data/data/plates/us-tn.yml +471 -0
  156. data/data/plates/us-tx.yml +535 -0
  157. data/data/plates/us-ut.yml +384 -0
  158. data/data/plates/us-va.yml +567 -0
  159. data/data/plates/us-vi.yml +489 -0
  160. data/data/plates/us-vt.yml +458 -0
  161. data/data/plates/us-wa.yml +484 -0
  162. data/data/plates/us-wi.yml +509 -0
  163. data/data/plates/us-wv.yml +446 -0
  164. data/data/plates/us-wy.yml +523 -0
  165. data/data/plates/va.yml +604 -0
  166. data/data/plates/za.yml +1141 -0
  167. data/data/vehicles.json +160653 -105090
  168. data/lib/vehicles/configuration.rb +18 -2
  169. data/lib/vehicles/dataset.rb +73 -18
  170. data/lib/vehicles/fuzzy.rb +115 -0
  171. data/lib/vehicles/http.rb +48 -0
  172. data/lib/vehicles/make.rb +36 -6
  173. data/lib/vehicles/mcp_server.rb +5 -5
  174. data/lib/vehicles/model.rb +42 -6
  175. data/lib/vehicles/plates/jurisdiction.rb +32 -0
  176. data/lib/vehicles/plates/series.rb +291 -0
  177. data/lib/vehicles/plates/template_fill.rb +188 -0
  178. data/lib/vehicles/plates/templates.rb +162 -0
  179. data/lib/vehicles/plates.rb +122 -0
  180. data/lib/vehicles/providers/hosted_provider.rb +49 -58
  181. data/lib/vehicles/providers/local_provider.rb +4 -3
  182. data/lib/vehicles/validators/vehicle_make_validator.rb +3 -1
  183. data/lib/vehicles/validators/vehicle_model_validator.rb +1 -1
  184. data/lib/vehicles/version.rb +1 -1
  185. data/lib/vehicles.rb +53 -16
  186. data/rakelib/data_refresh.rake +109 -0
  187. data/rakelib/plates_refresh.rake +29 -0
  188. data/sig/vehicles.rbs +18 -0
  189. metadata +174 -2
@@ -0,0 +1,775 @@
1
+ # plates/ie.yml — Ireland (PRD-PLATES gate L1, wave 2).
2
+ #
3
+ # EVERY format, colour, dimension and period claim in this file is read off an
4
+ # instrument on irishstatutebook.ie, fetched 2026-08-02. Wikipedia was used as a
5
+ # FINDING AID to learn which S.I. numbers to chase and for nothing else; the two
6
+ # facts in this file that rest on it are tagged `secondary-wikipedia` at point of
7
+ # use and are both recorded as GAPS rather than as data (diplomatic CD marks,
8
+ # Defence Forces plates). No table, infobox or list here was taken from it.
9
+ #
10
+ # THE INSTRUMENT CHAIN, in the order it actually happened — and note that not
11
+ # one of these dates is the date of the instrument that carries it:
12
+ #
13
+ # 1921-01-01 ROADS ACT 1920 (c. 72) s. 6 — county councils register vehicles
14
+ # and assign "a mark indicating the registered number of the
15
+ # vehicle and the council with which the vehicle is registered".
16
+ # Its proviso fixes the handover date verbatim: "any number which
17
+ # has been assigned to a motor car under section two of the Motor
18
+ # Car Act, 1903, and which is the registered number of that car on
19
+ # the first day of January, nineteen hundred and twenty-one, shall
20
+ # be treated as having been assigned to the car under the
21
+ # provisions of this section and no new number shall be assigned".
22
+ # 1958-02-01 S.I. No. 14 of 1958 — the consolidated index-mark list (IC, ID,
23
+ # IE, IF, IK, Z, ZA ...), amended fourteen times to 1986.
24
+ # 1983-02-01 S.I. No. 311 of 1982 — the pre-1987 plate spec (Third Schedule):
25
+ # black ground with white/silver/light grey characters, or the
26
+ # reflective alternative with a WHITE front and a RED rear.
27
+ # 1987-01-01 S.I. No. 441 of 1986, art. 1(3): "These Regulations shall come
28
+ # into operation on the 1st day of January, 1987." THE YEAR-COUNTY
29
+ # SYSTEM IS BORN — art. 25(3) of the 1982 Regulations is
30
+ # substituted to add "the third and fourth numerals of the year in
31
+ # which the vehicle is first registered", and a new Third Schedule
32
+ # Part II gives the plate: "87 D 99999", "87 CW 9999", white
33
+ # reflective, black characters, NO EU flag, NO placename, and the
34
+ # groups separated by SPACE, not by a hyphen.
35
+ # S.I. No. 445 of 1986 art. 3 does the other half: the old marks
36
+ # "shall not be assigned to vehicles first registered on or after
37
+ # the 1st day of January, 1987" and the new ones shall.
38
+ # 1991-01-01 S.I. No. 287 of 1990 — Third Schedule Part III, "in respect of
39
+ # vehicles registered on or after the 1st day of January, 1991",
40
+ # and Part II is simultaneously capped "but not later than the
41
+ # 31st day of December, 1990". THE MODERN IRISH PLATE ARRIVES
42
+ # WHOLE: 520 x 110, black border, the flag of the European
43
+ # Communities with IRL, the Irish-language placename above the
44
+ # mark, and the HYPHEN as the prescribed separator.
45
+ # 1993-01-01 S.I. No. 318 of 1992 (Reg. 3 commences Reg. 9) — the Revenue
46
+ # Commissioners take the register over from the county councils
47
+ # under Finance Act 1992 s. 131. Reg. 9(1) re-enacts the mark and
48
+ # the First Schedule re-enacts the plate. FORMAT UNCHANGED — this
49
+ # is an administrative transfer, not a new series, and it is the
50
+ # single most tempting wrong series boundary in the Irish record.
51
+ # S.I. No. 409 of 1992 (same date) prescribes the trade licence.
52
+ # 1999-12-22 S.I. No. 432 of 1999 substitutes the First Schedule: character
53
+ # width becomes a RANGE (36-50 mm, was fixed 36) and the hyphen a
54
+ # range (13-22 mm, was fixed 22). Its own explanatory note gives
55
+ # the reason: "to allow additional characters to be displayed ...
56
+ # necessary to cater for increases in the number of car
57
+ # registrations". A design amendment, NOT a new series.
58
+ # 2013-01-01 S.I. No. 542 of 2012, art. 2: "These Regulations come into
59
+ # operation on 1 January 2013." THE HALF-YEAR REFORM — new Reg.
60
+ # 9(1A) inserts "(b)(i) the numeral '1' for vehicles first brought
61
+ # into use during the period 1 January to 30 June in any year, or
62
+ # (ii) the numeral '2' for vehicles first brought into use during
63
+ # the period 1 July to 31 December". 131 and 132 are law, dated to
64
+ # the day, from a Revenue instrument sealed 20 December 2012.
65
+ # 2025-07-01 S.I. No. 268 of 2025, art. 2 — the optional green stripe for
66
+ # zero-tailpipe-CO2 vehicles, plus a further relaxation of the
67
+ # character metrics (height 65-70, stroke 9-10, width 33-50).
68
+ #
69
+ # WHAT THE HALF-YEAR REFORM ACTUALLY KEYS ON, because everyone gets this wrong:
70
+ # NOT the date of registration. Reg. 9(1) as amended applies to a vehicle "first
71
+ # brought into use on or before 31 December 2012"; Reg. 9(1A) to one "first
72
+ # brought into use on or after 1 January 2013". So the TWO-DIGIT SERIES IS STILL
73
+ # BEING ISSUED TODAY — an imported car built in 2011 and registered in Ireland
74
+ # in 2026 gets an 11- mark. Revenue states it in terms with a worked example:
75
+ # "A car imported in 2017 that was first registered in the UK in 2011 will be
76
+ # registered as 11-xx-xxxx." ie-standard-1991 therefore has NO end date, and it
77
+ # overlaps ie-standard-2013 permanently and legally.
78
+ #
79
+ # COLOUR POLICY, the Irish variant of the Spanish gamut problem: IRELAND
80
+ # PRESCRIBES NO COLORIMETRY AT ALL. There is no CIE box, no RAL, no luminance
81
+ # factor — the instruments say "white reflex reflective material", "black
82
+ # characters", "a colour shade generally known as royal blue", "twelve gold
83
+ # stars", and that is the whole of it. Every hex below is therefore
84
+ # `hex_basis: observed`. The ONE exception is the 2025 green stripe, and it is a
85
+ # NAMED INK rather than a hex: "shall be colour Pantone 7481c or a colour match
86
+ # that is as close as possible to this colour" — carried as `color_spec`, with
87
+ # the hex still marked observed because a Pantone-to-sRGB conversion is a
88
+ # rendering decision, not a sourced value.
89
+ #
90
+ # FOUR SOURCED NEGATIVES. Searched for in the 1982, 1986, 1990, 1992, 1999, 2012
91
+ # and 2025 instruments and NOT FOUND, so recorded as absent rather than invented:
92
+ # * NO TRAILER SERIES. Reg. 9(8): "Where one or more trailers of any kind are
93
+ # attached to a vehicle, a duplicate of the identification mark of the
94
+ # vehicle shall be exhibited on the back of the rearmost trailer." An Irish
95
+ # trailer carries the towing vehicle's mark and has no mark of its own.
96
+ # * NO MOTORCYCLE SERIES. A motorcycle carries the ordinary mark; Reg. 9(7)
97
+ # only relieves it of the front plate ("in the case of a vehicle which has
98
+ # only one front wheel, on the back of the vehicle"). Note the Irish
99
+ # drafting trap: "bicycle" in these regulations MEANS a motorcycle —
100
+ # S.I. 357/1991 defines it as "a mechanically propelled bicycle (including
101
+ # a motor scooter ...)", and S.I. 268/2025 arts. 5(o) and 5(q)(i) finally
102
+ # substitute the word "motorcycle" for "bicycle" in First Schedule paras. 18
103
+ # and 19 — a thirty-three-year-old drafting artefact corrected in 2025.
104
+ # * NO PERSONALISED SERIES. Ireland sells RESERVATION, not vanity: s. 131(5A)
105
+ # Finance Act 1992, EUR 1,000 (S.I. 396/2008 raised it from EUR 315), and
106
+ # Revenue states the constraint — the number "must be in the normal
107
+ # registration number format", must match the year and half-year, and must
108
+ # match where the applicant resides. There is no owner-chosen string.
109
+ # * NO SEPARATE TAXI, EXPORT, SEASONAL, ELECTRIC, MOPED OR AGRICULTURAL
110
+ # SERIES. The 2025 green stripe is a variant of the standard plate, not a
111
+ # series: same mark, same format, optional, retrofittable.
112
+ jurisdiction: ie
113
+ authority:
114
+ name: Revenue Commissioners — Vehicle Registration and Taxation Regulations, 1992 (S.I. No. 318 of 1992), made under s. 141 Finance Act 1992
115
+ url: "https://www.irishstatutebook.ie/eli/1992/si/318/made/en/print"
116
+ binding: vehicle
117
+ binding_note: >-
118
+ Reg. 9(4), verbatim: "The identification mark of a vehicle shall remain
119
+ assigned to the vehicle and no other such marks shall be assigned to the
120
+ vehicle save in such circumstances as may be determined by the Commissioners
121
+ or where the owner of the vehicle requests that the identification mark
122
+ assigned to a vehicle which reaches 30 years of age be replaced by a mark in
123
+ the ZV series." Vehicle-keyed consumers may join on it: the mark does not
124
+ follow the owner, and the ONE statutory route to a different mark is the
125
+ thirty-year ZV swap. The trade licence (ie-trade-1993) is the exception and
126
+ carries its own `binding: business`.
127
+
128
+ instrument:
129
+ enabling_statute: "Finance Act 1992 (No. 9 of 1992), Chapter IV of Part II — s. 131 (registration and assignment of identification marks), s. 131(5A) (reservation), s. 135 (temporary exemption), s. 136 (authorised persons), s. 141 (regulation-making power)"
130
+ predecessor_statute: "Roads Act 1920 (c. 72) ss. 5, 6 and 12 — the county-council registration regime the Revenue regime replaced on 1 January 1993"
131
+ source: "https://www.irishstatutebook.ie/eli/1920/act/72/enacted/en/print # Roads Act 1920 s. 6 'Registration and identification marks', including the Motor Car Act 1903 carry-over proviso. Accessed 2026-08-02"
132
+
133
+ # ---------------------------------------------------------------------------
134
+ # Jurisdiction-wide facts, cited once and referenced per series.
135
+ # ---------------------------------------------------------------------------
136
+ common:
137
+ colour_basis: >-
138
+ NO COLORIMETRIC SPECIFICATION EXISTS IN IRISH LAW. The First Schedule to
139
+ S.I. 318/1992 (as substituted 1999, amended 2012 and 2025) names colours in
140
+ words only: para. 9 "black characters ... exhibited on white reflex
141
+ reflective material"; para. 10 "twelve gold stars against a blue background
142
+ (of a colour shade generally known as royal blue)"; para. 11 "the letters
143
+ IRL ... in white letters". Contrast Spain's Anexo XVIII Cuadro 3 and
144
+ Austria's Anlage 5e Tabelle 2, both of which fix a CIE quadrangle. Every hex
145
+ in this file is `hex_basis: observed` and none of them is a sourced claim.
146
+ colour_spec_exception:
147
+ green_stripe: "Pantone 7481 C"
148
+ text: >-
149
+ First Schedule para. 12A, inserted by S.I. 268/2025, verbatim: "The green
150
+ stripe for an eligible vehicle shall be colour Pantone 7481c or a colour
151
+ match that is as close as possible to this colour and shall be formed of
152
+ reflex reflective material." The only named colour standard in the Irish
153
+ plate law, and it is an ink reference, not a coordinate.
154
+ source: "https://www.irishstatutebook.ie/eli/2025/si/268/made/en/print # art. 5(d) inserting First Schedule para. 12A. Accessed 2026-08-02"
155
+ separator_finding: >-
156
+ THE HYPHEN IS STATUTORY FROM 1991 AND WAS NOT BEFORE. Third Schedule Part II
157
+ (1987-1990) prescribes only a GAP — para. 7(c), verbatim: "the space between
158
+ the index mark and adjoining figures shall be three times the space between
159
+ the nearest part of adjoining figures." Third Schedule Part III (from 1991)
160
+ and the First Schedule that re-enacts it prescribe the glyph and its size —
161
+ para. 16(d), verbatim: "the index mark shall be separated from adjoining
162
+ figures on each side of the index mark by a hyphen with a stroke width of 10
163
+ millimetres which shall extend horizontally for a distance of not less than
164
+ 13 millimetres and not more than 22 millimetres." So `ie-standard-1987`
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 (PRD-PLATES §2.6
167
+ rule 2).
168
+ no_nought_rule: >-
169
+ First Schedule para. 3(b), verbatim: "The identification mark shall not
170
+ incorporate the figure nought unless such figure forms part of the
171
+ identification mark assigned to the vehicle by the Commissioners." This is
172
+ the Irish no-leading-zero rule: the sequence number is printed as assigned,
173
+ never padded, so "121-D-7" is a whole registration and "121-D-0007" is not
174
+ one. It is carried in `regex_strict`, never in `regex`, because the
175
+ round-trip (PRD-PLATES §2.7) forbids `regex` from carrying charset rules.
176
+ NOTE THE PERIOD: this paragraph is in Third Schedule Part III (1991) and the
177
+ First Schedule (1992 onward). Part II (1987-1990) has no equivalent, so
178
+ ie-standard-1987 makes no leading-zero claim.
179
+ display_rules:
180
+ two_plates: "Reg. 9(7): front and back, 'in a vertical or nearly vertical position', except a vehicle 'which has only one front wheel' which carries the rear plate only"
181
+ trailers: "Reg. 9(8): the rearmost trailer displays a DUPLICATE of the towing vehicle's mark — Ireland issues no trailer registration"
182
+ obstruction: "Reg. 9(9): 'Figures, letters, designs, ornamentation's, fittings or structures shall not be placed on a vehicle or trailer in such a position as to render more difficult the reading or distinguishing of the identification mark'"
183
+ display_deadline: "Reg. 9(5): where the declaration is made by a person who is not an authorised person, the mark must be displayed 'as on and from a day not more than 3 working days after the registration of the vehicle'"
184
+ source: "https://www.irishstatutebook.ie/eli/1992/si/318/made/en/print # Reg. 9(5)-(9). Accessed 2026-08-02"
185
+ large_psv_exception: >-
186
+ First Schedule para. 22 exempts a large public service vehicle whose mark is
187
+ "illuminated by transparency or translucency": its characters "shall appear
188
+ white when the mark is so illuminated and shall appear at all other times
189
+ white against a black background". A white-on-black Irish bus plate is
190
+ lawful and is the ONLY inverted standard-series plate in Irish law.
191
+ tolerance_rule: >-
192
+ First Schedule para. 21: a plate is not in contravention by reason only of a
193
+ dimension error of up to 1 mm where the prescribed dimension is 70 mm or
194
+ less, or up to 3 mm where it is greater. A renderer should treat every
195
+ millimetre in this file as a nominal with that tolerance.
196
+ penalty: "Finance Act 1992 s. 139 — summary conviction; Revenue states the maximum as EUR 5,000 for a non-conforming plate"
197
+ not_authored:
198
+ note: >-
199
+ Two Irish plate types are REPORTED to exist and are NOT authored as series
200
+ here, because no instrument prescribing either was located and the only
201
+ description available is secondary. They are recorded so a later pass
202
+ starts from a named gap rather than from nothing, and each carries its
203
+ evidence grade at point of use.
204
+ diplomatic:
205
+ status: not-established
206
+ evidence: secondary-wikipedia
207
+ reported: "a plate in the ordinary format with a small 'CD' between the index mark and the sequence number"
208
+ searched: >-
209
+ Not in S.I. 318/1992 (First Schedule read in full, paras. 1-23), not in
210
+ S.I. 287/1990 Part III, not in S.I. 441/1986 Part II, and not in any
211
+ Vehicle Registration and Taxation amendment 1993-2025 found by the
212
+ title-level sweep. Reg. 9(1) admits no letter group other than the index
213
+ mark, so a CD element has no visible statutory basis in the instruments
214
+ read.
215
+ source: "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Ireland # read as a locator 2026-08-02; the article names no instrument for this claim, and none was found"
216
+ defence_forces:
217
+ status: not-established
218
+ evidence: secondary-wikipedia
219
+ reported: "silver characters on a black ground, without the Irish-language placename"
220
+ searched: >-
221
+ S.I. 311/1982 art. 25(2) does contemplate military vehicles — "On the
222
+ first licensing of a military vehicle the appropriate licensing
223
+ authority shall, on receipt of an application from a duly authorised
224
+ officer of the Department of Defence, assign to it an identification
225
+ mark complying with the provisions of sub-article (3)" — but sub-article
226
+ (3) is the ORDINARY composition, so the 1982 regime gave military
227
+ vehicles ordinary marks. No instrument prescribing a distinct Defence
228
+ Forces format or design was located.
229
+ source: "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Ireland # read as a locator 2026-08-02"
230
+
231
+ series:
232
+
233
+ # =========================================================================
234
+ # THE CURRENT SERIES — three-digit year with the half-year digit.
235
+ # =========================================================================
236
+ - id: ie-standard-2013
237
+ class: standard
238
+ categories: [car, van, truck, bus, motorcycle]
239
+ period: { start: 2013 }
240
+ period_evidence: instrument-in-force
241
+ matching: strict
242
+ format:
243
+ pattern: "999-LL-9999"
244
+ regex: '\A\d{3}-[A-Z]{1,2}-\d{1,6}\z'
245
+ regex_strict: '\A\d{2}[12]-(?:CE|CN|CW|DL|KE|KK|KY|LD|LH|LK|LM|LS|MH|MN|MO|OY|RN|SO|TN|TS|WD|WH|WW|WX|C|D|G|L|T|W)-[1-9]\d{0,5}\z'
246
+ composition:
247
+ - "Reg. 9(1A)(a) — 'the third and fourth numerals of the year in which the vehicle is first brought into use'"
248
+ - "Reg. 9(1A)(b) — the half-year numeral: '1' for 1 January to 30 June, '2' for 1 July to 31 December"
249
+ - "Reg. 9(1A)(c) — 'an index mark, as provided for in the table to paragraph 4 of the First Schedule ... corresponding to the functional area of the licensing authority in which the owner at the time of registration ordinarily resides'"
250
+ - "Reg. 9(1A)(d) — 'a number which when combined with the appropriate numerals and mark aforesaid produces a unique combination'"
251
+ pattern_note: >-
252
+ The four digits in the pattern's last group are REPRESENTATIVE ONLY. No
253
+ instrument fixes the width of the sequence number: Reg. 9(3) says only
254
+ that numbers "shall be assigned sequentially to each index mark, but the
255
+ Commissioners may omit any numbers from a sequence". The 1987 diagrams
256
+ drew five digits behind a one-letter mark ("87 D 99999") and four behind
257
+ a two-letter mark ("87 CW 9999"), which is a drafting illustration and
258
+ not a limit. `regex` bounds the group at six digits as an outer bound
259
+ and makes no claim inside it.
260
+ progression: >-
261
+ Sequential per index mark PER HALF-YEAR, restarting at 1 each time the
262
+ year group changes — which is exactly why the year group is a hard age
263
+ signal and Ireland is the easiest plate in Europe to date. The sequence
264
+ also makes the number a rough within-county volume signal, since
265
+ "121-D-90000" and "121-LD-300" are the same six months in two counties
266
+ of very different size.
267
+ charset:
268
+ letters: "index marks only; see the decode table"
269
+ notes: "no leading zero on the sequence number (First Schedule para. 3(b) — see common.no_nought_rule); the index-mark group is a closed enumerated list, not a free alphabet"
270
+ separator_note: "hyphen, prescribed with its stroke width and length by First Schedule para. 16(d) — see common.separator_finding"
271
+ design:
272
+ plate: { w: 520, h: 110, unit: mm, note: "Diagram No. 3, First Schedule para. 2A + para. 16(a)" }
273
+ plate_variants:
274
+ - { w: 340, h: 220, unit: mm, note: "Diagram No. 4 — the two-line plate, para. 17(a)" }
275
+ - { note: "para. 18: on a motorcycle, an invalid carriage or a pedestrian-controlled vehicle every prescribed dimension may be HALVED and the plate need not be rectangular" }
276
+ - { note: "para. 20: where the vehicle has an indented plate recess too small for either prescribed size, the dimensions may be reduced to comply 'as nearly as possible'" }
277
+ characters: { h: [65, 70], stroke: [9, 10], w: [33, 50], gap_min: 8, unit: mm, note: "the 2025 ranges (para. 14 as substituted by S.I. 268/2025). Before 2025-07-01 the height was exactly 70 and the stroke exactly 10, with width 36-50 from 1999 and exactly 36 from 1990." }
278
+ border: { color: "#000000", stroke: 5, unit: mm, note: "para. 5: 'The periphery of the plate shall be marked all around by a black border having a stroke width of 5 millimetres' — a black KEYLINE inside the plate edge, which is a distinctively Irish feature and is statutory, not decorative" }
279
+ background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
280
+ foreground: "#000000"
281
+ band:
282
+ side: left
283
+ color: "#003399"
284
+ hex_basis: observed
285
+ content: eu-stars+IRL
286
+ w: [40, 45]
287
+ unit: mm
288
+ note: >-
289
+ para. 10-12: twelve gold stars whose centrepoints lie on a circle of
290
+ radius 15 mm with 4 mm star apexes, "against a blue background (of a
291
+ colour shade generally known as royal blue)"; IRL below them in white,
292
+ 20 mm high, 4 mm stroke, R and L each 12 mm wide; all of it
293
+ retroreflective. The band width was exactly 40 mm until S.I. 268/2025
294
+ made it 40-45.
295
+ placename:
296
+ content: irish-language-county-name
297
+ position: above-the-mark
298
+ h_min: 12
299
+ stroke_min: 3
300
+ unit: mm
301
+ note: >-
302
+ para. 4 and para. 13. THE PLACENAME IS PART OF THE PLATE, not a
303
+ sticker: "The plate shall exhibit the placename set out in the Table to
304
+ this paragraph opposite the mention in the Table of the index mark on
305
+ the plate". It is in IRISH ONLY, it is black on the white ground, and
306
+ its accents are dimensioned ("Where an accented vowel occurs in the
307
+ placename the length accent character shall have a height of 2
308
+ millimetres above the letter"). Ireland is the only EU jurisdiction in
309
+ this dataset that prints the region NAME rather than only its code.
310
+ no_other_marks: "para. 3(a): the plate 'shall not contain any words, letters, numbers, emblems or other marks of any kind other than those required under this Schedule' — which is why Ireland has no emblem slot and no dealer branding on plates"
311
+ emblem: { present: false }
312
+ rear_differs: false
313
+ construction: "para. 6-8: metal plates carry EMBOSSED characters raised above the surface and forming part of the plate; plastic plates are transparent, at least 2.5 mm thick, with the mark adhered to the REAR so it reads through the front"
314
+ region_encoding: "ie-counties.yml"
315
+ variants:
316
+ - class: electric
317
+ design:
318
+ stripe: { side: right, color: "#009639", hex_basis: observed, color_spec: "Pantone 7481 C", w: 30, unit: mm, finish: retroreflective }
319
+ note: >-
320
+ THE GREEN FLASH, from 1 July 2025 (S.I. 268/2025 art. 2). A sub-entry
321
+ and not a series, on the PRD-PLATES §2.3 test: same format, same
322
+ period, same mark — only the design differs, and only optionally. New
323
+ Reg. 9(10): "an eligible vehicle MAY display a plate which contains a
324
+ stripe which is green in colour", where "eligible vehicle" is defined
325
+ as one "which emits no CO2 tailpipe emissions". On the long plate the
326
+ stripe is 30 mm at the RIGHT-hand edge (para. 16(ba)); on the two-line
327
+ plate it is 45 mm at the LEFT, running from the bottom of the EU flag
328
+ to the bottom border (para. 17(ba)) — the two layouts put it on
329
+ opposite sides, which a renderer must not average. Revenue confirms it
330
+ is optional and retrofittable to an existing EV.
331
+ sources:
332
+ - "https://www.irishstatutebook.ie/eli/2025/si/268/made/en/print # arts. 2, 4(a)(ii), 4(c), 5(c), 5(d), 5(h), 5(l): in operation 01-07-2025; 'eligible vehicle'; Reg. 9(10) permissive 'may'; Diagrams 5 and 6; Pantone 7481c; the 30 mm right stripe and the 45 mm left stripe. Accessed 2026-08-02"
333
+ - "https://www.revenue.ie/en/vrt/vehicle-registration-tax/registration-plates-and-format-standards.aspx # Revenue: 'Since 1 July 2025, all vehicles that do not emit CO2 tailpipe emissions are eligible for a green \"flash\" registration plate ... not mandatory ... you can retrofit'. Accessed 2026-08-02"
334
+ sources:
335
+ - "https://www.irishstatutebook.ie/eli/2012/si/542/made/en/print # S.I. No. 542 of 2012: art. 2 'These Regulations come into operation on 1 January 2013'; art. 4(b) inserting Reg. 9(1A) with the half-year numerals verbatim; art. 5(b) inserting First Schedule para. 2A with Diagrams 3 and 4; sealed 20-12-2012; notice published in Iris Oifigiúil of 01-01-2013. Accessed 2026-08-02"
336
+ - "https://www.irishstatutebook.ie/eli/1992/si/318/made/en/print # S.I. No. 318 of 1992: Reg. 9(3) sequential assignment; First Schedule paras. 3-22 (the plate spec this series inherits); para. 4 Table (index marks and placenames). Accessed 2026-08-02"
337
+ - "https://www.irishstatutebook.ie/eli/1999/si/432/made/en/print # S.I. No. 432 of 1999: substitutes the First Schedule — character width range 36-50 mm, hyphen length range 13-22 mm. Accessed 2026-08-02"
338
+ - "https://www.irishstatutebook.ie/eli/2025/si/268/made/en/print # S.I. No. 268 of 2025: art. 5(e) substituting para. 14 with the 65-70 mm / 9-10 mm / 33-50 mm ranges; art. 5(g) the 40-45 mm band. Accessed 2026-08-02"
339
+ - "https://www.revenue.ie/en/vrt/vehicle-registration-tax/registration-plates-and-format-standards.aspx # Revenue (the issuing authority): 'The format YY[1 or 2] - County - sequential number will apply to all vehicles registered since 1 January 2013'; the plate must carry black on white reflective, the Irish county name at the top, and the EU flag with IRL on the left. Accessed 2026-08-02"
340
+ notes: >-
341
+ THE CURRENT IRISH SERIES, and the half-year reform is the best-dated plate
342
+ change in this dataset: S.I. 542/2012 was sealed on 20 December 2012 and
343
+ commences on 1 January 2013 by its own article 2. The commonly repeated
344
+ motive — that 131 exists to avoid an unlucky "13" and to move sales into
345
+ the second half of the year — is NOT in the instrument, which as usual
346
+ states no reason at all; it is recorded here as commentary, not as
347
+ sourced fact. WHAT IS IN THE INSTRUMENT is the thing secondary sources
348
+ usually get wrong: the half-year digit follows FIRST BROUGHT INTO USE, not
349
+ the date of Irish registration, so this series does not supersede
350
+ ie-standard-1991 — the two run in parallel for as long as pre-2013 vehicles
351
+ are still being imported. THE ONE OPEN QUESTION IS THE LETTER T: Tipperary
352
+ merged its two ridings in 2014 and the single mark T is prescribed by the
353
+ TRADE-LICENCE table (S.I. 328/2013, S.I. 243/2014), but a TITLE-LEVEL
354
+ sweep of the Irish Statute Book's annual S.I. indexes for every year from
355
+ 1990 to 2025, followed by reading each of the eleven instruments so found
356
+ whose title touched vehicle registration, produced NO amendment adding T
357
+ (or merging LK into L, or WD into W) in the Table to paragraph 4 of the
358
+ First Schedule, which is the table Reg. 9(1A)(c) actually points at. The
359
+ sweep was by TITLE, not by full text, so an amendment hidden in a
360
+ differently-named instrument would have been missed — the negative is
361
+ strong but not exhaustive, and it is graded that way. T is
362
+ carried in `regex_strict` because refusing a plate that is certainly issued
363
+ would be the worse error, and the evidential shortfall is recorded here and
364
+ per-row in the decode table rather than papered over.
365
+
366
+ # =========================================================================
367
+ # THE TWO-DIGIT YEAR SERIES — 1991 onward, STILL ISSUED.
368
+ # =========================================================================
369
+ - id: ie-standard-1991
370
+ class: standard
371
+ categories: [car, van, truck, bus, motorcycle]
372
+ period: { start: 1991 }
373
+ period_evidence: instrument-in-force
374
+ matching: strict
375
+ format:
376
+ pattern: "99-LL-9999"
377
+ regex: '\A\d{2}-[A-Z]{1,2}-\d{1,6}\z'
378
+ regex_strict: '\A\d{2}-(?:CE|CN|CW|DL|KE|KK|KY|LD|LH|LK|LM|LS|MH|MN|MO|OY|RN|SO|TN|TS|WD|WH|WW|WX|C|D|G|L|T|W)-[1-9]\d{0,5}\z'
379
+ composition:
380
+ - "1991-1992: art. 25(3) of S.I. 311/1982 as substituted by S.I. 441/1986 — registration number, index mark of the licensing authority, and 'the third and fourth numerals of the year in which the vehicle is first registered'"
381
+ - "1993 onward: Reg. 9(1) of S.I. 318/1992 — 'the third and fourth numerals of the year in which the vehicle is first brought into use', the index mark of the authority where the owner ordinarily resides, and a unique number"
382
+ pattern_note: "sequence-number width is representative only — see ie-standard-2013.format.pattern_note, which applies verbatim"
383
+ progression: "sequential per index mark per YEAR (not per half-year, which arrives only in 2013); Reg. 9(3) permits the Commissioners to omit numbers from a sequence"
384
+ separator_note: "hyphen, prescribed from 1991 by Third Schedule Part III para. 17(d) and re-enacted as First Schedule para. 16(d) — see common.separator_finding"
385
+ design:
386
+ plate: { w: 520, h: 110, unit: mm, note: "Diagram No. 9 (1991-1992) / Diagram No. 1 (1993 onward)" }
387
+ plate_variants:
388
+ - { w: 340, h: 220, unit: mm, note: "Diagram No. 10 / Diagram No. 2 — the two-line plate" }
389
+ characters: { h: 70, stroke: 10, w: [36, 50], gap_min: 8, unit: mm, note: "width was exactly 36 mm from 1991 (S.I. 287/1990 Part III para. 15) and became the range 36-50 on 22-12-1999 (S.I. 432/1999). Height 70 and stroke 10 were exact until S.I. 268/2025." }
390
+ border: { color: "#000000", stroke: 5, unit: mm }
391
+ background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
392
+ foreground: "#000000"
393
+ band: { side: left, color: "#003399", hex_basis: observed, content: eu-stars+IRL, w: 40, unit: mm, note: "identical wording to the current series; introduced by S.I. 287/1990 Part III paras. 11-13, so the EU flag on an Irish plate is a 1991 fact and not a 1993 one" }
394
+ placename: { content: irish-language-county-name, position: above-the-mark, h_min: 12, stroke_min: 3, unit: mm }
395
+ emblem: { present: false }
396
+ rear_differs: false
397
+ region_encoding: "ie-counties.yml"
398
+ sources:
399
+ - "https://www.irishstatutebook.ie/eli/1990/si/287/made/en/print # S.I. No. 287 of 1990: art. 3(d) adds Third Schedule PART III, 'Provisions to be complied with in respect of vehicles registered on or after the 1st day of January, 1991' — the EU flag, IRL, the Irish placename, the 520x110 and 340x220 plates, the black border, and the HYPHEN; art. 3(b) caps Part II at 31-12-1990. Sealed 05-12-1990. Accessed 2026-08-02"
400
+ - "https://www.irishstatutebook.ie/eli/1992/si/318/made/en/print # S.I. No. 318 of 1992: Reg. 3 puts Reg. 9 into operation on 01-01-1993; Reg. 9(1) re-enacts the two-digit mark; the First Schedule re-enacts the Part III plate almost word for word. Accessed 2026-08-02"
401
+ - "https://www.irishstatutebook.ie/eli/2012/si/542/made/en/print # S.I. No. 542 of 2012 art. 4(a): confines Reg. 9(1) to a vehicle 'first brought into use on or before 31 December 2012 and' entered in the register — the provision that keeps this series ALIVE rather than closing it. Accessed 2026-08-02"
402
+ - "https://www.revenue.ie/en/vrt/vehicle-registration-tax/registration-plates-and-format-standards.aspx # Revenue's worked example: 'A car imported in 2017 that was first registered in the UK in 2011 will be registered as 11-xx-xxxx.' Accessed 2026-08-02"
403
+ notes: >-
404
+ THE MODERN IRISH PLATE AS IT FIRST APPEARED, and an open-ended series that
405
+ a naive reading would have closed in 2012. Two boundary facts are worth
406
+ stating because both are routinely misdated. FIRST, the design boundary is
407
+ 1 JANUARY 1991, not 1993: S.I. 287/1990 introduced the EU flag, the IRL
408
+ sign, the Irish placename and the hyphen while vehicles were still
409
+ registered by county councils under the Roads Act 1920, and the Revenue
410
+ takeover on 1 January 1993 changed the registering authority and not one
411
+ character of the plate. Modelling 1993 as a series start would record an
412
+ administrative transfer as a design change. SECOND, this series has no end:
413
+ S.I. 542/2012 did not close it, it CONFINED it to vehicles first brought
414
+ into use on or before 31 December 2012 — and those vehicles are still being
415
+ imported and registered, so two-digit marks are still being issued in 2026.
416
+ The overlap with ie-standard-2013 is permanent, legal and stated.
417
+ TRANSITION DETAIL: S.I. 287/1990 art. 3(c) also let 1987-1990 vehicles
418
+ adopt the new plate voluntarily ("The provisions of this Part of this
419
+ Schedule shall be deemed to be complied with if the identification mark
420
+ exhibited on the vehicle complies with the provisions of Part III"), which
421
+ is why an 88-D plate seen today usually carries the EU band it was never
422
+ issued with.
423
+
424
+ # =========================================================================
425
+ # THE ORIGINAL 1987 PLATE — no EU band, no placename, no hyphen.
426
+ # =========================================================================
427
+ - id: ie-standard-1987
428
+ class: standard
429
+ categories: [car, van, truck, bus, motorcycle]
430
+ period: { start: 1987, end: 1990 }
431
+ period_evidence: instrument-dated-both-ends
432
+ matching: strict
433
+ format:
434
+ pattern: "99 LL 9999"
435
+ regex: '\A\d{2} [A-Z]{1,2} \d{1,6}\z'
436
+ regex_strict: '\A\d{2} (?:CE|CN|CW|DL|KE|KK|KY|LD|LH|LK|LM|LS|MH|MN|MO|OY|RN|SO|TN|TS|WD|WH|WW|WX|C|D|G|L|W) \d{1,6}\z'
437
+ pattern_note: >-
438
+ The 1986 instrument's own diagrams are the evidence for the shape and
439
+ they are printed in the text: "87 D 99999" (Diagram No. 6, one-letter
440
+ mark) and "87 CW 9999" (Diagram No. 8, two-letter mark), with Diagrams
441
+ No. 5 and No. 7 as the two-line versions. Digit widths are illustrative;
442
+ no instrument fixes them.
443
+ composition:
444
+ - "art. 25(3)(a) — 'the number under which the vehicle is registered with the licensing authority'"
445
+ - "art. 25(3)(b) — 'an index mark allotted to that licensing authority'"
446
+ - "art. 25(3)(c) — 'in respect of vehicles first registered on or after the 1st day of January, 1987 ... the third and fourth numerals of the year in which the vehicle is first registered'"
447
+ - "art. 25(3)(d) — for a vehicle previously registered abroad, 'the third and fourth numerals of the year in which the vehicle was first registered in that State'"
448
+ separator_note: >-
449
+ SPACE, NOT HYPHEN, and this is the whole difference between an Irish
450
+ plate of 1988 and one of 1991. Third Schedule Part II para. 7(c) fixes
451
+ only a proportional gap: "the space between the index mark and adjoining
452
+ figures shall be three times the space between the nearest part of
453
+ adjoining figures", with para. 7(a) setting the base gap at 8 mm. No
454
+ glyph is prescribed anywhere in Part II.
455
+ leading_zero_note: "Part II has NO equivalent of the later para. 3(b) no-nought rule, so unlike the 1991 and 2013 series this one makes no leading-zero claim and `regex_strict` does not carry one"
456
+ design:
457
+ plate: { note: "NO PLATE DIMENSIONS ARE PRESCRIBED IN PART II — a recorded gap, and a real one: Part II fixes character sizes and margins but never an overall plate size. The 520 x 110 / 340 x 220 pair arrives only with S.I. 287/1990." }
458
+ characters: { h_min: 81, stroke_min: 12, w_min: 48, gap_min: 8, unit: mm, note: "para. 5: 'all letters and figures of an identification mark shall be at least 81 millimetres high ... every part of every letter and figure shall be at least 12 millimetres broad and the total width of the space taken by every letter or figure, except in the case of the letter \"I\" or the figure \"1\", shall be at least 48 millimetres'. MINIMA, not exact values — the opposite drafting style to the 1990 spec, and 81 mm is TALLER than the 70 mm the modern plate uses." }
459
+ margins: { edge_min: 8, unit: mm, note: "para. 6: at least 8 mm from any character to the top, bottom or sides of the reflective surface" }
460
+ line_gap_min: { v: 13, unit: mm, note: "para. 8, two-line layouts (Diagrams 5 and 7)" }
461
+ background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
462
+ foreground: "#000000"
463
+ band: { side: none, note: "NO EU FLAG AND NO IRL. Ireland's plates carried no EU band until 1 January 1991." }
464
+ placename: { present: false, note: "NO IRISH-LANGUAGE COUNTY NAME either — that too is a 1991 addition. The 1987 plate shows the mark and nothing else." }
465
+ border: { present: false, note: "the 5 mm black border is a 1991 addition; Part II prescribes none" }
466
+ emblem: { present: false }
467
+ rear_differs: false
468
+ construction: "para. 3: on metal, black embossed characters raised above WHITE reflex reflective material; para. 4: on plastic, at least 2.5 mm transparent material with the mark adhered to the rear reading through as black on white"
469
+ psv_note: "para. 4(4): on a large public service vehicle the illuminated mark shows WHITE at the front as well as the rear — a change from the 1982 regime, where the front had to be white and the rear could be white OR RED"
470
+ region_encoding: "ie-counties.yml"
471
+ sources:
472
+ - "https://www.irishstatutebook.ie/eli/1986/si/441/made/en/print # S.I. No. 441 of 1986: art. 1(3) 'These Regulations shall come into operation on the 1st day of January, 1987'; art. 2(c) substituting art. 25(3) with the year numerals; art. 2(e) inserting Third Schedule PART II with Diagrams 5-8 and paras. 1-9. Sealed 19-12-1986. Accessed 2026-08-02"
473
+ - "https://www.irishstatutebook.ie/eli/1986/si/445/made/en/print # S.I. No. 445 of 1986: the matching index-mark half — new art. 3, 'the index marks in Part I ... shall not be assigned to vehicles first registered on or after the 1st day of January, 1987 and the index marks in Part II ... shall be assigned to vehicles first registered on or after the 1st day of January, 1987'. Sealed 20-12-1986. Accessed 2026-08-02"
474
+ - "https://www.irishstatutebook.ie/eli/1990/si/287/made/en/print # S.I. No. 287 of 1990 art. 3(b): inserts into Part II's heading 'but not later than the 31st day of December, 1990' — the instrument that CLOSES this series, dated by its own words. Accessed 2026-08-02"
475
+ notes: >-
476
+ THE FIRST YEAR-COUNTY PLATE, and it looks almost nothing like the plate
477
+ people picture when they think of Ireland: white reflective, black
478
+ characters at least 81 mm tall, groups separated by a wide SPACE, and no
479
+ EU band, no black border and no Irish county name anywhere on it. It ran
480
+ for exactly four years. Cutting it as its own series rather than as the
481
+ early stretch of ie-standard-1991 is the PRD-PLATES §2.3 test applied
482
+ literally: the design differs (no band, no placename, no border), the
483
+ printed format differs (space versus hyphen) and the period is closed by
484
+ an instrument — three of three. START DATE PRECISION: both halves of the
485
+ reform are dated to 1 January 1987 by their own instruments, and both were
486
+ sealed in the week before Christmas 1986 (the 19th and the 20th), which is
487
+ the kind of gap that produces "1986" in secondary sources. The system
488
+ dates from 1987; the instruments date from 1986.
489
+
490
+ # =========================================================================
491
+ # THE PRE-1987 COUNTY-COUNCIL INDEX-MARK ERA. One recall-only series for six
492
+ # decades of one continuous scheme.
493
+ # =========================================================================
494
+ - id: ie-index-mark-pre1987
495
+ class: standard
496
+ categories: [car, van, truck, bus, motorcycle]
497
+ period: { start: 1921, end: 1987 }
498
+ period_evidence: enabling-instrument
499
+ matching: recall-only
500
+ format:
501
+ pattern: "LLL 9999"
502
+ regex: '\A(?:[A-Z]{1,3}[- ]\d{1,6}|\d{1,6}[- ][A-Z]{1,3})\z'
503
+ pattern_note: >-
504
+ DELIBERATELY WIDE, hence recall-only. Two independent reasons. FIRST, THE
505
+ ORDER IS THE OWNER'S CHOICE: Third Schedule para. 1 of S.I. 311/1982,
506
+ verbatim, "(a) Where the identification mark of a vehicle consists of an
507
+ index mark followed by a registration number it shall at the option of
508
+ the owner be arranged in conformity with either Diagram No. 1 or Diagram
509
+ No. 2 ... (b) Where the identification mark of a vehicle consists of a
510
+ registration number followed by an index mark it shall at the option of
511
+ the owner be arranged in conformity with either Diagram No. 3 or Diagram
512
+ No. 4" — so "IK 1234" and "1234 IK" are both lawful arrangements of the
513
+ same registration, and the regex is the union. SECOND, the index mark is
514
+ one, two or three letters drawn from an enumerated list that grew through
515
+ fifteen instruments, and the number has no prescribed width at all. A hit
516
+ on this regex is a shape claim about Ireland before 1987 and nothing
517
+ more.
518
+ composition:
519
+ - "S.I. 311/1982 art. 25(3): 'the number under which the vehicle is registered with the licensing authority' and 'an index mark allotted to that licensing authority' — and nothing else. No year, no half-year, no age signal of any kind."
520
+ progression: >-
521
+ Sequential within an index mark, and when a mark ran out the Minister
522
+ allotted the authority another by regulation — which is why Dublin holds
523
+ eighty-odd marks and Carlow started with one. The three-letter marks are
524
+ a single leading letter prefixed to an existing two-letter stem
525
+ (AIC..ZIC on Carlow's IC), so the letters carry no year information but
526
+ DO carry a rough vintage, since an authority's marks were exhausted in
527
+ the order they were allotted. See ie-counties.yml,
528
+ historic_pre_1987.three_letter_expansion_rule.
529
+ separator_note: >-
530
+ A GAP, never a glyph. S.I. 311/1982 Third Schedule para. 7(b) requires
531
+ only "that the index mark appears as a separate unit from the
532
+ registration number", and para. 8 sets the minimum gap at 38 mm on
533
+ one-line layouts. The regex spells the position as the separator-only
534
+ class `[- ]` (PRD-PLATES §2.8) because the instrument prescribes a
535
+ separation and no character to make it with.
536
+ design:
537
+ background: { color: "#000000", finish: painted, hex_basis: observed }
538
+ foreground: "#FFFFFF"
539
+ rear_differs: true
540
+ colour_note: >-
541
+ TWO LAWFUL SCHEMES AT ONCE, and the second one is the surprise. Third
542
+ Schedule para. 2, verbatim: unless illuminated or reflective, the mark
543
+ "shall be formed of white, silver or light grey letters and figures upon
544
+ a black surface". Para. 4 gives the reflective alternative and it is
545
+ FRONT/REAR ASYMMETRIC: "(a) the identification mark displayed on the
546
+ front of the vehicle shall be formed of black letters and figures upon a
547
+ WHITE surface constructed of reflex reflecting material ... (b) the
548
+ identification mark displayed on the back of the vehicle or on any
549
+ trailer attached thereto shall be formed of black letters and figures
550
+ upon a RED surface constructed of reflex reflecting material". A RED REAR
551
+ PLATE is the pre-1987 Irish signature and it is prescribed, not
552
+ folklore — the recorded hex pair above is the black/silver default, and
553
+ the reflective pair is carried in `reflective_variant`.
554
+ reflective_variant:
555
+ front: { background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }, foreground: "#000000" }
556
+ rear: { background: { color: "#CC0000", finish: retroreflective, hex_basis: observed }, foreground: "#000000" }
557
+ illuminated_variant: "para. 3: an illuminated mark shows WHITE at the front and 'either white or red' at the rear during lighting-up hours, and white on black at all other times"
558
+ characters: { h: 89, stroke: 16, w: 63, gap: 13, unit: mm, note: "para. 5, and these are EXACT values, not minima: 'all letters and figures must be 89 millimetres high, every part of every letter and figure must be 16 millimetres broad, and the total width of the space taken by every letter or figure, except in the case of the letter \"I\" or the figure \"1\", must be 63 millimetres'. The pre-1987 Irish plate carried the largest characters in this dataset." }
559
+ margins: { top_bottom_min: 13, sides_min: 24, unit: mm, note: "para. 6" }
560
+ line_gap: { v: 19, unit: mm, note: "para. 8, two-line layouts; on one-line layouts the index-to-number gap is at least 38 mm" }
561
+ plate: { note: "no overall plate size is prescribed — the 1982 Schedule dimensions characters and margins and lets the plate follow. Recorded gap." }
562
+ band: { side: none }
563
+ placename: { present: false }
564
+ emblem: { present: false }
565
+ region_encoding: "ie-counties.yml"
566
+ region_encoding_note: >-
567
+ DECODE THROUGH `historic_pre_1987` IN THAT FILE, NEVER THROUGH `codes:`.
568
+ The two mark sets are disjoint and a pre-1987 mark run through the modern
569
+ table gives a confidently wrong county. The historic table ships the 1958
570
+ base list plus the three-letter expansion RULE rather than an exhaustive
571
+ merge of fifteen instruments; a mark that resolves through neither must be
572
+ returned as unresolved, not as invalid.
573
+ sources:
574
+ - "https://www.irishstatutebook.ie/eli/1920/act/72/enacted/en/print # Roads Act 1920 s. 6(1): the county council 'shall assign a separate number to every vehicle registered with them, and a mark indicating the registered number of the vehicle and the council with which the vehicle is registered shall be fixed on the vehicle'; the proviso carries Motor Car Act 1903 s. 2 numbers over as at 01-01-1921. Accessed 2026-08-02"
575
+ - "https://www.irishstatutebook.ie/eli/1982/si/311/made/en/print # S.I. No. 311 of 1982, Road Vehicles (Registration and Licensing) Regulations, 1982: art. 1(2) in operation 01-02-1983; art. 25(3) the mark's composition; Third Schedule paras. 1-9 the plate spec quoted above. Accessed 2026-08-02"
576
+ - "https://www.irishstatutebook.ie/eli/1958/si/14/made/en/print # S.I. No. 14 of 1958, Road Vehicles (Index Marks) Regulations, 1958: the consolidated mark list, in operation 01-02-1958; its explanatory note records that it replaced 'a number of orders (now revoked)'. Accessed 2026-08-02"
577
+ - "https://www.irishstatutebook.ie/eli/1986/si/445/made/en/print # S.I. No. 445 of 1986 art. 3: the marks in Part I 'shall not be assigned to vehicles first registered on or after the 1st day of January, 1987' — the instrument that ends the era, and its explanatory note adds 'Index marks used before that date continue to remain in force'. Accessed 2026-08-02"
578
+ notes: >-
579
+ THE COUNTY-COUNCIL INDEX-MARK ERA — one recall-only series for the whole of
580
+ it, on the plates/es.yml `es-provincial-numeric` precedent: it is one
581
+ continuous per-authority sequential scheme whose surface rules were revised
582
+ instrument by instrument, and a vehicle registered in 1930 kept its mark
583
+ under every later regulation. THE START DATE IS A DELIBERATE UNDER-CLAIM
584
+ AND IS FLAGGED AS ONE. 1921 is the date the Roads Act 1920 regime takes the
585
+ scheme over, fixed by that Act's own proviso ("the first day of January,
586
+ nineteen hundred and twenty-one"); marks of exactly this shape were being
587
+ assigned earlier under s. 2 of the Motor Car Act 1903, which the 1920 Act
588
+ names and preserves. The 1903 Act is PDF-only on legislation.gov.uk and is
589
+ not text-extractable, and the Irish Statute Book's pre-1922 collection does
590
+ not serve it at /eli/1903/act/36/ — so its commencement was NOT established
591
+ in this pass and the series is dated from the instrument actually held.
592
+ A consumer wanting the true first year should read "1903 or 1904, not
593
+ established" and both statements are pinned above. END DATE, by contrast,
594
+ is exact to the day: 1 January 1987, by S.I. 445/1986 art. 3. Plates
595
+ already issued were never recalled — the same explanatory note says so —
596
+ so pre-1987 marks remained on Irish roads for decades afterwards and remain
597
+ lawful today.
598
+
599
+ # =========================================================================
600
+ # THE VINTAGE SERIES — ZV.
601
+ # =========================================================================
602
+ - id: ie-vintage-zv
603
+ class: historic
604
+ categories: [car, van, truck, bus, motorcycle]
605
+ period: { start: 1993 }
606
+ period_evidence: instrument-in-force
607
+ matching: strict
608
+ format:
609
+ pattern: "ZV 9999"
610
+ regex: '\AZV[- ]\d{1,6}\z'
611
+ composition:
612
+ - "Reg. 9(1)(d) of S.I. 318/1992, verbatim: 'in the case of a vehicle which the Commissioners are satisfied was constructed or first brought into use more than 30 years prior to the time of registration, and the person applying for registration so requests, an index mark ZV and a unique number'"
613
+ - "re-enacted for post-2012 vehicles as Reg. 9(1A)(e) by S.I. 542/2012 art. 4(b), in identical words"
614
+ pattern_note: >-
615
+ NO YEAR GROUP AT ALL — that is what makes ZV its own series rather than a
616
+ variant. The statute says "an index mark ZV and a unique number" and
617
+ fixes no width; Revenue's own worked example is "ZV 4723". The four
618
+ digits in the pattern follow that example and the regex allows one to
619
+ six, claiming nothing.
620
+ separator_note: >-
621
+ Spelled as the separator-only class `[- ]` (PRD-PLATES §2.8) because the
622
+ instrument leaves the position genuinely open: First Schedule para. 16(d)
623
+ would prescribe a hyphen, but para. 23 expressly lets a ZV mark comply
624
+ instead with the OLD 1982 Part I spec, which prescribes a gap and no
625
+ glyph. Revenue prints a space. Both forms are lawful and the class is the
626
+ honest encoding of that.
627
+ eligibility: "thirty years from construction or first use, assessed by the Commissioners; Reg. 9(2) lets them weigh 'any previous registration documents, the distance which the vehicle has travelled, and any other matters which are, in the opinion of the Commissioners, fair and reasonable'"
628
+ design:
629
+ background: { color: "#000000", finish: painted, hex_basis: observed }
630
+ foreground: "#FFFFFF"
631
+ rear_differs: false
632
+ note: >-
633
+ THE ONE PLACE IRISH LAW LETS A MODERN REGISTRATION WEAR A PERIOD PLATE.
634
+ First Schedule para. 23, verbatim: "The provisions of this Schedule shall
635
+ be deemed to be complied with in relation to an identification mark which
636
+ incorporates the index mark ZV if the identification mark exhibited on
637
+ the vehicle complies with the provisions of Part I of the Third Schedule
638
+ to the Road Vehicles (Registration and Licensing) Regulations, 1982." Part
639
+ I is the pre-1987 spec — so a ZV plate may lawfully be silver-on-black
640
+ with 89 mm characters and no EU band, which is why the hexes recorded
641
+ here are the historic pair rather than the modern one. It may EQUALLY be
642
+ an ordinary modern white plate with the EU band and the county placename,
643
+ since para. 23 is permissive. A renderer must offer both.
644
+ band: { side: none, note: "in the Part I form. In the modern form the standard left EU band applies." }
645
+ emblem: { present: false }
646
+ region_encoding: none
647
+ region_encoding_note: "ZV encodes AGE, not geography: it replaces the county mark rather than qualifying it, so a ZV plate says nothing about where the vehicle is registered. Note the collision recorded in ie-counties.yml — ZV was also a pre-1987 DUBLIN ordinary mark (S.I. 6/1986), so 'ZV 4723' is ambiguous between a Dublin plate of the mid-1980s and a modern vintage plate, and nothing in the string resolves it."
648
+ sources:
649
+ - "https://www.irishstatutebook.ie/eli/1992/si/318/made/en/print # S.I. No. 318 of 1992: Reg. 9(1)(d) the ZV mark; Reg. 9(4) the owner's right to swap an ordinary mark for a ZV one at thirty years; First Schedule para. 23 the Part I compliance route. Reg. 9 in operation 01-01-1993 (Reg. 3). Accessed 2026-08-02"
650
+ - "https://www.irishstatutebook.ie/eli/2012/si/542/made/en/print # S.I. No. 542 of 2012 art. 4(b): Reg. 9(1A)(e) re-enacts ZV verbatim for vehicles first brought into use on or after 01-01-2013 — a provision that will not bite until 2043 and is recorded because it dates the series' continuation. Accessed 2026-08-02"
651
+ - "https://www.revenue.ie/en/vrt/vehicle-registration-tax/zz-registrations-vintage-vehicles-and-zv-plates.aspx # Revenue: 'A typical registration plate in this series would be ZV 4723. There is no additional cost to obtain \"ZV\" series plates.' Applications on Form VRT 35. Accessed 2026-08-02"
652
+ notes: >-
653
+ VINTAGE VEHICLES, thirty years and older, on request and free of charge.
654
+ Structurally the mirror image of Spain's H-prefix historic series: Spain
655
+ gives its historic vehicles a distinct SERIAL on an otherwise ordinary
656
+ plate, Ireland gives them a distinct serial AND lets them keep a period
657
+ DESIGN. Two facts worth carrying into a parse API. First, ZV is optional
658
+ in both directions — a thirty-year-old car may keep its original mark
659
+ indefinitely, and Reg. 9(4) lets an owner convert to ZV at any time after
660
+ the threshold, so the presence of ZV dates the APPLICATION and not the
661
+ vehicle. Second, the thirty years run from construction or first use, not
662
+ from Irish registration, so a ZV plate can sit on a car that has been in
663
+ Ireland since new or on one imported last week.
664
+
665
+ # =========================================================================
666
+ # TEMPORARY REGISTRATION FOR NON-RESIDENTS — ZZ.
667
+ # =========================================================================
668
+ - id: ie-temporary-zz
669
+ class: temporary
670
+ categories: [car, van, truck, bus, motorcycle]
671
+ period: { start: 1993 }
672
+ period_evidence: corroboration-only
673
+ matching: strict
674
+ format:
675
+ pattern: "ZZ 99999"
676
+ regex: '\AZZ[- ]\d{5}\z'
677
+ evidence: agency-page
678
+ composition:
679
+ - "Revenue, verbatim: 'A ZZ registration consists of the letters ZZ followed by a unique five-digit number.'"
680
+ pattern_note: >-
681
+ FIVE DIGITS EXACTLY, on the authority's own statement — the one series in
682
+ this file whose digit width IS pinned, and pinned by Revenue rather than
683
+ by an instrument. The separator is spelled `[- ]` because no source
684
+ prescribes a glyph.
685
+ design:
686
+ note: >-
687
+ NO DESIGN IS SPECIFIED HERE, DELIBERATELY. No instrument located in this
688
+ pass prescribes a ZZ plate, and Revenue's page describes the scheme
689
+ without describing the plate. Colours and dimensions are therefore ABSENT
690
+ rather than guessed — the same discipline plates/es.yml applies to the
691
+ Spanish state series that Anexo XVIII leaves uncoloured. Recorded gap.
692
+ band: { side: none, note: "not established" }
693
+ region_encoding: none
694
+ sources:
695
+ - "https://www.revenue.ie/en/vrt/vehicle-registration-tax/zz-registrations-vintage-vehicles-and-zv-plates.aspx # Revenue (the authority): 'The ZZ system of temporary registration is administered by the Automobile Association (AA) of Ireland on behalf of Revenue. A vehicle which is not permanently registered can use a ZZ registration for up to one month prior to its exportation. A ZZ registration consists of the letters ZZ followed by a unique five-digit number.' Qualifying conditions: the vehicle temporarily in Ireland, the applicant established outside Ireland, all taxes paid. Accessed 2026-08-02"
696
+ - "https://www.irishstatutebook.ie/eli/1993/si/60/made/en/print # S.I. No. 60 of 1993, Temporary Exemption from Registration of Vehicles Regulations, 1993 — deemed in operation 01-01-1993, made under s. 141(3) Finance Act 1992. READ IN FULL AND IT DOES NOT MENTION ZZ: it sets the conditions for exemption under s. 135(a)-(c) and says nothing about a mark. Pinned as a negative result so the next researcher does not re-chase it. Accessed 2026-08-02"
697
+ notes: >-
698
+ TEMPORARY REGISTRATION FOR NON-RESIDENTS, one month, exportation-bound,
699
+ administered by the AA of Ireland on Revenue's behalf. PERIOD HONESTY, and
700
+ this is the weakest date in the file, stated plainly: 1993 is the year the
701
+ Revenue registration regime commenced and under which Revenue describes ZZ
702
+ as operating. NO INSTRUMENT PRESCRIBING THE ZZ MARK WAS LOCATED — not in
703
+ S.I. 318/1992, not in S.I. 60/1993 (read in full), and not in any
704
+ Vehicle Registration and Taxation amendment 1993-2025 in a year-by-year
705
+ sweep of the Irish Statute Book. THE TRUE FIRST-ISSUE YEAR IS NOT
706
+ ESTABLISHED and 1993 must not be read as one; `period_evidence:
707
+ corroboration-only` says exactly that. The format is nevertheless firm,
708
+ because the authority states it in terms. CLASS CAVEAT: recorded as
709
+ `temporary`; `export` would fit the exportation condition equally well and
710
+ _meta/classes.yml offers no "temporary-import" category.
711
+
712
+ # =========================================================================
713
+ # TRADE PLATES.
714
+ # =========================================================================
715
+ - id: ie-trade-1993
716
+ class: dealer
717
+ categories: [car, van, truck, bus, motorcycle]
718
+ period: { start: 1993 }
719
+ period_evidence: instrument-in-force
720
+ matching: recall-only
721
+ binding: business
722
+ format:
723
+ pattern: "999-LL-99"
724
+ regex: '\A(?:\d{1,6}[- ][A-Z]{1,2}[- ]\d{2}|\d{2}[- ][A-Z]{1,2}[- ]\d{1,6})\z'
725
+ composition:
726
+ - "Art. 6(3) of S.I. 409/1992: each trade licence plate carries (a) 'the appropriate placename corresponding to the index mark allocated to the licensing authority', (b) 'the serial number assigned to the licence by the licensing authority', (c) the index mark, (d) 'the third and fourth numerals of the year to which the licence applies' and (e) a hologram"
727
+ - "art. 6(3)(c) was DELETED and (e)'s wording changed by S.I. 328/2013; (a) was replaced with an explicit index-mark/placename table by S.I. 328/2013 and again by S.I. 243/2014"
728
+ pattern_note: >-
729
+ RECALL-ONLY, AND THE REASON IS A PICTURE. Art. 6(3) enumerates the four
730
+ data items but the ARRANGEMENT lives in "Diagram No. 1 or Diagram No. 2
731
+ of the Schedule to these Regulations", and those diagrams are IMAGES in
732
+ the Irish Statute Book's rendering — not text-extractable, so the order
733
+ of the groups is NOT ESTABLISHED from the primary. The regex is the union
734
+ of both plausible orders (serial-county-year and year-county-serial) and
735
+ a hit on it is a shape claim only. The commonly repeated description —
736
+ that a trade plate reverses the ordinary order, showing the trader's
737
+ serial first and the year last — is recorded as
738
+ `secondary-wikipedia` below and is NOT relied on for the pattern.
739
+ layout_evidence: secondary-wikipedia
740
+ layout_secondary: "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Ireland # 'Trade plates have plates with white letters on a dark green background, but with the reverse style of the normal plates: the trader's number for that year is displayed first, the county second, and the applicable year last.' Read as a LOCATOR 2026-08-02; the underlying diagrams were not obtained, so both the reversed order AND the green colour are unverified against the instrument."
741
+ annual: "the plate carries the year to which the LICENCE applies, so a trade plate is re-issued annually — art. 6(3)(d)"
742
+ design:
743
+ note: >-
744
+ COLOURS AND DIMENSIONS NOT ESTABLISHED. The Schedule to S.I. 409/1992 is
745
+ two diagrams and no prose: unlike the registration plate, whose every
746
+ millimetre is spelled out in the First Schedule to S.I. 318/1992, the
747
+ trade plate's appearance exists only as artwork. The white-on-dark-green
748
+ description that circulates is tagged `secondary-wikipedia` above and is
749
+ deliberately NOT recorded as a colour claim here. Recorded gap.
750
+ display: "art. 7: on a motorcycle, one plate at the rear; on any other vehicle with front and rear windows, one plate INSIDE each window; on a vehicle with no rear window, affixed to the rear. Art. 7(2): a registered vehicle must still show its own mark, unobscured."
751
+ hologram: { present: true, note: "art. 6(3)(e): 'a hologram bearing the words \"Department of the Environment\" and \"VALID\"', updated by S.I. 328/2013 to 'Department of the Environment, Community and Local Government'" }
752
+ band: { side: none, note: "not established" }
753
+ emblem: { present: false, note: "not established; the hologram is the security feature" }
754
+ region_encoding: "ie-counties.yml"
755
+ region_encoding_note: "the trade-licence table is the SECOND enumeration of Irish index marks and the only one carrying T, L and W in their post-merger sense — see ie-counties.yml, which cites both tables per row"
756
+ sources:
757
+ - "https://www.irishstatutebook.ie/eli/1992/si/409/made/en/print # S.I. No. 409 of 1992, Road Vehicles (Registration and Licensing) (Amendment) (No. 2) Regulations, 1992: art. 2 'These Regulations shall come into operation on the 1st day of January, 1993'; arts. 6-9 the trade licence, its plate's contents, its display and the eight lawful uses. Accessed 2026-08-02"
758
+ - "https://www.irishstatutebook.ie/eli/2013/si/328/made/en/print # S.I. No. 328 of 2013: substitutes art. 6(3)(a) with the index-mark/placename table, deletes art. 6(3)(c), and applies 'to trade licences issued for 2014 and subsequent years'. Explanatory note: 'These Regulations provide for a single identifier for trade licences issued in Limerick, Tipperary and Waterford.' Accessed 2026-08-02"
759
+ - "https://www.irishstatutebook.ie/eli/2014/si/243/made/en/print # S.I. No. 243 of 2014: substitutes that table again for the merged authority names; 'shall apply to trade licences issued on or after 01 June 2014'. Accessed 2026-08-02"
760
+ - "https://www.irishstatutebook.ie/eli/1982/si/311/made/en/print # S.I. No. 311 of 1982: the definition the trade licence hangs on — 'trade licence' means a general licence issued under section 9 of the Roads Act, 1920, as amended by section 15 of the Finance Act, 1922 — and the 1982 Regulations' express carve-out of trade licences, which is why the trade plate was still governed by the 1958 regime until 1993. Accessed 2026-08-02"
761
+ notes: >-
762
+ THE IRISH TRADE PLATE — bound to a motor dealer, not to a vehicle, and the
763
+ only entry in this file with `binding: business`. It is also the file's
764
+ clearest example of an evidence ceiling: the statute is completely explicit
765
+ about WHAT the plate must say and completely silent about what it must LOOK
766
+ LIKE, because the look is delegated to two diagrams that exist only as
767
+ artwork. The composition, the annual re-issue, the display rules and the
768
+ lawful uses are all primary; the group order and the colours are not, and
769
+ both are marked. WORTH KNOWING for a parse API: art. 7(2) means a trade
770
+ plate NEVER replaces a registration on an already-registered vehicle — it
771
+ sits in the window alongside the real plate — so a photograph can lawfully
772
+ show two different marks on one car. And the trade table is the reason the
773
+ Tipperary "T" exists in Irish law at all: it entered through trade licences
774
+ in 2013, not through the registration regulations, which have never been
775
+ amended to carry it.