Represent Rights Data Ontology (RRDOnto)

for the Interoperable Digital Rights Management Platform

Specification Document - 17 July 2007

Latest version:
http://purl.oclc.org/NET/rrdonto
Last update:
$Date: 2007/07/17 $
Revision:
Revision: 6.2
Editor:
Víctor Rodríguez
Authors:
Marc Gauvin - SDAE, NetPortedItems
Jaime Delgado - DMAG Group
Víctor Rodríguez - DMAG Group

Abstract

The RRDOnto Ontology Specification provides a model for describing the Intellectual Property Value Chain. It describes the Intellectual Property Objects, the typical Roles which interact with them and a set of possible Actions.
This document contains a detailed description of the specification of such a model under the for of an OWL Ontology.

 


Status of this Document

This section describes the status of this document at the time of its publication. Other documents may supersede this document.

This document is a non normative document, describing the RRDOnto Ontology. The Ontology is an evolving entity, and thus this document cannot be considered a closed version.


1 Introduction

The Digital Media Project (DMP) Creation Model establishes a formal representation of generic Intellectual Property (IP) Entities, tracing its Value Chain from the Creation to the Consumption.
The model representing the cycle of creation of Intellectual Property Entities and how they become digital media content is called the Creation Model. It is specified by the DMP at Approved Document No 2 WD3.0.

2 RRDOnto at a Glance

The summarized statistics for this ontology follows:

owl:versionInfo : 6.2 For IDP2.3
rdfs:comment : This is an ontology for describing the DMP Creation Model.
Total Number of Classes: 63 (Defined: 63, Imported: 0)
Total Number of Datatype Properties: 3 (Defined: 3, Imported: 0)
Total Number of Object Properties: 15 (Defined: 15, Imported: 0)
Total Number of Annotation Properties: 2 (Defined: 2, Imported: 0)
Ontology classification: OWL DL

An alphabetical index of RRDOnto terms, by class (categories or types), by property and by individuals. All the terms are hyperlinked to their detailed description for quick reference.

Main Classes: | IPEntity | Role | Action | Permit |

Main IPEntity Classes: | Work | Adaptation | Manifestation | Instance | Copy | Product |

Role Classes: | Creator | Adaptor | Instantiator | Producer | Distributor | End User |

Main Action Classes: | Synchronization | MakeAdaptation | ModifyCopy | Distribute | CreateWork | Render | MakeManifestation | MoveContent | MakeInstance | MakeCopy | Produce | Public Communication |

Properties: | Can | DependsOn | HasConsentOver | Origin | PermitAction | PermitIPEntity | ProducedFrom | ResultsIn | RightsGivenBy | RightsOwner | SourceOfPermit | SubjectOfPermit | Supports | Uses |

 

3 Namespaces

rrdhttp://purl.oclc.org/NET/rrdonto#
xsdhttp://www.w3.org/2001/XMLSchema#
dchttp://purl.org/dc/elements/1.1/
rdfshttp://www.w3.org/2000/01/rdf-schema#
rdfhttp://www.w3.org/1999/02/22-rdf-syntax-ns#
owlhttp://www.w3.org/2002/07/owl#

4 Overview of the Main Classes

IPEntities, Roles and Actions, are the three top level classes. Their basic relationship is shown in the figure:

Users (Creator, Adaptor, Instantiator, Producer...) play one or more Roles. Each role can exercise some actions over certain IP Entities, and IP Entities only support certain actions to be exercised over them. Naturally, each IP Entity has a unique rights owner. The following sentences would be typical in this ontology.
Bob isA Creator
MyWork isA Work
Bob can CreateWork
MyWork rightsOwner Bob
MyWork supports MakeAdaptation

5 Overview of the IP Entities relations

Work, Manifestation, Manifestation can be either of an Adaptation (AdaptationManifestation) or of a Work (WorkManifestation). The relationship between Works, Adaptations, Manifestations and Instances is shown below.

Note that two dependency relations have been used: dependOn, and uses, which have different definitions. However both properties are subproperties of the most generic property origin

. Note that manifestation of adaptations can be based in the manifestation of the original work, or in an instance. The following sentences will be theoretically different, but in most of the cases equivalent:
MyWork isA Work
MyAdpatation isA Adaptation
MyAdaptation dependsOn MyWork
MyWorkManif dependsOn MyWork
MyInstance uses MyWorkManif
MyAdaptationManif uses MyInstance

This is the class diagram:

6 Overview of the Actions

Actions refer to both those that are applied over digital objects and those that are not. The result of some actions may imply the creation of another IPEntity (for example, a MakeAdaptation action generates a new IP Entity of the kind Adaptation) while others do not for example the action “play”. The following figure depicts the main actions represented in the RRD.

7 Overview of the Authorising Mechanisms

A Creator has all the rights over its created work. Most of this rights can be transferred to other users, which in turn can transfer them to other users (there are some unwaivable rights which the Creator can never dismiss). In the ontology it is reflected in the relationship rightsOwner, which every IP Entity must have pointing to a valid user.

Eventually, a owner of the rights on certain IP Entity may want to transfer only some of his rights to a second user, and for him or her to be exercised and not re-transferred. This is done through the permit class.

Executing certain actions also requires the addional consent of the original author, what is represent through the relation called requiresCreatorAuthorization

8 Querying the ontology

A RRDOnto Java API has been developed to access to this ontology. Additionally the ontology can be queryied with the SPARQL language, issuing queries such as:
PREFIX rrd: <http://dmag.ac.upc.edu/dmp/CreationModel.owl#>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT ?x ?a ?b
WHERE
{
?x rrd:SourceOfPermit rrd:Bob .
?x rrd:SubjectOfPermit rrd:Alice .
?x rrd:PermitIPEntity rrd:MyWork .
?x rdf:type rrd:Permit .
?x rrd:PermitAction ?y .
?y owl:unionOf (?a ?b) .
}

Events Log