@netwerk-digitaal-erfgoed/network-of-terms-catalog 10.0.1 → 10.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (27) hide show
  1. package/catalog/datasets/muziekschatten-klassieke-werken.jsonld +1 -1
  2. package/catalog/datasets/muziekschatten-onderwerpen.jsonld +2 -2
  3. package/catalog/datasets/muziekschatten-personen.jsonld +1 -1
  4. package/catalog/datasets/uitvoeringsmedium.jsonld +1 -1
  5. package/catalog/publishers.jsonld +1 -4
  6. package/catalog/queries/lookup/eurovoc.rq +6 -6
  7. package/catalog/queries/lookup/muziekschatten-klassiekewerken.rq +49 -0
  8. package/catalog/queries/lookup/muziekschatten-onderwerpen.rq +58 -0
  9. package/catalog/queries/lookup/muziekschatten-personen.rq +49 -0
  10. package/catalog/queries/lookup/rkdartists.rq +81 -27
  11. package/catalog/queries/lookup/uitvoeringsmedium.rq +33 -0
  12. package/catalog/queries/lookup/wikidata.rq +3 -22
  13. package/catalog/queries/search/aat-materials.rq +30 -16
  14. package/catalog/queries/search/aat-processes-and-techniques.rq +31 -16
  15. package/catalog/queries/search/aat-styles-and-periods.rq +32 -17
  16. package/catalog/queries/search/aat.rq +34 -19
  17. package/catalog/queries/search/eurovoc.rq +9 -7
  18. package/catalog/queries/search/muziekschatten-onderwerpen.rq +22 -10
  19. package/catalog/queries/search/muziekschatten-personen.rq +4 -1
  20. package/catalog/queries/search/rkdartists.rq +79 -25
  21. package/catalog/queries/search/uitvoeringsmedium.rq +0 -4
  22. package/catalog/queries/search/wikidata-entities-all.rq +3 -3
  23. package/catalog/queries/search/wikidata-entities-persons.rq +3 -3
  24. package/catalog/queries/search/wikidata-entities-places.rq +3 -3
  25. package/catalog/queries/search/wikidata-entities-streets.rq +5 -26
  26. package/package.json +2 -2
  27. package/catalog/queries/lookup/muziekschatten.rq +0 -158
@@ -52,7 +52,7 @@
52
52
  },
53
53
  {
54
54
  "@type": "FindAction",
55
- "query": "file://catalog/queries/lookup/muziekschatten.rq"
55
+ "query": "file://catalog/queries/lookup/muziekschatten-klassiekewerken.rq"
56
56
  },
57
57
  {
58
58
  "@type": "Action",
@@ -26,7 +26,7 @@
26
26
  }
27
27
  ],
28
28
  "url": [
29
- "https://data.muziekschatten.nl/som/"
29
+ "https://data.muziekschatten.nl/som/d"
30
30
  ],
31
31
  "mainEntityOfPage": [
32
32
  "https://data.muziekschatten.nl/"
@@ -55,7 +55,7 @@
55
55
  },
56
56
  {
57
57
  "@type": "FindAction",
58
- "query": "file://catalog/queries/lookup/muziekschatten.rq"
58
+ "query": "file://catalog/queries/lookup/muziekschatten-onderwerpen.rq"
59
59
  },
60
60
  {
61
61
  "@type": "Action",
@@ -52,7 +52,7 @@
52
52
  },
53
53
  {
54
54
  "@type": "FindAction",
55
- "query": "file://catalog/queries/lookup/muziekschatten.rq"
55
+ "query": "file://catalog/queries/lookup/muziekschatten-personen.rq"
56
56
  },
57
57
  {
58
58
  "@type": "Action",
@@ -55,7 +55,7 @@
55
55
  },
56
56
  {
57
57
  "@type": "FindAction",
58
- "query": "file://catalog/queries/lookup/muziekschatten.rq"
58
+ "query": "file://catalog/queries/lookup/uitvoeringsmedium.rq"
59
59
  },
60
60
  {
61
61
  "@type": "Action",
@@ -29,10 +29,7 @@
29
29
  "@value": "Rijksdienst voor het Cultureel Erfgoed"
30
30
  }
31
31
  ],
32
- "alternateName": {
33
- "@language": "nl",
34
- "@value": "RCE"
35
- }
32
+ "alternateName": "RCE"
36
33
  },
