/[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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1082 - (hide annotations)
Sun Dec 23 17:51:43 2007 UTC (16 years, 4 months ago) by dpavlin
File MIME type: text/plain
File size: 14253 byte(s)
local

1 dpavlin 1020 ##########################################################################
2 dpavlin 802 ## ##
3     ## Ova datoteka sadr¾i pravila za generiranje MARC21 ISO 2709 izlazne ##
4 dpavlin 1020 ## datoteke. Ulazni format je CDS/ISIS izvorni format, sa zapisima u ##
5     ## UNIMARC formatu, sa vi¹estrukim odstupanjima od standarda. ##
6 dpavlin 802 ## ##
7     ##########################################################################
8 dpavlin 795
9 dpavlin 1020 ## konvertira se ako postoji polje 200^a
10 dpavlin 773
11 dpavlin 751 if ( rec('200','a') ) {
12    
13 dpavlin 792 ### LEADER
14 dpavlin 1020 ## raspraviti 17,18
15 dpavlin 751
16 dpavlin 1042 ## LDR 05 - c ili d - iz 999a ili 999b ili 999 - provjeriti za svaku knjiznicu
17    
18 dpavlin 1064 if ( rec('999') && rec('999','a') =~ m/(pregledan|P)/i) {
19 dpavlin 751 marc_leader('05','c');
20     } else {
21     marc_leader('05','n');
22     }
23    
24 dpavlin 1042 ## LDR 06 - a ili m - odrediti kriterije
25 dpavlin 1020
26 dpavlin 751 marc_leader('06','a');
27 dpavlin 1042
28     ## LDR 07 - m
29    
30 dpavlin 751 marc_leader('07','m');
31 dpavlin 1042
32     ## LDR 17 i 18 - razjasniti
33    
34 dpavlin 751 marc_leader('18','i');
35    
36 dpavlin 1042 ## LDR 19 - razjasniti
37 dpavlin 876
38 dpavlin 751 if ( rec('230') ) {
39     marc_leader('19','r');
40     }
41    
42 dpavlin 792 ### 001 - Voyager
43 dpavlin 751
44 dpavlin 1042 ### 003 - razjasniti
45 dpavlin 876
46 dpavlin 1042 ### 007 - razjasniti
47 dpavlin 816
48     marc_fixed('007',00,'ta');
49    
50 dpavlin 905 ### 008 - All materials
51 dpavlin 1042 ## 008 00 - datum - ¹to kad datum nije poznat?
52 dpavlin 905
53 dpavlin 816 if ( rec('994','c') ) {
54     marc_fixed('008','00',
55     regex('s/^\d\d//',
56     rec('994','c')
57     ),
58     );
59     } else {
60     marc_fixed('008', 00,
61     '000101'
62     );
63     }
64    
65     #warn( dump(
66     # regex('s/^\d\d//',
67     # rec('994','c')
68     # ),
69     #)
70     #);
71    
72 dpavlin 1042 ## 008 06 - Type of date/Publication status - t - raspraviti
73    
74     marc_fixed('008','06', 't');
75    
76     ## 008 07-10 - Date 1 - iz 210d koji kroz modify postaje 210c
77    
78 dpavlin 905 marc_fixed('008','07',
79 dpavlin 1042 rec('210','c')
80     );
81    
82     ## 008 11-14 - Date 2
83    
84     ## 008 15-17 - Place of publication, production, or execution - ¹to ako nema 102?
85    
86 dpavlin 905 marc_fixed('008','15',
87     lc ( rec('102') )
88 dpavlin 1042 );
89    
90     ## 008 35-37 - Language - ¹to ako nema 101?
91    
92 dpavlin 816 marc_fixed('008','35',
93 dpavlin 1042 first( lc(rec('101')) )
94 dpavlin 816 );
95 dpavlin 1042
96     ## 008 38 - Modified record - razjasniti
97 dpavlin 816
98 dpavlin 1042 ## 008 39 - Cataloging source - d
99 dpavlin 905
100 dpavlin 1042 marc_fixed('008','39','d');
101 dpavlin 905
102 dpavlin 1042 ### 008 - Books - raspraviti upotrebu ovih polja
103     ## 008 18-21 - Illustrations
104     ## 008 22 - Target audience
105     ## 008 23 - Form of item
106     ## 008 24-27 - Nature of contents
107     ## 008 28 - Government publication
108     ## 008 29 - Conference publication
109     ## 008 30 - Festschrift
110     ## 008 31 - Index
111     ## 008 32 - Undefined
112     ## 008 33 - Literary form
113     ## 008 34 - Biography
114 dpavlin 905
115 dpavlin 876 ### 020
116 dpavlin 1042 ## modify -> drugi ISBN poèinje prefixom "ISBN" koji se mièe (sfb)
117 dpavlin 816
118 dpavlin 1020 if ( frec('10') ne ( frec('290') ) ) {
119 dpavlin 1010 marc('020','a',
120     regex('s/-//g',
121 dpavlin 1064 # regex('s/\(\d\)\(/$1 \(//g',
122 dpavlin 1010 rec('10')
123     )
124     );
125     }
126 dpavlin 876
127 dpavlin 1010 #warn(
128     # dump(
129     # frec('10')
130     # ),
131     #);
132 dpavlin 876
133 dpavlin 792 ### 035$6
134 dpavlin 1042 ## Privemeno koristimo 035$6 umjesto 035$9, zato ¹to marclint prijavljuje 9 kao gre¹ku.
135     ## marc 035a - System Number - Voyagerov ID (001)
136     ## polje 035$9 mo¾e sadr¾avati slova i razmake
137 dpavlin 792
138 dpavlin 751 marc('035','6',
139 dpavlin 824 join_with('',
140 dpavlin 751 # config('input normalize path'),
141     # config('name'),
142 dpavlin 758 config(),
143 dpavlin 876 ' L',
144 dpavlin 751 # config('input name'),
145     # id(),
146     # rec('994','a'),
147     rec('000')
148     )
149     );
150    
151 dpavlin 792 ### 040
152 dpavlin 1042 ## za sve je isti
153     ## treba utvrditi toènu oznaku za ustanovu
154 dpavlin 792
155 dpavlin 751 marc('040','a',
156 dpavlin 1082 'HR-ZgFF'
157 dpavlin 751 );
158    
159     marc('040','b',
160     'hrv'
161     );
162    
163 dpavlin 1082 marc('040','c',
164     'HR-ZgFF'
165     );
166    
167 dpavlin 758 marc('040','e',
168 dpavlin 1082 'ppiak'
169 dpavlin 758 );
170    
171 dpavlin 792
172 dpavlin 905 ### 041 - indikatori
173 dpavlin 1042 ## pretpostavke o indikatorima
174     ## 1. Ako postoji polje 300 i ono sadr¾i /Prijevod/ ili /Izv. stv. nasl./, i1 = 1
175     ## (Da li je napomena uvijek pisana?)
176     ## 2. Podatak o prevodiocu u 200g. Problem: razlièiti oblici rijeèi, razlièiti jezici.
177     ## 3. Ako u UDK oznaci postoji "=", bez zagrada, onda je to prijevod
178     ## (ako postoje zagrade pr. 94(=411.16) onda su to pomoæne oznake)
179     ## pr. 821.111-2=163.42 je prijevod engleske drame na HR.
180     ## to ima samo za knji¾evna djela, eseje....
181     ## ????
182 dpavlin 792
183 dpavlin 1010 #if ( rec('675') =~ m/\d=\d/ ) ??
184    
185     if (
186     grep( m/[prijevod|prevedeno|izv.*stv.*nasl|izvornik]/i, rec('300') ) ||
187     grep( m/[preve|prijevod]/i, rec('200','f')) ||
188     grep( m/[preve|prijevod]/i, rec('200','g'))
189     ) {
190 dpavlin 751 marc_indicators('041', 1, ' ');
191     } else {
192     marc_indicators('041', 0, ' ');
193     }
194    
195 dpavlin 792 ### 041
196 dpavlin 1042 ## ponovljivo polje (101) konvertira se u ponovljivo potpolje (041a)
197 dpavlin 792
198 dpavlin 783 #_debug(2);
199 dpavlin 903
200 dpavlin 751 marc_repeatable_subfield('041','a',
201 dpavlin 1010 map { lc($_) } rec('101')
202 dpavlin 751 );
203 dpavlin 903
204 dpavlin 783 #_debug(0);
205 dpavlin 751
206 dpavlin 876 ### 044
207 dpavlin 905 ## kako dobiti zemlju izdavanja?
208 dpavlin 751
209 dpavlin 792 ### 080
210 dpavlin 1042 ## 675 podpolja b, c, d ... - ¹to s njima? - provjeriti za svaku bazu
211 dpavlin 783
212 dpavlin 792 marc('080','a',
213     rec('675','a')
214     );
215    
216 dpavlin 876 marc('080','a',
217     rec('675','b')
218     );
219 dpavlin 792
220 dpavlin 876 marc('080','a',
221     rec('675','c')
222     );
223    
224     marc('080','a',
225     rec('675','d')
226     );
227    
228    
229 dpavlin 792 ### 084 - other classification (R)
230 dpavlin 1042 ## NSK ga koristi za struènu oznaku NSK iz polja 681
231     ## NSK konvertira polje 686 u 084, u skladu s LOC konv. tablicom
232     ## polje 686 koristi FFPS. jo¹ netko?
233 dpavlin 792
234     marc('084','a',
235     rec('686')
236     );
237    
238 dpavlin 1042 ### 100
239     ## I1 = 0 ako je pseudonim (ima 700a, nema 700b)
240 dpavlin 903
241 dpavlin 807 if ( rec('700','a') && ! rec('700','b') ) {
242     marc_indicators('100', 0, ' ');
243     } else {
244     marc_indicators('100', 1, ' ');
245     }
246    
247 dpavlin 792 marc('100','a',
248     join_with(', ',
249     rec('700', 'a'),
250     rec('700', 'b')
251     )
252     );
253    
254    
255     ### 111 i 110
256 dpavlin 1042 ## konverzija u 110 ili 111 ovisno o postojanju/nepostojanju nekih polja - provjeriti ispise naslova iz svake baze - moguæe su gre¹ke.
257 dpavlin 905
258 dpavlin 802 # ovo vrijedi za FFSFB
259 dpavlin 876 if ( rec('710','d') || rec('710','e') || rec('710','f') ) {
260 dpavlin 792
261     marc_indicators('111', 2, ' ');
262    
263 dpavlin 802 marc_compose('111',
264 dpavlin 876 'a', suffix(
265     rec('710','b') ? '.' :
266     '',
267     rec('710','a'),
268     ),
269 dpavlin 802 'e', rec('710','b'),
270 dpavlin 876 'n', prefix(
271     rec('710','d') ? '(' :
272     '',
273     rec('710','d')
274     ),
275     'd', prefix(
276     ( ! rec('710','d') ) ? '(' :
277     ( ! rec('710','e') ) ? '(' :
278     '; ',
279     rec('710','f'),
280     ),
281     'c', prefix(
282     ( rec('710','e') && ( rec('710','d') || rec('710','f') ) ) ? '; ' :
283     ( ! rec('710','d') && ! rec('710','f') ) ? '(' :
284     '',
285     rec('710','e'),
286     ),
287     '+',')',
288 dpavlin 792 );
289    
290    
291     } else {
292    
293     marc_indicators('110', 2, ' ');
294 dpavlin 876
295 dpavlin 792 marc('110','a',
296     rec('710','a')
297     );
298    
299 dpavlin 876 marc('110','b',
300     rec('710','b')
301     );
302 dpavlin 792
303 dpavlin 903 if ( rec('710','c') ) {
304     marc('110','c',
305     surround('(', ')', rec('710','c'))
306     );
307     }
308    
309 dpavlin 802 }
310 dpavlin 792
311    
312 dpavlin 905 ### 245 indikatori
313 dpavlin 1042 ## i1 = 0 za anonimne publikacije, i1 = 1 ako postoji 700 ili 710
314     ## i2 = pretpostavlja se na temelju èlana na poèetku naslova i jezika
315     ## treba provjeriti
316 dpavlin 903
317 dpavlin 816 my $i1;
318 dpavlin 792
319 dpavlin 816 if ( rec('700') || rec('710') ) {
320     $i1 = 1;
321    
322     } else {
323     $i1 = 0;
324     }
325    
326     marc_indicators('245', $i1, 0);
327    
328 dpavlin 1064 if ( rec('200','a') =~ m/^Einen / ) {
329     marc_indicators('245', $i1, 6);
330     }
331 dpavlin 1010
332 dpavlin 1064 if ( rec('200','a') =~ m/^Eine / ) {
333     marc_indicators('245', $i1, 5);
334 dpavlin 783 }
335 dpavlin 751
336 dpavlin 1064 if ( rec('200','a') =~ m/^(Die|Das|Der|Ein|Les|The) / ) {
337     marc_indicators('245', $i1, 4);
338     }
339    
340     if ( rec('200','a') =~ m/^(Um|Un|An|La|Le|Il) / ) {
341 dpavlin 1010 marc_indicators('245', $i1, 3);
342 dpavlin 783 }
343    
344 dpavlin 1064 if ( rec('200','a') =~ m/^(A|L') / ) {
345 dpavlin 816 marc_indicators('245', $i1, 2);
346 dpavlin 807 }
347    
348 dpavlin 1064
349 dpavlin 905 ### 245
350 dpavlin 1042 ## potpolja i interpunkcije pripremljeni u modify
351 dpavlin 783
352 dpavlin 751 #_debug(3);
353 dpavlin 816
354 dpavlin 751 marc_compose('245',
355     'a', suffix(
356 dpavlin 944 ( ! ( rec('200','d') || rec('200','e') || rec('200','k') ) ) && ( rec('200','f') ) ? ' /' :
357     ( rec('200','d') ) ? ' =' :
358     ( rec('200','e') ) ? ' :' :
359     ( rec('200','k') ) ? ' ;' :
360 dpavlin 1064 '.',
361 dpavlin 816 rec('200','a'),
362 dpavlin 751 ),
363     'b', suffix(
364 dpavlin 944 ( rec('200','d') && rec('200','f') ) ? ' /' :
365     ( rec('200','d') && rec('200','c') ) ? '.' :
366 dpavlin 824 '',
367 dpavlin 876 rec('200','d'),
368 dpavlin 751 ),
369 dpavlin 876 'b', suffix(
370 dpavlin 944 ( rec('200','e') && rec('200','f') ) ? ' /' :
371     ( rec('200','e') && rec('200','c') ) ? '.' :
372 dpavlin 876 '',
373     rec('200','e'),
374     ),
375     'b', suffix(
376 dpavlin 944 ( rec('200','k') && rec('200','f') ) ? ' /' :
377     ( rec('200','k') && rec('200','c') ) ? '.' :
378 dpavlin 876 '',
379     rec('200','k'),
380     ),
381 dpavlin 816 'c', suffix(
382 dpavlin 944 ( rec('200','f') && rec('200','c') ) ? '.' :
383 dpavlin 824 '',
384 dpavlin 1010 join_with(' ; ',
385     rec('200','f'),
386     rec('200','g')
387     )
388 dpavlin 751 ),
389 dpavlin 1042 ## append to last subfield
390 dpavlin 944 '+', suffix('.',
391     rec('200','c'),
392     ),
393 dpavlin 816 );
394 dpavlin 751
395 dpavlin 816 #_debug(0);
396 dpavlin 783
397 dpavlin 1042 ### 246
398 dpavlin 751
399 dpavlin 1042 marc_indicators('246', 1, 3);
400     marc('246','a',
401     rec('532')
402     );
403 dpavlin 751
404 dpavlin 792 ### 250
405 dpavlin 1042 ## zapisima koji nemaju potpolje, dodaje se ^a u modify - provjeriti
406 dpavlin 783
407 dpavlin 824 marc_compose('250',
408     'a',suffix(
409     rec('205','f') ? ' / ' :
410     ' ',
411 dpavlin 751 rec('205','a')
412 dpavlin 824 ),
413     'b', rec('205','f'),
414 dpavlin 751 );
415    
416 dpavlin 792 ### 260
417 dpavlin 1042 ## ponovljiva potpolja u originalnom redosljedu - priprema u modify
418 dpavlin 773
419 dpavlin 751 marc_original_order('260', '210');
420    
421    
422 dpavlin 792 ### 300
423 dpavlin 1042 ## urediti interpunkcije za sve kombinacije
424 dpavlin 758
425 dpavlin 751 marc('300','a',
426     suffix(
427 dpavlin 783 rec('215','c') ? ' : ' :
428     rec('215','d') ? ' ; ' :
429     rec('215','e') ? ' + ' :
430 dpavlin 1064 '',
431 dpavlin 751 rec('215','a')
432     )
433     );
434    
435     marc('300','b',
436     suffix(
437 dpavlin 783 ( rec('215','c') && rec('215','d') ) ? ' ; ' :
438     ( rec('215','c') && rec('215','e') ) ? ' + ' :
439 dpavlin 1064 '',
440 dpavlin 751 rec('215','c')
441     )
442     );
443    
444     marc('300','c',
445     suffix(
446     rec('215','e') ? ' + ' :
447 dpavlin 1064 '',
448 dpavlin 751 rec('215','d')
449     )
450     );
451    
452     marc('300','e',
453     rec('215','e')
454     );
455    
456 dpavlin 1042 ### 362 - brojèani podaci za nakladnièku cjelinu - razjasniti upotrebu
457 dpavlin 751
458 dpavlin 905 ### 440 - indikatori
459 dpavlin 1064 ## 2.ind. prema jeziku i èlanu, provjeriti
460 dpavlin 758
461 dpavlin 783 marc_indicators('440', ' ', '0');
462 dpavlin 751
463 dpavlin 816 if ( ( rec('225','a') =~ m/^Die /) ||
464     ( rec('225','a') =~ m/^Das /) ||
465     ( rec('225','a') =~ m/^The /) ) {
466     marc_indicators('440', ' ', 4);
467     }
468    
469     if ( ( rec('225','a') =~ m/^A /) && ( rec(101) =~ m/ENG/ ) ) {
470     marc_indicators('440', ' ', 2);
471     }
472    
473     if ( ( rec('225','a') =~ m/^An /) && ( rec(101) =~ m/ENG/ ) ) {
474 dpavlin 1064 marc_indicators('440', ' ', 3);
475 dpavlin 816 }
476    
477 dpavlin 824 #_debug(3);
478    
479 dpavlin 905 ### 440
480    
481 dpavlin 1020 marc_template(
482     from => 225, to => 440,
483     subfields_rename => [
484     'a' => 'a',
485     'x' => 'x',
486     'v' => 'v',
487     'h' => 'n',
488     'i' => 'p',
489     'w' => 'v',
490     ],
491 dpavlin 1042 isis_template => [
492 dpavlin 1064 'a.|h,|i ;|w',
493     'a.|h.|w',
494     'a.|i ;|w',
495     'a ;|v.|i',
496 dpavlin 1042 'a ;|v.|i ;|w',
497 dpavlin 1064 'a ;|v.|h,|i ;|w',
498     'a ;|v.|h ;|w',
499     'a ;|v ;|w',
500     #mozda greska:
501     'a ;|v,|x ;|w',
502     'a,|x ;|v',
503     'a,|x.|p ;|w',
504 dpavlin 1042 ],
505 dpavlin 1020 marc_template => [
506     'a',
507 dpavlin 1064 'a ;|v',
508     'a,|x',
509     'a.|n', # mozda greska
510     'a.|n,|p',
511     'a.|p',
512     'a ;|v.|n',
513     'a ;|v.|n,|p', # mozda greska
514 dpavlin 1082 'n,|p',
515     'n ;|v', # mozda greska
516     'p ;|v',
517 dpavlin 1020 'v',
518 dpavlin 1064 'x',
519 dpavlin 1082 'x ;|v' # greska
520 dpavlin 1020 ],
521 dpavlin 1010 );
522 dpavlin 751
523 dpavlin 1010
524 dpavlin 1064 ## marc_compose za 440 radi samo kad polje ni potpolja nisu ponovljiva. ne zapisuje dobro drugo pojavljivanje ^v, tj. ^v iza ^p (iz 225^w)
525    
526 dpavlin 876 #marc_compose('440',
527     # 'a', suffix(
528 dpavlin 1020 # ( rec('225','v') ) ? ' ;' :
529     # ( rec('225','w') ) ? ' ; ' :
530     # ( rec('225','x') ) ? ',' :
531     # ( rec('225','h') || rec('225','i') ) ? '.' :
532     # '.',
533     # frec('225','a')
534     # ),
535     # 'x',suffix(
536     # ( rec('225','x') && ( rec('225','h') || rec('225','i') ) ) ? '.' :
537 dpavlin 876 # '',
538 dpavlin 1020 # frec('225','x')
539 dpavlin 824 # ),
540 dpavlin 1020 # 'v',suffix(
541     # ( rec('225','v') && ( rec('225','h') || rec('225','i') ) ) ? '.' :
542     # ( rec('225','v') && rec('225','w') ) ? ' ; ' :
543 dpavlin 876 # '',
544 dpavlin 1020 # frec('225','v')
545 dpavlin 876 # ),
546 dpavlin 1020 # 'n',suffix(
547     # ( rec('225','h') && rec('225','i') ) ? ',' :
548     # ( rec('225','h') && rec('225','w') ) ? ' ; ' :
549 dpavlin 876 # '',
550 dpavlin 1020 # frec('225','h')
551 dpavlin 876 # ),
552 dpavlin 1020 # 'p',suffix(
553     # ( rec('225','i') && rec('225','w') ) ? ' ; ' :
554     # ( rec('225','i') && rec('225','x') ) ? ',' :
555     # '',
556     # frec('225','i')
557     # ),
558 dpavlin 1042 ## 225w treba ici u 440v, na kraj
559 dpavlin 1020 # '+', join_with(' ; ',
560     # rec('225','w'),
561     # )
562 dpavlin 876 #);
563 dpavlin 824
564 dpavlin 1020 #marc_original_order('440','225');
565 dpavlin 824
566 dpavlin 1020
567 dpavlin 876 #if (
568     # count( lookup(
569     # sub { 1 },
570     # 'ffps','libri',
571     # sub { rec('225','a') }
572     # ) ) > 1
573     #) {
574 dpavlin 783
575    
576 dpavlin 876 #_debug(0);
577 dpavlin 792
578 dpavlin 751
579 dpavlin 1042 ### 500
580 dpavlin 792
581 dpavlin 751 marc('500','a',
582     rec('300')
583     );
584    
585     marc('500','a',
586 dpavlin 773 rec('305')
587     );
588    
589     marc('500','a',
590     rec('307')
591     );
592    
593     marc('500','a',
594 dpavlin 751 rec('314')
595     );
596    
597 dpavlin 795 ### 502 - bilje¹ka o disertacijama
598 dpavlin 1042 ## odgovarajuæeg polja nema u originalnim podacima. mo¾da se mo¾e pretpostaviti?
599 dpavlin 795
600 dpavlin 792 ### 504
601    
602 dpavlin 751 marc('504','a',
603     rec('320')
604     );
605    
606 dpavlin 1042 ### 505
607     ## FFPS 327 - sadrzaj
608     ## NSK konvertira 327 (NP) u 501 (R)
609     ## u LOC konv. tablici stoji 327 (NP) u 505 (NR)
610     ## standard i validacije dopu¹taju 501 (R) i 505 (R)
611 dpavlin 751
612 dpavlin 758 if ( config() =~ m/ffps/ || config() =~ m/fftu/ ) {
613 dpavlin 773 marc_indicators('505', '0', ' ');
614 dpavlin 758 marc('505','a',
615     regex('s/\s*[\\r\\n]+\s*\**\s*/ ; /g',
616     rec('327')
617     )
618     );
619     }
620 dpavlin 751
621 dpavlin 816 if ( config() =~ m/ffan/ ) {
622     marc_indicators('505', '0', ' ');
623     marc('505','a',
624     regex('s/[<>]//g',
625     rec('330')
626     )
627     );
628     }
629 dpavlin 751
630 dpavlin 792
631 dpavlin 751
632    
633 dpavlin 792 ### 520
634 dpavlin 1042 ## NSK konvertira 330 (P) u 520 (P) = LOC konv. tablica
635     ## FFPS 330 (NP) - sa¾etak
636 dpavlin 792
637 dpavlin 758 if ( config() =~ m/ffps/ ) {
638     marc('520','a',
639     regex('s/[\\r\\n]+/. /g',
640     rec('330')
641     )
642     );
643     }
644 dpavlin 751
645 dpavlin 816 ### 526 - STUDY PROGRAM INFORMATION NOTE
646 dpavlin 1042 ## provjeriti za svaku bazu sta je u 996?
647 dpavlin 751
648 dpavlin 816 marc_indicators('526', 8, ' ');
649 dpavlin 792
650 dpavlin 816 marc('526','a',
651     rec('996')
652     );
653 dpavlin 792
654 dpavlin 816 ### 538 - zahtjevi sustava
655    
656 dpavlin 773 marc('538','a',
657     rec('337','a')
658     );
659 dpavlin 758
660 dpavlin 792 ### 655
661    
662 dpavlin 751 marc_indicators('655', ' ', 4);
663     marc('655','a',
664     rec('608')
665     );
666    
667 dpavlin 792 ### 653
668    
669 dpavlin 758 marc_indicators('653', 0, ' ');
670 dpavlin 751 marc('653','a',
671     rec('610')
672     );
673    
674 dpavlin 792 #_debug(2);
675 dpavlin 751
676    
677 dpavlin 792 ### 700
678 dpavlin 1042 ## ako je u originalu ponovljivo polje treba biti i konvertirano u ponovljivo !!
679 dpavlin 751
680     marc_indicators('700', 1, ' ');
681    
682     if ( rec('701') ) {
683     marc('700','4',
684     'aut'
685     );
686     }
687    
688     marc('700','a',
689 dpavlin 758 join_with(', ',
690     rec('701', 'a'),
691     rec('701', 'b')
692     )
693 dpavlin 751 );
694    
695     marc('700','a',
696     join_with(', ',
697     rec('701', 'c'),
698     rec('701', 'd')
699     )
700     );
701    
702     marc('700','a',
703     join_with(', ',
704     rec('701', 'e'),
705     rec('701', 'f')
706     )
707     );
708    
709     marc('700','a',
710     join_with(', ',
711     rec('701', 'g'),
712     rec('701', 'h')
713     )
714     );
715    
716    
717     marc('700','a',
718 dpavlin 876 join_with(', ',
719     rec('702', 'a'),
720     rec('702', 'b')
721     )
722 dpavlin 751 );
723    
724     marc('700','a',
725     join_with(', ',
726     rec('702','c'),
727     rec('702','d')
728     )
729     );
730    
731     marc('700','a',
732     join_with(', ',
733     rec('702','e'),
734     rec('702','f')
735     )
736     );
737    
738     marc('700','a',
739     join_with(', ',
740     rec('702','g'),
741     rec('702','h')
742     )
743     );
744    
745     #_debug(0);
746    
747    
748 dpavlin 1042 ### 740 - nadopuniti
749 dpavlin 751
750 dpavlin 792 marc_indicators('740', 0, ' ');
751 dpavlin 751
752 dpavlin 792 # if ( ! rec('464') ) {
753     # marc('740','a',
754     # rec('200','c')
755     # );
756 dpavlin 751
757 dpavlin 807 marc('740','a',
758     rec('200','k')
759     );
760 dpavlin 751
761 dpavlin 792 # } else {
762 dpavlin 751
763 dpavlin 792 #marc('740','a',
764     # rec('464','a')
765     #);
766 dpavlin 751
767 dpavlin 792 # };
768 dpavlin 751
769    
770 dpavlin 1042 ### 760 w
771     ## generiranje zapisa o nakladnièkoj cjelini i povezivanje podreðenog zapisa s nadreðenim
772    
773 dpavlin 1064 #if (
774     # rec('225','a') # da li je nakladnièka cjelina?
775     #) {
776     #
777     #my $series_key =
778     #join_with('',
779     # rec('225','a'),
780     # rec('210','a'),
781     # rec('210','b'),
782     #);
783     #
784     #my $series = get( $series_key );
785     #
786     #if ($series) {
787     # warn "nije novi";
788     #} else {
789     #
790     #$series = join_with('',
791     # uc( config() ),
792     # ' LS',
793     # rec('000')
794     #);
795     #
796     #set( $series_key => $series );
797     #
798     #} # $series
799     #} # nakladnièka cjelina
800     #
801     #my $series_key = join_with('',
802     # rec('225','a'),
803     # rec('210','a'),
804     # rec('210','b'),
805     #);
806     #
807     #if ($series_key) {
808     #
809     # marc_indicators('760', 0, ' ');
810     #
811     # marc('760','w',
812     # get( $series_key )
813     # );
814     #}
815 dpavlin 751
816 dpavlin 1042 # ## testing
817 dpavlin 792 #
818     # my $dup_key = join_with('',
819     # rec('200','a'),
820     #);
821     #
822     #if ($dup_key) {
823     # marc('995','a',
824     # get( $dup_key )
825     # );
826     #}
827     #
828     #
829     # marc_indicators('776', 0, ' ');
830     #
831     # marc('776','a',
832     # rec('452','1')
833     # );
834     #
835 dpavlin 751
836    
837 dpavlin 1042 ### 852 - signatura
838 dpavlin 783
839 dpavlin 816 marc_indicators('852', 4, ' ');
840 dpavlin 773
841 dpavlin 816 marc('852','j',
842     join_with(' ',
843     rec('990')
844     )
845     );
846 dpavlin 783
847 dpavlin 903 ### 876 - item information - basic bibliographic unit
848 dpavlin 783
849 dpavlin 816 marc('876','a',
850     rec('991'),
851     );
852 dpavlin 783
853 dpavlin 903 ### 886 - former marc
854 dpavlin 783
855 dpavlin 816 marc_indicators('886', 2, ' ');
856 dpavlin 783
857 dpavlin 816 marc('886','2',
858     'ffmarc'
859     );
860 dpavlin 792
861 dpavlin 816 marc('886','a',
862     '994'
863     );
864 dpavlin 792
865 dpavlin 816 marc('886','b',
866     join_with(''.
867     '##^a',
868     join_with('',
869     prefix('^a',
870     rec('994','a'),
871     ),
872     prefix('^b',
873     rec('994','b')
874     )
875     )
876     )
877     );
878 dpavlin 792
879    
880 dpavlin 795 } # polje 200a

  ViewVC Help
Powered by ViewVC 1.1.26