@netwerk-digitaal-erfgoed/network-of-terms-catalog 10.16.1 → 10.17.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 (52) hide show
  1. package/catalog/datasets/aat-materials.jsonld +2 -4
  2. package/catalog/datasets/aat-processes-and-techniques.jsonld +1 -3
  3. package/catalog/datasets/aat-styles-and-periods.jsonld +1 -3
  4. package/catalog/datasets/aat.jsonld +7 -9
  5. package/catalog/datasets/abr.jsonld +2 -6
  6. package/catalog/datasets/adamlink-adressen.jsonld +2 -6
  7. package/catalog/datasets/adamlink-straten.jsonld +2 -6
  8. package/catalog/datasets/brabantse-gebouwen.jsonld +1 -3
  9. package/catalog/datasets/brinkman.jsonld +1 -3
  10. package/catalog/datasets/cht-materials.jsonld +1 -3
  11. package/catalog/datasets/cht-styles-and-periods.jsonld +1 -3
  12. package/catalog/datasets/cht.jsonld +1 -3
  13. package/catalog/datasets/eurovoc.jsonld +2 -6
  14. package/catalog/datasets/geonames-nl-be-de.jsonld +3 -7
  15. package/catalog/datasets/geonames.jsonld +2 -6
  16. package/catalog/datasets/goudatijdmachine-straten.jsonld +2 -4
  17. package/catalog/datasets/gtaa-classificatie.jsonld +1 -3
  18. package/catalog/datasets/gtaa-genres.jsonld +1 -3
  19. package/catalog/datasets/gtaa-geografische-namen.jsonld +1 -3
  20. package/catalog/datasets/gtaa-namen.jsonld +1 -3
  21. package/catalog/datasets/gtaa-onderwerpen-beng.jsonld +1 -3
  22. package/catalog/datasets/gtaa-onderwerpen.jsonld +1 -3
  23. package/catalog/datasets/gtaa-persoonsnamen.jsonld +1 -3
  24. package/catalog/datasets/homosaurus.jsonld +2 -6
  25. package/catalog/datasets/iconclass.jsonld +2 -6
  26. package/catalog/datasets/ied.jsonld +2 -6
  27. package/catalog/datasets/koloniaal-verleden.jsonld +1 -3
  28. package/catalog/datasets/muziekschatten-klassieke-werken.jsonld +2 -6
  29. package/catalog/datasets/muziekschatten-onderwerpen.jsonld +2 -6
  30. package/catalog/datasets/muziekschatten-personen.jsonld +2 -6
  31. package/catalog/datasets/mw-genresstijlen.jsonld +1 -3
  32. package/catalog/datasets/mw-personengroepen.jsonld +1 -3
  33. package/catalog/datasets/nmvw.jsonld +2 -6
  34. package/catalog/datasets/nta.jsonld +2 -6
  35. package/catalog/datasets/rijksmonumenten.jsonld +1 -3
  36. package/catalog/datasets/rkdartists.jsonld +2 -6
  37. package/catalog/datasets/rtf-personen.jsonld +2 -6
  38. package/catalog/datasets/stcn-drukkers.jsonld +1 -3
  39. package/catalog/datasets/uitvoeringsmedium.jsonld +2 -6
  40. package/catalog/datasets/westerbork.jsonld +2 -6
  41. package/catalog/datasets/wikidata-entities-all.jsonld +3 -7
  42. package/catalog/datasets/wikidata-entities-persons.jsonld +2 -6
  43. package/catalog/datasets/wikidata-entities-places.jsonld +2 -6
  44. package/catalog/datasets/wikidata-entities-streets.jsonld +2 -6
  45. package/catalog/datasets/wo2biografie.jsonld +1 -3
  46. package/catalog/datasets/wo2thesaurus.jsonld +2 -6
  47. package/catalog/queries/lookup/goudatijdmachine-straten.rq +33 -34
  48. package/catalog/queries/search/goudatijdmachine-straten.rq +39 -48
  49. package/dist/getCatalog.d.ts +0 -6
  50. package/dist/getCatalog.d.ts.map +1 -1
  51. package/dist/getCatalog.js +30 -9
  52. package/package.json +5 -3
@@ -23,7 +23,7 @@
23
23
  }
24
24
  ],
25
25
  "genre": [
26
- {
26
+ {
27
27
  "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Materialen"
28
28
  }
29
29
  ],
@@ -32,9 +32,7 @@
32
32
  "@id": "http://www.getty.edu/research/"
33
33
  }
34
34
  ],
35
- "url": [
36
- "http://vocab.getty.edu/aat/"
37
- ],
35
+ "url": ["http://vocab.getty.edu/aat/"],
38
36
  "mainEntityOfPage": [
39
37
  "https://www.getty.edu/research/tools/vocabularies/aat/about.html"
40
38
  ],
@@ -32,9 +32,7 @@
32
32
  "@id": "http://www.getty.edu/research/"
33
33
  }
34
34
  ],
35
- "url": [
36
- "http://vocab.getty.edu/aat/"
37
- ],
35
+ "url": ["http://vocab.getty.edu/aat/"],
38
36
  "mainEntityOfPage": [
39
37
  "https://www.getty.edu/research/tools/vocabularies/aat/about.html"
40
38
  ],
@@ -35,9 +35,7 @@
35
35
  "@id": "http://www.getty.edu/research/"
36
36
  }
37
37
  ],
38
- "url": [
39
- "http://vocab.getty.edu/aat/"
40
- ],
38
+ "url": ["http://vocab.getty.edu/aat/"],
41
39
  "mainEntityOfPage": [
42
40
  "https://www.getty.edu/research/tools/vocabularies/aat/about.html"
43
41
  ],
@@ -26,22 +26,22 @@
26
26
  {
27
27
  "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Abstracte-begrippen"
28
28
  },