37
34
  {
38
35
  "@id": "https://www.niod.nl",
@@ -23,31 +23,31 @@ WHERE {
23
23
 
24
24
  OPTIONAL {
25
25
  ?uri skos:prefLabel ?prefLabel .
26
- FILTER(LANG(?prefLabel) = "nl")
26
+ FILTER(LANG(?prefLabel) = "nl" || LANG(?prefLabel) = "en")
27
27
  }
28
28
  OPTIONAL {
29
29
  ?uri skos:altLabel ?altLabel .
30
- FILTER(LANG(?altLabel) = "nl")
30
+ FILTER(LANG(?altLabel) = "nl" || LANG(?altLabel) = "en")
31
31
  }
32
32
  OPTIONAL {
33
33
  ?uri skos:broader ?broader_uri .
34
34
  ?broader_uri skos:prefLabel ?broader_prefLabel .
35
- FILTER(LANG(?broader_prefLabel) = "nl")
35
+ FILTER(LANG(?broader_prefLabel) = "nl" || LANG(?broader_prefLabel) = "en")
36
36
  }
37
37
  OPTIONAL {
38
38
  ?uri skos:narrower ?narrower_uri .
39
39
  ?narrower_uri skos:prefLabel ?narrower_prefLabel .
40
- FILTER(LANG(?narrower_prefLabel) = "nl")
40
+ FILTER(LANG(?narrower_prefLabel) = "nl" || LANG(?narrower_prefLabel) = "en")
41
41
  }
42
42
  OPTIONAL {
43
43
  ?uri skos:related ?related_uri .
44
44
  ?related_uri skos:prefLabel ?related_prefLabel .
45
- FILTER(LANG(?related_prefLabel) = "nl")
45
+ FILTER(LANG(?related_prefLabel) = "nl" || LANG(?related_prefLabel) = "en")
46
46
  }
47
47
  OPTIONAL {
48
48
  ?uri skos:exactMatch ?exactMatch_uri .
49
49
  ?exactMatch_uri skos:exactMatch ?exactMatch_prefLabel .
50
- FILTER(LANG(?exactMatch_prefLabel) = "nl")
50
+ FILTER(LANG(?exactMatch_prefLabel) = "nl" || LANG(?exactMatch_prefLabel) = "en")
51
51
  }
52
52
  }
53
53
  LIMIT 1000
@@ -0,0 +1,49 @@
1
+ PREFIX owl: <http://www.w3.org/2002/07/owl#>
2
+ PREFIX rdaw: <http://rdaregistry.info/Elements/w/>
3
+ PREFIX schema: <http://schema.org/>
4
+ PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
5
+ PREFIX som: <https://data.muziekschatten.nl/som/>
6
+
7
+ CONSTRUCT {
8
+ ?uri a skos:Concept;
9
+ skos:prefLabel ?prefLabel ;
10
+ skos:altLabel ?altLabel ;
11
+ skos:scopeNote ?scopeNote ;
12
+ skos:broader ?broader_uri ;
13
+ skos:narrower ?narrower_uri .
14
+ ?broader_uri skos:prefLabel ?broader_prefLabel .
15
+ ?narrower_uri skos:prefLabel ?narrower_prefLabel .
16
+ }
17
+ WHERE {
18
+ VALUES ?uri { ?uris }
19
+
20
+ ?uri a <http://rdaregistry.info/Elements/c/C10001>;
21
+ rdfs:label ?prefLabel .
22
+
23
+ OPTIONAL { ?uri rdaw:P10086 ?altLabel . } # Varianttitel
24
+ OPTIONAL { ?uri rdaw:P10219 ?eerste_datum }
25
+ OPTIONAL { ?uri rdaw:P10333 ?opusnummer }
26
+ OPTIONAL { ?uri rdaw:P10335 ?thematisch_nummer }
27
+ OPTIONAL {
28
+ ?uri rdaw:P10019 ?broader_uri . # Is part of work
29
+ ?broader_uri rdfs:label ?broader_prefLabel .
30
+ }
31
+ OPTIONAL {
32
+ ?uri rdaw:P10147 ?narrower_uri . # Has part work
33
+ ?narrower_uri rdfs:label ?narrower_prefLabel .
34
+ }
35
+
36
+ BIND(
37
+ STRLANG(
38
+ CONCAT(
39
+ ?prefLabel, ",",
40
+ IF(STRLEN(?altLabel) > 0, CONCAT(" Varianttitel: ", ?altLabel, ","), ""),
41
+ IF(BOUND(?opusnummer), CONCAT(" Opusnr.: ", ?opusnummer, ","), ""),
42
+ IF(BOUND(?thematisch_nummer), CONCAT(" Thematisch nr.: ", ?thematisch_nummer, ","), ""),
43
+ IF(BOUND(?eerste_datum), CONCAT(" Datum: ", ?eerste_datum), "")
44
+ ),
45
+ "nl"
46
+ ) AS ?scopeNote
47
+ )
48
+ }
49
+ LIMIT 1000
@@ -0,0 +1,58 @@
1
+ PREFIX owl: <http://www.w3.org/2002/07/owl#>
2
+ PREFIX rdaw: <http://rdaregistry.info/Elements/w/>
3
+ PREFIX schema: <http://schema.org/>
4
+ PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
5
+ PREFIX som: <https://data.muziekschatten.nl/som/>
6
+
7
+ CONSTRUCT {
8
+ ?uri a skos:Concept;
9
+ skos:prefLabel ?prefLabel;
10
+ skos:scopeNote ?scopeNote_nl, ?scopeNote_en;
11
+ skos:broader ?broader_uri ;
12
+ skos:exactMatch ?exactMatch_uri .
13
+ ?broader_uri skos:prefLabel ?broader_schema_name .
14
+ }
15
+ WHERE {
16
+ VALUES ?uri { ?uris }
17
+
18
+ ?uri a skos:Concept
19
+ BIND(<https://data.muziekschatten.nl/#onderwerpen> AS ?datasetUri).
20
+
21
+ OPTIONAL {
22
+ ?uri schema:name ?prefLabel .
23
+ }
24
+ OPTIONAL {
25
+ ?uri skos:broader ?broader_uri .
26
+ ?broader_uri schema:name ?broader_schema_name .
27
+ }
28
+ OPTIONAL {
29
+ ?uri schema:keywords ?schema_keywords
30
+ }
31
+ OPTIONAL {
32
+ ?uri som:DC ?dc
33
+ }
34
+ BIND(
35
+ STRLANG(
36
+ COALESCE(
37
+ IF(BOUND(?schema_keywords) && BOUND(?dc), CONCAT("Trefwoorden: ", ?schema_keywords, " | ", "Dewey: ", ?dc), ?noScopeNote),
38
+ IF(BOUND(?schema_keywords), CONCAT("Trefwoorden: ", ?schema_keywords), ?noScopeNote),
39
+ IF(BOUND(?dc), CONCAT("Dewey: ", ?dc), ?noScopeNote)
40
+ ),
41
+ "nl"
42
+ ) AS ?scopeNote_nl
43
+ )
44
+
45
+ BIND(
46
+ STRLANG(
47
+ COALESCE(
48
+ IF(BOUND(?schema_keywords) && BOUND(?dc), CONCAT("Keywords: ", ?schema_keywords, " | ", "Dewey: ", ?dc), ?noScopeNote),
49
+ IF(BOUND(?schema_keywords), CONCAT("Keywords: ", ?schema_keywords), ?noScopeNote),
50
+ IF(BOUND(?dc), CONCAT("Dewey: ", ?dc), ?noScopeNote)
51
+ ),
52
+ "en"
53
+ ) AS ?scopeNote_en
54
+ )
55
+
56
+ OPTIONAL { ?uri skos:exactMatch ?exactMatch_uri } # Has no labels.
57
+ }
58
+ LIMIT 1000
@@ -0,0 +1,49 @@
1
+ PREFIX owl: <http://www.w3.org/2002/07/owl#>
2
+ PREFIX rdaw: <http://rdaregistry.info/Elements/w/>
3
+ PREFIX schema: <http://schema.org/>
4
+ PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
5
+ PREFIX som: <https://data.muziekschatten.nl/som/>
6
+
7
+ CONSTRUCT {
8
+ ?uri a skos:Concept;
9
+ skos:prefLabel ?prefLabel ;
10
+ skos:altLabel ?schema_alternateName ;
11
+ skos:scopeNote ?schema_hasOccupation ;
12
+ skos:exactMatch ?exactMatch_uri .
13
+ }
14
+ WHERE {
15
+ VALUES ?uri { ?uris }
16
+
17
+ ?uri a schema:Person .
18
+
19
+ OPTIONAL { ?uri schema:name ?schema_name }
20
+ OPTIONAL { ?uri schema:alternateName ?schema_alternateName }
21
+ OPTIONAL {
22
+ ?uri schema:hasOccupation ?hasOccupation .
23
+ BIND(REPLACE(?hasOccupation, ";;;;;;;;;;;;", "") AS ?schema_hasOccupation)
24
+ }
25
+
26
+ OPTIONAL { ?uri schema:familyName ?schema_familyName }
27
+ OPTIONAL { ?uri schema:givenName ?schema_givenName }
28
+ BIND(
29
+ COALESCE(
30
+ IF(STRLEN(?schema_familyName) > 0 && STRLEN(?schema_givenName) > 0, CONCAT(?schema_familyName, ", ", ?schema_givenName), ?noName),
31
+ ?schema_familyName,
32
+ ?schema_givenName,
33
+ ?schema_name # Fallback
34
+ ) AS ?name
35
+ )
36
+ OPTIONAL { ?uri som:GDAT ?som_birthYear }
37
+ OPTIONAL { ?uri som:SDAT ?som_deathYear }
38
+ BIND(
39
+ COALESCE(
40
+ IF(BOUND(?som_birthYear) && BOUND(?som_deathYear), CONCAT(?som_birthYear, "-", ?som_deathYear), ?noDate),
41
+ IF(BOUND(?som_birthYear), CONCAT(?som_birthYear, "-"), ?noDate),
42
+ IF(BOUND(?som_deathYear), CONCAT("-", ?som_deathYear), ?noDate),
43
+ ""
44
+ ) AS ?dates
45
+ )
46
+ BIND(CONCAT(?name, IF(?dates != "", CONCAT(" (", ?dates, ")"), "")) AS ?prefLabel)
47
+ OPTIONAL { ?uri owl:sameAs ?exactMatch_uri } # Has no labels.
48
+ }
49
+ LIMIT 1000
@@ -6,7 +6,8 @@ CONSTRUCT {
6
6
  ?uri a skos:Concept ;
7
7
  skos:prefLabel ?prefLabel ;
8
8
  skos:altLabel ?altLabel ;
9
- skos:scopeNote ?scopeNote ;
9
+ skos:scopeNote ?scopeNote_nl, ?scopeNote_en ;
10
+ skos:exactMatch ?exactMatch_uri ;
10
11
  rdfs:seeAlso ?seeAlso .
11
12
  }
12
13
  WHERE {
@@ -17,49 +18,102 @@ WHERE {
17
18
  {
18
19
  SELECT ?uri
19
20
  (GROUP_CONCAT(DISTINCT ?schema_description; separator="; ") as ?descriptions)
20
- (GROUP_CONCAT(DISTINCT ?birthPlace; separator="/") as ?birthPlaces)
21
- (GROUP_CONCAT(DISTINCT ?deathPlace; separator="/") as ?deathPlaces)
22
- (GROUP_CONCAT(DISTINCT ?additionalType; separator=", ") as ?additionalTypes)
21
+ (GROUP_CONCAT(DISTINCT ?additionalType_nl; separator=", ") as ?additionalTypes_nl)
22
+ (GROUP_CONCAT(DISTINCT ?additionalType_en; separator=", ") as ?additionalTypes_en)
23
+ ?birthPlace_nl
24
+ ?birthPlace_en
25
+ ?deathPlace_nl
26
+ ?deathPlace_en
23
27
  WHERE {
24
28
  ?uri a ?type .
25
29
  VALUES ?type { schema:Person schema:Organization }
26
30
 
27
31
  OPTIONAL { ?uri schema:description ?schema_description . }
28
- OPTIONAL { ?uri schema:birthPlace ?birthPlace .
29
- FILTER(langMatches(lang(?birthPlace), "nl")) }
30
- OPTIONAL { ?uri schema:deathPlace ?deathPlace .
31
- FILTER(langMatches(lang(?deathPlace), "nl"))}
32
- OPTIONAL { ?uri schema:additionalType ?additionalType .
33
- FILTER(langMatches(lang(?additionalType), "nl"))}
34
32
 
35
- } GROUP BY ?uri
33
+ OPTIONAL {
34
+ ?uri schema:birthPlace ?birthPlace_nl .
35
+ FILTER(langMatches(lang(?birthPlace_nl), "nl"))
36
+ }
37
+ OPTIONAL {
38
+ ?uri schema:birthPlace ?birthPlace_en .
39
+ FILTER(langMatches(lang(?birthPlace_en), "en"))
40
+ }
41
+
42
+ OPTIONAL {
43
+ ?uri schema:deathPlace ?deathPlace_nl .
44
+ FILTER(langMatches(lang(?deathPlace_nl), "nl"))
45
+ }
46
+ OPTIONAL {
47
+ ?uri schema:deathPlace ?deathPlace_en .
48
+ FILTER(langMatches(lang(?deathPlace_en), "en"))
49
+ }
50
+
51
+ OPTIONAL {
52
+ ?uri schema:additionalType ?additionalType_nl .
53
+ FILTER(langMatches(lang(?additionalType_nl), "nl"))
54
+ }
55
+ OPTIONAL {
56
+ ?uri schema:additionalType ?additionalType_en .
57
+ FILTER(langMatches(lang(?additionalType_en), "en"))
58
+ }
59
+ }
60
+ #LIMIT#
36
61
  }
37
62
 
38
63
  OPTIONAL { ?uri schema:name ?prefLabel . }
39
64
  OPTIONAL { ?uri schema:alternateName ?altLabel . }
40
65
  OPTIONAL { ?uri schema:birthDate ?birthDate . }
41
66
  OPTIONAL { ?uri schema:deathDate ?deathDate . }
67
+ OPTIONAL { ?uri rdfs:seeAlso ?exactMatch_uri . }
42
68
 
43
69
  BIND(
44
- CONCAT(
45
- IF(BOUND(?birthDate) || STRLEN(?birthPlaces) > 0 ,
70
+ STRLANG(
46
71
  CONCAT(
47
- IF(BOUND(?birthDate), CONCAT(?birthDate, " "), ""),
48
- IF(STRLEN(?birthPlaces) > 0, CONCAT("(", ?birthPlaces, ") "), ""),
49
- IF(BOUND(?deathDate) || STRLEN(?deathPlaces) > 0," - "," - ; ")),
50
- ""),
51
- IF(BOUND(?deathDate) || STRLEN(?deathPlaces) > 0,
72
+ IF(BOUND(?birthDate) || STRLEN(?birthPlace_nl) > 0,
73
+ CONCAT(
74
+ IF(BOUND(?birthDate), CONCAT(?birthDate, " "), ""),
75
+ IF(STRLEN(?birthPlace_nl) > 0, CONCAT("(", ?birthPlace_nl, ") "), ""),
76
+ IF(BOUND(?deathDate) || STRLEN(?deathPlace_nl) > 0," - "," – ; ")),
77
+ ""
78
+ ),
79
+ IF(BOUND(?deathDate) || STRLEN(?deathPlace_nl) > 0,
80
+ CONCAT(
81
+ IF(BOUND(?birthDate) || STRLEN(?birthPlace_nl) > 0, "", "– "),
82
+ IF(BOUND(?deathDate), CONCAT(?deathDate, " "), ""),
83
+ IF(STRLEN(?deathPlace_nl) > 0, CONCAT("(", ?deathPlace_nl, ")"), ""),
84
+ "; "),
85
+ ""
86
+ ),
87
+ IF(STRLEN(?additionalTypes_nl) > 0, CONCAT(?additionalTypes_nl, ". "), ""),
88
+ IF(STRLEN(?descriptions) > 0, CONCAT(?descriptions, ". "), "")
89
+ ),
90
+ "nl"
91
+ ) as ?scopeNote_nl
92
+ )
93
+ BIND(
94
+ STRLANG(
52
95
  CONCAT(
53
- IF(BOUND(?birthDate) || STRLEN(?birthPlaces) > 0 , "", "- "),
54
- IF(BOUND(?deathDate), CONCAT(?deathDate, " "), ""),
55
- IF(STRLEN(?deathPlaces) > 0, CONCAT("(", ?deathPlaces, ")"), ""),
56
- "; "),
57
- ""),
58
- IF(STRLEN(?additionalTypes) > 0, CONCAT(?additionalTypes, ". "), ""),
59
- IF(STRLEN(?descriptions) > 0, CONCAT(?descriptions, ". "), "")
60
- ) as ?scopeNote
96
+ IF(BOUND(?birthDate) || STRLEN(?birthPlace_en) > 0,
97
+ CONCAT(
98
+ IF(BOUND(?birthDate), CONCAT(?birthDate, " "), ""),
99
+ IF(STRLEN(?birthPlace_en) > 0, CONCAT("(", ?birthPlace_en, ") "), ""),
100
+ IF(BOUND(?deathDate) || BOUND(?deathPlace_en)," - "," – ; ")),
101
+ ""
102
+ ),
103
+ IF(BOUND(?deathDate) || BOUND(?deathPlace_en),
104
+ CONCAT(
105
+ IF(BOUND(?birthDate) || BOUND(?birthPlace_en), "", "– "),
106
+ IF(BOUND(?deathDate), CONCAT(?deathDate, " "), ""),
107
+ IF(STRLEN(?deathPlace_nl) > 0, CONCAT("(", ?deathPlace_en, ")"), ""),
108
+ "; "),
109
+ ""
110
+ ),
111
+ IF(STRLEN(?additionalTypes_nl) > 0, CONCAT(?additionalTypes_en, ". "), ""),
112
+ IF(STRLEN(?descriptions) > 0, CONCAT(?descriptions, ". "), "")
113
+ ),
114
+ "en"
115
+ ) as ?scopeNote_en
61
116
  )
62
117
  BIND(STRAFTER(STR(?uri), "https://data.rkd.nl/artists/") AS ?identifier)
63
118
  BIND(IRI(CONCAT("https://rkd.nl/explore/artists/", ?identifier)) AS ?seeAlso)
64
119
  }
