@mailwoman/corpus 10.3.0 → 10.5.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 (361) hide show
  1. package/README.md +17 -17
  2. package/data/PROVENANCE.md +287 -273
  3. package/data/address-source-register.json +545 -23
  4. package/data/license-decisions.json +120 -0
  5. package/data/licenses/PROVENANCE.md +5 -5
  6. package/data/licenses/cdla-permissive-2.0.md +6 -6
  7. package/data/licenses/geonames-publication.md +5 -5
  8. package/data/licenses/licence-ouverte-2.0.md +3 -3
  9. package/data/licenses/national-address-database.md +12 -12
  10. package/data/licenses/nlod-2.0.md +3 -3
  11. package/data/licenses/sirene-publication.md +13 -6
  12. package/data/licenses/whosonfirst-licenses.md +4 -4
  13. package/data/source-resolutions.json +46 -0
  14. package/data/training-manifests/v0.7.2-address-systems.effective.json +1169 -0
  15. package/data/training-manifests/v0.7.2-address-systems.json +550 -0
  16. package/lib/adapters/cordis/adapter.ts +9 -9
  17. package/lib/adapters/gleif/adapter.ts +7 -8
  18. package/lib/adapters/po-box/adapter.ts +1 -1
  19. package/lib/adapters/source-id.ts +1 -1
  20. package/lib/adapters.ts +4 -2
  21. package/lib/au/adapters/gnaf/adapter.ts +1 -1
  22. package/lib/be/adapters/brussels/adapter.ts +3 -3
  23. package/lib/be/adapters/vlaanderen/adapter.ts +1 -1
  24. package/lib/be/adapters/wallonie/adapter.ts +1 -1
  25. package/lib/build/align.ts +1 -1
  26. package/lib/build.ts +1 -1
  27. package/lib/cz/adapters/cuzk/adapter.ts +2 -2
  28. package/lib/cz/tools/fetch/cuzk.ts +6 -6
  29. package/lib/de/recipes/locale.ts +1 -1
  30. package/lib/dk/adapters/inspire/adapter.ts +1 -1
  31. package/lib/ee/tools/fetch/ads.ts +2 -2
  32. package/lib/es/adapters/bizkaia/adapter.ts +1 -1
  33. package/lib/es/adapters/navarra/adapter.ts +2 -2
  34. package/lib/es/cadastre.ts +2 -2
  35. package/lib/es/tools/fetch/bizkaia.ts +8 -8
  36. package/lib/es/tools/fetch/catastro.ts +6 -6
  37. package/lib/es/tools/fetch/navarra.ts +4 -4
  38. package/lib/fingerprints.ts +3 -3
  39. package/lib/fr/adapters/finess/adapter.ts +6 -5
  40. package/lib/fr/adapters/finess/voie-type.ts +1 -1
  41. package/lib/fr/tools/fetch/annuaire-education.ts +3 -3
  42. package/lib/gb/adapters/os-open/adapter.ts +453 -0
  43. package/lib/gb/constituent-country.ts +52 -0
  44. package/lib/gb/os-open/nearest-link.ts +169 -0
  45. package/lib/gb/os-open/open-names.ts +180 -0
  46. package/lib/gb/os-open/open-roads.ts +145 -0
  47. package/lib/gb/tools/fetch/os-open.ts +251 -0
  48. package/lib/inspire/address.ts +3 -3
  49. package/lib/international/recipes/locale.ts +41 -7
  50. package/lib/it/adapters/anac/adapter.ts +4 -3
  51. package/lib/jp/adapters/wof-admin/adapter.ts +2 -2
  52. package/lib/kr/adapters/juso/label-rows.ts +1 -1
  53. package/lib/kr/adapters/localdata/key-index.ts +2 -1
  54. package/lib/lu/adapters/bd-adresses/adapter.ts +1 -1
  55. package/lib/nl/adapters/kadaster/adapter.ts +2 -2
  56. package/lib/nl/tools/fetch/kadaster.ts +2 -2
  57. package/lib/parquet/shuffle.ts +2 -2
  58. package/lib/parquet/span-sql.ts +8 -6
  59. package/lib/parquet/streams.ts +1 -1
  60. package/lib/parquet/writers.ts +2 -2
  61. package/lib/pl/tools/fetch/emuia.ts +2 -2
  62. package/lib/recipes/scaffold.ts +2 -2
  63. package/lib/recipes/sources.ts +3 -3
  64. package/lib/recipes/sub/venue/render.ts +1 -1
  65. package/lib/recipes/sub/venue/sources.ts +4 -3
  66. package/lib/recipes/sub/venue.ts +4 -3
  67. package/lib/recipes/venue.ts +11 -11
  68. package/lib/registers.ts +7 -0
  69. package/lib/ro/adapters/retea-scolara/adapter.ts +2 -2
  70. package/lib/runner.ts +3 -3
  71. package/lib/sk/tools/fetch/inspire.ts +3 -3
  72. package/lib/source-register/effective-manifest.ts +14 -8
  73. package/lib/source-register/training-manifest.ts +30 -2
  74. package/lib/source-register/types.ts +2 -2
  75. package/lib/source-register.ts +1 -0
  76. package/lib/subvenue/harvest.ts +6 -5
  77. package/lib/subvenue/promotions.ts +3 -3
  78. package/lib/subvenue/surfaces.ts +1 -1
  79. package/lib/subvenue/table.ts +6 -6
  80. package/lib/surfaces/locale.ts +1 -1
  81. package/lib/synthesizers/anchor-absorption.ts +1 -1
  82. package/lib/synthesizers/boundary-stress.ts +3 -2
  83. package/lib/synthesizers/no-street.ts +1 -1
  84. package/lib/synthesizers/po-box.ts +1 -1
  85. package/lib/synthesizers/tail.ts +2 -2
  86. package/lib/test-kit/corpus-recipe.ts +1 -1
  87. package/lib/tools/align-canonical.ts +3 -2
  88. package/lib/tools/audit.ts +1 -1
  89. package/lib/tools/corpus-stats.ts +1 -1
  90. package/lib/tools/fetch/download/network.ts +1 -1
  91. package/lib/tools/fetch/geonames/dump.ts +1 -1
  92. package/lib/tools/fetch/gleif.ts +2 -2
  93. package/lib/tools/fetch/header.ts +1 -1
  94. package/lib/tools/fetch/inspire-addresses.ts +1 -1
  95. package/lib/tools/fetch/vlaanderen-ad.ts +1 -1
  96. package/lib/tools/fetch/wfs-harvest.ts +6 -6
  97. package/lib/tools/fetch/zip-archive.ts +2 -2
  98. package/lib/tools/fetch.ts +2 -0
  99. package/lib/tools/golden/expand.ts +1 -1
  100. package/lib/tools/golden/promote.ts +3 -3
  101. package/lib/tools/golden/relabel-street/directory.ts +2 -1
  102. package/lib/tools/lint/recipe-output/vocab.ts +2 -2
  103. package/lib/tools/lint/recipe-output.ts +1 -1
  104. package/lib/tools/migrate/source-names.ts +1 -1
  105. package/lib/tools/overlay/manifest.ts +62 -10
  106. package/lib/tools/overlay/split-slice.ts +2 -10
  107. package/lib/tools/postcode-triples.ts +2 -2
  108. package/lib/tools/sub/venue/head-nouns.ts +4 -3
  109. package/lib/types.ts +3 -3
  110. package/lib/us/adapters/state/tx-notaries/adapter.ts +1 -1
  111. package/lib/us/adapters/usgov/irs-bmf/adapter.ts +2 -2
  112. package/lib/us/adapters/usgov/nad/adapter.ts +1 -1
  113. package/lib/us/adapters/usgov/nppes/adapter.ts +2 -2
  114. package/lib/us/synthesizers/intersection.ts +4 -4
  115. package/lib/us/synthesizers/street.ts +3 -3
  116. package/lib/us/tools/fetch/nad.ts +2 -2
  117. package/lib/utils/split.ts +59 -6
  118. package/lib/utils/wof-json.ts +1 -1
  119. package/out/adapters/cordis/adapter.d.ts +7 -7
  120. package/out/adapters/cordis/adapter.js +9 -9
  121. package/out/adapters/cordis/adapter.js.map +1 -1
  122. package/out/adapters/gleif/adapter.d.ts +7 -8
  123. package/out/adapters/gleif/adapter.d.ts.map +1 -1
  124. package/out/adapters/gleif/adapter.js +7 -8
  125. package/out/adapters/gleif/adapter.js.map +1 -1
  126. package/out/adapters/po-box/adapter.d.ts +1 -1
  127. package/out/adapters/source-id.d.ts +1 -1
  128. package/out/adapters/source-id.js +1 -1
  129. package/out/adapters.d.ts +2 -2
  130. package/out/adapters.d.ts.map +1 -1
  131. package/out/adapters.js +4 -2
  132. package/out/adapters.js.map +1 -1
  133. package/out/au/adapters/gnaf/adapter.js +1 -1
  134. package/out/be/adapters/brussels/adapter.d.ts +2 -2
  135. package/out/be/adapters/brussels/adapter.js +3 -3
  136. package/out/be/adapters/vlaanderen/adapter.d.ts +1 -1
  137. package/out/be/adapters/wallonie/adapter.d.ts +1 -1
  138. package/out/be/adapters/wallonie/adapter.js +1 -1
  139. package/out/build/align.d.ts +1 -1
  140. package/out/build.js +1 -1
  141. package/out/build.js.map +1 -1
  142. package/out/cz/adapters/cuzk/adapter.d.ts +2 -2
  143. package/out/cz/adapters/cuzk/adapter.js +2 -2
  144. package/out/cz/tools/fetch/cuzk.d.ts +2 -2
  145. package/out/cz/tools/fetch/cuzk.js +4 -4
  146. package/out/cz/tools/fetch/cuzk.js.map +1 -1
  147. package/out/de/recipes/locale.d.ts +1 -1
  148. package/out/de/recipes/locale.js +1 -1
  149. package/out/dk/adapters/inspire/adapter.js +1 -1
  150. package/out/ee/tools/fetch/ads.d.ts +2 -2
  151. package/out/ee/tools/fetch/ads.js +1 -1
  152. package/out/es/adapters/bizkaia/adapter.js +1 -1
  153. package/out/es/adapters/navarra/adapter.d.ts +2 -2
  154. package/out/es/adapters/navarra/adapter.js +2 -2
  155. package/out/es/cadastre.d.ts +2 -2
  156. package/out/es/cadastre.js +2 -2
  157. package/out/es/tools/fetch/bizkaia.d.ts +5 -5
  158. package/out/es/tools/fetch/bizkaia.js +6 -6
  159. package/out/es/tools/fetch/bizkaia.js.map +1 -1
  160. package/out/es/tools/fetch/catastro.d.ts +4 -4
  161. package/out/es/tools/fetch/catastro.js +2 -2
  162. package/out/es/tools/fetch/navarra.d.ts +2 -2
  163. package/out/es/tools/fetch/navarra.js +2 -2
  164. package/out/fingerprints.d.ts +3 -3
  165. package/out/fingerprints.js +3 -3
  166. package/out/fr/adapters/finess/adapter.d.ts +6 -5
  167. package/out/fr/adapters/finess/adapter.d.ts.map +1 -1
  168. package/out/fr/adapters/finess/adapter.js +6 -5
  169. package/out/fr/adapters/finess/adapter.js.map +1 -1
  170. package/out/fr/adapters/finess/voie-type.d.ts +1 -1
  171. package/out/fr/adapters/finess/voie-type.js +1 -1
  172. package/out/fr/tools/fetch/annuaire-education.d.ts +3 -3
  173. package/out/fr/tools/fetch/annuaire-education.js +3 -3
  174. package/out/gb/adapters/os-open/adapter.d.ts +165 -0
  175. package/out/gb/adapters/os-open/adapter.d.ts.map +1 -0
  176. package/out/gb/adapters/os-open/adapter.js +298 -0
  177. package/out/gb/adapters/os-open/adapter.js.map +1 -0
  178. package/out/gb/constituent-country.d.ts +36 -0
  179. package/out/gb/constituent-country.d.ts.map +1 -0
  180. package/out/gb/constituent-country.js +30 -0
  181. package/out/gb/constituent-country.js.map +1 -0
  182. package/out/gb/os-open/nearest-link.d.ts +73 -0
  183. package/out/gb/os-open/nearest-link.d.ts.map +1 -0
  184. package/out/gb/os-open/nearest-link.js +133 -0
  185. package/out/gb/os-open/nearest-link.js.map +1 -0
  186. package/out/gb/os-open/open-names.d.ts +92 -0
  187. package/out/gb/os-open/open-names.d.ts.map +1 -0
  188. package/out/gb/os-open/open-names.js +107 -0
  189. package/out/gb/os-open/open-names.js.map +1 -0
  190. package/out/gb/os-open/open-roads.d.ts +80 -0
  191. package/out/gb/os-open/open-roads.d.ts.map +1 -0
  192. package/out/gb/os-open/open-roads.js +79 -0
  193. package/out/gb/os-open/open-roads.js.map +1 -0
  194. package/out/gb/tools/fetch/os-open.d.ts +91 -0
  195. package/out/gb/tools/fetch/os-open.d.ts.map +1 -0
  196. package/out/gb/tools/fetch/os-open.js +166 -0
  197. package/out/gb/tools/fetch/os-open.js.map +1 -0
  198. package/out/inspire/address.d.ts +3 -3
  199. package/out/inspire/address.js +3 -3
  200. package/out/international/recipes/locale.d.ts +6 -0
  201. package/out/international/recipes/locale.d.ts.map +1 -1
  202. package/out/international/recipes/locale.js +29 -7
  203. package/out/international/recipes/locale.js.map +1 -1
  204. package/out/it/adapters/anac/adapter.d.ts +1 -1
  205. package/out/it/adapters/anac/adapter.d.ts.map +1 -1
  206. package/out/it/adapters/anac/adapter.js +4 -3
  207. package/out/it/adapters/anac/adapter.js.map +1 -1
  208. package/out/jp/adapters/wof-admin/adapter.d.ts +2 -2
  209. package/out/jp/adapters/wof-admin/adapter.js +2 -2
  210. package/out/kr/adapters/juso/label-rows.d.ts +1 -1
  211. package/out/kr/adapters/localdata/key-index.d.ts +2 -1
  212. package/out/kr/adapters/localdata/key-index.d.ts.map +1 -1
  213. package/out/kr/adapters/localdata/key-index.js +2 -1
  214. package/out/kr/adapters/localdata/key-index.js.map +1 -1
  215. package/out/lu/adapters/bd-adresses/adapter.d.ts +1 -1
  216. package/out/lu/adapters/bd-adresses/adapter.js +1 -1
  217. package/out/nl/adapters/kadaster/adapter.js +2 -2
  218. package/out/nl/tools/fetch/kadaster.d.ts +2 -2
  219. package/out/nl/tools/fetch/kadaster.js +2 -2
  220. package/out/parquet/shuffle.d.ts +2 -2
  221. package/out/parquet/shuffle.js +2 -2
  222. package/out/parquet/span-sql.d.ts +8 -6
  223. package/out/parquet/span-sql.d.ts.map +1 -1
  224. package/out/parquet/span-sql.js +8 -6
  225. package/out/parquet/span-sql.js.map +1 -1
  226. package/out/parquet/streams.d.ts +1 -1
  227. package/out/parquet/writers.d.ts +2 -2
  228. package/out/parquet/writers.js +1 -1
  229. package/out/pl/tools/fetch/emuia.d.ts +2 -2
  230. package/out/recipes/scaffold.d.ts +2 -2
  231. package/out/recipes/sources.d.ts +2 -2
  232. package/out/recipes/sources.js +3 -3
  233. package/out/recipes/sources.js.map +1 -1
  234. package/out/recipes/sub/venue/render.d.ts +1 -1
  235. package/out/recipes/sub/venue/render.js +1 -1
  236. package/out/recipes/sub/venue/sources.d.ts +4 -3
  237. package/out/recipes/sub/venue/sources.d.ts.map +1 -1
  238. package/out/recipes/sub/venue/sources.js +4 -3
  239. package/out/recipes/sub/venue/sources.js.map +1 -1
  240. package/out/recipes/sub/venue.d.ts +3 -2
  241. package/out/recipes/sub/venue.d.ts.map +1 -1
  242. package/out/recipes/sub/venue.js +2 -2
  243. package/out/recipes/sub/venue.js.map +1 -1
  244. package/out/recipes/venue.d.ts +7 -6
  245. package/out/recipes/venue.d.ts.map +1 -1
  246. package/out/recipes/venue.js +11 -10
  247. package/out/recipes/venue.js.map +1 -1
  248. package/out/registers.d.ts +7 -0
  249. package/out/registers.d.ts.map +1 -1
  250. package/out/registers.js +7 -0
  251. package/out/registers.js.map +1 -1
  252. package/out/ro/adapters/retea-scolara/adapter.d.ts +2 -2
  253. package/out/ro/adapters/retea-scolara/adapter.js +2 -2
  254. package/out/runner.d.ts +3 -3
  255. package/out/runner.js +2 -2
  256. package/out/sk/tools/fetch/inspire.d.ts +3 -3
  257. package/out/sk/tools/fetch/inspire.js +1 -1
  258. package/out/source-register/effective-manifest.d.ts +11 -5
  259. package/out/source-register/effective-manifest.d.ts.map +1 -1
  260. package/out/source-register/effective-manifest.js +9 -4
  261. package/out/source-register/effective-manifest.js.map +1 -1
  262. package/out/source-register/training-manifest.d.ts +27 -0
  263. package/out/source-register/training-manifest.d.ts.map +1 -1
  264. package/out/source-register/training-manifest.js +13 -1
  265. package/out/source-register/training-manifest.js.map +1 -1
  266. package/out/source-register/types.d.ts +2 -2
  267. package/out/source-register.d.ts +1 -1
  268. package/out/source-register.d.ts.map +1 -1
  269. package/out/source-register.js +1 -1
  270. package/out/source-register.js.map +1 -1
  271. package/out/subvenue/harvest.d.ts +4 -3
  272. package/out/subvenue/harvest.d.ts.map +1 -1
  273. package/out/subvenue/harvest.js +6 -5
  274. package/out/subvenue/harvest.js.map +1 -1
  275. package/out/subvenue/promotions.d.ts +2 -2
  276. package/out/subvenue/promotions.js +3 -3
  277. package/out/subvenue/promotions.js.map +1 -1
  278. package/out/subvenue/surfaces.d.ts +1 -1
  279. package/out/subvenue/table.d.ts +6 -6
  280. package/out/subvenue/table.js +1 -1
  281. package/out/surfaces/locale.d.ts +1 -1
  282. package/out/surfaces/locale.js +1 -1
  283. package/out/synthesizers/boundary-stress.d.ts.map +1 -1
  284. package/out/synthesizers/boundary-stress.js +2 -1
  285. package/out/synthesizers/boundary-stress.js.map +1 -1
  286. package/out/synthesizers/tail.d.ts +2 -2
  287. package/out/synthesizers/tail.js +2 -2
  288. package/out/test-kit/corpus-recipe.d.ts +1 -1
  289. package/out/test-kit/corpus-recipe.js +1 -1
  290. package/out/tools/align-canonical.d.ts.map +1 -1
  291. package/out/tools/align-canonical.js +3 -2
  292. package/out/tools/align-canonical.js.map +1 -1
  293. package/out/tools/audit.js +1 -1
  294. package/out/tools/corpus-stats.d.ts +1 -1
  295. package/out/tools/fetch/download/network.d.ts +1 -1
  296. package/out/tools/fetch/download/network.js +1 -1
  297. package/out/tools/fetch/geonames/dump.d.ts +1 -1
  298. package/out/tools/fetch/geonames/dump.js +1 -1
  299. package/out/tools/fetch/gleif.d.ts +2 -2
  300. package/out/tools/fetch/gleif.js +1 -1
  301. package/out/tools/fetch/header.d.ts +1 -1
  302. package/out/tools/fetch/header.js +1 -1
  303. package/out/tools/fetch/inspire-addresses.d.ts +1 -1
  304. package/out/tools/fetch/vlaanderen-ad.d.ts +1 -1
  305. package/out/tools/fetch/wfs-harvest.d.ts +3 -3
  306. package/out/tools/fetch/wfs-harvest.js +4 -4
  307. package/out/tools/fetch/wfs-harvest.js.map +1 -1
  308. package/out/tools/fetch/zip-archive.d.ts +2 -2
  309. package/out/tools/fetch/zip-archive.js +2 -2
  310. package/out/tools/fetch.d.ts +2 -0
  311. package/out/tools/fetch.d.ts.map +1 -1
  312. package/out/tools/fetch.js +2 -0
  313. package/out/tools/fetch.js.map +1 -1
  314. package/out/tools/golden/expand.js +1 -1
  315. package/out/tools/golden/expand.js.map +1 -1
  316. package/out/tools/golden/promote.d.ts +1 -1
  317. package/out/tools/golden/promote.js +3 -3
  318. package/out/tools/golden/promote.js.map +1 -1
  319. package/out/tools/golden/relabel-street/directory.d.ts +2 -1
  320. package/out/tools/golden/relabel-street/directory.d.ts.map +1 -1
  321. package/out/tools/golden/relabel-street/directory.js.map +1 -1
  322. package/out/tools/lint/recipe-output/vocab.js +2 -2
  323. package/out/tools/lint/recipe-output.d.ts +1 -1
  324. package/out/tools/migrate/source-names.d.ts +1 -1
  325. package/out/tools/overlay/manifest.d.ts +15 -2
  326. package/out/tools/overlay/manifest.d.ts.map +1 -1
  327. package/out/tools/overlay/manifest.js +41 -10
  328. package/out/tools/overlay/manifest.js.map +1 -1
  329. package/out/tools/overlay/split-slice.d.ts.map +1 -1
  330. package/out/tools/overlay/split-slice.js +2 -9
  331. package/out/tools/overlay/split-slice.js.map +1 -1
  332. package/out/tools/postcode-triples.d.ts +1 -1
  333. package/out/tools/postcode-triples.js +2 -2
  334. package/out/tools/postcode-triples.js.map +1 -1
  335. package/out/tools/sub/venue/head-nouns.d.ts +1 -1
  336. package/out/tools/sub/venue/head-nouns.d.ts.map +1 -1
  337. package/out/tools/sub/venue/head-nouns.js +4 -3
  338. package/out/tools/sub/venue/head-nouns.js.map +1 -1
  339. package/out/types.d.ts +3 -3
  340. package/out/types.js +1 -1
  341. package/out/us/adapters/state/tx-notaries/adapter.d.ts +1 -1
  342. package/out/us/adapters/state/tx-notaries/adapter.js +1 -1
  343. package/out/us/adapters/usgov/irs-bmf/adapter.d.ts +1 -1
  344. package/out/us/adapters/usgov/irs-bmf/adapter.js +2 -2
  345. package/out/us/adapters/usgov/nad/adapter.d.ts +1 -1
  346. package/out/us/adapters/usgov/nad/adapter.js +1 -1
  347. package/out/us/adapters/usgov/nppes/adapter.d.ts +1 -1
  348. package/out/us/adapters/usgov/nppes/adapter.js +1 -1
  349. package/out/us/synthesizers/intersection.js +4 -4
  350. package/out/us/synthesizers/intersection.js.map +1 -1
  351. package/out/us/synthesizers/street.js +3 -3
  352. package/out/us/synthesizers/street.js.map +1 -1
  353. package/out/us/tools/fetch/nad.d.ts +2 -2
  354. package/out/us/tools/fetch/nad.js +2 -2
  355. package/out/utils/split.d.ts +21 -0
  356. package/out/utils/split.d.ts.map +1 -1
  357. package/out/utils/split.js +49 -5
  358. package/out/utils/split.js.map +1 -1
  359. package/out/utils/wof-json.d.ts +1 -1
  360. package/out/utils/wof-json.js +1 -1
  361. package/package.json +15 -14