29
- {
29
+ {
30
30
  "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Activiteiten"
31
31
  },
32
- {
32
+ {
33
33
  "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Fysieke-kenmerken"
34
34
  },
35
- {
35
+ {
36
36
  "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Materialen"
37
37
  },
38
- {
38
+ {
39
39
  "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Objecten"
40
40
  },
41
- {
41
+ {
42
42
  "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Periodes"
43
43
  },
44
- {
44
+ {
45
45
  "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Stijlen"
46
46
  },
47
47
  {
@@ -53,9 +53,7 @@
53
53
  "@id": "http://www.getty.edu/research/"
54
54
  }
55
55
  ],
56
- "url": [
57
- "http://vocab.getty.edu/aat/"
58
- ],
56
+ "url": ["http://vocab.getty.edu/aat/"],
59
57
  "mainEntityOfPage": [
60
58
  "https://www.getty.edu/research/tools/vocabularies/aat/about.html"
61
59
  ],
@@ -44,12 +44,8 @@
44
44
  "@id": "https://www.cultureelerfgoed.nl"
45
45
  }
46
46
  ],
47
- "url": [
48
- "https://data.cultureelerfgoed.nl/term/id/abr/"
49
- ],
50
- "mainEntityOfPage": [
51
- "https://thesaurus.cultureelerfgoed.nl/"
52
- ],
47
+ "url": ["https://data.cultureelerfgoed.nl/term/id/abr/"],
48
+ "mainEntityOfPage": ["https://thesaurus.cultureelerfgoed.nl/"],
53
49
  "description": [
54
50
  {
55
51
  "@language": "nl",
@@ -22,12 +22,8 @@
22
22
  "@id": "https://www.amsterdamtimemachine.nl"
23
23
  }
24
24
  ],
25
- "url": [
26
- "https://adamlink.nl/geo/address/"
27
- ],
28
- "mainEntityOfPage": [
29
- "https://adamlink.nl"
30
- ],
25
+ "url": ["https://adamlink.nl/geo/address/"],
26
+ "mainEntityOfPage": ["https://adamlink.nl"],
31
27
  "description": [
32
28
  {
33
29
  "@language": "en",
@@ -22,12 +22,8 @@
22
22
  "@id": "https://www.amsterdamtimemachine.nl"
23
23
  }
24
24
  ],
25
- "url": [
26
- "https://adamlink.nl/geo/street/"
27
- ],
28
- "mainEntityOfPage": [
29
- "https://adamlink.nl"
30
- ],
25
+ "url": ["https://adamlink.nl/geo/street/"],
26
+ "mainEntityOfPage": ["https://adamlink.nl"],
31
27
  "description": [
32
28
  {
33
29
  "@language": "en",
@@ -22,9 +22,7 @@
22
22
  "@id": "https://www.erfgoedbrabant.nl"
23
23
  }
24
24
  ],
25
- "url": [
26
- "https://n2t.net/ark:/15052/"
27
- ],
25
+ "url": ["https://n2t.net/ark:/15052/"],
28
26
  "mainEntityOfPage": [
29
27
  "https://www.brabantcloud.nl/page/787/brabantse-kloosters-als-termenlijst"
30
28
  ],
@@ -32,9 +32,7 @@
32
32
  "@id": "http://data.bibliotheken.nl/id/thes/p075301482"
33
33
  }
34
34
  ],
35
- "url": [
36
- "http://data.bibliotheken.nl/id/thes/"
37
- ],
35
+ "url": ["http://data.bibliotheken.nl/id/thes/"],
38
36
  "mainEntityOfPage": [
39
37
  "https://data.bibliotheken.nl/KB/-/stories/Brinkman-trefwoordenthesaurus"
40
38
  ],
@@ -32,9 +32,7 @@
32
32
  "@id": "https://www.cultureelerfgoed.nl"
33
33
  }
34
34
  ],
35
- "url": [
36
- "https://data.cultureelerfgoed.nl/term/id/cht/"
37
- ],
35
+ "url": ["https://data.cultureelerfgoed.nl/term/id/cht/"],
38
36
  "mainEntityOfPage": [
39
37
  "https://kennis.cultureelerfgoed.nl/index.php/Thesauri_bij_de_RCE_-_Cultuurhistorische_Thesaurus"
40
38
  ],
@@ -35,9 +35,7 @@
35
35
  "@id": "https://www.cultureelerfgoed.nl"
36
36
  }
37
37
  ],
38
- "url": [
39
- "https://data.cultureelerfgoed.nl/term/id/cht/"
40
- ],
38
+ "url": ["https://data.cultureelerfgoed.nl/term/id/cht/"],
41
39
  "mainEntityOfPage": [
42
40
  "https://kennis.cultureelerfgoed.nl/index.php/Thesauri_bij_de_RCE_-_Cultuurhistorische_Thesaurus"
43
41
  ],
@@ -56,9 +56,7 @@
56
56
  "@id": "https://www.cultureelerfgoed.nl"
57
57
  }
58
58
  ],
59
- "url": [
60
- "https://data.cultureelerfgoed.nl/term/id/cht/"
61
- ],
59
+ "url": ["https://data.cultureelerfgoed.nl/term/id/cht/"],
62
60
  "mainEntityOfPage": [
63
61
  "https://kennis.cultureelerfgoed.nl/index.php/Thesauri_bij_de_RCE_-_Cultuurhistorische_Thesaurus"
64
62
  ],
@@ -28,12 +28,8 @@
28
28
  "@id": "https://op.europa.eu/"
29
29
  }
30
30
  ],
31
- "url": [
32
- "http://eurovoc.europa.eu/"
33
- ],
34
- "mainEntityOfPage": [
35
- "https://data.europa.eu/data/datasets/eurovoc"
36
- ],
31
+ "url": ["http://eurovoc.europa.eu/"],
32
+ "mainEntityOfPage": ["https://data.europa.eu/data/datasets/eurovoc"],
37
33
  "description": [
38
34
  {
39
35
  "@language": "en",
@@ -22,12 +22,8 @@
22
22
  "@id": "https://www.geonames.org/team.html"
23
23
  }
24
24
  ],
