Aug 28

ePrints Author ID

One of the things I’ve been working on over the last month is the ability to create distinct and unique author identifiers for ePrints. ePrint’s is a really awesome Perl based repository that the University uses to handle its research papers but whilst it is great at handling ePrints, documents, users and a whole host of other things it really falls over when you try to treat authors as individuals.

Currently ePrints lists authors by using the creator field of an ePrint. This is usually entered as the cited name of the author. If you have a small number of authors with different names this works reasonably well as the system can differentiate between people without much issues. The problem comes in when people are cited differently or have very similar names but are distinct people. Then it becomes bad.

One way of solving the problem is really quite ugly: you go through and change the cited author to make it look “neater”. In fact one of our library staff decided that they would do that greatly damaging the value of the data stored with in the system, tainting it horribly and creating more work for themselves. The cynic in me wonders that they’re just creating more work for themselves later to go back through and fix it all up. So there is a solution, non technical and pretty ordinary.

So our solution was to turn authors into a first class data set within ePrints. They’re not some unidentifiable free text field with no great purpose (there was a creator ID field but email address was suggested to be used for it) but in fact they are now their own entity which is cool.

We’ve done some different stuff with the author ID project at USQ that I’d like to share:

This screen depicts the edit view for an author.
This screen depicts the edit view for an author.

So an author has a name, they can be linked back to a user ID, they have an email address (both primary email address which should be used for contact and alternate addresses for aiding search), a biography and external identifiers. A cool feature of the primary email address is that when it is updated it automatically gets copied to the alternate email address list,  so you can easily update an email address and still retain the old one (you can still remove them from the alternate email address easily). The external identifiers section provides the ability to list useful identifiers for the author that mean something outside of ePrints. This could be stuff like a staff or student number that you record against the author to help with recognising your users. This is also a new field type developed called ‘Name-Value’ to represent name value pairs of data and provide an editing interface.

But the problem with authors is that they don’t stay the same: they’re dynamic. So they might move around an organisation, shift faculties, join a research centre or even leave the organisation. Recording this in the author record is more than possible but it starts to get messy – we start talking about ‘versions’ of the author but versions imply the wrong concept. A researcher might be working on papers in two different faculties, each paying for his time and each deserving of recognition. In our case we also need to use that information for reporting so that we can properly allocate funds based on research outcomes as well – for us it is important to know who paid for the research.

So to solve this problem I created a system called “author instances”. Author instances provide a subrecord of the authors that permits instances of specific data to be created and associated with the author. Then when an author creates a paper a link is created to this instance and not directly to the author. This allows the author record to contain information that is relatively static and data that might periodically change (such as department or even which institution someone is at) is then located in the author instance. As this isn’t ‘versioning’ per se it also works well for when a researcher is concurrently producing papers for different parts of the institution (or even for bodies external to the institution).

This screen depicts the edit view for an author instance.

This screen depicts the edit view for an author instance.

The author instance is very light by default, it only contains the author that it is linked to, its display name and a preferred flag. The preferred flag is mutually exclusive within author instances – if one instance for an author sets the flag then it is cleared for all other authors. In the screen shot you will notice an untranslated field called “deptid”. This is another new metafield that has been developed called “Externalitemref” which is similar to the built in ItemRef field however it works on tables managed outside of ePrints. ExternalItemRef takes the params of a table name, a key field and a name field to operate in a similar manner to the ItemRef and link data back in.

The observant will notice that both the ExternalItemRef and the built-in ItemRef field also have a find entry button. This button has also been added to the ePrint item editing screen as well and triggers a popup window which allows easy searching for the particular item (user, author, author instance) that you are interested in.

The standard ePrints creator fields have a

So as we can see there is now a “Find Entry” button that pops up with a new window allowing us to select an author instance for this author easily and not have to worry that we’re going to mistype their email address or similar.

This is just a quick introduction into some of the changes that the Author ID system which USQ has developed provides. Ideally we’d love to feed this back to the ePrints core so that everyone can use this, or a similar system, in a great way. If you want to read more you can check out the “Author ID Notes” document on my knowledge base download site.


2 Comments so far

  1. Andras November 15th, 2012 12:54 am

    I think this is a great plug-in, however I could not get it working on EPrints 3.3. Is there any help on doing that?

  2. pasamio November 15th, 2012 8:53 am

    I’ve shifted on from my position where I originally authored this so I can’t particularly help you out. I’m sorry! USQ might have updated the plugin for EPrints 3.3 and perhaps you can contact the USQ Library to see if they can help you out.

Leave a comment

%d bloggers like this: