Jan 282013

I want to thank everyone that took the time to attend my Mid-Winter Presentation.  I really appreciated the feedback and the ideas.  It’s the days like today, where I get to share some ideas and get to talk to some interesting people, that makes me glad I work in higher education.

Anyway – my presentation, entitled: Dragging old data forward:  finding yourself an RDA Helper can be found here:



 Posted by at 1:04 am

Dragging old data forward: finding yourself an RDA Helper

 Uncategorized  Comments Off on Dragging old data forward: finding yourself an RDA Helper
Jan 262013

Sunday, I’ll be making an exception to my no ALA rule (well, it’s not a rule, but I’ve yet to find a good reason to get back involved) and will be in Seattle giving a talk as part of the ALCTS CaMMS program.  The focus is around research, and I thought it would give me a chance to talk to folks about the RDA Helper and some of the practical research I’ve been doing with MarcEdit to help librarians support RDA encoding rules in MARC through data mining and automatic data creation.  Not particularly all that sexy when you consider some of the more abstract concepts that others (and myself) have been working on – but with March 2013 approaching, I’m hoping that this practical work with help to make a real difference while we work how to make the more abstract concepts real in our production environments. 

I’ll post the slides tomorrow, but if you are interested in the RDA Helper, you can find out more about it here:


If you are in Seattle and want to say hi, drop me a line or you can find me here: http://connect.ala.org/node/195883


 Posted by at 11:19 am

MarcEdit 5.9 Update

 MarcEdit  Comments Off on MarcEdit 5.9 Update
Jan 262013

I have been working hard over the past week to close a couple of outstanding issues with the application.  The biggest of those issues is related to the Find/Find All function.  While making some changes a few weeks ago, it appears that I introduced a bug.  I’ve been working off-line with a few folks that have been helping me debug the issue and it appears that I’ve been able to isolate and correct the issue.  The following changes have been made:

  1. Bug Fix:  Find/Find All – Regular Expressions were resulting in “Text Not Found” and Boundary errors.  This has been corrected.
  2. Bug Fix:  Find/Find All – The Find process has become incredibly slow due to some of the enhancements made to help the program jump directly to the found text when using Find All.  The culprit was an inefficient loop, which has been corrected.
  3. Bug Fix:  Find/Find All – When searching, and then moving the cursor and searching again, the program wouldn’t reset where the search would begin.  This has been corrected.
  4. Enhancement:  Find/Find All – I’ve added a directional component.  You can now search up and down the record while using Find.
  5. Enhancement:  RDA Helper – I’ve added support for the automatic generation of multiple 380 fields when the data to create those elements is available.
  6. Enhancement:  Console Program – I’ve added an –xml switch to allow for the processing of data from MARCXML to other XML schemas.

You can pick up the new build from:


 Posted by at 1:16 am
Jan 122013

I know that there have been a lot of updates lately.  Hopefully, folks haven’t minded.  These updates have largely been due to folks really working out the RDA Helper, which has been nice.  This update is specific to the RDA Helper.

  • Bug Fix: RDA Helper – When attempting to create the 380/1, the program looks for the presence of a 130.  Under rare conditions, the 130 format can cause parsing problems.  This fixes that issue.
  • Bug Fix:  RDA Helper – Incorrectly processes data when the copyright mark is set as {copy}.  This has been fixed.
  • Bug Fix:  RDA Helper – after the last fix to correct an error message generated when processing records where the largest field is no longer than 300, the line separating records could be dropped.  This has been corrected.

You can pick up the download from:


 Posted by at 1:06 am

MarcEdit 5.9 Update

 MarcEdit  Comments Off on MarcEdit 5.9 Update
Jan 112013

I’ve posted a new update that includes the following changes:

1) Bug Fix:  RDA Helper – Corrects the exception that occurs when trying to insert 33x, 38x fields when the highest field in the record is a lower than 329. 

2) Enhancement:  RDA Helper – I added the ability to embed regular expressions into the Abbreviation expansion, and will include 2 as examples with the next update.  This is necessary to deal with items like “v.”  This could expand to volume or volumes depending on the data that follows.  So, I’ve included a regular expression that will evaluate the data prior to “v.” to try and determine what the expansion should look like.  This should give some added flexibility for anyone wanting to augment the substitution list.

3) Behavior Change: RDA Helper – because I’m modifying the substitutions list due to the item above, I need to provide a mechanism to update the codes.  Essentially, I’ve added a routine that will automatically keep the substitution list synchronized with the master list.  However, if you add your own items to the list – they will get overwritten – so I’ve added a notification and save the previous list as a backup so you can move any custom substitutions to the new list.  I don’t anticipate changing the master list often, so this might be good enough.  But I’ll look at other ways of making this process less intrusive in the future.

