Nov 022013

I’ve posted a new MarcEdit update.  It corrects the following:

* 5.9.58
** Bug Fix: OCLC Library: In some cases, the library didn’t get updated.  I’ve hard reset the version number to ensure this doesn’t occur.
** Enhancement: OCLC Metadata API — Interface has been made more responsive when searching/downloading/updating records.
** Enhancement: OCLC Metadata API — Response data is being parsed and made available via lists; in future updates, this list will become actionable.
** Enhancement: OCLC Metadata API — Error codes are parsed now and message data from the OCLC service isn’t provided in XML.
** Enhancement: Main Page UI — The 3 column list has been changed to 2.
** Enhancement: Options page UI — Tabs have been moved from top to left.
** Feature Change: Macros have been hidden.  Code will eventually be dropped. 
** Enhancement: New Style sheet included on install — EAD Schema style sheet.  This is work in progress.
** Bug Fix: OCLC Metadata API — Validate routine improved.
** Update: If you run a MarcEdit Plugin – the next time you try to run it, you will be prompted to update.

The update can be found at:



 Posted by at 9:51 pm
Oct 312013

Ever since having kids, one of my favorite parts of Halloween has been the carving of the Jack-o-lanterns.  Each year, the family picks out different characters, and I try to see what I can do with each. This is our 2014 crop of jack-o-lanterns.

calvin and hobbes
Calvin and Hobbes


Snow Leopard (created from a picture)


 Posted by at 3:32 pm
Oct 272013

The new MarcEdit update is out.  This version includes a number of enhancements, mostly around OCLC’s Metadata API.  A word of note, these functions are early days – in that they have been tested under very controlled conditions.  Likewise, the status messages returned by the API are displayed in their raw xml form (I’ll be updating that next) – but I wanted to start making these functions available to users.  So what’s changed:

** Enhancement: MarcEdit integration with OCLC Metadata API – Set Batch Holdings in OCLC. 
** Enhancement: MarcEdit integration with OCLC Metadata API – Batch upload/edit records into WorldCat.
** Enhancement: MarcEdit integration with OCLC Metadata API – Ability to search directly into WorldCat
** Bug Fix: Call number/FAST generation – update corrects an error introduced in the last update
** Bug Fix: UTF8-MARC8 conversion – with very specific Arabic characters, the letters would be translated incorrectly.  This should be corrected.
** Update:  MARCValidator rules file has been updated
** Bug Fix: When click on the jump list, in certain conditions you could get a text not found error.  This has been corrected or suppressed when necessary.
** Enhancement: MarcEdit Integration with OCLC API – New options have been added to the preferences to save user data.

Resources can be downloaded from:

I’ll be writing some notes regarding the OCLC integration components specifically over the next could of days.


 Posted by at 9:47 pm
Oct 102013

I thought I’d take a quick moment to highlight some work that was done by one of the programmers here at The OSU, Peter Dietz.  Peter is a bit of a DSpace wiz and a contributor to the project, and one of the things that he’s been interested in working on has been the development of a REST API for DSpace.  You can see the notes on his work on this GitHub pull request:


Thankfully, I’m at a point in my career where I no longer have to be the individual that has to wrestle with DSpace’s UI development, but I’ve never been a big fan of it.  From the days when the interface was primarily JSP to the, it sounded like a good idea at the time, XSLT interfaces that most people use today, I’ve long pined for the ability to separate the DSpace interface development from the actual application, and move that development into a framework environment (any framework environment).  However, the lack of a mature REST API has made this type of separation very difficult. 


The work that Peter has done introduces a simple READ API into the DSpace environment.  A good deal more work would need to be done around authentication to manage access to non-public materials as well as expansions to the API around search, etc., but I think that this work represents a good first step. 

However, what’s even more exciting is the demonstration applications that Peter has written to test the API.  The primary client that he’s used to test his implementation is a Google Play application, which was developed utilizing a MVC framework.  While a very, very simple client, it’s a great first step I think that shows some of the benefits of separating the interface development away from the core repository functionality, as changes related to the API or development around the API no longer require recompiling the entire repository stack. 

Anyway – Peter’s work and his notes can be found as part of this GitHub pull request.  Here’s hoping that either through Peter’s work, or new development, or a combination of the two; we will see the inclusion of a REST API in the next release of the DSpace application.


 Posted by at 9:53 pm
Oct 102013

I’ve posted the latest MarcEdit update.  This update includes the following:

  • Bug Fix: UTF-8 to MARC-8 Conversion: When converting specific characters from the Extended Arabic set from UTF-8 to MARC-8, some data translations were embedding null characters between translated data characters.  This has been corrected.
  • Enhancement: Generate Call Numbers Tool:  Generate FAST Headings has been added to this tool.
  • New Feature: Generate FAST Headings: A stand alone tool for Generating FAST Headings.
  • Enhancement: Generate Call Numbers Tool: Made some enhancements to improve very specific call number selections.
  • Enhancement: New Preference Tab: OCLC API Settings — MarcEdit’s direct integration components will require users to obtain a developer’s key from OCLC.  To facilitate this process, I’m rolling this out in two phases.  Phase 1 is the integration with FAST and the preference addition (with links to how to obtain a key).  Phase 2 will be the inclusion of a batch holdings tool, as well as the ability to interact directly with OCLC’s WorldCat.

Couple of notes:

  1. FAST Generation utilizes a handful of web services to allow MarcEdit to automatically poll OCLC about specific records and return suggested headings.  Not all records will have headings suggested to it, but you should find that the same level of coverage for data found in the Call Number Tool will be found with the FAST Tool. 
  2. Secondly, with the FAST Generation, this process does come with a cost.  Using the FAST Services requires much more data to be sent from OCLC, and from what I can tell, it appears that generating the FAST headings as part of say, the Call Number service, increases execution time on OCLC’s side.  So be aware that this process does include a built-in time cost.
  3. I’ve been spending the past few weeks working with folks from OCLC on integrating MarcEdit with the OCLC Metadata API.  I have created a C# library and will be writing up some notes on that shortly as I finish getting things checked into GitHub.  This API wrapper will be the bridge that enables MarcEdit to interact with the API.  My intention is to provide both MarcEdit application facing integration, as well as provide access to this API wrapper through MarcEdit’s COM API for users interested in utilizing the wrapper within their own applications or as part of a scripting language.
  4. As noted in the Enhancement note, I”m rolling out integration in two phases.  One of the things that I don’t think many catalogers will realize is that to utilize OCLC’s web services, you need to get a special key from the developer’s network.  This is different than the username/password that one uses to access any of OCLC’s other cataloging services.  Because I doubt many people will have these keys up front, I’ve included a new preferences section in this release that includes information on how you obtain a key from the OCLC’s Developer Network, as well as a place to store the information.  In the next update, I will complete the integration, and activate the Key Validation, which will activate the new tools dedicated around interaction with the WorldCat Database.  The ETA to complete this work is likely 7 days as I’ve done the work, but have not finished writing all the unit tests.

For the new update, you can pick it up through MarcEdit’s automatic updater, or by downloading the version directly at:


 Posted by at 9:31 pm
Oct 102013

I got a reminder from Oregon State University that my old web space will be disabled this weekend.  I’ve since moved all the content to a new location, but be aware that it will likely take the search engines some time to update these redirects since so many people linked to the older URLs. 

I’ve also nearly migrated most of the other content simply to:


 Posted by at 1:33 pm

MarcEdit 5.9 Update

 MarcEdit  Comments Off
Sep 122013

I’ve been trying to remember how this started, but for a number of years now, it always seems like I am posting MarcEdit updates around important days and events, and today is no exception.  I have for the community’s consideration a new MarcEdit update.  It corrects a handful of bugs and includes most of the scaffolding code that I need to implement the OCLC integration.  I’d liked to have finished that work, but one of the bugs is a stopper for some community members using the merge tool, so I wanted to get it out sooner rather than later.  So, to that end, I’ve split my planned update into two parts.  Part 1, which is what you can pick up today, includes the following changes:

  1. Bug Fix: New Main window — default settings, the delimited text translator would sometimes mark as disabled.  Corrected
  2. Bug Fix: Merge Tool — when a record has a 776 but no subfield w, a null exception would be thrown
  3. Bug Fix: Add/Delete Function — when on high resolution monitors, the add when field present wouldn’t be drawn correctly.
  4. Enhancements: Add/Delete Function — New function added to provide the ability to do batch searching when doing deletions.
  5. Bug Fix: MARC-8 conversion — when working with a file of mixed case, in the MarcEditor, when a field has multiple, like diacritics in the line, the conversion may fail.  This has been corrected.
  6. Enhancement: Added {euro} as a recognized mnemonic.
  7. Enhancements: Internal scaffolding around the OCLC API

Now a word about the OCLC API scaffolding.  One of the things that had to be added with this is the ability to process JSON data – which means that one of the updates to the MARCEngine is the ability to process MARC data as JSON and JSON (a couple different flavors) back into MARC.  At some point I might be interested in talking to the folks that primarily utilize the MarcEdit API, because I’ll likely expose this functional as a new streaming object that could be utilized for other development purposes.  In fact, if I can find the development space, I may setup a proof of concept ASPX.NET program that essentially is a set of web services that can take MARC, MARCXML, JSON and provide outputs just to provide some information about how this might be able to be used.  But that’s someone down the road (because I have to find a place to host the project).

Part 2 of the update is tentatively being planned for next weekend.  This will include the interaction with the OCLC WorldCat API, specifically providing the ability to do batch holdings updates and interact directly with WorldCat.  Additionally, I’m taking a look at the Call Number tool and adding the ability to generate FAST headings into records when the Call Number tool is utilized.  And finally, I’m going through the validator and updating the rules file.  A number of changes have happened since I last updated the data, so I’ll be working through that.  Those are the primary changes scheduled for the next update, so if I’m missing something (or missed something), let me know.

