/[webpac2]/trunk/conf/normalize/ff-libri.pl
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/conf/normalize/ff-libri.pl

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 751 by dpavlin, Sun Oct 8 13:25:11 2006 UTC revision 758 by dpavlin, Wed Oct 25 11:02:36 2006 UTC
# Line 25  if ( rec('230') ) { Line 25  if ( rec('230') ) {
25    
26  # 001 polje - Voyager  # 001 polje - Voyager
27    
 # polje 035 je u NSK ponovljivo. zašto ???  
   
28  # privemeno koristimo 0356 umjesto 0359, zato što marclint 9 prijavljuje kao grešku  # privemeno koristimo 0356 umjesto 0359, zato što marclint 9 prijavljuje kao grešku
29    
30  marc('035','6',  marc('035','6',
31  join_with('',  join_with('',
32  #               config('input normalize path'),  #               config('input normalize path'),
33  #               config('name'),  #               config('name'),
 #               config('input name'),  
34                  config(),                  config(),
35                    'L',
36    #               config('input name'),
37  #               id(),  #               id(),
38  #               rec('994','a'),  #               rec('994','a'),
39                  rec('000')                  rec('000')
# Line 61  marc('040','b', Line 60  marc('040','b',
60          'hrv'          'hrv'
61  );  );
62    
63  if (rec('300') && first(rec('300')) =~ m/prijevod/i) {  marc('040','e',
64            'HR PPIAK'
65    );
66    
67    if (rec('300') && first(rec('300')) =~ m/Prijevod/) {
68          marc_indicators('041', 1, ' ');          marc_indicators('041', 1, ' ');
69  } else {  } else {
70          marc_indicators('041', 0, ' ');          marc_indicators('041', 0, ' ');
71  }  }
72    
73    ## naci primjer u NSK
74    
75  marc_repeatable_subfield('041','a',  marc_repeatable_subfield('041','a',
76          rec('101')          rec('101')
77  );  );
78    
79    
80  ## pitati dobricu  if (    ( rec('200','a') =~ m/^Die /) ||
81            ( rec('200','a') =~ m/^Das /) ||
82  if ( rec('200') && first(rec('200')) =~ m/Die /i) {          ( rec('200','a') =~ m/^The /) ) {
83          marc_indicators('245', 0, 4);                  marc_indicators('245', 0, 4);
84  } else {  } else {
85          marc_indicators('245', 0, 0);          marc_indicators('245', 0, 0);
86  }  }
# Line 143  marc_original_order('260', '210'); Line 148  marc_original_order('260', '210');
148    
149    
150  # provjeriti interpunkcije !!  # provjeriti interpunkcije !!
151    # u NSK nesto ne stima
152    
153  marc('300','a',  marc('300','a',
154          suffix(          suffix(
155                  rec('215','c')  ?       ' : ' :                  rec('215','c')  ?       ' : ' :
# Line 155  marc('300','a', Line 162  marc('300','a',
162    
163  marc('300','b',  marc('300','b',
164          suffix(          suffix(
165                  ( rec('215','c') && rec('215','d') )    ?       ' : ' :                  ( rec('215','c') && rec('215','d') )    ?       ' ; ' :
166                  ( rec('215','c') && rec('215','e') )    ?       ' + ' :                  ( rec('215','c') && rec('215','e') )    ?       ' + ' :
167                                                                  ' ',                                                                  ' ',
168                          rec('215','c')                          rec('215','c')
# Line 175  marc('300','e', Line 182  marc('300','e',
182  );  );
183    
184    
185    # provjeriti
186    
187  marc_indicators('490', 0, ' ');  marc_indicators('490', 0, ' ');
188    
189  marc('490','a',  marc('490','a',
190          rec('225','a')          rec('225','a')
191  );  );
192    
193    marc('490','v',
194            join_with(', ',
195                    rec('225','v'),
196                    rec('225','w')
197            ),
198    );
199    
200    marc('490','x',
201            rec('225','x')
202    );
203    
204  #marc('490','a',  #marc('490','a',
205  #       join_with(' : ',  #       join_with(' : ',
206  #               rec('225','a'),  #               rec('225','a'),
# Line 214  marc('504','a', Line 234  marc('504','a',
234          rec('320')          rec('320')
235  );  );
236    
237  # napomene uz konverziju polja sa sadržajem:  ## napomene uz konverziju polja 327 (sadrzaj):
238  # NSK konvertira 327 (NP) u 501 (R)  # NSK konvertira 327 (NP) u 501 (R)
239  # u LOC konv. tablici stoji 327 (NP) u 505 (NR)  # u LOC konv. tablici stoji 327 (NP) u 505 (NR)
240  # standard i validacije dopuštaju 501 (R) i 505 (R)  # standard i validacije dopuštaju 501 (R) i 505 (R)
 # FFPS koristi 327 (P)  
 # FFIZ koristi 327  
   
241    
242  marc_indicators('505', '0', ' ');  ## FFPS 327 - sadrzaj
243    if ( config() =~ m/ffps/ || config() =~ m/fftu/ ) {
244  marc('505','a',          marc_indicators('505', '1', ' ');
245          regex('s/\s*[\\r\\n]+\s*\**\s*/ ; /g',          marc('505','a',
246                  rec('327')                  regex('s/\s*[\\r\\n]+\s*\**\s*/ ; /g',
247          )                          rec('327')
248                    )      
249  );  );
250    }
251    
252  # napomene uz konverziju polja 330:  
253    ## napomene uz konverziju polja 330:
254  # NSK konvertira 330 (P) u 520 (P) = LOC konv. tablica  # NSK konvertira 330 (P) u 520 (P) = LOC konv. tablica
255    
 # FFAN - (NP) - sadržaj, pitati Milu da li je to cijeli sadraj ili nije  
 #  
 # FFIZ koristi 330 (P) - ključne riječi, dijelovi sadržaja, sažeci  
 # FFFO koristi 330 (P) - ključne riječi, dijelovi sadržaja  
 # FFPS koristi 330 (NP) - sažetak  
256    
257  if ( config() =~ m/ffan/i || config() =~ m/fflo/i ) {  # FFPS 330 (NP) - sažetak
258    if ( config() =~ m/ffps/ ) {
259            marc('520','a',
260                    regex('s/[\\r\\n]+/. /g',
261                            rec('330')
262                    )      
263            );
264    }
265    
266  marc('520','a',  # FFTU 330 - ???
267          regex('s/[\\r\\n]+/. /g',  if ( config() =~ m/fftu/ ) {
268            marc('520','a',
269                  rec('330')                  rec('330')
270          )          );
 );  
   
271  }  }
272    
273    
274  # možda i polje 520y - jezik napomene ako je uvijek isti jezik  # možda i polje 520y - jezik napomene ako je uvijek isti jezik
275    
276    marc_indicators('246', 1, 3);
277    marc('246','a',
278            rec('532')
279    );
280    
281  marc_indicators('655', ' ', 4);  marc_indicators('655', ' ', 4);
282  marc('655','a',  marc('655','a',
283          rec('608')          rec('608')
284  );  );
285    
286  marc_indicators('653', ' ', ' ');  marc_indicators('653', 0, ' ');
287  marc('653','a',  marc('653','a',
288          rec('610')          rec('610')
289  );  );
# Line 296  marc('700','4', Line 323  marc('700','4',
323  }  }
324    
325  marc('700','a',  marc('700','a',
326          rec('701', 'a'),          join_with(', ',
327                    rec('701', 'a'),
328                    rec('701', 'b')
329            )
330  );  );
331    
332  marc('700','a',  marc('700','a',
# Line 326  marc('700','a', Line 356  marc('700','a',
356  );  );
357    
358    
359  # ako je u originalu ponovljivo polje treba biti i konvertirano!!  # ako je u originalu ponovljivo polje treba biti i konvertirano u ponovljivo !!
360    
361    
362  marc('700','a',  marc('700','a',
# Line 350  marc('700','a', Line 380  marc('700','a',
380          )          )
381  );  );
382    
383  ## treba provjeriti da li polje 330 sadrzi jos neke podatke koji mogu biti u <> ili su tu iskljucivo autori? da li samo autori ili neke drugeosobe?  ## treba provjeriti da li polje 330 sadrzi jos neke podatke koji mogu biti u <> ili su tu iskljucivo autori? da li samo autori ili neke druge osobe?
384  #  
385    
386  # marc('700','a',  # marc('700','a',
387  #       rec('330','a')  #       rec('330','a')
388  # );  # );
# Line 442  marc('740','a', Line 473  marc('740','a',
473    
474  if ( rec('230') ) {  if ( rec('230') ) {
475    
         marc('900','a',  
                 id()  
         );  
   
476          marc_duplicate();          marc_duplicate();
477    
478          marc_remove('035');          marc_remove('035');
# Line 453  if ( rec('230') ) { Line 480  if ( rec('230') ) {
480                  join_with('',                  join_with('',
481                          config(),                          config(),
482                          rec('000'),                          rec('000'),
483                            '-',
484                          id(),                          id(),
485                  )                  )
486          );          );
# Line 517  if ( rec('230') ) { Line 545  if ( rec('230') ) {
545          }          }
546    
547          marc_remove('260');          marc_remove('260');
548    
549    #       marc_original_order('260', '250');
550    
551          marc('260','c',          marc('260','c',
552                  rec('250')                  rec1('251')
553          );          );
554    
555    
556    #       marc('260','a',
557    #               rec('251','a')
558    #       );
559    #       marc('260','b',
560    #               rec('251','c')
561    #       );
562    #       marc('260','c',
563    #               rec('251','d'),
564    #               rec1('251')
565    #       );
566    
567          marc_remove('300');          marc_remove('300');
568          marc('300','a',          marc('300','a',
569                  rec('260')                  rec('260')

Legend:
Removed from v.751  
changed lines
  Added in v.758

  ViewVC Help
Powered by ViewVC 1.1.26