Skip to content

1.2 How Plum builds ranges in the manifest

Adam Ploshay edited this page Dec 6, 2018 · 2 revisions

This describes how ranges are derived from logical order data and placed into a resource's manifest. See ideas for refactoring to Hyrax using the community supported iiif_manifest gem.

Generation of structure (ranges) in manifest begins with:

  • GET /concern/scanned_resources/:id/manifest => curation_concerns/scanned_resources#manifest

The #manifest method in a registered curation concern (i.e. a ScannedResource) comes from:

#manifest calls PolymorphicManifestBuilder

PolymorphicManifestBuilder invokes ManifestBuilder

ManifestBuilder is a service that assembles manifest pieces

ManifestBuilder calls RangeBuilder using the resource's logical_order

RangeBuilder

RangeBuilder uses the iiif-presentation gem (aka osullivan) to build out ranges on the manifest