@twin.org/standards-dataspace-protocol 0.0.3-next.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +21 -0
  3. package/dist/es/dataTypes/contractNegotiationDataTypes.js +81 -0
  4. package/dist/es/dataTypes/contractNegotiationDataTypes.js.map +1 -0
  5. package/dist/es/index.js +17 -0
  6. package/dist/es/index.js.map +1 -0
  7. package/dist/es/models/contractNegotiation/IContractAgreementMessage.js +2 -0
  8. package/dist/es/models/contractNegotiation/IContractAgreementMessage.js.map +1 -0
  9. package/dist/es/models/contractNegotiation/IContractAgreementVerificationMessage.js +2 -0
  10. package/dist/es/models/contractNegotiation/IContractAgreementVerificationMessage.js.map +1 -0
  11. package/dist/es/models/contractNegotiation/IContractNegotiation.js +2 -0
  12. package/dist/es/models/contractNegotiation/IContractNegotiation.js.map +1 -0
  13. package/dist/es/models/contractNegotiation/IContractNegotiationError.js +2 -0
  14. package/dist/es/models/contractNegotiation/IContractNegotiationError.js.map +1 -0
  15. package/dist/es/models/contractNegotiation/IContractNegotiationEventMessage.js +2 -0
  16. package/dist/es/models/contractNegotiation/IContractNegotiationEventMessage.js.map +1 -0
  17. package/dist/es/models/contractNegotiation/IContractNegotiationTerminationMessage.js +2 -0
  18. package/dist/es/models/contractNegotiation/IContractNegotiationTerminationMessage.js.map +1 -0
  19. package/dist/es/models/contractNegotiation/IContractOfferMessage.js +2 -0
  20. package/dist/es/models/contractNegotiation/IContractOfferMessage.js.map +1 -0
  21. package/dist/es/models/contractNegotiation/IContractRequestMessage.js +2 -0
  22. package/dist/es/models/contractNegotiation/IContractRequestMessage.js.map +1 -0
  23. package/dist/es/models/contractNegotiation/contractNegotiationContextType.js +2 -0
  24. package/dist/es/models/contractNegotiation/contractNegotiationContextType.js.map +1 -0
  25. package/dist/es/models/contractNegotiation/contractNegotiationContexts.js +17 -0
  26. package/dist/es/models/contractNegotiation/contractNegotiationContexts.js.map +1 -0
  27. package/dist/es/models/contractNegotiation/contractNegotiationTypes.js +50 -0
  28. package/dist/es/models/contractNegotiation/contractNegotiationTypes.js.map +1 -0
  29. package/dist/es/models/contractNegotiation/types/contractNegotiationEventType.js +18 -0
  30. package/dist/es/models/contractNegotiation/types/contractNegotiationEventType.js.map +1 -0
  31. package/dist/es/models/contractNegotiation/types/contractNegotiationStateType.js +38 -0
  32. package/dist/es/models/contractNegotiation/types/contractNegotiationStateType.js.map +1 -0
  33. package/dist/es/schemas/ContractAgreementMessage.json +82 -0
  34. package/dist/es/schemas/ContractAgreementVerificationMessage.json +73 -0
  35. package/dist/es/schemas/ContractNegotiation.json +78 -0
  36. package/dist/es/schemas/ContractNegotiationError.json +115 -0
  37. package/dist/es/schemas/ContractNegotiationEventMessage.json +78 -0
  38. package/dist/es/schemas/ContractNegotiationEventType.json +10 -0
  39. package/dist/es/schemas/ContractNegotiationStateType.json +15 -0
  40. package/dist/es/schemas/ContractNegotiationTerminationMessage.json +82 -0
  41. package/dist/es/schemas/ContractOfferMessage.json +81 -0
  42. package/dist/es/schemas/ContractRequestMessage.json +81 -0
  43. package/dist/types/dataTypes/contractNegotiationDataTypes.d.ts +13 -0
  44. package/dist/types/index.d.ts +14 -0
  45. package/dist/types/models/contractNegotiation/IContractAgreementMessage.d.ts +33 -0
  46. package/dist/types/models/contractNegotiation/IContractAgreementVerificationMessage.d.ts +24 -0
  47. package/dist/types/models/contractNegotiation/IContractNegotiation.d.ts +29 -0
  48. package/dist/types/models/contractNegotiation/IContractNegotiationError.d.ts +42 -0
  49. package/dist/types/models/contractNegotiation/IContractNegotiationEventMessage.d.ts +29 -0
  50. package/dist/types/models/contractNegotiation/IContractNegotiationTerminationMessage.d.ts +32 -0
  51. package/dist/types/models/contractNegotiation/IContractOfferMessage.d.ts +33 -0
  52. package/dist/types/models/contractNegotiation/IContractRequestMessage.d.ts +33 -0
  53. package/dist/types/models/contractNegotiation/contractNegotiationContextType.d.ts +14 -0
  54. package/dist/types/models/contractNegotiation/contractNegotiationContexts.d.ts +17 -0
  55. package/dist/types/models/contractNegotiation/contractNegotiationTypes.d.ts +50 -0
  56. package/dist/types/models/contractNegotiation/types/contractNegotiationEventType.d.ts +18 -0
  57. package/dist/types/models/contractNegotiation/types/contractNegotiationStateType.d.ts +38 -0
  58. package/docs/changelog.md +17 -0
  59. package/docs/examples.md +1 -0
  60. package/docs/reference/classes/ContractNegotiationDataTypes.md +37 -0
  61. package/docs/reference/index.md +31 -0
  62. package/docs/reference/interfaces/IContractAgreementMessage.md +52 -0
  63. package/docs/reference/interfaces/IContractAgreementVerificationMessage.md +36 -0
  64. package/docs/reference/interfaces/IContractNegotiation.md +44 -0
  65. package/docs/reference/interfaces/IContractNegotiationError.md +76 -0
  66. package/docs/reference/interfaces/IContractNegotiationEventMessage.md +44 -0
  67. package/docs/reference/interfaces/IContractNegotiationTerminationMessage.md +52 -0
  68. package/docs/reference/interfaces/IContractOfferMessage.md +52 -0
  69. package/docs/reference/interfaces/IContractRequestMessage.md +52 -0
  70. package/docs/reference/type-aliases/ContractNegotiationContextType.md +5 -0
  71. package/docs/reference/type-aliases/ContractNegotiationContexts.md +5 -0
  72. package/docs/reference/type-aliases/ContractNegotiationEventType.md +5 -0
  73. package/docs/reference/type-aliases/ContractNegotiationStateType.md +5 -0
  74. package/docs/reference/type-aliases/ContractNegotiationTypes.md +5 -0
  75. package/docs/reference/variables/ContractNegotiationContexts.md +19 -0
  76. package/docs/reference/variables/ContractNegotiationEventType.md +20 -0
  77. package/docs/reference/variables/ContractNegotiationStateType.md +50 -0
  78. package/docs/reference/variables/ContractNegotiationTypes.md +68 -0
  79. package/locales/en.json +1 -0
  80. package/package.json +53 -0
