@twin.org/standards-w3c-odrl 0.0.1-next.44 → 0.0.1-next.45
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/cjs/index.cjs +2909 -53
- package/dist/esm/index.mjs +2909 -53
- package/dist/types/dataTypes/odrlDataTypes.d.ts +13 -0
- package/dist/types/index.d.ts +4 -1
- package/dist/types/models/IOdrlAgreement.d.ts +23 -0
- package/dist/types/models/IOdrlConstraint.d.ts +2 -3
- package/dist/types/models/IOdrlOffer.d.ts +18 -0
- package/dist/types/models/IOdrlSet.d.ts +12 -0
- package/dist/types/models/odrlContextType.d.ts +3 -3
- package/dist/types/models/odrlContexts.d.ts +2 -14
- package/dist/types/models/types/odrlTypes.d.ts +8 -0
- package/docs/changelog.md +15 -0
- package/docs/reference/classes/OdrlDataTypes.md +37 -0
- package/docs/reference/index.md +7 -2
- package/docs/reference/interfaces/IOdrlAgreement.md +180 -0
- package/docs/reference/interfaces/IOdrlConstraint.md +2 -2
- package/docs/reference/interfaces/IOdrlOffer.md +180 -0
- package/docs/reference/interfaces/IOdrlPolicy.md +6 -0
- package/docs/reference/interfaces/IOdrlSet.md +180 -0
- package/docs/reference/type-aliases/OdrlContextType.md +1 -1
- package/docs/reference/variables/OdrlContexts.md +4 -22
- package/docs/reference/variables/OdrlTypes.md +12 -0
- package/package.json +5 -3
- package/dist/types/models/types/dataTypes.d.ts +0 -37
- package/docs/reference/type-aliases/DataType.md +0 -5
- package/docs/reference/variables/DataType.md +0 -49
package/dist/types/index.d.ts
CHANGED
|
@@ -13,6 +13,9 @@ export * from "./models/IOdrlPolicyMetadata";
|
|
|
13
13
|
export * from "./models/IOdrlAssetCollection";
|
|
14
14
|
export * from "./models/IOdrlLogicalConstraint";
|
|
15
15
|
export * from "./models/IOdrlPartyCollection";
|
|
16
|
+
export * from "./models/IOdrlAgreement";
|
|
17
|
+
export * from "./models/IOdrlOffer";
|
|
18
|
+
export * from "./models/IOdrlSet";
|
|
16
19
|
export * from "./models/types/policyTypes";
|
|
17
20
|
export * from "./models/types/ruleTypes";
|
|
18
21
|
export * from "./models/types/conflictStrategyTypes";
|
|
@@ -20,8 +23,8 @@ export * from "./models/types/statusTypes";
|
|
|
20
23
|
export * from "./models/types/operatorTypes";
|
|
21
24
|
export * from "./models/types/logicalConstraintType";
|
|
22
25
|
export * from "./models/types/actionTypes";
|
|
23
|
-
export * from "./models/types/dataTypes";
|
|
24
26
|
export * from "./models/types/leftOperandTypes";
|
|
25
27
|
export * from "./models/types/uriActionTypes";
|
|
26
28
|
export * from "./models/types/rightOperandTypes";
|
|
27
29
|
export * from "./models/odrlContextType";
|
|
30
|
+
export * from "./dataTypes/odrlDataTypes";
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { IOdrlParty } from "./IOdrlParty";
|
|
2
|
+
import type { IOdrlPolicy } from "./IOdrlPolicy";
|
|
3
|
+
import type { OdrlTypes } from "./types/odrlTypes";
|
|
4
|
+
/**
|
|
5
|
+
* Interface representing an ODRL Agreement.
|
|
6
|
+
* An Agreement requires both an assigner and assignee (both agreeing parties).
|
|
7
|
+
*/
|
|
8
|
+
export interface IOdrlAgreement extends IOdrlPolicy {
|
|
9
|
+
/**
|
|
10
|
+
* The type must be "Agreement".
|
|
11
|
+
*/
|
|
12
|
+
"@type": typeof OdrlTypes.Agreement;
|
|
13
|
+
/**
|
|
14
|
+
* The assigner of the agreement.
|
|
15
|
+
* Required for Agreement policies.
|
|
16
|
+
*/
|
|
17
|
+
assigner: string | IOdrlParty;
|
|
18
|
+
/**
|
|
19
|
+
* The assignee of the agreement.
|
|
20
|
+
* Required for Agreement policies.
|
|
21
|
+
*/
|
|
22
|
+
assignee: string | IOdrlParty;
|
|
23
|
+
}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { IJsonLdNodeObject } from "@twin.org/data-json-ld";
|
|
2
|
-
import type { DataType } from "./types/dataTypes";
|
|
3
2
|
import type { LeftOperandType } from "./types/leftOperandTypes";
|
|
4
3
|
import type { OperatorType } from "./types/operatorTypes";
|
|
5
4
|
import type { StatusType } from "./types/statusTypes";
|
|
@@ -26,7 +25,7 @@ export interface IOdrlConstraint extends IJsonLdNodeObject {
|
|
|
26
25
|
*/
|
|
27
26
|
rightOperand?: string | {
|
|
28
27
|
"@value": string;
|
|
29
|
-
"@type"?:
|
|
28
|
+
"@type"?: string;
|
|
30
29
|
} | {
|
|
31
30
|
"@id": string;
|
|
32
31
|
};
|
|
@@ -37,7 +36,7 @@ export interface IOdrlConstraint extends IJsonLdNodeObject {
|
|
|
37
36
|
/**
|
|
38
37
|
* The data type of the right operand.
|
|
39
38
|
*/
|
|
40
|
-
dataType?:
|
|
39
|
+
dataType?: string;
|
|
41
40
|
/**
|
|
42
41
|
* The unit for the right operand value.
|
|
43
42
|
*/
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { IOdrlParty } from "./IOdrlParty";
|
|
2
|
+
import type { IOdrlPolicy } from "./IOdrlPolicy";
|
|
3
|
+
import type { OdrlTypes } from "./types/odrlTypes";
|
|
4
|
+
/**
|
|
5
|
+
* Interface representing an ODRL Offer.
|
|
6
|
+
* An Offer requires an assigner (the party making the offer).
|
|
7
|
+
*/
|
|
8
|
+
export interface IOdrlOffer extends IOdrlPolicy {
|
|
9
|
+
/**
|
|
10
|
+
* The type must be "Offer".
|
|
11
|
+
*/
|
|
12
|
+
"@type": typeof OdrlTypes.Offer;
|
|
13
|
+
/**
|
|
14
|
+
* The assigner of the offer.
|
|
15
|
+
* Required for Offer policies.
|
|
16
|
+
*/
|
|
17
|
+
assigner: string | IOdrlParty;
|
|
18
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { IOdrlPolicy } from "./IOdrlPolicy";
|
|
2
|
+
import type { OdrlTypes } from "./types/odrlTypes";
|
|
3
|
+
/**
|
|
4
|
+
* Interface representing an ODRL Set.
|
|
5
|
+
* A Set is a basic policy type with no specific party requirements.
|
|
6
|
+
*/
|
|
7
|
+
export interface IOdrlSet extends IOdrlPolicy {
|
|
8
|
+
/**
|
|
9
|
+
* The type must be "Set".
|
|
10
|
+
*/
|
|
11
|
+
"@type": typeof OdrlTypes.Set;
|
|
12
|
+
}
|
|
@@ -3,12 +3,12 @@ import type { OdrlContexts } from "./odrlContexts";
|
|
|
3
3
|
/**
|
|
4
4
|
* The ODRL JSON-LD context type.
|
|
5
5
|
*/
|
|
6
|
-
export type OdrlContextType = typeof OdrlContexts.
|
|
6
|
+
export type OdrlContextType = typeof OdrlContexts.ContextRoot | [typeof OdrlContexts.ContextRoot, ...IJsonLdContextDefinitionElement[]] | [
|
|
7
7
|
...IJsonLdContextDefinitionElement[],
|
|
8
|
-
typeof OdrlContexts.
|
|
8
|
+
typeof OdrlContexts.ContextRoot,
|
|
9
9
|
IJsonLdContextDefinitionElement
|
|
10
10
|
] | [
|
|
11
11
|
IJsonLdContextDefinitionElement,
|
|
12
|
-
typeof OdrlContexts.
|
|
12
|
+
typeof OdrlContexts.ContextRoot,
|
|
13
13
|
...IJsonLdContextDefinitionElement[]
|
|
14
14
|
];
|
|
@@ -5,23 +5,11 @@ export declare const OdrlContexts: {
|
|
|
5
5
|
/**
|
|
6
6
|
* The context root for ODRL.
|
|
7
7
|
*/
|
|
8
|
-
readonly
|
|
8
|
+
readonly ContextRedirect: "https://www.w3.org/ns/odrl.jsonld";
|
|
9
9
|
/**
|
|
10
10
|
* The context root for ODRL vocabulary.
|
|
11
11
|
*/
|
|
12
|
-
readonly
|
|
13
|
-
/**
|
|
14
|
-
* The context root for Dublin Core Terms.
|
|
15
|
-
*/
|
|
16
|
-
readonly ContextDcTerms: "https://purl.org/dc/terms/";
|
|
17
|
-
/**
|
|
18
|
-
* The context root for RDF.
|
|
19
|
-
*/
|
|
20
|
-
readonly ContextRdf: "https://www.w3.org/1999/02/22-rdf-syntax-ns#";
|
|
21
|
-
/**
|
|
22
|
-
* The context root for XSD.
|
|
23
|
-
*/
|
|
24
|
-
readonly ContextXsd: "https://www.w3.org/2001/XMLSchema#";
|
|
12
|
+
readonly ContextRoot: "https://www.w3.org/ns/odrl/2/";
|
|
25
13
|
};
|
|
26
14
|
/**
|
|
27
15
|
* The contexts for ODRL.
|
|
@@ -62,6 +62,14 @@ export declare const OdrlTypes: {
|
|
|
62
62
|
* LogicalConstraint type.
|
|
63
63
|
*/
|
|
64
64
|
readonly LogicalConstraint: "LogicalConstraint";
|
|
65
|
+
/**
|
|
66
|
+
* ContextType.
|
|
67
|
+
*/
|
|
68
|
+
readonly ContextType: "ContextType";
|
|
69
|
+
/**
|
|
70
|
+
* PolicyMetadata type.
|
|
71
|
+
*/
|
|
72
|
+
readonly PolicyMetadata: "PolicyMetadata";
|
|
65
73
|
};
|
|
66
74
|
/**
|
|
67
75
|
* The types for ODRL.
|
package/docs/changelog.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# @twin.org/standards-w3c-odrl - Changelog
|
|
2
2
|
|
|
3
|
+
## [0.0.1-next.45](https://github.com/twinfoundation/standards/compare/standards-w3c-odrl-v0.0.1-next.44...standards-w3c-odrl-v0.0.1-next.45) (2025-06-02)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* update ODRL data types and context definitions ([#31](https://github.com/twinfoundation/standards/issues/31)) ([ade0169](https://github.com/twinfoundation/standards/commit/ade0169d1049e7812bfc128ce5c16512548714fa))
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Dependencies
|
|
12
|
+
|
|
13
|
+
* The following workspace dependencies were updated
|
|
14
|
+
* dependencies
|
|
15
|
+
* @twin.org/standards-w3c-vcard bumped from 0.0.1-next.44 to 0.0.1-next.45
|
|
16
|
+
* @twin.org/standards-dublin-core bumped from 0.0.1-next.44 to 0.0.1-next.45
|
|
17
|
+
|
|
3
18
|
## [0.0.1-next.44](https://github.com/twinfoundation/standards/compare/standards-w3c-odrl-v0.0.1-next.43...standards-w3c-odrl-v0.0.1-next.44) (2025-05-28)
|
|
4
19
|
|
|
5
20
|
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Class: OdrlDataTypes
|
|
2
|
+
|
|
3
|
+
Handle all the data types for ODRL.
|
|
4
|
+
|
|
5
|
+
## Constructors
|
|
6
|
+
|
|
7
|
+
### Constructor
|
|
8
|
+
|
|
9
|
+
> **new OdrlDataTypes**(): `OdrlDataTypes`
|
|
10
|
+
|
|
11
|
+
#### Returns
|
|
12
|
+
|
|
13
|
+
`OdrlDataTypes`
|
|
14
|
+
|
|
15
|
+
## Methods
|
|
16
|
+
|
|
17
|
+
### registerRedirects()
|
|
18
|
+
|
|
19
|
+
> `static` **registerRedirects**(): `void`
|
|
20
|
+
|
|
21
|
+
Register the JSON-LD Redirects.
|
|
22
|
+
|
|
23
|
+
#### Returns
|
|
24
|
+
|
|
25
|
+
`void`
|
|
26
|
+
|
|
27
|
+
***
|
|
28
|
+
|
|
29
|
+
### registerTypes()
|
|
30
|
+
|
|
31
|
+
> `static` **registerTypes**(): `void`
|
|
32
|
+
|
|
33
|
+
Register all the data types.
|
|
34
|
+
|
|
35
|
+
#### Returns
|
|
36
|
+
|
|
37
|
+
`void`
|
package/docs/reference/index.md
CHANGED
|
@@ -1,13 +1,19 @@
|
|
|
1
1
|
# @twin.org/standards-w3c-odrl
|
|
2
2
|
|
|
3
|
+
## Classes
|
|
4
|
+
|
|
5
|
+
- [OdrlDataTypes](classes/OdrlDataTypes.md)
|
|
6
|
+
|
|
3
7
|
## Interfaces
|
|
4
8
|
|
|
5
9
|
- [IOdrlAction](interfaces/IOdrlAction.md)
|
|
10
|
+
- [IOdrlAgreement](interfaces/IOdrlAgreement.md)
|
|
6
11
|
- [IOdrlAsset](interfaces/IOdrlAsset.md)
|
|
7
12
|
- [IOdrlAssetCollection](interfaces/IOdrlAssetCollection.md)
|
|
8
13
|
- [IOdrlConstraint](interfaces/IOdrlConstraint.md)
|
|
9
14
|
- [IOdrlDuty](interfaces/IOdrlDuty.md)
|
|
10
15
|
- [IOdrlLogicalConstraint](interfaces/IOdrlLogicalConstraint.md)
|
|
16
|
+
- [IOdrlOffer](interfaces/IOdrlOffer.md)
|
|
11
17
|
- [IOdrlParty](interfaces/IOdrlParty.md)
|
|
12
18
|
- [IOdrlPartyCollection](interfaces/IOdrlPartyCollection.md)
|
|
13
19
|
- [IOdrlPermission](interfaces/IOdrlPermission.md)
|
|
@@ -15,6 +21,7 @@
|
|
|
15
21
|
- [IOdrlPolicyMetadata](interfaces/IOdrlPolicyMetadata.md)
|
|
16
22
|
- [IOdrlProhibition](interfaces/IOdrlProhibition.md)
|
|
17
23
|
- [IOdrlRule](interfaces/IOdrlRule.md)
|
|
24
|
+
- [IOdrlSet](interfaces/IOdrlSet.md)
|
|
18
25
|
|
|
19
26
|
## Type Aliases
|
|
20
27
|
|
|
@@ -22,7 +29,6 @@
|
|
|
22
29
|
- [OdrlContexts](type-aliases/OdrlContexts.md)
|
|
23
30
|
- [ActionType](type-aliases/ActionType.md)
|
|
24
31
|
- [ConflictStrategyType](type-aliases/ConflictStrategyType.md)
|
|
25
|
-
- [DataType](type-aliases/DataType.md)
|
|
26
32
|
- [LeftOperandType](type-aliases/LeftOperandType.md)
|
|
27
33
|
- [LogicalConstraintType](type-aliases/LogicalConstraintType.md)
|
|
28
34
|
- [OdrlTypes](type-aliases/OdrlTypes.md)
|
|
@@ -38,7 +44,6 @@
|
|
|
38
44
|
- [OdrlContexts](variables/OdrlContexts.md)
|
|
39
45
|
- [ActionTypes](variables/ActionTypes.md)
|
|
40
46
|
- [ConflictStrategyTypes](variables/ConflictStrategyTypes.md)
|
|
41
|
-
- [DataType](variables/DataType.md)
|
|
42
47
|
- [LeftOperandType](variables/LeftOperandType.md)
|
|
43
48
|
- [LogicalConstraintType](variables/LogicalConstraintType.md)
|
|
44
49
|
- [OdrlTypes](variables/OdrlTypes.md)
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
# Interface: IOdrlAgreement
|
|
2
|
+
|
|
3
|
+
Interface representing an ODRL Agreement.
|
|
4
|
+
An Agreement requires both an assigner and assignee (both agreeing parties).
|
|
5
|
+
|
|
6
|
+
## Extends
|
|
7
|
+
|
|
8
|
+
- [`IOdrlPolicy`](IOdrlPolicy.md)
|
|
9
|
+
|
|
10
|
+
## Indexable
|
|
11
|
+
|
|
12
|
+
\[`key`: `string`\]: `undefined` \| `null` \| `string` \| `number` \| `boolean` \| `string`[] \| `IJsonLdContextDefinition` \| `IJsonLdContextDefinitionElement`[] \| `IJsonLdIdMap` \| `IJsonLdNodeObject` \| `IJsonLdListObject` \| `object` & `object` \| `object` & `object` \| `object` & `object` \| `IJsonLdSetObject` \| `IJsonLdJsonObject` \| `IJsonLdIndexMap` \| `IJsonLdLanguageMap` \| `IJsonLdGraphObject` \| `IJsonLdNodeObject`[] \| `IJsonLdJsonObject`[] \| \{[`key`: `string`]: `string`; \} \| `IJsonLdTypeMap` \| `IJsonLdNodePrimitive`[]
|
|
13
|
+
|
|
14
|
+
## Properties
|
|
15
|
+
|
|
16
|
+
### @type
|
|
17
|
+
|
|
18
|
+
> **@type**: `"Agreement"`
|
|
19
|
+
|
|
20
|
+
The type must be "Agreement".
|
|
21
|
+
|
|
22
|
+
#### Overrides
|
|
23
|
+
|
|
24
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`@type`](IOdrlPolicy.md#type)
|
|
25
|
+
|
|
26
|
+
***
|
|
27
|
+
|
|
28
|
+
### assigner
|
|
29
|
+
|
|
30
|
+
> **assigner**: `string` \| [`IOdrlParty`](IOdrlParty.md)
|
|
31
|
+
|
|
32
|
+
The assigner of the agreement.
|
|
33
|
+
Required for Agreement policies.
|
|
34
|
+
|
|
35
|
+
#### Overrides
|
|
36
|
+
|
|
37
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`assigner`](IOdrlPolicy.md#assigner)
|
|
38
|
+
|
|
39
|
+
***
|
|
40
|
+
|
|
41
|
+
### assignee
|
|
42
|
+
|
|
43
|
+
> **assignee**: `string` \| [`IOdrlParty`](IOdrlParty.md)
|
|
44
|
+
|
|
45
|
+
The assignee of the agreement.
|
|
46
|
+
Required for Agreement policies.
|
|
47
|
+
|
|
48
|
+
#### Overrides
|
|
49
|
+
|
|
50
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`assignee`](IOdrlPolicy.md#assignee)
|
|
51
|
+
|
|
52
|
+
***
|
|
53
|
+
|
|
54
|
+
### @context
|
|
55
|
+
|
|
56
|
+
> **@context**: [`OdrlContextType`](../type-aliases/OdrlContextType.md)
|
|
57
|
+
|
|
58
|
+
The context for the policy.
|
|
59
|
+
Must include "https://www.w3.org/ns/odrl.jsonld"
|
|
60
|
+
|
|
61
|
+
#### Inherited from
|
|
62
|
+
|
|
63
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`@context`](IOdrlPolicy.md#context)
|
|
64
|
+
|
|
65
|
+
***
|
|
66
|
+
|
|
67
|
+
### uid
|
|
68
|
+
|
|
69
|
+
> **uid**: `string`
|
|
70
|
+
|
|
71
|
+
The unique identifier for the policy.
|
|
72
|
+
Must be an IRI.
|
|
73
|
+
|
|
74
|
+
#### Inherited from
|
|
75
|
+
|
|
76
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`uid`](IOdrlPolicy.md#uid)
|
|
77
|
+
|
|
78
|
+
***
|
|
79
|
+
|
|
80
|
+
### profile?
|
|
81
|
+
|
|
82
|
+
> `optional` **profile**: `string` \| `string`[]
|
|
83
|
+
|
|
84
|
+
The profile(s) this policy conforms to.
|
|
85
|
+
IRIs identifying the ODRL Profile(s).
|
|
86
|
+
|
|
87
|
+
#### Inherited from
|
|
88
|
+
|
|
89
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`profile`](IOdrlPolicy.md#profile)
|
|
90
|
+
|
|
91
|
+
***
|
|
92
|
+
|
|
93
|
+
### target?
|
|
94
|
+
|
|
95
|
+
> `optional` **target**: `string` \| [`IOdrlAsset`](IOdrlAsset.md) \| (`string` \| [`IOdrlAsset`](IOdrlAsset.md))[]
|
|
96
|
+
|
|
97
|
+
The target asset for the rule.
|
|
98
|
+
|
|
99
|
+
#### Inherited from
|
|
100
|
+
|
|
101
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`target`](IOdrlPolicy.md#target)
|
|
102
|
+
|
|
103
|
+
***
|
|
104
|
+
|
|
105
|
+
### action?
|
|
106
|
+
|
|
107
|
+
> `optional` **action**: [`ActionType`](../type-aliases/ActionType.md) \| [`IOdrlAction`](IOdrlAction.md) \| ActionType \| IOdrlAction[]
|
|
108
|
+
|
|
109
|
+
The action associated with the rule.
|
|
110
|
+
|
|
111
|
+
#### Inherited from
|
|
112
|
+
|
|
113
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`action`](IOdrlPolicy.md#action)
|
|
114
|
+
|
|
115
|
+
***
|
|
116
|
+
|
|
117
|
+
### inheritFrom?
|
|
118
|
+
|
|
119
|
+
> `optional` **inheritFrom**: `string` \| `string`[]
|
|
120
|
+
|
|
121
|
+
The parent policy(ies) this policy inherits from.
|
|
122
|
+
IRIs identifying the parent Policy(ies).
|
|
123
|
+
|
|
124
|
+
#### Inherited from
|
|
125
|
+
|
|
126
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`inheritFrom`](IOdrlPolicy.md#inheritfrom)
|
|
127
|
+
|
|
128
|
+
***
|
|
129
|
+
|
|
130
|
+
### conflict?
|
|
131
|
+
|
|
132
|
+
> `optional` **conflict**: [`ConflictStrategyType`](../type-aliases/ConflictStrategyType.md)
|
|
133
|
+
|
|
134
|
+
The conflict resolution strategy.
|
|
135
|
+
- perm: Permissions override Prohibitions
|
|
136
|
+
- prohibit: Prohibitions override Permissions
|
|
137
|
+
- invalid: Policy is void if conflicts exist (default)
|
|
138
|
+
|
|
139
|
+
#### Inherited from
|
|
140
|
+
|
|
141
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`conflict`](IOdrlPolicy.md#conflict)
|
|
142
|
+
|
|
143
|
+
***
|
|
144
|
+
|
|
145
|
+
### permission?
|
|
146
|
+
|
|
147
|
+
> `optional` **permission**: [`IOdrlPermission`](IOdrlPermission.md)[]
|
|
148
|
+
|
|
149
|
+
The permissions in the policy.
|
|
150
|
+
At least one of permission, prohibition, or obligation must be present.
|
|
151
|
+
|
|
152
|
+
#### Inherited from
|
|
153
|
+
|
|
154
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`permission`](IOdrlPolicy.md#permission)
|
|
155
|
+
|
|
156
|
+
***
|
|
157
|
+
|
|
158
|
+
### prohibition?
|
|
159
|
+
|
|
160
|
+
> `optional` **prohibition**: [`IOdrlProhibition`](IOdrlProhibition.md)[]
|
|
161
|
+
|
|
162
|
+
The prohibitions in the policy.
|
|
163
|
+
At least one of permission, prohibition, or obligation must be present.
|
|
164
|
+
|
|
165
|
+
#### Inherited from
|
|
166
|
+
|
|
167
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`prohibition`](IOdrlPolicy.md#prohibition)
|
|
168
|
+
|
|
169
|
+
***
|
|
170
|
+
|
|
171
|
+
### obligation?
|
|
172
|
+
|
|
173
|
+
> `optional` **obligation**: [`IOdrlDuty`](IOdrlDuty.md)[]
|
|
174
|
+
|
|
175
|
+
The obligations in the policy.
|
|
176
|
+
At least one of permission, prohibition, or obligation must be present.
|
|
177
|
+
|
|
178
|
+
#### Inherited from
|
|
179
|
+
|
|
180
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`obligation`](IOdrlPolicy.md#obligation)
|
|
@@ -38,7 +38,7 @@ The operator of the constraint.
|
|
|
38
38
|
|
|
39
39
|
### rightOperand?
|
|
40
40
|
|
|
41
|
-
> `optional` **rightOperand**: `string` \| \{ `@value`: `string`; `@type`:
|
|
41
|
+
> `optional` **rightOperand**: `string` \| \{ `@value`: `string`; `@type`: `string`; \} \| \{ `@id`: `string`; \}
|
|
42
42
|
|
|
43
43
|
The right operand of the constraint.
|
|
44
44
|
value with optional
|
|
@@ -55,7 +55,7 @@ Reference to the right operand.
|
|
|
55
55
|
|
|
56
56
|
### dataType?
|
|
57
57
|
|
|
58
|
-
> `optional` **dataType**:
|
|
58
|
+
> `optional` **dataType**: `string`
|
|
59
59
|
|
|
60
60
|
The data type of the right operand.
|
|
61
61
|
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
# Interface: IOdrlOffer
|
|
2
|
+
|
|
3
|
+
Interface representing an ODRL Offer.
|
|
4
|
+
An Offer requires an assigner (the party making the offer).
|
|
5
|
+
|
|
6
|
+
## Extends
|
|
7
|
+
|
|
8
|
+
- [`IOdrlPolicy`](IOdrlPolicy.md)
|
|
9
|
+
|
|
10
|
+
## Indexable
|
|
11
|
+
|
|
12
|
+
\[`key`: `string`\]: `undefined` \| `null` \| `string` \| `number` \| `boolean` \| `string`[] \| `IJsonLdContextDefinition` \| `IJsonLdContextDefinitionElement`[] \| `IJsonLdIdMap` \| `IJsonLdNodeObject` \| `IJsonLdListObject` \| `object` & `object` \| `object` & `object` \| `object` & `object` \| `IJsonLdSetObject` \| `IJsonLdJsonObject` \| `IJsonLdIndexMap` \| `IJsonLdLanguageMap` \| `IJsonLdGraphObject` \| `IJsonLdNodeObject`[] \| `IJsonLdJsonObject`[] \| \{[`key`: `string`]: `string`; \} \| `IJsonLdTypeMap` \| `IJsonLdNodePrimitive`[]
|
|
13
|
+
|
|
14
|
+
## Properties
|
|
15
|
+
|
|
16
|
+
### @type
|
|
17
|
+
|
|
18
|
+
> **@type**: `"Offer"`
|
|
19
|
+
|
|
20
|
+
The type must be "Offer".
|
|
21
|
+
|
|
22
|
+
#### Overrides
|
|
23
|
+
|
|
24
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`@type`](IOdrlPolicy.md#type)
|
|
25
|
+
|
|
26
|
+
***
|
|
27
|
+
|
|
28
|
+
### assigner
|
|
29
|
+
|
|
30
|
+
> **assigner**: `string` \| [`IOdrlParty`](IOdrlParty.md)
|
|
31
|
+
|
|
32
|
+
The assigner of the offer.
|
|
33
|
+
Required for Offer policies.
|
|
34
|
+
|
|
35
|
+
#### Overrides
|
|
36
|
+
|
|
37
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`assigner`](IOdrlPolicy.md#assigner)
|
|
38
|
+
|
|
39
|
+
***
|
|
40
|
+
|
|
41
|
+
### @context
|
|
42
|
+
|
|
43
|
+
> **@context**: [`OdrlContextType`](../type-aliases/OdrlContextType.md)
|
|
44
|
+
|
|
45
|
+
The context for the policy.
|
|
46
|
+
Must include "https://www.w3.org/ns/odrl.jsonld"
|
|
47
|
+
|
|
48
|
+
#### Inherited from
|
|
49
|
+
|
|
50
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`@context`](IOdrlPolicy.md#context)
|
|
51
|
+
|
|
52
|
+
***
|
|
53
|
+
|
|
54
|
+
### uid
|
|
55
|
+
|
|
56
|
+
> **uid**: `string`
|
|
57
|
+
|
|
58
|
+
The unique identifier for the policy.
|
|
59
|
+
Must be an IRI.
|
|
60
|
+
|
|
61
|
+
#### Inherited from
|
|
62
|
+
|
|
63
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`uid`](IOdrlPolicy.md#uid)
|
|
64
|
+
|
|
65
|
+
***
|
|
66
|
+
|
|
67
|
+
### profile?
|
|
68
|
+
|
|
69
|
+
> `optional` **profile**: `string` \| `string`[]
|
|
70
|
+
|
|
71
|
+
The profile(s) this policy conforms to.
|
|
72
|
+
IRIs identifying the ODRL Profile(s).
|
|
73
|
+
|
|
74
|
+
#### Inherited from
|
|
75
|
+
|
|
76
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`profile`](IOdrlPolicy.md#profile)
|
|
77
|
+
|
|
78
|
+
***
|
|
79
|
+
|
|
80
|
+
### assignee?
|
|
81
|
+
|
|
82
|
+
> `optional` **assignee**: `string` \| [`IOdrlParty`](IOdrlParty.md)
|
|
83
|
+
|
|
84
|
+
The assignee of the policy.
|
|
85
|
+
Applies to all rules unless overridden at rule level.
|
|
86
|
+
|
|
87
|
+
#### Inherited from
|
|
88
|
+
|
|
89
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`assignee`](IOdrlPolicy.md#assignee)
|
|
90
|
+
|
|
91
|
+
***
|
|
92
|
+
|
|
93
|
+
### target?
|
|
94
|
+
|
|
95
|
+
> `optional` **target**: `string` \| [`IOdrlAsset`](IOdrlAsset.md) \| (`string` \| [`IOdrlAsset`](IOdrlAsset.md))[]
|
|
96
|
+
|
|
97
|
+
The target asset for the rule.
|
|
98
|
+
|
|
99
|
+
#### Inherited from
|
|
100
|
+
|
|
101
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`target`](IOdrlPolicy.md#target)
|
|
102
|
+
|
|
103
|
+
***
|
|
104
|
+
|
|
105
|
+
### action?
|
|
106
|
+
|
|
107
|
+
> `optional` **action**: [`ActionType`](../type-aliases/ActionType.md) \| [`IOdrlAction`](IOdrlAction.md) \| ActionType \| IOdrlAction[]
|
|
108
|
+
|
|
109
|
+
The action associated with the rule.
|
|
110
|
+
|
|
111
|
+
#### Inherited from
|
|
112
|
+
|
|
113
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`action`](IOdrlPolicy.md#action)
|
|
114
|
+
|
|
115
|
+
***
|
|
116
|
+
|
|
117
|
+
### inheritFrom?
|
|
118
|
+
|
|
119
|
+
> `optional` **inheritFrom**: `string` \| `string`[]
|
|
120
|
+
|
|
121
|
+
The parent policy(ies) this policy inherits from.
|
|
122
|
+
IRIs identifying the parent Policy(ies).
|
|
123
|
+
|
|
124
|
+
#### Inherited from
|
|
125
|
+
|
|
126
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`inheritFrom`](IOdrlPolicy.md#inheritfrom)
|
|
127
|
+
|
|
128
|
+
***
|
|
129
|
+
|
|
130
|
+
### conflict?
|
|
131
|
+
|
|
132
|
+
> `optional` **conflict**: [`ConflictStrategyType`](../type-aliases/ConflictStrategyType.md)
|
|
133
|
+
|
|
134
|
+
The conflict resolution strategy.
|
|
135
|
+
- perm: Permissions override Prohibitions
|
|
136
|
+
- prohibit: Prohibitions override Permissions
|
|
137
|
+
- invalid: Policy is void if conflicts exist (default)
|
|
138
|
+
|
|
139
|
+
#### Inherited from
|
|
140
|
+
|
|
141
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`conflict`](IOdrlPolicy.md#conflict)
|
|
142
|
+
|
|
143
|
+
***
|
|
144
|
+
|
|
145
|
+
### permission?
|
|
146
|
+
|
|
147
|
+
> `optional` **permission**: [`IOdrlPermission`](IOdrlPermission.md)[]
|
|
148
|
+
|
|
149
|
+
The permissions in the policy.
|
|
150
|
+
At least one of permission, prohibition, or obligation must be present.
|
|
151
|
+
|
|
152
|
+
#### Inherited from
|
|
153
|
+
|
|
154
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`permission`](IOdrlPolicy.md#permission)
|
|
155
|
+
|
|
156
|
+
***
|
|
157
|
+
|
|
158
|
+
### prohibition?
|
|
159
|
+
|
|
160
|
+
> `optional` **prohibition**: [`IOdrlProhibition`](IOdrlProhibition.md)[]
|
|
161
|
+
|
|
162
|
+
The prohibitions in the policy.
|
|
163
|
+
At least one of permission, prohibition, or obligation must be present.
|
|
164
|
+
|
|
165
|
+
#### Inherited from
|
|
166
|
+
|
|
167
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`prohibition`](IOdrlPolicy.md#prohibition)
|
|
168
|
+
|
|
169
|
+
***
|
|
170
|
+
|
|
171
|
+
### obligation?
|
|
172
|
+
|
|
173
|
+
> `optional` **obligation**: [`IOdrlDuty`](IOdrlDuty.md)[]
|
|
174
|
+
|
|
175
|
+
The obligations in the policy.
|
|
176
|
+
At least one of permission, prohibition, or obligation must be present.
|
|
177
|
+
|
|
178
|
+
#### Inherited from
|
|
179
|
+
|
|
180
|
+
[`IOdrlPolicy`](IOdrlPolicy.md).[`obligation`](IOdrlPolicy.md#obligation)
|
|
@@ -6,6 +6,12 @@ Interface representing an ODRL Policy.
|
|
|
6
6
|
|
|
7
7
|
- `IJsonLdNodeObject`
|
|
8
8
|
|
|
9
|
+
## Extended by
|
|
10
|
+
|
|
11
|
+
- [`IOdrlAgreement`](IOdrlAgreement.md)
|
|
12
|
+
- [`IOdrlOffer`](IOdrlOffer.md)
|
|
13
|
+
- [`IOdrlSet`](IOdrlSet.md)
|
|
14
|
+
|
|
9
15
|
## Indexable
|
|
10
16
|
|
|
11
17
|
\[`key`: `string`\]: `undefined` \| `null` \| `string` \| `number` \| `boolean` \| `string`[] \| `IJsonLdContextDefinition` \| `IJsonLdContextDefinitionElement`[] \| `IJsonLdIdMap` \| `IJsonLdNodeObject` \| `IJsonLdListObject` \| `object` & `object` \| `object` & `object` \| `object` & `object` \| `IJsonLdSetObject` \| `IJsonLdJsonObject` \| `IJsonLdIndexMap` \| `IJsonLdLanguageMap` \| `IJsonLdGraphObject` \| `IJsonLdNodeObject`[] \| `IJsonLdJsonObject`[] \| \{[`key`: `string`]: `string`; \} \| `IJsonLdTypeMap` \| `IJsonLdNodePrimitive`[]
|