1 <?xml version=
"1.0" encoding=
"UTF-8"?>
3 <!DOCTYPE stylesheet [
<!ENTITY nbsp
" " >]
>
5 <!-- $Id: MARC21slim2DC.xsl,v 1.1 2003/01/06 08:20:27 adam Exp $ -->
6 <xsl:stylesheet version=
"1.0"
7 xmlns:
marc=
"http://www.loc.gov/MARC21/slim"
8 xmlns:
items=
"http://www.koha-community.org/items"
9 xmlns:
xsl=
"http://www.w3.org/1999/XSL/Transform"
10 exclude-result-prefixes=
"marc items">
11 <xsl:import href=
"NORMARCslimUtils.xsl"/>
12 <xsl:output method =
"xml" indent=
"yes" omit-xml-declaration =
"yes" />
13 <xsl:key name=
"item-by-status" match=
"items:item" use=
"items:status"/>
14 <xsl:key name=
"item-by-status-and-branch" match=
"items:item" use=
"concat(items:status, ' ', items:homebranch)"/>
16 <xsl:template match=
"/">
17 <xsl:apply-templates/>
19 <xsl:template match=
"marc:record">
21 <xsl:variable name=
"leader" select=
"marc:leader"/>
22 <xsl:variable name=
"leader6" select=
"substring($leader,7,1)"/>
23 <xsl:variable name=
"leader7" select=
"substring($leader,8,1)"/>
24 <xsl:variable name=
"biblionumber" select=
"marc:datafield[@tag=999]/marc:subfield[@code='c']"/>
25 <xsl:variable name=
"isbn" select=
"marc:datafield[@tag=020]/marc:subfield[@code='a']"/>
26 <xsl:variable name=
"controlField007" select=
"marc:controlfield[@tag=007]"/>
27 <xsl:variable name=
"controlField007-00" select=
"substring($controlField007,1,1)"/>
28 <xsl:variable name=
"controlField007-01" select=
"substring($controlField007,2,1)"/>
29 <xsl:variable name=
"controlField008" select=
"marc:controlfield[@tag=008]"/>
30 <xsl:variable name=
"field019b" select=
"marc:datafield[@tag=019]/marc:subfield[@code='b']"/>
31 <xsl:variable name=
"typeOf008">
32 <!-- Codes with upper case first letter below are from the NORMARC standard, lower case first letter are made up. -->
34 <xsl:when test=
"$field019b='b' or $field019b='k' or $field019b='l' or $leader6='b'">Mon
</xsl:when>
35 <xsl:when test=
"$field019b='e' or contains($field019b,'ec') or contains($field019b,'ed') or contains($field019b,'ee') or contains($field019b,'ef') or $leader6='g'">FV
</xsl:when>
36 <xsl:when test=
"$field019b='c' or $field019b='d' or contains($field019b,'da') or contains($field019b,'db') or contains($field019b,'dc') or contains($field019b,'dd') or contains($field019b,'dg') or contains($field019b,'dh') or contains($field019b,'di') or contains($field019b,'dj') or contains($field019b,'dk') or $leader6='c' or $leader6='d' or $leader6='i' or $leader6='j'">Mus
</xsl:when>
37 <xsl:when test=
"$field019b='a' or contains($field019b,'ab') or contains($field019b,'aj') or $leader6='e' or $leader6='f'">Kar
</xsl:when>
38 <xsl:when test=
"$field019b='f' or $field019b='i' or contains($field019b,'ib') or contains($field019b,'ic') or contains($field019b,'fd') or contains($field019b,'ff') or contains($field019b,'fi') or $leader6='k'">gra
</xsl:when>
39 <xsl:when test=
"$field019b='g' or contains($field019b,'gb') or contains($field019b,'gd') or contains($field019b,'ge') or $leader6='m'">Fil
</xsl:when>
40 <xsl:when test=
"$leader6='o'">kom
</xsl:when>
41 <xsl:when test=
"$field019b='h' or $leader6='r'">trd
</xsl:when>
42 <xsl:when test=
"$field019b='j' or $leader6='a'">
44 <xsl:when test=
"$leader7='a' or $leader7='c' or $leader7='m' or $leader7='p'">Mon
</xsl:when>
45 <xsl:when test=
"$field019b='j' or $leader7='b' or $leader7='s'">Per
</xsl:when>
50 <xsl:variable name=
"controlField008-23" select=
"substring($controlField008,24,1)"/>
51 <xsl:variable name=
"controlField008-21" select=
"substring($controlField008,22,1)"/>
52 <xsl:variable name=
"controlField008-22" select=
"substring($controlField008,23,1)"/>
53 <xsl:variable name=
"controlField008-24" select=
"substring($controlField008,25,4)"/>
54 <xsl:variable name=
"controlField008-26" select=
"substring($controlField008,27,1)"/>
55 <xsl:variable name=
"controlField008-29" select=
"substring($controlField008,30,1)"/>
56 <xsl:variable name=
"controlField008-34" select=
"substring($controlField008,35,1)"/>
57 <xsl:variable name=
"controlField008-33" select=
"substring($controlField008,34,1)"/>
58 <xsl:variable name=
"controlField008-30-31" select=
"substring($controlField008,31,2)"/>
60 <xsl:variable name=
"physicalDescription">
62 <!-- Why are these treated specially?
64 <xsl:if test="$typeOf008='CF' and marc:controlfield[@tag=007][substring(.,12,1)='a']">
67 <xsl:if test="$typeOf008='CF' and marc:controlfield[@tag=007][substring(.,12,1)='b']">
70 <xsl:if test="$typeOf008='CF' and marc:controlfield[@tag=007][substring(.,12,1)='d']">
71 digitized other analog
74 <xsl:variable name="check008-23">
75 <xsl:if test="$typeOf008='BK' or $typeOf008='MU' or $typeOf008='CR' or $typeOf008='MX'">
76 <xsl:value-of select="true()"></xsl:value-of>
79 <xsl:variable name="check008-29">
80 <xsl:if test="$typeOf008='MP' or $typeOf008='VM'">
81 <xsl:value-of select="true()"></xsl:value-of>
86 <xsl:when test="($check008-23 and $controlField008-23='f') or ($check008-29 and $controlField008-29='f')">
89 <xsl:when test="($controlField008-23=' ' and ($leader6='c' or $leader6='d')) or (($typeOf008='BK' or $typeOf008='CR') and ($controlField008-23=' ' or $controlField008='r'))">
92 <xsl:when test="$leader6 = 'm' or ($check008-23 and $controlField008-23='s') or ($check008-29 and $controlField008-29='s')">
95 <xsl:when test="($check008-23 and $controlField008-23='b') or ($check008-29 and $controlField008-29='b')">
98 <xsl:when test="($check008-23 and $controlField008-23='a') or ($check008-29 and $controlField008-29='a')">
105 <!-- 019$b from BSMARC -->
107 <xsl:if test=
"$field019b">
108 <xsl:if test=
"$field019b='a'"> Kartografisk materiale
</xsl:if>
109 <xsl:if test=
"contains($field019b,'ab')"> Atlas
</xsl:if>
110 <xsl:if test=
"contains($field019b,'aj')"> Kart
</xsl:if>
111 <xsl:if test=
"$field019b='b'"> Manuskripter
</xsl:if>
112 <xsl:if test=
"$field019b='c'"> Musikktrykk
</xsl:if>
113 <xsl:if test=
"$field019b='d'"> Lydopptak
</xsl:if>
114 <xsl:if test=
"contains($field019b,'da')"> Grammofonplate
</xsl:if>
115 <xsl:if test=
"contains($field019b,'db')"> Kassett
</xsl:if>
116 <xsl:if test=
"contains($field019b,'dc')"> Kompaktplate
</xsl:if>
117 <xsl:if test=
"contains($field019b,'dd')"> Avspiller med lydfil (eks. Digibøker)
</xsl:if>
118 <xsl:if test=
"contains($field019b,'dg')"> Musikk
</xsl:if>
119 <xsl:if test=
"contains($field019b,'dh')"> Språkkurs
</xsl:if>
120 <xsl:if test=
"contains($field019b,'di')"> Lydbok
</xsl:if>
121 <xsl:if test=
"contains($field019b,'dj')"> Annen tale/annet
</xsl:if>
122 <xsl:if test=
"contains($field019b,'dk')"> Kombidokument
</xsl:if>
123 <xsl:if test=
"$field019b='e'"> Film og video
</xsl:if>
124 <xsl:if test=
"contains($field019b,'ec')"> Filmspole
</xsl:if>
125 <xsl:if test=
"contains($field019b,'ed')"> Videokassett (VHS)
</xsl:if>
126 <xsl:if test=
"contains($field019b,'ee')"> Videoplate (DVD)
</xsl:if>
127 <xsl:if test=
"contains($field019b,'ef')"> Blu-ray-plate
</xsl:if>
128 <xsl:if test=
"$field019b='f'"> Grafisk materiale
</xsl:if>
129 <xsl:if test=
"contains($field019b,'fd')"> Dias
</xsl:if>
130 <xsl:if test=
"contains($field019b,'ff')"> Fotografi
</xsl:if>
131 <xsl:if test=
"contains($field019b,'fi')"> Kunstreproduksjon
</xsl:if>
132 <xsl:if test=
"$field019b='g'"> Elektroniske ressurser
</xsl:if>
133 <xsl:if test=
"contains($field019b,'gb')"> Diskett
</xsl:if>
134 <xsl:if test=
"contains($field019b,'gd')"> Optiske lagringsmedia (CD-ROM)
</xsl:if>
135 <xsl:if test=
"contains($field019b,'ge')"> Nettressurser
</xsl:if>
136 <xsl:if test=
"$field019b='h'"> Tredimensjonale gjenstander
</xsl:if>
137 <xsl:if test=
"$field019b='i'"> Mikroformer
</xsl:if>
138 <xsl:if test=
"contains($field019b,'ib')"> Mikrofilmspole
</xsl:if>
139 <xsl:if test=
"contains($field019b,'ic')"> Mikrofilmkort
</xsl:if>
140 <xsl:if test=
"$field019b='j'"> Periodika
</xsl:if>
141 <xsl:if test=
"$field019b='k'"> Artikler (i bøker eller periodika)
</xsl:if>
142 <xsl:if test=
"$field019b='l'"> Fysiske bøker
</xsl:if>
145 <!-- Check positions 00 and 01 of controlfield 007 -->
147 <xsl:if test=
"$controlField007-00='a'">
148 <!-- Kartografisk materiale (unntatt globus) -->
149 <xsl:if test=
"$controlField007-01='a'">Anamorfisk kart
</xsl:if>
150 <xsl:if test=
"$controlField007-01='b'">Atlas
</xsl:if>
151 <xsl:if test=
"$controlField007-01='c'">Fantasikart
</xsl:if>
152 <xsl:if test=
"$controlField007-01='d'">Flykart
</xsl:if>
153 <xsl:if test=
"$controlField007-01='e'">Sjøkart
</xsl:if>
154 <xsl:if test=
"$controlField007-01='f'">Navigasjonskart
</xsl:if>
155 <xsl:if test=
"$controlField007-01='g'">Blokkdiagram
</xsl:if>
156 <xsl:if test=
"$controlField007-01='h'">Stjernekart
</xsl:if>
157 <xsl:if test=
"$controlField007-01='j'">Kart
</xsl:if>
158 <xsl:if test=
"$controlField007-01='k'">Kartprofil
</xsl:if>
159 <xsl:if test=
"$controlField007-01='l'">Fotokart
</xsl:if>
160 <xsl:if test=
"$controlField007-01='m'">Fotomosaikk
</xsl:if>
161 <xsl:if test=
"$controlField007-01='n'">Ortofoto
</xsl:if>
162 <xsl:if test=
"$controlField007-01='o'">Tegnet kart
</xsl:if>
163 <xsl:if test=
"$controlField007-01='p'">Trykt kart
</xsl:if>
164 <xsl:if test=
"$controlField007-01='q'">Terrengmodell
</xsl:if>
165 <xsl:if test=
"$controlField007-01='r'">Fjernanalysebilde
</xsl:if>
166 <xsl:if test=
"$controlField007-01='s'">Kartseksjon
</xsl:if>
167 <xsl:if test=
"$controlField007-01='t'">Plan
</xsl:if>
168 <xsl:if test=
"$controlField007-01='y'">Perspektivkart
</xsl:if>
169 <xsl:if test=
"$controlField007-01='z'">Annen karttype
</xsl:if>
172 <xsl:if test=
"$controlField007-00='c'">
173 <!-- Maskinlesbar fil -->
174 <xsl:if test=
"$controlField007-01='a'">Magnetisk-optisk plate
</xsl:if>
175 <xsl:if test=
"$controlField007-01='b'">Lagringsbrikke
</xsl:if>
176 <xsl:if test=
"$controlField007-01='c'">Optisk kassett
</xsl:if>
177 <xsl:if test=
"$controlField007-01='d'">Diskett
</xsl:if>
178 <xsl:if test=
"$controlField007-01='h'">Platelager (harddisk)
</xsl:if>
179 <xsl:if test=
"$controlField007-01='k'">Magnetbåndkassett
</xsl:if>
180 <xsl:if test=
"$controlField007-01='m'">Magnetbåndspole
</xsl:if>
181 <xsl:if test=
"$controlField007-01='n'">Fjerntilgang (online)
</xsl:if>
182 <xsl:if test=
"$controlField007-01='o'">Optisk plate
</xsl:if>
183 <xsl:if test=
"$controlField007-01='z'">Annet lagringsmedium
</xsl:if>
186 <xsl:if test=
"$controlField007-00='d'">
188 <xsl:if test=
"$controlField007-01='a'">Stjerneglobus
</xsl:if>
189 <xsl:if test=
"$controlField007-01='b'">Planet- eller måneglobus
</xsl:if>
190 <xsl:if test=
"$controlField007-01='c'">Jordglobus
</xsl:if>
191 <xsl:if test=
"$controlField007-01='z'">Annen globustype
</xsl:if>
194 <xsl:if test=
"$controlField007-00='g'">
195 <!-- Grafisk materiale som er tenkt projisert eller gjennomlyst -->
196 <xsl:if test=
"$controlField007-01='h'">Hologram
</xsl:if>
197 <xsl:if test=
"$controlField007-01='o'">Billedbånd
</xsl:if>
198 <xsl:if test=
"$controlField007-01='p'">Stereobilde
</xsl:if>
199 <xsl:if test=
"$controlField007-01='r'">Røntgenbilde
</xsl:if>
200 <xsl:if test=
"$controlField007-01='s'">Dia
</xsl:if>
201 <xsl:if test=
"$controlField007-01='t'">Transparent
</xsl:if>
202 <xsl:if test=
"$controlField007-01='z'">Annen materialtype
</xsl:if>
205 <xsl:if test=
"$controlField007-00='h'">
207 <xsl:if test=
"$controlField007-01='a'">Vinduskort
</xsl:if>
208 <xsl:if test=
"$controlField007-01='c'">Mikrofilmkassett
</xsl:if>
209 <xsl:if test=
"$controlField007-01='d'">Mikrofilmspole
</xsl:if>
210 <xsl:if test=
"$controlField007-01='e'">Mikrofilmkort
</xsl:if>
211 <xsl:if test=
"$controlField007-01='g'">Mikro-opak
</xsl:if>
212 <xsl:if test=
"$controlField007-01='z'">Annen mikroformtype
</xsl:if>
215 <xsl:if test=
"$controlField007-00='k'">
216 <!-- Grafisk materiale som er ugjennomtrengelig for lys -->
217 <xsl:if test=
"$controlField007-01='c'">Collage
</xsl:if> <!-- Originalt kunstverk -->
218 <xsl:if test=
"$controlField007-01='d'">Tegning
</xsl:if> <!-- Originalt kunstverk -->
219 <xsl:if test=
"$controlField007-01='e'">Maleri
</xsl:if> <!-- Originalt kunstverk -->
220 <xsl:if test=
"$controlField007-01='g'">Fotografi - negativ
</xsl:if>
221 <xsl:if test=
"$controlField007-01='h'">Fotografi
</xsl:if> <!-- Brukes også om ugjennomsiktige stereobilder. -->
222 <xsl:if test=
"$controlField007-01='i'">Bilde
</xsl:if> <!-- Brukes når en mer spesifikk betegnelse er ukjent eller uønsket. -->
223 <xsl:if test=
"$controlField007-01='j'">Grafisk blad
</xsl:if>
224 <xsl:if test=
"$controlField007-01='k'">Flipover
</xsl:if>
225 <xsl:if test=
"$controlField007-01='l'">Teknisk tegning
</xsl:if>
226 <xsl:if test=
"$controlField007-01='m'">Studieplansje
</xsl:if>
227 <xsl:if test=
"$controlField007-01='n'">Plansje
</xsl:if>
228 <xsl:if test=
"$controlField007-01='o'">Billedkort
</xsl:if>
229 <xsl:if test=
"$controlField007-01='p'">Ordkort
</xsl:if>
230 <xsl:if test=
"$controlField007-01='q'">Symbolkort
</xsl:if>
231 <xsl:if test=
"$controlField007-01='r'">Kunstreproduksjon
</xsl:if>
232 <xsl:if test=
"$controlField007-01='s'">Postkort
</xsl:if>
233 <xsl:if test=
"$controlField007-01='t'">Plakat
</xsl:if>
234 <xsl:if test=
"$controlField007-01='z'">Annen materialtype
</xsl:if>
237 <xsl:if test=
"$controlField007-00='m'">
239 <xsl:if test=
"$controlField007-01='c'">Filmsløyfe
</xsl:if>
240 <xsl:if test=
"$controlField007-01='f'">Filmkassett
</xsl:if>
241 <xsl:if test=
"$controlField007-01='r'">Filmspole
</xsl:if>
242 <xsl:if test=
"$controlField007-01='z'">Annen filmtype
</xsl:if>
245 <xsl:if test=
"$controlField007-00='s'">
247 <xsl:if test=
"$controlField007-01='c'">Kompaktplate
</xsl:if>
248 <xsl:if test=
"$controlField007-01='d'">Grammofonplate
</xsl:if>
249 <xsl:if test=
"$controlField007-01='e'">Sylinder
</xsl:if> <!-- Lydrull, voksrull, fonografsylinder -->
250 <xsl:if test=
"$controlField007-01='g'">Sløyfekassett
</xsl:if>
251 <xsl:if test=
"$controlField007-01='i'">Filmlydspor
</xsl:if>
252 <xsl:if test=
"$controlField007-01='q'">Rull (pianorull/orgelrull)
</xsl:if>
253 <xsl:if test=
"$controlField007-01='s'">Lydkassett
</xsl:if>
254 <xsl:if test=
"$controlField007-01='t'">Lydbånd
</xsl:if>
255 <xsl:if test=
"$controlField007-01='w'">Wire
</xsl:if>
256 <xsl:if test=
"$controlField007-01='z'">Annet lydmateriale
</xsl:if>
259 <xsl:if test=
"$controlField007-00='u'">
260 <!-- Tre-dimensjonal gjenstand -->
261 <xsl:if test=
"$controlField007-01='a'">Originalt kunstverk
</xsl:if> <!-- F.eks. en skulptur. -->
262 <xsl:if test=
"$controlField007-01='c'">Kunstreproduksjon
</xsl:if>
263 <xsl:if test=
"$controlField007-01='d'">Diorama
</xsl:if>
264 <xsl:if test=
"$controlField007-01='e'">Øvelsesmodell
</xsl:if>
265 <xsl:if test=
"$controlField007-01='g'">Spill
</xsl:if>
266 <xsl:if test=
"$controlField007-01='p'">Mikroskopdia
</xsl:if>
267 <xsl:if test=
"$controlField007-01='q'">Modell
</xsl:if>
268 <xsl:if test=
"$controlField007-01='r'">Realia
</xsl:if>
269 <xsl:if test=
"$controlField007-01='u'">Utstilling
</xsl:if>
270 <xsl:if test=
"$controlField007-01='z'">Annen type gjenstand
</xsl:if>
273 <xsl:if test=
"$controlField007-00='v'">
275 <xsl:if test=
"$controlField007-01='d'">Videoplate
</xsl:if>
276 <xsl:if test=
"$controlField007-01='f'">Videokassett
</xsl:if>
277 <xsl:if test=
"$controlField007-01='r'">Videospole
</xsl:if>
278 <xsl:if test=
"$controlField007-01='z'">Annen type videoopptak
</xsl:if>
283 <!-- Tittel og ansvarsopplysninger -->
284 <a><xsl:attribute name=
"href">/cgi-bin/koha/opac-detail.pl?biblionumber=
<xsl:value-of select=
"$biblionumber"/></xsl:attribute>
285 <xsl:if test=
"marc:datafield[@tag=245]">
286 <xsl:for-each select=
"marc:datafield[@tag=245]">
287 <xsl:variable name=
"title">
288 <xsl:call-template name=
"subfieldSelect">
289 <xsl:with-param name=
"codes">a
</xsl:with-param>
291 <xsl:if test=
"marc:subfield[@code='b']">
292 <xsl:text> :
</xsl:text>
293 <xsl:call-template name=
"subfieldSelect">
294 <xsl:with-param name=
"codes">b
</xsl:with-param>
297 <xsl:if test=
"marc:subfield[@code='h']">
298 <xsl:text> </xsl:text>
299 (
<xsl:call-template name=
"subfieldSelect">
300 <xsl:with-param name=
"codes">h
</xsl:with-param>
301 </xsl:call-template>)
303 <xsl:text> </xsl:text>
304 <xsl:call-template name=
"subfieldSelect">
305 <xsl:with-param name=
"codes">np
</xsl:with-param>
308 <xsl:variable name=
"titleChop">
309 <xsl:call-template name=
"chopPunctuation">
310 <xsl:with-param name=
"chopString">
311 <xsl:value-of select=
"$title"/>
315 <xsl:value-of select=
"$titleChop"/>
322 <xsl:when test=
"marc:datafield[@tag=100] or marc:datafield[@tag=110] or marc:datafield[@tag=111] or marc:datafield[@tag=700] or marc:datafield[@tag=710] or marc:datafield[@tag=711]">
325 <xsl:for-each select=
"marc:datafield[@tag=100 or @tag=700]">
327 <xsl:when test=
"position()=last()">
328 <xsl:call-template name=
"nameABCDQ"/>.
331 <xsl:call-template name=
"nameABCDQ"/>;
336 <xsl:for-each select=
"marc:datafield[@tag=110 or @tag=710]">
338 <xsl:when test=
"position()=last()">
339 <xsl:call-template name=
"nameABCDN"/>.
342 <xsl:call-template name=
"nameABCDN"/>;
347 <xsl:for-each select=
"marc:datafield[@tag=111 or @tag=711]">
349 <xsl:when test=
"position()=last()">
350 <xsl:call-template name=
"nameACDEQ"/>.
353 <xsl:call-template name=
"nameACDEQ"/>;
361 <xsl:if test=
"marc:datafield[@tag=250]">
362 <span class=
"results_summary">
363 <span class=
"label">Utgave:
</span>
364 <xsl:for-each select=
"marc:datafield[@tag=250]">
365 <xsl:call-template name=
"subfieldSelect">
366 <xsl:with-param name=
"codes">ab
</xsl:with-param>
372 <span class=
"results_summary">
373 <xsl:if test=
"$typeOf008!=''">
374 <span class=
"label">Type:
</span>
377 <xsl:when test=
"$typeOf008='Mon'"><img src=
"/opac-tmpl/prog/famfamfam/silk/book.png" alt=
"Bok" title=
"Bok"/> Bok
</xsl:when>
378 <xsl:when test=
"$typeOf008='Per'"><img src=
"/opac-tmpl/prog/famfamfam/silk/newspaper.png" alt=
"Periodika" title=
"Periodika"/> Periodika
</xsl:when>
379 <xsl:when test=
"$typeOf008='Fil'"><img src=
"/opac-tmpl/prog/famfamfam/silk/computer_link.png" alt=
"Fil" title=
"Fil"/> Fil
</xsl:when>
380 <xsl:when test=
"$typeOf008='Kar'"><img src=
"/opac-tmpl/prog/famfamfam/silk/map.png" alt=
"Kart" title=
"Kart"/> Kart
</xsl:when>
381 <xsl:when test=
"$typeOf008='FV'"><img src=
"/opac-tmpl/prog/famfamfam/silk/film.png" alt=
"Film og video" title=
"Film og video"/> Film og video
</xsl:when>
382 <xsl:when test=
"$typeOf008='Mus'"><img src=
"/opac-tmpl/prog/famfamfam/silk/sound.png" alt=
"Musikktrykk og lydopptak" title=
"Musikktrykk og lydopptak"/> Musikk
</xsl:when>
383 <xsl:when test=
"$typeOf008='gra'"> Grafisk materiale
</xsl:when>
384 <xsl:when test=
"$typeOf008='kom'"> Kombidokumenter
</xsl:when>
385 <xsl:when test=
"$typeOf008='trd'"> Tre-dimensjonale gjenstander
</xsl:when>
388 <xsl:if test=
"string-length(normalize-space($physicalDescription))">
389 <span class=
"label">; Format:
</span><xsl:copy-of select=
"$physicalDescription"></xsl:copy-of>
393 <xsl:for-each select="marc:datafield[@tag=019]">
395 <xsl:call-template name="subfieldSelect">
396 <xsl:with-param name="codes">b</xsl:with-param>
401 <xsl:if test=
"$controlField008-21 or $controlField008-22 or $controlField008-24 or $controlField008-26 or $controlField008-29 or $controlField008-34 or $controlField008-33 or $controlField008-30-31 or $controlField008-33">
403 <xsl:if test=
"$typeOf008='Per'">
404 <xsl:if test=
"$controlField008-21 and contains($controlField008-21,'amnpz')">
405 <span class=
"label">; Type periodikum:
</span>
408 <xsl:when test=
"$controlField008-21='a'">Årbok
</xsl:when>
409 <xsl:when test=
"$controlField008-21='m'">Monografiserie
</xsl:when>
410 <xsl:when test=
"$controlField008-21='n'">Avis
</xsl:when>
411 <xsl:when test=
"$controlField008-21='p'">Tidsskrift
</xsl:when>
412 <xsl:when test=
"$controlField008-21='z'">Andre typer periodika
</xsl:when>
416 <xsl:if test=
"$typeOf008='Mon' or $typeOf008='Per'">
417 <xsl:if test=
"contains($controlField008-24,'abcdefhiklmnoqrstx')">
418 <span class=
"label">; Innhold:
</span>
421 <xsl:when test=
"contains($controlField008-24,'a')"> Sammendrag(abstracts)/Referatorganer
</xsl:when>
422 <xsl:when test=
"contains($controlField008-24,'b')"> Bibliografier
</xsl:when>
423 <xsl:when test=
"contains($controlField008-24,'c')"> Kataloger
</xsl:when>
424 <xsl:when test=
"contains($controlField008-24,'d')"> Ordbøker
</xsl:when>
425 <xsl:when test=
"contains($controlField008-24,'e')"> Konversasjonsleksika
</xsl:when>
426 <xsl:when test=
"contains($controlField008-24,'f')"> Håndbøker
</xsl:when>
427 <xsl:when test=
"contains($controlField008-24,'h')"> Referanseverk
</xsl:when>
428 <xsl:when test=
"contains($controlField008-24,'i')"> Registre
</xsl:when>
429 <xsl:when test=
"contains($controlField008-24,'k')"> Diskografier
</xsl:when>
430 <xsl:when test=
"contains($controlField008-24,'l')"> Lover og forskrifter
</xsl:when>
431 <xsl:when test=
"contains($controlField008-24,'m')"> Hovedoppgaver/diplomoppgaver
</xsl:when>
432 <xsl:when test=
"contains($controlField008-24,'n')"> Oversiktsverker innenfor et emne
</xsl:when>
433 <xsl:when test=
"contains($controlField008-24,'o')"> Anmeldelser
</xsl:when>
434 <xsl:when test=
"contains($controlField008-24,'q')"> Filmografier
</xsl:when>
435 <xsl:when test=
"contains($controlField008-24,'r')"> Adressebøker
</xsl:when>
436 <xsl:when test=
"contains($controlField008-24,'s')"> Statistikker
</xsl:when>
437 <xsl:when test=
"contains($controlField008-24,'t')"> Tekniske rapporter
</xsl:when>
438 <xsl:when test=
"contains($controlField008-24,'x')"> Doktoravhandlinger/lisensiat-avhandlinger
</xsl:when>
440 <xsl:when test="contains($controlField008-24,'z')"> Annet</xsl:when>
444 <xsl:when test=
"$controlField008-29='1'">
445 Konferansepublikasjon
449 <xsl:if test=
"$typeOf008='CF'">
450 <xsl:if test=
"$controlField008-26='a' or $controlField008-26='b' or $controlField008-26='c' or $controlField008-26='d' or $controlField008-26='e' or $controlField008-26='f' or $controlField008-26='g' or $controlField008-26='h' or $controlField008-26='i' or $controlField008-26='j'">
451 <span class=
"label">; Type maskinlesbar fil:
</span>
454 <xsl:when test=
"$controlField008-26='a'">Numeriske data
</xsl:when>
455 <xsl:when test=
"$controlField008-26='b'">Programvare
</xsl:when>
456 <xsl:when test=
"$controlField008-26='c'">Grafiske data
</xsl:when>
457 <xsl:when test=
"$controlField008-26='d'">Tekst
</xsl:when>
458 <xsl:when test=
"$controlField008-26='e'">Bibliografiske data
</xsl:when>
459 <xsl:when test=
"$controlField008-26='f'">Font
</xsl:when>
460 <xsl:when test=
"$controlField008-26='g'">Spill
</xsl:when>
461 <xsl:when test=
"$controlField008-26='h'">Lyd
</xsl:when>
462 <xsl:when test=
"$controlField008-26='i'">Interaktivt multimedium
</xsl:when>
463 <xsl:when test=
"$controlField008-26='j'">Online tjeneste
</xsl:when>
464 <!-- Probably makes no sense to display these
465 <xsl:when test="$controlField008-26='m'">En kombinasjon av to eller flere av de ovennevnte</xsl:when>
466 <xsl:when test="$controlField008-26='u'">Ukjent</xsl:when>
467 <xsl:when test="$controlField008-26='z'">Annen type data</xsl:when>
471 <xsl:if test=
"$typeOf008='Mon'">
472 <xsl:if test=
"(substring($controlField008,25,1)='j') or (substring($controlField008,25,1)='1') or ($controlField008-34='a' or $controlField008-34='b' or $controlField008-34='c' or $controlField008-34='d')">
473 <span class=
"label">; Innhold:
</span>
475 <xsl:if test=
"substring($controlField008,31,1)='1' or substring($controlField008,31,1)='a' or substring($controlField008,31,1)='b'">
478 <xsl:if test=
"$controlField008-34='a' or $controlField008-34='a' or $controlField008-34='b' or $controlField008-34='c' or $controlField008-34='d'">
482 <xsl:if test=
"$controlField008-33 and $controlField008-33!='^' and $controlField008-33!=' '">
483 <span class=
"label">; Litterær form:
</span>
486 <xsl:when test=
"$controlField008-33='0'">Ikke skjønnlitteratur
</xsl:when>
487 <xsl:when test=
"$controlField008-33='l'">Lærebok, brevkurs
</xsl:when>
488 <xsl:when test=
"$controlField008-33='1'">Skjønnlitteratur
</xsl:when>
489 <xsl:when test=
"$controlField008-33='r'">Roman
</xsl:when>
490 <xsl:when test=
"$controlField008-33='n'">Novelle / fortelling
</xsl:when>
491 <xsl:when test=
"$controlField008-33='d'">Dikt
</xsl:when>
492 <xsl:when test=
"$controlField008-33='s'">Skuespill
</xsl:when>
493 <xsl:when test=
"$controlField008-33='t'">Tegneserie
</xsl:when>
494 <xsl:when test=
"$controlField008-33='a'">Antologi
</xsl:when>
495 <xsl:when test=
"$controlField008-33='p'">Pekebok
</xsl:when>
498 <xsl:if test=
"$typeOf008='Mus' and $controlField008-30-31 and $controlField008-30-31!='^^' and $controlField008-30-31!=' '">
499 <span class=
"label">; Litterær form:
</span> <!-- Literary text for sound recordings -->
500 <xsl:if test=
"contains($controlField008-30-31,'a')">Selvbiografier
</xsl:if>
501 <xsl:if test=
"contains($controlField008-30-31,'b')">Biografier
</xsl:if>
502 <xsl:if test=
"contains($controlField008-30-31,'c')">Samtaler og diskusjoner
</xsl:if>
503 <xsl:if test=
"contains($controlField008-30-31,'d')">Drama
</xsl:if>
504 <xsl:if test=
"contains($controlField008-30-31,'e')">Essays
</xsl:if>
505 <xsl:if test=
"contains($controlField008-30-31,'f')">Romaner
</xsl:if>
506 <xsl:if test=
"contains($controlField008-30-31,'g')">Rapporter, referater
</xsl:if>
507 <xsl:if test=
"contains($controlField008-30-31,'h')">Fortellinger, noveller
</xsl:if>
508 <xsl:if test=
"contains($controlField008-30-31,'i')">Undervisning
</xsl:if>
509 <xsl:if test=
"contains($controlField008-30-31,'j')">Språkundervisning
</xsl:if>
510 <xsl:if test=
"contains($controlField008-30-31,'k')">Komedier
</xsl:if>
511 <xsl:if test=
"contains($controlField008-30-31,'l')">Foredrag, taler
</xsl:if>
512 <xsl:if test=
"contains($controlField008-30-31,'m')">Memoarer
</xsl:if>
513 <xsl:if test=
"contains($controlField008-30-31,'o')">Eventyr
</xsl:if>
514 <xsl:if test=
"contains($controlField008-30-31,'p')">Dikt
</xsl:if>
515 <xsl:if test=
"contains($controlField008-30-31,'r')">Fremføring av alle typer ikke-musikalske produksjoner
</xsl:if>
516 <xsl:if test=
"contains($controlField008-30-31,'s')">Lyder (f.eks. fuglelyder)
</xsl:if>
517 <xsl:if test=
"contains($controlField008-30-31,'t')">Intervjuer
</xsl:if>
518 <xsl:if test=
"contains($controlField008-30-31,'z')">Andre typer innhold
</xsl:if>
522 <xsl:if test="$typeOf008='VM'">
523 <span class="label">; Type of visual material: </span>
525 <xsl:when test="$controlField008-33='a'">
528 <xsl:when test="$controlField008-33='b'">
531 <xsl:when test="$controlField008-33='c'">
534 <xsl:when test="$controlField008-33='d'">
537 <xsl:when test="$controlField008-33='f'">
540 <xsl:when test="$controlField008-33='g'">
543 <xsl:when test="$controlField008-33='i'">
546 <xsl:when test="$controlField008-33='k'">
549 <xsl:when test="$controlField008-33='l'">
552 <xsl:when test="$controlField008-33='m'">
555 <xsl:when test="$controlField008-33='n'">
558 <xsl:when test="$controlField008-33='o'">
561 <xsl:when test="$controlField008-33='p'">
564 <xsl:when test="$controlField008-33='q' or marc:controlfield[@tag=007][substring(text(),1,1)='a'][substring(text(),2
568 <xsl:when test="$controlField008-33='r'">
571 <xsl:when test="$controlField008-33='s'">
574 <xsl:when test="$controlField008-33='t'">
577 <xsl:when test="$controlField008-33='v'">
580 <xsl:when test="$controlField008-33='w'">
590 <xsl:if test="($typeOf008='Mon' or $typeOf008='Per' or $typeOf008='Mus' or $typeOf008='FV' or $typeOf008='Fil') and ($controlField008-22='a' or $controlField008-22='b' or $controlField008-22='c' or $controlField008-22='d' or $controlField008-22='e' or $controlField008-22='g' or $controlField008-22='j' or $controlField008-22='f')">
592 <xsl:if test=
"$typeOf008='Mon'">
593 <span class=
"label">; Målgruppe:
</span>
595 <xsl:when test=
"$controlField008-22='a'">Voksne;
</xsl:when>
596 <xsl:when test=
"$controlField008-22='b'">Billedbøker for voksne;
</xsl:when>
597 <xsl:when test=
"$controlField008-22='j'">Barn og ungdom;
</xsl:when>
598 <xsl:when test=
"$controlField008-22='k'">Billedbøker;
</xsl:when>
599 <xsl:when test=
"$controlField008-22='l'">Barn i alderen til og med
5 år;
</xsl:when>
600 <xsl:when test=
"$controlField008-22='m'">Elever på
1. til
3. klassetrinn;
</xsl:when>
601 <xsl:when test=
"$controlField008-22='n'">Elever på
4. og
5. klassetrinn;
</xsl:when>
602 <xsl:when test=
"$controlField008-22='o'">Elever på
6. og
7. klassetrinn;
</xsl:when>
603 <xsl:when test=
"$controlField008-22='p'">Elever på ungdomstrinnet;
</xsl:when>
604 <xsl:when test=
"$controlField008-22='v'">Billedbøker for barn i alderen til og med
5 år;
</xsl:when>
605 <xsl:when test=
"$controlField008-22='w'">Billedbøker for elever på
1. til
3. klassetrinn;
</xsl:when>
606 <xsl:when test=
"$controlField008-22='x'">Billedbøker for elever på
4. og
5. klassetrinn;
</xsl:when>
607 <xsl:when test=
"$controlField008-22='y'">Billedbøker for elever på
6. og
7. klassetrinn;
</xsl:when>
608 <xsl:when test=
"$controlField008-22='z'">Billedbøker for elever på ungdomstrinnet;
</xsl:when>
609 <xsl:when test=
"$controlField008-22='f'">Spesialisert;
</xsl:when>
610 <xsl:when test=
"$controlField008-22='q'">Lettlest;
</xsl:when>
611 <xsl:when test=
"$controlField008-22='r'">For psykisk utviklingshemmede;
</xsl:when>
612 <xsl:when test=
"$controlField008-22='s'">Storskrift;
</xsl:when>
613 <xsl:when test=
"$controlField008-22='g'">Generell;
</xsl:when>
614 <xsl:when test=
"$controlField008-22='u'">Ukjent;
</xsl:when>
617 <xsl:if test=
"$typeOf008='Per'">
618 <span class=
"label">; Målgruppe:
</span>
620 <xsl:when test=
"$controlField008-22='a'">Voksne;
</xsl:when>
621 <xsl:when test=
"$controlField008-22='b'">Tegneserier for voksne;
</xsl:when>
622 <xsl:when test=
"$controlField008-22='j'">Barn og ungdom;
</xsl:when>
623 <xsl:when test=
"$controlField008-22='k'">Tegneserier;
</xsl:when>
624 <xsl:when test=
"$controlField008-22='l'">Barn i alderen til og med
5 år;
</xsl:when>
625 <xsl:when test=
"$controlField008-22='m'">Elever på
1. til
3. klassetrinn;
</xsl:when>
626 <xsl:when test=
"$controlField008-22='n'">Elever på
4. og
5. klassetrinn;
</xsl:when>
627 <xsl:when test=
"$controlField008-22='o'">Elever på
6. og
7. klassetrinn;
</xsl:when>
628 <xsl:when test=
"$controlField008-22='p'">Elever på ungdomstrinnet;
</xsl:when>
629 <xsl:when test=
"$controlField008-22='v'">Tegneserier for barn i alderen til og med
5 år;
</xsl:when>
630 <xsl:when test=
"$controlField008-22='w'">Tegneserier for elever på
1. til
3. klassetrinn;
</xsl:when>
631 <xsl:when test=
"$controlField008-22='x'">Tegneserier for elever på
4. og
5. klassetrinn;
</xsl:when>
632 <xsl:when test=
"$controlField008-22='y'">Tegneserier for elever på
6. og
7. klassetrinn;
</xsl:when>
633 <xsl:when test=
"$controlField008-22='z'">Tegneserier for elever på ungdomstrinnet;
</xsl:when>
634 <xsl:when test=
"$controlField008-22='f'">Spesialisert;
</xsl:when>
635 <xsl:when test=
"$controlField008-22='q'">Lettlest;
</xsl:when>
636 <xsl:when test=
"$controlField008-22='r'">For psykisk utviklingshemmede;
</xsl:when>
637 <xsl:when test=
"$controlField008-22='s'">Storskrift;
</xsl:when>
638 <xsl:when test=
"$controlField008-22='g'">Generell;
</xsl:when>
639 <xsl:when test=
"$controlField008-22='u'">Ukjent;
</xsl:when>
642 <xsl:if test=
"$typeOf008='Fil' or $typeOf008='Mus'">
643 <span class=
"label">; Målgruppe:
</span>
645 <xsl:when test=
"$controlField008-22='a'">Voksne;
</xsl:when>
646 <xsl:when test=
"$controlField008-22='j'">Barn og ungdom;
</xsl:when>
647 <xsl:when test=
"$controlField008-22='1'">Barn i alderen til og med
5 år;
</xsl:when>
648 <xsl:when test=
"$controlField008-22='m'">Elever på
1. til
3. klassetrinn;
</xsl:when>
649 <xsl:when test=
"$controlField008-22='n'">Elever på
4. og
5. klassetrinn;
</xsl:when>
650 <xsl:when test=
"$controlField008-22='o'">Elever på
6. og
7. klassetrinn;
</xsl:when>
651 <xsl:when test=
"$controlField008-22='p'">Elever på ungdomstrinnet;
</xsl:when>
652 <xsl:when test=
"$controlField008-22='f'">Spesialisert;
</xsl:when>
653 <xsl:when test=
"$controlField008-22='q'">Lettlest;
</xsl:when>
654 <xsl:when test=
"$controlField008-22='r'">For psykisk utviklingshemmede;
</xsl:when>
655 <xsl:when test=
"$controlField008-22='s'">Storskrift;
</xsl:when>
656 <xsl:when test=
"$controlField008-22='g'">Generell;
</xsl:when>
657 <xsl:when test=
"$controlField008-22='u'">Ukjent;
</xsl:when>
660 <xsl:if test=
"$typeOf008='FV'">
661 <span class=
"label">; Målgruppe:
</span>
663 <xsl:when test=
"$controlField008-22='a'">Voksne;
</xsl:when>
664 <xsl:when test=
"$controlField008-22='1'">Voksne over
18 år;
</xsl:when>
665 <xsl:when test=
"$controlField008-22='2'">Voksne over
15 år;
</xsl:when>
666 <xsl:when test=
"$controlField008-22='j'">Barn og ungdom;
</xsl:when>
667 <xsl:when test=
"$controlField008-22='4'">Ungdom over
12 år;
</xsl:when>
668 <xsl:when test=
"$controlField008-22='5'">Barn over
7 år;
</xsl:when>
669 <xsl:when test=
"$controlField008-22='6'">Småbarn;
</xsl:when>
670 <xsl:when test=
"$controlField008-22='f'">Spesialisert;
</xsl:when>
671 <xsl:when test=
"$controlField008-22='g'">Generell;
</xsl:when>
672 <xsl:when test=
"$controlField008-22='u'">Ukjent;
</xsl:when>
677 <!-- Utgivelse, distribusjon osv -->
678 <xsl:if test=
"marc:datafield[@tag=260]">
679 <span class=
"results_summary">
680 <span class=
"label">Utgiver:
</span>
681 <xsl:for-each select=
"marc:datafield[@tag=260]">
682 <xsl:call-template name=
"subfieldSelect">
683 <xsl:with-param name=
"codes">bcg
</xsl:with-param>
689 <!-- Parallelltittel (R) -->
690 <xsl:if test=
"marc:datafield[@tag=246]">
691 <span class=
"results_summary">
692 <span class=
"label">Parallelltittel:
</span>
693 <xsl:for-each select=
"marc:datafield[@tag=246]">
694 <xsl:call-template name=
"subfieldSelect">
695 <xsl:with-param name=
"codes">ab
</xsl:with-param>
702 <span class=
"results_summary">
703 <span class=
"label">Availability:
</span>
705 <xsl:when test=
"count(key('item-by-status', 'available'))=0 and count(key('item-by-status', 'reference'))=0">No copies available
708 <xsl:when test=
"count(key('item-by-status', 'available'))>0">
709 <span class=
"available">
710 <b><xsl:text>Copies available for loan:
</xsl:text></b>
711 <xsl:variable name=
"available_items"
712 select=
"key('item-by-status', 'available')"/>
713 <xsl:for-each select=
"$available_items[generate-id() = generate-id(key('item-by-status-and-branch', concat(items:status, ' ', items:homebranch))[1])]">
714 <xsl:value-of select=
"items:homebranch"/>
715 <xsl:if test=
"items:itemcallnumber != '' and items:itemcallnumber"> [
<xsl:value-of select=
"items:itemcallnumber"/>]
</xsl:if>
717 <xsl:text> (
</xsl:text>
718 <xsl:value-of select=
"count(key('item-by-status-and-branch', concat(items:status, ' ', items:homebranch)))"/>
719 <xsl:text>)
</xsl:text>
720 <xsl:choose><xsl:when test=
"position()=last()"><xsl:text>.
</xsl:text></xsl:when><xsl:otherwise><xsl:text>,
</xsl:text></xsl:otherwise></xsl:choose>
728 <xsl:when test=
"count(key('item-by-status', 'reference'))>0">
729 <span class=
"available">
730 <b><xsl:text>Copies available for reference:
</xsl:text></b>
731 <xsl:variable name=
"reference_items"
732 select=
"key('item-by-status', 'reference')"/>
733 <xsl:for-each select=
"$reference_items[generate-id() = generate-id(key('item-by-status-and-branch', concat(items:status, ' ', items:homebranch))[1])]">
734 <xsl:value-of select=
"items:homebranch"/>
736 <xsl:if test=
"items:itemcallnumber != '' and items:itemcallnumber"> [
<xsl:value-of select=
"items:itemcallnumber"/>]
</xsl:if>
737 <xsl:text> (
</xsl:text>
738 <xsl:value-of select=
"count(key('item-by-status-and-branch', concat(items:status, ' ', items:homebranch)))"/>
739 <xsl:text>)
</xsl:text>
740 <xsl:choose><xsl:when test=
"position()=last()"><xsl:text>.
</xsl:text></xsl:when><xsl:otherwise><xsl:text>,
</xsl:text></xsl:otherwise></xsl:choose>
747 <xsl:if test=
"count(key('item-by-status', 'Checked out'))>0">
748 <span class=
"unavailable">
749 <xsl:text>Checked out (
</xsl:text>
750 <xsl:value-of select=
"count(key('item-by-status', 'Checked out'))"/>
752 <xsl:text>).
</xsl:text>
755 <xsl:if test=
"count(key('item-by-status', 'Withdrawn'))>0">
756 <span class=
"unavailable">
757 <xsl:text>Withdrawn (
</xsl:text>
758 <xsl:value-of select=
"count(key('item-by-status', 'Withdrawn'))"/>
759 <xsl:text>).
</xsl:text> </span>
762 <xsl:if test=
"count(key('item-by-status', 'Lost'))>0">
763 <span class=
"unavailable">
764 <xsl:text>Lost (
</xsl:text>
765 <xsl:value-of select=
"count(key('item-by-status', 'Lost'))"/>
766 <xsl:text>).
</xsl:text> </span>
769 <xsl:if test=
"count(key('item-by-status', 'Damaged'))>0">
770 <span class=
"unavailable">
771 <xsl:text>Damaged (
</xsl:text>
772 <xsl:value-of select=
"count(key('item-by-status', 'Damaged'))"/>
773 <xsl:text>).
</xsl:text> </span>
775 <xsl:if test=
"count(key('item-by-status', 'On order'))>0">
777 <span class=
"unavailable">
778 <xsl:text>On order (
</xsl:text>
779 <xsl:value-of select=
"count(key('item-by-status', 'On order'))"/>
780 <xsl:text>).
</xsl:text> </span>
782 <xsl:if test=
"count(key('item-by-status', 'In transit'))>0">
783 <span class=
"unavailable">
785 <xsl:text>In transit (
</xsl:text>
786 <xsl:value-of select=
"count(key('item-by-status', 'In transit'))"/>
787 <xsl:text>).
</xsl:text> </span>
789 <xsl:if test=
"count(key('item-by-status', 'Waiting'))>0">
790 <span class=
"unavailable">
791 <xsl:text>On hold (
</xsl:text>
793 <xsl:value-of select=
"count(key('item-by-status', 'Waiting'))"/>
794 <xsl:text>).
</xsl:text> </span>
800 <xsl:template name=
"termsOfAddress">
801 <xsl:if test=
"marc:subfield[@code='b' or @code='c']">
802 <xsl:call-template name=
"chopPunctuation">
803 <xsl:with-param name=
"chopString">
804 <xsl:call-template name=
"subfieldSelect">
805 <xsl:with-param name=
"codes">bc
</xsl:with-param>
812 <xsl:template name=
"nameDate">
813 <xsl:for-each select=
"marc:subfield[@code='d']">
814 <xsl:call-template name=
"chopPunctuation">
815 <xsl:with-param name=
"chopString" select=
"."/>
820 <xsl:template name=
"role">
821 <xsl:for-each select=
"marc:subfield[@code='e']">
822 <xsl:value-of select=
"."/>
824 <xsl:for-each select=
"marc:subfield[@code='4']">
825 <xsl:value-of select=
"."/>
829 <xsl:template name=
"specialSubfieldSelect">
830 <xsl:param name=
"anyCodes"/>
831 <xsl:param name=
"axis"/>
832 <xsl:param name=
"beforeCodes"/>
833 <xsl:param name=
"afterCodes"/>
834 <xsl:variable name=
"str">
835 <xsl:for-each select=
"marc:subfield">
836 <xsl:if test=
"contains($anyCodes, @code) or (contains($beforeCodes,@code) and following-sibling::marc:subfield[@code=$axis]) or (contains($afterCodes,@code) and preceding-sibling::marc:subfield[@code=$axis])">
837 <xsl:value-of select=
"text()"/>
838 <xsl:text> </xsl:text>
842 <xsl:value-of select=
"substring($str,1,string-length($str)-1)"/>
845 <xsl:template name=
"subtitle">
846 <xsl:if test=
"marc:subfield[@code='b']">
847 <xsl:call-template name=
"chopPunctuation">
848 <xsl:with-param name=
"chopString">
849 <xsl:value-of select=
"marc:subfield[@code='b']"/>
851 <!--<xsl:call-template name="subfieldSelect">
852 <xsl:with-param name="codes">b</xsl:with-param>
853 </xsl:call-template>-->
859 <xsl:template name=
"chopBrackets">
860 <xsl:param name=
"chopString"></xsl:param>
861 <xsl:variable name=
"string">
862 <xsl:call-template name=
"chopPunctuation">
863 <xsl:with-param name=
"chopString" select=
"$chopString"></xsl:with-param>
866 <xsl:if test=
"substring($string, 1,1)='['">
867 <xsl:value-of select=
"substring($string,2, string-length($string)-2)"></xsl:value-of>
869 <xsl:if test=
"substring($string, 1,1)!='['">
870 <xsl:value-of select=
"$string"></xsl:value-of>