This document discusses the importance of providing a formal semantics for ODRL.

Introduction

The Open Digital Rights Language (ODRL) is a policy expression language that can be used to represent permitted and prohibited actions over a certain asset, as well as obligated actions.
The ODRL Information Model formally defines the core abstract concepts (classes) of the model and their properties by means of an OWL 2 Ontology (which is available in various format at https://www.w3.org/ns/odrl/2/).
The ODRL ontology can be used to write machine-readable policies (sample policies are available here https://w3c.github.io/odrl/bp/) and associate them to digital assets. This will allow consumers search for policies, for example they can easily retrieve all the permissions they have on a given picture or all the prohibitions associated to a movie.
Monitoring and simulation are two other useful services that can be provided on a set of machine-readable policies. Monitoring is useful, for example, for being able to: Simulation may be used by consumers for a what-if analysis and test if the performance of an action on a digital asset will I violate one of its policies.
In order to automatically provide monitoring or simulation services on a set of policies we need to be able to formally specify their meaning, i.e. the course of actions that will bring to their violation or fulfilment. The meaning of having an ORDL permission, prohibition or obligation is currently specified only in natural language. For example, this is the ODRL specification of prohibition: ''A Prohibition disallows an action, with all refinements satisfied, to be exercised on an Asset if all constraints are satisfied.''.
If we want to be able to automatically monitor or simulate the fulfilment or violation of a set of ODRL policies we need:
  1. A machine-readable representation of the actions performed (for monitoring) or planned (for simulation) by a set of agents;
  2. A mechanism for automatically computing the activation of policies (i.e. checking if their constraints are satisfied);
  3. A mechanism for automatically checking if a given action (realized on a given asset by a certain agent) is regulated by a set of active policies;
  4. A mechanism for automatically computing if the active policies that regulate such an action are fulfilled or violated by its performance.

Section 2

...

Document Conventions

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#