@mailwoman/corpus 10.1.0 → 10.2.1

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 (736) hide show
  1. package/data/licenses/cdla-permissive-2.0.md +1 -1
  2. package/lib/adapters/cordis/adapter.ts +13 -7
  3. package/lib/adapters/dedup-key.ts +1 -1
  4. package/lib/adapters/geonames/adapter.ts +1 -1
  5. package/lib/adapters/gleif/adapter.ts +17 -16
  6. package/lib/adapters/libpostal-dictionary.ts +0 -2
  7. package/lib/adapters/openaddresses/adapter.ts +4 -3
  8. package/lib/adapters/osm/adapter.ts +22 -21
  9. package/lib/adapters/po-box/adapter.ts +10 -5
  10. package/lib/adapters/registry.ts +4 -4
  11. package/lib/adapters/source-id.ts +2 -2
  12. package/lib/adapters/street-line.ts +7 -6
  13. package/lib/adapters/wof/admin/json/adapter.ts +2 -2
  14. package/lib/adapters/wof/json-rows.ts +2 -1
  15. package/lib/adapters/wof/postalcode-json/adapter.ts +6 -2
  16. package/lib/adapters.ts +5 -5
  17. package/lib/au/adapters/gnaf/adapter.ts +1 -1
  18. package/lib/be/adapters/brussels/adapter.ts +22 -22
  19. package/lib/be/adapters/vlaanderen/adapter.ts +54 -57
  20. package/lib/be/adapters/wallonie/adapter.ts +17 -17
  21. package/lib/be/tools/fetch/brussels.ts +13 -10
  22. package/lib/be/tools/fetch/wallonie.ts +8 -7
  23. package/lib/build/adapters.ts +2 -1
  24. package/lib/build/align.ts +5 -4
  25. package/lib/build/checkpoint.ts +5 -3
  26. package/lib/build/eligibility.ts +3 -3
  27. package/lib/build/types.ts +8 -6
  28. package/lib/cz/adapters/cuzk/adapter.ts +41 -38
  29. package/lib/cz/tools/fetch/cuzk.ts +42 -31
  30. package/lib/de/recipes/locale.ts +1 -1
  31. package/lib/dk/adapters/inspire/adapter.ts +38 -38
  32. package/lib/dk/tools/fetch/inspire.ts +16 -14
  33. package/lib/ee/adapters/ads/adapter.ts +26 -32
  34. package/lib/ee/tools/fetch/ads.ts +10 -8
  35. package/lib/es/adapters/bizkaia/adapter.ts +47 -47
  36. package/lib/es/adapters/catastro/adapter.ts +36 -34
  37. package/lib/es/adapters/gipuzkoa/adapter.ts +38 -45
  38. package/lib/es/adapters/navarra/adapter.ts +28 -27
  39. package/lib/es/cadastre.ts +31 -31
  40. package/lib/es/tools/fetch/bizkaia.ts +40 -36
  41. package/lib/es/tools/fetch/catastro.ts +51 -40
  42. package/lib/es/tools/fetch/gipuzkoa.ts +13 -11
  43. package/lib/es/tools/fetch/navarra.ts +33 -25
  44. package/lib/fi/adapters/ryhti/adapter.ts +22 -26
  45. package/lib/fi/tools/fetch/ryhti.ts +31 -31
  46. package/lib/fr/adapters/annuaire-education/adapter.ts +13 -11
  47. package/lib/fr/adapters/ban/adapter.ts +6 -6
  48. package/lib/fr/adapters/finess/adapter.ts +16 -15
  49. package/lib/fr/adapters/finess/voie-type.ts +4 -3
  50. package/lib/fr/insee-country.ts +2 -2
  51. package/lib/fr/recipes/lieudit.ts +8 -6
  52. package/lib/fr/tools/fetch/annuaire-education.ts +11 -8
  53. package/lib/fr/tools/fetch/ban.ts +3 -2
  54. package/lib/fr/tools/fetch/finess.ts +14 -13
  55. package/lib/inspire/address.ts +86 -78
  56. package/lib/inspire/errors.ts +9 -8
  57. package/lib/inspire/stream.ts +29 -26
  58. package/lib/international/recipes/locale.ts +13 -9
  59. package/lib/it/adapters/anac/adapter.ts +51 -46
  60. package/lib/it/tools/fetch/anac.ts +22 -25
  61. package/lib/jp/adapters/wof-admin/adapter.ts +2 -6
  62. package/lib/jp/tools/fetch/houjin.ts +3 -3
  63. package/lib/kr/adapters/localdata/permit-rows.ts +1 -1
  64. package/lib/kr/tools/fetch/juso.ts +1 -1
  65. package/lib/kr/tools/fetch/localdata.ts +2 -2
  66. package/lib/lu/adapters/bd-adresses/adapter.ts +10 -10
  67. package/lib/lu/tools/fetch/bd-adresses.ts +15 -13
  68. package/lib/lv/adapters/varis/adapter.ts +24 -23
  69. package/lib/lv/tools/fetch/varis.ts +3 -2
  70. package/lib/nl/adapters/kadaster/adapter.ts +29 -29
  71. package/lib/nl/tools/fetch/kadaster.ts +16 -12
  72. package/lib/no/adapters/matrikkelen/adapter.ts +6 -5
  73. package/lib/no/tools/fetch/matrikkelen.ts +59 -47
  74. package/lib/parquet/duckdb.ts +7 -4
  75. package/lib/parquet/readers.ts +3 -3
  76. package/lib/parquet/schema.ts +1 -1
  77. package/lib/parquet/writers.ts +3 -2
  78. package/lib/pl/adapters/emuia/adapter.ts +12 -12
  79. package/lib/pl/tools/fetch/emuia.ts +10 -9
  80. package/lib/recipes/bare/postcode.ts +1 -1
  81. package/lib/recipes/boundary-stress.ts +1 -1
  82. package/lib/recipes/house-venue.ts +7 -3
  83. package/lib/recipes/intersection.ts +2 -2
  84. package/lib/recipes/po/box/cedex/recipe.ts +3 -3
  85. package/lib/recipes/po/box/cedex/sources.ts +13 -1
  86. package/lib/recipes/scaffold.ts +31 -21
  87. package/lib/recipes/sources.ts +16 -3
  88. package/lib/recipes/street/bare.ts +2 -2
  89. package/lib/recipes/street.ts +3 -1
  90. package/lib/recipes/sub/venue/context.ts +2 -0
  91. package/lib/recipes/sub/venue/render.ts +1 -1
  92. package/lib/recipes/sub/venue/sources.ts +24 -29
  93. package/lib/recipes/sub/venue.ts +12 -18
  94. package/lib/recipes/trailing-region.ts +6 -2
  95. package/lib/recipes/unit.ts +3 -3
  96. package/lib/recipes/venue.ts +347 -0
  97. package/lib/recipes.ts +4 -2
  98. package/lib/registers.ts +8 -6
  99. package/lib/ro/adapters/retea-scolara/adapter.ts +5 -5
  100. package/lib/ro/tools/fetch/retea-scolara.ts +1 -1
  101. package/lib/runner.ts +4 -3
  102. package/lib/sg/recipes/register.ts +1 -1
  103. package/lib/sg/tools/fetch/acra.ts +3 -3
  104. package/lib/sk/adapters/inspire/adapter.ts +25 -27
  105. package/lib/sk/tools/fetch/inspire.ts +15 -14
  106. package/lib/source-register/effective-manifest.ts +3 -3
  107. package/lib/source-register/register.ts +3 -3
  108. package/lib/source-register/training-manifest.ts +1 -1
  109. package/lib/source-register/types.ts +12 -13
  110. package/lib/subvenue/promotions.ts +1 -1
  111. package/lib/subvenue/table.ts +4 -4
  112. package/lib/surfaces/locale.ts +2 -0
  113. package/lib/synthesizers/anchor-absorption.ts +2 -1
  114. package/lib/synthesizers/boundary-stress.ts +20 -26
  115. package/lib/synthesizers/house-venue.ts +26 -30
  116. package/lib/synthesizers/no-street.ts +2 -1
  117. package/lib/synthesizers/po-box.ts +6 -3
  118. package/lib/synthesizers/tail.ts +55 -0
  119. package/lib/synthesizers/utils.ts +19 -2
  120. package/lib/test-kit.ts +2 -2
  121. package/lib/tools/audit.ts +7 -5
  122. package/lib/tools/corpus-stats.ts +1 -1
  123. package/lib/tools/fetch/atom.ts +10 -10
  124. package/lib/tools/fetch/cordis.ts +11 -9
  125. package/lib/tools/fetch/download/manifest.ts +2 -1
  126. package/lib/tools/fetch/download/network.ts +4 -4
  127. package/lib/tools/fetch/download/retry.ts +4 -4
  128. package/lib/tools/fetch/geonames/dump.ts +5 -3
  129. package/lib/tools/fetch/geonames/postal.ts +2 -2
  130. package/lib/tools/fetch/gleif.ts +6 -4
  131. package/lib/tools/fetch/header.ts +8 -6
  132. package/lib/tools/fetch/inspire-addresses.ts +41 -36
  133. package/lib/tools/fetch/openaddresses.ts +1 -1
  134. package/lib/tools/fetch/vlaanderen-ad.ts +17 -17
  135. package/lib/tools/fetch/wfs-harvest.ts +39 -28
  136. package/lib/tools/fetch.ts +0 -42
  137. package/lib/tools/golden/expand.ts +8 -8
  138. package/lib/tools/golden/promote.ts +12 -8
  139. package/lib/tools/golden/relabel-street/directory.ts +7 -6
  140. package/lib/tools/golden/relabel-street/row.ts +7 -6
  141. package/lib/tools/ingest-csv.ts +3 -3
  142. package/lib/tools/jsonl-to-parquet.ts +1 -1
  143. package/lib/tools/lint/recipe-output/vocab.ts +10 -5
  144. package/lib/tools/lint/recipe-output.ts +26 -8
  145. package/lib/tools/overlay/kryptonite.ts +4 -3
  146. package/lib/tools/overlay/manifest.ts +4 -2
  147. package/lib/tools/overlay/merge-source.ts +2 -1
  148. package/lib/tools/overlay/split-slice.ts +2 -2
  149. package/lib/tools/overlay/translit.ts +6 -4
  150. package/lib/tools/overture-subvenue.ts +1 -1
  151. package/lib/tools/postcode-triples.ts +5 -4
  152. package/lib/tools/source-register/build.ts +17 -14
  153. package/lib/tools/sub/venue/lexicon.ts +4 -8
  154. package/lib/tw/tools/fetch/gcis.ts +4 -4
  155. package/lib/types.ts +4 -3
  156. package/lib/us/adapters/state/hi-schools/workbook.ts +1 -1
  157. package/lib/us/adapters/usgov/nad/adapter.ts +11 -11
  158. package/lib/us/adapters/usgov/samhsa-treatment-locator/adapter.ts +4 -4
  159. package/lib/us/fips-state.ts +2 -2
  160. package/lib/{synthesizers → us/synthesizers}/intersection.ts +12 -13
  161. package/lib/{synthesizers → us/synthesizers}/street.ts +16 -15
  162. package/lib/us/tools/fetch/imls-pls.ts +1 -1
  163. package/lib/us/tools/fetch/nad.ts +7 -7
  164. package/lib/us/tools/fetch/nppes.ts +5 -5
  165. package/lib/us/tools/fetch/state/hi-schools.ts +3 -2
  166. package/lib/us/tools/fetch/tiger-full.ts +1 -1
  167. package/lib/utils/align.ts +13 -10
  168. package/lib/utils/golden.ts +2 -2
  169. package/lib/utils/license.ts +3 -3
  170. package/lib/utils/split.ts +19 -15
  171. package/lib/utils/tokenize.ts +7 -26
  172. package/lib/utils/wof-json.ts +4 -4
  173. package/out/adapters/cordis/adapter.d.ts +5 -3
  174. package/out/adapters/cordis/adapter.d.ts.map +1 -1
  175. package/out/adapters/cordis/adapter.js +13 -7
  176. package/out/adapters/cordis/adapter.js.map +1 -1
  177. package/out/adapters/dedup-key.d.ts +1 -1
  178. package/out/adapters/dedup-key.js +1 -1
  179. package/out/adapters/geonames/adapter.js +1 -1
  180. package/out/adapters/geonames/adapter.js.map +1 -1
  181. package/out/adapters/gleif/adapter.d.ts +9 -9
  182. package/out/adapters/gleif/adapter.d.ts.map +1 -1
  183. package/out/adapters/gleif/adapter.js +15 -14
  184. package/out/adapters/gleif/adapter.js.map +1 -1
  185. package/out/adapters/libpostal-dictionary.d.ts +0 -2
  186. package/out/adapters/libpostal-dictionary.d.ts.map +1 -1
  187. package/out/adapters/libpostal-dictionary.js +0 -2
  188. package/out/adapters/libpostal-dictionary.js.map +1 -1
  189. package/out/adapters/openaddresses/adapter.d.ts +3 -2
  190. package/out/adapters/openaddresses/adapter.d.ts.map +1 -1
  191. package/out/adapters/openaddresses/adapter.js +1 -1
  192. package/out/adapters/openaddresses/adapter.js.map +1 -1
  193. package/out/adapters/osm/adapter.d.ts +17 -16
  194. package/out/adapters/osm/adapter.d.ts.map +1 -1
  195. package/out/adapters/osm/adapter.js +10 -9
  196. package/out/adapters/osm/adapter.js.map +1 -1
  197. package/out/adapters/po-box/adapter.d.ts +6 -3
  198. package/out/adapters/po-box/adapter.d.ts.map +1 -1
  199. package/out/adapters/po-box/adapter.js +4 -2
  200. package/out/adapters/po-box/adapter.js.map +1 -1
  201. package/out/adapters/registry.d.ts +3 -3
  202. package/out/adapters/registry.d.ts.map +1 -1
  203. package/out/adapters/registry.js +1 -1
  204. package/out/adapters/registry.js.map +1 -1
  205. package/out/adapters/source-id.d.ts +2 -2
  206. package/out/adapters/source-id.js +2 -2
  207. package/out/adapters/street-line.d.ts +7 -6
  208. package/out/adapters/street-line.d.ts.map +1 -1
  209. package/out/adapters/street-line.js +7 -6
  210. package/out/adapters/street-line.js.map +1 -1
  211. package/out/adapters/wof/admin/json/adapter.js +1 -1
  212. package/out/adapters/wof/admin/json/adapter.js.map +1 -1
  213. package/out/adapters/wof/json-rows.d.ts +2 -1
  214. package/out/adapters/wof/json-rows.d.ts.map +1 -1
  215. package/out/adapters/wof/json-rows.js.map +1 -1
  216. package/out/adapters/wof/postalcode-json/adapter.d.ts.map +1 -1
  217. package/out/adapters/wof/postalcode-json/adapter.js +5 -1
  218. package/out/adapters/wof/postalcode-json/adapter.js.map +1 -1
  219. package/out/adapters.d.ts +5 -5
  220. package/out/adapters.js +5 -5
  221. package/out/au/adapters/gnaf/adapter.js +1 -1
  222. package/out/au/adapters/gnaf/adapter.js.map +1 -1
  223. package/out/be/adapters/brussels/adapter.d.ts +9 -9
  224. package/out/be/adapters/brussels/adapter.d.ts.map +1 -1
  225. package/out/be/adapters/brussels/adapter.js +21 -21
  226. package/out/be/adapters/brussels/adapter.js.map +1 -1
  227. package/out/be/adapters/vlaanderen/adapter.d.ts +34 -37
  228. package/out/be/adapters/vlaanderen/adapter.d.ts.map +1 -1
  229. package/out/be/adapters/vlaanderen/adapter.js +40 -38
  230. package/out/be/adapters/vlaanderen/adapter.js.map +1 -1
  231. package/out/be/adapters/wallonie/adapter.d.ts +2 -2
  232. package/out/be/adapters/wallonie/adapter.js +17 -17
  233. package/out/be/adapters/wallonie/adapter.js.map +1 -1
  234. package/out/be/tools/fetch/brussels.d.ts +11 -8
  235. package/out/be/tools/fetch/brussels.d.ts.map +1 -1
  236. package/out/be/tools/fetch/brussels.js +10 -8
  237. package/out/be/tools/fetch/brussels.js.map +1 -1
  238. package/out/be/tools/fetch/wallonie.d.ts +6 -5
  239. package/out/be/tools/fetch/wallonie.d.ts.map +1 -1
  240. package/out/be/tools/fetch/wallonie.js +4 -4
  241. package/out/be/tools/fetch/wallonie.js.map +1 -1
  242. package/out/build/adapters.d.ts.map +1 -1
  243. package/out/build/adapters.js +2 -1
  244. package/out/build/adapters.js.map +1 -1
  245. package/out/build/align.d.ts +3 -2
  246. package/out/build/align.d.ts.map +1 -1
  247. package/out/build/align.js +2 -2
  248. package/out/build/align.js.map +1 -1
  249. package/out/build/checkpoint.d.ts +1 -1
  250. package/out/build/checkpoint.d.ts.map +1 -1
  251. package/out/build/checkpoint.js +4 -2
  252. package/out/build/checkpoint.js.map +1 -1
  253. package/out/build/eligibility.d.ts +2 -2
  254. package/out/build/eligibility.js +3 -3
  255. package/out/build/eligibility.js.map +1 -1
  256. package/out/build/types.d.ts +8 -6
  257. package/out/build/types.d.ts.map +1 -1
  258. package/out/cz/adapters/cuzk/adapter.d.ts +14 -14
  259. package/out/cz/adapters/cuzk/adapter.d.ts.map +1 -1
  260. package/out/cz/adapters/cuzk/adapter.js +38 -35
  261. package/out/cz/adapters/cuzk/adapter.js.map +1 -1
  262. package/out/cz/tools/fetch/cuzk.d.ts +31 -22
  263. package/out/cz/tools/fetch/cuzk.d.ts.map +1 -1
  264. package/out/cz/tools/fetch/cuzk.js +21 -19
  265. package/out/cz/tools/fetch/cuzk.js.map +1 -1
  266. package/out/de/recipes/locale.js +1 -1
  267. package/out/de/recipes/locale.js.map +1 -1
  268. package/out/dk/adapters/inspire/adapter.d.ts +32 -33
  269. package/out/dk/adapters/inspire/adapter.d.ts.map +1 -1
  270. package/out/dk/adapters/inspire/adapter.js +38 -38
  271. package/out/dk/adapters/inspire/adapter.js.map +1 -1
  272. package/out/dk/tools/fetch/inspire.d.ts +6 -5
  273. package/out/dk/tools/fetch/inspire.d.ts.map +1 -1
  274. package/out/dk/tools/fetch/inspire.js +15 -13
  275. package/out/dk/tools/fetch/inspire.js.map +1 -1
  276. package/out/ee/adapters/ads/adapter.d.ts +19 -26
  277. package/out/ee/adapters/ads/adapter.d.ts.map +1 -1
  278. package/out/ee/adapters/ads/adapter.js +22 -28
  279. package/out/ee/adapters/ads/adapter.js.map +1 -1
  280. package/out/ee/tools/fetch/ads.d.ts +3 -3
  281. package/out/ee/tools/fetch/ads.d.ts.map +1 -1
  282. package/out/ee/tools/fetch/ads.js +10 -8
  283. package/out/ee/tools/fetch/ads.js.map +1 -1
  284. package/out/es/adapters/bizkaia/adapter.d.ts +28 -28
  285. package/out/es/adapters/bizkaia/adapter.d.ts.map +1 -1
  286. package/out/es/adapters/bizkaia/adapter.js +43 -43
  287. package/out/es/adapters/bizkaia/adapter.js.map +1 -1
  288. package/out/es/adapters/catastro/adapter.d.ts +22 -23
  289. package/out/es/adapters/catastro/adapter.d.ts.map +1 -1
  290. package/out/es/adapters/catastro/adapter.js +35 -33
  291. package/out/es/adapters/catastro/adapter.js.map +1 -1
  292. package/out/es/adapters/gipuzkoa/adapter.d.ts +31 -38
  293. package/out/es/adapters/gipuzkoa/adapter.d.ts.map +1 -1
  294. package/out/es/adapters/gipuzkoa/adapter.js +40 -47
  295. package/out/es/adapters/gipuzkoa/adapter.js.map +1 -1
  296. package/out/es/adapters/navarra/adapter.d.ts +20 -19
  297. package/out/es/adapters/navarra/adapter.d.ts.map +1 -1
  298. package/out/es/adapters/navarra/adapter.js +23 -22
  299. package/out/es/adapters/navarra/adapter.js.map +1 -1
  300. package/out/es/cadastre.d.ts +21 -20
  301. package/out/es/cadastre.d.ts.map +1 -1
  302. package/out/es/cadastre.js +19 -21
  303. package/out/es/cadastre.js.map +1 -1
  304. package/out/es/tools/fetch/bizkaia.d.ts +28 -25
  305. package/out/es/tools/fetch/bizkaia.d.ts.map +1 -1
  306. package/out/es/tools/fetch/bizkaia.js +25 -24
  307. package/out/es/tools/fetch/bizkaia.js.map +1 -1
  308. package/out/es/tools/fetch/catastro.d.ts +28 -20
  309. package/out/es/tools/fetch/catastro.d.ts.map +1 -1
  310. package/out/es/tools/fetch/catastro.js +36 -31
  311. package/out/es/tools/fetch/catastro.js.map +1 -1
  312. package/out/es/tools/fetch/gipuzkoa.d.ts +11 -9
  313. package/out/es/tools/fetch/gipuzkoa.d.ts.map +1 -1
  314. package/out/es/tools/fetch/gipuzkoa.js +9 -8
  315. package/out/es/tools/fetch/gipuzkoa.js.map +1 -1
  316. package/out/es/tools/fetch/navarra.d.ts +20 -15
  317. package/out/es/tools/fetch/navarra.d.ts.map +1 -1
  318. package/out/es/tools/fetch/navarra.js +21 -16
  319. package/out/es/tools/fetch/navarra.js.map +1 -1
  320. package/out/fi/adapters/ryhti/adapter.d.ts +16 -20
  321. package/out/fi/adapters/ryhti/adapter.d.ts.map +1 -1
  322. package/out/fi/adapters/ryhti/adapter.js +21 -25
  323. package/out/fi/adapters/ryhti/adapter.js.map +1 -1
  324. package/out/fi/tools/fetch/ryhti.d.ts +24 -24
  325. package/out/fi/tools/fetch/ryhti.d.ts.map +1 -1
  326. package/out/fi/tools/fetch/ryhti.js +21 -24
  327. package/out/fi/tools/fetch/ryhti.js.map +1 -1
  328. package/out/fr/adapters/annuaire-education/adapter.d.ts +8 -8
  329. package/out/fr/adapters/annuaire-education/adapter.d.ts.map +1 -1
  330. package/out/fr/adapters/annuaire-education/adapter.js +13 -11
  331. package/out/fr/adapters/annuaire-education/adapter.js.map +1 -1
  332. package/out/fr/adapters/ban/adapter.d.ts +4 -4
  333. package/out/fr/adapters/ban/adapter.js +6 -6
  334. package/out/fr/adapters/ban/adapter.js.map +1 -1
  335. package/out/fr/adapters/finess/adapter.d.ts +12 -11
  336. package/out/fr/adapters/finess/adapter.d.ts.map +1 -1
  337. package/out/fr/adapters/finess/adapter.js +16 -15
  338. package/out/fr/adapters/finess/adapter.js.map +1 -1
  339. package/out/fr/adapters/finess/voie-type.d.ts +2 -2
  340. package/out/fr/adapters/finess/voie-type.d.ts.map +1 -1
  341. package/out/fr/adapters/finess/voie-type.js +4 -3
  342. package/out/fr/adapters/finess/voie-type.js.map +1 -1
  343. package/out/fr/insee-country.d.ts +2 -2
  344. package/out/fr/insee-country.js +2 -2
  345. package/out/fr/recipes/lieudit.d.ts.map +1 -1
  346. package/out/fr/recipes/lieudit.js +5 -4
  347. package/out/fr/recipes/lieudit.js.map +1 -1
  348. package/out/fr/tools/fetch/annuaire-education.d.ts +7 -4
  349. package/out/fr/tools/fetch/annuaire-education.d.ts.map +1 -1
  350. package/out/fr/tools/fetch/annuaire-education.js +9 -7
  351. package/out/fr/tools/fetch/annuaire-education.js.map +1 -1
  352. package/out/fr/tools/fetch/ban.d.ts +1 -1
  353. package/out/fr/tools/fetch/ban.d.ts.map +1 -1
  354. package/out/fr/tools/fetch/ban.js +3 -2
  355. package/out/fr/tools/fetch/ban.js.map +1 -1
  356. package/out/fr/tools/fetch/finess.d.ts +5 -5
  357. package/out/fr/tools/fetch/finess.d.ts.map +1 -1
  358. package/out/fr/tools/fetch/finess.js +13 -12
  359. package/out/fr/tools/fetch/finess.js.map +1 -1
  360. package/out/inspire/address.d.ts +62 -52
  361. package/out/inspire/address.d.ts.map +1 -1
  362. package/out/inspire/address.js +71 -60
  363. package/out/inspire/address.js.map +1 -1
  364. package/out/inspire/errors.d.ts +9 -8
  365. package/out/inspire/errors.d.ts.map +1 -1
  366. package/out/inspire/errors.js +7 -6
  367. package/out/inspire/errors.js.map +1 -1
  368. package/out/inspire/stream.d.ts +25 -22
  369. package/out/inspire/stream.d.ts.map +1 -1
  370. package/out/inspire/stream.js +10 -12
  371. package/out/inspire/stream.js.map +1 -1
  372. package/out/international/recipes/locale.d.ts +2 -2
  373. package/out/international/recipes/locale.d.ts.map +1 -1
  374. package/out/international/recipes/locale.js +11 -7
  375. package/out/international/recipes/locale.js.map +1 -1
  376. package/out/it/adapters/anac/adapter.d.ts +45 -43
  377. package/out/it/adapters/anac/adapter.d.ts.map +1 -1
  378. package/out/it/adapters/anac/adapter.js +48 -43
  379. package/out/it/adapters/anac/adapter.js.map +1 -1
  380. package/out/it/tools/fetch/anac.d.ts +16 -19
  381. package/out/it/tools/fetch/anac.d.ts.map +1 -1
  382. package/out/it/tools/fetch/anac.js +20 -23
  383. package/out/it/tools/fetch/anac.js.map +1 -1
  384. package/out/jp/adapters/wof-admin/adapter.d.ts.map +1 -1
  385. package/out/jp/adapters/wof-admin/adapter.js.map +1 -1
  386. package/out/jp/tools/fetch/houjin.js +2 -2
  387. package/out/jp/tools/fetch/houjin.js.map +1 -1
  388. package/out/kr/adapters/localdata/permit-rows.js +1 -1
  389. package/out/kr/adapters/localdata/permit-rows.js.map +1 -1
  390. package/out/kr/tools/fetch/juso.d.ts +1 -1
  391. package/out/kr/tools/fetch/localdata.d.ts +1 -1
  392. package/out/kr/tools/fetch/localdata.js +1 -1
  393. package/out/kr/tools/fetch/localdata.js.map +1 -1
  394. package/out/lu/adapters/bd-adresses/adapter.d.ts +9 -9
  395. package/out/lu/adapters/bd-adresses/adapter.js +10 -10
  396. package/out/lu/tools/fetch/bd-adresses.d.ts +11 -9
  397. package/out/lu/tools/fetch/bd-adresses.d.ts.map +1 -1
  398. package/out/lu/tools/fetch/bd-adresses.js +11 -11
  399. package/out/lu/tools/fetch/bd-adresses.js.map +1 -1
  400. package/out/lv/adapters/varis/adapter.d.ts +24 -23
  401. package/out/lv/adapters/varis/adapter.d.ts.map +1 -1
  402. package/out/lv/adapters/varis/adapter.js +24 -23
  403. package/out/lv/adapters/varis/adapter.js.map +1 -1
  404. package/out/lv/tools/fetch/varis.d.ts +2 -1
  405. package/out/lv/tools/fetch/varis.d.ts.map +1 -1
  406. package/out/lv/tools/fetch/varis.js +1 -1
  407. package/out/lv/tools/fetch/varis.js.map +1 -1
  408. package/out/nl/adapters/kadaster/adapter.d.ts +12 -12
  409. package/out/nl/adapters/kadaster/adapter.d.ts.map +1 -1
  410. package/out/nl/adapters/kadaster/adapter.js +22 -23
  411. package/out/nl/adapters/kadaster/adapter.js.map +1 -1
  412. package/out/nl/tools/fetch/kadaster.d.ts +14 -10
  413. package/out/nl/tools/fetch/kadaster.d.ts.map +1 -1
  414. package/out/nl/tools/fetch/kadaster.js +12 -9
  415. package/out/nl/tools/fetch/kadaster.js.map +1 -1
  416. package/out/no/adapters/matrikkelen/adapter.d.ts +1 -1
  417. package/out/no/adapters/matrikkelen/adapter.d.ts.map +1 -1
  418. package/out/no/adapters/matrikkelen/adapter.js +3 -3
  419. package/out/no/adapters/matrikkelen/adapter.js.map +1 -1
  420. package/out/no/tools/fetch/matrikkelen.d.ts +50 -38
  421. package/out/no/tools/fetch/matrikkelen.d.ts.map +1 -1
  422. package/out/no/tools/fetch/matrikkelen.js +44 -36
  423. package/out/no/tools/fetch/matrikkelen.js.map +1 -1
  424. package/out/parquet/duckdb.d.ts +7 -4
  425. package/out/parquet/duckdb.d.ts.map +1 -1
  426. package/out/parquet/duckdb.js +2 -1
  427. package/out/parquet/duckdb.js.map +1 -1
  428. package/out/parquet/readers.js +3 -3
  429. package/out/parquet/readers.js.map +1 -1
  430. package/out/parquet/schema.js +1 -1
  431. package/out/parquet/schema.js.map +1 -1
  432. package/out/parquet/writers.d.ts +1 -1
  433. package/out/parquet/writers.d.ts.map +1 -1
  434. package/out/parquet/writers.js +2 -1
  435. package/out/parquet/writers.js.map +1 -1
  436. package/out/pl/adapters/emuia/adapter.d.ts +8 -8
  437. package/out/pl/adapters/emuia/adapter.js +12 -12
  438. package/out/pl/adapters/emuia/adapter.js.map +1 -1
  439. package/out/pl/tools/fetch/emuia.d.ts +5 -4
  440. package/out/pl/tools/fetch/emuia.d.ts.map +1 -1
  441. package/out/pl/tools/fetch/emuia.js +10 -9
  442. package/out/pl/tools/fetch/emuia.js.map +1 -1
  443. package/out/recipes/bare/postcode.js +1 -1
  444. package/out/recipes/bare/postcode.js.map +1 -1
  445. package/out/recipes/boundary-stress.js +1 -1
  446. package/out/recipes/boundary-stress.js.map +1 -1
  447. package/out/recipes/house-venue.d.ts.map +1 -1
  448. package/out/recipes/house-venue.js +6 -3
  449. package/out/recipes/house-venue.js.map +1 -1
  450. package/out/recipes/intersection.js +2 -2
  451. package/out/recipes/intersection.js.map +1 -1
  452. package/out/recipes/po/box/cedex/recipe.js +2 -1
  453. package/out/recipes/po/box/cedex/recipe.js.map +1 -1
  454. package/out/recipes/po/box/cedex/sources.d.ts +8 -2
  455. package/out/recipes/po/box/cedex/sources.d.ts.map +1 -1
  456. package/out/recipes/po/box/cedex/sources.js +1 -1
  457. package/out/recipes/po/box/cedex/sources.js.map +1 -1
  458. package/out/recipes/scaffold.d.ts +28 -19
  459. package/out/recipes/scaffold.d.ts.map +1 -1
  460. package/out/recipes/scaffold.js +3 -2
  461. package/out/recipes/scaffold.js.map +1 -1
  462. package/out/recipes/sources.d.ts +1 -1
  463. package/out/recipes/sources.d.ts.map +1 -1
  464. package/out/recipes/sources.js +15 -2
  465. package/out/recipes/sources.js.map +1 -1
  466. package/out/recipes/street/bare.js +2 -2
  467. package/out/recipes/street/bare.js.map +1 -1
  468. package/out/recipes/street.d.ts.map +1 -1
  469. package/out/recipes/street.js +3 -1
  470. package/out/recipes/street.js.map +1 -1
  471. package/out/recipes/sub/venue/context.d.ts.map +1 -1
  472. package/out/recipes/sub/venue/context.js +2 -0
  473. package/out/recipes/sub/venue/context.js.map +1 -1
  474. package/out/recipes/sub/venue/render.js +1 -1
  475. package/out/recipes/sub/venue/render.js.map +1 -1
  476. package/out/recipes/sub/venue/sources.d.ts +6 -3
  477. package/out/recipes/sub/venue/sources.d.ts.map +1 -1
  478. package/out/recipes/sub/venue/sources.js +16 -20
  479. package/out/recipes/sub/venue/sources.js.map +1 -1
  480. package/out/recipes/sub/venue.d.ts +2 -5
  481. package/out/recipes/sub/venue.d.ts.map +1 -1
  482. package/out/recipes/sub/venue.js +10 -14
  483. package/out/recipes/sub/venue.js.map +1 -1
  484. package/out/recipes/trailing-region.d.ts.map +1 -1
  485. package/out/recipes/trailing-region.js +6 -1
  486. package/out/recipes/trailing-region.js.map +1 -1
  487. package/out/recipes/unit.js +2 -2
  488. package/out/recipes/unit.js.map +1 -1
  489. package/out/recipes/venue.d.ts +119 -0
  490. package/out/recipes/venue.d.ts.map +1 -0
  491. package/out/recipes/venue.js +245 -0
  492. package/out/recipes/venue.js.map +1 -0
  493. package/out/recipes.d.ts +1 -1
  494. package/out/recipes.d.ts.map +1 -1
  495. package/out/recipes.js +3 -1
  496. package/out/recipes.js.map +1 -1
  497. package/out/registers.d.ts +8 -6
  498. package/out/registers.d.ts.map +1 -1
  499. package/out/registers.js +8 -6
  500. package/out/registers.js.map +1 -1
  501. package/out/ro/adapters/retea-scolara/adapter.d.ts +5 -5
  502. package/out/ro/adapters/retea-scolara/adapter.js +5 -5
  503. package/out/ro/tools/fetch/retea-scolara.js +1 -1
  504. package/out/ro/tools/fetch/retea-scolara.js.map +1 -1
  505. package/out/runner.d.ts +3 -2
  506. package/out/runner.d.ts.map +1 -1
  507. package/out/runner.js +1 -1
  508. package/out/runner.js.map +1 -1
  509. package/out/sg/recipes/register.js +1 -1
  510. package/out/sg/recipes/register.js.map +1 -1
  511. package/out/sg/tools/fetch/acra.js +2 -2
  512. package/out/sg/tools/fetch/acra.js.map +1 -1
  513. package/out/sk/adapters/inspire/adapter.d.ts +5 -5
  514. package/out/sk/adapters/inspire/adapter.d.ts.map +1 -1
  515. package/out/sk/adapters/inspire/adapter.js +18 -18
  516. package/out/sk/adapters/inspire/adapter.js.map +1 -1
  517. package/out/sk/tools/fetch/inspire.d.ts +11 -10
  518. package/out/sk/tools/fetch/inspire.d.ts.map +1 -1
  519. package/out/sk/tools/fetch/inspire.js +15 -14
  520. package/out/sk/tools/fetch/inspire.js.map +1 -1
  521. package/out/source-register/effective-manifest.js +3 -3
  522. package/out/source-register/effective-manifest.js.map +1 -1
  523. package/out/source-register/register.d.ts +2 -2
  524. package/out/source-register/register.d.ts.map +1 -1
  525. package/out/source-register/register.js +2 -2
  526. package/out/source-register/register.js.map +1 -1
  527. package/out/source-register/training-manifest.d.ts +1 -1
  528. package/out/source-register/types.d.ts +12 -13
  529. package/out/source-register/types.d.ts.map +1 -1
  530. package/out/source-register/types.js +2 -2
  531. package/out/source-register/types.js.map +1 -1
  532. package/out/subvenue/promotions.d.ts +1 -1
  533. package/out/subvenue/promotions.js +1 -1
  534. package/out/subvenue/table.d.ts +4 -4
  535. package/out/subvenue/table.js +3 -3
  536. package/out/surfaces/locale.d.ts.map +1 -1
  537. package/out/surfaces/locale.js +2 -0
  538. package/out/surfaces/locale.js.map +1 -1
  539. package/out/synthesizers/anchor-absorption.d.ts +2 -1
  540. package/out/synthesizers/anchor-absorption.d.ts.map +1 -1
  541. package/out/synthesizers/anchor-absorption.js.map +1 -1
  542. package/out/synthesizers/boundary-stress.d.ts +1 -1
  543. package/out/synthesizers/boundary-stress.d.ts.map +1 -1
  544. package/out/synthesizers/boundary-stress.js +20 -23
  545. package/out/synthesizers/boundary-stress.js.map +1 -1
  546. package/out/synthesizers/house-venue.d.ts +3 -2
  547. package/out/synthesizers/house-venue.d.ts.map +1 -1
  548. package/out/synthesizers/house-venue.js +24 -26
  549. package/out/synthesizers/house-venue.js.map +1 -1
  550. package/out/synthesizers/no-street.d.ts.map +1 -1
  551. package/out/synthesizers/no-street.js.map +1 -1
  552. package/out/synthesizers/po-box.d.ts +4 -2
  553. package/out/synthesizers/po-box.d.ts.map +1 -1
  554. package/out/synthesizers/po-box.js.map +1 -1
  555. package/out/synthesizers/tail.d.ts +36 -0
  556. package/out/synthesizers/tail.d.ts.map +1 -0
  557. package/out/synthesizers/tail.js +32 -0
  558. package/out/synthesizers/tail.js.map +1 -0
  559. package/out/synthesizers/utils.d.ts +2 -1
  560. package/out/synthesizers/utils.d.ts.map +1 -1
  561. package/out/synthesizers/utils.js +17 -1
  562. package/out/synthesizers/utils.js.map +1 -1
  563. package/out/test-kit.js +2 -2
  564. package/out/test-kit.js.map +1 -1
  565. package/out/tools/audit.d.ts +2 -1
  566. package/out/tools/audit.d.ts.map +1 -1
  567. package/out/tools/audit.js +4 -3
  568. package/out/tools/audit.js.map +1 -1
  569. package/out/tools/corpus-stats.js +1 -1
  570. package/out/tools/corpus-stats.js.map +1 -1
  571. package/out/tools/fetch/atom.d.ts +8 -8
  572. package/out/tools/fetch/atom.d.ts.map +1 -1
  573. package/out/tools/fetch/atom.js +7 -8
  574. package/out/tools/fetch/atom.js.map +1 -1
  575. package/out/tools/fetch/cordis.d.ts +4 -3
  576. package/out/tools/fetch/cordis.d.ts.map +1 -1
  577. package/out/tools/fetch/cordis.js +9 -7
  578. package/out/tools/fetch/cordis.js.map +1 -1
  579. package/out/tools/fetch/download/manifest.d.ts.map +1 -1
  580. package/out/tools/fetch/download/manifest.js +2 -1
  581. package/out/tools/fetch/download/manifest.js.map +1 -1
  582. package/out/tools/fetch/download/network.d.ts +4 -4
  583. package/out/tools/fetch/download/retry.js +4 -4
  584. package/out/tools/fetch/download/retry.js.map +1 -1
  585. package/out/tools/fetch/geonames/dump.d.ts +3 -2
  586. package/out/tools/fetch/geonames/dump.d.ts.map +1 -1
  587. package/out/tools/fetch/geonames/dump.js +2 -1
  588. package/out/tools/fetch/geonames/dump.js.map +1 -1
  589. package/out/tools/fetch/geonames/postal.d.ts +2 -2
  590. package/out/tools/fetch/gleif.d.ts +3 -2
  591. package/out/tools/fetch/gleif.d.ts.map +1 -1
  592. package/out/tools/fetch/gleif.js +6 -4
  593. package/out/tools/fetch/gleif.js.map +1 -1
  594. package/out/tools/fetch/header.d.ts +7 -5
  595. package/out/tools/fetch/header.d.ts.map +1 -1
  596. package/out/tools/fetch/header.js +8 -6
  597. package/out/tools/fetch/header.js.map +1 -1
  598. package/out/tools/fetch/inspire-addresses.d.ts +32 -27
  599. package/out/tools/fetch/inspire-addresses.d.ts.map +1 -1
  600. package/out/tools/fetch/inspire-addresses.js +25 -24
  601. package/out/tools/fetch/inspire-addresses.js.map +1 -1
  602. package/out/tools/fetch/openaddresses.js +1 -1
  603. package/out/tools/fetch/openaddresses.js.map +1 -1
  604. package/out/tools/fetch/vlaanderen-ad.d.ts +5 -5
  605. package/out/tools/fetch/vlaanderen-ad.d.ts.map +1 -1
  606. package/out/tools/fetch/vlaanderen-ad.js +16 -16
  607. package/out/tools/fetch/vlaanderen-ad.js.map +1 -1
  608. package/out/tools/fetch/wfs-harvest.d.ts +26 -16
  609. package/out/tools/fetch/wfs-harvest.d.ts.map +1 -1
  610. package/out/tools/fetch/wfs-harvest.js +21 -18
  611. package/out/tools/fetch/wfs-harvest.js.map +1 -1
  612. package/out/tools/fetch.d.ts +0 -41
  613. package/out/tools/fetch.d.ts.map +1 -1
  614. package/out/tools/fetch.js +0 -41
  615. package/out/tools/fetch.js.map +1 -1
  616. package/out/tools/golden/expand.d.ts +7 -7
  617. package/out/tools/golden/expand.js +1 -1
  618. package/out/tools/golden/expand.js.map +1 -1
  619. package/out/tools/golden/promote.d.ts +2 -2
  620. package/out/tools/golden/promote.d.ts.map +1 -1
  621. package/out/tools/golden/promote.js +9 -6
  622. package/out/tools/golden/promote.js.map +1 -1
  623. package/out/tools/golden/relabel-street/directory.d.ts +4 -4
  624. package/out/tools/golden/relabel-street/directory.d.ts.map +1 -1
  625. package/out/tools/golden/relabel-street/directory.js +3 -2
  626. package/out/tools/golden/relabel-street/directory.js.map +1 -1
  627. package/out/tools/golden/relabel-street/row.d.ts +4 -3
  628. package/out/tools/golden/relabel-street/row.d.ts.map +1 -1
  629. package/out/tools/golden/relabel-street/row.js +3 -3
  630. package/out/tools/golden/relabel-street/row.js.map +1 -1
  631. package/out/tools/ingest-csv.js +3 -3
  632. package/out/tools/ingest-csv.js.map +1 -1
  633. package/out/tools/jsonl-to-parquet.d.ts +1 -1
  634. package/out/tools/lint/recipe-output/vocab.d.ts +10 -5
  635. package/out/tools/lint/recipe-output/vocab.d.ts.map +1 -1
  636. package/out/tools/lint/recipe-output/vocab.js.map +1 -1
  637. package/out/tools/lint/recipe-output.d.ts +8 -8
  638. package/out/tools/lint/recipe-output.d.ts.map +1 -1
  639. package/out/tools/lint/recipe-output.js +17 -0
  640. package/out/tools/lint/recipe-output.js.map +1 -1
  641. package/out/tools/overlay/kryptonite.d.ts +2 -2
  642. package/out/tools/overlay/kryptonite.d.ts.map +1 -1
  643. package/out/tools/overlay/kryptonite.js +2 -1
  644. package/out/tools/overlay/kryptonite.js.map +1 -1
  645. package/out/tools/overlay/manifest.d.ts +2 -1
  646. package/out/tools/overlay/manifest.d.ts.map +1 -1
  647. package/out/tools/overlay/manifest.js +2 -1
  648. package/out/tools/overlay/manifest.js.map +1 -1
  649. package/out/tools/overlay/merge-source.d.ts +2 -1
  650. package/out/tools/overlay/merge-source.d.ts.map +1 -1
  651. package/out/tools/overlay/merge-source.js.map +1 -1
  652. package/out/tools/overlay/split-slice.d.ts +1 -1
  653. package/out/tools/overlay/split-slice.js +1 -1
  654. package/out/tools/overlay/split-slice.js.map +1 -1
  655. package/out/tools/overlay/translit.d.ts +4 -3
  656. package/out/tools/overlay/translit.d.ts.map +1 -1
  657. package/out/tools/overlay/translit.js +2 -1
  658. package/out/tools/overlay/translit.js.map +1 -1
  659. package/out/tools/overture-subvenue.d.ts +1 -1
  660. package/out/tools/overture-subvenue.d.ts.map +1 -1
  661. package/out/tools/postcode-triples.d.ts +1 -1
  662. package/out/tools/postcode-triples.d.ts.map +1 -1
  663. package/out/tools/postcode-triples.js +4 -3
  664. package/out/tools/postcode-triples.js.map +1 -1
  665. package/out/tools/source-register/build.d.ts +10 -8
  666. package/out/tools/source-register/build.d.ts.map +1 -1
  667. package/out/tools/source-register/build.js +10 -8
  668. package/out/tools/source-register/build.js.map +1 -1
  669. package/out/tools/sub/venue/lexicon.d.ts +2 -6
  670. package/out/tools/sub/venue/lexicon.d.ts.map +1 -1
  671. package/out/tools/sub/venue/lexicon.js +2 -6
  672. package/out/tools/sub/venue/lexicon.js.map +1 -1
  673. package/out/tw/tools/fetch/gcis.js +3 -3
  674. package/out/tw/tools/fetch/gcis.js.map +1 -1
  675. package/out/types.d.ts +4 -3
  676. package/out/types.d.ts.map +1 -1
  677. package/out/types.js.map +1 -1
  678. package/out/us/adapters/state/hi-schools/workbook.d.ts +1 -1
  679. package/out/us/adapters/state/hi-schools/workbook.d.ts.map +1 -1
  680. package/out/us/adapters/state/hi-schools/workbook.js.map +1 -1
  681. package/out/us/adapters/usgov/nad/adapter.js +6 -6
  682. package/out/us/adapters/usgov/nad/adapter.js.map +1 -1
  683. package/out/us/adapters/usgov/samhsa-treatment-locator/adapter.js +2 -2
  684. package/out/us/adapters/usgov/samhsa-treatment-locator/adapter.js.map +1 -1
  685. package/out/us/fips-state.d.ts +2 -2
  686. package/out/us/fips-state.d.ts.map +1 -1
  687. package/out/us/fips-state.js.map +1 -1
  688. package/out/us/synthesizers/intersection.d.ts.map +1 -0
  689. package/out/{synthesizers → us/synthesizers}/intersection.js +13 -9
  690. package/out/us/synthesizers/intersection.js.map +1 -0
  691. package/out/{synthesizers → us/synthesizers}/street.d.ts +3 -2
  692. package/out/us/synthesizers/street.d.ts.map +1 -0
  693. package/out/{synthesizers → us/synthesizers}/street.js +12 -12
  694. package/out/us/synthesizers/street.js.map +1 -0
  695. package/out/us/tools/fetch/imls-pls.js +1 -1
  696. package/out/us/tools/fetch/imls-pls.js.map +1 -1
  697. package/out/us/tools/fetch/nad.d.ts +6 -6
  698. package/out/us/tools/fetch/nad.js +1 -1
  699. package/out/us/tools/fetch/nad.js.map +1 -1
  700. package/out/us/tools/fetch/nppes.js +3 -3
  701. package/out/us/tools/fetch/nppes.js.map +1 -1
  702. package/out/us/tools/fetch/state/hi-schools.d.ts +2 -1
  703. package/out/us/tools/fetch/state/hi-schools.d.ts.map +1 -1
  704. package/out/us/tools/fetch/state/hi-schools.js +1 -1
  705. package/out/us/tools/fetch/state/hi-schools.js.map +1 -1
  706. package/out/us/tools/fetch/tiger-full.js +1 -1
  707. package/out/us/tools/fetch/tiger-full.js.map +1 -1
  708. package/out/utils/align.d.ts +5 -3
  709. package/out/utils/align.d.ts.map +1 -1
  710. package/out/utils/align.js +5 -5
  711. package/out/utils/align.js.map +1 -1
  712. package/out/utils/golden.js +2 -2
  713. package/out/utils/golden.js.map +1 -1
  714. package/out/utils/license.d.ts +3 -3
  715. package/out/utils/license.d.ts.map +1 -1
  716. package/out/utils/license.js.map +1 -1
  717. package/out/utils/split.d.ts +1 -1
  718. package/out/utils/split.d.ts.map +1 -1
  719. package/out/utils/split.js +18 -14
  720. package/out/utils/split.js.map +1 -1
  721. package/out/utils/tokenize.d.ts +3 -20
  722. package/out/utils/tokenize.d.ts.map +1 -1
  723. package/out/utils/tokenize.js.map +1 -1
  724. package/out/utils/wof-json.js +3 -3
  725. package/out/utils/wof-json.js.map +1 -1
  726. package/package.json +18 -27
  727. package/lib/tools.ts +0 -31
  728. package/out/synthesizers/intersection.d.ts.map +0 -1
  729. package/out/synthesizers/intersection.js.map +0 -1
  730. package/out/synthesizers/street.d.ts.map +0 -1
  731. package/out/synthesizers/street.js.map +0 -1
  732. package/out/tools.d.ts +0 -31
  733. package/out/tools.d.ts.map +0 -1
  734. package/out/tools.js +0 -31
  735. package/out/tools.js.map +0 -1
  736. /package/out/{synthesizers → us/synthesizers}/intersection.d.ts +0 -0