65
- LIMIT 1000
@@ -0,0 +1,33 @@
1
+ PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
2
+ PREFIX som: <https://data.muziekschatten.nl/som/>
3
+
4
+ CONSTRUCT {
5
+ ?uri a skos:Concept;
6
+ skos:prefLabel ?prefLabel ;
7
+ skos:altLabel ?altLabel ;
8
+ skos:scopeNote ?scopeNote ;
9
+ skos:broader ?broader_uri ;
10
+ skos:exactMatch ?exactMatch_uri .
11
+ ?broader_uri skos:prefLabel ?broader_prefLabel .
12
+ }
13
+ WHERE {
14
+ VALUES ?uri { ?uris }
15
+
16
+ ?uri skos:prefLabel ?prefLabel .
17
+
18
+ OPTIONAL {
19
+ ?uri skos:scopeNote ?scopeNote
20
+ }
21
+
22
+ OPTIONAL {
23
+ ?uri skos:altLabel ?altLabel .
24
+ }
25
+
26
+ OPTIONAL {
27
+ ?uri skos:broader ?broader_uri .
28
+ ?broader_uri skos:prefLabel ?broader_prefLabel .
29
+ }
30
+
31
+ OPTIONAL { ?uri skos:exactMatch ?exactMatch_uri } # Has no labels.
32
+ }
33
+ LIMIT 1000
@@ -7,7 +7,6 @@ CONSTRUCT {
7
7
  ?uri a skos:Concept ;
8
8
  skos:prefLabel ?rdfs_label ;
9
9
  skos:altLabel ?altLabel ;
10
- skos:altLabel ?altLabelStreetName ;
11
10
  skos:scopeNote ?schema_description .
12
11
  }
