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

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

revision 545 by dpavlin, Thu Jun 29 21:53:00 2006 UTC revision 574 by dpavlin, Mon Jul 3 21:08:07 2006 UTC
# Line 1  Line 1 
1  marc21('001',  # Leader
2    
3    if ( rec('999') && first(rec('999')) =~ m/pregledan/i) {
4            marc_leader('05','c');
5    } else {
6            marc_leader('05','n');
7    }
8    
9    marc_leader('06','a');
10    
11    marc_leader('07','m');
12    
13    marc_leader('18','i');
14    
15    if ( rec('230') ) {
16            marc_leader('19','r');
17    }
18    
19    
20    
21    # greška! - 000 se ne zapisuje u marc:
22    
23    marc('001',
24          rec('000')          rec('000')
25  );  );
26    
27  marc21('020','a',  marc('020','a',
28          rec('010')          rec('010')
29  );  );
30    
31  marc21('101','a',  if (rec('300') && first(rec('300')) =~ m/prijevod/i) {
32            marc_indicators('041', 1, ' ');
33    } else {
34            marc_indicators('041', 0, ' ');
35    }
36    
37    marc_repeatable_subfield('041','a',
38          rec('101')          rec('101')
39  );  );
40    
41  marc21('245','a',  marc_indicators('245', 0, 0);
42    marc('245','a',
43          rec('200','a')          rec('200','a')
44  );  );
45    
46  marc21('245','b',  marc('245','b',
47          join_with(' : ',          join_with(' : ',
48                  rec('200','d'),                  rec('200','d'),
49                  rec('200','e')                  rec('200','e')
50          )          )
51  );  );
52    
53  marc21('245','c',  marc('245','c',
54          join_with(' ; ',          join_with(' ; ',
55                  rec('200','f'),                  rec('200','f'),
56                  rec('200','g')                  rec('200','g')
57          )          )
58  );  );
59    
60  marc21('250','a',  marc('250','a',
61          rec('205','a')          rec('205','a')
62  );  );
63    
64  marc21('260','a',  marc_compose('260',
65          rec('210','a')          'a', split_rec_on('210','a', qr/\s*;\s*/, 1),
66  );          'b', first(rec('210','c')),
67            'a', split_rec_on('210','a', qr/\s*;\s*/, 2),
68  marc21('260','b',          'c', first(rec('210','d')),
         rec('210','c')  
 );  
   
 marc21('260','c',  
         rec('210','d')  
69  );  );
70    
71  marc21('300','a',  marc('300','a',
72          rec('215','a')          rec('215','a')
73  );  );
74    
75  marc21('300','b',  marc('300','b',
76          rec('215','c')          rec('215','c')
77  );  );
78    
79  marc21('300','c',  marc('300','c',
80          rec('215','d')          rec('215','d')
81  );  );
82    
83  marc21('300','e',  marc('300','e',
84          rec('215','e')          rec('215','e')
85  );  );
86    
87  marc21('490','a',  
88    marc_indicators('490', 1, ' ');
89    marc('490','a',
90          join_with(' = ',          join_with(' = ',
91                  rec('225','a'),                  rec('225','a'),
92                  join_with(" :  ",                  join_with(" :  ",
# Line 73  marc21('490','a', Line 99  marc21('490','a',
99          )          )
100  );  );
101    
102  marc21('490','v',  marc('490','v',
103          rec('225','v')          join_with(', ',
104                    rec('225','v'),
105                    rec('225','w')
106            )
107  );  );
108    
109  marc21('500','a',  marc('500','a',
110          rec('300')          rec('300')
111  );  );
112    
113  marc21('504','a',  marc('500','a',
114            rec('314')
115    );
116    
117    marc('504','a',
118          rec('320')          rec('320')
119  );  );
120    
121  marc21('655','a',  marc('501','a',
122            rec('327')
123    );
124    
125    marc('520','a',
126            rec('330')
127    );
128    
129    # možda i polje 520y - jezik napomene ako je uvijek isti jezik
130    
131    marc_indicators('655', ' ', 4);
132    marc('655','a',
133            rec('608')
134    );
135    
136    marc_indicators('653', ' ', ' ');
137    marc('653','a',
138          rec('610')          rec('610')
139  );  );
140    
141  marc21('100','a',  marc('080','a',
142            rec('675','a')
143    );
144    
145    # podpolja c, d ... - što s njima?
146    
147    marc('084','a',
148            rec('686')
149    );
150    
151    marc_indicators('100', 1, ' ');
152    marc('100','a',
153          join_with(', ',          join_with(', ',
154                  rec('700', 'a'),                  rec('700', 'a'),
155                  rec('700', 'b')                  rec('700', 'b')
156          )          )
157  );  );
158    
159  marc21('700','a',  
160    marc_indicators('700', 1, ' ');
161    marc('700','a',
162          join_with(', ',          join_with(', ',
163                  rec('701', 'a'),                  rec('701', 'a'),
164                  rec('701', 'b')                  rec('701', 'b')
# Line 104  marc21('700','a', Line 166  marc21('700','a',
166  );  );
167    
168  if ( rec('701') ) {  if ( rec('701') ) {
169          marc21('700','4',  marc('700','4',
170                  '070'          'aut'
171          );  );
172  }  }
173    
174  marc21('700','a',  marc('700','a',
175          join_with(', ',          join_with(', ',
176                  rec('702','a'),                  rec('702','a'),
177                  rec('702','b')                  rec('702','b')
178          )          )
179  );  );
180    
181  if ( rec('702') ) {  # podesiti podpolje 4 na editore nije dobra ideja
182          marc21('700','4',  #
183                  '340'  # if ( rec('702') ) {
184          );  #       marc('700','4',
185    #               '340'
186    #       );
187    # }
188    
189    _debug( 2 );
190    
191    if ( rec('710','f') ) {
192    
193    marc_indicators('111', 2, ' ');
194    marc('111','a',
195            rec('710','a')
196    );
197    
198    marc('111','c',
199            rec('710','e')
200    );
201    
202    marc('111','d',
203            rec('710','f')
204    );
205    
206    marc('111','e',
207            rec('710','b')
208    );
209    
210    marc('111','n',
211            rec('710','d')
212    );
213    
214    
215    } else {
216            
217    marc_indicators('110', 2, ' ');
218    marc('110','a',
219            rec('710','a')
220    );
221    
222    marc('110','c',
223            rec('710','c')
224    );
225    
226  }  }
227    
228    _debug( 0 );
229    
230    # zapisi za duplanje
231    
232    if ( rec('230') ) {
233    
234    marc_duplicate();
235    
236    marc('245','a',
237            rec('230','a')
238    );
239    
240    marc('245','b',
241            rec('230','e')
242    );
243    
244    marc('245','c',
245            rec('230','f')
246    );
247    
248    marc('245','n',
249            rec('230','v')
250    );
251    
252    }

Legend:
Removed from v.545  
changed lines
  Added in v.574

  ViewVC Help
Powered by ViewVC 1.1.26