@@ -4,21 +4,18 @@
4
4
  * @author Teffen Ellis, et al.
5
5
  *
6
6
  * `es-gipuzkoa`: the INSPIRE Addresses theme the Diputación Foral de Gipuzkoa publishes, read from
7
- * the one zipped GML that carries the whole province.
8
- *
9
- * The ATOM service at `https://b5m.gipuzkoa.eus/inspire/download/addresses.xml` is 4,469 bytes and
10
- * holds a single entry for the province rather than one per municipality. That entry links its
11
- * dataset through `rel="alternate"` and not `rel="enclosure"`, so a fetcher that looks only for an
12
- * enclosure finds no dataset here. The adapter is handed the archive and the feed is acquisition's
13
- * concern. The archive `ES.GFA.AD.zip` is 7,959,103 bytes and its one member `ES.GFA.AD.gml` is
14
- * 313,162,472 bytes, a ratio of 39, so the member is read as a chunk sequence and never buffered.
15
- *
16
- * The member is self-contained and its order decides the reader. Counted over all 313,162,472 bytes:
17
- * 68,744 `ad:Address`, 4,250 `ad:ThoroughfareName`, 178 `ad:PostalDescriptor` and 88
18
- * `ad:AdminUnitName`, which is every one of the 73,260 `gml:featureMember` elements. The 4,516
19
- * reference features are written last, beginning at byte 306,440,816. Holding an address until the
20
- * document ends would therefore hold all 68,744, so the adapter reads the member twice through
21
- * {@linkcode streamIndexedInspireRows} and indexes 4,516 features instead.
7
+ * the one zipped GML that holds the whole province.
8
+ *
9
+ * The ATOM service at `https://b5m.gipuzkoa.eus/inspire/download/addresses.xml` holds a single entry
10
+ * for the province and links its dataset through `rel="alternate"` rather than `rel="enclosure"`, so
11
+ * a fetcher that looks only for an enclosure finds no dataset here. The adapter is handed the
12
+ * archive and the feed is acquisition's concern. The archive holds one 313 MB GML member. The
13
+ * adapter reads that member as a chunk sequence and never buffers it.
14
+ *
15
+ * The member is self-contained and its order decides the reader. Addresses number 68,744, and the
16
+ * 4,516 reference features they point at are written last. An address held until the document ends
17
+ * would keep all 68,744 pending, so the adapter reads the member twice through
18
+ * {@linkcode streamIndexedInspireRows} and indexes the 4,516 references instead.
22
19
  *