@@ -9,6 +9,94 @@
9
9
  "$sharedReadings": "One publisher can hold a licence over several jurisdictions, and the register scopes a decision to one publisher in one jurisdiction, so reading that publisher's terms once produces several decisions with the same body. A decision reads `sameAs` to name a body declared here, which keeps each licence id's own decision while the prose behind it has one home. The build refuses a `sameAs` naming a reading this file does not declare.",
10
10
  "$ocpRegistryStatements": "Five of the decisions below rest on the OCP Data Registry's own licence statement rather than on the publisher's page. Each of those register rows records its access as OCDS bulk through that registry and its `sourceURL` as the registry, so the copy this repository would fetch is the registry's and the licence it publishes is the one governing that copy. AusTender is the exception: its publisher's own terms were retrieved, which is the stronger record. Retrieving each of the five publishers' own pages would raise them to the same standard and is not done.",
11
11
  "sharedReadings": {
12
+ "ogl-uk-3.0-gb-ordnance-survey-opendata": {
13
+ "state": "elected",
14
+ "electedTerms": "Open Government Licence v3.0",
15
+ "spdx": "OGL-UK-3.0",
16
+ "termsVersion": "3.0",
17
+ "retrievedCopy": "internal/strategy/rights-receipts/gb-os-opendata-2026-10-14/",
18
+ "retrievedAt": "2026-10-14",
19
+ "electedBecause": "Ordnance Survey licenses four OS OpenData products, Code-Point Open, OS Open Names, OS Open Roads and OS Open USRN, under the Open Government Licence v3.0. Each download ships a `licence.txt`, and each one states `Your use of OS OpenData is subject to the terms at http://os.uk/opendata/licence` (Code-Point Open words it `Your use of data is subject to terms at www.ordnancesurvey.co.uk/opendata/licence`). Both addresses redirected on 2026-10-14 to `https://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/`, 10,450 bytes, sha256 `f5b2b9f2af63647cde889fa6c3508f5705925295b74912c68caa28dd37e64aa5`. OS's own `docs.os.uk` terms page, 2,936 bytes, sha256 `83e7e1047ff833d4144e451f596290543b5673915733d3a26b8d48cac5253d7e`, states that the OS OpenData terms `are contained within the Open Government Licence` and that the attribution statement `can be found in the licence file downloaded with the data`. The licence files read are Code-Point Open 2026-08, 346 bytes, sha256 `2273fa3818d2b009ab38c11f3cfc9563e48c0e9e940bf73c1a3685b3188255ad`; OS Open Names 2026-07, 438 bytes, sha256 `1be838dcdba14daa10f6a5015833100858711fcda9e495a9442c9295d357f99f`; OS Open Roads 2026-04, 190 bytes, sha256 `65f3f555aa3e42e93b4db24a29ad277beefd12bc4871076d558c1cc41a6b216d`; and OS Open USRN 2026-10, 442 bytes, sha256 `41e89b74974c31cbb39efec9d78db825107e8fca565611e7098f92c94c6be62e`. The attribution differs by product. Open Roads requires `Contains Ordnance Survey data © Crown copyright and database right 2026`. Code-Point Open and Open Names add `Contains Royal Mail data © Royal Mail copyright and database right 2026` and `Contains National Statistics data © Crown copyright and database right 2026`. Open USRN requires `Contains OS data © Crown Copyright and database rights 2026` and, `Where you use data relating to Scotland`, `This product contains data created and maintained by Scottish Local Government.` No licence file or page read restricts the Royal Mail-derived postcode data beyond that acknowledgement, which is a statement about the text read; the OGL's own exemption for `third party rights the Information Provider is not authorised to license` stays in force. Code-Point Open's `product-supply` page, 4,936 bytes, sha256 `3f71e7910ce3a0107af8217563eb8e193a715c37e91bb5166078fae8ebeb942a`, states `Code-Point Open covers postcodes for Great Britain`, and the 2026-08 release has no BT area, so no Northern Ireland postcode and no Land & Property Services term reaches these sources. This reading covers the licence only. A row that joins a real street to a real postcode and synthesizes a house number can reproduce a residential address, which is a question for the personal-data review in `source-resolutions.json`, not for this reading.",
20
+ "operations": {
21
+ "fetch": {
22
+ "permission": "permitted",
23
+ "basis": "publisher-grant",
24
+ "because": "OGL v3.0 grants the right to copy, publish, distribute and transmit the Information."
25
+ },
26
+ "extract": {
27
+ "permission": "permitted",
28
+ "basis": "publisher-grant",
29
+ "because": "OGL v3.0 grants the right to adapt the Information, which covers reading street names, postcodes and coordinates out of the published files."
30
+ },
31
+ "transform": {
32
+ "permission": "permitted",
33
+ "basis": "publisher-grant",
34
+ "because": "OGL v3.0 grants the right to adapt the Information, which covers joining postcodes to street centrelines and synthesizing a house number."
35
+ },
36
+ "train": {
37
+ "permission": "permitted",
38
+ "basis": "publisher-grant",
39
+ "because": "OGL v3.0 grants adaptation and commercial and non-commercial exploitation, and fitting a model adapts and exploits the Information."
40
+ },
41
+ "redistribute-data": {
42
+ "permission": "permitted",
43
+ "basis": "publisher-grant",
44
+ "because": "OGL v3.0 grants publication and distribution, conditioned on the per-product attribution statements in each download's `licence.txt`, including the Scottish Local Government acknowledgement for Open USRN data relating to Scotland."
45
+ },
46
+ "redistribute-model": {
47
+ "permission": "unreviewed",
48
+ "because": "Whether trained weights carry the attribution condition is the question `internal/strategy/counsel-briefing-2026-09-27-part-2.md` records for attribution licenses, and the OGL text does not answer it."
49
+ },
50
+ "commercial-sublicense": {
51
+ "permission": "unreviewed",
52
+ "because": "OGL v3.0 grants a worldwide, royalty-free, perpetual, non-exclusive license and states no sublicensing right. Whether that satisfies a commercial agreement is a drafting question."
53
+ }
54
+ }
55
+ },
56
+ "ogl-uk-3.0-gb-organization-registers": {
57
+ "state": "elected",
58
+ "electedTerms": "Open Government Licence v3.0",
59
+ "spdx": "OGL-UK-3.0",
60
+ "termsVersion": "3.0",
61
+ "retrievedCopy": "internal/strategy/rights-receipts/gb-org-registers-2026-10-12/",
62
+ "retrievedAt": "2026-10-12",
63
+ "electedBecause": "Five Great Britain publishers of organization registers license the register under the Open Government Licence v3.0, and the pages read for each are retained in the receipt directory. Three state the license for the data itself. CQC's `using-cqc-data` page, 76,786 bytes, sha256 `2db3eec0967e349830b9e5622e7887e6e5284760d4212f3f66801415147f7ba2`, states `Our data is made available under the Open Government Licence. By using it you are accepting the conditions of this licence.` The Food Standards Agency's terms page, 99,851 bytes, sha256 `b301243640a0230e84a75316267df54d1621fc8cdbd75ff8b835872f42360dbf`, states `Use of proprietary food hygiene ratings information and services is subject to the terms of the Open Government Licence (OGL).` NHS England's TRUD terms, 20,140 bytes, sha256 `b2c90ebee42abff95b1ad5c963eae1ace22e4449e326b4b9a3aa781d95e97e7f`, state `you can use NHS England Content, including copying it, adapting it, and using it for any purpose, including commercially, provided you follow these terms and conditions and the terms of the OGL`, and the Organisation Data Service item page, 16,610 bytes, sha256 `d8d9e77435333049425de7289e89915e4f9a8871a16797fedd1f6c26c63d35d7`, applies `Open Government Licence for SDS`. TRUD excludes `Information owned by third parties which we are not authorised to licence on to you`, which `will be clearly marked`. Two rest on the GOV.UK footer alone, `All content is available under the Open Government Licence v3.0, except where otherwise stated`: DVSA's active MOT test stations publication, 76,532 bytes, sha256 `58184d539a607e2046a1d47f0860c98b2185488bd0c0fadac4c5e59273788a15`, and the Get Information about Schools downloads page, 47,303 bytes, sha256 `270a0e64ae36c363de65c25a2363bcfe255f5ccdcb115da340d44b14a78352be`. Neither page states anything otherwise. **None of the pages read restricts the address fields the way MHCLG's energy performance notice restricts its AddressBase- and PAF-derived fields**, and that is a statement about the text read rather than about where each publisher's address columns came from. GIAS and CQC are the two most likely to have matched addresses against AddressBase, so their field documentation is the read that would settle it. The Food Standards Agency withholds address and geocoding data where an establishment operates from a private address, per `ratings.food.gov.uk/open-data`, 397,874 bytes, sha256 `364a2f3293febbe54f52ff09bf5ac0b71fafce052ff6463566493d9d0069fb4e`.",
64
+ "operations": {
65
+ "fetch": {
66
+ "permission": "permitted",
67
+ "basis": "publisher-grant",
68
+ "because": "OGL v3.0 grants the right to copy, publish, distribute and transmit the Information."
69
+ },
70
+ "extract": {
71
+ "permission": "permitted",
72
+ "basis": "publisher-grant",
73
+ "because": "OGL v3.0 grants the right to adapt the Information, which covers reading the address columns out of the published file."
74
+ },
75
+ "transform": {
76
+ "permission": "permitted",
77
+ "basis": "publisher-grant",
78
+ "because": "OGL v3.0 grants the right to adapt the Information."
79
+ },
80
+ "train": {
81
+ "permission": "permitted",
82
+ "basis": "publisher-grant",
83
+ "because": "OGL v3.0 grants adaptation and commercial and non-commercial exploitation, and fitting a model adapts and exploits the Information."
84
+ },
85
+ "redistribute-data": {
86
+ "permission": "permitted",
87
+ "basis": "publisher-grant",
88
+ "because": "OGL v3.0 grants publication and distribution, conditioned on the attribution statement the publisher specifies."
89
+ },
90
+ "redistribute-model": {
91
+ "permission": "unreviewed",
92
+ "because": "Whether trained weights carry the attribution condition is the question `internal/strategy/counsel-briefing-2026-09-27-part-2.md` records for attribution licenses, and the OGL text does not answer it."
93
+ },
94
+ "commercial-sublicense": {
95
+ "permission": "unreviewed",
96
+ "because": "OGL v3.0 grants a worldwide, royalty-free, perpetual, non-exclusive license and states no sublicensing right. Whether that satisfies a commercial agreement is a drafting question."
97
+ }
98
+ }
99
+ },
12
100
  "ocp-registry-cc0-1.0": {
13
101
  "state": "elected",
14
102
  "electedTerms": "Creative Commons CC0 1.0 Universal Public Domain Dedication",
@@ -544,6 +632,38 @@
544
632
  "publisherStatement": "CHECK NATIONAL / DATASET TERMS",
545
633
  "refusedBecause": "The Central Bank of Libya reserves all rights in its own footer, `© All rights reserved 2026، The Central Bank of Libya.`, and its site carries no data license and no reuse permission. Its English home page holds no licensing term in 222,200 bytes and it publishes no terms-of-use page; `/en/terms-of-use/` answers HTTP 404 and the contact page, 147,508 bytes, sha256 `765d8a3adabde677eee5c8afcc2d4be1cf36d26b2e6d8d2498586cc2974750a4`, carries the footer and nothing further. The only address the site publishes is `webdesign@email.ly`, which belongs to whoever built the site rather than to the bank, so a request goes through the contact form at `https://cbl.gov.ly/en/contact/`. Do not substitute a third party's dataset: a humdata query for Libya returns five `cc-by` datasets, every one published by the World Bank Group or the AfDB rather than by the central bank."
546
634
  },
635
+ "unchecked-access-free-registration-gb-gb-property-building-2": {
636
+ "state": "refused",
637
+ "publisherStatement": "Free-reg",
638
+ "retrievedCopy": "internal/strategy/rights-receipts/gb-epc-2026-10-12/",
639
+ "retrievedAt": "2026-10-12",
640
+ "refusedBecause": "MHCLG licenses the energy performance of buildings data in two parts, and the part this register needs is the restricted one. `https://get-energy-performance-data.communities.gov.uk/guidance/licensing-restrictions`, 19,402 bytes, sha256 `e2164d92b85e88b35db873985b278d02e0cc94576b70b9dca4ddb8ccf5682226`, states that `All data fields other than the address and postcode data` are under the Open Government Licence v3.0, UPRNs included. The address fields, address 1 to 3 and the postcode, were `processed against Ordnance Survey's Address Base Premium product, which incorporates Royal Mail's PAF® database`, and Ordnance Survey and Royal Mail `reserve all their respective copyright, database rights`. The notice permits the address data `solely for specific purposes related to the energy performance of buildings`, plus non-commercial research and private study, and states that `Any use of address data which is not specified in this notice … requires an appropriate licence from Ordnance Survey.` Training a general-purpose address parser and redistributing weights fitted on these strings fall outside the permitted purposes, so the route to permission is an Ordnance Survey license. The OGL fields alone carry a UPRN without an address string, which gives the corpus no labeled address text. The same service's `/guidance/data-protection-requirements`, 19,054 bytes, sha256 `599a56a0722221c25bdac7057bf9b6152b46c8971b0ee118c79782b0e41a6668`, states `Address level data concerning the energy performance of buildings constitute personal data`, which is a second, independent refusal under the 2026-09-30 decision that the corpus carries organization addresses only."
641
+ },
642
+ "unchecked-access-free-gb-gb-health-1": { "sameAs": "ogl-uk-3.0-gb-organization-registers" },
643
+ "unchecked-access-free-gb-gb-health-2": { "sameAs": "ogl-uk-3.0-gb-organization-registers" },
644
+ "unchecked-access-free-gb-gb-food-pharma-1": { "sameAs": "ogl-uk-3.0-gb-organization-registers" },
645
+ "unchecked-access-free-gb-gb-education-1": { "sameAs": "ogl-uk-3.0-gb-organization-registers" },
646
+ "unchecked-access-free-gb-driver-and-vehicle-standards-agency": {
647
+ "sameAs": "ogl-uk-3.0-gb-organization-registers"
648
+ },
649
+ "unchecked-access-free-gb-gb-public-administration-1": { "sameAs": "ogl-uk-3.0-gb-ordnance-survey-opendata" },
650
+ "unchecked-access-free-gb-gb-public-administration-2": { "sameAs": "ogl-uk-3.0-gb-ordnance-survey-opendata" },
651
+ "unchecked-access-free-gb-gb-transport-1": { "sameAs": "ogl-uk-3.0-gb-ordnance-survey-opendata" },
652
+ "unchecked-access-free-gb-gb-transport-2": { "sameAs": "ogl-uk-3.0-gb-ordnance-survey-opendata" },
653
+ "unchecked-access-free-gb-gb-property-building-3": {
654
+ "state": "refused",
655
+ "publisherStatement": "Free",
656
+ "retrievedCopy": "internal/strategy/rights-receipts/gb-org-registers-2026-10-12/",
657
+ "retrievedAt": "2026-10-12",
658
+ "refusedBecause": "The Valuation Office Agency publishes the non-domestic rating lists under its own restricted terms and states that the Open Government Licence does not apply. Its download page, `https://voaratinglists.blob.core.windows.net/html/rlidata.htm`, 33,414 bytes, sha256 `dafa09c510cf68e3575adbdd256a7b95ff86f1193ecaeda5dce6bd355df49be0`, reads `VO Rating List Downloads are only available under our restricted` license terms and `open government licence does not apply`, and `The information must be used in line with the restricted license terms and conditions`. The row's note describes the lists as the commercial complement to Price Paid Data, which makes this the largest Great Britain business-premises register refused so far. The route to permission is the VOA's restricted license, whose clauses this reading did not open."
659
+ },
660
+ "unchecked-access-free-gb-general-pharmaceutical-council": {
661
+ "state": "refused",
662
+ "publisherStatement": "Free",
663
+ "retrievedCopy": "internal/strategy/rights-receipts/gb-org-registers-2026-10-12/",
664
+ "retrievedAt": "2026-10-12",
665
+ "refusedBecause": "The General Pharmaceutical Council reserves commercial use in its web terms. `https://www.pharmacyregulation.org/web-terms-use`, 88,394 bytes, sha256 `c33632ff36e296d16919b1111b121206e59f261c0b6bad7a546f64e42b88983b`, states `You cannot use any of the content or material from or any part of our websites for commercial purposes without obtaining a licence to do so from either us or our licensors.` The registered premises list is published on that website, and this reading found no separate data license for it. A request to the council could produce one."
666
+ },
547
667
  "unchecked-national-terms-km-banque-centrale-des-comores": {
548
668
  "state": "refused",
549
669
  "publisherStatement": "CHECK NATIONAL / DATASET TERMS",
@@ -3,7 +3,7 @@
3
3
  This directory holds the copies that license decisions are read from. `ElectedLicense.retrievedCopy` in the source
4
4
  register points to a file here, so a later reviewer checks the same text instead of the page as it reads that day.
5
5
 
6
- A publisher's page changes over time. A license is versioned but the page that carries it is not, so a decision
6
+ A publisher's page changes over time. A license is versioned but the page that publishes it is not, so a decision
7
7
  recorded against the page cannot be rechecked once the page changes. Each file here holds the text as retrieved, with
8
8
  the URL and the retrieval date at its head, and is never edited after that. A correction requires a new retrieval.
9
9
 
@@ -26,19 +26,19 @@ The first filename keeps the publisher's own spelling, because it is the name of
26
26
 
27
27
  Five of the seven files are here although no register source points to them. The four runtime bundles' rights records
28
28
  cite those terms, and an operator acts on them today. A file that covers a bundle instead of a register source is the
29
- ordinary case. The terms for a source that nobody can ingest can wait, but the terms for a database that somebody
29
+ ordinary case. The terms for a source that no operator can ingest can wait, but the terms for a database that somebody
30
30
  downloads this week cannot.
31
31
 
32
32
  The National Address Database is the strongest reason for putting bundles first. Its rows are 85,482,142 of the `us` bundle's
33
- 125,276,536, which is 68.2%. The bundle's record mentioned neither the database nor the Department of Transportation
33
+ 125,276,536, or 68.2%. The bundle's record mentioned neither the database nor the Department of Transportation
34
34
  until a census of the shipped databases' own `source` column found them.
35
35
 
36
36
  Three of the five retrievals changed a record instead of only supporting one. The Who's On First page lists Ordnance
37
37
  Survey of Northern Ireland and Ordnance Survey Ireland and never mentions Royal Mail, so half of the `candidate`
38
38
  bundle's open question concerned a body absent from the text. CDLA-Permissive-2.0 §3.1 states that the agreement
39
39
  imposes no restriction or obligation on Results, and §5.4 defines Results to include machine learning models. The
40
- `poi` bundle's conditions therefore separate what redistributing the database requires from what the model carries.
41
- The National Address Database's page states both that the data carries no copyright under 17 U.S.C. § 105 and that it
40
+ `poi` bundle's conditions therefore separate what redistributing the database requires from what the model must include.
41
+ The National Address Database's page states both that the data has no copyright under 17 U.S.C. § 105 and that it
42
42
  is not intended for use as a mailing list under state statutes. A record that kept only the first statement would lose
43
43
  the second.
44
44
 
@@ -5,9 +5,9 @@
5
5
  - Publisher: The Linux Foundation, as the steward of the agreement
6
6
  - Version stated in the text: 2.0
7
7
 
8
- This is the grant the Overture Maps Foundation places its Places theme under, which is the `poi`
8
+ This is the grant the Overture Maps Foundation places its Places theme under. That theme is the `poi`
9
9
  runtime bundle. The text was taken from the SPDX license list rather than from `cdla.dev`, because
10
- SPDX publishes it as plain text and the two carry the same words.
10
+ SPDX publishes it as plain text and the two contain the same words.
11
11
 
12
12
  ## Data-sharing terms (quoted)
13
13
 
@@ -16,7 +16,7 @@ SPDX publishes it as plain text and the two carry the same words.
16
16
 
17
17
  That is the one condition the agreement places on redistributing the database, and it is a condition
18
18
  to supply this text rather than to name a contributor. This repository hosts `poi.db` for download,
19
- so the condition attaches to that hosting, which is why this file is committed.
19
+ so the condition attaches to that hosting. This file is committed to meet it.
20
20
 
21
21
  ## A model trained on the data, quoted
22
22
 
@@ -28,14 +28,14 @@ so the condition attaches to that hosting, which is why this file is committed.
28
28
  > 5.4. "Results" means any result obtained by computational analysis of Data, including for example
29
29
  > machine learning models and models' insights.
30
30
 
31
- Read together, the agreement states that a machine-learning model is a Result and that it carries no
31
+ Read together, the agreement states that a machine-learning model is a Result and that it is subject to no
32
32
  restriction or obligation under the agreement. Among the grants this repository reads, this is the
33
33
  one that addresses a trained model in its own text rather than leaving it to be argued from the
34
34
  definition of a derived work.
35
35
 
36
36
  Two things that does not establish. It makes no statement about the terms of whatever sources Overture
37
- itself drew each row from, which the `poi` bundle's record still carries as an open question. And it
38
- is a statement about this agreement alone, so it does not decide the question for any other source.
37
+ itself drew each row from. The `poi` bundle's record still lists those terms as an open question. And
38
+ it is a statement about this agreement only, so it does not decide the question for any other source.
39
39
 
40
40
  ## What this text does not settle
41
41
 
@@ -6,7 +6,7 @@
6
6
  - Publisher: GeoNames
7
7
  - Version stated in the text: Creative Commons Attribution 4.0, in the export readme
8
8
 
9
- GeoNames folds into the `candidate` runtime bundle, whose record names its terms. Two of the
9
+ GeoNames folds into the `candidate` runtime bundle. That bundle's record identifies its terms. Two of the
10
10
  publisher's own pages state them and only one gives a version.
11
11
 
12
12
  ## What the export readme states, quoted in full
@@ -24,11 +24,11 @@ publisher's own pages state them and only one gives a version.
24
24
  The about page names no version. The readme beside the files themselves names 4.0. That readme travels
25
25
  with the data, so the bundle's record states 4.0 and names this file.
26
26
 
27
- Both sources matter because the two pages give different information. The about page alone leaves the
28
- version unknown. Creative Commons Attribution's conditions differ across versions.
27
+ Both sources matter because the two pages give different information. Read without the readme, the about
28
+ page leaves the version unknown. Creative Commons Attribution's conditions differ across versions.
29
29
 
30
30
  ## What this text does not settle
31
31
 
32
32
  Which GeoNames records reached the `candidate` bundle, and therefore what has to be attributed for
33
- which rows. GeoNames itself integrates data from other sources, which its about page states in those
34
- words, and this text makes no statement about the terms of those. No election is made here.
33
+ which rows. GeoNames itself integrates data from other sources. Its about page states that in those
34
+ words. This text makes no statement about the terms of those. No election is made here.
@@ -6,7 +6,7 @@
6
6
  - Version stated in the text: 2.0
7
7
 
8
8
  The canonical page `https://www.etalab.gouv.fr/licence-ouverte-open-licence/` now redirects to
9
- `https://www.data.gouv.fr/`, so the text was taken from Etalab's own repository, which is where the page sourced it.
9
+ `https://www.data.gouv.fr/`, so the text was taken from Etalab's own repository. The page sourced its text from that repository.
10
10
 
11
11
  ## Rights granted, quoted
12
12
 
@@ -27,10 +27,10 @@ adapting, modifying, distributing, and exploiting the information commercially.
27
27
  - The reuser must not mislead a third party about the content, source or update date of the information.
28
28
  - The information is provided `telle que produite ou reçue, sans autre garantie expresse ou tacite`, with no warranty
29
29
  against defects, errors, or continued availability.
30
- - The reuser carries sole responsibility for the reuse.
30
+ - The reuser bears sole responsibility for the reuse.
31
31
 
32
32
  ## What this text does not settle
33
33
 
34
34
  It grants reuse of the information. Whether model weights trained on that information are themselves a reuse under this
35
35
  grant, and what attribution discharges the condition for a trained model where no individual record is recoverable, are
36
- readings the text does not make. The grant carries no share-alike condition.
36
+ readings the text does not make. The grant imposes no share-alike condition.
@@ -6,9 +6,9 @@
6
6
  - Version stated in the text: none. The page states it was last updated 2026-01-09.
7
7
 
8
8
  The National Address Database supplies 85,482,142 of the 125,276,536 address points in the `us`
9
- runtime bundle, which is 68.2% of it. The bundle's record mentioned neither the database nor its
9
+ runtime bundle. That count is 68.2% of the bundle. The bundle's record mentioned neither the database nor its
10
10
  publisher until this text was read. The rows reach the bundle through the Overture Maps Foundation.
11
- Overture stamps each row `NAD`, so the bundle carries the publisher on every row.
11
+ Overture stamps each row `NAD`, so every row in the bundle identifies the publisher.
12
12
 
13
13
  ## What the disclaimer states about reuse, quoted
14
14
 
@@ -20,22 +20,22 @@ Overture stamps each row `NAD`, so the bundle carries the publisher on every row
20
20
  > Although the NAD is open data, it is not intended for use as a mailing list and is subject to
21
21
  > individual state statutes that prohibit it's use as a mailing list.
22
22
 
23
- These two sentences appear on the same page, and a record that says only "no copyright under 17
24
- U.S.C. § 105" would lose the second one. The first sentence says that copyright imposes no
25
- restriction. The second states a restriction from another source: individual state statutes, which
26
- the page neither names nor lists, on one particular use. A postal address product is close to that
23
+ These two sentences appear on the same page, and a record that states only "no copyright under 17
24
+ U.S.C. § 105" would lose the second one. The first sentence states that copyright imposes no
25
+ restriction. The second states a restriction from another source on one particular use. That source is
26
+ individual state statutes, and the page neither names nor lists them. A postal address product is close to that
27
27
  use, so the restriction belongs in the record and not in a footnote.
28
28
 
29
29
  This text does not establish which states have those statutes, what they prohibit, or whether any of
30
30
  them applies to what this repository does with the rows.
31
31
 
32
- ## What the disclaimer states about NAD's own sources, quoted
32
+ ## What the disclaimer states about NAD's own sources
33
33
 
34
- > The National Address Database (NAD) is, with few exceptions, aggregated from state data, which is
35
- > in turn aggregated from local data.
34
+ The disclaimer states that the National Address Database (NAD) is, with few exceptions, aggregated from state
35
+ data. The state data is in turn aggregated from local data.
36
36
 
37
- > The states that partner with USDOT to provide data for the NAD do so willingly, with no obligation.
38
- > Not every state that provides data to the NAD has complete coverage.
37
+ The disclaimer also states that the states partnering with USDOT provide NAD data voluntarily and under no
38
+ obligation. It adds that not every contributing state has complete coverage.
39
39
 
40
40
  NAD is therefore itself an aggregate. The federal-work statement covers NAD as published and does not
41
41
  cover each contributing state's own publication.
@@ -43,4 +43,4 @@ cover each contributing state's own publication.
43
43
  ## What this text does not settle
44
44
 
45
45
  The text does not say which state or local body supplied a given NAD row, or what that body requires.
46
- The bundle's rows carry `overture:NAD` and record no finer source. This file elects no license.
46
+ The bundle's rows have the source `overture:NAD` and record no finer source. This file elects no license.
@@ -3,13 +3,13 @@
3
3
  - Source: `https://raw.githubusercontent.com/spdx/license-list-data/main/text/NLOD-2.0.txt`, with
4
4
  `https://data.norge.no/nlod/en/2.0` returning HTTP 200 on the same date
5
5
  - Retrieved: 2026-09-21
6
- - Publisher: the responsible Norwegian ministry, named in the text as the Ministry of Local
6
+ - Publisher: the responsible Norwegian ministry. The text identifies it as the Ministry of Local
7
7
  Government and Modernisation
8
8
  - Version stated in the text: 2.0
9
9
 
10
10
  An earlier pass recorded `data.norge.no/nlod/en/2.0` as returning HTTP 406 to an automated fetch. It
11
11
  returned HTTP 200 on 2026-09-21, so that record was a transient failure rather than a refusal, and
12
- `PROVENANCE.md` is corrected. The text below is from SPDX, which publishes it as plain text.
12
+ `PROVENANCE.md` is corrected. The text below is from SPDX. SPDX publishes it as plain text.
13
13
 
14
14
  This is the grant the register's Brønnøysund entity register row would be read against.
15
15
 
@@ -60,7 +60,7 @@ not covered by the licence.
60
60
  ```
61
61
 
62
62
  The first exemption carves personal data out of the grant itself. A source under this license is
63
- therefore not fully granted by the license alone, which is why `AddressSourceRecord` carries a
63
+ therefore not fully granted by the license text. For that reason `AddressSourceRecord` stores a
64
64
  `personalDataReview` apart from its license decision.
65
65
 
66
66
  ## The attribution condition
@@ -3,19 +3,26 @@
3
3
  - Source: `https://www.data.gouv.fr/datasets/base-sirene-des-entreprises-et-de-leurs-etablissements-siren-siret/`
4
4
  - Retrieved: 2026-09-21
5
5
  - Publisher: Institut national de la statistique et des études économiques (INSEE)
6
- - Terms named on the page: `Licence Ouverte / Open Licence version 2.0`, archived beside this as
6
+ - Terms the page identifies: `Licence Ouverte / Open Licence version 2.0`, archived beside this as
7
7
  `licence-ouverte-2.0.md`
8
8
  - Last update stated on the page: 2026-09-01
9
9
 
10
10
  ## What the publication offers
11
11
 
12
- Twelve primary files, as six pairs in ZIP and Parquet: the stock of legal units, active and ceased; historicized values
13
- of legal units; the stock of establishments, active and closed; historicized values of establishments; establishment
14
- succession links; and SIREN duplicates. Twelve documentation files accompany them, in PDF and CSV.
12
+ The page offers twelve primary files, as six pairs in ZIP and Parquet. The six datasets are these:
13
+
14
+ - the stock of legal units, active and ceased
15
+ - historicized values of legal units
16
+ - the stock of establishments, active and closed
17
+ - historicized values of establishments
18
+ - establishment succession links
19
+ - SIREN duplicates
20
+
21
+ Twelve documentation files accompany them, in PDF and CSV.
15
22
 
16
23
  ## Personal data, quoted and paraphrased
17
24
 
18
- The page states the dataset carries personal data subject to the GDPR and French data-protection law, and that a reuser
25
+ The page states the dataset contains personal data subject to the GDPR and French data-protection law, and that a reuser
19
26
  must respect its dissemination-status codes.
20
27
 
21
28
  For a sole trader or a legal representative who has filed an opposition, INSEE masks specific fields:
@@ -33,6 +40,6 @@ present in the resource is a question the files answer and this page does not. C
33
40
  mapping is not evidence of presence.
34
41
 
35
42
  **Whether the masking suffices for what we do.** INSEE masks an opposed sole trader's identity, municipality address
36
- and geolocation at the source, which is a stronger starting position than a dataset with no opt-out. Whether a model
43
+ and geolocation at the source. That masking is a stronger starting position than a dataset with no opt-out. Whether a model
37
44
  trained on the unmasked remainder can memorize an address, and what measures that calls for, is a separate reading from
38
45
  the license.
@@ -6,7 +6,7 @@
6
6
  - Publisher: Who's On First, originally Mapzen
7
7
  - Version stated in the text: none. The page states it was generated by `bin/docs.py` on 2020-02-21.
8
8
 
9
- Two pages carry the terms. They differ in length but agree in substance. The repository's
9
+ Two pages publish the terms. They differ in length but agree in substance. The repository's
10
10
  `LICENSE.md` is four paragraphs and links to the page. The page repeats those paragraphs and adds the
11
11
  list of contributing sources.
12
12
 
@@ -48,13 +48,13 @@ Four entries bear on questions this repository has open:
48
48
  | Yahoo! GeoPlanet | the publisher's own page |
49
49
  | GeoNames | the publisher's own page |
50
50
 
51
- **Royal Mail does not appear anywhere on the page.** The `candidate` bundle's record carried an open
51
+ **Royal Mail does not appear anywhere on the page.** The `candidate` bundle's record held an open
52
52
  question about "the Ordnance Survey and Royal Mail notice". The page does list the two Ordnance
53
53
  Survey bodies, but it does not mention Royal Mail.
54
54
 
55
55
  A separate census already addressed the GeoPlanet entry. Across the four Who's On First
56
- bundles in the local data root, **zero of 7,189,494 `name:*` variant keys carry the `_p` GeoPlanet
57
- suffix**, and neither postalcode bundle carries a `name:*` key at all, so no GeoPlanet-derived string
56
+ bundles in the local data root, **zero of 7,189,494 `name:*` variant keys end in the `_p` GeoPlanet
57
+ suffix**, and neither postalcode bundle contains a `name:*` key at all, so no GeoPlanet-derived string
58
58
  reaches a corpus row through those bundles.
59
59
 
60
60
  ## What this text does not settle
@@ -8,7 +8,53 @@
8
8
  "$sireneRepetition": "Nine rows below are one source, INSEE's SIRENE establishment register, split by overseas territory. The fields repeat because the register carries one row per jurisdiction and each row's coverage statement is about that territory, while the column layout and the diffusion mechanism are SIRENE's and identical throughout.",
9
9
  "$sireneSecondAddress": "SIRENE's establishment file carries a second address family, the `2`-suffixed columns, which INSEE labels only `adresse secondaire` — `complementAdresse2Etablissement` reads `Complément d'adresse secondaire`. What role that address plays is unstated, so it takes no entry in `addressRoles` rather than a guessed one, and the coverage text names it so a reader knows the column exists.",
10
10
  "$ocdsPartyRoles": "An OCDS release keys its addresses by party role, so `addressRoles` names roles rather than columns for those sources. A role is assigned only where OCDS's own codelist defines it, retrieved from `https://standard.open-contracting.org/1.1/en/codelists/partyRole.csv`: `buyer`, `procuringEntity`, `payer`, `funder` and `reviewBody` are bodies acting in the process, so their address is an office they operate and reads `facility`; `supplier` and `tenderer` are the transacting party, so theirs reads `counterparty`. Germany's release also uses eight roles from an extension whose codelist neither the 1.1 nor the latest list defines — `processContactPoint`, `reviewContactPoint`, `submissionReceiptBody`, `mediationBody`, `evaluationBody`, `procurementServiceProvider`, `leadTenderer`, `subcontractor` — and those take no role here rather than a guessed one.",
11
+ "$osOpenData": "Three rows below, Code-Point Open, OS Open Names and OS Open Roads, publish address components rather than addresses: a postcode with its point, and a street name with its geometry and its postcode district. A training row is assembled by joining a postcode to the nearest named street and adding a synthesized house number. `other` is their role because `AddressRole` describes an address column's relation to a party or premise, and these columns describe neither. OS Open USRN takes no entry because its download was not read.",
11
12
  "resolutions": {
13
+ "gb-public-administration-1": {
14
+ "adapterID": "gb-os-open",
15
+ "addressRoles": {
16
+ "Postcode": "other"
17
+ },
18
+ "coverage": "OS Code-Point Open, 2026-08 release, `codepo_gb.zip` sha256 `fc266d063e4d8c27bd23ea8a65c6855162942cf6b9fc73c91d0930d442a0eefb`, read 2026-10-14: 120 postcode-area CSV files, 1,749,109 rows, 10 columns (`Postcode,Positional_quality_indicator,Eastings,Northings,Country_code,NHS_regional_HA_code,NHS_HA_code,Admin_county_code,Admin_district_code,Admin_ward_code`), no header row. Great Britain only: 0 rows begin `BT`. The file carries no post town, locality or street. In the LS area, 22,197 of 22,198 postcodes carry coordinates, and 21,648 of those 22,197 (97.53%) lie within 100 m of a named OS Open Roads link; 903 share a coordinate with another postcode. The `gb-os-open` adapter also reads `gb-public-administration-2` (OS Open Names) and `gb-transport-1` (OS Open Roads), which share the license decision `ogl-uk-3.0-gb-ordnance-survey-opendata` and each record `absent` personal data.",
19
+ "upstreamLineage": ["https://osdatahub.os.uk/downloads/open/CodePointOpen"],
20
+ "personalDataReview": {
21
+ "reading": "absent",
22
+ "because": "Each row is a postcode unit with a point and administrative codes. No column records a person, an organization or a property."
23
+ }
24
+ },
25
+ "gb-public-administration-2": {
26
+ "addressRoles": {
27
+ "NAME1": "other"
28
+ },
29
+ "coverage": "OS Open Names, 2026-07 release, `opname_csv_gb.zip` sha256 `6175912f1a3be7fffe556b4621a8d0686f1ea145e20ca61ce2b115a75a9bd69f`, read 2026-10-14: 819 CSV files, 3,047,173 rows, of which 983,356 have `LOCAL_TYPE` `Named Road` or `Section Of Named Road`. A road row carries `NAME1`, `NAME2` (the Welsh or Gaelic form where one exists), `POSTCODE_DISTRICT`, `POPULATED_PLACE`, `DISTRICT_BOROUGH` and `COUNTY_UNITARY`. In the LS area, 14,939 road rows carry an LS postcode district, and 20,677 of 21,648 postcode-to-street joins (95.51%) found a non-empty `POPULATED_PLACE`.",
30
+ "upstreamLineage": ["https://osdatahub.os.uk/downloads/open/OpenNames"],
31
+ "personalDataReview": {
32
+ "reading": "absent",
33
+ "because": "Rows are place and road names with their geometry and administrative parents. No column records a person, an organization or a property."
34
+ }
35
+ },
36
+ "gb-transport-1": {
37
+ "addressRoles": {
38
+ "road:name1": "other"
39
+ },
40
+ "coverage": "OS Open Roads, 2026-04 release, read 2026-10-14 for one 100 km tile only, `OSOpenRoads_SE.gml`: 177,637 `road:name1` elements. Each named link carries a `roadNameTOID`, and all 21,648 LS joins found that TOID in OS Open Names. The other tiles were not read.",
41
+ "upstreamLineage": ["https://osdatahub.os.uk/downloads/open/OpenRoads"],
42
+ "personalDataReview": {
43
+ "reading": "absent",
44
+ "because": "Rows are road centreline links with names and classifications. No column records a person, an organization or a property."
45
+ }
46
+ },
47
+ "gb-mixed-regulatory-2": {
48
+ "addressRoles": {
49
+ "Address1,Address2,Address3,Town,Postcode": "facility"
50
+ },
51
+ "coverage": "DVSA's active MOT test stations CSV, `https://assets.publishing.service.gov.uk/media/6abcee45943e890cb55e5d00/active-mot-stations.csv`, read 2026-10-12: 2,391,015 bytes, sha256 `1feeed6fa09140db3cde595c59b0503aa597cdc75a4846444c11122a6e5241c4`, 22,988 data rows over 14 columns with 0 ragged rows under a quote-aware parse; 923 lines carry a quote character. One row is one approved test premises. 22,969 of 22,988 postcodes take a valid Great Britain postcode shape and 121 postcode areas are present, including AB 217, EH 309 and G 369 in Scotland and CF 386, SA 342 and LL 282 in Wales; BT, Northern Ireland, has 0 rows, because Northern Ireland tests vehicles through its own agency. 7,126 rows open `Address1` with a digit, so about a third carry a house number and the rest open with a building, unit or estate name.",
52
+ "upstreamLineage": ["https://www.gov.uk/government/publications/active-mot-test-stations"],
53
+ "personalDataReview": {
54
+ "reading": "present",
55
+ "because": "The address columns locate test premises, and the `Trading_Name` column names a natural person on some rows. Among 22,988 trading names, 235 take an initial-and-surname shape without a business word, as `J J GRIFFITHS`, `R C WILSON`, `V WILLIAMS` and `S BISHOP` do, and 106 carry `AND SON` or `& SONS`, some of which are limited companies. A sole trader's name beside the premises where that person trades identifies them, which is the reading this register gave Enhetsregisteret's sole proprietorships. The shape count is a lower bound. **Whether a build that reads only the five address columns and never `Trading_Name` changes this reading is the same open question recorded for swisstopo's `BDG_NAME`**, and it is the operator's and counsel's to answer: an approved MOT premises is a commercial site with test equipment, so the address alone locates a business."
56
+ }
57
+ },
12
58
  "es-mixed-regulatory-1": {
13
59
  "adapterID": "es-catastro",
14
60
  "addressRoles": {