vehicles 0.9.0 → 0.9.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (195) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +57 -7
  3. data/README.md +353 -69
  4. data/data/PROVENANCE-vehicles.md +2 -2
  5. data/data/plates/PROVENANCE.md +2 -2
  6. data/data/plates/_decode/at-districts.yml +2 -2
  7. data/data/plates/_decode/cn-issuing-offices.yml +2 -2
  8. data/data/plates/_decode/cn-provinces.yml +2 -2
  9. data/data/plates/_decode/cz-kraj.yml +1 -1
  10. data/data/plates/_decode/dk-serial-blocks.yml +1 -1
  11. data/data/plates/_decode/es-provinces.yml +1 -1
  12. data/data/plates/_decode/fr-departements.yml +2 -2
  13. data/data/plates/_decode/gb-age-identifiers.yml +1 -1
  14. data/data/plates/_decode/gb-memory-tags.yml +1 -1
  15. data/data/plates/_decode/gr-prefectures.yml +1 -1
  16. data/data/plates/_decode/hr-cities.yml +3 -3
  17. data/data/plates/_decode/ie-counties.yml +3 -3
  18. data/data/plates/_decode/in-state-codes.yml +2 -2
  19. data/data/plates/_decode/it-provinces.yml +3 -3
  20. data/data/plates/_decode/jp-office-marks.yml +2 -2
  21. data/data/plates/_decode/jp-use-marks.yml +2 -2
  22. data/data/plates/_decode/kr-authority-marks.yml +1 -1
  23. data/data/plates/_decode/mx-entity-series.yml +1 -1
  24. data/data/plates/_decode/my-index-marks.yml +4 -4
  25. data/data/plates/_decode/pt-trailer-services.yml +1 -1
  26. data/data/plates/_decode/ro-counties.yml +1 -1
  27. data/data/plates/_decode/se-diplomatic.yml +1 -1
  28. data/data/plates/_decode/si-regions.yml +1 -1
  29. data/data/plates/_decode/ua-regions.yml +1 -1
  30. data/data/plates/_meta/classes.yml +1 -1
  31. data/data/plates/_meta/separators.yml +1 -1
  32. data/data/plates/ad.yml +555 -52
  33. data/data/plates/ar.yml +8 -8
  34. data/data/plates/at.yml +91 -10
  35. data/data/plates/au-act.yml +13 -13
  36. data/data/plates/au-nsw.yml +9 -9
  37. data/data/plates/au-nt.yml +13 -14
  38. data/data/plates/au-qld.yml +7 -7
  39. data/data/plates/au-sa.yml +7 -7
  40. data/data/plates/au-tas.yml +10 -10
  41. data/data/plates/au-vic.yml +6 -6
  42. data/data/plates/au-wa.yml +8 -8
  43. data/data/plates/be.yml +11 -11
  44. data/data/plates/br.yml +14 -14
  45. data/data/plates/ca-ab.yml +10 -10
  46. data/data/plates/ca-bc.yml +6 -6
  47. data/data/plates/ca-mb.yml +4 -4
  48. data/data/plates/ca-nb.yml +9 -9
  49. data/data/plates/ca-nl.yml +11 -11
  50. data/data/plates/ca-ns.yml +12 -12
  51. data/data/plates/ca-nt.yml +7 -7
  52. data/data/plates/ca-nu.yml +7 -7
  53. data/data/plates/ca-on.yml +21 -21
  54. data/data/plates/ca-pe.yml +13 -13
  55. data/data/plates/ca-qc.yml +11 -11
  56. data/data/plates/ca-sk.yml +6 -6
  57. data/data/plates/ca-yt.yml +6 -6
  58. data/data/plates/ch.yml +14 -14
  59. data/data/plates/cn.yml +9 -9
  60. data/data/plates/cy.yml +6 -6
  61. data/data/plates/cz.yml +9 -9
  62. data/data/plates/de.yml +8 -8
  63. data/data/plates/dk.yml +12 -12
  64. data/data/plates/ee.yml +13 -13
  65. data/data/plates/eg.yml +708 -0
  66. data/data/plates/es.yml +8 -8
  67. data/data/plates/fi.yml +14 -14
  68. data/data/plates/fr.yml +12 -12
  69. data/data/plates/gb.yml +16 -16
  70. data/data/plates/gr.yml +14 -14
  71. data/data/plates/hr.yml +15 -15
  72. data/data/plates/hu.yml +16 -16
  73. data/data/plates/ie.yml +7 -7
  74. data/data/plates/in.yml +7 -7
  75. data/data/plates/is.yml +3 -3
  76. data/data/plates/it.yml +21 -21
  77. data/data/plates/jp.yml +121 -121
  78. data/data/plates/kr.yml +6 -6
  79. data/data/plates/li.yml +6 -6
  80. data/data/plates/lt.yml +10 -10
  81. data/data/plates/lu.yml +4 -4
  82. data/data/plates/lv.yml +9 -9
  83. data/data/plates/mc.yml +4 -4
  84. data/data/plates/mt.yml +5 -5
  85. data/data/plates/mx.yml +7 -7
  86. data/data/plates/my.yml +18 -18
  87. data/data/plates/ng.yml +346 -0
  88. data/data/plates/nl.yml +5 -5
  89. data/data/plates/no.yml +7 -7
  90. data/data/plates/nz.yml +18 -18
  91. data/data/plates/pl.yml +4 -4
  92. data/data/plates/pt.yml +13 -5
  93. data/data/plates/ro.yml +14 -14
  94. data/data/plates/se.yml +13 -13
  95. data/data/plates/si.yml +8 -8
  96. data/data/plates/sk.yml +15 -15
  97. data/data/plates/sm.yml +7 -7
  98. data/data/plates/th.yml +10 -10
  99. data/data/plates/tr.yml +432 -0
  100. data/data/plates/ua.yml +9 -9
  101. data/data/plates/us-ak.yml +11 -11
  102. data/data/plates/us-al.yml +12 -12
  103. data/data/plates/us-ar.yml +15 -15
  104. data/data/plates/us-as.yml +10 -10
  105. data/data/plates/us-az.yml +10 -10
  106. data/data/plates/us-ca.yml +13 -13
  107. data/data/plates/us-co.yml +14 -14
  108. data/data/plates/us-ct.yml +24 -24
  109. data/data/plates/us-dc.yml +7 -7
  110. data/data/plates/us-de.yml +10 -10
  111. data/data/plates/us-fl.yml +17 -17
  112. data/data/plates/us-ga.yml +10 -10
  113. data/data/plates/us-gu.yml +11 -11
  114. data/data/plates/us-hi.yml +11 -11
  115. data/data/plates/us-ia.yml +9 -9
  116. data/data/plates/us-id.yml +13 -13
  117. data/data/plates/us-il.yml +11 -11
  118. data/data/plates/us-in.yml +9 -9
  119. data/data/plates/us-ks.yml +8 -8
  120. data/data/plates/us-ky.yml +11 -11
  121. data/data/plates/us-la.yml +11 -11
  122. data/data/plates/us-ma.yml +10 -10
  123. data/data/plates/us-md.yml +7 -7
  124. data/data/plates/us-me.yml +16 -16
  125. data/data/plates/us-mi.yml +8 -8
  126. data/data/plates/us-mn.yml +13 -13
  127. data/data/plates/us-mo.yml +13 -13
  128. data/data/plates/us-mp.yml +12 -12
  129. data/data/plates/us-ms.yml +8 -8
  130. data/data/plates/us-mt.yml +12 -12
  131. data/data/plates/us-nc.yml +12 -12
  132. data/data/plates/us-nd.yml +10 -10
  133. data/data/plates/us-ne.yml +10 -10
  134. data/data/plates/us-nh.yml +8 -8
  135. data/data/plates/us-nj.yml +8 -8
  136. data/data/plates/us-nm.yml +14 -14
  137. data/data/plates/us-nv.yml +18 -18
  138. data/data/plates/us-ny.yml +17 -17
  139. data/data/plates/us-oh.yml +13 -13
  140. data/data/plates/us-ok.yml +12 -12
  141. data/data/plates/us-or.yml +15 -15
  142. data/data/plates/us-pa.yml +14 -14
  143. data/data/plates/us-pr.yml +15 -15
  144. data/data/plates/us-ri.yml +10 -10
  145. data/data/plates/us-sc.yml +7 -7
  146. data/data/plates/us-sd.yml +12 -12
  147. data/data/plates/us-tn.yml +8 -8
  148. data/data/plates/us-tx.yml +17 -17
  149. data/data/plates/us-ut.yml +12 -12
  150. data/data/plates/us-va.yml +14 -14
  151. data/data/plates/us-vi.yml +16 -16
  152. data/data/plates/us-vt.yml +9 -9
  153. data/data/plates/us-wa.yml +18 -18
  154. data/data/plates/us-wi.yml +8 -8
  155. data/data/plates/us-wv.yml +9 -9
  156. data/data/plates/us-wy.yml +10 -10
  157. data/data/plates/va.yml +7 -7
  158. data/data/plates/za.yml +11 -11
  159. data/data/vehicles.json +121081 -62015
  160. data/lib/generators/vehicles/templates/initializer.rb +21 -12
  161. data/lib/generators/vehicles/templates/vehicles_refresh_job.rb +8 -4
  162. data/lib/vehicles/color.rb +8 -1
  163. data/lib/vehicles/colors.rb +14 -10
  164. data/lib/vehicles/configuration.rb +82 -3
  165. data/lib/vehicles/data_source.rb +220 -0
  166. data/lib/vehicles/dataset.rb +38 -6
  167. data/lib/vehicles/dataset_resolution.rb +39 -3
  168. data/lib/vehicles/dataset_slice.rb +90 -0
  169. data/lib/vehicles/hosted_result.rb +94 -0
  170. data/lib/vehicles/http.rb +75 -7
  171. data/lib/vehicles/id_lookup.rb +37 -0
  172. data/lib/vehicles/kind_rule.rb +63 -0
  173. data/lib/vehicles/labels.rb +131 -0
  174. data/lib/vehicles/make.rb +45 -19
  175. data/lib/vehicles/model.rb +66 -19
  176. data/lib/vehicles/model_match.rb +16 -2
  177. data/lib/vehicles/model_matcher.rb +6 -7
  178. data/lib/vehicles/plates/series.rb +87 -8
  179. data/lib/vehicles/plates/template_fill.rb +2 -2
  180. data/lib/vehicles/plates/templates.rb +9 -5
  181. data/lib/vehicles/plates.rb +54 -8
  182. data/lib/vehicles/providers/hosted_provider.rb +145 -32
  183. data/lib/vehicles/providers/local_provider.rb +2 -2
  184. data/lib/vehicles/refresh_result.rb +74 -0
  185. data/lib/vehicles/refresher.rb +190 -54
  186. data/lib/vehicles/release_checks.rb +72 -0
  187. data/lib/vehicles/text_matcher.rb +19 -10
  188. data/lib/vehicles/validators/vehicle_make_validator.rb +18 -1
  189. data/lib/vehicles/validators/vehicle_model_validator.rb +17 -1
  190. data/lib/vehicles/version.rb +1 -1
  191. data/lib/vehicles.rb +119 -67
  192. data/rakelib/data_refresh.rake +1 -1
  193. data/rakelib/plates_refresh.rake +1 -1
  194. data/sig/vehicles.rbs +67 -13
  195. metadata +13 -2