23
20
  * A reference is a WFS stored-query URL whose `ID` parameter equals the target's `gml:id`, written
24
21
  * against the internal host `http://b5mdev/` and with the id repeated as the URL's fragment:
@@ -28,31 +25,26 @@
28
25
  *
29
26
  * A postal-descriptor reference whose final segment is empty, `…&ID=ES.GFA.PD.059. #…`, states that
30
27
  * the publisher holds no postcode, and `referenceStatesNoValue` separates it from a broken join.
31
- * The Cadastre writes the same form, which is why the predicate has one home.
28
+ * The Cadastre writes the same form. The predicate therefore has one home.
32
29
  *
33
- * The locator vocabulary is one type. 68,743 of 68,744 addresses write exactly one designator, typed
34
- * `LocatorDesignatorTypeValue/addressIdentifierGeneral`; one address writes none. The municipality is
35
- * the only `ad:AdminUnitName` level published, `4thOrder`, and the province publishes 88 of them for
36
- * its 88 municipalities.
30
+ * The locator vocabulary is one type,
31
+ * `LocatorDesignatorTypeValue/addressIdentifierGeneral`. The municipality is the only
32
+ * `ad:AdminUnitName` level published, `4thOrder`.
37
33
  *
38
34
  * The publisher writes its street names in Basque, with the street type as a trailing word rather
39
35
  * than a leading abbreviation: `Samikolla ibilbidea`. The name is taken as written.
40
36
  *
41
- * `ad:LocatorName` is populated on 46,365 of 68,744 addresses and holds a building name as a Basque
42
- * and Spanish pair, `Gasolinera` with `Gasolindegia` and `Agirre, baserria` with `Agirre, caserío`.
43
- * The adapter writes none of them. The address-source register's personal-data review reads `absent`
44
- * on the ground that these name the building rather than its occupant, and it records that a Basque
45
- * *baserri* name is commonly also a surname. Keeping them out of the corpus keeps that reading from
46
- * resting on the stronger claim that the name is safe to publish as address text.
47
- *
48
- * No publisher-side rendering of a whole address was found for this source. `ad:alternativeIdentifier`
49
- * is populated on all 68,744 addresses and holds a serial number such as `36798` rather than an
50
- * address. What the file does state twice is the join: the address `gml:id`
51
- * `ES.GFA.AD.056_1110_003` concatenates the municipality code `056`, the thoroughfare code `1110`
52
- * and the number `003`, and the references it carries are `AU_ADMINISTRATIVEUNIT_34162020056`,
53
- * `ES.GFA.TN.056.1110` and `ES.GFA.PD.056.20830`. The adapter's test checks the composed street and
54
- * number against that identifier, which is a check that the right features were joined rather than a
55
- * check of the address the publisher would print.
37
+ * `ad:LocatorName` holds a building name as a Basque and Spanish pair, `Gasolinera` with
38
+ * `Gasolindegia` and `Agirre, baserria` with `Agirre, caserío`. The adapter writes none of them: the
39
+ * address-source register's personal-data review reads `absent` because these identify the building
40
+ * rather than its occupant, and a Basque *baserri* name is commonly also a surname. The review
41
+ * therefore does not rest on the stronger claim that the name is safe to publish as address text.
42
+ *
43
+ * The address `gml:id` `ES.GFA.AD.056_1110_003` concatenates the municipality code `056`, the
44
+ * thoroughfare code `1110` and the number `003`, and holds references
45
+ * `AU_ADMINISTRATIVEUNIT_34162020056`, `ES.GFA.TN.056.1110` and `ES.GFA.PD.056.20830`. The
46
+ * adapter's test checks the composed street and number against that identifier. That check confirms
47
+ * the right features were joined. It does not check the address the publisher would print.
56
48
  */
