MPEG-21 Rights Expression Language
MPEG doc#: N7427
Date: July 2005
A Rights Expression Language (REL) is a machine-readable language that declares rights and permissions. The MPEG REL, as defined by ISO/IEC 21000-5, provides flexible, interoperable mechanisms to support transparent and augmented use of digital resources throughout the value chain in a way that protects the digital resource and honors the rights, conditions, and fees specified for it. For instance, it provides mechanisms in support of publishing, distributing, and consuming digital content such as electronic books, digital movies, digital music, broadcast content, interactive games, computer software, and other creations in digital form. It also supports specification of access and usage controls for digital content in cases where financial exchange is not a term of use, and supports exchange of sensitive or private digital content and personal information.
The standard REL can support guaranteed end-to-end interoperability, consistency, and reliability among different systems and services. To do so, it offers richness and extensibility in declaring rights, conditions, and obligations; ease and persistence in identifying and associating these with digital content; and flexibility in supporting multiple usage/business models.
2 Overview of the REL
The MPEG REL adopts a simple and extensible data model for many of its key concepts and elements.
Its data model for a rights expression includes four basic entities. The basic relationship among these entities is defined by the MPEG REL assertion “grant.” Structurally, a grant consists of the following elements:
- The principal to whom the grant is issued;
- The right that the grant specifies;
- The resource to which the right in the grant applies; and
- The condition that must be met before the right can be exercised.
By itself, a grant is not a complete rights expression that can be transferred unambiguously from one party to another. A full rights expression is called a license. A typical license consists of one or more grants and an issuer, which identifies the party who issued the license. Figure 1 illustrates the structure of a simple license:
Figure 1 — Structure of a Simple License
2.1 Components of a license
A principal encapsulates the identification of a party to whom rights are granted. Each principal identifies exactly one party. A principal denotes the party that it identifies by information unique to that party. Usefully, this is information with an associated authentication mechanism by which the principal can prove its identity.
A right is the "verb" that a principal may exercise against some resource under some condition. Typically, a right specifies an action (or activity) or a class of actions that a principal may perform on or using the associated resource.
A resource is the "object" to which a principal can be granted a right. A resource can be a digital work (such as an e-book, an audio or video file, or an image), a service (such as an email or B2B transaction service), or a piece of information a principal can own (such as a name or an email address).
A condition specifies the terms, conditions, and obligations under which rights can be exercised. A simple condition is a time interval during which a right can be exercised. A slightly complicated condition is to require a principal to have a valid, prerequisite right. In this way, eligibility to exercise one right can depend on the eligibility to exercise other rights.
The issuer identifies the party who issued the license. It can contain a principal or a signature to identify the issuing party. Using a signature to identify the issuer is useful to address trust and authentication issues and to ensure license integrity. The issuer element can also contain details relating to the issuance of the license (for instance, the time it was issued or the mechanism by which it might be revoked).
2.1.6 Relationship with MPEG terminology
The entities in the MPEG REL data model (principal, right, resource, and condition) can correspond to, but are not necessarily equivalent to, the MPEG-21 terms “User” including “terminal,” “right,” “Digital Item,” and “condition.”
2.1.7 Encapsulated in XML Schema
Since the MPEG REL is defined using the XML Schema recommendation from W3C, its element model follows the standard one that relates its elements to other classes of elements. For example, the grant element is related to its child elements: principal, right, resource, and condition.
2.2 Extensions and Profiling
MPEG recognizes that different applications require different levels of complexity and flexibility in the REL and that specific industries and user communities may need to modify the language to better meet their specific needs. To facilitate easy mapping of the REL to these industry-specific applications, MPEG has developed a process of extending and profiling of the language.
The extension process enables individuals to define new elements specific to their needs. This includes developing new verbs and schematic elements to improve efficiency in a specific domain. To promote interoperability, MPEG has developed the Rights Data Dictionary (RDD) to ensure that the semantic interpretation of new verbs is unambiguously understood.
The profile process enables individuals to select only those language elements required to meet a specific application need. This optimizes payload of digital items and computation requirements of MPEG terminals.
An extension and profile can be used concurrently to optimize the applicability of the REL to one specific application.