RightsML - The ODRL Common Vocabulary
<< Previous: Introduction to the ODRL 2.0 Core Model
The ODRL Common Vocabulary
The ODRL 2.0 Common Vocabulary defines identifiers and semantics for a collection of rights expression terms that are intended to be of widespread use across a range of applications of ODRL 2.0.
Terms are defined under the following headings, each of which relates to properties of entities defined in the ODRL 2.0 Core Model:
- Policy type
- Action
- Constraint
- Party role function and scope
- Asset relation
The ODRL 2.0 Common Vocabulary defines a number of Policy types: "agreement", "offer", "privacy", "request", "set" and "ticket". Although the RightsML Profile includes all Policy types with the exception of "privacy", it is believed that only one Policy type, "set", is generally relevant to RightsML, because this provides the greatest flexibility in expressing a set of permissions and prohibitions that are to be interpreted in the context of a governing license, as would normally be the case in business-to-business content syndication.
Actions
The ODRL 2.0 Common Vocabulary defines a large number of Actions, of which fewer than half are considered to be applicable in the RightsML Profile. In some cases an Action defined in the ODRL 2.0 Common Vocabulary appears to have an equivalent term in the RightsML Vocabulary, but in these cases there is always an important semantic distinction to justify the inclusion of a replacement term in the RightsML Vocabulary.
The Actions that are defined in the ODRL 2.0 Common Vocabulary include a mixture of Actions that are most likely to be used in association with Permissions or Prohibitions and Actions that are most likely to be used in association with Duties. The definition of the semantics of an Action specifies where it is most likely to be used in association with a Duty.
Constraints
Of the twenty-five Constraints defined in the Common Vocabulary, only five are not included in the RightsML Profile.
In addition to providing a formal definition of the semantics of each Constraint, the Common Vocabulary provides information on the expected value range of the Constraint. In many cases the full semantics of a Constraint will depend upon context of its use (i.e. the Permission, Prohibition or Duty and the Action to which it is related).
The ODRL 2.0 Common Vocabulary defines twelve relation terms that may to used to specify the "operator" of a Constraint:
Quantitative relation operators
- eq"Equals"
- gt"Greater Than"
- gteq"Greater Than or Equal To"
- lt"Less Than"
- lteq"Less Than or Equal To"
- neq"Not Equal To"
Set relation operators
- hasPart
- isA
- isAllOf
- isAnyOf
- isNoneOf
- isPartOf
All of the above operators are included in the RightsML Profile.
Party Role Function and Scope
The ODRL 2.0 Common Vocabulary defines seven Party role functions and six Party scopes. These are all included in the RightsML Profile, although not all are known to be required in the RightsML use case.
Of the seven defined role functions, two are required in all ODRL 2.0 applications: "assigner" and "assignee". The other defined role functions relate to the performance of particular Duties, as indicated in the following table:
|
Duty Action |
Applicable Party role function |
|
attribute |
attributedParty |
|
obtainConsent |
consentingParty |
|
inform |
informedParty |
|
pay |
payeeParty |
The role function "trackingParty" is included in the RightsML Profile, but does not currently relate to a specific Duty Action. It is included so as to be available should any tracking-related Duty Actions be added to the RightsML Vocabulary in future.
The six scope values defined in the ODRL 2.0 Common Vocabulary are: "individual", "group", "all", "allConnections", "all2ndConnections" and "allGroups". It is understood that these are included primarily for use in policies associated with privacy use cases. They are included in the RightsML Profile, although no requirement to use them has been identified in the RightsML use case.
Asset Relations
The ODRL 2.0 Common Vocabulary defines two relation terms associated with Assets: "target" (required by the Core Model) and "outputUID"). The RightsML Profile includes both these terms as defined in the Common Vocabulary.
In the case of "outputUID", the RightsML Profile extends the value range to include resource categories, which would typically be identified by a QCode or qualified name, rather than by a URI.
Feedback and Questions
We welcome feedback on and questions about RightsML. You may post to the public RightsML Forum. If you are an IPTC member, then you are also entitled to join the private RightsML email discussion list.