X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=conf%2Fhpm%2Fknjige.pl;h=f4d88ee8377d8e30edfdce7201f9bdc068330384;hb=84b62bfdee05a3eb1f5b221517fdf9ac38765a0a;hp=17f65965e464f5aed278b322c72e334c2dcd9c59;hpb=fe4622834656fd74842df0b8e11f19ed48662c5c;p=webpac2 diff --git a/conf/hpm/knjige.pl b/conf/hpm/knjige.pl index 17f6596..f4d88ee 100644 --- a/conf/hpm/knjige.pl +++ b/conf/hpm/knjige.pl @@ -177,7 +177,7 @@ marc('035','a', join_with('', # config('input normalize path'), # config('name'), - '(HR-ZaHPM)', + '(HR-ZaHPM)isis', # config(), # config('input name'), # id(), @@ -202,19 +202,6 @@ marc('040','e', 'ppiak' ); -### 041 - indikatori -## pretpostavke o indikatorima -## 1. Ako postoji polje 300 i ono sadrzi /Prijevod/ ili /Izv. stv. nasl./, i1 = 1 -## (Da li je napomena uvijek pisana?) -## 2. Podatak o prevodiocu u 200g. Problem: razliciti oblici rijeci, razliciti jezici. -## 3. Ako u UDK oznaci postoji "=", bez zagrada, onda je to prijevod -## (ako postoje zagrade pr. 94(=411.16) onda su to pomocne oznake) -## pr. 821.111-2=163.42 je prijevod engleske drame na HR. -## to ima samo za knjizevna djela, eseje.... -## ovo treba kasnije ispravljati - -#if ( rec('675') =~ m/\d=\d/ ) ? - ### 041 ## ponovljivo polje (101) konvertira se u ponovljivo potpolje (041a) ## koristi se kad ima vise od jednog jezika, ili kad se radi o prijevodu @@ -222,12 +209,12 @@ marc('040','e', if ( ( count( rec('101','a') ) > 1 ) || ( rec('101','b') ) || ( rec('101','h') ) ) { - marc_original_order('041','101'); if ( ( grep( m/prijevod/i, rec('300') ) ) || ( rec('101','h') ) ) { - marc_indicators('041', 1, ' '); + marc_indicators('101', 1, ' '); } else { - marc_indicators('041', ' ', ' '); + marc_indicators('101', ' ', ' '); } + marc_original_order('041','101'); } @@ -328,7 +315,7 @@ if ( rec('710','d') || rec('710','e') || rec('710','f') ) { my $titleind1; -if ( rec('700') || rec('710') ) { +if ( rec('700') || rec('710') || rec('711') ) { $titleind1 = 1; } else { $titleind1 = 0; @@ -371,19 +358,20 @@ marc_compose('245', ( rec('200','d') ) ? ' =' : ( rec('200','e') ) ? ' :' : ( rec('200','k') ) ? ' ;' : + ( rec('200','h') ) ? '.' : '.', rec('200','a'), ), 'b', suffix( - ( rec('200','d') && rec('200','f') ) ? ' /' : - ( rec('200','d') && rec('200','c') ) ? '.' : + ( rec('200','d') && ! rec('200','f') ) ? '.' : + ( rec('200','d') && ! rec('200','f') ) ? '.' : '', rec('200','d'), ), 'b', suffix( ( rec('200','e') && rec('200','f') ) ? ' /' : - ( rec('200','e') && rec('200','c') ) ? '.' : - '', + ( rec('200','e') && rec('200','h') && ! rec('200','f') ) ? '.' : + '.', rec('200','e'), ), 'b', suffix( @@ -392,6 +380,19 @@ marc_compose('245', '', rec('200','k'), ), + 'n', suffix( + ( rec('200','h') && rec('200','f') ) ? ' /' : + ( rec('200','h') && rec('200','i') ) ? '.' : + ( rec('200','h') && ! ( rec('200','i') || rec('200','f') ) ) ? '.' : + '', + rec('200','h'), + ), + 'p', suffix( + ( rec('200','i') && rec('200','f') ) ? ' /' : + ( rec('200','i') && ! rec('200','f') ) ? '.' : + '', + rec('200','i'), + ), 'c', suffix( ( rec('200','f') && rec('200','c') ) ? '. ' : '', @@ -721,165 +722,6 @@ marc_compose('711', } - -### 740 - Added Entry - Uncontrolled Related/Analytical Title -## raspraviti -## nadopuniti prvi indikator prema clanovima -marc_indicators('740', '0', ' '); - -# if ( ! rec('464') ) { -# marc('740','a', -# rec('200','c') -# ); - -#marc('740','a', -# rec('200','k') -#); - -# } else { - -#marc('740','a', -# rec('464','a') -#); - -# }; - -### 760 w --------------------------------------------- -## generiranje zapisa o nakladnickoj cjelini i povezivanje podredenog zapisa s nadredenim - -#if ( -# rec('225','a') # da li je nakladnicka cjelina? -#) { - -#my $series_key = -#join_with('', -# rec('225','a'), -# rec('210','a'), -# rec('210','b'), -#); -# -#my $series = get( $series_key ); -# -#if ($series) { -# warn "nije novi"; -#} else { -# -#$series = join_with('', -# uc( config() ), -# ' LS', -# rec('000') -#); -# -#set( $series_key => $series ); -# -#} # $series -#} # nakladnicka cjelina -# -#my $series_key = join_with('', -# rec('225','a'), -# rec('210','a'), -# rec('210','b'), -#); -# -#if ($series_key) { -# -# marc_indicators('760', 0, ' '); -# -# marc('760','t', -# rec('225','a') -# ); -# marc('760','w', -# get( $series_key ) -# ); -#} - -# ## testing -# -# my $dup_key = join_with('', -# rec('200','a'), -#); -# -#if ($dup_key) { -# marc('995','a', -# get( $dup_key ) -# ); -#} -# -# -# marc_indicators('776', 0, ' '); -# -# marc('776','a', -# rec('452','1') -# ); -# -# ------------------------------------------------------------------- - -### 774 - Constituent Item Entry - to bi trebali koristiti ali ne koristimo jer NSK to koristi za nesto drugo -### 787 - Nonspecific Relationship Entry - -#marc_indicators('787','0',' '); -# -#marc_compose('787', -# 'g', rec('230','v'), -# 't', rec('230','a'), -# 'b', rec('240','a'), -# 'd', rec('250','a'), -# 'd', rec('250','d'), -# 'h', rec('260','a'), -# 'k', rec('270','a'), -# 'n', join_with('. - ', -# rec('280'), -# ), -# 'x', join_with(', ', -# rec('290'), -# ) -#); -#marc_compose('787', -# 'g', rec('231','v'), -# 't', rec('231','a'), -# 'b', rec('241','a'), -# 'd', rec('251','a'), -# 'd', rec('251','d'), -# 'h', rec('261','a'), -# 'k', rec('271','a'), -# 'n', join_with('. - ', -# rec('281'), -# ), -# 'x', join_with(', ', -# rec('291'), -# ) -#); -#marc_compose('787', -# 'g', rec('232','v'), -# 't', rec('232','a'), -# 'b', rec('242','a'), -# 'd', rec('252','a'), -# 'd', rec('252','d'), -# 'h', rec('262','a'), -# 'k', rec('272','a'), -# 'n', join_with('. - ', -# rec('282'), -# ), -# 'x', join_with(', ', -# rec('292'), -# ) -#); -#marc_compose('787', -# 'g', rec('233','v'), -# 't', rec('233','a'), -# 'b', rec('243','a'), -# 'd', rec('253','a'), -# 'h', rec('263','a'), -# 'k', rec('273','a'), -# 'n', join_with('. - ', -# rec('283'), -# ), -# 'x', join_with(', ', -# rec('293'), -# ) -#); - - ### 852 - ne koristimo, koristimo 942 i 952 ### 876 - item information - basic bibliographic unit (R) @@ -888,59 +730,58 @@ marc_indicators('740', '0', ' '); # rec('991','t'), #); -### 886 - former marc -# inicijale treba prebaciti u neko lokalno polje, a ovo polje nam ne treba -# -# marc_indicators('886', 2, ' '); -# marc('886','2', -# 'ffmarc' -# ); -# marc('886','a', -# '994' -# ); -# marc('886','b', -# join_with(''. -# '##^a', -# join_with('', -# prefix('^a', -# rec('994','a'), -# ), -# prefix('^b', -# rec('994','b') -# ) -# ) -# ) -#); ### KOHA items - marc('942','b', 'LIB' ); -marc('942','c', - 'K' -); +if ( rec('245') =~ m/Elektronička građa/ ) { + marc('942','c', + 'CD' + ); +} elsif ( rec('610') =~ m/disertacija/ ) { + marc('942','c', + 'DIS' + ); +} elsif ( rec('610') =~ m/magistarski/ ) { + marc('942','c', + 'MAG' + ); +} elsif ( rec('990') =~ m/(separat|posebni)/ ) { + marc('942','c', + 'SEP' + ); +} elsif ( rec('990') =~ m/starih/ ) { + marc('942','c', + 'OLD' + ); +} else { + marc('942','c', + 'BOOK' + ); +} + +# HPM local -marc('952','a', - 'HPM' +marc('991','a', + rec('991','b') ); -marc('952','b', - 'HPM' +marc('992','a', + rec('992') +); +marc('993','a', + rec('990') ); + + +# Items + marc('952','e', rec('991','a') ); marc('952','t', rec('991','b') ); -marc('952','o', - rec('990') -); - - - - - } # polje 200a