IUG 2009 – Millennium and XML – Repurposing and Customizing Catalog Metadata

Dao Rong Gong

Lucas Mak

Michigan State University


As a quick note to self, this looks like it could be very useful for a pending project I have in mind. Can’t wait to get my hands on the conference presentation handout.


Innovative uses its own type of XML data. This can be retrieved through HTTP queries.


The data arrangement is based on MARC fields, but MARC fields and their subfield are siblings.

Two types of XML records that can be retrieved from Millennium: Brief records and full records


The Millennium System and XML

Encore has built-in functionality that allows it to harvest OAI-compliant services.



Manipulation of XML documents by creating a new document based on


XSLT uses Xpath expressions to select/filter the data node


Sunday School books collection

Needed to batch load records into Content Pro. Original data source is based on MARC.


One option is to create a list of records as a review file. Records could then be converted to Qualified Dublin Core using MarcEdit.


Used an HTTP query to request the Innovative XML. Then turned that into Qualified Dublin Core with XSLT.


Issued with Converting Innovative XML Data


Data is structured differently from MARC21 XML

Availability of existing "Innovative XML to DC/QDC" XSLT?


Not optimized for data manipulation

Complications in data selection

Selection of data node by matching criteria against values in individual elements

A series of matching may be needed just to be able to select one node

IUG 2009 – Encore Implementation – One Academic Library’s Experience

Christopher Brown, Elizabeth Meagher, Sandra Macke

Penrose Library, University of Denver


This library didn’t do any advance publicity in advance of their Encore deployment. They just turned it on and let it run. There was only one complaint from a single faculty member.


With this approach they felt that the system was intuitive enough that patrons would just "get it," and that has proven to be the case.


Professors can use community tagging as a way to create virtual reserves.


The library selected keyword searching as the starting point for several reasons.

More Google-like

Works quite well for known-item searching

Is much faster than regular catalog

Has no limits to result set (traditional opac maxes out at 32,000 results)


During the implementation, they found that serials appear at the top of the results sets. This library considers this an added bonus to Encore.


The library hope to make their catalog become the ultimate reference tool for their institution. Along with this, they have a goal to make the searching the OPAC at least as easy as browsing the reference shelves.


The library currently has about 250 tags created through the community tagging system.


The library rolled out what was a fairly canned implementation of Encore. After rolling out, they began revising the catalog based on input rolling in from students and reference librarians.


Encore also helped reveal things relevant to database maintenance. For example, when a feature film showed up with a 3-D object facet, this threw up a red flag that something was wrong. When you’re skimming through records and facets, you can look for the things where only one item appears. Surprisingly, this helps problems bubble to the surface so that they can be found and corrected.


An audience question led to a reiteration of the point that the Penrose Library just put this out there. They bought it, turned it on, and let the public have at it. From Christopher: "Customers today understand that. Google does this all the time. They put something out there, and if it breaks, it breaks. We did it that way, and I would do it again."


"The first day out of the box it’s pretty good. Then you just tweak it."


Encore cannot handle all of the JavaScript enhancements that are possible in the traditional catalog.

IUG 2009 – Finding Your InnerHTML – Using Dynamic HTML to Change the Unchangeable

David Kuhn

Monterey Public Library


Several random notes from the presentation. Track down David for his presentation materials. Lots of detailed examples.



Things to remember

JavaScript operates asynchronously – it doesn’t wait for something else to finish before going on to the next command.

You can’t change code until it’s rendered.

The code you see isn’t always what your browser sees.

And of course – Firefox and IE render differently.


Seeing what your browser sees:

Surround the section with <div> tags

Give it a unique ID.

Add script: <script>alert(document.getElementByID(assigned id).innerHTML);</script>


Add new content

Add <div id=“someid1”></div> to your code where the new content is to appear


End your javascript code with:

document.getElementbyID(‘someid1’).innerHTML=your new content


Modify existing content

The smaller the section you modify, the better.


Making changes to Content

Identify a unique marker in the text

Use search and replace to change the text

Regular Expressions highly recommended


What about System Generated pages?

Add <div id="someid"> to toplogo

Add </div> to botlogo

Put your script in botlogo

Identify unique markers on the page so your script can identify it.

This script will appear on every page of the catalog. You need to find a way to trigger or not trigger the script according to what you want to do.



Add new content – Dynamic RSS feed page, Printer friendly export book page

Modify existing content – View patron record, preferred searches


Final considerations

Do not hang too many lights on the tree!

Software upgrades:

May break your modifications

Your modifications may break the page