Created
March 22, 2013 10:51
-
-
Save jsicot/5220455 to your computer and use it in GitHub Desktop.
UNIMARCslim2OPACDetail.xsl
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE stylesheet [<!ENTITY nbsp " " >]> | |
<xsl:stylesheet version="1.0" xmlns:marc="http://www.loc.gov/MARC21/slim" xmlns:items="http://www.koha-community.org/items" xmlns:intralinks="http://www.koha.org/intralinks" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" exclude-result-prefixes="marc items"> | |
<xsl:import href="UNIMARCslimUtils.xsl"/> | |
<xsl:output method="xml" indent="yes" omit-xml-declaration="yes"/> | |
<xsl:key name="intralinks" match="intralinks:intralinks" use="intralinks:ppn"/> | |
<xsl:template match="/"> | |
<xsl:apply-templates/> | |
</xsl:template> | |
<xsl:template match="marc:record"> | |
<xsl:variable name="Show856uAsImage" select="marc:sysprefs/marc:syspref[@name='OPACDisplay856uAsImage']"/> | |
<xsl:variable name="leader" select="marc:leader"/> | |
<xsl:variable name="leader6" select="substring($leader,7,1)"/> | |
<xsl:variable name="leader7" select="substring($leader,8,1)"/> | |
<xsl:variable name="biblionumber" select="marc:controlfield[@tag=001]"/> | |
<xsl:variable name="ppn" select="marc:controlfield[@tag=009]"/> | |
<xsl:variable name="editorinfos" select="marc:datafield[@tag=306]/marc:subfield[@code='a']"/> | |
<xsl:variable name="TMDBid" select="marc:datafield[@tag=19]/marc:subfield[@code='a']"/> | |
<xsl:variable name="liens856"> | |
<xsl:for-each select="marc:datafield[@tag=856]"> | |
<xsl:value-of select="marc:subfield[@code='u']"/> | |
</xsl:for-each> | |
</xsl:variable> | |
<xsl:variable name="typdoc" select="marc:datafield[@tag=099]/marc:subfield[@code='t']"/> | |
<abbr class="unapi-id" title="koha:biblionumber:{marc:controlfield[@tag=001]}"> | |
<!-- unAPI --> | |
</abbr> | |
<!-- TITRE #200 --> | |
<xsl:if test="marc:datafield[@tag=200]"> | |
<xsl:for-each select="marc:datafield[@tag=200]"> | |
<h1> | |
<xsl:call-template name="addClassRtl"/> | |
<xsl:if test="$typdoc='Vidéo'"> | |
<xsl:attribute name="class">DVD</xsl:attribute> | |
<!-- <xsl:if test="$editorinfos"> | |
<xsl:element name="span"> | |
<xsl:attribute name="class">editorinfos</xsl:attribute> | |
<xsl:value-of select="$editorinfos"/> | |
</xsl:element> | |
</xsl:if> --> | |
<xsl:attribute name="gj-title1"> | |
<xsl:choose> | |
<xsl:when test="//marc:datafield[@tag=454]"> | |
<xsl:value-of select="//marc:datafield[@tag=454]" /> | |
</xsl:when> | |
<xsl:otherwise> | |
<xsl:value-of select="marc:subfield[@code='a']" /> | |
<xsl:if test="marc:subfield[@code='h']"> | |
<xsl:text> </xsl:text> | |
<xsl:value-of select="marc:subfield[@code='h']" /> | |
</xsl:if> | |
</xsl:otherwise> | |
</xsl:choose> | |
</xsl:attribute> | |
<xsl:attribute name="gj-director-fn"> | |
<xsl:call-template name="director7xxFirstname" /> | |
</xsl:attribute> | |
<xsl:attribute name="gj-director-sn"> | |
<xsl:call-template name="director7xxSurname" /> | |
</xsl:attribute> | |
<xsl:attribute name="gj-title2"> | |
<xsl:value-of select="marc:subfield[@code='d']" /> | |
</xsl:attribute> | |
<xsl:if test="$TMDBid"> | |
<xsl:element name="span"> | |
<xsl:attribute name="class">TMDBid</xsl:attribute> | |
<xsl:value-of select="$TMDBid"/> | |
</xsl:element> | |
</xsl:if> | |
</xsl:if> | |
<xsl:variable name="title" select="marc:subfield[@code='a']"/> | |
<xsl:variable name="ntitle" select="translate($title, '슜슛슘슈슉','')"/> | |
<xsl:element name="span"> | |
<xsl:attribute name="class">ntitle</xsl:attribute> | |
<xsl:value-of select="$ntitle"/> | |
</xsl:element> | |
<xsl:if test="marc:subfield[@code='c']"> | |
<xsl:for-each select="marc:subfield[@code='c']"> | |
<xsl:if test="following-sibling::*[@code='e']"> | |
<xsl:text>. </xsl:text> | |
<xsl:value-of select="."/> | |
</xsl:if> | |
</xsl:for-each> | |
</xsl:if> | |
<xsl:if test="marc:subfield[@code='e']"> | |
<xsl:for-each select="marc:subfield[@code='e']"> | |
<xsl:if test="not(preceding-sibling::*[@code='d'])"> | |
<xsl:text> : </xsl:text> | |
<xsl:value-of select="."/> | |
</xsl:if> | |
</xsl:for-each> | |
</xsl:if> | |
<xsl:if test="marc:subfield[@code='d']"> | |
<xsl:for-each select="marc:subfield[@code='d']"> | |
<xsl:text> = </xsl:text> | |
<xsl:value-of select="."/> | |
<xsl:if test="following-sibling::*[@code='e'] and following-sibling::*[@code='d']"> | |
<xsl:for-each select="following-sibling::*[@code='e']"> | |
<xsl:if test="following-sibling::*[@code='d']"> | |
<xsl:text> : </xsl:text> | |
<xsl:value-of select="."/> | |
</xsl:if> | |
</xsl:for-each> | |
</xsl:if> | |
<xsl:if test="following-sibling::*[@code='e'] and not(following-sibling::*[@code='d'])"> | |
<xsl:for-each select="following-sibling::*[@code='e']"> | |
<xsl:text> : </xsl:text> | |
<xsl:value-of select="."/> | |
</xsl:for-each> | |
</xsl:if> | |
</xsl:for-each> | |
</xsl:if> | |
<xsl:if test="marc:subfield[@code='h']"> | |
<xsl:for-each select="marc:subfield[@code='h']"> | |
<xsl:text>. </xsl:text> | |
<xsl:value-of select="."/> | |
<xsl:if test="following-sibling::*[1][@code='i']"> | |
<xsl:text>, </xsl:text> | |
<xsl:value-of select="following-sibling::*[1]"/> | |
</xsl:if> | |
</xsl:for-each> | |
</xsl:if> | |
<xsl:if test="marc:subfield[@code='i']"> | |
<xsl:for-each select="marc:subfield[@code='i']"> | |
<xsl:if test="not(preceding-sibling::*[1][@code='h'])"> | |
<xsl:text>. </xsl:text> | |
<xsl:value-of select="."/> | |
</xsl:if> | |
</xsl:for-each> | |
</xsl:if> | |
</h1> | |
</xsl:for-each> | |
</xsl:if> | |
<!-- End TITRE #200 --> | |
<!-- NOTICE DÉTAILLÉE --> | |
<table class="citation" summary="Bibliographic Details" border="0" cellpadding="2" cellspacing="0"> | |
<tbody> | |
<!-- 7XX RESPONSABILITÉ INTELLECTUELLE --> | |
<xsl:if test="marc:datafield[@tag=700 or @tag=710 or @tag=720 or @tag=701 or @tag=711 or @tag=721 or @tag=702 or @tag=712 or @tag=722 or @tag=716]"> | |
<tr valign="top"> | |
<th>Auteur<xsl:if test="count(marc:datafield[starts-with(@tag,'700')])>1 or count(marc:datafield[starts-with(@tag,'710')])>1 or count(marc:datafield[starts-with(@tag,'720')])>1 or count(marc:datafield[starts-with(@tag,'701')])>1 or count(marc:datafield[starts-with(@tag,'711')])>1 or count(marc:datafield[starts-with(@tag,'721')])>1 or count(marc:datafield[starts-with(@tag,'702')])>1 or count(marc:datafield[starts-with(@tag,'712')])>1 or count(marc:datafield[starts-with(@tag,'722')])>1 or count(marc:datafield[starts-with(@tag,'716')])>1" >s</xsl:if> : </th> | |
<td> | |
<xsl:call-template name="tag_7xx"> | |
<xsl:with-param name="tag">700</xsl:with-param> | |
<xsl:with-param name="label">Auteur<xsl:if test="count(marc:datafield[starts-with(@tag,'700')])>1">s</xsl:if></xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_7xx"> | |
<xsl:with-param name="tag">710</xsl:with-param> | |
<xsl:with-param name="label">Collectivité<xsl:if test="count(marc:datafield[starts-with(@tag,'710')])>1">s</xsl:if> principale<xsl:if test="count(marc:datafield[starts-with(@tag,'710')])>1">s</xsl:if></xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_7xx"> | |
<xsl:with-param name="tag">720</xsl:with-param> | |
<xsl:with-param name="label">Auteur principal</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_7xx"> | |
<xsl:with-param name="tag">701</xsl:with-param> | |
<xsl:with-param name="label">Co-auteur<xsl:if test="count(marc:datafield[starts-with(@tag,'701')])>1">s</xsl:if></xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_7xx"> | |
<xsl:with-param name="tag">711</xsl:with-param> | |
<xsl:with-param name="label">Collectivité co-auteur<xsl:if test="count(marc:datafield[starts-with(@tag,'711')])>1">s</xsl:if> - collectivité</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_7xx"> | |
<xsl:with-param name="tag">721</xsl:with-param> | |
<xsl:with-param name="label">Co-auteur</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_7xx"> | |
<xsl:with-param name="tag">702</xsl:with-param> | |
<xsl:with-param name="label">Auteur<xsl:if test="count(marc:datafield[starts-with(@tag,'702')])>1">s</xsl:if> secondaire<xsl:if test="count(marc:datafield[starts-with(@tag,'702')])>1">s</xsl:if></xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_7xx"> | |
<xsl:with-param name="tag">712</xsl:with-param> | |
<xsl:with-param name="label">Collectivité secondaire</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_7xx"> | |
<xsl:with-param name="tag">722</xsl:with-param> | |
<xsl:with-param name="label">Auteur secondaire</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_7xx"> | |
<xsl:with-param name="tag">716</xsl:with-param> | |
<xsl:with-param name="label">Marque déposée</xsl:with-param> | |
</xsl:call-template> | |
</td> | |
</tr> | |
</xsl:if> | |
<!-- 210 ÉDITEUR --> | |
<xsl:call-template name="tag_210"/> | |
<!-- 205 ÉDITION --> | |
<xsl:call-template name="tag_205_details"/> | |
<!-- 410 COLLECTION --> | |
<xsl:call-template name="tag_410"/> | |
<!-- 215 DESCRIPTION --> | |
<xsl:call-template name="tag_215"/> | |
<!-- 215 LANGUE --> | |
<xsl:call-template name="tag_101"/> | |
<!-- LIEU DE PUBLICATION | |
<xsl:call-template name="tag_102"/> --> | |
<!-- PERIODICITÉ --> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">326</xsl:with-param> | |
<xsl:with-param name="label">Périodicité</xsl:with-param> | |
</xsl:call-template> | |
<!-- GÉO --> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">206</xsl:with-param> | |
<xsl:with-param name="label">Informations géographiques</xsl:with-param> | |
</xsl:call-template> | |
<!-- MUSIQUE --> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">208</xsl:with-param> | |
<xsl:with-param name="label">Musique imprimée</xsl:with-param> | |
</xsl:call-template> | |
<!-- <xsl:if test="marc:datafield[@tag=859]"> | |
<tr valign="top"> | |
<th>Accès : </th><td> | |
<xsl:if test="$typdoc='Revue'"> | |
<div id="subjectline" class="results_summary"> | |
<span class="button button-online">En ligne</span> | |
<xsl:for-each select="marc:datafield[@tag=859]"> | |
<a> | |
<xsl:attribute name="href"> | |
<xsl:value-of select="marc:subfield[@code='u']"/> | |
</xsl:attribute> | |
<xsl:choose> | |
<xsl:when test="marc:subfield[@code='y' or @code='3' or @code='z']"> | |
<xsl:call-template name="subfieldSelect"> | |
<xsl:with-param name="codes">y3z</xsl:with-param> | |
</xsl:call-template> | |
</xsl:when> | |
<xsl:when test="not(marc:subfield[@code='y']) and not(marc:subfield[@code='3']) and not(marc:subfield[@code='z'])">Consulter en ligne</xsl:when> | |
</xsl:choose> | |
</a> | |
<xsl:choose> | |
<xsl:when test="position()=last()"/> | |
<xsl:otherwise> | </xsl:otherwise> | |
</xsl:choose> | |
</xsl:for-each> | |
</div> | |
</xsl:if> | |
</td></tr> | |
</xsl:if>--> | |
<!-- <xsl:for-each select="//marc:datafield[@tag=955][marc:subfield[@code='5'][substring-before(text(), ':')=$RCR]]"> --> | |
<xsl:if test="marc:datafield[@tag=856]"> | |
<xsl:if test="not(contains($liens856,'electre.com'))"> | |
<tr valign="top"> | |
<th>Accès : </th><td> | |
<xsl:if test="$typdoc!='Revue'"> | |
<xsl:for-each select="marc:datafield[@tag=856]"> | |
<xsl:choose> | |
<xsl:when test="marc:subfield[@code='5']"> | |
<div id="subjectline" class="results_summary"> | |
<a> | |
<xsl:attribute name="href"> | |
<xsl:value-of select="marc:subfield[@code='u']"/> | |
</xsl:attribute> | |
<xsl:attribute name="target"><xsl:text>_blank</xsl:text></xsl:attribute> | |
<xsl:choose> | |
<xsl:when test="marc:subfield[@code='z']"> | |
<xsl:attribute name="title"> | |
<xsl:value-of select="marc:subfield[@code='z']"/> | |
</xsl:attribute> | |
</xsl:when> | |
<xsl:otherwise><xsl:attribute name="title"><xsl:text>consulter en ligne</xsl:text></xsl:attribute></xsl:otherwise> | |
</xsl:choose> | |
<xsl:choose> | |
<xsl:when test="marc:subfield[@code='z']"> | |
<span class="button button-online"> | |
<xsl:value-of select="marc:subfield[@code='z']"/> | |
</span> | |
</xsl:when> | |
</xsl:choose> | |
</a> | |
</div> | |
</xsl:when> | |
<xsl:otherwise> | |
<xsl:if test="not(contains($liens856,'scdbases'))"> | |
<div id="subjectline" class="results_summary"> | |
<a> | |
<xsl:attribute name="href"> | |
<xsl:value-of select="marc:subfield[@code='u']"/> | |
</xsl:attribute> | |
<xsl:attribute name="target"><xsl:text>_blank</xsl:text></xsl:attribute> | |
<xsl:choose> | |
<xsl:when test="marc:subfield[@code='z']"> | |
<xsl:attribute name="title"> | |
<xsl:value-of select="marc:subfield[@code='z']"/> | |
</xsl:attribute> | |
</xsl:when> | |
<xsl:otherwise><xsl:attribute name="title"><xsl:text>consulter en ligne</xsl:text></xsl:attribute></xsl:otherwise> | |
</xsl:choose> | |
<xsl:choose> | |
<xsl:when test="marc:subfield[@code='z']"> | |
<span class="button button-online"> | |
<xsl:value-of select="marc:subfield[@code='z']"/> | |
</span> | |
</xsl:when> | |
<xsl:otherwise><span class="button button-online">Consulter en ligne</span></xsl:otherwise> | |
</xsl:choose> | |
</a> | |
</div> | |
</xsl:if> | |
</xsl:otherwise> | |
</xsl:choose> | |
</xsl:for-each> | |
</xsl:if> | |
</td></tr> | |
</xsl:if> | |
</xsl:if> | |
<!-- 5XX BLOC DES TITRES ASSOCIÉS --> | |
<xsl:if test="marc:datafield[contains('500,503,530,531,532',@tag)]"> | |
<tr valign="top"> | |
<th>Variantes du titre : </th><td> | |
<xsl:if test="marc:datafield[@tag=500]"> | |
<xsl:for-each select="marc:datafield[@tag=500]"> | |
<div id="subjectline"> | |
<xsl:call-template name="tagprint"> | |
<xsl:with-param name="codes">abhiklmnqrsuw</xsl:with-param> | |
</xsl:call-template> | |
</div> | |
</xsl:for-each> | |
</xsl:if> | |
<xsl:if test="marc:datafield[@tag=503]"> | |
<xsl:for-each select="marc:datafield[@tag=503]"> | |
<div id="subjectline"> | |
<xsl:call-template name="tagprint"> | |
<xsl:with-param name="codes">abdefhijklmn</xsl:with-param> | |
</xsl:call-template> | |
</div> | |
</xsl:for-each> | |
</xsl:if> | |
<xsl:if test="marc:datafield[@tag=530]"> | |
<xsl:for-each select="marc:datafield[@tag=530]"> | |
<div id="subjectline"> | |
<xsl:call-template name="tagprint"> | |
<xsl:with-param name="codes">abj</xsl:with-param> | |
</xsl:call-template> | |
</div> | |
</xsl:for-each> | |
</xsl:if> | |
<xsl:if test="marc:datafield[@tag=531]"> | |
<xsl:for-each select="marc:datafield[@tag=531]"> | |
<div id="subjectline"> | |
<xsl:call-template name="tagprint"> | |
<xsl:with-param name="codes">ab</xsl:with-param> | |
</xsl:call-template> | |
</div> | |
</xsl:for-each> | |
</xsl:if> | |
<xsl:if test="marc:datafield[@tag=532]"> | |
<xsl:for-each select="marc:datafield[@tag=532]"> | |
<div id="subjectline"> | |
<xsl:call-template name="tagprint"> | |
<xsl:with-param name="codes">a</xsl:with-param> | |
</xsl:call-template> | |
</div> | |
</xsl:for-each> | |
</xsl:if> | |
</td></tr> | |
</xsl:if> | |
<xsl:if test="marc:datafield[contains('510,512,513,514,515,516,517,518,520,540,541,545',@tag)]"> | |
<tr valign="top"> | |
<th>Autres titres : </th><td> | |
<xsl:for-each select="marc:datafield[@tag=510]"> | |
<div id="subjectline"> | |
<xsl:call-template name="tagprint-link"> | |
<xsl:with-param name="codes">aehijn</xsl:with-param> | |
</xsl:call-template> | |
</div> | |
</xsl:for-each> | |
<xsl:for-each select="marc:datafield[@tag=512]"> | |
<div id="subjectline"> | |
<xsl:call-template name="tagprint-link"> | |
<xsl:with-param name="codes">aehijn</xsl:with-param> | |
</xsl:call-template> | |
</div> | |
</xsl:for-each> | |
<xsl:for-each select="marc:datafield[@tag=513]"> | |
<div id="subjectline"> | |
<xsl:call-template name="tagprint-link"> | |
<xsl:with-param name="codes">aehijn</xsl:with-param> | |
</xsl:call-template> | |
</div> | |
</xsl:for-each> | |
<xsl:for-each select="marc:datafield[@tag=514]"> | |
<div id="subjectline"> | |
<xsl:call-template name="tagprint-link"> | |
<xsl:with-param name="codes">aehijn</xsl:with-param> | |
<xsl:with-param name="link-codes">a</xsl:with-param> | |
<xsl:with-param name="link-index">ti</xsl:with-param> | |
</xsl:call-template> | |
</div> | |
</xsl:for-each> | |
<xsl:for-each select="marc:datafield[@tag=515]"> | |
<div id="subjectline"> | |
<xsl:call-template name="tagprint-link"> | |
<xsl:with-param name="codes">aehijn</xsl:with-param> | |
<xsl:with-param name="link-codes">a</xsl:with-param> | |
<xsl:with-param name="link-index">ti</xsl:with-param> | |
</xsl:call-template> | |
</div> | |
</xsl:for-each> | |
<xsl:for-each select="marc:datafield[@tag=516]"> | |
<div id="subjectline"> | |
<xsl:call-template name="tagprint-link"> | |
<xsl:with-param name="codes">aehijn</xsl:with-param> | |
<xsl:with-param name="link-codes">a</xsl:with-param> | |
<xsl:with-param name="link-index">ti</xsl:with-param> | |
</xsl:call-template> | |
</div> | |
</xsl:for-each> | |
<xsl:for-each select="marc:datafield[@tag=517]"> | |
<div id="subjectline"> | |
<xsl:call-template name="tagprint-link"> | |
<xsl:with-param name="codes">aehijn</xsl:with-param> | |
<xsl:with-param name="link-codes">a</xsl:with-param> | |
<xsl:with-param name="link-index">ti</xsl:with-param> | |
</xsl:call-template> | |
</div> | |
</xsl:for-each> | |
<xsl:for-each select="marc:datafield[@tag=518]"> | |
<div id="subjectline"> | |
<xsl:call-template name="tagprint-link"> | |
<xsl:with-param name="codes">aehijn</xsl:with-param> | |
<xsl:with-param name="link-codes">a</xsl:with-param> | |
<xsl:with-param name="link-index">ti</xsl:with-param> | |
</xsl:call-template> | |
</div> | |
</xsl:for-each> | |
<xsl:for-each select="marc:datafield[@tag=520]"> | |
<div id="subjectline"> | |
<xsl:call-template name="tagprint-link"> | |
<xsl:with-param name="codes">aehijn</xsl:with-param> | |
<xsl:with-param name="link-codes">a</xsl:with-param> | |
<xsl:with-param name="link-index">ti</xsl:with-param> | |
</xsl:call-template> | |
</div> | |
</xsl:for-each> | |
<xsl:for-each select="marc:datafield[@tag=540]"> | |
<div id="subjectline"> | |
<xsl:call-template name="tagprint-link"> | |
<xsl:with-param name="codes">aehijn</xsl:with-param> | |
<xsl:with-param name="link-codes">a</xsl:with-param> | |
<xsl:with-param name="link-index">ti</xsl:with-param> | |
</xsl:call-template> | |
</div> | |
</xsl:for-each> | |
<xsl:for-each select="marc:datafield[@tag=541]"> | |
<div id="subjectline"> | |
<xsl:call-template name="tagprint-link"> | |
<xsl:with-param name="codes">aehijn</xsl:with-param> | |
<xsl:with-param name="link-codes">a</xsl:with-param> | |
<xsl:with-param name="link-index">ti</xsl:with-param> | |
</xsl:call-template> | |
</div> | |
</xsl:for-each> | |
<xsl:for-each select="marc:datafield[@tag=545]"> | |
<div id="subjectline"> | |
<xsl:call-template name="tagprint-link"> | |
<xsl:with-param name="codes">aehijn</xsl:with-param> | |
<xsl:with-param name="link-codes">a</xsl:with-param> | |
<xsl:with-param name="link-index">ti</xsl:with-param> | |
</xsl:call-template> | |
</div> | |
</xsl:for-each> | |
</td></tr> | |
</xsl:if> | |
<!-- 3XX NOTES --> | |
<xsl:if test="marc:datafield[contains('330,300,301,302,303,304,305,306,307, 308,310,311,312,313,314,315,316,317,321,322,323,324,325,327,332,333,334,336,337,345',@tag)]"> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">300</xsl:with-param> | |
<xsl:with-param name="label">Note générale</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">301</xsl:with-param> | |
<xsl:with-param name="label">Note sur les numéros d'identification</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">302</xsl:with-param> | |
<xsl:with-param name="label">Note </xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">303</xsl:with-param> | |
<xsl:with-param name="label">Note sur la description bibliographique</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">304</xsl:with-param> | |
<xsl:with-param name="label">Note sur le titre et l'auteur</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">305</xsl:with-param> | |
<xsl:with-param name="label">Note sur l'édition</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">306</xsl:with-param> | |
<xsl:with-param name="label">Note sur l'éditeur</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">307</xsl:with-param> | |
<xsl:with-param name="label">Note sur la collation</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">308</xsl:with-param> | |
<xsl:with-param name="label">Note sur la collection</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">310</xsl:with-param> | |
<xsl:with-param name="label">Disponibilité</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">311</xsl:with-param> | |
<xsl:with-param name="label">Note sur les zones de liens</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">312</xsl:with-param> | |
<xsl:with-param name="label">Note sur les titres associés</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">313</xsl:with-param> | |
<xsl:with-param name="label">Note sur les vedettes matières</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">314</xsl:with-param> | |
<xsl:with-param name="label">Note sur la responsabilité intellectuelle</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">315</xsl:with-param> | |
<xsl:with-param name="label">Note</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">316</xsl:with-param> | |
<xsl:with-param name="label">Note sur l'exemplaire</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">317</xsl:with-param> | |
<xsl:with-param name="label">Note sur la provenance</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">321</xsl:with-param> | |
<xsl:with-param name="label">Note sur les index, extraits et citations publiés séparément</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">322</xsl:with-param> | |
<xsl:with-param name="label">Note sur le générique</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">323</xsl:with-param> | |
<xsl:with-param name="label">Note sur les interprètes</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">324</xsl:with-param> | |
<xsl:with-param name="label">Note sur le document original</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">325</xsl:with-param> | |
<xsl:with-param name="label">Note sur la reproduction</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">327</xsl:with-param> | |
<xsl:with-param name="label">Note de contenu</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">332</xsl:with-param> | |
<xsl:with-param name="label">Titre choisi pour le document</xsl:with-param> | |
</xsl:call-template> | |
<!--<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">333</xsl:with-param> | |
<xsl:with-param name="label">Note sur le public destinataire</xsl:with-param> | |
</xsl:call-template>--> | |
<xsl:if test="marc:datafield[@tag=334]"> | |
<tr valign="top"> | |
<th>Récompenses : </th><td> | |
<xsl:for-each select="marc:datafield[@tag=334]"> | |
<div id="subjectline" class="results_summary"> | |
<xsl:call-template name="tagprint"> | |
<xsl:with-param name="codes">abcd</xsl:with-param> | |
</xsl:call-template> | |
</div> | |
</xsl:for-each> | |
</td></tr> | |
</xsl:if> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">336</xsl:with-param> | |
<xsl:with-param name="label">Note sur le type de ressource électronique</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">337</xsl:with-param> | |
<xsl:with-param name="label">Configuration requise</xsl:with-param> | |
</xsl:call-template> | |
<!--<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">345</xsl:with-param> | |
<xsl:with-param name="label">Renseignements sur l'acquisition</xsl:with-param> | |
</xsl:call-template>--> | |
</xsl:if> | |
<!-- 328 NOTE DE THESE --> | |
<xsl:call-template name="tag_328"/> | |
<!-- 4XX --> | |
<xsl:call-template name="tag_4xx"/> | |
<!-- BIBLIOGRAPHIE --> | |
<xsl:call-template name="tag_3xx"> | |
<xsl:with-param name="tag">320</xsl:with-param> | |
<xsl:with-param name="label">Bibliographie</xsl:with-param> | |
</xsl:call-template> | |
<!-- ISBN --> | |
<xsl:call-template name="tag_010"> | |
<xsl:with-param name="tag">010</xsl:with-param> | |
<xsl:with-param name="label">ISBN</xsl:with-param> | |
</xsl:call-template> | |
<!-- ISSN --> | |
<xsl:call-template name="tag_011"> | |
<xsl:with-param name="tag">011</xsl:with-param> | |
<xsl:with-param name="label">ISSN</xsl:with-param> | |
</xsl:call-template> | |
<!-- ISNM --> | |
<xsl:call-template name="tag_01x"> | |
<xsl:with-param name="tag">013</xsl:with-param> | |
<xsl:with-param name="label">ISMN</xsl:with-param> | |
</xsl:call-template> | |
<!-- EMPREINTE --> | |
<xsl:call-template name="tag_01x"> | |
<xsl:with-param name="tag">012</xsl:with-param> | |
<xsl:with-param name="label">Empreinte</xsl:with-param> | |
</xsl:call-template> | |
<!-- AERES --> | |
<xsl:if test="marc:datafield[@tag=619]/marc:subfield[@code='b']"> | |
<tr valign="top"> | |
<th>Classement AERES : </th><td> | |
<a> | |
<xsl:attribute name="href"> | |
/cgi-bin/koha/opac-search.pl?q=ccl=aeres=<xsl:value-of select="marc:datafield[@tag=619]/marc:subfield[@code='b']"/> | |
</xsl:attribute> | |
<xsl:attribute name="rel">nofollow</xsl:attribute> | |
<xsl:attribute name="title">Voir toutes les revues de rang <xsl:value-of select="marc:datafield[@tag=619]/marc:subfield[@code='b']"/> disponibles dans le catalogue</xsl:attribute> | |
<xsl:value-of select="marc:datafield[@tag=619]/marc:subfield[@code='b']"/> | |
</a> | |
</td></tr> | |
</xsl:if> | |
<!-- 6XX SUJETS | |
<xsl:call-template name="tag_6XX"/> --> | |
<xsl:call-template name="tag_subjects"/> | |
</tbody></table> | |
<!-- 955 ÉTATS DE COLLECTION --> | |
<xsl:if test="$typdoc='Revue'"> | |
<div id="etatCollection"> | |
<xsl:if test="marc:datafield[@tag=930]"> | |
<table id="holdingst" class="tablesorter"> | |
<thead> | |
<tr> | |
<th class="item_location">Où le trouver ?</th> | |
<th class="item_numdisp">Numéros disponibles</th> | |
<th class="item_callno">Cote</th> | |
</tr> | |
</thead> | |
<tbody> | |
<xsl:for-each select="marc:datafield[@tag=930]"> | |
<xsl:variable name="RCR" select="marc:subfield[@code='5']" /> | |
<tr> | |
<td class="location"> | |
<xsl:call-template name="RCR"> | |
<xsl:with-param name="code" select="substring-before($RCR, ':')"/> | |
</xsl:call-template> | |
</td> | |
<td class="numdisp"> | |
<xsl:for-each select="//marc:datafield[@tag=955][marc:subfield[@code='5']=$RCR]"> | |
<xsl:value-of select="marc:subfield[@code='r']" /> | |
</xsl:for-each> | |
</td> | |
<xsl:if test="marc:subfield[@code='a']"> | |
<td class="callno"> | |
<div> | |
<xsl:attribute name="id"><xsl:value-of select="marc:subfield[@code='a']"/></xsl:attribute> | |
<xsl:attribute name="class">callnumber</xsl:attribute> | |
<xsl:value-of select="marc:subfield[@code='a']"/> | |
</div> | |
</td> | |
</xsl:if> | |
</tr> | |
</xsl:for-each> | |
</tbody> | |
</table> | |
</xsl:if> | |
<!-- <xsl:if test="marc:datafield[@tag=930]/marc:subfield[@code='a']"> | |
<div class="etat2coll"> | |
<h2 class="ntitle">Localiser la revue : </h2> | |
<xsl:for-each select="marc:datafield[@tag=930]"> | |
<xsl:if test="marc:subfield[@code='a']"> | |
<div id="subjectline"> | |
<span class="label"> | |
<xsl:call-template name="RCR"> | |
<xsl:with-param name="code" select="substring-before(marc:subfield[@code='5'], ':')"/> | |
</xsl:call-template> | |
</span> | |
<xsl:if test="marc:subfield[@code='a']"> | |
<xsl:text>: </xsl:text> | |
<span class="cote"><xsl:text>cote </xsl:text> | |
<xsl:value-of select="marc:subfield[@code='a']"/></span> | |
</xsl:if> | |
</div> | |
</xsl:if> | |
</xsl:for-each> | |
</div> | |
</xsl:if> | |
<xsl:if test="marc:datafield[@tag=955]/marc:subfield[@code='r']"> | |
<div class="etat2coll"> | |
<h2 class="ntitle">Numéros disponibles : </h2> | |
<xsl:for-each select="marc:datafield[@tag=955]"> | |
<xsl:if test="marc:subfield[@code='r']"> | |
<div id="subjectline"> | |
<span class="label"> | |
<xsl:call-template name="RCR"> | |
<xsl:with-param name="code" select="substring-before(marc:subfield[@code='5'], ':')"/> | |
</xsl:call-template> | |
</span> | |
<xsl:if test="marc:subfield[@code='r']"> | |
<xsl:text>: </xsl:text> | |
<xsl:value-of select="marc:subfield[@code='r']"/> | |
</xsl:if> | |
</div> | |
</xsl:if> | |
</xsl:for-each> | |
</div> | |
</xsl:if> --> | |
</div> | |
</xsl:if> | |
<!-- Icones Type de doc --> | |
<xsl:if test="marc:datafield[@tag=099]/marc:subfield[@code='t']"> | |
<div id="typdoc"> | |
<xsl:choose> | |
<xsl:when test="$typdoc='Revue'"> | |
<img src="/opac-tmpl/rennes2/css/img/icons/rennes2/revue.png" alt="Revue" title="Revue"/>Revue | |
</xsl:when> | |
<xsl:when test="$typdoc='Livre'"> | |
<img src="/opac-tmpl/rennes2/css/img/icons/rennes2/livre.png" alt="Livre" title="Livre"/><xsl:value-of select="$typdoc"/> | |
</xsl:when> | |
<xsl:when test="$typdoc='Thèse – Mémoire'"> | |
<img src="/opac-tmpl/rennes2/css/img/icons/rennes2/these.png" alt="Thèse – Mémoire" title="Thèse – Mémoire"/><xsl:value-of select="$typdoc"/> | |
</xsl:when> | |
<xsl:when test="$typdoc='Bande dessinée'"> | |
<img src="/opac-tmpl/rennes2/css/img/icons/rennes2/bd.png" alt="Bande dessinée" title="Bande dessinée"/><xsl:value-of select="$typdoc"/> | |
</xsl:when> | |
<xsl:when test="$typdoc='Carte – Plan'"> | |
<img src="/opac-tmpl/rennes2/css/img/icons/rennes2/carte.png" alt="Carte – Plan" title="Carte – Plan"/><xsl:value-of select="$typdoc"/> | |
</xsl:when> | |
<xsl:when test="$typdoc='Document multisupport'"> | |
<img src="/opac-tmpl/rennes2/css/img/icons/rennes2/multisupports.png" alt="Document multisupport" title="Document multisupport"/><xsl:value-of select="$typdoc"/> | |
</xsl:when> | |
<xsl:when test="$typdoc='Image – Photo'"> | |
<img src="/opac-tmpl/rennes2/css/img/icons/rennes2/image.png" alt="Image – Photo" title="Image – Photo"/><xsl:value-of select="$typdoc"/> | |
</xsl:when> | |
<xsl:when test="$typdoc='Audio'"> | |
<img src="/opac-tmpl/rennes2/css/img/icons/rennes2/audio.png" alt="Audio" title="Audio"/><xsl:value-of select="$typdoc"/> | |
</xsl:when> | |
<xsl:when test="$typdoc='Vidéo'"> | |
<xsl:text></xsl:text> | |
<img src="/opac-tmpl/rennes2/css/img/icons/rennes2/video.png" alt="Vidéo" title="Vidéo" class="DVD" id=""/><xsl:value-of select="$typdoc"/> | |
</xsl:when> | |
<xsl:when test="$typdoc='Partition'"> | |
<img src="/opac-tmpl/rennes2/css/img/icons/rennes2/partition.png" alt="Partition" title="Partition"/><xsl:value-of select="$typdoc"/> | |
</xsl:when> | |
<xsl:when test="$typdoc='Manuscrit'"> | |
<img src="/opac-tmpl/rennes2/css/img/icons/rennes2/manuscrit.png" alt="Manuscrit" title="Manuscrit"/><xsl:value-of select="$typdoc"/> | |
</xsl:when> | |
<xsl:when test="$typdoc='Test psychologique'"> | |
<img src="/opac-tmpl/rennes2/css/img/icons/rennes2/tests.png" alt="Test psychologique" title="Test psychologique"/><xsl:value-of select="$typdoc"/> | |
</xsl:when> | |
</xsl:choose> | |
</div> | |
</xsl:if> | |
<!-- End Icones Type de doc --> | |
<xsl:if test="marc:controlfield[@tag=009]"> | |
<div class="PPN" style="display:none"> | |
<xsl:value-of select="$ppn"/> | |
</div> | |
</xsl:if> | |
<!-- 330/339 Résumé --> | |
<xsl:if test="marc:datafield[@tag=330]"> | |
<div id="summary"> | |
<xsl:for-each select="marc:datafield[@tag=330]"> | |
<p><xsl:value-of select="marc:subfield[@code='a']"/></p> | |
<xsl:if test="position()!=last()"> | |
<hr></hr> | |
</xsl:if> | |
</xsl:for-each> | |
</div> | |
</xsl:if> | |
<xsl:if test="marc:datafield[@tag=339]"> | |
<div id="summary"> | |
<xsl:for-each select="marc:datafield[@tag=339]"> | |
<p><xsl:value-of select="marc:subfield[@code='a']"/></p> | |
<xsl:if test="position()!=last()"> | |
<hr></hr> | |
</xsl:if> | |
</xsl:for-each> | |
</div> | |
</xsl:if> | |
<!-- 359 TdM --> | |
<xsl:if test="marc:datafield[@tag=359]"> | |
<div id="toc"> | |
<ul> | |
<xsl:variable name="souschamps"><xsl:text>bcdefghi</xsl:text></xsl:variable> | |
<xsl:for-each select="marc:datafield[@tag=359]"> | |
<xsl:for-each select="marc:subfield"> | |
<xsl:if test="contains($souschamps, @souschamp)"> | |
<li><xsl:value-of select="text()"/></li> | |
</xsl:if> | |
</xsl:for-each> | |
</xsl:for-each> | |
</ul> | |
</div> | |
</xsl:if> | |
<!-- 100 | |
<xsl:if test="marc:datafield[@tag=100]"> | |
<div id="toc"> | |
<xsl:for-each select="marc:datafield[@tag=100]"> | |
<xsl:call-template name="subfieldSelect"> | |
<xsl:with-param name="codes">a</xsl:with-param> | |
</xsl:call-template> | |
</xsl:for-each> | |
</div> | |
</xsl:if> --> | |
<!--<xsl:if test="count(key('intralinks', marc:datafield[@tag=456]/marc:subfield[@code='0']))>0 or count(key('intralinks', marc:datafield[@tag=452]/marc:subfield[@code='0']))>0 "> | |
<br/> | |
<span class="results_summary"> | |
<xsl:text> Vous pouvez consulter ce document en </xsl:text> | |
<a style="font-size:110%"> | |
<xsl:choose> | |
<xsl:when test="marc:datafield[@tag=456]"> | |
<xsl:attribute name="href"> | |
/cgi-bin/koha/catalogue/search.pl?q=<xsl:value-of select="marc:datafield[@tag=456]/marc:subfield[@code='0']"/> | |
</xsl:attribute> | |
</xsl:when> | |
<xsl:otherwise> | |
<xsl:attribute name="href"> | |
/cgi-bin/koha/catalogue/search.pl?q=<xsl:value-of select="marc:datafield[@tag=452]/marc:subfield[@code='0']"/> | |
</xsl:attribute> | |
</xsl:otherwise> | |
</xsl:choose> | |
<span style="color:green">version numérique</span> | |
</a> | |
</span> | |
</xsl:if>--> | |
<!--<xsl:if test="marc:controlfield[@tag=009]"> | |
<span class="results_summary"><br/> | |
<xsl:if test="$leader6!='l'"> | |
<xsl:text> => Ce document est également disponible dans </xsl:text> | |
<a><xsl:attribute name="href">http://www.sudoc.abes.fr/DB=2.1/SET=252/TTL=2/CMD?PRS=HOL/SHW?FRST=1&ACT=SRCHA&IKT=1016&SRT=RLV&TRM=ppn+<xsl:value-of select="marc:controlfield[@tag=009]"/></xsl:attribute>d'autres bibliothèques françaises | |
</a> | |
</xsl:if> | |
</span> | |
</xsl:if>--> | |
<!-- 780 --> | |
<xsl:if test="marc:datafield[@tag=780]"> | |
<xsl:for-each select="marc:datafield[@tag=780]"> | |
<span class="results_summary"> | |
<span class="label"> | |
<xsl:choose> | |
<xsl:when test="@ind2=0"> | |
Suite de :</xsl:when> | |
<xsl:when test="@ind2=1"> | |
Continues in part: | |
</xsl:when> | |
<xsl:when test="@ind2=2"> | |
Supersedes: | |
</xsl:when> | |
<xsl:when test="@ind2=3"> | |
Supersedes in part: | |
</xsl:when> | |
<xsl:when test="@ind2=4"> | |
Formed by the union: ... and: ... | |
</xsl:when> | |
<xsl:when test="@ind2=5"> | |
Absorbed: | |
</xsl:when> | |
<xsl:when test="@ind2=6"> | |
Absorbed in part: | |
</xsl:when> | |
<xsl:when test="@ind2=7"> | |
Separated from: | |
</xsl:when> | |
</xsl:choose> | |
</span> | |
<xsl:variable name="f780"> | |
<xsl:call-template name="subfieldSelect"> | |
<xsl:with-param name="codes">at</xsl:with-param> | |
</xsl:call-template> | |
</xsl:variable> | |
<a> | |
<xsl:attribute name="href">/cgi-bin/koha/catalogue/search.pl?q=<xsl:value-of select="translate($f780, '()', '')"/></xsl:attribute> | |
<xsl:value-of select="translate($f780, '()', '')"/> | |
</a> | |
</span> | |
<xsl:choose> | |
<xsl:when test="@ind1=0"> | |
<span class="results_summary"> | |
<xsl:value-of select="marc:subfield[@code='n']"/> | |
</span> | |
</xsl:when> | |
</xsl:choose> | |
</xsl:for-each> | |
</xsl:if> | |
<!-- 785 --> | |
<xsl:if test="marc:datafield[@tag=785]"> | |
<xsl:for-each select="marc:datafield[@tag=785]"> | |
<span class="results_summary"> | |
<span class="label"> | |
<xsl:choose> | |
<xsl:when test="@ind2=0"> | |
Continued by: | |
</xsl:when> | |
<xsl:when test="@ind2=1"> | |
Continued in part by: | |
</xsl:when> | |
<xsl:when test="@ind2=2"> | |
Superseded by: | |
</xsl:when> | |
<xsl:when test="@ind2=3"> | |
Superseded in part by: | |
</xsl:when> | |
<xsl:when test="@ind2=4"> | |
Absorbed by: | |
</xsl:when> | |
<xsl:when test="@ind2=5"> | |
Absorbed in part by: | |
</xsl:when> | |
<xsl:when test="@ind2=6"> | |
Split into .. and ...: | |
</xsl:when> | |
<xsl:when test="@ind2=7"> | |
Merged with ... to form ... | |
</xsl:when> | |
<xsl:when test="@ind2=8"> | |
Changed back to: | |
</xsl:when> | |
</xsl:choose> | |
</span> | |
<xsl:variable name="f785"> | |
<xsl:call-template name="subfieldSelect"> | |
<xsl:with-param name="codes">at</xsl:with-param> | |
</xsl:call-template> | |
</xsl:variable> | |
<a> | |
<xsl:attribute name="href">/cgi-bin/koha/catalogue/search.pl?q=<xsl:value-of select="translate($f785, '()', '')"/></xsl:attribute> | |
<xsl:value-of select="translate($f785, '()', '')"/> | |
</a> | |
</span> | |
</xsl:for-each> | |
</xsl:if> | |
</xsl:template> | |
<xsl:template name="nameABCDQ"> | |
<xsl:call-template name="chopPunctuation"> | |
<xsl:with-param name="chopString"> | |
<xsl:call-template name="subfieldSelect"> | |
<xsl:with-param name="codes">aq</xsl:with-param> | |
</xsl:call-template> | |
</xsl:with-param> | |
<xsl:with-param name="punctuation"> | |
<xsl:text>:,;/ </xsl:text> | |
</xsl:with-param> | |
</xsl:call-template> | |
<xsl:call-template name="termsOfAddress"/> | |
</xsl:template> | |
<xsl:template name="nameABCDN"> | |
<xsl:for-each select="marc:subfield[@code='a']"> | |
<xsl:call-template name="chopPunctuation"> | |
<xsl:with-param name="chopString" select="."/> | |
</xsl:call-template> | |
</xsl:for-each> | |
<xsl:for-each select="marc:subfield[@code='b']"> | |
<xsl:value-of select="."/> | |
</xsl:for-each> | |
<xsl:if test="marc:subfield[@code='c'] or marc:subfield[@code='d'] or marc:subfield[@code='n']"> | |
<xsl:call-template name="subfieldSelect"> | |
<xsl:with-param name="codes">cdn</xsl:with-param> | |
</xsl:call-template> | |
</xsl:if> | |
</xsl:template> | |
<xsl:template name="nameACDEQ"> | |
<xsl:call-template name="subfieldSelect"> | |
<xsl:with-param name="codes">acdeq</xsl:with-param> | |
</xsl:call-template> | |
</xsl:template> | |
<xsl:template name="termsOfAddress"> | |
<xsl:if test="marc:subfield[@code='b' or @code='c']"> | |
<xsl:call-template name="chopPunctuation"> | |
<xsl:with-param name="chopString"> | |
<xsl:call-template name="subfieldSelect"> | |
<xsl:with-param name="codes">bc</xsl:with-param> | |
</xsl:call-template> | |
</xsl:with-param> | |
</xsl:call-template> | |
</xsl:if> | |
</xsl:template> | |
<xsl:template name="part"> | |
<xsl:variable name="partNumber"> | |
<xsl:call-template name="specialSubfieldSelect"> | |
<xsl:with-param name="axis">n</xsl:with-param> | |
<xsl:with-param name="anyCodes">n</xsl:with-param> | |
<xsl:with-param name="afterCodes">fghkdlmor</xsl:with-param> | |
</xsl:call-template> | |
</xsl:variable> | |
<xsl:variable name="partName"> | |
<xsl:call-template name="specialSubfieldSelect"> | |
<xsl:with-param name="axis">p</xsl:with-param> | |
<xsl:with-param name="anyCodes">p</xsl:with-param> | |
<xsl:with-param name="afterCodes">fghkdlmor</xsl:with-param> | |
</xsl:call-template> | |
</xsl:variable> | |
<xsl:if test="string-length(normalize-space($partNumber))"> | |
<xsl:call-template name="chopPunctuation"> | |
<xsl:with-param name="chopString" select="$partNumber"/> | |
</xsl:call-template> | |
</xsl:if> | |
<xsl:if test="string-length(normalize-space($partName))"> | |
<xsl:call-template name="chopPunctuation"> | |
<xsl:with-param name="chopString" select="$partName"/> | |
</xsl:call-template> | |
</xsl:if> | |
</xsl:template> | |
<xsl:template name="specialSubfieldSelect"> | |
<xsl:param name="anyCodes"/> | |
<xsl:param name="axis"/> | |
<xsl:param name="beforeCodes"/> | |
<xsl:param name="afterCodes"/> | |
<xsl:variable name="str"> | |
<xsl:for-each select="marc:subfield"> | |
<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])"> | |
<xsl:value-of select="text()"/> | |
<xsl:text> </xsl:text> | |
</xsl:if> | |
</xsl:for-each> | |
</xsl:variable> | |
<xsl:value-of select="substring($str,1,string-length($str)-1)"/> | |
</xsl:template> | |
</xsl:stylesheet> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment