@mailwoman/corpus 9.4.0 → 10.1.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 (1724) hide show
  1. package/README.md +134 -32
  2. package/data/PROVENANCE.md +623 -17
  3. package/data/address-source-register.json +14249 -0
  4. package/data/builds/v0.7.0-de-holdout/inputs.json +22 -0
  5. package/data/builds/v0.8.0-registers/inputs.json +92 -0
  6. package/data/license-decisions.json +1603 -0
  7. package/data/licenses/PROVENANCE.md +65 -0
  8. package/data/licenses/cdla-permissive-2.0.md +43 -0
  9. package/data/licenses/geonames-publication.md +34 -0
  10. package/data/licenses/licence-ouverte-2.0.md +36 -0
  11. package/data/licenses/national-address-database.md +46 -0
  12. package/data/licenses/nlod-2.0.md +90 -0
  13. package/data/licenses/sirene-publication.md +38 -0
  14. package/data/licenses/whosonfirst-licenses.md +65 -0
  15. package/data/source-resolutions.json +804 -0
  16. package/data/sub-venue-lexicon.json +1 -1
  17. package/data/training-manifests/v0.7.0-de-holdout.effective.json +477 -0
  18. package/data/training-manifests/v0.7.0-de-holdout.json +78 -0
  19. package/lib/adapters/cordis/adapter.ts +785 -0
  20. package/lib/adapters/dedup-key.ts +40 -0
  21. package/lib/adapters/errors.ts +21 -0
  22. package/lib/adapters/geonames/adapter.ts +43 -53
  23. package/lib/adapters/geonames/postal/adapter.ts +116 -0
  24. package/lib/adapters/gleif/adapter.ts +828 -0
  25. package/lib/adapters/libpostal-dictionary.ts +39 -0
  26. package/lib/adapters/openaddresses/adapter.ts +54 -61
  27. package/lib/adapters/osm/adapter.ts +356 -0
  28. package/lib/adapters/overture/adapter.ts +65 -41
  29. package/lib/adapters/po-box/adapter.ts +202 -0
  30. package/lib/adapters/registry.ts +79 -0
  31. package/lib/adapters/sha256-stream.ts +49 -0
  32. package/lib/adapters/source-id.ts +49 -0
  33. package/lib/adapters/street-line.ts +135 -0
  34. package/lib/adapters/wof/admin/json/adapter.ts +254 -0
  35. package/lib/adapters/wof/json-rows.ts +211 -0
  36. package/lib/adapters/wof/postalcode-json/adapter.ts +194 -0
  37. package/lib/adapters.ts +230 -0
  38. package/lib/au/adapters/gnaf/adapter.ts +144 -0
  39. package/lib/au/adapters/gnaf/assemble.ts +205 -0
  40. package/lib/be/adapters/brussels/adapter.ts +566 -0
  41. package/lib/be/adapters/vlaanderen/adapter.ts +670 -0
  42. package/lib/be/adapters/wallonie/adapter.ts +537 -0
  43. package/lib/be/tools/fetch/brussels.ts +239 -0
  44. package/lib/be/tools/fetch/wallonie.ts +274 -0
  45. package/lib/build/adapters.ts +110 -0
  46. package/lib/build/align.ts +364 -0
  47. package/lib/build/checkpoint.ts +131 -0
  48. package/lib/build/eligibility.ts +96 -0
  49. package/lib/build/heap.ts +53 -0
  50. package/lib/build/inputs.ts +81 -0
  51. package/lib/build/rows.ts +21 -0
  52. package/lib/build/types.ts +232 -0
  53. package/lib/build.ts +127 -315
  54. package/lib/cn/recipes/organizational-units.ts +178 -0
  55. package/lib/cz/adapters/cuzk/adapter.ts +317 -0
  56. package/lib/cz/recipes/pcfirst-preposition.ts +125 -0
  57. package/lib/cz/tools/fetch/cuzk.ts +699 -0
  58. package/lib/de/recipes/locale.ts +370 -0
  59. package/lib/directory.ts +31 -0
  60. package/lib/dk/adapters/inspire/adapter.ts +345 -0
  61. package/lib/dk/tools/fetch/inspire.ts +321 -0
  62. package/lib/ee/adapters/ads/adapter.ts +246 -0
  63. package/lib/ee/tools/fetch/ads.ts +270 -0
  64. package/lib/env.ts +6 -2
  65. package/lib/es/adapters/bizkaia/adapter.ts +388 -0
  66. package/lib/es/adapters/catastro/adapter.ts +343 -0
  67. package/lib/es/adapters/gipuzkoa/adapter.ts +263 -0
  68. package/lib/es/adapters/navarra/adapter.ts +289 -0
  69. package/lib/es/cadastre.ts +194 -0
  70. package/lib/es/tools/fetch/bizkaia.ts +748 -0
  71. package/lib/es/tools/fetch/catastro.ts +754 -0
  72. package/lib/es/tools/fetch/gipuzkoa.ts +336 -0
  73. package/lib/es/tools/fetch/navarra.ts +488 -0
  74. package/lib/fi/adapters/ryhti/adapter.ts +323 -0
  75. package/lib/fi/tools/fetch/ryhti.ts +476 -0
  76. package/lib/fingerprints.ts +154 -0
  77. package/lib/fr/adapters/annuaire-education/adapter.ts +598 -0
  78. package/lib/fr/adapters/ban/adapter.ts +187 -0
  79. package/lib/fr/adapters/finess/adapter.ts +618 -0
  80. package/lib/fr/adapters/finess/postal-lines.ts +157 -0
  81. package/lib/fr/adapters/finess/voie-type.ts +200 -0
  82. package/lib/fr/insee-country.ts +62 -0
  83. package/lib/fr/recipes/admin-split.ts +221 -0
  84. package/lib/fr/recipes/bare-street.ts +158 -0
  85. package/lib/fr/recipes/fragment.ts +251 -0
  86. package/lib/fr/recipes/lieudit.ts +310 -0
  87. package/lib/fr/recipes/order.ts +219 -0
  88. package/lib/fr/street-decompose.ts +67 -0
  89. package/lib/fr/tools/fetch/annuaire-education.ts +306 -0
  90. package/lib/fr/tools/fetch/ban.ts +298 -0
  91. package/lib/fr/tools/fetch/finess.ts +352 -0
  92. package/lib/gauntlet-inputs.ts +92 -0
  93. package/lib/index.ts +10 -4
  94. package/lib/inspire/address.ts +457 -0
  95. package/lib/inspire/archive.ts +44 -0
  96. package/lib/inspire/errors.ts +71 -0
  97. package/lib/inspire/stream.ts +262 -0
  98. package/lib/international/recipes/locale.ts +556 -0
  99. package/lib/it/adapters/anac/adapter.ts +522 -0
  100. package/lib/it/tools/fetch/anac.ts +394 -0
  101. package/lib/jp/adapters/wof-admin/adapter.ts +224 -0
  102. package/lib/jp/tools/fetch/houjin.ts +139 -0
  103. package/lib/kr/adapters/juso/label-rows.ts +239 -0
  104. package/lib/kr/adapters/localdata/align.ts +288 -0
  105. package/lib/kr/adapters/localdata/key-index.ts +177 -0
  106. package/lib/kr/adapters/localdata/permit-rows.ts +193 -0
  107. package/lib/kr/tools/fetch/juso.ts +170 -0
  108. package/lib/kr/tools/fetch/localdata.ts +205 -0
  109. package/lib/lu/adapters/bd-adresses/adapter.ts +240 -0
  110. package/lib/lu/tools/fetch/bd-adresses.ts +351 -0
  111. package/lib/lv/adapters/varis/adapter.ts +499 -0
  112. package/lib/lv/tools/fetch/varis.ts +214 -0
  113. package/lib/nl/adapters/kadaster/adapter.ts +386 -0
  114. package/lib/nl/recipes/postcode.ts +139 -0
  115. package/lib/nl/tools/fetch/kadaster.ts +298 -0
  116. package/lib/no/adapters/matrikkelen/adapter.ts +187 -0
  117. package/lib/no/recipes/fragment.ts +189 -0
  118. package/lib/no/recipes/street/led.ts +154 -0
  119. package/lib/no/recipes/street.ts +109 -0
  120. package/lib/no/tools/fetch/matrikkelen.ts +519 -0
  121. package/lib/parquet/duckdb.ts +144 -0
  122. package/lib/parquet/readers.ts +86 -0
  123. package/lib/parquet/schema.ts +214 -0
  124. package/lib/parquet/shuffle.ts +59 -0
  125. package/lib/parquet/span-sql.ts +54 -0
  126. package/lib/parquet/streams.ts +113 -0
  127. package/lib/parquet/writers.ts +451 -0
  128. package/lib/pl/adapters/emuia/adapter.ts +202 -0
  129. package/lib/pl/tools/fetch/emuia.ts +360 -0
  130. package/lib/recipes/anchor-absorption.ts +30 -19
  131. package/lib/recipes/bare/country.ts +87 -0
  132. package/lib/recipes/bare/postcode/eval.ts +99 -0
  133. package/lib/recipes/bare/postcode.ts +346 -0
  134. package/lib/recipes/boundary-stress.ts +36 -19
  135. package/lib/recipes/country-balanced.ts +67 -87
  136. package/lib/recipes/house-venue.ts +31 -13
  137. package/lib/recipes/intersection.ts +83 -61
  138. package/lib/recipes/po/box/cedex/au-nz.ts +82 -0
  139. package/lib/recipes/po/box/cedex/ca.ts +59 -0
  140. package/lib/recipes/po/box/cedex/fr.ts +77 -0
  141. package/lib/recipes/po/box/cedex/phrases.ts +109 -0
  142. package/lib/recipes/po/box/cedex/recipe.ts +215 -0
  143. package/lib/recipes/po/box/cedex/sources.ts +189 -0
  144. package/lib/recipes/po/box/cedex/types.ts +35 -0
  145. package/lib/recipes/po/box/cedex/us.ts +74 -0
  146. package/lib/recipes/po/box/cedex/vocabulary.ts +106 -0
  147. package/lib/recipes/po/box/cedex.ts +9 -0
  148. package/lib/recipes/po/box.ts +149 -0
  149. package/lib/recipes/scaffold.ts +258 -182
  150. package/lib/recipes/sources.ts +399 -0
  151. package/lib/recipes/street/affix.ts +707 -0
  152. package/lib/recipes/street/bare.ts +115 -0
  153. package/lib/recipes/street.ts +32 -8
  154. package/lib/recipes/sub/venue/context.ts +156 -0
  155. package/lib/recipes/sub/venue/render.ts +170 -0
  156. package/lib/recipes/sub/venue/sources.ts +588 -0
  157. package/lib/recipes/sub/venue.ts +801 -0
  158. package/lib/recipes/trailing-region.ts +70 -81
  159. package/lib/recipes/unit/sources.ts +44 -0
  160. package/lib/recipes/unit.ts +102 -90
  161. package/lib/recipes.ts +106 -0
  162. package/lib/registers.ts +278 -0
  163. package/lib/ro/adapters/retea-scolara/adapter.ts +264 -0
  164. package/lib/ro/tools/fetch/retea-scolara.ts +187 -0
  165. package/lib/runner.ts +220 -84
  166. package/lib/sg/recipes/register.ts +264 -0
  167. package/lib/sg/tools/fetch/acra.ts +174 -0
  168. package/lib/si/recipes/bare-village.ts +116 -0
  169. package/lib/sk/adapters/inspire/adapter.ts +395 -0
  170. package/lib/sk/tools/fetch/inspire.ts +402 -0
  171. package/lib/source-register/effective-manifest.ts +659 -0
  172. package/lib/source-register/register.ts +539 -0
  173. package/lib/source-register/training-manifest.ts +218 -0
  174. package/lib/source-register/types.ts +590 -0
  175. package/lib/source-register.ts +71 -0
  176. package/lib/south-asia/recipes/register.ts +233 -0
  177. package/lib/subvenue/harvest.ts +251 -0
  178. package/lib/subvenue/promotions.ts +293 -0
  179. package/lib/subvenue/surfaces.ts +94 -0
  180. package/lib/subvenue/table.ts +264 -0
  181. package/lib/surfaces/locale.ts +246 -0
  182. package/lib/synthesizers/anchor-absorption.ts +55 -91
  183. package/lib/synthesizers/boundary-stress.ts +49 -131
  184. package/lib/synthesizers/house-venue.ts +44 -102
  185. package/lib/synthesizers/intersection.ts +37 -26
  186. package/lib/synthesizers/no-street.ts +70 -119
  187. package/lib/synthesizers/po-box.ts +90 -105
  188. package/lib/synthesizers/street.ts +47 -35
  189. package/lib/synthesizers/utils.ts +65 -219
  190. package/lib/test-kit/corpus-recipe.ts +45 -28
  191. package/lib/test-kit.ts +116 -0
  192. package/lib/tools/align-canonical.ts +64 -0
  193. package/lib/tools/audit.ts +114 -118
  194. package/lib/tools/corpus-stats.ts +46 -32
  195. package/lib/tools/fetch/atom.ts +164 -0
  196. package/lib/tools/fetch/cordis.ts +318 -0
  197. package/lib/tools/fetch/download/manifest.ts +114 -0
  198. package/lib/tools/fetch/download/network.ts +250 -0
  199. package/lib/tools/fetch/download/retry.ts +174 -0
  200. package/lib/tools/fetch/download.ts +4 -471
  201. package/lib/tools/fetch/geonames/dump.ts +275 -0
  202. package/lib/tools/fetch/geonames/postal.ts +145 -0
  203. package/lib/tools/fetch/gleif.ts +360 -0
  204. package/lib/tools/fetch/header.ts +69 -0
  205. package/lib/tools/fetch/inspire-addresses.ts +495 -0
  206. package/lib/tools/fetch/openaddresses.ts +20 -109
  207. package/lib/tools/fetch/ourairports.ts +16 -49
  208. package/lib/tools/fetch/ppd.ts +10 -10
  209. package/lib/tools/fetch/vlaanderen-ad.ts +435 -0
  210. package/lib/tools/fetch/wfs-harvest.ts +943 -0
  211. package/lib/tools/fetch/wikidata-subvenue.ts +43 -143
  212. package/lib/tools/fetch/zip-archive.ts +100 -0
  213. package/lib/tools/fetch.ts +143 -0
  214. package/lib/tools/golden/expand.ts +605 -0
  215. package/lib/tools/golden/promote.ts +349 -0
  216. package/lib/tools/golden/relabel-street/directory.ts +367 -0
  217. package/lib/tools/golden/relabel-street/row.ts +283 -0
  218. package/lib/tools/golden/relabel-street.ts +9 -0
  219. package/lib/tools/ingest-csv.ts +45 -50
  220. package/lib/tools/jsonl-to-parquet.ts +59 -98
  221. package/lib/tools/lint/recipe-output/vocab.ts +366 -0
  222. package/lib/tools/lint/recipe-output.ts +482 -0
  223. package/lib/tools/migrate/overlay-parquet.ts +173 -0
  224. package/lib/tools/migrate/recipe-output.ts +153 -0
  225. package/lib/tools/migrate/source-names.ts +161 -0
  226. package/lib/tools/overlay/kryptonite.ts +144 -0
  227. package/lib/tools/overlay/manifest.ts +407 -0
  228. package/lib/tools/overlay/merge-source.ts +138 -0
  229. package/lib/tools/overlay/split-slice.ts +144 -0
  230. package/lib/tools/overlay/translit.ts +234 -0
  231. package/lib/tools/overture-subvenue.ts +18 -91
  232. package/lib/tools/postcode-triples.ts +362 -167
  233. package/lib/tools/source-register/build.ts +819 -0
  234. package/lib/tools/sub/venue/head-nouns.ts +208 -0
  235. package/lib/tools/sub/venue/lexicon.ts +394 -0
  236. package/lib/tools/sub/venue/wikidata.ts +88 -0
  237. package/lib/tools.ts +31 -0
  238. package/lib/tw/tools/fetch/gcis.ts +181 -0
  239. package/lib/types.ts +304 -101
  240. package/lib/us/adapters/fcc-bdc/adapter.ts +158 -0
  241. package/lib/us/adapters/state/hi-schools/adapter.ts +171 -0
  242. package/lib/us/adapters/state/hi-schools/workbook.ts +40 -0
  243. package/lib/us/adapters/state/ia-contractors/adapter.ts +148 -0
  244. package/lib/us/adapters/state/ny-notaries/adapter.ts +132 -0
  245. package/lib/us/adapters/state/tx-notaries/adapter.ts +155 -0
  246. package/lib/us/adapters/tiger/adapter.ts +225 -0
  247. package/lib/us/adapters/tiger/street-decompose.ts +73 -0
  248. package/lib/us/adapters/usgov/hrsa-fqhc/adapter.ts +171 -0
  249. package/lib/us/adapters/usgov/imls-pls/adapter.ts +140 -0
  250. package/lib/us/adapters/usgov/irs-bmf/adapter.ts +154 -0
  251. package/lib/us/adapters/usgov/nad/adapter.ts +263 -0
  252. package/lib/us/adapters/usgov/nppes/adapter.ts +180 -0
  253. package/lib/us/adapters/usgov/samhsa-treatment-locator/adapter.ts +195 -0
  254. package/lib/us/fips-state.ts +122 -0
  255. package/lib/us/tools/fetch/hrsa.ts +58 -0
  256. package/lib/us/tools/fetch/imls-pls.ts +131 -0
  257. package/lib/us/tools/fetch/nad.ts +359 -0
  258. package/lib/us/tools/fetch/nppes.ts +153 -0
  259. package/lib/us/tools/fetch/state/hi-schools.ts +167 -0
  260. package/lib/us/tools/fetch/state/sources.ts +146 -0
  261. package/lib/us/tools/fetch/tiger-full.ts +256 -0
  262. package/lib/utils/align.ts +43 -53
  263. package/lib/utils/cooccurrence-stats.ts +101 -0
  264. package/lib/utils/golden.ts +39 -50
  265. package/lib/utils/license.ts +238 -26
  266. package/lib/utils/split.ts +205 -88
  267. package/lib/utils/tokenize.ts +22 -34
  268. package/lib/utils/wof-json.ts +134 -87
  269. package/lib/utils.ts +13 -0
  270. package/lib/ve/recipes/reviewed-postcode-tail.ts +217 -0
  271. package/out/adapters/cordis/adapter.d.ts +324 -0
  272. package/out/adapters/cordis/adapter.d.ts.map +1 -0
  273. package/out/adapters/cordis/adapter.js +616 -0
  274. package/out/adapters/cordis/adapter.js.map +1 -0
  275. package/out/adapters/dedup-key.d.ts +30 -0
  276. package/out/adapters/dedup-key.d.ts.map +1 -0
  277. package/out/adapters/dedup-key.js +35 -0
  278. package/out/adapters/dedup-key.js.map +1 -0
  279. package/out/adapters/errors.d.ts +17 -0
  280. package/out/adapters/errors.d.ts.map +1 -0
  281. package/out/adapters/errors.js +20 -0
  282. package/out/adapters/errors.js.map +1 -0
  283. package/out/adapters/geonames/adapter.d.ts +26 -28
  284. package/out/adapters/geonames/adapter.d.ts.map +1 -1
  285. package/out/adapters/geonames/adapter.js +40 -50
  286. package/out/adapters/geonames/adapter.js.map +1 -1
  287. package/out/adapters/geonames/postal/adapter.d.ts +41 -0
  288. package/out/adapters/geonames/postal/adapter.d.ts.map +1 -0
  289. package/out/adapters/geonames/postal/adapter.js +102 -0
  290. package/out/adapters/geonames/postal/adapter.js.map +1 -0
  291. package/out/adapters/gleif/adapter.d.ts +293 -0
  292. package/out/adapters/gleif/adapter.d.ts.map +1 -0
  293. package/out/adapters/gleif/adapter.js +684 -0
  294. package/out/adapters/gleif/adapter.js.map +1 -0
  295. package/out/adapters/libpostal-dictionary.d.ts +22 -0
  296. package/out/adapters/libpostal-dictionary.d.ts.map +1 -0
  297. package/out/adapters/libpostal-dictionary.js +36 -0
  298. package/out/adapters/libpostal-dictionary.js.map +1 -0
  299. package/out/adapters/openaddresses/adapter.d.ts +28 -43
  300. package/out/adapters/openaddresses/adapter.d.ts.map +1 -1
  301. package/out/adapters/openaddresses/adapter.js +37 -51
  302. package/out/adapters/openaddresses/adapter.js.map +1 -1
  303. package/out/adapters/osm/adapter.d.ts +101 -0
  304. package/out/adapters/osm/adapter.d.ts.map +1 -0
  305. package/out/adapters/osm/adapter.js +260 -0
  306. package/out/adapters/osm/adapter.js.map +1 -0
  307. package/out/adapters/overture/adapter.d.ts +14 -30
  308. package/out/adapters/overture/adapter.d.ts.map +1 -1
  309. package/out/adapters/overture/adapter.js +57 -41
  310. package/out/adapters/overture/adapter.js.map +1 -1
  311. package/out/adapters/po-box/adapter.d.ts +63 -0
  312. package/out/adapters/po-box/adapter.d.ts.map +1 -0
  313. package/out/adapters/po-box/adapter.js +139 -0
  314. package/out/adapters/po-box/adapter.js.map +1 -0
  315. package/out/adapters/registry.d.ts +55 -0
  316. package/out/adapters/registry.d.ts.map +1 -0
  317. package/out/adapters/registry.js +43 -0
  318. package/out/adapters/registry.js.map +1 -0
  319. package/out/adapters/sha256-stream.d.ts +26 -0
  320. package/out/adapters/sha256-stream.d.ts.map +1 -0
  321. package/out/adapters/sha256-stream.js +34 -0
  322. package/out/adapters/sha256-stream.js.map +1 -0
  323. package/out/adapters/source-id.d.ts +33 -0
  324. package/out/adapters/source-id.d.ts.map +1 -0
  325. package/out/adapters/source-id.js +42 -0
  326. package/out/adapters/source-id.js.map +1 -0
  327. package/out/adapters/street-line.d.ts +102 -0
  328. package/out/adapters/street-line.d.ts.map +1 -0
  329. package/out/adapters/street-line.js +117 -0
  330. package/out/adapters/street-line.js.map +1 -0
  331. package/out/adapters/wof/admin/json/adapter.d.ts +88 -0
  332. package/out/adapters/wof/admin/json/adapter.d.ts.map +1 -0
  333. package/out/adapters/wof/admin/json/adapter.js +220 -0
  334. package/out/adapters/wof/admin/json/adapter.js.map +1 -0
  335. package/out/adapters/wof/json-rows.d.ts +89 -0
  336. package/out/adapters/wof/json-rows.d.ts.map +1 -0
  337. package/out/adapters/wof/json-rows.js +135 -0
  338. package/out/adapters/wof/json-rows.js.map +1 -0
  339. package/out/adapters/wof/postalcode-json/adapter.d.ts +49 -0
  340. package/out/adapters/wof/postalcode-json/adapter.d.ts.map +1 -0
  341. package/out/adapters/wof/postalcode-json/adapter.js +165 -0
  342. package/out/adapters/wof/postalcode-json/adapter.js.map +1 -0
  343. package/out/adapters.d.ts +75 -0
  344. package/out/adapters.d.ts.map +1 -0
  345. package/out/adapters.js +167 -0
  346. package/out/adapters.js.map +1 -0
  347. package/out/au/adapters/gnaf/adapter.d.ts +37 -0
  348. package/out/au/adapters/gnaf/adapter.d.ts.map +1 -0
  349. package/out/au/adapters/gnaf/adapter.js +119 -0
  350. package/out/au/adapters/gnaf/adapter.js.map +1 -0
  351. package/out/au/adapters/gnaf/assemble.d.ts +54 -0
  352. package/out/au/adapters/gnaf/assemble.d.ts.map +1 -0
  353. package/out/au/adapters/gnaf/assemble.js +134 -0
  354. package/out/au/adapters/gnaf/assemble.js.map +1 -0
  355. package/out/be/adapters/brussels/adapter.d.ts +212 -0
  356. package/out/be/adapters/brussels/adapter.d.ts.map +1 -0
  357. package/out/be/adapters/brussels/adapter.js +435 -0
  358. package/out/be/adapters/brussels/adapter.js.map +1 -0
  359. package/out/be/adapters/vlaanderen/adapter.d.ts +233 -0
  360. package/out/be/adapters/vlaanderen/adapter.d.ts.map +1 -0
  361. package/out/be/adapters/vlaanderen/adapter.js +416 -0
  362. package/out/be/adapters/vlaanderen/adapter.js.map +1 -0
  363. package/out/be/adapters/wallonie/adapter.d.ts +196 -0
  364. package/out/be/adapters/wallonie/adapter.d.ts.map +1 -0
  365. package/out/be/adapters/wallonie/adapter.js +437 -0
  366. package/out/be/adapters/wallonie/adapter.js.map +1 -0
  367. package/out/be/tools/fetch/brussels.d.ts +119 -0
  368. package/out/be/tools/fetch/brussels.d.ts.map +1 -0
  369. package/out/be/tools/fetch/brussels.js +146 -0
  370. package/out/be/tools/fetch/brussels.js.map +1 -0
  371. package/out/be/tools/fetch/wallonie.d.ts +119 -0
  372. package/out/be/tools/fetch/wallonie.d.ts.map +1 -0
  373. package/out/be/tools/fetch/wallonie.js +167 -0
  374. package/out/be/tools/fetch/wallonie.js.map +1 -0
  375. package/out/build/adapters.d.ts +33 -0
  376. package/out/build/adapters.d.ts.map +1 -0
  377. package/out/build/adapters.js +68 -0
  378. package/out/build/adapters.js.map +1 -0
  379. package/out/build/align.d.ts +73 -0
  380. package/out/build/align.d.ts.map +1 -0
  381. package/out/build/align.js +226 -0
  382. package/out/build/align.js.map +1 -0
  383. package/out/build/checkpoint.d.ts +94 -0
  384. package/out/build/checkpoint.d.ts.map +1 -0
  385. package/out/build/checkpoint.js +59 -0
  386. package/out/build/checkpoint.js.map +1 -0
  387. package/out/build/eligibility.d.ts +47 -0
  388. package/out/build/eligibility.d.ts.map +1 -0
  389. package/out/build/eligibility.js +80 -0
  390. package/out/build/eligibility.js.map +1 -0
  391. package/out/build/heap.d.ts +28 -0
  392. package/out/build/heap.d.ts.map +1 -0
  393. package/out/build/heap.js +47 -0
  394. package/out/build/heap.js.map +1 -0
  395. package/out/build/inputs.d.ts +52 -0
  396. package/out/build/inputs.d.ts.map +1 -0
  397. package/out/build/inputs.js +49 -0
  398. package/out/build/inputs.js.map +1 -0
  399. package/out/build/rows.d.ts +16 -0
  400. package/out/build/rows.d.ts.map +1 -0
  401. package/out/build/rows.js +19 -0
  402. package/out/build/rows.js.map +1 -0
  403. package/out/build/types.d.ts +220 -0
  404. package/out/build/types.d.ts.map +1 -0
  405. package/out/build/types.js +34 -0
  406. package/out/build/types.js.map +1 -0
  407. package/out/build.d.ts +6 -121
  408. package/out/build.d.ts.map +1 -1
  409. package/out/build.js +112 -207
  410. package/out/build.js.map +1 -1
  411. package/out/cn/recipes/organizational-units.d.ts +19 -0
  412. package/out/cn/recipes/organizational-units.d.ts.map +1 -0
  413. package/out/cn/recipes/organizational-units.js +138 -0
  414. package/out/cn/recipes/organizational-units.js.map +1 -0
  415. package/out/cz/adapters/cuzk/adapter.d.ts +52 -0
  416. package/out/cz/adapters/cuzk/adapter.d.ts.map +1 -0
  417. package/out/cz/adapters/cuzk/adapter.js +266 -0
  418. package/out/cz/adapters/cuzk/adapter.js.map +1 -0
  419. package/out/cz/recipes/pcfirst-preposition.d.ts +18 -0
  420. package/out/cz/recipes/pcfirst-preposition.d.ts.map +1 -0
  421. package/out/cz/recipes/pcfirst-preposition.js +110 -0
  422. package/out/cz/recipes/pcfirst-preposition.js.map +1 -0
  423. package/out/cz/tools/fetch/cuzk.d.ts +272 -0
  424. package/out/cz/tools/fetch/cuzk.d.ts.map +1 -0
  425. package/out/cz/tools/fetch/cuzk.js +446 -0
  426. package/out/cz/tools/fetch/cuzk.js.map +1 -0
  427. package/out/de/recipes/locale.d.ts +42 -0
  428. package/out/de/recipes/locale.d.ts.map +1 -0
  429. package/out/de/recipes/locale.js +299 -0
  430. package/out/de/recipes/locale.js.map +1 -0
  431. package/out/directory.d.ts +20 -0
  432. package/out/directory.d.ts.map +1 -0
  433. package/out/directory.js +27 -0
  434. package/out/directory.js.map +1 -0
  435. package/out/dk/adapters/inspire/adapter.d.ts +154 -0
  436. package/out/dk/adapters/inspire/adapter.d.ts.map +1 -0
  437. package/out/dk/adapters/inspire/adapter.js +258 -0
  438. package/out/dk/adapters/inspire/adapter.js.map +1 -0
  439. package/out/dk/tools/fetch/inspire.d.ts +100 -0
  440. package/out/dk/tools/fetch/inspire.d.ts.map +1 -0
  441. package/out/dk/tools/fetch/inspire.js +230 -0
  442. package/out/dk/tools/fetch/inspire.js.map +1 -0
  443. package/out/ee/adapters/ads/adapter.d.ts +109 -0
  444. package/out/ee/adapters/ads/adapter.d.ts.map +1 -0
  445. package/out/ee/adapters/ads/adapter.js +191 -0
  446. package/out/ee/adapters/ads/adapter.js.map +1 -0
  447. package/out/ee/tools/fetch/ads.d.ts +123 -0
  448. package/out/ee/tools/fetch/ads.d.ts.map +1 -0
  449. package/out/ee/tools/fetch/ads.js +195 -0
  450. package/out/ee/tools/fetch/ads.js.map +1 -0
  451. package/out/env.d.ts +7 -3
  452. package/out/env.d.ts.map +1 -1
  453. package/out/env.js +6 -2
  454. package/out/env.js.map +1 -1
  455. package/out/es/adapters/bizkaia/adapter.d.ts +143 -0
  456. package/out/es/adapters/bizkaia/adapter.d.ts.map +1 -0
  457. package/out/es/adapters/bizkaia/adapter.js +332 -0
  458. package/out/es/adapters/bizkaia/adapter.js.map +1 -0
  459. package/out/es/adapters/catastro/adapter.d.ts +104 -0
  460. package/out/es/adapters/catastro/adapter.d.ts.map +1 -0
  461. package/out/es/adapters/catastro/adapter.js +288 -0
  462. package/out/es/adapters/catastro/adapter.js.map +1 -0
  463. package/out/es/adapters/gipuzkoa/adapter.d.ts +91 -0
  464. package/out/es/adapters/gipuzkoa/adapter.d.ts.map +1 -0
  465. package/out/es/adapters/gipuzkoa/adapter.js +225 -0
  466. package/out/es/adapters/gipuzkoa/adapter.js.map +1 -0
  467. package/out/es/adapters/navarra/adapter.d.ts +105 -0
  468. package/out/es/adapters/navarra/adapter.d.ts.map +1 -0
  469. package/out/es/adapters/navarra/adapter.js +241 -0
  470. package/out/es/adapters/navarra/adapter.js.map +1 -0
  471. package/out/es/cadastre.d.ts +109 -0
  472. package/out/es/cadastre.d.ts.map +1 -0
  473. package/out/es/cadastre.js +130 -0
  474. package/out/es/cadastre.js.map +1 -0
  475. package/out/es/tools/fetch/bizkaia.d.ts +278 -0
  476. package/out/es/tools/fetch/bizkaia.d.ts.map +1 -0
  477. package/out/es/tools/fetch/bizkaia.js +477 -0
  478. package/out/es/tools/fetch/bizkaia.js.map +1 -0
  479. package/out/es/tools/fetch/catastro.d.ts +272 -0
  480. package/out/es/tools/fetch/catastro.d.ts.map +1 -0
  481. package/out/es/tools/fetch/catastro.js +486 -0
  482. package/out/es/tools/fetch/catastro.js.map +1 -0
  483. package/out/es/tools/fetch/gipuzkoa.d.ts +162 -0
  484. package/out/es/tools/fetch/gipuzkoa.d.ts.map +1 -0
  485. package/out/es/tools/fetch/gipuzkoa.js +209 -0
  486. package/out/es/tools/fetch/gipuzkoa.js.map +1 -0
  487. package/out/es/tools/fetch/navarra.d.ts +189 -0
  488. package/out/es/tools/fetch/navarra.d.ts.map +1 -0
  489. package/out/es/tools/fetch/navarra.js +316 -0
  490. package/out/es/tools/fetch/navarra.js.map +1 -0
  491. package/out/fi/adapters/ryhti/adapter.d.ts +115 -0
  492. package/out/fi/adapters/ryhti/adapter.d.ts.map +1 -0
  493. package/out/fi/adapters/ryhti/adapter.js +244 -0
  494. package/out/fi/adapters/ryhti/adapter.js.map +1 -0
  495. package/out/fi/tools/fetch/ryhti.d.ts +206 -0
  496. package/out/fi/tools/fetch/ryhti.d.ts.map +1 -0
  497. package/out/fi/tools/fetch/ryhti.js +327 -0
  498. package/out/fi/tools/fetch/ryhti.js.map +1 -0
  499. package/out/fingerprints.d.ts +68 -0
  500. package/out/fingerprints.d.ts.map +1 -0
  501. package/out/fingerprints.js +130 -0
  502. package/out/fingerprints.js.map +1 -0
  503. package/out/fr/adapters/annuaire-education/adapter.d.ts +236 -0
  504. package/out/fr/adapters/annuaire-education/adapter.d.ts.map +1 -0
  505. package/out/fr/adapters/annuaire-education/adapter.js +475 -0
  506. package/out/fr/adapters/annuaire-education/adapter.js.map +1 -0
  507. package/out/fr/adapters/ban/adapter.d.ts +38 -0
  508. package/out/fr/adapters/ban/adapter.d.ts.map +1 -0
  509. package/out/fr/adapters/ban/adapter.js +134 -0
  510. package/out/fr/adapters/ban/adapter.js.map +1 -0
  511. package/out/fr/adapters/finess/adapter.d.ts +276 -0
  512. package/out/fr/adapters/finess/adapter.d.ts.map +1 -0
  513. package/out/fr/adapters/finess/adapter.js +519 -0
  514. package/out/fr/adapters/finess/adapter.js.map +1 -0
  515. package/out/fr/adapters/finess/postal-lines.d.ts +61 -0
  516. package/out/fr/adapters/finess/postal-lines.d.ts.map +1 -0
  517. package/out/fr/adapters/finess/postal-lines.js +114 -0
  518. package/out/fr/adapters/finess/postal-lines.js.map +1 -0
  519. package/out/fr/adapters/finess/voie-type.d.ts +77 -0
  520. package/out/fr/adapters/finess/voie-type.d.ts.map +1 -0
  521. package/out/fr/adapters/finess/voie-type.js +172 -0
  522. package/out/fr/adapters/finess/voie-type.js.map +1 -0
  523. package/out/fr/insee-country.d.ts +45 -0
  524. package/out/fr/insee-country.d.ts.map +1 -0
  525. package/out/fr/insee-country.js +60 -0
  526. package/out/fr/insee-country.js.map +1 -0
  527. package/out/fr/recipes/admin-split.d.ts +15 -0
  528. package/out/fr/recipes/admin-split.d.ts.map +1 -0
  529. package/out/fr/recipes/admin-split.js +170 -0
  530. package/out/fr/recipes/admin-split.js.map +1 -0
  531. package/out/fr/recipes/bare-street.d.ts +13 -0
  532. package/out/fr/recipes/bare-street.d.ts.map +1 -0
  533. package/out/fr/recipes/bare-street.js +129 -0
  534. package/out/fr/recipes/bare-street.js.map +1 -0
  535. package/out/fr/recipes/fragment.d.ts +18 -0
  536. package/out/fr/recipes/fragment.d.ts.map +1 -0
  537. package/out/fr/recipes/fragment.js +197 -0
  538. package/out/fr/recipes/fragment.js.map +1 -0
  539. package/out/fr/recipes/lieudit.d.ts +30 -0
  540. package/out/fr/recipes/lieudit.d.ts.map +1 -0
  541. package/out/fr/recipes/lieudit.js +231 -0
  542. package/out/fr/recipes/lieudit.js.map +1 -0
  543. package/out/fr/recipes/order.d.ts +15 -0
  544. package/out/fr/recipes/order.d.ts.map +1 -0
  545. package/out/fr/recipes/order.js +171 -0
  546. package/out/fr/recipes/order.js.map +1 -0
  547. package/out/fr/street-decompose.d.ts +29 -0
  548. package/out/fr/street-decompose.d.ts.map +1 -0
  549. package/out/fr/street-decompose.js +52 -0
  550. package/out/fr/street-decompose.js.map +1 -0
  551. package/out/fr/tools/fetch/annuaire-education.d.ts +130 -0
  552. package/out/fr/tools/fetch/annuaire-education.d.ts.map +1 -0
  553. package/out/fr/tools/fetch/annuaire-education.js +196 -0
  554. package/out/fr/tools/fetch/annuaire-education.js.map +1 -0
  555. package/out/fr/tools/fetch/ban.d.ts +33 -0
  556. package/out/fr/tools/fetch/ban.d.ts.map +1 -0
  557. package/out/fr/tools/fetch/ban.js +248 -0
  558. package/out/fr/tools/fetch/ban.js.map +1 -0
  559. package/out/fr/tools/fetch/finess.d.ts +145 -0
  560. package/out/fr/tools/fetch/finess.d.ts.map +1 -0
  561. package/out/fr/tools/fetch/finess.js +228 -0
  562. package/out/fr/tools/fetch/finess.js.map +1 -0
  563. package/out/gauntlet-inputs.d.ts +42 -0
  564. package/out/gauntlet-inputs.d.ts.map +1 -0
  565. package/out/gauntlet-inputs.js +78 -0
  566. package/out/gauntlet-inputs.js.map +1 -0
  567. package/out/index.d.ts +10 -4
  568. package/out/index.d.ts.map +1 -1
  569. package/out/index.js +10 -4
  570. package/out/index.js.map +1 -1
  571. package/out/inspire/address.d.ts +251 -0
  572. package/out/inspire/address.d.ts.map +1 -0
  573. package/out/inspire/address.js +384 -0
  574. package/out/inspire/address.js.map +1 -0
  575. package/out/inspire/archive.d.ts +36 -0
  576. package/out/inspire/archive.d.ts.map +1 -0
  577. package/out/inspire/archive.js +42 -0
  578. package/out/inspire/archive.js.map +1 -0
  579. package/out/inspire/errors.d.ts +55 -0
  580. package/out/inspire/errors.d.ts.map +1 -0
  581. package/out/inspire/errors.js +64 -0
  582. package/out/inspire/errors.js.map +1 -0
  583. package/out/inspire/stream.d.ts +137 -0
  584. package/out/inspire/stream.d.ts.map +1 -0
  585. package/out/inspire/stream.js +125 -0
  586. package/out/inspire/stream.js.map +1 -0
  587. package/out/international/recipes/locale.d.ts +90 -0
  588. package/out/international/recipes/locale.d.ts.map +1 -0
  589. package/out/international/recipes/locale.js +419 -0
  590. package/out/international/recipes/locale.js.map +1 -0
  591. package/out/it/adapters/anac/adapter.d.ts +267 -0
  592. package/out/it/adapters/anac/adapter.d.ts.map +1 -0
  593. package/out/it/adapters/anac/adapter.js +429 -0
  594. package/out/it/adapters/anac/adapter.js.map +1 -0
  595. package/out/it/tools/fetch/anac.d.ts +174 -0
  596. package/out/it/tools/fetch/anac.d.ts.map +1 -0
  597. package/out/it/tools/fetch/anac.js +272 -0
  598. package/out/it/tools/fetch/anac.js.map +1 -0
  599. package/out/jp/adapters/wof-admin/adapter.d.ts +68 -0
  600. package/out/jp/adapters/wof-admin/adapter.d.ts.map +1 -0
  601. package/out/jp/adapters/wof-admin/adapter.js +172 -0
  602. package/out/jp/adapters/wof-admin/adapter.js.map +1 -0
  603. package/out/jp/tools/fetch/houjin.d.ts +27 -0
  604. package/out/jp/tools/fetch/houjin.d.ts.map +1 -0
  605. package/out/jp/tools/fetch/houjin.js +106 -0
  606. package/out/jp/tools/fetch/houjin.js.map +1 -0
  607. package/out/kr/adapters/juso/label-rows.d.ts +62 -0
  608. package/out/kr/adapters/juso/label-rows.d.ts.map +1 -0
  609. package/out/kr/adapters/juso/label-rows.js +172 -0
  610. package/out/kr/adapters/juso/label-rows.js.map +1 -0
  611. package/out/kr/adapters/localdata/align.d.ts +31 -0
  612. package/out/kr/adapters/localdata/align.d.ts.map +1 -0
  613. package/out/kr/adapters/localdata/align.js +212 -0
  614. package/out/kr/adapters/localdata/align.js.map +1 -0
  615. package/out/kr/adapters/localdata/key-index.d.ts +62 -0
  616. package/out/kr/adapters/localdata/key-index.d.ts.map +1 -0
  617. package/out/kr/adapters/localdata/key-index.js +127 -0
  618. package/out/kr/adapters/localdata/key-index.js.map +1 -0
  619. package/out/kr/adapters/localdata/permit-rows.d.ts +73 -0
  620. package/out/kr/adapters/localdata/permit-rows.d.ts.map +1 -0
  621. package/out/kr/adapters/localdata/permit-rows.js +136 -0
  622. package/out/kr/adapters/localdata/permit-rows.js.map +1 -0
  623. package/out/kr/tools/fetch/juso.d.ts +33 -0
  624. package/out/kr/tools/fetch/juso.d.ts.map +1 -0
  625. package/out/kr/tools/fetch/juso.js +121 -0
  626. package/out/kr/tools/fetch/juso.js.map +1 -0
  627. package/out/kr/tools/fetch/localdata.d.ts +37 -0
  628. package/out/kr/tools/fetch/localdata.d.ts.map +1 -0
  629. package/out/kr/tools/fetch/localdata.js +147 -0
  630. package/out/kr/tools/fetch/localdata.js.map +1 -0
  631. package/out/lu/adapters/bd-adresses/adapter.d.ts +109 -0
  632. package/out/lu/adapters/bd-adresses/adapter.d.ts.map +1 -0
  633. package/out/lu/adapters/bd-adresses/adapter.js +196 -0
  634. package/out/lu/adapters/bd-adresses/adapter.js.map +1 -0
  635. package/out/lu/tools/fetch/bd-adresses.d.ts +163 -0
  636. package/out/lu/tools/fetch/bd-adresses.d.ts.map +1 -0
  637. package/out/lu/tools/fetch/bd-adresses.js +223 -0
  638. package/out/lu/tools/fetch/bd-adresses.js.map +1 -0
  639. package/out/lv/adapters/varis/adapter.d.ts +283 -0
  640. package/out/lv/adapters/varis/adapter.d.ts.map +1 -0
  641. package/out/lv/adapters/varis/adapter.js +404 -0
  642. package/out/lv/adapters/varis/adapter.js.map +1 -0
  643. package/out/lv/tools/fetch/varis.d.ts +80 -0
  644. package/out/lv/tools/fetch/varis.d.ts.map +1 -0
  645. package/out/lv/tools/fetch/varis.js +133 -0
  646. package/out/lv/tools/fetch/varis.js.map +1 -0
  647. package/out/nl/adapters/kadaster/adapter.d.ts +125 -0
  648. package/out/nl/adapters/kadaster/adapter.d.ts.map +1 -0
  649. package/out/nl/adapters/kadaster/adapter.js +310 -0
  650. package/out/nl/adapters/kadaster/adapter.js.map +1 -0
  651. package/out/nl/recipes/postcode.d.ts +24 -0
  652. package/out/nl/recipes/postcode.d.ts.map +1 -0
  653. package/out/nl/recipes/postcode.js +121 -0
  654. package/out/nl/recipes/postcode.js.map +1 -0
  655. package/out/nl/tools/fetch/kadaster.d.ts +155 -0
  656. package/out/nl/tools/fetch/kadaster.d.ts.map +1 -0
  657. package/out/nl/tools/fetch/kadaster.js +179 -0
  658. package/out/nl/tools/fetch/kadaster.js.map +1 -0
  659. package/out/no/adapters/matrikkelen/adapter.d.ts +44 -0
  660. package/out/no/adapters/matrikkelen/adapter.d.ts.map +1 -0
  661. package/out/no/adapters/matrikkelen/adapter.js +143 -0
  662. package/out/no/adapters/matrikkelen/adapter.js.map +1 -0
  663. package/out/no/recipes/fragment.d.ts +11 -0
  664. package/out/no/recipes/fragment.d.ts.map +1 -0
  665. package/out/no/recipes/fragment.js +149 -0
  666. package/out/no/recipes/fragment.js.map +1 -0
  667. package/out/no/recipes/street/led.d.ts +21 -0
  668. package/out/no/recipes/street/led.d.ts.map +1 -0
  669. package/out/no/recipes/street/led.js +124 -0
  670. package/out/no/recipes/street/led.js.map +1 -0
  671. package/out/no/recipes/street.d.ts +19 -0
  672. package/out/no/recipes/street.d.ts.map +1 -0
  673. package/out/no/recipes/street.js +88 -0
  674. package/out/no/recipes/street.js.map +1 -0
  675. package/out/no/tools/fetch/matrikkelen.d.ts +251 -0
  676. package/out/no/tools/fetch/matrikkelen.d.ts.map +1 -0
  677. package/out/no/tools/fetch/matrikkelen.js +345 -0
  678. package/out/no/tools/fetch/matrikkelen.js.map +1 -0
  679. package/out/parquet/duckdb.d.ts +100 -0
  680. package/out/parquet/duckdb.d.ts.map +1 -0
  681. package/out/parquet/duckdb.js +92 -0
  682. package/out/parquet/duckdb.js.map +1 -0
  683. package/out/parquet/readers.d.ts +44 -0
  684. package/out/parquet/readers.d.ts.map +1 -0
  685. package/out/parquet/readers.js +69 -0
  686. package/out/parquet/readers.js.map +1 -0
  687. package/out/parquet/schema.d.ts +95 -0
  688. package/out/parquet/schema.d.ts.map +1 -0
  689. package/out/parquet/schema.js +157 -0
  690. package/out/parquet/schema.js.map +1 -0
  691. package/out/parquet/shuffle.d.ts +25 -0
  692. package/out/parquet/shuffle.d.ts.map +1 -0
  693. package/out/parquet/shuffle.js +44 -0
  694. package/out/parquet/shuffle.js.map +1 -0
  695. package/out/parquet/span-sql.d.ts +49 -0
  696. package/out/parquet/span-sql.d.ts.map +1 -0
  697. package/out/parquet/span-sql.js +53 -0
  698. package/out/parquet/span-sql.js.map +1 -0
  699. package/out/parquet/streams.d.ts +47 -0
  700. package/out/parquet/streams.d.ts.map +1 -0
  701. package/out/parquet/streams.js +78 -0
  702. package/out/parquet/streams.js.map +1 -0
  703. package/out/parquet/writers.d.ts +124 -0
  704. package/out/parquet/writers.d.ts.map +1 -0
  705. package/out/parquet/writers.js +251 -0
  706. package/out/parquet/writers.js.map +1 -0
  707. package/out/pl/adapters/emuia/adapter.d.ts +81 -0
  708. package/out/pl/adapters/emuia/adapter.d.ts.map +1 -0
  709. package/out/pl/adapters/emuia/adapter.js +178 -0
  710. package/out/pl/adapters/emuia/adapter.js.map +1 -0
  711. package/out/pl/tools/fetch/emuia.d.ts +165 -0
  712. package/out/pl/tools/fetch/emuia.d.ts.map +1 -0
  713. package/out/pl/tools/fetch/emuia.js +260 -0
  714. package/out/pl/tools/fetch/emuia.js.map +1 -0
  715. package/out/recipes/anchor-absorption.d.ts +9 -9
  716. package/out/recipes/anchor-absorption.d.ts.map +1 -1
  717. package/out/recipes/anchor-absorption.js +29 -19
  718. package/out/recipes/anchor-absorption.js.map +1 -1
  719. package/out/recipes/bare/country.d.ts +7 -0
  720. package/out/recipes/bare/country.d.ts.map +1 -0
  721. package/out/recipes/bare/country.js +77 -0
  722. package/out/recipes/bare/country.js.map +1 -0
  723. package/out/recipes/bare/postcode/eval.d.ts +29 -0
  724. package/out/recipes/bare/postcode/eval.d.ts.map +1 -0
  725. package/out/recipes/bare/postcode/eval.js +85 -0
  726. package/out/recipes/bare/postcode/eval.js.map +1 -0
  727. package/out/recipes/bare/postcode.d.ts +41 -0
  728. package/out/recipes/bare/postcode.d.ts.map +1 -0
  729. package/out/recipes/bare/postcode.js +279 -0
  730. package/out/recipes/bare/postcode.js.map +1 -0
  731. package/out/recipes/boundary-stress.d.ts +8 -8
  732. package/out/recipes/boundary-stress.d.ts.map +1 -1
  733. package/out/recipes/boundary-stress.js +36 -19
  734. package/out/recipes/boundary-stress.js.map +1 -1
  735. package/out/recipes/country-balanced.d.ts +3 -21
  736. package/out/recipes/country-balanced.d.ts.map +1 -1
  737. package/out/recipes/country-balanced.js +58 -76
  738. package/out/recipes/country-balanced.js.map +1 -1
  739. package/out/recipes/house-venue.d.ts +8 -6
  740. package/out/recipes/house-venue.d.ts.map +1 -1
  741. package/out/recipes/house-venue.js +29 -13
  742. package/out/recipes/house-venue.js.map +1 -1
  743. package/out/recipes/intersection.d.ts +20 -20
  744. package/out/recipes/intersection.d.ts.map +1 -1
  745. package/out/recipes/intersection.js +65 -53
  746. package/out/recipes/intersection.js.map +1 -1
  747. package/out/recipes/po/box/cedex/au-nz.d.ts +7 -0
  748. package/out/recipes/po/box/cedex/au-nz.d.ts.map +1 -0
  749. package/out/recipes/po/box/cedex/au-nz.js +56 -0
  750. package/out/recipes/po/box/cedex/au-nz.js.map +1 -0
  751. package/out/recipes/po/box/cedex/ca.d.ts +7 -0
  752. package/out/recipes/po/box/cedex/ca.d.ts.map +1 -0
  753. package/out/recipes/po/box/cedex/ca.js +38 -0
  754. package/out/recipes/po/box/cedex/ca.js.map +1 -0
  755. package/out/recipes/po/box/cedex/fr.d.ts +7 -0
  756. package/out/recipes/po/box/cedex/fr.d.ts.map +1 -0
  757. package/out/recipes/po/box/cedex/fr.js +57 -0
  758. package/out/recipes/po/box/cedex/fr.js.map +1 -0
  759. package/out/recipes/po/box/cedex/phrases.d.ts +8 -0
  760. package/out/recipes/po/box/cedex/phrases.d.ts.map +1 -0
  761. package/out/recipes/po/box/cedex/phrases.js +77 -0
  762. package/out/recipes/po/box/cedex/phrases.js.map +1 -0
  763. package/out/recipes/po/box/cedex/recipe.d.ts +9 -0
  764. package/out/recipes/po/box/cedex/recipe.d.ts.map +1 -0
  765. package/out/recipes/po/box/cedex/recipe.js +163 -0
  766. package/out/recipes/po/box/cedex/recipe.js.map +1 -0
  767. package/out/recipes/po/box/cedex/sources.d.ts +86 -0
  768. package/out/recipes/po/box/cedex/sources.d.ts.map +1 -0
  769. package/out/recipes/po/box/cedex/sources.js +143 -0
  770. package/out/recipes/po/box/cedex/sources.js.map +1 -0
  771. package/out/recipes/po/box/cedex/types.d.ts +31 -0
  772. package/out/recipes/po/box/cedex/types.d.ts.map +1 -0
  773. package/out/recipes/po/box/cedex/types.js +5 -0
  774. package/out/recipes/po/box/cedex/types.js.map +1 -0
  775. package/out/recipes/po/box/cedex/us.d.ts +7 -0
  776. package/out/recipes/po/box/cedex/us.d.ts.map +1 -0
  777. package/out/recipes/po/box/cedex/us.js +54 -0
  778. package/out/recipes/po/box/cedex/us.js.map +1 -0
  779. package/out/recipes/po/box/cedex/vocabulary.d.ts +68 -0
  780. package/out/recipes/po/box/cedex/vocabulary.d.ts.map +1 -0
  781. package/out/recipes/po/box/cedex/vocabulary.js +90 -0
  782. package/out/recipes/po/box/cedex/vocabulary.js.map +1 -0
  783. package/out/recipes/po/box/cedex.d.ts +9 -0
  784. package/out/recipes/po/box/cedex.d.ts.map +1 -0
  785. package/out/recipes/po/box/cedex.js +9 -0
  786. package/out/recipes/po/box/cedex.js.map +1 -0
  787. package/out/recipes/po/box.d.ts +18 -0
  788. package/out/recipes/po/box.d.ts.map +1 -0
  789. package/out/recipes/po/box.js +123 -0
  790. package/out/recipes/po/box.js.map +1 -0
  791. package/out/recipes/scaffold.d.ts +214 -121
  792. package/out/recipes/scaffold.d.ts.map +1 -1
  793. package/out/recipes/scaffold.js +78 -88
  794. package/out/recipes/scaffold.js.map +1 -1
  795. package/out/recipes/sources.d.ts +178 -0
  796. package/out/recipes/sources.d.ts.map +1 -0
  797. package/out/recipes/sources.js +348 -0
  798. package/out/recipes/sources.js.map +1 -0
  799. package/out/recipes/street/affix.d.ts +59 -0
  800. package/out/recipes/street/affix.d.ts.map +1 -0
  801. package/out/recipes/street/affix.js +477 -0
  802. package/out/recipes/street/affix.js.map +1 -0
  803. package/out/recipes/street/bare.d.ts +27 -0
  804. package/out/recipes/street/bare.d.ts.map +1 -0
  805. package/out/recipes/street/bare.js +98 -0
  806. package/out/recipes/street/bare.js.map +1 -0
  807. package/out/recipes/street.d.ts +6 -4
  808. package/out/recipes/street.d.ts.map +1 -1
  809. package/out/recipes/street.js +29 -8
  810. package/out/recipes/street.js.map +1 -1
  811. package/out/recipes/sub/venue/context.d.ts +32 -0
  812. package/out/recipes/sub/venue/context.d.ts.map +1 -0
  813. package/out/recipes/sub/venue/context.js +110 -0
  814. package/out/recipes/sub/venue/context.js.map +1 -0
  815. package/out/recipes/sub/venue/render.d.ts +58 -0
  816. package/out/recipes/sub/venue/render.d.ts.map +1 -0
  817. package/out/recipes/sub/venue/render.js +118 -0
  818. package/out/recipes/sub/venue/render.js.map +1 -0
  819. package/out/recipes/sub/venue/sources.d.ts +166 -0
  820. package/out/recipes/sub/venue/sources.d.ts.map +1 -0
  821. package/out/recipes/sub/venue/sources.js +419 -0
  822. package/out/recipes/sub/venue/sources.js.map +1 -0
  823. package/out/recipes/sub/venue.d.ts +176 -0
  824. package/out/recipes/sub/venue.d.ts.map +1 -0
  825. package/out/recipes/sub/venue.js +562 -0
  826. package/out/recipes/sub/venue.js.map +1 -0
  827. package/out/recipes/trailing-region.d.ts +9 -61
  828. package/out/recipes/trailing-region.d.ts.map +1 -1
  829. package/out/recipes/trailing-region.js +56 -81
  830. package/out/recipes/trailing-region.js.map +1 -1
  831. package/out/recipes/unit/sources.d.ts +28 -0
  832. package/out/recipes/unit/sources.d.ts.map +1 -0
  833. package/out/recipes/unit/sources.js +30 -0
  834. package/out/recipes/unit/sources.js.map +1 -0
  835. package/out/recipes/unit.d.ts +30 -17
  836. package/out/recipes/unit.d.ts.map +1 -1
  837. package/out/recipes/unit.js +90 -79
  838. package/out/recipes/unit.js.map +1 -1
  839. package/out/recipes.d.ts +26 -0
  840. package/out/recipes.d.ts.map +1 -0
  841. package/out/recipes.js +100 -0
  842. package/out/recipes.js.map +1 -0
  843. package/out/registers.d.ts +277 -0
  844. package/out/registers.d.ts.map +1 -0
  845. package/out/registers.js +273 -0
  846. package/out/registers.js.map +1 -0
  847. package/out/ro/adapters/retea-scolara/adapter.d.ts +114 -0
  848. package/out/ro/adapters/retea-scolara/adapter.d.ts.map +1 -0
  849. package/out/ro/adapters/retea-scolara/adapter.js +209 -0
  850. package/out/ro/adapters/retea-scolara/adapter.js.map +1 -0
  851. package/out/ro/tools/fetch/retea-scolara.d.ts +69 -0
  852. package/out/ro/tools/fetch/retea-scolara.d.ts.map +1 -0
  853. package/out/ro/tools/fetch/retea-scolara.js +117 -0
  854. package/out/ro/tools/fetch/retea-scolara.js.map +1 -0
  855. package/out/runner.d.ts +120 -60
  856. package/out/runner.d.ts.map +1 -1
  857. package/out/runner.js +130 -56
  858. package/out/runner.js.map +1 -1
  859. package/out/sg/recipes/register.d.ts +55 -0
  860. package/out/sg/recipes/register.d.ts.map +1 -0
  861. package/out/sg/recipes/register.js +206 -0
  862. package/out/sg/recipes/register.js.map +1 -0
  863. package/out/sg/tools/fetch/acra.d.ts +20 -0
  864. package/out/sg/tools/fetch/acra.d.ts.map +1 -0
  865. package/out/sg/tools/fetch/acra.js +123 -0
  866. package/out/sg/tools/fetch/acra.js.map +1 -0
  867. package/out/si/recipes/bare-village.d.ts +31 -0
  868. package/out/si/recipes/bare-village.d.ts.map +1 -0
  869. package/out/si/recipes/bare-village.js +103 -0
  870. package/out/si/recipes/bare-village.js.map +1 -0
  871. package/out/sk/adapters/inspire/adapter.d.ts +119 -0
  872. package/out/sk/adapters/inspire/adapter.d.ts.map +1 -0
  873. package/out/sk/adapters/inspire/adapter.js +318 -0
  874. package/out/sk/adapters/inspire/adapter.js.map +1 -0
  875. package/out/sk/tools/fetch/inspire.d.ts +195 -0
  876. package/out/sk/tools/fetch/inspire.d.ts.map +1 -0
  877. package/out/sk/tools/fetch/inspire.js +280 -0
  878. package/out/sk/tools/fetch/inspire.js.map +1 -0
  879. package/out/source-register/effective-manifest.d.ts +355 -0
  880. package/out/source-register/effective-manifest.d.ts.map +1 -0
  881. package/out/source-register/effective-manifest.js +355 -0
  882. package/out/source-register/effective-manifest.js.map +1 -0
  883. package/out/source-register/register.d.ts +79 -0
  884. package/out/source-register/register.d.ts.map +1 -0
  885. package/out/source-register/register.js +400 -0
  886. package/out/source-register/register.js.map +1 -0
  887. package/out/source-register/training-manifest.d.ts +111 -0
  888. package/out/source-register/training-manifest.d.ts.map +1 -0
  889. package/out/source-register/training-manifest.js +120 -0
  890. package/out/source-register/training-manifest.js.map +1 -0
  891. package/out/source-register/types.d.ts +539 -0
  892. package/out/source-register/types.d.ts.map +1 -0
  893. package/out/source-register/types.js +263 -0
  894. package/out/source-register/types.js.map +1 -0
  895. package/out/source-register.d.ts +19 -0
  896. package/out/source-register.d.ts.map +1 -0
  897. package/out/source-register.js +16 -0
  898. package/out/source-register.js.map +1 -0
  899. package/out/south-asia/recipes/register.d.ts +54 -0
  900. package/out/south-asia/recipes/register.d.ts.map +1 -0
  901. package/out/south-asia/recipes/register.js +174 -0
  902. package/out/south-asia/recipes/register.js.map +1 -0
  903. package/out/subvenue/harvest.d.ts +117 -0
  904. package/out/subvenue/harvest.d.ts.map +1 -0
  905. package/out/subvenue/harvest.js +172 -0
  906. package/out/subvenue/harvest.js.map +1 -0
  907. package/out/subvenue/promotions.d.ts +65 -0
  908. package/out/subvenue/promotions.d.ts.map +1 -0
  909. package/out/subvenue/promotions.js +226 -0
  910. package/out/subvenue/promotions.js.map +1 -0
  911. package/out/subvenue/surfaces.d.ts +39 -0
  912. package/out/subvenue/surfaces.d.ts.map +1 -0
  913. package/out/subvenue/surfaces.js +75 -0
  914. package/out/subvenue/surfaces.js.map +1 -0
  915. package/out/subvenue/table.d.ts +212 -0
  916. package/out/subvenue/table.d.ts.map +1 -0
  917. package/out/subvenue/table.js +94 -0
  918. package/out/subvenue/table.js.map +1 -0
  919. package/out/surfaces/locale.d.ts +113 -0
  920. package/out/surfaces/locale.d.ts.map +1 -0
  921. package/out/surfaces/locale.js +136 -0
  922. package/out/surfaces/locale.js.map +1 -0
  923. package/out/synthesizers/anchor-absorption.d.ts +22 -31
  924. package/out/synthesizers/anchor-absorption.d.ts.map +1 -1
  925. package/out/synthesizers/anchor-absorption.js +30 -85
  926. package/out/synthesizers/anchor-absorption.js.map +1 -1
  927. package/out/synthesizers/boundary-stress.d.ts +17 -48
  928. package/out/synthesizers/boundary-stress.d.ts.map +1 -1
  929. package/out/synthesizers/boundary-stress.js +27 -121
  930. package/out/synthesizers/boundary-stress.js.map +1 -1
  931. package/out/synthesizers/house-venue.d.ts +22 -25
  932. package/out/synthesizers/house-venue.d.ts.map +1 -1
  933. package/out/synthesizers/house-venue.js +28 -97
  934. package/out/synthesizers/house-venue.js.map +1 -1
  935. package/out/synthesizers/intersection.d.ts +10 -8
  936. package/out/synthesizers/intersection.d.ts.map +1 -1
  937. package/out/synthesizers/intersection.js +33 -26
  938. package/out/synthesizers/intersection.js.map +1 -1
  939. package/out/synthesizers/no-street.d.ts +7 -37
  940. package/out/synthesizers/no-street.d.ts.map +1 -1
  941. package/out/synthesizers/no-street.js +55 -111
  942. package/out/synthesizers/no-street.js.map +1 -1
  943. package/out/synthesizers/po-box.d.ts +46 -45
  944. package/out/synthesizers/po-box.d.ts.map +1 -1
  945. package/out/synthesizers/po-box.js +57 -97
  946. package/out/synthesizers/po-box.js.map +1 -1
  947. package/out/synthesizers/street.d.ts +18 -12
  948. package/out/synthesizers/street.d.ts.map +1 -1
  949. package/out/synthesizers/street.js +37 -30
  950. package/out/synthesizers/street.js.map +1 -1
  951. package/out/synthesizers/utils.d.ts +32 -129
  952. package/out/synthesizers/utils.d.ts.map +1 -1
  953. package/out/synthesizers/utils.js +54 -166
  954. package/out/synthesizers/utils.js.map +1 -1
  955. package/out/test-kit/corpus-recipe.d.ts +29 -23
  956. package/out/test-kit/corpus-recipe.d.ts.map +1 -1
  957. package/out/test-kit/corpus-recipe.js +28 -13
  958. package/out/test-kit/corpus-recipe.js.map +1 -1
  959. package/out/test-kit.d.ts +63 -0
  960. package/out/test-kit.d.ts.map +1 -0
  961. package/out/test-kit.js +88 -0
  962. package/out/test-kit.js.map +1 -0
  963. package/out/tools/align-canonical.d.ts +7 -0
  964. package/out/tools/align-canonical.d.ts.map +1 -0
  965. package/out/tools/align-canonical.js +52 -0
  966. package/out/tools/align-canonical.js.map +1 -0
  967. package/out/tools/audit.d.ts +18 -11
  968. package/out/tools/audit.d.ts.map +1 -1
  969. package/out/tools/audit.js +87 -95
  970. package/out/tools/audit.js.map +1 -1
  971. package/out/tools/corpus-stats.d.ts +24 -15
  972. package/out/tools/corpus-stats.d.ts.map +1 -1
  973. package/out/tools/corpus-stats.js +35 -31
  974. package/out/tools/corpus-stats.js.map +1 -1
  975. package/out/tools/fetch/atom.d.ts +115 -0
  976. package/out/tools/fetch/atom.d.ts.map +1 -0
  977. package/out/tools/fetch/atom.js +84 -0
  978. package/out/tools/fetch/atom.js.map +1 -0
  979. package/out/tools/fetch/cordis.d.ts +123 -0
  980. package/out/tools/fetch/cordis.d.ts.map +1 -0
  981. package/out/tools/fetch/cordis.js +208 -0
  982. package/out/tools/fetch/cordis.js.map +1 -0
  983. package/out/tools/fetch/download/manifest.d.ts +56 -0
  984. package/out/tools/fetch/download/manifest.d.ts.map +1 -0
  985. package/out/tools/fetch/download/manifest.js +81 -0
  986. package/out/tools/fetch/download/manifest.js.map +1 -0
  987. package/out/tools/fetch/download/network.d.ts +126 -0
  988. package/out/tools/fetch/download/network.d.ts.map +1 -0
  989. package/out/tools/fetch/download/network.js +140 -0
  990. package/out/tools/fetch/download/network.js.map +1 -0
  991. package/out/tools/fetch/download/retry.d.ts +46 -0
  992. package/out/tools/fetch/download/retry.d.ts.map +1 -0
  993. package/out/tools/fetch/download/retry.js +136 -0
  994. package/out/tools/fetch/download/retry.js.map +1 -0
  995. package/out/tools/fetch/download.d.ts +4 -176
  996. package/out/tools/fetch/download.d.ts.map +1 -1
  997. package/out/tools/fetch/download.js +4 -312
  998. package/out/tools/fetch/download.js.map +1 -1
  999. package/out/tools/fetch/geonames/dump.d.ts +109 -0
  1000. package/out/tools/fetch/geonames/dump.d.ts.map +1 -0
  1001. package/out/tools/fetch/geonames/dump.js +181 -0
  1002. package/out/tools/fetch/geonames/dump.js.map +1 -0
  1003. package/out/tools/fetch/geonames/postal.d.ts +41 -0
  1004. package/out/tools/fetch/geonames/postal.d.ts.map +1 -0
  1005. package/out/tools/fetch/geonames/postal.js +87 -0
  1006. package/out/tools/fetch/geonames/postal.js.map +1 -0
  1007. package/out/tools/fetch/gleif.d.ts +137 -0
  1008. package/out/tools/fetch/gleif.d.ts.map +1 -0
  1009. package/out/tools/fetch/gleif.js +220 -0
  1010. package/out/tools/fetch/gleif.js.map +1 -0
  1011. package/out/tools/fetch/header.d.ts +41 -0
  1012. package/out/tools/fetch/header.d.ts.map +1 -0
  1013. package/out/tools/fetch/header.js +59 -0
  1014. package/out/tools/fetch/header.js.map +1 -0
  1015. package/out/tools/fetch/inspire-addresses.d.ts +249 -0
  1016. package/out/tools/fetch/inspire-addresses.d.ts.map +1 -0
  1017. package/out/tools/fetch/inspire-addresses.js +276 -0
  1018. package/out/tools/fetch/inspire-addresses.js.map +1 -0
  1019. package/out/tools/fetch/openaddresses.d.ts +0 -3
  1020. package/out/tools/fetch/openaddresses.d.ts.map +1 -1
  1021. package/out/tools/fetch/openaddresses.js +18 -97
  1022. package/out/tools/fetch/openaddresses.js.map +1 -1
  1023. package/out/tools/fetch/ourairports.d.ts +5 -32
  1024. package/out/tools/fetch/ourairports.d.ts.map +1 -1
  1025. package/out/tools/fetch/ourairports.js +13 -46
  1026. package/out/tools/fetch/ourairports.js.map +1 -1
  1027. package/out/tools/fetch/ppd.d.ts +4 -3
  1028. package/out/tools/fetch/ppd.d.ts.map +1 -1
  1029. package/out/tools/fetch/ppd.js +10 -9
  1030. package/out/tools/fetch/ppd.js.map +1 -1
  1031. package/out/tools/fetch/vlaanderen-ad.d.ts +131 -0
  1032. package/out/tools/fetch/vlaanderen-ad.d.ts.map +1 -0
  1033. package/out/tools/fetch/vlaanderen-ad.js +293 -0
  1034. package/out/tools/fetch/vlaanderen-ad.js.map +1 -0
  1035. package/out/tools/fetch/wfs-harvest.d.ts +410 -0
  1036. package/out/tools/fetch/wfs-harvest.d.ts.map +1 -0
  1037. package/out/tools/fetch/wfs-harvest.js +522 -0
  1038. package/out/tools/fetch/wfs-harvest.js.map +1 -0
  1039. package/out/tools/fetch/wikidata-subvenue.d.ts +31 -99
  1040. package/out/tools/fetch/wikidata-subvenue.d.ts.map +1 -1
  1041. package/out/tools/fetch/wikidata-subvenue.js +26 -121
  1042. package/out/tools/fetch/wikidata-subvenue.js.map +1 -1
  1043. package/out/tools/fetch/zip-archive.d.ts +54 -0
  1044. package/out/tools/fetch/zip-archive.d.ts.map +1 -0
  1045. package/out/tools/fetch/zip-archive.js +58 -0
  1046. package/out/tools/fetch/zip-archive.js.map +1 -0
  1047. package/out/tools/fetch.d.ts +140 -0
  1048. package/out/tools/fetch.d.ts.map +1 -0
  1049. package/out/tools/fetch.js +136 -0
  1050. package/out/tools/fetch.js.map +1 -0
  1051. package/out/tools/golden/expand.d.ts +105 -0
  1052. package/out/tools/golden/expand.d.ts.map +1 -0
  1053. package/out/tools/golden/expand.js +420 -0
  1054. package/out/tools/golden/expand.js.map +1 -0
  1055. package/out/tools/golden/promote.d.ts +77 -0
  1056. package/out/tools/golden/promote.d.ts.map +1 -0
  1057. package/out/tools/golden/promote.js +248 -0
  1058. package/out/tools/golden/promote.js.map +1 -0
  1059. package/out/tools/golden/relabel-street/directory.d.ts +98 -0
  1060. package/out/tools/golden/relabel-street/directory.d.ts.map +1 -0
  1061. package/out/tools/golden/relabel-street/directory.js +227 -0
  1062. package/out/tools/golden/relabel-street/directory.js.map +1 -0
  1063. package/out/tools/golden/relabel-street/row.d.ts +69 -0
  1064. package/out/tools/golden/relabel-street/row.d.ts.map +1 -0
  1065. package/out/tools/golden/relabel-street/row.js +174 -0
  1066. package/out/tools/golden/relabel-street/row.js.map +1 -0
  1067. package/out/tools/golden/relabel-street.d.ts +9 -0
  1068. package/out/tools/golden/relabel-street.d.ts.map +1 -0
  1069. package/out/tools/golden/relabel-street.js +9 -0
  1070. package/out/tools/golden/relabel-street.js.map +1 -0
  1071. package/out/tools/ingest-csv.d.ts +19 -15
  1072. package/out/tools/ingest-csv.d.ts.map +1 -1
  1073. package/out/tools/ingest-csv.js +39 -45
  1074. package/out/tools/ingest-csv.js.map +1 -1
  1075. package/out/tools/jsonl-to-parquet.d.ts +15 -28
  1076. package/out/tools/jsonl-to-parquet.d.ts.map +1 -1
  1077. package/out/tools/jsonl-to-parquet.js +49 -91
  1078. package/out/tools/jsonl-to-parquet.js.map +1 -1
  1079. package/out/tools/lint/recipe-output/vocab.d.ts +77 -0
  1080. package/out/tools/lint/recipe-output/vocab.d.ts.map +1 -0
  1081. package/out/tools/lint/recipe-output/vocab.js +239 -0
  1082. package/out/tools/lint/recipe-output/vocab.js.map +1 -0
  1083. package/out/tools/lint/recipe-output.d.ts +73 -0
  1084. package/out/tools/lint/recipe-output.d.ts.map +1 -0
  1085. package/out/tools/lint/recipe-output.js +302 -0
  1086. package/out/tools/lint/recipe-output.js.map +1 -0
  1087. package/out/tools/migrate/overlay-parquet.d.ts +30 -0
  1088. package/out/tools/migrate/overlay-parquet.d.ts.map +1 -0
  1089. package/out/tools/migrate/overlay-parquet.js +141 -0
  1090. package/out/tools/migrate/overlay-parquet.js.map +1 -0
  1091. package/out/tools/migrate/recipe-output.d.ts +35 -0
  1092. package/out/tools/migrate/recipe-output.d.ts.map +1 -0
  1093. package/out/tools/migrate/recipe-output.js +124 -0
  1094. package/out/tools/migrate/recipe-output.js.map +1 -0
  1095. package/out/tools/migrate/source-names.d.ts +52 -0
  1096. package/out/tools/migrate/source-names.d.ts.map +1 -0
  1097. package/out/tools/migrate/source-names.js +105 -0
  1098. package/out/tools/migrate/source-names.js.map +1 -0
  1099. package/out/tools/overlay/kryptonite.d.ts +33 -0
  1100. package/out/tools/overlay/kryptonite.d.ts.map +1 -0
  1101. package/out/tools/overlay/kryptonite.js +108 -0
  1102. package/out/tools/overlay/kryptonite.js.map +1 -0
  1103. package/out/tools/overlay/manifest.d.ts +142 -0
  1104. package/out/tools/overlay/manifest.d.ts.map +1 -0
  1105. package/out/tools/overlay/manifest.js +260 -0
  1106. package/out/tools/overlay/manifest.js.map +1 -0
  1107. package/out/tools/overlay/merge-source.d.ts +73 -0
  1108. package/out/tools/overlay/merge-source.d.ts.map +1 -0
  1109. package/out/tools/overlay/merge-source.js +63 -0
  1110. package/out/tools/overlay/merge-source.js.map +1 -0
  1111. package/out/tools/overlay/split-slice.d.ts +66 -0
  1112. package/out/tools/overlay/split-slice.d.ts.map +1 -0
  1113. package/out/tools/overlay/split-slice.js +78 -0
  1114. package/out/tools/overlay/split-slice.js.map +1 -0
  1115. package/out/tools/overlay/translit.d.ts +54 -0
  1116. package/out/tools/overlay/translit.d.ts.map +1 -0
  1117. package/out/tools/overlay/translit.js +177 -0
  1118. package/out/tools/overlay/translit.js.map +1 -0
  1119. package/out/tools/overture-subvenue.d.ts +17 -76
  1120. package/out/tools/overture-subvenue.d.ts.map +1 -1
  1121. package/out/tools/overture-subvenue.js +7 -74
  1122. package/out/tools/overture-subvenue.js.map +1 -1
  1123. package/out/tools/postcode-triples.d.ts +96 -109
  1124. package/out/tools/postcode-triples.d.ts.map +1 -1
  1125. package/out/tools/postcode-triples.js +237 -152
  1126. package/out/tools/postcode-triples.js.map +1 -1
  1127. package/out/tools/source-register/build.d.ts +145 -0
  1128. package/out/tools/source-register/build.d.ts.map +1 -0
  1129. package/out/tools/source-register/build.js +515 -0
  1130. package/out/tools/source-register/build.js.map +1 -0
  1131. package/out/tools/sub/venue/head-nouns.d.ts +21 -0
  1132. package/out/tools/sub/venue/head-nouns.d.ts.map +1 -0
  1133. package/out/tools/sub/venue/head-nouns.js +176 -0
  1134. package/out/tools/sub/venue/head-nouns.js.map +1 -0
  1135. package/out/tools/sub/venue/lexicon.d.ts +129 -0
  1136. package/out/tools/sub/venue/lexicon.d.ts.map +1 -0
  1137. package/out/tools/sub/venue/lexicon.js +239 -0
  1138. package/out/tools/sub/venue/lexicon.js.map +1 -0
  1139. package/out/tools/sub/venue/wikidata.d.ts +28 -0
  1140. package/out/tools/sub/venue/wikidata.d.ts.map +1 -0
  1141. package/out/tools/sub/venue/wikidata.js +65 -0
  1142. package/out/tools/sub/venue/wikidata.js.map +1 -0
  1143. package/out/tools.d.ts +31 -0
  1144. package/out/tools.d.ts.map +1 -0
  1145. package/out/tools.js +31 -0
  1146. package/out/tools.js.map +1 -0
  1147. package/out/tw/tools/fetch/gcis.d.ts +29 -0
  1148. package/out/tw/tools/fetch/gcis.d.ts.map +1 -0
  1149. package/out/tw/tools/fetch/gcis.js +141 -0
  1150. package/out/tw/tools/fetch/gcis.js.map +1 -0
  1151. package/out/types.d.ts +270 -101
  1152. package/out/types.d.ts.map +1 -1
  1153. package/out/types.js +133 -9
  1154. package/out/types.js.map +1 -1
  1155. package/out/us/adapters/fcc-bdc/adapter.d.ts +50 -0
  1156. package/out/us/adapters/fcc-bdc/adapter.d.ts.map +1 -0
  1157. package/out/us/adapters/fcc-bdc/adapter.js +129 -0
  1158. package/out/us/adapters/fcc-bdc/adapter.js.map +1 -0
  1159. package/out/us/adapters/state/hi-schools/adapter.d.ts +47 -0
  1160. package/out/us/adapters/state/hi-schools/adapter.d.ts.map +1 -0
  1161. package/out/us/adapters/state/hi-schools/adapter.js +146 -0
  1162. package/out/us/adapters/state/hi-schools/adapter.js.map +1 -0
  1163. package/out/us/adapters/state/hi-schools/workbook.d.ts +34 -0
  1164. package/out/us/adapters/state/hi-schools/workbook.d.ts.map +1 -0
  1165. package/out/us/adapters/state/hi-schools/workbook.js +22 -0
  1166. package/out/us/adapters/state/hi-schools/workbook.js.map +1 -0
  1167. package/out/us/adapters/state/ia-contractors/adapter.d.ts +41 -0
  1168. package/out/us/adapters/state/ia-contractors/adapter.d.ts.map +1 -0
  1169. package/out/us/adapters/state/ia-contractors/adapter.js +117 -0
  1170. package/out/us/adapters/state/ia-contractors/adapter.js.map +1 -0
  1171. package/out/us/adapters/state/ny-notaries/adapter.d.ts +33 -0
  1172. package/out/us/adapters/state/ny-notaries/adapter.d.ts.map +1 -0
  1173. package/out/us/adapters/state/ny-notaries/adapter.js +114 -0
  1174. package/out/us/adapters/state/ny-notaries/adapter.js.map +1 -0
  1175. package/out/us/adapters/state/tx-notaries/adapter.d.ts +34 -0
  1176. package/out/us/adapters/state/tx-notaries/adapter.d.ts.map +1 -0
  1177. package/out/us/adapters/state/tx-notaries/adapter.js +125 -0
  1178. package/out/us/adapters/state/tx-notaries/adapter.js.map +1 -0
  1179. package/out/us/adapters/tiger/adapter.d.ts +31 -0
  1180. package/out/us/adapters/tiger/adapter.d.ts.map +1 -0
  1181. package/out/us/adapters/tiger/adapter.js +173 -0
  1182. package/out/us/adapters/tiger/adapter.js.map +1 -0
  1183. package/out/us/adapters/tiger/street-decompose.d.ts +23 -0
  1184. package/out/us/adapters/tiger/street-decompose.d.ts.map +1 -0
  1185. package/out/us/adapters/tiger/street-decompose.js +58 -0
  1186. package/out/us/adapters/tiger/street-decompose.js.map +1 -0
  1187. package/out/us/adapters/usgov/hrsa-fqhc/adapter.d.ts +62 -0
  1188. package/out/us/adapters/usgov/hrsa-fqhc/adapter.d.ts.map +1 -0
  1189. package/out/us/adapters/usgov/hrsa-fqhc/adapter.js +133 -0
  1190. package/out/us/adapters/usgov/hrsa-fqhc/adapter.js.map +1 -0
  1191. package/out/us/adapters/usgov/imls-pls/adapter.d.ts +37 -0
  1192. package/out/us/adapters/usgov/imls-pls/adapter.d.ts.map +1 -0
  1193. package/out/us/adapters/usgov/imls-pls/adapter.js +113 -0
  1194. package/out/us/adapters/usgov/imls-pls/adapter.js.map +1 -0
  1195. package/out/us/adapters/usgov/irs-bmf/adapter.d.ts +38 -0
  1196. package/out/us/adapters/usgov/irs-bmf/adapter.d.ts.map +1 -0
  1197. package/out/us/adapters/usgov/irs-bmf/adapter.js +126 -0
  1198. package/out/us/adapters/usgov/irs-bmf/adapter.js.map +1 -0
  1199. package/out/us/adapters/usgov/nad/adapter.d.ts +28 -0
  1200. package/out/us/adapters/usgov/nad/adapter.d.ts.map +1 -0
  1201. package/out/us/adapters/usgov/nad/adapter.js +185 -0
  1202. package/out/us/adapters/usgov/nad/adapter.js.map +1 -0
  1203. package/out/us/adapters/usgov/nppes/adapter.d.ts +29 -0
  1204. package/out/us/adapters/usgov/nppes/adapter.d.ts.map +1 -0
  1205. package/out/us/adapters/usgov/nppes/adapter.js +140 -0
  1206. package/out/us/adapters/usgov/nppes/adapter.js.map +1 -0
  1207. package/out/us/adapters/usgov/samhsa-treatment-locator/adapter.d.ts +47 -0
  1208. package/out/us/adapters/usgov/samhsa-treatment-locator/adapter.d.ts.map +1 -0
  1209. package/out/us/adapters/usgov/samhsa-treatment-locator/adapter.js +153 -0
  1210. package/out/us/adapters/usgov/samhsa-treatment-locator/adapter.js.map +1 -0
  1211. package/out/us/fips-state.d.ts +50 -0
  1212. package/out/us/fips-state.d.ts.map +1 -0
  1213. package/out/us/fips-state.js +109 -0
  1214. package/out/us/fips-state.js.map +1 -0
  1215. package/out/us/tools/fetch/hrsa.d.ts +18 -0
  1216. package/out/us/tools/fetch/hrsa.d.ts.map +1 -0
  1217. package/out/us/tools/fetch/hrsa.js +45 -0
  1218. package/out/us/tools/fetch/hrsa.js.map +1 -0
  1219. package/out/us/tools/fetch/imls-pls.d.ts +14 -0
  1220. package/out/us/tools/fetch/imls-pls.d.ts.map +1 -0
  1221. package/out/us/tools/fetch/imls-pls.js +91 -0
  1222. package/out/us/tools/fetch/imls-pls.js.map +1 -0
  1223. package/out/us/tools/fetch/nad.d.ts +82 -0
  1224. package/out/us/tools/fetch/nad.d.ts.map +1 -0
  1225. package/out/us/tools/fetch/nad.js +239 -0
  1226. package/out/us/tools/fetch/nad.js.map +1 -0
  1227. package/out/us/tools/fetch/nppes.d.ts +16 -0
  1228. package/out/us/tools/fetch/nppes.d.ts.map +1 -0
  1229. package/out/us/tools/fetch/nppes.js +114 -0
  1230. package/out/us/tools/fetch/nppes.js.map +1 -0
  1231. package/out/us/tools/fetch/state/hi-schools.d.ts +29 -0
  1232. package/out/us/tools/fetch/state/hi-schools.d.ts.map +1 -0
  1233. package/out/us/tools/fetch/state/hi-schools.js +114 -0
  1234. package/out/us/tools/fetch/state/hi-schools.js.map +1 -0
  1235. package/out/us/tools/fetch/state/sources.d.ts +27 -0
  1236. package/out/us/tools/fetch/state/sources.d.ts.map +1 -0
  1237. package/out/us/tools/fetch/state/sources.js +110 -0
  1238. package/out/us/tools/fetch/state/sources.js.map +1 -0
  1239. package/out/us/tools/fetch/tiger-full.d.ts +9 -0
  1240. package/out/us/tools/fetch/tiger-full.d.ts.map +1 -0
  1241. package/out/us/tools/fetch/tiger-full.js +178 -0
  1242. package/out/us/tools/fetch/tiger-full.js.map +1 -0
  1243. package/out/utils/align.d.ts +25 -20
  1244. package/out/utils/align.d.ts.map +1 -1
  1245. package/out/utils/align.js +27 -42
  1246. package/out/utils/align.js.map +1 -1
  1247. package/out/utils/cooccurrence-stats.d.ts +58 -0
  1248. package/out/utils/cooccurrence-stats.d.ts.map +1 -0
  1249. package/out/utils/cooccurrence-stats.js +62 -0
  1250. package/out/utils/cooccurrence-stats.js.map +1 -0
  1251. package/out/utils/golden.d.ts +23 -29
  1252. package/out/utils/golden.d.ts.map +1 -1
  1253. package/out/utils/golden.js +33 -45
  1254. package/out/utils/golden.js.map +1 -1
  1255. package/out/utils/license.d.ts +158 -21
  1256. package/out/utils/license.d.ts.map +1 -1
  1257. package/out/utils/license.js +156 -26
  1258. package/out/utils/license.js.map +1 -1
  1259. package/out/utils/split.d.ts +66 -70
  1260. package/out/utils/split.d.ts.map +1 -1
  1261. package/out/utils/split.js +158 -69
  1262. package/out/utils/split.js.map +1 -1
  1263. package/out/utils/tokenize.d.ts +16 -28
  1264. package/out/utils/tokenize.d.ts.map +1 -1
  1265. package/out/utils/tokenize.js +18 -31
  1266. package/out/utils/tokenize.js.map +1 -1
  1267. package/out/utils/wof-json.d.ts +88 -62
  1268. package/out/utils/wof-json.d.ts.map +1 -1
  1269. package/out/utils/wof-json.js +81 -65
  1270. package/out/utils/wof-json.js.map +1 -1
  1271. package/out/utils.d.ts +13 -0
  1272. package/out/utils.d.ts.map +1 -0
  1273. package/out/utils.js +13 -0
  1274. package/out/utils.js.map +1 -0
  1275. package/out/ve/recipes/reviewed-postcode-tail.d.ts +65 -0
  1276. package/out/ve/recipes/reviewed-postcode-tail.d.ts.map +1 -0
  1277. package/out/ve/recipes/reviewed-postcode-tail.js +146 -0
  1278. package/out/ve/recipes/reviewed-postcode-tail.js.map +1 -0
  1279. package/package.json +46 -330
  1280. package/lib/adapters/ban/adapter.ts +0 -190
  1281. package/lib/adapters/ban/street-decompose.ts +0 -66
  1282. package/lib/adapters/fcc-bdc/adapter.ts +0 -174
  1283. package/lib/adapters/geonames-postal/adapter.ts +0 -122
  1284. package/lib/adapters/gnaf/adapter.ts +0 -149
  1285. package/lib/adapters/gnaf/assemble.ts +0 -225
  1286. package/lib/adapters/index.ts +0 -153
  1287. package/lib/adapters/state-hi-schools/adapter.ts +0 -170
  1288. package/lib/adapters/state-hi-schools/workbook.ts +0 -35
  1289. package/lib/adapters/state-ia-contractors/adapter.ts +0 -144
  1290. package/lib/adapters/state-ny-notaries/adapter.ts +0 -141
  1291. package/lib/adapters/state-tx-notaries/adapter.ts +0 -157
  1292. package/lib/adapters/synth-po-box/adapter.ts +0 -204
  1293. package/lib/adapters/tiger/adapter.ts +0 -252
  1294. package/lib/adapters/tiger/street-decompose.ts +0 -83
  1295. package/lib/adapters/usgov-hrsa-fqhc/adapter.ts +0 -167
  1296. package/lib/adapters/usgov-imls-pls/adapter.ts +0 -143
  1297. package/lib/adapters/usgov-irs-bmf/adapter.ts +0 -151
  1298. package/lib/adapters/usgov-nad/adapter.ts +0 -334
  1299. package/lib/adapters/usgov-nppes/adapter.ts +0 -151
  1300. package/lib/adapters/usgov-samhsa-treatment-locator/adapter.ts +0 -193
  1301. package/lib/adapters/utils/index.ts +0 -307
  1302. package/lib/adapters/wof-admin-jp/adapter.ts +0 -214
  1303. package/lib/adapters/wof-admin-json/adapter.ts +0 -231
  1304. package/lib/adapters/wof-json-rows.ts +0 -129
  1305. package/lib/adapters/wof-postalcode-json/adapter.ts +0 -176
  1306. package/lib/codex/us-fips-state.ts +0 -113
  1307. package/lib/recipes/bare-country.ts +0 -95
  1308. package/lib/recipes/cn-organizational-units.ts +0 -199
  1309. package/lib/recipes/cz-pcfirst-preposition.ts +0 -112
  1310. package/lib/recipes/fr-admin-split.ts +0 -243
  1311. package/lib/recipes/fr-bare-street.ts +0 -171
  1312. package/lib/recipes/fr-fragment.ts +0 -334
  1313. package/lib/recipes/fr-lieudit.ts +0 -301
  1314. package/lib/recipes/fr-order.ts +0 -246
  1315. package/lib/recipes/german.ts +0 -360
  1316. package/lib/recipes/index.ts +0 -97
  1317. package/lib/recipes/locale.ts +0 -600
  1318. package/lib/recipes/nl-postcode.ts +0 -117
  1319. package/lib/recipes/no-fragment.ts +0 -213
  1320. package/lib/recipes/no-street-led.ts +0 -135
  1321. package/lib/recipes/no-street.ts +0 -91
  1322. package/lib/recipes/po-box-cedex.ts +0 -976
  1323. package/lib/recipes/po-box.ts +0 -124
  1324. package/lib/recipes/reviewed-postcode-tail.ts +0 -190
  1325. package/lib/recipes/si-bare-village.ts +0 -99
  1326. package/lib/recipes/street-affix.ts +0 -805
  1327. package/lib/recipes/street-bare.ts +0 -102
  1328. package/lib/recipes/sub-venue-sources.ts +0 -878
  1329. package/lib/recipes/sub-venue.ts +0 -998
  1330. package/lib/synthesizers/german.ts +0 -260
  1331. package/lib/test-kit/index.ts +0 -100
  1332. package/lib/tools/align-slice.ts +0 -68
  1333. package/lib/tools/fetch/acra-sg.ts +0 -174
  1334. package/lib/tools/fetch/ban.ts +0 -289
  1335. package/lib/tools/fetch/gcis-tw.ts +0 -175
  1336. package/lib/tools/fetch/geonames-dump.ts +0 -257
  1337. package/lib/tools/fetch/geonames-postal.ts +0 -180
  1338. package/lib/tools/fetch/houjin-jp.ts +0 -135
  1339. package/lib/tools/fetch/hrsa.ts +0 -59
  1340. package/lib/tools/fetch/imls-pls.ts +0 -149
  1341. package/lib/tools/fetch/index.ts +0 -174
  1342. package/lib/tools/fetch/juso-kr.ts +0 -165
  1343. package/lib/tools/fetch/localdata-kr.ts +0 -194
  1344. package/lib/tools/fetch/nad.ts +0 -341
  1345. package/lib/tools/fetch/nppes.ts +0 -165
  1346. package/lib/tools/fetch/state-hi-schools.ts +0 -161
  1347. package/lib/tools/fetch/state-sources.ts +0 -146
  1348. package/lib/tools/fetch/tiger-full.ts +0 -308
  1349. package/lib/tools/gb-title-case.ts +0 -69
  1350. package/lib/tools/golden-expand.ts +0 -574
  1351. package/lib/tools/golden-promote.ts +0 -337
  1352. package/lib/tools/golden-relabel-street.ts +0 -686
  1353. package/lib/tools/index.ts +0 -28
  1354. package/lib/tools/lint-slice-vocab.ts +0 -388
  1355. package/lib/tools/lint-slice.ts +0 -496
  1356. package/lib/tools/overlay-manifest.ts +0 -148
  1357. package/lib/tools/slice-kryptonite.ts +0 -137
  1358. package/lib/tools/slice-translit.ts +0 -218
  1359. package/lib/tools/sub-venue/harvest.ts +0 -234
  1360. package/lib/tools/sub-venue/head-nouns.ts +0 -245
  1361. package/lib/tools/sub-venue/surfaces.ts +0 -95
  1362. package/lib/tools/sub-venue/table.ts +0 -281
  1363. package/lib/tools/sub-venue/wikidata.ts +0 -85
  1364. package/lib/tools/sub-venue-lexicon.ts +0 -429
  1365. package/lib/tools/sub-venue-promotions.ts +0 -330
  1366. package/lib/utils/index.ts +0 -14
  1367. package/lib/utils/parquet.ts +0 -582
  1368. package/lib/utils/slice-stats.ts +0 -95
  1369. package/out/adapters/ban/adapter.d.ts +0 -44
  1370. package/out/adapters/ban/adapter.d.ts.map +0 -1
  1371. package/out/adapters/ban/adapter.js +0 -149
  1372. package/out/adapters/ban/adapter.js.map +0 -1
  1373. package/out/adapters/ban/street-decompose.d.ts +0 -28
  1374. package/out/adapters/ban/street-decompose.d.ts.map +0 -1
  1375. package/out/adapters/ban/street-decompose.js +0 -51
  1376. package/out/adapters/ban/street-decompose.js.map +0 -1
  1377. package/out/adapters/fcc-bdc/adapter.d.ts +0 -68
  1378. package/out/adapters/fcc-bdc/adapter.d.ts.map +0 -1
  1379. package/out/adapters/fcc-bdc/adapter.js +0 -144
  1380. package/out/adapters/fcc-bdc/adapter.js.map +0 -1
  1381. package/out/adapters/geonames-postal/adapter.d.ts +0 -54
  1382. package/out/adapters/geonames-postal/adapter.d.ts.map +0 -1
  1383. package/out/adapters/geonames-postal/adapter.js +0 -107
  1384. package/out/adapters/geonames-postal/adapter.js.map +0 -1
  1385. package/out/adapters/gnaf/adapter.d.ts +0 -49
  1386. package/out/adapters/gnaf/adapter.d.ts.map +0 -1
  1387. package/out/adapters/gnaf/adapter.js +0 -124
  1388. package/out/adapters/gnaf/adapter.js.map +0 -1
  1389. package/out/adapters/gnaf/assemble.d.ts +0 -65
  1390. package/out/adapters/gnaf/assemble.d.ts.map +0 -1
  1391. package/out/adapters/gnaf/assemble.js +0 -154
  1392. package/out/adapters/gnaf/assemble.js.map +0 -1
  1393. package/out/adapters/index.d.ts +0 -51
  1394. package/out/adapters/index.d.ts.map +0 -1
  1395. package/out/adapters/index.js +0 -95
  1396. package/out/adapters/index.js.map +0 -1
  1397. package/out/adapters/state-hi-schools/adapter.d.ts +0 -46
  1398. package/out/adapters/state-hi-schools/adapter.d.ts.map +0 -1
  1399. package/out/adapters/state-hi-schools/adapter.js +0 -145
  1400. package/out/adapters/state-hi-schools/adapter.js.map +0 -1
  1401. package/out/adapters/state-hi-schools/workbook.d.ts +0 -29
  1402. package/out/adapters/state-hi-schools/workbook.d.ts.map +0 -1
  1403. package/out/adapters/state-hi-schools/workbook.js +0 -20
  1404. package/out/adapters/state-hi-schools/workbook.js.map +0 -1
  1405. package/out/adapters/state-ia-contractors/adapter.d.ts +0 -34
  1406. package/out/adapters/state-ia-contractors/adapter.d.ts.map +0 -1
  1407. package/out/adapters/state-ia-contractors/adapter.js +0 -111
  1408. package/out/adapters/state-ia-contractors/adapter.js.map +0 -1
  1409. package/out/adapters/state-ny-notaries/adapter.d.ts +0 -32
  1410. package/out/adapters/state-ny-notaries/adapter.d.ts.map +0 -1
  1411. package/out/adapters/state-ny-notaries/adapter.js +0 -119
  1412. package/out/adapters/state-ny-notaries/adapter.js.map +0 -1
  1413. package/out/adapters/state-tx-notaries/adapter.d.ts +0 -33
  1414. package/out/adapters/state-tx-notaries/adapter.d.ts.map +0 -1
  1415. package/out/adapters/state-tx-notaries/adapter.js +0 -125
  1416. package/out/adapters/state-tx-notaries/adapter.js.map +0 -1
  1417. package/out/adapters/synth-po-box/adapter.d.ts +0 -67
  1418. package/out/adapters/synth-po-box/adapter.d.ts.map +0 -1
  1419. package/out/adapters/synth-po-box/adapter.js +0 -140
  1420. package/out/adapters/synth-po-box/adapter.js.map +0 -1
  1421. package/out/adapters/tiger/adapter.d.ts +0 -55
  1422. package/out/adapters/tiger/adapter.d.ts.map +0 -1
  1423. package/out/adapters/tiger/adapter.js +0 -201
  1424. package/out/adapters/tiger/adapter.js.map +0 -1
  1425. package/out/adapters/tiger/street-decompose.d.ts +0 -30
  1426. package/out/adapters/tiger/street-decompose.d.ts.map +0 -1
  1427. package/out/adapters/tiger/street-decompose.js +0 -68
  1428. package/out/adapters/tiger/street-decompose.js.map +0 -1
  1429. package/out/adapters/usgov-hrsa-fqhc/adapter.d.ts +0 -56
  1430. package/out/adapters/usgov-hrsa-fqhc/adapter.d.ts.map +0 -1
  1431. package/out/adapters/usgov-hrsa-fqhc/adapter.js +0 -132
  1432. package/out/adapters/usgov-hrsa-fqhc/adapter.js.map +0 -1
  1433. package/out/adapters/usgov-imls-pls/adapter.d.ts +0 -36
  1434. package/out/adapters/usgov-imls-pls/adapter.d.ts.map +0 -1
  1435. package/out/adapters/usgov-imls-pls/adapter.js +0 -114
  1436. package/out/adapters/usgov-imls-pls/adapter.js.map +0 -1
  1437. package/out/adapters/usgov-irs-bmf/adapter.d.ts +0 -37
  1438. package/out/adapters/usgov-irs-bmf/adapter.d.ts.map +0 -1
  1439. package/out/adapters/usgov-irs-bmf/adapter.js +0 -120
  1440. package/out/adapters/usgov-irs-bmf/adapter.js.map +0 -1
  1441. package/out/adapters/usgov-nad/adapter.d.ts +0 -48
  1442. package/out/adapters/usgov-nad/adapter.d.ts.map +0 -1
  1443. package/out/adapters/usgov-nad/adapter.js +0 -249
  1444. package/out/adapters/usgov-nad/adapter.js.map +0 -1
  1445. package/out/adapters/usgov-nppes/adapter.d.ts +0 -39
  1446. package/out/adapters/usgov-nppes/adapter.d.ts.map +0 -1
  1447. package/out/adapters/usgov-nppes/adapter.js +0 -118
  1448. package/out/adapters/usgov-nppes/adapter.js.map +0 -1
  1449. package/out/adapters/usgov-samhsa-treatment-locator/adapter.d.ts +0 -46
  1450. package/out/adapters/usgov-samhsa-treatment-locator/adapter.d.ts.map +0 -1
  1451. package/out/adapters/usgov-samhsa-treatment-locator/adapter.js +0 -154
  1452. package/out/adapters/usgov-samhsa-treatment-locator/adapter.js.map +0 -1
  1453. package/out/adapters/utils/index.d.ts +0 -191
  1454. package/out/adapters/utils/index.d.ts.map +0 -1
  1455. package/out/adapters/utils/index.js +0 -206
  1456. package/out/adapters/utils/index.js.map +0 -1
  1457. package/out/adapters/wof-admin-jp/adapter.d.ts +0 -65
  1458. package/out/adapters/wof-admin-jp/adapter.d.ts.map +0 -1
  1459. package/out/adapters/wof-admin-jp/adapter.js +0 -161
  1460. package/out/adapters/wof-admin-jp/adapter.js.map +0 -1
  1461. package/out/adapters/wof-admin-json/adapter.d.ts +0 -79
  1462. package/out/adapters/wof-admin-json/adapter.d.ts.map +0 -1
  1463. package/out/adapters/wof-admin-json/adapter.js +0 -197
  1464. package/out/adapters/wof-admin-json/adapter.js.map +0 -1
  1465. package/out/adapters/wof-json-rows.d.ts +0 -62
  1466. package/out/adapters/wof-json-rows.d.ts.map +0 -1
  1467. package/out/adapters/wof-json-rows.js +0 -83
  1468. package/out/adapters/wof-json-rows.js.map +0 -1
  1469. package/out/adapters/wof-postalcode-json/adapter.d.ts +0 -65
  1470. package/out/adapters/wof-postalcode-json/adapter.d.ts.map +0 -1
  1471. package/out/adapters/wof-postalcode-json/adapter.js +0 -151
  1472. package/out/adapters/wof-postalcode-json/adapter.js.map +0 -1
  1473. package/out/codex/us-fips-state.d.ts +0 -41
  1474. package/out/codex/us-fips-state.d.ts.map +0 -1
  1475. package/out/codex/us-fips-state.js +0 -100
  1476. package/out/codex/us-fips-state.js.map +0 -1
  1477. package/out/recipes/bare-country.d.ts +0 -25
  1478. package/out/recipes/bare-country.d.ts.map +0 -1
  1479. package/out/recipes/bare-country.js +0 -88
  1480. package/out/recipes/bare-country.js.map +0 -1
  1481. package/out/recipes/cn-organizational-units.d.ts +0 -36
  1482. package/out/recipes/cn-organizational-units.d.ts.map +0 -1
  1483. package/out/recipes/cn-organizational-units.js +0 -159
  1484. package/out/recipes/cn-organizational-units.js.map +0 -1
  1485. package/out/recipes/cz-pcfirst-preposition.d.ts +0 -22
  1486. package/out/recipes/cz-pcfirst-preposition.d.ts.map +0 -1
  1487. package/out/recipes/cz-pcfirst-preposition.js +0 -101
  1488. package/out/recipes/cz-pcfirst-preposition.js.map +0 -1
  1489. package/out/recipes/fr-admin-split.d.ts +0 -38
  1490. package/out/recipes/fr-admin-split.d.ts.map +0 -1
  1491. package/out/recipes/fr-admin-split.js +0 -192
  1492. package/out/recipes/fr-admin-split.js.map +0 -1
  1493. package/out/recipes/fr-bare-street.d.ts +0 -28
  1494. package/out/recipes/fr-bare-street.d.ts.map +0 -1
  1495. package/out/recipes/fr-bare-street.js +0 -144
  1496. package/out/recipes/fr-bare-street.js.map +0 -1
  1497. package/out/recipes/fr-fragment.d.ts +0 -77
  1498. package/out/recipes/fr-fragment.d.ts.map +0 -1
  1499. package/out/recipes/fr-fragment.js +0 -277
  1500. package/out/recipes/fr-fragment.js.map +0 -1
  1501. package/out/recipes/fr-lieudit.d.ts +0 -32
  1502. package/out/recipes/fr-lieudit.d.ts.map +0 -1
  1503. package/out/recipes/fr-lieudit.js +0 -227
  1504. package/out/recipes/fr-lieudit.js.map +0 -1
  1505. package/out/recipes/fr-order.d.ts +0 -38
  1506. package/out/recipes/fr-order.d.ts.map +0 -1
  1507. package/out/recipes/fr-order.js +0 -198
  1508. package/out/recipes/fr-order.js.map +0 -1
  1509. package/out/recipes/german.d.ts +0 -44
  1510. package/out/recipes/german.d.ts.map +0 -1
  1511. package/out/recipes/german.js +0 -289
  1512. package/out/recipes/german.js.map +0 -1
  1513. package/out/recipes/index.d.ts +0 -24
  1514. package/out/recipes/index.d.ts.map +0 -1
  1515. package/out/recipes/index.js +0 -91
  1516. package/out/recipes/index.js.map +0 -1
  1517. package/out/recipes/locale.d.ts +0 -136
  1518. package/out/recipes/locale.d.ts.map +0 -1
  1519. package/out/recipes/locale.js +0 -460
  1520. package/out/recipes/locale.js.map +0 -1
  1521. package/out/recipes/nl-postcode.d.ts +0 -26
  1522. package/out/recipes/nl-postcode.d.ts.map +0 -1
  1523. package/out/recipes/nl-postcode.js +0 -103
  1524. package/out/recipes/nl-postcode.js.map +0 -1
  1525. package/out/recipes/no-fragment.d.ts +0 -43
  1526. package/out/recipes/no-fragment.d.ts.map +0 -1
  1527. package/out/recipes/no-fragment.js +0 -183
  1528. package/out/recipes/no-fragment.js.map +0 -1
  1529. package/out/recipes/no-street-led.d.ts +0 -24
  1530. package/out/recipes/no-street-led.d.ts.map +0 -1
  1531. package/out/recipes/no-street-led.js +0 -114
  1532. package/out/recipes/no-street-led.js.map +0 -1
  1533. package/out/recipes/no-street.d.ts +0 -18
  1534. package/out/recipes/no-street.d.ts.map +0 -1
  1535. package/out/recipes/no-street.js +0 -72
  1536. package/out/recipes/no-street.js.map +0 -1
  1537. package/out/recipes/po-box-cedex.d.ts +0 -38
  1538. package/out/recipes/po-box-cedex.d.ts.map +0 -1
  1539. package/out/recipes/po-box-cedex.js +0 -768
  1540. package/out/recipes/po-box-cedex.js.map +0 -1
  1541. package/out/recipes/po-box.d.ts +0 -17
  1542. package/out/recipes/po-box.d.ts.map +0 -1
  1543. package/out/recipes/po-box.js +0 -101
  1544. package/out/recipes/po-box.js.map +0 -1
  1545. package/out/recipes/reviewed-postcode-tail.d.ts +0 -47
  1546. package/out/recipes/reviewed-postcode-tail.d.ts.map +0 -1
  1547. package/out/recipes/reviewed-postcode-tail.js +0 -125
  1548. package/out/recipes/reviewed-postcode-tail.js.map +0 -1
  1549. package/out/recipes/si-bare-village.d.ts +0 -32
  1550. package/out/recipes/si-bare-village.d.ts.map +0 -1
  1551. package/out/recipes/si-bare-village.js +0 -89
  1552. package/out/recipes/si-bare-village.js.map +0 -1
  1553. package/out/recipes/street-affix.d.ts +0 -89
  1554. package/out/recipes/street-affix.d.ts.map +0 -1
  1555. package/out/recipes/street-affix.js +0 -563
  1556. package/out/recipes/street-affix.js.map +0 -1
  1557. package/out/recipes/street-bare.d.ts +0 -25
  1558. package/out/recipes/street-bare.d.ts.map +0 -1
  1559. package/out/recipes/street-bare.js +0 -87
  1560. package/out/recipes/street-bare.js.map +0 -1
  1561. package/out/recipes/sub-venue-sources.d.ts +0 -229
  1562. package/out/recipes/sub-venue-sources.d.ts.map +0 -1
  1563. package/out/recipes/sub-venue-sources.js +0 -654
  1564. package/out/recipes/sub-venue-sources.js.map +0 -1
  1565. package/out/recipes/sub-venue.d.ts +0 -269
  1566. package/out/recipes/sub-venue.d.ts.map +0 -1
  1567. package/out/recipes/sub-venue.js +0 -726
  1568. package/out/recipes/sub-venue.js.map +0 -1
  1569. package/out/synthesizers/german.d.ts +0 -115
  1570. package/out/synthesizers/german.d.ts.map +0 -1
  1571. package/out/synthesizers/german.js +0 -149
  1572. package/out/synthesizers/german.js.map +0 -1
  1573. package/out/test-kit/index.d.ts +0 -48
  1574. package/out/test-kit/index.d.ts.map +0 -1
  1575. package/out/test-kit/index.js +0 -78
  1576. package/out/test-kit/index.js.map +0 -1
  1577. package/out/tools/align-slice.d.ts +0 -7
  1578. package/out/tools/align-slice.d.ts.map +0 -1
  1579. package/out/tools/align-slice.js +0 -55
  1580. package/out/tools/align-slice.js.map +0 -1
  1581. package/out/tools/fetch/acra-sg.d.ts +0 -23
  1582. package/out/tools/fetch/acra-sg.d.ts.map +0 -1
  1583. package/out/tools/fetch/acra-sg.js +0 -126
  1584. package/out/tools/fetch/acra-sg.js.map +0 -1
  1585. package/out/tools/fetch/ban.d.ts +0 -31
  1586. package/out/tools/fetch/ban.d.ts.map +0 -1
  1587. package/out/tools/fetch/ban.js +0 -239
  1588. package/out/tools/fetch/ban.js.map +0 -1
  1589. package/out/tools/fetch/gcis-tw.d.ts +0 -23
  1590. package/out/tools/fetch/gcis-tw.d.ts.map +0 -1
  1591. package/out/tools/fetch/gcis-tw.js +0 -135
  1592. package/out/tools/fetch/gcis-tw.js.map +0 -1
  1593. package/out/tools/fetch/geonames-dump.d.ts +0 -91
  1594. package/out/tools/fetch/geonames-dump.d.ts.map +0 -1
  1595. package/out/tools/fetch/geonames-dump.js +0 -171
  1596. package/out/tools/fetch/geonames-dump.js.map +0 -1
  1597. package/out/tools/fetch/geonames-postal.d.ts +0 -76
  1598. package/out/tools/fetch/geonames-postal.d.ts.map +0 -1
  1599. package/out/tools/fetch/geonames-postal.js +0 -126
  1600. package/out/tools/fetch/geonames-postal.js.map +0 -1
  1601. package/out/tools/fetch/houjin-jp.d.ts +0 -24
  1602. package/out/tools/fetch/houjin-jp.d.ts.map +0 -1
  1603. package/out/tools/fetch/houjin-jp.js +0 -102
  1604. package/out/tools/fetch/houjin-jp.js.map +0 -1
  1605. package/out/tools/fetch/hrsa.d.ts +0 -18
  1606. package/out/tools/fetch/hrsa.d.ts.map +0 -1
  1607. package/out/tools/fetch/hrsa.js +0 -46
  1608. package/out/tools/fetch/hrsa.js.map +0 -1
  1609. package/out/tools/fetch/imls-pls.d.ts +0 -25
  1610. package/out/tools/fetch/imls-pls.d.ts.map +0 -1
  1611. package/out/tools/fetch/imls-pls.js +0 -108
  1612. package/out/tools/fetch/imls-pls.js.map +0 -1
  1613. package/out/tools/fetch/index.d.ts +0 -171
  1614. package/out/tools/fetch/index.d.ts.map +0 -1
  1615. package/out/tools/fetch/index.js +0 -170
  1616. package/out/tools/fetch/index.js.map +0 -1
  1617. package/out/tools/fetch/juso-kr.d.ts +0 -30
  1618. package/out/tools/fetch/juso-kr.d.ts.map +0 -1
  1619. package/out/tools/fetch/juso-kr.js +0 -120
  1620. package/out/tools/fetch/juso-kr.js.map +0 -1
  1621. package/out/tools/fetch/localdata-kr.d.ts +0 -30
  1622. package/out/tools/fetch/localdata-kr.d.ts.map +0 -1
  1623. package/out/tools/fetch/localdata-kr.js +0 -139
  1624. package/out/tools/fetch/localdata-kr.js.map +0 -1
  1625. package/out/tools/fetch/nad.d.ts +0 -70
  1626. package/out/tools/fetch/nad.d.ts.map +0 -1
  1627. package/out/tools/fetch/nad.js +0 -234
  1628. package/out/tools/fetch/nad.js.map +0 -1
  1629. package/out/tools/fetch/nppes.d.ts +0 -26
  1630. package/out/tools/fetch/nppes.d.ts.map +0 -1
  1631. package/out/tools/fetch/nppes.js +0 -126
  1632. package/out/tools/fetch/nppes.js.map +0 -1
  1633. package/out/tools/fetch/state-hi-schools.d.ts +0 -26
  1634. package/out/tools/fetch/state-hi-schools.d.ts.map +0 -1
  1635. package/out/tools/fetch/state-hi-schools.js +0 -112
  1636. package/out/tools/fetch/state-hi-schools.js.map +0 -1
  1637. package/out/tools/fetch/state-sources.d.ts +0 -26
  1638. package/out/tools/fetch/state-sources.d.ts.map +0 -1
  1639. package/out/tools/fetch/state-sources.js +0 -111
  1640. package/out/tools/fetch/state-sources.js.map +0 -1
  1641. package/out/tools/fetch/tiger-full.d.ts +0 -22
  1642. package/out/tools/fetch/tiger-full.d.ts.map +0 -1
  1643. package/out/tools/fetch/tiger-full.js +0 -217
  1644. package/out/tools/fetch/tiger-full.js.map +0 -1
  1645. package/out/tools/gb-title-case.d.ts +0 -2
  1646. package/out/tools/gb-title-case.d.ts.map +0 -1
  1647. package/out/tools/gb-title-case.js +0 -65
  1648. package/out/tools/gb-title-case.js.map +0 -1
  1649. package/out/tools/golden-expand.d.ts +0 -90
  1650. package/out/tools/golden-expand.d.ts.map +0 -1
  1651. package/out/tools/golden-expand.js +0 -406
  1652. package/out/tools/golden-expand.js.map +0 -1
  1653. package/out/tools/golden-promote.d.ts +0 -72
  1654. package/out/tools/golden-promote.d.ts.map +0 -1
  1655. package/out/tools/golden-promote.js +0 -240
  1656. package/out/tools/golden-promote.js.map +0 -1
  1657. package/out/tools/golden-relabel-street.d.ts +0 -196
  1658. package/out/tools/golden-relabel-street.d.ts.map +0 -1
  1659. package/out/tools/golden-relabel-street.js +0 -439
  1660. package/out/tools/golden-relabel-street.js.map +0 -1
  1661. package/out/tools/index.d.ts +0 -28
  1662. package/out/tools/index.d.ts.map +0 -1
  1663. package/out/tools/index.js +0 -28
  1664. package/out/tools/index.js.map +0 -1
  1665. package/out/tools/lint-slice-vocab.d.ts +0 -90
  1666. package/out/tools/lint-slice-vocab.d.ts.map +0 -1
  1667. package/out/tools/lint-slice-vocab.js +0 -267
  1668. package/out/tools/lint-slice-vocab.js.map +0 -1
  1669. package/out/tools/lint-slice.d.ts +0 -93
  1670. package/out/tools/lint-slice.d.ts.map +0 -1
  1671. package/out/tools/lint-slice.js +0 -322
  1672. package/out/tools/lint-slice.js.map +0 -1
  1673. package/out/tools/overlay-manifest.d.ts +0 -39
  1674. package/out/tools/overlay-manifest.d.ts.map +0 -1
  1675. package/out/tools/overlay-manifest.js +0 -90
  1676. package/out/tools/overlay-manifest.js.map +0 -1
  1677. package/out/tools/slice-kryptonite.d.ts +0 -32
  1678. package/out/tools/slice-kryptonite.d.ts.map +0 -1
  1679. package/out/tools/slice-kryptonite.js +0 -99
  1680. package/out/tools/slice-kryptonite.js.map +0 -1
  1681. package/out/tools/slice-translit.d.ts +0 -51
  1682. package/out/tools/slice-translit.d.ts.map +0 -1
  1683. package/out/tools/slice-translit.js +0 -166
  1684. package/out/tools/slice-translit.js.map +0 -1
  1685. package/out/tools/sub-venue/harvest.d.ts +0 -100
  1686. package/out/tools/sub-venue/harvest.d.ts.map +0 -1
  1687. package/out/tools/sub-venue/harvest.js +0 -168
  1688. package/out/tools/sub-venue/harvest.js.map +0 -1
  1689. package/out/tools/sub-venue/head-nouns.d.ts +0 -50
  1690. package/out/tools/sub-venue/head-nouns.d.ts.map +0 -1
  1691. package/out/tools/sub-venue/head-nouns.js +0 -213
  1692. package/out/tools/sub-venue/head-nouns.js.map +0 -1
  1693. package/out/tools/sub-venue/surfaces.d.ts +0 -45
  1694. package/out/tools/sub-venue/surfaces.d.ts.map +0 -1
  1695. package/out/tools/sub-venue/surfaces.js +0 -77
  1696. package/out/tools/sub-venue/surfaces.js.map +0 -1
  1697. package/out/tools/sub-venue/table.d.ts +0 -229
  1698. package/out/tools/sub-venue/table.d.ts.map +0 -1
  1699. package/out/tools/sub-venue/table.js +0 -108
  1700. package/out/tools/sub-venue/table.js.map +0 -1
  1701. package/out/tools/sub-venue/wikidata.d.ts +0 -26
  1702. package/out/tools/sub-venue/wikidata.d.ts.map +0 -1
  1703. package/out/tools/sub-venue/wikidata.js +0 -62
  1704. package/out/tools/sub-venue/wikidata.js.map +0 -1
  1705. package/out/tools/sub-venue-lexicon.d.ts +0 -156
  1706. package/out/tools/sub-venue-lexicon.d.ts.map +0 -1
  1707. package/out/tools/sub-venue-lexicon.js +0 -283
  1708. package/out/tools/sub-venue-lexicon.js.map +0 -1
  1709. package/out/tools/sub-venue-promotions.d.ts +0 -94
  1710. package/out/tools/sub-venue-promotions.d.ts.map +0 -1
  1711. package/out/tools/sub-venue-promotions.js +0 -266
  1712. package/out/tools/sub-venue-promotions.js.map +0 -1
  1713. package/out/utils/index.d.ts +0 -14
  1714. package/out/utils/index.d.ts.map +0 -1
  1715. package/out/utils/index.js +0 -14
  1716. package/out/utils/index.js.map +0 -1
  1717. package/out/utils/parquet.d.ts +0 -178
  1718. package/out/utils/parquet.d.ts.map +0 -1
  1719. package/out/utils/parquet.js +0 -371
  1720. package/out/utils/parquet.js.map +0 -1
  1721. package/out/utils/slice-stats.d.ts +0 -52
  1722. package/out/utils/slice-stats.d.ts.map +0 -1
  1723. package/out/utils/slice-stats.js +0 -58
  1724. package/out/utils/slice-stats.js.map +0 -1
@@ -1,5 +1,611 @@
1
1
  # `corpus/data/` provenance
2
2
 
3
+ ## `address-source-register.json` — the address-source register (#2323)
4
+
5
+ Which jurisdictions exist, what research has resolved for each, and what is known about every
6
+ source's terms. Generated, **not hand-edited**.
7
+
8
+ ### Regenerate
9
+
10
+ ```sh
11
+ mailwoman corpus source-register \
12
+ --inventory internal/research/global-address-jurisdiction-inventory-v3.csv \
13
+ --sources internal/research/global-functional-authority-corpora-v2.csv \
14
+ --decisions packages/corpus/data/license-decisions.json \
15
+ --resolutions packages/corpus/data/source-resolutions.json \
16
+ --register-version 0.1.0 \
17
+ --authored-at 2026-09-18 \
18
+ --source-version global-address-corpus-spec-v3
19
+ yarn format
20
+ ```
21
+
22
+ That is the command that produced the committed copy. The two CSVs are research working documents and
23
+ live in the `mailwoman-internal` repository under `research/`, so regenerating needs a checkout of it.
24
+ That repository is checked out at `internal/`, which `.git/info/exclude` keeps out of this one, and
25
+ the paths above read from there. They were under this repository's gitignored `.notes/` until 2026-09-20, where
26
+ nothing versioned them and a reviewer could not tell which copy produced the register. The register
27
+ is the committed record here, and it carries every field a reader needs to check a row: the
28
+ publisher, the retrieved URL, and the research pass.
29
+
30
+ Two further inputs are committed beside this file, and both exist because the write below replaces the
31
+ register whole: a value recorded in the register itself is erased by the next run with no error and a
32
+ normal-looking count.
33
+
34
+ `--decisions` defaults to `license-decisions.json` and holds every licence decision somebody made by
35
+ reading a publisher's terms. The build derives each decision as `unchecked` from the research pass's
36
+ access labels and applies the recorded ones over that, so a decision survives a rebuild (#2351).
37
+
38
+ `--resolutions` defaults to `source-resolutions.json` and holds the source fields a review resolved:
39
+ `addressRoles`, `coverage`, `upstreamLineage` and `personalDataReview`. The research CSV records the
40
+ first three as the placeholders `varies`, `country-specific` and the empty string on all 426 of its
41
+ non-rail rows, and has no column for a personal-data review, so a review records its findings here
42
+ rather than by rewriting the record of what the research pass found on 2026-09-18 (#2323).
43
+
44
+ The `oxfmt` pass is required — committed JSON is oxfmt-clean, which `JSON.stringify` cannot
45
+ reproduce. The generator is deterministic, so the artifact is reproducible from the same inputs.
46
+
47
+ ### What no check can establish about this file (#2352)
48
+
49
+ Regeneration is the only thing that catches a hand edit to a generated artifact, and regeneration
50
+ needs the two CSVs in `mailwoman-internal/research/`. A CI runner for this repository has no checkout
51
+ of that one, so the register's correctness rests on whoever last ran the command above, and
52
+ `auditAddressSourceRegister` does not change that: it checks the file's structure, and a publisher's
53
+ name rewritten to something that names no institution is structurally sound.
54
+
55
+ The inputs are now versioned, which is what changed on 2026-09-20. A reviewer can diff the CSV that
56
+ produced the register against the one a later build reads, and a research pass that moves a
57
+ publisher's name leaves a commit saying so. Establishing that the committed register matches its
58
+ inputs still takes running the command with both repositories checked out.
59
+
60
+ A committed digest would not close it either. A sweep that edits the artifact and the digest together
61
+ passes, and one that edits only the artifact fails without saying which side is right.
62
+
63
+ This is the arrangement that let a prose sweep rewrite `Contracts Finder / Find a Tender` to
64
+ `Interfaces Finder / Find a Tender` and `National Database of Public Contracts` to
65
+ `National Database of Public Interfaces`, and let it stand until somebody regenerated. Both are
66
+ restored, and a reader who finds a name here that resolves to no institution should regenerate before
67
+ concluding the publisher renamed itself.
68
+
69
+ ### Inputs, as of the committed build
70
+
71
+ | file | rows | what is read |
72
+ | ---------------------------------------------- | ----: | ---------------------------------------------------------------------- |
73
+ | `global-address-jurisdiction-inventory-v3.csv` | 250 | all 250 rows — every ISO 3166-1 alpha-2 code plus the operational `XK` |
74
+ | `global-functional-authority-corpora-v2.csv` | 2,426 | the 426 rows naming a national source; 2,000 are dropped |
75
+
76
+ The 2,000 dropped rows carry `origin = global_research_rail`: eight global discovery lookups the
77
+ pass repeated once per jurisdiction, which collapse to eight distinct row bodies ignoring the `iso2`
78
+ and `jurisdiction` columns. They name a lookup to perform rather than a source, so they are the
79
+ README's procedure and not rows here.
80
+
81
+ ### Why three columns the CSV carries reach no register field
82
+
83
+ `global-functional-authority-corpora-v2.csv` has an `address_role`, a `coverage` and an `upstream`
84
+ column, and the register declares all three unresolved. That is not the build dropping usable data.
85
+ Over the 426 rows it keeps, `address_role` reads `varies` on all 426 and `coverage` reads
86
+ `country-specific` on all 426. `upstream` is empty on 407 of them: the nineteen rows the 2026-10-01
87
+ rights review added name their own upstream, as `adresse.data.gouv.fr`'s department directory and
88
+ Geonorge's area codelist. The first two are the research
89
+ pass saying it did not determine the field per source.
90
+
91
+ The build reads the columns and refuses to carry a placeholder, because
92
+ `ingestEligibilityProblems` reports "no address role is resolved" and "no coverage has been
93
+ measured" as two of its five conditions. The others are the unreviewed license decision, the absent
94
+ personal-data review, and a status that records the source as uninspected. Writing `varies`
95
+ into `addressRole` would stop both from firing while resolving nothing. A value outside the declared
96
+ placeholder set is carried through, and an `address_role` that is neither a placeholder nor an
97
+ `AddressRole` fails the build rather than being dropped.
98
+
99
+ ### How an edit to the committed file is detected
100
+
101
+ The register carries `contentDigest`, a sha256 the build writes over every other field in it.
102
+ `readAddressSourceRegister` recomputes it on every read and refuses a file that no longer matches,
103
+ naming the regenerate command above.
104
+
105
+ It exists because no check can regenerate this artifact and compare. The two research CSVs are
106
+ working documents under `.notes/`, which is not committed, so a CI job has nothing to rebuild from.
107
+ Without a recorded digest, a hand edit to a generated file is invisible: a prose sweep rewrote
108
+ `Contracts Finder / Find a Tender` to `Interfaces Finder / Find a Tender` and two other publisher
109
+ names, and the structural audit passed, because it checks shape rather than whether a name is the
110
+ publisher's (#2352).
111
+
112
+ The digest covers the register as parsed, not as bytes, because `oxfmt` reformats the file after the
113
+ build writes it. It detects an edit rather than attributing one: rerunning the build after a change
114
+ produces a new digest, which is the intended path, while editing the committed copy does not.
115
+
116
+ Of the four artifacts in this directory, the register is the one carrying a digest. The sub-venue
117
+ lexicon, the reviewed VE postcode tuples and the license decisions do not. The license decisions are
118
+ hand-written by design — that file is an input to this build, not an output of one.
119
+
120
+ ### What the register carries
121
+
122
+ Two tables rather than one nested list. The jurisdiction table is a complete 250-row enumeration;
123
+ the source table is zero or more rows per jurisdiction, 426 over 240 of them. Nesting the second
124
+ inside the first would make a jurisdiction nobody researched structurally identical to one whose
125
+ list happens to be empty, and no reader could tell which they were looking at.
126
+
127
+ | research state | jurisdictions | meaning |
128
+ | -------------- | ------------: | ------------------------------------------------------------- |
129
+ | `seeded` | 240 | at least one national source resolved |
130
+ | `exception` | 7 | somebody looked and recorded that no ordinary registry exists |
131
+ | `unexamined` | 3 | nothing resolved and nothing ruled out |
132
+
133
+ `exception` and `unexamined` are separate values on purpose: a researched absence is a finding and
134
+ an unexamined jurisdiction is not, and collapsing them would let a consumer read "we could not look"
135
+ as "there is nothing there". Every non-`seeded` row carries a `stateReason`, and the audit refuses
136
+ one that does not.
137
+
138
+ | source status | rows | meaning |
139
+ | ----------------------- | ---: | ----------------------------------------------------------------------- |
140
+ | `verified-authority` | 221 | register confirmed; address fields, bulk access and terms not inspected |
141
+ | `retained-original` | 142 | carried from the earlier memo without recheck; no publisher, no URL |
142
+ | `verified-corpus` | 29 | a bulk corpus confirmed reachable |
143
+ | `verified-corpus-stale` | 1 | reachable, and the copy examined has stopped being updated |
144
+
145
+ The `A`/`A~`/`B`/`C`/`D` column is `backboneState`, and it is deliberately not called a tier: this
146
+ repository already has locale tiers 1 through 5 in `scope.config.json` and the
147
+ `shipped` / `build-local` / `private` tiers in the layer interface.
148
+
149
+ ### Three things the research pass did not resolve, on any row
150
+
151
+ Say this plainly rather than making a reader discover it by querying:
152
+
153
+ - **`addressRole` — 0 of 426.** Every row reads `varies`. The specification's section 2 asks for a
154
+ role per source and the pass recorded none, so the research CSV cannot say whether any of these
155
+ sources holds premises, registered offices or mailing addresses.
156
+ - **`upstreamLineage` — 19 of 426.** The 2026-09-18 pass recorded none, so two databases carrying one
157
+ upstream submission could not be collapsed into the single observation they are. The 2026-10-01
158
+ rights review fills the column as it goes, and the nineteen rows it added name the directory or
159
+ codelist the source was found through.
160
+ - **`coverage` — 0 of 426.** Every row reads `country-specific`, which is a scope rather than a
161
+ measurement. A national portal is not evidence of national coverage.
162
+
163
+ A later review resolves these per source in `source-resolutions.json`, and the register's `unresolved`
164
+ array names any field no row carries yet. The audit checks that claim in both directions: a field
165
+ listed there must be absent from every row, and a field not listed must be present on at least one.
166
+ The array is empty today, because a review has resolved each of the four on at least one source.
167
+
168
+ Ask `ingestEligibilityProblems()` rather than reading a status as permission. Of 426 sources it
169
+ admits twenty-nine, twenty-eight national, regional or territorial address publications and Italy's
170
+ ANAC procurement release, and answers the other 397 with the reasons below.
171
+
172
+ **A source reaches a build only through the adapter it names.** `adapterID` records which corpus
173
+ adapter emits a source's rows, `readSourceEligibility` keys each declaring source by
174
+ `<adapterID>:<ISO2>`, and `createIneligibilityReader` looks a row up by its own `source` and
175
+ `country`. The pair is the key because the register scopes a source to one publisher in one
176
+ jurisdiction while one adapter can serve several: `ban` emits eleven jurisdictions from one schema,
177
+ each under its own license decision. Eleven sources declare an adapter today, all of them BAN's, so a
178
+ release-eligible build admits those eleven and refuses every other row with the jurisdiction named.
179
+ A source that declares no adapter stays out of that map, which is correct rather than restrictive,
180
+ since no adapter emits it and no row can arrive under it.
181
+
182
+ ### Licenses: 54 read, 372 unchecked
183
+
184
+ All 426 rows point at a decision record of their own. 47 are `elected`, 7 are `refused`, and the
185
+ other 372 read `unchecked`, which is a finding rather than a placeholder. The 253 web-researched rows
186
+ read `CHECK NATIONAL / DATASET TERMS` verbatim. The other 173 carry an access label from the original
187
+ memo — `Free` on 130 rows, `Free-reg` on 15, `Gated` on 2, `Licensed` on 1 and `Varied` on 1, with
188
+ six compound labels over the remaining 24, as `Free/varied` on 7 and `Free/gated` on 6 are — which
189
+ says what the download costs and grants
190
+ nothing, so treating one as permissive would admit a source on a sentence about price.
191
+
192
+ `unchecked` is a first-class value distinct from a licence reviewed and found permissive, which is
193
+ what `elected` records: the terms, the retrieved copy, the version, and why that grant rather than
194
+ another. `electedLicenseLabel()` is what the mechanical prefix filter in `utils/license.ts` reads,
195
+ and it answers `undefined` for anything not elected.
196
+
197
+ ## `licenses/` — the retrieved texts a decision would be read from
198
+
199
+ Seven grants as retrieved, each with the URL and the retrieval date at its head, plus the failures a
200
+ fetch returned. Written by hand from a fetch rather than by a build, and never edited after
201
+ retrieval — a correction is a new retrieval.
202
+
203
+ The directory carries its own `PROVENANCE.md`, which lists what is there, what could not be
204
+ retrieved, and the two readings a retrieval moved. It is named here so a reader of this file knows
205
+ the directory is accounted for rather than overlooked.
206
+
207
+ `ElectedLicense.retrievedCopy` in the source register names a file there, which is how a decision
208
+ recorded in `license-decisions.json` points at the text it was made from.
209
+
210
+ ## `license-decisions.json` — licence decisions somebody made by reading terms (#2351)
211
+
212
+ Hand-written, and the only file in this directory that is. `address-source-register.json` is
213
+ generated and rewritten whole on every build, so a decision recorded there is erased by the next run
214
+ with no error and a normal-looking count. This file is an input to that build instead.
215
+
216
+ Each key is a `licenseID` the register already declares. Each value is an `ElectedLicense` or a
217
+ `RefusedLicense` minus its `licenseID`, which the build fills from the key so one licence cannot carry
218
+ two decisions. `buildSourceRegister` applies these over the `unchecked` defaults it derives from the
219
+ research pass's access labels, and refuses a decision naming a licence no source points at.
220
+
221
+ An election records four things, which the corpus acceptance rules ask for: the elected terms, the
222
+ copy they were read from, that copy's version where the publisher gives one, and why this grant and
223
+ not another. `auditAddressSourceRegister` refuses an incomplete record and the build refuses a
224
+ register that fails its audit, so an incomplete entry never reaches the committed artifact.
225
+
226
+ **Fifty-four of the register's 426 decisions are recorded**, 47 elected and 7 refused. AusTender's
227
+ publisher, the Australian Department of Finance, grants `CC-BY-3.0-AU` in the AusTender Terms of Use
228
+ §5.1. DENUE's publisher, INEGI, grants its own free-use terms. INSEE grants `Licence Ouverte 2.0` over
229
+ SIRENE in each of nine overseas territories. Kadaster dedicates the Dutch address theme to the public
230
+ domain under CC0 1.0, Klimadatastyrelsen licenses the Danish one under CC BY 4.0, and ČÚZK states
231
+ `žádné podmínky neplatí` on all 6,259 rights elements of the Czech feed. Maa- ja Ruumiamet dedicates
232
+ the Estonian theme to the public domain under CC0 1.0, stated in the ISO 19139 dataset record its own
233
+ WFS capabilities links rather than in the capabilities document, whose `Fees` and `AccessConstraints`
234
+ read `puudub` and describe the service. The Dirección General del
235
+ Catastro grants its own INSPIRE
236
+ access-and-use licence over the cadastral addresses of 52 Spanish territorial offices, and the three
237
+ foral councils that publish through the same national feed grant their own terms over the rest of
238
+ Spain's cadastral addresses: Navarra under `CC-BY-4.0`, Gipuzkoa under `CC-BY-SA-4.0`, and Bizkaia
239
+ under a statement naming no instrument. Each is retained under
240
+ `internal/strategy/rights-receipts/`. Seven publishers refuse in their own words: the Banque Centrale
241
+ des Comores, the ISPF and the Government of Tokelau reserve all rights in a site footer, Kenya's PPRA
242
+ and the Central Bank of Libya do the same, Kosovo's PPRC publishes terms whose clause 12(c)
243
+ reserves copying, reproduction and derivative works except by its express written agreement, and
244
+ Sweden's Lantmäteriet states in the feed that serves its Addresses theme that `Produkten omfattas av
245
+ upphovsrätt. Avtal för användning krävs, avgifter för användning tas ut`. The other 365 read
246
+ `unchecked`.
247
+
248
+ **A refusal is recorded as a decision rather than left as an absence, and the research pass's access
249
+ label can contradict it.** Sweden's row carries the label `Free`, which describes reaching the feed;
250
+ the feed itself requires an agreement and charges fees for use. The label is what prompted the
251
+ reading, and the reading is what the register records.
252
+
253
+ A decision may name a body declared once under `sharedReadings` rather than restating it. One publisher
254
+ can hold a licence over several jurisdictions, and a decision is scoped to one publisher in one
255
+ jurisdiction, so one reading of INSEE's terms produces nine decisions. Each licence id still carries its
256
+ own, so no election spans two jurisdictions; the shared body removes the risk of nine hand-maintained
257
+ copies drifting. The build refuses a `sameAs` naming a reading the file does not declare.
258
+
259
+ Electing terms is necessary and not sufficient. `ingestEligibilityProblems` also requires a resolved
260
+ address role per column, measured coverage, and a personal-data review that does not read `present`,
261
+ none of which a licence decision touches; those live in `source-resolutions.json`. **Sixteen sources
262
+ have exactly one blocking condition left, and fifteen of the sixteen are blocked on their personal-data
263
+ reading alone.** That makes the personal-data question one decision gating fifteen sources rather than
264
+ a question about one. The sixteenth is Uruguay, blocked on its address role instead.
265
+
266
+ ### Why there are 426 of them rather than 12
267
+
268
+ A decision is scoped to one publisher in one jurisdiction, so the register carries one per source.
269
+ Keying a decision by the research pass's access label alone made it as wide as the label:
270
+ `CHECK NATIONAL / DATASET TERMS` covers 253 of the 426 sources across 228 publishers, and `Free`
271
+ covers 130 across 22. Recording one election against either would have granted every source under it on a
272
+ single reading of one publisher's terms.
273
+
274
+ Spain was the worked case of the same defect inside one row. `es-mixed-regulatory-1` was named
275
+ `Catastro, INE` and carried no publisher, so its decision scoped to the source id and covered two
276
+ institutions. The same national feed carries three foral cadastres under their own terms, which the
277
+ same pass gave three rows of their own. The 2026-09-30 rights review split the row per publisher, which moved each
278
+ row's scope onto its own publisher. Naming the publisher is what makes the scoping work, and a row
279
+ that names two defeats it.
280
+
281
+ The jurisdiction is part of the scope because a publisher name is not unique across states. The pass
282
+ wrote `Ministry of Justice` for Belarus, Lebanon and Timor-Leste, `Ministry of Commerce and Industry`
283
+ for five countries, and `Commercial-registration authority` as a description rather than a name.
284
+
285
+ The cost falls on a publisher that genuinely serves several jurisdictions. INSEE covers mainland
286
+ France and nine overseas territories, so it holds ten decisions, and a reviewer who reads its terms
287
+ once records that conclusion ten times. That is the direction to err in: an over-wide election is the
288
+ failure review cannot undo.
289
+
290
+ ## `source-resolutions.json` — source fields a review resolved (#2323)
291
+
292
+ Hand-written, and an input to the register build for the same reason as `license-decisions.json`: the
293
+ build rewrites the register whole.
294
+
295
+ Each key is a `sourceID` the register declares, and each value carries any of `addressRoles`,
296
+ `coverage`, `upstreamLineage` and `personalDataReview`. `buildSourceRegister` applies these over the
297
+ rows it derives from the research CSV and refuses a resolution naming a source the register does not
298
+ carry, because a resolution that resolves nothing is a typo or a source that has been removed.
299
+
300
+ The fields live here rather than in the CSV because the CSV is the record of a research pass. All 390
301
+ of its non-rail rows write `varies` for `address_role`, `country-specific` for `coverage` and an empty
302
+ `upstream`, and no pass has a personal-data column at all. Editing those placeholders would change
303
+ what a pass is recorded as having found. A row's other columns are a different matter: a later pass
304
+ rewrites one when reading the publisher settles something the earlier pass recorded wrongly, and the
305
+ row's `origin` column then names that later pass so the change is legible.
306
+
307
+ `addressRoles` is keyed by the address column's path in the published record rather than holding one
308
+ role for the source, because a publication can carry two roles on one record. AusTender's OCDS release
309
+ gives a `counterparty` address for the supplier and a `facility` address for the procuring entity on
310
+ every contracting process. Taiwan's GCIS register gives a registered company address and a tax-office
311
+ business address in separate columns. `ingestEligibilityProblems` requires at least one column to have
312
+ a role, and the audit refuses an empty map, which would read as resolved while stating nothing.
313
+
314
+ **Fifty-four sources of 426 carry at least one resolved field, and forty-five carry all four.**
315
+ Five of those fifty-four carry only `upstreamLineage`, which is where a located publisher with no
316
+ reachable data sits: Aruba, Curaçao, Sint Maarten, the Caribbean Netherlands and Hong Kong. AusTender
317
+ and five OCDS procurement releases are recorded from whole-year measurements of the published data.
318
+ The nine SIRENE territories are recorded from INSEE's own `dessin de fichier`. Seven of the fifteen
319
+ address publications are recorded from an element census over a whole GML file, the largest being the
320
+ Netherlands' 29,677,448,685 bytes and 10,066,060 features and the newest Wallonia's 5,163,917,131
321
+ bytes and 1,772,312 features. Denmark's is recorded from the column schema of its GeoPackage instead,
322
+ because it publishes the theme as a database, and Finland's and France's from the headers of their
323
+ CSVs, every row of which carries exactly the fields that header declares, 24 for Finland and 23 for
324
+ France. The remaining four are recorded from every
325
+ element of every feature type their WFS publishes, because none of them publishes a file: five types
326
+ and 101 properties for Estonia, five and 44 for Slovakia, four and 32 for Flanders, and one type and
327
+ 19 elements for Poland. Each is retained under `internal/strategy/rights-receipts/`.
328
+
329
+ **A whole-file census answers what a sample cannot.** Wallonia's 56 element names were counted over
330
+ all 5,163,917,131 bytes, which establishes that `ad:locatorName` appears 0 times in the publication
331
+ rather than 0 times in the rows that were read. The count is self-checking: `ad:Address`,
332
+ `ad:AddressLocator`, `ad:GeographicPosition`, `ad:locator` and `ad:position` each appear 1,772,312
333
+ times, as a GML file holds one of each per address, and those 1,772,312 addresses plus the file's
334
+ 55,766 thoroughfare names, 1,963 address-area names, 598 postal descriptors and 264 administrative-unit
335
+ names equal its 1,830,903 `gml:featureMember` elements exactly. A first pass reported those five
336
+ counts as 1,772,315, 1,772,316 and 1,772,314, which is how a chunked reader that re-scans its own
337
+ overlap announces itself.
338
+
339
+ **Seventeen sources are ingest-eligible and fifteen have one blocking condition each.** Fourteen of the
340
+ fifteen read `personalDataReview: present`. The fifteenth is Uruguay, refused on its address role: no
341
+ party object in 127,885 carries an address field of any kind, so that publication is reachable in bulk
342
+ and is not an address source.
343
+
344
+ Sixteen of the seventeen eligible sources are national or regional address publications of European
345
+ states: Spain's Dirección General del Catastro, the three foral cadastres of Bizkaia, Gipuzkoa and
346
+ Navarra, the Netherlands' Kadaster under CC0 1.0, Denmark's Klimadatastyrelsen under CC BY 4.0,
347
+ Czechia's ČÚZK, Estonia's Maa- ja Ruumiamet under CC0 1.0, Slovakia's Ministerstvo vnútra and
348
+ Poland's GUGiK under the INSPIRE controlled value for an absence of conditions, the Flemish Region's
349
+ agentschap Digitaal Vlaanderen under the Modellicentie voor gratis hergebruik Vlaanderen v1.0, the
350
+ Walloon Region's Service public de Wallonie under CC BY 4.0, Finland's Suomen ympäristökeskus under
351
+ CC BY 4.0, France's IGN under Licence Ouverte 2.0, Luxembourg's Administration du cadastre et de
352
+ la topographie under CC0 1.0, and Norway's Kartverket under CC BY 4.0.
353
+
354
+ **An elected licence does not make a source eligible, and Switzerland is the worked case.** swisstopo's
355
+ own terms grant use, distribution, enrichment, processing and commercial use against a mandatory
356
+ source reference, so its licence is elected. Its `personalDataReview` reads `present`, and
357
+ `ingestEligibilityProblems` refuses on that alone, so the 3,303,210-row directory stays out. The
358
+ licence and the eligibility are separate answers and the register keeps them separate.
359
+
360
+ **The largest of them is France's Base Adresse Nationale at 26,117,350 rows**, measured by parsing
361
+ the whole file, against the `plus de 25 millions d'adresses` its publisher states. Poland's 8,625,921
362
+ follows, then the Flemish Region's 4,563,062, Finland's 3,862,373, the Walloon Region's 1,772,312 and
363
+ Slovakia's 1,704,196. The INSPIRE Addresses model has no element for a party, so a party reaches a
364
+ harmonised publication only through a free-text name element. INSPIRE Annex I makes Addresses a
365
+ mandatory theme for every EU member state, so the remaining states are the place to look for more.
366
+
367
+ **Belgium takes three rows and Finland's is not an INSPIRE service at all.** Belgium's regions publish
368
+ separately, so Flanders, Wallonia and Brussels each need their own row, of which the first two are
369
+ recorded. Finland's eligible publication is a pair of bulk files on the publisher's own host rather
370
+ than a WFS or an ATOM feed, which is why `addressRoles` keys it by two CSV columns, `address_fin` and
371
+ `address_swe`, each holding a complete address in its own language.
372
+
373
+ **A service may answer the theme's name with the national schema.** Poland's download service
374
+ publishes one feature type, `ms:AD.Address`, whose element names are the Polish register's own
375
+ columns: `miejscowosc`, `ulica`, `numer`, `kod` and `adres`, the last carrying the whole address as
376
+ one string. No `ad:ThoroughfareName`, `ad:PostalDescriptor` or `ad:AdminUnitName` type exists there to
377
+ join to, so that build needs no component resolution and the personal-data review has to ask what the
378
+ columns are rather than whether `AD:LocatorName` is populated. Reading the theme's name as a promise
379
+ of the harmonised model would have produced a reader that finds nothing.
380
+
381
+ **A regional row covers a region.** The Flemish theme's 4,563,062 addresses are the Flemish Region,
382
+ and Brussels and Wallonia publish their own services, so a Belgian build needs three rows where a
383
+ Danish build needs one. Spain already reads this way, with Catastro's national feed beside three foral
384
+ cadastres.
385
+
386
+ **Switzerland is why that element is opened on every source rather than assumed empty.** Its
387
+ `BDG_NAME` is populated on 20,989 of 3,303,210 rows, 0.64%, and every populated value was read: of
388
+ 1,158 matching a two-capitalised-word shape, 684 carry a structure word and 474 do not, and **at least
389
+ twelve of those 474 are a surname and a given name on a row whose category reads `residential`** —
390
+ `Chaignat Aimée` in Jura, `Rutz Nelly` and `Frigerio Cesare Vittorio` in Ticino, `NB EFH Lauber Jörg`
391
+ in Valais among them. That is a natural person at their home, which this repository decided on
392
+ 2026-09-30 it would not carry. Every other address publication's name element has read as a place,
393
+ farm or building name; this one does not, and a reader that had assumed the element empty would have
394
+ admitted it.
395
+
396
+ `AD:LocatorName` is that free-text element in the INSPIRE model, typed `GeographicalName`, and each
397
+ publication has an equivalent: Norway's `adressetilleggsnavn`, populated on 0.92% of 2,603,354 rows
398
+ and reading as place and farm names with its own `Kilde` column recording where each value came from,
399
+ and Switzerland's `BDG_NAME`. It has to be opened rather
400
+ than assumed empty. The Dutch, Czech, Danish, Slovak and Flemish themes leave it unpopulated, Flanders
401
+ measured at 0 of 800 addresses over 40 windows across its 4,563,062 and Slovakia at 0 of 800 over 40
402
+ windows across its 1,704,196. Estonia fills it on 1,200 of 1,200 addresses sampled over 60 windows
403
+ spread across its 729,973, every one typed `siteName` or `buildingName` in the INSPIRE codelist, with
404
+ 0 of the 1,200 carrying the given-name-and-family-name shape. The values are Estonian farm names,
405
+ which is how a rural Estonian address designates its addressable unit.
406
+
407
+ **A reader that finds the element on one service can miss it on another.** Slovakia nests the locator
408
+ and omits the `name` key entirely, so its absence is structural as well as sampled. Estonia flattens
409
+ the path to `locator_addresslocator_name_locatorname_name_spelling_text`. One traversal run against
410
+ both would report one of them wrongly, which is why each service's measurement states the shape it
411
+ read, and why Slovakia's traversal was checked against Estonia before its 0 was recorded.
412
+
413
+ Those publishers state seven different grants, which is worth knowing before anyone assumes a
414
+ mandatory EU theme comes with uniform terms. Kadaster and Maa- ja Ruumiamet dedicate to the public
415
+ domain, Denmark, Navarra, Wallonia and Finland's SYKE license under CC BY 4.0, Gipuzkoa under
416
+ CC BY-SA 4.0, ČÚZK, the Slovak Ministerstvo vnútra and Poland's GUGiK state the INSPIRE controlled
417
+ value for an absence of conditions, each in its own language, IGN grants Licence Ouverte 2.0 over the
418
+ Base Adresse Nationale, Catastro and Bizkaia grant their own
419
+ access-and-use terms, and Flanders grants its own model licence for free re-use, whose article 4 makes
420
+ attribution the sole condition and whose article 5 leaves the licensee holding the intellectual
421
+ property in works created from the data. The Directive mandates the data rather than its licence.
422
+
423
+ **A publisher may state a licence that covers part of what it publishes.** SYKE's record reads
424
+ `Avoimen tiedon osalta Creative Commons Nimeä 4.0 Kansainvälinen … Muiden tietotuotteiden osalta
425
+ käyttöehdot on määritelty tietoluvassa`: CC BY 4.0 for the open-data part, and a data permit for other
426
+ products. Reading the first clause alone would grant what the second withholds, so the publisher's own
427
+ terms page settles which files are which, and the two this register records are named `open_address`.
428
+ Finland's other address publication states the permit requirement outright: the population register's
429
+ building and dwelling data reads `Tietojen käyttöön saaminen edellyttää Digi- ja väestötietoviraston
430
+ myöntämää käyttöoikeuslupaa`.
431
+
432
+ A member state's WFS states its own access terms in fields that are not the data's licence. `Fees`
433
+ and `AccessConstraints` in a capabilities document describe what calling the service costs, and the
434
+ grant over the data sits in the ISO 19139 dataset record the document links through
435
+ `inspire_dls:SpatialDataSetIdentifier`. Estonia's capabilities read `puudub` in both fields while its
436
+ dataset record grants CC0 1.0, and Slovakia's read `NONE` while its register record states that no
437
+ conditions apply and names CC0, so reading the service fields as the licence understates both grants.
438
+ Flanders states the price of the service in `Fees` and sends the reader to each dataset's metadata for
439
+ the data's terms, which is where its model licence is named. Poland's read `No fees` and
440
+ `No constraints` while its dataset record states `Brak warunków dostępu i użytkowania`, and that
441
+ record is linked per feature type rather than through the extended capabilities, whose
442
+ `inspire_dls:SpatialDataSetIdentifier` states the unreplaced placeholder `mycode`.
443
+
444
+ **A service's own count can be wrong in more than one direction at once.** Poland states three
445
+ numbers for one type and none is its count: a bare `resultType=hits` answers 1000, which is
446
+ MapServer's default feature cap, the same request at `startIndex=1` answers 1, and a feature page
447
+ answers `unknown`. `countWFSFeaturesByPaging` in `@mailwoman/core/api` measures such a type by asking
448
+ which indices hold a feature, doubling then bisecting, and a page straddling the last index confirms
449
+ the boundary. Poland's type holds 8,625,921 features, measured in 51 requests. That function refuses
450
+ a service which answers two different `startIndex` values with the same leading feature, because
451
+ paging an ignored parameter would measure the page cap instead.
452
+
453
+ **`Fees` and `AccessConstraints` can disagree in the same document.** Austria's BEV Addresses service
454
+ states `Fees` `no conditions apply` and `AccessConstraints` `restricted`, and its path carries a
455
+ customer token. Reading the fee field alone records that service as free when its own access field
456
+ says otherwise, so both are read before a service is called reachable.
457
+
458
+ **An HTTP 422 is a validation message naming the fix, where a 404 is an absence.** The export URL in
459
+ Slovakia's own capabilities document answers 422 with
460
+ `{"loc":["path","collection_record_id"],"msg":"value is not a valid uuid"}`, which places the id in
461
+ the path where the capabilities put it in the query, and a second 422 enumerates the permitted
462
+ `export_format` values, which exclude the `gmd` the capabilities asks for. Reading those two bodies
463
+ turned a record recorded as unreachable into
464
+ `https://rpi.gov.sk/api/collection_record/86dea70e-a55b-4241-bd63-4024b3f76b72`. Its own
465
+ `downloadable_urls` holds the service's capabilities URL, which is what ties the record to the
466
+ service rather than a title match.
467
+
468
+ **A dataset record may carry more than one instrument, in separate constraint blocks that answer
469
+ different questions.** The Flemish Adressen record states `Geen beperkingen op de publieke toegang` in
470
+ its access block, and in its re-use block names four things: the model licence for free re-use, two
471
+ instruments governing public-task use by GDI-Vlaanderen participants and by bodies that are not
472
+ participants, and the attribution string the licensor requires, `Bron: Digitaal Vlaanderen`. Flattening
473
+ those blocks loses which instrument governs which re-user.
474
+
475
+ **An identifier that will not serve its own text may serve it under a file extension.** The Flemish
476
+ licence identifier answers `text/html`, `text/turtle`, `application/ld+json` and `application/rdf+xml`
477
+ with one 541,080-byte application rendering to its title. The same path with `.ttl` appended returns
478
+ the RDF, which states `cc:requires cc:Attribution`, and the record's `rdfs:seeAlso` gives the page
479
+ carrying the nine articles.
480
+
481
+ Denmark also shows that the theme is not always GML: it serves a GeoPackage, so its `addressRoles`
482
+ is keyed by a table name rather than an element name.
483
+
484
+ The eighth is Italy's ANAC procurement release, and it is eligible for a different reason.
485
+ `internal/strategy/personal-data-policy-2026-09-30.md` records the operator's decision that a corpus
486
+ carries the addresses of organizations and no address of an identifiable natural person. Italy's
487
+ release names natural persons among its suppliers and records an address for none of them: 0 of
488
+ 11,075 supplier parties carry an `address` object, and every address in the release sits on `buyer`
489
+ or `payer`, both Italian public entities. Its `addressRoles` names those two fields alone. That
490
+ reading is `assessed` rather than `absent`, because the publication does name people.
491
+
492
+ The other `verified-corpus` sources are business registers and procurement portals where the address
493
+ belongs to a party, and some of those parties are natural persons trading on their own account. The
494
+ policy document records why a name-shape filter, an organization identifier and a diffusion-status
495
+ filter each fail to separate the two kinds of party.
496
+
497
+ Every measured source places the role differently, which is why the field is a map keyed by a path rather
498
+ than one role per source.
499
+
500
+ - AusTender carries two roles in two column families on one record.
501
+ - Companies House carries one role in one family.
502
+ - Catastro's INSPIRE AD theme carries one role on the record itself rather than in a column: the
503
+ feature is the address, so the map is keyed by the feature's element name, `AD:Address`.
504
+ - SIRENE carries it on a row-level flag: `etablissementSiege` says whether the establishment is its legal
505
+ unit's seat, so the same columns are a `registered-office` address on one row and a `facility` address
506
+ on the next.
507
+ - An OCDS release keys addresses by party role, and the roles differ per publisher. Germany uses fifteen
508
+ where AusTender uses two. Italy's `supplier` role carries no address at all, so its addresses are a
509
+ `buyer`'s and a `payer`'s, which is AusTender's shape inverted. Chile carries a region and neither a
510
+ postcode nor a locality on any of 544,754 party objects.
511
+
512
+ An OCDS role takes a role here only where OCDS's own codelist defines it. Germany's eight extension roles
513
+ take none rather than a guessed one.
514
+
515
+ ## `training-manifests/<version>.json` — what reached one base corpus (#2375)
516
+
517
+ The frozen training manifest `buildCorpus` writes beside the corpus it produced, copied here so a release
518
+ path can read it. Each file names the sources that contributed, their row counts, their license label, and
519
+ the register decision in force at build time, and carries a `contentDigest` over its own contents. The
520
+ corpus `MANIFEST.json` records the same digest as `training_manifest_digest`, so a committed copy that
521
+ drifted from the build it claims is detectable; `auditTrainingManifest` recomputes the digest and compares
522
+ the source rows against `totalRows`.
523
+
524
+ `mwops release rights-audit` looks a manifest up by the `training.corpus_version` a package's
525
+ `model-card.json` names. Observed 2026-09-28: of the twelve `neural-weights-*` cards, ten carry no
526
+ `training.corpus_version` at all and the two that do carry prose rather than a version, so no card yet
527
+ resolves to a file here. The record exists for the corpus the next base model trains on.
528
+
529
+ `v0.7.0-de-holdout.json` is byte-identical to
530
+ `/mnt/mw/corpus/versioned/v0.7.0-de-holdout/TRAINING_SOURCES.json`, the file that build wrote. Eleven
531
+ sources, 118,938,779 rows, profile `exploratory`, no refusals.
532
+
533
+ ## `builds/<version>/inputs.json` — which adapter read which input (#2375)
534
+
535
+ The adapter inputs of one base corpus build. `corpus build --inputs <path>` reads this file when the
536
+ argument is not JSON text, and `readBuildInputs` resolves each `inputPath` against `$MAILWOMAN_DATA_ROOT`.
537
+ The paths are data-root-relative because the predecessor record,
538
+ `/mnt/mw/corpus/build-logs/v0.5.0-inputs.json`, names paths under `/mnt/playpen/mailwoman-data/`. Those paths
539
+ stopped resolving when the data root moved to `/mnt/mw` on 2026-09-23.
540
+
541
+ The source data itself is not committed and not reproducible from this repository. What the record
542
+ establishes is which path each adapter was pointed at. A corpus `MANIFEST.json` states that for no adapter.
543
+
544
+ `builds/<version>/OVERLAY_PLAN.json` holds what an overlay assembly was asked to add: the per-file
545
+ `parquet`, `source` and `split` triples, the base manifest it extended, the Modal root, and the note.
546
+ `assembleOverlayManifest` writes it next to the `MANIFEST.json` it produced, and the copy here is the one a
547
+ later assembly on the same base reads. The `v0.6.0-register-surface` plan (66 files in three lists) was
548
+ produced by three scripts in a session scratch directory with the old data root written into them, and was
549
+ carried into the next assembly as a hand-written list.
550
+
551
+ No plan exists for `v0.7.0-de-holdout`. Its overlays were assembled before `assembleOverlayManifest`
552
+ wrote one, and its `MANIFEST.json` records the `split`, `source` and `path` of each of the 71 labeled
553
+ slices while recording the `route` of none. A plan reconstructed from the manifest would therefore assert
554
+ a route it cannot read, and that reconstruction is the mechanism `OverlayPlan`'s docstring names: a
555
+ hand-placed split reached `v0.6.0-register-surface` through the caller route and put 770 of DE's
556
+ validation `source_id`s in train, and the filename was the only record that showed it (#2359). The next
557
+ assembly on this base writes its own plan.
558
+
559
+ The rename receipt for this assembly is
560
+ `/mnt/mw/corpus/versioned/v0.7.0-overlay-staging/source-names.json`, beside the files it rewrote. It
561
+ records the per-file row count and the md5 over the ordered `source_id` column before and after, verified
562
+ on both sides, and the md5 of `lib/recipes/sources.ts` as that file stood when the rewrite ran. Later
563
+ edits to the table move that md5, so it dates the rewrite rather than tracking the table.
564
+
565
+ ## `training-manifests/<version>.effective.json` — what reached one trainer (#2383)
566
+
567
+ The frozen manifest above states what a corpus holds. An effective training manifest states what one
568
+ config's audited epoch drew from it, and the two differ by the country filter, the source weights, a zero
569
+ weight, the sampler, `augment_exclude_sources` and every overlay merged after the frozen manifest was
570
+ written. `effective-manifest.run.ts` derives it from the frozen manifest and an `audit_epoch_mixture`
571
+ output, and `mwops release rights-audit` reads `<corpus_version>.effective.json` beside the frozen file.
572
+
573
+ Each row carries the corpus row count, the config weight, the rows drawn, the rows emitted after
574
+ augmentation, and the reason an excluded source was excluded. `emittedButUnrecorded` holds the sources the
575
+ epoch emitted that the frozen manifest does not name, with their row counts.
576
+
577
+ `v0.7.0-de-holdout.effective.json` reads the corpus through
578
+ `corpus-python/src/mailwoman_train/configs/v7.0.0-de-holdout-60k.yaml` at seed 43 over 1,000,000 draws. Of
579
+ the eleven sources the frozen manifest names, nine drew rows and two carry weight 0.0. Thirty-nine further
580
+ sources were emitted under no frozen-manifest entry, 886,620 of the 1,000,000 rows, because the overlays
581
+ carrying them were merged after that manifest was written.
582
+
583
+ ## The `surface` column on a corpus built up to `v0.7.0-de-holdout`
584
+
585
+ `SurfaceOrigin` gained a `rendered` value on 2026-09-29. Before that the enum held `attested`,
586
+ `composed` and `invented`, and every one of the 22 adapters declared `attested` while each of them
587
+ assembles its row's line from the source's fields. A recipe declared `composed`. So on a corpus built up
588
+ to and including `v0.7.0-de-holdout`, `surface` records which stage produced a row rather than whether
589
+ the written form is the publisher's:
590
+
591
+ | recorded value | what it means on those builds |
592
+ | -------------- | ------------------------------------------------------------------ |
593
+ | `attested` | an adapter produced the row, and the line is assembled from fields |
594
+ | `composed` | a recipe produced the row |
595
+ | `invented` | a synthetic row matching no published record |
596
+
597
+ Those builds keep the value they recorded, because a built artifact's value is what it said at the time.
598
+ A reader needing the distinction on one of them derives it from `source` against the adapter inventory
599
+ rather than from `surface`.
600
+
601
+ From the next build, an adapter that assembles a line declares `rendered`, a recipe declares `composed`,
602
+ and `attested` is reserved for a source that publishes the written line itself. No adapter in the tree
603
+ emits `attested` today, so a corpus reporting zero attested rows is a correct census rather than a defect.
604
+
605
+ Measured on `v0.7.0-de-holdout` while this was found: GB holds 813,781 street-bearing rows and every one
606
+ reads `composed`, from `rendered-gb`. Its 13,000,821 rows reading `attested` come from `wof-postalcode`
607
+ and `wof-admin` and carry no street.
608
+
3
609
  ## `reviewed-ve-postcode-tuples.json` — reviewed Venezuelan postcode placement (#1821)
4
610
 
5
611
  Four geographic facts support the Venezuelan `locality postcode, region` convention. The Barcelona
@@ -15,9 +621,9 @@ postcode-to-place join unchanged.
15
621
 
16
622
  ## `sub-venue-lexicon.json` — the sub-venue designator lexicon (#35, waves 1–2)
17
623
 
18
- The vocabulary a corpus slice (and eventually the span proposer) reads to recognize `Terminal 5`,
624
+ The vocabulary a corpus recipe (and eventually the span proposer) reads to recognize `Terminal 5`,
19
625
  `North Terminal`, `Concourse B`, `第1ターミナル` as venue-interior structure. Generated, **not
20
- hand-edited**. See `docs/engineering/sub-venue-corpus-task.mdx` for why this exists — the short
626
+ hand-edited**. See `docs/records/engineering/sub-venue-corpus-task.mdx` for why this exists — the short
21
627
  version is that the `unit` tag was never taught the modifier+designator shape, so closing the class by
22
628
  decode weight would take a bias scale near 11 nats where the stronger designator+identifier evidence
23
629
  needed 6.
@@ -39,7 +645,7 @@ mailwoman corpus sub-venue-extract \
39
645
  mailwoman corpus sub-venue-lexicon \
40
646
  --wikidata-dir $MAILWOMAN_DATA_ROOT/sub-venue/sources/wikidata-subvenue \
41
647
  --extracts "GB=$E/great-britain.jsonl,DE=$E/germany.jsonl,FR=$E/france.jsonl,ES=$E/spain.jsonl,JP=$E/japan.jsonl" \
42
- --overture-db $MAILWOMAN_DATA_ROOT/poi/poi.db \
648
+ --overture-db $MAILWOMAN_DATA_ROOT/db/poi/poi.db \
43
649
  --out corpus/data/sub-venue-lexicon.json
44
650
  npx oxfmt corpus/data/sub-venue-lexicon.json
45
651
  ```
@@ -54,7 +660,7 @@ reproduce. The generator is byte-deterministic and oxfmt is too, so the artifact
54
660
  the same fetch outputs. `sub-venue-lexicon.test.ts` pins determinism directly.
55
661
 
56
662
  The extract JSONLs and the `.osm.pbf` files are build inputs under
57
- `$MAILWOMAN_DATA_ROOT/sub-venue/`, not committed.
663
+ `$MAILWOMAN_DATA_ROOT/sub-venue/` rather than committed.
58
664
 
59
665
  ### Sources, as of the committed build (2026-08-05)
60
666
 
@@ -68,31 +674,31 @@ The extract JSONLs and the `.osm.pbf` files are build inputs under
68
674
  | OpenStreetMap | Geofabrik `japan-latest.osm.pbf` | ODbL | 183,999 |
69
675
  | Overture Places | `poi.db` spatial layer, vintage `2026-05-20.0` | CDLA-Permissive-2.0 | 9,219 |
70
676
 
71
- **The ODbL question, unchanged from wave 1 and still open for the slice.** The committed artifact
677
+ **The ODbL question, unchanged from wave 1 and still open for the recipe output.** The committed artifact
72
678
  contains no OSM geometry and no OSM row. What survives the OSM leg is surface COUNTS — that the token
73
679
  `ターミナル` appears in 1,215 Japanese feature names — plus the `identifierShapes` distribution, whose
74
680
  `examples` are gate reference strings (`B32`, `1A`, `16-18`). Facts and short factual strings are not
75
681
  a substantial extraction from a database, so this table is not treated as a Derived Database. That
76
- reading matches `osm/README.md`'s posture that the ODbL obligation rides on the built slice rather
77
- than on code. **A corpus slice built from OSM rows IS a derived work, and that question is still not
78
- settled** — it gates step 4, not this table.
682
+ reading matches `osm/README.md`'s posture that the ODbL obligation rides on the built recipe output
683
+ rather than on code. **A corpus recipe output built from OSM rows IS a derived work, and that question is still not
684
+ settled** — it gates step 4 rather than this table.
79
685
 
80
686
  ### What the sources are FOR, and what each cannot do
81
687
 
82
688
  Overture and OSM fail differently, which is why both are read.
83
689
 
84
690
  - **Overture (`poi.db`)** is curated venue-interior naming. `concourse` appears 35 times in its
85
- `airport_terminal` slice against 4 in the whole Great Britain OSM extract, and 3 of those 4 are a
691
+ `airport_terminal` category against 4 in the whole Great Britain OSM extract, and 3 of those 4 are a
86
692
  street called CONCOURSE WAY. **But poi.db is four countries** — US 11,521,612 / CA 794,418 /
87
693
  FR 721,352 / MX 644,316, and nothing else (measured 2026-08-05). It can attest en-US, en-CA, fr-FR
88
- and es-MX and nothing else, so a zero count in it is evidence of absence in four countries, not in
694
+ and es-MX and nothing else, so a zero count in it is evidence of absence in four countries rather than in
89
695
  the world.
90
696
  - **OSM** reaches any region with a Geofabrik extract, and carries the `name:<lang>` family, which is
91
697
  where every non-Latin surface in this table comes from. What it does not carry is a curated notion
92
698
  of "interior": 3,204 of Great Britain's 3,273 `hall` hits sit on a `public_transport=platform`,
93
699
  because a British bus stop is named after the village hall it stands outside.
94
700
 
95
- The Overture category set is measured, not guessed. A full scan of all 13,681,698 rows counted, per
701
+ The Overture category set is measured rather than guessed. A full scan of all 13,681,698 rows counted, per
96
702
  category, how many named rows carry a designator token; the ranking is not what a category name
97
703
  predicts. `gas_station` leads the entire table with 12,996 hits, every one of them `station` inside
98
704
  "Holiday Station" or "Chevron Station Seward", and `shoe_store` contributes 708 hits of `wing` because
@@ -112,7 +718,7 @@ and a `hall` on a terminal is a hall.
112
718
 
113
719
  ### Head nouns: what the curation pass needed before it could start
114
720
 
115
- Wikidata gives the ENCYCLOPAEDIC name of a concept, not the designator as addressed. Q849706's
721
+ Wikidata gives the ENCYCLOPAEDIC name of a concept rather than the designator as addressed. Q849706's
116
722
  Spanish label is `terminal aeroportuaria`; the form on an envelope is `Terminal`. That is why wave 1
117
723
  shipped 1,014 uncurated surfaces and could promote none of them — there was nothing promotable in the
118
724
  table. Two derivations run before the harvest:
@@ -189,9 +795,9 @@ list.
189
795
 
190
796
  **A rejection of a SHIPPED designator is advisory.** `neural/venue-structure.ts` carries a flat
191
797
  English vocabulary with no locale gate, and `wing`, `terminal` and `concourse` are in it. This table
192
- cannot un-ship them: the `wing` / en-US rejection tells a slice author which locale to leave out of a
798
+ cannot un-ship them: the `wing` / en-US rejection tells a recipe author which locale to leave out of a
193
799
  generated line, and it does nothing to stop the span proposer firing on "Red Wing". Giving the shipped
194
- vocabulary a per-locale gate is step 4's problem, and it is the single largest thing the slice will
800
+ vocabulary a per-locale gate is step 4's problem, and it is the single largest thing the recipe will
195
801
  want that does not exist yet.
196
802
 
197
803
  The mechanism does hold for anything the lexicon adds. `pier` is promoted for en-GB and rejected for
@@ -200,10 +806,10 @@ en-US, and because it is not in the shipped list, the rejection has teeth: the r
200
806
 
201
807
  ### Identifier shapes are per-region now
202
808
 
203
- `Gate A12` is a rendering, not a string anyone wrote down: all 658 Great Britain `aeroway=gate`
809
+ `Gate A12` is a rendering rather than a string anyone wrote down: all 658 Great Britain `aeroway=gate`
204
810
  features but 13 are unnamed and carry only a `ref`. The table therefore carries a distribution rather
205
811
  than a phrase list — and the distribution turns out to differ by country far more than the shared
206
- vocabulary suggests, so a slice generating `Gate <ref>` for a French address has to sample France's:
812
+ vocabulary suggests, so a recipe generating `Gate <ref>` for a French address has to sample France's:
207
813
 
208
814
  | region | gate refs | most common shape | second | third |
209
815
  | ------ | --------: | ---------------------- | ---------------: | --------------- |
@@ -224,4 +830,4 @@ produces a plausible string that is wrong about Spain.
224
830
  lists are re-declared in `sub-venue-lexicon.ts`. That is a drift surface, and
225
831
  `sub-venue-lexicon.test.ts` pins both lists literally so a change in either place fails a test rather
226
832
  than passing silently. The right move is still the reverse direction: have `neural/venue-structure.ts`
227
- read a committed lexicon slice and delete both copies.
833
+ read a committed lexicon extract and delete both copies.