From 00f6b5bdaa623a3bb2bec4b2aa0ff2ae94222875 Mon Sep 17 00:00:00 2001 From: Patrick Barroca <pbarroca@afi-sa.fr> Date: Wed, 18 Sep 2019 09:30:57 +0200 Subject: [PATCH] hotline #95686 : RT fix --- VERSIONS_HOTLINE/95686 | 2 +- library/Class/Notice/Xsl.php | 1 - tests/scenarios/Xsl/break_line.xsl | 803 ----------------------------- 3 files changed, 1 insertion(+), 805 deletions(-) delete mode 100644 tests/scenarios/Xsl/break_line.xsl diff --git a/VERSIONS_HOTLINE/95686 b/VERSIONS_HOTLINE/95686 index 05baf0c2f1c..6495950e255 100644 --- a/VERSIONS_HOTLINE/95686 +++ b/VERSIONS_HOTLINE/95686 @@ -1 +1 @@ - - ticket #95686 : [XSLT] Prise en charge des sauts de ligne dans les feuilles de style \ No newline at end of file + - ticket #95686 : Notices : L'affichage personnalisé par XSLT conserve désormais les sauts de ligne du XML source permettant d'écrire des règles XSL les concernant \ No newline at end of file diff --git a/library/Class/Notice/Xsl.php b/library/Class/Notice/Xsl.php index 28dcd25024f..836b13ba311 100644 --- a/library/Class/Notice/Xsl.php +++ b/library/Class/Notice/Xsl.php @@ -87,7 +87,6 @@ class Class_Notice_Xsl { if(!$marc = $this->_record->getUnimarc()) return ''; - return $this->filePutMarcToXML($marc); } diff --git a/tests/scenarios/Xsl/break_line.xsl b/tests/scenarios/Xsl/break_line.xsl deleted file mode 100644 index adc54beb5d8..00000000000 --- a/tests/scenarios/Xsl/break_line.xsl +++ /dev/null @@ -1,803 +0,0 @@ - - -<!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:xsl="http://www.w3.org/1999/XSL/Transform" - exclude-result-prefixes="marc items"> - -<xsl:output method = "html" indent="yes" omit-xml-declaration = "yes" encoding="UTF-8"/> -<xsl:template match="/"> - <xsl:apply-templates/> -</xsl:template> - - -<!-- debut du report de utils --> - -<xsl:template name="datafield"> -<xsl:param name="tag"/> -<xsl:param name="ind1"><xsl:text> </xsl:text></xsl:param> -<xsl:param name="ind2"><xsl:text> </xsl:text></xsl:param> -<xsl:param name="subfields"/> -<xsl:element name="datafield"> -<xsl:attribute name="tag"> -<xsl:value-of select="$tag"/> -</xsl:attribute> -<xsl:attribute name="ind1"> -<xsl:value-of select="$ind1"/> -</xsl:attribute> -<xsl:attribute name="ind2"> -<xsl:value-of select="$ind2"/> -</xsl:attribute> -<xsl:copy-of select="$subfields"/> -</xsl:element> -</xsl:template> - - -<xsl:template name="replace_sab"> - <!-- with string s, replace substring a by string b --> - <!-- s, a and b are parameters determined upon calling --> - <xsl:param name="s" /> - <xsl:param name="a" /> - <xsl:param name="b" /> - <xsl:choose> - <xsl:when test="contains($s,$a)"> - <xsl:value-of select="substring-before($s,$a)" /> - <xsl:copy-of select="$b" /> - <xsl:call-template name="replace_sab"> - <xsl:with-param name="s" select="substring-after($s,$a)" /> - <xsl:with-param name="a" select="$a" /> - <xsl:with-param name="b" select="$b" /> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$s" /> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="tag_215"> -<xsl:for-each select="marc:datafield[@tag=215]"> -<li> -<strong>Collation : </strong> -<xsl:if test="marc:subfield[@code='a']"> -<xsl:value-of select="marc:subfield[@code='a']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='c']"> : <xsl:value-of select="marc:subfield[@code='c']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='d']"> ; <xsl:value-of select="marc:subfield[@code='d']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='e']"> + <xsl:value-of select="marc:subfield[@code='e']"/> -</xsl:if> -</li> -</xsl:for-each> -</xsl:template> - -<!--Titre de serie autorité 461--> -<xsl:template name="tag_461"> -<xsl:for-each select="marc:datafield[@tag=461]"> -<li> -<strong>Titre de série : </strong> -<xsl:call-template name="addClassRtl" /> - <xsl:if test="marc:subfield[@code='t']"> - <a> - <xsl:attribute name="href"> - <xsl:text>/recherche/simple/rech_titres/</xsl:text> - <xsl:value-of select="translate(marc:subfield[@code='t'], '*?()', '+')"/> - </xsl:attribute> - <xsl:value-of select="marc:subfield[@code='t']"/> - </a> - </xsl:if> -<xsl:if test="marc:subfield[@code='e']"> : -<xsl:value-of select="marc:subfield[@code='e']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='f']"> / -<xsl:value-of select="marc:subfield[@code='f']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='d']"> , -<xsl:value-of select="marc:subfield[@code='d']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='p']"> , -<xsl:value-of select="marc:subfield[@code='p']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='v']">, -<xsl:value-of select="marc:subfield[@code='v']"/> -</xsl:if> -</li> -</xsl:for-each> -</xsl:template> - -<!--Titre de serie non autorité 461--> -<xsl:template name="tag_461bis"> -<xsl:for-each select="marc:datafield[@tag=461][1]"> -<li> -<strong>Dans : </strong> -<xsl:call-template name="addClassRtl" /> -<xsl:call-template name="addClassRtl" /> - <xsl:if test="marc:subfield[@code='t']"> - <a> - <xsl:attribute name="href"> - <xsl:text>/recherche/simple/rech_titres/</xsl:text> - <xsl:value-of select="translate(marc:subfield[@code='t'], '*?()', '+')"/> - </xsl:attribute> - <xsl:value-of select="marc:subfield[@code='t']"/> - </a> - </xsl:if> -<xsl:if test="marc:subfield[@code='e']"> : -<xsl:value-of select="marc:subfield[@code='e']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='f']"> / -<xsl:value-of select="marc:subfield[@code='f']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='d']"> , -<xsl:value-of select="marc:subfield[@code='d']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='p']"> , -<xsl:value-of select="marc:subfield[@code='p']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='v']">, -<xsl:value-of select="marc:subfield[@code='v']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='w']"> - -<xsl:value-of select="marc:subfield[@code='w']"/> -</xsl:if> -</li> -</xsl:for-each> -</xsl:template> - -<!--Titre dépouillé 463--> -<xsl:template name="tag_463"> -<xsl:for-each select="marc:datafield[@tag=463][1]"> -<li> -<strong>Titre dépouillé : </strong> -<xsl:call-template name="addClassRtl" /> -<xsl:call-template name="addClassRtl" /> - <xsl:if test="marc:subfield[@code='t']"> - <a> - <xsl:attribute name="href"> - <xsl:text>/recherche/simple/rech_titres/</xsl:text> - <xsl:value-of select="translate(marc:subfield[@code='t'], '*?()', '+')"/> - </xsl:attribute> - <xsl:value-of select="marc:subfield[@code='t']"/> - </a> - </xsl:if> -<xsl:if test="marc:subfield[@code='e']"> : -<xsl:value-of select="marc:subfield[@code='e']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='f']"> / -<xsl:value-of select="marc:subfield[@code='f']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='d']"> , -<xsl:value-of select="marc:subfield[@code='d']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='p']"> , -<xsl:value-of select="marc:subfield[@code='p']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='v']">, -<xsl:value-of select="marc:subfield[@code='v']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='w']"> - -<xsl:value-of select="marc:subfield[@code='w']"/> -</xsl:if> -</li> -</xsl:for-each> -</xsl:template> - -<xsl:template name="tag_4xx"> -<xsl:param name="tag" /> -<xsl:param name="label" /> -<xsl:if test="marc:datafield[@tag=$tag]"> -<li> -<strong><xsl:value-of select="$label" /> : </strong> -<xsl:for-each select="marc:datafield[@tag=$tag]"> -<span> -<xsl:call-template name="addClassRtl" /> -<xsl:call-template name="addClassRtl" /> - <xsl:if test="marc:subfield[@code='t']"> - <a> - <xsl:attribute name="href"> - <xsl:text>/recherche/simple/rech_titres/</xsl:text> - <xsl:value-of select="translate(marc:subfield[@code='t'], '*?()', '+')"/> - </xsl:attribute> - <xsl:value-of select="marc:subfield[@code='t']"/> - </a> - </xsl:if> -<xsl:if test="marc:subfield[@code='c']"> : <xsl:value-of select="marc:subfield[@code='c']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='d']"> ; <xsl:value-of select="marc:subfield[@code='d']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='e'][1]"> - <xsl:value-of select="marc:subfield[@code='e'][1]"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='f'][1]"> - <xsl:value-of select="marc:subfield[@code='f'][1]"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='g'][1]"> - <xsl:value-of select="marc:subfield[@code='g'][1]"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='h'][1]"> - <xsl:value-of select="marc:subfield[@code='h'][1]"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='i'][1]"> - <xsl:value-of select="marc:subfield[@code='i'][1]"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='l'][1]"> - <xsl:value-of select="marc:subfield[@code='l'][1]"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='v'][1]"> , <xsl:value-of select="marc:subfield[@code='v'][1]"/> -</xsl:if> -</span> -<xsl:if test="not (position() = last())"> -<xsl:text> ; </xsl:text> -</xsl:if> -</xsl:for-each> -</li> -</xsl:if> -</xsl:template> - - -<!--Public 995q--> -<xsl:template name="public"> -<xsl:if test="marc:datafield[@tag=995]/marc:subfield[@code='q']"> -<li> -<strong>Public : </strong> -<xsl:for-each select="marc:datafield[@tag=995]/marc:subfield[@code='q']"> -<xsl:if test="position() = 1"> -<xsl:value-of select="." /> -</xsl:if></xsl:for-each> -</li> -</xsl:if> -</xsl:template> - -<!--Fonds 995h--> -<xsl:template name="fonds"> -<xsl:if test="marc:datafield[@tag=995]/marc:subfield[@code='h']"> -<li> -<strong>Fonds : </strong> -<xsl:for-each select="marc:datafield[@tag=995]/marc:subfield[@code='h']"> -<xsl:if test="position() = 1"> -<xsl:value-of select="." /> -</xsl:if></xsl:for-each> -</li> -</xsl:if> -</xsl:template> - -<xsl:template name="subfieldSelect"> -<xsl:param name="codes"/> -<xsl:param name="delimeter"><xsl:text> </xsl:text></xsl:param> -<xsl:param name="subdivCodes"/> -<xsl:param name="subdivDelimiter"/> -<xsl:variable name="str"> -<xsl:for-each select="marc:subfield"> -<xsl:if test="contains($codes, @code)"> -<xsl:if test="contains($subdivCodes, @code)"> -<xsl:value-of select="$subdivDelimiter"/> -</xsl:if> -<xsl:value-of select="text()"/><xsl:value-of select="$delimeter"/> -</xsl:if> -</xsl:for-each> -</xsl:variable> -<xsl:value-of select="substring($str,1,string-length($str)-string-length($delimeter))"/> -</xsl:template> - -<xsl:template name="buildSpaces"> -<xsl:param name="spaces"/> -<xsl:param name="char"><xsl:text> </xsl:text></xsl:param> -<xsl:if test="$spaces>0"> -<xsl:value-of select="$char"/> -<xsl:call-template name="buildSpaces"> -<xsl:with-param name="spaces" select="$spaces - 1"/> -<xsl:with-param name="char" select="$char"/> -</xsl:call-template> -</xsl:if> -</xsl:template> - - -<xsl:template name="chopSpecialCharacters"> -<xsl:param name="title" /> -<xsl:variable name="ntitle" -select="translate($title, '˜œ슜슛슘슈슉','')"/> -<xsl:value-of select="$ntitle" /> -</xsl:template> - -<xsl:template name="chopPunctuation"> -<xsl:param name="chopString"/> -<xsl:variable name="length" select="string-length($chopString)"/> -<xsl:choose> -<xsl:when test="$length=0"/> -<xsl:when test="contains('.:,;/ ', substring($chopString,$length,1))"> -<xsl:call-template name="chopPunctuation"> -<xsl:with-param name="chopString" select="substring($chopString,1,$length - 1)"/> -</xsl:call-template> -</xsl:when> -<xsl:when test="not($chopString)"/> -<xsl:otherwise><xsl:value-of select="$chopString"/></xsl:otherwise> -</xsl:choose> -<xsl:text> </xsl:text> -</xsl:template> - -<xsl:template name="addClassRtl"> -<xsl:variable name="lang" select="marc:subfield[@code='7']" /> -<xsl:if test="$lang = 'ha' or $lang = 'Hebrew' or $lang = 'fa' or $lang = 'Arabe'"> -<xsl:attribute name="class">rtl</xsl:attribute> -</xsl:if> -</xsl:template> - -<xsl:template name="tag_title"> -<xsl:param name="tag" /> -<xsl:param name="label" /> -<xsl:if test="marc:datafield[@tag=$tag]"> -<li> -<strong><xsl:value-of select="$label"/>: </strong> -<xsl:for-each select="marc:datafield[@tag=$tag]"> -<xsl:value-of select="marc:subfield[@code='a']" /> -<xsl:if test="marc:subfield[@code='d']"> -<xsl:text> : </xsl:text> -<xsl:value-of select="marc:subfield[@code='e']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='e']"> -<xsl:for-each select="marc:subfield[@code='e']"> -<xsl:text> </xsl:text> -<xsl:value-of select="."/> -</xsl:for-each> -</xsl:if> -<xsl:if test="marc:subfield[@code='f']"> -<xsl:text> / </xsl:text> -<xsl:value-of select="marc:subfield[@code='f']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='h']"> -<xsl:text>, </xsl:text> -<xsl:value-of select="marc:subfield[@code='h']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='i']"> -<xsl:text>, </xsl:text> -<xsl:value-of select="marc:subfield[@code='i']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='v']"> -<xsl:text>, </xsl:text> -<xsl:value-of select="marc:subfield[@code='v']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='x']"> -<xsl:text>, </xsl:text> -<xsl:value-of select="marc:subfield[@code='x']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='z']"> -<xsl:text>, </xsl:text> -<xsl:value-of select="marc:subfield[@code='z']"/> -</xsl:if> -</xsl:for-each> -</li> -</xsl:if> -</xsl:template> - - - <xsl:template name="tag_subject"> - <xsl:param name="tag" /> - <xsl:param name="label" /> - <xsl:if test="marc:datafield[@tag=$tag]"> - <li> - <strong><xsl:value-of select="$label"/>: </strong> - <xsl:for-each select="marc:datafield[@tag=$tag]"> - <a> - <xsl:attribute name="href">/recherche/simple/rech_matieres/<xsl:value-of select="translate(marc:subfield[@code='a'], '*?()', '+')"/></xsl:attribute> - <xsl:call-template name="chopPunctuation"> - <xsl:with-param name="chopString"> - <xsl:call-template name="subfieldSelect"> - <xsl:with-param name="codes">abcdjpvxyz</xsl:with-param> - <xsl:with-param name="subdivCodes">jpxyz</xsl:with-param> - <xsl:with-param name="subdivDelimiter">-- </xsl:with-param> - </xsl:call-template> - </xsl:with-param> - </xsl:call-template> - </a> - <xsl:if test="not (position()=last())"> - <xsl:text> | </xsl:text> - </xsl:if> - </xsl:for-each> - </li> - </xsl:if> - </xsl:template> - - -<xsl:template name="tag_7xx"> - <xsl:param name="tag" /> - <xsl:param name="label" /> - <xsl:if test="marc:datafield[@tag=$tag]"> - <p class="xslt4"> - <xsl:for-each select="marc:datafield[@tag=$tag]"> - <span> - <xsl:call-template name="addClassRtl" /> - <a> - <xsl:attribute name="href">/recherche/simple/rech_auteurs/<xsl:value-of select="marc:subfield[@code='b']"/><xsl:text> </xsl:text><xsl:value-of select="marc:subfield[@code='a']"/></xsl:attribute> - <xsl:if test="marc:subfield[@code='a']"> - <xsl:value-of select="marc:subfield[@code='a']"/> - </xsl:if> - <xsl:if test="marc:subfield[@code='b']"> - <xsl:text>, </xsl:text> - <xsl:value-of select="marc:subfield[@code='b']"/> - </xsl:if> - <xsl:if test="marc:subfield[@code='c']"> - <xsl:text>, </xsl:text> - <xsl:value-of select="marc:subfield[@code='c']"/> - </xsl:if> - <xsl:if test="marc:subfield[@code='d']"> - <xsl:text> </xsl:text> - <xsl:value-of select="marc:subfield[@code='d']"/> - </xsl:if> - <xsl:if test="marc:subfield[@code='e']"> - <xsl:text> </xsl:text> - <xsl:value-of select="marc:subfield[@code='e']"/> - </xsl:if> - <xsl:if test="marc:subfield[@code='f']"> - <span dir="ltr"> - <xsl:text> (</xsl:text> - <xsl:value-of select="marc:subfield[@code='f']"/> - <xsl:text>)</xsl:text> - </span> - </xsl:if> - <xsl:if test="marc:subfield[@code='g']"> - <xsl:text> </xsl:text> - <xsl:value-of select="marc:subfield[@code='g']"/> - </xsl:if> - <xsl:if test="marc:subfield[@code='p']"> - <xsl:text> </xsl:text> - <xsl:value-of select="marc:subfield[@code='p']"/> - </xsl:if> - </a> - <xsl:if test="marc:subfield[@code='4']"> - <xsl:text> </xsl:text> - <xsl:value-of select="marc:subfield[@code='4']"/> - </xsl:if> - </span> - <xsl:if test="not (position() = last())"> - <xsl:text> ; </xsl:text> - </xsl:if> - </xsl:for-each> - </p> - </xsl:if> - </xsl:template> - -<!-- fin du report de utils --> - -<xsl:output method = "html" indent="yes" omit-xml-declaration = "yes" encoding="UTF-8"/> -<xsl:template match="/"> -<xsl:apply-templates/> -</xsl:template> - -<xsl:template match="marc:record"> -<xsl:variable name="Show856uAsImage" select="marc:sysprefs/marc:syspref[@name='Display856uAsImage']"/> -<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:datafield[@tag=090]/marc:subfield[@code='a']"/> -<xsl:variable name="champ_610" select="marc:datafield[@tag=610]/marc:subfield[@code='a']"/> -<xsl:variable name="ppn" select="marc:controlfield[@tag=009]"/> -<xsl:variable name="coverCD" select="marc:datafield[@tag=933]/marc:subfield[@code='a']"/> -<xsl:variable name="type_doc" select="marc:datafield[@tag=099]/marc:subfield[@code='t']"/> -<xsl:variable name="renvoi" select="marc:datafield[@tag=700]/@ind1"/> - -<!-- -<xsl:if test="marc:datafield[@tag=200]"> -<xsl:for-each select="marc:datafield[@tag=200]"> -<h1 id="xslt"> -<xsl:call-template name="addClassRtl" /> -<xsl:variable name="title" select="marc:subfield[@code='a']"/> -<xsl:variable name="ntitle" -select="translate($title, '˜œ슜슛슘슈슉','')"/> - <xsl:value-of select="marc:subfield[@code='a'][1]" /> -<xsl:if test="marc:subfield[@code='e'][1]"><xsl:text> : </xsl:text><xsl:value-of select="marc:subfield[@code='e'][1]" /></xsl:if> -<xsl:if test="marc:subfield[@code='c'][1]"><xsl:text> . </xsl:text><xsl:value-of select="marc:subfield[@code='c'][1]" /></xsl:if> -<xsl:if test="marc:subfield[@code='d'][1]"><xsl:text> = </xsl:text><xsl:value-of select="marc:subfield[@code='d'][1]" /></xsl:if> -<xsl:if test="marc:subfield[@code='h'][1]"><xsl:text> . </xsl:text><xsl:value-of select="marc:subfield[@code='h'][1]" /></xsl:if> -<xsl:if test="marc:subfield[@code='i'][1]"><xsl:text> . </xsl:text><xsl:value-of select="marc:subfield[@code='i'][1]" /></xsl:if> -<xsl:if test="marc:subfield[@code='e'][2]"><xsl:text> :</xsl:text><xsl:value-of select="marc:subfield[@code='e'][2]" /></xsl:if> -<xsl:if test="marc:subfield[@code='c'][2]"><xsl:text> . </xsl:text><xsl:value-of select="marc:subfield[@code='c'][1]" /></xsl:if> -<xsl:if test="marc:subfield[@code='d'][2]"><xsl:text> = </xsl:text><xsl:value-of select="marc:subfield[@code='d'][2]" /></xsl:if> -<xsl:if test="marc:subfield[@code='h'][2]"><xsl:text> . </xsl:text><xsl:value-of select="marc:subfield[@code='h'][2]" /></xsl:if> -<xsl:if test="marc:subfield[@code='i'][2]"><xsl:text> . </xsl:text><xsl:value-of select="marc:subfield[@code='i'][2]" /></xsl:if> -<xsl:if test="marc:subfield[@code='e'][3]"><xsl:text> : </xsl:text><xsl:value-of select="marc:subfield[@code='e'][3]" /></xsl:if> -<xsl:if test="marc:subfield[@code='c'][3]"><xsl:text> .</xsl:text><xsl:value-of select="marc:subfield[@code='c'][3]" /></xsl:if> -<xsl:if test="marc:subfield[@code='d'][3]"><xsl:text> = </xsl:text><xsl:value-of select="marc:subfield[@code='d'][3]" /></xsl:if> -<xsl:if test="marc:subfield[@code='h'][3]"><xsl:text> . </xsl:text><xsl:value-of select="marc:subfield[@code='h'][3]" /></xsl:if> -<xsl:if test="marc:subfield[@code='i'][3]"><xsl:text> . </xsl:text><xsl:value-of select="marc:subfield[@code='i'][3]" /></xsl:if> -<xsl:if test="marc:subfield[@code='a'][2]"><xsl:text>. </xsl:text><xsl:value-of select="marc:subfield[@code='a'][2]" /></xsl:if> -<xsl:if test="marc:subfield[@code='a'][3]"><xsl:text>. </xsl:text><xsl:value-of select="marc:subfield[@code='a'][3]" /></xsl:if> - -</h1> -</xsl:for-each> -</xsl:if> ---> - -<!-- -<xsl:if test="not(contains($renvoi,'z'))"> -<xsl:call-template name="tag_7xx"> -<xsl:with-param name="tag">700</xsl:with-param> -<xsl:with-param name="label"></xsl:with-param> -</xsl:call-template> -</xsl:if> - -<xsl:call-template name="tag_7xx"> -<xsl:with-param name="tag">710</xsl:with-param> -<xsl:with-param name="label"></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"></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"></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"></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"></xsl:with-param> - </xsl:call-template> - ---> - -<xsl:if test="marc:datafield[@tag=210]"> - <p id="xslt3"> - <xsl:for-each select="marc:datafield[@tag=210]"> -<strong>Edition : </strong> - <a> - <xsl:attribute name="href">/recherche/simple/rech_HEDIT/<xsl:value-of select="marc:subfield[@code='c']"/></xsl:attribute> -<xsl:value-of select="marc:subfield[@code='c']"/> -</a> - <xsl:text>, </xsl:text> - <xsl:value-of select="marc:subfield[@code='d']"/> - </xsl:for-each> - </p> - </xsl:if> - - <xsl:call-template name="tag_title"> - <xsl:with-param name="tag">225</xsl:with-param> - <xsl:with-param name="label">Collection</xsl:with-param> - </xsl:call-template> - -<xsl:if test="marc:datafield[@tag=215]"> - <p id="xslt4"> - <xsl:for-each select="marc:datafield[@tag=215]"> -<strong>Description : </strong> -<xsl:value-of select="marc:subfield[@code='c']"/> - </xsl:for-each> - </p> - </xsl:if> - -<xsl:if test="marc:datafield[@tag=215][e]"> - <p id="xslt6"> - <xsl:for-each select="marc:datafield[@tag=215]"> -<strong>Matériel complémentaire : </strong> -<xsl:value-of select="marc:subfield[@code='e']"/> - </xsl:for-each> - </p> - </xsl:if> - -<xsl:if test="marc:datafield[@tag=300]"> - <p id="xslt7"> - <xsl:for-each select="marc:datafield[@tag=300]"> -<strong>Détail du contenu : </strong> -<xsl:if test="marc:subfield[@code='a']"> - - <xsl:call-template name="replace_sab"> - <xsl:with-param name="s" select="marc:subfield[@code='a']" /> - <xsl:with-param name="a" select="'
'" /> - <xsl:with-param name="b"><br /></xsl:with-param> - </xsl:call-template> - -</xsl:if> -</xsl:for-each> - </p> - </xsl:if> - - <xsl:if test="marc:datafield[@tag=462]"> - <li> - <strong>Document rattaché : </strong> - <ul> - <xsl:for-each select="marc:datafield[@tag=462]"> - <li> - <xsl:call-template name="addClassRtl" /> - <xsl:if test="marc:subfield[@code='t']"> - <a> - <xsl:attribute name="href"> - <xsl:text>/recherche/simple/expressionRecherche/</xsl:text> - <xsl:value-of select="translate(marc:subfield[@code='0'], '*?()', '+')"/> - </xsl:attribute> - <xsl:value-of select="marc:subfield[@code='t']"/> - </a> - </xsl:if> - <xsl:if test="marc:subfield[@code='e']"> : - <xsl:value-of select="marc:subfield[@code='e']"/> - </xsl:if> - <xsl:if test="marc:subfield[@code='f']"> / - <xsl:value-of select="marc:subfield[@code='f']"/> - </xsl:if> - <xsl:if test="marc:subfield[@code='v']">, - <xsl:value-of select="marc:subfield[@code='v']"/> - </xsl:if> - </li> - </xsl:for-each> - </ul> - - </li> - </xsl:if> - -<!--&&9 Subject - Name 600--> -<xsl:for-each select="marc:datafield[@tag=600]"> - <li> - <strong>Sujet : </strong> - <span> -<xsl:if test="marc:subfield[@code='a']"> - <xsl:value-of select="marc:subfield[@code='a']"/> - </xsl:if> -<xsl:if test="marc:subfield[@code='a'] and marc:subfield[@code='b']"> -<xsl:text>, </xsl:text> - <xsl:value-of select="marc:subfield[@code='b']"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='a'] and marc:subfield[@code='d']"> -<xsl:text>, </xsl:text> - <xsl:value-of select="marc:subfield[@code='d']"/> - </xsl:if> -<xsl:if test="marc:subfield[@code='a'] and marc:subfield[@code='c']"> -<xsl:text>, </xsl:text> - <xsl:value-of select="marc:subfield[@code='c']"/> - </xsl:if> -<xsl:if test="marc:subfield[@code='a'] and marc:subfield[@code='f']"> -<xsl:text> (</xsl:text> - <xsl:value-of select="marc:subfield[@code='f']"/> -<xsl:text>) </xsl:text> </xsl:if> -<xsl:if test="marc:subfield[@code='a'] and marc:subfield[@code='x']"> -<xsl:text> -- </xsl:text> - <xsl:value-of select="marc:subfield[@code='x'][1]"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='x'][2]"> -<xsl:text> -- </xsl:text> -<xsl:value-of select="marc:subfield[@code='x'][2]"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='x'][3]"> -<xsl:text> -- </xsl:text> -<xsl:value-of select="marc:subfield[@code='x'][3]"/> -</xsl:if> -<xsl:if test="marc:subfield[@code='a'] and marc:subfield[@code='y']"> -<xsl:text> -- </xsl:text> - <xsl:value-of select="marc:subfield[@code='y']"/> - </xsl:if> - -</span> - </li> - </xsl:for-each> - - - <xsl:if test="marc:datafield[@tag=330]"> - <p id="xslt2"> - <strong>Résumé : </strong> - <xsl:for-each select="marc:datafield[@tag=330]"> - <xsl:value-of select="marc:subfield[@code='a']"/> - <xsl:choose> - <xsl:when test="position()=last()"> - <xsl:text> </xsl:text> - </xsl:when> - <xsl:otherwise> - <br></br><xsl:text> </xsl:text> - </xsl:otherwise> - </xsl:choose> - </xsl:for-each> - </p> - </xsl:if> - -<xsl:call-template name="tag_4xx"> -<xsl:with-param name="tag">464</xsl:with-param> -<xsl:with-param name="label">Contenu</xsl:with-param> -</xsl:call-template> - - -<!-- -<xsl:if test="marc:datafield[@tag=210]"> - <p id="xslt3"> - <xsl:for-each select="marc:datafield[@tag=210]"> - <xsl:value-of select="marc:subfield[@code='c']"/> - <xsl:text>, </xsl:text> - <xsl:value-of select="marc:subfield[@code='d']"/> - </xsl:for-each> - </p> - </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> -- GitLab