vehicles 0.4.1 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (189) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop_todo.yml +164 -0
  3. data/CHANGELOG.md +321 -0
  4. data/README.md +88 -15
  5. data/data/PROVENANCE-vehicles.md +12 -0
  6. data/data/plates/PROVENANCE.md +10 -0
  7. data/data/plates/_decode/at-districts.yml +287 -0
  8. data/data/plates/_decode/ch-cantons.yml +110 -0
  9. data/data/plates/_decode/cn-issuing-offices.yml +463 -0
  10. data/data/plates/_decode/cn-provinces.yml +614 -0
  11. data/data/plates/_decode/cz-kraj.yml +159 -0
  12. data/data/plates/_decode/dk-serial-blocks.yml +327 -0
  13. data/data/plates/_decode/es-provinces.yml +116 -0
  14. data/data/plates/_decode/fr-departements.yml +191 -0
  15. data/data/plates/_decode/gb-age-identifiers.yml +170 -0
  16. data/data/plates/_decode/gb-memory-tags.yml +202 -0
  17. data/data/plates/_decode/gr-prefectures.yml +1408 -0
  18. data/data/plates/_decode/hr-cities.yml +315 -0
  19. data/data/plates/_decode/ie-counties.yml +227 -0
  20. data/data/plates/_decode/in-state-codes.yml +169 -0
  21. data/data/plates/_decode/is-districts-1938.yml +116 -0
  22. data/data/plates/_decode/it-provinces.yml +348 -0
  23. data/data/plates/_decode/jp-office-marks.yml +960 -0
  24. data/data/plates/_decode/jp-use-marks.yml +205 -0
  25. data/data/plates/_decode/kr-authority-marks.yml +146 -0
  26. data/data/plates/_decode/kr-use-syllables.yml +194 -0
  27. data/data/plates/_decode/lu-series-order.yml +638 -0
  28. data/data/plates/_decode/mx-entity-series.yml +380 -0
  29. data/data/plates/_decode/my-index-marks.yml +271 -0
  30. data/data/plates/_decode/no-counties-1913.yml +148 -0
  31. data/data/plates/_decode/no-districts.yml +901 -0
  32. data/data/plates/_decode/pl-powiats.yml +567 -0
  33. data/data/plates/_decode/pt-trailer-services.yml +96 -0
  34. data/data/plates/_decode/ro-counties.yml +213 -0
  35. data/data/plates/_decode/se-diplomatic.yml +220 -0
  36. data/data/plates/_decode/si-regions.yml +123 -0
  37. data/data/plates/_decode/sk-districts.yml +314 -0
  38. data/data/plates/_decode/th-registration-elements.yml +208 -0
  39. data/data/plates/_decode/ua-regions.yml +393 -0
  40. data/data/plates/_decode/za-licence-marks.yml +215 -0
  41. data/data/plates/_meta/classes.yml +26 -0
  42. data/data/plates/_meta/separators.yml +102 -0
  43. data/data/plates/ad.yml +961 -0
  44. data/data/plates/ar.yml +762 -0
  45. data/data/plates/at.yml +1424 -0
  46. data/data/plates/au-act.yml +472 -0
  47. data/data/plates/au-nsw.yml +282 -0
  48. data/data/plates/au-nt.yml +431 -0
  49. data/data/plates/au-qld.yml +272 -0
  50. data/data/plates/au-sa.yml +248 -0
  51. data/data/plates/au-tas.yml +302 -0
  52. data/data/plates/au-vic.yml +215 -0
  53. data/data/plates/au-wa.yml +309 -0
  54. data/data/plates/be.yml +1840 -0
  55. data/data/plates/br.yml +1152 -0
  56. data/data/plates/ca-ab.yml +430 -0
  57. data/data/plates/ca-bc.yml +697 -0
  58. data/data/plates/ca-mb.yml +499 -0
  59. data/data/plates/ca-nb.yml +537 -0
  60. data/data/plates/ca-nl.yml +743 -0
  61. data/data/plates/ca-ns.yml +808 -0
  62. data/data/plates/ca-nt.yml +610 -0
  63. data/data/plates/ca-nu.yml +280 -0
  64. data/data/plates/ca-on.yml +881 -0
  65. data/data/plates/ca-pe.yml +592 -0
  66. data/data/plates/ca-qc.yml +1036 -0
  67. data/data/plates/ca-sk.yml +256 -0
  68. data/data/plates/ca-yt.yml +656 -0
  69. data/data/plates/ch.yml +1273 -0
  70. data/data/plates/cn.yml +1431 -0
  71. data/data/plates/cy.yml +688 -0
  72. data/data/plates/cz.yml +1179 -0
  73. data/data/plates/de.yml +1107 -0
  74. data/data/plates/dk.yml +1647 -0
  75. data/data/plates/ee.yml +1275 -0
  76. data/data/plates/es.yml +888 -0
  77. data/data/plates/fi.yml +1271 -0
  78. data/data/plates/fr.yml +1265 -0
  79. data/data/plates/gb.yml +1188 -0
  80. data/data/plates/gr.yml +721 -0
  81. data/data/plates/hr.yml +860 -0
  82. data/data/plates/hu.yml +959 -0
  83. data/data/plates/ie.yml +775 -0
  84. data/data/plates/in.yml +1172 -0
  85. data/data/plates/is.yml +667 -0
  86. data/data/plates/it.yml +1317 -0
  87. data/data/plates/jp.yml +3650 -0
  88. data/data/plates/kr.yml +1375 -0
  89. data/data/plates/li.yml +1010 -0
  90. data/data/plates/lt.yml +879 -0
  91. data/data/plates/lu.yml +842 -0
  92. data/data/plates/lv.yml +924 -0
  93. data/data/plates/mc.yml +1024 -0
  94. data/data/plates/mt.yml +854 -0
  95. data/data/plates/mx.yml +1372 -0
  96. data/data/plates/my.yml +685 -0
  97. data/data/plates/nl.yml +1016 -0
  98. data/data/plates/no.yml +1018 -0
  99. data/data/plates/nz.yml +1699 -0
  100. data/data/plates/pl.yml +1296 -0
  101. data/data/plates/pt.yml +847 -0
  102. data/data/plates/ro.yml +785 -0
  103. data/data/plates/se.yml +1091 -0
  104. data/data/plates/si.yml +1105 -0
  105. data/data/plates/sk.yml +1439 -0
  106. data/data/plates/sm.yml +1119 -0
  107. data/data/plates/th.yml +1150 -0
  108. data/data/plates/ua.yml +1672 -0
  109. data/data/plates/us-ak.yml +763 -0
  110. data/data/plates/us-al.yml +457 -0
  111. data/data/plates/us-ar.yml +427 -0
  112. data/data/plates/us-as.yml +454 -0
  113. data/data/plates/us-az.yml +430 -0
  114. data/data/plates/us-ca.yml +892 -0
  115. data/data/plates/us-co.yml +452 -0
  116. data/data/plates/us-ct.yml +427 -0
  117. data/data/plates/us-dc.yml +614 -0
  118. data/data/plates/us-de.yml +551 -0
  119. data/data/plates/us-fl.yml +741 -0
  120. data/data/plates/us-ga.yml +644 -0
  121. data/data/plates/us-gu.yml +658 -0
  122. data/data/plates/us-hi.yml +585 -0
  123. data/data/plates/us-ia.yml +438 -0
  124. data/data/plates/us-id.yml +531 -0
  125. data/data/plates/us-il.yml +516 -0
  126. data/data/plates/us-in.yml +324 -0
  127. data/data/plates/us-ks.yml +351 -0
  128. data/data/plates/us-ky.yml +770 -0
  129. data/data/plates/us-la.yml +568 -0
  130. data/data/plates/us-ma.yml +379 -0
  131. data/data/plates/us-md.yml +536 -0
  132. data/data/plates/us-me.yml +445 -0
  133. data/data/plates/us-mi.yml +408 -0
  134. data/data/plates/us-mn.yml +411 -0
  135. data/data/plates/us-mo.yml +356 -0
  136. data/data/plates/us-mp.yml +402 -0
  137. data/data/plates/us-ms.yml +432 -0
  138. data/data/plates/us-mt.yml +619 -0
  139. data/data/plates/us-nc.yml +602 -0
  140. data/data/plates/us-nd.yml +419 -0
  141. data/data/plates/us-ne.yml +483 -0
  142. data/data/plates/us-nh.yml +394 -0
  143. data/data/plates/us-nj.yml +547 -0
  144. data/data/plates/us-nm.yml +574 -0
  145. data/data/plates/us-nv.yml +655 -0
  146. data/data/plates/us-ny.yml +592 -0
  147. data/data/plates/us-oh.yml +404 -0
  148. data/data/plates/us-ok.yml +513 -0
  149. data/data/plates/us-or.yml +392 -0
  150. data/data/plates/us-pa.yml +506 -0
  151. data/data/plates/us-pr.yml +507 -0
  152. data/data/plates/us-ri.yml +445 -0
  153. data/data/plates/us-sc.yml +605 -0
  154. data/data/plates/us-sd.yml +428 -0
  155. data/data/plates/us-tn.yml +471 -0
  156. data/data/plates/us-tx.yml +535 -0
  157. data/data/plates/us-ut.yml +384 -0
  158. data/data/plates/us-va.yml +567 -0
  159. data/data/plates/us-vi.yml +489 -0
  160. data/data/plates/us-vt.yml +458 -0
  161. data/data/plates/us-wa.yml +484 -0
  162. data/data/plates/us-wi.yml +509 -0
  163. data/data/plates/us-wv.yml +446 -0
  164. data/data/plates/us-wy.yml +523 -0
  165. data/data/plates/va.yml +604 -0
  166. data/data/plates/za.yml +1141 -0
  167. data/data/vehicles.json +160653 -105090
  168. data/lib/vehicles/configuration.rb +18 -2
  169. data/lib/vehicles/dataset.rb +73 -18
  170. data/lib/vehicles/fuzzy.rb +115 -0
  171. data/lib/vehicles/http.rb +48 -0
  172. data/lib/vehicles/make.rb +36 -6
  173. data/lib/vehicles/mcp_server.rb +5 -5
  174. data/lib/vehicles/model.rb +42 -6
  175. data/lib/vehicles/plates/jurisdiction.rb +32 -0
  176. data/lib/vehicles/plates/series.rb +291 -0
  177. data/lib/vehicles/plates/template_fill.rb +188 -0
  178. data/lib/vehicles/plates/templates.rb +162 -0
  179. data/lib/vehicles/plates.rb +122 -0
  180. data/lib/vehicles/providers/hosted_provider.rb +49 -58
  181. data/lib/vehicles/providers/local_provider.rb +4 -3
  182. data/lib/vehicles/validators/vehicle_make_validator.rb +3 -1
  183. data/lib/vehicles/validators/vehicle_model_validator.rb +1 -1
  184. data/lib/vehicles/version.rb +1 -1
  185. data/lib/vehicles.rb +53 -16
  186. data/rakelib/data_refresh.rake +109 -0
  187. data/rakelib/plates_refresh.rake +29 -0
  188. data/sig/vehicles.rbs +18 -0
  189. metadata +174 -2
