Page tree

What is a derivative?

A derivative is a special type of file that derives its data and metadata from another file. It looks like a copy however it isn't a copy as it shares the file data with its master file.

A derivative allows you reuse the same file in multiple places in your site. While a share lets a folder be in two places at once, a derivative lets a file exist in two different _formats_ at once. A derivative can be shared too.

Derivatives are really useful for cropping a file or converting a file to another format before sharing it. For instance, large files could be cropped and saved as jpegs before sharing on social media.

Derivatives look and behave just like normal files in most respects. However they share some metadata with the original 'master' file. The owner of the master file also maintains a right to revoke a derivative should they need to.

Is a derivative a copy?

Yes and no.

A derivative is a dynamic copy of a file. They share the data with their master file and the downloadable data is made on demand (and cleaned up at some point afterwards). A derivative doesn't use any of your storage quota. It acts like a modified file that has been saved back to Chorus but, behind the scenes, it works much more like saving some cropper settings. Thumbnails and previews are created in the UI but the actual derivative file data is only created when needed for a download or a directURL.

What should you use a derivative for?

A derivative not only allows a file to be in more than one place it also allows a file to be in more than one format: filetype, style, size, crop.

Derivates have three main uses:

  1. Protecting a master file and its metadata
  2. Saving to a different format or a lower resolution
  3. Creating crops to share with other people

Protecting a master file and its metadata

If you share your master files you give away control of them. Other people may be able to change the metadata or even the file data itself by uploading a revision. If you create a published link or a DirectURL you will be giving access to the master file.

Creating a derivative and sharing it allows you to keep control of the file's data and metadata while sharing it under your own terms.

Saving to a different format or a lower resolution

Derivatives make it easier to safely store the original application files, raw image files and non-internet-friendly file formats while sharing derivatives in more accessible file formats like jpegs and pngs.

Often you need to control who has access to the high resolution version of a file. Creating a lower resolution derivative and sharing that instead allows a file to be widely used without the high resolution version being distributed.

Creating crops to share with other people

Creating often needed crops in common sizes is a great time-saver. It also allows the person who makes the crops to be different to the person who uses the crops. For instance, a designer could create good looking crops to share with web and social media teams.

Who can make a derivative?

Anyone who has the 'Create Derivative' permission can make a derivative. To be able to save a derivative to a folder you will need the 'Add/Upload' permission on that folder.

How do you manage derivates?

Derivatives behave in most respects just like normal files so they are easy to manage in folders. They can be moved around a site and placed in collections. The owner of the master file has access to a special collection of all the derivatives of a file should they need to edit their metadata or delete them.

How do you access the special collection?

Click on an original to access the file's preview page and look for the 'Derivatives' section on the 'Info' tab. The 'View' button will then take you to it.

How can you see all the derivatives of a file?

Each master file has a special collection that shows all the derivatives made from it. You can manage all of a file's derivatives from here and, should you need to, delete any derivative. Deleting a derivative is similar to deleting a file. It will remove it from anywhere it is being used: shares, collections, published links, directURLs etc.

Can derivatives have different metadata to the master file?

Yes. A derivative inherits metadata from its master file in a manner very similar to cascading folder metadata. It also inherits metadata from the folder cascade in which it is placed. Any inherited metadata that isn't wanted can be overridden and removed. Metadata is updated dynamically so if you change it on the master it will also change on the derivative unless it is removed or overridden on the derivative.

What happens if I edit the original file?

If you edit the master file the derivative will also change as they share data. Sometimes this will be what you want—for instance when your derivative is simply a different file type or it is a resized version of the master file. However if you crop the data of the master file any cropped derivatives will now be trying to re-crop cropped data and you could end up with strange-looking or broken derivatives.

Can you share a derivative?

Yes. Derivatives have been created with sharing in mind. Normal file permissions and sharing rules apply to derivatives. With a derivative you no longer have to share the master file. Instead you can crop or shrink the file, save it as a derivative and share that instead. They work really well with published links and directURLs.


  • No labels