57
49
  import { PathBuilder } from "path-ts";
58
50
  import { Globerator } from "spliterator/node/fs";
@@ -73,7 +65,8 @@ export const ES_GIPUZKOA_ADAPTER_ID = "es-gipuzkoa";
73
65
  /**
74
66
  * The jurisdiction this adapter emits.
75
67
  *
76
- * Coverage is the province of Gipuzkoa, which the feed states as the dataset's whole extent.
68
+ * Coverage is the province of Gipuzkoa.
69
+ * The feed states that as the dataset's whole extent.
77
70
  */
78
71
  export const ES_GIPUZKOA_COUNTRIES = ["ES"];
79
72
  /**
@@ -81,15 +74,15 @@ export const ES_GIPUZKOA_COUNTRIES = ["ES"];
81
74
  *
82
75
  * Gipuzkoa states four things, and the register elects the one addressing this dataset:
83
76
  * the `otherConstraints` of its ISO 19139 dataset record, `CC BY-SA 4.0`.
84
- * Its feed states attribution alone and its website states CC BY 4.0, and the register
85
- * records why the stricter reading is the one to err towards: the share-alike filter reads
86
- * this label, so recording CC BY 4.0 would hide an obligation the publisher may hold.
77
+ * Its feed states attribution only and its website states CC BY 4.0, and the register records
78
+ * why the stricter reading is the one to err towards: the share-alike filter reads this label,
79
+ * so recording CC BY 4.0 would hide an obligation the publisher may hold.
87
80
  *
88
81
  * The value is the SPDX identifier the register elected rather than the license's title,
89
82
  * because `licenseVerdict` resolves an identifier and reads a title as unrecognized.
90
83
  * Under `LicensePolicy.ShareAlikeFree` the title returns `{refusal: null, mentionsShareAlike: false}`
91
- * and `CC-BY-SA-4.0` returns `{refusal: "share-alike-carried"}`, so the title admits
92
- * these rows to a corpus assembled to hold no share-alike source.
84
+ * and `CC-BY-SA-4.0` returns a share-alike refusal, so the title admits these rows
85
+ * to a corpus assembled to hold no share-alike source.
93
86
  */
