@netwerk-digitaal-erfgoed/network-of-terms-catalog 5.6.6 → 5.7.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.
- package/README.md +22 -23
- package/build/catalog.js +1 -1
- package/build/catalog.js.map +1 -1
- package/catalog/datasets/gtaa-classificatie.jsonld +37 -0
- package/catalog/datasets/gtaa-genres.jsonld +37 -37
- package/catalog/datasets/gtaa-geografische-namen.jsonld +37 -37
- package/catalog/datasets/gtaa-namen.jsonld +37 -0
- package/catalog/datasets/gtaa-onderwerpen-beng.jsonld +37 -0
- package/catalog/datasets/gtaa-onderwerpen.jsonld +37 -37
- package/catalog/datasets/gtaa-persoonsnamen.jsonld +37 -0
- package/catalog/queries/lookup/gtaa.rq +1 -4
- package/catalog/queries/search/gtaa-persoonsnamen.rq +81 -0
- package/catalog/queries/search/gtaa.rq +28 -13
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -1,20 +1,29 @@
|
|
|
1
1
|
# Network of Terms Catalog
|
|
2
2
|
|
|
3
|
-
This is the catalog of
|
|
3
|
+
This is the catalog of terminology sources that can be queried through the
|
|
4
4
|
[Network of Terms](https://github.com/netwerk-digitaal-erfgoed/network-of-terms).
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
Each is described in the [Schema.org](https://schema.org) ontology.
|
|
6
|
+
## Data model
|
|
8
7
|
|
|
9
|
-
|
|
8
|
+
Each terminology source is modelled as a [Schema.org Dataset](https://schema.org/Dataset). The [catalog](catalog)
|
|
9
|
+
directory contains all datasets.
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Most of the dataset’s properties match the
|
|
12
|
+
[NDE Requirements for Datasets](https://netwerk-digitaal-erfgoed.github.io/requirements-datasets), with the following
|
|
13
|
+
additions specific to the Network of Terms:
|
|
12
14
|
|
|
13
|
-
|
|
15
|
+
- `schema:url` is used for the HTTP URI prefix of terms in the dataset, e.g. `http://vocab.getty.edu/aat/` for Getty
|
|
16
|
+
resources. This prefix is needed when clients look up terms by their URI in the Network of Terms: the Network then has
|
|
17
|
+
to know which source to consult to retrieve the term.
|
|
18
|
+
- Each distribution has two [`schema:potentialAction`](https://schema.org/potentialAction)s: a
|
|
19
|
+
[`schema:SearchAction`](https://schema.org/SearchAction) and a [`schema:FindAction`](https://schema.org/FindAction),
|
|
20
|
+
both with a [`schema:query`](https://schema.org/query) property that points to the queries directory.
|
|
14
21
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
22
|
+
The [queries](catalog/queries) directory contains SPARQL queries for retrieving terms from the datasets. There are
|
|
23
|
+
two types of queries:
|
|
24
|
+
|
|
25
|
+
- [search queries](catalog/queries/search) find terms matching a textual string query input;
|
|
26
|
+
- [lookup queries](catalog/queries/lookup) retrieve a single term based on its URI.
|
|
18
27
|
|
|
19
28
|
## Contributing
|
|
20
29
|
|
|
@@ -23,17 +32,7 @@ npm add @netwerk-digitaal-erfgoed/network-of-terms-catalog
|
|
|
23
32
|
* Create a `your-dataset.jsonld` file in the `catalog/` directory and add a description.
|
|
24
33
|
* Create a `your-dataset.rq` file in the `queries/search` directory and add your SPARQL search query. A SPARQL
|
|
25
34
|
lookup goes into the `queries/lookup` directory.
|
|
26
|
-
* Run the tests to make sure your dataset description conforms to the
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
### Committing changes
|
|
33
|
-
|
|
34
|
-
This repository follows [Semantic Versioning](https://semver.org). Tags and
|
|
35
|
-
[releases](https://github.com/netwerk-digitaal-erfgoed/network-of-terms-catalog/releases) are
|
|
36
|
-
[created automatically](https://github.com/netwerk-digitaal-erfgoed/network-of-terms-catalog/blob/master/.github/workflows/release.yml)
|
|
37
|
-
based on commit messages.
|
|
38
|
-
So please make sure to follow the [Conventional Commits specification](https://www.conventionalcommits.org/en/v1.0.0/#summary)
|
|
39
|
-
when committing changes.
|
|
35
|
+
* [Run the tests](../../docs/tests.md) to make sure your dataset description conforms to the
|
|
36
|
+
[dataset SHACL](shacl/dataset.jsonld).
|
|
37
|
+
* To try your queries locally, you can
|
|
38
|
+
[run the GraphQL API](../network-of-terms-graphql/README.md#for-network-of-terms-developers) with your catalog.
|
package/build/catalog.js
CHANGED
|
@@ -3,7 +3,7 @@ import rdfParser from 'rdf-parse';
|
|
|
3
3
|
import { newEngine } from '@comunica/actor-init-sparql-rdfjs';
|
|
4
4
|
import { Transform } from 'stream';
|
|
5
5
|
import { resolve, dirname } from 'path';
|
|
6
|
-
import globby from 'globby';
|
|
6
|
+
import { globby } from 'globby';
|
|
7
7
|
import { storeStream } from 'rdf-store-stream';
|
|
8
8
|
import { Catalog, Dataset, IRI, Organization, SparqlDistribution, } from '@netwerk-digitaal-erfgoed/network-of-terms-query';
|
|
9
9
|
import { fileURLToPath } from 'url';
|
package/build/catalog.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog.js","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,SAAS,MAAM,WAAW,CAAC;AAElC,OAAO,EAAC,SAAS,EAAC,MAAM,mCAAmC,CAAC;AAK5D,OAAO,EAAC,SAAS,EAAoB,MAAM,QAAQ,CAAC;AACpD,OAAO,EAAC,OAAO,EAAE,OAAO,EAAC,MAAM,MAAM,CAAC;AACtC,OAAO,MAAM,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"catalog.js","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"@context": "https://schema.org/docs/jsonldcontext.jsonld",
|
|
3
|
+
"@id": "http://data.beeldengeluid.nl/gtaa/Classificatie",
|
|
4
|
+
"@type": "Dataset",
|
|
5
|
+
"name": [
|
|
6
|
+
{
|
|
7
|
+
"@language": "nl",
|
|
8
|
+
"@value": "GTAA: classificatie"
|
|
9
|
+
}
|
|
10
|
+
],
|
|
11
|
+
"creator": [
|
|
12
|
+
{
|
|
13
|
+
"@id": "https://www.beeldengeluid.nl/"
|
|
14
|
+
}
|
|
15
|
+
],
|
|
16
|
+
"url": [
|
|
17
|
+
"http://data.beeldengeluid.nl/gtaa/"
|
|
18
|
+
],
|
|
19
|
+
"distribution": [
|
|
20
|
+
{
|
|
21
|
+
"@id": "https://data.beeldengeluid.nl/id/datadownload/0027",
|
|
22
|
+
"@type": "DataDownload",
|
|
23
|
+
"contentUrl": "https://gtaa.apis.beeldengeluid.nl/sparql",
|
|
24
|
+
"encodingFormat": "application/sparql-query",
|
|
25
|
+
"potentialAction": [
|
|
26
|
+
{
|
|
27
|
+
"@type": "SearchAction",
|
|
28
|
+
"query": "file://catalog/queries/search/gtaa.rq"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"@type": "FindAction",
|
|
32
|
+
"query": "file://catalog/queries/lookup/gtaa.rq"
|
|
33
|
+
}
|
|
34
|
+
]
|
|
35
|
+
}
|
|
36
|
+
]
|
|
37
|
+
}
|
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
{
|
|
2
|
-
"@context": "https://schema.org/docs/jsonldcontext.jsonld",
|
|
3
|
-
"@id": "http://data.beeldengeluid.nl/gtaa
|
|
4
|
-
"@type": "Dataset",
|
|
5
|
-
"name": [
|
|
6
|
-
{
|
|
7
|
-
"@language": "nl",
|
|
8
|
-
"@value": "GTAA: genres"
|
|
9
|
-
}
|
|
10
|
-
],
|
|
11
|
-
"creator": [
|
|
12
|
-
{
|
|
13
|
-
"@id": "https://www.beeldengeluid.nl/"
|
|
14
|
-
}
|
|
15
|
-
],
|
|
16
|
-
"url": [
|
|
17
|
-
"http://data.beeldengeluid.nl/gtaa/"
|
|
18
|
-
],
|
|
19
|
-
"distribution": [
|
|
20
|
-
{
|
|
21
|
-
"@id": "https://data.
|
|
22
|
-
"@type": "DataDownload",
|
|
23
|
-
"contentUrl": "https://
|
|
24
|
-
"encodingFormat": "application/sparql-query",
|
|
25
|
-
"potentialAction": [
|
|
26
|
-
{
|
|
27
|
-
"@type": "SearchAction",
|
|
28
|
-
"query": "file://catalog/queries/search/gtaa.rq"
|
|
29
|
-
},
|
|
30
|
-
{
|
|
31
|
-
"@type": "FindAction",
|
|
32
|
-
"query": "file://catalog/queries/lookup/gtaa.rq"
|
|
33
|
-
}
|
|
34
|
-
]
|
|
35
|
-
}
|
|
36
|
-
]
|
|
37
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"@context": "https://schema.org/docs/jsonldcontext.jsonld",
|
|
3
|
+
"@id": "http://data.beeldengeluid.nl/gtaa/Genre",
|
|
4
|
+
"@type": "Dataset",
|
|
5
|
+
"name": [
|
|
6
|
+
{
|
|
7
|
+
"@language": "nl",
|
|
8
|
+
"@value": "GTAA: genres"
|
|
9
|
+
}
|
|
10
|
+
],
|
|
11
|
+
"creator": [
|
|
12
|
+
{
|
|
13
|
+
"@id": "https://www.beeldengeluid.nl/"
|
|
14
|
+
}
|
|
15
|
+
],
|
|
16
|
+
"url": [
|
|
17
|
+
"http://data.beeldengeluid.nl/gtaa/"
|
|
18
|
+
],
|
|
19
|
+
"distribution": [
|
|
20
|
+
{
|
|
21
|
+
"@id": "https://data.beeldengeluid.nl/id/datadownload/0028",
|
|
22
|
+
"@type": "DataDownload",
|
|
23
|
+
"contentUrl": "https://gtaa.apis.beeldengeluid.nl/sparql",
|
|
24
|
+
"encodingFormat": "application/sparql-query",
|
|
25
|
+
"potentialAction": [
|
|
26
|
+
{
|
|
27
|
+
"@type": "SearchAction",
|
|
28
|
+
"query": "file://catalog/queries/search/gtaa.rq"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"@type": "FindAction",
|
|
32
|
+
"query": "file://catalog/queries/lookup/gtaa.rq"
|
|
33
|
+
}
|
|
34
|
+
]
|
|
35
|
+
}
|
|
36
|
+
]
|
|
37
|
+
}
|
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
{
|
|
2
|
-
"@context": "https://schema.org/docs/jsonldcontext.jsonld",
|
|
3
|
-
"@id": "http://data.beeldengeluid.nl/gtaa
|
|
4
|
-
"@type": "Dataset",
|
|
5
|
-
"name": [
|
|
6
|
-
{
|
|
7
|
-
"@language": "nl",
|
|
8
|
-
"@value": "GTAA: geografische namen"
|
|
9
|
-
}
|
|
10
|
-
],
|
|
11
|
-
"creator": [
|
|
12
|
-
{
|
|
13
|
-
"@id": "https://www.beeldengeluid.nl/"
|
|
14
|
-
}
|
|
15
|
-
],
|
|
16
|
-
"url": [
|
|
17
|
-
"http://data.beeldengeluid.nl/gtaa/"
|
|
18
|
-
],
|
|
19
|
-
"distribution": [
|
|
20
|
-
{
|
|
21
|
-
"@id": "https://data.
|
|
22
|
-
"@type": "DataDownload",
|
|
23
|
-
"contentUrl": "https://
|
|
24
|
-
"encodingFormat": "application/sparql-query",
|
|
25
|
-
"potentialAction": [
|
|
26
|
-
{
|
|
27
|
-
"@type": "SearchAction",
|
|
28
|
-
"query": "file://catalog/queries/search/gtaa.rq"
|
|
29
|
-
},
|
|
30
|
-
{
|
|
31
|
-
"@type": "FindAction",
|
|
32
|
-
"query": "file://catalog/queries/lookup/gtaa.rq"
|
|
33
|
-
}
|
|
34
|
-
]
|
|
35
|
-
}
|
|
36
|
-
]
|
|
37
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"@context": "https://schema.org/docs/jsonldcontext.jsonld",
|
|
3
|
+
"@id": "http://data.beeldengeluid.nl/gtaa/GeografischeNamen",
|
|
4
|
+
"@type": "Dataset",
|
|
5
|
+
"name": [
|
|
6
|
+
{
|
|
7
|
+
"@language": "nl",
|
|
8
|
+
"@value": "GTAA: geografische namen"
|
|
9
|
+
}
|
|
10
|
+
],
|
|
11
|
+
"creator": [
|
|
12
|
+
{
|
|
13
|
+
"@id": "https://www.beeldengeluid.nl/"
|
|
14
|
+
}
|
|
15
|
+
],
|
|
16
|
+
"url": [
|
|
17
|
+
"http://data.beeldengeluid.nl/gtaa/"
|
|
18
|
+
],
|
|
19
|
+
"distribution": [
|
|
20
|
+
{
|
|
21
|
+
"@id": "https://data.beeldengeluid.nl/id/datadownload/0029",
|
|
22
|
+
"@type": "DataDownload",
|
|
23
|
+
"contentUrl": "https://gtaa.apis.beeldengeluid.nl/sparql",
|
|
24
|
+
"encodingFormat": "application/sparql-query",
|
|
25
|
+
"potentialAction": [
|
|
26
|
+
{
|
|
27
|
+
"@type": "SearchAction",
|
|
28
|
+
"query": "file://catalog/queries/search/gtaa.rq"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"@type": "FindAction",
|
|
32
|
+
"query": "file://catalog/queries/lookup/gtaa.rq"
|
|
33
|
+
}
|
|
34
|
+
]
|
|
35
|
+
}
|
|
36
|
+
]
|
|
37
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"@context": "https://schema.org/docs/jsonldcontext.jsonld",
|
|
3
|
+
"@id": "http://data.beeldengeluid.nl/gtaa/Namen",
|
|
4
|
+
"@type": "Dataset",
|
|
5
|
+
"name": [
|
|
6
|
+
{
|
|
7
|
+
"@language": "nl",
|
|
8
|
+
"@value": "GTAA: namen"
|
|
9
|
+
}
|
|
10
|
+
],
|
|
11
|
+
"creator": [
|
|
12
|
+
{
|
|
13
|
+
"@id": "https://www.beeldengeluid.nl/"
|
|
14
|
+
}
|
|
15
|
+
],
|
|
16
|
+
"url": [
|
|
17
|
+
"http://data.beeldengeluid.nl/gtaa"
|
|
18
|
+
],
|
|
19
|
+
"distribution": [
|
|
20
|
+
{
|
|
21
|
+
"@id": "https://data.beeldengeluid.nl/id/datadownload/0030",
|
|
22
|
+
"@type": "DataDownload",
|
|
23
|
+
"contentUrl": "https://gtaa.apis.beeldengeluid.nl/sparql",
|
|
24
|
+
"encodingFormat": "application/sparql-query",
|
|
25
|
+
"potentialAction": [
|
|
26
|
+
{
|
|
27
|
+
"@type": "SearchAction",
|
|
28
|
+
"query": "file://catalog/queries/search/gtaa.rq"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"@type": "FindAction",
|
|
32
|
+
"query": "file://catalog/queries/lookup/gtaa.rq"
|
|
33
|
+
}
|
|
34
|
+
]
|
|
35
|
+
}
|
|
36
|
+
]
|
|
37
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"@context": "https://schema.org/docs/jsonldcontext.jsonld",
|
|
3
|
+
"@id": "http://data.beeldengeluid.nl/gtaa/OnderwerpenBenG",
|
|
4
|
+
"@type": "Dataset",
|
|
5
|
+
"name": [
|
|
6
|
+
{
|
|
7
|
+
"@language": "nl",
|
|
8
|
+
"@value": "GTAA: onderwerpen beeld-geluid"
|
|
9
|
+
}
|
|
10
|
+
],
|
|
11
|
+
"creator": [
|
|
12
|
+
{
|
|
13
|
+
"@id": "https://www.beeldengeluid.nl/"
|
|
14
|
+
}
|
|
15
|
+
],
|
|
16
|
+
"url": [
|
|
17
|
+
"http://data.beeldengeluid.nl/gtaa/"
|
|
18
|
+
],
|
|
19
|
+
"distribution": [
|
|
20
|
+
{
|
|
21
|
+
"@id": "https://data.beeldengeluid.nl/id/datadownload/0032",
|
|
22
|
+
"@type": "DataDownload",
|
|
23
|
+
"contentUrl": "https://gtaa.apis.beeldengeluid.nl/sparql",
|
|
24
|
+
"encodingFormat": "application/sparql-query",
|
|
25
|
+
"potentialAction": [
|
|
26
|
+
{
|
|
27
|
+
"@type": "SearchAction",
|
|
28
|
+
"query": "file://catalog/queries/search/gtaa.rq"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"@type": "FindAction",
|
|
32
|
+
"query": "file://catalog/queries/lookup/gtaa.rq"
|
|
33
|
+
}
|
|
34
|
+
]
|
|
35
|
+
}
|
|
36
|
+
]
|
|
37
|
+
}
|
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
{
|
|
2
|
-
"@context": "https://schema.org/docs/jsonldcontext.jsonld",
|
|
3
|
-
"@id": "http://data.beeldengeluid.nl/gtaa
|
|
4
|
-
"@type": "Dataset",
|
|
5
|
-
"name": [
|
|
6
|
-
{
|
|
7
|
-
"@language": "nl",
|
|
8
|
-
"@value": "GTAA: onderwerpen"
|
|
9
|
-
}
|
|
10
|
-
],
|
|
11
|
-
"creator": [
|
|
12
|
-
{
|
|
13
|
-
"@id": "https://www.beeldengeluid.nl/"
|
|
14
|
-
}
|
|
15
|
-
],
|
|
16
|
-
"url": [
|
|
17
|
-
"http://data.beeldengeluid.nl/gtaa/"
|
|
18
|
-
],
|
|
19
|
-
"distribution": [
|
|
20
|
-
{
|
|
21
|
-
"@id": "https://data.
|
|
22
|
-
"@type": "DataDownload",
|
|
23
|
-
"contentUrl": "https://
|
|
24
|
-
"encodingFormat": "application/sparql-query",
|
|
25
|
-
"potentialAction": [
|
|
26
|
-
{
|
|
27
|
-
"@type": "SearchAction",
|
|
28
|
-
"query": "file://catalog/queries/search/gtaa.rq"
|
|
29
|
-
},
|
|
30
|
-
{
|
|
31
|
-
"@type": "FindAction",
|
|
32
|
-
"query": "file://catalog/queries/lookup/gtaa.rq"
|
|
33
|
-
}
|
|
34
|
-
]
|
|
35
|
-
}
|
|
36
|
-
]
|
|
37
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"@context": "https://schema.org/docs/jsonldcontext.jsonld",
|
|
3
|
+
"@id": "http://data.beeldengeluid.nl/gtaa/Onderwerpen",
|
|
4
|
+
"@type": "Dataset",
|
|
5
|
+
"name": [
|
|
6
|
+
{
|
|
7
|
+
"@language": "nl",
|
|
8
|
+
"@value": "GTAA: onderwerpen"
|
|
9
|
+
}
|
|
10
|
+
],
|
|
11
|
+
"creator": [
|
|
12
|
+
{
|
|
13
|
+
"@id": "https://www.beeldengeluid.nl/"
|
|
14
|
+
}
|
|
15
|
+
],
|
|
16
|
+
"url": [
|
|
17
|
+
"http://data.beeldengeluid.nl/gtaa/"
|
|
18
|
+
],
|
|
19
|
+
"distribution": [
|
|
20
|
+
{
|
|
21
|
+
"@id": "https://data.beeldengeluid.nl/id/datadownload/0031",
|
|
22
|
+
"@type": "DataDownload",
|
|
23
|
+
"contentUrl": "https://gtaa.apis.beeldengeluid.nl/sparql",
|
|
24
|
+
"encodingFormat": "application/sparql-query",
|
|
25
|
+
"potentialAction": [
|
|
26
|
+
{
|
|
27
|
+
"@type": "SearchAction",
|
|
28
|
+
"query": "file://catalog/queries/search/gtaa.rq"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"@type": "FindAction",
|
|
32
|
+
"query": "file://catalog/queries/lookup/gtaa.rq"
|
|
33
|
+
}
|
|
34
|
+
]
|
|
35
|
+
}
|
|
36
|
+
]
|
|
37
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"@context": "https://schema.org/docs/jsonldcontext.jsonld",
|
|
3
|
+
"@id": "http://data.beeldengeluid.nl/gtaa/Persoonsnamen",
|
|
4
|
+
"@type": "Dataset",
|
|
5
|
+
"name": [
|
|
6
|
+
{
|
|
7
|
+
"@language": "nl",
|
|
8
|
+
"@value": "GTAA: persoonsnamen"
|
|
9
|
+
}
|
|
10
|
+
],
|
|
11
|
+
"creator": [
|
|
12
|
+
{
|
|
13
|
+
"@id": "https://www.beeldengeluid.nl/"
|
|
14
|
+
}
|
|
15
|
+
],
|
|
16
|
+
"url": [
|
|
17
|
+
"http://data.beeldengeluid.nl/gtaa/"
|
|
18
|
+
],
|
|
19
|
+
"distribution": [
|
|
20
|
+
{
|
|
21
|
+
"@id": "https://data.beeldengeluid.nl/id/datadownload/0026",
|
|
22
|
+
"@type": "DataDownload",
|
|
23
|
+
"contentUrl": "https://gtaa.apis.beeldengeluid.nl/sparql",
|
|
24
|
+
"encodingFormat": "application/sparql-query",
|
|
25
|
+
"potentialAction": [
|
|
26
|
+
{
|
|
27
|
+
"@type": "SearchAction",
|
|
28
|
+
"query": "file://catalog/queries/search/gtaa-persoonsnamen.rq"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"@type": "FindAction",
|
|
32
|
+
"query": "file://catalog/queries/lookup/gtaa.rq"
|
|
33
|
+
}
|
|
34
|
+
]
|
|
35
|
+
}
|
|
36
|
+
]
|
|
37
|
+
}
|
|
@@ -14,10 +14,7 @@ CONSTRUCT {
|
|
|
14
14
|
?related_uri skos:prefLabel ?related_prefLabel .
|
|
15
15
|
}
|
|
16
16
|
WHERE {
|
|
17
|
-
|
|
18
|
-
# Concept: <http://data.beeldengeluid.nl/gtaa/25109>
|
|
19
|
-
# Geographical name: <http://data.beeldengeluid.nl/gtaa/33511>
|
|
20
|
-
# Genre: <http://data.beeldengeluid.nl/gtaa/30115>
|
|
17
|
+
|
|
21
18
|
VALUES ?uri { ?uris }
|
|
22
19
|
|
|
23
20
|
?uri a skos:Concept .
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
|
|
2
|
+
PREFIX justskos: <http://justskos.org/ns/core#>
|
|
3
|
+
|
|
4
|
+
CONSTRUCT {
|
|
5
|
+
?uri a skos:Concept ;
|
|
6
|
+
skos:prefLabel ?prefLabel ;
|
|
7
|
+
skos:altLabel ?altLabel ;
|
|
8
|
+
skos:hiddenLabel ?hiddenLabel ;
|
|
9
|
+
skos:scopeNote ?scopeNote ;
|
|
10
|
+
skos:broader ?broader_uri ;
|
|
11
|
+
skos:narrower ?narrower_uri ;
|
|
12
|
+
skos:related ?related_uri .
|
|
13
|
+
?broader_uri skos:prefLabel ?broader_prefLabel .
|
|
14
|
+
?narrower_uri skos:prefLabel ?narrower_prefLabel .
|
|
15
|
+
?related_uri skos:prefLabel ?related_prefLabel .
|
|
16
|
+
}
|
|
17
|
+
WHERE {
|
|
18
|
+
{
|
|
19
|
+
?uri skos:inScheme <http://data.beeldengeluid.nl/gtaa/Persoonsnamen> .
|
|
20
|
+
?uri skos:prefLabel|skos:altLabel|skos:hiddenLabel ?label ;
|
|
21
|
+
justskos:status ?status .
|
|
22
|
+
FILTER(LANG(?label) = "nl")
|
|
23
|
+
FILTER(?status IN ('approved', 'candidate'))
|
|
24
|
+
|
|
25
|
+
# single word query, match case insensitive
|
|
26
|
+
FILTER regex(?query, "^[^ ]+$")
|
|
27
|
+
FILTER CONTAINS(LCASE(?label), LCASE(?query))
|
|
28
|
+
}
|
|
29
|
+
# commented because of timeouts
|
|
30
|
+
# UNION
|
|
31
|
+
# {
|
|
32
|
+
# ?uri skos:inScheme <http://data.beeldengeluid.nl/gtaa/Persoonsnamen> .
|
|
33
|
+
# ?uri ?predicate ?label ;
|
|
34
|
+
# justskos:status ?status .
|
|
35
|
+
# VALUES ?predicate { skos:prefLabel skos:altLabel skos:hiddenLabel }
|
|
36
|
+
# FILTER(LANG(?label) = "nl")
|
|
37
|
+
# FILTER(?status IN ('approved', 'candidate'))
|
|
38
|
+
#
|
|
39
|
+
# # double word query, whitespace separator
|
|
40
|
+
# FILTER REGEX(?query, "^([^ ]+)[ ]+([^ ]+)$")
|
|
41
|
+
#
|
|
42
|
+
# BIND(REPLACE(?query, "^([^ ]+)[ ]+([^ ]+)$", "$1") AS ?term1)
|
|
43
|
+
# BIND(REPLACE(?query, "^([^ ]+)[ ]+([^ ]+)$", "$2") AS ?term2)
|
|
44
|
+
#
|
|
45
|
+
# # search case insensitive using an AND construct for the query terms
|
|
46
|
+
# FILTER( CONTAINS(LCASE(?label), LCASE(?term1)) && CONTAINS(LCASE(?label), LCASE(?term2)) )
|
|
47
|
+
# }
|
|
48
|
+
|
|
49
|
+
OPTIONAL {
|
|
50
|
+
?uri skos:prefLabel ?prefLabel .
|
|
51
|
+
FILTER(LANG(?prefLabel) = "nl" )
|
|
52
|
+
}
|
|
53
|
+
OPTIONAL {
|
|
54
|
+
?uri skos:altLabel ?altLabel .
|
|
55
|
+
FILTER(LANG(?altLabel) = "nl")
|
|
56
|
+
}
|
|
57
|
+
OPTIONAL {
|
|
58
|
+
?uri skos:hiddenLabel ?hiddenLabel .
|
|
59
|
+
FILTER(LANG(?hiddenLabel) = "nl")
|
|
60
|
+
}
|
|
61
|
+
OPTIONAL {
|
|
62
|
+
?uri skos:scopeNote ?scopeNote .
|
|
63
|
+
FILTER(LANG(?scopeNote) = "nl")
|
|
64
|
+
}
|
|
65
|
+
OPTIONAL {
|
|
66
|
+
?uri skos:broader ?broader_uri .
|
|
67
|
+
?broader_uri skos:prefLabel ?broader_prefLabel .
|
|
68
|
+
FILTER(LANG(?broader_prefLabel) = "nl")
|
|
69
|
+
}
|
|
70
|
+
OPTIONAL {
|
|
71
|
+
?uri skos:narrower ?narrower_uri .
|
|
72
|
+
?narrower_uri skos:prefLabel ?narrower_prefLabel .
|
|
73
|
+
FILTER(LANG(?narrower_prefLabel) = "nl")
|
|
74
|
+
}
|
|
75
|
+
OPTIONAL {
|
|
76
|
+
?uri skos:related ?related_uri .
|
|
77
|
+
?related_uri skos:prefLabel ?related_prefLabel .
|
|
78
|
+
FILTER(LANG(?related_prefLabel) = "nl")
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
LIMIT 10
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
|
|
2
|
+
PREFIX justskos: <http://justskos.org/ns/core#>
|
|
2
3
|
|
|
3
4
|
CONSTRUCT {
|
|
4
5
|
?uri a skos:Concept ;
|
|
@@ -14,21 +15,35 @@ CONSTRUCT {
|
|
|
14
15
|
?related_uri skos:prefLabel ?related_prefLabel .
|
|
15
16
|
}
|
|
16
17
|
WHERE {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
18
|
+
{
|
|
19
|
+
?uri skos:inScheme ?datasetUri .
|
|
20
|
+
?uri ?predicate ?label ;
|
|
21
|
+
justskos:status ?status .
|
|
22
|
+
VALUES ?predicate { skos:prefLabel skos:altLabel skos:hiddenLabel }
|
|
23
|
+
FILTER(LANG(?label) = "nl")
|
|
24
|
+
FILTER(?status IN ('approved', 'candidate'))
|
|
20
25
|
|
|
26
|
+
# single word query, match case insensitive
|
|
27
|
+
FILTER regex(?query, "^[^ ]+$")
|
|
28
|
+
FILTER CONTAINS(LCASE(?label), LCASE(?query))
|
|
29
|
+
}
|
|
30
|
+
UNION
|
|
21
31
|
{
|
|
22
|
-
|
|
23
|
-
?uri ?predicate ?label
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
+
?uri skos:inScheme ?datasetUri .
|
|
33
|
+
?uri ?predicate ?label ;
|
|
34
|
+
justskos:status ?status .
|
|
35
|
+
VALUES ?predicate { skos:prefLabel skos:altLabel skos:hiddenLabel }
|
|
36
|
+
FILTER(LANG(?label) = "nl")
|
|
37
|
+
FILTER(?status IN ('approved', 'candidate'))
|
|
38
|
+
|
|
39
|
+
# double word query, whitespace separator
|
|
40
|
+
FILTER REGEX(?query, "^([^ ]+)[ ]+([^ ]+)$")
|
|
41
|
+
|
|
42
|
+
BIND(REPLACE(?query, "^([^ ]+)[ ]+([^ ]+)$", "$1") AS ?term1)
|
|
43
|
+
BIND(REPLACE(?query, "^([^ ]+)[ ]+([^ ]+)$", "$2") AS ?term2)
|
|
44
|
+
|
|
45
|
+
# search case insensitive using an AND construct for the query terms
|
|
46
|
+
FILTER( CONTAINS(LCASE(?label), LCASE(?term1)) && CONTAINS(LCASE(?label), LCASE(?term2)) )
|
|
32
47
|
}
|
|
33
48
|
|
|
34
49
|
OPTIONAL {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@netwerk-digitaal-erfgoed/network-of-terms-catalog",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.7.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Catalog of Network of Terms datasets",
|
|
6
6
|
"repository": {
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"@types/n3": "^1.4.3",
|
|
32
32
|
"@types/rdf-ext": "^1.3.11",
|
|
33
33
|
"gts": "^3.1.0",
|
|
34
|
-
"jsonld-streaming-parser": "^2.
|
|
34
|
+
"jsonld-streaming-parser": "^2.4.3",
|
|
35
35
|
"rdf-data-factory": "^1.0.1",
|
|
36
36
|
"rdf-ext": "^2.0.1",
|
|
37
37
|
"rdf-validate-shacl": "^0.4.0"
|
|
@@ -43,8 +43,8 @@
|
|
|
43
43
|
"dependencies": {
|
|
44
44
|
"@comunica/actor-init-sparql-rdfjs": "^1.17.0",
|
|
45
45
|
"@comunica/bus-query-operation": "^1.17.0",
|
|
46
|
-
"@netwerk-digitaal-erfgoed/network-of-terms-query": "1.0
|
|
47
|
-
"globby": "
|
|
46
|
+
"@netwerk-digitaal-erfgoed/network-of-terms-query": "1.1.0",
|
|
47
|
+
"globby": "^13.1.1",
|
|
48
48
|
"rdf-js": "^4.0.2",
|
|
49
49
|
"rdf-parse": "^1.5.0",
|
|
50
50
|
"rdf-store-stream": "^1.1.0"
|