@twin.org/federated-catalogue-models 0.0.2-next.6 → 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/factories/federatedCatalogueFilterFactory.js +10 -0
- package/dist/es/factories/federatedCatalogueFilterFactory.js.map +1 -0
- package/dist/es/index.js +12 -0
- package/dist/es/index.js.map +1 -0
- package/dist/es/models/IFederatedCatalogueComponent.js +2 -0
- package/dist/es/models/IFederatedCatalogueComponent.js.map +1 -0
- package/dist/es/models/IFederatedCatalogueFilter.js +2 -0
- package/dist/es/models/IFederatedCatalogueFilter.js.map +1 -0
- package/dist/es/models/api/ICatalogRequestRequest.js +2 -0
- package/dist/es/models/api/ICatalogRequestRequest.js.map +1 -0
- package/dist/es/models/api/ICatalogRequestResponse.js +2 -0
- package/dist/es/models/api/ICatalogRequestResponse.js.map +1 -0
- package/dist/es/models/api/IGetDatasetRequest.js +4 -0
- package/dist/es/models/api/IGetDatasetRequest.js.map +1 -0
- package/dist/es/models/api/IGetDatasetResponse.js +2 -0
- package/dist/es/models/api/IGetDatasetResponse.js.map +1 -0
- package/dist/es/models/federatedCatalogueContexts.js +13 -0
- package/dist/es/models/federatedCatalogueContexts.js.map +1 -0
- package/dist/es/models/filters/IBaseFilter.js +2 -0
- package/dist/es/models/filters/IBaseFilter.js.map +1 -0
- package/dist/types/factories/federatedCatalogueFilterFactory.d.ts +7 -0
- package/dist/types/index.d.ts +9 -42
- package/dist/types/models/IFederatedCatalogueComponent.d.ts +27 -76
- package/dist/types/models/IFederatedCatalogueFilter.d.ts +29 -0
- package/dist/types/models/api/ICatalogRequestRequest.d.ts +10 -0
- package/dist/types/models/api/ICatalogRequestResponse.d.ts +10 -0
- package/dist/types/models/api/IGetDatasetRequest.d.ts +14 -0
- package/dist/types/models/api/IGetDatasetResponse.d.ts +10 -0
- package/dist/types/models/federatedCatalogueContexts.d.ts +2 -2
- package/dist/types/models/filters/IBaseFilter.d.ts +34 -0
- package/docs/changelog.md +3 -134
- package/docs/reference/index.md +7 -45
- package/docs/reference/interfaces/IBaseFilter.md +55 -0
- package/docs/reference/interfaces/ICatalogRequestRequest.md +11 -0
- package/docs/reference/interfaces/ICatalogRequestResponse.md +11 -0
- package/docs/reference/interfaces/IFederatedCatalogueComponent.md +40 -251
- package/docs/reference/interfaces/IFederatedCatalogueFilter.md +56 -0
- package/docs/reference/interfaces/IGetDatasetRequest.md +17 -0
- package/docs/reference/interfaces/IGetDatasetResponse.md +11 -0
- package/docs/reference/type-aliases/FederatedCatalogueContexts.md +1 -1
- package/docs/reference/variables/FederatedCatalogueContexts.md +1 -1
- package/docs/reference/variables/FederatedCatalogueFilterFactory.md +6 -0
- package/package.json +7 -11
- package/dist/cjs/index.cjs +0 -1452
- package/dist/esm/index.mjs +0 -1446
- package/dist/types/dataTypes/federatedCatalogueDataTypes.d.ts +0 -9
- package/dist/types/models/ICatalogueBase.d.ts +0 -25
- package/dist/types/models/ICatalogueEntry.d.ts +0 -8
- package/dist/types/models/IComplianceCredential.d.ts +0 -37
- package/dist/types/models/IComplianceEvidence.d.ts +0 -26
- package/dist/types/models/IComplianceVerificationResult.d.ts +0 -19
- package/dist/types/models/ICredential.d.ts +0 -21
- package/dist/types/models/IVerificationResult.d.ts +0 -13
- package/dist/types/models/api/ICatalogueEntryGetRequest.d.ts +0 -15
- package/dist/types/models/api/ICompliancePresentationRequest.d.ts +0 -9
- package/dist/types/models/api/IDataResourceGetResponse.d.ts +0 -10
- package/dist/types/models/api/IDataResourceListRequest.d.ts +0 -27
- package/dist/types/models/api/IDataResourceListResponse.d.ts +0 -10
- package/dist/types/models/api/IDataSpaceConnectorGetResponse.d.ts +0 -10
- package/dist/types/models/api/IDataSpaceConnectorListRequest.d.ts +0 -27
- package/dist/types/models/api/IDataSpaceConnectorListResponse.d.ts +0 -10
- package/dist/types/models/api/IFederatedCatalogueGetRequest.d.ts +0 -12
- package/dist/types/models/api/IParticipantGetResponse.d.ts +0 -10
- package/dist/types/models/api/IParticipantListRequest.d.ts +0 -31
- package/dist/types/models/api/IParticipantListResponse.d.ts +0 -10
- package/dist/types/models/api/IServiceOfferingGetResponse.d.ts +0 -10
- package/dist/types/models/api/IServiceOfferingListRequest.d.ts +0 -27
- package/dist/types/models/api/IServiceOfferingListResponse.d.ts +0 -10
- package/dist/types/models/data-resource/IDataResourceCredential.d.ts +0 -11
- package/dist/types/models/data-resource/IDataResourceEntry.d.ts +0 -29
- package/dist/types/models/data-resource/IDataResourceList.d.ts +0 -25
- package/dist/types/models/data-space-connector/IDataSpaceConnector.d.ts +0 -77
- package/dist/types/models/data-space-connector/IDataSpaceConnectorCredential.d.ts +0 -11
- package/dist/types/models/data-space-connector/IDataSpaceConnectorEntry.d.ts +0 -18
- package/dist/types/models/data-space-connector/IDataSpaceConnectorList.d.ts +0 -25
- package/dist/types/models/federatedCatalogueContextInstances.d.ts +0 -14
- package/dist/types/models/federatedCatalogueContextType.d.ts +0 -11
- package/dist/types/models/federatedCatalogueEntryType.d.ts +0 -7
- package/dist/types/models/federatedCatalogueTypes.d.ts +0 -53
- package/dist/types/models/participant/IParticipantCredential.d.ts +0 -11
- package/dist/types/models/participant/IParticipantEntry.d.ts +0 -12
- package/dist/types/models/participant/IParticipantList.d.ts +0 -25
- package/dist/types/models/service-offering/IServiceOfferingCredential.d.ts +0 -11
- package/dist/types/models/service-offering/IServiceOfferingEntry.d.ts +0 -25
- package/dist/types/models/service-offering/IServiceOfferingList.d.ts +0 -25
- package/dist/types/models/verificationFailureReasons.d.ts +0 -53
- package/docs/reference/classes/FederatedCatalogueContextInstances.md +0 -29
- package/docs/reference/classes/FederatedCatalogueDataTypes.md +0 -25
- package/docs/reference/interfaces/ICatalogueEntryGetRequest.md +0 -37
- package/docs/reference/interfaces/IComplianceCredential.md +0 -103
- package/docs/reference/interfaces/IComplianceEvidence.md +0 -45
- package/docs/reference/interfaces/ICompliancePresentationRequest.md +0 -11
- package/docs/reference/interfaces/IComplianceVerificationResult.md +0 -55
- package/docs/reference/interfaces/ICredential.md +0 -51
- package/docs/reference/interfaces/IDataResourceCredential.md +0 -43
- package/docs/reference/interfaces/IDataResourceEntry.md +0 -131
- package/docs/reference/interfaces/IDataResourceGetResponse.md +0 -11
- package/docs/reference/interfaces/IDataResourceList.md +0 -35
- package/docs/reference/interfaces/IDataResourceListRequest.md +0 -55
- package/docs/reference/interfaces/IDataResourceListResponse.md +0 -11
- package/docs/reference/interfaces/IDataSpaceConnector.md +0 -130
- package/docs/reference/interfaces/IDataSpaceConnectorCredential.md +0 -43
- package/docs/reference/interfaces/IDataSpaceConnectorEntry.md +0 -224
- package/docs/reference/interfaces/IDataSpaceConnectorGetResponse.md +0 -11
- package/docs/reference/interfaces/IDataSpaceConnectorList.md +0 -35
- package/docs/reference/interfaces/IDataSpaceConnectorListRequest.md +0 -55
- package/docs/reference/interfaces/IDataSpaceConnectorListResponse.md +0 -11
- package/docs/reference/interfaces/IFederatedCatalogueGetRequest.md +0 -23
- package/docs/reference/interfaces/IParticipantCredential.md +0 -43
- package/docs/reference/interfaces/IParticipantEntry.md +0 -83
- package/docs/reference/interfaces/IParticipantGetResponse.md +0 -11
- package/docs/reference/interfaces/IParticipantList.md +0 -35
- package/docs/reference/interfaces/IParticipantListRequest.md +0 -61
- package/docs/reference/interfaces/IParticipantListResponse.md +0 -11
- package/docs/reference/interfaces/IServiceOfferingCredential.md +0 -43
- package/docs/reference/interfaces/IServiceOfferingEntry.md +0 -119
- package/docs/reference/interfaces/IServiceOfferingGetResponse.md +0 -11
- package/docs/reference/interfaces/IServiceOfferingList.md +0 -35
- package/docs/reference/interfaces/IServiceOfferingListRequest.md +0 -55
- package/docs/reference/interfaces/IServiceOfferingListResponse.md +0 -11
- package/docs/reference/interfaces/IVerificationResult.md +0 -23
- package/docs/reference/type-aliases/FederatedCatalogueContextType.md +0 -5
- package/docs/reference/type-aliases/FederatedCatalogueEntryType.md +0 -5
- package/docs/reference/type-aliases/FederatedCatalogueTypes.md +0 -5
- package/docs/reference/type-aliases/ICatalogueEntry.md +0 -5
- package/docs/reference/type-aliases/VerificationFailureReasons.md +0 -5
- package/docs/reference/variables/FederatedCatalogueTypes.md +0 -73
- package/docs/reference/variables/VerificationFailureReasons.md +0 -73
package/docs/reference/index.md
CHANGED
|
@@ -1,58 +1,20 @@
|
|
|
1
1
|
# @twin.org/federated-catalogue-models
|
|
2
2
|
|
|
3
|
-
## Classes
|
|
4
|
-
|
|
5
|
-
- [FederatedCatalogueDataTypes](classes/FederatedCatalogueDataTypes.md)
|
|
6
|
-
- [FederatedCatalogueContextInstances](classes/FederatedCatalogueContextInstances.md)
|
|
7
|
-
|
|
8
3
|
## Interfaces
|
|
9
4
|
|
|
10
|
-
- [IComplianceCredential](interfaces/IComplianceCredential.md)
|
|
11
|
-
- [IComplianceEvidence](interfaces/IComplianceEvidence.md)
|
|
12
|
-
- [IComplianceVerificationResult](interfaces/IComplianceVerificationResult.md)
|
|
13
|
-
- [ICredential](interfaces/ICredential.md)
|
|
14
5
|
- [IFederatedCatalogueComponent](interfaces/IFederatedCatalogueComponent.md)
|
|
15
|
-
- [
|
|
16
|
-
- [
|
|
17
|
-
- [
|
|
18
|
-
- [
|
|
19
|
-
- [
|
|
20
|
-
- [
|
|
21
|
-
- [IDataSpaceConnectorGetResponse](interfaces/IDataSpaceConnectorGetResponse.md)
|
|
22
|
-
- [IDataSpaceConnectorListRequest](interfaces/IDataSpaceConnectorListRequest.md)
|
|
23
|
-
- [IDataSpaceConnectorListResponse](interfaces/IDataSpaceConnectorListResponse.md)
|
|
24
|
-
- [IFederatedCatalogueGetRequest](interfaces/IFederatedCatalogueGetRequest.md)
|
|
25
|
-
- [IParticipantGetResponse](interfaces/IParticipantGetResponse.md)
|
|
26
|
-
- [IParticipantListRequest](interfaces/IParticipantListRequest.md)
|
|
27
|
-
- [IParticipantListResponse](interfaces/IParticipantListResponse.md)
|
|
28
|
-
- [IServiceOfferingGetResponse](interfaces/IServiceOfferingGetResponse.md)
|
|
29
|
-
- [IServiceOfferingListRequest](interfaces/IServiceOfferingListRequest.md)
|
|
30
|
-
- [IServiceOfferingListResponse](interfaces/IServiceOfferingListResponse.md)
|
|
31
|
-
- [IDataResourceCredential](interfaces/IDataResourceCredential.md)
|
|
32
|
-
- [IDataResourceEntry](interfaces/IDataResourceEntry.md)
|
|
33
|
-
- [IDataResourceList](interfaces/IDataResourceList.md)
|
|
34
|
-
- [IDataSpaceConnector](interfaces/IDataSpaceConnector.md)
|
|
35
|
-
- [IDataSpaceConnectorCredential](interfaces/IDataSpaceConnectorCredential.md)
|
|
36
|
-
- [IDataSpaceConnectorEntry](interfaces/IDataSpaceConnectorEntry.md)
|
|
37
|
-
- [IDataSpaceConnectorList](interfaces/IDataSpaceConnectorList.md)
|
|
38
|
-
- [IParticipantCredential](interfaces/IParticipantCredential.md)
|
|
39
|
-
- [IParticipantEntry](interfaces/IParticipantEntry.md)
|
|
40
|
-
- [IParticipantList](interfaces/IParticipantList.md)
|
|
41
|
-
- [IServiceOfferingCredential](interfaces/IServiceOfferingCredential.md)
|
|
42
|
-
- [IServiceOfferingEntry](interfaces/IServiceOfferingEntry.md)
|
|
43
|
-
- [IServiceOfferingList](interfaces/IServiceOfferingList.md)
|
|
6
|
+
- [IFederatedCatalogueFilter](interfaces/IFederatedCatalogueFilter.md)
|
|
7
|
+
- [ICatalogRequestRequest](interfaces/ICatalogRequestRequest.md)
|
|
8
|
+
- [ICatalogRequestResponse](interfaces/ICatalogRequestResponse.md)
|
|
9
|
+
- [IGetDatasetRequest](interfaces/IGetDatasetRequest.md)
|
|
10
|
+
- [IGetDatasetResponse](interfaces/IGetDatasetResponse.md)
|
|
11
|
+
- [IBaseFilter](interfaces/IBaseFilter.md)
|
|
44
12
|
|
|
45
13
|
## Type Aliases
|
|
46
14
|
|
|
47
|
-
- [ICatalogueEntry](type-aliases/ICatalogueEntry.md)
|
|
48
|
-
- [FederatedCatalogueContextType](type-aliases/FederatedCatalogueContextType.md)
|
|
49
15
|
- [FederatedCatalogueContexts](type-aliases/FederatedCatalogueContexts.md)
|
|
50
|
-
- [FederatedCatalogueEntryType](type-aliases/FederatedCatalogueEntryType.md)
|
|
51
|
-
- [FederatedCatalogueTypes](type-aliases/FederatedCatalogueTypes.md)
|
|
52
|
-
- [VerificationFailureReasons](type-aliases/VerificationFailureReasons.md)
|
|
53
16
|
|
|
54
17
|
## Variables
|
|
55
18
|
|
|
19
|
+
- [FederatedCatalogueFilterFactory](variables/FederatedCatalogueFilterFactory.md)
|
|
56
20
|
- [FederatedCatalogueContexts](variables/FederatedCatalogueContexts.md)
|
|
57
|
-
- [FederatedCatalogueTypes](variables/FederatedCatalogueTypes.md)
|
|
58
|
-
- [VerificationFailureReasons](variables/VerificationFailureReasons.md)
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# Interface: IBaseFilter
|
|
2
|
+
|
|
3
|
+
Base filter interface with pagination support.
|
|
4
|
+
All filter objects in the federated catalogue extend this base.
|
|
5
|
+
|
|
6
|
+
Per Eclipse Dataspace Protocol constraints, cursor and limit cannot be
|
|
7
|
+
top-level properties in CatalogRequestMessage. They must be embedded
|
|
8
|
+
within the filter object using a custom JSON-LD vocabulary.
|
|
9
|
+
|
|
10
|
+
After JSON-LD compaction, properties use direct names (cursor, limit) rather
|
|
11
|
+
than prefixed names. Each filter implementation should extend this interface
|
|
12
|
+
to define its own filter-specific properties.
|
|
13
|
+
|
|
14
|
+
## Extends
|
|
15
|
+
|
|
16
|
+
- `IJsonLdNodeObject`
|
|
17
|
+
|
|
18
|
+
## Indexable
|
|
19
|
+
|
|
20
|
+
\[`key`: `string`\]: `string` \| `number` \| `boolean` \| `IJsonLdNodeObject` \| `IJsonLdGraphObject` \| `object` & `object` \| `object` & `object` \| `object` & `object` \| `IJsonLdListObject` \| `IJsonLdSetObject` \| `IJsonLdNodePrimitive`[] \| `IJsonLdLanguageMap` \| `IJsonLdIndexMap` \| `IJsonLdNodeObject`[] \| `IJsonLdIdMap` \| `IJsonLdTypeMap` \| `IJsonLdContextDefinition` \| `IJsonLdContextDefinitionElement`[] \| `string`[] \| `IJsonLdJsonObject` \| `IJsonLdJsonObject`[] \| \{\[`key`: `string`\]: `string`; \} \| `null` \| `undefined`
|
|
21
|
+
|
|
22
|
+
## Properties
|
|
23
|
+
|
|
24
|
+
### @type
|
|
25
|
+
|
|
26
|
+
> **@type**: `string`
|
|
27
|
+
|
|
28
|
+
Filter type discriminator.
|
|
29
|
+
Used to route filter to appropriate filter implementation.
|
|
30
|
+
Example: "FilterByExample", "FilterByPolicy", etc.
|
|
31
|
+
Required for filter routing.
|
|
32
|
+
|
|
33
|
+
#### Overrides
|
|
34
|
+
|
|
35
|
+
`IJsonLdNodeObject.@type`
|
|
36
|
+
|
|
37
|
+
***
|
|
38
|
+
|
|
39
|
+
### cursor?
|
|
40
|
+
|
|
41
|
+
> `optional` **cursor**: `string`
|
|
42
|
+
|
|
43
|
+
Optional cursor for pagination.
|
|
44
|
+
When provided, returns results starting after this cursor.
|
|
45
|
+
Namespace: https://schema.twindev.org/federated-catalogue/cursor
|
|
46
|
+
|
|
47
|
+
***
|
|
48
|
+
|
|
49
|
+
### limit?
|
|
50
|
+
|
|
51
|
+
> `optional` **limit**: `number`
|
|
52
|
+
|
|
53
|
+
Optional limit for number of results.
|
|
54
|
+
Defaults to implementation-specific value if not provided.
|
|
55
|
+
Namespace: https://schema.twindev.org/federated-catalogue/limit
|
|
@@ -1,321 +1,110 @@
|
|
|
1
1
|
# Interface: IFederatedCatalogueComponent
|
|
2
2
|
|
|
3
|
-
Interface describing a
|
|
3
|
+
Interface describing a federated catalogue component.
|
|
4
|
+
Provides Dataspace Protocol-compliant catalog endpoints for dataset registry and query.
|
|
4
5
|
|
|
5
6
|
## Extends
|
|
6
7
|
|
|
7
8
|
- `IComponent`
|
|
8
9
|
|
|
9
|
-
## Indexable
|
|
10
|
-
|
|
11
|
-
\[`key`: `string`\]: `any`
|
|
12
|
-
|
|
13
|
-
All methods are optional, so we introduce an index signature to allow
|
|
14
|
-
any additional properties or methods, which removes the TypeScript error where
|
|
15
|
-
the class has no properties in common with the type.
|
|
16
|
-
|
|
17
10
|
## Methods
|
|
18
11
|
|
|
19
|
-
###
|
|
20
|
-
|
|
21
|
-
> **registerComplianceCredential**(`credential`): `Promise`\<`string`\>
|
|
22
|
-
|
|
23
|
-
Registers a Participant's compliance Credential to the service.
|
|
24
|
-
|
|
25
|
-
#### Parameters
|
|
26
|
-
|
|
27
|
-
##### credential
|
|
28
|
-
|
|
29
|
-
`string`
|
|
30
|
-
|
|
31
|
-
The credential as JWT.
|
|
32
|
-
|
|
33
|
-
#### Returns
|
|
34
|
-
|
|
35
|
-
`Promise`\<`string`\>
|
|
36
|
-
|
|
37
|
-
The participant Id (usually a DID).
|
|
38
|
-
|
|
39
|
-
***
|
|
40
|
-
|
|
41
|
-
### queryParticipants()
|
|
42
|
-
|
|
43
|
-
> **queryParticipants**(`participant?`, `legalRegistrationNumber?`, `lrnType?`, `cursor?`, `limit?`): `Promise`\<[`IParticipantList`](IParticipantList.md)\>
|
|
44
|
-
|
|
45
|
-
Query the federated catalogue.
|
|
46
|
-
|
|
47
|
-
#### Parameters
|
|
48
|
-
|
|
49
|
-
##### participant?
|
|
50
|
-
|
|
51
|
-
`string`
|
|
52
|
-
|
|
53
|
-
The identity of the participant.
|
|
54
|
-
|
|
55
|
-
##### legalRegistrationNumber?
|
|
56
|
-
|
|
57
|
-
`string`
|
|
58
|
-
|
|
59
|
-
The legal registration number.
|
|
60
|
-
|
|
61
|
-
##### lrnType?
|
|
62
|
-
|
|
63
|
-
`string`
|
|
64
|
-
|
|
65
|
-
The legal registration number type (EORI, VATID, GLEIF, Kenya's PIN, etc.)
|
|
66
|
-
|
|
67
|
-
##### cursor?
|
|
12
|
+
### get()
|
|
68
13
|
|
|
69
|
-
`
|
|
70
|
-
|
|
71
|
-
The cursor to request the next chunk of entities.
|
|
72
|
-
|
|
73
|
-
##### limit?
|
|
74
|
-
|
|
75
|
-
`number`
|
|
76
|
-
|
|
77
|
-
Limit the number of entities to return.
|
|
78
|
-
|
|
79
|
-
#### Returns
|
|
80
|
-
|
|
81
|
-
`Promise`\<[`IParticipantList`](IParticipantList.md)\>
|
|
82
|
-
|
|
83
|
-
All the entities for the storage matching the conditions,
|
|
84
|
-
and a cursor which can be used to request more entities.
|
|
14
|
+
> **get**(`dataSetId`): `Promise`\<`IDataset`\>
|
|
85
15
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
NotImplementedError if the implementation does not support retrieval.
|
|
89
|
-
|
|
90
|
-
***
|
|
91
|
-
|
|
92
|
-
### registerDataSpaceConnectorCredential()
|
|
93
|
-
|
|
94
|
-
> **registerDataSpaceConnectorCredential**(`credential`): `Promise`\<`string`\>
|
|
95
|
-
|
|
96
|
-
Registers a Data Space Connector to the service.
|
|
16
|
+
Retrieve a dataset by its unique identifier.
|
|
97
17
|
|
|
98
18
|
#### Parameters
|
|
99
19
|
|
|
100
|
-
#####
|
|
101
|
-
|
|
102
|
-
`string`
|
|
103
|
-
|
|
104
|
-
The credential as JWT.
|
|
105
|
-
|
|
106
|
-
#### Returns
|
|
107
|
-
|
|
108
|
-
`Promise`\<`string`\>
|
|
109
|
-
|
|
110
|
-
The Data Space Connector Id registered.
|
|
111
|
-
|
|
112
|
-
***
|
|
113
|
-
|
|
114
|
-
### queryDataSpaceConnectors()
|
|
115
|
-
|
|
116
|
-
> **queryDataSpaceConnectors**(`id?`, `maintainer?`, `cursor?`, `limit?`): `Promise`\<[`IDataSpaceConnectorList`](IDataSpaceConnectorList.md)\>
|
|
117
|
-
|
|
118
|
-
Query the federated catalogue.
|
|
119
|
-
|
|
120
|
-
#### Parameters
|
|
121
|
-
|
|
122
|
-
##### id?
|
|
123
|
-
|
|
124
|
-
`string`
|
|
125
|
-
|
|
126
|
-
Data Space Connector Id.
|
|
127
|
-
|
|
128
|
-
##### maintainer?
|
|
20
|
+
##### dataSetId
|
|
129
21
|
|
|
130
22
|
`string`
|
|
131
23
|
|
|
132
|
-
The
|
|
133
|
-
|
|
134
|
-
##### cursor?
|
|
135
|
-
|
|
136
|
-
`string`
|
|
137
|
-
|
|
138
|
-
The cursor to request the next chunk of entities.
|
|
139
|
-
|
|
140
|
-
##### limit?
|
|
141
|
-
|
|
142
|
-
`number`
|
|
143
|
-
|
|
144
|
-
Limit the number of entities to return.
|
|
24
|
+
The unique identifier of the dataset.
|
|
145
25
|
|
|
146
26
|
#### Returns
|
|
147
27
|
|
|
148
|
-
`Promise
|
|
28
|
+
`Promise`\<`IDataset`\>
|
|
149
29
|
|
|
150
|
-
|
|
151
|
-
and a cursor which can be used to request more entities.
|
|
30
|
+
The dataset if found.
|
|
152
31
|
|
|
153
32
|
#### Throws
|
|
154
33
|
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
***
|
|
158
|
-
|
|
159
|
-
### registerServiceOfferingCredential()
|
|
160
|
-
|
|
161
|
-
> **registerServiceOfferingCredential**(`credential`): `Promise`\<`string`[]\>
|
|
162
|
-
|
|
163
|
-
Registers a service offering Credential to the service.
|
|
164
|
-
|
|
165
|
-
#### Parameters
|
|
166
|
-
|
|
167
|
-
##### credential
|
|
168
|
-
|
|
169
|
-
`string`
|
|
170
|
-
|
|
171
|
-
The credential as JWT.
|
|
172
|
-
|
|
173
|
-
#### Returns
|
|
174
|
-
|
|
175
|
-
`Promise`\<`string`[]\>
|
|
176
|
-
|
|
177
|
-
The Id of the Service Offerings registered.
|
|
178
|
-
|
|
179
|
-
***
|
|
180
|
-
|
|
181
|
-
### registerDataResourceCredential()
|
|
182
|
-
|
|
183
|
-
> **registerDataResourceCredential**(`credential`): `Promise`\<`string`[]\>
|
|
184
|
-
|
|
185
|
-
Registers a data resource Credential to the service.
|
|
186
|
-
|
|
187
|
-
#### Parameters
|
|
188
|
-
|
|
189
|
-
##### credential
|
|
190
|
-
|
|
191
|
-
`string`
|
|
192
|
-
|
|
193
|
-
The credential as JWT.
|
|
194
|
-
|
|
195
|
-
#### Returns
|
|
196
|
-
|
|
197
|
-
`Promise`\<`string`[]\>
|
|
198
|
-
|
|
199
|
-
The Id of the Data Resources registered.
|
|
34
|
+
NotFoundError if the dataset does not exist.
|
|
200
35
|
|
|
201
36
|
***
|
|
202
37
|
|
|
203
|
-
###
|
|
38
|
+
### set()
|
|
204
39
|
|
|
205
|
-
> **
|
|
40
|
+
> **set**(`dataSet`): `Promise`\<`void`\>
|
|
206
41
|
|
|
207
|
-
|
|
42
|
+
Insert or update a dataset in the catalogue.
|
|
43
|
+
This method is internal and should not be exposed via REST endpoints.
|
|
208
44
|
|
|
209
45
|
#### Parameters
|
|
210
46
|
|
|
211
|
-
#####
|
|
212
|
-
|
|
213
|
-
`string`
|
|
214
|
-
|
|
215
|
-
Service Offering id.
|
|
216
|
-
|
|
217
|
-
##### providedBy?
|
|
218
|
-
|
|
219
|
-
`string`
|
|
220
|
-
|
|
221
|
-
The identity of the participant providing the Offering.
|
|
47
|
+
##### dataSet
|
|
222
48
|
|
|
223
|
-
|
|
49
|
+
`IDataset`
|
|
224
50
|
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
The cursor to request the next chunk of entities.
|
|
228
|
-
|
|
229
|
-
##### limit?
|
|
230
|
-
|
|
231
|
-
`number`
|
|
232
|
-
|
|
233
|
-
Limit the number of entities to return.
|
|
51
|
+
The dataset to store.
|
|
234
52
|
|
|
235
53
|
#### Returns
|
|
236
54
|
|
|
237
|
-
`Promise
|
|
55
|
+
`Promise`\<`void`\>
|
|
238
56
|
|
|
239
|
-
|
|
240
|
-
and a cursor which can be used to request more entities.
|
|
241
|
-
|
|
242
|
-
#### Throws
|
|
243
|
-
|
|
244
|
-
NotImplementedError if the implementation does not support retrieval.
|
|
57
|
+
Nothing.
|
|
245
58
|
|
|
246
59
|
***
|
|
247
60
|
|
|
248
|
-
###
|
|
61
|
+
### query()
|
|
249
62
|
|
|
250
|
-
> **
|
|
63
|
+
> **query**(`filter?`): `Promise`\<`ICatalog`\>
|
|
251
64
|
|
|
252
|
-
|
|
65
|
+
Execute a query against the catalogue using registered filter plugins.
|
|
66
|
+
Returns a complete DCAT Catalog object with proper JSON-LD context, metadata, and datasets.
|
|
67
|
+
Filter plugins must be registered in FilterFactory before service initialization.
|
|
68
|
+
The filter payload is evaluated by the appropriate filter plugin based on its structure.
|
|
69
|
+
Pagination properties (cursor, limit) and filter type (@type) should be included
|
|
70
|
+
within the filter object per Eclipse Dataspace Protocol JSON-LD extension patterns.
|
|
253
71
|
|
|
254
72
|
#### Parameters
|
|
255
73
|
|
|
256
|
-
#####
|
|
74
|
+
##### filter?
|
|
257
75
|
|
|
258
|
-
`
|
|
76
|
+
`unknown`[]
|
|
259
77
|
|
|
260
|
-
The
|
|
261
|
-
|
|
262
|
-
##### producedBy?
|
|
263
|
-
|
|
264
|
-
`string`
|
|
265
|
-
|
|
266
|
-
The identity of the participant producing the data behind the data resource.
|
|
267
|
-
|
|
268
|
-
##### cursor?
|
|
269
|
-
|
|
270
|
-
`string`
|
|
271
|
-
|
|
272
|
-
The cursor to request the next chunk of entities.
|
|
273
|
-
|
|
274
|
-
##### limit?
|
|
275
|
-
|
|
276
|
-
`number`
|
|
277
|
-
|
|
278
|
-
Limit the number of entities to return.
|
|
78
|
+
The filter criteria containing @type, optional cursor and limit properties.
|
|
279
79
|
|
|
280
80
|
#### Returns
|
|
281
81
|
|
|
282
|
-
`Promise
|
|
82
|
+
`Promise`\<`ICatalog`\>
|
|
283
83
|
|
|
284
|
-
|
|
285
|
-
and a cursor which can be used to request more entities.
|
|
84
|
+
Complete ICatalog object with @context, @id, @type, dcat:dataset, and optional cursor.
|
|
286
85
|
|
|
287
86
|
#### Throws
|
|
288
87
|
|
|
289
|
-
|
|
88
|
+
NotFoundError if the
|
|
290
89
|
|
|
291
90
|
***
|
|
292
91
|
|
|
293
|
-
###
|
|
92
|
+
### remove()
|
|
294
93
|
|
|
295
|
-
> **
|
|
94
|
+
> **remove**(`dataSetId`): `Promise`\<`void`\>
|
|
296
95
|
|
|
297
|
-
|
|
96
|
+
Remove a dataset from the catalogue by its unique identifier.
|
|
298
97
|
|
|
299
98
|
#### Parameters
|
|
300
99
|
|
|
301
|
-
#####
|
|
302
|
-
|
|
303
|
-
[`FederatedCatalogueEntryType`](../type-aliases/FederatedCatalogueEntryType.md)
|
|
304
|
-
|
|
305
|
-
The type of entry.
|
|
306
|
-
|
|
307
|
-
##### entryId
|
|
100
|
+
##### dataSetId
|
|
308
101
|
|
|
309
102
|
`string`
|
|
310
103
|
|
|
311
|
-
The
|
|
104
|
+
The unique identifier of the dataset to remove.
|
|
312
105
|
|
|
313
106
|
#### Returns
|
|
314
107
|
|
|
315
|
-
`Promise
|
|
316
|
-
|
|
317
|
-
Catalogue Entry
|
|
318
|
-
|
|
319
|
-
#### Throws
|
|
108
|
+
`Promise`\<`void`\>
|
|
320
109
|
|
|
321
|
-
|
|
110
|
+
Nothing.
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# Interface: IFederatedCatalogueFilter
|
|
2
|
+
|
|
3
|
+
Interface describing a filter plugin for the federated catalogue.
|
|
4
|
+
Filter plugins provide extensible query semantics and indexing strategies.
|
|
5
|
+
Filters are registered by name in the FilterFactory and do not need to self-identify.
|
|
6
|
+
|
|
7
|
+
## Extends
|
|
8
|
+
|
|
9
|
+
- `IComponent`
|
|
10
|
+
|
|
11
|
+
## Methods
|
|
12
|
+
|
|
13
|
+
### query()
|
|
14
|
+
|
|
15
|
+
> **query**(`filter`): `Promise`\<\{ `datasets`: `IDataset`[]; `cursor?`: `string`; \}\>
|
|
16
|
+
|
|
17
|
+
Execute a filter-specific query over the catalogue.
|
|
18
|
+
Each filter interprets the payload according to its own semantics.
|
|
19
|
+
Pagination properties (cursor, limit) are extracted from the filter object by the service layer.
|
|
20
|
+
|
|
21
|
+
#### Parameters
|
|
22
|
+
|
|
23
|
+
##### filter
|
|
24
|
+
|
|
25
|
+
`unknown`
|
|
26
|
+
|
|
27
|
+
The filter criteria (structure depends on the filter implementation).
|
|
28
|
+
|
|
29
|
+
#### Returns
|
|
30
|
+
|
|
31
|
+
`Promise`\<\{ `datasets`: `IDataset`[]; `cursor?`: `string`; \}\>
|
|
32
|
+
|
|
33
|
+
Object containing datasets matching the filter criteria and optional cursor for next page.
|
|
34
|
+
|
|
35
|
+
***
|
|
36
|
+
|
|
37
|
+
### createIndex()
|
|
38
|
+
|
|
39
|
+
> **createIndex**(`dataSet`): `Promise`\<\{\[`key`: `string`\]: `unknown`; \}\>
|
|
40
|
+
|
|
41
|
+
Generate filter indexes for a dataset to optimize future queries.
|
|
42
|
+
Indexes are stored as properties on the dataset entity itself.
|
|
43
|
+
|
|
44
|
+
#### Parameters
|
|
45
|
+
|
|
46
|
+
##### dataSet
|
|
47
|
+
|
|
48
|
+
`IDataset`
|
|
49
|
+
|
|
50
|
+
The dataset to index.
|
|
51
|
+
|
|
52
|
+
#### Returns
|
|
53
|
+
|
|
54
|
+
`Promise`\<\{\[`key`: `string`\]: `unknown`; \}\>
|
|
55
|
+
|
|
56
|
+
Record mapping filter-specific index keys to values.
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# Interface: IGetDatasetRequest
|
|
2
|
+
|
|
3
|
+
The request parameters for the get dataset method.
|
|
4
|
+
|
|
5
|
+
## Properties
|
|
6
|
+
|
|
7
|
+
### pathParams
|
|
8
|
+
|
|
9
|
+
> **pathParams**: `object`
|
|
10
|
+
|
|
11
|
+
The path parameters.
|
|
12
|
+
|
|
13
|
+
#### datasetId
|
|
14
|
+
|
|
15
|
+
> **datasetId**: `string`
|
|
16
|
+
|
|
17
|
+
The unique identifier of the dataset.
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
|
|
3
3
|
> **FederatedCatalogueContexts** = *typeof* [`FederatedCatalogueContexts`](../variables/FederatedCatalogueContexts.md)\[keyof *typeof* [`FederatedCatalogueContexts`](../variables/FederatedCatalogueContexts.md)\]
|
|
4
4
|
|
|
5
|
-
The
|
|
5
|
+
The contexts of federated catalogue data.
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
# Variable: FederatedCatalogueFilterFactory
|
|
2
|
+
|
|
3
|
+
> `const` **FederatedCatalogueFilterFactory**: `Factory`\<[`IFederatedCatalogueFilter`](../interfaces/IFederatedCatalogueFilter.md)\>
|
|
4
|
+
|
|
5
|
+
Factory for managing filter plugin registration and retrieval.
|
|
6
|
+
Follows the TWIN Platform factory pattern used by ComponentFactory and EntityStorageConnectorFactory.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@twin.org/federated-catalogue-models",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.3-next.2",
|
|
4
4
|
"description": "Models which define the structure of the Federated Catalogue Service",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -19,25 +19,21 @@
|
|
|
19
19
|
"@twin.org/data-json-ld": "next",
|
|
20
20
|
"@twin.org/entity": "next",
|
|
21
21
|
"@twin.org/nameof": "next",
|
|
22
|
-
"@twin.org/standards-
|
|
23
|
-
"@twin.org/standards-
|
|
24
|
-
"@twin.org/standards-w3c-did": "next",
|
|
25
|
-
"@twin.org/standards-w3c-odrl": "next"
|
|
22
|
+
"@twin.org/standards-dataspace-protocol": "next",
|
|
23
|
+
"@twin.org/standards-w3c-dcat": "next"
|
|
26
24
|
},
|
|
27
|
-
"main": "./dist/
|
|
28
|
-
"module": "./dist/esm/index.mjs",
|
|
25
|
+
"main": "./dist/es/index.js",
|
|
29
26
|
"types": "./dist/types/index.d.ts",
|
|
30
27
|
"exports": {
|
|
31
28
|
".": {
|
|
32
29
|
"types": "./dist/types/index.d.ts",
|
|
33
|
-
"
|
|
34
|
-
"
|
|
30
|
+
"import": "./dist/es/index.js",
|
|
31
|
+
"default": "./dist/es/index.js"
|
|
35
32
|
},
|
|
36
33
|
"./locales/*.json": "./locales/*.json"
|
|
37
34
|
},
|
|
38
35
|
"files": [
|
|
39
|
-
"dist/
|
|
40
|
-
"dist/esm",
|
|
36
|
+
"dist/es",
|
|
41
37
|
"dist/types",
|
|
42
38
|
"locales",
|
|
43
39
|
"docs"
|