With the OAI-PMH:archiveID syspref it is possible to decide what the first part of Koha's OAI-PMH identifiers should look like. The last part, however, is always the biblionumber of the record. In some settings this might work just fine, but in other settings there might be an identifier in MARC field 001 (at least for MARC21 and NORMARC, not sure about UNIMARC) that would make more sense as an identifier for OAI-PMH records. Two possibilities: - Create a syspref that lets a library choose whether to use biblionumber or 001 as identifier for OAI-PMH (this would make it possible to have something specific in 001, but still use biblionumbers for OAI-PMH if the library so wishes) - Change Koha to always use 001 as the (last part of the) identifier for OAI-PMH. (This way, if alibrary needs to have something specific in 001 they can, but that will also automatically be used for the OAI-PMH identifier. There should be an easy way to make sure 001 is always equal to the biblionumber for libraries that do not need to use 001 for something specific). Thoughts?
I don't think using 001 is necessarily a good idea. For many US libraries using OCLC, the 001 is where the OCLC number lives. That's a sufficiently large number of databases to have to take into account. If your setup will work with the OCLC number, it may not be a problem. But if it has to be a unique number to the system/record, it will be. What about another field? A lot of libraries also use the 035 for either OCLC or system-derived numbers (Unicorn especially), so that's probably not a good one either. In USMARC (not sure about UNIMARC), the biblionumber is being mapped into the 999c in the default biblioitems Koha to MARC mapping. Can this be used or adapted?
You don't need to create a new syspref and change Koha code. You need to operate Koha OAI server in 'extended' mode. See the doc or 'perldoc oai.pl'. In extended mode, you have your own XSL to transform your MARC biblio record into any format, and so you can produce a Dublin Core format with what you want in identifier term.
OAI-PMH in extended mode can fix this, so I'm marking this as resolved/wontfix.