This document provides a mapping from [[[ODRL-VOCAB]]] concepts to DPV concepts to assist implementations using both of them together. Currently, this activity is a work in progress and the DPVCG welcomes contributions and participation for it.

DPV Specifications: The [[DPV]] is the core specification that is extended by specific extensions. A [[PRIMER]] introduces the concepts and modelling of DPV specifications, and [[GUIDES]] describe application of DPV for specific applications and use-cases. The Search Index page provides a searchable hierarchy of all concepts. The Data Privacy Vocabularies and Controls Community Group (DPVCG) develops and manages these specifications through GitHub. For meetings, see the DPVCG calendar.

The peer-reviewed article "Data Privacy Vocabulary (DPV) - Version 2.0" (2024) describes the current state of DPV and extensions from version 2.0 onwards, with an earlier article (2019) covering how the DPV was developed (open access versions here, here, and here).

Contributing: The DPVCG welcomes participation to improve the DPV and associated resources, including expansion or refinement of concepts, requesting information and applications, and addressing open issues. See contributing guide for further information.

Introduction

Concepts in DPV can be aligned with those from the [[[ODRL-VOCAB]]] by using [[SKOS]] relations. In addition, to enable the use of DPV in ODRL policies, certain relations are expressed as instances of ODRL's Left Operand concepts. This mapping is also provided in RDF and CSV form for convenience. This mapping will assist the [[[GUIDE-ODRL]]].

The DPVCG aims to create and provide a profile containing DPV concepts to enable the use of all DPV vocabularies in adherence with ODRL recommendations, and welcomes contributions and participation in this process.

The following namespaces are used in the document:

Prefix Namespace
ai https://w3id.org/dpv/ai#
dpv https://w3id.org/dpv#
dpv-odrl https://w3id.org/dpv/mappings/odrl#
odrl http://www.w3.org/ns/odrl/2/
pd https://w3id.org/dpv/pd#
rdf http://www.w3.org/1999/02/22-rdf-syntax-ns#
skos http://www.w3.org/2004/02/skos/core#
tech https://w3id.org/dpv/tech#

Mapping

The [[[ODRL-MODEL]]] is a W3C Recommendation for policy representation that provides the syntax and vocabulary to express conditions for the usage of content and services. While ODRL contains a standardised vocabulary to express such statements [[ODRL-VOCAB]], it is domain- and jurisdiction-agnostic, and as such, it does not contain concepts to refer to specific data protection requirements. In this context, by defining a mapping between DPV and ODRL, we can explicitly define policies that contain legal terms.

ODRL's core concepts are rules, i.e., permissions, prohibitions, and obligations, which can used to represent permitted, prohibited, and obligatory actions over a certain asset, which can, cannot or are required to be meet by involved parties. Furthermore, policies may be further restricted with constraints, e.g., temporal or purpose constraints, and duties, e.g. delete after using.

Thus, in this document, we map DPV concepts to ODRL terms in order to, e.g., express that an ODRL party is a DPV data controller, or to restrict a certain permissive rule to be used for a certain DPV purpose. This mapping was performed following the ODRL Profile Mechanism specified in the ODRL standard [[ODRL-MODEL]], as well as following the best practices documented in the ODRL V2.2 Profile Best Practices report.

Entities

DPV's entities are human and legal stakeholders, including individuals, organisations, institutions, or authorities. As such, all DPV-ODRL entities can be mapped as exactly matching their DPV counterpart, using the skos:exactMatch property, and as instances of ODRL parties, i.e., to be used as assigners or assignees of ODRL policies. For conciseness, only the mapping of dpv-odrl:Entity to dpv:Entity and to odrl:Party is included in the table, however this mapping is applicable to all DPV concepts of type Entity.

Furthermore, given the hierarchical nature of DPV, certain entity terms can also be used as a left operand to filter ODRL party collections, e.g., given a party collection that contains multiple human subjects of different types, using DPV's HumanSubject as the left operand and Patient as the right operand allows the expression of a policy which is only applicable to this type of human subject.

