Hi all,
I've recently added a new feature to icat-admin which I wanted to let people know about, and potentially get some feedback on. At the moment I suspect the way it works makes it specific to ISIS, but if it'd be useful for people at other facilities I imagine it should be possible with some small tweaks.
The initial problem:
At ISIS, when scientists run an experiment they enter the RB (AKA experiment reference number,
investigation.name in ICAT) into the instrument computer before running measurements. That RB is then included in the datafiles which are produced, which is how we link them to an investigation in our ICAT ingest. Unfortunately, sometimes they forget, causing datafiles to be associated with the wrong investigation; it often gets noticed shortly before publication time, and they have to make a request for us to change them.
Up until now I've been doing those corrections with a script, but it was always a bit clunky, especially when many non-contiguous sets of datafiles needed to be moved. As a replacement, I've added a 'tool' to icat-admin to provide a GUI way of doing the same thing. You can see it at the hosted version of icat-admin,
https://vigorous-lamarr-7b3487.netlify.app (which I really should get a domain for at some point), or by pulling and running the latest version from github, and clicking 'Tools' in the top left corner after logging in to an ICAT
instance; I'm assuming other facilities will have different conventions
to those outlined below, so it won't be possible to actually use it
outside of ISIS, but it should give an idea of what the tool does.
ISIS specifics:
ISIS instruments create several datafiles as part of a 'run'. Each run is numbered sequentially on a per instrument basis. A datafile's name fits the format '<instrument abbreviation><optional 0 padding><run number><optional suffix>.<file extension>' eg. 'LARMOR00084693.nxs' or 'MAR29673.nxs'. When we need to reassociate datafiles, it's always whole runs at a time, so the new feature is designed to lookup all the datafiles in a run using a query like 'name like '<instrument abbreviation>%<run number>%'.
Questions:
- Would anyone at other facilities find this (or a slightly tweaked version of it) useful?
- If so, what conventions does your facility use that would require changes from the approach outlined in the ISIS specifics section?
- Does anyone have ideas/requests for similar tools that could be integrated into icat-admin to save some drudgery?
Cheers,
Will