local
[webpac2] / conf / normalize / ff-libri.pl
index 16212b7..100bb21 100644 (file)
@@ -1,11 +1,12 @@
+# ne konvertira se ako nema polje 200^a
+
 if ( rec('200','a') ) {
 
 # Leader
 # raspraviti 17,18
-
+#
 # u nekim knji¾nicama koristi se 999a i 999b
-
-
+#
 # vrijedi za ffan...
 
 if ( rec('999') && first(rec('999')) =~ m/pregledan/i) {
@@ -22,10 +23,12 @@ if ( rec('230') ) {
        marc_leader('19','r');
 }
 
-
 # 001 polje - Voyager
-
+#
 # privemeno koristimo 0356 umjesto 0359, zato ¹to marclint 9 prijavljuje kao gre¹ku
+# u marc 035a - System Number - ??
+# NSK zapisuje Voyagerov ID (001) - kako ???
+
 
 marc('035','6',
 join_with('',
@@ -40,8 +43,6 @@ join_with('',
        )
 );
 
-# u marc 035a treba dodati System Number - 
-# NSK zapisuje Voyagerov ID (001) - kako ???
 
 # u FFSF bazama postoji nekoliko zaredanih ISBN, odvojenih s '. - '
 
@@ -49,7 +50,8 @@ marc('020','a',
        rec('10')
 );
 
-# u polje 040a mo¾da jo¹ dodati prefiks HR
+
+# u polje 040a - prefiks HR ?
 # NSK ima HR NSB (mo¾da u novijim zapisima ima NSK?)
 
 marc('040','a',
@@ -64,18 +66,19 @@ marc('040','e',
        'HR PPIAK'
 );
 
-if (rec('300') && first(rec('300')) =~ m/Prijevod/) {
+if ( rec('300') && first(rec('300')) =~ m/Prijevod/) {
        marc_indicators('041', 1, ' ');
 } else {
        marc_indicators('041', 0, ' ');
 }
 
-## naci primjer u NSK
+## naæi primjer u NSK
 
 marc_repeatable_subfield('041','a',
        rec('101')
 );
 
+# indikatori za èlanove. treba uvjetovati prema jezicima !!
 
 if (   ( rec('200','a') =~ m/^Die /) || 
        ( rec('200','a') =~ m/^Das /) || 
@@ -143,7 +146,7 @@ marc('250','b',
 );
 
 # ponovljiva potpolja u originalnom redosljedu
-# 
+
 marc_original_order('260', '210');
 
 
@@ -226,6 +229,14 @@ marc('500','a',
        rec('300')
 );
 
+marc('500','a',
+       rec('305')
+);
+
+marc('500','a',
+       rec('307')
+);
+
 marc('500','a',
        rec('314')
 );
@@ -241,7 +252,7 @@ marc('504','a',
 
 ## FFPS 327 - sadrzaj
 if ( config() =~ m/ffps/ || config() =~ m/fftu/ ) {
-       marc_indicators('505', '1', ' ');
+       marc_indicators('505', '0', ' ');
        marc('505','a',
                regex('s/\s*[\\r\\n]+\s*\**\s*/ ; /g',
                        rec('327')
@@ -270,6 +281,10 @@ if ( config() =~ m/fftu/ ) {
        );
 }
 
+marc('538','a',
+       rec('337','a')
+);
+
 
 # mo¾da i polje 520y - jezik napomene ako je uvijek isti jezik
 
@@ -603,4 +618,26 @@ if ( rec('230') ) {
  
 };
 
+marc_indicators('776', 0, ' ');
+
+marc('776','a',
+       rec('452','1')
+);
+
+marc('900','a',
+       lookup(
+               sub { rec('000') },
+               'ffps','libri',
+               sub { rec('200','a') },
+       )
+);
+
+marc('901','a',
+       lookup(
+               sub { 'NSK' },
+               'nsk','baza',
+               sub { rec('200','a') },
+       ) 
+);
+
 }