data/data/plates/ad.yml CHANGED
@@ -1,7 +1,16 @@
1
- # plates/ad.yml — Andorra (PRD-PLATES gate L1, microstates group).
2
- # DRAFT for verification. All primary text fetched from the BOPA document store
1
+ # plates/ad.yml — Andorra (the plates spec gate L1, microstates group).
2
+ # All primary text fetched from the BOPA document store
3
3
  # (bopadocuments.blob.core.windows.net), 2026-08-02.
4
4
  #
5
+ # §5.3 VERIFICATION PASS RAN 2026-08-08 — dossier at data/review/plates-verify/ad.md.
6
+ # Every series' period boundaries, format regex, class and colours were
7
+ # re-derived from the pinned instruments read as RAW TEXT (not through a
8
+ # summariser) plus an independent route per claim. Eleven corrections landed;
9
+ # the two that change matching behaviour are ad-historic-passed-itv's block and
10
+ # ad-dealer-prova's digit count. The verification entries are RESEARCHER-ONLY
11
+ # (I-11: the author never certifies their own work) — see `verification:` at the
12
+ # foot of this file. Nothing in the art/render lane was touched.
13
+ #
5
14
  # ---------------------------------------------------------------------------
6
15
  # THE INSTRUMENTS, and two corrections to the obvious assumptions
7
16
  # ---------------------------------------------------------------------------
@@ -13,8 +22,12 @@
13
22
  # * Llei del Codi de la circulació, de 10-6-99 — BOPA núm. 40, any 1999,
14
23
  # published 13 July 1999, in force fifteen days later. REPEALED. Its
15
24
  # art. 147 is historically important because it put the PLATE CATALOGUE
16
- # INSIDE THE LAW: "Aquest Codi inclou el catàleg de plaques de matrícula
17
- # vigents a Andorra."
25
+ # INSIDE THE LAW *and delegated its amendment to the Govern in the same
26
+ # breath*: "Aquest Codi inclou el catàleg de plaques de matrícula vigents a
27
+ # Andorra. No obstant això, el Govern pot modificar o afegir altres
28
+ # modalitats de matrícula, d'acord amb la disposició addicional primera."
29
+ # (The second sentence was missing from the draft; it is the delegation on
30
+ # which every 2011-dated series in this file rests.)
18
31
  # * Decret 456/2022, del 9-11-2022 — BOPA núm. 135, any 2022, published
19
32
  # 15 November 2022, IN FORCE 16 NOVEMBER 2022. THE PLATE REGULATION IN
20
33
  # FORCE, and the source of nearly every design fact below.
@@ -36,8 +49,9 @@
36
49
  # because here the instrument's date and the reported series start AGREE — and
37
50
  # citing the instrument would still be wrong.
38
51
  #
39
- # The numbering rule, art. 3.2 of the 2011 Decret and re-enacted verbatim as
40
- # art. 6.2 of Decret 456/2022:
52
+ # The numbering rule, art. 3.2 of the 2011 Decret, re-enacted in substance (NOT
53
+ # word for word — see common.numbering.quote_correction_2026_08_08) as art. 6.2
54
+ # of Decret 456/2022. The 2011 text, which is the one quoted here:
41
55
  # "A les plaques de matrícula s'inscriu un grup de 5 caràcters que va des del
42
56
  # 00000 fins al 99999. A continuació, la primera xifra se substitueix per una
43
57
  # lletra de la A a la Z, i es manté el caràcter numèric dels 4 darrers
@@ -108,35 +122,127 @@ binding_note: >-
108
122
  Llei 12/2021 art. 96(1): "Per posar en circulació els vehicles de motor, els
109
123
  ciclomotors, els remolcs i els semiremolcs, cal haver-los matriculat i que
110
124
  portin les plaques de matrícula amb els caràcters que els assigni el Registre
