@netwerk-digitaal-erfgoed/network-of-terms-catalog 5.5.1 → 5.6.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.
@@ -35,7 +35,7 @@
35
35
  },
36
36
  {
37
37
  "@type": "FindAction",
38
- "query": "file://catalog/queries/lookup/brinkman-nta.rq"
38
+ "query": "file://catalog/queries/lookup/brinkman-nta-stcn.rq"
39
39
  }
40
40
  ]
41
41
  }
@@ -35,7 +35,7 @@
35
35
  },
36
36
  {
37
37
  "@type": "FindAction",
38
- "query": "file://catalog/queries/lookup/brinkman-nta.rq"
38
+ "query": "file://catalog/queries/lookup/brinkman-nta-stcn.rq"
39
39
  }
40
40
  ]
41
41
  }
@@ -0,0 +1,37 @@
1
+ {
2
+ "@context": "https://schema.org/docs/jsonldcontext.jsonld",
3
+ "@id": "http://data.bibliotheken.nl/id/dataset/stcn/printers",
4
+ "@type": "Dataset",
5
+ "name": [
6
+ {
7
+ "@language": "nl",
8
+ "@value": "STCN: drukkers"
9
+ }
10
+ ],
11
+ "creator": [
12
+ {
13
+ "@id": "http://data.bibliotheken.nl/doc/thes/p075301482"
14
+ }
15
+ ],
16
+ "url": [
17
+ "http://data.bibliotheken.nl/id/thes/"
18
+ ],
19
+ "distribution": [
20
+ {
21
+ "@id": "http://data.bibliotheken.nl/thes/drukkers/sparql",
22
+ "@type": "DataDownload",
23
+ "contentUrl": "https://data.bibliotheken.nl/sparql",
24
+ "encodingFormat": "application/sparql-query",
25
+ "potentialAction": [
26
+ {
27
+ "@type": "SearchAction",
28
+ "query": "file://catalog/queries/search/stcn-drukkers.rq"
29
+ },
30
+ {
31
+ "@type": "FindAction",
32
+ "query": "file://catalog/queries/lookup/brinkman-nta-stcn.rq"
33
+ }
34
+ ]
35
+ }
36
+ ]
37
+ }
@@ -23,10 +23,11 @@ WHERE {
23
23
  # For example:
24
24
  # Concept in Brinkman: <http://data.bibliotheken.nl/id/thes/p317203789>
25
25
  # Person in NTA: <http://data.bibliotheken.nl/id/thes/p06854796X>
26
+ # Organization in STCN: <http://data.bibliotheken.nl/id/thes/p075537222>
26
27
  VALUES ?uri { ?uris }
27
28
 
28
29
  ?uri a ?type .
29
- VALUES ?type { skos:Concept schema:Person } .
30
+ VALUES ?type { skos:Concept schema:Person schema:Organization } .
30
31
 
31
32
  # For Brinkman
32
33
  OPTIONAL {
@@ -20,6 +20,10 @@ WHERE {
20
20
 
21
21
  ?uri a skos:Concept .
22
22
 
23
+ # Exclude terms from the 'Technische Lijsten', a concept scheme with terms that should only be used by NOB
24
+ FILTER NOT EXISTS {
25
+ ?uri skos:inScheme <https://data.niod.nl/WO2_Thesaurus/11183>
26
+ }
23
27
  OPTIONAL {
24
28
  ?uri skos:prefLabel ?prefLabel .
25
29
  FILTER(LANG(?prefLabel) = "nl")
@@ -11,11 +11,20 @@ CONSTRUCT {
11
11
  }
12
12
  WHERE {
13
13
  ?uri a skos:Concept .
14
- ?uri ?predicate ?label .
15
- VALUES ?predicate { schema:name schema:keywords }
16
14
 
17
- # A 'FILTER (<bif:contains>, ...)' currently does not work due to https://github.com/comunica/comunica/issues/844
18
- ?label <bif:contains> ?query .
15
+ {
16
+ FILTER(?virtuosoQuery)
17
+ ?uri ?predicate ?label .
18
+ VALUES ?predicate { schema:name schema:keywords }
19
+ ?label <bif:contains> ?virtuosoQuery .
20
+ } UNION {
21
+ # BC support.
22
+ BIND(?virtuosoQuery as ?b)
23
+ FILTER(!BOUND(?b))
24
+ ?uri ?predicate ?label .
25
+ VALUES ?predicate { schema:name schema:keywords }
26
+ ?label <bif:contains> ?query .
27
+ }
19
28
 
20
29
  OPTIONAL {
21
30
  ?uri schema:name ?schema_name .
@@ -31,11 +31,19 @@ WHERE {
31
31
  # Require the presence of this property for quality purposes
32
32
  ?uri som:NDEREC ?nderec .
33
33
 
34
- ?uri ?predicate ?label .
35
- VALUES ?predicate { schema:name schema:alternateName }
36
-
37
- # A 'FILTER (<bif:contains>, ...)' currently does not work due to https://github.com/comunica/comunica/issues/844
38
- ?label <bif:contains> ?query .
34
+ {
35
+ FILTER(?virtuosoQuery)
36
+ ?uri ?predicate ?label .
37
+ VALUES ?predicate { schema:name schema:alternateName }
38
+ ?label <bif:contains> ?virtuosoQuery .
39
+ } UNION {
40
+ # BC support.
41
+ BIND(?virtuosoQuery as ?b)
42
+ FILTER(!BOUND(?b))
43
+ ?uri ?predicate ?label .
44
+ VALUES ?predicate { schema:name schema:alternateName }
45
+ ?label <bif:contains> ?query .
46
+ }
39
47
 
40
48
  OPTIONAL { ?uri schema:name ?schema_name }
41
49
  OPTIONAL { ?uri schema:alternateName ?schema_alternateName }
@@ -22,8 +22,10 @@ WHERE {
22
22
  ?label <bif:contains> ?virtuosoQuery .
23
23
  } UNION {
24
24
  # BC support.
25
- BIND(?virtuosoQuery as ?b)
26
- FILTER(!BOUND(?b))
25
+ # The RKD Virtuoso endpoint needs isLiteral() rather than !BOUND() because the latter still matches, throwing an
26
+ # error for queries with diacritics.
27
+ FILTER(!isLiteral(?virtuosoQuery))
28
+
27
29
  ?uri ?predicate ?label .
28
30
  # Replace query "A B" with "A AND B", leaving queries "A AND B" or "A OR B" unchanged.
29
31
  FILTER (<bif:contains> (?label,
@@ -0,0 +1,24 @@
1
+ PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
2
+ PREFIX void: <http://rdfs.org/ns/void#>
3
+
4
+ CONSTRUCT {
5
+ ?uri a skos:Concept ;
6
+ skos:prefLabel ?rdfs_label ;
7
+ skos:altLabel ?schema_name ;
8
+ skos:altLabel ?schema_alternateName ;
9
+ skos:scopeNote ?schema_description .
10
+ }
11
+ WHERE {
12
+ ?uri foaf:isPrimaryTopicOf/void:inDataset <http://data.bibliotheken.nl/id/dataset/stcn> ;
13
+ schema:additionalType <http://www.productontology.org/id/Printer_%28publishing%29> ; # Select printers.
14
+ rdfs:label ?rdfs_label .
15
+
16
+ ?uri ?predicate ?label .
17
+ VALUES ?predicate { rdfs:label schema:name schema:alternateName }
18
+ ?label <bif:contains> ?virtuosoQuery .
19
+
20
+ OPTIONAL { ?uri schema:name ?schema_name }
21
+ OPTIONAL { ?uri schema:alternateName ?schema_alternateName }
22
+ OPTIONAL { ?uri schema:description ?schema_description }
23
+ }
24
+ LIMIT 1000
@@ -13,6 +13,10 @@ CONSTRUCT {
13
13
  }
14
14
  WHERE {
15
15
  ?uri ?predicate ?label .
16
+ # Exclude terms from the 'Technische Lijsten', a concept scheme with terms that should only be used by NOB
17
+ FILTER NOT EXISTS {
18
+ ?uri skos:inScheme <https://data.niod.nl/WO2_Thesaurus/11183>
19
+ }
16
20
  VALUES ?predicate { skos:prefLabel skos:altLabel }
17
21
  FILTER(LANG(?label) = "nl")
18
22
  FILTER(CONTAINS(LCASE(?label), LCASE(?query)))
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@netwerk-digitaal-erfgoed/network-of-terms-catalog",
3
- "version": "5.5.1",
3
+ "version": "5.6.0",
4
4
  "description": "Catalog of Network of Terms datasets",
5
5
  "repository": {
6
6
  "type": "git",