@@ -0,0 +1,280 @@
1
+ # plates/ca-nu.yml — Nunavut (PRD-PLATES gate L3, Canada territories).
2
+ # THE OTHER NON-RECTANGULAR CASE, AND THE ONE THAT WENT AWAY AND CAME BACK.
3
+ #
4
+ # ── READ plates/ca-nt.yml FIRST. Nunavut's motor-vehicle law IS the Northwest
5
+ # Territories' law, continued. The Nunavut Act (S.C. 1993, c. 28) carried
6
+ # every NWT ordinance and regulation in force on 1 April 1999 into the new
7
+ # territory as Nunavut law, to be amended or repealed by Nunavut thereafter.
8
+ # So the Motor Vehicles Act and the Motor Vehicle Registration and Licence
9
+ # Plate Regulations behind ca-nt.yml are, in their 1999 form, ALSO Nunavut's.
10
+ #
11
+ # THIS FILE DOES NOT PRETEND THAT IS THE SAME AS HAVING READ NUNAVUT'S OWN
12
+ # CONSOLIDATION. Every Nunavut legislative and government host refused this
13
+ # pass: nunavutlegislation.ca returned HTTP 403 to curl with browser headers
14
+ # on every path tried and 404 through the fetch tool; gov.nu.ca returned 403
15
+ # to curl and served only a generic search index through the fetch tool; the
16
+ # Wayback CDX API timed out. Nunavut has amended the inherited regulations
17
+ # since 1999 and NONE of those amendments were seen. Consequently NO series
18
+ # in this file cites a Nunavut instrument, no plate TYPE list is asserted
19
+ # from reg. 8(2) (the NWT list may or may not still be Nunavut's), and every
20
+ # format claim here is graded secondary. That is the honest ceiling and it is
21
+ # the file's biggest gap.
22
+ #
23
+ # ── FOUR FACTS THAT ARE WORTH THE FILE ─────────────────────────────────────
24
+ #
25
+ # 1. NUNAVUT'S BEAR-SHAPED PLATE WAS LICENSED, DROPPED, AND RE-LICENSED, AND
26
+ # THE INTELLECTUAL-PROPERTY TRAIL IS PRIMARY AT THE FAR END. The polar-bear
27
+ # silhouette is a REGISTERED CANADIAN TRADE-MARK of the Government of the
28
+ # NORTHWEST TERRITORIES — CIPO registration TMA558214, application 1050364,
29
+ # filed 2000-03-10, registered 2002-02-20, goods "Licence plates", status
30
+ # LIVE. Nunavut used the shape from 1999 to 2012 under an agreement with the
31
+ # NWT, went rectangular in 2012, and in 2024 signed a NEW agreement to
32
+ # return. Nunavut's minister of economic development and transportation,
33
+ # David Akeeagok, in the Legislative Assembly on 2024-11-05, verbatim as
34
+ # reported: "Earlier this year, we signed an agreement with the Government of
35
+ # the Northwest Territories allowing us to create our own bear-shaped plate
36
+ # without infringing any trademark legalities." A licence plate whose SHAPE
37
+ # is licensed from another government is, so far as this programme has found,
38
+ # unique in the world.
39
+ #
40
+ # 2. THE 2012 CHANGE WAS A KNOCK-ON, NOT A NUNAVUT DECISION ABOUT NUNAVUT. The
41
+ # reported sequence is that the NWT decided to update its own version of the
42
+ # bear plate and Nunavut, rather than follow, took a new rectangular design.
43
+ # Recorded because it explains an otherwise inexplicable thirteen-year
44
+ # interruption in a territory's identity design — and because it means the
45
+ # NT and NU period boundaries are causally linked and should be verified
46
+ # together, not independently.
47
+ #
48
+ # 3. THE PLATE PRINTS INUKTITUT SYLLABICS, AND THEY ARE NOT IN THE SERIAL.
49
+ # The reported 2025 design carries "Nunavut" twice: in Latin letters and in
50
+ # Inuktitut syllabics — ᓄᓇᕗᑦ, exactly U+14C4 U+14C7 U+1557 U+1466 (CANADIAN
51
+ # SYLLABICS NU, NA, VU, T). Per the L3 brief's non-Latin rule, this is
52
+ # recorded as a DESIGN fact with its script and codepoints named, and it does
53
+ # NOT touch the serial alphabet: the serial is decimal digits. No
54
+ # `serial_alphabet:` declaration is made for Nunavut, because the dataset-wide
55
+ # set is correct here — and because declaring one for a legend would be a
56
+ # category error. NO ASCII FOLDING IS PERFORMED OR IMPLIED (the hr.yml rule).
57
+ #
58
+ # 4. THE INUKSUK IS IN THE SEPARATOR POSITION AND IS NOT A SEPARATOR.
59
+ # The reported 2025 design places an inuksuk BETWEEN the two three-digit
60
+ # groups of the serial. That is the Wyoming bucking-horse case exactly
61
+ # (plates/us-wy.yml: the emblem sits where the separator would be) and the
62
+ # _meta/separators.yml `never_separator` note anticipates it: the gap holds a
63
+ # PICTURE. No consumer may treat the inuksuk as a separator character or as
64
+ # part of the serial. The regexes below spell the position with the sanctioned
65
+ # separator-only class `[- ]?` (§ 2.8), which is the honest encoding of a
66
+ # printed gap whose glyph is a symbol rather than punctuation.
67
+ #
68
+ # SOURCING GRADE, STATED ONCE: with no reachable Nunavut instrument and no
69
+ # reachable Nunavut agency page, this file's format and period claims rest on
70
+ # (a) the per-territory encyclopedia article, used as a finding aid and tagged
71
+ # `secondary-wikipedia` per the PRD-PLATES § 4 Wikipedia condition, and (b) one
72
+ # Nunavut news outlet reporting a minister's statement in the Legislative
73
+ # Assembly, which is a secondary report of a primary event and is graded
74
+ # `secondary-dated`. The CIPO trade-mark record is the file's only primary
75
+ # source and it belongs to the Northwest Territories.
76
+ jurisdiction: ca-nu
77
+ authority:
78
+ name: Motor Vehicles Division, Department of Economic Development and Transportation, Government of Nunavut
79
+ url: "https://www.gov.nu.ca/en/economic-development-and-transportation/motor-vehicles"
80
+ authority_url_note: >-
81
+ Recorded as the correct address; it returned HTTP 403 to direct request and a
82
+ generic index through the fetch tool on 2026-08-02. Nothing in this file is
83
+ sourced to it.
84
+ binding: vehicle
85
+ binding_note: >-
86
+ Inherited from the Northwest Territories regime as at 1 April 1999 (Act
87
+ s. 42(1)-(2): the certificate of registration identifies the plate, and the
88
+ plate on the vehicle must be the one identified). Nunavut amendments since
89
+ 1999 were not seen; treat as provisional.
90
+ instrument:
91
+ inheritance:
92
+ citation: "Nunavut Act, S.C. 1993, c. 28 — the laws of the Northwest Territories in force on 1 April 1999 continued as laws of Nunavut, subject to later amendment or repeal by Nunavut"
93
+ note: >-
94
+ The Act's own text was NOT fetched in this pass; the inheritance is stated
95
+ here as the structural reason the NWT instruments are relevant and is NOT
96
+ relied on for any format or period claim. Recorded gap.
97
+ northwest_territories_source_instruments:
98
+ citation: "Motor Vehicles Act, R.S.N.W.T. 1988, c. M-16 and Motor Vehicle Registration and Licence Plate Regulations, R-054-94 — read in full for plates/ca-nt.yml"
99
+ caution: >-
100
+ THESE ARE CITED AS BACKGROUND, NEVER AS NUNAVUT AUTHORITY. The NWT texts
101
+ served today are post-1999 consolidations carrying amendments (R-034-2013,
102
+ R-012-2025, R-037-2026 and others) that Nunavut never enacted. Reading
103
+ today's NWT reg. 8(2) as Nunavut's plate-type list would be exactly the
104
+ instrument-date error the PRD's § 4 rule exists to prevent.
105
+ source: "https://www.justice.gov.nt.ca/en/files/legislation/motor-vehicles/motor-vehicles.r12.pdf"
106
+ trademark:
107
+ citation: "CIPO application 1050364 / registration TMA558214, Government of the Northwest Territories, filed 2000-03-10, registered 2002-02-20, goods 'Licence plates', LIVE"
108
+ source: "https://ised-isde.canada.ca/cipo/trademark-search/1050364 # accessed 2026-08-02"
109
+ unreachable_hosts_checked:
110
+ - "https://www.nunavutlegislation.ca/en/consolidated-law/motor-vehicles-act-consolidation-0 # HTTP 403"
111
+ - "https://www.nunavutlegislation.ca/en/regulations # HTTP 403"
112
+ - "https://www.gov.nu.ca/en/economic-development-and-transportation/motor-vehicles # HTTP 403 direct; generic index via fetch tool"
113
+ - "http://web.archive.org/cdx/search/cdx?url=gov.nu.ca* # HTTP 504 gateway timeout"
114
+
115
+ artwork_risk:
116
+ posture: asserted-licensed-from-another-government
117
+ basis: >-
118
+ UNIQUE IN THE DATASET SO FAR. Nunavut's plate SHAPE is another government's
119
+ registered trade-mark, used under a bilateral agreement: TMA558214 is owned
120
+ by the Government of the Northwest Territories and Nunavut's own minister
121
+ describes the 2024 agreement as what lets Nunavut "create our own
122
+ bear-shaped plate without infringing any trademark legalities". Whatever
123
+ Nunavut's posture on its own artwork, the OUTLINE is encumbered by a live
124
+ third-party registration, and no theory of Crown copyright or edict-of-
125
+ government reaches it.
126
+ emblem_rule: >-
127
+ PRD-PLATES § 3 placeholder default applies to every graphic element
128
+ reported on the 2025 plate — the bear outline (encumbered as above), the
129
+ inuksuk in the serial gap, and the star. As in the Northwest Territories,
130
+ there is no separable emblem slot to placeholder out: the trade-marked shape
131
+ IS the plate. The honest render is a schematic rectangle with
132
+ `design.shape` recorded and the outline omitted.
133
+ syllabics_note: >-
134
+ The Inuktitut wordmark ᓄᓇᕗᑦ is a legend, not artwork, and is reproduced here
135
+ as text with its codepoints because identity IS form for a script (the
136
+ PRD-PLATES § 4 Wikipedia-row condition 3 principle, applied outside its
137
+ original context). It is never transliterated in this dataset.
138
+ sources:
139
+ - "https://ised-isde.canada.ca/cipo/trademark-search/1050364"
140
+ - "https://nunatsiaq.com/stories/article/polar-bear-licence-plates-coming-back-to-nunavut/ # 2024-11-08, reporting Minister Akeeagok in the Legislative Assembly 2024-11-05"
141
+
142
+ series:
143
+
144
+ # =========================================================================
145
+ # THE RETURNED BEAR — current.
146
+ # =========================================================================
147
+ - id: ca-nu-standard-2025
148
+ class: standard
149
+ categories: [car, van, truck, bus]
150
+ period: { start: 2025 }
151
+ period_evidence: secondary-wikipedia
152
+ matching: strict
153
+ format:
154
+ pattern: "999-999"
155
+ regex: '\A\d{3}[- ]?\d{3}\z'
156
+ evidence: secondary
157
+ separator_note: >-
158
+ THE GAP HOLDS AN INUKSUK. The reported design places an inuksuk between
159
+ the two three-digit groups. Under _meta/separators.yml that symbol is
160
+ NOT a separator and must never be stripped as one or read as serial; the
161
+ position is spelled with the sanctioned separator-only class `[- ]?`
162
+ (PRD-PLATES § 2.8), which is what an authority that prints a picture
163
+ rather than punctuation earns. `pattern` shows the canonical printed
164
+ hyphen because the DSL has no way to show a picture, and that is a
165
+ display convention, not a claim that a hyphen is printed.
166
+ design:
167
+ shape: polar-bear-silhouette
168
+ shape_note: >-
169
+ Bear-shaped again from 2025, facing LEFT per the secondary description
170
+ (the Northwest Territories bear faces the other way — a real
171
+ discriminator between two bear-shaped plates, reported and not
172
+ verified). The outline is the Northwest Territories' registered
173
+ trade-mark used under licence; see artwork_risk.
174
+ background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
175
+ foreground: "#0033A0"
176
+ border: { color: "#F2B21B", hex_basis: observed, description: "yellow border line, reported" }
177
+ legend_top: "NUNAVUT"
178
+ legend_top_syllabics:
179
+ text: "ᓄᓇᕗᑦ"
180
+ script: "Canadian Aboriginal Syllabics (Inuktitut)"
181
+ codepoints: ["U+14C4", "U+14C7", "U+1557", "U+1466"]
182
+ note: >-
183
+ Recorded in the original script with codepoints, per the L3 non-Latin
184
+ rule. NOT part of the serial alphabet and never ASCII-folded. The
185
+ Latin "Nunavut" and the syllabic ᓄᓇᕗᑦ are the same word twice, not two
186
+ fields.
187
+ emblem: { present: true, rendered: placeholder, description: "inuksuk between the serial groups; blue star at upper right; the bear outline itself" }
188
+ design_basis: secondary
189
+ rear_differs: false
190
+ notes: >-
191
+ PERIOD: the return was ANNOUNCED with a date and ISSUED without one. What
192
+ is well sourced is the announcement — Minister David Akeeagok told the
193
+ Legislative Assembly on 2024-11-05 that the bear plate was returning as
194
+ part of Nunavut's 25th-anniversary programme, that the project began early
195
+ in 2024 and was expected to be complete in December 2024, and that "we
196
+ signed an agreement with the Government of the Northwest Territories
197
+ allowing us to create our own bear-shaped plate without infringing any
198
+ trademark legalities". The report expressly states no roll-out date had
199
+ been announced and no design released. `period.start: 2025` therefore
200
+ comes from the per-territory encyclopedia article's later format row, not
201
+ from the announcement, and is graded `secondary-wikipedia`. The 2024
202
+ announcement is the corroborating context and is NOT used as the start
203
+ year — announcing is not issuing, and this programme has been burned by
204
+ that conflation before.
205
+ FORMAT: the reported serial is six digits in two groups of three, i.e. the
206
+ SAME grammar as the rectangular series it replaces. If that is right, the
207
+ 2025 change is a DESIGN change on an unchanged format — the mirror image
208
+ of British Columbia's 2025 change, which is a format change on an
209
+ unchanged design. Both are in this wave, both are 2025, and a schema that
210
+ conflated base with format could model neither.
211
+ sources:
212
+ - "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Nunavut # FINDING AID (PRD-PLATES §4 Wikipedia row): 2025 start, bear shape returning, six-digit serial, yellow border, inuksuk, star, syllabic legend, left-facing bear; accessed 2026-08-02"
213
+ - "https://nunatsiaq.com/stories/article/polar-bear-licence-plates-coming-back-to-nunavut/ # 2024-11-08: the announcement, the 25th-anniversary rationale, the NWT agreement quote, the explicit absence of a roll-out date"
214
+ - "https://ised-isde.canada.ca/cipo/trademark-search/1050364 # the shape is the GNWT's registered trade-mark"
215
+
216
+ # =========================================================================
217
+ # THE RECTANGULAR INTERREGNUM — one series back.
218
+ # =========================================================================
219
+ - id: ca-nu-standard-2012
220
+ class: standard
221
+ categories: [car, van, truck, bus]
222
+ period: { start: 2012, end: 2025 }
223
+ period_evidence: secondary-wikipedia
224
+ matching: strict
225
+ format:
226
+ pattern: "999-999"
227
+ regex: '\A\d{3}[- ]?\d{3}\z'
228
+ evidence: secondary
229
+ separator_note: "Six digits in two groups of three, as reported. Separator glyph unstated; separator-only class per § 2.8."
230
+ design:
231
+ shape: rectangular
232
+ background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
233
+ foreground: "#1A1A1A"
234
+ legend_top: "NUNAVUT"
235
+ design_basis: secondary
236
+ rear_differs: false
237
+ notes: >-
238
+ THE THIRTEEN YEARS WITHOUT A BEAR, AND WHY THEY HAPPENED SOMEWHERE ELSE.
239
+ Reported: rectangular plates with black screened characters from July
240
+ 2012, adopted because the Northwest Territories decided to update ITS
241
+ version of the bear plate and Nunavut chose a new design rather than
242
+ follow. So a Nunavut series boundary is caused by a Northwest Territories
243
+ decision — the two files' 2010-2012 boundaries should be verified
244
+ together. `shape: rectangular` is stated explicitly rather than left
245
+ absent, because in this jurisdiction the default cannot be assumed either
246
+ way and the absence of the key would be ambiguous.
247
+ Overlaps ca-nu-standard-2025 at the boundary year on the ordinary
248
+ old-stock reasoning; the two are distinguished by shape and by these notes.
249
+ sources:
250
+ - "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Nunavut # FINDING AID: rectangular July 2012 - 2025, black screened characters, the NWT-update rationale; accessed 2026-08-02"
251
+
252
+ - id: ca-nu-standard-1999
253
+ class: standard
254
+ categories: [car, van, truck, bus]
255
+ period: { start: 1999, end: 2012 }
256
+ period_evidence: secondary-wikipedia
257
+ matching: strict
258
+ format:
259
+ pattern: "99999L"
260
+ regex: '\A\d{5}[A-Z]\z'
261
+ evidence: secondary
262
+ design:
263
+ shape: polar-bear-silhouette
264
+ background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
265
+ foreground: "#0033A0"
266
+ design_basis: secondary
267
+ rear_differs: false
268
+ notes: >-
269
+ THE FOUNDING SERIES, AND THE ONE THE 2025 PLATE IS ANSWERING. Reported as
270
+ embossed blue numerals on a bear-shaped plate from April 1999 — the month
271
+ Nunavut came into existence — running to 2012, in a five-digit-plus-letter
272
+ arrangement (`12345N`). Two things make it worth authoring rather than
273
+ leaving to L4: it is the reason the trade-mark licence exists (the
274
+ 1999-2012 use was, per the 2024 reporting, "under a copyright agreement
275
+ with the Northwest Territories"), and its terminal letter makes it the
276
+ only Nunavut serial shape that is unambiguous against both later series.
277
+ Everything about it is secondary.
278
+ sources:
279
+ - "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Nunavut # FINDING AID: 1999-2012 bear-shaped, embossed blue, 12345N; accessed 2026-08-02"
280
+ - "https://nunatsiaq.com/stories/article/polar-bear-licence-plates-coming-back-to-nunavut/ # 2024-11-08: 'Nunavut distributed polar bear plates from 1999 to 2012 under a copyright agreement with the Northwest Territories'"