13
12
  WHERE {
@@ -19,33 +18,15 @@ WHERE {
19
18
  VALUES ?uri { ?uris }
20
19
 
21
20
  ?uri rdfs:label ?rdfs_label .
22
- FILTER(LANG(?rdfs_label) = "nl")
21
+ FILTER(LANG(?rdfs_label) = "nl" || LANG(?rdfs_label) = "en")
23
22
 
24
23
  OPTIONAL {
25
24
  ?uri skos:altLabel ?altLabel .
26
- FILTER(LANG(?altLabel) = "nl")
25
+ FILTER(LANG(?altLabel) = "nl" || LANG(?altLabel) = "en")
27
26
  }
28
27
  OPTIONAL {
29
28
  ?uri schema:description ?schema_description
30
- FILTER(LANG(?schema_description) = "nl")
29
+ FILTER(LANG(?schema_description) = "nl" || LANG(?schema_description) = "en")
31
30
  }
32
- # For streets
33
- OPTIONAL {
34
- ?uri wdt:P276/rdfs:label ?locationName .
35
- FILTER(LANG(?locationName) = "nl")
36
- }
37
- # For streets
38
- OPTIONAL {
39
- ?uri wdt:P131/rdfs:label ?administrationName .
40
- FILTER(LANG(?administrationName) = "nl")
41
- }
42
- # For streets
43
- BIND(
44
- COALESCE(
45
- IF(BOUND(?locationName), CONCAT(?rdfs_label, " (", ?locationName, ")"), 1/0),
46
- IF(BOUND(?administrationName), CONCAT(?rdfs_label, " (", ?administrationName, ")"), 1/0)
47
- )
48
- AS ?altLabelStreetName
49
- )
50
31
  }
51
32
  LIMIT 1000
@@ -22,44 +22,58 @@ CONSTRUCT {
22
22
  ?exactMatch_uri skos:prefLabel ?exactMatch_prefLabel .
23
23
  }
24
24
  WHERE {
25
+ VALUES ?language {
26
+ aat:300388256 # Dutch
27
+ aat:300388277 # English
28
+ }
29
+
25
30
  {
26
- SELECT * WHERE {
31
+ SELECT DISTINCT ?uri WHERE {
27
32
  ?uri luc:term ?query ;
28
33
  a ?type ;
29
34
  void:inDataset <http://vocab.getty.edu/dataset/aat> ;
30
35
  gvp:broaderPreferred+ <http://vocab.getty.edu/aat/300010357> . # limit results to the "materials hierarchy name" (300010357)
31
36
  ?type rdfs:subClassOf gvp:Subject .
32
37
  FILTER (?type != gvp:Subject) .
33
- ?uri skosxl:prefLabel ?prefLabel_uri .
34
- ?prefLabel_uri dcterms:language aat:300388256 . # Dutch (language)
35
- ?prefLabel_uri skosxl:literalForm ?prefLabel .
38
+ ?uri skosxl:prefLabel [
39
+ dcterms:language ?language ; # Faster than FILTER(langMatches(...): https://vocab.getty.edu/queries#Find_Terms_by_Language_Tag
40
+ skosxl:literalForm ?prefLabel
41
+ ]
36
42
  }
37
43
  #LIMIT#
38
44
  }
45
+ ?uri skosxl:prefLabel [
46
+ dcterms:language ?language ; # Faster than FILTER(langMatches(...): https://vocab.getty.edu/queries#Find_Terms_by_Language_Tag
47
+ skosxl:literalForm ?prefLabel
48
+ ]
39
49
  OPTIONAL {
40
- ?uri skosxl:altLabel ?altLabel_uri .
41
- ?altLabel_uri dcterms:language aat:300388256 . # Dutch (language)
42
- ?altLabel_uri skosxl:literalForm ?altLabel .
50
+ ?uri skosxl:altLabel [
51
+ dcterms:language ?language ;
52
+ skosxl:literalForm ?altLabel
53
+ ]
43
54
  }
44
55
  OPTIONAL {
45
- ?uri skos:scopeNote ?scopeNote_uri .
46
- ?scopeNote_uri dcterms:language aat:300388256 . # Dutch (language)
47
- ?scopeNote_uri rdf:value ?scopeNote .
56
+ ?uri skos:scopeNote [
57
+ dcterms:language ?language ;
58
+ rdf:value ?scopeNote
59
+ ]
48
60
  }
49
61
  OPTIONAL {
50
62
  ?uri rdfs:seeAlso ?rdfs_seeAlso
51
63
  }
52
64
  OPTIONAL {
53
65
  ?uri gvp:broaderPreferred ?broader_uri .
54
- ?broader_uri skosxl:prefLabel ?broader_uri_skosxl .
55
- ?broader_uri_skosxl dcterms:language aat:300388256 . # Dutch (language)
56
- ?broader_uri_skosxl skosxl:literalForm ?broader_prefLabel .
66
+ ?broader_uri skosxl:prefLabel [
67
+ dcterms:language ?language ;
68
+ skosxl:literalForm ?broader_prefLabel
69
+ ]
57
70
  }
58
71
  OPTIONAL {
59
72
  ?uri skos:narrower ?narrower_uri .
60
- ?narrower_uri skosxl:prefLabel ?narrower_uri_skosxl .
61
- ?narrower_uri_skosxl dcterms:language aat:300388256 . # Dutch (language)
62
- ?narrower_uri_skosxl skosxl:literalForm ?narrower_prefLabel .
73
+ ?narrower_uri skosxl:prefLabel [
74
+ dcterms:language ?language ;
75
+ skosxl:literalForm ?narrower_prefLabel
76
+ ]
63
77
  }
64
78
  OPTIONAL {
65
79
  ?uri skos:exactMatch ?exactMatch_uri . # Has no labels.
@@ -19,46 +19,61 @@ CONSTRUCT {
19
19
  skos:exactMatch ?exactMatch_uri .
20
20
  ?broader_uri skos:prefLabel ?broader_prefLabel .
21
21
  ?narrower_uri skos:prefLabel ?narrower_prefLabel .
22
+ ?exactMatch_uri skos:prefLabel ?exactMatch_prefLabel .
22
23
  }
23
24
  WHERE {
25
+ VALUES ?language {
26
+ aat:300388256 # Dutch
27
+ aat:300388277 # English
28
+ }
29
+
24
30
  {
25
- SELECT * WHERE {
31
+ SELECT DISTINCT ?uri WHERE {
26
32
  ?uri luc:term ?query ;
27
33
  a ?type ;
28
34
  void:inDataset <http://vocab.getty.edu/dataset/aat> ;
29
35
  gvp:broaderPreferred+ <http://vocab.getty.edu/aat/300053001> . # limit results to the "processes and techniques hierarchy name (300053001)"
30
36
  ?type rdfs:subClassOf gvp:Subject .
31
37
  FILTER (?type != gvp:Subject) .
32
- ?uri skosxl:prefLabel ?prefLabel_uri .
33
- ?prefLabel_uri dcterms:language aat:300388256 . # Dutch (language)
34
- ?prefLabel_uri skosxl:literalForm ?prefLabel .
38
+ ?uri skosxl:prefLabel [
39
+ dcterms:language ?language ; # Faster than FILTER(langMatches(...): https://vocab.getty.edu/queries#Find_Terms_by_Language_Tag
40
+ skosxl:literalForm ?prefLabel
41
+ ]
35
42
  }
36
43
  #LIMIT#
37
44
  }
45
+ ?uri skosxl:prefLabel [
46
+ dcterms:language ?language ; # Faster than FILTER(langMatches(...): https://vocab.getty.edu/queries#Find_Terms_by_Language_Tag
47
+ skosxl:literalForm ?prefLabel
48
+ ]
38
49
  OPTIONAL {
39
- ?uri skosxl:altLabel ?altLabel_uri .
40
- ?altLabel_uri dcterms:language aat:300388256 . # Dutch (language)
41
- ?altLabel_uri skosxl:literalForm ?altLabel .
50
+ ?uri skosxl:altLabel [
51
+ dcterms:language ?language ;
52
+ skosxl:literalForm ?altLabel
53
+ ]
42
54
  }
43
55
  OPTIONAL {
44
- ?uri skos:scopeNote ?scopeNote_uri .
45
- ?scopeNote_uri dcterms:language aat:300388256 . # Dutch (language)
46
- ?scopeNote_uri rdf:value ?scopeNote .
56
+ ?uri skos:scopeNote [
57
+ dcterms:language ?language ;
58
+ rdf:value ?scopeNote
59
+ ]
47
60
  }
48
61
  OPTIONAL {
49
62
  ?uri rdfs:seeAlso ?rdfs_seeAlso
50
63
  }
51
64
  OPTIONAL {
52
65
  ?uri gvp:broaderPreferred ?broader_uri .
53
- ?broader_uri skosxl:prefLabel ?broader_uri_skosxl .
54
- ?broader_uri_skosxl dcterms:language aat:300388256 . # Dutch (language)
55
- ?broader_uri_skosxl skosxl:literalForm ?broader_prefLabel .
66
+ ?broader_uri skosxl:prefLabel [
67
+ dcterms:language ?language ;
68
+ skosxl:literalForm ?broader_prefLabel
69
+ ]
56
70
  }
57
71
  OPTIONAL {
58
72
  ?uri skos:narrower ?narrower_uri .
59
- ?narrower_uri skosxl:prefLabel ?narrower_uri_skosxl .
60
- ?narrower_uri_skosxl dcterms:language aat:300388256 . # Dutch (language)
61
- ?narrower_uri_skosxl skosxl:literalForm ?narrower_prefLabel .
73
+ ?narrower_uri skosxl:prefLabel [
74
+ dcterms:language ?language ;
75
+ skosxl:literalForm ?narrower_prefLabel
76
+ ]
62
77
  }
63
78
  OPTIONAL {
64
79
  ?uri skos:exactMatch ?exactMatch_uri . # Has no labels.