Mapped Concept Mapping Type DPV/ODRL Concept
dpv-odrl:Entity skos:exactMatch dpv:Entity
dpv-odrl:Entity rdf:type odrl:Party
dpv-odrl:Entity rdf:type odrl:LeftOperand
dpv-odrl:Agent rdf:type odrl:LeftOperand
dpv-odrl:LegalEntity rdf:type odrl:LeftOperand
dpv-odrl:HumanSubject rdf:type odrl:LeftOperand
dpv-odrl:Organisation rdf:type odrl:LeftOperand
dpv-odrl:Recipient rdf:type odrl:LeftOperand
dpv-odrl:Recipient skos:broader odrl:recipient
dpv-odrl:Actor rdf:type odrl:LeftOperand

Processing

DPV's processing concepts are related to operations which can be performed over data. As such, all DPV-ODRL processing operations can be mapped as exactly matching their DPV counterpart, using the skos:exactMatch property, and as instances of ODRL actions. For conciseness, only the mapping of dpv-odrl:Processing to dpv:Processing and to odrl:Action is included in the table, however this mapping is applicable to all DPV concepts of type Processing.

Furthermore, a few DPV processing operations have a close match in the ODRL actions taxonomy. Such a relation is represented using the skos:related property, e.g., odrl:aggregate is similar to dpv:Aggregate.

Mapped Concept Mapping Type DPV/ODRL Concept
dpv-odrl:Processing skos:exactMatch dpv:Processing
dpv-odrl:Processing rdf:type odrl:Action
dpv-odrl:Tracking skos:related odrl:acceptTracking
dpv-odrl:Aggregate skos:related odrl:aggregate
dpv-odrl:Anonymise skos:related odrl:anonymize
dpv-odrl:Delete skos:related odrl:delete
dpv-odrl:Derive skos:related odrl:derive
dpv-odrl:Display skos:related odrl:display
dpv-odrl:Modify skos:related odrl:modify
dpv-odrl:Move skos:related odrl:move
dpv-odrl:Transfer skos:related odrl:transfer
dpv-odrl:Transform skos:related odrl:transform
dpv-odrl:Use skos:related odrl:use

Data

DPV's data concepts can be used to indicate the use of any data, personal and non-personal. As such, all DPV-ODRL data concepts can be mapped as exactly matching their DPV counterpart, using the skos:exactMatch property, and as instances of ODRL assets. For conciseness, only the mapping of dpv-odrl:Data to dpv:Data and to odrl:Asset is included in the table, however this mapping is applicable to all DPV concepts of type Data.

Furthermore, DPV's data source concepts can be used to refine asset collections and the personal data categories in the [[PD]] extension can also be used as constraints to refine party collections, e.g., by gender or age.

Mapped Concept Mapping Type DPV/ODRL Concept
dpv-odrl:Data skos:exactMatch dpv:Data
dpv-odrl:Data rdf:type odrl:Asset
dpv-odrl:Data rdf:type odrl:LeftOperand
dpv-odrl:PersonalData rdf:type odrl:LeftOperand
dpv-odrl:Age rdf:type odrl:LeftOperand
dpv-odrl:Gender rdf:type odrl:LeftOperand
dpv-odrl:Nationality rdf:type odrl:LeftOperand
dpv-odrl:DataSource rdf:type odrl:LeftOperand

Technologies

DPV's technology concepts can be used to indicate the use of any technology, including AI. As such, all DPV-ODRL technology concepts can be mapped as exactly matching their DPV counterpart, using the skos:exactMatch property, and as instances of ODRL assets. For conciseness, only the mapping of dpv-odrl:Technology to dpv:Technology and to odrl:Asset is included in the table, however this mapping is applicable to all DPV concepts of type Technology.

Furthermore, DPV's [[TECH]] and [[AI]] extensions include technological concepts that can also be used to further constraint rules within ODRL policies, e.g., a certain asset can only be used to train an AI model.

Mapped Concept Mapping Type DPV/ODRL Concept
dpv-odrl:Technology skos:exactMatch dpv:Technology
dpv-odrl:Technology rdf:type odrl:Asset
dpv-odrl:Technology rdf:type odrl:LeftOperand

Purpose

DPV's purpose concepts can be utilised to restrict usage of a certain asset to a particular purpose or set of purposes, e.g., allow a certain asset to be used only for research and development.

Mapped Concept Mapping Type DPV/ODRL Concept
dpv-odrl:Purpose skos:exactMatch dpv:Purpose
dpv-odrl:Purpose rdf:type odrl:LeftOperand
dpv-odrl:Purpose skos:broader odrl:purpose

Technical and Organisational Measures

