/[webpac2]/trunk/conf/normalize/ffcasopisi/signature_zs.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

Contents of /trunk/conf/normalize/ffcasopisi/signature_zs.pl

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1182 - (show annotations)
Mon May 18 17:37:06 2009 UTC (14 years, 11 months ago) by mglavica
File MIME type: text/plain
File size: 10497 byte(s)
casopisi

1
2 ### LEADER
3
4 ## LDR 05 - n - new
5 marc_leader('05','n');
6
7 ## LDR 06 - a - language material
8 marc_leader('06','a');
9
10 ## LDR 07 - Bibliographic level
11 marc_leader('07','s');
12
13 ## LDR 17 - Encoding level ; 7 - minimal level, u - unknown
14 marc_leader('17','u');
15
16 ## LDR 18 - i - isbd
17 marc_leader('18','i');
18
19 ### 008 - All materials
20 marc_fixed('008','00', '090512'); # 00-05 - Date entered on file
21
22 ## za 008 06 treba i lookup u tablicu u kojoj postoji podatak o tome jel tekuci casopis ili nije?
23 ## c - Continuing resource currently published
24 ## d - Continuing resource ceased publication
25
26 marc_fixed('008','06','|'); # 06 - Type of date/Publication status, s = single know date, | = no attempt to code
27 marc_fixed('008','07','||||');
28 marc_fixed('008','11','||||');
29 marc_fixed('008','15','xx ');
30 # 18-34 - Material specific coded elements
31 # 35-37 - Language
32 marc_fixed('008','38','|'); # 38 - Modified record
33 marc_fixed('008','39','d'); # 39 - Cataloging source
34
35 ### 008 - Continuing resources
36
37 marc_fixed('008','18', '|'); # 18 - Frequency - ovo treba popuniti iz polja 326
38 marc_fixed('008','19', '|'); # 19 - Regularity
39 # 20 - Undefined, ontains a blank (#) or fill character (|)
40
41 marc_fixed('008','21', 'p'); # 21 - Type of continuing resource
42
43 # 22 - Form of original item - blank
44 # 23 - Form of item
45 # 24 - Nature of entire work
46 # 25-27 - Nature of contents
47 # 28 - Government publication
48 # 29 - Conference publication
49 # 30-32 - Undefined
50 # 33 - Original alphabet or script of title
51 # 34 - Entry convention
52 marc_fixed('008','22', ' ');
53 marc_fixed('008','23', ' ');
54 marc_fixed('008','24', '|');
55 marc_fixed('008','25', '|||');
56 marc_fixed('008','28', ' ');
57 marc_fixed('008','29', ' ');
58 marc_fixed('008','33', '|');
59 marc_fixed('008','34', '|');
60
61 ### 022
62
63 marc('022','a',
64 rec('F')
65 );
66
67 ### 035$a
68
69 if ( rec('B') ) {
70 marc('035','a',
71 join_with(' ',
72 'HR-ZaFF',
73 join_with('',
74 suffix('P',
75 lc( rec('A') )
76 ),
77 rec('B')
78 ),
79 )
80 );
81 }
82
83 ### 040
84 # za sve je isti
85 # treba utvrditi toènu oznaku za ustanovu
86
87 marc('040','a',
88 'HR FFZG'
89 );
90
91 marc('040','b',
92 'hrv'
93 );
94
95 marc('040','c',
96 'HR-ZaFF'
97 );
98
99 marc('040','e',
100 'ppiak'
101 );
102
103
104 #_debug(3);
105
106 ## iz nsk
107 #if ( rec('11') ) {
108 #marc('210','a',
109 # lookup(
110 # sub { rec('531','a') },
111 # 'nsk','bbaza',
112 # sub { rec('011','a') },
113 # sub { rec('11') },
114 # )
115 #);
116 #}
117
118 # ### 222 indikatori
119 # # drugi indikator prema èlanu
120 #
121 # marc_indicators('222',' ','0');
122 #
123 # ### 222 - Key title
124 # # pronaæi prikadan izvor podataka - nsk baza, issn baze
125 #
126 # marc('222','a',
127 # rec('530')
128 # );
129 #
130 # # iz nsk:
131 # #if ( rec('11') ) {
132 # #marc('222','a',
133 # # lookup(
134 # # sub { rec('530','a') },
135 # # 'nsk','bbaza',
136 # # sub { rec('011','a') },
137 # # sub { rec('11') },
138 # # )
139 # #);
140 # #}
141
142 ### 245 indikatori
143 # generiraju se prema èlanu, trebalo bi mo¾da i prema jeziku (jezika nema uvijek).
144 # potrebna naknadna kontrola
145
146 marc_indicators('245', 0, 0);
147
148 if ( ( rec('E') =~ m/^Die /) ||
149 ( rec('E') =~ m/^Das /) ||
150 ( rec('E') =~ m/^Der /) ||
151 ( rec('E') =~ m/^Les /) ||
152 ( rec('E') =~ m/^The /) ) {
153 marc_indicators('245', 0, 4);
154
155 }
156
157 if ( ( rec('E') =~ m/^Un /) ||
158 ( rec('E') =~ m/^An /) ||
159 ( rec('E') =~ m/^La /) ||
160 ( rec('E') =~ m/^Le /) ||
161 ( rec('E') =~ m/^Il /) ) {
162 marc_indicators('245', 0, 3);
163 }
164
165 if ( ( rec('E') =~ m/^A /) ||
166 ( rec('E') =~ m/^L'/) ) {
167 marc_indicators('245', 0, 2);
168 }
169
170 ### 245
171
172 if ( rec('E') =~ m/:/ ) {
173 marc('245','a',
174 suffix(' :',
175 regex('s/(^.*):.*/$1/',
176 rec('E')
177 )
178 )
179 );
180 marc('245','b',
181 regex('s/^.*: (.*)/$1/',
182 rec('E')
183 )
184 );
185 } else {
186 marc('245','a',
187 rec('E')
188 );
189 }
190
191 # ### 246 inikatori
192 # # prema jeziku - provjera
193 #
194 # if ( ( rec('200','a') =~ m/^Die /) ||
195 # ( rec('200','a') =~ m/^Das /) ||
196 # ( rec('200','a') =~ m/^The /) ) {
197 # marc_indicators('246', 0, 4);
198 # } else {
199 # marc_indicators('246', 0, 0);
200 # }
201 #
202 # ### 246
203 # # povuæi podatke iz prikladnog izvora (nsk, issn)
204 #
205 # marc('246','a',
206 # rec('532')
207 # );
208 #
209 # ## iz nsk:
210 # # marc('246','a',
211 # # lookup(
212 # # sub { rec('532','a') },
213 # # 'nsk','bbaza',
214 # # sub { rec('011','a') },
215 # # sub { rec('11') },
216 # # )
217 # # );
218 #
219 # #_debug(0);
220 #
221 #
222 # ## 260 - izdavanje
223 # # provjeriti interpunkcije !!, u NSK nesto ne stima
224 #
225 # marc_original_order('260','210');
226 #
227 # ## lookup u NSK:
228 # # if ( rec('11') ) {
229 # # marc_repeatable_subfield('260','a',
230 # # lookup(
231 # # sub { rec('210','a') },
232 # # 'nsk','bbaza',
233 # # sub { rec('011','a') },
234 # # sub { rec('11') },
235 # # )
236 # # );
237 # # marc_repeatable_subfield('260','b',
238 # # lookup(
239 # # sub { rec('210','c') },
240 # # 'nsk','bbaza',
241 # # sub { rec('011','a') },
242 # # sub { rec('11') },
243 # # )
244 # # );
245 # # marc('260','c',
246 # # lookup(
247 # # sub { rec('210','d') },
248 # # 'nsk','bbaza',
249 # # sub { rec('011','a') },
250 # # sub { rec('11') },
251 # # )
252 # # );
253 # # } else {
254 # # marc_original_order('260', '210');
255 # # }
256 #
257 #
258 # ### 300
259 #
260 # marc('300','a',
261 # suffix(
262 # ( rec('215','a') && rec('215','c') ) ? ' : ' :
263 # ( rec('215','a') && rec('215','d') ) ? ' ; ' :
264 # ( rec('215','a') && rec('215','e') ) ? ' + ' :
265 # ' ',
266 # rec('215','a')
267 # )
268 # );
269 #
270 # marc('300','b',
271 # suffix(
272 # ( rec('215','c') && rec('215','d') ) ? ' ; ' :
273 # ( rec('215','c') && rec('215','e') ) ? ' + ' :
274 # ' ',
275 # rec('215','c')
276 # )
277 # );
278 #
279 # marc('300','c',
280 # suffix(
281 # rec('215','e') ? ' + ' :
282 # ' ',
283 # rec('215','d')
284 # )
285 # );
286 #
287 # marc('300','e',
288 # rec('215','e')
289 # );
290 #
291 # ### 310 - current stated publication frequency
292 # # potrebno ujednaèiti, koristi se i u polju 008
293 #
294 # marc('310','a',
295 # rec('326')
296 # );
297 #
298 # ### 321 - former frequency of either an item or an update to an item when a current frequency is contained in field 310
299 #
300 # # marc('321','a',
301 # # ovo bi trebalo procitati iz NSK konvertiranih podataka
302 # #);
303 #
304 # marc_indicators('362', 0, ' ');
305 #
306 # ### 362
307 # #
308 # if ( rec('207','a') ) {
309 # marc('362','a',
310 # rec('207','a'),
311 # );
312 # }
313 #
314 # ## lookup iz nsk
315 # #else {
316 # # if ( rec('11') ) {
317 # # marc('362','a',
318 # # lookup(
319 # # sub { rec('207','a') },
320 # # 'nsk','bbaza',
321 # # sub { first( rec('011','a') ) },
322 # # sub { rec('11') },
323 # # )
324 # # );
325 # # }
326 # #}
327 #
328 # ### 490 ind.
329 #
330 # marc_indicators('490', '0', ' ');
331 #
332 # ### 490
333 #
334 # marc('490','a',
335 # join_with('. ',
336 # join_with(' / ',
337 # join_with(' : ',
338 # join_with(' = ',
339 # rec('225','a'),
340 # rec('225','d')
341 # ),
342 # rec('225','e')
343 # ),
344 # join_with(' ; ',
345 # rec('225','f'),
346 # rec('225','g')
347 # ),
348 # ),
349 # rec('225','h')
350 # )
351 # );
352 #
353 # marc('490','v',
354 # rec('225','v')
355 # );
356 #
357 # marc('490','x',
358 # rec('225','x')
359 # );
360 #
361 # if ( rec('11') ) {
362 # marc('999','a',
363 # lookup(
364 # sub { rec('110','a'), },
365 # 'nsk','bbaza',
366 # sub { rec('011','a') },
367 # sub { rec('11') }
368 # )
369 # );
370 # }
371 #
372 #
373 # #marc('998','a',
374 # # lookup(
375 # # sub { rec('H') },
376 # # 'ffsf','xls',
377 # # sub { rec('A') },
378 # # sub { $id },
379 # # ),
380 # #);
381
382
383 ### 500
384 # lookup
385 #
386 #
387 # marc('500','a',
388 # rec(''),
389 # );
390 #
391 #
392 # ### 534 - napomena o pretisku
393 #
394 # marc('534','a',
395 # rec('324')
396 # );
397 #
398 # ## potencijalno za izvuæi iz NSK
399 # #if ( rec('11') ) {
400 # #marc('546','a',
401 # # lookup(
402 # # sub { rec('302','a') },
403 # # 'nsk','bbaza',
404 # # sub { rec('011','a') },
405 # # sub { rec('11') },
406 # # )
407 # #);
408 # #
409 # #marc('550','a',
410 # # lookup(
411 # # sub { rec('314','a') },
412 # # 'nsk','bbaza',
413 # # sub { rec('011','a') },
414 # # sub { rec('11') },
415 # # )
416 # #);
417 # #
418 # #marc('555','a',
419 # # lookup(
420 # # sub { rec('320','a') },
421 # # 'nsk','bbaza',
422 # # sub { rec('011','a') },
423 # # sub { rec('11') },
424 # # )
425 # #);
426 # #
427 # #
428 # ## marc('562','a',
429 # ## lookup(
430 # ## sub { rec('316','a') },
431 # ## 'nsk','bbaza',
432 # ## sub { rec('011','a') },
433 # ## sub { rec('11') },
434 # ## )
435 # ## );
436 # #}
437
438
439 if ( rec('B') ) {
440 marc('996','a',
441 lc( rec('A') )
442 );
443
444 marc('996','b',
445 'peri'
446 );
447
448 marc('996','c',
449 rec('B')
450 );
451 }
452
453 #
454 # ### 653 indikatori
455 # marc_indicators('653', 0, ' ');
456 #
457 # ### 653
458 #
459 # marc('653','a',
460 # rec('610')
461 # );
462 #
463 # # marc_indicators('655', ' ', 4);
464 # # marc('655','a',
465 # # lookup(
466 # # sub { rec('608','a') },
467 # # 'nsk','bbaza',
468 # # sub { rec('011','a') },
469 # # sub { rec('11') },
470 # # )
471 # # );
472 #
473 #
474 # #_debug(2);
475 #
476 # ### 700 indikatori
477 #
478 # marc_indicators('700', 1, ' ');
479 #
480 # ### 700
481 #
482 # marc('700','a',
483 # rec('702','a'),
484 # );
485 #
486 # marc('700','a',
487 # join_with(', ',
488 # rec('702','c'),
489 # rec('702','d')
490 # )
491 # );
492 #
493 #
494 # #_debug(0);
495 #
496 # ### 710 indikatori
497 #
498 # marc_indicators('710', '2', ' ');
499 #
500 # ### 710
501 # marc('710','a',
502 # rec('710','a')
503 # );
504 #
505 # ### 770 indikatori
506 #
507 # marc_indicators('770', 0, ' ');
508 #
509 # ### 770
510 # marc('770','t',
511 # rec('421','a'),
512 # );
513 #
514 # ### 772 indikatori
515 # marc_indicators('772', 0, ' ');
516 #
517 # ### 772
518 # marc('772','t',
519 # rec('422','a'),
520 # );
521 #
522 # ### 773 indikatori
523 #
524 # if ( rec('225','a') ) {
525 #
526 # marc_indicators('773', 0, ' ');
527 #
528 # ### 773
529 # ## da li je bitan redoslijed potpolja?
530 #
531 # marc('773','w',
532 # lookup(
533 # sub { rec('000') },
534 # 'ffsf','peri',
535 # sub { rec('200','a') },
536 # sub {
537 # regex('s/ ; //g',
538 # rec('225','a')
539 # )
540 # },
541 # )
542 # );
543 #
544 # }
545 #
546 #
547 # ### 777 indikatori
548 #
549 # marc_indicators('777', 0, ' ');
550 #
551 # ### 777
552 #
553 # marc('777','t',
554 # rec('423','a'),
555 # );
556 #
557 # ### 780 indikatori
558 #
559 # marc_indicators('780', 0, 0);
560 #
561 # ### 780
562 # marc('780','t',
563 # rec('430','a'),
564 # );
565 #
566 # ### 785 indikatori
567 #
568 # marc_indicators('785', 0, 0);
569 #
570 # ### 785
571 # marc('785','t',
572 # rec('440','a'),
573 # );
574 #
575 # ### 852
576 #
577 # marc('852','j',
578 # join_with(' ',
579 # rec('990')
580 # )
581 # );
582 #
583 # ### 876
584 #
585 # marc('876','a',
586 # rec('991','a')
587 # );
588
589 marc('942','d',
590 rec('C')
591 );
592
593
594
595 #
596 # ### 992
597 #
598 # marc('992','a',
599 # join_with(' ; ',
600 # rec('992')
601 # )
602 # );
603 #
604 #
605 ### polja za probu
606
607
608 #marc('998','a',
609 # lookup(
610 # sub { rec('200','a') },
611 # 'ffiz','peri',
612 # sub { rec('200','a'), },
613 # sub { rec('225','a'), }
614 # )
615 #);
616
617
618 # marc('997','a',
619 # sort(
620 # lookup(
621 # sub { rec('001') },
622 # 'nsk','bbaza',
623 # sub { rec('011','a') },
624 # sub { rec('11') },
625 # )
626 # )
627 # );
628 #
629 # marc('998','a',
630 # sort(
631 # lookup(
632 # sub { rec('001') },
633 # 'nsk','bbaza',
634 # sub { first(rec('200','a')) . first(rec('200','e')) },
635 # sub { rec('200','a') . rec('200','e') },
636 # )
637 # )
638 # );
639 #
640 # marc('998','a',
641 # sort(
642 # lookup(
643 # sub { rec('001') },
644 # 'nsk','bbaza',
645 # sub { first(rec('200','a')) },
646 # sub { rec('200','a') },
647 # )
648 # )
649 # );
650

  ViewVC Help
Powered by ViewVC 1.1.26