@twin.org/federated-catalogue-service 0.0.3-next.1 → 0.0.3-next.2
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/dist/es/entities/dataset.js +255 -0
- package/dist/es/entities/dataset.js.map +1 -0
- package/dist/es/federatedCatalogueRoutes.js +95 -696
- package/dist/es/federatedCatalogueRoutes.js.map +1 -1
- package/dist/es/index.js +3 -6
- package/dist/es/index.js.map +1 -1
- package/dist/es/models/IFederatedCatalogueServiceConstructorOptions.js.map +1 -1
- package/dist/es/restEntryPoints.js +1 -1
- package/dist/es/restEntryPoints.js.map +1 -1
- package/dist/es/schema.js +3 -9
- package/dist/es/schema.js.map +1 -1
- package/dist/es/services/federatedCatalogueService.js +218 -0
- package/dist/es/services/federatedCatalogueService.js.map +1 -0
- package/dist/es/utils/datasetConverters.js +20 -0
- package/dist/es/utils/datasetConverters.js.map +1 -0
- package/dist/types/entities/dataset.d.ts +128 -0
- package/dist/types/federatedCatalogueRoutes.d.ts +4 -105
- package/dist/types/index.d.ts +3 -6
- package/dist/types/models/IFederatedCatalogueServiceConstructorOptions.d.ts +6 -30
- package/dist/types/schema.d.ts +1 -1
- package/dist/types/services/federatedCatalogueService.d.ts +52 -0
- package/dist/types/utils/datasetConverters.d.ts +17 -0
- package/docs/changelog.md +4 -309
- package/docs/open-api/spec.json +2092 -2209
- package/docs/reference/classes/Dataset.md +255 -0
- package/docs/reference/classes/FederatedCatalogueService.md +45 -273
- package/docs/reference/functions/datasetEntityToModel.md +20 -0
- package/docs/reference/functions/datasetModelToEntity.md +21 -0
- package/docs/reference/functions/generateRestRoutesFederatedCatalogue.md +4 -4
- package/docs/reference/functions/initSchema.md +1 -1
- package/docs/reference/index.md +3 -17
- package/docs/reference/interfaces/IFederatedCatalogueServiceConstructorOptions.md +7 -71
- package/locales/en.json +9 -15
- package/package.json +4 -8
- package/dist/es/entities/dataResourceEntry.js +0 -124
- package/dist/es/entities/dataResourceEntry.js.map +0 -1
- package/dist/es/entities/dataSpaceConnectorEntry.js +0 -139
- package/dist/es/entities/dataSpaceConnectorEntry.js.map +0 -1
- package/dist/es/entities/participantEntry.js +0 -91
- package/dist/es/entities/participantEntry.js.map +0 -1
- package/dist/es/entities/serviceOfferingEntry.js +0 -115
- package/dist/es/entities/serviceOfferingEntry.js.map +0 -1
- package/dist/es/federatedCatalogueService.js +0 -700
- package/dist/es/federatedCatalogueService.js.map +0 -1
- package/dist/es/models/IFederatedCatalogueServiceConfig.js +0 -4
- package/dist/es/models/IFederatedCatalogueServiceConfig.js.map +0 -1
- package/dist/es/verification/complianceCredentialVerificationService.js +0 -240
- package/dist/es/verification/complianceCredentialVerificationService.js.map +0 -1
- package/dist/types/entities/dataResourceEntry.d.ts +0 -64
- package/dist/types/entities/dataSpaceConnectorEntry.d.ts +0 -71
- package/dist/types/entities/participantEntry.d.ts +0 -47
- package/dist/types/entities/serviceOfferingEntry.d.ts +0 -60
- package/dist/types/federatedCatalogueService.d.ts +0 -98
- package/dist/types/models/IFederatedCatalogueServiceConfig.d.ts +0 -15
- package/dist/types/verification/complianceCredentialVerificationService.d.ts +0 -32
- package/docs/reference/classes/DataResourceEntry.md +0 -126
- package/docs/reference/classes/DataSpaceConnectorEntry.md +0 -141
- package/docs/reference/classes/ParticipantEntry.md +0 -93
- package/docs/reference/classes/ServiceOfferingEntry.md +0 -117
- package/docs/reference/functions/complianceCredentialPresentation.md +0 -37
- package/docs/reference/functions/dataResourceCredentialPresentation.md +0 -37
- package/docs/reference/functions/dataResourceGet.md +0 -31
- package/docs/reference/functions/dataResourceList.md +0 -31
- package/docs/reference/functions/dataSpaceConnectorCredentialPresentation.md +0 -37
- package/docs/reference/functions/dataSpaceConnectorGet.md +0 -31
- package/docs/reference/functions/dataSpaceConnectorList.md +0 -31
- package/docs/reference/functions/participantGet.md +0 -31
- package/docs/reference/functions/participantList.md +0 -31
- package/docs/reference/functions/serviceOfferingCredentialPresentation.md +0 -37
- package/docs/reference/functions/serviceOfferingGet.md +0 -31
- package/docs/reference/functions/serviceOfferingList.md +0 -31
- package/docs/reference/interfaces/IFederatedCatalogueServiceConfig.md +0 -21
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
// Copyright 2025 IOTA Stiftung.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0.
|
|
3
|
+
import { entity, property } from "@twin.org/entity";
|
|
4
|
+
/**
|
|
5
|
+
* Class describing a DCAT dataset for entity storage.
|
|
6
|
+
* This wrapper enables efficient database indexing and querying while preserving
|
|
7
|
+
* the full IDataset JSON-LD structure.
|
|
8
|
+
*/
|
|
9
|
+
let Dataset = class Dataset {
|
|
10
|
+
/**
|
|
11
|
+
* The unique identifier for the dataset (@id from JSON-LD).
|
|
12
|
+
*/
|
|
13
|
+
"@id";
|
|
14
|
+
/**
|
|
15
|
+
* The JSON-LD context for the dataset.
|
|
16
|
+
*/
|
|
17
|
+
"@context";
|
|
18
|
+
/**
|
|
19
|
+
* The type of the resource (typically "Dataset").
|
|
20
|
+
*/
|
|
21
|
+
"@type";
|
|
22
|
+
/**
|
|
23
|
+
* A name given to the resource.
|
|
24
|
+
*/
|
|
25
|
+
"dcterms:title";
|
|
26
|
+
/**
|
|
27
|
+
* A free-text account of the resource.
|
|
28
|
+
*/
|
|
29
|
+
"dcterms:description";
|
|
30
|
+
/**
|
|
31
|
+
* A unique identifier of the resource.
|
|
32
|
+
*/
|
|
33
|
+
"dcterms:identifier";
|
|
34
|
+
/**
|
|
35
|
+
* Date of formal issuance (publication) of the resource.
|
|
36
|
+
*/
|
|
37
|
+
"dcterms:issued";
|
|
38
|
+
/**
|
|
39
|
+
* Most recent date on which the resource was changed, updated or modified.
|
|
40
|
+
*/
|
|
41
|
+
"dcterms:modified";
|
|
42
|
+
/**
|
|
43
|
+
* A language of the resource.
|
|
44
|
+
*/
|
|
45
|
+
"dcterms:language";
|
|
46
|
+
/**
|
|
47
|
+
* An entity responsible for making the resource available.
|
|
48
|
+
*/
|
|
49
|
+
"dcterms:publisher";
|
|
50
|
+
/**
|
|
51
|
+
* An entity responsible for producing the resource.
|
|
52
|
+
*/
|
|
53
|
+
"dcterms:creator";
|
|
54
|
+
/**
|
|
55
|
+
* Information about who can access the resource or an indication of its security status.
|
|
56
|
+
*/
|
|
57
|
+
"dcterms:accessRights";
|
|
58
|
+
/**
|
|
59
|
+
* A legal document under which the resource is made available.
|
|
60
|
+
*/
|
|
61
|
+
"dcterms:license";
|
|
62
|
+
/**
|
|
63
|
+
* Information about rights held in and over the resource.
|
|
64
|
+
*/
|
|
65
|
+
"dcterms:rights";
|
|
66
|
+
/**
|
|
67
|
+
* An established standard to which the resource conforms.
|
|
68
|
+
*/
|
|
69
|
+
"dcterms:conformsTo";
|
|
70
|
+
/**
|
|
71
|
+
* The nature or genre of the resource.
|
|
72
|
+
*/
|
|
73
|
+
"dcterms:type";
|
|
74
|
+
/**
|
|
75
|
+
* Relevant contact information for the catalogued resource.
|
|
76
|
+
*/
|
|
77
|
+
"dcat:contactPoint";
|
|
78
|
+
/**
|
|
79
|
+
* A keyword or tag describing the resource.
|
|
80
|
+
*/
|
|
81
|
+
"dcat:keyword";
|
|
82
|
+
/**
|
|
83
|
+
* A main category of the resource. A resource can have multiple themes.
|
|
84
|
+
*/
|
|
85
|
+
"dcat:theme";
|
|
86
|
+
/**
|
|
87
|
+
* A Web page that can be navigated to gain access to the resource.
|
|
88
|
+
*/
|
|
89
|
+
"dcat:landingPage";
|
|
90
|
+
/**
|
|
91
|
+
* Link to a description of a relationship with another resource.
|
|
92
|
+
*/
|
|
93
|
+
"dcat:qualifiedRelation";
|
|
94
|
+
/**
|
|
95
|
+
* An ODRL conformant policy expressing the rights associated with the resource.
|
|
96
|
+
*/
|
|
97
|
+
"odrl:hasPolicy";
|
|
98
|
+
/**
|
|
99
|
+
* An available distribution of the dataset.
|
|
100
|
+
*/
|
|
101
|
+
"dcat:distribution";
|
|
102
|
+
/**
|
|
103
|
+
* The frequency at which the dataset is published.
|
|
104
|
+
*/
|
|
105
|
+
"dcterms:accrualPeriodicity";
|
|
106
|
+
/**
|
|
107
|
+
* A dataset series of which the dataset is part.
|
|
108
|
+
*/
|
|
109
|
+
"dcat:inSeries";
|
|
110
|
+
/**
|
|
111
|
+
* The geographical area covered by the dataset.
|
|
112
|
+
*/
|
|
113
|
+
"dcterms:spatial";
|
|
114
|
+
/**
|
|
115
|
+
* Minimum spatial separation resolvable in a dataset, measured in meters.
|
|
116
|
+
*/
|
|
117
|
+
"dcat:spatialResolutionInMeters";
|
|
118
|
+
/**
|
|
119
|
+
* The temporal period that the dataset covers.
|
|
120
|
+
*/
|
|
121
|
+
"dcterms:temporal";
|
|
122
|
+
/**
|
|
123
|
+
* Minimum time period resolvable in the dataset.
|
|
124
|
+
*/
|
|
125
|
+
"dcat:temporalResolution";
|
|
126
|
+
/**
|
|
127
|
+
* An activity that generated, or provides the business context for, the creation of the dataset.
|
|
128
|
+
*/
|
|
129
|
+
"prov:wasGeneratedBy";
|
|
130
|
+
};
|
|
131
|
+
__decorate([
|
|
132
|
+
property({ type: "string", isPrimary: true }),
|
|
133
|
+
__metadata("design:type", String)
|
|
134
|
+
], Dataset.prototype, "@id", void 0);
|
|
135
|
+
__decorate([
|
|
136
|
+
property({ type: "object" }),
|
|
137
|
+
__metadata("design:type", Object)
|
|
138
|
+
], Dataset.prototype, "@context", void 0);
|
|
139
|
+
__decorate([
|
|
140
|
+
property({ type: "string" }),
|
|
141
|
+
__metadata("design:type", Object)
|
|
142
|
+
], Dataset.prototype, "@type", void 0);
|
|
143
|
+
__decorate([
|
|
144
|
+
property({ type: "object", optional: true }),
|
|
145
|
+
__metadata("design:type", Object)
|
|
146
|
+
], Dataset.prototype, "dcterms:title", void 0);
|
|
147
|
+
__decorate([
|
|
148
|
+
property({ type: "object", optional: true }),
|
|
149
|
+
__metadata("design:type", Object)
|
|
150
|
+
], Dataset.prototype, "dcterms:description", void 0);
|
|
151
|
+
__decorate([
|
|
152
|
+
property({ type: "object", optional: true }),
|
|
153
|
+
__metadata("design:type", Object)
|
|
154
|
+
], Dataset.prototype, "dcterms:identifier", void 0);
|
|
155
|
+
__decorate([
|
|
156
|
+
property({ type: "string", optional: true }),
|
|
157
|
+
__metadata("design:type", Object)
|
|
158
|
+
], Dataset.prototype, "dcterms:issued", void 0);
|
|
159
|
+
__decorate([
|
|
160
|
+
property({ type: "string", optional: true }),
|
|
161
|
+
__metadata("design:type", Object)
|
|
162
|
+
], Dataset.prototype, "dcterms:modified", void 0);
|
|
163
|
+
__decorate([
|
|
164
|
+
property({ type: "object", optional: true }),
|
|
165
|
+
__metadata("design:type", Object)
|
|
166
|
+
], Dataset.prototype, "dcterms:language", void 0);
|
|
167
|
+
__decorate([
|
|
168
|
+
property({ type: "object", optional: true }),
|
|
169
|
+
__metadata("design:type", Object)
|
|
170
|
+
], Dataset.prototype, "dcterms:publisher", void 0);
|
|
171
|
+
__decorate([
|
|
172
|
+
property({ type: "object", optional: true }),
|
|
173
|
+
__metadata("design:type", Object)
|
|
174
|
+
], Dataset.prototype, "dcterms:creator", void 0);
|
|
175
|
+
__decorate([
|
|
176
|
+
property({ type: "object", optional: true }),
|
|
177
|
+
__metadata("design:type", Object)
|
|
178
|
+
], Dataset.prototype, "dcterms:accessRights", void 0);
|
|
179
|
+
__decorate([
|
|
180
|
+
property({ type: "object", optional: true }),
|
|
181
|
+
__metadata("design:type", Object)
|
|
182
|
+
], Dataset.prototype, "dcterms:license", void 0);
|
|
183
|
+
__decorate([
|
|
184
|
+
property({ type: "object", optional: true }),
|
|
185
|
+
__metadata("design:type", Object)
|
|
186
|
+
], Dataset.prototype, "dcterms:rights", void 0);
|
|
187
|
+
__decorate([
|
|
188
|
+
property({ type: "object", optional: true }),
|
|
189
|
+
__metadata("design:type", Object)
|
|
190
|
+
], Dataset.prototype, "dcterms:conformsTo", void 0);
|
|
191
|
+
__decorate([
|
|
192
|
+
property({ type: "string", optional: true }),
|
|
193
|
+
__metadata("design:type", Object)
|
|
194
|
+
], Dataset.prototype, "dcterms:type", void 0);
|
|
195
|
+
__decorate([
|
|
196
|
+
property({ type: "object", optional: true }),
|
|
197
|
+
__metadata("design:type", Object)
|
|
198
|
+
], Dataset.prototype, "dcat:contactPoint", void 0);
|
|
199
|
+
__decorate([
|
|
200
|
+
property({ type: "object", optional: true }),
|
|
201
|
+
__metadata("design:type", Object)
|
|
202
|
+
], Dataset.prototype, "dcat:keyword", void 0);
|
|
203
|
+
__decorate([
|
|
204
|
+
property({ type: "object", optional: true }),
|
|
205
|
+
__metadata("design:type", Object)
|
|
206
|
+
], Dataset.prototype, "dcat:theme", void 0);
|
|
207
|
+
__decorate([
|
|
208
|
+
property({ type: "object", optional: true }),
|
|
209
|
+
__metadata("design:type", Object)
|
|
210
|
+
], Dataset.prototype, "dcat:landingPage", void 0);
|
|
211
|
+
__decorate([
|
|
212
|
+
property({ type: "object", optional: true }),
|
|
213
|
+
__metadata("design:type", Object)
|
|
214
|
+
], Dataset.prototype, "dcat:qualifiedRelation", void 0);
|
|
215
|
+
__decorate([
|
|
216
|
+
property({ type: "object", optional: true }),
|
|
217
|
+
__metadata("design:type", Object)
|
|
218
|
+
], Dataset.prototype, "odrl:hasPolicy", void 0);
|
|
219
|
+
__decorate([
|
|
220
|
+
property({ type: "object", optional: true }),
|
|
221
|
+
__metadata("design:type", Object)
|
|
222
|
+
], Dataset.prototype, "dcat:distribution", void 0);
|
|
223
|
+
__decorate([
|
|
224
|
+
property({ type: "string", optional: true }),
|
|
225
|
+
__metadata("design:type", Object)
|
|
226
|
+
], Dataset.prototype, "dcterms:accrualPeriodicity", void 0);
|
|
227
|
+
__decorate([
|
|
228
|
+
property({ type: "string", optional: true }),
|
|
229
|
+
__metadata("design:type", Object)
|
|
230
|
+
], Dataset.prototype, "dcat:inSeries", void 0);
|
|
231
|
+
__decorate([
|
|
232
|
+
property({ type: "object", optional: true }),
|
|
233
|
+
__metadata("design:type", Object)
|
|
234
|
+
], Dataset.prototype, "dcterms:spatial", void 0);
|
|
235
|
+
__decorate([
|
|
236
|
+
property({ type: "object", optional: true }),
|
|
237
|
+
__metadata("design:type", Object)
|
|
238
|
+
], Dataset.prototype, "dcat:spatialResolutionInMeters", void 0);
|
|
239
|
+
__decorate([
|
|
240
|
+
property({ type: "object", optional: true }),
|
|
241
|
+
__metadata("design:type", Object)
|
|
242
|
+
], Dataset.prototype, "dcterms:temporal", void 0);
|
|
243
|
+
__decorate([
|
|
244
|
+
property({ type: "object", optional: true }),
|
|
245
|
+
__metadata("design:type", Object)
|
|
246
|
+
], Dataset.prototype, "dcat:temporalResolution", void 0);
|
|
247
|
+
__decorate([
|
|
248
|
+
property({ type: "object", optional: true }),
|
|
249
|
+
__metadata("design:type", Object)
|
|
250
|
+
], Dataset.prototype, "prov:wasGeneratedBy", void 0);
|
|
251
|
+
Dataset = __decorate([
|
|
252
|
+
entity()
|
|
253
|
+
], Dataset);
|
|
254
|
+
export { Dataset };
|
|
255
|
+
//# sourceMappingURL=dataset.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dataset.js","sourceRoot":"","sources":["../../../src/entities/dataset.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { entity, property } from \"@twin.org/entity\";\nimport type { IDataset } from \"@twin.org/standards-w3c-dcat\";\n\n/**\n * Class describing a DCAT dataset for entity storage.\n * This wrapper enables efficient database indexing and querying while preserving\n * the full IDataset JSON-LD structure.\n */\n@entity()\nexport class Dataset {\n\t/**\n\t * The unique identifier for the dataset (@id from JSON-LD).\n\t */\n\t@property({ type: \"string\", isPrimary: true })\n\tpublic \"@id\"!: string;\n\n\t/**\n\t * The JSON-LD context for the dataset.\n\t */\n\t@property({ type: \"object\" })\n\tpublic \"@context\"!: IDataset[\"@context\"];\n\n\t/**\n\t * The type of the resource (typically \"Dataset\").\n\t */\n\t@property({ type: \"string\" })\n\tpublic \"@type\"!: IDataset[\"@type\"];\n\n\t/**\n\t * A name given to the resource.\n\t */\n\t@property({ type: \"object\", optional: true })\n\tpublic \"dcterms:title\"?: IDataset[\"dcterms:title\"];\n\n\t/**\n\t * A free-text account of the resource.\n\t */\n\t@property({ type: \"object\", optional: true })\n\tpublic \"dcterms:description\"?: IDataset[\"dcterms:description\"];\n\n\t/**\n\t * A unique identifier of the resource.\n\t */\n\t@property({ type: \"object\", optional: true })\n\tpublic \"dcterms:identifier\"?: IDataset[\"dcterms:identifier\"];\n\n\t/**\n\t * Date of formal issuance (publication) of the resource.\n\t */\n\t@property({ type: \"string\", optional: true })\n\tpublic \"dcterms:issued\"?: IDataset[\"dcterms:issued\"];\n\n\t/**\n\t * Most recent date on which the resource was changed, updated or modified.\n\t */\n\t@property({ type: \"string\", optional: true })\n\tpublic \"dcterms:modified\"?: IDataset[\"dcterms:modified\"];\n\n\t/**\n\t * A language of the resource.\n\t */\n\t@property({ type: \"object\", optional: true })\n\tpublic \"dcterms:language\"?: IDataset[\"dcterms:language\"];\n\n\t/**\n\t * An entity responsible for making the resource available.\n\t */\n\t@property({ type: \"object\", optional: true })\n\tpublic \"dcterms:publisher\"?: IDataset[\"dcterms:publisher\"];\n\n\t/**\n\t * An entity responsible for producing the resource.\n\t */\n\t@property({ type: \"object\", optional: true })\n\tpublic \"dcterms:creator\"?: IDataset[\"dcterms:creator\"];\n\n\t/**\n\t * Information about who can access the resource or an indication of its security status.\n\t */\n\t@property({ type: \"object\", optional: true })\n\tpublic \"dcterms:accessRights\"?: IDataset[\"dcterms:accessRights\"];\n\n\t/**\n\t * A legal document under which the resource is made available.\n\t */\n\t@property({ type: \"object\", optional: true })\n\tpublic \"dcterms:license\"?: IDataset[\"dcterms:license\"];\n\n\t/**\n\t * Information about rights held in and over the resource.\n\t */\n\t@property({ type: \"object\", optional: true })\n\tpublic \"dcterms:rights\"?: IDataset[\"dcterms:rights\"];\n\n\t/**\n\t * An established standard to which the resource conforms.\n\t */\n\t@property({ type: \"object\", optional: true })\n\tpublic \"dcterms:conformsTo\"?: IDataset[\"dcterms:conformsTo\"];\n\n\t/**\n\t * The nature or genre of the resource.\n\t */\n\t@property({ type: \"string\", optional: true })\n\tpublic \"dcterms:type\"?: IDataset[\"dcterms:type\"];\n\n\t/**\n\t * Relevant contact information for the catalogued resource.\n\t */\n\t@property({ type: \"object\", optional: true })\n\tpublic \"dcat:contactPoint\"?: IDataset[\"dcat:contactPoint\"];\n\n\t/**\n\t * A keyword or tag describing the resource.\n\t */\n\t@property({ type: \"object\", optional: true })\n\tpublic \"dcat:keyword\"?: IDataset[\"dcat:keyword\"];\n\n\t/**\n\t * A main category of the resource. A resource can have multiple themes.\n\t */\n\t@property({ type: \"object\", optional: true })\n\tpublic \"dcat:theme\"?: IDataset[\"dcat:theme\"];\n\n\t/**\n\t * A Web page that can be navigated to gain access to the resource.\n\t */\n\t@property({ type: \"object\", optional: true })\n\tpublic \"dcat:landingPage\"?: IDataset[\"dcat:landingPage\"];\n\n\t/**\n\t * Link to a description of a relationship with another resource.\n\t */\n\t@property({ type: \"object\", optional: true })\n\tpublic \"dcat:qualifiedRelation\"?: IDataset[\"dcat:qualifiedRelation\"];\n\n\t/**\n\t * An ODRL conformant policy expressing the rights associated with the resource.\n\t */\n\t@property({ type: \"object\", optional: true })\n\tpublic \"odrl:hasPolicy\"?: IDataset[\"odrl:hasPolicy\"];\n\n\t/**\n\t * An available distribution of the dataset.\n\t */\n\t@property({ type: \"object\", optional: true })\n\tpublic \"dcat:distribution\"?: IDataset[\"dcat:distribution\"];\n\n\t/**\n\t * The frequency at which the dataset is published.\n\t */\n\t@property({ type: \"string\", optional: true })\n\tpublic \"dcterms:accrualPeriodicity\"?: IDataset[\"dcterms:accrualPeriodicity\"];\n\n\t/**\n\t * A dataset series of which the dataset is part.\n\t */\n\t@property({ type: \"string\", optional: true })\n\tpublic \"dcat:inSeries\"?: IDataset[\"dcat:inSeries\"];\n\n\t/**\n\t * The geographical area covered by the dataset.\n\t */\n\t@property({ type: \"object\", optional: true })\n\tpublic \"dcterms:spatial\"?: IDataset[\"dcterms:spatial\"];\n\n\t/**\n\t * Minimum spatial separation resolvable in a dataset, measured in meters.\n\t */\n\t@property({ type: \"object\", optional: true })\n\tpublic \"dcat:spatialResolutionInMeters\"?: IDataset[\"dcat:spatialResolutionInMeters\"];\n\n\t/**\n\t * The temporal period that the dataset covers.\n\t */\n\t@property({ type: \"object\", optional: true })\n\tpublic \"dcterms:temporal\"?: IDataset[\"dcterms:temporal\"];\n\n\t/**\n\t * Minimum time period resolvable in the dataset.\n\t */\n\t@property({ type: \"object\", optional: true })\n\tpublic \"dcat:temporalResolution\"?: IDataset[\"dcat:temporalResolution\"];\n\n\t/**\n\t * An activity that generated, or provides the business context for, the creation of the dataset.\n\t */\n\t@property({ type: \"object\", optional: true })\n\tpublic \"prov:wasGeneratedBy\"?: IDataset[\"prov:wasGeneratedBy\"];\n}\n"]}
|