DPV's technical and organisational measures can be utilised to restrict usage of a certain asset only if a particular technical, organisational, legal, physical, or risk mitigation measure is in place, e.g, allow a certain asset to be used only if there is Multi-Factor Authentication.

Mapped Concept Mapping Type DPV/ODRL Concept
dpv-odrl:TechnicalOrganisationalMeasure rdf:type odrl:LeftOperand
dpv-odrl:TechnicalOrganisationalMeasure skos:exactMatch dpv:TechnicalOrganisationalMeasure
dpv-odrl:TechnicalMeasure rdf:type odrl:LeftOperand
dpv-odrl:TechnicalMeasure skos:exactMatch dpv:TechnicalMeasure
dpv-odrl:OrganisationalMeasure rdf:type odrl:LeftOperand
dpv-odrl:OrganisationalMeasure skos:exactMatch dpv:OrganisationalMeasure
dpv-odrl:LegalMeasure rdf:type odrl:LeftOperand
dpv-odrl:LegalMeasure skos:exactMatch dpv:LegalMeasure
dpv-odrl:PhysicalMeasure rdf:type odrl:LeftOperand
dpv-odrl:PhysicalMeasure skos:exactMatch dpv:PhysicalMeasure
dpv-odrl:RiskMitigationMeasure rdf:type odrl:LeftOperand
dpv-odrl:RiskMitigationMeasure skos:exactMatch dpv:RiskMitigationMeasure

Location & Jurisdiction

DPV's location concepts can be utilised to restrict usage of a certain asset to particular location. For this purpose, the [[[LOC]]] extension provides concepts regarding locations such as countries and regions based on the ISO 3166 standards.

Furthermore, given that DPV has the relation dpv:hasJurisdiction to represent locations as jurisdictions, when mapping that relation into an ODRL constraint, dpv-odrl:Location can also be used as a left operand to indicate jurisdiction.

Mapped Concept Mapping Type DPV/ODRL Concept
dpv-odrl:Location rdf:type odrl:LeftOperand
dpv-odrl:Location skos:exactMatch dpv:Location
dpv-odrl:Location skos:broader odrl:spatial

Duration & Frequency

DPV's duration and frequency concepts can be used to indicate how long a certain rule can be exercised and with what frequency, respectively. Furthermore, these DPV concepts have a close match with a few ODRL left operands. Such a relation is represented using the skos:related property, e.g., dpv:Duration has similarities with the odrl:elapsedTime left operand.

Mapped Concept Mapping Type DPV/ODRL Concept
dpv-odrl:Duration rdf:type odrl:LeftOperand
dpv-odrl:Duration skos:exactMatch dpv:Duration
dpv-odrl:Duration skos:related odrl:elapsedTime
dpv-odrl:Duration skos:related odrl:count
dpv-odrl:Frequency rdf:type odrl:LeftOperand
dpv-odrl:Frequency skos:exactMatch dpv:Frequency
dpv-odrl:Frequency skos:related odrl:timeInterval

Rights & Justifications

DPV's rights and justifications concepts can be used to indicate applicable rights and to provide reasons or explanations to justify a certain processing activity, respectively. Both concepts can be used in isolation, or they can be used simultaneously to justify the exercising of a certain activity, e.g., a data subject wants to exercise their GDPR right to erasure given that their personal data is no longer required to be processed in relation to the purposes for which it was initially processed. Furthermore, the [[[JUSTIFICATIONS]]] extension provides a taxonomy of concepts to use as justifications for certain activities.

Mapped Concept Mapping Type DPV/ODRL Concept
dpv-odrl:Right rdf:type odrl:LeftOperand
dpv-odrl:Right skos:exactMatch dpv:Right
dpv-odrl:Justification rdf:type odrl:LeftOperand
dpv-odrl:Justification skos:exactMatch dpv:Justification

Risk

DPV's risk concepts can be used to permit or prohibit the usage of certain assets depending on the risks associated to them, including impacts and consequences of using them, as well as calculated likelihood and severity. For this purpose, the [[[RISK]]] extension provides concepts related to risk sources, impacts, consequences or risk mitigation measures.

