MarcEdit 5.0 update

I made the following changes:

  1. Added a status window and ability to cancel processing of the Batch Processing utility. This allows you to see how many files are being processed as well as canceling the processing if you get tired of waiting (it will cancel after the in-process file has completed).
  2. In adding the status windows — I had to expose some new events in the MarcEngine. I’ll rebuild the docs shortly to include those.
  3. MARC21XML=>MADs stylesheet changes. I’ve included the MADS stylesheet from LC for folks wanting to use it — however, there are some problems that I’ve noted and sent in to Jackie R. at LC. The problems that I’ve found:
    • Slow — this stylesheet is just slow. Lets look at some benchmarking. Working with 8000 records: MARC=>MARCXML (4 seconds), MARC=>MODS (50 seconds), MARC=>DC (34 seconds) and finally, MARC=>MADS (520 seconds). I have no idea why this stylesheet is so slow — but it runs like is stuck in mud.
    • Repeating elements. For example, the topic in the related element actually repeats itself. Here’s the original code:

xsl:template name=”topic”
topic
xsl:if test=”@tag=550 or @tag=750″
xsl:call-template name=”subfieldSelect”
xsl:with-param name=”codes”ab/xsl:with-param
/xsl:call-template
/xsl:if
xsl:call-template name=”setAuthority”/
xsl:call-template name=”chopPunctuation”
xsl:with-param name=”chopString”
xsl:choose
xsl:when test=”@tag=180 or @tag=480 or @tag=580 or @tag=780″
xsl:apply-templates select=”marc:subfield[@code=’x’]”/
/xsl:when
xsl:otherwise
xsl:call-template name=”subfieldSelect”
xsl:with-param name=”codes”ab/xsl:with-param
/xsl:call-template
/xsl:otherwise
/xsl:choose
/xsl:with-param
/xsl:call-template
/topic
xsl:apply-templates/
/xsl:template
The first part of this template is called if a marc field 550 or 750 is encountered — however, rather than breaking out of the template, it allows the data to be extracted again later in the template. I’ve found that you can just remove the first section so that it looks like:

xsl:template name=”topic”
topic
xsl:call-template name=”setAuthority”/
xsl:call-template name=”chopPunctuation”
xsl:with-param name=”chopString”
xsl:choose
xsl:when test=”@tag=180 or @tag=480 or @tag=580 or @tag=780″
xsl:apply-templates select=”marc:subfield[@code=’x’]”/
/xsl:when
xsl:otherwise
xsl:call-template name=”subfieldSelect”
xsl:with-param name=”codes”ab/xsl:with-param
/xsl:call-template
/xsl:otherwise
/xsl:choose
/xsl:with-param
/xsl:call-template
/topic
xsl:apply-templates/
/xsl:template
But this is just one of what looks like many problems with this stylesheet. Anyway, as always, the update can be downloaded from: MarcEdit50_Setup.exe

–Terry


Posted

in

by

Tags: