### ODRL Profile Vocabulary Example (TTL)
Source: https://github.com/w3c/odrl/blob/master/profile-bp/index.html
Defines namespaces and declares artifacts for the ODRL Core Profile and a custom 'Example Profile 1'. This example uses RDF Turtle syntax to describe resources, their roles, and associated metadata.
```turtle
@prefix dct: .
@prefix dc: .
@prefix xsd: .
@prefix owl: .
@prefix odrl: .
@prefix profile: .
@prefix role: .
@prefix exprof1: .
# Declare the ODRL Core Profile artifacts
a dct:Standard ;
dct:title "The ODRL Core Profile Version 2.2" ;
profile:hasResource
ocześnie:1
ocześnie:2 .
ocześnie:1 # The normative W3C ODRL Information Model
a profile:ResourceDescriptor ;
profile:hasRole role:specification ;
profile:hasArtifact ;
dct:title "ODRL Information Model 2.2" ;
dct:issued "2018-02-15"^^xsd:date ;
dct:publisher "W3C" ;
dct:format ;
dct:conformsTo .
ocześnie:2 # The ODRL Core Profile vocabulary terms
a profile:ResourceDescriptor ;
profile:hasRole role:vocabulary ;
profile:hasArtifact ;
dct:title "ODRL Core Profile Version 2.2" ;
dct:issued "tbd"^^xsd:date ;
dct:publisher "W3C" ;
dct:format ;
dct:conformsTo .
## Declare the artifacts of the Example Profile 1
exprof1: # Properties of the Example Profile 1
a profile:Profile ;
dct:title "Example Profile 1 - ODRL Profile" ;
dct:description "An ODRL Profile focusing on rights and licensing requirements from the Any-Industry" ;
profile:isProfileOf ;
profile:hasResource
exprof1:ProfileSpec-html ,
exprof1:ProfileVocabulary-ttl ;
dct:publisher "Global ODRL Profile Working Group - GOPWG" ;
dc:creator "Global ODRL Profile Working Group - GOPWG" ;
owl:versionInfo "0.1"^^xsd:string ;
dct:issued "2019-08-23"^^xsd:date ;
.
exprof1:ProfileSpec-html # The Example Profile 1 specification HTML document
a profile:ResourceDescriptor ;
profile:hasRole role:specification ;
profile:hasArtifact ;
dct:title "Example Profile 1 version 0.1" ;
owl:versionInfo "0.1.1"^^xsd:string ;
dct:issued "2019-08-22"^^xsd:date ;
dct:format ;
dct:conformsTo ;
.
exprof1:ProfileVocabulary-ttl # The Example Profile 1 Profile vocabulary terms using RDF Turtle syntax
a profile:ResourceDescriptor ;
profile:hasRole role:vocabulary ;
profile:hasArtifact ;
dct:title "Example Profile 1 version 0.1" ;
owl:versionInfo "0.1.0"^^xsd:string ;
dct:issued "2019-08-22"^^xsd:date ;
dct:publisher "Global ODRL Profile Working Group - GOPWG" ;
dct:format ;
dct:conformsTo ;
.
```
--------------------------------
### Specify an Obligation (ODRL)
Source: https://github.com/w3c/odrl/blob/master/bp/index.html
This example shows how to define an obligation for a user, requiring them to perform a specific action. Use this to enforce post-usage requirements.
```json
{
"@context": "http://www.w3.org/ns/odrl.jsonld",
"@type": "Set",
"uid": "https://w3c.github.io/odrl/bp/examples/7",
"obligation": [{
"target": "http://example.com/asset:9898.movie",
"assignee": "John",
"action": "play"
}]
}
```
--------------------------------
### ODRL Policy Versions with Temporal Constraints
Source: https://context7.com/w3c/odrl/llms.txt
These examples demonstrate ODRL policies with different temporal validity periods using `tpl:effectiveTo` and `tpl:effectiveFrom`.
```turtle
:T1-V1 a odrl:Agreement ;
tpl:effectiveTo "2020-01-01T00:00:00Z"^^xsd:dateTime ;
tpl:permission :T-P1 .
# Version 2: two permissions, valid 2020-2024
:T1-V2 a odrl:Agreement ;
tpl:effectiveFrom "2020-01-01T00:00:00Z"^^xsd:dateTime ;
tpl:effectiveTo "2024-01-01T00:00:00Z"^^xsd:dateTime ;
tpl:permission :T-P1, :T-P2 .
# Version 3: three permissions, valid from 2024
:T1-V3 a odrl:Agreement ;
tpl:effectiveFrom "2024-01-01T00:00:00Z"^^xsd:dateTime ;
tpl:permission :T-P1, :T-P2, :T-P3 .
```
--------------------------------
### Policy as Asset (ODRL Offer)
Source: https://github.com/w3c/odrl/blob/master/bp/index.html
This example demonstrates treating an ODRL policy as an asset, which can simplify policy management by allowing for shortcuts during evaluation, such as temporarily disabling a policy.
```turtle
ex:offer_example terms:description "example of an offer"@en;
a odrl:Offer,
odrl:Asset;
odrl:conflict odrl:prohibit;
odrl:prohibition ex:demo_prohibition;
prov:version "0.1"@en.
ex:demo_prohibition terms:description "example of a prohibition that targets a policy"@en;
a odrl:Prohibition;
odrl:action odrl:use;
odrl:assigner ex:assigner;
// --- the constraint ellaborates on the conditions for the triggered odrl:constraint ex:some_constraint;
// --- here we target the policy odrl:target ex:offer_example.
```
--------------------------------
### JSON-LD Context for ODRL Profile Example
Source: https://github.com/w3c/odrl/blob/master/profile-bp/index.html
This JSON-LD context document maps short-term aliases to original identifiers for concepts used in the ODRL Profile Example Profile 1.
```json
{
"@context": {
"exns1": "https://example.com/ns/ex1/",
"compensationValue": "exns1:compensationValue",
"odrl": "http://www.w3.org/ns/odrl/2/",
"archive": "odrl:archive",
"attribute": "odrl:attribute",
"compensate": "odrl:compensate",
"display": "odrl:display",
"grantUse": "odrl:grantUse",
"count": "odrl:count",
"dateTime": "odrl:dateTime",
"compensatedParty": {"@type": "@id", "@id": "odrl:compensatedParty"},
"compensatingParty": {"@type": "@id", "@id": "odrl:compensatingParty"},
"output": {"@type": "@id", "@id": "odrl:output"}
}
}
```
--------------------------------
### Narrow Action Applicability (ODRL)
Source: https://github.com/w3c/odrl/blob/master/bp/index.html
This example restricts an action to a specific refinement, such as a delivery channel. Use this to limit how an asset can be used, e.g., mobile distribution only.
```json
{
"@context": "http://www.w3.org/ns/odrl.jsonld",
"@type": "Set",
"uid": "https://w3c.github.io/odrl/bp/examples/6",
"permission": [{
"target": "http://example.com/asset:9898.movie",
"assigner": "http://example.com/org:616",
"action": [{
"action": "distribute",
"refinement": [{
"leftOperand": "deliveryChannel",
"operator": "eq",
"rightOperand": "http://example.com/cv/audMedia/MOBILE"
}]
}]
}]
}
```
--------------------------------
### Represent a Prohibition (ODRL)
Source: https://github.com/w3c/odrl/blob/master/bp/index.html
This example demonstrates how to create a prohibition, preventing a specific user from performing an action. Use this to explicitly deny certain uses of an asset.
```json
{
"@context": "http://www.w3.org/ns/odrl.jsonld",
"@type": "Set",
"uid": "https://w3c.github.io/odrl/bp/examples/8",
"prohibition": [{
"target": "http://example.com/asset:9898.movie",
"assignee": "John",
"action": "play"
}]
}
```
--------------------------------
### Define ODRL Action: changecolours (Turtle)
Source: https://github.com/w3c/odrl/blob/master/profile-bp/index.html
Defines a custom 'changecolours' Action for Example Profile 1, which is included in the 'use' Action. This example uses Turtle syntax.
```turtle
exns1:changecolours
a :Action, skos:Concept ;
rdfs:isDefinedBy expf1: ;
rdfs:label "Change Colours"@en ;
:includedIn odrl:use ;
skos:definition "For using a graphics asset its colours are changed."@en .
```
--------------------------------
### Define SpecialOffer1 Policy Subclass (TTL)
Source: https://github.com/w3c/odrl/blob/master/profile-bp/index.html
Example of defining a custom 'SpecialOffer1' Policy subclass using TTL syntax. This subclass has specific requirements for permissions and parties.
```ttl
exns1:SpecialOffer1
a rdfs:Class , owl:Class, skos:Concept ;
rdfs:isDefinedBy expf1:
rdfs:subClassOf :Policy ;
owl:disjointWith :Agreement, :Privacy, :Request, :Ticket, :Assertion, :Offer ;
rdfs:label "Special Offer 1"@en ;
skos:definition "A Policy offering a permission of using an asset"@en ;
skos:note "A Special Offer 1 Policy MUST contain at least one Permission and a Party with Assigner function (in the same Permission or Prohibition). The Offer Policy MAY contain either a specific Party or a Collection of Parties with Assignee function."@en .
```
--------------------------------
### ODRL Policy with Decoupled Pricing using RightOperandReference
Source: https://context7.com/w3c/odrl/llms.txt
This RDF Turtle example demonstrates using `odrl:RightOperandReference` to link to external pricing data, decoupling policy and pricing lifecycles.
```turtle
@prefix odrl: .
@prefix rdf: .
@prefix dcat: .
@prefix schema: .
@prefix dcterms: .
@prefix ex: .
ex:demo_duty a odrl:Duty ;
odrl:action ex:example_action ;
odrl:target ex:data_product .
ex:example_action a odrl:Action ;
rdf:value odrl:compensate ;
odrl:refinement ex:example_constraint .
ex:example_constraint a odrl:Constraint ;
odrl:leftOperand odrl:payAmount ;
odrl:operator odrl:eq ;
odrl:rightOperandReference ex:example_roperand .
ex:example_roperand a odrl:RightOperand ;
rdf:value ex:data_product, ex:pricing_list .
ex:pricing_list a dcat:Dataset ;
dcterms:conformsTo schema:priceSpecification .
```
--------------------------------
### Simplify Policies with Common Rules (Compact ODRL)
Source: https://github.com/w3c/odrl/blob/master/bp/index.html
This example demonstrates a compact ODRL policy where common elements like action and target are defined at the root level, simplifying policies with multiple rules. Use this for policies with shared attributes across permissions and prohibitions.
```json
{
"@context": "http://www.w3.org/ns/odrl.jsonld",
"@type": "Set",
"uid": "http://example.org/policy/10",
"action": "use",
"target": "http://example.com/asset/1",
"permission": [{
"assignee": "http://example.com/party/Alice",
} ],
"prohibition": [{
"assignee": "http://example.com/party/Bob",
}]
}
```
--------------------------------
### Decouple Lifecycles with RightOperandReference (ODRL Duty)
Source: https://github.com/w3c/odrl/blob/master/bp/index.html
This example illustrates how to keep the lifecycles of assets, policies, and prices separate by using odrl:RightOperandReference for odrl:payAmount, allowing for independent management of these components.
```turtle
ex:demo_duty a odrl:Duty;
terms:description "duty for use of a DPROD asset"@en;
odrl:action md:example_action;
odrl:assigner ex:assigner;
odrl:target ex:data_product.
md:example_action a odrl:Action;
rdf:value odrl:compensate;
odrl:refinement ex:example_constraint.
ex:example_constraint a odrl:Constraint;
odrl:leftOperand odrl:payAmount;
odrl:operator odrl:eq;
odrl:rightOperandReference ex:example_roperand.
ex:example_roperand a odrl:RightOperand;
// --- values point at respective URI's of an asset and a pricing list
```
--------------------------------
### Represent Permission and Prohibition Together (ODRL)
Source: https://github.com/w3c/odrl/blob/master/bp/index.html
This example shows how to define both a permission and a prohibition within the same policy, allowing one party to use an asset while prohibiting another. This is useful for managing concurrent access rights.
```json
{
"@context": "http://www.w3.org/ns/odrl.jsonld",
"@type": "Set",
"uid": "http://example.org/policy/9",
"permission": [{
"target": "http://example.com/asset/1",
"assignee": "http://example.com/party/Alice",
"action": "use"
} ],
"prohibition": [{
"target": "http://example.com/asset/1",
"assignee": "http://example.com/party/Bob",
"action": "use"
}]
}
```
--------------------------------
### Restrict Permission Validity to a Specific Time (ODRL)
Source: https://github.com/w3c/odrl/blob/master/bp/index.html
This example shows how to set a time constraint on a permission, making it valid only after a specified date. Use this to embargo content until a certain time.
```json
{
"@context": "http://www.w3.org/ns/odrl.jsonld",
"@type": "Set",
"uid": "https://w3c.github.io/odrl/bp/examples/4",
"permission": [{
"target": "http://example.com/asset:9898.movie",
"action": "display",
"constraint": [{
"leftOperand": "dateTime",
"operator": "gte",
"rightOperand": { "@value": "2019-01-01", "@type": "xsd:date" }
}]
}]
}
```
--------------------------------
### Evaluate Obligation without Constraints in ODRL
Source: https://github.com/w3c/odrl/blob/master/formal-semantics/index.html
This example demonstrates an ODRL Agreement policy with an obligation that is not restricted by any constraints. It defines a formal agreement for an assignee to compensate an assigner.
```json
{
"@context": "http://www.w3.org/ns/odrl.jsonld",
"@type": "Agreement",
"uid": "http://example.com/policy/42",
"obligation": [{
"@id" : "http://example.com/obligation/1",
"assigner": "http://example.com/party/43",
"assignee": "http://example.com/party/44",
"action": [
{
"rdf:value": {
"@id": "odrl:compensate"
},
"refinement": [
{
"leftOperand": "payAmount",
"operator": "eq",
"rightOperand": { "@value": "500.00", "@type": "xsd:decimal" },
"unit": "http://dbpedia.org/resource/Euro"
}
]
}
}]
}
}
```
--------------------------------
### Restrict Permission Validity to Location and Time (ODRL)
Source: https://github.com/w3c/odrl/blob/master/bp/index.html
This example demonstrates combining spatial and temporal constraints on a permission. Both conditions must be met for the permission to be active. Use this for geo-fenced and time-sensitive access.
```json
{
"@context": "http://www.w3.org/ns/odrl.jsonld",
"@type": "Set",
"uid": "https://w3c.github.io/odrl/bp/examples/5",
"permission": [{
"target": "http://example.com/asset:9898.movie",
"action": "display",
"constraint": [{
"leftOperand": "dateTime",
"operator": "gte",
"rightOperand": { "@value": "2019-01-01", "@type": "xsd:date" }
}, {
"leftOperand": "spatial",
"operator": "eq",
"rightOperand": "https://www.wikidata.org/resource/Q183",
"comment": "i.e Germany"
}]
}]
}
```
--------------------------------
### Represent ODRL Policy in RDF Turtle
Source: https://github.com/w3c/odrl/blob/master/bp/index.html
This RDF Turtle example shows the same ODRL policy as the JSON-LD version, demonstrating an alternative serialization. It defines a policy with a 'use' permission for a movie asset.
```turtle
@prefix odrl:
a odrl:Policy, odrl:Set ;
odrl:permission [
odrl:target ;
odrl:assignee ;
odrl:action odrl:use
] ;
```
--------------------------------
### ODRL Conditioned Permission Example (JSON-LD)
Source: https://github.com/w3c/odrl/blob/master/formal-semantics/index.html
This JSON-LD snippet defines an ODRL Agreement with a Permission that includes a Condition (duty). The duty requires a 'compensate' action with a specific payment refinement before the 'play' action is permitted. This is useful for enforcing pre-conditions for asset usage.
```json
{
"@context": "http://www.w3.org/ns/odrl.jsonld",
"@type": "Agreement",
"uid": "http://example.com/policy/C1",
"permission": [
{
"@id": "http://example.com/rule/C1",
"assigner": "http://example.com/party/sony",
"assignee": "http://example.com/party/billie",
"target": "http://example.com/music/1999.mp3",
"action": "play",
"duty": [
{
"@id": "http://example.com/condition/1",
"action": [
{
"@id": "http://example.com/action/1",
"rdf:value": {"@id": "odrl:compensate"},
"refinement": [
{
"@id": "http://example.com/refinement/1",
"leftOperand": "payAmount",
"operator": "eq",
"rightOperand": {"@value": "5.00", "@type": "xsd:decimal"},
"unit": "http://dbpedia.org/resource/Euro"
}
]
}
]
}
]
}
]
}
```
--------------------------------
### ODRL Machine Learning Policy Example
Source: https://github.com/w3c/odrl/blob/master/profile-bigdata/index.html
This JSON-LD snippet defines an ODRL agreement for a machine learning use case. It specifies permissions for training a model and obligations, including informing about job termination and prohibiting printing.
```json
{
"@context": "http://www.w3.org/ns/odrl.jsonld",
"@type": "Agreement",
"uid": "http://example.com/policy:1010",
"duc:provider": "http://oem.com/ids#me",
"permission": : [{
"duc:consumer": "http://supplier.com/",
"target": "http://oem.com/ids/inventory/dataset-1",
"action": "duc:train",
}],
"obligation": [{
"@type": "Duty",
"target": "http://oem.com/ids/inventory/dataset-1",
"action": "inform",
"consequence": [{
"target": "http://oem.com/ids/inventory/dataset-1",
"action":[{
"rdf:value": { "@id": "duc:KillJob" },
"refinement": [{
"leftOperand": "recipient",
"operator": "eq",
"rightOperand": {
"@value": "flinkid00",
"@type": "http://orion.fiware.org/Job"
}
}]
}]
}]
}],
"prohibition": [{
"assignee": "http://supplier.com/",
"target" : "http://oem.com/ids/inventory/dataset-1",
"action": "print"
}]
}
```
--------------------------------
### Offer, Request, and Agreement Lifecycle (RDF Turtle)
Source: https://context7.com/w3c/odrl/llms.txt
Demonstrates the lifecycle from ODRL Offer and Request to an ODRL Agreement, using dcterms:references to link them.
```turtle
@prefix odrl: .
@prefix dcterms: .
@prefix ex: .
ex:offer a odrl:Offer ;
odrl:uid ;
odrl:permission [
odrl:target ;
odrl:assigner ;
odrl:action odrl:use
] .
ex:request a odrl:Request ;
odrl:uid ;
odrl:permission [
odrl:target ;
odrl:assignee ;
odrl:action odrl:use
] .
ex:agreement a odrl:Agreement ;
dcterms:references ex:offer, ex:request ;
odrl:uid ;
odrl:permission [
odrl:target ;
odrl:assigner ;
odrl:assignee ;
odrl:action odrl:use
] .
```
--------------------------------
### ODRL Policy: Constrained Permission JSON-LD
Source: https://context7.com/w3c/odrl/llms.txt
Represents an ODRL policy with a constrained permission. This example permits distribution of a document only before a specific date.
```json
{
"@context": "http://www.w3.org/ns/odrl.jsonld",
"@type": "Set",
"uid": "http://example.com/policy/A1",
"permission": [{
"@id": "http://example.com/rule/A1",
"target": "http://example.com/document/1234",
"assigner": "http://example.com/party/16",
"action": "distribute",
"constraint": [{
"@id": "http://example.com/constraint/A1",
"leftOperand": "dateTime",
"operator": "lt",
"rightOperand": { "@value": "2018-01-01", "@type": "xsd:date" }
}]
}]
}
```
--------------------------------
### Define ODRL Action: digitize (Turtle)
Source: https://github.com/w3c/odrl/blob/master/profile-bp/index.html
Defines the 'digitize' Action, which is part of the ODRL Common Vocabulary and included in the 'use' Action. This example uses Turtle syntax.
```turtle
odrl:digitize
a :Action, skos:Concept ;
rdfs:isDefinedBy odrl: ;
rdfs:label "Digitize"@en ;
:includedIn odrl:use ;
skos:definition "To produce a digital copy of (or otherwise digitize) the Asset from its analogue form."@en ;
skos:scopeNote "Non-Normative"@en .
```
--------------------------------
### ODRL Combined Spatial and Temporal Constraints (JSON-LD)
Source: https://context7.com/w3c/odrl/llms.txt
Demonstrates combining multiple constraints (spatial and temporal) within a single permission, where all constraints must be satisfied for the permission to be active.
```json
{
"@context": "http://www.w3.org/ns/odrl.jsonld",
"@type": "Set",
"uid": "https://example.com/policy/005",
"permission": [{
"target": "http://example.com/asset:9898.movie",
"action": "display",
"constraint": [{
"leftOperand": "dateTime",
"operator": "gte",
"rightOperand": { "@value": "2019-01-01", "@type": "xsd:date" }
}, {
"leftOperand": "spatial",
"operator": "eq",
"rightOperand": "https://www.wikidata.org/resource/Q183",
"comment": "Germany only"
}]
}]
}
```
--------------------------------
### Define ODRL Operator in TTL
Source: https://github.com/w3c/odrl/blob/master/profile-bp/index.html
Defines a custom 'doubleof' operator for Example Profile 1. This operator indicates that a given value is double the right operand of a Constraint.
```ttl
exns1:doubleof
a :Operator, owl:NamedIndividual, skos:Concept ;
rdfs:isDefinedBy expf1: ;
skos:definition "Indicating that a given value is the double of the right operand of the Constraint."@en ;
rdfs:label "Double of"@en .
```
--------------------------------
### Temporal Permission with Evolving Actions
Source: https://github.com/w3c/odrl/blob/master/profile-temporal/index.html
Illustrates a Temporal Permission that modifies its allowed actions over time. This is useful for phased content release or usage restrictions.
```turtle
:TP-1 a tpl:TemporalPermission ;
tpl:version :P1-V1 , :P1-V2 .
:P1-V1 a odrl:Permission ;
tpl:effectiveTo "2020-01-01T00:00:00Z"^^xsd:dateTime;
...
odrl:action odrl:display , odrl:distribute ;
...
:P1-V2 a odrl:Permission ;
tpl:effectiveFrom "2020-01-01T00:00:00Z"^^xsd:dateTime;
...
odrl:action odrl:display ;
...
```
--------------------------------
### Define 'policyUsage' Right Operand in TTL
Source: https://github.com/w3c/odrl/blob/master/profile-bp/index.html
Defines the 'policyUsage' RightOperand for the Example Profile 1. This operand indicates the datetime an action was exercised and can be used for time-based constraints.
```ttl
odrl:policyUsage
a :RightOperand, owl:NamedIndividual, skos:Concept ;
rdfs:isDefinedBy odrl: ;
rdfs:label "Policy Rule Usage"@en ;
skos:definition "Indicates the actual datetime the action of the Rule was exercised."@en ;
skos:note "This can be used to express constraints with a LeftOperand relative to the time the rule is exercised. Operators indicate before (lt, lteq), during (eq) or after (gt, gteq) the usage of the rule. Example: 'event lt policyUsage' expresses that the identified event must have happened before the action of the rule is exercised."@en ;
skos:scopeNote "Non-Normative"@en .
```
--------------------------------
### Define ODRL Asset Relationship in TTL
Source: https://github.com/w3c/odrl/blob/master/profile-bp/index.html
Defines the 'input' Asset Relationship for Example Profile 1. This property specifies an Asset that is required as input for the Action of a Rule.
```ttl
exns1:input
a rdf:Property , owl:ObjectProperty, skos:Concept ;
rdfs:isDefinedBy expf1: ;
rdfs:subPropertyOf :relation ;
rdfs:label "Input"@en ;
skos:definition "The input property specifies the Asset which is used as input of the Action."@en ;
rdfs:domain :Rule ;
rdfs:range :Asset.
```
--------------------------------
### Define StraightPermission1 Subclass in ODRL Profile
Source: https://github.com/w3c/odrl/blob/master/profile-bp/index.html
Example of defining a `StraightPermission1` subclass of `odrl:Permission`. It is declared as disjoint with `odrl:Prohibition` and `odrl:Duty` and includes labels and definitions.
```turtle
exns1:StraightPermission1
a rdfs:Class , owl:Class, skos:Concept ;
rdfs:isDefinedBy expf1:
rdfs:subClassOf :Permission ;
owl:disjointWith :Prohibition, :Duty ;
rdfs:label "Straight Permission 1"@en ;
skos:definition "A Rule permitting the use of an Asset"@en ;
skos:note "A Straight Permission 1 Rule must not contain any property for expressing a duty."@en .
```
--------------------------------
### Define ODRL Left Operands in TTL
Source: https://github.com/w3c/odrl/blob/master/profile-bp/index.html
Defines 'elapsedTime' from ODRL Common Vocabulary and 'aggregatedTime' specific to Example Profile 1. Use these for the 'leftOperand' property of an ODRL Constraint.
```ttl
odrl:elapsedTime
a :LeftOperand, owl:NamedIndividual, skos:Concept ;
rdfs:isDefinedBy odrl: ;
rdfs:label "Elapsed Time"@en ;
skos:definition "A continuous elapsed time period which may be used for exercising of the action of the Rule. Right operand value MUST be an xsd:duration as defined by [[xmlschema11-2]]."@en ;
skos:note "Only the eq, lt, lteq operators SHOULD be used. See also Metered Time. Example: `elpasedTime eq P60M` indicates a total elapsed time of 60 Minutes." ;
skos:scopeNote "Non-Normative"@en .
exns1:aggregatedTime
a :LeftOperand, owl:NamedIndividual, skos:Concept ;
rdfs:isDefinedBy expf1: ;
rdfs:label "Aggregated Time"@en ;
skos:definition "A aggregation of elapsed time periods which may be used for exercising of the action of the Rule. Right operand value MUST be an xsd:duration as defined by [[xmlschema11-2]]."@en ;
skos:note "Only the eq, lt, lteq operators SHOULD be used. See also Metered Time. Example: `aggregatedTime eq P800M` indicates aggregated elapsed time of 800 Minutes." .
```
--------------------------------
### ODRL Evaluation Request for Conditioned Permission (C1-1)
Source: https://github.com/w3c/odrl/blob/master/formal-semantics/index.html
This JSON snippet represents an evaluation request for the C1 policy. It specifies the target asset and action for the permission, but the state of the world is empty. This scenario tests the initial activation state of the permission and its conditions.
```json
{
"@context": "http://www.w3.org/ns/odrl.jsonld",
"@type": "Agreement",
"uid": "http://example.com/policy/C1",
"permission": [
{
"@id": "http://example.com/rule/C1",
"assigner": "http://example.com/party/sony",
"assignee": "http://example.com/party/billie",
"target": "http://example.com/music/1999.mp3",
"action": "play",
"duty": [
{
"@id": "http://example.com/condition/1",
"action": [
{
"@id": "http://example.com/action/1",
"rdf:value": {"@id": "odrl:compensate"},
"refinement": [
{
"@id": "http://example.com/refinement/1",
"leftOperand": "payAmount",
"operator": "eq",
"rightOperand": {"@value": "5.00", "@type": "xsd:decimal"},
"unit": "http://dbpedia.org/resource/Euro"
}
]
}
]
}
]
}
]
}
```