Rights statement

Use Case

You are able to implement the inclusion of a license, rights, or other important statement about a resource (e.g. a Manifest’s JSON or an image’s pixels) by using the rights, requiredStatement, and metadata properties. This recipe will focus on the first two; see the Presentation 3.0 spec on metadata for more information about that property.

While you may use rights and requiredStatement similarly for the function of asserting certain important information (e.g. reproduction rights, ownership, collection name), the properties do have material differences. These are the most salient:

  • Content: The rights value must be a Creative Commons license URI, a RightsStatements.org URL, or added through the extension process. The requiredStatement value, on the other hand, can be any content, such as a copyright or institutional URI or text.
  • Rendering: Clients must render requiredStatement content on every resource type (even if hidden at first), but rights content may or may not be rendered visibly.
  • Property Value: The rights property value must be a string, and must be a URI defined by Creative Commons or RightsStatement.org if you are using one of those specifications. On the other hand, the requiredStatement value must be a single JSON object with label and value properties; metadata values must be an array of JSON objects, where each object has the label and value properties.
  • Resource Applicability: Any resource type may have rights or requiredStatement. However, rights is only for license or rights to the resource, while requiredStatement can be any text the publishing organization deems critical to display to the user.

If user visibility of the information or a publisher-defined label is paramount, use requiredStatement or metadata. Resources may include all three properties.

Implementation notes

Because the rights property may not necessarily be visible to the user, it should be considered primarily machine-oriented. Therefore, URIs in this property should use target entities’ machine-actionable URIs and their appropriate protocols. In the cases of Creative Commons licenses or RightsStatements.org statements, those protocols are HTTP, not HTTPS. Note, though, that clients may rewrite the content to use HTTPS if and as the URIs are made visible to users.

Conversely, since requiredStatement values must be displayed or easily displayable to the user, URIs in this property should use target entities’ human-readable URIs. For Creative Commons licenses or RightsStatements.org statements, URIs for human-readable content use HTTPS.


None known.


JSON-LD | View in Universal Viewer | View in Mirador | View in Annona | View in Clover

Code samples: Python: iiif-prezi3

Related recipes