In this current update, the biggest noticeable enhancement is the inclusion of the ability to do field deletions using a file containing multiple criteria.  This essentially could allow you to have a file of specific data to be removed, and process all the changes at once through the batch removal tool.  I’ll be looking for feedback as people start using it so I can see if I need to refine and update the interface.  But I think it will work out well for now.

Finally, I’d mentioned that updates somehow seem to fall on important events…well, today is one of the most important to me.  Sixteen years ago, I somehow convinced my best friend to also be my wife.  We have two great kids together, lots of great memories, and like so many years ago, I can still honestly say that she is my best friend.  I’m certain I wouldn’t be half as successful professionally or in life without her love and support.  So, while I hope folks enjoy the update and find something useful in it, be aware that if you have a question, you’ll need to forgive me if I let it pass today.

The update…you can get it like usual using MarcEdit’s automated update function, or downloading it directly from:


Aug 162013

**A number of members of the MarcEdit community provided feedback while working on these changes.  Specifically, Heidi Frank (NYU) and Jim Taylor (of for contributing their time and some artistic skill in creating some of the new functional icons.

In addition to a handful of bug fixes and enhancements, one of the big changes coming to the next MarcEdit update will be around UI changes.  I’ve been taking some time and collapsing menus to try and shorten them a bit (they are getting long) and refreshing a few of the screens and tools.  The first screen to be refreshed and includes some significant enhancements is the start screen.

Current Start Screen

The MarcEdit start screen has been largely unchanged for close to 5 years.  The start screen has included a start screen that includes access to a handful of tools and utilities that I have heard are fairly commonly used. 

Current MarcEdit Start Screen

Over the years, I periodically change the tools and utilities available on the start page, but by and large, it has stayed largely static. 

Updated Start Screen

The next update will reflect a shift in the start screen design.  First, the page will move from a more textual/information screen, to one that is more reliant on both graphics and text to help users find the right tool.  Secondly, the start screen will be customizable.  The screen will provide the ability for users to define what tools that they want to have quick access too. 

Updated Default Screen

The Updated Start Screen will include larger images, with text – to help users quickly locate the tool that they are looking for on the start screen.  However, unlink past versions, users can change the tools available from this screen.  By clicking on the lower right hand configurations icon, or selecting Preferences from the Tools menu, users will be presented with the following new configuration option:

New Configuration Options

The next configuration options pull out the 12 most commonly used tools/add-ins.  Users can select up to 4 of these items and place them on their start screen.  By selecting new items, and clicking OK, the user will find that their application lay out changes:

User Configured Interface

Here, I changed the default options to selected the Delimited Text Translator, the Merge Records Tool, the RDA Helper, and the Call Number Generator.  These will now be available to me on the front screen whenever I open MarcEdit.  And since these configuration changes are linked to a user’s profile, multiple users, on the same computer, could have different Start Screens depending on how the utilize the program.

Selecting 3 items

As noted above, you can select up to 4 user tools to display on the front page.  But users have the option to select as few options as they want as well.  In this example, I removed an option and only selected the most common 3 tools for the Start Screen.



These UI changes are the first of what will be a handful of changes that I’ll be making to the tool over the next couple of months as I refresh the interface, clean up some old code and look to improve some of the workflows in the application.  I’ll be posting wireframes through the MarcEdit listserv when I’m planning major changes, so if you are interested in having a voice on upcoming changes, keep and eye open on the MarcEdit list.


MarcEdit Wireframes

 MarcEdit  Comments Off
Aug 152013

I’ve been spending some time over the past week drawing up a few new wireframes for MarcEdit.  Part of this is because I’d like to update the program’s look and feel, part of it is that I’m moving some code around so if I ever get a Mac mini for testing, I can start working on a native build for OSX (still .NET, but using a .NET UI layer specifically written to interact with OSX.)  These UI refreshments will slowly be rolled out over the next few builds as I work through them, and I’m starting with the MarcEdit Start page.  Right now, the main window hasn’t changed in close to 4-5 years, looking generally as it does today.


It’s worked well, but I have to wonder if the items that I’ve chosen as the Frequently used tools actually represent the lion’s share of the user community.  I know folks use MarcEdit for different things, sometimes, for very narrow purposes, so in re-imagining how the start screen will work, I’m also rethinking what be on that main page.  To that end, I’m currently leaning towards something like this:


In refreshing the UI, I’d like to move towards a little more graphical component, large buttons, and start to de-emphasize the text (though it won’t go away since I know some folks like it).  However, in addition to moving towards a more graphical interface, I’m also looking at allowing users to customize the Start page so that they can select the tools that they use most often and have them right on the home screen.  I see it working something like this:


Users will have the option to select the customize button down on the right hand corner.  This button will allow users to swap out any or all of the four rightmost icons and replace them with pointers to their most frequently used tools.  This of course means that I’m currently building graphical representations for all the items available from the Main Window under Tools and Add-ins, but I’m hoping that this will make the front page a little more relevant for users, considering how often a user would see it.

In addition to changes to the Start Window, I’m also currently working on new Wireframes for the MARC Tools area and some of the ancillary tools like the Delimited Text Translator (which hasn’t been updated in some time). 


 Posted by at 9:49 am