@twin.org/standards-gaia-x 0.0.2-next.9 → 0.0.3-next.10

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 (61) hide show
  1. package/dist/es/dataTypes/gaiaXDataTypes.js +56 -0
  2. package/dist/es/dataTypes/gaiaXDataTypes.js.map +1 -0
  3. package/dist/es/index.js +14 -0
  4. package/dist/es/index.js.map +1 -0
  5. package/dist/es/models/IGaiaXAddress.js +2 -0
  6. package/dist/es/models/IGaiaXAddress.js.map +1 -0
  7. package/dist/es/models/IGaiaXDataExchangeComponent.js +2 -0
  8. package/dist/es/models/IGaiaXDataExchangeComponent.js.map +1 -0
  9. package/dist/es/models/IGaiaXDataResource.js +2 -0
  10. package/dist/es/models/IGaiaXDataResource.js.map +1 -0
  11. package/dist/es/models/IGaiaXEndpoint.js +2 -0
  12. package/dist/es/models/IGaiaXEndpoint.js.map +1 -0
  13. package/dist/es/models/IGaiaXEntity.js +2 -0
  14. package/dist/es/models/IGaiaXEntity.js.map +1 -0
  15. package/dist/es/models/IGaiaXLegalPerson.js +2 -0
  16. package/dist/es/models/IGaiaXLegalPerson.js.map +1 -0
  17. package/dist/es/models/IGaiaXRegistrationNumber.js +2 -0
  18. package/dist/es/models/IGaiaXRegistrationNumber.js.map +1 -0
  19. package/dist/es/models/IGaiaXServiceOffering.js +2 -0
  20. package/dist/es/models/IGaiaXServiceOffering.js.map +1 -0
  21. package/dist/es/models/gaiaXContextType.js +2 -0
  22. package/dist/es/models/gaiaXContextType.js.map +1 -0
  23. package/dist/es/models/gaiaXContexts.js +13 -0
  24. package/dist/es/models/gaiaXContexts.js.map +1 -0
  25. package/dist/es/models/gaiaXTypes.js +61 -0
  26. package/dist/es/models/gaiaXTypes.js.map +1 -0
  27. package/dist/es/schemas/Address.json +115 -0
  28. package/dist/es/schemas/DataExchangeComponent.json +164 -0
  29. package/dist/es/schemas/DataResource.json +325 -0
  30. package/dist/es/schemas/Endpoint.json +120 -0
  31. package/dist/es/schemas/LegalPerson.json +403 -0
  32. package/dist/es/schemas/RegistrationNumber.json +152 -0
  33. package/dist/es/schemas/ServiceOffering.json +425 -0
  34. package/dist/types/index.d.ts +11 -11
  35. package/dist/types/models/{IAddress.d.ts → IGaiaXAddress.d.ts} +2 -2
  36. package/dist/types/models/{IDataExchangeComponent.d.ts → IGaiaXDataExchangeComponent.d.ts} +3 -3
  37. package/dist/types/models/{IDataResource.d.ts → IGaiaXDataResource.d.ts} +11 -10
  38. package/dist/types/models/{IEndpoint.d.ts → IGaiaXEndpoint.d.ts} +2 -2
  39. package/dist/types/models/IGaiaXEntity.d.ts +1 -1
  40. package/dist/types/models/{ILegalPerson.d.ts → IGaiaXLegalPerson.d.ts} +8 -8
  41. package/dist/types/models/{IRegistrationNumber.d.ts → IGaiaXRegistrationNumber.d.ts} +2 -2
  42. package/dist/types/models/{IServiceOffering.d.ts → IGaiaXServiceOffering.d.ts} +11 -10
  43. package/dist/types/models/gaiaXContextType.d.ts +1 -1
  44. package/dist/types/models/gaiaXContexts.d.ts +1 -5
  45. package/docs/changelog.md +223 -0
  46. package/docs/reference/index.md +7 -7
  47. package/docs/reference/interfaces/IGaiaXAddress.md +28 -0
  48. package/docs/reference/interfaces/IGaiaXDataExchangeComponent.md +32 -0
  49. package/docs/reference/interfaces/{IDataResource.md → IGaiaXDataResource.md} +6 -6
  50. package/docs/reference/interfaces/IGaiaXEndpoint.md +44 -0
  51. package/docs/reference/interfaces/{ILegalPerson.md → IGaiaXLegalPerson.md} +5 -5
  52. package/docs/reference/interfaces/{IRegistrationNumber.md → IGaiaXRegistrationNumber.md} +2 -2
  53. package/docs/reference/interfaces/IGaiaXServiceOffering.md +101 -0
  54. package/docs/reference/variables/GaiaXContexts.md +1 -7
  55. package/package.json +22 -9
  56. package/dist/cjs/index.cjs +0 -1935
  57. package/dist/esm/index.mjs +0 -1931
  58. package/docs/reference/interfaces/IAddress.md +0 -28
  59. package/docs/reference/interfaces/IDataExchangeComponent.md +0 -32
  60. package/docs/reference/interfaces/IEndpoint.md +0 -44
  61. package/docs/reference/interfaces/IServiceOffering.md +0 -101
