@netwerk-digitaal-erfgoed/network-of-terms-query 1.2.0 → 1.3.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/build/catalog.d.ts +7 -1
- package/build/catalog.d.ts.map +1 -1
- package/build/catalog.js +17 -1
- package/build/catalog.js.map +1 -1
- package/build/server-test.d.ts.map +1 -1
- package/build/server-test.js +3 -3
- package/build/server-test.js.map +1 -1
- package/package.json +1 -1
package/build/catalog.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ export declare class Catalog {
|
|
|
5
5
|
constructor(datasets: ReadonlyArray<Dataset>);
|
|
6
6
|
getDatasetByDistributionIri(iri: IRI): Dataset | undefined;
|
|
7
7
|
getDatasetByTermIri(iri: IRI): Dataset | undefined;
|
|
8
|
+
getDistributionsProvidingFeature(feature: Feature): Distribution[];
|
|
8
9
|
}
|
|
9
10
|
export declare class Dataset {
|
|
10
11
|
readonly iri: IRI;
|
|
@@ -27,7 +28,9 @@ export declare class SparqlDistribution {
|
|
|
27
28
|
readonly endpoint: IRI;
|
|
28
29
|
readonly searchQuery: string;
|
|
29
30
|
readonly lookupQuery: string;
|
|
30
|
-
|
|
31
|
+
readonly features: Feature[];
|
|
32
|
+
constructor(iri: IRI, endpoint: IRI, searchQuery: string, lookupQuery: string, features?: Feature[]);
|
|
33
|
+
hasFeature(feature: Feature): boolean;
|
|
31
34
|
}
|
|
32
35
|
/**
|
|
33
36
|
* A union type to be extended in the future with other distribution types.
|
|
@@ -35,4 +38,7 @@ export declare class SparqlDistribution {
|
|
|
35
38
|
export declare type Distribution = SparqlDistribution;
|
|
36
39
|
export declare class IRI extends URL {
|
|
37
40
|
}
|
|
41
|
+
export declare enum Feature {
|
|
42
|
+
RECONCILIATION = "https://reconciliation-api.github.io/specs/latest/"
|
|
43
|
+
}
|
|
38
44
|
//# sourceMappingURL=catalog.d.ts.map
|
package/build/catalog.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AAExB,qBAAa,OAAO;IACN,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC;gBAAhC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC;IAE9C,2BAA2B,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,GAAG,SAAS;IAM1D,mBAAmB,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,GAAG,SAAS;
|
|
1
|
+
{"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AAExB,qBAAa,OAAO;IACN,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC;gBAAhC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC;IAE9C,2BAA2B,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,GAAG,SAAS;IAM1D,mBAAmB,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,GAAG,SAAS;IAQlD,gCAAgC,CAAC,OAAO,EAAE,OAAO,GAAG,YAAY,EAAE;CAU1E;AAED,qBAAa,OAAO;IAEhB,QAAQ,CAAC,GAAG,EAAE,GAAG;IACjB,QAAQ,CAAC,IAAI,EAAE,MAAM;IACrB,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC7B,QAAQ,CAAC,QAAQ,EAAE,CAAC,YAAY,CAAC;IACjC,QAAQ,CAAC,aAAa,EAAE,CAAC,YAAY,CAAC;IACtC,QAAQ,CAAC,aAAa,CAAC;gBALd,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,GAAG,EAAE,EACpB,QAAQ,EAAE,CAAC,YAAY,CAAC,EACxB,aAAa,EAAE,CAAC,YAAY,CAAC,EAC7B,aAAa,CAAC,oBAAQ;IAG1B,oBAAoB,CAAC,GAAG,EAAE,GAAG,GAAG,YAAY,GAAG,SAAS;CAKhE;AAED,qBAAa,YAAY;IAErB,QAAQ,CAAC,GAAG,EAAE,GAAG;IACjB,QAAQ,CAAC,IAAI,EAAE,MAAM;IACrB,QAAQ,CAAC,aAAa,EAAE,MAAM;gBAFrB,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,MAAM;CAEjC;AAED,qBAAa,kBAAkB;IAE3B,QAAQ,CAAC,GAAG,EAAE,GAAG;IACjB,QAAQ,CAAC,QAAQ,EAAE,GAAG;IACtB,QAAQ,CAAC,WAAW,EAAE,MAAM;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM;IAC5B,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAAE;gBAJnB,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE,GAAG,EACb,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,QAAQ,GAAE,OAAO,EAAO;IAG5B,UAAU,CAAC,OAAO,EAAE,OAAO;CAGnC;AAED;;GAEG;AACH,oBAAY,YAAY,GAAG,kBAAkB,CAAC;AAE9C,qBAAa,GAAI,SAAQ,GAAG;CAAG;AAE/B,oBAAY,OAAO;IACjB,cAAc,uDAAuD;CACtE"}
|
package/build/catalog.js
CHANGED
|
@@ -9,6 +9,14 @@ export class Catalog {
|
|
|
9
9
|
getDatasetByTermIri(iri) {
|
|
10
10
|
return this.datasets.find(dataset => dataset.termsPrefixes.some(termPrefix => iri.toString().startsWith(termPrefix.toString())));
|
|
11
11
|
}
|
|
12
|
+
getDistributionsProvidingFeature(feature) {
|
|
13
|
+
return this.datasets.reduce((acc, dataset) => {
|
|
14
|
+
return [
|
|
15
|
+
...acc,
|
|
16
|
+
...dataset.distributions.filter(distribution => distribution.features.includes(feature)),
|
|
17
|
+
];
|
|
18
|
+
}, []);
|
|
19
|
+
}
|
|
12
20
|
}
|
|
13
21
|
export class Dataset {
|
|
14
22
|
constructor(iri, name, termsPrefixes, creators, distributions, alternateName) {
|
|
@@ -31,13 +39,21 @@ export class Organization {
|
|
|
31
39
|
}
|
|
32
40
|
}
|
|
33
41
|
export class SparqlDistribution {
|
|
34
|
-
constructor(iri, endpoint, searchQuery, lookupQuery) {
|
|
42
|
+
constructor(iri, endpoint, searchQuery, lookupQuery, features = []) {
|
|
35
43
|
this.iri = iri;
|
|
36
44
|
this.endpoint = endpoint;
|
|
37
45
|
this.searchQuery = searchQuery;
|
|
38
46
|
this.lookupQuery = lookupQuery;
|
|
47
|
+
this.features = features;
|
|
48
|
+
}
|
|
49
|
+
hasFeature(feature) {
|
|
50
|
+
return this.features.includes(feature);
|
|
39
51
|
}
|
|
40
52
|
}
|
|
41
53
|
export class IRI extends URL {
|
|
42
54
|
}
|
|
55
|
+
export var Feature;
|
|
56
|
+
(function (Feature) {
|
|
57
|
+
Feature["RECONCILIATION"] = "https://reconciliation-api.github.io/specs/latest/";
|
|
58
|
+
})(Feature || (Feature = {}));
|
|
43
59
|
//# sourceMappingURL=catalog.js.map
|
package/build/catalog.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog.js","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AAExB,MAAM,OAAO,OAAO;IAClB,YAAqB,QAAgC;QAAhC,aAAQ,GAAR,QAAQ,CAAwB;IAAG,CAAC;IAElD,2BAA2B,CAAC,GAAQ;QACzC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CACvB,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,KAAK,SAAS,CAC3D,CAAC;IACJ,CAAC;IAEM,mBAAmB,CAAC,GAAQ;QACjC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAClC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CACtC,GAAG,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CACjD,CACF,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,OAAO;IAClB,YACW,GAAQ,EACR,IAAY,EACZ,aAAoB,EACpB,QAAwB,EACxB,aAA6B,EAC7B,aAAsB;QALtB,QAAG,GAAH,GAAG,CAAK;QACR,SAAI,GAAJ,IAAI,CAAQ;QACZ,kBAAa,GAAb,aAAa,CAAO;QACpB,aAAQ,GAAR,QAAQ,CAAgB;QACxB,kBAAa,GAAb,aAAa,CAAgB;QAC7B,kBAAa,GAAb,aAAa,CAAS;IAC9B,CAAC;IAEG,oBAAoB,CAAC,GAAQ;QAClC,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAC5B,YAAY,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,GAAG,CAAC,QAAQ,EAAE,CAC/D,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,YAAY;IACvB,YACW,GAAQ,EACR,IAAY,EACZ,aAAqB;QAFrB,QAAG,GAAH,GAAG,CAAK;QACR,SAAI,GAAJ,IAAI,CAAQ;QACZ,kBAAa,GAAb,aAAa,CAAQ;IAC7B,CAAC;CACL;AAED,MAAM,OAAO,kBAAkB;IAC7B,YACW,GAAQ,EACR,QAAa,EACb,WAAmB,EACnB,WAAmB;
|
|
1
|
+
{"version":3,"file":"catalog.js","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AAExB,MAAM,OAAO,OAAO;IAClB,YAAqB,QAAgC;QAAhC,aAAQ,GAAR,QAAQ,CAAwB;IAAG,CAAC;IAElD,2BAA2B,CAAC,GAAQ;QACzC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CACvB,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,KAAK,SAAS,CAC3D,CAAC;IACJ,CAAC;IAEM,mBAAmB,CAAC,GAAQ;QACjC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAClC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CACtC,GAAG,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CACjD,CACF,CAAC;IACJ,CAAC;IAEM,gCAAgC,CAAC,OAAgB;QACtD,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAiB,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE;YAC3D,OAAO;gBACL,GAAG,GAAG;gBACN,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAC7C,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CACxC;aACF,CAAC;QACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IACT,CAAC;CACF;AAED,MAAM,OAAO,OAAO;IAClB,YACW,GAAQ,EACR,IAAY,EACZ,aAAoB,EACpB,QAAwB,EACxB,aAA6B,EAC7B,aAAsB;QALtB,QAAG,GAAH,GAAG,CAAK;QACR,SAAI,GAAJ,IAAI,CAAQ;QACZ,kBAAa,GAAb,aAAa,CAAO;QACpB,aAAQ,GAAR,QAAQ,CAAgB;QACxB,kBAAa,GAAb,aAAa,CAAgB;QAC7B,kBAAa,GAAb,aAAa,CAAS;IAC9B,CAAC;IAEG,oBAAoB,CAAC,GAAQ;QAClC,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAC5B,YAAY,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,GAAG,CAAC,QAAQ,EAAE,CAC/D,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,YAAY;IACvB,YACW,GAAQ,EACR,IAAY,EACZ,aAAqB;QAFrB,QAAG,GAAH,GAAG,CAAK;QACR,SAAI,GAAJ,IAAI,CAAQ;QACZ,kBAAa,GAAb,aAAa,CAAQ;IAC7B,CAAC;CACL;AAED,MAAM,OAAO,kBAAkB;IAC7B,YACW,GAAQ,EACR,QAAa,EACb,WAAmB,EACnB,WAAmB,EACnB,WAAsB,EAAE;QAJxB,QAAG,GAAH,GAAG,CAAK;QACR,aAAQ,GAAR,QAAQ,CAAK;QACb,gBAAW,GAAX,WAAW,CAAQ;QACnB,gBAAW,GAAX,WAAW,CAAQ;QACnB,aAAQ,GAAR,QAAQ,CAAgB;IAChC,CAAC;IAEG,UAAU,CAAC,OAAgB;QAChC,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;CACF;AAOD,MAAM,OAAO,GAAI,SAAQ,GAAG;CAAG;AAE/B,MAAM,CAAN,IAAY,OAEX;AAFD,WAAY,OAAO;IACjB,gFAAqE,CAAA;AACvE,CAAC,EAFW,OAAO,KAAP,OAAO,QAElB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server-test.d.ts","sourceRoot":"","sources":["../src/server-test.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"server-test.d.ts","sourceRoot":"","sources":["../src/server-test.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EAMR,MAAM,SAAS,CAAC;AAKjB,eAAO,MAAM,WAAW,SAAU,MAAM,YAsGpC,CAAC;AAEL,wBAAsB,+BAA+B,CACnD,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC,CAQf"}
|
package/build/server-test.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Catalog, Dataset, IRI, Organization, SparqlDistribution } from './index';
|
|
1
|
+
import { Catalog, Dataset, Feature, IRI, Organization, SparqlDistribution, } from './index';
|
|
2
2
|
import { setup } from 'jest-dev-server';
|
|
3
3
|
import { dirname } from 'path';
|
|
4
4
|
import { fileURLToPath } from 'url';
|
|
@@ -42,12 +42,12 @@ export const testCatalog = (port) => new Catalog([
|
|
|
42
42
|
?s skos:related ?related_uri.
|
|
43
43
|
?related_uri skos:prefLabel ?related_prefLabel.
|
|
44
44
|
}
|
|
45
|
-
}
|
|
45
|
+
}`, [Feature.RECONCILIATION]),
|
|
46
46
|
]),
|
|
47
47
|
new Dataset(new IRI('https://data.cultureelerfgoed.nl/term/id/cht'), 'Cultuurhistorische Thesaurus', [new IRI('https://data.cultureelerfgoed.nl/term/id/cht/')], [
|
|
48
48
|
new Organization(new IRI('https://www.cultureelerfgoed.nl'), 'Rijksdienst voor het Cultureel Erfgoed', 'RCE'),
|
|
49
49
|
], [
|
|
50
|
-
new SparqlDistribution(new IRI('https://example.com/distributions/endpoint-error'), new IRI('http://does-not-resolve'), 'CONSTRUCT { ?s ?p ?o } WHERE { ?s ?p ?o }', 'CONSTRUCT { ?s ?p ?o } WHERE { ?s ?p ?o }'),
|
|
50
|
+
new SparqlDistribution(new IRI('https://example.com/distributions/endpoint-error'), new IRI('http://does-not-resolve'), 'CONSTRUCT { ?s ?p ?o } WHERE { ?s ?p ?o }', 'CONSTRUCT { ?s ?p ?o } WHERE { ?s ?p ?o }', [Feature.RECONCILIATION]),
|
|
51
51
|
]),
|
|
52
52
|
new Dataset(new IRI('http://vocab.getty.edu/aat'), 'Art & Architecture Thesaurus', [new IRI('http://vocab.getty.edu/aat/')], [
|
|
53
53
|
new Organization(new IRI('http://www.getty.edu/research/'), 'Getty Research Institute', 'Getty'),
|
package/build/server-test.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server-test.js","sourceRoot":"","sources":["../src/server-test.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"server-test.js","sourceRoot":"","sources":["../src/server-test.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,OAAO,EACP,OAAO,EACP,GAAG,EACH,YAAY,EACZ,kBAAkB,GACnB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAC,KAAK,EAAC,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAC,OAAO,EAAC,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAC,aAAa,EAAC,MAAM,KAAK,CAAC;AAElC,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,EAAE,CAC1C,IAAI,OAAO,CAAC;IACV,IAAI,OAAO,CACT,IAAI,GAAG,CAAC,gCAAgC,CAAC,EACzC,YAAY,EACZ,CAAC,IAAI,GAAG,CAAC,gCAAgC,CAAC,CAAC,EAC3C;QACE,IAAI,YAAY,CACd,IAAI,GAAG,CAAC,gBAAgB,CAAC,EACzB,mDAAmD,EACnD,KAAK,CACN;KACF,EACD;QACE,IAAI,kBAAkB,CACpB,IAAI,GAAG,CACL,8DAA8D,CAC/D,EACD,IAAI,GAAG,CAAC,oBAAoB,IAAI,SAAS,CAAC,EAC1C;;;;;;;;;;YAUE,EACF;;;;;;;;;;;;;;;;;;;;;;;;;;YA0BE,EACF,CAAC,OAAO,CAAC,cAAc,CAAC,CACzB;KACF,CACF;IACD,IAAI,OAAO,CACT,IAAI,GAAG,CAAC,8CAA8C,CAAC,EACvD,8BAA8B,EAC9B,CAAC,IAAI,GAAG,CAAC,+CAA+C,CAAC,CAAC,EAC1D;QACE,IAAI,YAAY,CACd,IAAI,GAAG,CAAC,iCAAiC,CAAC,EAC1C,wCAAwC,EACxC,KAAK,CACN;KACF,EACD;QACE,IAAI,kBAAkB,CACpB,IAAI,GAAG,CAAC,kDAAkD,CAAC,EAC3D,IAAI,GAAG,CAAC,yBAAyB,CAAC,EAClC,2CAA2C,EAC3C,2CAA2C,EAC3C,CAAC,OAAO,CAAC,cAAc,CAAC,CACzB;KACF,CACF;IACD,IAAI,OAAO,CACT,IAAI,GAAG,CAAC,4BAA4B,CAAC,EACrC,8BAA8B,EAC9B,CAAC,IAAI,GAAG,CAAC,6BAA6B,CAAC,CAAC,EACxC;QACE,IAAI,YAAY,CACd,IAAI,GAAG,CAAC,gCAAgC,CAAC,EACzC,0BAA0B,EAC1B,OAAO,CACR;KACF,EACD;QACE,IAAI,kBAAkB,CACpB,IAAI,GAAG,CAAC,2CAA2C,CAAC,EACpD,IAAI,GAAG,CAAC,6BAA6B,CAAC,EACtC,2CAA2C,EAC3C,2CAA2C,CAC5C;KACF,CACF;CACF,CAAC,CAAC;AAEL,MAAM,CAAC,KAAK,UAAU,+BAA+B,CACnD,IAAY;IAEZ,MAAM,KAAK,CAAC;QACV,OAAO,EAAE,iCAAiC,OAAO,CAC/C,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAC/B,kCAAkC,IAAI,EAAE;QACzC,IAAI;QACJ,aAAa,EAAE,KAAK;KACrB,CAAC,CAAC;AACL,CAAC"}
|