On Feb 3, 2006, at 5:01 PM, Alexander Johannesen wrote:

>> What you are see at the URL above is an amalgamation of three digital
>> repositories in the form of a browsable/searchable list. The
>> implementation is a demonstration of harvesting OAI-accessible
>> content and providing services against the cache. It is the
>> beginnings of a digital library.
> So, let's see if I get it; levels 1 and 2 is your new application (the
> amalgation level), while level 3 is the actual repository? So that you
> have one unified level with searching, and a third level which links
> into the actual repositories records. And if so, do you have plans to
> unify even this level?
> What is this new system built on? Does it scale? Geek friendly?
> Open-source? Is it fast? Will it solve all our problems? Etc. :)

Yes, by amalgamating the content we have essencially added an
additional interface layer over the underlying repositories (DSpace,
DigiToo, and ETD-db). If the repositories were to implement OAI to
the fullest extent, then it would not be necessary to access the
bottom-most layer. Unfortunately, each of the repositories do not
send out in their OAI data streams the URL (identifier) pointing
directly to their objects. Instead, each of the systems points to a
splash screen.

We are using an open source software thing called MyLibrary (version
3.0). This is a set of object-oriented Perl modules that do I/O
against a relational database with a specific structure. The
structure is based on Dublin Core and supplemented with a faceted
classification system. We use it to drive the vast majority of our
website. Since it is Dublin Core-based it was easy to use something
like Net::OAI::Harvester to gather OAI data and cache it to
MyLibrary. Once in MyLibrary we write reports against the database --
interfaces. I am currently writing Perl scripts that output
Javascript document.write statements. Using this technique I will be
able to create mini-reports and syndicate our content to University
department pages and/or the pages of individual faculty. You can get
a sense of what I mean from the examples here:

The technique is as fast as Perl. You decide. We have also taken to
indexing the content of our underlying database(s) with swish-e and
Plucene. Sometimes we query these indexes instead of the database
directly for speed improvements.

Next week we plan to distribute close to 200 pages of documentation
on how to use MyLibrary to create digital library collections and
services. A lot of that documentation is here:

Eric Lease Morgan
University Libraries of Notre Dame