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
@@ -0,0 +1,432 @@
1
+ # plates/tr.yml — Türkiye (the plates spec gate L5).
2
+ #
3
+ # THE ONE THING TO READ FIRST: **ON 2025-11-04 TÜRKİYE REPEALED ITS ENTIRE
4
+ # PLATE-FORMAT APPARATUS OUT OF THE KARAYOLLARI TRAFİK YÖNETMELİĞİ, AND WHAT
5
+ # REPLACED IT IS NOT SOURCED IN THIS PASS.** The amending regulation
6
+ # (Resmî Gazete 4 Kasım 2025, sayı 33067) MADDE 4 repeals KTY Maddeler 54-59 —
7
+ # the letter/digit groups, the colour table, the serial-allocation rules, the
8
+ # special-allocation plates and the vanity-plate regime — and MADDE 5 repeals
9
+ # the engineering drawings Ek-12 through Ek:12/Y. In the current consolidated
10
+ # text every one of Maddeler 54-59 now reads `(Mülga:RG-4/11/2025-33067)`.
11
+ #
12
+ # WHAT THAT MEANS FOR EVERY SERIES BELOW, STATED ONCE:
13
+ # * The format, colour and letter-group facts are `statute` tier FOR THE
14
+ # PERIOD ENDING 2025-11-03. They are quoted from the pre-repeal text.
15
+ # * For issuance TODAY they are DE FACTO ONLY. Plates in the street are
16
+ # unchanged, but no in-force instrument was read. Presumably an İçişleri or
17
+ # EGM-level instrument now governs; it was not opened and is NOT guessed.
18
+ # * So no series here is closed. A repeal of the article that DESCRIBES a
19
+ # format is not evidence that the format stopped being issued, and this
20
+ # file must not turn a legal-basis change into a fake era boundary. Each
21
+ # series carries `period.start` from its enabling instrument, stays open,
22
+ # and records the repeal in `legal_basis_note`.
23
+ # KTY **Madde 53 (physical qualities and dimensions) SURVIVED** the repeal and
24
+ # is still in force — it is not in the repeal list. That is why the dimension
25
+ # claims here are at a higher tier than the format claims.
26
+ #
27
+ # FIVE MORE STRUCTURAL FACTS
28
+ #
29
+ # 1. THE SIX SERIAL SHAPES ARE A CLOSED STATUTORY LIST, NOT AN OBSERVATION.
30
+ # KTY Madde 55 ¶1 (as amended RG-19/2/2014-28918), verbatim: "Tescil
31
+ # plakalarında; il kod numarasından sonra ikili harf üçlü rakam, tekli harf
32
+ # dörtlü rakam ve üçlü harf ikili rakam ile ikili harf dörtlü rakam, tekli
33
+ # harf beşli rakam ve üçlü harf üçlü rakamdan oluşan harf ve rakam grupları
34
+ # bulunur." The regulation states the COUNTS IN WORDS and gives no example
35
+ # plate, so the masks in `variants` are this file's rendering of the counts.
36
+ #
37
+ # 2. THE SERIAL ALPHABET IS GENUINELY UNSOURCED, AND THIS FILE SAYS SO RATHER
38
+ # THAN GUESSING. The KTY nowhere enumerates the permitted letters: Madde 55
39
+ # ¶2 and Madde 57 delegate the character inventory to "Emniyet Genel
40
+ # Müdürlüğünce belirlenecek listeler" (EGM-determined lists), which were not
41
+ # obtained. The widely-repeated claim that Ç Ğ İ Ö Ş Ü and Q W X are
42
+ # excluded is TERTIARY ONLY. This file therefore does NOT declare a narrowed
43
+ # `serial_alphabet:` — declaring the 23-letter set would assert as fact the
44
+ # exact thing that could not be sourced. It inherits the global A-Z 0-9,
45
+ # which is the WIDER set, because a too-narrow alphabet silently fails real
46
+ # plates while a too-wide one merely under-rejects.
47
+ # Weak corroboration, recorded as corroboration and not as proof: every
48
+ # letter group the regulation itself names (A, AA, AAA, CC, CD, CG, CM,
49
+ # MA-MZ, T, G, GMR, JAA-JZZ, SGH, CB, TBMM) is ASCII and none contains
50
+ # Q, W or X.
51
+ #
52
+ # 3. THERE IS NO SEPARATOR GLYPH, AND THAT IS NOW A STRONGER CLAIM THAN USUAL.
53
+ # The regulation specifies no character between the province code and the
54
+ # serial — no hyphen, no dot. Positioning lived ENTIRELY in the Ek-12/*
55
+ # engineering drawings, which are repealed and were not retrieved. So "no
56
+ # hyphen, no dot" is safe; the exact millimetre gap is unverified. Every
57
+ # pattern renders the gap as the emitted SPACE of §2.6 and every regex
58
+ # accepts it as optional.
59
+ #
60
+ # 4. THE PROVINCE-CODE RANGE IS NOT SOURCED AND IS DELIBERATELY NOT ENCODED.
61
+ # Madde 55 ¶2 delegates the il-kod list to EGM; no official list page was
62
+ # opened. The familiar 01-81 range is TERTIARY ONLY, so this file does NOT
63
+ # narrow the province code in any regex — an unsourced narrowing would
64
+ # reject real plates, which is the one failure mode worse than accepting too
65
+ # many. Statute DOES confirm a two-digit province index exists: Madde 58/c
66
+ # prefixes a two-digit province order number to governors' plates.
67
+ # No decode table ships. That is V2.
68
+ #
69
+ # 5. TÜRKİYE HAS NO HISTORIC/CLASSIC PLATE SERIES, AND THAT IS A FINDING.
70
+ # Searching the full pre-repeal KTY for klasik / tarihi araç / antika returns
71
+ # NOTHING. Same for "serbest bölge" (free zone). These are recorded as
72
+ # ABSENT rather than as not-yet-researched, which is a different and more
73
+ # useful claim. Military plates are likewise absent from the KTY entirely —
74
+ # they are governed by MSB/TSK instruments outside this regulation.
75
+ #
76
+ # §VERIFIER — open questions in priority order
77
+ # V1. THE BIG ONE: what instrument governs plate format and colour after
78
+ # 2025-11-04? Everything below is pre-repeal text until this is answered.
79
+ # V2. The EGM letter-group lists and the il-kod table — then, and only then,
80
+ # ship plates/_decode/tr-province-codes.yml.
81
+ # V3. Colour hexes. NO hex is asserted anywhere in this file: Madde 56 names
82
+ # colours in words ("mavi", "yeşil", "sarı") and words are not hex.
83
+ # V4. Ek-12/* glyph geometry, stroke widths and inter-group gaps (repealed;
84
+ # retrieve from an archived copy).
85
+ # V5. Digit widths for the A/AA/AAA office series and the CB/TBMM special
86
+ # allocations — named in statute, widths not stated, so NOT shipped.
87
+ jurisdiction: tr
88
+ authority:
89
+ name: "Emniyet Genel Müdürlüğü (General Directorate of Security)"
90
+ url: "https://www.mevzuat.gov.tr/MevzuatMetin/yonetmelik/7.5.8182.pdf"
91
+ authority_evidence: >-
92
+ KTY Madde 55 ¶2 assigns plate-number allocation to the EGM ("Emniyet Genel
93
+ Müdürlüğünce belirlenecek listelerdeki ... sıra esasına göre tahsis
94
+ edilir"), and Madde 57 routes district letter-group allocation through the
95
+ provincial police chief and governor. The url is the consolidated
96
+ regulation that says so, not an EGM marketing page. Printing and
97
+ distribution of plates is carried out by the Türkiye Şoförler ve
98
+ Otomobilciler Federasyonu per a further KTY article whose heading was seen
99
+ but whose full text was not read — recorded as partial.
100
+ binding: vehicle
101
+ binding_note: >-
102
+ Kanun 2918 Madde 21: a registered vehicle may not be used without a "Tescil
103
+ Belgesi" and a "Tescil Plakası" — the plate is an attribute of the registered
104
+ VEHICLE. Note Madde 28 separately provides that state-owned vehicles' plates
105
+ differ in COLOUR, which is a class marker on the vehicle, not owner-binding
106
+ in the Swiss sense.
107
+ instrument:
108
+ act:
109
+ citation: "Karayolları Trafik Kanunu No. 2918"
110
+ url: "https://www.mevzuat.gov.tr/mevzuatmetin/1.5.2918.pdf"
111
+ relevant_articles: >-
112
+ Madde 21 (registration document + plate mandatory), Madde 26
113
+ (distinguishing marks incl. plate, colour, shape, symbol), Madde 28
114
+ (state-owned vehicles' plates are a different colour — the statutory
115
+ basis for the Madde 56 colour table).
116
+ regulation:
117
+ citation: "Karayolları Trafik Yönetmeliği, promulgated 18/7/1997, RG 23053 mükerrer"
118
+ url: "https://www.mevzuat.gov.tr/MevzuatMetin/yonetmelik/7.5.8182.pdf"
119
+ pre_repeal_text_url: "https://web.archive.org/web/20250108225320/https://www.mevzuat.gov.tr/MevzuatMetin/yonetmelik/7.5.8182.pdf"
120
+ repeal:
121
+ citation: "Karayolları Trafik Yönetmeliğinde Değişiklik Yapılmasına Dair Yönetmelik, RG 4/11/2025 sayı 33067"
122
+ url: "https://www.resmigazete.gov.tr/eskiler/2025/11/20251104-4.htm"
123
+ effect: >-
124
+ MADDE 4 repeals KTY Maddeler 54-59; MADDE 5 repeals Ek-12 through
125
+ Ek:12/Y. Madde 53 (physical qualities/dimensions) is NOT repealed.
126
+ series:
127
+
128
+ # =========================================================================
129
+ # THE ORDINARY MARK. Province code + one of six statutory letter/digit
130
+ # groups. One series, six shapes as variants (§2.3: shared design and
131
+ # period, differing only in group widths).
132
+ # =========================================================================
133
+ - id: tr-standard-2014
134
+ class: standard
135
+ categories: [car, van, truck, bus, motorcycle, trailer]
136
+ period: { start: 2014 }
137
+ period_evidence: enabling-instrument
138
+ period_note: >-
139
+ 2014 is the date of RG-19/2/2014-28918, the amendment that SUBSTITUTED
140
+ the six-group enumeration into Madde 55 — an enabling-instrument date, in
141
+ the za.yml sense, expressly not a first-issue date. The parent regulation
142
+ dates from 1997 and earlier Turkish plates of this general shape long
143
+ predate both; the date on which each shape began to be issued is a
144
+ separate and weaker fact that this pass did not establish.
145
+ legal_basis_note: >-
146
+ Madde 55 was REPEALED on 2025-11-04 (RG 33067). The shapes are still
147
+ issued; the article describing them is gone. See the file header.
148
+ matching: strict
149
+ format:
150
+ pattern: "99 LL 9999"
151
+ # The union of the six statutory groups, written in PRINTED form (§2.6
152
+ # rule 2) with the gap optional. The province code is NOT narrowed — see
153
+ # header fact 4.
154
+ regex: '\A\d{2} ?(?:[A-Z] ?\d{4,5}|[A-Z]{2} ?\d{3,4}|[A-Z]{3} ?\d{2,3})\z'
155
+ variants:
156
+ - { pattern: "99 LL 999", note: "ikili harf üçlü rakam — two letters, three figures" }
157
+ - { pattern: "99 L 9999", note: "tekli harf dörtlü rakam — one letter, four figures" }
158
+ - { pattern: "99 LLL 99", note: "üçlü harf ikili rakam — three letters, two figures" }
159
+ - { pattern: "99 LL 9999", note: "ikili harf dörtlü rakam — two letters, four figures (rendered on the parent pattern)" }
160
+ - { pattern: "99 L 99999", note: "tekli harf beşli rakam — one letter, five figures" }
161
+ - { pattern: "99 LLL 999", note: "üçlü harf üçlü rakam — three letters, three figures" }
162
+ progression: >-
163
+ Madde 55 ¶2: numbers are allotted "sıra esasına göre" (in sequence)
164
+ from EGM-determined lists of province codes and letter/digit groups.
165
+ Madde 57 adds that each district registration office receives its own
166
+ DISTINCT letter groups, allotted on the provincial police chief's
167
+ proposal with the governor's approval, and that a letter group given to
168
+ one district may not be given to another.
169
+ FOLKLORE, FLAGGED AND NOT ASSERTED: the enthusiast claim that letter
170
+ series run alphabetically in national registration order is NOT
171
+ supported by the text — sequence is within per-province/per-district
172
+ EGM lists, which is a much weaker era signal.
173
+ design:
174
+ plate: { w: 520, h: 110, unit: mm }
175
+ plate_variants:
176
+ - { w: 240, h: 150, unit: mm, note: "motorised bicycle, motorcycle, load motorcycle, rubber-tyred tractor — 15x24 cm, one plate, rear (Madde 53/b as amended RG-21/3/2012-28240)" }
177
+ - { w: 320, h: 210, unit: mm, note: "car/van/minibus/truck/tractor unit/bus REAR alternative — 21x32 cm" }
178
+ - { w: 300, h: 150, unit: mm, note: "15x30 cm where the vehicle's recess fits neither standard size" }
179
+ background_note: "white (Madde 56 ¶1(b), 'resmi olmayan' vehicles) — colour named in words; no hex asserted (V3)"
180
+ foreground_note: "black characters"
181
+ band:
182
+ side: left
183
+ content: "(TR) national identification mark inside a 4 x 10 cm blue rectangle"
184
+ band_note: >-
185
+ Madde 55 ¶3: the (TR) mark shown in Ek:12/V is carried BEFORE the
186
+ province code inside a 4x10 cm blue rectangle, applied as a reflective
187
+ layer during manufacture and not removable physically or chemically
188
+ without damaging the plate. This is a STATUTORY band, not an EU band —
189
+ Türkiye is not an EU member and the regulation does not reference the
190
+ EU specification. Descriptions of it as a "Euroband" are a comparison
191
+ and are not repeated here as a claim. The commonly-cited 1996
192
+ introduction date is tertiary and is NOT asserted.
193
+ material: >-
194
+ Madde 53 (STILL IN FORCE): aluminium 0.97 mm, DIN 1745, AL 99,5 F11
195
+ half-hard; tensile 100-150 N/mm; elongation >= 6%. Characters and
196
+ border embossed 1-3 mm; corners radiused 10 mm; border width 5 mm.
197
+ security: >-
198
+ Madde 56 final paragraphs: reflective foil printed with repeating
199
+ crescent-and-star and "TR" security marks (Ek:12/U) fitting a 10x10 mm
200
+ area and repeating every 100 mm horizontally / 50 mm vertically,
201
+ designed to be visible from ~1.8 m at a 30 degree angle and
202
+ deliberately NOT visible closer than 1 m or beyond 4 m (Ek:12/Y).
203
+ Plastic and cardboard plates are exempt.
204
+ rear_differs: true
205
+ rear_differs_note: >-
206
+ Madde 53/b: front 11x52 cm; rear 11x52 OR 21x32 cm. The rear may
207
+ legitimately be the taller two-line format while the front is not.
208
+ mounting: >-
209
+ Madde 54 (repealed 2025-11-04): motorcycles/mopeds one plate, rear,
210
+ 20-150 cm above ground; trailers/semi-trailers one, rear, 30-120 cm;
211
+ all other motor vehicles two (front and rear), 30-120 cm; tractors two,
212
+ 30-400 cm.
213
+ region_encoding: none
214
+ region_encoding_mechanism: >-
215
+ The leading two digits are the province (il) code, placed after the blue
216
+ (TR) box. `none` here means NO TABLE SHIPPED, not "no geography encoded":
217
+ Madde 55 ¶2 delegates the list to EGM and no official list was opened, so
218
+ the mapping is V2. See header fact 4 for why the range is not encoded.
219
+ notes: >-
220
+ The ordinary Turkish mark, six statutory shapes, one design era.
221
+ sources:
222
+ - "https://web.archive.org/web/20250108225320/https://www.mevzuat.gov.tr/MevzuatMetin/yonetmelik/7.5.8182.pdf # KTY Madde 55 para 1 six-group enumeration; para 2 EGM sequential allotment; Madde 57 district letter groups; Madde 53 dimensions/material; Madde 56 colours and security foil — pre-repeal consolidated text, accessed 2026-09-12"
223
+ - "https://www.mevzuat.gov.tr/MevzuatMetin/yonetmelik/7.5.8182.pdf # current consolidated KTY confirming Maddeler 54-59 now read (Mulga:RG-4/11/2025-33067) and that Madde 53 survives — accessed 2026-09-12"
224
+ - "https://www.resmigazete.gov.tr/eskiler/2025/11/20251104-4.htm # the repealing regulation, RG 4/11/2025 sayi 33067, MADDE 4 and MADDE 5 — accessed 2026-09-12"
225
+ - "https://www.mevzuat.gov.tr/mevzuatmetin/1.5.2918.pdf # Kanun 2918 Madde 21 plate mandatory, Madde 26 distinguishing marks, Madde 28 state vehicles differ in colour — accessed 2026-09-12"
226
+
227
+ - id: tr-diplomatic-cd-cm
228
+ class: diplomatic
229
+ categories: [car, van]
230
+ period: { start: 2007 }
231
+ period_evidence: enabling-instrument
232
+ period_note: >-
233
+ 2007 = RG-18/05/2007-26526, the amendment that set the CD/CM colour rule
234
+ in Madde 56. The groups themselves are older; this is the date of the
235
+ instrument that governs the entry, not a first-issue date.
236
+ legal_basis_note: "Maddeler 55, 56 and 58 all repealed 2025-11-04 (RG 33067)."
237
+ matching: strict
238
+ format:
239
+ pattern: "99 CD 9999"
240
+ regex: '\A\d{2} ?C[DM] ?\d{4}\z'
241
+ design:
242
+ background_note: "white ground (Madde 56) — no hex asserted (V3)"
243
+ foreground_note: "green characters"
244
+ region_encoding: none
245
+ notes: >-
246
+ Embassy staff enjoying diplomatic immunity, letter groups CD and CM
247
+ (Madde 55 para 4). The four-digit width is the regulation's OWN range
248
+ text in Madde 58: leased-vehicle allocations run CD 0001-CD 9999 and
249
+ CM 0001-CM 9999, on written proposal of the Ministry of Foreign Affairs
250
+ with Ministry of Interior approval, on a reciprocity basis, and are
251
+ returned at expiry. Those are statutory RANGES, not observed plates.
252
+ CORRECTION OF RECORD: an earlier draft of this file gave three digits
253
+ here on tertiary evidence. The statute says four.
254
+ sources:
255
+ - "https://web.archive.org/web/20250108225320/https://www.mevzuat.gov.tr/MevzuatMetin/yonetmelik/7.5.8182.pdf # Madde 55 para 4 CD/CM groups; Madde 56 white ground green characters as amended RG-18/05/2007-26526; Madde 58 the CD/CM 0001-9999 leased-vehicle ranges — accessed 2026-09-12"
256
+
257
+ - id: tr-consular-cc-cg
258
+ class: consular
259
+ categories: [car, van]
260
+ period: { start: 2007 }
261
+ period_evidence: enabling-instrument
262
+ legal_basis_note: "Maddeler 55, 56 and 58 all repealed 2025-11-04 (RG 33067)."
263
+ matching: strict
264
+ format:
265
+ pattern: "99 CC 9999"
266
+ regex: '\A\d{2} ?C[CG] ?\d{4}\z'
267
+ design:
268
+ background_note: "green ground (Madde 56) — no hex asserted (V3)"
269
+ foreground_note: "white characters"
270
+ region_encoding: none
271
+ notes: >-
272
+ Consulate-general staff, letter groups CC and CG. The colour polarity is
273
+ the deliberate INVERSE of the diplomatic series above — white on green
274
+ here, green on white there — and both are verbatim in the Madde 56 table,
275
+ which is why this file states an asymmetry it would otherwise suspect of
276
+ being a transcription error. Four-digit width from the Madde 58 ranges
277
+ CC 0001-CC 9999 and CG 0001-CG 9999.
278
+ sources:
279
+ - "https://web.archive.org/web/20250108225320/https://www.mevzuat.gov.tr/MevzuatMetin/yonetmelik/7.5.8182.pdf # Madde 55 para 4 CC/CG groups; Madde 56 green ground white characters; Madde 58 CC/CG 0001-9999 ranges — accessed 2026-09-12"
280
+
281
+ - id: tr-foreigner-ma-mz
282
+ class: standard
283
+ categories: [car, van]
284
+ period: { start: 2000 }
285
+ period_evidence: enabling-instrument
286
+ period_note: "RG-02/11/2000-24218, the amendment carrying the MA-MZ entry in the Madde 56 colour table."
287
+ legal_basis_note: "Maddeler 55 and 56 repealed 2025-11-04 (RG 33067)."
288
+ matching: strict
289
+ format:
290
+ pattern: "99 ML 9999"
291
+ regex: '\A\d{2} ?M[A-Z] ?\d{3,4}\z'
292
+ design:
293
+ background_note: "white ground — the SAME colours as an ordinary plate (Madde 56); no hex asserted (V3)"
294
+ foreground_note: "black characters"
295
+ region_encoding: none
296
+ notes: >-
297
+ Vehicles of foreigners resident abroad and temporarily in Türkiye, letter
298
+ groups MA to MZ (Madde 55 para 4). Classed `standard` rather than given a
299
+ class of its own because it is an ordinary white/black plate drawn from a
300
+ reserved letter block, not a distinct design. The digit width is NOT
301
+ stated for this group, so the regex admits the three- and four-figure
302
+ widths the Madde 55 two-letter shapes allow, and no more. Overlaps
303
+ tr-standard-2014 by construction: an MA-MZ plate IS a two-letter standard
304
+ shape, and a consumer matching both is seeing the truth, not a conflict.
305
+ sources:
306
+ - "https://web.archive.org/web/20250108225320/https://www.mevzuat.gov.tr/MevzuatMetin/yonetmelik/7.5.8182.pdf # Madde 55 para 4 MA-MZ group; Madde 56 white/black as amended RG-02/11/2000-24218 — accessed 2026-09-12"
307
+
308
+ - id: tr-temporary-g
309
+ class: temporary
310
+ categories: [car, van, truck, bus]
311
+ period: { start: 2014 }
312
+ period_evidence: instrument-in-force
313
+ legal_basis_note: "Maddeler 55 and 56 repealed 2025-11-04 (RG 33067)."
314
+ matching: strict
315
+ format:
316
+ pattern: "99 G 9999"
317
+ regex: '\A\d{2} ?G ?\d{4}\z'
318
+ design:
319
+ background_note: "yellow ground (Madde 56, 'geçici') — no hex asserted (V3)"
320
+ foreground_note: "black characters"
321
+ region_encoding: none
322
+ notes: >-
323
+ Temporary traffic document (geçici trafik belgesi), general case — the G
324
+ group plus four figures, for every temporary purpose other than trial and
325
+ demonstration. Distinct from tr-temporary-t, which covers trial and
326
+ demonstration vehicles only. Plates issued for six days or fewer may be
327
+ plastic or cardboard and then additionally carry a 2 cm white band
328
+ running top-left to bottom-right (Madde 53, still in force).
329
+ The G is a plain literal, not the pattern DSL's letter token; it needs no
330
+ escape because the escape exists only for the tokens `9` and `L` (owner
331
+ ruling 2026-08-02).
332
+ sources:
333
+ - "https://web.archive.org/web/20250108225320/https://www.mevzuat.gov.tr/MevzuatMetin/yonetmelik/7.5.8182.pdf # Madde 55 para 4 G group four figures; Madde 56 yellow/black for gecici; Madde 53 plastic/cardboard six-day plates and the 2 cm diagonal band — accessed 2026-09-12"
334
+
335
+ - id: tr-temporary-t
336
+ class: temporary
337
+ categories: [car, van, truck, bus]
338
+ period: { start: 2014 }
339
+ period_evidence: instrument-in-force
340
+ legal_basis_note: "Maddeler 55 and 56 repealed 2025-11-04 (RG 33067)."
341
+ matching: strict
342
+ format:
343
+ pattern: "99 T 9999"
344
+ regex: '\A\d{2} ?T ?\d{4}\z'
345
+ design:
346
+ background_note: "yellow ground (Madde 56, 'geçici') — no hex asserted (V3)"
347
+ foreground_note: "black characters"
348
+ region_encoding: none
349
+ notes: >-
350
+ Temporary traffic document for TRIAL AND DEMONSTRATION vehicles
351
+ specifically — the T group plus four figures. Separated from
352
+ tr-temporary-g because the regulation separates them, and because the
353
+ distinction is the one a consumer actually wants: a T plate marks a
354
+ vehicle being tested or demonstrated, not merely one awaiting
355
+ registration.
356
+ NOT A TAXI SERIES. The widely-repeated "T = taksi" reading, and the
357
+ Istanbul TAA-TKZ taxi block, appear NOWHERE in the KTY; see the file's
358
+ commercial-plate note under tr-standard-2014's sources and V5.
359
+ sources:
360
+ - "https://web.archive.org/web/20250108225320/https://www.mevzuat.gov.tr/MevzuatMetin/yonetmelik/7.5.8182.pdf # Madde 55 para 4 T group, deneme ve teshir, four figures; Madde 56 yellow/black — accessed 2026-09-12"
361
+
362
+ - id: tr-temporary-customs-gmr
363
+ class: temporary
364
+ categories: [car, van, truck, bus]
365
+ period: { start: 2014 }
366
+ period_evidence: instrument-in-force
367
+ legal_basis_note: "Maddeler 55 and 56 repealed 2025-11-04 (RG 33067)."
368
+ matching: strict
369
+ format:
370
+ pattern: "99 GMR 999"
371
+ regex: '\A\d{2} ?GMR ?\d{3}\z'
372
+ design:
373
+ background_note: "green ground (Madde 56, 'geçici gümrük') — no hex asserted (V3)"
374
+ foreground_note: "red characters"
375
+ region_encoding: none
376
+ notes: >-
377
+ Temporary CUSTOMS plates — GMR plus three figures, and the only plate in
378
+ the Turkish table printed red-on-green. A third temporary series, kept
379
+ separate from both tr-temporary-g and tr-temporary-t because its colour
380
+ pair and its letter group both differ. Customs temporary plates may be
381
+ plastic or cardboard (Madde 53) and then carry the 2 cm diagonal band.
382
+ sources:
383
+ - "https://web.archive.org/web/20250108225320/https://www.mevzuat.gov.tr/MevzuatMetin/yonetmelik/7.5.8182.pdf # Madde 55 para 4 GMR group three figures; Madde 56 green ground red characters for gecici gumruk — accessed 2026-09-12"
384
+
385
+ - id: tr-jandarma-2017
386
+ class: military
387
+ categories: [car, van, truck, bus]
388
+ period: { start: 2017 }
389
+ period_evidence: enabling-instrument
390
+ period_note: >-
391
+ The Jandarma and Sahil Güvenlik entries were ADDED to Madde 55 para 4 and
392
+ the Madde 56 colour table by RG-31/3/2017-30024. That is a real birth
393
+ date for the series, not merely the governing instrument — and it is 2017,
394
+ correcting the 2018 date that circulates in tertiary sources.
395
+ legal_basis_note: "Maddeler 55 and 56 repealed 2025-11-04 (RG 33067)."
396
+ matching: strict
397
+ format:
398
+ pattern: "99 JLL 999"
399
+ regex: '\A\d{2} ?J[A-Z]{2} ?\d{3}\z'
400
+ design:
401
+ background_note: "blue ground (Madde 56) — no hex asserted (V3)"
402
+ foreground_note: "white characters"
403
+ region_encoding: none
404
+ notes: >-
405
+ Jandarma Genel Komutanlığı — letter groups JAA to JZZ plus three figures.
406
+ Classed `military` because the Jandarma is a gendarmerie under military
407
+ command structure; it shares the blue/white colour pair with the police
408
+ and the Sahil Güvenlik.
409
+ sources:
410
+ - "https://web.archive.org/web/20250108225320/https://www.mevzuat.gov.tr/MevzuatMetin/yonetmelik/7.5.8182.pdf # Madde 55 para 4 JAA-JZZ added by RG-31/3/2017-30024; Madde 56 blue/white — accessed 2026-09-12"
411
+
412
+ - id: tr-coastguard-sgh-2017
413
+ class: military
414
+ categories: [car, van, truck]
415
+ period: { start: 2017 }
416
+ period_evidence: enabling-instrument
417
+ legal_basis_note: "Maddeler 55 and 56 repealed 2025-11-04 (RG 33067)."
418
+ matching: strict
419
+ format:
420
+ pattern: "99 SGH 999"
421
+ regex: '\A\d{2} ?SGH ?\d{3}\z'
422
+ design:
423
+ background_note: "blue ground (Madde 56) — no hex asserted (V3)"
424
+ foreground_note: "white characters"
425
+ region_encoding: none
426
+ notes: >-
427
+ Sahil Güvenlik Komutanlığı (Coast Guard) — the fixed group SGH plus three
428
+ figures, added by the same 2017 amendment as the Jandarma series. A
429
+ separate series from tr-jandarma-2017 because the letter group is a fixed
430
+ literal rather than a range, even though colour and period coincide.
431
+ sources:
432
+ - "https://web.archive.org/web/20250108225320/https://www.mevzuat.gov.tr/MevzuatMetin/yonetmelik/7.5.8182.pdf # Madde 55 para 4 SGH added by RG-31/3/2017-30024; Madde 56 blue/white — accessed 2026-09-12"
data/data/plates/ua.yml CHANGED
@@ -1,4 +1,4 @@
1
- # plates/ua.yml — Ukraine (PRD-PLATES gate L3).
1
+ # plates/ua.yml — Ukraine (the plates spec gate L3).
2
2
  #
3
3
  # EVERY type, dimension, colour, character-count, letter-set and class claim in
4
4
  # this file is read from the CONSOLIDATED TEXT of the governing instrument on
@@ -45,7 +45,7 @@
45
45
  # 2. HOW THAT IS MODELLED HERE, AND WHY. The lint's pattern DSL generates Latin
46
46
  # A–Z for its `L` token, so a `format.regex` written over Cyrillic could
47
47
  # never round-trip. This file therefore does NOT declare a per-jurisdiction
48
- # `serial_alphabet:` (PRD-PLATES §2.6 decision 2): every `pattern`, `regex`
48
+ # `serial_alphabet:` (the plates spec §2.6 decision 2): every `pattern`, `regex`
49
49
  # and `regex_strict` here is written in the MACHINE-READABLE LATIN
50
50
  # TRANSLITERATION of the printed glyphs — which is also what OCR, the
51
51
  # Vienna-Convention rationale for the 12-letter restriction, and every
@@ -110,7 +110,7 @@
110
110
  # transliterated Cyrillic letters, the Додаток 5 series blocks, the Додаток 6
111
111
  # numeric code set — which `regex` cannot carry.
112
112
  #
113
- # SEPARATOR NOTE (PRD-PLATES §2.6): a Ukrainian plate prints NO separator
113
+ # SEPARATOR NOTE (the plates spec §2.6): a Ukrainian plate prints NO separator
114
114
  # glyph. Додаток 3 fixes character HEIGHTS in millimetres and the ЄДИНІ ЗРАЗКИ
115
115
  # drawings fix the group gaps; no provision of the Вимоги names a separator
116
116
  # character. The space in every `pattern` here is the conventional textual
@@ -741,7 +741,7 @@ series:
741
741
  UA band it did not previously carry. Before that these plates were WHITE
742
742
  with black characters — see ua-diplomatic-cdp-2021. The country code is
743
743
  allocated by the ГДІП, not by МВС; the per-country table is a decode
744
- table for gate L4 and is deliberately not modelled here (PRD-PLATES §2.5).
744
+ table for gate L4 and is deliberately not modelled here (the plates spec §2.5).
745
745
 
746
746
  - id: ua-consular-cc-2025
747
747
  class: consular
@@ -994,7 +994,7 @@ series:
994
994
  categories: [car, van, truck, bus]
995
995
  period: { start: 2000 }
996
996
  period_evidence: enabling-instrument
997
- # RECALL-ONLY (PRD-PLATES §2.7): the content of a type-7 plate is chosen by
997
+ # RECALL-ONLY (the plates spec §2.7): the content of a type-7 plate is chosen by
998
998
  # the owner within limits that two instruments state DIFFERENTLY — постанова
999
999
  # КМУ № 1081 says «від трьох до восьми символів» while Додаток 2 Таблиця 4
1000
1000
  # of the Вимоги gives «2-8» letters and «2 (7)» digits. The regex is the
@@ -1116,7 +1116,7 @@ series:
1116
1116
  categories: [tractor, machine]
1117
1117
  period: { start: 2021 }
1118
1118
  period_evidence: enabling-instrument
1119
- # RECALL-ONLY (PRD-PLATES §2.7): the instrument contradicts itself on the
1119
+ # RECALL-ONLY (the plates spec §2.7): the instrument contradicts itself on the
1120
1120
  # letter count. Розділ III п. 6 says the letter «Т» is placed «ліворуч від
1121
1121
  # літеросполуки, що позначає адміністративно-територіальну належність» —
1122
1122
  # T plus a two-letter region pair, i.e. three letters — while Додаток 2
@@ -1163,7 +1163,7 @@ series:
1163
1163
  categories: [car, van, truck, bus, trailer, machine]
1164
1164
  period: { start: 2004 }
1165
1165
  period_evidence: enabling-instrument
1166
- # RECALL-ONLY (PRD-PLATES §2.7): Розділ III п. 9 says these plates use
1166
+ # RECALL-ONLY (the plates spec §2.7): Розділ III п. 9 says these plates use
1167
1167
  # «літери української абетки» WITHOUT the homoglyph restriction, so the
1168
1168
  # letter may be one of Ukrainian's non-Latin letters (Г, Ф, Ч, Ю, Я ...)
1169
1169
  # that this dataset's Latin-transliterated regex cannot express. A match on
@@ -1277,7 +1277,7 @@ series:
1277
1277
  include the two-digit region code printed small under the state arms, so
1278
1278
  the number a human reads off the plate is four digits. The emblem is a
1279
1279
  presidential-decree device and is rendered as a neutral placeholder per
1280
- PRD-PLATES §3 until its own licensing is affirmatively cleared.
1280
+ the plates spec §3 until its own licensing is affirmatively cleared.
1281
1281
 
1282
1282
  # =========================================================================
1283
1283
  # TYPES 13-17 — uniformed state services. One designation letter, a region
@@ -1472,7 +1472,7 @@ series:
1472
1472
  categories: [car, van, truck, bus, trailer, machine]
1473
1473
  period: { start: 2025 }
1474
1474
  period_evidence: enabling-instrument
1475
- # RECALL-ONLY (PRD-PLATES §2.7): Додаток 2 Таблиця 6 gives type 18 five
1475
+ # RECALL-ONLY (the plates spec §2.7): Додаток 2 Таблиця 6 gives type 18 five
1476
1476
  # digits and one letter, and Розділ III п. 1 names the letters «D», «С»,
1477
1477
  # «О» — but nothing in the instrument states whether the letter leads or
1478
1478
  # trails the digits, and type 18 is three months old with no published
@@ -1,4 +1,4 @@
1
- # plates/us-ak.yml — Alaska (PRD-PLATES gate L2, group: pacific).
1
+ # plates/us-ak.yml — Alaska (the plates spec gate L2, group: pacific).
2
2
  #
3
3
  # THE SOURCING PROBLEM IN THIS FILE, STATED FIRST BECAUSE IT SHAPES EVERY
4
4
  # PERIOD CLAIM BELOW. Alaska's statutes are served by the Legislature's BASIS
@@ -42,7 +42,7 @@ statute_edition: >-
42
42
  of dmv.alaska.gov (2025-09-14 snapshot for the plate catalogue).
43
43
 
44
44
  # ---------------------------------------------------------------------------
45
- # artwork_risk — required per jurisdiction by PRD-PLATES §4/§7.1.
45
+ # artwork_risk — required per jurisdiction by the plates spec §4/§7.1.
46
46
  # ---------------------------------------------------------------------------
47
47
  artwork_risk:
48
48
  posture: asserted
@@ -61,11 +61,11 @@ artwork_risk:
61
61
  countervailing: >-
62
62
  The FORMAT, CLASS, GEOMETRY and PERIOD facts in this file come from the
63
63
  ALASKA STATUTES, which are an EDICT OF GOVERNMENT and public domain at
64
- every level regardless of the website footer (PRD-PLATES §4). The
64
+ every level regardless of the website footer (the plates spec §4). The
65
65
  assertion bites on the artwork — the Kodiak bear, the state flag, the
66
66
  fireweed-and-Denali art plate — not on the facts.
67
67
  emblem_rule: >-
68
- PRD-PLATES §3's placeholder default applies without exception in Alaska,
68
+ the plates spec §3's placeholder default applies without exception in Alaska,
69
69
  and to more of the plate than usual: the STATE FLAG (the Big Dipper and
70
70
  Polaris) is screened into the centre of the standard base and is therefore
71
71
  not an emblem in a corner but the plate's central graphic. Render
@@ -114,7 +114,7 @@ us_standards:
114
114
 
115
115
  # ---------------------------------------------------------------------------
116
116
  # Display rules. THE STATUTE AND THE AGENCY DISAGREE, and the disagreement is
117
- # recorded rather than averaged (PRD-PLATES §5.3).
117
+ # recorded rather than averaged (the plates spec §5.3).
118
118
  # ---------------------------------------------------------------------------
119
119
  display_rules:
120
120
  agency_current: "Alaska DMV, its own words, 2026: 'ONE PLATE: Alaska statute AS 28.10.171 requires you to display one license plate on the back of all passenger vehicles, motorcycles, motorhomes, trucks, vans, trailers, and APV's. For Commercial vehicles that weigh over 10,001 pounds the plate is required to be displayed on the front of the vehicle. A month and year tab must be displayed on the plate.'"
@@ -195,7 +195,7 @@ series:
195
195
  sources:
196
196
  - "https://web.archive.org/web/2025id_/https://dmv.alaska.gov/vehicle-services/license-plates/ # the DMV's own catalogue names this design 'Standard Gold', issued at no charge with registration, $5 replacement, $30 if personalized"
197
197
  - "https://web.archive.org/web/2023id_/http://www.touchngo.com/lglcntr/akstats/Statutes/Title28/Chapter10/Section161.htm # AS 28.10.161 (reproduction, current through December 2007): (b)(2)-(4) the registration number, the state name 'which may be abbreviated', the year or expiration and the sticker rule; (c) the department may not adopt a new or altered passenger plate unless it substantially embodies the section"
198
- - "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Alaska # LOCATOR ONLY (PRD-PLATES §4): the ABC 123 format adopted in 1976, the Last Frontier base's reported continuous issuance since 1 January 2010, the I/O/Q exclusion, the reported serial ranges and the Irwin-Hodson manufacture. None asserted as sourced."
198
+ - "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Alaska # LOCATOR ONLY (the plates spec §4): the ABC 123 format adopted in 1976, the Last Frontier base's reported continuous issuance since 1 January 2010, the I/O/Q exclusion, the reported serial ranges and the Irwin-Hodson manufacture. None asserted as sourced."
199
199
  notes: >-
200
200
  ALASKA'S CURRENT STANDARD SERIES. PERIOD CAVEAT, AND IT IS A LARGE ONE:
201
201
  `start: 2026` is the year of the instruments read and is an UPPER BOUND,
@@ -259,7 +259,7 @@ series:
259
259
  about law rather than about a collector's observation. THE END IS NOT
260
260
  SOURCED, which is why this entry uses `ended: true` with
261
261
  `year_end_min: 2009` rather than a hard `end:` — the schema's
262
- known-over-undated shape (PRD-PLATES §2.2), earning its keep exactly as
262
+ known-over-undated shape (the plates spec §2.2), earning its keep exactly as
263
263
  predicted. The series is known to be over, because Alaska visibly issues
264
264
  the gold Last Frontier base today; 2009 is the floor because the
265
265
  commemoration was of a 2009 anniversary and the reported end is
@@ -299,7 +299,7 @@ series:
299
299
  - "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Alaska # LOCATOR ONLY: introduced 7 May 2015; based on the 1976-81 bear base; awarded ALPCA Plate of the Year 2015; reported J and M serial blocks"
300
300
  notes: >-
301
301
  ALASKA RUNS TWO STANDARD BASES AT ONCE, AT THE SAME PRICE, AND THAT IS
302
- THE MODELLING POINT. PRD-PLATES §2.2 says overlapping series are legal
302
+ THE MODELLING POINT. The plates spec §2.2 says overlapping series are legal
303
303
  where the notes distinguish them because parallel issuance is real; the
304
304
  Grizzly Bear plate is the cleanest US example found — not old stock
305
305
  running on, but a deliberate second no-cost standard design offered
@@ -341,7 +341,7 @@ series:
341
341
  PRINTED-FORM FACT AND IT IS WHY THIS SERIES' REGEX HAS NO OPTIONAL
342
342
  SEPARATOR while the standard series' does. An authority stating that
343
343
  the sequential plate's printed gap disappears on the vanity plate is
344
- precisely the kind of detail PRD-PLATES §2.6 exists to capture, and
344
+ precisely the kind of detail the plates spec §2.6 exists to capture, and
345
345
  precisely the kind a separator-forgiving consumer would otherwise
346
346
  have to guess at.
347
347
  refusal_rule: "The DMV cites 2 AAC 92.120: 'DMV will not issue personalized plates that display symbols in a combination that is demeaning towards a group of people, or that is otherwise a vulgar, violent, or criminal reference or term'. It also operates a RECALL: 'DMV will immediately investigate the license plate and if necessary, recall the license plate.' THE REGULATION'S OWN TEXT WAS NOT FETCHED (recorded gap — the Alaska Administrative Code shares the akleg BASIS access problem); the DMV's paraphrase is what is cited."
@@ -677,7 +677,7 @@ series:
677
677
  recording even though the dataset carries formats and never plates.
678
678
 
679
679
  # =========================================================================
680
- # SPECIALTY — THE PROGRAM INDEX, per PRD-PLATES §2.5. Alaska is small enough
680
+ # SPECIALTY — THE PROGRAM INDEX, per the plates spec §2.5. Alaska is small enough
681
681
  # that the DMV's own catalogue IS the register, so this index is ENUMERATED
682
682
  # from the agency rather than counted from a secondary source.
683
683
  # =========================================================================
@@ -695,7 +695,7 @@ series:
695
695
  plate: { w: 12, h: 6, unit: in }
696
696
  background: { finish: retroreflective }
697
697
  emblem: { present: true, rendered: placeholder }
698
- note: "One design per authorised programme; the designs themselves are L4 scope (PRD-PLATES §2.5) and none is described here. NOTE THE ARTIST-COPYRIGHT LAYER on the Celebrating the Arts designs — see artwork_risk.emblem_rule."
698
+ note: "One design per authorised programme; the designs themselves are L4 scope (the plates spec §2.5) and none is described here. NOTE THE ARTIST-COPYRIGHT LAYER on the Celebrating the Arts designs — see artwork_risk.emblem_rule."
699
699
  program_index:
700
700
  count_official: null
701
701
  count_official_note: >-