25
- "url": [
26
- "https://sws.geonames.org/"
27
- ],
28
- "mainEntityOfPage": [
29
- "https://www.geonames.org/about.html"
30
- ],
25
+ "url": ["https://sws.geonames.org/"],
26
+ "mainEntityOfPage": ["https://www.geonames.org/about.html"],
31
27
  "description": [
32
28
  {
33
29
  "@language": "en",
@@ -41,7 +37,7 @@
41
37
  "inLanguage": "en",
42
38
  "distribution": [
43
39
  {
44
- "@id": "https://demo.netwerkdigitaalerfgoed.nl/geonames",
40
+ "@id": "https://demo.netwerkdigitaalerfgoed.nl/geonames#nl-be-de",
45
41
  "@type": "DataDownload",
46
42
  "contentUrl": "https://demo.netwerkdigitaalerfgoed.nl/geonames/sparql",
47
43
  "encodingFormat": "application/sparql-query",
@@ -22,12 +22,8 @@
22
22
  "@id": "https://www.geonames.org/team.html"
23
23
  }
24
24
  ],
25
- "url": [
26
- "https://sws.geonames.org/"
27
- ],
28
- "mainEntityOfPage": [
29
- "https://www.geonames.org/about.html"
30
- ],
25
+ "url": ["https://sws.geonames.org/"],
26
+ "mainEntityOfPage": ["https://www.geonames.org/about.html"],
31
27
  "description": [
32
28
  {
33
29
  "@language": "en",
@@ -34,9 +34,7 @@
34
34
  "alternateName": "GTM"
35
35
  }
36
36
  ],
37
- "url": [
38
- "https://n2t.net/ark:/60537/"
39
- ],
37
+ "url": ["https://n2t.net/ark:/60537/"],
40
38
  "mainEntityOfPage": [
41
39
  "https://www.goudatijdmachine.nl/omeka/s/data/page/straten"
42
40
  ],
@@ -55,7 +53,7 @@
55
53
  {
56
54
  "@id": "https://www.goudatijdmachine.nl/id/straten#streets",
57
55
  "@type": "DataDownload",
58
- "contentUrl": "https://www.goudatijdmachine.nl/sparql/repositories/gtm",
56
+ "contentUrl": "https://www.goudatijdmachine.nl/sparql11",
59
57
  "encodingFormat": "application/sparql-query",
60
58
  "potentialAction": [
61
59
  {
@@ -22,9 +22,7 @@
22
22
  "@id": "https://www.beeldengeluid.nl/"
23
23
  }
24
24
  ],
25
- "url": [
26
- "http://data.beeldengeluid.nl/gtaa/"
27
- ],
25
+ "url": ["http://data.beeldengeluid.nl/gtaa/"],
28
26
  "mainEntityOfPage": [
29
27
  "https://www.beeldengeluid.nl/kennis/kennisthemas/metadata/gemeenschappelijke-thesaurus-audiovisuele-archieven"
30
28
  ],
@@ -22,9 +22,7 @@
22
22
  "@id": "https://www.beeldengeluid.nl/"
23
23
  }
24
24
  ],
25
- "url": [
26
- "http://data.beeldengeluid.nl/gtaa/"
27
- ],
25
+ "url": ["http://data.beeldengeluid.nl/gtaa/"],
28
26
  "mainEntityOfPage": [
29
27
  "https://www.beeldengeluid.nl/kennis/kennisthemas/metadata/gemeenschappelijke-thesaurus-audiovisuele-archieven"
30
28
  ],
@@ -22,9 +22,7 @@
22
22
  "@id": "https://www.beeldengeluid.nl/"
23
23
  }
24
24
  ],
25
- "url": [
26
- "http://data.beeldengeluid.nl/gtaa/"
27
- ],
25
+ "url": ["http://data.beeldengeluid.nl/gtaa/"],
28
26
  "mainEntityOfPage": [
29
27
  "https://www.beeldengeluid.nl/kennis/kennisthemas/metadata/gemeenschappelijke-thesaurus-audiovisuele-archieven"
30
28
  ],
@@ -25,9 +25,7 @@
25
25
  "@id": "https://www.beeldengeluid.nl/"
26
26
  }
27
27
  ],
28
- "url": [
29
- "http://data.beeldengeluid.nl/gtaa"
30
- ],
28
+ "url": ["http://data.beeldengeluid.nl/gtaa"],
31
29
  "mainEntityOfPage": [
32
30
  "https://www.beeldengeluid.nl/kennis/kennisthemas/metadata/gemeenschappelijke-thesaurus-audiovisuele-archieven"
33
31
  ],
@@ -25,9 +25,7 @@
25
25
  "@id": "https://www.beeldengeluid.nl/"
26
26
  }
27
27
  ],
28
- "url": [
29
- "http://data.beeldengeluid.nl/gtaa/"
30
- ],
28
+ "url": ["http://data.beeldengeluid.nl/gtaa/"],
31
29
  "mainEntityOfPage": [
32
30
  "https://www.beeldengeluid.nl/kennis/kennisthemas/metadata/gemeenschappelijke-thesaurus-audiovisuele-archieven"
33
31
  ],
@@ -25,9 +25,7 @@
25
25
  "@id": "https://www.beeldengeluid.nl/"
26
26
  }
27
27
  ],
28
- "url": [
29
- "http://data.beeldengeluid.nl/gtaa/"
30
- ],
28
+ "url": ["http://data.beeldengeluid.nl/gtaa/"],
31
29
  "mainEntityOfPage": [
32
30
  "https://www.beeldengeluid.nl/kennis/kennisthemas/metadata/gemeenschappelijke-thesaurus-audiovisuele-archieven"
33
31
  ],