Mapped Concept Mapping Type DPV/ODRL Concept
dpv-odrl:Risk rdf:type odrl:LeftOperand
dpv-odrl:Risk skos:exactMatch dpv:Risk
dpv-odrl:RiskLevel rdf:type odrl:LeftOperand
dpv-odrl:RiskLevel skos:exactMatch dpv:RiskLevel
dpv-odrl:RiskControl rdf:type odrl:LeftOperand
dpv-odrl:RiskControl skos:exactMatch dpv:RiskControl
dpv-odrl:Likelihood rdf:type odrl:LeftOperand
dpv-odrl:Likelihood skos:exactMatch dpv:Likelihood
dpv-odrl:Severity rdf:type odrl:LeftOperand
dpv-odrl:Severity skos:exactMatch dpv:Severity
dpv-odrl:Consequence rdf:type odrl:LeftOperand
dpv-odrl:Consequence skos:exactMatch dpv:Consequence
dpv-odrl:Impact rdf:type odrl:LeftOperand
dpv-odrl:Impact skos:exactMatch dpv:Impact

Sector

DPV's sector concepts can be used to permit or prohibit the usage of certain assets depending on the area of application or domain that they are to be used. For this purpose, the [[[EU-AIAct]]] extension provides concepts to represent, e.g., the education or the employment sector.

Mapped Concept Mapping Type DPV/ODRL Concept
dpv-odrl:Sector rdf:type odrl:LeftOperand
dpv-odrl:Sector skos:exactMatch dpv:Sector

Status & Processing Context

DPV's status concepts can be used to indicate information regarding the status or state of a certain process or activity. For instance, it can be used to permit the usage of a certain asset only if the consent status for that usage is valid, i.e., using the dpv:ConsentStatusValidForProcessing concept.

DPV's processing context concepts can be used to further restrict the context or conditions within which a certain process or activity takes place. For instance, it can be used to permit the usage of a certain asset only if there is human involvement for the purposes of having human oversight over the allowed action, i.e., using dpv-odrl:HumanInvolvement as the left operand of a constraint and the dpv:HumanInvolvementForOversight concept as the right operand.

Mapped Concept Mapping Type DPV/ODRL Concept
dpv-odrl:Status rdf:type odrl:LeftOperand
dpv-odrl:Status skos:exactMatch dpv:Status
dpv-odrl:AutomationLevel rdf:type odrl:LeftOperand
dpv-odrl:AutomationLevel skos:exactMatch dpv:AutomationLevel
dpv-odrl:EntityInvolvement rdf:type odrl:LeftOperand
dpv-odrl:EntityInvolvement skos:exactMatch dpv:EntityInvolvement
dpv-odrl:HumanInvolvement rdf:type odrl:LeftOperand
dpv-odrl:HumanInvolvement skos:exactMatch dpv:HumanInvolvement
dpv-odrl:ProcessingLocation rdf:type odrl:LeftOperand
dpv-odrl:ProcessingLocation skos:exactMatch dpv:ProcessingLocation
dpv-odrl:Scale rdf:type odrl:LeftOperand
dpv-odrl:Scale skos:exactMatch dpv:Scale

Rules

DPV's sector concepts can be used to permit or prohibit the usage of certain assets depending on the area of application or domain that they are to be used. For this purpose, the [[[EU-AIAct]]] extension provides concepts to represent, e.g., the education or the employment sector.

Mapped Concept Mapping Type DPV/ODRL Concept
dpv-odrl:Permission skos:closeMatch odrl:Permission
dpv-odrl:Permission skos:exactMatch dpv:Permission
dpv-odrl:Prohibition skos:closeMatch odrl:Prohibition
dpv-odrl:Prohibition skos:exactMatch dpv:Prohibition
dpv-odrl:Obligation skos:closeMatch odrl:Duty
dpv-odrl:Obligation skos:exactMatch dpv:Obligation

Contractual Terms and Legal Agreements

DPV's contractual clauses and legal agreement concepts can be mapped as additional types of ODRL policies. In this case, besides being mapped as a subclass of a odrl:Policy, the owl:disjointWith property is used to indicate that each DPV-ODRL policy is mutually exclusive from all other existing ODRL policy types, which is a requirement from the ODRL Profile Mechanism for the definition of additional policy subclasses.

