XSLT- and Java-based METS Item Search and Display from Multiple Collections

This group of tools makes use of XSLT and Java for working with diverse items in multiple archival collections: to create the METS documents for the items, to search for the items, and to transform the METS files for presentation and selection. A database on the backend is used for storing the collection metadata, searching for items of interest, and providing the raw data for creating the METS files. Once a user finds potential items of interest from across the collections, data is culled out of the selected METS files and presented to the user, along with thumbnail images, for further resolution to the final desired items. The METS file is finally transformed into a complex digital object for display.

To demonstrate the functionality of this application, source documents from two collections of Early American materials have been digitized, the Maass Collection at New York University and the holdings of the New-York Historical Society. The diverse items selected for this application include letters and personal manuscripts, newspapers, maps, broadsides and bound items of materials. A wide variety of formats and sizes are represented. Descriptive metadata is culled from EAD finding aids for the Maass Collection, and from MARC catalogue records for the New-York Historical Society. It is intended that these materials not only be made available for study by scholars and students of higher education, but also be made accessible to students of the K-12 school range. To this end the goal is that curriculum materials be created that draw upon and integrate the use of these digitized source materials.

To review the initial functionality of this application, you may connect to Witness to the Early American Experience.

Gathering the Collection Item Data

Two separate databases were created in MySQL, one for the Maass Collection and one for the N-YHS holdings, both utilizing the same database schema. For the Maass Collection an EAD XML finding aid was processed using Java to output files of SQL commands for entering data into the collection databases. For the N-YHS holdings MARCXML files from the catalogue records were similarly processed. Additional data created during the digitization process was stored by the imagers into a utility database, and later output in generic XML format. These XML files were also similarly processed using Java, to output SQL files that were used to enter data into the collection databases. Therefore, XML data was able to be brought into the database from three different collection and imaging sources.

Generating the METS Files

METS files represent digital "surrogates" for the original archival items. These complex objects were produced from the collection databases off-line at the command line, utilizing the METS Java Toolkit from Harvard University. This is a JAXB-like set of classes that represent METS elements and attributes, with associated methods for outputting METS files. Additional Java classes appropriated the structure and metadata information from the collection databases, created and populated the METS Java objects, and named and placed the output files.

Running the Application

A small group of HTML files comprise the home page and several subsections. Search is handled by Java servlets, with returned results forwarded to Java Server Pages (JSP) for display back to the user. When a user selects an item the METS file is called and transformed to HTML using XSLT, for final display of the item as a complex digital object. Asynchronous JavaScript for XML (AJAX) methods are used to improve functionality within the Web display.

The Files

This is an evolving collection of tools, and it is anticipated that more tools will be added and the tools refined over time. Current tools available include:

Page-turning stylesheet: multiCollMETS.xsl

Sample METS file from the Maass Collection: multiCollMETS_f.xml
Display of METS file: Letter from George Washington

Sample METS file from the New-York Historical Society: multiCollMETS_n.xml
Display of METS file: Declaration of Independence

These files are distributed "as is" and without promise of support. Questions/suggestions may however be directed to Eric Stedfeld, NYU Digital Library Team.

Official METS page | NYU Digital Library Home | METS Tools Home