vehicles 0.6.1 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (186) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop_todo.yml +164 -0
  3. data/CHANGELOG.md +274 -0
  4. data/README.md +55 -10
  5. data/data/PROVENANCE-vehicles.md +12 -0
  6. data/data/plates/PROVENANCE.md +5 -4
  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/fr-departements.yml +191 -0
  14. data/data/plates/_decode/gb-age-identifiers.yml +170 -0
  15. data/data/plates/_decode/gb-memory-tags.yml +202 -0
  16. data/data/plates/_decode/gr-prefectures.yml +1408 -0
  17. data/data/plates/_decode/hr-cities.yml +315 -0
  18. data/data/plates/_decode/ie-counties.yml +227 -0
  19. data/data/plates/_decode/in-state-codes.yml +169 -0
  20. data/data/plates/_decode/is-districts-1938.yml +116 -0
  21. data/data/plates/_decode/it-provinces.yml +348 -0
  22. data/data/plates/_decode/jp-office-marks.yml +960 -0
  23. data/data/plates/_decode/jp-use-marks.yml +205 -0
  24. data/data/plates/_decode/kr-authority-marks.yml +146 -0
  25. data/data/plates/_decode/kr-use-syllables.yml +194 -0
  26. data/data/plates/_decode/lu-series-order.yml +638 -0
  27. data/data/plates/_decode/mx-entity-series.yml +380 -0
  28. data/data/plates/_decode/my-index-marks.yml +271 -0
  29. data/data/plates/_decode/no-counties-1913.yml +148 -0
  30. data/data/plates/_decode/no-districts.yml +901 -0
  31. data/data/plates/_decode/pl-powiats.yml +567 -0
  32. data/data/plates/_decode/pt-trailer-services.yml +96 -0
  33. data/data/plates/_decode/ro-counties.yml +213 -0
  34. data/data/plates/_decode/se-diplomatic.yml +220 -0
  35. data/data/plates/_decode/si-regions.yml +123 -0
  36. data/data/plates/_decode/sk-districts.yml +314 -0
  37. data/data/plates/_decode/th-registration-elements.yml +208 -0
  38. data/data/plates/_decode/ua-regions.yml +393 -0
  39. data/data/plates/_decode/za-licence-marks.yml +215 -0
  40. data/data/plates/_meta/classes.yml +1 -0
  41. data/data/plates/_meta/separators.yml +102 -0
  42. data/data/plates/ad.yml +961 -0
  43. data/data/plates/ar.yml +762 -0
  44. data/data/plates/at.yml +1424 -0
  45. data/data/plates/au-act.yml +472 -0
  46. data/data/plates/au-nsw.yml +282 -0
  47. data/data/plates/au-nt.yml +431 -0
  48. data/data/plates/au-qld.yml +272 -0
  49. data/data/plates/au-sa.yml +248 -0
  50. data/data/plates/au-tas.yml +302 -0
  51. data/data/plates/au-vic.yml +215 -0
  52. data/data/plates/au-wa.yml +309 -0
  53. data/data/plates/be.yml +1840 -0
  54. data/data/plates/br.yml +1152 -0
  55. data/data/plates/ca-ab.yml +430 -0
  56. data/data/plates/ca-bc.yml +697 -0
  57. data/data/plates/ca-mb.yml +499 -0
  58. data/data/plates/ca-nb.yml +537 -0
  59. data/data/plates/ca-nl.yml +743 -0
  60. data/data/plates/ca-ns.yml +808 -0
  61. data/data/plates/ca-nt.yml +610 -0
  62. data/data/plates/ca-nu.yml +280 -0
  63. data/data/plates/ca-on.yml +881 -0
  64. data/data/plates/ca-pe.yml +592 -0
  65. data/data/plates/ca-qc.yml +1036 -0
  66. data/data/plates/ca-sk.yml +256 -0
  67. data/data/plates/ca-yt.yml +656 -0
  68. data/data/plates/ch.yml +1273 -0
  69. data/data/plates/cn.yml +1431 -0
  70. data/data/plates/cy.yml +688 -0
  71. data/data/plates/cz.yml +1179 -0
  72. data/data/plates/de.yml +553 -118
  73. data/data/plates/dk.yml +1647 -0
  74. data/data/plates/ee.yml +1275 -0
  75. data/data/plates/es.yml +228 -32
  76. data/data/plates/fi.yml +1271 -0
  77. data/data/plates/fr.yml +1265 -0
  78. data/data/plates/gb.yml +1188 -0
  79. data/data/plates/gr.yml +721 -0
  80. data/data/plates/hr.yml +860 -0
  81. data/data/plates/hu.yml +959 -0
  82. data/data/plates/ie.yml +775 -0
  83. data/data/plates/in.yml +1172 -0
  84. data/data/plates/is.yml +667 -0
  85. data/data/plates/it.yml +1317 -0
  86. data/data/plates/jp.yml +3650 -0
  87. data/data/plates/kr.yml +1375 -0
  88. data/data/plates/li.yml +1010 -0
  89. data/data/plates/lt.yml +879 -0
  90. data/data/plates/lu.yml +842 -0
  91. data/data/plates/lv.yml +924 -0
  92. data/data/plates/mc.yml +1024 -0
  93. data/data/plates/mt.yml +854 -0
  94. data/data/plates/mx.yml +1372 -0
  95. data/data/plates/my.yml +685 -0
  96. data/data/plates/nl.yml +44 -0
  97. data/data/plates/no.yml +1018 -0
  98. data/data/plates/nz.yml +1699 -0
  99. data/data/plates/pl.yml +1296 -0
  100. data/data/plates/pt.yml +847 -0
  101. data/data/plates/ro.yml +785 -0
  102. data/data/plates/se.yml +1091 -0
  103. data/data/plates/si.yml +1105 -0
  104. data/data/plates/sk.yml +1439 -0
  105. data/data/plates/sm.yml +1119 -0
  106. data/data/plates/th.yml +1150 -0
  107. data/data/plates/ua.yml +1672 -0
  108. data/data/plates/us-ak.yml +763 -0
  109. data/data/plates/us-al.yml +457 -0
  110. data/data/plates/us-ar.yml +427 -0
  111. data/data/plates/us-as.yml +454 -0
  112. data/data/plates/us-az.yml +430 -0
  113. data/data/plates/us-ca.yml +892 -0
  114. data/data/plates/us-co.yml +452 -0
  115. data/data/plates/us-ct.yml +427 -0
  116. data/data/plates/us-dc.yml +614 -0
  117. data/data/plates/us-de.yml +551 -0
  118. data/data/plates/us-fl.yml +319 -96
  119. data/data/plates/us-ga.yml +644 -0
  120. data/data/plates/us-gu.yml +658 -0
  121. data/data/plates/us-hi.yml +585 -0
  122. data/data/plates/us-ia.yml +438 -0
  123. data/data/plates/us-id.yml +531 -0
  124. data/data/plates/us-il.yml +516 -0
  125. data/data/plates/us-in.yml +324 -0
  126. data/data/plates/us-ks.yml +351 -0
  127. data/data/plates/us-ky.yml +770 -0
  128. data/data/plates/us-la.yml +568 -0
  129. data/data/plates/us-ma.yml +379 -0
  130. data/data/plates/us-md.yml +536 -0
  131. data/data/plates/us-me.yml +445 -0
  132. data/data/plates/us-mi.yml +408 -0
  133. data/data/plates/us-mn.yml +411 -0
  134. data/data/plates/us-mo.yml +356 -0
  135. data/data/plates/us-mp.yml +402 -0
  136. data/data/plates/us-ms.yml +432 -0
  137. data/data/plates/us-mt.yml +619 -0
  138. data/data/plates/us-nc.yml +602 -0
  139. data/data/plates/us-nd.yml +419 -0
  140. data/data/plates/us-ne.yml +483 -0
  141. data/data/plates/us-nh.yml +394 -0
  142. data/data/plates/us-nj.yml +547 -0
  143. data/data/plates/us-nm.yml +574 -0
  144. data/data/plates/us-nv.yml +655 -0
  145. data/data/plates/us-ny.yml +592 -0
  146. data/data/plates/us-oh.yml +404 -0
  147. data/data/plates/us-ok.yml +513 -0
  148. data/data/plates/us-or.yml +392 -0
  149. data/data/plates/us-pa.yml +506 -0
  150. data/data/plates/us-pr.yml +507 -0
  151. data/data/plates/us-ri.yml +445 -0
  152. data/data/plates/us-sc.yml +605 -0
  153. data/data/plates/us-sd.yml +428 -0
  154. data/data/plates/us-tn.yml +471 -0
  155. data/data/plates/us-tx.yml +535 -0
  156. data/data/plates/us-ut.yml +384 -0
  157. data/data/plates/us-va.yml +567 -0
  158. data/data/plates/us-vi.yml +489 -0
  159. data/data/plates/us-vt.yml +458 -0
  160. data/data/plates/us-wa.yml +484 -0
  161. data/data/plates/us-wi.yml +509 -0
  162. data/data/plates/us-wv.yml +446 -0
  163. data/data/plates/us-wy.yml +523 -0
  164. data/data/plates/va.yml +604 -0
  165. data/data/plates/za.yml +1141 -0
  166. data/data/vehicles.json +160653 -105090
  167. data/lib/vehicles/configuration.rb +17 -3
  168. data/lib/vehicles/dataset.rb +73 -18
  169. data/lib/vehicles/fuzzy.rb +115 -0
  170. data/lib/vehicles/http.rb +48 -0
  171. data/lib/vehicles/make.rb +36 -6
  172. data/lib/vehicles/mcp_server.rb +5 -5
  173. data/lib/vehicles/model.rb +21 -2
  174. data/lib/vehicles/plates/series.rb +172 -18
  175. data/lib/vehicles/plates/template_fill.rb +188 -0
  176. data/lib/vehicles/plates/templates.rb +162 -0
  177. data/lib/vehicles/plates.rb +12 -0
  178. data/lib/vehicles/providers/hosted_provider.rb +28 -55
  179. data/lib/vehicles/validators/vehicle_make_validator.rb +3 -1
  180. data/lib/vehicles/validators/vehicle_model_validator.rb +1 -1
  181. data/lib/vehicles/version.rb +1 -1
  182. data/lib/vehicles.rb +32 -16
  183. data/rakelib/data_refresh.rake +109 -0
  184. data/rakelib/plates_refresh.rake +29 -0
  185. data/sig/vehicles.rbs +18 -0
  186. metadata +164 -2