@@ -22,9 +22,7 @@
22
22
  "@id": "https://www.beeldengeluid.nl/"
23
23
  }
24
24
  ],
25
- "url": [
26
- "http://data.beeldengeluid.nl/gtaa/"
27
- ],
25
+ "url": ["http://data.beeldengeluid.nl/gtaa/"],
28
26
  "mainEntityOfPage": [
29
27
  "https://www.beeldengeluid.nl/kennis/kennisthemas/metadata/gemeenschappelijke-thesaurus-audiovisuele-archieven"
30
28
  ],
@@ -22,12 +22,8 @@
22
22
  "@id": "https://ihlia.nl"
23
23
  }
24
24
  ],
25
- "url": [
26
- "https://data.ihlia.nl/homosaurus/"
27
- ],
28
- "mainEntityOfPage": [
29
- "https://homosaurus.org"
30
- ],
25
+ "url": ["https://data.ihlia.nl/homosaurus/"],
26
+ "mainEntityOfPage": ["https://homosaurus.org"],
31
27
  "description": [
32
28
  {
33
29
  "@language": "en",
@@ -28,12 +28,8 @@
28
28
  "@id": "https://henrivandewaalfoundation.org"
29
29
  }
30
30
  ],
31
- "url": [
32
- "https://iconclass.org/"
33
- ],
34
- "mainEntityOfPage": [
35
- "https://iconclass.org"
36
- ],
31
+ "url": ["https://iconclass.org/"],
32
+ "mainEntityOfPage": ["https://iconclass.org"],
37
33
  "description": [
38
34
  {
39
35
  "@language": "en",
@@ -37,12 +37,8 @@
37
37
  "@id": "https://www.indischherinneringscentrum.nl/"
38
38
  }
39
39
  ],
40
- "url": [
41
- "https://data.indischherinneringscentrum.nl/ied/"
42
- ],
43
- "mainEntityOfPage": [
44
- "https://data.indischherinneringscentrum.nl/ied.html"
45
- ],
40
+ "url": ["https://data.indischherinneringscentrum.nl/ied/"],
41
+ "mainEntityOfPage": ["https://data.indischherinneringscentrum.nl/ied.html"],
46
42
  "description": [
47
43
  {
48
44
  "@language": "en",
@@ -34,9 +34,7 @@
34
34
  "@id": "https://www.cultureelerfgoed.nl"
35
35
  }
36
36
  ],
37
- "url": [
38
- "https://data.cultureelerfgoed.nl/koloniaalverleden/"
39
- ],
37
+ "url": ["https://data.cultureelerfgoed.nl/koloniaalverleden/"],
40
38
  "mainEntityOfPage": [
41
39
  "https://www.cultureelerfgoed.nl/onderwerpen/slavernijverleden/documenten/publicaties/2021/01/01/handreiking-onderzoek-naar-sporen-van-slavernij-en-het-koloniale-verleden-in-de-collectieregistratie"
42
40
  ],
@@ -22,12 +22,8 @@
22
22
  "@id": "https://www.podiumkunst.net"
23
23
  }
24
24
  ],
25
- "url": [
26
- "https://data.muziekschatten.nl/som/work/"
27
- ],
28
- "mainEntityOfPage": [
29
- "https://data.muziekschatten.nl/"
30
- ],
25
+ "url": ["https://data.muziekschatten.nl/som/work/"],
26
+ "mainEntityOfPage": ["https://data.muziekschatten.nl/"],
31
27
  "description": [
32
28
  {
33
29
  "@language": "en",
@@ -25,12 +25,8 @@
25
25
  "@id": "https://www.omroepmuziek.nl"
26
26
  }
27
27
  ],
28
- "url": [
29
- "https://data.muziekschatten.nl/som/d"
30
- ],
31
- "mainEntityOfPage": [
32
- "https://data.muziekschatten.nl/"
33
- ],
28
+ "url": ["https://data.muziekschatten.nl/som/d"],
29
+ "mainEntityOfPage": ["https://data.muziekschatten.nl/"],
34
30
  "description": [
35
31
  {
36
32
  "@language": "en",
@@ -22,12 +22,8 @@
22
22
  "@id": "https://www.omroepmuziek.nl"
23
23
  }
24
24
  ],
25
- "url": [
26
- "https://data.muziekschatten.nl/som/"
27
- ],
28
- "mainEntityOfPage": [
29
- "https://data.muziekschatten.nl/som/"
30
- ],
25
+ "url": ["https://data.muziekschatten.nl/som/"],
26
+ "mainEntityOfPage": ["https://data.muziekschatten.nl/som/"],
31
27
  "description": [
32
28
  {
33
29
  "@language": "en",
@@ -25,9 +25,7 @@
25
25
  "@id": "https://www.muziekweb.nl"
26
26
  }
27
27
  ],
28
- "url": [
29
- "https://data.muziekweb.nl/Link/"
30
- ],
28
+ "url": ["https://data.muziekweb.nl/Link/"],
31
29
  "mainEntityOfPage": [
32
30
  "https://data.muziekweb.nl/MuziekwebOrganization/Muziekweb"
33
31
  ],
@@ -22,9 +22,7 @@
22
22
  "@id": "https://www.muziekweb.nl"
23
23
  }
24
24
  ],
25
- "url": [
26
- "https://data.muziekweb.nl/Link/"
27
- ],
25
+ "url": ["https://data.muziekweb.nl/Link/"],
28
26
  "mainEntityOfPage": [
29
27
  "https://data.muziekweb.nl/MuziekwebOrganization/Muziekweb"
30
28
  ],
@@ -34,12 +34,8 @@
34
34
  "@id": "http://www.wereldculturen.nl"
35
35
  }
36
36
  ],
