@twin.org/standards-dataspace-protocol 0.0.3-next.46 → 0.0.3-next.48
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/dataTypes/catalogDataTypes.js +15 -0
- package/dist/es/dataTypes/catalogDataTypes.js.map +1 -1
- package/dist/es/index.js +9 -6
- package/dist/es/index.js.map +1 -1
- package/dist/es/models/catalog/dataspaceProtocolCatalogTypes.js +9 -1
- package/dist/es/models/catalog/dataspaceProtocolCatalogTypes.js.map +1 -1
- package/dist/es/models/contractNegotiation/IDataspaceProtocolContractAgreementMessage.js.map +1 -1
- package/dist/es/models/contractNegotiation/IDataspaceProtocolContractOfferMessage.js.map +1 -1
- package/dist/es/models/contractNegotiation/IDataspaceProtocolContractRequestMessage.js.map +1 -1
- package/dist/es/models/dcat3/IDataspaceProtocolCatalog.js.map +1 -0
- package/dist/es/models/dcat3/IDataspaceProtocolDataService.js.map +1 -0
- package/dist/es/models/dcat3/IDataspaceProtocolDataset.js.map +1 -0
- package/dist/es/models/dcat3/IDataspaceProtocolDistribution.js.map +1 -0
- package/dist/es/models/odrl/IDataspaceProtocolAgreement.js +2 -0
- package/dist/es/models/odrl/IDataspaceProtocolAgreement.js.map +1 -0
- package/dist/es/models/odrl/IDataspaceProtocolOffer.js.map +1 -0
- package/dist/es/schemas/DataspaceProtocolAgreement.json +179 -0
- package/dist/es/schemas/DataspaceProtocolContractAgreementMessage.json +1 -1
- package/dist/es/schemas/DataspaceProtocolContractOfferMessage.json +1 -1
- package/dist/es/schemas/DataspaceProtocolContractRequestMessage.json +1 -1
- package/dist/es/schemas/DataspaceProtocolOffer.json +197 -0
- package/dist/types/index.d.ts +7 -6
- package/dist/types/models/catalog/dataspaceProtocolCatalogTypes.d.ts +8 -0
- package/dist/types/models/contractNegotiation/IDataspaceProtocolContractAgreementMessage.d.ts +3 -3
- package/dist/types/models/contractNegotiation/IDataspaceProtocolContractOfferMessage.d.ts +2 -2
- package/dist/types/models/contractNegotiation/IDataspaceProtocolContractRequestMessage.d.ts +2 -2
- package/dist/types/models/{catalog → dcat3}/IDataspaceProtocolCatalog.d.ts +6 -5
- package/dist/types/models/{catalog → dcat3}/IDataspaceProtocolDataService.d.ts +3 -2
- package/dist/types/models/{catalog → dcat3}/IDataspaceProtocolDataset.d.ts +4 -3
- package/dist/types/models/{catalog → dcat3}/IDataspaceProtocolDistribution.d.ts +4 -3
- package/dist/types/models/odrl/IDataspaceProtocolAgreement.d.ts +17 -0
- package/dist/types/models/{catalog → odrl}/IDataspaceProtocolOffer.d.ts +0 -5
- package/docs/changelog.md +34 -0
- package/docs/reference/index.md +6 -5
- package/docs/reference/interfaces/IDataspaceProtocolAgreement.md +166 -0
- package/docs/reference/interfaces/IDataspaceProtocolCatalog.md +4 -4
- package/docs/reference/interfaces/IDataspaceProtocolContractAgreementMessage.md +1 -1
- package/docs/reference/interfaces/IDataspaceProtocolContractOfferMessage.md +1 -1
- package/docs/reference/interfaces/IDataspaceProtocolContractRequestMessage.md +1 -1
- package/docs/reference/interfaces/IDataspaceProtocolDataService.md +1 -1
- package/docs/reference/interfaces/IDataspaceProtocolDataset.md +1 -1
- package/docs/reference/interfaces/IDataspaceProtocolDistribution.md +1 -1
- package/docs/reference/interfaces/IDataspaceProtocolOffer.md +0 -9
- package/docs/reference/variables/DataspaceProtocolCatalogTypes.md +12 -0
- package/package.json +3 -3
- package/dist/es/models/catalog/IDataspaceProtocolCatalog.js.map +0 -1
- package/dist/es/models/catalog/IDataspaceProtocolDataService.js.map +0 -1
- package/dist/es/models/catalog/IDataspaceProtocolDataset.js.map +0 -1
- package/dist/es/models/catalog/IDataspaceProtocolDistribution.js.map +0 -1
- package/dist/es/models/catalog/IDataspaceProtocolOffer.js.map +0 -1
- /package/dist/es/models/{catalog → dcat3}/IDataspaceProtocolCatalog.js +0 -0
- /package/dist/es/models/{catalog → dcat3}/IDataspaceProtocolDataService.js +0 -0
- /package/dist/es/models/{catalog → dcat3}/IDataspaceProtocolDataset.js +0 -0
- /package/dist/es/models/{catalog → dcat3}/IDataspaceProtocolDistribution.js +0 -0
- /package/dist/es/models/{catalog → odrl}/IDataspaceProtocolOffer.js +0 -0
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://schema.twindev.org/dataspace-protocol/DataspaceProtocolOffer",
|
|
4
|
+
"description": "Offer interface compliant with Eclipse Data Space Protocol.\n\nExtends IOdrlOffer with DS Protocol-specific constraints:\n- `@id` is REQUIRED (used as the primary offer identifier in DS Protocol)\n- `@context` is omitted (inherited from the parent Dataset/Distribution)",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"@type": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"const": "Offer",
|
|
10
|
+
"description": "The type must be \"Offer\"."
|
|
11
|
+
},
|
|
12
|
+
"assigner": {
|
|
13
|
+
"anyOf": [
|
|
14
|
+
{
|
|
15
|
+
"type": "string"
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/OdrlParty"
|
|
19
|
+
}
|
|
20
|
+
],
|
|
21
|
+
"description": "The assigner of the offer. Required for Offer policies."
|
|
22
|
+
},
|
|
23
|
+
"profile": {
|
|
24
|
+
"anyOf": [
|
|
25
|
+
{
|
|
26
|
+
"type": "string"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"type": "array",
|
|
30
|
+
"items": {
|
|
31
|
+
"type": "string"
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
],
|
|
35
|
+
"description": "The profile(s) this policy conforms to. IRIs identifying the ODRL Profile(s)."
|
|
36
|
+
},
|
|
37
|
+
"assignee": {
|
|
38
|
+
"anyOf": [
|
|
39
|
+
{
|
|
40
|
+
"type": "string"
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/OdrlParty"
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/OdrlPartyCollection"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"type": "array",
|
|
50
|
+
"items": {
|
|
51
|
+
"anyOf": [
|
|
52
|
+
{
|
|
53
|
+
"type": "string"
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/OdrlParty"
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/OdrlPartyCollection"
|
|
60
|
+
}
|
|
61
|
+
]
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
],
|
|
65
|
+
"description": "The assignee of the policy. Applies to all rules unless overridden at rule level."
|
|
66
|
+
},
|
|
67
|
+
"target": {
|
|
68
|
+
"anyOf": [
|
|
69
|
+
{
|
|
70
|
+
"type": "string"
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/OdrlAsset"
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/OdrlAssetCollection"
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
"type": "array",
|
|
80
|
+
"items": {
|
|
81
|
+
"anyOf": [
|
|
82
|
+
{
|
|
83
|
+
"type": "string"
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/OdrlAsset"
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/OdrlAssetCollection"
|
|
90
|
+
}
|
|
91
|
+
]
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
],
|
|
95
|
+
"description": "The target asset for the rule."
|
|
96
|
+
},
|
|
97
|
+
"action": {
|
|
98
|
+
"anyOf": [
|
|
99
|
+
{
|
|
100
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/ActionType"
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
"type": "string"
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/OdrlAction"
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
"type": "array",
|
|
110
|
+
"items": {
|
|
111
|
+
"anyOf": [
|
|
112
|
+
{
|
|
113
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/ActionType"
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
"type": "string"
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/OdrlAction"
|
|
120
|
+
}
|
|
121
|
+
]
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
],
|
|
125
|
+
"description": "The action associated with the rule."
|
|
126
|
+
},
|
|
127
|
+
"inheritFrom": {
|
|
128
|
+
"anyOf": [
|
|
129
|
+
{
|
|
130
|
+
"type": "string"
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
"type": "array",
|
|
134
|
+
"items": {
|
|
135
|
+
"type": "string"
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
],
|
|
139
|
+
"description": "The parent policy(ies) this policy inherits from. IRIs identifying the parent Policy(ies)."
|
|
140
|
+
},
|
|
141
|
+
"conflict": {
|
|
142
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/ConflictStrategyType",
|
|
143
|
+
"description": "The conflict resolution strategy.\n- perm: Permissions override Prohibitions\n- prohibit: Prohibitions override Permissions\n- invalid: Policy is void if conflicts exist (default)"
|
|
144
|
+
},
|
|
145
|
+
"permission": {
|
|
146
|
+
"anyOf": [
|
|
147
|
+
{
|
|
148
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/OdrlPermission"
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
"type": "array",
|
|
152
|
+
"items": {
|
|
153
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/OdrlPermission"
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
],
|
|
157
|
+
"description": "The permissions in the policy. At least one of permission, prohibition, or obligation must be present."
|
|
158
|
+
},
|
|
159
|
+
"prohibition": {
|
|
160
|
+
"anyOf": [
|
|
161
|
+
{
|
|
162
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/OdrlProhibition"
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
"type": "array",
|
|
166
|
+
"items": {
|
|
167
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/OdrlProhibition"
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
],
|
|
171
|
+
"description": "The prohibitions in the policy. At least one of permission, prohibition, or obligation must be present."
|
|
172
|
+
},
|
|
173
|
+
"obligation": {
|
|
174
|
+
"anyOf": [
|
|
175
|
+
{
|
|
176
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/OdrlDuty"
|
|
177
|
+
},
|
|
178
|
+
{
|
|
179
|
+
"type": "array",
|
|
180
|
+
"items": {
|
|
181
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/OdrlDuty"
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
],
|
|
185
|
+
"description": "The obligations in the policy. At least one of permission, prohibition, or obligation must be present."
|
|
186
|
+
},
|
|
187
|
+
"@id": {
|
|
188
|
+
"type": "string",
|
|
189
|
+
"description": "Unique identifier for the offer."
|
|
190
|
+
}
|
|
191
|
+
},
|
|
192
|
+
"required": [
|
|
193
|
+
"@id",
|
|
194
|
+
"@type",
|
|
195
|
+
"assigner"
|
|
196
|
+
]
|
|
197
|
+
}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
export * from "./models/dataspaceProtocolContexts.js";
|
|
2
2
|
export * from "./models/dataspaceProtocolContextType.js";
|
|
3
3
|
export * from "./dataTypes/dataspaceProtocolDataTypes.js";
|
|
4
|
+
export * from "./dataTypes/catalogDataTypes.js";
|
|
4
5
|
export * from "./models/catalog/dataspaceProtocolCatalogTypes.js";
|
|
5
6
|
export * from "./models/catalog/IDataspaceProtocolCatalogError.js";
|
|
6
7
|
export * from "./models/catalog/IDataspaceProtocolCatalogRequestMessage.js";
|
|
7
8
|
export * from "./models/catalog/IDataspaceProtocolDatasetRequestMessage.js";
|
|
8
|
-
export * from "./models/
|
|
9
|
-
export * from "./models/
|
|
10
|
-
export * from "./models/
|
|
11
|
-
export * from "./models/
|
|
12
|
-
export * from "./models/
|
|
13
|
-
export * from "./
|
|
9
|
+
export * from "./models/dcat3/IDataspaceProtocolDataset.js";
|
|
10
|
+
export * from "./models/dcat3/IDataspaceProtocolCatalog.js";
|
|
11
|
+
export * from "./models/dcat3/IDataspaceProtocolDistribution.js";
|
|
12
|
+
export * from "./models/dcat3/IDataspaceProtocolDataService.js";
|
|
13
|
+
export * from "./models/odrl/IDataspaceProtocolAgreement.js";
|
|
14
|
+
export * from "./models/odrl/IDataspaceProtocolOffer.js";
|
|
14
15
|
export * from "./models/contractNegotiation/dataspaceProtocolContractNegotiationTypes.js";
|
|
15
16
|
export * from "./models/contractNegotiation/IDataspaceProtocolContractAgreementMessage.js";
|
|
16
17
|
export * from "./models/contractNegotiation/IDataspaceProtocolContractAgreementVerificationMessage.js";
|
|
@@ -31,6 +31,14 @@ export declare const DataspaceProtocolCatalogTypes: {
|
|
|
31
31
|
* Catalog.
|
|
32
32
|
*/
|
|
33
33
|
readonly Catalog: "Catalog";
|
|
34
|
+
/**
|
|
35
|
+
* Offer.
|
|
36
|
+
*/
|
|
37
|
+
readonly Offer: "Offer";
|
|
38
|
+
/**
|
|
39
|
+
* Agreement.
|
|
40
|
+
*/
|
|
41
|
+
readonly Agreement: "Agreement";
|
|
34
42
|
};
|
|
35
43
|
/**
|
|
36
44
|
* The types for Dataspace Protocol Catalog Protocol.
|
package/dist/types/models/contractNegotiation/IDataspaceProtocolContractAgreementMessage.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { IOdrlAgreement } from "@twin.org/standards-w3c-odrl";
|
|
2
|
-
import type { DataspaceProtocolContractNegotiationTypes } from "./dataspaceProtocolContractNegotiationTypes.js";
|
|
3
1
|
import type { DataspaceProtocolContextType } from "../dataspaceProtocolContextType.js";
|
|
2
|
+
import type { DataspaceProtocolContractNegotiationTypes } from "./dataspaceProtocolContractNegotiationTypes.js";
|
|
3
|
+
import type { IDataspaceProtocolAgreement } from "../odrl/IDataspaceProtocolAgreement.js";
|
|
4
4
|
/**
|
|
5
5
|
* Interface for Dataspace Protocol Contract Agreement Messages.
|
|
6
6
|
* https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1/#contract-agreement-message
|
|
@@ -25,7 +25,7 @@ export interface IDataspaceProtocolContractAgreementMessage {
|
|
|
25
25
|
/**
|
|
26
26
|
* The agreement being sent.
|
|
27
27
|
*/
|
|
28
|
-
agreement:
|
|
28
|
+
agreement: IDataspaceProtocolAgreement;
|
|
29
29
|
/**
|
|
30
30
|
* The base callback address for the provider to update the consumer on the state of the negotiation.
|
|
31
31
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { IOdrlOffer } from "@twin.org/standards-w3c-odrl";
|
|
2
1
|
import type { DataspaceProtocolContextType } from "../dataspaceProtocolContextType.js";
|
|
3
2
|
import type { DataspaceProtocolContractNegotiationTypes } from "./dataspaceProtocolContractNegotiationTypes.js";
|
|
3
|
+
import type { IDataspaceProtocolOffer } from "../odrl/IDataspaceProtocolOffer.js";
|
|
4
4
|
/**
|
|
5
5
|
* Interface for Dataspace Protocol Contract Offer Messages.
|
|
6
6
|
* https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1/#contract-offer-message
|
|
@@ -25,7 +25,7 @@ export interface IDataspaceProtocolContractOfferMessage {
|
|
|
25
25
|
/**
|
|
26
26
|
* The offer being requested.
|
|
27
27
|
*/
|
|
28
|
-
offer:
|
|
28
|
+
offer: IDataspaceProtocolOffer;
|
|
29
29
|
/**
|
|
30
30
|
* The base callback address for the provider to update the consumer on the state of the negotiation.
|
|
31
31
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { IOdrlOffer } from "@twin.org/standards-w3c-odrl";
|
|
2
1
|
import type { DataspaceProtocolContextType } from "../dataspaceProtocolContextType.js";
|
|
3
2
|
import type { DataspaceProtocolContractNegotiationTypes } from "./dataspaceProtocolContractNegotiationTypes.js";
|
|
3
|
+
import type { IDataspaceProtocolOffer } from "../odrl/IDataspaceProtocolOffer.js";
|
|
4
4
|
/**
|
|
5
5
|
* Interface for Dataspace Protocol Contract Request Messages.
|
|
6
6
|
* https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1/#contract-request-message
|
|
@@ -25,7 +25,7 @@ export interface IDataspaceProtocolContractRequestMessage {
|
|
|
25
25
|
/**
|
|
26
26
|
* The offer being requested.
|
|
27
27
|
*/
|
|
28
|
-
offer:
|
|
28
|
+
offer: IDataspaceProtocolOffer;
|
|
29
29
|
/**
|
|
30
30
|
* The base callback address for the provider to update the consumer on the state of the negotiation.
|
|
31
31
|
*/
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import type { ObjectOrArray } from "@twin.org/core";
|
|
2
|
+
import type { JsonLdObjectWithNoContext } from "@twin.org/data-json-ld";
|
|
2
3
|
import type { IDcatCatalog } from "@twin.org/standards-w3c-dcat";
|
|
4
|
+
import type { DataspaceProtocolCatalogTypes } from "../catalog/dataspaceProtocolCatalogTypes.js";
|
|
3
5
|
import type { DataspaceProtocolContextType } from "../dataspaceProtocolContextType.js";
|
|
4
|
-
import type { DataspaceProtocolCatalogTypes } from "./dataspaceProtocolCatalogTypes.js";
|
|
5
6
|
import type { IDataspaceProtocolDataService } from "./IDataspaceProtocolDataService.js";
|
|
6
7
|
import type { IDataspaceProtocolDataset } from "./IDataspaceProtocolDataset.js";
|
|
7
8
|
import type { IDataspaceProtocolDistribution } from "./IDataspaceProtocolDistribution.js";
|
|
@@ -47,17 +48,17 @@ export interface IDataspaceProtocolCatalog extends Omit<IDcatCatalog, "@type" |
|
|
|
47
48
|
/**
|
|
48
49
|
* Other concerned catalogs
|
|
49
50
|
*/
|
|
50
|
-
catalog?: ObjectOrArray<
|
|
51
|
+
catalog?: ObjectOrArray<JsonLdObjectWithNoContext<IDataspaceProtocolCatalog>>;
|
|
51
52
|
/**
|
|
52
53
|
* Datasets registered
|
|
53
54
|
*/
|
|
54
|
-
dataset?: ObjectOrArray<
|
|
55
|
+
dataset?: ObjectOrArray<JsonLdObjectWithNoContext<IDataspaceProtocolDataset>>;
|
|
55
56
|
/**
|
|
56
57
|
* Catalog's distributions
|
|
57
58
|
*/
|
|
58
|
-
distribution?: ObjectOrArray<
|
|
59
|
+
distribution?: ObjectOrArray<JsonLdObjectWithNoContext<IDataspaceProtocolDistribution>>;
|
|
59
60
|
/**
|
|
60
61
|
* Data services registered-
|
|
61
62
|
*/
|
|
62
|
-
service?: ObjectOrArray<
|
|
63
|
+
service?: ObjectOrArray<JsonLdObjectWithNoContext<IDataspaceProtocolDataService>>;
|
|
63
64
|
}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import type { ObjectOrArray } from "@twin.org/core";
|
|
2
|
+
import type { JsonLdObjectWithNoContext } from "@twin.org/data-json-ld";
|
|
2
3
|
import type { IDcatDataService } from "@twin.org/standards-w3c-dcat";
|
|
4
|
+
import type { DataspaceProtocolCatalogTypes } from "../catalog/dataspaceProtocolCatalogTypes.js";
|
|
3
5
|
import type { DataspaceProtocolContextType } from "../dataspaceProtocolContextType.js";
|
|
4
|
-
import type { DataspaceProtocolCatalogTypes } from "./dataspaceProtocolCatalogTypes.js";
|
|
5
6
|
import type { IDataspaceProtocolDataset } from "./IDataspaceProtocolDataset.js";
|
|
6
7
|
/**
|
|
7
8
|
* Data Service interface compliant with Eclipse Data Space Protocol.
|
|
@@ -45,5 +46,5 @@ export interface IDataspaceProtocolDataService extends Omit<IDcatDataService, "@
|
|
|
45
46
|
/**
|
|
46
47
|
* Datasets served.
|
|
47
48
|
*/
|
|
48
|
-
servesDataset?: ObjectOrArray<
|
|
49
|
+
servesDataset?: ObjectOrArray<JsonLdObjectWithNoContext<IDataspaceProtocolDataset>>;
|
|
49
50
|
}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import type { ObjectOrArray } from "@twin.org/core";
|
|
2
|
+
import type { JsonLdObjectWithNoContext } from "@twin.org/data-json-ld";
|
|
2
3
|
import type { IDcatDataset } from "@twin.org/standards-w3c-dcat";
|
|
4
|
+
import type { DataspaceProtocolCatalogTypes } from "../catalog/dataspaceProtocolCatalogTypes.js";
|
|
3
5
|
import type { DataspaceProtocolContextType } from "../dataspaceProtocolContextType.js";
|
|
4
|
-
import type { DataspaceProtocolCatalogTypes } from "./dataspaceProtocolCatalogTypes.js";
|
|
5
6
|
import type { IDataspaceProtocolDistribution } from "./IDataspaceProtocolDistribution.js";
|
|
6
|
-
import type { IDataspaceProtocolOffer } from "
|
|
7
|
+
import type { IDataspaceProtocolOffer } from "../odrl/IDataspaceProtocolOffer.js";
|
|
7
8
|
/**
|
|
8
9
|
* Dataset interface compliant with Eclipse Data Space Protocol.
|
|
9
10
|
*
|
|
@@ -62,5 +63,5 @@ export interface IDataspaceProtocolDataset extends Omit<IDcatDataset, "odrl:hasP
|
|
|
62
63
|
* Distribution of the dataset.
|
|
63
64
|
* REQUIRED per Eclipse Data Space Protocol.
|
|
64
65
|
*/
|
|
65
|
-
distribution: ObjectOrArray<
|
|
66
|
+
distribution: ObjectOrArray<JsonLdObjectWithNoContext<IDataspaceProtocolDistribution>>;
|
|
66
67
|
}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import type { ObjectOrArray } from "@twin.org/core";
|
|
2
|
+
import type { JsonLdObjectWithNoContext } from "@twin.org/data-json-ld";
|
|
2
3
|
import type { IDcatDistribution } from "@twin.org/standards-w3c-dcat";
|
|
4
|
+
import type { DataspaceProtocolCatalogTypes } from "../catalog/dataspaceProtocolCatalogTypes.js";
|
|
3
5
|
import type { DataspaceProtocolContextType } from "../dataspaceProtocolContextType.js";
|
|
4
|
-
import type { DataspaceProtocolCatalogTypes } from "./dataspaceProtocolCatalogTypes.js";
|
|
5
6
|
import type { IDataspaceProtocolDataService } from "./IDataspaceProtocolDataService.js";
|
|
6
|
-
import type { IDataspaceProtocolOffer } from "
|
|
7
|
+
import type { IDataspaceProtocolOffer } from "../odrl/IDataspaceProtocolOffer.js";
|
|
7
8
|
/**
|
|
8
9
|
* Distribution interface compliant with Eclipse Data Space Protocol.
|
|
9
10
|
*
|
|
@@ -61,7 +62,7 @@ export interface IDataspaceProtocolDistribution extends Omit<IDcatDistribution,
|
|
|
61
62
|
* Access service.
|
|
62
63
|
* It can be a URI pointing to an access service or inline the access service itself
|
|
63
64
|
*/
|
|
64
|
-
accessService: string |
|
|
65
|
+
accessService: string | JsonLdObjectWithNoContext<IDataspaceProtocolDataService>;
|
|
65
66
|
/**
|
|
66
67
|
* Distribution format.
|
|
67
68
|
* REQUIRED per Eclipse Data Space Protocol.
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { IOdrlAgreement } from "@twin.org/standards-w3c-odrl";
|
|
2
|
+
/**
|
|
3
|
+
* Agreement interface compliant with Eclipse Data Space Protocol.
|
|
4
|
+
*
|
|
5
|
+
* Extends IOdrlAgreement with DS Protocol-specific constraints:
|
|
6
|
+
* - `@id` is REQUIRED (used as the primary agreement identifier in DS Protocol)
|
|
7
|
+
* - `@context` is omitted (inherited from the parent Dataset/Distribution)
|
|
8
|
+
*
|
|
9
|
+
* @see https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1-err1/#lower-level-types
|
|
10
|
+
* @see IOdrlAgreement from @twin.org/standards-w3c-odrl
|
|
11
|
+
*/
|
|
12
|
+
export interface IDataspaceProtocolAgreement extends Omit<IOdrlAgreement, "@context" | "uid"> {
|
|
13
|
+
/**
|
|
14
|
+
* Unique identifier for the agreement.
|
|
15
|
+
*/
|
|
16
|
+
"@id": string;
|
|
17
|
+
}
|
|
@@ -5,7 +5,6 @@ import type { IOdrlOffer } from "@twin.org/standards-w3c-odrl";
|
|
|
5
5
|
* Extends IOdrlOffer with DS Protocol-specific constraints:
|
|
6
6
|
* - `@id` is REQUIRED (used as the primary offer identifier in DS Protocol)
|
|
7
7
|
* - `@context` is omitted (inherited from the parent Dataset/Distribution)
|
|
8
|
-
* - `uid` is optional (DS Protocol uses `@id` instead of ODRL `uid`)
|
|
9
8
|
*
|
|
10
9
|
* @see https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1-err1/#lower-level-types
|
|
11
10
|
* @see IOdrlOffer from @twin.org/standards-w3c-odrl
|
|
@@ -15,8 +14,4 @@ export interface IDataspaceProtocolOffer extends Omit<IOdrlOffer, "@context" | "
|
|
|
15
14
|
* Unique identifier for the offer.
|
|
16
15
|
*/
|
|
17
16
|
"@id": string;
|
|
18
|
-
/**
|
|
19
|
-
* Unique identifier for the offer.
|
|
20
|
-
*/
|
|
21
|
-
uid?: string;
|
|
22
17
|
}
|
package/docs/changelog.md
CHANGED
|
@@ -1,5 +1,39 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.0.3-next.48](https://github.com/twinfoundation/standards/compare/standards-dataspace-protocol-v0.0.3-next.47...standards-dataspace-protocol-v0.0.3-next.48) (2026-03-06)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* missing ds protocol schemas ([d47e3ed](https://github.com/twinfoundation/standards/commit/d47e3ed30daa6f7857da3b7813f239118bb2ad46))
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Dependencies
|
|
12
|
+
|
|
13
|
+
* The following workspace dependencies were updated
|
|
14
|
+
* dependencies
|
|
15
|
+
* @twin.org/standards-w3c-dcat bumped from 0.0.3-next.47 to 0.0.3-next.48
|
|
16
|
+
* @twin.org/standards-w3c-odrl bumped from 0.0.3-next.47 to 0.0.3-next.48
|
|
17
|
+
* devDependencies
|
|
18
|
+
* @twin.org/standards-ld-contexts bumped from 0.0.3-next.47 to 0.0.3-next.48
|
|
19
|
+
|
|
20
|
+
## [0.0.3-next.47](https://github.com/twinfoundation/standards/compare/standards-dataspace-protocol-v0.0.3-next.46...standards-dataspace-protocol-v0.0.3-next.47) (2026-03-06)
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
### Bug Fixes
|
|
24
|
+
|
|
25
|
+
* remove uid from ds protocol offer ([ebd3ef8](https://github.com/twinfoundation/standards/commit/ebd3ef88aa0f90eaf8f826f84784db59d1f55da0))
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
### Dependencies
|
|
29
|
+
|
|
30
|
+
* The following workspace dependencies were updated
|
|
31
|
+
* dependencies
|
|
32
|
+
* @twin.org/standards-w3c-dcat bumped from 0.0.3-next.46 to 0.0.3-next.47
|
|
33
|
+
* @twin.org/standards-w3c-odrl bumped from 0.0.3-next.46 to 0.0.3-next.47
|
|
34
|
+
* devDependencies
|
|
35
|
+
* @twin.org/standards-ld-contexts bumped from 0.0.3-next.46 to 0.0.3-next.47
|
|
36
|
+
|
|
3
37
|
## [0.0.3-next.46](https://github.com/twinfoundation/standards/compare/standards-dataspace-protocol-v0.0.3-next.45...standards-dataspace-protocol-v0.0.3-next.46) (2026-03-05)
|
|
4
38
|
|
|
5
39
|
|
package/docs/reference/index.md
CHANGED
|
@@ -10,14 +10,9 @@
|
|
|
10
10
|
|
|
11
11
|
## Interfaces
|
|
12
12
|
|
|
13
|
-
- [IDataspaceProtocolCatalog](interfaces/IDataspaceProtocolCatalog.md)
|
|
14
13
|
- [IDataspaceProtocolCatalogError](interfaces/IDataspaceProtocolCatalogError.md)
|
|
15
14
|
- [IDataspaceProtocolCatalogRequestMessage](interfaces/IDataspaceProtocolCatalogRequestMessage.md)
|
|
16
|
-
- [IDataspaceProtocolDataService](interfaces/IDataspaceProtocolDataService.md)
|
|
17
|
-
- [IDataspaceProtocolDataset](interfaces/IDataspaceProtocolDataset.md)
|
|
18
15
|
- [IDataspaceProtocolDatasetRequestMessage](interfaces/IDataspaceProtocolDatasetRequestMessage.md)
|
|
19
|
-
- [IDataspaceProtocolDistribution](interfaces/IDataspaceProtocolDistribution.md)
|
|
20
|
-
- [IDataspaceProtocolOffer](interfaces/IDataspaceProtocolOffer.md)
|
|
21
16
|
- [IDataspaceProtocolContractAgreementMessage](interfaces/IDataspaceProtocolContractAgreementMessage.md)
|
|
22
17
|
- [IDataspaceProtocolContractAgreementVerificationMessage](interfaces/IDataspaceProtocolContractAgreementVerificationMessage.md)
|
|
23
18
|
- [IDataspaceProtocolContractNegotiation](interfaces/IDataspaceProtocolContractNegotiation.md)
|
|
@@ -26,6 +21,12 @@
|
|
|
26
21
|
- [IDataspaceProtocolContractNegotiationTerminationMessage](interfaces/IDataspaceProtocolContractNegotiationTerminationMessage.md)
|
|
27
22
|
- [IDataspaceProtocolContractOfferMessage](interfaces/IDataspaceProtocolContractOfferMessage.md)
|
|
28
23
|
- [IDataspaceProtocolContractRequestMessage](interfaces/IDataspaceProtocolContractRequestMessage.md)
|
|
24
|
+
- [IDataspaceProtocolCatalog](interfaces/IDataspaceProtocolCatalog.md)
|
|
25
|
+
- [IDataspaceProtocolDataService](interfaces/IDataspaceProtocolDataService.md)
|
|
26
|
+
- [IDataspaceProtocolDataset](interfaces/IDataspaceProtocolDataset.md)
|
|
27
|
+
- [IDataspaceProtocolDistribution](interfaces/IDataspaceProtocolDistribution.md)
|
|
28
|
+
- [IDataspaceProtocolAgreement](interfaces/IDataspaceProtocolAgreement.md)
|
|
29
|
+
- [IDataspaceProtocolOffer](interfaces/IDataspaceProtocolOffer.md)
|
|
29
30
|
- [IDataspaceProtocolDataAddress](interfaces/IDataspaceProtocolDataAddress.md)
|
|
30
31
|
- [IDataspaceProtocolEndpointProperty](interfaces/IDataspaceProtocolEndpointProperty.md)
|
|
31
32
|
- [IDataspaceProtocolTransferCompletionMessage](interfaces/IDataspaceProtocolTransferCompletionMessage.md)
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
# Interface: IDataspaceProtocolAgreement
|
|
2
|
+
|
|
3
|
+
Agreement interface compliant with Eclipse Data Space Protocol.
|
|
4
|
+
|
|
5
|
+
Extends IOdrlAgreement with DS Protocol-specific constraints:
|
|
6
|
+
- `@id` is REQUIRED (used as the primary agreement identifier in DS Protocol)
|
|
7
|
+
- `@context` is omitted (inherited from the parent Dataset/Distribution)
|
|
8
|
+
|
|
9
|
+
## See
|
|
10
|
+
|
|
11
|
+
- https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1-err1/#lower-level-types
|
|
12
|
+
- IOdrlAgreement from @twin.org/standards-w3c-odrl
|
|
13
|
+
|
|
14
|
+
## Extends
|
|
15
|
+
|
|
16
|
+
- `Omit`\<`IOdrlAgreement`, `"@context"` \| `"uid"`\>
|
|
17
|
+
|
|
18
|
+
## Properties
|
|
19
|
+
|
|
20
|
+
### @id
|
|
21
|
+
|
|
22
|
+
> **@id**: `string`
|
|
23
|
+
|
|
24
|
+
Unique identifier for the agreement.
|
|
25
|
+
|
|
26
|
+
***
|
|
27
|
+
|
|
28
|
+
### @type
|
|
29
|
+
|
|
30
|
+
> **@type**: `"Agreement"`
|
|
31
|
+
|
|
32
|
+
The type must be "Agreement".
|
|
33
|
+
|
|
34
|
+
#### Inherited from
|
|
35
|
+
|
|
36
|
+
`Omit.@type`
|
|
37
|
+
|
|
38
|
+
***
|
|
39
|
+
|
|
40
|
+
### assigner
|
|
41
|
+
|
|
42
|
+
> **assigner**: `string` \| `IOdrlParty`
|
|
43
|
+
|
|
44
|
+
The assigner of the agreement.
|
|
45
|
+
Required for Agreement policies.
|
|
46
|
+
|
|
47
|
+
#### Inherited from
|
|
48
|
+
|
|
49
|
+
`Omit.assigner`
|
|
50
|
+
|
|
51
|
+
***
|
|
52
|
+
|
|
53
|
+
### assignee
|
|
54
|
+
|
|
55
|
+
> **assignee**: `string` \| `IOdrlParty`
|
|
56
|
+
|
|
57
|
+
The assignee of the agreement.
|
|
58
|
+
Required for Agreement policies.
|
|
59
|
+
|
|
60
|
+
#### Inherited from
|
|
61
|
+
|
|
62
|
+
`Omit.assignee`
|
|
63
|
+
|
|
64
|
+
***
|
|
65
|
+
|
|
66
|
+
### profile?
|
|
67
|
+
|
|
68
|
+
> `optional` **profile**: `string` \| `string`[]
|
|
69
|
+
|
|
70
|
+
The profile(s) this policy conforms to.
|
|
71
|
+
IRIs identifying the ODRL Profile(s).
|
|
72
|
+
|
|
73
|
+
#### Inherited from
|
|
74
|
+
|
|
75
|
+
`Omit.profile`
|
|
76
|
+
|
|
77
|
+
***
|
|
78
|
+
|
|
79
|
+
### target?
|
|
80
|
+
|
|
81
|
+
> `optional` **target**: `string` \| `IOdrlAsset` \| `IOdrlAssetCollection` \| (`string` \| `IOdrlAsset` \| `IOdrlAssetCollection`)[]
|
|
82
|
+
|
|
83
|
+
The target asset for the rule.
|
|
84
|
+
|
|
85
|
+
#### Inherited from
|
|
86
|
+
|
|
87
|
+
`Omit.target`
|
|
88
|
+
|
|
89
|
+
***
|
|
90
|
+
|
|
91
|
+
### action?
|
|
92
|
+
|
|
93
|
+
> `optional` **action**: `string` \| `IOdrlAction` \| (`string` \| `IOdrlAction`)[]
|
|
94
|
+
|
|
95
|
+
The action associated with the rule.
|
|
96
|
+
|
|
97
|
+
#### Inherited from
|
|
98
|
+
|
|
99
|
+
`Omit.action`
|
|
100
|
+
|
|
101
|
+
***
|
|
102
|
+
|
|
103
|
+
### inheritFrom?
|
|
104
|
+
|
|
105
|
+
> `optional` **inheritFrom**: `string` \| `string`[]
|
|
106
|
+
|
|
107
|
+
The parent policy(ies) this policy inherits from.
|
|
108
|
+
IRIs identifying the parent Policy(ies).
|
|
109
|
+
|
|
110
|
+
#### Inherited from
|
|
111
|
+
|
|
112
|
+
`Omit.inheritFrom`
|
|
113
|
+
|
|
114
|
+
***
|
|
115
|
+
|
|
116
|
+
### conflict?
|
|
117
|
+
|
|
118
|
+
> `optional` **conflict**: `ConflictStrategyType`
|
|
119
|
+
|
|
120
|
+
The conflict resolution strategy.
|
|
121
|
+
- perm: Permissions override Prohibitions
|
|
122
|
+
- prohibit: Prohibitions override Permissions
|
|
123
|
+
- invalid: Policy is void if conflicts exist (default)
|
|
124
|
+
|
|
125
|
+
#### Inherited from
|
|
126
|
+
|
|
127
|
+
`Omit.conflict`
|
|
128
|
+
|
|
129
|
+
***
|
|
130
|
+
|
|
131
|
+
### permission?
|
|
132
|
+
|
|
133
|
+
> `optional` **permission**: `IOdrlPermission` \| `IOdrlPermission`[]
|
|
134
|
+
|
|
135
|
+
The permissions in the policy.
|
|
136
|
+
At least one of permission, prohibition, or obligation must be present.
|
|
137
|
+
|
|
138
|
+
#### Inherited from
|
|
139
|
+
|
|
140
|
+
`Omit.permission`
|
|
141
|
+
|
|
142
|
+
***
|
|
143
|
+
|
|
144
|
+
### prohibition?
|
|
145
|
+
|
|
146
|
+
> `optional` **prohibition**: `IOdrlProhibition` \| `IOdrlProhibition`[]
|
|
147
|
+
|
|
148
|
+
The prohibitions in the policy.
|
|
149
|
+
At least one of permission, prohibition, or obligation must be present.
|
|
150
|
+
|
|
151
|
+
#### Inherited from
|
|
152
|
+
|
|
153
|
+
`Omit.prohibition`
|
|
154
|
+
|
|
155
|
+
***
|
|
156
|
+
|
|
157
|
+
### obligation?
|
|
158
|
+
|
|
159
|
+
> `optional` **obligation**: `IOdrlDuty` \| `IOdrlDuty`[]
|
|
160
|
+
|
|
161
|
+
The obligations in the policy.
|
|
162
|
+
At least one of permission, prohibition, or obligation must be present.
|
|
163
|
+
|
|
164
|
+
#### Inherited from
|
|
165
|
+
|
|
166
|
+
`Omit.obligation`
|