Hi Zeno, and list, [ I'm adding "Koha -Devel" back to the "Cc:" list because I think that this discussion has REALLY "moved" to code (programming) considerations. I further suggest that, in followups, we remove the koha "regular" mailing list from the "Cc:" list ]
ZENO: Thank you very much for your reply! :) My comments follow inline. On Tue, Jul 29, 2009, I wrote: >>Where does the "| Authority:PER, " in the "Constraints" part of >>Subfield "a" (Entry Element) come from? And on Wed, Jul 29, 2009 at 08:12, Zeno Tajoli<taj...@cilea.it> replied: > This definition comes from english Unimarac setup of Koha. > Go to the file > installer/data/mysql/en/marcflavour/unimarc/ > mandatory/unimarc_framework_DEFAULT.sql > line 1362: > ('700', 'a', 'Entry Element', 'Entry Element', 0, 0, '', 7, '', > 'PER', '', 0, 0, '', '', '', NULL), > > The string 'PER' is the link to authority for subfield 700$a Excellent! Thank you very much for that information. > But in the english Koha definition of Unimarc Authority there isn't a > specific structure for Personal Name. > You can see this situation in the file > installer/data/mysql/en/marcflavour/unimarc/ > mandatory/authorities_normal_unimarc.sql Right again. In the case of the French definition for UNIMARC Authorities, located at: /usr/share/koha/intranet/cgi-bin/installer/data/mysql/fr-FR/marcflavour/unimarc_lecture_pub/Obligatoire/autorites_norme_unimarc.sql ... there is this line (line 29 for Koha 3.0.3): INSERT INTO `auth_types` (`authtypecode`, `authtypetext`, `auth_tag_to_report`, `summary`) VALUES ('NP', 'Auteur', '200', '[200a][, 200b][ 200d][ ; 200c][ (200f)]'); ... and, the line for the "UNIMARC Bibliographic" French definition (for the default "MARC Bibliographic framework") does NOT force a specific code for Authors, like the English one does: Line 28: INSERT INTO `marc_tag_structure` (`tagfield`, `liblibrarian`, `libopac`, `repeatable`, `mandatory`, `authorised_value`, `frameworkcode`) VALUES ... Line 197: ('700', 'Auteur principal', 'Auteur', 0, 0, '', ''), So, I'm thinking that this obligation to have an Authority framework with a code called PER in the English framework should be reported as a bug in Koha's Bugzilla. > Well, in version 3.0.x the only place where the name of Authority is > hardcoded, as I know, > is in unimarc_framework_DEFAULT.sql (as I write above). > The suggestion of Joe is correct. Agreed. > In fact the english setup of Unimarc has problems and not only here, > also in Zebra defintions and in fields used for items > information. > I think that a general check of english unimarc setup is a must, also > to use it as a starting point for translation in different > languages. > But who want ot use Unimarc ? > Italy (I) > Portugal (Ricardo Dias Marques) > France (Biblibre, but the fr-FR section is correct I think) Well, according to the Wikipedia article about UNIMARC - http://en.wikipedia.org/wiki/MARC_standards - "[UNIMARC is] the official MARC in France, Italy, Russia, Portugal, Greece and other countries." So, it would be important (for the Libraries of those countries) that Koha implements well UNIMARC, if they are considering / using Koha. I think there should be only: - 1 (ONE) Unimarc Bibliographic SQL file - and 1 (ONE) Unimarc Authorites SQL file ... and NOT one of those for EACH language. The current situation, IMHO, leads to much Copy + Paste work, when one needs to create a new translation (both tiresome and error prone). Also, if there is one BUG in one language setup (SQL files) - like this requirement of an "Authority Type" called "PER" in the English one - we'll probably have to change all the other languages (SQL files) that were copied from that one, to correct that bug. I think that the descriptions (for instance "liblibrarian" and "libopac" fields of the "marc_tag_structure" table) are the only fields that have to be translated. These fields could, for instance: Option A - Be added as additional fields (eg: liblibrarian-en, librarian-fr...). I think this would NOT be elegant at all! Option B - Move the "liblibrarian", "libopac" to another table (call it something like "marc_tag_structure_descriptions_translations") with fields "tagfield", "liblibrarian", "libopac" and "language" (and maybe "frameworkcode" also... I'm not sure regarding this last one). For instance: INSERT INTO `marc_tag_structure_descriptions_translations` (`tagfield`, `liblibrarian`, `libopac`, `language`) VALUES ('102', 'Country of Publication or Production', 'Country of Publication or Production', en), ('102', 'Pays de publication ou de production', 'Pays de publication ou de production', 'fr-FR'), ('102', 'País de publicação ou produção', 'País de publicação ou produção', pt-PT'), ... There may be other options that are even more elegant and/or practical than this last one. Any suggestions? I understand that this may require relatively large changes in code in SQL files and Perl code ("refactoring"), so it would take a while to implement. But I also think that it could SAVE us time (and lots of trouble) in the long run. What do you (all) think? Am I totally wrong here? Cheers, Ricardo P.S: - ZENO: if you spend holidays in Portugal, send me an e-mail, so I can buy you a beer! :) _______________________________________________ Koha-devel mailing list Koha-devel@lists.koha.org http://lists.koha.org/mailman/listinfo/koha-devel