37
- "url": [
38
- "https://hdl.handle.net/20.500.11840/"
39
- ],
40
- "mainEntityOfPage": [
41
- "https://collectie.wereldculturen.nl/thesaurus"
42
- ],
37
+ "url": ["https://hdl.handle.net/20.500.11840/"],
38
+ "mainEntityOfPage": ["https://collectie.wereldculturen.nl/thesaurus"],
43
39
  "description": [
44
40
  {
45
41
  "@language": "en",
@@ -28,12 +28,8 @@
28
28
  "@id": "http://data.bibliotheken.nl/id/thes/p075301482"
29
29
  }
30
30
  ],
31
- "url": [
32
- "http://data.bibliotheken.nl/id/thes/"
33
- ],
34
- "mainEntityOfPage": [
35
- "https://data.bibliotheken.nl/KB/-/stories/NTA"
36
- ],
31
+ "url": ["http://data.bibliotheken.nl/id/thes/"],
32
+ "mainEntityOfPage": ["https://data.bibliotheken.nl/KB/-/stories/NTA"],
37
33
  "description": [
38
34
  {
39
35
  "@language": "en",
@@ -25,9 +25,7 @@
25
25
  "url": [
26
26
  "https://linkeddata.cultureelerfgoed.nl/cho-kennis/id/rijksmonument/"
27
27
  ],
28
- "mainEntityOfPage": [
29
- "https://monumentenregister.cultureelerfgoed.nl/"
30
- ],
28
+ "mainEntityOfPage": ["https://monumentenregister.cultureelerfgoed.nl/"],
31
29
  "description": [
32
30
  {
33
31
  "@language": "en",
@@ -22,12 +22,8 @@
22
22
  "@id": "https://rkd.nl"
23
23
  }
24
24
  ],
25
- "url": [
26
- "https://data.rkd.nl/artists/"
27
- ],
28
- "mainEntityOfPage": [
29
- "https://rkd.nl/nl/explore/artists"
30
- ],
25
+ "url": ["https://data.rkd.nl/artists/"],
26
+ "mainEntityOfPage": ["https://rkd.nl/nl/explore/artists"],
31
27
  "description": [
32
28
  {
33
29
  "@language": "en",
@@ -22,12 +22,8 @@
22
22
  "@id": "https://www.tresoar.nl"
23
23
  }
24
24
  ],
25
- "url": [
26
- "https://fryslan.regiotermen.nl/"
27
- ],
28
- "mainEntityOfPage": [
29
- "https://fryslan.regiotermen.nl/personen"
30
- ],
25
+ "url": ["https://fryslan.regiotermen.nl/"],
26
+ "mainEntityOfPage": ["https://fryslan.regiotermen.nl/personen"],
31
27
  "description": [
32
28
  {
33
29
  "@language": "en",
@@ -22,9 +22,7 @@
22
22
  "@id": "http://data.bibliotheken.nl/id/thes/p075301482"
23
23
  }
24
24
  ],
25
- "url": [
26
- "http://data.bibliotheken.nl/id/thes/"
27
- ],
25
+ "url": ["http://data.bibliotheken.nl/id/thes/"],
28
26
  "mainEntityOfPage": [
29
27
  "https://data.bibliotheken.nl/KB/-/stories/STCN-persons"
30
28
  ],
@@ -25,12 +25,8 @@
25
25
  "@id": "https://www.podiumkunst.net"
26
26
  }
27
27
  ],
28
- "url": [
29
- "https://data.muziekschatten.nl/som/um"
30
- ],
31
- "mainEntityOfPage": [
32
- "https://data.muziekschatten.nl/som/"
33
- ],
28
+ "url": ["https://data.muziekschatten.nl/som/um"],
29
+ "mainEntityOfPage": ["https://data.muziekschatten.nl/som/"],
34
30
  "description": [
35
31
  {
36
32
  "@language": "en",
@@ -38,12 +38,8 @@
38
38
  "@id": "https://kampwesterbork.nl"
39
39
  }
40
40
  ],
41
- "url": [
42
- "https://digitaalerfgoed.poolparty.biz/westerbork/"
43
- ],
44
- "mainEntityOfPage": [
45
- "https://digitaalerfgoed.poolparty.biz/westerbork.html"
46
- ],
41
+ "url": ["https://digitaalerfgoed.poolparty.biz/westerbork/"],
42
+ "mainEntityOfPage": ["https://digitaalerfgoed.poolparty.biz/westerbork.html"],
47
43
  "description": [
48
44
  {
49
45
  "@language": "en",
@@ -16,7 +16,7 @@
16
16
  {
17
17
  "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Objecten"
18
18
  },
19
- {
19
+ {
20
20
  "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Personen"
21
21
  },
22
22
  {
@@ -28,12 +28,8 @@
28
28
  "@id": "https://www.wikidata.org/entity/Q180"
29
29
  }
30
30
  ],
31
- "url": [
32
- "http://www.wikidata.org/entity/"
33
- ],
34
- "mainEntityOfPage": [
35
- "https://www.wikidata.org"
36
- ],
31
+ "url": ["http://www.wikidata.org/entity/"],
32
+ "mainEntityOfPage": ["https://www.wikidata.org"],
37
33
  "description": [
38
34
  {
39
35
  "@language": "en",
@@ -22,12 +22,8 @@
22
22
  "@id": "https://www.wikidata.org/entity/Q180"
23
23
  }
24
24
  ],
25
- "url": [
26
- "http://www.wikidata.org/entity/"
27
- ],
28
- "mainEntityOfPage": [
29
- "https://www.wikidata.org"
30
- ],
25
+ "url": ["http://www.wikidata.org/entity/"],
26
+ "mainEntityOfPage": ["https://www.wikidata.org"],
31
27
  "description": [
32
28
  {
33
29
  "@language": "en",
@@ -22,12 +22,8 @@
22
22
  "@id": "https://www.wikidata.org/entity/Q180"
23
23
  }
24
24
  ],
25
- "url": [
26
- "http://www.wikidata.org/entity/"
27
- ],
28
- "mainEntityOfPage": [
29
- "https://www.wikidata.org"
30
- ],
25
+ "url": ["http://www.wikidata.org/entity/"],
26
+ "mainEntityOfPage": ["https://www.wikidata.org"],
31
27
  "description": [
32
28
  {
33
29
  "@language": "en",
@@ -22,12 +22,8 @@
22
22
  "@id": "https://www.wikidata.org/entity/Q180"
23
23
  }
24
24
  ],
25
- "url": [
26
- "http://www.wikidata.org/entity/"
27
- ],
28
- "mainEntityOfPage": [
29
- "https://www.wikidata.org"
30
- ],
25
+ "url": ["http://www.wikidata.org/entity/"],
26
+ "mainEntityOfPage": ["https://www.wikidata.org"],
31
27
  "description": [
32
28
  {
33
29
  "@language": "en",
@@ -22,9 +22,7 @@
22
22
  "@id": "https://www.wo2net.nl"
23
23
  }
24
24
  ],
25
- "url": [
26
- "https://data.niod.nl/WO2_biografieen/"
27
- ],
25
+ "url": ["https://data.niod.nl/WO2_biografieen/"],
28
26
  "mainEntityOfPage": [
29
27
  "https://www.oorlogsbronnen.nl/nieuws/project-wo2-thesaurus"
30
28
  ],
@@ -31,12 +31,8 @@
31
31
  "@id": "https://www.niod.nl"
32
32
  }
33
33
  ],