111
- de Vehicles" — the characters are assigned to the VEHICLE by the Registre de
112
- Vehicles. No provision reserves a number to a person across vehicles.
125
+ de Vehicles, d'acord amb el que es determini reglamentàriament" — the
126
+ characters are assigned to the VEHICLE by the Registre de Vehicles, and
127
+ art. 96(5) makes the pairing constitutive: "El certificat de matriculació i
128
+ les plaques de matrícula formen conjuntament un document compost que
129
+ identifica el vehicle". `vehicle` is therefore the right value for the
130
+ ORDINARY marks, and Decret 456/2022 art. 24.2 nails it shut in four words:
131
+ "Queda totalment prohibit cedir una matrícula."
132
+ binding_correction: >-
133
+ THE §5.3 PASS DELETED A FALSE SENTENCE HERE. The draft asserted "No provision
134
+ reserves a number to a person across vehicles." Two provisions do, and both
135
+ are in instruments this file already pins.
136
+ (1) Decret 456/2022 art. 24 is titled "Reserva de matrícula ordinària" and
137
+ opens: "Una persona física o una persona jurídica pot reservar una
138
+ matrícula ordinària sempre que el vehicle que es vulgui matricular estigui
139
+ al mateix nom de la persona que fa la reserva." A person reserves. What
140
+ art. 24 does NOT do is make the mark portable — arts. 24.4-24.6 bound the
141
+ reservation to a moving window (requestable within 1,000 of the current
142
+ mark, usable within 100, lapsing at +50) and art. 24.2 forbids cession —
143
+ so the reservation is a queue right over a not-yet-issued mark, and
144
+ `binding: vehicle` survives it.
145
+ (2) PERSONALISED MARKS ARE GENUINELY PERSON-BOUND, and this is the real
146
+ exception. Llei 24/2014 art. 6.3: "La reserva i l'atribució d'una
147
+ matrícula personalitzada tenen sempre caràcter personal i intransferible.
148
+ Està prohibida qualsevol comercialització, donació, venda o cessió de
149
+ matrícula personalitzada. Únicament s'exceptua la transmissió de la
150
+ matrícula per successió." And Decret 456/2022 art. 26.5 contemplates the
151
+ mark's "reserva, atribució, baixa o AFECTACIÓ A UN ALTRE VEHICLE". Read
152
+ together: person-bound and vehicle-portable, inheritable by succession,
153
+ sellable never.
154
+ The two readings are not averaged and neither is dropped: the file-level
155
+ `binding` stays `vehicle` because it describes the ordinary marks that carry
156
+ the whole numbering scheme, and because Llei 24/2014 art. 4.1 requires the
157
+ personalised plate to sit on a vehicle that ALREADY holds an ordinary mark
158
+ ("La placa s'ha de col·locar obligatòriament en el vehicle autoritzat a
159
+ portar-la, que ha d'estar donat d'alta al Registre de Vehicles del Govern amb
160
+ una matrícula ordinària atribuïda"). An Andorran personalised vehicle holds
161
+ TWO marks, one bound to it and one bound to its owner. SCHEMA NOTE for the
162
+ maintainer: The plates spec §2.1 gives `binding` at file scope, so this jurisdiction
163
+ cannot express the split; a per-series `binding` override is the clean fix and
164
+ is left as a proposal, not taken unilaterally.
113
165
  instrument:
114
166
  code:
115
167
  citation: "Llei 12/2021, del 13 de maig, del Codi de la circulació"
116
168
  gazette: "BOPA núm. 62, any 2021"
117
- published: "2021-06-01"
118
- entry_in_force: "three months after publication (disposició final novena)"
169
+ published: "2021-06-02"
170
+ entry_in_force: "2021-09-02 — three months after publication (disposició final novena, verbatim: 'Aquesta Llei entrarà en vigor al cap de tres mesos de publicar-se al Butlletí Oficial del Principat d'Andorra.')"
119
171
  url: "https://bopadocuments.blob.core.windows.net/bopa-documents/033062/html/CGL20210528_13_01_20.html"
120
172
  delegation: "art. 108(1): dimensions and characteristics are regulated by reglament; art. 96(1): the Registre de Vehicles assigns the characters"
121
- repeals: "the Llei del Codi de la circulació of 10 June 1999 and its successive modifications, expressly"
122
- recorded_discrepancy: >-
123
- BOPA's index metadata gives publication as 1 June 2021, while the preamble
124
- of Decret 456/2022 refers to the law as "publicada al Butlletí Oficial del
125
- Principat d'Andorra del 2 de juny del 2021". A one-day disagreement
126
- between two official sources, recorded rather than resolved; `published`
127
- carries BOPA's own date.
173
+ repeals: >-
174
+ the Llei del Codi de la circulació of 10 June 1999 and its successive
175
+ modifications, expressly — BUT NOT ENTIRELY. The disposició derogatòria
176
+ carves out one article verbatim: "excepció feta de les previsions
177
+ contingudes al seu article 209, que restaran vigents fins al moment en que
178
+ entri en vigor el reglament previst a la Disposició final quarta". Art. 209
179
+ is not plate-related (disposició final quarta is the pleasure-boat
180
+ register, the plates spec §7 gate L6 territory), so nothing in this file rests
181
+ on it — but "repealed the 1999 Codi" is not the whole sentence.
182
+ retracted_discrepancy: >-
183
+ RETRACTED BY THE §5.3 PASS — THE DISAGREEMENT DID NOT EXIST. The draft
184
+ recorded "a one-day disagreement between two official sources": BOPA index
185
+ metadata giving 1 June 2021 against Decret 456/2022's preamble saying
186
+ "publicada al Butlletí Oficial del Principat d'Andorra del 2 de juny del
187
+ 2021". Re-derivation from the gazette itself settles it — the sumari of
188
+ BOPA núm. 62, any 2021 prints "Núm. 62 / 2 de juny del 2021" in the header
189
+ of every one of its 15 pages. Both official sources say 2 June; only the
190
+ draft said 1 June. `published` is corrected to 2021-06-02 and the
191
+ "discrepancy" is withdrawn rather than averaged, because averaging a
192
+ disagreement that is really a transcription slip would have manufactured a
193
+ permanent fake uncertainty in the record (the plates spec §5.3).
194
+ Sumari: https://bopadocuments.blob.core.windows.net/bopa-documents/sumaris/033/033062.pdf
128
195
  plate_reglament:
129
196
  citation: "Decret 456/2022, del 9-11-2022, d'aprovació del Reglament de la fabricació i la instal·lació de les plaques de matrícula en vehicles i ginys mecànics no aptes per a la via pública"
130
197
  gazette: "BOPA núm. 135, any 2022"
131
- published: "2022-11-15"
132
- entry_in_force: "2022-11-16"
198
+ published: "2022-11-16"
199
+ entry_in_force: "2022-11-17"
133
200
  in_force_clause: "article únic: '…que entrarà en vigor l'endemà de ser publicat al Butlletí Oficial del Principat d'Andorra'"
134
201
  url: "https://bopadocuments.blob.core.windows.net/bopa-documents/034135/html/GR20221110_09_12_43.html"
135
- recorded_typo: >-
136
- BOPA's own sumari mistypes this decree as "Decret 456/2011, del 9-11-2022".
137
- The document header reads 456/2022 and that is the correct citation.
138
- Recorded because the erroneous form is in an official index and a verifier
139
- will meet it.
202
+ date_correction: >-
203
+ CORRECTED BY THE §5.3 PASS, AND IT MOVED THE COMMENCEMENT. The draft had
204
+ published 2022-11-15 / in force 2022-11-16. BOPA núm. 135, any 2022 is
205
+ dated 16 NOVEMBER 2022 — printed in the page header of all 13 pages of its
206
+ sumari — and the Correcció d'errata de l'1-3-2023 independently describes
207
+ the decree as "publicat al Butlletí Oficial del Principat d'Andorra (BOPA)
208
+ núm. 135, del 16 de novembre del 2022". Two official routes agree. Since
209
+ the article únic commences the Reglament "l'endemà de ser publicat", the
210
+ current plate regulation entered into force on 17 NOVEMBER 2022.
211
+ Sumari: https://bopadocuments.blob.core.windows.net/bopa-documents/sumaris/034/034135.pdf
212
+ title_erratum: >-
213
+ NOT A SUMARI TYPO — A TITLE ERROR IN THE DECREE ITSELF, SINCE OFFICIALLY
214
+ CORRECTED. The draft recorded that "BOPA's own sumari mistypes this decree
215
+ as 'Decret 456/2011, del 9-11-2022'" and reasoned that "the document header
216
+ reads 456/2022". The header as published does NOT: the Correcció d'errata
217
+ de l'1-3-2023 (BOPA núm. 33, any 2023) quotes the published title under
218
+ "On hi diu:" as "Decret 456/2011, del 9-11-2022, d'aprovació del Reglament
219
+ de la fabricació i la instal·lació de les plaques de matrícula en vehicles
220
+ i ginys mecànics no aptes per a la via pública." and prescribes under
221
+ "Hi ha de dir:" the identical sentence reading "Decret 456/2022". So the
222
+ wrong year was in the instrument's own title, the sumari merely reproduced
223
+ it, and the citation is now settled BY AN INSTRUMENT rather than by
224
+ inference. Third-party legal databases still carry the uncorrected form
225
+ (leslleis.com/DR20221109C prints "Decret 456/2011, del 9 de novembre del
226
+ 2022"), which is the practical reason to keep this note.
227
+ Errata: https://bopadocuments.blob.core.windows.net/bopa-documents/035033/html/GV20230303_12_27_52.html
228
+ as_published_caveat: >-
229
+ THE PINNED URL SERVES THE UNCORRECTED TEXT. The blob store carries the
230
+ as-published document, so it still prints the two cross-reference errors
231
+ that the Correcció d'errata del 30-11-2022 fixed: arts. 3.6 and 4.2 cite
232
+ "l'article 24 del Reglament" where the adhesive-plate article is art. 25
233
+ (art. 24 is Reserva de matrícula ordinària). Neither error touches any
234
+ series in this file, but a consumer reading the pinned URL alone is
235
+ reading text the Govern has formally amended.
236
+ Errata: https://bopadocuments.blob.core.windows.net/bopa-documents/034142/html/GD20221201_12_12_06.html
237
+ numbering_defect: >-
238
+ RECORDED SO A VERIFIER DOES NOT THINK THEY MISREAD IT: the 2011 Reglament
239
+ NUMBERS TWO CONSECUTIVE ARTICLES "Article 8" — the first "Matrícula per als
240
+ administratius i tècnics d'ambaixades", the second "Matrícula del cos
241
+ consular" — and then resumes at article 9. Its article count is therefore
242
+ 18 headings over 17 numbers. Citations to "2011 art. 8" must say which one.
243
+ The defect is in the as-published text on BOPA and was never corrected by
244
+ the errata of 9-3-2011; Decret 456/2022 renumbers cleanly (A-staff art. 12,
245
+ consular art. 11).
140
246
  chain:
141
247
  - "Decret del 23-02-2011 (base) — BOPA núm. 14/2011, published 1 March 2011, in force 2 March 2011"
142
248
  - "Correcció d'errata del 9-03-2011 — BOPA núm. 16/2011, 15 March 2011"
@@ -149,6 +255,13 @@ instrument:
149
255
  related:
150
256
  - "Decret 534/2022, del 14-12-2022, Reglament relatiu a la matriculació i al Registre de Vehicles — BOPA núm. 148/2022, 21 December 2022"
151
257
  - "Decret 11/2024, del 10-1-2024, Reglament de vehicles històrics — BOPA núm. 7/2024, 16 January 2024"
258
+ - >-
259
+ Decret del 24-11-2010, Reglament regulador del procediment de reserva de
260
+ matrícules del Registre de Vehicles — REPEALED by Decret 456/2022,
261
+ disposició derogatòria segona. Added by the §5.3 pass: the draft's chain
262
+ omitted it, and it matters because the reservation regime it governed is
263
+ what moved into arts. 24 and 26 of the current Reglament, which is where
264
+ the `binding` question is decided.
152
265
 
153
266
  # ---------------------------------------------------------------------------
154
267
  # Jurisdiction-wide facts.
@@ -156,13 +269,33 @@ instrument:
156
269
  common:
157
270
  numbering:
158
271
  rule: >-
159
- Decret 456/2022 art. 6.2, re-enacting art. 3.2 of the 2011 Decret verbatim:
160
- "A les plaques de matrícula s'inscriu un grup de 5 caràcters que va des del
272
+ Decret 456/2022 art. 6.2, verbatim and in force: "A les plaques de
273
+ matrícula s'hi inscriu un grup de cinc caràcters numèrics que va des del
161
274
  00000 fins al 99999. A continuació, la primera xifra se substitueix per una
162
- lletra de la A a la Z, i es manté el caràcter numèric dels 4 darrers
275
+ lletra de la A a la Z, i es manté el caràcter numèric dels quatre darrers
163
276
  caràcters (A0000-Z9999), sense utilitzar les lletres de l'alfabet que puguin
164
- crear confusió, combinant dues lletres i tres números (AA000-ZZ999), i així
277
+ crear confusió, i es combinen dos lletres i tres números (AA000-ZZ999), i
278
+ així successivament."
279
+ rule_2011: >-
280
+ Decret del 23-02-2011 art. 3.2, verbatim and repealed: "A les plaques de
281
+ matrícula s'inscriu un grup de 5 caràcters que va des del 00000 fins al
282
+ 99999. A continuació, la primera xifra se substitueix per una lletra de la
283
+ A a la Z, i es manté el caràcter numèric dels 4 darrers caràcters
284
+ (A0000-Z9999), sense utilitzar les lletres de l'alfabet que puguin crear
285
+ confusió, combinant dues lletres i tres números (AA000-ZZ999), i així
165
286
  successivament."
287
+ quote_correction_2026_08_08: >-
288
+ THE DRAFT PRINTED ONE QUOTE UNDER TWO ATTRIBUTIONS. It billed the sentence
289
+ above as "Decret 456/2022 art. 6.2, re-enacting art. 3.2 of the 2011 Decret
290
+ verbatim" and then printed the 2011 wording. The re-enactment is faithful in
291
+ substance but is NOT verbatim — "s'inscriu" became "s'hi inscriu", "5
292
+ caràcters" became "cinc caràcters NUMÈRICS", "4 darrers" became "quatre
293
+ darrers", and "combinant dues lletres" became "i es combinen dos lletres".
294
+ Both texts are now carried separately so neither is quoted as the other.
295
+ THE CORRECTION STRENGTHENS THE FILE'S CENTRAL FINDING RATHER THAN DENTING
296
+ IT: the word the base-stage claim leans on — "numèrics" — is in the 2022
297
+ text and NOT in the 2011 text, so the current instrument states the
298
+ five-digit grammar even more plainly than the draft could show.
166
299
  three_stages:
167
300
  - { stage: 1, grammar: "00000-99999", modelled_as: ad-standard-numeric }
168
301
  - { stage: 2, grammar: "A0000-Z9999", modelled_as: ad-standard-letter }
@@ -215,13 +348,32 @@ common:
215
348
  "s'ha incorporat l'indicatiu AND, en la forma que preveu el punt 3 de
216
349
  l'annex 3 de la Convenció sobre la circulació vial… feta l'any 1968 a
217
350
  Viena, en la versió consolidada de l'any 2006."
351
+ scope_limit: >-
352
+ ADDED BY THE §5.3 PASS — THE 2011 INCORPORATION IS SCOPED, AND THE SCOPE
353
+ EXPLAINS THE CATALOGUE. The same paragraph of the 2011 exposició de motius
354
+ closes: "Aquesta modificació sols s'aplica a les matrícules destinades a
355
+ vehicles que són aptes per a la circulació internacional." That single
356
+ sentence predicts exactly which series carry AND and which do not, and the
357
+ current Reglament bears it out: AND is inscribed on the ordinary plate
358
+ (art. 6.1), the motorcycle plates (art. 7.2, 7.4), the four diplomatic and
359
+ consular series (arts. 9-12) and the temporary MT plate (art. 13) — and is
360
+ absent from the moped (art. 8), both historic series (arts. 14-15), the
361
+ dealer PROVA plate (art. 16), the special-vehicle plate (art. 17), the
362
+ snowmobile (art. 18) and the giny mecànic (art. 19). Every one of those
363
+ omissions is a vehicle that does not travel internationally. The design
364
+ blocks below already match this pattern; it was inferred there and is now
365
+ sourced.
218
366
  legacy_rule: >-
219
367
  Decret 456/2022 art. 20.3: plates of a model earlier than the current one,
220
368
  which do not carry the inscribed AND, must display the separate oval AND
221
369
  sticker. So both arrangements are lawfully on the road simultaneously.
370
+ Corroborated for the pre-2011 world by the 1999 Codi art. 147, which had
371
+ ACA hand over the oval with the plates: "l'Automòbil Club d'Andorra lliura
372
+ al titular un joc de plaques de matrícula, corresponent al número de
373
+ matrícula concedit pel Registre, i el distintiu nacional AND."
222
374
  treaty_note: >-
223
375
  The 2006 CONSOLIDATED version of Vienna Annex 3 is what permits the sign
224
- to be incorporated into the plate. PRD-PLATES §4 records that the 1968
376
+ to be incorporated into the plate. The plates spec §4 records that the 1968
225
377
  Convention AS ADOPTED forbade exactly that (Annex 3 §3) and flags the
226
378
  amendment as UNVERIFIED because UNECE was unreachable. This Andorran
227
379
  instrument is INDIRECT CORROBORATION that the amendment exists and is in
@@ -253,7 +405,7 @@ common:
253
405
  in the plate decree, and the referenced graphic annex was not extractable.
254
406
  Recorded gap.
255
407
  annex_gap:
256
- status: RECORDED GAP
408
+ status: RECORDED GAP — NARROWED BY THE §5.3 PASS, NOT CLOSED
257
409
  detail: >-
258
410
  Decret 456/2022 refers to an annex, "Catàleg oficial de plaques de matrícula
259
411
  i distintius del Principat d'Andorra", as figures 1-18. IT IS A GRAPHICS
@@ -264,13 +416,72 @@ common:
264
416
  circuit and hazmat placards). SO NO PLATE ARTWORK OR GLYPH SPECIFICATION
265
417
  FROM EITHER CATALOGUE IS AVAILABLE, and every layout fact in this file
266
418
  comes from the articles' prose rather than from the figures.
419
+ verification_2026_08_08: >-
420
+ TWO THINGS CHANGED AND ONE DID NOT.
421
+ (a) THE 2011 ANNEX IS REACHABLE. The repealed 2011 Reglament's "Annex 1.
422
+ Dimensions i característiques de les diverses plaques de matrícula" is
423
+ a live 1.83 MB, 15-page PDF on the BOPA blob store — the gap note
424
+ implied otherwise. It is figure pairs 1a/1b through 14a/14b (with 4
425
+ split 4.1/4.2), one pair per plate type, and it is PURE VECTOR
426
+ GRAPHICS: a text extraction returns only running heads and the figure
427
+ captions. So the draft's characterisation is CONFIRMED for content and
428
+ CORRECTED for availability. Per the plates spec §6 the drawings are cited
429
+ and never embedded.
430
+ https://bopadocuments.blob.core.windows.net/bopa-documents/annexos/023014_plaques.pdf
431
+ (b) THE 2022 ANNEX IS NOT PUBLISHED AT ITS OWN LINK. Decret 456/2022's page
432
+ advertises an associated document "Plaques 2021.pdf" at
433
+ /bopa/034135/Documents/Plaques%202021_GR20221110_09_12_43.pdf; the blob
434
+ store answers BlobNotFound (HTTP 404) for that path. A searched-for
435
+ negative with the exact URL tried, so the next reader does not repeat
436
+ the search.
437
+ (c) THE ANNEX IS NORMATIVE FOR THE GLYPHS, which raises the cost of the
438
+ gap: art. 21 provides that "Les especificacions de les plaques de
439
+ matrícula i dels distintius del Principat d'Andorra, els colors i els
440
+ caràcters alfabètics i numèrics són els que s'indiquen en l'annex del
441
+ Reglament." The character shapes are IN the unreachable annex.
442
+ character_rights:
443
+ status: ADVERSE STATUTORY SIGNAL — recorded, not acted on
444
+ claim: >-
445
+ ANDORRA AFFIRMATIVELY CLAIMS PROPERTY IN THE PLATE CHARACTERS AND THE STATE
446
+ SYMBOLS, in two instruments, in nearly identical words.
447
+ Llei 12/2021 art. 108(3): "Els caràcters que figuren en les matrícules, així
448
+ com els símbols d'Estat que han de portar els vehicles, són propietat del
449
+ Govern, que cedeix en cada cas el dret a usar-los, d'acord amb les
450
+ condicions que es determinin per la via reglamentària."
451
+ Decret 456/2022 art. 3.5: "Els caràcters que figuren en les matrícules, i
452
+ els símbols d'Estat que han de portar els vehicles, són propietat del
453
+ Govern, que cedeix en cada cas el dret a usar-los, d'acord amb les
454
+ condicions que es determinen en la normativa vigent."
455
+ why_it_matters: >-
456
+ the plates spec §6 records, from the EU dossier, that "No surveyed country claims
457
+ copyright in the plate design itself" — expressly flagged there as a SAMPLE
458
+ finding rather than an exhaustive survey. Andorra is a counter-example to
459
+ that sample and should be carried back into §6 as one. This is the same
460
+ shape of fact that `artwork_risk:` exists to record for US states under
461
+ the plates spec §7.1: a statutory signal adverse to free reuse, sitting beside
462
+ an art route that looks clean.
463
+ scope_and_limits: >-
464
+ READ NARROWLY, AND DO NOT OVER-READ IT. The provisions assert ownership of
465
+ the characters AS THEY APPEAR ON MATRÍCULES and of the state symbols
466
+ vehicles must carry, and they set up a case-by-case licensing mechanism.
467
+ They are not a copyright registration, they do not speak to the underlying
468
+ historic coat of arms, and Andorran law is not searched here for what
469
+ "propietat del Govern" grants against a third party. What they do establish
470
+ is that the "no country claims the design" line cannot be repeated for
471
+ Andorra without qualification.
472
+ handling: >-
473
+ RECORDED AND ESCALATED, NOT ACTED ON. `common.emblem` and every `design:`
474
+ block are untouched by this pass — the emblem posture is the owner's visual
475
+ lane and the licensing call is counsel's, not a verifier's. The §3
476
+ placeholder default is what ships today regardless, so nothing renders
477
+ differently either way.
267
478
  font:
268
479
  name: null
269
- note: "No typeface is named in any Andorran instrument read, and the graphic annex that might carry a Schriftmuster is unextractable (see annex_gap). Per PRD-PLATES §6 the render layer uses the schematic fallback."
480
+ note: "No typeface is named in any Andorran instrument read, and the graphic annex that might carry a Schriftmuster is unextractable (see annex_gap). Per the plates spec §6 the render layer uses the schematic fallback."
270
481
  emblem:
271
482
  present: true
272
483
  rendered: placeholder
273
- note: "l'escut nacional del Principat d'Andorra, upper left (art. 6.1). PRD-PLATES §3 placeholder rule. LICENCE ROUTE LOCATED 2026-08-03 (render-program hunt): Commons Coat of arms of Andorra.svg is PUBLIC DOMAIN, extmetadata-verified — asset + ledger row at plates/_art/ad/. Depiction consumers may render the real arms."
484
+ note: "l'escut nacional del Principat d'Andorra, upper left (art. 6.1). The plates spec §3 placeholder rule. LICENCE ROUTE LOCATED 2026-08-03 (render-program hunt): Commons Coat of arms of Andorra.svg is PUBLIC DOMAIN, extmetadata-verified — asset + ledger row at plates/_art/ad/. Depiction consumers may render the real arms."
274
485
  origin:
275
486
  instrument_named: "Ordinació del Consell General del 13 de maig de 1929"
276
487
  rule: >-
@@ -327,7 +538,7 @@ series:
327
538
  continuous scheme advancing on exhaustion, and its stated innovations were
328
539
  the reduced plate, enduro/trial plates, ground images and the AND mark.
329
540
  Citing that Decret for this date would attach an instrument's window to a
330
- series it did not create — the exact defect PRD-PLATES §9 and the Spanish
541
+ series it did not create — the exact defect the plates spec §9 and the Spanish
331
542
  es-provincial case exist to prevent. The coincidence of years makes it a
332
543
  more dangerous trap than usual, not a safer one.
333
544
  matching: strict
@@ -365,7 +576,7 @@ series:
365
576
  - name: "reduced (M1)"
366
577
  format: { pattern: "L9999" }
367
578
  plate: { w: 275, h: 90, unit: mm }
368
- note: "a smaller plate for M1 vehicles, same grammar and same furniture — a size option rather than a distinct series, so a variant per PRD-PLATES §2.3"
579
+ note: "a smaller plate for M1 vehicles, same grammar and same furniture — a size option rather than a distinct series, so a variant per the plates spec §2.3"
369
580
  region_encoding: none
370
581
  notes: >-
371
582
  THE CURRENT ORDINARY SERIES — one letter and four digits, black on white,
@@ -438,6 +649,34 @@ series:
438
649
  the two series is undated, while the AND MARK change that accompanied it
439
650
  is dated by the 2011 Decret. Overlaps ad-standard-letter, which is
440
651
  genuine — plates already issued stayed valid.
652
+ verifier_note_2026_08_08: >-
653
+ THE BEST CLAIM IN THIS FILE SURVIVES RE-DERIVATION, AND A SECOND ROUTE
654
+ REACHES IT. `national_mark.present: false` for the pre-2011 plate is
655
+ confirmed three ways: the 2011 exposició de motius lists the AND among that
656
+ instrument's innovations; the 2011 art. 3.1 introduces it on the ordinary
657
+ plate ("A la matrícula ordinària, al costat esquerre inferior, amb lletres
658
+ de color blau hi figura el distintiu nacional AND"); and INDEPENDENTLY the
659
+ 1999 Codi art. 147 shows the AND being handed over as a SEPARATE OVAL with
660
+ the plates — "l'Automòbil Club d'Andorra lliura al titular un joc de
661
+ plaques de matrícula […] i el distintiu nacional AND". A 1999 instrument
662
+ describing the oval and a 2011 instrument claiming the inscription is as
663
+ clean as this kind of dating gets.
664
+ ONE QUOTE IS TRUNCATED WHERE IT STOPS HELPING. The file cites art. 147 for
665
+ "Aquest Codi inclou el catàleg de plaques de matrícula vigents a Andorra."
666
+ The attribution is CORRECT (the sentence is the penultimate paragraph of
667
+ art. 147, which runs to the "Article 148" heading), but the sentence does
668
+ not end there: "…vigents a Andorra. No obstant això, el Govern pot
669
+ modificar o afegir altres modalitats de matrícula, d'acord amb la
670
+ disposició addicional primera." The omitted half is the DELEGATION, and it
671
+ is load-bearing — it is the mechanism by which a 2011 Govern decree could
672
+ lawfully add plate types while the 1999 Codi was still in force, and the
673
+ 2011 preamble says so in terms: "El legislador […] va atribuir al Govern
674
+ mitjançant l'article 147 i la disposició addicional de la llei, la capacitat
675
+ de modificar les plaques de matrícula incloses en el catàleg o afegir-hi
676
+ altres modalitats." The `instrument-in-force-upper-bound` dating of every
677
+ 2011 series in this file depends on that delegation being real, so quoting
678
+ only the first half understated the file's own foundation.
679
+ START BOUND UNCHANGED: 1999 remains an upper bound and the reasoning holds.
441
680
  sources:
442
681
  - "https://bopadocuments.blob.core.windows.net/bopa-documents/034135/html/GR20221110_09_12_43.html # Decret 456/2022 art. 6.2 — the 00000-99999 base stage"
443
682
  - "https://bopadocuments.blob.core.windows.net/bopa-documents/023014/html/6BEF6.html # Decret del 23-02-2011 art. 3.2 and exposició de motius — the same grammar, and the AND mark as a 2011 innovation"
@@ -457,7 +696,41 @@ series:
457
696
  format_note: >-
458
697
  THE SAME SERIAL GRAMMAR AS CARS — art. 7 gives motorcycles their own
459
698
  SIZES but not their own numbering. There is no dedicated motorcycle
460
- letter block, contrary to some secondary accounts.
699
+ letter block, contrary to some secondary accounts. Verified verbatim
700
+ against art. 7.3, which repeats art. 6.2's sentence for the horizontal
701
+ plate word for word.
702
+ charset:
703
+ excluded: [I, O, Q]
704
+ notes: >-
705
+ ADDED BY THE §5.3 PASS — regex_strict was carrying the 23-letter
706
+ alphabet with no source of its own, and art. 6.3's exclusion is drafted
707
+ narrowly enough that borrowing it would have been an inference: it
708
+ suppresses I, O and Q "de la placa de matrícula ordinària per a
709
+ vehicles automòbils, remolcs i semiremolcs, i de la placa de matrícula
710
+ ordinària reduïda per a vehicles de tipus turisme (categoria M1)" —
711
+ motorcycles are not in that list. The motorcycle plates have their OWN
712
+ exclusion, art. 7.5, verbatim: "Se suprimeixen les lletres I, O i Q del
713
+ sistema de numeració de les plaques horitzontal i vertical de matrícula
714
+ ordinària per a motocicleta, a fi d'evitar tota confusió amb els
715
+ números 1 i 0, respectivament." So regex_strict is statutory here, and
716
+ it is statutory for the VERTICAL variant too. Same 2011-vs-2022 caveat
717
+ as the car series: the 2011 text stated only the principle, so a plate
718
+ from the lettered stage before 17 November 2022 might carry I, O or Q,
719
+ which is why `regex` keeps [A-Z].
720
+ numeric_stage_not_modelled: >-
721
+ COVERAGE GAP FOUND BY THE §5.3 PASS. art. 7.3 gives motorcycles the SAME
722
+ two-stage scheme as cars, base stage included: "A la placa horitzontal
723
+ s'hi inscriu un grup de cinc caràcters numèrics que va des del 00000 fins
724
+ al 99999 i, a continuació, la primera xifra se substitueix per una
725
+ lletra…". This series models only the lettered stage, and
726
+ ad-standard-numeric — which models the five-digit stage — lists
727
+ categories [car, van, truck, bus, trailer, semitrailer] with motorcycle
728
+ absent. A five-digit Andorran MOTORCYCLE plate from the numeric stage is
729
+ therefore matched by no series in this file, which is a
730
+ jurisdiction-completeness miss under the plates spec §5.1. The fix is one word
731
+ (add `motorcycle` to ad-standard-numeric's categories) or one new ended
732
+ series; either is a claim change, so it is proposed in
733
+ data/review/plates-verify/ad.md rather than taken by the researcher alone.
461
734
  design:
462
735
  plate: { w: 225, h: 115, unit: mm, note: "horizontal motorcycle plate (art. 7)" }
463
736
  background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
@@ -473,10 +746,25 @@ series:
473
746
  plate: { w: 100, h: 168, unit: mm }
474
747
  note: >-
475
748
  art. 7.4 — a PORTRAIT plate in two zones split by a blue band, the
476
- letter or letters above and the four digits below. The 2011 Decret
477
- introduced plastic and rubber enduro/trial plates specifically, per
478
- its exposició de motius, which is a genuinely unusual material
479
- provision.
749
+ letter or letters above and the four digits below. NOTE THE VARIANT'S
750
+ GRAMMAR IS NOT THIS SERIES': art. 7.4 skips the numeric stage
751
+ entirely and starts at a letter — "Immediatament a sota de l'escut hi
752
+ apareix una lletra de la A a la Z […] i es combinen dos lletres
753
+ (AA-ZZ), i així successivament. Sota de la lletra o les lletres hi ha
754
+ quatre caràcters numèrics (0000-9999)" — so it reaches AA0000 (two
755
+ letters over four digits), a six-character form the parent series
756
+ cannot express. Recorded; not modelled, on the same "no evidence of
757
+ issuance" ground as common.numbering.stage_three_not_modelled.
758
+ material_note: >-
759
+ THE PLASTIC/RUBBER ALLOWANCE IS HISTORIC, NOT CURRENT — corrected by
760
+ the §5.3 pass, which found it in the repealed instrument only. Decret
761
+ del 23-02-2011 art. 1, second paragraph: "Per a les motocicletes
762
+ aptes per circular per terrenys accidentats (enduro o trial), la base
763
+ de la placa de matrícula pot ser de plàstic o de goma dura." Decret
764
+ 456/2022 art. 4 does not re-enact it — its two paragraphs allow
765
+ aluminium as the norm and an adhesive plate for art. 25 cases, and
766
+ nothing else. So the provision ran 2011 to 16 November 2022 and the
767
+ draft's present tense was out of date by one instrument.
480
768
  region_encoding: none
481
769
  notes: >-
482
770
  MOTORCYCLES. Two shapes — a 225x115 mm horizontal plate and a 100x168 mm
@@ -517,6 +805,20 @@ series:
517
805
  ANDORRA in blue on a yellow panel, and the flag shield at the bottom left
518
806
  rather than the national arms at the top left. It is the one Andorran
519
807
  series that does not follow the common layout.
808
+ verifier_note_2026_08_08: >-
809
+ COLOUR RE-DERIVED, AND ONE DATED CHANGE FOUND. art. 8.1 in force confirms
810
+ every colour recorded: white retroreflective ground, matt black characters,
811
+ "El bordó és de color blau mat", "A la part superior hi figura la llegenda
812
+ 'ANDORRA' amb lletres blaves sobre un quadre amb fons groc", flag shield
813
+ lower left. BUT THE LEGEND WAS BLACK BEFORE 2022 — the 2011 art. 5.1 reads
814
+ "amb lletres NEGRES sobre un quadre amb fons groc". This series is dated
815
+ from 2011 and the design block records the post-2022 blue, so the first
816
+ eleven years of its period carry a colour the file does not state. The
817
+ design block is deliberately NOT edited by this pass (owner's visual lane);
818
+ the finding is recorded for whoever owns the fix.
819
+ Also verified: art. 8.1 says the moped's characters are "pintats" and not
820
+ "estampats en relleu" — mopeds are the one Andorran plate whose characters
821
+ are painted rather than embossed, in both the 2011 and 2022 texts.
520
822
  sources:
521
823
  - "https://bopadocuments.blob.core.windows.net/bopa-documents/034135/html/GR20221110_09_12_43.html # Decret 456/2022 art. 8"
522
824
 
@@ -590,6 +892,19 @@ series:
590
892
  regex: '\ACC[- ]?\d{3}[- ]?[A-Z]\z'
591
893
  format_evidence: statutory
592
894
  format_note: "art. 11: CC, THREE digits (000-999), then the State letter — the widest block in the diplomatic family"
895
+ period_scoped_change: >-
896
+ THE DIGIT COUNT CHANGED IN 2022 AND THE REGEX ONLY DESCRIBES THE SECOND
897
+ HALF OF THIS SERIES' PERIOD. The 2011 Reglament gave the consular series
898
+ TWO digits, not three — art. 8 (the second article so numbered; see
899
+ instrument.numbering_defect), verbatim: "el primer grup el formen les
900
+ lletres CC; el segon grup el formen DOS caràcters numèrics que van des
901
+ del 00 fins al 99". Decret 456/2022 art. 11.2 widened it to "TRES
902
+ caràcters numèrics que van des del 000 fins al 999". So a CC plate issued
903
+ between 2011 and 16 November 2022 reads CC + 2 digits + letter and will
904
+ NOT match this series' regex. Recorded, not averaged and not widened: the
905
+ regex carries the instrument in force, and the clean fix is the same
906
+ §2.2 series split proposed for ad-historic-passed-itv, which a researcher
907
+ may not make alone under I-11.
593
908
  design:
594
909
  plate: { w: 340, h: 120, unit: mm }
595
910
  background: { color: "#1F3A93", finish: retroreflective, hex_basis: pantone-converted, spec_note: "Pantone 2945" }
@@ -667,6 +982,32 @@ series:
667
982
  in Arabic numerals, in a red field at the upper right. That is a
668
983
  validity device, not a serial component, and it does not appear in the
669
984
  pattern.
985
+ verifier_dissent_2026_08_08: >-
986
+ THE TWO PRIMARY ROUTES DISAGREE ABOUT WHETHER "MT" IS SERIAL, AND THE
987
+ DRAFT ONLY CITES ONE OF THEM. Recorded verbatim, unresolved.
988
+ ROUTE A — the plate regulation, which structurally treats MT as furniture.
989
+ Decret 456/2022 art. 13.1 places MT in a panel and then states the serial
990
+ separately: "Al costat esquerre superior, sobre fons vermell (fons
991
+ Pantone 485), hi figuren els caràcters MT de color negre mat. […] A les
992
+ plaques de matrícula s'hi inscriu un grup de quatre caràcters numèrics
993
+ que va des del 0000 fins al 9999." That is the SAME two-part shape art.
994
+ 16.1 uses for PROVA — legend in one sentence, "un grup de N caràcters
995
+ numèrics" in another — and this file reads art. 16 as making PROVA a
996
+ legend. Applied consistently, art. 13 makes MT a legend too and the
997
+ serial is four bare digits.
998
+ ROUTE B — the personalisation statute, which treats MT as a serial prefix.
999
+ Llei 24/2014 art. 7.1(i) forbids a personalised mark consisting of "les
1000
+ lletres 'MT', 'CD', 'CMD', 'A', 'CC', seguides de xifres o la paraula
1001
+ 'PROVA'" — grouping MT with the unambiguous diplomatic prefixes and
1002
+ setting PROVA apart as "la paraula". That is the draft's basis and it is
1003
+ real.
1004
+ WHY THE DATA IS LEFT AS IT IS: keeping MT in `regex` costs nothing under
1005
+ §2.7 (it is narrower than the issuing grammar, never wider) and buys
1006
+ discrimination that four bare digits cannot give, whereas dropping it
1007
+ would make this series collide with ad-special-vehicle, ad-snow-vehicle
1008
+ and ad-giny-mecanic, which are all '\A\d{4}\z'. The disagreement is
1009
+ recorded rather than resolved because it is a reading of two instruments,
1010
+ not a fact either one states.
670
1011
  design:
671
1012
  plate: { w: 340, h: 120, unit: mm, note: "225x115 mm for motorcycles" }
672
1013
  background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
@@ -699,8 +1040,18 @@ series:
699
1040
  matching: strict
700
1041
  format:
701
1042
  pattern: "999"
702
- regex: '\A\d{1,3}\z'
1043
+ regex: '\A\d{3}\z'
703
1044
  printed_form: "PROVA 999"
1045
+ corrected_2026_08_08: >-
1046
+ regex was '\A\d{1,3}\z', which is wider than the instrument. Decret
1047
+ 456/2022 art. 16.1, verbatim: "A les plaques de matrícula s'hi inscriu un
1048
+ grup de TRES caràcters numèrics que va des del 000 fins al 999" — a group
1049
+ of three, and the range is written with leading zeros, so 000 and 007 are
1050
+ forms the block contains and "7" is not. Narrowed to exactly three.
1051
+ DATED NOTE: the count is a 2022 addition. The 2011 art. 13.1 said only
1052
+ "un grup de caràcters numèrics que van des del 000 fins al 999", with no
1053
+ number word — the range still implies three places, but the draft's
1054
+ one-to-three reading has no basis in either text.
704
1055
  format_evidence: statutory
705
1056
  format_note: >-
706
1057
  THE SERIAL IS THE THREE DIGITS; "PROVA" IS A LEGEND. art. 16.1 says so
@@ -761,6 +1112,19 @@ series:
761
1112
  ITV OUTCOME rather than by vehicle age, giving red plates to vehicles that
762
1113
  failed and white ones to those that passed. That is a genuinely unusual
763
1114
  design decision and it is why two historic series appear here.
1115
+ verifier_note_2026_08_08: >-
1116
+ FORMAT, CLASS AND COLOUR ALL CONFIRMED against art. 14 in force: Pantone
1117
+ 485 red ground, matt black embossed characters, 330 x 140 mm, one letter
1118
+ then two digits 00-99. Two things to record.
1119
+ (a) THE LEGEND WAS RENAMED. 2011 art. 11.1 printed "VEHICLE ANTIC" and the
1120
+ article was headed "vehicle antic o de museu"; 2022 art. 14.1 prints
1121
+ "VEHICLE HISTÒRIC". The design block carries the current word for a
1122
+ series dated from 2011. Not edited here (visual lane); recorded.
1123
+ (b) THE ABSENCE OF regex_strict IS CORRECT AND DELIBERATE, and the pass
1124
+ confirms it rather than "fixing" it: art. 14.2 says only "una lletra de
1125
+ la A a la Z, sense utilitzar les lletres de l'alfabet que puguin crear
1126
+ confusió" and — unlike arts. 6.3 and 7.5 — never names I, O and Q. An
1127
+ enumerated strict twin here would be an inference dressed as a statute.
764
1128
  sources:
765
1129
  - "https://bopadocuments.blob.core.windows.net/bopa-documents/034135/html/GR20221110_09_12_43.html # Decret 456/2022 art. 14"
766
1130
 
@@ -772,15 +1136,40 @@ series:
772
1136
  matching: strict
773
1137
  format:
774
1138
  pattern: "58999"
775
- regex: '\A5[89]\d{3}\z'
1139
+ regex: '\A58\d{3}\z'
776
1140
  format_evidence: statutory
777
1141
  format_note: >-
778
- A RESERVED NUMERIC BLOCK, 58001 to 59999 (art. 15) — carved out of the
779
- ordinary five-digit space rather than given its own prefix. The human
780
- pattern spells a representative value from the 58xxx half because the
781
- pattern DSL cannot express a numeric range; `regex` covers the whole
782
- block. The lower bound 58001 is not encoded, so the regex accepts 58000,
783
- which the block does not contain.
1142
+ A RESERVED NUMERIC BLOCK, 58001 to 58999 under the instrument in force
1143
+ (art. 15.1) — carved out of the ordinary five-digit space rather than
1144
+ given its own prefix. The human pattern spells a representative value
1145
+ because the pattern DSL cannot express a numeric range. The lower bound
1146
+ 58001 is not encoded, so the regex accepts 58000, which the block does
1147
+ not contain — one string of slack, and the only slack left.
1148
+ corrected_2026_08_08: >-
1149
+ THE HEADLINE §5.3 CATCH. The draft recorded the block as "58001 to 59999"
1150
+ with regex '\A5[89]\d{3}\z'. THE TWO INSTRUMENTS SAY DIFFERENT THINGS AND
1151
+ NEITHER SAYS THAT.
1152
+ Decret del 23-02-2011, art. 12.1, verbatim: "A les plaques de matrícula
1153
+ s'inscriu un grup de 5 caràcters que va des del 58001 final al 99999."
1154
+ ("final al" is the instrument's own slip for "fins al".)
1155
+ Decret 456/2022, art. 15.1, verbatim: "A les plaques de matrícula s'hi
1156
+ inscriu un grup de cinc caràcters numèrics que va des del 58001 fins al
1157
+ 58999."
1158
+ So the block was 58001-99999 from 2011 and was NARROWED to 58001-58999
1159
+ when the current Reglament commenced on 17 November 2022. The draft's
1160
+ 59999 is between the two and matches neither instrument — the precise
1161
+ failure mode the plates spec §5.3 names ("never average them"). The regex now
1162
+ carries the CURRENT statutory block and over-accepted 1,000 strings
1163
+ before this pass (59000-59999) plus 58000.
1164
+ THE PERIOD CONSEQUENCE IS LEFT TO THE MAINTAINER: on the §2.2 rule that a
1165
+ differing format is a differing series, the 2011-2022 wide block deserves
1166
+ its own ended series (ad-historic-passed-itv-2011 or similar) and this
1167
+ one should start 2022. That would be a series ADDITION, which the
1168
+ append-only rule permits but which a researcher must not make alone under
1169
+ I-11, so it is proposed in data/review/plates-verify/ad.md and not taken here.
1170
+ The period on this series is therefore left at 2011 and is KNOWN to be
1171
+ wider than the format it now carries — flagged rather than quietly
1172
+ re-cut.
784
1173
  design:
785
1174
  plate: { w: 330, h: 140, unit: mm }
786
1175
  background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
@@ -798,6 +1187,15 @@ series:
798
1187
  the one case where a bare five-digit string can be attributed with
799
1188
  confidence. Note the consequence for ad-moped, whose 00000-99999 space
800
1189
  nominally includes this block.
1190
+ verifier_note_2026_08_08: >-
1191
+ ONE PROVISION THE DRAFT MISSED, AND IT IS A SOURCED NEGATIVE WORTH HAVING:
1192
+ art. 15.3 provides that historic MOPEDS keep the ordinary moped plate —
1193
+ "La placa de matrícula per als ciclomotors que es registrin com a vehicles
1194
+ històrics és la mateixa que la placa de matrícula ordinària per als
1195
+ ciclomotors." So a historic ciclomotor is NOT in this series and NOT in
1196
+ ad-historic-failed-itv; it is in ad-moped. No new series is warranted (the
1197
+ instrument says the plate is the same one), and the block-overlap note
1198
+ above gains a second reason to exist.
801
1199
  sources:
802
1200
  - "https://bopadocuments.blob.core.windows.net/bopa-documents/034135/html/GR20221110_09_12_43.html # Decret 456/2022 art. 15"
803
1201
 
@@ -838,6 +1236,14 @@ series:
838
1236
  blue Pantone 300 legends. Two corrections to the secondary record are
839
1237
  carried here: the ground is white and not sky blue, and the serial is FOUR
840
1238
  digits and not three. Both come from art. 17.1 verbatim.
1239
+ verifier_note_2026_08_08: >-
1240
+ BOTH OF THE DRAFT'S CORRECTIONS TO THE SECONDARY RECORD ARE UPHELD on the
1241
+ raw text of art. 17.1: "El fons de les plaques és retroreflector, de color
1242
+ blanc" and "un grup de quatre caràcters numèrics que va des del 0000 fins
1243
+ al 9999". Pantone 485 characters and Pantone 300 legends confirmed. One
1244
+ dated detail: the top legend was plural before 2022 — 2011 art. 14.1 prints
1245
+ "VEHICLES ESPECIALS", 2022 art. 17.1 prints "VEHICLE ESPECIAL". Recorded,
1246
+ design block not edited.
841
1247
  sources:
842
1248
  - "https://bopadocuments.blob.core.windows.net/bopa-documents/034135/html/GR20221110_09_12_43.html # Decret 456/2022 art. 17.1"
843
1249
  - "https://bopadocuments.blob.core.windows.net/bopa-documents/011040/html/199A6.html # Llei del Codi de la circulació de 10-6-99 art. 204.7"
@@ -867,6 +1273,13 @@ series:
867
1273
  Pyrenean microstate having a statutory snowmobile plate is exactly the
868
1274
  kind of jurisdiction-specific series a general dataset misses; it shares
869
1275
  the special-vehicle design and differs only in its legend.
1276
+ verifier_note_2026_08_08: >-
1277
+ Confirmed verbatim against art. 18.1 — white retroreflective ground,
1278
+ Pantone 485 red border and characters, "MOTO DE NEU" in Pantone 300 blue,
1279
+ four digits 0000-9999, 225 x 115 mm. Same dated plural as the
1280
+ special-vehicle series: 2011 art. 15.1 printed "MOTOS DE NEU".
1281
+ Placement fact available if wanted (art. 22.5): a snowmobile carries a
1282
+ single rear plate.
870
1283
  sources:
871
1284
  - "https://bopadocuments.blob.core.windows.net/bopa-documents/034135/html/GR20221110_09_12_43.html # Decret 456/2022 art. 18"
872
1285
 
@@ -913,10 +1326,17 @@ series:
913
1326
  period_evidence: instrument-in-force
914
1327
  period_note: >-
915
1328
  Llei 24/2014, del 30 d'octubre, BOPA núm. 67, any 2014, published
916
- 25 November 2014. Note that Andorra puts personalised plates in a LAW
917
- passed by the Consell General and sanctioned by both Co-Princes, where
918
- San Marino uses a decree — a markedly higher instrument for the same
919
- subject.
1329
+ 26 November 2014 (the sumari of BOPA núm. 67, any 26 is dated 26.11.2014;
1330
+ the draft's 25 November was the third instance of the same off-by-one and
1331
+ is corrected). Note that Andorra puts personalised plates in a LAW passed
1332
+ by the Consell General and sanctioned by both Co-Princes, where San Marino
1333
+ uses a decree — a markedly higher instrument for the same subject.
1334
+ COMMENCEMENT, which the draft did not state: disposició final segona,
1335
+ verbatim — "Aquesta Llei entra en vigor al cap d'un mes de ser publicada al
1336
+ Butlletí Oficial del Principat d'Andorra." One month from 26 November 2014
1337
+ is 26 DECEMBER 2014, so `period.start: 2014` is correct but rests on the
1338
+ last six days of the year; no personalised plate can predate 26 December
1339
+ 2014 and first issuance in 2015 would not contradict anything here.
920
1340
  matching: recall-only
921
1341
  format:
922
1342
  pattern: "LL999"
@@ -932,6 +1352,49 @@ series:
932
1352
  lletres" (h). The regex enforces the length bound and the letters-then-
933
1353
  digits ordering but accepts a five-character string with only one
934
1354
  letter, which (h) forbids. A match is therefore a shape hit.
1355
+ unexpressed_constraints_2026_08_08: >-
1356
+ THE §5.3 PASS FOUND THREE MORE CONSTRAINTS IN art. 7.1 THAT THE DRAFT DID
1357
+ NOT LIST, one of which the regex actively violates. `recall-only` was
1358
+ already the right call; these widen the gap it declares.
1359
+ (d) "No s'accepten combinacions que coincideixin o puguin coincidir amb
1360
+ la numeració de les matrícules ordinàries." A personalised mark may
1361
+ not look like an ordinary one — yet the regex accepts A0000, which is
1362
+ precisely the ordinary lettered grammar of art. 6.2, and AA000, which
1363
+ is its next stage. The single most over-accepting case, and it is
1364
+ forbidden in terms.
1365
+ (f) "No s'accepten combinacions que continguin la menció 'AND' i altres
1366
+ pròpies de l'Estat o dels poders públics andorrans." AND is barred as
1367
+ a substring; the regex accepts it.
1368
+ (e) and (j) are discretionary or registry-state rules — combinations that
1369
+ blur letters against digits, and combinations already reserved or
1370
+ attributed — and are unexpressible in a regex by nature.
1371
+ None of these is encoded, because a regex that excluded the ordinary
1372
+ grammar would be asserting a negative the dataset cannot verify per
1373
+ plate; they are recorded so the `recall-only` declaration is honest about
1374
+ WHAT it is recalling.
1375
+ eligibility_disagreement_2026_08_08: >-
1376
+ LAW AND REGLAMENT DISAGREE ON WHICH VEHICLES MAY CARRY ONE. Recorded
1377
+ verbatim, not averaged, and the narrower `categories` list is left alone
1378
+ pending the maintainer's call.
1379
+ Llei 24/2014 art. 3.1 admits four categories: "a) Categoria 'L' […] amb
1380
+ excepció dels de la categoria 'L1' (ciclomotors). b) Categoria 'M' […]
1381
+ c) Categoria 'N' o la que correspongui a vehicles de motor destinats al
1382
+ transport de mercaderies […] d) Categoria 'O' o la que correspongui a
1383
+ remolcs i semiremolcs." That is motorcycles, cars, GOODS VEHICLES and
1384
+ TRAILERS.
1385
+ Decret 456/2022 art. 26.1 is narrower: the personalised mark "s'aplica a
1386
+ la placa de matrícula ordinària i a la placa de matrícula ordinària
1387
+ reduïda dels vehicles automòbils, així com a la placa de matrícula
1388
+ ordinària de les motocicletes" — cars and motorcycles only, no mention of
1389
+ N or O.
1390
+ This series lists [car, van, motorcycle], which follows the reglament and
1391
+ omits truck, trailer and semitrailer. A law outranks a decree, so the
1392
+ wider list is probably right; but "probably" is not the standard, the
1393
+ reglament is the instrument the rest of this file is built on, and
1394
+ MAJORITY IS NOT AUTHORITY cuts against quietly picking one.
1395
+ Confirmed on both routes: art. 3.2 excludes the diplomatic, consular,
1396
+ embassy-staff, temporary, prova, special, snowmobile, giny and museum
1397
+ vehicles, so no personalised plate can appear on those series.
935
1398
  reserved_strings:
