@twin.org/standards-w3c-odrl 0.0.1-next.21
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/LICENSE +201 -0
- package/README.md +21 -0
- package/dist/cjs/index.cjs +911 -0
- package/dist/esm/index.mjs +897 -0
- package/dist/types/index.d.ts +26 -0
- package/dist/types/models/IOdrlAction.d.ts +33 -0
- package/dist/types/models/IOdrlAsset.d.ts +27 -0
- package/dist/types/models/IOdrlAssetCollection.d.ts +21 -0
- package/dist/types/models/IOdrlConstraint.d.ts +49 -0
- package/dist/types/models/IOdrlDuty.d.ts +33 -0
- package/dist/types/models/IOdrlLogicalConstraint.d.ts +45 -0
- package/dist/types/models/IOdrlParty.d.ts +35 -0
- package/dist/types/models/IOdrlPartyCollection.d.ts +18 -0
- package/dist/types/models/IOdrlPermission.d.ts +14 -0
- package/dist/types/models/IOdrlPolicy.d.ts +81 -0
- package/dist/types/models/IOdrlPolicyMetadata.d.ts +58 -0
- package/dist/types/models/IOdrlProhibition.d.ts +11 -0
- package/dist/types/models/IOdrlRule.d.ts +41 -0
- package/dist/types/models/odrlContexts.d.ts +29 -0
- package/dist/types/models/types/actionTypes.d.ts +214 -0
- package/dist/types/models/types/conflictStrategyTypes.d.ts +21 -0
- package/dist/types/models/types/dataTypes.d.ts +37 -0
- package/dist/types/models/types/leftOperandTypes.d.ts +137 -0
- package/dist/types/models/types/logicalConstraintType.d.ts +25 -0
- package/dist/types/models/types/odrlTypes.d.ts +69 -0
- package/dist/types/models/types/operatorTypes.d.ts +65 -0
- package/dist/types/models/types/policyTypes.d.ts +25 -0
- package/dist/types/models/types/rightOperandTypes.d.ts +13 -0
- package/dist/types/models/types/ruleTypes.d.ts +21 -0
- package/dist/types/models/types/statusTypes.d.ts +25 -0
- package/dist/types/models/types/uriActionTypes.d.ts +215 -0
- package/docs/changelog.md +5 -0
- package/docs/examples.md +1 -0
- package/docs/reference/index.md +49 -0
- package/docs/reference/interfaces/IOdrlAction.md +61 -0
- package/docs/reference/interfaces/IOdrlAsset.md +55 -0
- package/docs/reference/interfaces/IOdrlAssetCollection.md +85 -0
- package/docs/reference/interfaces/IOdrlConstraint.md +76 -0
- package/docs/reference/interfaces/IOdrlDuty.md +144 -0
- package/docs/reference/interfaces/IOdrlLogicalConstraint.md +70 -0
- package/docs/reference/interfaces/IOdrlParty.md +67 -0
- package/docs/reference/interfaces/IOdrlPartyCollection.md +98 -0
- package/docs/reference/interfaces/IOdrlPermission.md +108 -0
- package/docs/reference/interfaces/IOdrlPolicy.md +136 -0
- package/docs/reference/interfaces/IOdrlPolicyMetadata.md +86 -0
- package/docs/reference/interfaces/IOdrlProhibition.md +105 -0
- package/docs/reference/interfaces/IOdrlRule.md +75 -0
- package/docs/reference/type-aliases/ActionType.md +5 -0
- package/docs/reference/type-aliases/ConflictStrategyType.md +5 -0
- package/docs/reference/type-aliases/DataType.md +5 -0
- package/docs/reference/type-aliases/LeftOperandType.md +5 -0
- package/docs/reference/type-aliases/LogicalConstraintType.md +5 -0
- package/docs/reference/type-aliases/OdrlContexts.md +5 -0
- package/docs/reference/type-aliases/OdrlTypes.md +5 -0
- package/docs/reference/type-aliases/OperatorType.md +5 -0
- package/docs/reference/type-aliases/PolicyType.md +5 -0
- package/docs/reference/type-aliases/RightOperandType.md +5 -0
- package/docs/reference/type-aliases/RuleType.md +5 -0
- package/docs/reference/type-aliases/StatusType.md +5 -0
- package/docs/reference/type-aliases/UriActionType.md +6 -0
- package/docs/reference/variables/ActionTypes.md +314 -0
- package/docs/reference/variables/ConflictStrategyTypes.md +25 -0
- package/docs/reference/variables/DataType.md +49 -0
- package/docs/reference/variables/LeftOperandType.md +199 -0
- package/docs/reference/variables/LogicalConstraintType.md +31 -0
- package/docs/reference/variables/OdrlContexts.md +37 -0
- package/docs/reference/variables/OdrlTypes.md +97 -0
- package/docs/reference/variables/OperatorType.md +91 -0
- package/docs/reference/variables/PolicyType.md +31 -0
- package/docs/reference/variables/RightOperandTypes.md +13 -0
- package/docs/reference/variables/RuleType.md +25 -0
- package/docs/reference/variables/StatusType.md +31 -0
- package/docs/reference/variables/UriActionTypes.md +314 -0
- package/locales/en.json +1 -0
- package/package.json +40 -0
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# Interface: IOdrlLogicalConstraint
|
|
2
|
+
|
|
3
|
+
Interface for ODRL Logical Constraints.
|
|
4
|
+
A Logical Constraint compares two or more existing Constraints by one logical operator.
|
|
5
|
+
If the comparison returns a logical match, then the Logical Constraint is satisfied.
|
|
6
|
+
|
|
7
|
+
## Extends
|
|
8
|
+
|
|
9
|
+
- `IJsonLdNodeObject`
|
|
10
|
+
|
|
11
|
+
## Indexable
|
|
12
|
+
|
|
13
|
+
\[`key`: `string`\]: `undefined` \| `null` \| `string` \| `number` \| `boolean` \| `string`[] \| `IJsonLdNodeObject` \| `IJsonLdContextDefinition` \| `IJsonLdContextDefinitionElement`[] \| `object` & `object` \| `object` & `object` \| `object` & `object` \| `IJsonLdNodeObject`[] \| `IJsonLdGraphObject` \| `IJsonLdListObject` \| `IJsonLdSetObject` \| `IJsonLdNodePrimitive`[] \| `IJsonLdLanguageMap` \| `IJsonLdIndexMap` \| `IJsonLdIdMap` \| `IJsonLdTypeMap` \| `IJsonLdJsonObject` \| `IJsonLdJsonObject`[] \| \{\}
|
|
14
|
+
|
|
15
|
+
## Properties
|
|
16
|
+
|
|
17
|
+
### uid?
|
|
18
|
+
|
|
19
|
+
> `optional` **uid**: `string`
|
|
20
|
+
|
|
21
|
+
Optional unique identifier for the logical constraint.
|
|
22
|
+
Must be an IRI.
|
|
23
|
+
|
|
24
|
+
***
|
|
25
|
+
|
|
26
|
+
### and?
|
|
27
|
+
|
|
28
|
+
> `optional` **and**: `object`
|
|
29
|
+
|
|
30
|
+
AND operator - all constraints must be satisfied.
|
|
31
|
+
|
|
32
|
+
#### @list
|
|
33
|
+
|
|
34
|
+
> **@list**: `object`[]
|
|
35
|
+
|
|
36
|
+
***
|
|
37
|
+
|
|
38
|
+
### or?
|
|
39
|
+
|
|
40
|
+
> `optional` **or**: `object`
|
|
41
|
+
|
|
42
|
+
OR operator - at least one constraint must be satisfied.
|
|
43
|
+
|
|
44
|
+
#### @list
|
|
45
|
+
|
|
46
|
+
> **@list**: `object`[]
|
|
47
|
+
|
|
48
|
+
***
|
|
49
|
+
|
|
50
|
+
### xone?
|
|
51
|
+
|
|
52
|
+
> `optional` **xone**: `object`
|
|
53
|
+
|
|
54
|
+
XOR operator - exactly one constraint must be satisfied.
|
|
55
|
+
|
|
56
|
+
#### @list
|
|
57
|
+
|
|
58
|
+
> **@list**: `object`[]
|
|
59
|
+
|
|
60
|
+
***
|
|
61
|
+
|
|
62
|
+
### andSequence?
|
|
63
|
+
|
|
64
|
+
> `optional` **andSequence**: `object`
|
|
65
|
+
|
|
66
|
+
AND Sequence operator - all constraints must be satisfied in order.
|
|
67
|
+
|
|
68
|
+
#### @list
|
|
69
|
+
|
|
70
|
+
> **@list**: `object`[]
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# Interface: IOdrlParty
|
|
2
|
+
|
|
3
|
+
Interface for ODRL Parties.
|
|
4
|
+
|
|
5
|
+
## Extends
|
|
6
|
+
|
|
7
|
+
- `IJsonLdNodeObject`
|
|
8
|
+
|
|
9
|
+
## Extended by
|
|
10
|
+
|
|
11
|
+
- [`IOdrlPartyCollection`](IOdrlPartyCollection.md)
|
|
12
|
+
|
|
13
|
+
## Indexable
|
|
14
|
+
|
|
15
|
+
\[`key`: `string`\]: `undefined` \| `null` \| `string` \| `number` \| `boolean` \| `string`[] \| `IJsonLdNodeObject` \| `IJsonLdContextDefinition` \| `IJsonLdContextDefinitionElement`[] \| `object` & `object` \| `object` & `object` \| `object` & `object` \| `IJsonLdNodeObject`[] \| `IJsonLdGraphObject` \| `IJsonLdListObject` \| `IJsonLdSetObject` \| `IJsonLdNodePrimitive`[] \| `IJsonLdLanguageMap` \| `IJsonLdIndexMap` \| `IJsonLdIdMap` \| `IJsonLdTypeMap` \| `IJsonLdJsonObject` \| `IJsonLdJsonObject`[] \| \{\}
|
|
16
|
+
|
|
17
|
+
## Properties
|
|
18
|
+
|
|
19
|
+
### uid?
|
|
20
|
+
|
|
21
|
+
> `optional` **uid**: `string`
|
|
22
|
+
|
|
23
|
+
The unique identifier for the party.
|
|
24
|
+
Must be an IRI.
|
|
25
|
+
|
|
26
|
+
***
|
|
27
|
+
|
|
28
|
+
### @type?
|
|
29
|
+
|
|
30
|
+
> `optional` **@type**: `string` \| `string`[]
|
|
31
|
+
|
|
32
|
+
The type of the party.
|
|
33
|
+
Can be used to specify additional type information (e.g., "Party",
|
|
34
|
+
"vcard:Organization", "vcard:Individual").
|
|
35
|
+
|
|
36
|
+
#### Overrides
|
|
37
|
+
|
|
38
|
+
`IJsonLdNodeObject.@type`
|
|
39
|
+
|
|
40
|
+
***
|
|
41
|
+
|
|
42
|
+
### partOf?
|
|
43
|
+
|
|
44
|
+
> `optional` **partOf**: `string` \| [`IOdrlPartyCollection`](IOdrlPartyCollection.md)
|
|
45
|
+
|
|
46
|
+
Reference to the party collection this party is part of.
|
|
47
|
+
Used to identify a PartyCollection that a Party entity is a member of.
|
|
48
|
+
|
|
49
|
+
***
|
|
50
|
+
|
|
51
|
+
### assigneeOf?
|
|
52
|
+
|
|
53
|
+
> `optional` **assigneeOf**: `string`
|
|
54
|
+
|
|
55
|
+
Reference to a policy where this party is an assignee.
|
|
56
|
+
When assigneeOf is asserted, the Party MUST be inferred to undertake
|
|
57
|
+
the assignee functional role of all the Rules of that Policy.
|
|
58
|
+
|
|
59
|
+
***
|
|
60
|
+
|
|
61
|
+
### assignerOf?
|
|
62
|
+
|
|
63
|
+
> `optional` **assignerOf**: `string`
|
|
64
|
+
|
|
65
|
+
Reference to a policy where this party is an assigner.
|
|
66
|
+
When assignerOf is asserted, the Party MUST be inferred to undertake
|
|
67
|
+
the assigner functional role of all the Rules of that Policy.
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
# Interface: IOdrlPartyCollection
|
|
2
|
+
|
|
3
|
+
Interface for ODRL Party Collections.
|
|
4
|
+
A PartyCollection identifies a collection of entities and is a subclass of Party.
|
|
5
|
+
|
|
6
|
+
## Extends
|
|
7
|
+
|
|
8
|
+
- [`IOdrlParty`](IOdrlParty.md)
|
|
9
|
+
|
|
10
|
+
## Indexable
|
|
11
|
+
|
|
12
|
+
\[`key`: `string`\]: `undefined` \| `null` \| `string` \| `number` \| `boolean` \| `string`[] \| `IJsonLdNodeObject` \| `IJsonLdContextDefinition` \| `IJsonLdContextDefinitionElement`[] \| `object` & `object` \| `object` & `object` \| `object` & `object` \| `IJsonLdNodeObject`[] \| `IJsonLdGraphObject` \| `IJsonLdListObject` \| `IJsonLdSetObject` \| `IJsonLdNodePrimitive`[] \| `IJsonLdLanguageMap` \| `IJsonLdIndexMap` \| `IJsonLdIdMap` \| `IJsonLdTypeMap` \| `IJsonLdJsonObject` \| `IJsonLdJsonObject`[] \| \{\}
|
|
13
|
+
|
|
14
|
+
## Properties
|
|
15
|
+
|
|
16
|
+
### uid?
|
|
17
|
+
|
|
18
|
+
> `optional` **uid**: `string`
|
|
19
|
+
|
|
20
|
+
The unique identifier for the party.
|
|
21
|
+
Must be an IRI.
|
|
22
|
+
|
|
23
|
+
#### Inherited from
|
|
24
|
+
|
|
25
|
+
[`IOdrlParty`](IOdrlParty.md).[`uid`](IOdrlParty.md#uid)
|
|
26
|
+
|
|
27
|
+
***
|
|
28
|
+
|
|
29
|
+
### @type?
|
|
30
|
+
|
|
31
|
+
> `optional` **@type**: `string` \| `string`[]
|
|
32
|
+
|
|
33
|
+
The type of the party.
|
|
34
|
+
Can be used to specify additional type information (e.g., "Party",
|
|
35
|
+
"vcard:Organization", "vcard:Individual").
|
|
36
|
+
|
|
37
|
+
#### Inherited from
|
|
38
|
+
|
|
39
|
+
[`IOdrlParty`](IOdrlParty.md).[`@type`](IOdrlParty.md#@type)
|
|
40
|
+
|
|
41
|
+
***
|
|
42
|
+
|
|
43
|
+
### partOf?
|
|
44
|
+
|
|
45
|
+
> `optional` **partOf**: `string` \| [`IOdrlPartyCollection`](IOdrlPartyCollection.md)
|
|
46
|
+
|
|
47
|
+
Reference to the party collection this party is part of.
|
|
48
|
+
Used to identify a PartyCollection that a Party entity is a member of.
|
|
49
|
+
|
|
50
|
+
#### Inherited from
|
|
51
|
+
|
|
52
|
+
[`IOdrlParty`](IOdrlParty.md).[`partOf`](IOdrlParty.md#partof)
|
|
53
|
+
|
|
54
|
+
***
|
|
55
|
+
|
|
56
|
+
### assigneeOf?
|
|
57
|
+
|
|
58
|
+
> `optional` **assigneeOf**: `string`
|
|
59
|
+
|
|
60
|
+
Reference to a policy where this party is an assignee.
|
|
61
|
+
When assigneeOf is asserted, the Party MUST be inferred to undertake
|
|
62
|
+
the assignee functional role of all the Rules of that Policy.
|
|
63
|
+
|
|
64
|
+
#### Inherited from
|
|
65
|
+
|
|
66
|
+
[`IOdrlParty`](IOdrlParty.md).[`assigneeOf`](IOdrlParty.md#assigneeof)
|
|
67
|
+
|
|
68
|
+
***
|
|
69
|
+
|
|
70
|
+
### assignerOf?
|
|
71
|
+
|
|
72
|
+
> `optional` **assignerOf**: `string`
|
|
73
|
+
|
|
74
|
+
Reference to a policy where this party is an assigner.
|
|
75
|
+
When assignerOf is asserted, the Party MUST be inferred to undertake
|
|
76
|
+
the assigner functional role of all the Rules of that Policy.
|
|
77
|
+
|
|
78
|
+
#### Inherited from
|
|
79
|
+
|
|
80
|
+
[`IOdrlParty`](IOdrlParty.md).[`assignerOf`](IOdrlParty.md#assignerof)
|
|
81
|
+
|
|
82
|
+
***
|
|
83
|
+
|
|
84
|
+
### source
|
|
85
|
+
|
|
86
|
+
> **source**: `string`
|
|
87
|
+
|
|
88
|
+
Reference to the source of the party collection.
|
|
89
|
+
Used to identify the origin or location of the collection.
|
|
90
|
+
|
|
91
|
+
***
|
|
92
|
+
|
|
93
|
+
### refinement?
|
|
94
|
+
|
|
95
|
+
> `optional` **refinement**: [`IOdrlConstraint`](IOdrlConstraint.md)[]
|
|
96
|
+
|
|
97
|
+
Refinements applied to the party collection.
|
|
98
|
+
Used to specify constraints that apply to all members of the collection.
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
# Interface: IOdrlPermission
|
|
2
|
+
|
|
3
|
+
Interface for Permission Rules.
|
|
4
|
+
A Permission allows an action to be exercised on an Asset
|
|
5
|
+
if all constraints are satisfied and if all duties are fulfilled.
|
|
6
|
+
|
|
7
|
+
## Extends
|
|
8
|
+
|
|
9
|
+
- [`IOdrlRule`](IOdrlRule.md)
|
|
10
|
+
|
|
11
|
+
## Indexable
|
|
12
|
+
|
|
13
|
+
\[`key`: `string`\]: `undefined` \| `null` \| `string` \| `number` \| `boolean` \| `string`[] \| `IJsonLdNodeObject` \| `IJsonLdContextDefinition` \| `IJsonLdContextDefinitionElement`[] \| `object` & `object` \| `object` & `object` \| `object` & `object` \| `IJsonLdNodeObject`[] \| `IJsonLdGraphObject` \| `IJsonLdListObject` \| `IJsonLdSetObject` \| `IJsonLdNodePrimitive`[] \| `IJsonLdLanguageMap` \| `IJsonLdIndexMap` \| `IJsonLdIdMap` \| `IJsonLdTypeMap` \| `IJsonLdJsonObject` \| `IJsonLdJsonObject`[] \| \{\}
|
|
14
|
+
|
|
15
|
+
## Properties
|
|
16
|
+
|
|
17
|
+
### duty?
|
|
18
|
+
|
|
19
|
+
> `optional` **duty**: [`IOdrlDuty`](IOdrlDuty.md)[]
|
|
20
|
+
|
|
21
|
+
The duties that must be fulfilled before the permission can be exercised.
|
|
22
|
+
A Permission MAY have none, one, or more duty property values.
|
|
23
|
+
|
|
24
|
+
***
|
|
25
|
+
|
|
26
|
+
### uid?
|
|
27
|
+
|
|
28
|
+
> `optional` **uid**: `string`
|
|
29
|
+
|
|
30
|
+
Optional unique identifier for the rule.
|
|
31
|
+
|
|
32
|
+
#### Inherited from
|
|
33
|
+
|
|
34
|
+
[`IOdrlRule`](IOdrlRule.md).[`uid`](IOdrlRule.md#uid)
|
|
35
|
+
|
|
36
|
+
***
|
|
37
|
+
|
|
38
|
+
### action?
|
|
39
|
+
|
|
40
|
+
> `optional` **action**: [`ActionType`](../type-aliases/ActionType.md) \| [`IOdrlAction`](IOdrlAction.md) \| ActionType \| IOdrlAction[]
|
|
41
|
+
|
|
42
|
+
The action associated with the rule.
|
|
43
|
+
|
|
44
|
+
#### Inherited from
|
|
45
|
+
|
|
46
|
+
[`IOdrlRule`](IOdrlRule.md).[`action`](IOdrlRule.md#action)
|
|
47
|
+
|
|
48
|
+
***
|
|
49
|
+
|
|
50
|
+
### target?
|
|
51
|
+
|
|
52
|
+
> `optional` **target**: `string` \| [`IOdrlAsset`](IOdrlAsset.md) \| (`string` \| [`IOdrlAsset`](IOdrlAsset.md))[]
|
|
53
|
+
|
|
54
|
+
The target asset for the rule.
|
|
55
|
+
|
|
56
|
+
#### Inherited from
|
|
57
|
+
|
|
58
|
+
[`IOdrlRule`](IOdrlRule.md).[`target`](IOdrlRule.md#target)
|
|
59
|
+
|
|
60
|
+
***
|
|
61
|
+
|
|
62
|
+
### assigner?
|
|
63
|
+
|
|
64
|
+
> `optional` **assigner**: `string` \| [`IOdrlParty`](IOdrlParty.md)
|
|
65
|
+
|
|
66
|
+
The assigner of the rule.
|
|
67
|
+
|
|
68
|
+
#### Inherited from
|
|
69
|
+
|
|
70
|
+
[`IOdrlRule`](IOdrlRule.md).[`assigner`](IOdrlRule.md#assigner)
|
|
71
|
+
|
|
72
|
+
***
|
|
73
|
+
|
|
74
|
+
### assignee?
|
|
75
|
+
|
|
76
|
+
> `optional` **assignee**: `string` \| [`IOdrlParty`](IOdrlParty.md)
|
|
77
|
+
|
|
78
|
+
The assignee of the rule.
|
|
79
|
+
|
|
80
|
+
#### Inherited from
|
|
81
|
+
|
|
82
|
+
[`IOdrlRule`](IOdrlRule.md).[`assignee`](IOdrlRule.md#assignee)
|
|
83
|
+
|
|
84
|
+
***
|
|
85
|
+
|
|
86
|
+
### constraint?
|
|
87
|
+
|
|
88
|
+
> `optional` **constraint**: [`IOdrlConstraint`](IOdrlConstraint.md)[]
|
|
89
|
+
|
|
90
|
+
Constraints applied to the rule.
|
|
91
|
+
|
|
92
|
+
#### Inherited from
|
|
93
|
+
|
|
94
|
+
[`IOdrlRule`](IOdrlRule.md).[`constraint`](IOdrlRule.md#constraint)
|
|
95
|
+
|
|
96
|
+
***
|
|
97
|
+
|
|
98
|
+
### summary?
|
|
99
|
+
|
|
100
|
+
> `optional` **summary**: `string`
|
|
101
|
+
|
|
102
|
+
Additional relation sub-properties as defined in ODRL profiles.
|
|
103
|
+
For example, 'summary' in profile "http://example.com/odrl:profile:03"
|
|
104
|
+
indicates where the output should be stored.
|
|
105
|
+
|
|
106
|
+
#### Inherited from
|
|
107
|
+
|
|
108
|
+
[`IOdrlRule`](IOdrlRule.md).[`summary`](IOdrlRule.md#summary)
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
# Interface: IOdrlPolicy
|
|
2
|
+
|
|
3
|
+
Interface representing an ODRL Policy.
|
|
4
|
+
|
|
5
|
+
## Extends
|
|
6
|
+
|
|
7
|
+
- `IJsonLdNodeObject`
|
|
8
|
+
|
|
9
|
+
## Indexable
|
|
10
|
+
|
|
11
|
+
\[`key`: `string`\]: `undefined` \| `null` \| `string` \| `number` \| `boolean` \| `string`[] \| `IJsonLdNodeObject` \| `IJsonLdContextDefinition` \| `IJsonLdContextDefinitionElement`[] \| `object` & `object` \| `object` & `object` \| `object` & `object` \| `IJsonLdNodeObject`[] \| `IJsonLdGraphObject` \| `IJsonLdListObject` \| `IJsonLdSetObject` \| `IJsonLdNodePrimitive`[] \| `IJsonLdLanguageMap` \| `IJsonLdIndexMap` \| `IJsonLdIdMap` \| `IJsonLdTypeMap` \| `IJsonLdJsonObject` \| `IJsonLdJsonObject`[] \| \{\}
|
|
12
|
+
|
|
13
|
+
## Properties
|
|
14
|
+
|
|
15
|
+
### @context
|
|
16
|
+
|
|
17
|
+
> **@context**: `"https://www.w3.org/ns/odrl.jsonld"` \| `IJsonLdContextDefinition` \| \[`"https://www.w3.org/ns/odrl.jsonld"`, `IJsonLdContextDefinition`\]
|
|
18
|
+
|
|
19
|
+
The context for the policy.
|
|
20
|
+
Must include "https://www.w3.org/ns/odrl.jsonld"
|
|
21
|
+
|
|
22
|
+
#### Overrides
|
|
23
|
+
|
|
24
|
+
`IJsonLdNodeObject.@context`
|
|
25
|
+
|
|
26
|
+
***
|
|
27
|
+
|
|
28
|
+
### @type
|
|
29
|
+
|
|
30
|
+
> **@type**: [`PolicyType`](../type-aliases/PolicyType.md)
|
|
31
|
+
|
|
32
|
+
The type of policy.
|
|
33
|
+
Must be one of: "Set", "Offer", "Agreement"
|
|
34
|
+
|
|
35
|
+
#### Overrides
|
|
36
|
+
|
|
37
|
+
`IJsonLdNodeObject.@type`
|
|
38
|
+
|
|
39
|
+
***
|
|
40
|
+
|
|
41
|
+
### uid
|
|
42
|
+
|
|
43
|
+
> **uid**: `string`
|
|
44
|
+
|
|
45
|
+
The unique identifier for the policy.
|
|
46
|
+
Must be an IRI.
|
|
47
|
+
|
|
48
|
+
***
|
|
49
|
+
|
|
50
|
+
### profile?
|
|
51
|
+
|
|
52
|
+
> `optional` **profile**: `string` \| `string`[]
|
|
53
|
+
|
|
54
|
+
The profile(s) this policy conforms to.
|
|
55
|
+
IRIs identifying the ODRL Profile(s).
|
|
56
|
+
|
|
57
|
+
***
|
|
58
|
+
|
|
59
|
+
### assigner?
|
|
60
|
+
|
|
61
|
+
> `optional` **assigner**: `string` \| [`IOdrlParty`](IOdrlParty.md)
|
|
62
|
+
|
|
63
|
+
The assigner of the policy.
|
|
64
|
+
Applies to all rules unless overridden at rule level.
|
|
65
|
+
|
|
66
|
+
***
|
|
67
|
+
|
|
68
|
+
### assignee?
|
|
69
|
+
|
|
70
|
+
> `optional` **assignee**: `string` \| [`IOdrlParty`](IOdrlParty.md)
|
|
71
|
+
|
|
72
|
+
The assignee of the policy.
|
|
73
|
+
Applies to all rules unless overridden at rule level.
|
|
74
|
+
|
|
75
|
+
***
|
|
76
|
+
|
|
77
|
+
### target?
|
|
78
|
+
|
|
79
|
+
> `optional` **target**: `string` \| [`IOdrlAsset`](IOdrlAsset.md) \| (`string` \| [`IOdrlAsset`](IOdrlAsset.md))[]
|
|
80
|
+
|
|
81
|
+
The target asset for the rule.
|
|
82
|
+
|
|
83
|
+
***
|
|
84
|
+
|
|
85
|
+
### action?
|
|
86
|
+
|
|
87
|
+
> `optional` **action**: [`ActionType`](../type-aliases/ActionType.md) \| [`IOdrlAction`](IOdrlAction.md) \| ActionType \| IOdrlAction[]
|
|
88
|
+
|
|
89
|
+
The action associated with the rule.
|
|
90
|
+
|
|
91
|
+
***
|
|
92
|
+
|
|
93
|
+
### inheritFrom?
|
|
94
|
+
|
|
95
|
+
> `optional` **inheritFrom**: `string` \| `string`[]
|
|
96
|
+
|
|
97
|
+
The parent policy(ies) this policy inherits from.
|
|
98
|
+
IRIs identifying the parent Policy(ies).
|
|
99
|
+
|
|
100
|
+
***
|
|
101
|
+
|
|
102
|
+
### conflict?
|
|
103
|
+
|
|
104
|
+
> `optional` **conflict**: [`ConflictStrategyType`](../type-aliases/ConflictStrategyType.md)
|
|
105
|
+
|
|
106
|
+
The conflict resolution strategy.
|
|
107
|
+
- perm: Permissions override Prohibitions
|
|
108
|
+
- prohibit: Prohibitions override Permissions
|
|
109
|
+
- invalid: Policy is void if conflicts exist (default)
|
|
110
|
+
|
|
111
|
+
***
|
|
112
|
+
|
|
113
|
+
### permission?
|
|
114
|
+
|
|
115
|
+
> `optional` **permission**: [`IOdrlPermission`](IOdrlPermission.md)[]
|
|
116
|
+
|
|
117
|
+
The permissions in the policy.
|
|
118
|
+
At least one of permission, prohibition, or obligation must be present.
|
|
119
|
+
|
|
120
|
+
***
|
|
121
|
+
|
|
122
|
+
### prohibition?
|
|
123
|
+
|
|
124
|
+
> `optional` **prohibition**: [`IOdrlProhibition`](IOdrlProhibition.md)[]
|
|
125
|
+
|
|
126
|
+
The prohibitions in the policy.
|
|
127
|
+
At least one of permission, prohibition, or obligation must be present.
|
|
128
|
+
|
|
129
|
+
***
|
|
130
|
+
|
|
131
|
+
### obligation?
|
|
132
|
+
|
|
133
|
+
> `optional` **obligation**: [`IOdrlDuty`](IOdrlDuty.md)[]
|
|
134
|
+
|
|
135
|
+
The obligations in the policy.
|
|
136
|
+
At least one of permission, prohibition, or obligation must be present.
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# Interface: IOdrlPolicyMetadata
|
|
2
|
+
|
|
3
|
+
Interface for ODRL Policy Metadata using Dublin Core terms.
|
|
4
|
+
While these aren't explicitly defined in the ODRL spec, they are valid and useful metadata properties that follow Dublin Core standards.
|
|
5
|
+
|
|
6
|
+
## Properties
|
|
7
|
+
|
|
8
|
+
### dc:creator?
|
|
9
|
+
|
|
10
|
+
> `optional` **dc:creator**: `string` \| `string`[]
|
|
11
|
+
|
|
12
|
+
The individual, agent, or organisation that authored the Policy.
|
|
13
|
+
Note: String values may not be normalized and should not be used for direct comparison.
|
|
14
|
+
|
|
15
|
+
***
|
|
16
|
+
|
|
17
|
+
### dc:description?
|
|
18
|
+
|
|
19
|
+
> `optional` **dc:description**: `string` \| `string`[]
|
|
20
|
+
|
|
21
|
+
A human-readable representation or summary of the Policy.
|
|
22
|
+
Note: String values may not be normalized and should not be used for direct comparison.
|
|
23
|
+
|
|
24
|
+
***
|
|
25
|
+
|
|
26
|
+
### dc:issued?
|
|
27
|
+
|
|
28
|
+
> `optional` **dc:issued**: `string`
|
|
29
|
+
|
|
30
|
+
The date (and time) the Policy was first issued.
|
|
31
|
+
Note: String values may not be normalized and should not be used for direct comparison.
|
|
32
|
+
|
|
33
|
+
***
|
|
34
|
+
|
|
35
|
+
### dc:modified?
|
|
36
|
+
|
|
37
|
+
> `optional` **dc:modified**: `string`
|
|
38
|
+
|
|
39
|
+
The date (and time) the Policy was updated.
|
|
40
|
+
Note: String values may not be normalized and should not be used for direct comparison.
|
|
41
|
+
|
|
42
|
+
***
|
|
43
|
+
|
|
44
|
+
### dc:publisher?
|
|
45
|
+
|
|
46
|
+
> `optional` **dc:publisher**: `string`
|
|
47
|
+
|
|
48
|
+
The publisher of the Policy.
|
|
49
|
+
Note: String values may not be normalized and should not be used for direct comparison.
|
|
50
|
+
|
|
51
|
+
***
|
|
52
|
+
|
|
53
|
+
### dc:subject?
|
|
54
|
+
|
|
55
|
+
> `optional` **dc:subject**: `string` \| `string`[]
|
|
56
|
+
|
|
57
|
+
The subject of the Policy.
|
|
58
|
+
Note: String values may not be normalized and should not be used for direct comparison.
|
|
59
|
+
|
|
60
|
+
***
|
|
61
|
+
|
|
62
|
+
### dc:coverage?
|
|
63
|
+
|
|
64
|
+
> `optional` **dc:coverage**: `string` \| \{ `@id`: `string`; \}
|
|
65
|
+
|
|
66
|
+
The jurisdiction under which the Policy is relevant.
|
|
67
|
+
Note: When using string values, they may not be normalized and should not be used for direct comparison.
|
|
68
|
+
Using "@id" references is preferred for comparison purposes.
|
|
69
|
+
|
|
70
|
+
***
|
|
71
|
+
|
|
72
|
+
### dc:replaces?
|
|
73
|
+
|
|
74
|
+
> `optional` **dc:replaces**: `string` \| \{ `@id`: `string`; \}
|
|
75
|
+
|
|
76
|
+
The identifier of a Policy that this Policy supersedes.
|
|
77
|
+
Using "@id" references is preferred for comparison purposes.
|
|
78
|
+
|
|
79
|
+
***
|
|
80
|
+
|
|
81
|
+
### dc:isReplacedBy?
|
|
82
|
+
|
|
83
|
+
> `optional` **dc:isReplacedBy**: `string` \| \{ `@id`: `string`; \}
|
|
84
|
+
|
|
85
|
+
The identifier of a Policy that supersedes this Policy.
|
|
86
|
+
Using "@id" references is preferred for comparison purposes.
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
# Interface: IOdrlProhibition
|
|
2
|
+
|
|
3
|
+
Interface for Prohibition Rules.
|
|
4
|
+
|
|
5
|
+
## Extends
|
|
6
|
+
|
|
7
|
+
- [`IOdrlRule`](IOdrlRule.md)
|
|
8
|
+
|
|
9
|
+
## Indexable
|
|
10
|
+
|
|
11
|
+
\[`key`: `string`\]: `undefined` \| `null` \| `string` \| `number` \| `boolean` \| `string`[] \| `IJsonLdNodeObject` \| `IJsonLdContextDefinition` \| `IJsonLdContextDefinitionElement`[] \| `object` & `object` \| `object` & `object` \| `object` & `object` \| `IJsonLdNodeObject`[] \| `IJsonLdGraphObject` \| `IJsonLdListObject` \| `IJsonLdSetObject` \| `IJsonLdNodePrimitive`[] \| `IJsonLdLanguageMap` \| `IJsonLdIndexMap` \| `IJsonLdIdMap` \| `IJsonLdTypeMap` \| `IJsonLdJsonObject` \| `IJsonLdJsonObject`[] \| \{\}
|
|
12
|
+
|
|
13
|
+
## Properties
|
|
14
|
+
|
|
15
|
+
### remedy?
|
|
16
|
+
|
|
17
|
+
> `optional` **remedy**: [`IOdrlDuty`](IOdrlDuty.md)[]
|
|
18
|
+
|
|
19
|
+
The remedies that must be fulfilled if prohibition is violated.
|
|
20
|
+
|
|
21
|
+
***
|
|
22
|
+
|
|
23
|
+
### uid?
|
|
24
|
+
|
|
25
|
+
> `optional` **uid**: `string`
|
|
26
|
+
|
|
27
|
+
Optional unique identifier for the rule.
|
|
28
|
+
|
|
29
|
+
#### Inherited from
|
|
30
|
+
|
|
31
|
+
[`IOdrlRule`](IOdrlRule.md).[`uid`](IOdrlRule.md#uid)
|
|
32
|
+
|
|
33
|
+
***
|
|
34
|
+
|
|
35
|
+
### action?
|
|
36
|
+
|
|
37
|
+
> `optional` **action**: [`ActionType`](../type-aliases/ActionType.md) \| [`IOdrlAction`](IOdrlAction.md) \| ActionType \| IOdrlAction[]
|
|
38
|
+
|
|
39
|
+
The action associated with the rule.
|
|
40
|
+
|
|
41
|
+
#### Inherited from
|
|
42
|
+
|
|
43
|
+
[`IOdrlRule`](IOdrlRule.md).[`action`](IOdrlRule.md#action)
|
|
44
|
+
|
|
45
|
+
***
|
|
46
|
+
|
|
47
|
+
### target?
|
|
48
|
+
|
|
49
|
+
> `optional` **target**: `string` \| [`IOdrlAsset`](IOdrlAsset.md) \| (`string` \| [`IOdrlAsset`](IOdrlAsset.md))[]
|
|
50
|
+
|
|
51
|
+
The target asset for the rule.
|
|
52
|
+
|
|
53
|
+
#### Inherited from
|
|
54
|
+
|
|
55
|
+
[`IOdrlRule`](IOdrlRule.md).[`target`](IOdrlRule.md#target)
|
|
56
|
+
|
|
57
|
+
***
|
|
58
|
+
|
|
59
|
+
### assigner?
|
|
60
|
+
|
|
61
|
+
> `optional` **assigner**: `string` \| [`IOdrlParty`](IOdrlParty.md)
|
|
62
|
+
|
|
63
|
+
The assigner of the rule.
|
|
64
|
+
|
|
65
|
+
#### Inherited from
|
|
66
|
+
|
|
67
|
+
[`IOdrlRule`](IOdrlRule.md).[`assigner`](IOdrlRule.md#assigner)
|
|
68
|
+
|
|
69
|
+
***
|
|
70
|
+
|
|
71
|
+
### assignee?
|
|
72
|
+
|
|
73
|
+
> `optional` **assignee**: `string` \| [`IOdrlParty`](IOdrlParty.md)
|
|
74
|
+
|
|
75
|
+
The assignee of the rule.
|
|
76
|
+
|
|
77
|
+
#### Inherited from
|
|
78
|
+
|
|
79
|
+
[`IOdrlRule`](IOdrlRule.md).[`assignee`](IOdrlRule.md#assignee)
|
|
80
|
+
|
|
81
|
+
***
|
|
82
|
+
|
|
83
|
+
### constraint?
|
|
84
|
+
|
|
85
|
+
> `optional` **constraint**: [`IOdrlConstraint`](IOdrlConstraint.md)[]
|
|
86
|
+
|
|
87
|
+
Constraints applied to the rule.
|
|
88
|
+
|
|
89
|
+
#### Inherited from
|
|
90
|
+
|
|
91
|
+
[`IOdrlRule`](IOdrlRule.md).[`constraint`](IOdrlRule.md#constraint)
|
|
92
|
+
|
|
93
|
+
***
|
|
94
|
+
|
|
95
|
+
### summary?
|
|
96
|
+
|
|
97
|
+
> `optional` **summary**: `string`
|
|
98
|
+
|
|
99
|
+
Additional relation sub-properties as defined in ODRL profiles.
|
|
100
|
+
For example, 'summary' in profile "http://example.com/odrl:profile:03"
|
|
101
|
+
indicates where the output should be stored.
|
|
102
|
+
|
|
103
|
+
#### Inherited from
|
|
104
|
+
|
|
105
|
+
[`IOdrlRule`](IOdrlRule.md).[`summary`](IOdrlRule.md#summary)
|