94
87
  export const ES_GIPUZKOA_LICENSE = "CC-BY-SA-4.0";
95
88
  /**
@@ -154,20 +147,20 @@ export function createESGipuzkoaAdapter() {
154
147
  };
155
148
  }
156
149
  /**
157
- * One address's row, or undefined when it carries too little to render.
150
+ * One address's row, or null when it holds too little to render.
158
151
  *
159
152
  * The reference index is complete before this is called, so a reference resolving to no
160
153
  * feature is a value the reader asked for and could not read, and it raises.
161
154
  */
162
155
  function composeRow(address, referenced) {
163
- const addressID = address.attributes["gml:id"]?.trim();
156
+ const addressID = address.attributes["gml:id"]?.trim() ?? null;
164
157
  if (voidDesignatorTypes(address).has(HOUSE_NUMBER_TYPE)) {
165
158
  throw new VoidDesignatorError(ES_GIPUZKOA_ADAPTER_ID, addressID, HOUSE_NUMBER_TYPE);
166
159
  }
167
- let street;
168
- let postcode;
169
- let locality;
170
- let settlement;
160
+ let street = null;
161
+ let postcode = null;
162
+ let locality = null;
163
+ let settlement = null;
171
164
  for (const href of componentHrefs(address)) {
172
165
  const key = componentJoinKey(href);
173
166
  if (key && referenceStatesNoValue(key))
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../lib/es/adapters/gipuzkoa/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../lib/es/adapters/gipuzkoa/adapter.ts"],"names":[],"mappings":"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"}
@@ -9,15 +9,15 @@
9
9
  * The ATOM service at
10
10
  * `https://filescartografia.navarra.es/2_CARTOGRAFIA_TEMATICA/2_7_CATASTRO/2_7_3_INSPIRE_ATOM/2_7_3_3_AD/Addresses_ServiceATOM_Navarra.xml`
11
11
  * is 671,131 bytes and splits the province across 272 entries. Every entry is titled `Address
12
- * Navarra`, so a partition cannot be selected by place from the feed alone. The three measured each
13
- * turned out to hold one municipality, partition 1 Abáigar, partition 100 Eulate and partition 250
14
- * Bera, but the feed states no such mapping and this adapter claims none. It reads one archive or a
15
- * directory of them, which is how a caller harvests all 272.
12
+ * Navarra`, and the feed states no place for a partition. The three measured each held one
13
+ * municipality: partition 1 Abáigar, partition 100 Eulate and partition 250 Bera. The feed states
14
+ * no such mapping and this adapter claims none. It reads one archive or a directory of them. A
15
+ * caller harvests all 272 by pointing it at the directory.
16
16
  *
17
17
  * This publisher is read entirely from its references' titles, and that is what separates it from
18
18
  * every other INSPIRE reader here. Its own file publishes no `AD:ThoroughfareName`,
19
19
  * `AD:PostalDescriptor` or `AD:AdminUnitName` feature at all: partition 1 holds 29 distinct element
20
- * names across 115 addresses and none of them is a component feature. Each address instead carries
20
+ * names across 115 addresses and none of them is a component feature. Each address instead holds
21
21
  * six `AD:component` references whose `xlink:title` states the value:
22
22
  *
23
23
  * | `xlink:href` | `xlink:title` | read as |
@@ -30,7 +30,7 @@
30
30
  * | `PostalDescriptor` | `31280` | the postcode |
31
31
  *
32
32
  * The counts are exact and regular: 690 references over 115 addresses in partition 1, 1,728 over 288
33
- * in partition 100 and 6,324 over 1,054 in partition 250, which is six per address in each, one of
33
+ * in partition 100 and 6,324 over 1,054 in partition 250. Each address holds six references, one of
34
34
  * each shape above.
35
35
  *
36
36
  * The two place titles are not the same value. In Abáigar and Eulate the `5thOrder` title repeats the
@@ -39,7 +39,7 @@
39
39
  * dependent locality where it differs from the municipality and left out where it repeats it.
40
40
  *
41
41
  * `Comunidad Foral de Navarra` is the autonomous community's own name rather than the province name a
42
- * Spanish address writes, and the publisher's own address layer carries no region column, so no
42
+ * Spanish address writes, and the publisher's own address layer has no region column, so no
43
43
  * `region` is written.
44
44
  *
45
45
  * The publisher's own rendering is in a different service, and it agrees. `IDENA` publishes
@@ -47,12 +47,12 @@
47
47
  * `VIA` and `PORTAL`. Partition 1's `AD.Address.1` composes `CALLE CALLEJA, 4, 31280 Abáigar`, and
48
48
  * that layer's `DIRECC_Txt_Direcciones.1` reads `MUNICIPIO` `Abáigar`, `ENTIDAD` `Abáigar`,
49
49
  * `CODPOSTAL` `31280`, `VIA` `CALLE CALLEJA`, `PORTAL` `4`. The adapter's integration test checks a
50
- * sample of rows against that layer, which is this source's publisher-side oracle.
50
+ * sample of rows against that layer, the publisher-side oracle for this source.
51
51
  *
52
52
  * Two values state an absence rather than a value. A `PostalDescriptor` title of `0` is the publisher
53
- * holding no postcode, measured in Bera, and a designator of `S/N` is *sin número*, which
54
- * `#es/cadastre` reads for all four Spanish cadastres. A designator may also carry a space-separated
55
- * letter, `18 A` and `34 A` in Eulate, which is kept as the publisher wrote it.
53
+ * holding no postcode, measured in Bera. A designator of `S/N` is *sin número*, and `#es/cadastre`
54
+ * reads it for all four Spanish cadastres. A designator may also hold a space-separated letter,
55
+ * `18 A` and `34 A` in Eulate. The adapter keeps that letter as the publisher wrote it.
56
56
  */
57
57
  import { type MarkupElement } from "@mailwoman/core/html/elements";
58
58
  import { type CorpusAdapter } from "#types";
@@ -74,20 +74,21 @@ export declare const ES_NAVARRA_COUNTRIES: readonly string[];
74
74
  * Creative Commons Attribution 4.0 International (CC BY 4.0)`, and all 272 of its entries repeat it.
75
75
  * The version is stated, so the register records `CC-BY-4.0` as the SPDX identifier.
76
76
  *
77
- * The row carries that identifier rather than the license's title.
78
- * `licenseVerdict` resolves an identifier and reads a title as unrecognized,
79
- * and a row whose license resolves to no expression has unknown obligations
80
- * rather than none, which the build reports separately from a refusal.
77
+ * The row states that identifier rather than the license's title.
78
+ * `licenseVerdict` resolves an identifier and reads a title as unrecognized.
79
+ *
80
+ * A row whose license resolves to no expression has unknown obligations rather than none.
81
+ * The build reports that separately from a refusal.
81
82
  */
82
83
  export declare const ES_NAVARRA_LICENSE = "CC-BY-4.0";
83
84
  /**
84
85
  * What one address's references state, read from their titles.
85
86
  */
86
87
  interface ReferencedTitles {
87
- street?: string;
88
- postcode?: string;
89
- locality?: string;
90
- settlement?: string;
88
+ street: string | null;
89
+ postcode: string | null;
90
+ locality: string | null;
91
+ settlement: string | null;
91
92
  }
92
93
  /**
93
94
  * The street, postcode and place names an address's own references state.
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../lib/es/adapters/navarra/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AAEH,OAAO,EAAE,KAAK,aAAa,EAAwB,MAAM,+BAA+B,CAAA;AAgBxF,OAAO,EAAuD,KAAK,aAAa,EAAiB,MAAM,QAAQ,CAAA;AAE/G;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,eAAe,CAAA;AAEjD;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,SAAS,MAAM,EAAW,CAAA;AAE7D;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,kBAAkB,cAAc,CAAA;AAoD7C;;GAEG;AACH,UAAU,gBAAgB;IACzB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;CACnB;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,aAAa,GAAG,gBAAgB,CAoBhF;AAED,wBAAgB,sBAAsB,IAAI,aAAa,CA2CtD;AAoDD;;GAEG;AACH,eAAO,MAAM,gBAAgB,eAA2B,CAAA"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../lib/es/adapters/navarra/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AAEH,OAAO,EAAE,KAAK,aAAa,EAAwB,MAAM,+BAA+B,CAAA;AAgBxF,OAAO,EAAuD,KAAK,aAAa,EAAiB,MAAM,QAAQ,CAAA;AAE/G;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,eAAe,CAAA;AAEjD;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,SAAS,MAAM,EAAW,CAAA;AAE7D;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,kBAAkB,cAAc,CAAA;AAoD7C;;GAEG;AACH,UAAU,gBAAgB;IACzB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,aAAa,GAAG,gBAAgB,CAoBhF;AAED,wBAAgB,sBAAsB,IAAI,aAAa,CA2CtD;AAoDD;;GAEG;AACH,eAAO,MAAM,gBAAgB,eAA2B,CAAA"}
@@ -9,15 +9,15 @@
9
9
  * The ATOM service at
10
10
  * `https://filescartografia.navarra.es/2_CARTOGRAFIA_TEMATICA/2_7_CATASTRO/2_7_3_INSPIRE_ATOM/2_7_3_3_AD/Addresses_ServiceATOM_Navarra.xml`
11
11
  * is 671,131 bytes and splits the province across 272 entries. Every entry is titled `Address
12
- * Navarra`, so a partition cannot be selected by place from the feed alone. The three measured each
13
- * turned out to hold one municipality, partition 1 Abáigar, partition 100 Eulate and partition 250
14
- * Bera, but the feed states no such mapping and this adapter claims none. It reads one archive or a
15
- * directory of them, which is how a caller harvests all 272.
12
+ * Navarra`, and the feed states no place for a partition. The three measured each held one
13
+ * municipality: partition 1 Abáigar, partition 100 Eulate and partition 250 Bera. The feed states
14
+ * no such mapping and this adapter claims none. It reads one archive or a directory of them. A
15
+ * caller harvests all 272 by pointing it at the directory.
16
16
  *
17
17
  * This publisher is read entirely from its references' titles, and that is what separates it from
18
18
  * every other INSPIRE reader here. Its own file publishes no `AD:ThoroughfareName`,
19
19
  * `AD:PostalDescriptor` or `AD:AdminUnitName` feature at all: partition 1 holds 29 distinct element
20
- * names across 115 addresses and none of them is a component feature. Each address instead carries
20
+ * names across 115 addresses and none of them is a component feature. Each address instead holds
21
21
  * six `AD:component` references whose `xlink:title` states the value:
22
22
  *
23
23
  * | `xlink:href` | `xlink:title` | read as |
@@ -30,7 +30,7 @@
30
30
  * | `PostalDescriptor` | `31280` | the postcode |
31
31
  *
32
32
  * The counts are exact and regular: 690 references over 115 addresses in partition 1, 1,728 over 288
33
- * in partition 100 and 6,324 over 1,054 in partition 250, which is six per address in each, one of
33
+ * in partition 100 and 6,324 over 1,054 in partition 250. Each address holds six references, one of
34
34
  * each shape above.
35
35
  *
36
36
  * The two place titles are not the same value. In Abáigar and Eulate the `5thOrder` title repeats the
@@ -39,7 +39,7 @@
39
39
  * dependent locality where it differs from the municipality and left out where it repeats it.
40
40
  *
41
41
  * `Comunidad Foral de Navarra` is the autonomous community's own name rather than the province name a
42
- * Spanish address writes, and the publisher's own address layer carries no region column, so no
42
+ * Spanish address writes, and the publisher's own address layer has no region column, so no
43
43
  * `region` is written.
44
44
  *
45
45
  * The publisher's own rendering is in a different service, and it agrees. `IDENA` publishes
@@ -47,12 +47,12 @@
47
47
  * `VIA` and `PORTAL`. Partition 1's `AD.Address.1` composes `CALLE CALLEJA, 4, 31280 Abáigar`, and
48
48
  * that layer's `DIRECC_Txt_Direcciones.1` reads `MUNICIPIO` `Abáigar`, `ENTIDAD` `Abáigar`,
49
49
  * `CODPOSTAL` `31280`, `VIA` `CALLE CALLEJA`, `PORTAL` `4`. The adapter's integration test checks a
50
- * sample of rows against that layer, which is this source's publisher-side oracle.
50
+ * sample of rows against that layer, the publisher-side oracle for this source.
51
51
  *
52
52
  * Two values state an absence rather than a value. A `PostalDescriptor` title of `0` is the publisher
53
- * holding no postcode, measured in Bera, and a designator of `S/N` is *sin número*, which
54
- * `#es/cadastre` reads for all four Spanish cadastres. A designator may also carry a space-separated
55
- * letter, `18 A` and `34 A` in Eulate, which is kept as the publisher wrote it.
53
+ * holding no postcode, measured in Bera. A designator of `S/N` is *sin número*, and `#es/cadastre`
54
+ * reads it for all four Spanish cadastres. A designator may also hold a space-separated letter,
55
+ * `18 A` and `34 A` in Eulate. The adapter keeps that letter as the publisher wrote it.
56
56
  */
57
57
  import { streamMarkupElements } from "@mailwoman/core/html/elements";
58
58
  import { PathBuilder } from "path-ts";
@@ -82,10 +82,11 @@ export const ES_NAVARRA_COUNTRIES = ["ES"];
82
82
  * Creative Commons Attribution 4.0 International (CC BY 4.0)`, and all 272 of its entries repeat it.
83
83
  * The version is stated, so the register records `CC-BY-4.0` as the SPDX identifier.
84
84
  *
85
- * The row carries that identifier rather than the license's title.
86
- * `licenseVerdict` resolves an identifier and reads a title as unrecognized,
87
- * and a row whose license resolves to no expression has unknown obligations
88
- * rather than none, which the build reports separately from a refusal.
85
+ * The row states that identifier rather than the license's title.
86
+ * `licenseVerdict` resolves an identifier and reads a title as unrecognized.
87
+ *
88
+ * A row whose license resolves to no expression has unknown obligations rather than none.
89
+ * The build reports that separately from a refusal.
89
90
  */
90
91
  export const ES_NAVARRA_LICENSE = "CC-BY-4.0";
91
92
  /**
@@ -127,7 +128,7 @@ const SETTLEMENT_LEVEL = "5thOrder";
127
128
  /**
128
129
  * The postcode title that states that the publisher holds none.
129
130
  *
130
- * Measured in Bera, which writes `0` beside its `31780`.
131
+ * Bera writes `0` beside its `31780`.
131
132
  */
132
133
  const NO_POSTCODE_TITLE = "0";
133
134
  /**
@@ -137,7 +138,7 @@ const NO_POSTCODE_TITLE = "0";
137
138
  * order in the three partitions measured and that order is the publisher's rather than the schema's.
138
139
  */
139
140
  export function navarraReferencedTitles(address) {
140
- const titles = {};
141
+ const titles = { street: null, postcode: null, locality: null, settlement: null };
141
142
  for (const { href, title } of componentLinks(address)) {
142
143
  if (!title)
143
144
  continue;
@@ -146,7 +147,7 @@ export function navarraReferencedTitles(address) {
146
147
  titles.street = title;
147
148
  }
148
149
  else if (lowered === POSTAL_DESCRIPTOR_HREF) {
149
- titles.postcode = title === NO_POSTCODE_TITLE ? undefined : title;
150
+ titles.postcode = title === NO_POSTCODE_TITLE ? null : title;
150
151
  }
151
152
  else if (codelistValue(href) === SETTLEMENT_LEVEL) {
152
153
  titles.settlement = title;
@@ -196,16 +197,16 @@ export function createESNavarraAdapter() {
196
197
  };
197
198
  }
198
199
  /**
199
- * One address's row, or undefined when it carries too little to render.
200
+ * One address's row, or null when it holds too little to render.
200
201
  */
201
202
  function composeRow(address) {
202
- const addressID = address.attributes["gml:id"]?.trim();
203
+ const addressID = address.attributes["gml:id"]?.trim() ?? null;
203
204
  if (voidDesignatorTypes(address).has(HOUSE_NUMBER_TYPE)) {
204
205
  throw new VoidDesignatorError(ES_NAVARRA_ADAPTER_ID, addressID, HOUSE_NUMBER_TYPE);
205
206
  }
206
207
  const { street, postcode, locality, settlement } = navarraReferencedTitles(address);
207
- // Navarra's settlement is a fifth-order title, a *concejo* within the municipality, which
208
- // `cadastralRow` writes as a dependent locality only where it differs from the municipality.
208
+ // Navarra's settlement is a fifth-order title, a *concejo* within the municipality.
209
+ // `cadastralRow` writes it as a dependent locality only where it differs from the municipality.
209
210
  return cadastralRow({
210
211
  street,
211
212
  house: spanishHouseNumber(designatorsByType(address), HOUSE_NUMBER_TYPE),
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../lib/es/adapters/navarra/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../lib/es/adapters/navarra/adapter.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  * @license AGPL-3.0
4
4
  * @author Teffen Ellis, et al.
5
5
  *
6
- * The two ways a Spanish cadastre states that it holds no value, which all four of them share.
6
+ * The two ways a Spanish cadastre states that it holds no value. All four cadastres share them.
7
7
  *
8
8
  * Spain publishes the INSPIRE Addresses theme through four cadastres: the Dirección General del
9
9
  * Catastro for 52 provinces, and the Diputación Foral de Bizkaia, the Diputación Foral de Gipuzkoa
@@ -17,20 +17,20 @@ import type { CanonicalRow } from "#types";
17
17
  * Whether a designator value states that the address has no number.
18
18
  *
19
19
  * The whole value has to be the token.
20
- * A value that carries more, such as Gipuzkoa's `S/N-A`, `S/N-C` and `S/N-5`,
20
+ * A value that holds more, such as Gipuzkoa's `S/N-A`, `S/N-C` and `S/N-5`,
21
21
  * states something further and is kept as the publisher wrote it: what the trailing part
22
22
  * designates is not established, dropping it would merge several addresses of one building,
23
23
  * and rewriting it would state a number the publisher did not.
24
24
  */
25
25
  export declare function isSinNumero(value: string): boolean;
26
26
  /**
27
- * The house number a Spanish cadastre states, or undefined where it states that there is none.
27
+ * The house number a Spanish cadastre states, or null where it states that there is none.
28
28
  *
29
29
  * @param types The publisher's own designator types, in the caller's order of precedence.
30
30
  * The Dirección General del Catastro writes the type as the element text `1`, while Navarra
31
31
  * and Gipuzkoa write the `LocatorDesignatorTypeValue/addressIdentifierGeneral` codelist URI.
32
32
  */
33
- export declare function spanishHouseNumber(byType: ReadonlyMap<string, readonly string[]>, ...types: readonly string[]): string | undefined;
33
+ export declare function spanishHouseNumber(byType: ReadonlyMap<string, readonly string[]>, ...types: readonly string[]): string | null;
34
34
  /**
35
35
  * Whether a component reference's key states that the publisher holds no value for that component.
36
36
  *
@@ -40,9 +40,7 @@ export declare function spanishHouseNumber(byType: ReadonlyMap<string, readonly
40
40
  * Where the cadastre holds no postcode it writes the same identifier with that segment empty,
41
41
  * `ES.SDGC.PD.55.101.` and `ES.GFA.PD.059.`, against no feature of that id.
42
42
  *
43
- * Those truncated references are the only unresolvable ones measured in either
44
- * file: 70 of Ceuta's 8,126 addresses carry one, while its thoroughfare
45
- * and administrative-unit references resolve 8,126 of 8,126 each.
43
+ * Those truncated references are the only unresolvable ones measured in either file.
46
44
  * A reader taking every unresolved reference as an absence would also swallow a genuinely
47
45
  * broken join, so the two are separated here and every other unresolved reference raises.
48
46
  */
@@ -57,27 +55,29 @@ export interface CadastralAddress {
57
55
  /**
58
56
  * The thoroughfare name the address references, absent where the publisher writes none.
59
57
  */
60
- street: string | undefined;
58
+ street: string | null;
61
59
  /**
62
60
  * The house number this cadastre's own designator type states.
63
61
  */
64
- house: string | undefined;
62
+ house: string | null;
65
63
  /**
66
64
  * The postal descriptor's code.
67
65
  */
68
- postcode: string | undefined;
66
+ postcode: string | null;
69
67
  /**
70
68
  * The municipality-level administrative unit's name.
71
69
  */
72
- locality: string | undefined;
70
+ locality: string | null;
73
71
  /**
74
- * The address-area name, which is a settlement within the municipality.
72
+ * The address-area name.
73
+ * It is a settlement within the municipality.
75
74
  */
76
- settlement: string | undefined;
75
+ settlement: string | null;
77
76
  /**
78
- * The publisher's own identifier for the address, which keys `source_id` where it exists.
77
+ * The publisher's own identifier for the address.
78
+ * It keys `source_id` where it exists.
79
79
  */
80
- addressID: string | undefined;
80
+ addressID: string | null;
81
81
  }
82
82
  /**
83
83
  * What distinguishes one cadastre's rows from another's.
@@ -99,11 +99,12 @@ export interface CadastralSource {
99
99
  * The address area supplies a dependent locality only where the two differ.
100
100
  * The line renders in Spain's order.
101
101
  *
102
- * Composing that in each adapter repeated 42 lines four times.
102
+ * Each adapter would otherwise repeat those 42 lines four times.
103
103
  *
104
- * Returns `undefined` in two cases: the address carries neither a municipality
105
- * nor an address area, which would leave the row without a locality, or `formatAddressRow`
106
- * returns `undefined` for the components it was given.
104
+ * Returns `null` in two cases.
105
+ * The address holds neither a municipality nor an address area, so the row would have no locality.
106
+ *
107
+ * Otherwise `formatAddressRow` returns `null` for the components it was given.
107
108
  */
108
- export declare function cadastralRow(address: CadastralAddress, source: CadastralSource): CanonicalRow | undefined;
109
+ export declare function cadastralRow(address: CadastralAddress, source: CadastralSource): CanonicalRow | null;
109
110
  //# sourceMappingURL=cadastre.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cadastre.d.ts","sourceRoot":"","sources":["../../lib/es/cadastre.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAMH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AAe1C;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAElD;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CACjC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,EAC9C,GAAG,KAAK,EAAE,SAAS,MAAM,EAAE,GACzB,MAAM,GAAG,SAAS,CAMpB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAChC;;OAEG;IACH,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1B;;OAEG;IACH,KAAK,EAAE,MAAM,GAAG,SAAS,CAAA;IACzB;;OAEG;IACH,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B;;OAEG;IACH,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B;;OAEG;IACH,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B;;OAEG;IACH,SAAS,EAAE,MAAM,GAAG,SAAS,CAAA;CAC7B;AAED;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC/B,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;CACf;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,eAAe,GAAG,YAAY,GAAG,SAAS,CAiDzG"}
1
+ {"version":3,"file":"cadastre.d.ts","sourceRoot":"","sources":["../../lib/es/cadastre.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAMH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AAc1C;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAElD;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CACjC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,EAC9C,GAAG,KAAK,EAAE,SAAS,MAAM,EAAE,GACzB,MAAM,GAAG,IAAI,CAMf;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAChC;;OAEG;IACH,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB;;OAEG;IACH,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB;;OAEG;IACH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB;;OAEG;IACH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB;;;OAGG;IACH,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB;;;OAGG;IACH,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CACxB;AAED;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC/B,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;CACf;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,eAAe,GAAG,YAAY,GAAG,IAAI,CAiDpG"}
@@ -3,7 +3,7 @@
3
3
  * @license AGPL-3.0
4
4
  * @author Teffen Ellis, et al.
5
5
  *
6
- * The two ways a Spanish cadastre states that it holds no value, which all four of them share.
6
+ * The two ways a Spanish cadastre states that it holds no value. All four cadastres share them.
7
7
  *
8
8
  * Spain publishes the INSPIRE Addresses theme through four cadastres: the Dirección General del
9
9
  * Catastro for 52 provinces, and the Diputación Foral de Bizkaia, the Diputación Foral de Gipuzkoa
@@ -21,17 +21,16 @@ import { designator } from "#inspire/address";
21
21
  * `S-N` is the Dirección General del Catastro's spelling, on 856 of Ceuta's 8,126 addresses.
22
22
  * `S/N` is the Gobierno de Navarra's and the Diputación Foral de Gipuzkoa's.
23
23
  *
24
- * Both are accepted by each of the four readers.
25
- * Neither is a number under any jurisdiction's rules, and the files measured are a few municipalities
26
- * out of the 52 provinces, 112 municipalities and 272 partitions those services publish,
27
- * so a reader scoped to the one spelling its own sample carried would write the other into a row.
24
+ * All four readers accept both.
25
+ * Neither is a number under any jurisdiction's rules, and a reader scoped to one
26
+ * spelling would write the other spelling into a row.
28
27
  */
29
28
  const SIN_NUMERO = new Set(["s-n", "s/n"]);
30
29
  /**
31
30
  * Whether a designator value states that the address has no number.
32
31
  *
33
32
  * The whole value has to be the token.
34
- * A value that carries more, such as Gipuzkoa's `S/N-A`, `S/N-C` and `S/N-5`,
33
+ * A value that holds more, such as Gipuzkoa's `S/N-A`, `S/N-C` and `S/N-5`,
35
34
  * states something further and is kept as the publisher wrote it: what the trailing part
36
35
  * designates is not established, dropping it would merge several addresses of one building,
37
36
  * and rewriting it would state a number the publisher did not.
@@ -40,7 +39,7 @@ export function isSinNumero(value) {
40
39
  return SIN_NUMERO.has(value.trim().toLowerCase());
41
40
  }
42
41
  /**
43
- * The house number a Spanish cadastre states, or undefined where it states that there is none.
42
+ * The house number a Spanish cadastre states, or null where it states that there is none.
44
43
  *
45
44
  * @param types The publisher's own designator types, in the caller's order of precedence.
46
45
  * The Dirección General del Catastro writes the type as the element text `1`, while Navarra
@@ -49,7 +48,7 @@ export function isSinNumero(value) {
49
48
  export function spanishHouseNumber(byType, ...types) {
50
49
  const value = designator(byType, ...types);
51
50
  if (!value || isSinNumero(value))
52
- return undefined;
51
+ return null;
53
52
  return value;
54
53
  }
55
54
  /**
@@ -61,9 +60,7 @@ export function spanishHouseNumber(byType, ...types) {
61
60
  * Where the cadastre holds no postcode it writes the same identifier with that segment empty,
62
61
  * `ES.SDGC.PD.55.101.` and `ES.GFA.PD.059.`, against no feature of that id.
63
62
  *
64
- * Those truncated references are the only unresolvable ones measured in either
65
- * file: 70 of Ceuta's 8,126 addresses carry one, while its thoroughfare
66
- * and administrative-unit references resolve 8,126 of 8,126 each.
63
+ * Those truncated references are the only unresolvable ones measured in either file.
67
64
  * A reader taking every unresolved reference as an absence would also swallow a genuinely
68
65
  * broken join, so the two are separated here and every other unresolved reference raises.
69
66
  */
@@ -80,16 +77,17 @@ export function referenceStatesNoValue(key) {
80
77
  * The address area supplies a dependent locality only where the two differ.
81
78
  * The line renders in Spain's order.
82
79
  *
83
- * Composing that in each adapter repeated 42 lines four times.
80
+ * Each adapter would otherwise repeat those 42 lines four times.
84
81
  *
85
- * Returns `undefined` in two cases: the address carries neither a municipality
86
- * nor an address area, which would leave the row without a locality, or `formatAddressRow`
87
- * returns `undefined` for the components it was given.
82
+ * Returns `null` in two cases.
83
+ * The address holds neither a municipality nor an address area, so the row would have no locality.
84
+ *
85
+ * Otherwise `formatAddressRow` returns `null` for the components it was given.
88
86
  */
89
87
  export function cadastralRow(address, source) {
90
88
  const place = address.locality ?? address.settlement;
91
89
  if (!place)
92
- return undefined;
90
+ return null;
93
91
  const components = {};
94
92
  if (address.house) {
95
93
  components.house_number = address.house;
@@ -103,22 +101,22 @@ export function cadastralRow(address, source) {
103
101
  components.locality = place;
104
102
  // The address area is a settlement within the municipality where the two names differ,
105
103
  // and repeats the municipality where they do not.
106
- // Writing the repetition would state a dependent locality the publisher does not hold.
104
+ // The repetition would state a dependent locality the publisher does not hold.
107
105
  if (address.settlement && address.locality && address.settlement !== address.locality) {
108
106
  components.dependent_locality = address.settlement;
109
107
  }
110
108
  const rendered = formatAddressRow(components, "ES", { singleLine: true });
111
109
  if (!rendered)
112
- return undefined;
110
+ return null;
113
111
  const { raw, components: aligned } = rendered;
114
112
  return {
115
113
  raw,
116
114
  components: aligned,
117
115
  country: "ES",
118
116
  locale: "es-ES",
119
- // `register` is left to `runAdapter`, which stamps the adapter's own
120
- // declaration onto a row that omits it.
121
- // Setting it here would state per row what the adapter already states once.
117
+ // The row omits `register`.
118
+ // `runAdapter` stamps the adapter's own declaration onto it.
119
+ // A per-row `register` would repeat what the adapter already states once.
122
120
  source: source.adapterID,
123
121
  source_id: address.addressID
124
122
  ? `${source.adapterID}-${address.addressID}`