hello again, As i wrote my last mail, guys at biblibre really would like to write tools to ease the programmer in charge of migration process. MARC::Template is something we're very happy about but we have more tools that aren't as polished. But we already successfully use them so we share them with you as they are.
https://github.com/eiro/p5-ISO2709 is a regex driven ISO2709 parser. The goal of this library is not performance but flexibility: we where able to read very baddly formatted ISO2709 with just by changing some few things in the regex. I never published it for now because i didn't find time to make the things configurable instead of hackable: that's a proof of concept but i'm very happy about the results. There is https://github.com/eiro/p5-MARC-Data which is a first step to have a very simple way to deal with CIB using Moose metaprogramming and serialization definition. for example, UNIMARC Biblio 100$a definition is: ( [qw( entered 8 Str ) , POSIX::strftime('%Y%m%d',localtime )] # 0-7 Date Entered on File (Mandatory) , [qw( publication_type 1 Str u )] # 8 Type of Publication Date , [qw( publication1 4 )] # 9-12 Publication Date 1 , [qw( publication2 4 )] # 13-16 Publication Date 2 , [qw( audience 3 Str u )] # 17-19 Target Audience Code , [qw( government 1 Str u )] # 20 Government Publication Code , [qw( modified 1 Str 0 )] # 21 Modified Record Code , [qw( language 3 Str fre )] # 22-24 Language of Cataloguing (Mandatory) , [qw( transliteration 1 Str y )] # 25 Transliteration Code , [qw( charset1 4 Str 5050 )] # 26-29 Character Set (Mandatory) , [qw( charset2 4 )] # 30-33 Additional Character Set , [qw( title_script 2 Str ba )] # 34-35 Script of Title ) Another idea is MARC::Mapper http://www.tinybox.net/2009/08/06/a-marc-mapper-in-few-lines-of-perl/ but i really think it could be written using MARC::Template syntaxes. regards -- Marc Chantreux BibLibre, expert en logiciels libres pour l'info-doc http://biblibre.com