This document presents a model for describing the ways the rights and obligation conrtolling the use of an asset change over time.
Things change. The rights and obligations controlling the use of data develop as time passes. By providing a temporal model for ODRL, we can ensure that parties in a supply chain share the same view of the past, the present, and the future.
Such a model enables us, for example, to:
Support audits
The model must support an account of history that both the data Provider and the data Consumer can agree upon through the audit process.
Ensure compliance as policies update
The model must continue to support provably-correct compliance decisions in the present as policies change and update over time.
Enable forecasting
The model must support an account of the future so actors in the supply chain can predict their capabilities and costs as and when updates are published.
The introduction of a temporal object to act as a container for the various versions of a relevant entity (like a Permission) allows us to satisfy these use cases while maintaining a stable identifier for these entities across time.
Prefix | Namespace | Description |
---|---|---|
odrl | http://www.w3.org/ns/odrl/2/ | [[odrl-vocab]] [[odrl-model]] |
rdf | http://www.w3.org/1999/02/22-rdf-syntax-ns# | [[rdf11-concepts]] |
rdfs | http://www.w3.org/2000/01/rdf-schema# | [[rdf-schema]] |
owl | http://www.w3.org/2002/07/owl# | [[owl2-overview]] |
xsd | http://www.w3.org/2001/XMLSchema# | [[xmlschema11-2]] |
skos | http://www.w3.org/2004/02/skos/core# | [[skos-reference]] |
dcterms | http://purl.org/dc/terms/ | [[dcterms]] |
vcard | http://www.w3.org/2006/vcard/ns# | [[vcard-rdf]] |
foaf | http://xmlns.com/foaf/0.1/ | [[foaf]] |
schema | http://schema.org/ | schema.org |
cc | https://creativecommons.org/ns# | creativecommons.org |
ex | http://example.com/ns# |
Temporal objects exist in time describing versions of themselves as they change. We're interested in tracking Policies, Rules, and Assets.
Definition: | Something that exists in time and is versioned over time as it changes. |
---|---|
Label: | Temporal Object |
Identifier: | http://www.w3.org/ns/odrl/2/temporal/TemporalObject |
Definition: | An enduring container for the various iterations of a Policy through time. |
---|---|
Label: | Temporal Policy |
Identifier: | http://www.w3.org/ns/odrl/2/temporal/TemporalPolicy |
Sub-class Of: | Temporal Object |
Definition: | An enduring container for the various iterations of an Agreement through time. |
---|---|
Label: | Temporal Agreement |
Identifier: | http://www.w3.org/ns/odrl/2/temporal/TemporalAgreement |
Sub-class Of: | Temporal Policy |
The Temporal Agreement below offers one (temporal) permission prior to the first of January 2020 and two permissions hasBeginning.
[] a tpl:TemporalAgreement ; tpl:version :T1-V1 , :T1-V2 .
:T1-V1 a odrl:Agreement ; tpl:effectiveInterval [ a time:ProperInterval ; time:hasEnd [ a time:Instant ; time:inXSDDate "2020-01-01T00:00:00Z"^^xsd:dateTime ] ; ] ; tpl:temporalPermission :P1 .
:T1-V2 a odrl:Agreement ; tpl:effectiveInterval [ a time:ProperInterval ; time:hasBeginning [ a time:Instant ; time:inXSDDate "2020-01-01T00:00:00Z"^^xsd:dateTime ] ; ] ; tpl:temporalPermission :P1 , :P2 .
Definition: | An enduring container for the various iterations of an Offer through time. |
---|---|
Label: | Temporal Offer |
Identifier: | http://www.w3.org/ns/odrl/2/temporal/TemporalOffer |
Sub-class Of: | Temporal Policy |
Definition: | An enduring container for the various iterations of a Set through time. |
---|---|
Label: | Temporal Set |
Identifier: | http://www.w3.org/ns/odrl/2/temporal/TemporalSet |
Sub-class Of: | Temporal Policy |
Definition: | An abstract concept that represents the common characteristics of Temporal Permissions, Temporal Prohibitions, and Temporal Duties. |
---|---|
Label: | Temporal Rule |
Identifier: | http://www.w3.org/ns/odrl/2/temporal/TemporalRule |
Definition: | An enduring container for the various iterations of a Permission through time. |
---|---|
Label: | Temporal Permission |
Identifier: | http://www.w3.org/ns/odrl/2/temporal/TemporalPermission |
Sub-class Of: | Temporal Rule |
Definition: | An enduring container for the various iterations of a Prohibition through time. |
---|---|
Label: | Temporal Prohibition |
Identifier: | http://www.w3.org/ns/odrl/2/temporal/TemporalProhibition |
Sub-class Of: | Temporal Rule |
The Temporal Permission below offers both display and distrubute actions until 2020, but only a display action hasBeginningwards.
[] a tpl:TemporalPermission ; tpl:version :P1-V1 , :P1-V2 .
:P1-V1 a odrl:Permission ; tpl:effectiveInterval [ a time:ProperInterval ; time:hasEnd [ a time:Instant ; time:inXSDDate "2020-01-01T00:00:00Z"^^xsd:dateTime ] ; ] ; odrl:action odrl:Display , odrl:Distribute ; ...
:P1-V2 a odrl:Permission ; tpl:effectiveInterval [ a time:ProperInterval ; time:hasBeginning [ a time:Instant ; time:inXSDDate "2020-01-01T00:00:00Z"^^xsd:dateTime ] ; ] ; ... odrl:action odrl:Display ; ...
Definition: | An enduring container for the various iterations of a Duty through time. |
---|---|
Label: | Temporal Duty |
Identifier: | http://www.w3.org/ns/odrl/2/temporal/TemporalDuty |
Sub-class Of: | Temporal Rule |
Definition: | An enduring container for the various iterations of an Asset through time. |
---|---|
Label: | Temporal Asset |
Identifier: | http://www.w3.org/ns/odrl/2/temporal/TemporalAsset |
Sub-class Of: | Temporal Object |
A Temporal Objects use the version property to track its iterations through time.
Definition: | A property that points from a temporal object to its time-limited versions. |
---|---|
Label: | has version |
Identifier: | http://www.w3.org/ns/odrl/2/temporal/version |
Domain: | Temporal Object |
Range: | Policy, Rule, Asset |
...
Definition: | A property that specifies the intervel during which the temporal object is effective. |
---|---|
Label: | has effective date |
Identifier: | http://www.w3.org/ns/odrl/2/temporal/effectiveInterval |
Domain: | Policy, Rule, Asset |
Range: | Proper Interval |
Definition: | Links a Policy to a Temporal Permission |
---|---|
Label: | has temporal permission |
Identifier: | http://www.w3.org/ns/odrl/2/temporal/temporalPermission |
Domain: | Policy |
Range: | Temporal Permission |
Definition: | Links a Policy or Rule to a Temporal Duty. |
---|---|
Label: | has temporal duty |
Identifier: | http://www.w3.org/ns/odrl/2/temporal/temporalDuty |
Domain: | Policy, Rule |
Range: | Temporal Duty |
Definition: | Links a Policy or Rule to a Temporal Prohibition. |
---|---|
Label: | has temporal prohibition |
Identifier: | http://www.w3.org/ns/odrl/2/temporal/temporalProhibition |
Domain: | Policy, Rule |
Range: | Temporal Duty |
Definition: | Links a Rule to a Temporal Asset. |
---|---|
Label: | has temporal target |
Identifier: | http://www.w3.org/ns/odrl/2/temporal/temporalTarget |
Domain: | Rule |
Range: | Temporal Asset |