@twin.org/standards-dataspace-protocol 0.0.3-next.53 → 0.0.3-next.55
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 +18 -39
- package/dist/es/dataTypes/catalogDataTypes.js.map +1 -1
- package/dist/es/dataTypes/dataspaceProtocolDataTypes.js +6 -0
- package/dist/es/dataTypes/dataspaceProtocolDataTypes.js.map +1 -1
- package/dist/es/index.js +10 -13
- package/dist/es/index.js.map +1 -1
- package/dist/es/models/catalog/dataspaceProtocolCatalogTypes.js +1 -33
- 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/dataspaceProtocolContextType.js.map +1 -1
- package/dist/es/models/dcat3/IDataspaceProtocolCatalog.js.map +1 -1
- package/dist/es/models/dcat3/IDataspaceProtocolCatalogBase.js +2 -0
- package/dist/es/models/dcat3/IDataspaceProtocolCatalogBase.js.map +1 -0
- package/dist/es/models/dcat3/IDataspaceProtocolDataService.js.map +1 -1
- package/dist/es/models/dcat3/IDataspaceProtocolDataServiceBase.js +2 -0
- package/dist/es/models/dcat3/IDataspaceProtocolDataServiceBase.js.map +1 -0
- package/dist/es/models/dcat3/IDataspaceProtocolDataset.js.map +1 -1
- package/dist/es/models/dcat3/IDataspaceProtocolDatasetBase.js +2 -0
- package/dist/es/models/dcat3/IDataspaceProtocolDatasetBase.js.map +1 -0
- package/dist/es/models/dcat3/IDataspaceProtocolDistribution.js.map +1 -1
- package/dist/es/models/dcat3/IDataspaceProtocolDistributionBase.js +2 -0
- package/dist/es/models/dcat3/IDataspaceProtocolDistributionBase.js.map +1 -0
- package/dist/es/models/odrl/IDataspaceProtocolOffer.js.map +1 -1
- package/dist/es/models/odrl/IDataspaceProtocolOfferBase.js +2 -0
- package/dist/es/models/odrl/IDataspaceProtocolOfferBase.js.map +1 -0
- package/dist/es/schemas/DataspaceProtocolAgreement.json +181 -158
- package/dist/es/schemas/DataspaceProtocolCatalog.json +13 -3
- package/dist/es/schemas/DataspaceProtocolCatalogBase.json +428 -0
- package/dist/es/schemas/DataspaceProtocolCatalogError.json +4 -50
- package/dist/es/schemas/DataspaceProtocolCatalogRequestMessage.json +4 -50
- package/dist/es/schemas/DataspaceProtocolContextType.json +30 -0
- package/dist/es/schemas/DataspaceProtocolContractAgreementMessage.json +191 -52
- package/dist/es/schemas/DataspaceProtocolContractAgreementVerificationMessage.json +4 -50
- package/dist/es/schemas/DataspaceProtocolContractNegotiation.json +4 -50
- package/dist/es/schemas/DataspaceProtocolContractNegotiationError.json +4 -50
- package/dist/es/schemas/DataspaceProtocolContractNegotiationEventMessage.json +4 -50
- package/dist/es/schemas/DataspaceProtocolContractNegotiationEventType.json +11 -5
- package/dist/es/schemas/DataspaceProtocolContractNegotiationStateType.json +31 -10
- package/dist/es/schemas/DataspaceProtocolContractNegotiationTerminationMessage.json +4 -50
- package/dist/es/schemas/DataspaceProtocolContractOfferMessage.json +5 -51
- package/dist/es/schemas/DataspaceProtocolContractRequestMessage.json +5 -51
- package/dist/es/schemas/DataspaceProtocolDataAddress.json +2 -2
- package/dist/es/schemas/DataspaceProtocolDataService.json +21 -0
- package/dist/es/schemas/DataspaceProtocolDataServiceBase.json +285 -0
- package/dist/es/schemas/DataspaceProtocolDataset.json +13 -3
- package/dist/es/schemas/DataspaceProtocolDatasetBase.json +342 -0
- package/dist/es/schemas/DataspaceProtocolDatasetRequestMessage.json +4 -50
- package/dist/es/schemas/DataspaceProtocolDistribution.json +26 -0
- package/dist/es/schemas/DataspaceProtocolDistributionBase.json +170 -0
- package/dist/es/schemas/DataspaceProtocolEndpointProperty.json +2 -2
- package/dist/es/schemas/DataspaceProtocolOffer.json +10 -186
- package/dist/es/schemas/DataspaceProtocolOfferBase.json +219 -0
- package/dist/es/schemas/DataspaceProtocolPolicy.json +214 -202
- package/dist/es/schemas/DataspaceProtocolSet.json +225 -202
- package/dist/es/schemas/DataspaceProtocolTransferCompletionMessage.json +4 -50
- package/dist/es/schemas/DataspaceProtocolTransferError.json +4 -50
- package/dist/es/schemas/DataspaceProtocolTransferProcess.json +4 -50
- package/dist/es/schemas/DataspaceProtocolTransferRequestMessage.json +6 -52
- package/dist/es/schemas/DataspaceProtocolTransferStartMessage.json +5 -51
- package/dist/es/schemas/DataspaceProtocolTransferSuspensionMessage.json +4 -50
- package/dist/es/schemas/DataspaceProtocolTransferTerminationMessage.json +4 -50
- package/dist/es/utils/dataspaceProtocolHelper.js +27 -29
- package/dist/es/utils/dataspaceProtocolHelper.js.map +1 -1
- package/dist/types/index.d.ts +10 -13
- package/dist/types/models/catalog/dataspaceProtocolCatalogTypes.d.ts +0 -32
- package/dist/types/models/contractNegotiation/IDataspaceProtocolContractAgreementMessage.d.ts +3 -2
- package/dist/types/models/contractNegotiation/IDataspaceProtocolContractOfferMessage.d.ts +2 -2
- package/dist/types/models/contractNegotiation/IDataspaceProtocolContractRequestMessage.d.ts +2 -2
- package/dist/types/models/dataspaceProtocolContextType.d.ts +2 -9
- package/dist/types/models/dcat3/IDataspaceProtocolCatalog.d.ts +2 -37
- package/dist/types/models/dcat3/IDataspaceProtocolCatalogBase.d.ts +58 -0
- package/dist/types/models/dcat3/IDataspaceProtocolDataService.d.ts +2 -22
- package/dist/types/models/dcat3/IDataspaceProtocolDataServiceBase.d.ts +44 -0
- package/dist/types/models/dcat3/IDataspaceProtocolDataset.d.ts +2 -29
- package/dist/types/models/dcat3/IDataspaceProtocolDatasetBase.d.ts +61 -0
- package/dist/types/models/dcat3/IDataspaceProtocolDistribution.d.ts +4 -31
- package/dist/types/models/dcat3/IDataspaceProtocolDistributionBase.d.ts +66 -0
- package/dist/types/models/odrl/IDataspaceProtocolOffer.d.ts +7 -2
- package/dist/types/models/odrl/IDataspaceProtocolOfferBase.d.ts +18 -0
- package/dist/types/utils/dataspaceProtocolHelper.d.ts +2 -3
- package/docs/changelog.md +35 -0
- package/docs/examples.md +2 -4
- package/docs/reference/classes/CatalogDataTypes.md +1 -1
- package/docs/reference/classes/ContractNegotiationDataTypes.md +1 -1
- package/docs/reference/classes/DataspaceProtocolDataTypes.md +2 -2
- package/docs/reference/classes/DataspaceProtocolHelper.md +5 -11
- package/docs/reference/classes/TransferProcessDataTypes.md +1 -1
- package/docs/reference/index.md +5 -8
- package/docs/reference/interfaces/IDataspaceProtocolAgreement.md +20 -20
- package/docs/reference/interfaces/IDataspaceProtocolCatalog.md +110 -86
- package/docs/reference/interfaces/IDataspaceProtocolCatalogBase.md +570 -0
- package/docs/reference/interfaces/IDataspaceProtocolCatalogError.md +4 -4
- package/docs/reference/interfaces/IDataspaceProtocolCatalogRequestMessage.md +3 -3
- package/docs/reference/interfaces/IDataspaceProtocolContractAgreementMessage.md +7 -7
- package/docs/reference/interfaces/IDataspaceProtocolContractAgreementVerificationMessage.md +4 -4
- package/docs/reference/interfaces/IDataspaceProtocolContractNegotiation.md +5 -5
- package/docs/reference/interfaces/IDataspaceProtocolContractNegotiationError.md +6 -6
- package/docs/reference/interfaces/IDataspaceProtocolContractNegotiationEventMessage.md +5 -5
- package/docs/reference/interfaces/IDataspaceProtocolContractNegotiationTerminationMessage.md +6 -6
- package/docs/reference/interfaces/IDataspaceProtocolContractOfferMessage.md +7 -7
- package/docs/reference/interfaces/IDataspaceProtocolContractRequestMessage.md +7 -7
- package/docs/reference/interfaces/IDataspaceProtocolDataAddress.md +4 -4
- package/docs/reference/interfaces/IDataspaceProtocolDataService.md +70 -58
- package/docs/reference/interfaces/IDataspaceProtocolDataServiceBase.md +387 -0
- package/docs/reference/interfaces/IDataspaceProtocolDataset.md +80 -68
- package/docs/reference/interfaces/IDataspaceProtocolDatasetBase.md +484 -0
- package/docs/reference/interfaces/IDataspaceProtocolDatasetRequestMessage.md +3 -3
- package/docs/reference/interfaces/IDataspaceProtocolDistribution.md +72 -56
- package/docs/reference/interfaces/IDataspaceProtocolDistributionBase.md +381 -0
- package/docs/reference/interfaces/IDataspaceProtocolEndpointProperty.md +3 -3
- package/docs/reference/interfaces/IDataspaceProtocolOffer.md +43 -44
- package/docs/reference/interfaces/IDataspaceProtocolOfferBase.md +171 -0
- package/docs/reference/interfaces/IDataspaceProtocolPolicy.md +22 -22
- package/docs/reference/interfaces/IDataspaceProtocolSet.md +22 -22
- package/docs/reference/interfaces/IDataspaceProtocolTransferCompletionMessage.md +4 -4
- package/docs/reference/interfaces/IDataspaceProtocolTransferError.md +6 -6
- package/docs/reference/interfaces/IDataspaceProtocolTransferProcess.md +5 -5
- package/docs/reference/interfaces/IDataspaceProtocolTransferRequestMessage.md +7 -7
- package/docs/reference/interfaces/IDataspaceProtocolTransferStartMessage.md +5 -5
- package/docs/reference/interfaces/IDataspaceProtocolTransferSuspensionMessage.md +6 -6
- package/docs/reference/interfaces/IDataspaceProtocolTransferTerminationMessage.md +6 -6
- package/docs/reference/type-aliases/DataspaceProtocolContextType.md +1 -1
- package/docs/reference/variables/DataspaceProtocolCatalogTypes.md +11 -59
- package/docs/reference/variables/DataspaceProtocolContexts.md +4 -4
- package/docs/reference/variables/DataspaceProtocolContractNegotiationEventType.md +2 -2
- package/docs/reference/variables/DataspaceProtocolContractNegotiationStateType.md +7 -7
- package/docs/reference/variables/DataspaceProtocolContractNegotiationTypes.md +10 -10
- package/docs/reference/variables/DataspaceProtocolEndpointType.md +4 -4
- package/docs/reference/variables/DataspaceProtocolTransferProcessStateType.md +5 -5
- package/docs/reference/variables/DataspaceProtocolTransferProcessTypes.md +9 -9
- package/locales/en.json +3 -0
- package/package.json +3 -3
- package/dist/es/models/dcat3/IDataspaceProtocolCatalogNoContext.js +0 -2
- package/dist/es/models/dcat3/IDataspaceProtocolCatalogNoContext.js.map +0 -1
- package/dist/es/models/dcat3/IDataspaceProtocolDataServiceNoContext.js +0 -2
- package/dist/es/models/dcat3/IDataspaceProtocolDataServiceNoContext.js.map +0 -1
- package/dist/es/models/dcat3/IDataspaceProtocolDatasetNoContext.js +0 -2
- package/dist/es/models/dcat3/IDataspaceProtocolDatasetNoContext.js.map +0 -1
- package/dist/es/models/dcat3/IDataspaceProtocolDistributionNoContext.js +0 -2
- package/dist/es/models/dcat3/IDataspaceProtocolDistributionNoContext.js.map +0 -1
- package/dist/es/models/odrl/IDataspaceProtocolAgreementNoContext.js +0 -2
- package/dist/es/models/odrl/IDataspaceProtocolAgreementNoContext.js.map +0 -1
- package/dist/es/models/odrl/IDataspaceProtocolOfferNoContext.js +0 -2
- package/dist/es/models/odrl/IDataspaceProtocolOfferNoContext.js.map +0 -1
- package/dist/es/models/odrl/IDataspaceProtocolPolicyNoContext.js +0 -2
- package/dist/es/models/odrl/IDataspaceProtocolPolicyNoContext.js.map +0 -1
- package/dist/es/models/odrl/IDataspaceProtocolSetNoContext.js +0 -2
- package/dist/es/models/odrl/IDataspaceProtocolSetNoContext.js.map +0 -1
- package/dist/es/schemas/DataspaceProtocolAgreementNoContext.json +0 -6
- package/dist/es/schemas/DataspaceProtocolCatalogNoContext.json +0 -6
- package/dist/es/schemas/DataspaceProtocolDataServiceNoContext.json +0 -6
- package/dist/es/schemas/DataspaceProtocolDatasetNoContext.json +0 -6
- package/dist/es/schemas/DataspaceProtocolDistributionNoContext.json +0 -6
- package/dist/es/schemas/DataspaceProtocolOfferNoContext.json +0 -6
- package/dist/es/schemas/DataspaceProtocolPolicyNoContext.json +0 -6
- package/dist/es/schemas/DataspaceProtocolSetNoContext.json +0 -6
- package/dist/es/schemas-src/DataspaceProtocolDataService.json +0 -11
- package/dist/es/schemas-src/DataspaceProtocolDistribution.json +0 -11
- package/dist/types/models/dcat3/IDataspaceProtocolCatalogNoContext.d.ts +0 -5
- package/dist/types/models/dcat3/IDataspaceProtocolDataServiceNoContext.d.ts +0 -5
- package/dist/types/models/dcat3/IDataspaceProtocolDatasetNoContext.d.ts +0 -5
- package/dist/types/models/dcat3/IDataspaceProtocolDistributionNoContext.d.ts +0 -5
- package/dist/types/models/odrl/IDataspaceProtocolAgreementNoContext.d.ts +0 -5
- package/dist/types/models/odrl/IDataspaceProtocolOfferNoContext.d.ts +0 -5
- package/dist/types/models/odrl/IDataspaceProtocolPolicyNoContext.d.ts +0 -5
- package/dist/types/models/odrl/IDataspaceProtocolSetNoContext.d.ts +0 -5
- package/docs/reference/type-aliases/IDataspaceProtocolAgreementNoContext.md +0 -5
- package/docs/reference/type-aliases/IDataspaceProtocolCatalogNoContext.md +0 -5
- package/docs/reference/type-aliases/IDataspaceProtocolDataServiceNoContext.md +0 -5
- package/docs/reference/type-aliases/IDataspaceProtocolDatasetNoContext.md +0 -5
- package/docs/reference/type-aliases/IDataspaceProtocolDistributionNoContext.md +0 -5
- package/docs/reference/type-aliases/IDataspaceProtocolOfferNoContext.md +0 -5
- package/docs/reference/type-aliases/IDataspaceProtocolPolicyNoContext.md +0 -5
- package/docs/reference/type-aliases/IDataspaceProtocolSetNoContext.md +0 -5
|
@@ -1,61 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
3
|
"$id": "https://schema.twindev.org/dataspace-protocol/DataspaceProtocolTransferProcess",
|
|
4
|
-
"
|
|
4
|
+
"title": "DataspaceProtocolTransferProcess",
|
|
5
|
+
"description": "Interface for Dataspace Protocol Transfer Messages.\nhttps://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/#ack-transfer-process",
|
|
5
6
|
"type": "object",
|
|
6
7
|
"properties": {
|
|
7
8
|
"@context": {
|
|
8
|
-
"
|
|
9
|
-
"
|
|
10
|
-
{
|
|
11
|
-
"type": "string",
|
|
12
|
-
"const": "https://w3id.org/dspace/2025/1/context.jsonld"
|
|
13
|
-
},
|
|
14
|
-
{
|
|
15
|
-
"type": "array",
|
|
16
|
-
"items": {
|
|
17
|
-
"type": "string",
|
|
18
|
-
"const": "https://w3id.org/dspace/2025/1/context.jsonld"
|
|
19
|
-
},
|
|
20
|
-
"minItems": 1,
|
|
21
|
-
"maxItems": 1
|
|
22
|
-
},
|
|
23
|
-
{
|
|
24
|
-
"type": "array",
|
|
25
|
-
"minItems": 2,
|
|
26
|
-
"prefixItems": [
|
|
27
|
-
{
|
|
28
|
-
"type": "string",
|
|
29
|
-
"const": "https://w3id.org/dspace/2025/1/context.jsonld"
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
"$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
|
|
33
|
-
}
|
|
34
|
-
],
|
|
35
|
-
"items": {
|
|
36
|
-
"$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
|
|
37
|
-
}
|
|
38
|
-
},
|
|
39
|
-
{
|
|
40
|
-
"type": "array",
|
|
41
|
-
"minItems": 2,
|
|
42
|
-
"prefixItems": [
|
|
43
|
-
{
|
|
44
|
-
"$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
"type": "string",
|
|
48
|
-
"const": "https://w3id.org/dspace/2025/1/context.jsonld"
|
|
49
|
-
}
|
|
50
|
-
],
|
|
51
|
-
"items": {
|
|
52
|
-
"$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
]
|
|
9
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/DataspaceProtocolContextType",
|
|
10
|
+
"description": "LD Context"
|
|
56
11
|
},
|
|
57
12
|
"@type": {
|
|
58
|
-
"type": "string",
|
|
59
13
|
"const": "TransferProcess",
|
|
60
14
|
"description": "LD Type"
|
|
61
15
|
},
|
|
@@ -1,61 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
3
|
"$id": "https://schema.twindev.org/dataspace-protocol/DataspaceProtocolTransferRequestMessage",
|
|
4
|
-
"
|
|
4
|
+
"title": "DataspaceProtocolTransferRequestMessage",
|
|
5
|
+
"description": "Interface for Dataspace Protocol Transfer Messages.\nhttps://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/#transfer-request-message",
|
|
5
6
|
"type": "object",
|
|
6
7
|
"properties": {
|
|
7
8
|
"@context": {
|
|
8
|
-
"
|
|
9
|
-
"
|
|
10
|
-
{
|
|
11
|
-
"type": "string",
|
|
12
|
-
"const": "https://w3id.org/dspace/2025/1/context.jsonld"
|
|
13
|
-
},
|
|
14
|
-
{
|
|
15
|
-
"type": "array",
|
|
16
|
-
"items": {
|
|
17
|
-
"type": "string",
|
|
18
|
-
"const": "https://w3id.org/dspace/2025/1/context.jsonld"
|
|
19
|
-
},
|
|
20
|
-
"minItems": 1,
|
|
21
|
-
"maxItems": 1
|
|
22
|
-
},
|
|
23
|
-
{
|
|
24
|
-
"type": "array",
|
|
25
|
-
"minItems": 2,
|
|
26
|
-
"prefixItems": [
|
|
27
|
-
{
|
|
28
|
-
"type": "string",
|
|
29
|
-
"const": "https://w3id.org/dspace/2025/1/context.jsonld"
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
"$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
|
|
33
|
-
}
|
|
34
|
-
],
|
|
35
|
-
"items": {
|
|
36
|
-
"$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
|
|
37
|
-
}
|
|
38
|
-
},
|
|
39
|
-
{
|
|
40
|
-
"type": "array",
|
|
41
|
-
"minItems": 2,
|
|
42
|
-
"prefixItems": [
|
|
43
|
-
{
|
|
44
|
-
"$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
"type": "string",
|
|
48
|
-
"const": "https://w3id.org/dspace/2025/1/context.jsonld"
|
|
49
|
-
}
|
|
50
|
-
],
|
|
51
|
-
"items": {
|
|
52
|
-
"$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
]
|
|
9
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/DataspaceProtocolContextType",
|
|
10
|
+
"description": "LD Context"
|
|
56
11
|
},
|
|
57
12
|
"@type": {
|
|
58
|
-
"type": "string",
|
|
59
13
|
"const": "TransferRequestMessage",
|
|
60
14
|
"description": "LD Type"
|
|
61
15
|
},
|
|
@@ -73,11 +27,11 @@
|
|
|
73
27
|
},
|
|
74
28
|
"format": {
|
|
75
29
|
"type": "string",
|
|
76
|
-
"description": "The format property is a format specified by a Distribution for the Dataset associated with the Agreement
|
|
30
|
+
"description": "The format property is a format specified by a Distribution for the Dataset associated with the Agreement.\nThis is generally obtained from the Provider's Catalog."
|
|
77
31
|
},
|
|
78
32
|
"dataAddress": {
|
|
79
33
|
"$ref": "https://schema.twindev.org/dataspace-protocol/DataspaceProtocolDataAddress",
|
|
80
|
-
"description": "If defined MUST contain a transport-specific set of properties for pushing the data
|
|
34
|
+
"description": "If defined MUST contain a transport-specific set of properties for pushing the data.\nIt MAY include an endpoint, a temporary authorization via the endpointProperties property - depending on the endpointType."
|
|
81
35
|
}
|
|
82
36
|
},
|
|
83
37
|
"required": [
|
|
@@ -1,61 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
3
|
"$id": "https://schema.twindev.org/dataspace-protocol/DataspaceProtocolTransferStartMessage",
|
|
4
|
-
"
|
|
4
|
+
"title": "DataspaceProtocolTransferStartMessage",
|
|
5
|
+
"description": "Interface for Dataspace Protocol Transfer Messages.\nhttps://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/#transfer-start-message",
|
|
5
6
|
"type": "object",
|
|
6
7
|
"properties": {
|
|
7
8
|
"@context": {
|
|
8
|
-
"
|
|
9
|
-
"
|
|
10
|
-
{
|
|
11
|
-
"type": "string",
|
|
12
|
-
"const": "https://w3id.org/dspace/2025/1/context.jsonld"
|
|
13
|
-
},
|
|
14
|
-
{
|
|
15
|
-
"type": "array",
|
|
16
|
-
"items": {
|
|
17
|
-
"type": "string",
|
|
18
|
-
"const": "https://w3id.org/dspace/2025/1/context.jsonld"
|
|
19
|
-
},
|
|
20
|
-
"minItems": 1,
|
|
21
|
-
"maxItems": 1
|
|
22
|
-
},
|
|
23
|
-
{
|
|
24
|
-
"type": "array",
|
|
25
|
-
"minItems": 2,
|
|
26
|
-
"prefixItems": [
|
|
27
|
-
{
|
|
28
|
-
"type": "string",
|
|
29
|
-
"const": "https://w3id.org/dspace/2025/1/context.jsonld"
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
"$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
|
|
33
|
-
}
|
|
34
|
-
],
|
|
35
|
-
"items": {
|
|
36
|
-
"$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
|
|
37
|
-
}
|
|
38
|
-
},
|
|
39
|
-
{
|
|
40
|
-
"type": "array",
|
|
41
|
-
"minItems": 2,
|
|
42
|
-
"prefixItems": [
|
|
43
|
-
{
|
|
44
|
-
"$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
"type": "string",
|
|
48
|
-
"const": "https://w3id.org/dspace/2025/1/context.jsonld"
|
|
49
|
-
}
|
|
50
|
-
],
|
|
51
|
-
"items": {
|
|
52
|
-
"$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
]
|
|
9
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/DataspaceProtocolContextType",
|
|
10
|
+
"description": "LD Context"
|
|
56
11
|
},
|
|
57
12
|
"@type": {
|
|
58
|
-
"type": "string",
|
|
59
13
|
"const": "TransferStartMessage",
|
|
60
14
|
"description": "LD Type"
|
|
61
15
|
},
|
|
@@ -69,7 +23,7 @@
|
|
|
69
23
|
},
|
|
70
24
|
"dataAddress": {
|
|
71
25
|
"$ref": "https://schema.twindev.org/dataspace-protocol/DataspaceProtocolDataAddress",
|
|
72
|
-
"description": "MUST be provided if the current transfer is a pull transfer and
|
|
26
|
+
"description": "MUST be provided if the current transfer is a pull transfer and\ncontains a transport-specific endpoint address for obtaining the data."
|
|
73
27
|
}
|
|
74
28
|
},
|
|
75
29
|
"required": [
|
|
@@ -1,61 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
3
|
"$id": "https://schema.twindev.org/dataspace-protocol/DataspaceProtocolTransferSuspensionMessage",
|
|
4
|
-
"
|
|
4
|
+
"title": "DataspaceProtocolTransferSuspensionMessage",
|
|
5
|
+
"description": "Interface for Dataspace Protocol Transfer Messages.\nhttps://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/#transfer-suspension-message",
|
|
5
6
|
"type": "object",
|
|
6
7
|
"properties": {
|
|
7
8
|
"@context": {
|
|
8
|
-
"
|
|
9
|
-
"
|
|
10
|
-
{
|
|
11
|
-
"type": "string",
|
|
12
|
-
"const": "https://w3id.org/dspace/2025/1/context.jsonld"
|
|
13
|
-
},
|
|
14
|
-
{
|
|
15
|
-
"type": "array",
|
|
16
|
-
"items": {
|
|
17
|
-
"type": "string",
|
|
18
|
-
"const": "https://w3id.org/dspace/2025/1/context.jsonld"
|
|
19
|
-
},
|
|
20
|
-
"minItems": 1,
|
|
21
|
-
"maxItems": 1
|
|
22
|
-
},
|
|
23
|
-
{
|
|
24
|
-
"type": "array",
|
|
25
|
-
"minItems": 2,
|
|
26
|
-
"prefixItems": [
|
|
27
|
-
{
|
|
28
|
-
"type": "string",
|
|
29
|
-
"const": "https://w3id.org/dspace/2025/1/context.jsonld"
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
"$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
|
|
33
|
-
}
|
|
34
|
-
],
|
|
35
|
-
"items": {
|
|
36
|
-
"$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
|
|
37
|
-
}
|
|
38
|
-
},
|
|
39
|
-
{
|
|
40
|
-
"type": "array",
|
|
41
|
-
"minItems": 2,
|
|
42
|
-
"prefixItems": [
|
|
43
|
-
{
|
|
44
|
-
"$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
"type": "string",
|
|
48
|
-
"const": "https://w3id.org/dspace/2025/1/context.jsonld"
|
|
49
|
-
}
|
|
50
|
-
],
|
|
51
|
-
"items": {
|
|
52
|
-
"$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
]
|
|
9
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/DataspaceProtocolContextType",
|
|
10
|
+
"description": "LD Context"
|
|
56
11
|
},
|
|
57
12
|
"@type": {
|
|
58
|
-
"type": "string",
|
|
59
13
|
"const": "TransferSuspensionMessage",
|
|
60
14
|
"description": "LD Type"
|
|
61
15
|
},
|
|
@@ -1,61 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
3
|
"$id": "https://schema.twindev.org/dataspace-protocol/DataspaceProtocolTransferTerminationMessage",
|
|
4
|
-
"
|
|
4
|
+
"title": "DataspaceProtocolTransferTerminationMessage",
|
|
5
|
+
"description": "Interface for Dataspace Protocol Transfer Messages.\nhttps://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/#transfer-termination-message",
|
|
5
6
|
"type": "object",
|
|
6
7
|
"properties": {
|
|
7
8
|
"@context": {
|
|
8
|
-
"
|
|
9
|
-
"
|
|
10
|
-
{
|
|
11
|
-
"type": "string",
|
|
12
|
-
"const": "https://w3id.org/dspace/2025/1/context.jsonld"
|
|
13
|
-
},
|
|
14
|
-
{
|
|
15
|
-
"type": "array",
|
|
16
|
-
"items": {
|
|
17
|
-
"type": "string",
|
|
18
|
-
"const": "https://w3id.org/dspace/2025/1/context.jsonld"
|
|
19
|
-
},
|
|
20
|
-
"minItems": 1,
|
|
21
|
-
"maxItems": 1
|
|
22
|
-
},
|
|
23
|
-
{
|
|
24
|
-
"type": "array",
|
|
25
|
-
"minItems": 2,
|
|
26
|
-
"prefixItems": [
|
|
27
|
-
{
|
|
28
|
-
"type": "string",
|
|
29
|
-
"const": "https://w3id.org/dspace/2025/1/context.jsonld"
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
"$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
|
|
33
|
-
}
|
|
34
|
-
],
|
|
35
|
-
"items": {
|
|
36
|
-
"$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
|
|
37
|
-
}
|
|
38
|
-
},
|
|
39
|
-
{
|
|
40
|
-
"type": "array",
|
|
41
|
-
"minItems": 2,
|
|
42
|
-
"prefixItems": [
|
|
43
|
-
{
|
|
44
|
-
"$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
"type": "string",
|
|
48
|
-
"const": "https://w3id.org/dspace/2025/1/context.jsonld"
|
|
49
|
-
}
|
|
50
|
-
],
|
|
51
|
-
"items": {
|
|
52
|
-
"$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
]
|
|
9
|
+
"$ref": "https://schema.twindev.org/dataspace-protocol/DataspaceProtocolContextType",
|
|
10
|
+
"description": "LD Context"
|
|
56
11
|
},
|
|
57
12
|
"@type": {
|
|
58
|
-
"type": "string",
|
|
59
13
|
"const": "TransferTerminationMessage",
|
|
60
14
|
"description": "LD Type"
|
|
61
15
|
},
|
|
@@ -18,41 +18,39 @@ export class DataspaceProtocolHelper {
|
|
|
18
18
|
/**
|
|
19
19
|
* Checks whether the object passed as parameter is conformant to the DS Protocol definitions.
|
|
20
20
|
* @param object The object to check
|
|
21
|
-
* @
|
|
22
|
-
* @returns true or false depending whether the object is conformant or not
|
|
21
|
+
* @returns An array of validation failures, empty if the object is conformant
|
|
23
22
|
*/
|
|
24
|
-
static async
|
|
25
|
-
let result = false;
|
|
23
|
+
static async validate(object) {
|
|
26
24
|
const dcatNamespace = DcatContexts.Namespace;
|
|
25
|
+
const validationFailures = [];
|
|
27
26
|
const objectTypes = await JsonLdHelper.getType(object);
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
const normalizedObject = await DataspaceProtocolHelper.normalize(object);
|
|
43
|
-
const validationResult = await JsonSchemaHelper.validate(schema, normalizedObject);
|
|
44
|
-
result = validationResult.result;
|
|
45
|
-
if (!result && Is.array(validationResult.error)) {
|
|
46
|
-
for (const aError of validationResult.error) {
|
|
47
|
-
const validationFailure = {
|
|
48
|
-
property: aError.instancePath,
|
|
49
|
-
reason: aError.message
|
|
50
|
-
};
|
|
51
|
-
validationFailures.push(validationFailure);
|
|
27
|
+
if (objectTypes.length === 0) {
|
|
28
|
+
validationFailures.push({
|
|
29
|
+
property: "@type",
|
|
30
|
+
reason: "validation.missingType"
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
for (const type of objectTypes) {
|
|
35
|
+
let dataTypeIdentifier = type;
|
|
36
|
+
// If the DCAT3 types are used, convert to the DS Protocol equivalent
|
|
37
|
+
// which have the enhancements and constraints defined by the DS Protocol
|
|
38
|
+
if (type.startsWith(dcatNamespace)) {
|
|
39
|
+
const nonQualifiedType = type.replace(dcatNamespace, "");
|
|
40
|
+
dataTypeIdentifier = `${DataspaceProtocolContexts.Namespace}${nonQualifiedType}`;
|
|
52
41
|
}
|
|
42
|
+
const schema = await DataTypeHelper.getSchemaForType(dataTypeIdentifier);
|
|
43
|
+
if (!schema) {
|
|
44
|
+
throw new GeneralError(DataspaceProtocolHelper.CLASS_NAME, "schemaNotRegistered", {
|
|
45
|
+
schemaId: dataTypeIdentifier
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
const normalizedObject = await DataspaceProtocolHelper.normalize(object);
|
|
49
|
+
const validationResult = await JsonSchemaHelper.validate(schema, normalizedObject);
|
|
50
|
+
validationFailures.push(...validationResult);
|
|
53
51
|
}
|
|
54
52
|
}
|
|
55
|
-
return
|
|
53
|
+
return validationFailures;
|
|
56
54
|
}
|
|
57
55
|
/**
|
|
58
56
|
* Normalizes the input object making it compliant with the DS Protocol specifications.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataspaceProtocolHelper.js","sourceRoot":"","sources":["../../../src/utils/dataspaceProtocolHelper.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AAEvC,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,EAA2B,MAAM,gBAAgB,CAAC;AACzF,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,EACN,YAAY,EACZ,eAAe,EAGf,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAC;AACnF,OAAO,EAAE,qCAAqC,EAAE,MAAM,oEAAoE,CAAC;AAE3H;;GAEG;AACH,MAAM,OAAgB,uBAAuB;IAC5C;;;OAGG;IACI,MAAM,CAAU,UAAU,6BAAqC;IAEtE
|
|
1
|
+
{"version":3,"file":"dataspaceProtocolHelper.js","sourceRoot":"","sources":["../../../src/utils/dataspaceProtocolHelper.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\n\nimport { GeneralError, Is, ObjectHelper, type IValidationFailure } from \"@twin.org/core\";\nimport { DataTypeHelper, JsonSchemaHelper } from \"@twin.org/data-core\";\nimport {\n\tJsonLdHelper,\n\tJsonLdProcessor,\n\ttype IJsonLdContextDefinitionRoot,\n\ttype IJsonLdNodeObject\n} from \"@twin.org/data-json-ld\";\nimport { nameof } from \"@twin.org/nameof\";\nimport { DcatContexts } from \"@twin.org/standards-w3c-dcat\";\nimport { DataspaceProtocolContexts } from \"../models/dataspaceProtocolContexts.js\";\nimport { DataspaceProtocolTransferProcessTypes } from \"../models/transferProcess/dataspaceProtocolTransferProcessTypes.js\";\n\n/**\n * Dataspace protocol helper.\n */\nexport abstract class DataspaceProtocolHelper {\n\t/**\n\t * The class name.\n\t * @internal\n\t */\n\tpublic static readonly CLASS_NAME = nameof<DataspaceProtocolHelper>();\n\n\t/**\n\t * Checks whether the object passed as parameter is conformant to the DS Protocol definitions.\n\t * @param object The object to check\n\t * @returns An array of validation failures, empty if the object is conformant\n\t */\n\tpublic static async validate(object: IJsonLdNodeObject): Promise<IValidationFailure[]> {\n\t\tconst dcatNamespace = DcatContexts.Namespace;\n\t\tconst validationFailures: IValidationFailure[] = [];\n\n\t\tconst objectTypes = await JsonLdHelper.getType(object);\n\t\tif (objectTypes.length === 0) {\n\t\t\tvalidationFailures.push({\n\t\t\t\tproperty: \"@type\",\n\t\t\t\treason: \"validation.missingType\"\n\t\t\t});\n\t\t} else {\n\t\t\tfor (const type of objectTypes) {\n\t\t\t\tlet dataTypeIdentifier = type;\n\n\t\t\t\t// If the DCAT3 types are used, convert to the DS Protocol equivalent\n\t\t\t\t// which have the enhancements and constraints defined by the DS Protocol\n\t\t\t\tif (type.startsWith(dcatNamespace)) {\n\t\t\t\t\tconst nonQualifiedType = type.replace(dcatNamespace, \"\");\n\t\t\t\t\tdataTypeIdentifier = `${DataspaceProtocolContexts.Namespace}${nonQualifiedType}`;\n\t\t\t\t}\n\n\t\t\t\tconst schema = await DataTypeHelper.getSchemaForType(dataTypeIdentifier);\n\t\t\t\tif (!schema) {\n\t\t\t\t\tthrow new GeneralError(DataspaceProtocolHelper.CLASS_NAME, \"schemaNotRegistered\", {\n\t\t\t\t\t\tschemaId: dataTypeIdentifier\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tconst normalizedObject = await DataspaceProtocolHelper.normalize(object);\n\n\t\t\t\tconst validationResult = await JsonSchemaHelper.validate(schema, normalizedObject);\n\t\t\t\tvalidationFailures.push(...validationResult);\n\t\t\t}\n\t\t}\n\n\t\treturn validationFailures;\n\t}\n\n\t/**\n\t * Normalizes the input object making it compliant with the DS Protocol specifications.\n\t * @param object The input object.\n\t * @returns The input object normalized.\n\t */\n\tpublic static async normalize(object: IJsonLdNodeObject): Promise<IJsonLdNodeObject> {\n\t\tconst annotatedObject = DataspaceProtocolHelper.annotateLDContextForFormat(object);\n\n\t\t// Determine if this is a message/transfer type (which expects Context) or a catalog type (which expects JsonLdContext)\n\t\tconst objectType = ObjectHelper.propertyGet<string | string[]>(object, \"@type\");\n\t\tconst isTransferProcessType =\n\t\t\tIs.string(objectType) &&\n\t\t\t(objectType.includes(\"Message\") ||\n\t\t\t\tobjectType === DataspaceProtocolTransferProcessTypes.TransferProcess ||\n\t\t\t\tobjectType === DataspaceProtocolTransferProcessTypes.TransferError);\n\n\t\tconst contextToUse = isTransferProcessType\n\t\t\t? DataspaceProtocolContexts.Context\n\t\t\t: DataspaceProtocolContexts.JsonLdContext;\n\n\t\tconst compactedObject = await JsonLdProcessor.compact(annotatedObject, [contextToUse]);\n\n\t\tif (!Is.array(compactedObject[\"@context\"])) {\n\t\t\tObjectHelper.propertySet(compactedObject, \"@context\", [\n\t\t\t\tObjectHelper.propertyGet(compactedObject, \"@context\")\n\t\t\t]);\n\t\t}\n\n\t\treturn compactedObject;\n\t}\n\n\t/**\n\t * Ensures format property has a proper LD Context.\n\t * @param object The object.\n\t * @returns a copy of the object annotated with the proper LD Context.\n\t * @internal\n\t */\n\tprivate static annotateLDContextForFormat(object: IJsonLdNodeObject): IJsonLdNodeObject {\n\t\tconst result = ObjectHelper.clone<IJsonLdNodeObject>(object);\n\n\t\t// This step is needed before compaction as 'dcterms:format' is not defined originally as '@vocab'\n\t\t// but it is in the DSP LD Context\n\t\tconst EXTRA_ANNOTATION = {\n\t\t\t\"dcterms:format\": {\n\t\t\t\t\"@id\": \"dcterms:format\",\n\t\t\t\t\"@type\": \"@vocab\"\n\t\t\t}\n\t\t};\n\t\tconst ldContext = ObjectHelper.propertyGet<IJsonLdContextDefinitionRoot>(result, \"@context\");\n\t\tif (Is.array(ldContext)) {\n\t\t\tldContext.push(EXTRA_ANNOTATION);\n\t\t} else if (Is.object(ldContext)) {\n\t\t\tObjectHelper.propertySet(result, \"@context\", { ...ldContext, ...EXTRA_ANNOTATION });\n\t\t} else if (Is.string(ldContext)) {\n\t\t\tObjectHelper.propertySet(result, \"@context\", [ldContext, EXTRA_ANNOTATION]);\n\t\t}\n\n\t\treturn result;\n\t}\n}\n"]}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,27 +1,24 @@
|
|
|
1
|
+
export * from "./dataTypes/catalogDataTypes.js";
|
|
2
|
+
export * from "./dataTypes/dataspaceProtocolDataTypes.js";
|
|
1
3
|
export * from "./models/dataspaceProtocolContexts.js";
|
|
2
4
|
export * from "./models/dataspaceProtocolContextType.js";
|
|
3
|
-
export * from "./dataTypes/dataspaceProtocolDataTypes.js";
|
|
4
|
-
export * from "./dataTypes/catalogDataTypes.js";
|
|
5
5
|
export * from "./models/catalog/dataspaceProtocolCatalogTypes.js";
|
|
6
6
|
export * from "./models/catalog/IDataspaceProtocolCatalogError.js";
|
|
7
7
|
export * from "./models/catalog/IDataspaceProtocolCatalogRequestMessage.js";
|
|
8
8
|
export * from "./models/catalog/IDataspaceProtocolDatasetRequestMessage.js";
|
|
9
|
-
export * from "./models/dcat3/IDataspaceProtocolDataset.js";
|
|
10
|
-
export * from "./models/dcat3/IDataspaceProtocolDatasetNoContext.js";
|
|
11
9
|
export * from "./models/dcat3/IDataspaceProtocolCatalog.js";
|
|
12
|
-
export * from "./models/dcat3/
|
|
13
|
-
export * from "./models/dcat3/IDataspaceProtocolDistribution.js";
|
|
14
|
-
export * from "./models/dcat3/IDataspaceProtocolDistributionNoContext.js";
|
|
10
|
+
export * from "./models/dcat3/IDataspaceProtocolCatalogBase.js";
|
|
15
11
|
export * from "./models/dcat3/IDataspaceProtocolDataService.js";
|
|
16
|
-
export * from "./models/dcat3/
|
|
12
|
+
export * from "./models/dcat3/IDataspaceProtocolDataServiceBase.js";
|
|
13
|
+
export * from "./models/dcat3/IDataspaceProtocolDataset.js";
|
|
14
|
+
export * from "./models/dcat3/IDataspaceProtocolDatasetBase.js";
|
|
15
|
+
export * from "./models/dcat3/IDataspaceProtocolDistribution.js";
|
|
16
|
+
export * from "./models/dcat3/IDataspaceProtocolDistributionBase.js";
|
|
17
17
|
export * from "./models/odrl/IDataspaceProtocolAgreement.js";
|
|
18
|
-
export * from "./models/odrl/IDataspaceProtocolAgreementNoContext.js";
|
|
19
18
|
export * from "./models/odrl/IDataspaceProtocolOffer.js";
|
|
20
|
-
export * from "./models/odrl/
|
|
19
|
+
export * from "./models/odrl/IDataspaceProtocolOfferBase.js";
|
|
21
20
|
export * from "./models/odrl/IDataspaceProtocolPolicy.js";
|
|
22
|
-
export * from "./models/odrl/IDataspaceProtocolPolicyNoContext.js";
|
|
23
21
|
export * from "./models/odrl/IDataspaceProtocolSet.js";
|
|
24
|
-
export * from "./models/odrl/IDataspaceProtocolSetNoContext.js";
|
|
25
22
|
export * from "./models/contractNegotiation/dataspaceProtocolContractNegotiationTypes.js";
|
|
26
23
|
export * from "./models/contractNegotiation/IDataspaceProtocolContractAgreementMessage.js";
|
|
27
24
|
export * from "./models/contractNegotiation/IDataspaceProtocolContractAgreementVerificationMessage.js";
|
|
@@ -44,7 +41,7 @@ export * from "./models/transferProcess/IDataspaceProtocolTransferRequestMessage
|
|
|
44
41
|
export * from "./models/transferProcess/IDataspaceProtocolTransferStartMessage.js";
|
|
45
42
|
export * from "./models/transferProcess/IDataspaceProtocolTransferSuspensionMessage.js";
|
|
46
43
|
export * from "./models/transferProcess/IDataspaceProtocolTransferTerminationMessage.js";
|
|
47
|
-
export * from "./models/transferProcess/types/dataspaceProtocolTransferProcessStateType.js";
|
|
48
44
|
export * from "./models/transferProcess/types/dataspaceProtocolEndpointType.js";
|
|
45
|
+
export * from "./models/transferProcess/types/dataspaceProtocolTransferProcessStateType.js";
|
|
49
46
|
export * from "./dataTypes/transferProcessDataTypes.js";
|
|
50
47
|
export * from "./utils/dataspaceProtocolHelper.js";
|
|
@@ -19,66 +19,34 @@ export declare const DataspaceProtocolCatalogTypes: {
|
|
|
19
19
|
* Dataset.
|
|
20
20
|
*/
|
|
21
21
|
readonly Dataset: "Dataset";
|
|
22
|
-
/**
|
|
23
|
-
* Dataset without JSON-LD context.
|
|
24
|
-
*/
|
|
25
|
-
readonly DatasetNoContext: "DatasetNoContext";
|
|
26
22
|
/**
|
|
27
23
|
* Data Service.
|
|
28
24
|
*/
|
|
29
25
|
readonly DataService: "DataService";
|
|
30
|
-
/**
|
|
31
|
-
* Data Service without JSON-LD context.
|
|
32
|
-
*/
|
|
33
|
-
readonly DataServiceNoContext: "DataServiceNoContext";
|
|
34
26
|
/**
|
|
35
27
|
* Distribution.
|
|
36
28
|
*/
|
|
37
29
|
readonly Distribution: "Distribution";
|
|
38
|
-
/**
|
|
39
|
-
* Distribution without JSON-LD context.
|
|
40
|
-
*/
|
|
41
|
-
readonly DistributionNoContext: "DistributionNoContext";
|
|
42
30
|
/**
|
|
43
31
|
* Catalog.
|
|
44
32
|
*/
|
|
45
33
|
readonly Catalog: "Catalog";
|
|
46
|
-
/**
|
|
47
|
-
* Catalog without JSON-LD context.
|
|
48
|
-
*/
|
|
49
|
-
readonly CatalogNoContext: "CatalogNoContext";
|
|
50
34
|
/**
|
|
51
35
|
* Policy.
|
|
52
36
|
*/
|
|
53
37
|
readonly Policy: "Policy";
|
|
54
|
-
/**
|
|
55
|
-
* Policy without JSON-LD context.
|
|
56
|
-
*/
|
|
57
|
-
readonly PolicyNoContext: "PolicyNoContext";
|
|
58
38
|
/**
|
|
59
39
|
* Offer.
|
|
60
40
|
*/
|
|
61
41
|
readonly Offer: "Offer";
|
|
62
|
-
/**
|
|
63
|
-
* Offer without JSON-LD context.
|
|
64
|
-
*/
|
|
65
|
-
readonly OfferNoContext: "OfferNoContext";
|
|
66
42
|
/**
|
|
67
43
|
* Agreement.
|
|
68
44
|
*/
|
|
69
45
|
readonly Agreement: "Agreement";
|
|
70
|
-
/**
|
|
71
|
-
* Agreement without JSON-LD context.
|
|
72
|
-
*/
|
|
73
|
-
readonly AgreementNoContext: "AgreementNoContext";
|
|
74
46
|
/**
|
|
75
47
|
* Set.
|
|
76
48
|
*/
|
|
77
49
|
readonly Set: "Set";
|
|
78
|
-
/**
|
|
79
|
-
* Set without JSON-LD context.
|
|
80
|
-
*/
|
|
81
|
-
readonly SetNoContext: "SetNoContext";
|
|
82
50
|
};
|
|
83
51
|
/**
|
|
84
52
|
* The types for Dataspace Protocol Catalog Protocol.
|
package/dist/types/models/contractNegotiation/IDataspaceProtocolContractAgreementMessage.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import type { JsonLdObjectWithNoContext } from "@twin.org/data-json-ld";
|
|
1
2
|
import type { DataspaceProtocolContextType } from "../dataspaceProtocolContextType.js";
|
|
2
3
|
import type { DataspaceProtocolContractNegotiationTypes } from "./dataspaceProtocolContractNegotiationTypes.js";
|
|
3
|
-
import type {
|
|
4
|
+
import type { IDataspaceProtocolAgreement } from "../odrl/IDataspaceProtocolAgreement.js";
|
|
4
5
|
/**
|
|
5
6
|
* Interface for Dataspace Protocol Contract Agreement Messages.
|
|
6
7
|
* https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1/#contract-agreement-message
|
|
@@ -25,7 +26,7 @@ export interface IDataspaceProtocolContractAgreementMessage {
|
|
|
25
26
|
/**
|
|
26
27
|
* The agreement being sent.
|
|
27
28
|
*/
|
|
28
|
-
agreement:
|
|
29
|
+
agreement: JsonLdObjectWithNoContext<IDataspaceProtocolAgreement>;
|
|
29
30
|
/**
|
|
30
31
|
* The base callback address for the provider to update the consumer on the state of the negotiation.
|
|
31
32
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { DataspaceProtocolContextType } from "../dataspaceProtocolContextType.js";
|
|
2
2
|
import type { DataspaceProtocolContractNegotiationTypes } from "./dataspaceProtocolContractNegotiationTypes.js";
|
|
3
|
-
import type {
|
|
3
|
+
import type { IDataspaceProtocolOfferBase } from "../odrl/IDataspaceProtocolOfferBase.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: IDataspaceProtocolOfferBase;
|
|
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
1
|
import type { DataspaceProtocolContextType } from "../dataspaceProtocolContextType.js";
|
|
2
2
|
import type { DataspaceProtocolContractNegotiationTypes } from "./dataspaceProtocolContractNegotiationTypes.js";
|
|
3
|
-
import type {
|
|
3
|
+
import type { IDataspaceProtocolOfferBase } from "../odrl/IDataspaceProtocolOfferBase.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: IDataspaceProtocolOfferBase;
|
|
29
29
|
/**
|
|
30
30
|
* The base callback address for the provider to update the consumer on the state of the negotiation.
|
|
31
31
|
*/
|