@@ -0,0 +1,808 @@
1
+ # plates/ca-ns.yml — Nova Scotia, Canada (PRD-PLATES gate L2/L3, Canada east wave).
2
+ #
3
+ # THE SURPRISE OF THE CANADA EAST WAVE: Nova Scotia legislates its plate DESIGNS.
4
+ # Ontario, New Brunswick, Prince Edward Island and Newfoundland and Labrador all
5
+ # leave the appearance of a plate to ministerial discretion and publish nothing.
6
+ # Nova Scotia makes a regulation per plate type and the regulation states the
7
+ # MILLIMETRE DIMENSIONS, THE FIELD COLOUR, THE LETTERING COLOUR, THE LEGENDS and,
8
+ # in one case, THE SERIAL GRAMMAR. Four of the series below therefore carry
9
+ # design claims quoted from an instrument rather than observed from a photograph,
10
+ # which is rarer in this dataset than it should be.
11
+ #
12
+ # FIVE STRUCTURAL FACTS THAT SHAPE THIS FILE
13
+ #
14
+ # 1. THE ACT DELEGATES THE PLATE'S CONTENT TO THE MINISTER, IN TERMS. Motor
15
+ # Vehicle Act s. 19(2), verbatim: "Every number plate shall have displayed upon
16
+ # it the registration number assigned to the owner and such other matter as the
17
+ # Minister may determine." s. 19(1): "The Department shall also furnish to
18
+ # every owner whose vehicle is registered the number of number plates assigned
19
+ # to the owner in the regulations." So: the NUMBER of plates is regulatory, the
20
+ # CONTENT is ministerial, and the composition of the registration number itself
21
+ # is stated nowhere at all. Nova Scotia then exercises that ministerial power by
22
+ # MAKING REGULATIONS ANYWAY, which is why this file has instrument-sourced
23
+ # colours.
24
+ #
25
+ # 2. NOVA SCOTIA IS A ONE-PLATE PROVINCE WITH A LONG EXCEPTION LIST AND AN
26
+ # INVERSION. Number Plates Regulations (N.S. Reg. 173/95) s. 1, verbatim:
27
+ # the Department assigns "(a) two number plates, bearing the same numbers, to a
28
+ # camper, farm truck, commercial fisherman truck, service truck, self-powered
29
+ # miscellaneous equipment, a vehicle to bear firefighter plates or antique
30
+ # plates or a vehicle to bear personalized plates, other than a motorcycle; and
31
+ # (b) except as provided in clause (a), one number plate to a motor vehicle."
32
+ # THE INVERSION IS s. 2(2): "Where the Department furnishes an owner of a heavy
33
+ # commercial motor vehicle with one number plate, the owner shall attach the
34
+ # number plate to the FRONT of the vehicle" — against s. 2(1), which puts the
35
+ # single plate of a passenger or light commercial vehicle on the REAR. Nova
36
+ # Scotia, Florida, Prince Edward Island and Québec all invert for heavy
37
+ # vehicles, each by its own route.
38
+ #
39
+ # 3. THE PLATE SIZE IS IN THE REGULATIONS, IN CENTIMETRES, REPEATEDLY. Personalized
40
+ # Number Plates Regulations s. 7(2)(a): "measure 15.24 cm in width by 30.48 cm
41
+ # in length"; s. 7(1)(a) for a motorcycle: "measure 10.16 cm in width by
42
+ # 17.78 cm in length". Conservation Number Plates Regulations s. 2(1)(a) and
43
+ # Honorary Consul Number Plates Regulations s. 3(a) repeat the 15.24 x 30.48
44
+ # figure. NOTE THE AXES, WHICH READ ODDLY AND ARE QUOTED AS FOUND: the
45
+ # regulations call 15.24 cm the WIDTH and 30.48 cm the LENGTH, i.e. 6 in by
46
+ # 12 in with the conventional US axis-naming inverted — the same oddity
47
+ # plates/us-fl.yml records for § 320.06(3)(a) F.S. This file records the plate
48
+ # as 30.48 cm across by 15.24 cm tall, which is the physical truth, and says so.
49
+ #
50
+ # 4. ONE NOVA SCOTIA SERIES HAS A STATUTORY SERIAL GRAMMAR, AND IT IS THE
51
+ # FIREFIGHTER PLATE. Number Plates for Firefighters Regulations (N.S. Reg.
52
+ # 49/91, Ministerial Order dated 18 March 1991), verbatim: plates issued after
53
+ # "the lst day of April, 1991" for firefighters shall have "(c) a depiction of
54
+ # the Fire Department's symbol ... at the left of THREE LETTERS AND ONE NUMBER
55
+ # used as the registration number assigned to the owner; (d) the background
56
+ # colour of the number plate shall be white, the Fire Department symbol and all
57
+ # other letters, numbers and marks shall be blue". A format, a colour pair and
58
+ # a commencement date, in one Ministerial Order. (The "lst" is the
59
+ # consolidation's own typography for "1st" and is quoted as found.)
60
+ #
61
+ # 5. THE ORDINARY PASSENGER PLATE'S DESIGN IS DESCRIBED IN LAW SIDEWAYS. No Nova
62
+ # Scotia regulation describes the STANDARD plate — but the Personalized Number
63
+ # Plates Regulations describe the personalized plate as the standard plate with
64
+ # a chosen serial, and in doing so state the standard design: s. 7(2)(b)-(d),
65
+ # verbatim: "bear a depiction of the Bluenose on a silver-white field"; "bear
66
+ # the words 'NOVA SCOTIA' at the top, in blue lettering"; "bear the words
67
+ # 'CANADAS OCEAN PLAYGROUND' at the bottom, in blue lettering". That is the
68
+ # Bluenose base, in a regulation, and it is why ca-ns-standard-1989's colours
69
+ # are not merely observed. (The regulation omits the apostrophe in "CANADAS";
70
+ # quoted as found.)
71
+ #
72
+ # SEPARATOR NOTE (PRD-PLATES §2.6): a Nova Scotia plate prints a GAP, not a glyph.
73
+ # The Personalized regulations confirm it from the authority's own side — a
74
+ # personalized designation is "composed of a sequence of at least 2 and no more
75
+ # than 7 numerals and letters ... WITH OR WITHOUT SPACES between the numerals and
76
+ # letters", i.e. the space is optional even to the Registrar. Every `pattern` here
77
+ # spells the emitted space; every regex accepts it as optional.
78
+ jurisdiction: ca-ns
79
+ authority:
80
+ name: Registry of Motor Vehicles, Nova Scotia (Service Nova Scotia); regulations made by the Minister and the Governor in Council under the Motor Vehicle Act
81
+ url: "https://novascotia.ca/just/regulations/regs/mvnumber.htm"
82
+ binding: owner
83
+ binding_note: >-
84
+ THE NOVA SCOTIA PLATE IS ASSIGNED TO THE OWNER, NOT THE VEHICLE, AND THE ACT
85
+ SAYS SO IN ITS OWN WORDS. MVA s. 19(1): the Department furnishes plates "to every
86
+ owner whose vehicle is registered ... the number of number plates assigned TO THE
87
+ OWNER". s. 19(2): the plate displays "the registration number assigned TO THE
88
+ OWNER". The Personalized Number Plates Regulations s. 4(2) go further: "A person
89
+ may apply for personalized number plates without registering a motor vehicle, but
90
+ personalized number plates that are not used for vehicle registration must not be
91
+ attached to a motor vehicle." A Nova Scotia plate can exist with no vehicle behind
92
+ it. Same posture as plates/ca-on.yml and plates/ch.yml; opposite of the Québec
93
+ association model in plates/ca-qc.yml.
94
+ instrument:
95
+ statute: "Motor Vehicle Act, R.S.N.S. 1989, c. 293 — ss. 10 (classification and plate-count regulations), 19 (number plate), 20 (display), 36(1) and 38 (ministerial number-plate powers), 302(1)"
96
+ regulations:
97
+ - "Number Plates Regulations — O.I.C. 95-864 (21 November 1995, effective 1 November 1995), N.S. Reg. 173/95, as amended by O.I.C. 2005-248 (9 June 2005), N.S. Reg. 123/2005"
98
+ - "Personalized Number Plates Regulations — O.I.C. 2005-248 (9 June 2005), N.S. Reg. 124/2005"
99
+ - "Number Plates for Firefighters Regulations — N.S. Reg. 49/91, Ministerial Order dated 18 March 1991, made under MVA s. 36(1)"
100
+ - "Number Plates for Farmers and Fishermen Regulations — made under MVA s. 38"
101
+ - "Conservation Number Plates Regulations — O.I.C. 2003-105 (21 March 2003), N.S. Reg. 54/2003, made under MVA s. 38"
102
+ - "Honorary Consul Number Plates Regulations — N.S. Reg. 117/2020, in force 8 September 2020 (Royal Gazette Part II, 25 September 2020)"
103
+ - "Veterans' Number Plates Regulations — O.I.C. 2002-606 (20 December 2002), N.S. Reg. 163/2002, amended to O.I.C. 2024-342 (10 September 2024), N.S. Reg. 194/2024"
104
+ - "Means of identification of Province-, municipality- and volunteer-owned vehicles — O.I.C. 90-945 (effective 1 August 1990), N.S. Reg. 224/1990, amended to O.I.C. 2002-444 (effective 27 September 2002), N.S. Reg. 122/2002, made under MVA ss. 38(1) and 302(1)"
105
+ reg_making_power: >-
106
+ MVA s. 10(1), verbatim: "Subject to the approval of the Governor in Council,
107
+ the Minister may make regulations dividing vehicles into various classes,
108
+ prescribing conditions governing the registration and operation of each class,
109
+ providing for the NUMBER of number plates to be affixed to each vehicle in each
110
+ class, providing for the LOCATION of the number plates to be affixed to each
111
+ vehicle in each class and providing penalties for violation of such
112
+ regulations." s. 10(2): "Such regulations upon publication in the Royal Gazette
113
+ shall have the same force and effect as if the regulations were contained in
114
+ this Act." NOTE WHAT s. 10(1) REACHES: number and location. Not composition,
115
+ not colour — those arrive through the s. 19(2) ministerial-determination route
116
+ and ss. 36(1)/38.
117
+ fetch_note: >-
118
+ nslegislature.ca WAS UNREACHABLE FROM THIS LOCATION on 2026-08-02: the TLS
119
+ handshake to 64.15.49.119:443 timed out on every attempt, direct and via
120
+ WebFetch. The consolidated Motor Vehicle Act PDF quoted here was therefore read
121
+ through the Internet Archive's copy of the official file (snapshot
122
+ 20251124192915), whose own footer reads "NOVEMBER 24, 2025". The REGULATIONS
123
+ were read directly from novascotia.ca, which was reachable. Recorded so a
124
+ verifier knows which quotations came through an archive.
125
+ sources:
126
+ - "https://web.archive.org/web/20251124192915/https://nslegislature.ca/sites/default/files/legc/statutes/motor%20vehicle.pdf # Motor Vehicle Act consolidation as at 24 November 2025, read 2026-08-02 — ss. 10, 19, 20 quoted above"
127
+ - "https://nslegislature.ca/sites/default/files/legc/statutes/motor%20vehicle.pdf # the official file the archive copy is of; UNREACHABLE from this location, see fetch_note"
128
+ - "https://novascotia.ca/just/regulations/regs/mvnumber.htm # Number Plates Regulations, N.S. Reg. 173/95, ss. 1 and 2(1)-(4) — read 2026-08-02"
129
+ licence: >-
130
+ The Nova Scotia Registry of Regulations serves these consolidations with the
131
+ notice "This consolidation is unofficial and is for reference only" and a
132
+ Crown copyright assertion. The TEXT of a statute or regulation is an EDICT OF
133
+ GOVERNMENT and uncopyrightable (PRD-PLATES §4); the quotations here are of that
134
+ text. Where a regulation refers to a Schedule "A" DEPICTION of the plate, the
135
+ depiction is not reproduced (PRD-PLATES §6: cite, never embed), and in several
136
+ cases the Registry itself states "Hard copy may be obtained from the Registry
137
+ of Regulations" — the drawing is not online at all.
138
+
139
+ artwork_risk:
140
+ posture: crown-copyright-asserted
141
+ basis: >-
142
+ Nova Scotia asserts Crown copyright on its regulation consolidations
143
+ ("This electronic version is copyright © 2009 / 2011, Province of Nova Scotia,
144
+ all rights reserved. It is for your personal use and may not be copied for the
145
+ purposes of resale"). The edicts-of-government principle frees the regulation
146
+ TEXT, which is what this file uses. The Schedule "A" plate DEPICTIONS attached
147
+ to each plate regulation are not reproduced and several are not published
148
+ online at all.
149
+ emblem_rule: >-
150
+ PRD-PLATES §3 placeholder default applies. The Bluenose depiction, the
151
+ provincial crest, the Fire Department symbol and the piping plover are all
152
+ rendered `placeholder`. The Bluenose is additionally a provincial emblem with
153
+ protection independent of copyright; unresearched, flagged.
154
+
155
+ common:
156
+ plate_count:
157
+ two_plate_classes:
158
+ text: >-
159
+ Number Plates Regulations s. 1, verbatim: the Department shall assign
160
+ "(a) two number plates, bearing the same numbers, to a camper, farm truck,
161
+ commercial fisherman truck, service truck, self-powered miscellaneous
162
+ equipment, a vehicle to bear firefighter plates or antique plates or a
163
+ vehicle to bear personalized plates, other than a motorcycle; and
164
+ (b) except as provided in clause (a), one number plate to a motor vehicle."
165
+ note: "Clause 1(a) was amended by O.I.C. 2005-248, N.S. Reg. 123/2005 — the same Order in Council that made the Personalized Number Plates Regulations, which is why personalized plates entered the two-plate list in 2005."
166
+ display:
167
+ text: >-
168
+ Number Plates Regulations s. 2, verbatim: "(1) Where the Department
169
+ furnishes an owner of a passenger or light commercial motor vehicle with
170
+ one number plate, the owner shall attach the number plate to the REAR of
171
+ the vehicle ... (2) Where the Department furnishes an owner of a heavy
172
+ commercial motor vehicle with one number plate, the owner shall attach the
173
+ number plate to the FRONT of the vehicle ... (3) Where the Department
174
+ furnishes the owner of a motor vehicle with two personalized plates, the
175
+ owner shall attach one number plate to the rear of the vehicle ...
176
+ (4) Where the Department furnishes an owner of a camper, farm truck,
177
+ commercial fisherman truck, service truck, self-powered miscellaneous
178
+ equipment [or] a vehicle to bear firefighter plates or antique plates with
179
+ two number plates bearing the same number, the owner shall attach one
180
+ number plate to the front of the motor vehicle and one number plate to the
181
+ rear".
182
+ mounting:
183
+ text: >-
184
+ MVA s. 20(2), verbatim: "Every number plate assigned to an owner and
185
+ required to be attached to a vehicle shall at all times be securely
186
+ fastened to the vehicle so as to prevent the plate from swinging and at a
187
+ height not less than 300 millimetres from the ground, measuring from the
188
+ bottom of the plate, in a place and position to be clearly visible, and
189
+ shall be maintained free from foreign materials and in a condition to be
190
+ clearly legible."
191
+ note: "300 mm minimum height is the same figure New Brunswick (MVA s. 30(2)(b), 30 cm), Prince Edward Island (HTA s. 21(3), 300 mm) and Newfoundland and Labrador (HTA s. 30(1), 30 centimetres) all use. Four Atlantic statutes, one number, independently enacted."
192
+ source: "https://novascotia.ca/just/regulations/regs/mvnumber.htm # N.S. Reg. 173/95 ss. 1, 2(1)-(4)"
193
+ source_statute: "https://web.archive.org/web/20251124192915/https://nslegislature.ca/sites/default/files/legc/statutes/motor%20vehicle.pdf # MVA ss. 19(1)-(3), 20(1)-(2)"
194
+ dimensions:
195
+ standard: { w_cm: 30.48, h_cm: 15.24, w_in: 12, h_in: 6 }
196
+ motorcycle: { w_cm: 17.78, h_cm: 10.16, w_in: 7, h_in: 4 }
197
+ restricted_motorcycle: { w_in: 8, h_in: 5 }
198
+ axis_note: >-
199
+ THE REGULATIONS NAME THE AXES THE OTHER WAY ROUND AND ARE QUOTED AS FOUND:
200
+ "15.24 cm in width by 30.48 cm in length" (Personalized reg s. 7(2)(a);
201
+ Conservation reg s. 2(1)(a); Honorary Consul reg s. 3(a)) and "10.16 cm in
202
+ width by 17.78 cm in length" for a motorcycle plate (Personalized reg
203
+ s. 7(1)(a)). The Restricted plate regulation instead says "a single six inch
204
+ by twelve inch number plate" and "a single five inch by eight inch number
205
+ plate" for a motorcycle (N.S. Reg. 224/1990 s. 1(a)-(b)) — inches, and a
206
+ DIFFERENT motorcycle size from the personalized regulation's. Both are
207
+ recorded; neither is reconciled, because they are two instruments about two
208
+ plate types and averaging them would be invention (PRD-PLATES §5.3).
209
+ source: "https://novascotia.ca/just/regulations/regs/mvprsnum.htm # Personalized reg s. 7(1)(a), 7(2)(a)"
210
+ source_secondary: "https://novascotia.ca/just/regulations/regs/mvrvehid.htm # N.S. Reg. 224/1990 s. 1(a)-(b): the six-by-twelve and five-by-eight inch RESTRICTED plates"
211
+ charset:
212
+ statutory: >-
213
+ NO NOVA SCOTIA INSTRUMENT STATES A SERIAL ALPHABET for ordinary plates. The
214
+ closest is the Personalized Number Plates Regulations s. 5(c)(ii), which lets
215
+ the Registrar refuse a designation that "contains characters other than
216
+ numerals, letters and spaces" — a negative statement of the alphabet, and the
217
+ only one located. It is quoted on ca-ns-personalized-2005 and is the basis of
218
+ that series' regex.
219
+ excluded_letters_secondary: [I, O, Q]
220
+ excluded_note: >-
221
+ TAGGED SECONDARY: the en.wikipedia Nova Scotia article states that I, O and Q
222
+ are not used in the ABC-123 serial format, citing a collector site. No
223
+ instrument says so. Encoded ONLY in `regex_strict`.
224
+ source: "https://novascotia.ca/just/regulations/regs/mvprsnum.htm # Personalized reg s. 5(c)(ii)"
225
+ source_secondary: "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Nova_Scotia # TAGGED SECONDARY (PRD-PLATES §4, owner override 2026-08-02), read 2026-08-02"
226
+
227
+ classes_not_modelled:
228
+ conservation:
229
+ exists: true
230
+ mechanism: >-
231
+ Conservation Number Plates Regulations s. 2(1), verbatim: on application "a
232
+ person may be issued a special number plate that (a) is 15.24 cm in width by
233
+ 30.48 cm in length; (b) shows a multi-coloured piping plover followed by blue
234
+ letters and numerals on a silver-white field; and (c) bears the words 'NOVA
235
+ SCOTIA' at the top and 'CONSERVATION - SPECIES AT RISK' at the bottom, and is
236
+ otherwise in general accordance with the number plate depicted in Schedule
237
+ 'A'." s. 3: available only for a passenger motor vehicle or a commercial motor
238
+ vehicle registered for 5 000 kg or less.
239
+ why_not_modelled: >-
240
+ THE REGULATION GIVES THE SIZE, THE COLOURS AND THE LEGENDS AND NEVER THE
241
+ SERIAL GRAMMAR — "blue letters and numerals" is an alphabet, not a shape. No
242
+ count, no arrangement, no order. Authoring a regex would be invention, so the
243
+ class is recorded here in full instead. This is the most complete design
244
+ description in the file for a series that cannot be authored.
245
+ sources:
246
+ - "https://novascotia.ca/just/regulations/regs/mvconsnp.htm # Conservation Number Plates Regulations, O.I.C. 2003-105 (21 March 2003), N.S. Reg. 54/2003, ss. 1-3, read 2026-08-02"
247
+ consular:
248
+ exists: true
249
+ mechanism: >-
250
+ Honorary Consul Number Plates Regulations s. 3, verbatim: on application "a
251
+ person may be issued a special number plate that (a) is 15.24 cm in width by
252
+ 30.48 cm in length; and (b) bears the words 'NOVA SCOTIA' at the top and
253
+ 'HONORARY CONSUL' at the bottom, and is otherwise in general accordance with
254
+ the number plate depicted in Schedule A." s. 4: eligibility is appointment as
255
+ an Honorary Consul for the district of Nova Scotia. s. 5: retention depends on
256
+ maintaining that status at each permit renewal. s. 6: passenger vehicles only.
257
+ why_not_modelled: "Same gap as conservation: size, legends and eligibility, no serial grammar and no colour. Recorded, not invented."
258
+ sources:
259
+ - "https://novascotia.ca/just/regulations/regs/MVhonconsulnp.htm # Honorary Consul Number Plates Regulations, N.S. Reg. 117/2020, in force 8 September 2020, ss. 1-6, read 2026-08-02"
260
+ veteran:
261
+ exists: true
262
+ mechanism: >-
263
+ Veterans' Number Plates Regulations, O.I.C. 2002-606 (20 December 2002),
264
+ N.S. Reg. 163/2002, amended to N.S. Reg. 194/2024. The regulation defines
265
+ "veteran" expansively — service in the Canadian Armed Forces, the armed forces
266
+ of another Commonwealth country or of a wartime ally, the RCMP as a regular
267
+ member, wartime service in the Merchant Navy or Ferry Command, and service as
268
+ a peace officer on a "special duty operation" — and has sections headed
269
+ "Issuance of veteran's number plate", "Description of veteran's number plate",
270
+ "Certification", "Schedule A" and "Schedule B".
271
+ why_not_modelled: >-
272
+ The consolidation's description section and both Schedules were NOT captured
273
+ in the fetch of 2026-08-02 (the page's body was retrieved down to the
274
+ definitions and the table of contents only). Rather than guess from the
275
+ headings, the class is recorded and flagged: a verifier should re-fetch
276
+ mvvetnp.htm and author the series from s. 3 and the "Description" section.
277
+ sources:
278
+ - "https://novascotia.ca/just/regulations/regs/mvvetnp.htm # Veterans' Number Plates Regulations — definitions and structure read 2026-08-02; the description section is a recorded gap"
279
+ restricted_government:
280
+ exists: true
281
+ mechanism: >-
282
+ N.S. Reg. 224/1990 s. 1, verbatim: the means of identification of a vehicle
283
+ "while owned by the Province of Nova Scotia, a city, town or municipality, an
284
+ emergency vehicle while owned by a volunteer fire department or a search and
285
+ rescue vehicle ... shall be (a) in respect of a motor vehicle or trailer, a
286
+ single six inch by twelve inch number plate attached to the REAR of the motor
287
+ vehicle or trailer, showing BLACK numerals and letters on a SILVER-WHITE
288
+ field and bearing the word 'RESTRICTED' at the top and the words 'NOVA SCOTIA'
289
+ at the bottom; and (b) in respect of a motorcycle, a single five inch by eight
290
+ inch number plate attached to the rear of the motorcycle showing black
291
+ numerals and letters on a silver-white field and bearing the word 'RESTRICTED'
292
+ at the top and the words 'NOVA SCOTIA' at the bottom." s. 2: no fee for a fire
293
+ emergency vehicle or a search-and-rescue vehicle under an Emergency Measures
294
+ Organization agreement. s. 3: the vehicle permit "shall state 'restricted'".
295
+ why_not_modelled: >-
296
+ A complete design in law — size, colours, legends, position — and NO SERIAL
297
+ GRAMMAR. The en.wikipedia article reports an R12345 arrangement for Nova
298
+ Scotia restricted plates, unfootnoted; that alone is too thin to author a
299
+ government series on when the instrument itself is silent, so the class is
300
+ recorded here with the instrument's text intact. A verifier who accepts the
301
+ secondary can promote it in one edit.
302
+ sources:
303
+ - "https://novascotia.ca/just/regulations/regs/mvrvehid.htm # N.S. Reg. 224/1990 ss. 1-5, made under MVA ss. 38(1) and 302(1), effective 1 August 1990, amended to N.S. Reg. 122/2002, read 2026-08-02"
304
+ camper_and_accessible:
305
+ exists: true
306
+ mechanism: >-
307
+ A camper is a two-plate class under Number Plates Regulations s. 1(a) and has
308
+ its own fee regulation (Registration Fees for Campers Regulations, O.I.C.
309
+ 77-763, effective 1 November 1977, N.S. Reg. 62/77, amended to N.S. Reg.
310
+ 132/2015). Accessible ("Handicap") plates exist and the article reports a
311
+ 1A-23 arrangement from 1981.
312
+ why_not_modelled: "No design or serial regulation located for either; the camper regulation prescribes FEES, not appearance. Recorded as gaps."
313
+ sources:
314
+ - "https://novascotia.ca/just/regulations/regs/mvcamper.htm # Registration Fees for Campers Regulations — cited as the instrument that creates the class; fees only"
315
+
316
+ series:
317
+
318
+ # =========================================================================
319
+ # THE CURRENT STANDARD SERIES — the Bluenose base, and its colours are in a
320
+ # regulation (see header fact 5).
321
+ # =========================================================================
322
+ - id: ca-ns-standard-1989
323
+ class: standard
324
+ categories: [car, van, truck]
325
+ period: { start: 1989 }
326
+ period_evidence: secondary-wikipedia
327
+ matching: strict
328
+ format:
329
+ pattern: "LLL 999"
330
+ regex: '\A[A-Z]{3} ?\d{3}\z'
331
+ regex_strict: '\A[ABCDEFGHJKLMNPRSTUVWXYZ]{3} ?\d{3}\z'
332
+ charset:
333
+ excluded: [I, O, Q]
334
+ notes: "TAGGED SECONDARY — see `common.charset`. No Nova Scotia instrument states any exclusion; encoded only in `regex_strict`."
335
+ progression: "the article's issuance record runs BRT 001 (1989) through the F, G and H letter blocks; there is NO date and NO region signal in a Nova Scotia serial"
336
+ separator_note: "a printed gap, not a glyph; the Personalized regulation's 'with or without spaces' language (s. 7(2)(e)) is the authority's own confirmation that the space is optional"
337
+ design:
338
+ plate: { w: 30.48, h: 15.24, unit: cm, w_in: 12, h_in: 6 }
339
+ plate_note: "SOURCED, not conventional: the Personalized Number Plates Regulations s. 7(2)(a) prescribe '15.24 cm in width by 30.48 cm in length' for a plate on this base. See `common.dimensions.axis_note` for why the axes are recorded transposed."
340
+ background: { color: "#F2F2F2", finish: retroreflective, hex_basis: observed, spec_note: "the regulation names the field 'silver-white' (Personalized reg s. 7(2)(b)) and gives no coordinate; the hex is an sRGB reading of that name and is marked observed" }
341
+ foreground: "#003C71"
342
+ colour_spec_note: >-
343
+ THE COLOURS ARE NAMED IN A REGULATION, WHICH IS RARE IN THIS DATASET.
344
+ Personalized Number Plates Regulations s. 7(2), verbatim: a plate on this
345
+ base must "(b) bear a depiction of the Bluenose on a silver-white field;
346
+ (c) bear the words 'NOVA SCOTIA' at the top, in blue lettering; (d) bear the
347
+ words 'CANADAS OCEAN PLAYGROUND' at the bottom, in blue lettering". Named,
348
+ not numbered — so both hexes remain `hex_basis: observed` inside a
349
+ regulated colour name, the same posture plates/gb.yml takes for the British
350
+ statutory "yellow".
351
+ legend_top: "NOVA SCOTIA"
352
+ legend_bottom_options: ["CANADA'S OCEAN PLAYGROUND"]
353
+ legend_note: "the regulation prints it without the apostrophe — 'CANADAS OCEAN PLAYGROUND' — and is quoted that way in `colour_spec_note`; the plate itself shows the apostrophe"
354
+ emblem: { present: true, rendered: placeholder, description: "the schooner Bluenose, screened in the centre of the field — prescribed by Personalized reg s. 7(2)(b) and therefore a REGULATED design element, not an observed one" }
355
+ band: { side: none }
356
+ rear_differs: false
357
+ display: "one plate, REAR, for a passenger or light commercial vehicle (Number Plates Regulations ss. 1(b), 2(1)); FRONT for a heavy commercial vehicle issued a single plate (s. 2(2))"
358
+ spec_history:
359
+ - { from: 1989, to: 2011, note: "embossed blue serial on reflective white with border lines around the plate and around the top corners" }
360
+ - { from: 2011, note: "border lines removed and narrower serial dies introduced; the mark, the format and the colours are unchanged, so this is a specification change inside one design (PRD-PLATES §2.3) and not a second series" }
361
+ region_encoding: none
362
+ sources:
363
+ - "https://web.archive.org/web/20251124192915/https://nslegislature.ca/sites/default/files/legc/statutes/motor%20vehicle.pdf # MVA s. 19(1),(2): plates are furnished to the OWNER and display 'the registration number assigned to the owner and such other matter as the Minister may determine'; s. 20(2): the 300 mm mounting rule"
364
+ - "https://novascotia.ca/just/regulations/regs/mvnumber.htm # Number Plates Regulations, N.S. Reg. 173/95 ss. 1(b), 2(1): one plate, on the rear, for a passenger or light commercial motor vehicle"
365
+ - "https://novascotia.ca/just/regulations/regs/mvprsnum.htm # Personalized Number Plates Regulations, N.S. Reg. 124/2005 s. 7(2)(a)-(d): the 15.24 x 30.48 cm size, the silver-white field, the Bluenose depiction and the blue NOVA SCOTIA / CANADAS OCEAN PLAYGROUND legends — quoted verbatim above"
366
+ - "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Nova_Scotia # TAGGED SECONDARY: the ABC 123 format from 1979, the Bluenose base from 1989, the 2011 die-and-border change, the issuance ranges and the I/O/Q exclusion"
367
+ notes: >-
368
+ THE CURRENT NOVA SCOTIA PLATE, AND THE BEST-EVIDENCED DESIGN IN THE CANADA
369
+ EAST WAVE. Its SIZE, FIELD COLOUR, LETTERING COLOUR, LEGENDS and CENTRAL
370
+ GRAPHIC are all quoted from N.S. Reg. 124/2005 — sideways, because that
371
+ regulation describes the personalized plate, and a Nova Scotia personalized
372
+ plate is this plate with a chosen serial. Its PERIOD and its FORMAT are not:
373
+ 1989 and ABC 123 are the en.wikipedia article's, hence
374
+ `period_evidence: secondary-wikipedia`. THE FORMAT PREDATES THE BASE and that
375
+ is why the series is cut at 1989 rather than 1979: the article dates ABC-123
376
+ to 1979 and the Bluenose base to 1989, and PRD-PLATES §2.3 makes a design
377
+ change with a distinct period its own series. The predecessor is authored
378
+ below. NOTE FOR THE PARSE LAYER: three letters and three numerals is the most
379
+ common plate shape in North America, so a bare ABC 123 string is very weakly
380
+ diagnostic of Nova Scotia — it collides with the current Newfoundland and
381
+ Labrador and New Brunswick series in this very wave.
382
+
383
+ - id: ca-ns-standard-1979
384
+ class: standard
385
+ categories: [car, van, truck]
386
+ period: { start: 1979, end: 1989 }
387
+ period_evidence: secondary-wikipedia
388
+ matching: strict
389
+ format:
390
+ pattern: "LLL 999"
391
+ regex: '\A[A-Z]{3} ?\d{3}\z'
392
+ regex_strict: '\A[ABCDEFGHJKLMNPRSTUVWXYZ]{3} ?\d{3}\z'
393
+ charset: { excluded: [I, O, Q], notes: "as ca-ns-standard-1989" }
394
+ design:
395
+ plate: { w: 30.48, h: 15.24, unit: cm, plate_basis: convention }
396
+ plate_note: "the 1979 base predates every plate regulation quoted in this file, so its size is the North American convention rather than a sourced figure"
397
+ background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
398
+ foreground: "#003C71"
399
+ legend_top: "NOVA SCOTIA"
400
+ legend_bottom_options: ["CANADA'S OCEAN PLAYGROUND"]
401
+ emblem: { present: false, rendered: placeholder, note: "no Bluenose on this base — that is the whole difference from ca-ns-standard-1989" }
402
+ band: { side: none }
403
+ rear_differs: false
404
+ sources:
405
+ - "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Nova_Scotia # TAGGED SECONDARY: ABC-123 introduced 1979 on the 1975 base, AAA-001 to BRS-999, superseded by the Bluenose base in 1989; the 1986 change from steel to aluminium happened inside this run"
406
+ - "https://web.archive.org/web/20251124192915/https://nslegislature.ca/sites/default/files/legc/statutes/motor%20vehicle.pdf # MVA s. 19(3): the Registrar may require the return of plates 'upon the termination of the lawful use thereof' — the mechanism by which a superseded Nova Scotia plate leaves the road"
407
+ notes: >-
408
+ ONE SERIES BACK. The FORMAT is identical to the current series and only the
409
+ DESIGN differs, which is exactly the PRD-PLATES §2.3 test for a separate
410
+ series and also the reason a parse API cannot distinguish the two from a
411
+ string. Both boundaries are the article's, unfootnoted. The 1986 switch from
412
+ steel to aluminium is recorded here rather than cut as a series: a material
413
+ change with no consumer-visible consequence.
414
+
415
+ # =========================================================================
416
+ # PERSONALIZED — the regulation that describes every other Nova Scotia plate.
417
+ # =========================================================================
418
+ - id: ca-ns-personalized-2005
419
+ class: personalized
420
+ categories: [car, van, truck, bus, motorcycle, motorhome]
421
+ period: { start: 2005 }
422
+ period_evidence: enabling-instrument
423
+ matching: strict
424
+ format:
425
+ pattern: "LLLLLLL"
426
+ regex: '\A[A-Z0-9]{2,7}\z'
427
+ charset:
428
+ notes: >-
429
+ AUTHORITY-SOURCED END TO END. Personalized Number Plates Regulations
430
+ s. 7(2)(e), verbatim: the plate must "bear a plate designation, selected
431
+ by the applicant and approved by the Registrar, composed of a sequence of
432
+ at least 2 and no more than 7 numerals and letters, in blue lettering,
433
+ with or without spaces between the numerals and letters." s. 5(c)(ii)
434
+ gives the alphabet negatively: the Registrar may refuse a designation
435
+ that "contains characters other than numerals, letters and spaces."
436
+ Together those two clauses ARE this regex.
437
+ refusal_rules:
438
+ text: >-
439
+ s. 5, verbatim, the grounds on which the Registrar may refuse: the
440
+ designation "(i) has been previously issued, (ii) contains characters
441
+ other than numerals, letters and spaces, (iii) contains a combination of
442
+ characters assigned to other types of number plates, (iv) in the opinion
443
+ of the Registrar, contains a combination of characters that expresses or
444
+ implies a word, phrase or idea that is or may be considered offensive or
445
+ not in good taste, or (v) in the opinion of the Registrar, contains a
446
+ combination of characters that states or suggests an official authority
447
+ or is otherwise potentially misleading".
448
+ note: >-
449
+ GROUND (iii) IS THE INTERESTING ONE FOR A PARSE API: Nova Scotia
450
+ explicitly reserves, against vanity applicants, "a combination of
451
+ characters assigned to other types of number plates" — so a personalized
452
+ Nova Scotia plate should never collide with the FM, firefighter,
453
+ restricted or commercial shapes in this file. That is a stated
454
+ disjointness guarantee, and no other jurisdiction in the Canada east
455
+ wave gives one.
456
+ design:
457
+ plate: { w: 30.48, h: 15.24, unit: cm, w_in: 12, h_in: 6 }
458
+ background: { color: "#F2F2F2", finish: retroreflective, hex_basis: observed, spec_note: "s. 7(2)(b): 'a depiction of the Bluenose on a silver-white field'" }
459
+ foreground: "#003C71"
460
+ colour_spec_note: "s. 7(2)(c)-(e): 'NOVA SCOTIA' at the top in blue lettering, 'CANADAS OCEAN PLAYGROUND' at the bottom in blue lettering, and the designation itself 'in blue lettering'"
461
+ legend_top: "NOVA SCOTIA"
462
+ legend_bottom_options: ["CANADA'S OCEAN PLAYGROUND"]
463
+ emblem: { present: true, rendered: placeholder, description: "the Bluenose, prescribed by s. 7(2)(b)" }
464
+ band: { side: none }
465
+ rear_differs: false
466
+ display: "TWO plates — a personalized vehicle is in the two-plate list at Number Plates Regulations s. 1(a), and s. 2(3) requires at least one of them on the rear"
467
+ variants:
468
+ - name: "motorcycle personalized"
469
+ format: { pattern: "LLLLLL", regex: '\A[A-Z0-9]{2,6}\z' }
470
+ note: >-
471
+ s. 7(1), verbatim: a motorcycle personalized plate must "(a) measure
472
+ 10.16 cm in width by 17.78 cm in length; (b) bear a silver-white field;
473
+ (c) bear the words 'NOVA SCOTIA' at the top, in blue lettering;
474
+ (d) bear a plate designation ... composed of a sequence of at least 2 and
475
+ no more than 6 numerals and letters, in blue lettering, with or without
476
+ spaces". NOTE: no Bluenose and no bottom legend on the motorcycle plate —
477
+ the regulation omits both, and the omission is a design fact. Also note
478
+ s. 1(a): a motorcycle is expressly EXCLUDED from the two-plate rule.
479
+ eligibility:
480
+ text: >-
481
+ s. 3, verbatim: "Personalized plates may be used for all of the following
482
+ types of motor vehicles: (a) a bus with a registered weight of 5000 kg or
483
+ less; (b) a camper; (c) a motorcycle; (d) a commercial motor vehicle with a
484
+ registered weight of 5000 kg or less, other than an ambulance or a hearse;
485
+ (e) a passenger vehicle."
486
+ no_vehicle_needed: "s. 4(2), verbatim: 'A person may apply for personalized number plates without registering a motor vehicle, but personalized number plates that are not used for vehicle registration must not be attached to a motor vehicle.'"
487
+ expiry:
488
+ text: >-
489
+ s. 9 sets a genuinely unusual pair of rules. For a MOTORCYCLE registered
490
+ with a personalized plate, initial registration expires "at 11:59 p.m. on
491
+ December 31 of the calendar year in which the registration is made, if
492
+ payment for the initial registration occurs between January 1 and October 1
493
+ of that calendar year", or on 31 December of the FOLLOWING year if payment
494
+ falls between 1 November and 31 December. For a bus, camper, commercial
495
+ motor vehicle or passenger vehicle it expires "in the following calendar
496
+ year at 11:59 p.m. on the last day of the month in which payment for the
497
+ initial registration occurred". In both cases a plate REPLACING an existing
498
+ one inherits the current validation sticker's expiry.
499
+ gap_note: "s. 9(1)(a) leaves 2-31 October unaddressed on its face — the two limbs read 'January 1 and October 1' and 'November 1 and December 31'. Recorded as found; not repaired."
500
+ recall: "s. 8: 'The Registrar may recall a personalized number plate for any reason set out in clause 5(c).'"
501
+ sources:
502
+ - "https://novascotia.ca/just/regulations/regs/mvprsnum.htm # Personalized Number Plates Regulations, O.I.C. 2005-248 (9 June 2005), N.S. Reg. 124/2005, ss. 1-9 — every quotation above, read 2026-08-02"
503
+ - "https://novascotia.ca/just/regulations/regs/mvnumber.htm # Number Plates Regulations s. 1(a) as amended by N.S. Reg. 123/2005: personalized vehicles joined the two-plate list by the SAME Order in Council; s. 2(3): one of the two goes on the rear"
504
+ - "https://web.archive.org/web/20251124192915/https://nslegislature.ca/sites/default/files/legc/statutes/motor%20vehicle.pdf # MVA s. 19(2): 'such other matter as the Minister may determine' — the statutory hook this regulation hangs on"
505
+ notes: >-
506
+ THE KEYSTONE REGULATION OF THIS FILE. It is the source of the standard
507
+ plate's colours, the standard plate's size, the motorcycle plate's size, the
508
+ only stated Nova Scotia serial alphabet, and the only stated disjointness
509
+ guarantee between vanity serials and other plate types. period.start 2005 is
510
+ `enabling-instrument` and earned: O.I.C. 2005-248 dated 9 June 2005 made
511
+ N.S. Reg. 124/2005 and, in the same Order, amended the Number Plates
512
+ Regulations to put personalized vehicles in the two-plate class — two
513
+ instruments moving together, which is what a real programme start looks like.
514
+ It is NOT a claim that Nova Scotia had no vanity plates before 2005; it is a
515
+ claim about THIS regime.
516
+
517
+ # =========================================================================
518
+ # FIREFIGHTER — the one Nova Scotia series with a STATUTORY SERIAL GRAMMAR.
519
+ # =========================================================================
520
+ - id: ca-ns-firefighter-1991
521
+ class: specialty
522
+ categories: [car, van, truck]
523
+ period: { start: 1991 }
524
+ period_evidence: enabling-instrument
525
+ matching: strict
526
+ format:
527
+ pattern: "LLL9"
528
+ regex: '\A[A-Z]{3} ?\d\z'
529
+ charset:
530
+ notes: >-
531
+ THE GRAMMAR IS IN THE INSTRUMENT. N.S. Reg. 49/91 clause (c), verbatim:
532
+ "a depiction of the Fire Department's symbol shall be at the left of
533
+ THREE LETTERS AND ONE NUMBER used as the registration number assigned to
534
+ the owner." Three letters, one number, in a Ministerial Order — the only
535
+ Nova Scotia serial grammar this pass located in any instrument. The
536
+ separator is not mentioned; `regex` accepts an optional space because the
537
+ plate prints a gap and because the Personalized regulation shows the
538
+ Registrar treats spaces as optional generally.
539
+ design:
540
+ plate: { w: 30.48, h: 15.24, unit: cm, plate_basis: convention, note: "N.S. Reg. 49/91 states no size; the two-plate rule at Number Plates Regulations s. 1(a) implies an ordinary-size plate" }
541
+ background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed, spec_note: "clause (d), verbatim: 'the background colour of the number plate shall be white'" }
542
+ foreground: "#003C71"
543
+ colour_spec_note: "clause (d), verbatim: 'the Fire Department symbol and all other letters, numbers and marks shall be blue'. Named, not numbered — hexes observed inside a regulated colour name."
544
+ legend_top: "NOVA SCOTIA"
545
+ legend_bottom_options: ["FIREFIGHTER"]
546
+ legend_spec_note: "clauses (a) and (b), verbatim: 'the words \"NOVA SCOTIA\" shall be at the top of the number plate' / 'the word \"FIREFIGHTER\" shall be at the bottom on the number plate'"
547
+ emblem: { present: true, rendered: placeholder, description: "the Fire Department's symbol, prescribed by clause (c) to sit at the LEFT of the serial" }
548
+ band: { side: none }
549
+ rear_differs: false
550
+ display: "TWO plates, front and rear — firefighter plates are in the two-plate list at Number Plates Regulations s. 1(a) and s. 2(4)"
551
+ eligibility: >-
552
+ The Ministerial Order's own operative words: plates issued after 1 April 1991
553
+ "in the case of firefighters employed within the Province of Nova Scotia for
554
+ passenger motor vehicles and commercial motor vehicles registered for a weight
555
+ of 5000 kilograms or less shall have the following appearance". Note the
556
+ "employed within the Province" qualifier — the Order does not on its face
557
+ extend to volunteer firefighters, who have their own regulation
558
+ (mvvolfir.htm, not fetched in this pass; recorded as a gap).
559
+ sources:
560
+ - "https://novascotia.ca/just/regulations/regs/mvnpfire.htm # Number Plates for Firefighters Regulations, N.S. Reg. 49/91, Ministerial Order dated 18 March 1991 made under MVA s. 36(1), clauses (a)-(e) — every quotation above, read 2026-08-02"
561
+ - "https://novascotia.ca/just/regulations/regs/mvnumber.htm # Number Plates Regulations ss. 1(a), 2(4): firefighter plates are a two-plate class, front and rear"
562
+ notes: >-
563
+ A FORMAT, A COLOUR PAIR, A LEGEND PAIR AND A COMMENCEMENT DATE, ALL IN ONE
564
+ MINISTERIAL ORDER — which is why this modest specialty plate is the only Nova
565
+ Scotia series in this file whose `format` is not a secondary claim.
566
+ period.start 1991 is `enabling-instrument` and reads off the Order's own
567
+ words: plates "issued after the lst day of April, 1991" (the consolidation's
568
+ typography for "1st", quoted as found). `class: specialty` rather than a
569
+ bespoke value: the vocabulary has no firefighter member, and PRD-PLATES §2.3
570
+ forbids inventing one ad hoc; the plate is an optional design on an ordinary
571
+ allocation, which is what `specialty` means.
572
+
573
+ # =========================================================================
574
+ # FARMERS AND FISHERMEN — the FM plate. Grammar half-stated, hence recall-only.
575
+ # =========================================================================
576
+ - id: ca-ns-fm-farmer-fisherman
577
+ class: agricultural
578
+ categories: [truck, van]
579
+ period: { start: 1989 }
580
+ period_evidence: statutory-authority-undated
581
+ matching: recall-only
582
+ format:
583
+ pattern: "FM 9999"
584
+ regex: '\AFM ?\d{1,6}\z'
585
+ charset:
586
+ notes: >-
587
+ THE INSTRUMENT SAYS HALF OF IT AND THIS FILE DOES NOT INVENT THE OTHER
588
+ HALF. Number Plates for Farmers and Fishermen Regulations s. 3, verbatim:
589
+ an FM number plate must "(a) have dimensions of 15.24 cm in width by 30.48
590
+ in length; (b) bear the words 'Nova Scotia' at the top; (c) bear the
591
+ letters 'FM' followed by RANDOM NUMBERS; and (d) be in general accordance
592
+ with the number plate depicted in Schedule A." The FM prefix is primary.
593
+ "Random numbers" states neither a count nor a range, so `regex` accepts
594
+ one to six digits and the series is `matching: recall-only`: a hit is a
595
+ shape hit, not a validity claim (PRD-PLATES §2.7).
596
+ dimension_note: "s. 3(a) reads '15.24 cm in width by 30.48 in length' — the unit is missing from the second figure in the consolidation. Quoted as found; read as 30.48 cm by comparison with the identically worded Personalized, Conservation and Honorary Consul regulations."
597
+ design:
598
+ plate: { w: 30.48, h: 15.24, unit: cm, w_in: 12, h_in: 6 }
599
+ background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed, spec_note: "the regulation states no colour — only the size, the top legend and the FM prefix" }
600
+ foreground: "#003C71"
601
+ legend_top: "Nova Scotia"
602
+ legend_note: "s. 3(b) prints it in mixed case — 'Nova Scotia' — where the firefighter, restricted, conservation and honorary-consul regulations all print 'NOVA SCOTIA' in capitals. Quoted as found in each case; whether the plates differ typographically is not established."
603
+ emblem: { present: false, rendered: placeholder }
604
+ band: { side: none }
605
+ rear_differs: false
606
+ display: "TWO plates, front and rear — a farm truck and a commercial fisherman truck are both in the two-plate list at Number Plates Regulations s. 1(a) and s. 2(4)"
607
+ eligibility:
608
+ text: >-
609
+ s. 2 defines "farmer" as a person "(i) who resides on a farm and derives the
610
+ major part of their income from that farm, or (ii) who operates a farm that
611
+ gives employment to 1 or more persons on a full-time basis", and "fisherman"
612
+ as a person holding "a valid commercial fishing vessel registration under the
613
+ Fisheries Act (Canada) and a valid registration card issued under Section 36
614
+ of the Revenue Act Regulations", or "an aquaculture licence issued under the
615
+ Fisheries and Coastal Resources Act". s. 5(2): the plate may be displayed
616
+ only on "(a) a commercial truck that is owned or leased by the farmer or
617
+ fisherman ...; or (b) a passenger van with a minimum seating capacity of 7".
618
+ use_restrictions: >-
619
+ s. 6, verbatim in part: a driver must not use an FM-plated vehicle "(a) to
620
+ transport any passenger for gain; (b) as transportation to or from the
621
+ driver's employment, other than employment related to the farmer's farm
622
+ business; (c) to carry goods for gain, unless the goods are for the use of or
623
+ products of a farm that is located in the Province" — and the parallel rule
624
+ at s. 6(2) for a fisherman.
625
+ sources:
626
+ - "https://novascotia.ca/just/regulations/regs/mvplatesfarmer.htm # Number Plates for Farmers and Fishermen Regulations, made under MVA s. 38, ss. 2-6 — every quotation above, read 2026-08-02"
627
+ - "https://novascotia.ca/just/regulations/regs/mvnumber.htm # Number Plates Regulations ss. 1(a), 2(4): farm trucks and commercial fisherman trucks are a two-plate class"
628
+ notes: >-
629
+ A PLATE THAT DECODES AN OCCUPATION — the FM prefix says the holder is a farmer
630
+ or a commercial fisherman, and Nova Scotia is the only jurisdiction in this
631
+ wave to put such a thing in a regulation. `matching: recall-only` is the
632
+ honest grade and the reason is stated in `charset.notes`: "random numbers" is
633
+ not a grammar. PERIOD IS THE WEAK PART: the consolidation as served carries no
634
+ Order in Council date, no N.S. Reg. number and no in-force date in the portion
635
+ retrieved on 2026-08-02, so `period_evidence: statutory-authority-undated` and
636
+ 1989 is the year of the Motor Vehicle Act's own revision (R.S.N.S. 1989,
637
+ c. 293) under which the regulation is made — a floor, not a start. A verifier
638
+ should replace it with the Order in Council date from the Registry of
639
+ Regulations' legislative-history table.
640
+
641
+ # =========================================================================
642
+ # MOTORCYCLE — six numerals, small plate.
643
+ # =========================================================================
644
+ - id: ca-ns-motorcycle-1998
645
+ class: motorcycle
646
+ categories: [motorcycle]
647
+ period: { start: 1998 }
648
+ period_evidence: secondary-wikipedia
649
+ matching: strict
650
+ format:
651
+ pattern: "999999"
652
+ regex: '\A\d{6}\z'
653
+ charset: { notes: "all-numeric; no letters reported and none excluded. The all-numeric shape is why a Nova Scotia motorcycle plate is trivially separable from every other series in this file." }
654
+ progression: "the article's issuance record runs from 97600 upward, i.e. the six-digit run continues the previous five-digit numbering rather than restarting"
655
+ design:
656
+ plate: { w: 17.78, h: 10.16, unit: cm, w_in: 7, h_in: 4 }
657
+ plate_note: "SOURCED: Personalized Number Plates Regulations s. 7(1)(a) prescribes '10.16 cm in width by 17.78 cm in length' for a motorcycle plate. NOTE THE CONFLICT with N.S. Reg. 224/1990 s. 1(b), which gives a RESTRICTED motorcycle plate as 'five inch by eight inch' (12.7 x 20.32 cm). Two instruments, two plate types, two sizes; recorded, not reconciled."
658
+ background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed, spec_note: "the Personalized reg calls the motorcycle field 'silver-white' (s. 7(1)(b))" }
659
+ foreground: "#003C71"
660
+ legend_top: "NOVA SCOTIA"
661
+ emblem: { present: false, rendered: placeholder, note: "the Personalized reg's motorcycle description omits both the Bluenose and the bottom legend, which the standard-plate description has — an instrument-level confirmation that the small plate carries neither" }
662
+ band: { side: none }
663
+ rear_differs: false
664
+ display: "ONE plate, REAR — a motorcycle is expressly excluded from the two-plate rule by Number Plates Regulations s. 1(a) and falls to s. 1(b) and s. 2(1)"
665
+ expiry: "the article states all Nova Scotia motorcycle plates expire on 31 December, which the Personalized reg s. 9(1) independently corroborates for personalized motorcycle plates (expiry '11:59 p.m. on December 31')"
666
+ sources:
667
+ - "https://novascotia.ca/just/regulations/regs/mvprsnum.htm # Personalized Number Plates Regulations s. 7(1)(a)-(d): the 10.16 x 17.78 cm motorcycle plate, its silver-white field, its blue 'NOVA SCOTIA' top legend and the absence of any bottom legend or Bluenose; s. 9(1): the 31 December expiry"
668
+ - "https://novascotia.ca/just/regulations/regs/mvnumber.htm # Number Plates Regulations s. 1(a): 'other than a motorcycle' — the exclusion that makes this a one-plate class"
669
+ - "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Nova_Scotia # TAGGED SECONDARY: the six-digit format from 1998, its issuance range, and the 31 December expiry"
670
+ notes: >-
671
+ THE SIZE AND THE FIELD COLOUR ARE INSTRUMENT-SOURCED AND THE FORMAT IS NOT.
672
+ 1998 and the six-digit shape are the article's. What the regulation adds, and
673
+ what makes this series worth authoring rather than folding into the standard
674
+ series, is that the Nova Scotia motorcycle plate is a genuinely different
675
+ object: a different size, a one-plate class by express exclusion, and no
676
+ Bluenose and no bottom legend — four differences, all sourced.
677
+
678
+ # =========================================================================
679
+ # COMMERCIAL — yellow, and now heavy vehicles only.
680
+ # =========================================================================
681
+ - id: ca-ns-commercial-1978
682
+ class: standard
683
+ categories: [truck, van, semitrailer]
684
+ period: { start: 1978 }
685
+ period_evidence: secondary-wikipedia
686
+ matching: strict
687
+ format:
688
+ pattern: "99 999 L"
689
+ regex: '\A\d{2} ?\d{3} ?[A-Z]\z'
690
+ charset: { notes: "two digits, three digits, one letter; the letter is the block marker and the article's issuance record runs A through D. No exclusion stated." }
691
+ progression: "10-000-A upward through the A, B, C and D blocks per the article"
692
+ design:
693
+ plate: { w: 30.48, h: 15.24, unit: cm, plate_basis: convention }
694
+ background: { color: "#FFD100", finish: retroreflective, hex_basis: observed }
695
+ foreground: "#000000"
696
+ colour_note: >-
697
+ BLACK ON YELLOW, and it is the only non-white Nova Scotia field in this
698
+ file. NO INSTRUMENT STATES IT — the Registration Fees for Commercial Motor
699
+ Vehicles Regulations prescribe fees, not appearance — so both hexes are
700
+ observed and the colour claim itself is the article's.
701
+ legend_top: "NOVA SCOTIA"
702
+ legend_bottom_options: ["COMMERCIAL"]
703
+ emblem: { present: false, rendered: placeholder }
704
+ band: { side: none }
705
+ rear_differs: false
706
+ display: >-
707
+ A heavy commercial motor vehicle issued a SINGLE plate carries it on the
708
+ FRONT — Number Plates Regulations s. 2(2), verbatim: "Where the Department
709
+ furnishes an owner of a heavy commercial motor vehicle with one number
710
+ plate, the owner shall attach the number plate to the front of the vehicle
711
+ and keep it so attached at all times while the vehicle is registered under
712
+ the Act." The inverse of the passenger rule at s. 2(1) and a real
713
+ photographic signal.
714
+ spec_history:
715
+ - { from: 1978, to: 2012, note: "border lines around the plate and around the top corners" }
716
+ - { from: 2012, note: "border lines removed; format, colours and legends unchanged" }
717
+ scope_note: >-
718
+ TAGGED SECONDARY, AND IMPORTANT FOR THE PARSE LAYER: the article states this
719
+ series is now issued only to commercial vehicles ABOVE 5 000 kg, and that
720
+ lighter commercial vehicles have taken ordinary passenger plates since 1986.
721
+ So a Nova Scotia van or light truck normally wears ca-ns-standard-1989, not
722
+ this. The 5 000 kg line is independently corroborated by the Personalized
723
+ Number Plates Regulations s. 3(d), which lets a commercial motor vehicle of
724
+ "5000 kg or less" take a personalized plate — the same threshold, in an
725
+ instrument.
726
+ sources:
727
+ - "https://novascotia.ca/just/regulations/regs/mvnumber.htm # Number Plates Regulations s. 2(2): the front-plate rule for a heavy commercial motor vehicle, verbatim above"
728
+ - "https://novascotia.ca/just/regulations/regs/mvprsnum.htm # Personalized reg s. 3(d): the 5 000 kg commercial threshold, in an instrument"
729
+ - "https://novascotia.ca/just/regulations/regs/mvregcom.htm # Registration Fees for Commercial Motor Vehicles Regulations — cited as the instrument that creates the class; fees only, no appearance"
730
+ - "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Nova_Scotia # TAGGED SECONDARY: the 12-345-A format from 1978, the black-on-yellow colours, the 2012 border change, the issuance ranges and the above-5000-kg scope"
731
+ notes: >-
732
+ YELLOW IS THE SIGNAL AND THE SIGNAL IS UNSOURCED — stated plainly because it
733
+ is the most visually distinctive claim in this file and the only one resting
734
+ entirely on a secondary. `class: standard` because the vocabulary has no
735
+ commercial member. The 5 000 kg threshold is the one part of the scope note a
736
+ regulation corroborates.
737
+
738
+ # =========================================================================
739
+ # ANTIQUE — a letter and three numerals.
740
+ # =========================================================================
741
+ - id: ca-ns-antique-2009
742
+ class: historic
743
+ categories: [car, van, truck]
744
+ period: { start: 2009 }
745
+ period_evidence: secondary-wikipedia
746
+ matching: strict
747
+ format:
748
+ pattern: "L999"
749
+ regex: '\A[A-Z] ?\d{3}\z'
750
+ charset: { notes: "one letter, three numerals; the article's issuance record runs A001 upward. The four-character shape makes this the shortest ordinary Nova Scotia serial and separates it cleanly from every other series here." }
751
+ design:
752
+ plate: { w: 30.48, h: 15.24, unit: cm, plate_basis: convention }
753
+ background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
754
+ foreground: "#003C71"
755
+ legend_top: "NOVA SCOTIA"
756
+ legend_bottom_options: ["CANADA'S OCEAN PLAYGROUND"]
757
+ legend_side: "ANTIQUE AUTO, to the left of the serial"
758
+ emblem: { present: false, rendered: placeholder }
759
+ band: { side: none }
760
+ rear_differs: false
761
+ display: "TWO plates, front and rear — antique plates are in the two-plate list at Number Plates Regulations s. 1(a) and s. 2(4)"
762
+ sources:
763
+ - "https://novascotia.ca/just/regulations/regs/mvnumber.htm # Number Plates Regulations ss. 1(a), 2(4): 'a vehicle to bear ... antique plates' is a two-plate class, front and rear — the one PRIMARY fact about this series"
764
+ - "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Nova_Scotia # TAGGED SECONDARY: the four-digit antique format 1966-2009 and the A123 format from 2009, with issuance ranges"
765
+ notes: >-
766
+ AUTHORED BECAUSE THE REGULATION NAMES THE CLASS. Number Plates Regulations
767
+ s. 1(a) puts "a vehicle to bear ... antique plates" in the two-plate list, so
768
+ Nova Scotia law knows the class exists and how it is displayed; everything
769
+ else — the 2009 start, the L999 arrangement, the ANTIQUE AUTO side legend —
770
+ is the article's. No Nova Scotia regulation defines an antique vehicle for
771
+ plate purposes in any instrument located in this pass, which is a recorded
772
+ gap: contrast Ontario, where HTA s. 7(1.1) states a 30-year test in the Act.
773
+
774
+ # =========================================================================
775
+ # OFF-HIGHWAY / ATV.
776
+ # =========================================================================
777
+ - id: ca-ns-offhighway-1989
778
+ class: standard
779
+ categories: [atv]
780
+ period: { start: 1989 }
781
+ period_evidence: secondary-wikipedia
782
+ matching: strict
783
+ format:
784
+ pattern: "LL 999"
785
+ regex: '\A[A-Z]{2} ?\d{3}\z'
786
+ charset: { notes: "two letters, three numerals; the article's issuance record runs AA 001 upward" }
787
+ design:
788
+ plate_note: "no size located in any instrument or secondary; deliberately absent rather than guessed"
789
+ background: { color: "#FFFFFF", finish: retroreflective, hex_basis: observed }
790
+ foreground: "#C8102E"
791
+ colour_note: "red serial on white with red border lines, per the article. No instrument states it; both hexes observed."
792
+ legend_top: "NOVA SCOTIA"
793
+ legend_bottom_options: ["OFF-HIGHWAY"]
794
+ emblem: { present: false, rendered: placeholder }
795
+ band: { side: none }
796
+ rear_differs: false
797
+ sources:
798
+ - "https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Nova_Scotia # TAGGED SECONDARY: the AB 123 off-highway format from 1989, red on white with red border lines, 'NOVA SCOTIA' / 'OFF-HIGHWAY' legends, issuance range to MS 999"
799
+ notes: >-
800
+ THE THINNEST-SOURCED SERIES IN THIS FILE and it is authored anyway, for two
801
+ reasons: the two-letter-three-numeral shape is distinctive enough to be worth
802
+ recognising, and RED lettering appears on no other Nova Scotia plate here, so
803
+ a photograph is diagnostic even where a string is not. Off-highway vehicles in
804
+ Nova Scotia are registered under the Off-highway Vehicles Act rather than the
805
+ Motor Vehicle Act, which is why none of the Motor Vehicle Act regulations
806
+ quoted elsewhere in this file reaches them — that statute was NOT consulted in
807
+ this pass and is a recorded gap. `class: standard` because the vocabulary has
808
+ no off-road member.