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

Annotation of /trunk/conf/normalize/mapping.pl

Parent Directory Parent Directory | Revision Log Revision Log


Revision 562 - (hide annotations)
Sun Jul 2 16:14:41 2006 UTC (17 years, 10 months ago) by dpavlin
File MIME type: text/plain
File size: 2596 byte(s)
added marc_compose to specify manually subfield order in MARC and
split_rec_on to split single field into parts based on regex

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

  ViewVC Help
Powered by ViewVC 1.1.26