34
- "url": [
35
- "https://data.niod.nl/WO2_Thesaurus/"
36
- ],
37
- "mainEntityOfPage": [
38
- "https://www.niod.nl/nl/collecties/wo2-thesaurus"
39
- ],
34
+ "url": ["https://data.niod.nl/WO2_Thesaurus/"],
35
+ "mainEntityOfPage": ["https://www.niod.nl/nl/collecties/wo2-thesaurus"],
40
36
  "description": [
41
37
  {
42
38
  "@language": "en",
@@ -4,40 +4,39 @@ PREFIX gtm: <https://www.goudatijdmachine.nl/def#>
4
4
  PREFIX hg: <http://rdf.histograph.io/>
5
5
  PREFIX owl: <http://www.w3.org/2002/07/owl#>
6
6
  PREFIX omeka: <http://omeka.org/s/vocabs/o#>
7
-
8
7
  CONSTRUCT {
9
- ?uri a skos:Concept ;
10
- skos:prefLabel ?prefLabel ;
11
- skos:altLabel ?altLabel ;
12
- skos:scopeNote ?scopeNote ;
13
- skos:related ?related_uri ;
14
- skos:exactMatch ?exactMatch_uri .
15
- ?related_uri skos:prefLabel ?related_prefLabel .
16
- ?exactMatch_uri skos:prefLabel ?exactMatch_prefLabel .
8
+ ?uri a skos:Concept ;
9
+ skos:prefLabel ?prefLabel ;
10
+ skos:altLabel ?altLabel ;
11
+ skos:scopeNote ?scopeNote ;
12
+ skos:related ?related_uri ;
13
+ skos:exactMatch ?exactMatch_uri .
14
+ ?related_uri skos:prefLabel ?related_prefLabel .
15
+ ?exactMatch_uri skos:prefLabel ?exactMatch_prefLabel .
17
16
  } WHERE {
18
- # For example:
19
- # Vuilsteeg: <https://n2t.net/ark:/60537/bIwfWk>
20
- # Kapelstraat: <https://n2t.net/ark:/60537/b4ApaO>
21
- VALUES ?uri { ?uris }
22
- ?uri a gtm:Straat ;
23
- sdo:identifier ?identifier ;
24
- sdo:name ?prefLabel .
25
- FILTER (STRSTARTS(STR(?uri), "https://n2t.net/ark:/60537/"))
26
- OPTIONAL {
27
- ?uri sdo:alternateName ?altLabel
28
- }
29
- BIND ( CONCAT( IF ( EXISTS { ?uri omeka:item_set <https://n2t.net/ark:/60537/bd75pg> }, "Verdwenen straat", "Straat" )," in Gouda") AS ?scopeNote )
30
- OPTIONAL {
31
- ?uri hg:absorbedBy|hg:absorbed ?related_uri .
32
- ?related_uri a gtm:Straat ;
33
- sdo:name ?related_prefLabel .
34
- FILTER (STRSTARTS(STR(?related_uri), "https://n2t.net/ark:/60537/") && ?uri != ?related_uri )
35
- }
36
-
37
- OPTIONAL {
38
- ?uri owl:sameAs ?exactMatch_uri .
39
- ?exactMatch_uri sdo:name ?exactMatch_prefLabel .
40
- FILTER(?exactMatch_uri != ?uri)
41
- }
17
+ # For example:
18
+ # Vuilsteeg: <https://n2t.net/ark:/60537/bIwfWk>
19
+ # Kapelstraat: <https://n2t.net/ark:/60537/b4ApaO>
20
+ VALUES ?uri { ?uris }
21
+ ?uri a gtm:Straat ;
22
+ sdo:identifier ?identifier ;
23
+ sdo:name ?prefLabel .
24
+ OPTIONAL {
25
+ ?uri sdo:alternateName ?altLabel
26
+ }
27
+ BIND ( CONCAT( IF ( EXISTS {
28
+ ?uri omeka:item_set <https://n2t.net/ark:/60537/bd75pg>
29
+ }, "Verdwenen straat", "Straat" )," in Gouda") AS ?scopeNote )
30
+ OPTIONAL {
31
+ ?uri hg:absorbedBy|hg:absorbed ?related_uri .
32
+ ?related_uri a gtm:Straat ;
33
+ sdo:name ?related_prefLabel .
34
+ FILTER (?uri != ?related_uri )
35
+ }
36
+ OPTIONAL {
37
+ ?uri owl:sameAs ?exactMatch_uri .
38
+ ?exactMatch_uri sdo:name ?exactMatch_prefLabel .
39
+ FILTER(?exactMatch_uri != ?uri)
40
+ }
42
41
  }
43
- LIMIT 100
42
+ LIMIT 100
@@ -2,57 +2,48 @@ PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
2
2
  PREFIX gtm: <https://www.goudatijdmachine.nl/def#>
3
3
  PREFIX sdo: <https://schema.org/>
4
4
  PREFIX hg: <http://rdf.histograph.io/>
5
- PREFIX luc: <http://www.ontotext.com/connectors/lucene#>
6
- PREFIX luc-index: <http://www.ontotext.com/connectors/lucene/instance#>
5
+ PREFIX ql: <http://qlever.cs.uni-freiburg.de/builtin-functions/>
7
6
  PREFIX omeka: <http://omeka.org/s/vocabs/o#>
8
7
  PREFIX owl: <http://www.w3.org/2002/07/owl#>
9
8
  PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
10
- PREFIX vrank: <http://purl.org/voc/vrank#>
11
-
12
9
  CONSTRUCT {
13
- ?piduri a skos:Concept ;
14
- skos:prefLabel ?prefLabel ;
15
- skos:altLabel ?altLabel;
16
- skos:scopeNote ?scopeNote ;
17
- skos:related ?related_uri ;
18
- skos:exactMatch ?exactMatch_uri ;
19
- vrank:simpleRank ?score .
20
- ?related_uri skos:prefLabel ?related_prefLabel .
21
- ?exactMatch_uri skos:prefLabel ?exactMatch_label .
10
+ ?piduri a skos:Concept ;
11
+ skos:prefLabel ?prefLabel ;
12
+ skos:altLabel ?altLabel;
13
+ skos:scopeNote ?scopeNote ;
14
+ skos:related ?related_uri ;
15
+ skos:exactMatch ?exactMatch_uri .
16
+ ?related_uri skos:prefLabel ?related_prefLabel .
17
+ ?exactMatch_uri skos:prefLabel ?exactMatch_label .
22
18
  } WHERE {
23
- ?search a luc-index:straten_index ;
24
- luc:query ?query ;
25
- luc:limit ?limit ;
26
- luc:entities ?uri .
27
-
28
- ?uri owl:sameAs ?piduri
29
- FILTER(STRSTARTS(STR(?piduri), "https://n2t.net"))
30
-
31
- ?uri sdo:name ?prefLabel .
32
- ?uri luc:score ?score .
33
-
34
- OPTIONAL {
35
- ?uri gtm:genoemdNaar ?genoemdNaar .
36
- }
37
-
38
- BIND (
39
- CONCAT(
40
- IF ( EXISTS { ?uri omeka:item_set <https://n2t.net/ark:/60537/bd75pg> }, "Verdwenen straat", "Straat" ),
41
- IF ( BOUND(?genoemdNaar), CONCAT(" in Gouda, genoemd naar ", ?genoemdNaar )," in Gouda" )
42
- )
19
+ ?uri sdo:name|sdo:alternateName ?item .
20
+ ?uri a gtm:Straat .
21
+ ?text ql:contains-entity ?item .
22
+ ?text ql:contains-word ?query .
23
+ ?uri owl:sameAs ?piduri .
24
+ ?uri sdo:name ?prefLabel .
25
+ OPTIONAL {
26
+ ?uri gtm:genoemdNaar ?genoemdNaar .
27
+ }
28
+ BIND (
29
+ CONCAT(
30
+ IF ( EXISTS {
31
+ ?uri omeka:item_set <https://n2t.net/ark:/60537/bd75pg>
32
+ }, "Verdwenen straat", "Straat" ),
33
+ IF ( BOUND(?genoemdNaar), CONCAT(" in Gouda, genoemd naar ", ?genoemdNaar )," in Gouda" )
34
+ )
43
35
  AS ?scopeNote )
44
-
45
- OPTIONAL { ?uri sdo:alternateName ?altLabel . }
46
-
47
- OPTIONAL {
48
- ?uri hg:absorbedBy|hg:absorbed ?related_uri .
49
- ?related_uri a gtm:Straat ;
50
- sdo:name ?related_prefLabel .
51
- FILTER (STRSTARTS(STR(?related_uri), "https://n2t.net/ark:/60537/") && ?uri != ?related_uri )
52
- }
53
-
54
- OPTIONAL {
55
- ?uri rdfs:seeAlso ?exactMatch_uri .
56
- ?exactMatch_uri omeka:label ?exactMatch_label .
57
- }
58
- }
36
+ OPTIONAL {
37
+ ?uri sdo:alternateName ?altLabel .
38
+ }
39
+ OPTIONAL {
40
+ ?uri hg:absorbedBy|hg:absorbed ?related_uri .
41
+ ?related_uri a gtm:Straat ;
42
+ sdo:name ?related_prefLabel .
43
+ FILTER (?uri != ?related_uri )
44
+ }
45
+ OPTIONAL {
46
+ ?uri rdfs:seeAlso ?exactMatch_uri .
47
+ ?exactMatch_uri omeka:label ?exactMatch_label .
48
+ }
49
+ }
@@ -2,10 +2,4 @@ import { Catalog } from '@netwerk-digitaal-erfgoed/network-of-terms-query';
2
2
  import type RDF from '@rdfjs/types';
3
3
  export declare function getCatalog(path?: string): Promise<Catalog>;
4
4
  export declare function fromStore(store: RDF.Store): Promise<Catalog>;
5
- /**
6
- * Return a separate RDF.Store for each catalog file because merging them into a single store
7
- * causes blank nodes to be re-used instead of incremented when adding the next file.
8
- */
9
- export declare function fromFiles(directory: string): Promise<RDF.Store>;
10
- export declare function fromFile(file: string): Promise<RDF.Store>;
11
5
  //# sourceMappingURL=getCatalog.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getCatalog.d.ts","sourceRoot":"","sources":["../src/getCatalog.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,OAAO,EAMR,MAAM,kDAAkD,CAAC;AAI1D,OAAO,KAAK,GAAG,MAAM,cAAc,CAAC;AAGpC,wBAAsB,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAMhE;AA0FD,wBAAsB,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CA6DlE;AAED;;;GAGG;AACH,wBAAsB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CASrE;AAED,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAQ/D"}
1
+ {"version":3,"file":"getCatalog.d.ts","sourceRoot":"","sources":["../src/getCatalog.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,OAAO,EAMR,MAAM,kDAAkD,CAAC;AAI1D,OAAO,KAAK,GAAG,MAAM,cAAc,CAAC;AAOpC,wBAAsB,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAMhE;AA0FD,wBAAsB,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CA6DlE"}
@@ -3,12 +3,14 @@ import { rdfParser } from 'rdf-parse';
3
3
  import { QueryEngine } from '@comunica/query-sparql-rdfjs';
4
4
  import { Transform } from 'stream';
5
5
  import { globby } from 'globby';
6
- import { storeStream } from 'rdf-store-stream';
7
6
  import { Catalog, Dataset, Feature, FeatureType, Organization, SparqlDistribution, } from '@netwerk-digitaal-erfgoed/network-of-terms-query';
8
7
  import { fileURLToPath } from 'url';
9
8
  import { ldkit, rdf, schema } from 'ldkit/namespaces';
10
9
  import { createLens } from 'ldkit';
11
10
  import { dirname, join } from 'node:path';
11
+ import { KeysRdfParseJsonLd } from '@comunica/context-entries';
12
+ import { FetchDocumentLoader } from 'jsonld-context-parser';
13
+ import { RdfStore } from 'rdf-stores';
12
14
  export async function getCatalog(path) {
13
15
  const directory = (path ?? fileURLToPath(new URL('../catalog', import.meta.url))).replace(/\\/g, '/'); // Windows compatibility.
14
16
  const store = await fromFiles(directory);
@@ -120,22 +122,28 @@ export async function fromStore(store) {
120
122
  * Return a separate RDF.Store for each catalog file because merging them into a single store
121
123
  * causes blank nodes to be re-used instead of incremented when adding the next file.
122
124
  */
123
- export async function fromFiles(directory) {
125
+ async function fromFiles(directory) {
124
126
  // Read all files except those in the queries/ directory.
125
127
  const files = await globby([directory, '!' + directory + '/queries']);
126
- return (await Promise.all(files.map(fromFile))).reduce((previous, current) => {
127
- previous.import(current.match());
128
- return previous;
129
- });
128
+ const store = RdfStore.createDefault();
129
+ for (const file of files) {
130
+ const stream = fromFile(file);
131
+ await new Promise((resolve, reject) => {
132
+ store.import(stream);
133
+ stream.on('end', resolve);
134
+ stream.on('error', reject);
135
+ });
136
+ }
137
+ return store;
130
138
  }
131
- export async function fromFile(file) {
132
- const quadStream = rdfParser
139
+ function fromFile(file) {
140
+ return rdfParser
133
141
  .parse(fs.createReadStream(file), {
142
+ [KeysRdfParseJsonLd.documentLoader.name]: documentLoader,
134
143
  path: file,
135
144
  })
136
145
  .pipe(new InlineFiles(file))
137
146
  .pipe(new SubstituteCredentialsFromEnvironmentVariables());
138
- return storeStream(quadStream);
139
147
  }
140
148
  /**
141
149
  * An RDF.Quad transform that inlines file://... references in the quad's object value.
@@ -172,3 +180,16 @@ class SubstituteCredentialsFromEnvironmentVariables extends Transform {
172
180
  callback();
173
181
  }
174
182
  }
183
+ /**
184
+ * TODO: https://github.com/comunica/comunica/issues/1635
185
+ */
186
+ class CachingDocumentLoader extends FetchDocumentLoader {
187
+ cache = {};
188
+ async load(url) {
189
+ if (this.cache[url]) {
190
+ return this.cache[url];
191
+ }
192
+ return (this.cache[url] = await super.load(url));
193
+ }
194
+ }
195
+ const documentLoader = new CachingDocumentLoader();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@netwerk-digitaal-erfgoed/network-of-terms-catalog",
3
- "version": "10.16.1",
3
+ "version": "10.17.0",
4
4
  "description": "Catalog of Network of Terms datasets",
5
5
  "keywords": [
6
6
  "nde"
@@ -34,15 +34,17 @@
34
34
  "!**/*.tsbuildinfo"
35
35
  ],
36
36
  "dependencies": {
37
+ "@comunica/context-entries": "^4.4.1",
37
38
  "@comunica/query-sparql": "^4.3.0",
38
39
  "@comunica/query-sparql-rdfjs": "^4.3.0",
39
40
  "@netwerk-digitaal-erfgoed/network-of-terms-query": "*",
40
41
  "@rdfjs/types": "^2.0.1",
41
42
  "globby": "^14.0.2",
43
+ "jsonld-context-parser": "^2.4.0",
42
44
  "ldkit": "^2.5.1",
43
45
  "memoize": "^10.0.0",
44
- "rdf-parse": "^3.0.0",
45
- "rdf-store-stream": "^3.0.0",
46
+ "rdf-parse": "^4.0.0",
47
+ "rdf-stores": "^2.1.1",
46
48
  "tslib": "^2.3.0"
47
49
  },
48
50
  "devDependencies": {