Tuesday, October 31, 2017

EADitor now supports EAD and MODS to IIIF manifest generation

After migrating the Newell TEI notebooks to support serialization of facsimiles into IIIF manifests and the render of these manifests in an embedded Mirador viewer, I implemented a transformation of EAD finding aid image collections and MODS records for photographs into manifests.

EAD updates

The EAD finding aids were updated to replace the daogrp's linking to flickr images to link to thumbnail, reference, and IIIF service URLs (dao[@xlink:role='IIIFService']). An XSLT transformation of the EAD into manifest JSON occurs, with an intermediate process of iterating through the IIIFService info.json files with the Orbeon XForms processor in XPL to extract the height and width to generate canvases for each image.

The Brett finding aid now includes clickable thumbnails that will launch the zoomable Leaflet viewer in a fancybox popup window. At the top of the page, the user can download the manifest, and there's also a link to view the manifest in our internal Mirador viewer. You can view the EAD XML (link at top) for more details.

MODS updates

The updates to the MODS were twofold. First, in the previous version of Archer, all photographs were suppressed from the public regardless of copyright concerns. We have re-evaluated these concerns by applying one of several Rights Statements. Two of these rights statements are most permissible, and therefore, we will display the high resolution image when we have every right to do so. In any case, thumbnails are Fair Use, and therefore, they are always visible in the record page and the search results pages.

Where copyright allows us to do so, the MODS file includes a URL for the reference image and a URL[@access='raw object' and @note='IIIFService']. When a IIIFService URL is present in the MODS record, the XSLT transformation will include a Leaflet div and initiate the display of the image. See A Portrait Photograph of Margaret Thompson, for example. Like the finding aid, a manifest is dynamically generated from MODS, but only one XForms processor is called to extract the height and width from the info.json for the single image linked in the MODS file.

Pelagios Updates

Since the Brett collection links many photographs to ancient places defined in the Pleiades Gazetteer of Ancient Places, I have updated the EADitor RDF output for Pelagios. The output now includes IIIF service metadata conforming to the Europeana Data Model specification. Rainer Simon has imported these photographs into Peripleo.

Friday, October 6, 2017

Newell notebooks migrated to IIIF

As part of our transition to IIIF for high resolution photographs for the numismatic collection in MANTIS (see http://numismatics.org/collection/1944.100.45250 for example), I have begun to migrate our archival images into IIIF as well. These new features will be available in our new dedicated server as soon as the migration of Wordpress from one server to another is complete, which I expect in the next few weeks. The implementation of IIIF for our archival resources entails three overhauls of the current metadata model and HTML/IIIF Manifest serialization: TEI (for Newell notebooks of facsimile images), Encoded Archival Description (EAD) finding aids, and MODS. The transformation of the TEI notebooks into IIIF compliance is completed, and the functionality for EAD and MODS has been built, but the XML data have not been fully updated to link to IIIF services (mainly because the high resolution images haven't been uploaded to the server yet).

Annotated Newell notebook IIIF manifest displayed in Mirador


TEI to IIIF Manifest

The first Newell notebook was published to Archer (built on EADitor) more than three years ago. There are now about 50 notebooks published, but only a handful have been annotated to link to people, IGCH hoards, and coins in our collection (we will complete the annotation as part of the Hellenistic Royal Coinages project). To summarize the technical underpinnings, each notebook is a TEI file with facsimile elements for each page. The facsimile contains a link to the image and 0-n surface elements representing annotations. These surface elements were created by roundtripping the Annotorious/OpenLayers annotation JSON <-> TEI. The @ulx, @uly, @lrx, and @lry attributes represent the coordinates of the upper left and lower right hand corners of the annotations, and the coordinates were relative ratios based on OpenLayers bounds.

 For IIIF compliance, I ran the TEI through an XSLT 3 transformation to load the info.json metadata from our IIIF image server to extract the height and width of each image, and then recalculate the coordinates to be more in line with Web Annotation segments. The lower right coordinates are still stored in the TEI, but upon generation of annotation lists for the manifest, the left coordinates are subtracted to the right to correctly establish the annotation height and width.

      <surface lrx="1540" lry="155" ulx="1182" uly="54" xml:id="aho40v9vbhq7">
         <desc>
            <ref target="http://coinhoards.org/id/igch1516">IGCH 1516</ref>
         </desc>
     </surface>
      

The tei:facsimile to annotation list transformation outputs:

http://app1.numismatics.org/archives/manifest/nnan187715/canvas/nnan0-187715_X006#xywh=1182,54,358,101


The tei:graphic was replaced with tei:media[@type='IIIFService'], with the @url pointing to the IIIF service URI instead of an image location. XSLT transformations for the manifest, HTML, RDF, and Solr outputs do the rest.

The Javascript has been updated so that clicking on a page under the index of annotations will force Mirador to change the the correct canvas.

You can see an example here: http://app1.numismatics.org/archives/id/nnan187715

I will post another update on EAD and MODS -> IIIF next week.