@@ -0,0 +1,425 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schema.twindev.org/gaia-x-loire/ServiceOffering",
4
+ "description": "A Service offering",
5
+ "type": "object",
6
+ "properties": {
7
+ "@context": {
8
+ "description": "The Gaia-X JSON-LD context type.",
9
+ "anyOf": [
10
+ {
11
+ "type": "string",
12
+ "const": "https://schema.twindev.org/gaia-x-loire/"
13
+ },
14
+ {
15
+ "type": "array",
16
+ "minItems": 2,
17
+ "prefixItems": [
18
+ {
19
+ "type": "string",
20
+ "const": "https://schema.twindev.org/gaia-x-loire/"
21
+ },
22
+ {
23
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
24
+ }
25
+ ],
26
+ "items": {
27
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
28
+ }
29
+ },
30
+ {
31
+ "type": "array",
32
+ "minItems": 2,
33
+ "prefixItems": [
34
+ {
35
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
36
+ },
37
+ {
38
+ "type": "string",
39
+ "const": "https://schema.twindev.org/gaia-x-loire/"
40
+ }
41
+ ],
42
+ "items": {
43
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
44
+ }
45
+ }
46
+ ]
47
+ },
48
+ "@id": {
49
+ "anyOf": [
50
+ {
51
+ "type": "string"
52
+ },
53
+ {
54
+ "type": "array",
55
+ "items": {
56
+ "type": "string"
57
+ }
58
+ }
59
+ ]
60
+ },
61
+ "@included": {
62
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdIncludedBlock"
63
+ },
64
+ "@graph": {
65
+ "anyOf": [
66
+ {
67
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
68
+ },
69
+ {
70
+ "type": "array",
71
+ "items": {
72
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
73
+ }
74
+ }
75
+ ]
76
+ },
77
+ "@nest": {
78
+ "anyOf": [
79
+ {
80
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdJsonObject"
81
+ },
82
+ {
83
+ "type": "array",
84
+ "items": {
85
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdJsonObject"
86
+ }
87
+ }
88
+ ]
89
+ },
90
+ "@type": {
91
+ "anyOf": [
92
+ {
93
+ "type": "string"
94
+ },
95
+ {
96
+ "type": "array",
97
+ "items": {
98
+ "type": "string"
99
+ }
100
+ }
101
+ ]
102
+ },
103
+ "@reverse": {
104
+ "type": "object",
105
+ "additionalProperties": {
106
+ "type": "string"
107
+ }
108
+ },
109
+ "@index": {
110
+ "type": "string"
111
+ },
112
+ "id": {
113
+ "type": "string",
114
+ "description": "The Id."
115
+ },
116
+ "name": {
117
+ "type": "string",
118
+ "description": "Name of the Service Offering."
119
+ },
120
+ "description": {
121
+ "type": "string",
122
+ "description": "Description of the Gaia-X entity."
123
+ },
124
+ "type": {
125
+ "type": "string",
126
+ "const": "ServiceOffering",
127
+ "description": "Type"
128
+ },
129
+ "providedBy": {
130
+ "anyOf": [
131
+ {
132
+ "type": "string"
133
+ },
134
+ {
135
+ "$ref": "https://schema.twindev.org/gaia-x-loire/LegalPerson"
136
+ },
137
+ {
138
+ "type": "object",
139
+ "additionalProperties": {
140
+ "anyOf": [
141
+ {
142
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdNodePrimitive"
143
+ },
144
+ {
145
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdLanguageMap"
146
+ },
147
+ {
148
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdIndexMap"
149
+ },
150
+ {
151
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdIncludedBlock"
152
+ },
153
+ {
154
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdIdMap"
155
+ },
156
+ {
157
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdTypeMap"
158
+ },
159
+ {
160
+ "type": "array"
161
+ }
162
+ ]
163
+ },
164
+ "properties": {
165
+ "id": {
166
+ "type": "string"
167
+ },
168
+ "type": {
169
+ "type": "string",
170
+ "const": "LegalPerson"
171
+ },
172
+ "@context": {
173
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionRoot"
174
+ },
175
+ "@id": {
176
+ "anyOf": [
177
+ {
178
+ "type": "string"
179
+ },
180
+ {
181
+ "type": "array",
182
+ "items": {
183
+ "type": "string"
184
+ }
185
+ }
186
+ ]
187
+ },
188
+ "@included": {
189
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdIncludedBlock"
190
+ },
191
+ "@graph": {
192
+ "anyOf": [
193
+ {
194
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
195
+ },
196
+ {
197
+ "type": "array",
198
+ "items": {
199
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
200
+ }
201
+ }
202
+ ]
203
+ },
204
+ "@nest": {
205
+ "anyOf": [
206
+ {
207
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdJsonObject"
208
+ },
209
+ {
210
+ "type": "array",
211
+ "items": {
212
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdJsonObject"
213
+ }
214
+ }
215
+ ]
216
+ },
217
+ "@type": {
218
+ "anyOf": [
219
+ {
220
+ "type": "string"
221
+ },
222
+ {
223
+ "type": "array",
224
+ "items": {
225
+ "type": "string"
226
+ }
227
+ }
228
+ ]
229
+ },
230
+ "@reverse": {
231
+ "type": "object",
232
+ "additionalProperties": {
233
+ "type": "string"
234
+ }
235
+ },
236
+ "@index": {
237
+ "type": "string"
238
+ }
239
+ },
240
+ "required": [
241
+ "id",
242
+ "type"
243
+ ]
244
+ }
245
+ ],
246
+ "description": "Participant that provides the offering"
247
+ },
248
+ "servicePolicy": {
249
+ "description": "Object or array data type",
250
+ "anyOf": [
251
+ {
252
+ "$ref": "https://schema.twindev.org/w3c-odrl/OdrlPolicy"
253
+ },
254
+ {
255
+ "type": "array",
256
+ "items": {
257
+ "$ref": "https://schema.twindev.org/w3c-odrl/OdrlPolicy"
258
+ }
259
+ }
260
+ ]
261
+ },
262
+ "aggregationOfResources": {
263
+ "anyOf": [
264
+ {
265
+ "type": "array",
266
+ "items": {
267
+ "type": "string"
268
+ }
269
+ },
270
+ {
271
+ "type": "array",
272
+ "items": {
273
+ "$ref": "https://schema.twindev.org/gaia-x-loire/DataResource"
274
+ }
275
+ },
276
+ {
277
+ "type": "object",
278
+ "additionalProperties": {
279
+ "anyOf": [
280
+ {
281
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdNodePrimitive"
282
+ },
283
+ {
284
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdLanguageMap"
285
+ },
286
+ {
287
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdIndexMap"
288
+ },
289
+ {
290
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdIncludedBlock"
291
+ },
292
+ {
293
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdIdMap"
294
+ },
295
+ {
296
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdTypeMap"
297
+ },
298
+ {
299
+ "type": "array"
300
+ }
301
+ ]
302
+ },
303
+ "properties": {
304
+ "id": {
305
+ "type": "string"
306
+ },
307
+ "type": {
308
+ "type": "string",
309
+ "const": "DataResource"
310
+ },
311
+ "@context": {
312
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionRoot"
313
+ },
314
+ "@id": {
315
+ "anyOf": [
316
+ {
317
+ "type": "string"
318
+ },
319
+ {
320
+ "type": "array",
321
+ "items": {
322
+ "type": "string"
323
+ }
324
+ }
325
+ ]
326
+ },
327
+ "@included": {
328
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdIncludedBlock"
329
+ },
330
+ "@graph": {
331
+ "anyOf": [
332
+ {
333
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
334
+ },
335
+ {
336
+ "type": "array",
337
+ "items": {
338
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
339
+ }
340
+ }
341
+ ]
342
+ },
343
+ "@nest": {
344
+ "anyOf": [
345
+ {
346
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdJsonObject"
347
+ },
348
+ {
349
+ "type": "array",
350
+ "items": {
351
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdJsonObject"
352
+ }
353
+ }
354
+ ]
355
+ },
356
+ "@type": {
357
+ "anyOf": [
358
+ {
359
+ "type": "string"
360
+ },
361
+ {
362
+ "type": "array",
363
+ "items": {
364
+ "type": "string"
365
+ }
366
+ }
367
+ ]
368
+ },
369
+ "@reverse": {
370
+ "type": "object",
371
+ "additionalProperties": {
372
+ "type": "string"
373
+ }
374
+ },
375
+ "@index": {
376
+ "type": "string"
377
+ }
378
+ },
379
+ "required": [
380
+ "id",
381
+ "type"
382
+ ]
383
+ }
384
+ ],
385
+ "description": "Resources aggregated It is supported different representations, inline, by reference both providing the URI or a partial JSON-LD Node object"
386
+ },
387
+ "endpoint": {
388
+ "$ref": "https://schema.twindev.org/gaia-x-loire/Endpoint",
389
+ "description": "The endpoint"
390
+ }
391
+ },
392
+ "required": [
393
+ "@context",
394
+ "id",
395
+ "name",
396
+ "providedBy",
397
+ "servicePolicy",
398
+ "type"
399
+ ],
400
+ "additionalProperties": {
401
+ "anyOf": [
402
+ {
403
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdNodePrimitive"
404
+ },
405
+ {
406
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdLanguageMap"
407
+ },
408
+ {
409
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdIndexMap"
410
+ },
411
+ {
412
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdIncludedBlock"
413
+ },
414
+ {
415
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdIdMap"
416
+ },
417
+ {
418
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdTypeMap"
419
+ },
420
+ {
421
+ "type": "array"
422
+ }
423
+ ]
424
+ }
425
+ }
@@ -1,11 +1,11 @@
1
- export * from "./dataTypes/gaiaXDataTypes";
2
- export * from "./models/gaiaXContexts";
3
- export * from "./models/gaiaXContextType";
4
- export * from "./models/gaiaXTypes";
5
- export * from "./models/IAddress";
6
- export * from "./models/IDataExchangeComponent";
7
- export * from "./models/IDataResource";
8
- export * from "./models/IEndpoint";
9
- export * from "./models/ILegalPerson";
10
- export * from "./models/IRegistrationNumber";
11
- export * from "./models/IServiceOffering";
1
+ export * from "./dataTypes/gaiaXDataTypes.js";
2
+ export * from "./models/gaiaXContexts.js";
3
+ export * from "./models/gaiaXContextType.js";
4
+ export * from "./models/gaiaXTypes.js";
5
+ export * from "./models/IGaiaXAddress.js";
6
+ export * from "./models/IGaiaXDataExchangeComponent.js";
7
+ export * from "./models/IGaiaXDataResource.js";
8
+ export * from "./models/IGaiaXEndpoint.js";
9
+ export * from "./models/IGaiaXLegalPerson.js";
10
+ export * from "./models/IGaiaXRegistrationNumber.js";
11
+ export * from "./models/IGaiaXServiceOffering.js";
@@ -1,10 +1,10 @@
1
1
  import type { IJsonLdNodeObject } from "@twin.org/data-json-ld";