936
1399
  rule: >-
937
1400
  art. 7.1(i): a personalised plate may not consist only of the letters
@@ -958,4 +1421,44 @@ series:
958
1421
  art. 7.1(i) is the cleanest statutory statement in this whole dossier of
959
1422
  which alphabetic markers Andorra regards as serial prefixes.
960
1423
  sources:
961
- - "https://bopadocuments.blob.core.windows.net/bopa-documents/026067/html/lo26067002.html # Llei 24/2014, del 30 d'octubre, art. 7.1 lit. a-i"
1424
+ - "https://bopadocuments.blob.core.windows.net/bopa-documents/026067/html/lo26067002.html # Llei 24/2014, del 30 d'octubre, arts. 2, 3.1-3.2, 4.1, 6.3, 7.1 lit. a-j, disposició final segona"
1425
+ - "https://bopadocuments.blob.core.windows.net/bopa-documents/034135/html/GR20221110_09_12_43.html # Decret 456/2022 art. 26 — the reglament's own personalised-plate article, incl. 26.1 (eligible vehicles) and 26.5 (afectació a un altre vehicle)"
1426
+
1427
+ # ===========================================================================
1428
+ # §5.3 VERIFICATION — researcher-only, per I-11.
1429
+ # ===========================================================================
1430
+ verification:
1431
+ protocol: "The plates spec §5.3"
1432
+ status: awaiting_verification
1433
+ verifier: null
1434
+ researcher_pass:
1435
+ date: "2026-08-08"
1436
+ role: researcher
1437
+ loop: QA-LOOP-2
1438
+ dossier: data/review/plates-verify/ad.md
1439
+ method: >-
1440
+ Every series' period boundaries, format regex, class and colours were
1441
+ re-derived from the PRIMARY instruments already pinned in this file, read
1442
+ as raw gazette text rather than through a summariser (the BOPA blob store
1443
+ serves UTF-16 HTML; it was fetched, decoded and tag-stripped locally, so
1444
+ every quote above is a byte-for-byte extract), PLUS one independent route
1445
+ per claim — the BOPA sumari PDFs for gazette dates, the two Correccions
1446
+ d'errata for the citation and the as-published caveat, the repealed 2011
1447
+ Reglament for period-scoped drift, the Automòbil Club d'Andorra's
1448
+ concession page for the agency-stated date, and leslleis.com as a
1449
+ third-party check on the decree's title.
1450
+ signing_rule: >-
1451
+ THIS SESSION RESEARCHED AND MAY NOT CERTIFY. I-11: the author never certifies
1452
+ their own work — in the correction pass, not one of five major wrong
1453
+ conclusions was caught by its author. `verifier` stays null and `status`
1454
+ stays awaiting_verification until a second session re-derives. The
1455
+ corrections landed here are themselves claims and inherit that status.
1456
+ disagreements_recorded_not_resolved:
1457
+ - "MT as serial prefix vs MT as legend — Decret 456/2022 art. 13.1 against Llei 24/2014 art. 7.1(i). See ad-temporary-mt.format.verifier_dissent_2026_08_08."
1458
+ - "Personalised-plate eligibility — Llei 24/2014 art. 3.1 (categories L, M, N, O) against Decret 456/2022 art. 26.1 (cars and motorcycles). See ad-personalized.format.eligibility_disagreement_2026_08_08."
1459
+ open_for_the_verifier:
1460
+ - "ad-historic-passed-itv: the block narrowed 58001-99999 → 58001-58999 at the 2022 commencement. Proposed §2.2 series split; period left at 2011 and knowingly wider than the format."
1461
+ - "ad-consular-cc: CC carried TWO digits under the 2011 Reglament and three from 2022. Same proposed split."
1462
+ - "ad-standard-numeric / ad-motorcycle: art. 7.3 gives motorcycles the five-digit base stage, and no series in this file matches a five-digit motorcycle plate. One-word categories fix or one new ended series."
1463
+ - "common.character_rights: Llei 12/2021 art. 108(3) and Decret 456/2022 art. 3.5 claim the plate characters and state symbols as Govern property. Counter-example to the plates spec §6 sample finding; needs carrying back into §6 and, separately, a counsel view. Art/emblem posture deliberately untouched."
1464
+ - "annex_gap: the 2022 annex is 404 at its advertised path while the repealed 2011 annex is live. art. 21 makes the annex normative for the character shapes, so the glyph spec is reachable only in the repealed instrument."