diff --git a/jest.config.js b/jest.config.js index 5ced36c52..38e90394c 100644 --- a/jest.config.js +++ b/jest.config.js @@ -11,10 +11,10 @@ export default { ], coverageThreshold: { global: { - lines: 90.99, - statements: 90.99, - branches: 95.93, - functions: 91.52, + lines: 91.33, + statements: 91.33, + branches: 95.97, + functions: 92.37, }, }, transform: { diff --git a/packages/network-of-terms-catalog/README.md b/packages/network-of-terms-catalog/README.md index e086bd6ef..21e36a2c5 100644 --- a/packages/network-of-terms-catalog/README.md +++ b/packages/network-of-terms-catalog/README.md @@ -16,6 +16,7 @@ additions specific to the Network of Terms: resources. This prefix is needed when clients look up terms by their URI in the Network of Terms: the Network then has to know which source to consult to retrieve the term; - `schema:inLanguage` is a required property; +- `schema:genre` is a required property, with values restricted to the list of [Termennetwerk onderwerpen](https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen.html); - `schema:mainEntityOfPage` is a required property; - each distribution has two or more [`schema:potentialAction`](https://schema.org/potentialAction)s: - a [`schema:SearchAction`](https://schema.org/SearchAction) and diff --git a/packages/network-of-terms-catalog/catalog/datasets/aat-materials.jsonld b/packages/network-of-terms-catalog/catalog/datasets/aat-materials.jsonld index faacdddc6..d35dfe6de 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/aat-materials.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/aat-materials.jsonld @@ -14,6 +14,11 @@ "@value": "AAT - materialen" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Materialen" + } + ], "creator": [ { "@id": "http://www.getty.edu/research/" diff --git a/packages/network-of-terms-catalog/catalog/datasets/aat-processes-and-techniques.jsonld b/packages/network-of-terms-catalog/catalog/datasets/aat-processes-and-techniques.jsonld index 5d71ef36f..4508ad800 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/aat-processes-and-techniques.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/aat-processes-and-techniques.jsonld @@ -14,6 +14,11 @@ "@value": "AAT - processen en technieken" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Technieken" + } + ], "creator": [ { "@id": "http://www.getty.edu/research/" diff --git a/packages/network-of-terms-catalog/catalog/datasets/aat-styles-and-periods.jsonld b/packages/network-of-terms-catalog/catalog/datasets/aat-styles-and-periods.jsonld index 457a2db43..1a4e35314 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/aat-styles-and-periods.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/aat-styles-and-periods.jsonld @@ -14,6 +14,14 @@ "@value": "AAT - stijlen en periodes" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Periodes" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Stijlen" + } + ], "creator": [ { "@id": "http://www.getty.edu/research/" diff --git a/packages/network-of-terms-catalog/catalog/datasets/aat.jsonld b/packages/network-of-terms-catalog/catalog/datasets/aat.jsonld index 16e051588..582a129d1 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/aat.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/aat.jsonld @@ -14,6 +14,32 @@ "@value": "AAT" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Abstracte-begrippen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Activiteiten" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Fysieke-kenmerken" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Materialen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Objecten" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Periodes" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Stijlen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Actoren-en-organismen" + } + ], "creator": [ { "@id": "http://www.getty.edu/research/" diff --git a/packages/network-of-terms-catalog/catalog/datasets/abr.jsonld b/packages/network-of-terms-catalog/catalog/datasets/abr.jsonld index 833af9cdf..5f658f91a 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/abr.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/abr.jsonld @@ -14,6 +14,23 @@ "@value": "ABR" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Abstracte-begrippen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Materialen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Periodes" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Technieken" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Objecten" + } + ], "creator": [ { "@id": "https://www.cultureelerfgoed.nl" diff --git a/packages/network-of-terms-catalog/catalog/datasets/adamlink-adressen.jsonld b/packages/network-of-terms-catalog/catalog/datasets/adamlink-adressen.jsonld index b6a97aea3..f0c0748d5 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/adamlink-adressen.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/adamlink-adressen.jsonld @@ -8,6 +8,11 @@ "@value": "Adamlink: historische adressen in Amsterdam" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Locaties" + } + ], "creator": [ { "@id": "https://www.amsterdamtimemachine.nl" diff --git a/packages/network-of-terms-catalog/catalog/datasets/adamlink-straten.jsonld b/packages/network-of-terms-catalog/catalog/datasets/adamlink-straten.jsonld index f8db2df35..a2a6ddf58 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/adamlink-straten.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/adamlink-straten.jsonld @@ -8,6 +8,11 @@ "@value": "Adamlink: straten in Amsterdam" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Locaties" + } + ], "creator": [ { "@id": "https://www.amsterdamtimemachine.nl" @@ -55,4 +60,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/packages/network-of-terms-catalog/catalog/datasets/brabantse-gebouwen.jsonld b/packages/network-of-terms-catalog/catalog/datasets/brabantse-gebouwen.jsonld index 2ae7cd2ed..dee0cb3c1 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/brabantse-gebouwen.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/brabantse-gebouwen.jsonld @@ -8,6 +8,11 @@ "@value": "Brabantse gebouwen" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Gebouwen" + } + ], "creator": [ { "@id": "https://www.erfgoedbrabant.nl" diff --git a/packages/network-of-terms-catalog/catalog/datasets/brinkman.jsonld b/packages/network-of-terms-catalog/catalog/datasets/brinkman.jsonld index 6d51895c4..4f45c6753 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/brinkman.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/brinkman.jsonld @@ -14,6 +14,11 @@ "@value": "Brinkman" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Genres" + } + ], "creator": [ { "@id": "http://data.bibliotheken.nl/doc/thes/p075301482" diff --git a/packages/network-of-terms-catalog/catalog/datasets/cht-materials.jsonld b/packages/network-of-terms-catalog/catalog/datasets/cht-materials.jsonld index 76e670ed5..568b3542a 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/cht-materials.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/cht-materials.jsonld @@ -14,6 +14,11 @@ "@value": "CHT - materialen" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Materialen" + } + ], "creator": [ { "@id": "https://www.cultureelerfgoed.nl" diff --git a/packages/network-of-terms-catalog/catalog/datasets/cht-styles-and-periods.jsonld b/packages/network-of-terms-catalog/catalog/datasets/cht-styles-and-periods.jsonld index 2b8a1ae27..62bb1dba2 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/cht-styles-and-periods.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/cht-styles-and-periods.jsonld @@ -14,6 +14,14 @@ "@value": "CHT - stijlen en periodes" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Stijlen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Periodes" + } + ], "creator": [ { "@id": "https://www.cultureelerfgoed.nl" diff --git a/packages/network-of-terms-catalog/catalog/datasets/cht.jsonld b/packages/network-of-terms-catalog/catalog/datasets/cht.jsonld index d699d08ed..3a218c6ac 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/cht.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/cht.jsonld @@ -14,6 +14,35 @@ "@value": "CHT" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Abstracte-begrippen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Activiteiten" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Fysieke-kenmerken" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Materialen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Actoren-en-organismen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Objecten" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Periodes" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Stijlen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Technieken" + } + ], "creator": [ { "@id": "https://www.cultureelerfgoed.nl" diff --git a/packages/network-of-terms-catalog/catalog/datasets/eurovoc.jsonld b/packages/network-of-terms-catalog/catalog/datasets/eurovoc.jsonld index 8e3079075..1a994c868 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/eurovoc.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/eurovoc.jsonld @@ -8,6 +8,17 @@ "@value": "EuroVoc - thesaurus van de Europese Unie" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Abstracte-begrippen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Actoren-en-organismen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Locaties" + } + ], "creator": [ { "@id": "https://op.europa.eu/" diff --git a/packages/network-of-terms-catalog/catalog/datasets/geonames.jsonld b/packages/network-of-terms-catalog/catalog/datasets/geonames.jsonld index 5b5d504bd..df06909c9 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/geonames.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/geonames.jsonld @@ -8,6 +8,11 @@ "@value": "GeoNames: geografische namen in Nederland, België en Duitsland" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Locaties" + } + ], "creator": [ { "@id": "https://www.geonames.org/team.html" diff --git a/packages/network-of-terms-catalog/catalog/datasets/goudatijdmachine-straten.jsonld b/packages/network-of-terms-catalog/catalog/datasets/goudatijdmachine-straten.jsonld index 087eb29ec..9a9a112cb 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/goudatijdmachine-straten.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/goudatijdmachine-straten.jsonld @@ -8,6 +8,11 @@ "@value": "Goudse straten" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Locaties" + } + ], "creator": [ { "@id": "https://www.goudatijdmachine.nl", diff --git a/packages/network-of-terms-catalog/catalog/datasets/gtaa-classificatie.jsonld b/packages/network-of-terms-catalog/catalog/datasets/gtaa-classificatie.jsonld index c031698d4..b6afa4f27 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/gtaa-classificatie.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/gtaa-classificatie.jsonld @@ -8,6 +8,11 @@ "@value": "GTAA: classificatie" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Abstracte-begrippen" + } + ], "creator": [ { "@id": "https://www.beeldengeluid.nl/" diff --git a/packages/network-of-terms-catalog/catalog/datasets/gtaa-genres.jsonld b/packages/network-of-terms-catalog/catalog/datasets/gtaa-genres.jsonld index 48fb162bb..02b032293 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/gtaa-genres.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/gtaa-genres.jsonld @@ -8,6 +8,11 @@ "@value": "GTAA: genres" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Genres" + } + ], "creator": [ { "@id": "https://www.beeldengeluid.nl/" diff --git a/packages/network-of-terms-catalog/catalog/datasets/gtaa-geografische-namen.jsonld b/packages/network-of-terms-catalog/catalog/datasets/gtaa-geografische-namen.jsonld index b411b27d9..c2b36c2a4 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/gtaa-geografische-namen.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/gtaa-geografische-namen.jsonld @@ -8,6 +8,11 @@ "@value": "GTAA: geografische namen" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Locaties" + } + ], "creator": [ { "@id": "https://www.beeldengeluid.nl/" diff --git a/packages/network-of-terms-catalog/catalog/datasets/gtaa-namen.jsonld b/packages/network-of-terms-catalog/catalog/datasets/gtaa-namen.jsonld index f71d7aca5..9e91f7932 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/gtaa-namen.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/gtaa-namen.jsonld @@ -8,6 +8,14 @@ "@value": "GTAA: namen" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Personen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Actoren-en-organismen" + } + ], "creator": [ { "@id": "https://www.beeldengeluid.nl/" diff --git a/packages/network-of-terms-catalog/catalog/datasets/gtaa-onderwerpen-beng.jsonld b/packages/network-of-terms-catalog/catalog/datasets/gtaa-onderwerpen-beng.jsonld index 94670bfda..4a3c52f5d 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/gtaa-onderwerpen-beng.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/gtaa-onderwerpen-beng.jsonld @@ -8,6 +8,14 @@ "@value": "GTAA: onderwerpen beeld-geluid" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Abstracte-begrippen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Genres" + } + ], "creator": [ { "@id": "https://www.beeldengeluid.nl/" diff --git a/packages/network-of-terms-catalog/catalog/datasets/gtaa-onderwerpen.jsonld b/packages/network-of-terms-catalog/catalog/datasets/gtaa-onderwerpen.jsonld index 37b5883fe..09eaf3b7f 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/gtaa-onderwerpen.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/gtaa-onderwerpen.jsonld @@ -8,6 +8,14 @@ "@value": "GTAA: onderwerpen" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Abstracte-begrippen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Genres" + } + ], "creator": [ { "@id": "https://www.beeldengeluid.nl/" diff --git a/packages/network-of-terms-catalog/catalog/datasets/gtaa-persoonsnamen.jsonld b/packages/network-of-terms-catalog/catalog/datasets/gtaa-persoonsnamen.jsonld index f3551cfc5..88b70e75e 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/gtaa-persoonsnamen.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/gtaa-persoonsnamen.jsonld @@ -8,6 +8,11 @@ "@value": "GTAA: persoonsnamen" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Personen" + } + ], "creator": [ { "@id": "https://www.beeldengeluid.nl/" diff --git a/packages/network-of-terms-catalog/catalog/datasets/homosaurus.jsonld b/packages/network-of-terms-catalog/catalog/datasets/homosaurus.jsonld index 58c264a48..a45ed902b 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/homosaurus.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/homosaurus.jsonld @@ -8,6 +8,11 @@ "@value": "Homosaurus" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Abstracte-begrippen" + } + ], "creator": [ { "@id": "https://ihlia.nl" diff --git a/packages/network-of-terms-catalog/catalog/datasets/iconclass.jsonld b/packages/network-of-terms-catalog/catalog/datasets/iconclass.jsonld index 111ed0cbd..265dc84f0 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/iconclass.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/iconclass.jsonld @@ -8,6 +8,17 @@ "@value": "Iconclass" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Abstracte-begrippen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Genres" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Periodes" + } + ], "creator": [ { "@id": "https://henrivandewaalfoundation.org" diff --git a/packages/network-of-terms-catalog/catalog/datasets/ied.jsonld b/packages/network-of-terms-catalog/catalog/datasets/ied.jsonld index 0c8ae4553..047b5b1f0 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/ied.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/ied.jsonld @@ -14,6 +14,20 @@ "@value": "IED" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Abstracte-begrippen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Locaties" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Actoren-en-organismen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Objecten" + } + ], "creator": [ { "@id": "https://www.indischherinneringscentrum.nl/" diff --git a/packages/network-of-terms-catalog/catalog/datasets/koloniaal-verleden.jsonld b/packages/network-of-terms-catalog/catalog/datasets/koloniaal-verleden.jsonld index e194cc0d8..e6ef20914 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/koloniaal-verleden.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/koloniaal-verleden.jsonld @@ -8,6 +8,23 @@ "@value": "Koloniaal Verleden" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Abstracte-begrippen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Locaties" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Actoren-en-organismen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Personen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Objecten" + } + ], "creator": [ { "@id": "https://www.cultureelerfgoed.nl" diff --git a/packages/network-of-terms-catalog/catalog/datasets/muziekschatten-onderwerpen.jsonld b/packages/network-of-terms-catalog/catalog/datasets/muziekschatten-onderwerpen.jsonld index 842cb1175..ffff789cc 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/muziekschatten-onderwerpen.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/muziekschatten-onderwerpen.jsonld @@ -8,6 +8,14 @@ "@value": "Muziekschatten: onderwerpen" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Abstracte-begrippen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Genres" + } + ], "creator": [ { "@id": "https://www.omroepmuziek.nl" diff --git a/packages/network-of-terms-catalog/catalog/datasets/muziekschatten-personen.jsonld b/packages/network-of-terms-catalog/catalog/datasets/muziekschatten-personen.jsonld index e1556e20c..190e6712b 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/muziekschatten-personen.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/muziekschatten-personen.jsonld @@ -8,6 +8,11 @@ "@value": "Muziekschatten: personen" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Personen" + } + ], "creator": [ { "@id": "https://www.omroepmuziek.nl" diff --git a/packages/network-of-terms-catalog/catalog/datasets/mw-genresstijlen.jsonld b/packages/network-of-terms-catalog/catalog/datasets/mw-genresstijlen.jsonld index 02a2ea6f7..e91306056 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/mw-genresstijlen.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/mw-genresstijlen.jsonld @@ -8,6 +8,14 @@ "@value": "Muziek: genres en stijlen" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Genres" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Stijlen" + } + ], "creator": [ { "@id": "https://www.muziekweb.nl" diff --git a/packages/network-of-terms-catalog/catalog/datasets/mw-personengroepen.jsonld b/packages/network-of-terms-catalog/catalog/datasets/mw-personengroepen.jsonld index 9caeda423..4d41513fa 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/mw-personengroepen.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/mw-personengroepen.jsonld @@ -8,6 +8,11 @@ "@value": "Muziek: personen en groepen" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Personen" + } + ], "creator": [ { "@id": "https://www.muziekweb.nl" diff --git a/packages/network-of-terms-catalog/catalog/datasets/nmvw.jsonld b/packages/network-of-terms-catalog/catalog/datasets/nmvw.jsonld index 24d6642a4..2a856699f 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/nmvw.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/nmvw.jsonld @@ -8,6 +8,23 @@ "@value": "Thesaurus Nationaal Museum van Wereldculturen" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Abstracte-begrippen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Materialen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Objecten" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Technieken" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Locaties" + } + ], "creator": [ { "@id": "http://www.wereldculturen.nl" diff --git a/packages/network-of-terms-catalog/catalog/datasets/nta.jsonld b/packages/network-of-terms-catalog/catalog/datasets/nta.jsonld index 8aac18b24..7e688eb5f 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/nta.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/nta.jsonld @@ -14,6 +14,11 @@ "@value": "NTA" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Personen" + } + ], "creator": [ { "@id": "http://data.bibliotheken.nl/doc/thes/p075301482" diff --git a/packages/network-of-terms-catalog/catalog/datasets/rijksmonumenten.jsonld b/packages/network-of-terms-catalog/catalog/datasets/rijksmonumenten.jsonld index ff6b0e7cc..0b492c510 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/rijksmonumenten.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/rijksmonumenten.jsonld @@ -1,58 +1,63 @@ { - "@context": "https://schema.org/docs/jsonldcontext.jsonld", - "@id": "https://linkeddata.cultureelerfgoed.nl/cho-kennis/id/rijksmonument/", - "@type": "Dataset", - "name": [ - { - "@language": "nl", - "@value": "Rijksmonumentenregister" - } - ], - "creator": [ - { - "@id": "https://www.cultureelerfgoed.nl" - } - ], - "url": [ - "https://linkeddata.cultureelerfgoed.nl/cho-kennis/id/rijksmonument/" - ], - "mainEntityOfPage": [ - "https://monumentenregister.cultureelerfgoed.nl/" - ], - "description": [ - { - "@language": "nl", - "@value": "Rijksmonumenten" - } - ], - "inLanguage": "nl", - "distribution": [ - { - "@id": "https://linkeddata.cultureelerfgoed.nl/cho-kennis/id/rijksmonument/", - "@type": "DataDownload", - "contentUrl": "https://api.linkeddata.cultureelerfgoed.nl/datasets/rce/Rijksmonument/services/Rijksmonument/sparql", - "encodingFormat": "application/sparql-query", - "potentialAction": [ - { - "@type": "SearchAction", - "query": "file://catalog/queries/search/rijksmonumenten.rq" - }, - { - "@type": "FindAction", - "query": "file://catalog/queries/lookup/rijksmonumenten.rq" - }, - { - "@type": "Action", - "target": { - "@type": "EntryPoint", - "actionApplication": { - "@id": "https://reconciliation-api.github.io/specs/latest/", - "@type": "SoftwareApplication" - }, - "urlTemplate": "https://termennetwerk-api.netwerkdigitaalerfgoed.nl/reconcile/{distribution}" - } + "@context": "https://schema.org/docs/jsonldcontext.jsonld", + "@id": "https://linkeddata.cultureelerfgoed.nl/cho-kennis/id/rijksmonument/", + "@type": "Dataset", + "name": [ + { + "@language": "nl", + "@value": "Rijksmonumentenregister" + } + ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Gebouwen" + } + ], + "creator": [ + { + "@id": "https://www.cultureelerfgoed.nl" + } + ], + "url": [ + "https://linkeddata.cultureelerfgoed.nl/cho-kennis/id/rijksmonument/" + ], + "mainEntityOfPage": [ + "https://monumentenregister.cultureelerfgoed.nl/" + ], + "description": [ + { + "@language": "nl", + "@value": "Rijksmonumenten" + } + ], + "inLanguage": "nl", + "distribution": [ + { + "@id": "https://linkeddata.cultureelerfgoed.nl/cho-kennis/id/rijksmonument/", + "@type": "DataDownload", + "contentUrl": "https://api.linkeddata.cultureelerfgoed.nl/datasets/rce/Rijksmonument/services/Rijksmonument/sparql", + "encodingFormat": "application/sparql-query", + "potentialAction": [ + { + "@type": "SearchAction", + "query": "file://catalog/queries/search/rijksmonumenten.rq" + }, + { + "@type": "FindAction", + "query": "file://catalog/queries/lookup/rijksmonumenten.rq" + }, + { + "@type": "Action", + "target": { + "@type": "EntryPoint", + "actionApplication": { + "@id": "https://reconciliation-api.github.io/specs/latest/", + "@type": "SoftwareApplication" + }, + "urlTemplate": "https://termennetwerk-api.netwerkdigitaalerfgoed.nl/reconcile/{distribution}" } - ] - } - ] - } + } + ] + } + ] +} diff --git a/packages/network-of-terms-catalog/catalog/datasets/rkdartists.jsonld b/packages/network-of-terms-catalog/catalog/datasets/rkdartists.jsonld index 30e3cacdb..f94b171f8 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/rkdartists.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/rkdartists.jsonld @@ -8,6 +8,11 @@ "@value": "RKDartists" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Personen" + } + ], "creator": [ { "@id": "https://rkd.nl" diff --git a/packages/network-of-terms-catalog/catalog/datasets/stcn-drukkers.jsonld b/packages/network-of-terms-catalog/catalog/datasets/stcn-drukkers.jsonld index 0bd48520a..8c8e3f119 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/stcn-drukkers.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/stcn-drukkers.jsonld @@ -8,6 +8,11 @@ "@value": "STCN: drukkers" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Personen" + } + ], "creator": [ { "@id": "http://data.bibliotheken.nl/doc/thes/p075301482" diff --git a/packages/network-of-terms-catalog/catalog/datasets/uitvoeringsmedium.jsonld b/packages/network-of-terms-catalog/catalog/datasets/uitvoeringsmedium.jsonld index 20663814a..4bec452f7 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/uitvoeringsmedium.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/uitvoeringsmedium.jsonld @@ -8,6 +8,14 @@ "@value": "Uitvoeringsmedium" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Objecten" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Abstracte-begrippen" + } + ], "creator": [ { "@id": "https://www.podiumkunst.net" diff --git a/packages/network-of-terms-catalog/catalog/datasets/wikidata-entities-all.jsonld b/packages/network-of-terms-catalog/catalog/datasets/wikidata-entities-all.jsonld index 7b1706cdf..0986800ac 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/wikidata-entities-all.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/wikidata-entities-all.jsonld @@ -8,6 +8,17 @@ "@value": "Wikidata: alle entiteiten" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Objecten" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Personen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Locaties" + } + ], "creator": [ { "@id": "https://www.wikidata.org/entity/Q180" diff --git a/packages/network-of-terms-catalog/catalog/datasets/wikidata-entities-persons.jsonld b/packages/network-of-terms-catalog/catalog/datasets/wikidata-entities-persons.jsonld index c9c32cb25..739389059 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/wikidata-entities-persons.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/wikidata-entities-persons.jsonld @@ -8,6 +8,11 @@ "@value": "Wikidata: personen" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Personen" + } + ], "creator": [ { "@id": "https://www.wikidata.org/entity/Q180" diff --git a/packages/network-of-terms-catalog/catalog/datasets/wikidata-entities-places.jsonld b/packages/network-of-terms-catalog/catalog/datasets/wikidata-entities-places.jsonld index c4efa4562..789841f43 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/wikidata-entities-places.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/wikidata-entities-places.jsonld @@ -8,6 +8,11 @@ "@value": "Wikidata: plaatsen in Nederland en België" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Locaties" + } + ], "creator": [ { "@id": "https://www.wikidata.org/entity/Q180" diff --git a/packages/network-of-terms-catalog/catalog/datasets/wikidata-entities-streets.jsonld b/packages/network-of-terms-catalog/catalog/datasets/wikidata-entities-streets.jsonld index 1172be67c..10d0c7996 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/wikidata-entities-streets.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/wikidata-entities-streets.jsonld @@ -8,6 +8,11 @@ "@value": "Wikidata: straten in Nederland" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Locaties" + } + ], "creator": [ { "@id": "https://www.wikidata.org/entity/Q180" diff --git a/packages/network-of-terms-catalog/catalog/datasets/wo2biografie.jsonld b/packages/network-of-terms-catalog/catalog/datasets/wo2biografie.jsonld index c63813f33..985f9abd6 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/wo2biografie.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/wo2biografie.jsonld @@ -8,6 +8,11 @@ "@value": "WO2-biografieën" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Personen" + } + ], "creator": [ { "@id": "https://www.niod.nl" diff --git a/packages/network-of-terms-catalog/catalog/datasets/wo2thesaurus.jsonld b/packages/network-of-terms-catalog/catalog/datasets/wo2thesaurus.jsonld index 761977162..355c14d67 100644 --- a/packages/network-of-terms-catalog/catalog/datasets/wo2thesaurus.jsonld +++ b/packages/network-of-terms-catalog/catalog/datasets/wo2thesaurus.jsonld @@ -8,6 +8,20 @@ "@value": "WO2-thesaurus" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Abstracte-begrippen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Gebeurtenissen" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Locaties" + }, + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Actoren-en-organismen" + } + ], "creator": [ { "@id": "https://www.niod.nl" diff --git a/packages/network-of-terms-catalog/shacl/dataset.jsonld b/packages/network-of-terms-catalog/shacl/dataset.jsonld index 319463210..1d8e930d5 100644 --- a/packages/network-of-terms-catalog/shacl/dataset.jsonld +++ b/packages/network-of-terms-catalog/shacl/dataset.jsonld @@ -22,6 +22,13 @@ }, "sh:minCount": 0 }, + { + "sh:path": { + "@id": "schema:genre" + }, + "sh:minCount": 1, + "sh:pattern": "^https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/" + }, { "sh:path": { "@id": "schema:inLanguage" diff --git a/packages/network-of-terms-catalog/src/getCatalog.ts b/packages/network-of-terms-catalog/src/getCatalog.ts index 28fc8f192..5f88faed7 100644 --- a/packages/network-of-terms-catalog/src/getCatalog.ts +++ b/packages/network-of-terms-catalog/src/getCatalog.ts @@ -33,10 +33,11 @@ export async function fromStore(store: RDF.Store): Promise { '?dataset ?name ?description ?creator ?creatorName ?creatorAlternateName ?distribution ?endpointUrl ?searchQuery ?lookupQuery ?reconciliationUrlTemplate ?alternateName ?mainEntityOfPage ?inLanguage'; const query = ` PREFIX schema: - SELECT ${properties} (GROUP_CONCAT(?url) as ?url) WHERE { + SELECT ${properties} (GROUP_CONCAT(?genre) as ?genre) (GROUP_CONCAT(DISTINCT ?url) as ?url) WHERE { ?dataset a schema:Dataset ; schema:name ?name ; schema:description ?description ; + schema:genre ?genre ; schema:inLanguage ?inLanguage ; schema:creator ?creator ; schema:distribution ?distribution ; @@ -73,6 +74,10 @@ export async function fromStore(store: RDF.Store): Promise { new IRI(bindings.get('dataset')!.value), bindings.get('name')!.value, bindings.get('description')!.value, + bindings + .get('genre')! + .value.split(' ') // The single value is space-delineated. + .map((genre: string) => new IRI(genre)), bindings .get('url')! .value.split(' ') // The single value is space-delineated. diff --git a/packages/network-of-terms-catalog/test/catalog.test.ts b/packages/network-of-terms-catalog/test/catalog.test.ts index edd52ec15..cd6809c73 100644 --- a/packages/network-of-terms-catalog/test/catalog.test.ts +++ b/packages/network-of-terms-catalog/test/catalog.test.ts @@ -38,6 +38,11 @@ describe('Catalog', () => { expect(cht.description).toEqual( 'Onderwerpen voor het beschrijven van cultureel erfgoed' ); + expect(cht.genres).toContainEqual( + new IRI( + 'https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Abstracte-begrippen' + ) + ); expect(cht.termsPrefixes).toEqual([ new IRI('https://data.cultureelerfgoed.nl/term/id/cht/'), ]); diff --git a/packages/network-of-terms-catalog/test/fixtures/credentials.jsonld b/packages/network-of-terms-catalog/test/fixtures/credentials.jsonld index 0f6ae03de..2bba249b7 100644 --- a/packages/network-of-terms-catalog/test/fixtures/credentials.jsonld +++ b/packages/network-of-terms-catalog/test/fixtures/credentials.jsonld @@ -14,6 +14,11 @@ "@value": "Classificaties voor het beschrijven van audiovisueel materiaal" } ], + "genre": [ + { + "@id": "https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Genres" + } + ], "creator": [ { "@id": "https://www.beeldengeluid.nl/", diff --git a/packages/network-of-terms-query/src/catalog.ts b/packages/network-of-terms-query/src/catalog.ts index 66efcca80..81e1a29be 100644 --- a/packages/network-of-terms-query/src/catalog.ts +++ b/packages/network-of-terms-query/src/catalog.ts @@ -42,6 +42,7 @@ export class Dataset { readonly iri: IRI, readonly name: string, readonly description: string, + readonly genres: IRI[], readonly termsPrefixes: IRI[], readonly mainEntityOfPage: string, readonly inLanguage: string, diff --git a/packages/network-of-terms-query/src/server-test.ts b/packages/network-of-terms-query/src/server-test.ts index f9cd06036..e0d0e9a19 100644 --- a/packages/network-of-terms-query/src/server-test.ts +++ b/packages/network-of-terms-query/src/server-test.ts @@ -23,6 +23,11 @@ export const testCatalog = (port: number) => new IRI('https://data.rkd.nl/rkdartists'), 'RKDartists', 'Biografische gegevens van Nederlandse en buitenlandse kunstenaars van de middeleeuwen tot heden', + [ + new IRI( + 'https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Personen' + ), + ], [new IRI('https://example.com/resources/')], 'https://example.com/rkdartists', 'nl', @@ -97,6 +102,11 @@ export const testCatalog = (port: number) => new IRI('https://data.cultureelerfgoed.nl/term/id/cht'), 'Cultuurhistorische Thesaurus', 'Onderwerpen voor het beschrijven van cultureel erfgoed', + [ + new IRI( + 'https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Abstracte-begrippen' + ), + ], [new IRI('https://data.cultureelerfgoed.nl/term/id/cht/')], 'https://example.com/cht', 'nl', @@ -126,6 +136,11 @@ export const testCatalog = (port: number) => new IRI('http://vocab.getty.edu/aat'), 'Art & Architecture Thesaurus', 'Onderwerpen voor het beschrijven van architectuur-, kunst- en cultuurhistorische collecties', + [ + new IRI( + 'https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Abstracte-begrippen' + ), + ], [new IRI('http://vocab.getty.edu/aat/')], 'https://example.com/aat', 'nl', @@ -149,6 +164,11 @@ export const testCatalog = (port: number) => new IRI('http://data.beeldengeluid.nl/gtaa/Persoonsnamen'), 'GTAA: persoonsnamen', 'Personen voor het beschrijven van audiovisueel materiaal', + [ + new IRI( + 'https://data.cultureelerfgoed.nl/termennetwerk/onderwerpen/Abstracte-begrippen' + ), + ], [new IRI('http://data.beeldengeluid.nl/gtaa/')], 'https://example.com/gtaa', 'nl',