4) Enhancement: RDA Helper – when generating the 336, I’ve expanded the data elements consulted to help improve the selection of more granular values in the 336$a – specifically for text items.

5) Enhancement:  RDA Helper – I spent a good deal of time last night optimizing how regular expressions are run in the RDA Helper and have seen a good deal of performance gained.

6) Bug Fix: Delimited Text Translator – When using autogenerate, indicators would occasionally be dropped.  This has been corrected.

7) Enhancement:  RDA Helper – MarcEdit will protect data within quotes from substitution.  This makes the assumption that quoted data should be data that has been transcribed from the object.

8) Bug Fix:  RDA Helper – When generating 264s from 260s, the first indicator wasn’t be retained correctly.  This has been corrected. 

9) Bug Fix: RDA Helper – When generating a 264, fields that ended with a hyphen were occasionally having periods added to the end.  This has been corrected.

10) Bug Fix: Find/Find All – I made a change to the jump list that allowed the program to select the text searched for.  Unfortunately, if you are looking for a regular expression, it can expand beyond the select.  This has been corrected.

You can download the program from:


 Posted by at 4:06 am

MarcEdit 5.9 Update

 MarcEdit  Comments Off on MarcEdit 5.9 Update
Jan 092013

Lite-update – really just to correct a couple data problems.  One note, to enhance the Abbreviation substitution, I had to make the regular expressions a bit more complex. I’ll be keeping an eye on this part of the function to ensure that this doesn’t cause a performance bottleneck.

  • Bug Fix:  RDA Helper – When doing substitution, sometimes it would match greedily.  This has been corrected.
  • Bug Fix:  RDA Helper – 338 – under some circumstances, the $a was generated as a $u.  This has been corrected.
  • Bug Fix: Delimited Text Translator – When auto generating, defined control data (like the 006, 007) cause a validation issue.  This has been corrected.
  • Enhancement:  Merge Records – Enhanced the function so that it can now handle records with multiple control numbers in a record, and will match those correctly.
  • Enhancement:  MARCEngine COM – new function – MarcEngine_Version to return the assembly build number.

Here’s an example of the Assembly number function

Dim obj_MB

Set obj_MB=CreateObject("MARCEngine5.MARC21")
msgbox obj_MB.MarcEngine_Version

Download from:


 Posted by at 2:15 am

C# Koha API Updates

 Koha  Comments Off on C# Koha API Updates
Jan 082013

I’ve updated the C# Koha API library that MarcEdit utilizes to include support for the item update when working with Koha version 3.8+.  Additionally, I added to the git repository a reference application that demonstrates how to use the library.  You’ll need to provide your own system and credentials to try it, but it should demonstrate how to make it all work together.

Git Hub Repository: https://github.com/reeset/koha_api


 Posted by at 11:27 am
Jan 072013

This is a light update that includes three enhancements and a couple of bug fixes:

  • Enhancement:  Task Manager – I’ve included the ability to add a task to a task.  This allows you to chain tasks together, essentially allowing for the creation of a library of tasks.  You can read more information about this function here: http://blog.reeset.net/archives/1144
  • Enhancement:  Task Manager – Import/Export Tasks.  While MarcEdit has a section specifically for sharing your configuration information in mass, I added this enhancement to make it easier to share specific tasks (since I think that this is likely the kind of data that would be shared most often).  Hopefully, this makes it easier for folks within their institutions and on the MarcEdit Listserv to share tasks.  Note, imported tasks that reference other task lists will break.  The file names change on import to prevent overwriting existing tasks on the system.
  • Enhancement: Merge Records tool: You can use the Merge records tool to merge duplicate data into a single record, but only using a control number.  I haven’t implemented this option when using the MARC21 matching option.  That is a much more complicated process.
  • Bug Fix:  RDA Helper – the 336 was creating a $c instead of $2 when it fell through to the default output when specific data was missing.
  • Bug Fix:  Delimited Text Translator – when Joining an item, if the last column joined is blank, it can incorrectly join the adjacent field data.  This has been corrected.
  • Behavior Change:  When you add the copy field to a task – there was a message box generated showing completion.  This would stop the task process till addressed.  I’ve changed the behavior so that when run as a task, the message boxes are suppressed.

Download the new update from:


 Posted by at 10:38 pm
Jan 072013

One of the new enhancements to make it into MarcEdit 5.9 is the ability to link task lists.  Task lists are essentially “recorded” macros that link together a set of global actions to be performed on a file.  You can learn more about MarcEdit’s Task Automation tool here:


One of the most recent requests has been the ability to chain task list together.  This would allow users to create libraries of tasks and then link them together.  Seemed like a great idea, so I created the following: 


In addition to this enhancement, I added two new options to the Task Manager which allows users to export and import selected tasks to make it easier to share them with other MarcEdit users.


 Posted by at 8:54 pm