Print

Print


I echo Joseph's recommendations.  Use of a native XML database, or at least something that can process XQuery (and XUpdate), is helpful, especially if the SMU catalog has the ability to expose authority records as XML.  The Perl recommendation is a good one too, with Tie::File and maybe even MARC::Record to allow you to work with formatting your subject strings to be injected into the EAD.

Say you have a heading of "Botany, Agricultural", which gets updated to "Botany, Economic" within the subject authority.   The subject authority has a hypothetical 001 identifier value in the catalog of '4668731'.  And let's suppose you run an update to check for outdated values for your EADs.

Your initial EAD instance could look like this:

<controlaccess>
            <head>Dynamic subject headings</head>
            <subject encodinganalog="650" source="lcsh">Botany, Agricultural.
                <extptr xlink:href="http://library.smu.edu/authorities/4668731"/>                
            </subject>
</controlaccess> 

The value of the xlink:href attribute in the EAD extptr element could serve as the "hook" for your programs to know which record contains the updated heading.  After running a XQuery that gets the XML serialization of authority record 4668731 (and/or Perl if your records aren't XML capable), you can update the text node of the subject element by grabbing the 150 field's text value, formatting it to your pre-coordination needs (if any), and outputting it into your EAD's existing controlaccess/subject structure.  

The result would look like this:

<controlaccess>
            <head>Dynamic subject headings</head>
            <subject encodinganalog="650" source="lcsh">Botany, Economic.
                <extptr xlink:href="http://library.smu.edu/authorities/4668731"/>                
            </subject>
</controlaccess> 

If your authority records can be serialized as XML, you could alternatively use the "xpointer" attribute on extptr, although few tools properly support XPointer these days.  The same effect can be achieved with XQuery.

Hope this helps,
Clay

~~~~~~~~~~~~~~~~~~
Clay Redding
Digital Project Coordinator
Network Development & MARC Standards Office
Library of Congress
LA308, Mail Stop 4402
101 Independence Ave. SE
Washington, DC 20540
[log in to unmask]
202-707-7196 
~~~~~~~~~~~~~~~~~~
>>> joseph greene <[log in to unmask]> 11/27/07 4:20 AM >>>
If it's a once off, you might try a simple Perl script with regular
expressions; the tie::file module is quite useful there. You might also
try an XML database, such as eXist for a medium-term solution.

Joseph Greene
Irish Virtual Research Library and Archive Project (HII),
James Joyce Library,
UCD,
Belfield,
Dublin 4.

(t) 01 716 7506
(e) [log in to unmask]
(w) www.ucd.ie/ivrla 

----- Original Message -----
From: "Gosnell, Joan" <[log in to unmask]>
Date: Monday, November 26, 2007 10:50 pm
Subject: question about updating access terms
To: [log in to unmask]

> From: Gosnell, Joan 
> Sent: Monday, November 26, 2007 4:25 PM
> To: [log in to unmask]
> Subject: question about updating access terms
> 
> 
> 
> I have a question about updating access terms (i.e. LCSH) in our
> 
> EADs.  We have a service that updates terms in our Library (Voyager)
> catalog, 
> 
> but we will need to do this manually in our online finding aids.
> 
> 
> 
> How do other folks handle this?  
> 
> 
> 
> Joan Gosnell
> University Archivist
> DeGolyer Library
> Southern Methodist University
> P.O. Box 750396
> Dallas, TX  75275-0396
> 214-768-2261 
> http://www.smu.edu/cul/degolyer/archives/index.htm
> 
> 
> 
> 
> 
>