@@ -0,0 +1,82 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schema.twindev.org/dataspace-protocol/ContractAgreementMessage",
4
+ "description": "Interface for Dataspace Protocol Contract Agreement Messages. https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1/#contract-agreement-message",
5
+ "type": "object",
6
+ "properties": {
7
+ "@context": {
8
+ "description": "The Dataspace Protocol Contract Negotiation JSON-LD context type.",
9
+ "anyOf": [
10
+ {
11
+ "type": "string",
12
+ "const": "https://w3id.org/dspace/2024/1/context.json"
13
+ },
14
+ {
15
+ "type": "array",
16
+ "minItems": 2,
17
+ "items": {
18
+ "anyOf": [
19
+ {
20
+ "type": "string",
21
+ "const": "https://w3id.org/dspace/2024/1/context.json"
22
+ },
23
+ {
24
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
25
+ }
26
+ ]
27
+ },
28
+ "additionalItems": {
29
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
30
+ }
31
+ },
32
+ {
33
+ "type": "array",
34
+ "minItems": 2,
35
+ "items": {
36
+ "anyOf": [
37
+ {
38
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
39
+ },
40
+ {
41
+ "type": "string",
42
+ "const": "https://w3id.org/dspace/2024/1/context.json"
43
+ }
44
+ ]
45
+ },
46
+ "additionalItems": {
47
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
48
+ }
49
+ }
50
+ ]
51
+ },
52
+ "@type": {
53
+ "type": "string",
54
+ "const": "ContractAgreementMessage",
55
+ "description": "The type of the message."
56
+ },
57
+ "providerPid": {
58
+ "type": "string",
59
+ "description": "The provider id for the contract."
60
+ },
61
+ "consumerPid": {
62
+ "type": "string",
63
+ "description": "The consumer id for the contract."
64
+ },
65
+ "agreement": {
66
+ "$ref": "https://schema.twindev.org/dataspace-protocol/OdrlAgreement",
67
+ "description": "The agreement being sent."
68
+ },
69
+ "callbackAddress": {
70
+ "type": "string",
71
+ "description": "The base callback address for the provider to update the consumer on the state of the negotiation."
72
+ }
73
+ },
74
+ "required": [
75
+ "@context",
76
+ "@type",
77
+ "providerPid",
78
+ "consumerPid",
79
+ "agreement"
80
+ ],
81
+ "additionalProperties": false
82
+ }
@@ -0,0 +1,73 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schema.twindev.org/dataspace-protocol/ContractAgreementVerificationMessage",
4
+ "description": "Interface for Dataspace Protocol Contract Agreement Verification Messages. https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1/#contract-agreement-verification-message",
5
+ "type": "object",
6
+ "properties": {
7
+ "@context": {
8
+ "description": "The Dataspace Protocol Contract Negotiation JSON-LD context type.",
9
+ "anyOf": [
10
+ {
11
+ "type": "string",
12
+ "const": "https://w3id.org/dspace/2024/1/context.json"
13
+ },
14
+ {
15
+ "type": "array",
16
+ "minItems": 2,
17
+ "items": {
18
+ "anyOf": [
19
+ {
20
+ "type": "string",
21
+ "const": "https://w3id.org/dspace/2024/1/context.json"
22
+ },
23
+ {
24
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
25
+ }
26
+ ]
27
+ },
28
+ "additionalItems": {
29
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
30
+ }
31
+ },
32
+ {
33
+ "type": "array",
34
+ "minItems": 2,
35
+ "items": {
36
+ "anyOf": [
37
+ {
38
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
39
+ },
40
+ {
41
+ "type": "string",
42
+ "const": "https://w3id.org/dspace/2024/1/context.json"
43
+ }
44
+ ]
45
+ },
46
+ "additionalItems": {
47
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
48
+ }
49
+ }
50
+ ]
51
+ },
52
+ "@type": {
53
+ "type": "string",
54
+ "const": "ContractAgreementVerificationMessage",
55
+ "description": "The type of the message."
56
+ },
57
+ "providerPid": {
58
+ "type": "string",
59
+ "description": "The provider id for the contract."
60
+ },
61
+ "consumerPid": {
62
+ "type": "string",
63
+ "description": "The consumer id for the contract."
64
+ }
65
+ },
66
+ "required": [
67
+ "@context",
68
+ "@type",
69
+ "providerPid",
70
+ "consumerPid"
71
+ ],
72
+ "additionalProperties": false
73
+ }
@@ -0,0 +1,78 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schema.twindev.org/dataspace-protocol/ContractNegotiation",
4
+ "description": "Interface for Dataspace Protocol Contract Agreement Messages. https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1/#ack-contract-negotiation",
5
+ "type": "object",
6
+ "properties": {
7
+ "@context": {
8
+ "description": "The Dataspace Protocol Contract Negotiation JSON-LD context type.",
9
+ "anyOf": [
10
+ {
11
+ "type": "string",
12
+ "const": "https://w3id.org/dspace/2024/1/context.json"
13
+ },
14
+ {
15
+ "type": "array",
16
+ "minItems": 2,
17
+ "items": {
18
+ "anyOf": [
19
+ {
20
+ "type": "string",
21
+ "const": "https://w3id.org/dspace/2024/1/context.json"
22
+ },
23
+ {
24
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
25
+ }
26
+ ]
27
+ },
28
+ "additionalItems": {
29
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
30
+ }
31
+ },
32
+ {
33
+ "type": "array",
34
+ "minItems": 2,
35
+ "items": {
36
+ "anyOf": [
37
+ {
38
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
39
+ },
40
+ {
41
+ "type": "string",
42
+ "const": "https://w3id.org/dspace/2024/1/context.json"
43
+ }
44
+ ]
45
+ },
46
+ "additionalItems": {
47
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
48
+ }
49
+ }
50
+ ]
51
+ },
52
+ "@type": {
53
+ "type": "string",
54
+ "const": "ContractNegotiation",
55
+ "description": "The type of the message."
56
+ },
57
+ "providerPid": {
58
+ "type": "string",
59
+ "description": "The provider id for the contract."
60
+ },
61
+ "consumerPid": {
62
+ "type": "string",
63
+ "description": "The consumer id for the contract."
64
+ },
65
+ "state": {
66
+ "$ref": "https://schema.twindev.org/dataspace-protocol/ContractNegotiationStateType",
67
+ "description": "The offer being requested."
68
+ }
69
+ },
70
+ "required": [
71
+ "@context",
72
+ "@type",
73
+ "providerPid",
74
+ "consumerPid",
75
+ "state"
76
+ ],
77
+ "additionalProperties": false
78
+ }
@@ -0,0 +1,115 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schema.twindev.org/dataspace-protocol/ContractNegotiationError",
4
+ "description": "Interface for Dataspace Protocol Contract Negotiation Error Messages. https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1/#error-contract-negotiation-error",
5
+ "type": "object",
6
+ "properties": {
7
+ "@context": {
8
+ "description": "The Dataspace Protocol Contract Negotiation JSON-LD context type.",
9
+ "anyOf": [
10
+ {
11
+ "type": "string",
12
+ "const": "https://w3id.org/dspace/2024/1/context.json"
13
+ },
14
+ {
15
+ "type": "array",
16
+ "minItems": 2,
17
+ "items": {
18
+ "anyOf": [
19
+ {
20
+ "type": "string",
21
+ "const": "https://w3id.org/dspace/2024/1/context.json"
22
+ },
23
+ {
24
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
25
+ }
26
+ ]
27
+ },
28
+ "additionalItems": {
29
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
30
+ }
31
+ },
32
+ {
33
+ "type": "array",
34
+ "minItems": 2,
35
+ "items": {
36
+ "anyOf": [
37
+ {
38
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
39
+ },
40
+ {
41
+ "type": "string",
42
+ "const": "https://w3id.org/dspace/2024/1/context.json"
43
+ }
44
+ ]
45
+ },
46
+ "additionalItems": {
47
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
48
+ }
49
+ }
50
+ ]
51
+ },
52
+ "@type": {
53
+ "type": "string",
54
+ "const": "ContractNegotiationError",
55
+ "description": "The type of the message."
56
+ },
57
+ "providerPid": {
58
+ "type": "string",
59
+ "description": "The provider id for the contract."
60
+ },
61
+ "consumerPid": {
62
+ "type": "string",
63
+ "description": "The consumer id for the contract."
64
+ },
65
+ "code": {
66
+ "type": "string",
67
+ "description": "The error code."
68
+ },
69
+ "reason": {
70
+ "type": "array",
71
+ "items": {
72
+ "type": "object",
73
+ "properties": {
74
+ "@value": {
75
+ "type": "string"
76
+ },
77
+ "@language": {
78
+ "type": "string"
79
+ }
80
+ },
81
+ "required": [
82
+ "@value"
83
+ ],
84
+ "additionalProperties": false
85
+ },
86
+ "description": "The error reason(s)."
87
+ },
88
+ "description": {
89
+ "type": "array",
90
+ "items": {
91
+ "type": "object",
92
+ "properties": {
93
+ "@value": {
94
+ "type": "string"
95
+ },
96
+ "@language": {
97
+ "type": "string"
98
+ }
99
+ },
100
+ "required": [
101
+ "@value"
102
+ ],
103
+ "additionalProperties": false
104
+ },
105
+ "description": "The error description(s)."
106
+ }
107
+ },
108
+ "required": [
109
+ "@context",
110
+ "@type",
111
+ "providerPid",
112
+ "consumerPid"
113
+ ],
114
+ "additionalProperties": false
115
+ }
@@ -0,0 +1,78 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schema.twindev.org/dataspace-protocol/ContractNegotiationEventMessage",
4
+ "description": "Interface for Dataspace Protocol Contract Negotiation Event Messages. https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1/#contract-negotiation-event-message",
5
+ "type": "object",
6
+ "properties": {
7
+ "@context": {
8
+ "description": "The Dataspace Protocol Contract Negotiation JSON-LD context type.",
9
+ "anyOf": [
10
+ {
11
+ "type": "string",
12
+ "const": "https://w3id.org/dspace/2024/1/context.json"
13
+ },
14
+ {
15
+ "type": "array",
16
+ "minItems": 2,
17
+ "items": {
18
+ "anyOf": [
19
+ {
20
+ "type": "string",
21
+ "const": "https://w3id.org/dspace/2024/1/context.json"
22
+ },
23
+ {
24
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
25
+ }
26
+ ]
27
+ },
28
+ "additionalItems": {
29
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
30
+ }
31
+ },
32
+ {
33
+ "type": "array",
34
+ "minItems": 2,
35
+ "items": {
36
+ "anyOf": [
37
+ {
38
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
39
+ },
40
+ {
41
+ "type": "string",
42
+ "const": "https://w3id.org/dspace/2024/1/context.json"
43
+ }
44
+ ]
45
+ },
46
+ "additionalItems": {
47
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
48
+ }
49
+ }
50
+ ]
51
+ },
52
+ "@type": {
53
+ "type": "string",
54
+ "const": "ContractNegotiationEventMessage",
55
+ "description": "The type of the message."
56
+ },
57
+ "providerPid": {
58
+ "type": "string",
59
+ "description": "The provider id for the contract."
60
+ },
61
+ "consumerPid": {
62
+ "type": "string",
63
+ "description": "The consumer id for the contract."
64
+ },
65
+ "event": {
66
+ "$ref": "https://schema.twindev.org/dataspace-protocol/ContractNegotiationEventType",
67
+ "description": "The event type."
68
+ }
69
+ },
70
+ "required": [
71
+ "@context",
72
+ "@type",
73
+ "providerPid",
74
+ "consumerPid",
75
+ "event"
76
+ ],
77
+ "additionalProperties": false
78
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schema.twindev.org/dataspace-protocol/ContractNegotiationEventType",
4
+ "description": "The types for Dataspace Protocol Contract Negotiation Events. https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1/#contract-negotiation-event-message The types for Dataspace Protocol Contract Negotiation Events.",
5
+ "type": "string",
6
+ "enum": [
7
+ "ACCEPTED",
8
+ "FINALIZED"
9
+ ]
10
+ }
@@ -0,0 +1,15 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schema.twindev.org/dataspace-protocol/ContractNegotiationStateType",
4
+ "description": "The types for Dataspace Protocol Contract Negotiation States. https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1/#contract-negotiation-states The types for Dataspace Protocol Contract Negotiation States.",
5
+ "type": "string",
6
+ "enum": [
7
+ "REQUESTED",
8
+ "OFFERED",
9
+ "ACCEPTED",
10
+ "AGREED",
11
+ "VERIFIED",
12
+ "FINALIZED",
13
+ "TERMINATED"
14
+ ]
15
+ }
@@ -0,0 +1,82 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schema.twindev.org/dataspace-protocol/ContractNegotiationTerminationMessage",
4
+ "description": "Interface for Dataspace Protocol Contract Negotiation Termination Messages. https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1/#contract-negotiation-termination-message",
5
+ "type": "object",
6
+ "properties": {
7
+ "@context": {
8
+ "description": "The Dataspace Protocol Contract Negotiation JSON-LD context type.",
9
+ "anyOf": [
10
+ {
11
+ "type": "string",
12
+ "const": "https://w3id.org/dspace/2024/1/context.json"
13
+ },
14
+ {
15
+ "type": "array",
16
+ "minItems": 2,
17
+ "items": {
18
+ "anyOf": [
19
+ {
20
+ "type": "string",
21
+ "const": "https://w3id.org/dspace/2024/1/context.json"
22
+ },
23
+ {
24
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
25
+ }
26
+ ]
27
+ },
28
+ "additionalItems": {
29
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
30
+ }
31
+ },
32
+ {
33
+ "type": "array",
34
+ "minItems": 2,
35
+ "items": {
36
+ "anyOf": [
37
+ {
38
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
39
+ },
40
+ {
41
+ "type": "string",
42
+ "const": "https://w3id.org/dspace/2024/1/context.json"
43
+ }
44
+ ]
45
+ },
46
+ "additionalItems": {
47
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
48
+ }
49
+ }
50
+ ]
51
+ },
52
+ "@type": {
53
+ "type": "string",
54
+ "const": "ContractNegotiationTerminationMessage",
55
+ "description": "The type of the message."
56
+ },
57
+ "providerPid": {
58
+ "type": "string",
59
+ "description": "The provider id for the contract."
60
+ },
61
+ "consumerPid": {
62
+ "type": "string",
63
+ "description": "The consumer id for the contract."
64
+ },
65
+ "code": {
66
+ "type": "string",
67
+ "description": "The termination code."
68
+ },
69
+ "reason": {
70
+ "type": "array",
71
+ "items": {},
72
+ "description": "The termination reason(s)."
73
+ }
74
+ },
75
+ "required": [
76
+ "@context",
77
+ "@type",
78
+ "providerPid",
79
+ "consumerPid"
80
+ ],
81
+ "additionalProperties": false
82
+ }
@@ -0,0 +1,81 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schema.twindev.org/dataspace-protocol/ContractOfferMessage",
4
+ "description": "Interface for Dataspace Protocol Contract Offer Messages. https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1/#contract-offer-message",
5
+ "type": "object",
6
+ "properties": {
7
+ "@context": {
8
+ "description": "The Dataspace Protocol Contract Negotiation JSON-LD context type.",
9
+ "anyOf": [
10
+ {
11
+ "type": "string",
12
+ "const": "https://w3id.org/dspace/2024/1/context.json"
13
+ },
14
+ {
15
+ "type": "array",
16
+ "minItems": 2,
17
+ "items": {
18
+ "anyOf": [
19
+ {
20
+ "type": "string",
21
+ "const": "https://w3id.org/dspace/2024/1/context.json"
22
+ },
23
+ {
24
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
25
+ }
26
+ ]
27
+ },
28
+ "additionalItems": {
29
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
30
+ }
31
+ },
32
+ {
33
+ "type": "array",
34
+ "minItems": 2,
35
+ "items": {
36
+ "anyOf": [
37
+ {
38
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
39
+ },
40
+ {
41
+ "type": "string",
42
+ "const": "https://w3id.org/dspace/2024/1/context.json"
43
+ }
44
+ ]
45
+ },
46
+ "additionalItems": {
47
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
48
+ }
49
+ }
50
+ ]
51
+ },
52
+ "@type": {
53
+ "type": "string",
54
+ "const": "ContractOfferMessage",
55
+ "description": "The type of the message."
56
+ },
57
+ "providerPid": {
58
+ "type": "string",
59
+ "description": "The provider id for the contract."
60
+ },
61
+ "consumerPid": {
62
+ "type": "string",
63
+ "description": "The consumer id for the contract."
64
+ },
65
+ "offer": {
66
+ "$ref": "https://schema.twindev.org/dataspace-protocol/OdrlOffer",
67
+ "description": "The offer being requested."
68
+ },
69
+ "callbackAddress": {
70
+ "type": "string",
71
+ "description": "The base callback address for the provider to update the consumer on the state of the negotiation."
72
+ }
73
+ },
74
+ "required": [
75
+ "@context",
76
+ "@type",
77
+ "providerPid",
78
+ "offer"
79
+ ],
80
+ "additionalProperties": false
81
+ }