2
- import type { GaiaXTypes } from "./gaiaXTypes";
2
+ import type { GaiaXTypes } from "./gaiaXTypes.js";
3
3
  /**
4
4
  * Address as defined by Gaia-X
5
5
  * https://docs.gaia-x.eu/ontology/development/classes/Address/
6
6
  */
7
- export interface IAddress extends IJsonLdNodeObject {
7
+ export interface IGaiaXAddress extends IJsonLdNodeObject {
8
8
  /**
9
9
  * JSON-LD @ type. In this case it is allowed to be omitted as it is usually a child node.
10
10
  */
@@ -1,11 +1,11 @@
1
1
  import type { IJsonLdNodeObject } from "@twin.org/data-json-ld";
2
- import type { GaiaXContextType } from "./gaiaXContextType";
3
- import type { GaiaXTypes } from "./gaiaXTypes";
2
+ import type { GaiaXContextType } from "./gaiaXContextType.js";
3
+ import type { GaiaXTypes } from "./gaiaXTypes.js";
4
4
  /**
5
5
  * Data Exchange component as defined by Gaia-X
6
6
  * https://docs.gaia-x.eu/ontology/development/classes/DataExchangeComponent
7
7
  */
8
- export interface IDataExchangeComponent extends IJsonLdNodeObject {
8
+ export interface IGaiaXDataExchangeComponent extends IJsonLdNodeObject {
9
9
  /**
10
10
  * The LD Context
11
11
  */
@@ -1,15 +1,16 @@
1
1
  import type { ObjectOrArray } from "@twin.org/core";
2
2
  import type { IJsonLdNodeObject } from "@twin.org/data-json-ld";
3
- import type { GaiaXContextType } from "./gaiaXContextType";
4
- import type { GaiaXTypes } from "./gaiaXTypes";
5
- import type { IDataExchangeComponent } from "./IDataExchangeComponent";
6
- import type { IGaiaXEntity } from "./IGaiaXEntity";
7
- import type { ILegalPerson } from "./ILegalPerson";
3
+ import type { IOdrlPolicy } from "@twin.org/standards-w3c-odrl";
4
+ import type { GaiaXContextType } from "./gaiaXContextType.js";
5
+ import type { GaiaXTypes } from "./gaiaXTypes.js";
6
+ import type { IGaiaXDataExchangeComponent } from "./IGaiaXDataExchangeComponent.js";
7
+ import type { IGaiaXEntity } from "./IGaiaXEntity.js";
8
+ import type { IGaiaXLegalPerson } from "./IGaiaXLegalPerson.js";
8
9
  /**
9
10
  * A Data Resource as defined by Gaia-X.
10
11
  * See also W3C DCAT Dataset https://www.w3.org/TR/vocab-dcat-3/.
11
12
  */
12
- export interface IDataResource extends IGaiaXEntity {
13
+ export interface IGaiaXDataResource extends IGaiaXEntity {
13
14
  /**
14
15
  * The LD Context
15
16
  */
@@ -31,14 +32,14 @@ export interface IDataResource extends IGaiaXEntity {
31
32
  * 'string' in case just an Id pointing to the Data Exchange Component is supplied
32
33
  * the third case covers the idiom where a JSON-LD Node is supplied with id and type.
33
34
  */
34
- exposedThrough: IDataExchangeComponent | string | (IJsonLdNodeObject & {
35
+ exposedThrough: IGaiaXDataExchangeComponent | string | (IJsonLdNodeObject & {
35
36
  id: string;
36
37
  type: typeof GaiaXTypes.DataExchangeComponent;
37
38
  });
38
39
  /**
39
40
  * Who is the data producer
40
41
  */
41
- producedBy: ILegalPerson | string;
42
+ producedBy: IGaiaXLegalPerson | string;
42
43
  /**
43
44
  * Pointer (URL) to the license
44
45
  */
@@ -46,9 +47,9 @@ export interface IDataResource extends IGaiaXEntity {
46
47
  /**
47
48
  * Copyright owner
48
49
  */
49
- copyrightOwnedBy: ILegalPerson | string;
50
+ copyrightOwnedBy: IGaiaXLegalPerson | string;
50
51
  /**
51
52
  * ODRL Policy
52
53
  */
53
- resourcePolicy: ObjectOrArray<IJsonLdNodeObject>;
54
+ resourcePolicy: ObjectOrArray<IOdrlPolicy>;
54
55
  }
@@ -1,10 +1,10 @@
1
1
  import type { IJsonLdNodeObject } from "@twin.org/data-json-ld";
2
- import type { GaiaXTypes } from "./gaiaXTypes";
2
+ import type { GaiaXTypes } from "./gaiaXTypes.js";
3
3
  /**
4
4
  * Endpoint as defined by the Gaia-X ontology.
5
5
  * https://docs.gaia-x.eu/ontology/development/classes/Endpoint
6
6
  */
7
- export interface IEndpoint extends IJsonLdNodeObject {
7
+ export interface IGaiaXEndpoint extends IJsonLdNodeObject {
8
8
  /**
9
9
  * The type of JSON-LD node. In this case it is allowed to be omitted as it is usually a child node.
10
10
  */
@@ -1,5 +1,5 @@
1
1
  import type { IJsonLdNodeObject } from "@twin.org/data-json-ld";
2
- import type { GaiaXContextType } from "./gaiaXContextType";
2
+ import type { GaiaXContextType } from "./gaiaXContextType.js";
3
3
  /**
4
4
  * GaiaX Entity.
5
5
  * @see https://docs.gaia-x.eu/ontology/development/classes/GaiaXEntity/
@@ -1,13 +1,13 @@
1
1
  import type { IJsonLdNodeObject } from "@twin.org/data-json-ld";
2
- import type { GaiaXTypes } from "./gaiaXTypes";
3
- import type { IAddress } from "./IAddress";
4
- import type { IGaiaXEntity } from "./IGaiaXEntity";
5
- import type { IRegistrationNumber } from "./IRegistrationNumber";
2
+ import type { GaiaXTypes } from "./gaiaXTypes.js";
3
+ import type { IGaiaXAddress } from "./IGaiaXAddress.js";
4
+ import type { IGaiaXEntity } from "./IGaiaXEntity.js";
5
+ import type { IGaiaXRegistrationNumber } from "./IGaiaXRegistrationNumber.js";
6
6
  /**
7
7
  * A Legal Person as defined by Gaia-X.
8
8
  * @see https://docs.gaia-x.eu/ontology/development/classes/LegalPerson/.
9
9
  */
10
- export interface ILegalPerson extends IGaiaXEntity {
10
+ export interface IGaiaXLegalPerson extends IGaiaXEntity {
11
11
  /**
12
12
  * JSON-LD type.
13
13
  */
@@ -16,7 +16,7 @@ export interface ILegalPerson extends IGaiaXEntity {
16
16
  * The legal registration number.
17
17
  * @see https://docs.gaia-x.eu/ontology/development/slots/registrationNumber/
18
18
  */
19
- registrationNumber: IRegistrationNumber;
19
+ registrationNumber: IGaiaXRegistrationNumber;
20
20
  /**
21
21
  * The legal name.
22
22
  */
@@ -25,12 +25,12 @@ export interface ILegalPerson extends IGaiaXEntity {
25
25
  * Legal Address
26
26
  * @see https://docs.gaia-x.eu/ontology/development/slots/legalAddress/
27
27
  */
28
- legalAddress: IAddress;
28
+ legalAddress: IGaiaXAddress;
29
29
  /**
30
30
  * Headquarters address.
31
31
  * @see https://docs.gaia-x.eu/ontology/development/slots/headquartersAddress/
32
32
  */
33
- headquartersAddress?: IAddress;
33
+ headquartersAddress?: IGaiaXAddress;
34
34
  /**
35
35
  * Parent organization.
36
36
  * @see https://docs.gaia-x.eu/ontology/development/slots/parentOrganizationOf/
@@ -1,10 +1,10 @@
1
1
  import type { IJsonLdNodeObject } from "@twin.org/data-json-ld";
2
- import type { GaiaXTypes } from "./gaiaXTypes";
2
+ import type { GaiaXTypes } from "./gaiaXTypes.js";
3
3
  /**
4
4
  * Registration Number as defined by the Gaia-X ontology.
5
5
  * https://docs.gaia-x.eu/ontology/development/classes/RegistrationNumber/
6
6
  */
7
- export interface IRegistrationNumber extends IJsonLdNodeObject {
7
+ export interface IGaiaXRegistrationNumber extends IJsonLdNodeObject {
8
8
  /**
9
9
  * JSON-LD Type.
10
10
  */
@@ -1,14 +1,15 @@
1
1
  import type { ObjectOrArray } from "@twin.org/core";
2
2
  import type { IJsonLdNodeObject } from "@twin.org/data-json-ld";
3
- import type { GaiaXTypes } from "./gaiaXTypes";
4
- import type { IDataResource } from "./IDataResource";
5
- import type { IEndpoint } from "./IEndpoint";
6
- import type { IGaiaXEntity } from "./IGaiaXEntity";
7
- import type { ILegalPerson } from "./ILegalPerson";
3
+ import type { IOdrlPolicy } from "@twin.org/standards-w3c-odrl";
4
+ import type { GaiaXTypes } from "./gaiaXTypes.js";
5
+ import type { IGaiaXDataResource } from "./IGaiaXDataResource.js";
6
+ import type { IGaiaXEndpoint } from "./IGaiaXEndpoint.js";
7
+ import type { IGaiaXEntity } from "./IGaiaXEntity.js";
8
+ import type { IGaiaXLegalPerson } from "./IGaiaXLegalPerson.js";
8
9
  /**
9
10
  * A Service offering
10
11
  */
11
- export interface IServiceOffering extends IGaiaXEntity {
12
+ export interface IGaiaXServiceOffering extends IGaiaXEntity {
12
13
  /**
13
14
  * Type
14
15
  */
@@ -20,25 +21,25 @@ export interface IServiceOffering extends IGaiaXEntity {
20
21
  /**
21
22
  * Participant that provides the offering
22
23
  */
23
- providedBy: string | ILegalPerson | (IJsonLdNodeObject & {
24
+ providedBy: string | IGaiaXLegalPerson | (IJsonLdNodeObject & {
24
25
  id: string;
25
26
  type: typeof GaiaXTypes.LegalPerson;
26
27
  });
27
28
  /**
28
29
  * ODRL policy associated to the service offering
29
30
  */
30
- servicePolicy: ObjectOrArray<IJsonLdNodeObject>;
31
+ servicePolicy: ObjectOrArray<IOdrlPolicy>;
31
32
  /**
32
33
  * Resources aggregated
33
34
  * It is supported different representations, inline,
34
35
  * by reference both providing the URI or a partial JSON-LD Node object
35
36
  */
36
- aggregationOfResources?: string[] | IDataResource[] | (IJsonLdNodeObject & {
37
+ aggregationOfResources?: string[] | IGaiaXDataResource[] | (IJsonLdNodeObject & {
37
38
  id: string;
38
39
  type: typeof GaiaXTypes.DataResource;
39
40
  });
40
41
  /**
41
42
  * The endpoint
42
43
  */
43
- endpoint: IEndpoint;
44
+ endpoint?: IGaiaXEndpoint;
44
45
  }
@@ -1,5 +1,5 @@
1
1
  import type { IJsonLdContextDefinitionElement } from "@twin.org/data-json-ld";
2
- import type { GaiaXContexts } from "./gaiaXContexts";
2
+ import type { GaiaXContexts } from "./gaiaXContexts.js";
3
3
  /**
4
4
  * The Gaia-X JSON-LD context type.
5
5
  */