Mapped Concept Mapping Type DPV/ODRL Concept
dpv-odrl:ContractAmendmentClause rdfs:subClassOf odrl:Policy
dpv-odrl:ContractAmendmentClause skos:exactMatch dpv:ContractAmendmentClause
dpv-odrl:ContractConfidentialityClause rdfs:subClassOf odrl:Policy
dpv-odrl:ContractConfidentialityClause skos:exactMatch dpv:ContractConfidentialityClause
dpv-odrl:ContractDisputeResolutionClause rdfs:subClassOf odrl:Policy
dpv-odrl:ContractDisputeResolutionClause skos:exactMatch dpv:ContractDisputeResolutionClause
dpv-odrl:ContractJurisdictionClause rdfs:subClassOf odrl:Policy
dpv-odrl:ContractJurisdictionClause skos:exactMatch dpv:ContractJurisdictionClause
dpv-odrl:ContractTerminationClause rdfs:subClassOf odrl:Policy
dpv-odrl:ContractTerminationClause skos:exactMatch dpv:ContractTerminationClause
dpv-odrl:TermsOfService rdfs:subClassOf odrl:Policy
dpv-odrl:TermsOfService skos:exactMatch dpv:TermsOfService
dpv-odrl:DataHandlingClause rdfs:subClassOf odrl:Policy
dpv-odrl:DataHandlingClause skos:exactMatch dpv:DataHandlingClause
dpv-odrl:LegalAgreement rdfs:subClassOf odrl:Policy
dpv-odrl:LegalAgreement skos:exactMatch dpv:LegalAgreement
dpv-odrl:ConfidentialityAgreement rdfs:subClassOf odrl:Policy
dpv-odrl:ConfidentialityAgreement skos:exactMatch dpv:ConfidentialityAgreement
dpv-odrl:NDA rdfs:subClassOf odrl:Policy
dpv-odrl:NDA skos:exactMatch dpv:NDA
dpv-odrl:StatisticalConfidentialityAgreement rdfs:subClassOf odrl:Policy
dpv-odrl:StatisticalConfidentialityAgreement skos:exactMatch dpv:StatisticalConfidentialityAgreement

Usage of ODRL operators

The ODRL vocabulary has a set of 12 defined constraint operators to express the relation(s) between left and right operands. Given that multiple operators can be used to restrict this relation, the left operand and operator usage should be refined for each left operand, e.g., the odrl:isA operator should not be used with the dpv-odrl:Frequency left operand. As such, the skos:note property is used to associate a left operand with a note on the operators that must be used with said left operand. All left operands defined in this mapping contain this information. Furthermore, validation of proper operator usage can be done using, e.g., SHACL shapes.

Funding Acknowledgements

Funding Sponsors

The DPVCG was established as part of the SPECIAL H2020 Project, which received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No. 731601 from 2017 to 2019. Continued developments have been funded under: RECITALS Project funded under the EU's Horizon program with grant agreement No. 101168490.

Harshvardhan J. Pandit was funded to work on DPV from 2020 to 2022 by the Irish Research Council's Government of Ireland Postdoctoral Fellowship Grant#GOIPD/2020/790.

The ADAPT SFI Centre for Digital Media Technology is funded by Science Foundation Ireland through the SFI Research Centres Programme and is co-funded under the European Regional Development Fund (ERDF) through Grant#13/RC/2106 (2018 to 2020) and Grant#13/RC/2106_P2 (2021 onwards).

Funding Acknowledgements for Contributors

The contributions of Beatriz Esteves have received funding through the PROTECT ITN Project from the the INESData project - Infrastructure to Investigate Data Spaces in Distributed Environments at UPM, (TSI-063100-2022-0001), a project funded under the UNICO I+D CLOUD call by the Ministry for Digital Transformation and the Civil Service, in the framework of the recovery plan PRTR financed by the European Union (NextGenerationEU); and from SolidLab Vlaanderen (Flemish Government, EWI and RRF project VV023/10), and by the imec.icon project PACSOI (HBC.2023.0752) which was co-financed by imec and VLAIO; and the European Union’s Horizon 2020 research and innovation programme under the Marie Skłodowska-Curie grant agreement No 813497; and the SolidLab Vlaanderen (Flemish Government, EWI and RRF project VV023/10), and by the imec.icon project PACSOI (HBC.2023.0752) which was co-financed by imec and VLAIO.

The contributions of Harshvardhan J. Pandit have been made with the financial support of Science Foundation Ireland under Grant Agreement No. 13/RC/2106_P2 at the ADAPT SFI Research Centre; and the AI Accountability Lab (AIAL) which is supported by grants from following groups: the AI Collaborative, an Initiative of the Omidyar Group; Luminate; the Bestseller Foundation; and the John D. and Catherine T. MacArthur Foundation.