Index: third_party/docbook-xsl-1.78.0/html/biblio-iso690.xsl |
diff --git a/third_party/docbook-xsl-1.78.0/html/biblio-iso690.xsl b/third_party/docbook-xsl-1.78.0/html/biblio-iso690.xsl |
deleted file mode 100644 |
index 375f3671662e2d82e49398f67de1bcba8e231173..0000000000000000000000000000000000000000 |
--- a/third_party/docbook-xsl-1.78.0/html/biblio-iso690.xsl |
+++ /dev/null |
@@ -1,1300 +0,0 @@ |
-<?xml version="1.0" encoding="UTF-8"?> |
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" |
- version='1.0'> |
- |
- |
-<!-- ******************************************************************** |
- $Id: biblio.xsl 6402 2006-11-12 08:23:21Z bobstayton $ |
- ******************************************************************** |
- |
- This file is part of the XSL DocBook Stylesheet distribution. |
- See ../README or http://docbook.sf.net/release/xsl/current/ for |
- copyright and other information. |
- |
- The original code for processing bibliography in ISO690 style |
- was provided by Jana Dvorakova <jana4u@seznam.cz> |
- |
- ******************************************************************** --> |
- |
-<!-- ==================================================================== --> |
- |
-<!-- if biblioentry.alt.primary.seps is set to nonzero value then use alternative separators for primary responsibility - $alt.person.two.sep, $alt.person.last.sep, $alt.person.more.sep --> |
-<xsl:param name="biblioentry.alt.primary.seps" select="0"/> |
- |
-<!-- how many authors will be printed if there is more than three authors - set to number 1 (default value), 2 or 3 --> |
-<xsl:param name="biblioentry.primary.count" select="1"/> |
- |
-<!-- ==================================================================== --> |
- |
-<xsl:template name="iso690.makecitation"> |
-<!-- Types of resources --> |
- <xsl:choose> |
- |
- <!-- SYSTEMS OF ELECTRONIC COMMUNICATION : ENTIRE MESSAGE SYSTEM --> |
- <!-- same as Monographs --> |
- <xsl:when test="./@role='messagesystem'"> |
- <xsl:call-template name="iso690.monogr"/> |
- </xsl:when> |
- |
- <!-- SYSTEMS OF ELECTRONIC COMMUNICATION : ELECTRONIC MESSAGES --> |
- <!-- same as Contributions to Monographs --> |
- <xsl:when test="./@role='message'"> |
- <xsl:call-template name="iso690.paper.mon"/> |
- </xsl:when> |
- |
- <!-- SERIALS --> |
- <xsl:when test="./@role='serial' or ./biblioid/@class='issn' or ./issn"> |
- <xsl:call-template name="iso690.serial"/> |
- </xsl:when> |
- |
- <!-- PARTS OF MONOGRAPHS --> |
- <xsl:when test="./@role='part' or (./bibliomisc[@role='secnum']|./bibliomisc[@role='sectitle'])"> |
- <xsl:call-template name="iso690.monogr.part"/> |
- </xsl:when> |
- |
- <!-- CONTRIBUTIONS TO MONOGRAPHS --> |
- <xsl:when test="./@role='contribution' or (./biblioset/@relation='part' and ./biblioset/@relation='book')"> |
- <xsl:call-template name="iso690.paper.mon"/> |
- </xsl:when> |
- |
- <!-- ARTICLES, ETC., IN SERIALS --> |
- <xsl:when test="./@role='article' or (./biblioset/@relation='journal' and ./biblioset/@relation='article')"> |
- <xsl:call-template name="iso690.article"/> |
- </xsl:when> |
- |
- <!-- PATENT DOCUMENTS --> |
- <xsl:when test="./@role='patent' or (./bibliomisc[@role='patenttype'] and ./bibliomisc[@role='patentnum'])"> |
- <xsl:call-template name="iso690.patent"/> |
- </xsl:when> |
- |
- <!-- MONOGRAPHS --> |
- <xsl:otherwise> |
- <xsl:call-template name="iso690.monogr"/> |
- </xsl:otherwise> |
- |
- </xsl:choose> |
-</xsl:template> |
- |
-<!-- ==================================================================== --> |
- |
-<!-- MONOGRAPHS --> |
-<xsl:template name="iso690.monogr"> |
- <!-- Primary responsibility --> |
- <xsl:call-template name="iso690.primary"/> |
- <!-- Title and Type of medium --> |
- <xsl:call-template name="iso690.title"/> |
- <!-- Subordinate responsibility --> |
- <xsl:call-template name="iso690.secondary"/> |
- <!-- Edition --> |
- <xsl:call-template name="iso690.edition"/> |
- <!-- Place of publication, Publisher, Year/Date of publication, Date of update/revision, Date of citation --> |
- <xsl:call-template name="iso690.pub"/> |
- <!-- Extent --> |
- <xsl:call-template name="iso690.extent"/> |
- <!-- Series --> |
- <xsl:call-template name="iso690.serie"/> |
- <!-- Notes --> |
- <xsl:call-template name="iso690.notice"/> |
- <!-- Avaibility and access --> |
- <xsl:call-template name="iso690.access"/> |
- <!-- Standard number --> |
- <xsl:call-template name="iso690.isbn"/> |
-</xsl:template> |
- |
-<!-- SERIALS --> |
-<xsl:template name="iso690.serial"> |
- <!-- Title and Type of medium --> |
- <xsl:call-template name="iso690.title"/> |
- <!-- Responsibility [nonEL] --> |
- <xsl:if test="not(./bibliomisc[@role='medium'])"> |
- <xsl:call-template name="iso690.secondary"/> |
- </xsl:if> |
- <!-- Edition --> |
- <xsl:call-template name="iso690.edition"> |
- <xsl:with-param name="after" select="./bibliomisc[@role='issuing']"/> |
- </xsl:call-template> |
- <!-- Issue designation (date and/or num) [nonEL] --> |
- <xsl:if test="not(./bibliomisc[@role='medium'])"> |
- <xsl:call-template name="iso690.issuing"/> |
- </xsl:if> |
- <!-- Place of publication, Publisher, Year/Date of publication, Date of update/revision, Date of citation --> |
- <xsl:call-template name="iso690.pub"/> |
- <!-- Series --> |
- <xsl:call-template name="iso690.serie"/> |
- <!-- Notes --> |
- <xsl:call-template name="iso690.notice"/> |
- <!-- Avaibility and access --> |
- <xsl:call-template name="iso690.access"/> |
- <!-- Standard number --> |
- <xsl:call-template name="iso690.issn"/> |
-</xsl:template> |
- |
-<!-- PARTS OF MONOGRAPHS --> |
-<xsl:template name="iso690.monogr.part"> |
- <!-- Primary responsibility of host document --> |
- <xsl:call-template name="iso690.primary"/> |
- <!-- Title and Type of medium of host document --> |
- <xsl:call-template name="iso690.title"/> |
- <!-- Subordinate responsibility of host document [EL] --> |
- <xsl:if test="./bibliomisc[@role='medium']"> |
- <xsl:call-template name="iso690.secondary"/> |
- </xsl:if> |
- <!-- Edition --> |
- <xsl:call-template name="iso690.edition"> |
- <xsl:with-param name="after" select="./volumenum"/> |
- </xsl:call-template> |
- <!-- Numeration of the part [nonEL]--> |
- <xsl:if test="not(./bibliomisc[@role='medium'])"> |
- <xsl:call-template name="iso690.partnr"/> |
- <!-- Subordinate responsibility [nonEL] --> |
- <xsl:call-template name="iso690.secondary"/> |
- </xsl:if> |
- <!-- Place of publication, Publisher, Year/Date of publication, Date of update/revision, Date of citation --> |
- <xsl:call-template name="iso690.pub"/> |
- <!-- Location within host --> |
- <xsl:call-template name="iso690.part.location"/> |
- <xsl:if test="./bibliomisc[@role='medium']"> |
- <!-- Numeration within host document [EL] --> |
- <!-- Notes [EL] --> |
- <xsl:call-template name="iso690.notice"/> |
- <!-- Avaibility and access [EL] --> |
- <xsl:call-template name="iso690.access"/> |
- <!-- Standard number [EL] --> |
- <xsl:call-template name="iso690.isbn"/> |
- </xsl:if> |
-</xsl:template> |
- |
-<!-- CONTRIBUTIONS TO MONOGRAPHS --> |
-<xsl:template name="iso690.paper.mon"> |
-<!-- Contribution --> |
- <xsl:apply-templates mode="iso690.paper.part" select="./biblioset[@relation='part']"/> |
-<!-- In --> |
- <xsl:text>In </xsl:text> |
-<!-- Host --> |
- <xsl:apply-templates mode="iso690.paper.book" select="./biblioset[@relation='book']"/> |
-</xsl:template> |
- |
-<xsl:template match="biblioset" mode="iso690.paper.part"> |
-<!-- Contribution --> |
- <!-- Primary responsibility --> |
- <xsl:call-template name="iso690.primary"/> |
- <!-- Title --> |
- <xsl:call-template name="iso690.title"> |
- <xsl:with-param name="italic" select="0"/> |
- </xsl:call-template> |
-</xsl:template> |
- |
-<xsl:template match="biblioset" mode="iso690.paper.book"> |
-<!-- Host --> |
- <!-- Primary responsibility --> |
- <xsl:call-template name="iso690.primary"/> |
- <!-- Title and Type of medium --> |
- <xsl:call-template name="iso690.title"/> |
- <!-- Subordinate responsibility [EL] --> |
- <xsl:if test="./bibliomisc[@role='medium']"> |
- <xsl:call-template name="iso690.secondary"/> |
- </xsl:if> |
- <!-- Edition --> |
- <xsl:call-template name="iso690.edition"/> |
- <!-- Place of publication, Publisher, Year/Date of publication, Date of update/revision, Date of citation --> |
- <xsl:call-template name="iso690.paper.pub"/> |
- <!-- Numeration within host document [EL] --> |
- <!-- Location within host --> |
- <xsl:call-template name="iso690.location"/> |
- <xsl:if test="./bibliomisc[@role='medium']"> |
- <!-- Notes [EL] --> |
- <xsl:call-template name="iso690.notice"/> |
- <!-- Avaibility and access [EL] --> |
- <xsl:call-template name="iso690.access"/> |
- <!-- Standard number [EL] --> |
- <xsl:call-template name="iso690.isbn"/> |
- </xsl:if> |
-</xsl:template> |
- |
-<!-- ARTICLES, ETC., IN SERIALS --> |
-<xsl:template name="iso690.article"> |
-<!-- Article --> |
- <xsl:apply-templates mode="iso690.article.art" select="./biblioset[@relation='article']"/> |
-<!-- Serial --> |
- <xsl:apply-templates mode="iso690.article.jour" select="./biblioset[@relation='journal']"/> |
-</xsl:template> |
- |
-<xsl:template match="biblioset" mode="iso690.article.art"> |
-<!-- Article --> |
- <!-- Primary responsibility --> |
- <xsl:call-template name="iso690.primary"/> |
- <!-- Title --> |
- <xsl:call-template name="iso690.title"> |
- <xsl:with-param name="italic" select="0"/> |
- </xsl:call-template> |
- <!-- Subordinate responsibility [nonEL] --> |
- <xsl:if test="not(../*/bibliomisc[@role='medium'])"> |
- <xsl:call-template name="iso690.secondary"/> |
- </xsl:if> |
-</xsl:template> |
- |
-<xsl:template match="biblioset" mode="iso690.article.jour"> |
-<!-- Serial --> |
- <!-- Title and Type of medium --> |
- <xsl:call-template name="iso690.title"/> |
- <!-- Edition --> |
- <xsl:call-template name="iso690.edition"> |
- <xsl:with-param name="after" select="./pubdate[not(@role='issuing')]|./volumenum|./issuenum|./pagenums"/> |
- </xsl:call-template> |
- <!-- Number designation [EL] --> |
- <!-- Location within host --> |
- <xsl:call-template name="iso690.article.location"/> |
- <xsl:if test="./bibliomisc[@role='medium']"> |
- <!-- Notes [EL] --> |
- <xsl:call-template name="iso690.notice"/> |
- <!-- Avaibility and access [EL] --> |
- <xsl:call-template name="iso690.access"/> |
- <!-- Standard number [EL] --> |
- <xsl:call-template name="iso690.issn"/> |
- </xsl:if> |
-</xsl:template> |
- |
-<!-- PATENT DOCUMENTS --> |
-<xsl:template name="iso690.patent"> |
- <!-- Primary responsibility (applicant) --> |
- <xsl:call-template name="iso690.primary"/> |
- <!-- Title of the invention --> |
- <xsl:call-template name="iso690.title"/> |
- <!-- Subordinate responsibility --> |
- <xsl:call-template name="iso690.secondary"/> |
- <!-- Notes --> |
- <xsl:call-template name="iso690.notice"/> |
- <!-- Identification --> |
- <xsl:call-template name="iso690.pat.ident"/> |
-</xsl:template> |
- |
-<!-- ==================================================================== --> |
-<!-- Elements --> |
- |
-<!-- Primary responsibility --> |
-<xsl:template name="iso690.primary"> |
- <xsl:param name="primary.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'primary.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:choose> |
- <xsl:when test="./authorgroup/author|./author"> |
- <xsl:call-template name="iso690.author.list"> |
- <xsl:with-param name="person.list" select=".//authorgroup/author|.//author"/> |
- </xsl:call-template> |
- </xsl:when> |
- <xsl:when test="./authorgroup/editor|./editor"> |
- <xsl:call-template name="iso690.author.list"> |
- <xsl:with-param name="person.list" select=".//authorgroup/editor|.//editor"/> |
- </xsl:call-template> |
- </xsl:when> |
- <xsl:when test="./authorgroup/corpauthor|./corpauthor"> |
- <xsl:call-template name="iso690.author.list"> |
- <xsl:with-param name="person.list" select=".//authorgroup/corpauthor|.//corpauthor"/> |
- </xsl:call-template> |
- </xsl:when> |
- <xsl:otherwise> |
- <xsl:if test="(./firstname)and(./surname)"> |
- <xsl:call-template name="iso690.author"/> |
- <xsl:call-template name="iso690.endsep"> |
- <xsl:with-param name="text" select="string(./firstname[1])"/> |
- <xsl:with-param name="sep" select="$primary.sep"/> |
- </xsl:call-template> |
- </xsl:if> |
- </xsl:otherwise> |
- </xsl:choose> |
-</xsl:template> |
- |
-<xsl:template name="iso690.author.list"> |
- <xsl:param name="person.list" |
- select="author|corpauthor|editor"/> |
- <xsl:param name="person.count" select="count($person.list)"/> |
- <xsl:param name="count" select="1"/> |
- <xsl:param name="group" select="./authorgroup[@role='many']"/> |
- <xsl:param name="many" select="0"/> |
- |
- <xsl:param name="primary.many"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'primary.many'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:param name="primary.editor"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'primary.editor'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:param name="primary.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'primary.sep'"/></xsl:call-template> |
- </xsl:param> |
- |
- <xsl:choose> |
- <xsl:when test="$count > $person.count"></xsl:when> |
- <xsl:otherwise> |
- <xsl:choose> |
- <xsl:when test="$person.count < 4 and not($group)"> |
- <xsl:call-template name="iso690.author"> |
- <xsl:with-param name="node" select="$person.list[position()=$count]"/> |
- </xsl:call-template> |
- <xsl:choose> |
- <xsl:when test="$person.count = 2 and $count = 1 and $biblioentry.alt.primary.seps != 0"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'alt.person.two.sep'"/></xsl:call-template> |
- </xsl:when> |
- <xsl:when test="$person.count = 2 and $count = 1"> |
- <xsl:call-template name="gentext.template"> |
- <xsl:with-param name="context" select="'authorgroup'"/> |
- <xsl:with-param name="name" select="'sep2'"/> |
- </xsl:call-template> |
- </xsl:when> |
- <xsl:when test="$person.count > 2 and $count+1 = $person.count and $biblioentry.alt.primary.seps != 0"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'alt.person.last.sep'"/></xsl:call-template> |
- </xsl:when> |
- <xsl:when test="$person.count > 2 and $count+1 = $person.count"> |
- <xsl:call-template name="gentext.template"> |
- <xsl:with-param name="context" select="'authorgroup'"/> |
- <xsl:with-param name="name" select="'seplast'"/> |
- </xsl:call-template> |
- </xsl:when> |
- <xsl:when test="$count < $person.count and $biblioentry.alt.primary.seps != 0"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'alt.person.more.sep'"/></xsl:call-template> |
- </xsl:when> |
- <xsl:when test="$count < $person.count"> |
- <xsl:call-template name="gentext.template"> |
- <xsl:with-param name="context" select="'authorgroup'"/> |
- <xsl:with-param name="name" select="'sep'"/> |
- </xsl:call-template> |
- </xsl:when> |
- <xsl:when test="($count = $person.count)"> |
- <xsl:choose> |
- <xsl:when test="$many!=0"> |
- <xsl:if test="name($person.list[position()=$count])='editor'"> |
- <xsl:value-of select="$primary.editor"/> |
- </xsl:if> |
- <xsl:value-of select="$primary.many"/> |
- <xsl:call-template name="iso690.endsep"> |
- <xsl:with-param name="text" select="$primary.many"/> |
- <xsl:with-param name="sep" select="$primary.sep"/> |
- </xsl:call-template> |
- </xsl:when> |
- <xsl:when test="name($person.list[position()=$count])='editor'"> |
- <xsl:value-of select="$primary.editor"/> |
- <xsl:value-of select="$primary.sep"/> |
- </xsl:when> |
- <xsl:when test="name($person.list[position()=$count])='corpauthor'"> |
- <xsl:call-template name="iso690.endsep"> |
- <xsl:with-param name="text" select="string($person.list[position()=$count])"/> |
- <xsl:with-param name="sep" select="$primary.sep"/> |
- </xsl:call-template> |
- </xsl:when> |
- <xsl:otherwise> |
- <xsl:call-template name="iso690.endsep"> |
- <xsl:with-param name="text" select="string($person.list[position()=$count]//firstname[1])"/> |
- <xsl:with-param name="sep" select="$primary.sep"/> |
- </xsl:call-template> |
- </xsl:otherwise> |
- </xsl:choose> |
- </xsl:when> |
- </xsl:choose> |
- |
- <xsl:call-template name="iso690.author.list"> |
- <xsl:with-param name="person.list" select="$person.list"/> |
- <xsl:with-param name="person.count" select="$person.count"/> |
- <xsl:with-param name="count" select="$count+1"/> |
- <xsl:with-param name="many" select="$many"/> |
- <xsl:with-param name="group"/> |
- </xsl:call-template> |
- </xsl:when> |
- |
- <xsl:otherwise> |
- <xsl:choose> |
- <xsl:when test="($biblioentry.primary.count>=3) and ($person.count>=3)"> |
- <xsl:call-template name="iso690.author.list"> |
- <xsl:with-param name="person.list" select="$person.list[1]|$person.list[2]|$person.list[3]"/> |
- <xsl:with-param name="person.count" select="3"/> |
- <xsl:with-param name="count" select="1"/> |
- <xsl:with-param name="many" select="1"/> |
- <xsl:with-param name="group"/> |
- </xsl:call-template> |
- </xsl:when> |
- <xsl:when test="($biblioentry.primary.count>1) and ($person.count>1)"> |
- <xsl:call-template name="iso690.author.list"> |
- <xsl:with-param name="person.list" select="$person.list[1]|$person.list[2]"/> |
- <xsl:with-param name="person.count" select="2"/> |
- <xsl:with-param name="count" select="1"/> |
- <xsl:with-param name="many" select="1"/> |
- <xsl:with-param name="group"/> |
- </xsl:call-template> |
- </xsl:when> |
- <xsl:otherwise> |
- <xsl:call-template name="iso690.author.list"> |
- <xsl:with-param name="person.list" select="$person.list[1]"/> |
- <xsl:with-param name="person.count" select="1"/> |
- <xsl:with-param name="count" select="1"/> |
- <xsl:with-param name="many" select="1"/> |
- <xsl:with-param name="group"/> |
- </xsl:call-template> |
- </xsl:otherwise> |
- </xsl:choose> |
- </xsl:otherwise> |
- </xsl:choose> |
- </xsl:otherwise> |
- </xsl:choose> |
-</xsl:template> |
- |
-<xsl:template name="iso690.author"> |
- <xsl:param name="node" select="."/> |
- <xsl:param name="lastfirst.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'lastfirst.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:choose> |
- <xsl:when test="name($node)!='corpauthor'"> |
- <span style="text-transform:uppercase"> |
- <xsl:apply-templates mode="iso690.mode" select="$node//surname[1]"/> |
- </span> |
- <xsl:if test="$node//surname and $node//firstname"> |
- <xsl:value-of select="$lastfirst.sep"/> |
- </xsl:if> |
- <xsl:apply-templates mode="iso690.mode" select="$node//firstname[1]"/> |
- </xsl:when> |
- <xsl:otherwise> |
- <span style="text-transform:uppercase"> |
- <xsl:apply-templates mode="iso690.mode" select="$node"/> |
- </span> |
- </xsl:otherwise> |
- </xsl:choose> |
-</xsl:template> |
- |
-<xsl:template match="corpauthor|firstname|surname" mode="iso690.mode"> |
- <xsl:apply-templates mode="iso690.mode"/> |
-</xsl:template> |
- |
-<!-- Title and Type of medium --> |
-<xsl:template name="iso690.title"> |
- <xsl:param name="medium" select="./bibliomisc[@role='medium']"/> |
- <xsl:param name="italic" select="1"/> |
- <xsl:param name="sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'title.sep'"/></xsl:call-template> |
- </xsl:param> |
- |
- <xsl:apply-templates mode="iso690.mode" select="./title"> |
- <xsl:with-param name="medium" select="$medium"/> |
- <xsl:with-param name="italic" select="$italic"/> |
- <xsl:with-param name="sep" select="$sep"/> |
- </xsl:apply-templates> |
-</xsl:template> |
- |
-<xsl:template match="title" mode="iso690.mode"> |
- <xsl:param name="medium"/> |
- <xsl:param name="italic" select="1"/> |
- <xsl:param name="sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'title.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:param name="medium1"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'medium1'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:param name="medium2"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'medium2'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:choose> |
- <xsl:when test="$italic=1"> |
- <xsl:call-template name="iso690.italic.title"/> |
- </xsl:when> |
- <xsl:otherwise> |
- <xsl:call-template name="iso690.make.title"/> |
- </xsl:otherwise> |
- </xsl:choose> |
- <xsl:if test="$medium"> |
- <xsl:value-of select="$medium1"/> |
- <xsl:apply-templates mode="iso690.mode" select="$medium"/> |
- <xsl:value-of select="$medium2"/> |
- </xsl:if> |
- <xsl:call-template name="iso690.endsep"> |
- <xsl:with-param name="text" select="concat(string(.),string(../subtitle))"/> |
- <xsl:with-param name="sep" select="$sep"/> |
- </xsl:call-template> |
-</xsl:template> |
- |
-<xsl:template name="iso690.italic.title"> |
- <i> |
- <xsl:call-template name="iso690.make.title"/> |
- </i> |
-</xsl:template> |
- |
-<xsl:template name="iso690.make.title"> |
- <xsl:param name="submaintitle.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'submaintitle.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:apply-templates mode="iso690.mode"/> |
- <xsl:if test="../subtitle|../info/subtitle"> |
- <xsl:value-of select="$submaintitle.sep"/> |
- <xsl:apply-templates mode="iso690.mode" select="../subtitle|../info/subtitle"/> |
- </xsl:if> |
-</xsl:template> |
- |
-<xsl:template match="subtitle" mode="iso690.mode"> |
- <xsl:apply-templates mode="iso690.mode"/> |
-</xsl:template> |
- |
-<xsl:template match="bibliomisc[@role='medium']" mode="iso690.mode"> |
- <xsl:apply-templates mode="iso690.mode"/> |
-</xsl:template> |
- |
-<!-- Subordinate responsibility --> |
-<xsl:template name="iso690.secondary"> |
- <xsl:param name="secondary.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'secondary.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:param name="secondary.person.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'secondary.person.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:for-each select="./bibliomisc[@role='secondary']"> |
- <xsl:apply-templates mode="iso690.mode" select="."/> |
- <xsl:choose> |
- <xsl:when test="position()=count(../bibliomisc[@role='secondary'])"> |
- <xsl:call-template name="iso690.endsep"> |
- <xsl:with-param name="text" select="string(.)"/> |
- <xsl:with-param name="sep" select="$secondary.sep"/> |
- </xsl:call-template> |
- </xsl:when> |
- <xsl:otherwise> |
- <xsl:value-of select="$secondary.person.sep"/> |
- </xsl:otherwise> |
- </xsl:choose> |
- </xsl:for-each> |
-</xsl:template> |
- |
-<xsl:template match="bibliomisc[@role='secondary']" mode="iso690.mode"> |
- <xsl:apply-templates mode="iso690.mode"/> |
-</xsl:template> |
- |
-<!-- Edition --> |
-<xsl:template name="iso690.edition"> |
- <xsl:param name="after"/> |
- <xsl:param name="edition.serial.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'edition.serial.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:choose> |
- <xsl:when test="string($after)!=''"> |
- <xsl:apply-templates mode="iso690.mode" select="./edition"> |
- <xsl:with-param name="sep" select="$edition.serial.sep"/> |
- </xsl:apply-templates> |
- </xsl:when> |
- <xsl:otherwise> |
- <xsl:apply-templates mode="iso690.mode" select="./edition"/> |
- </xsl:otherwise> |
- </xsl:choose> |
-</xsl:template> |
- |
-<xsl:template match="edition" mode="iso690.mode"> |
- <xsl:param name="sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'edition.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:apply-templates mode="iso690.mode"/> |
- <xsl:call-template name="iso690.endsep"> |
- <xsl:with-param name="text" select="string(.)"/> |
- <xsl:with-param name="sep" select="$sep"/> |
- </xsl:call-template> |
-</xsl:template> |
- |
-<!-- Issue designation (date and/or num) --> |
-<xsl:template name="iso690.issuing"> |
- <xsl:param name="issuing.div"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'issuing.div'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:param name="issuing.range"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'issuing.range'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:param name="issuing.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'issuing.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:choose> |
- <xsl:when test="./pubdate[@role='issuing'] and ./volumenum[2] and ./issuenum[2]"> |
- <xsl:call-template name="iso690.issuedate"/> |
- <xsl:apply-templates mode="iso690.mode" select="./volumenum[1]"> |
- <xsl:with-param name="sep" select="$issuing.div"/> |
- </xsl:apply-templates> |
- <xsl:apply-templates mode="iso690.mode" select="./issuenum[1]"> |
- <xsl:with-param name="sep" select="$issuing.range"/> |
- </xsl:apply-templates> |
- <xsl:apply-templates mode="iso690.mode" select="./volumenum[2]"> |
- <xsl:with-param name="sep" select="$issuing.div"/> |
- </xsl:apply-templates> |
- <xsl:apply-templates mode="iso690.mode" select="./issuenum[2]"> |
- <xsl:with-param name="sep" select="$issuing.sep"/> |
- </xsl:apply-templates> |
- </xsl:when> |
- <xsl:when test="./pubdate[@role='issuing'] and ./volumenum[2]"> |
- <xsl:call-template name="iso690.issuedate"/> |
- <xsl:apply-templates mode="iso690.mode" select="./volumenum[1]"> |
- <xsl:with-param name="sep" select="$issuing.range"/> |
- </xsl:apply-templates> |
- <xsl:apply-templates mode="iso690.mode" select="./volumenum[2]"> |
- <xsl:with-param name="sep" select="$issuing.sep"/> |
- </xsl:apply-templates> |
- </xsl:when> |
- <xsl:when test="./pubdate[@role='issuing'] and ./volumenum and ./issuenum"> |
- <xsl:apply-templates mode="iso690.mode" select="./pubdate[@role='issuing']"> |
- <xsl:with-param name="sep" select="$issuing.div"/> |
- </xsl:apply-templates> |
- <xsl:apply-templates mode="iso690.mode" select="./volumenum"> |
- <xsl:with-param name="sep" select="$issuing.div"/> |
- </xsl:apply-templates> |
- <xsl:apply-templates mode="iso690.mode" select="./issuenum"> |
- <xsl:with-param name="sep" select="$issuing.sep"/> |
- </xsl:apply-templates> |
- </xsl:when> |
- <xsl:when test="./pubdate[@role='issuing']"> |
- <xsl:apply-templates mode="iso690.mode" select="./pubdate[@role='issuing']"> |
- <xsl:with-param name="sep" select="$issuing.sep"/> |
- </xsl:apply-templates> |
- </xsl:when> |
- <xsl:when test="./volumenum"> |
- <xsl:apply-templates mode="iso690.mode" select="./volumenum"> |
- <xsl:with-param name="sep" select="$issuing.sep"/> |
- </xsl:apply-templates> |
- </xsl:when> |
- <xsl:when test="./issuenum"> |
- <xsl:apply-templates mode="iso690.mode" select="./issuenum"> |
- <xsl:with-param name="sep" select="$issuing.sep"/> |
- </xsl:apply-templates> |
- </xsl:when> |
- </xsl:choose> |
-</xsl:template> |
- |
-<xsl:template name="iso690.issuedate"> |
- <xsl:param name="issuing.div"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'issuing.div'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:param name="issuing.range"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'issuing.range'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:param name="issuing.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'issuing.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:choose> |
- <xsl:when test="./pubdate[@role='issuing'][2]"> |
- <xsl:apply-templates mode="iso690.mode" select="./pubdate[@role='issuing'][1]"> |
- <xsl:with-param name="sep" select="$issuing.range"/> |
- </xsl:apply-templates> |
- <xsl:apply-templates mode="iso690.mode" select="./pubdate[@role='issuing'][2]"> |
- <xsl:with-param name="sep" select="$issuing.div"/> |
- </xsl:apply-templates> |
- </xsl:when> |
- <xsl:otherwise> |
- <xsl:apply-templates mode="iso690.mode" select="./pubdate[@role='issuing']"> |
- <xsl:with-param name="sep" select="$issuing.div"/> |
- </xsl:apply-templates> |
- </xsl:otherwise> |
- </xsl:choose> |
-</xsl:template> |
- |
-<xsl:template match="pubdate[@role='issuing']" mode="iso690.mode"> |
- <xsl:param name="sep"/> |
- <xsl:variable name="substr" select="substring(string(.),string-length(string(.)))"/> |
- <xsl:apply-templates mode="iso690.mode"/> |
- <xsl:call-template name="iso690.space"> |
- <xsl:with-param name="text" select="$substr"/> |
- </xsl:call-template> |
- <xsl:choose> |
- <xsl:when test="$substr='-'"> |
- <xsl:call-template name="iso690.endsep"> |
- <xsl:with-param name="text" select="' '"/> |
- <xsl:with-param name="sep" select="$sep"/> |
- </xsl:call-template> |
- </xsl:when> |
- <xsl:otherwise> |
- <xsl:call-template name="iso690.endsep"> |
- <xsl:with-param name="text" select="string(.)"/> |
- <xsl:with-param name="sep" select="$sep"/> |
- </xsl:call-template> |
- </xsl:otherwise> |
- </xsl:choose> |
-</xsl:template> |
- |
-<!-- Numeration of the part --> |
-<xsl:template name="iso690.partnr"> |
- <xsl:param name="partnr.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'partnr.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:apply-templates mode="iso690.mode" select="./volumenum"> |
- <xsl:with-param name="sep" select="$partnr.sep"/> |
- </xsl:apply-templates> |
-</xsl:template> |
- |
-<!-- Place of publication, Publisher, Year/Date of publication, Date of update/revision, Date of citation --> |
-<xsl:template name="iso690.pub"> |
- <xsl:param name="onlydate" select="0"/> |
- <xsl:param name="placesep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'placepubl.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:param name="pubsep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'publyear.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:param name="endsep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'pubinfo.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:choose> |
- <xsl:when test="(./publisher/publishername|./publishername|./publisher/address/city)and($onlydate=0)and(./pubdate[not(@role='issuing')]|./copyright/year|./date[@role='upd']|./date[@role='upd'])"> |
- <xsl:apply-templates mode="iso690.mode" select="./publisher/address/city"> |
- <xsl:with-param name="sep" select="$placesep"/> |
- </xsl:apply-templates> |
- <xsl:apply-templates mode="iso690.mode" select="./publisher/publishername|./publishername"> |
- <xsl:with-param name="sep" select="$pubsep"/> |
- </xsl:apply-templates> |
- <xsl:apply-templates mode="iso690.mode" select="./pubdate[not(@role='issuing')]|./copyright/year"> |
- <xsl:with-param name="sep" select="$endsep"/> |
- </xsl:apply-templates> |
- <xsl:if test="not(./pubdate[not(@role='issuing')]|./copyright/year)"> |
- <xsl:call-template name="iso690.data"> |
- <xsl:with-param name="sep" select="$endsep"/> |
- </xsl:call-template> |
- </xsl:if> |
- </xsl:when> |
- <xsl:when test="(./publisher/publishername|./publishername)and(./publisher/address/city)and($onlydate=0)"> |
- <xsl:apply-templates mode="iso690.mode" select="./publisher/address/city"> |
- <xsl:with-param name="sep" select="$placesep"/> |
- </xsl:apply-templates> |
- <xsl:apply-templates mode="iso690.mode" select="./publisher/publishername|./publishername"> |
- <xsl:with-param name="sep" select="$endsep"/> |
- </xsl:apply-templates> |
- </xsl:when> |
- <xsl:when test="($onlydate=1)or(./pubdate[not(@role='issuing')]|./copyright/year)"> |
- <xsl:apply-templates mode="iso690.mode" select="./pubdate[not(@role='issuing')]|./copyright/year"> |
- <xsl:with-param name="sep" select="$endsep"/> |
- </xsl:apply-templates> |
- <xsl:if test="$onlydate=1"> |
- <xsl:call-template name="iso690.location"> |
- <xsl:with-param name="onlypages" select="1"/> |
- </xsl:call-template> |
- </xsl:if> |
- </xsl:when> |
- <xsl:when test="not(./pubdate[not(@role='issuing')]|./copyright/year)"> |
- <xsl:call-template name="iso690.data"> |
- <xsl:with-param name="sep" select="$endsep"/> |
- </xsl:call-template> |
- </xsl:when> |
- </xsl:choose> |
-</xsl:template> |
- |
-<xsl:template name="iso690.paper.pub"> |
- <xsl:param name="spec.pubinfo.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'spec.pubinfo.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:choose> |
- <xsl:when test="./volumnum|./issuenum|./pagenums"> |
- <xsl:call-template name="iso690.pub"> |
- <xsl:with-param name="endsep" select="$spec.pubinfo.sep"/> |
- </xsl:call-template> |
- </xsl:when> |
- <xsl:otherwise> |
- <xsl:call-template name="iso690.pub"/> |
- </xsl:otherwise> |
- </xsl:choose> |
-</xsl:template> |
- |
-<xsl:template name="iso690.data"> |
- <xsl:param name="sep"/> |
- <xsl:param name="datecit2"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'datecit2'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:apply-templates mode="iso690.mode" select="./date[@role='upd']"> |
- <xsl:with-param name="sep"/> |
- </xsl:apply-templates> |
- <xsl:apply-templates mode="iso690.mode" select="./date[@role='cit']"/> |
- <xsl:choose> |
- <xsl:when test="./date[@role='cit']"> |
- <xsl:call-template name="iso690.endsep"> |
- <xsl:with-param name="text" select="$datecit2"/> |
- <xsl:with-param name="sep" select="$sep"/> |
- </xsl:call-template> |
- </xsl:when> |
- <xsl:when test="./date[@role='upd']"> |
- <xsl:call-template name="iso690.endsep"> |
- <xsl:with-param name="text" select="string(./date[@role='upd'])"/> |
- <xsl:with-param name="sep" select="$sep"/> |
- </xsl:call-template> |
- </xsl:when> |
- </xsl:choose> |
-</xsl:template> |
- |
-<xsl:template match="publisher/address/city|publishername" mode="iso690.mode"> |
- <xsl:param name="sep"/> |
- <xsl:param name="upd" select="0"/> |
- <xsl:apply-templates mode="iso690.mode"/> |
- <xsl:call-template name="iso690.endsep"> |
- <xsl:with-param name="text" select="string(.)"/> |
- <xsl:with-param name="sep" select="$sep"/> |
- </xsl:call-template> |
-</xsl:template> |
- |
-<xsl:template match="pubdate|copyright/year" mode="iso690.mode"> |
- <xsl:param name="sep"/> |
- <xsl:param name="upd" select="1"/> |
- <xsl:param name="datecit2"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'datecit2'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:variable name="substr" select="substring(string(.),string-length(string(.)))"/> |
- <xsl:if test="name(.)!='pubdate'"> |
- <xsl:value-of select="'©'"/><!-- copyright --> |
- </xsl:if> |
- <xsl:apply-templates mode="iso690.mode"/> |
- <xsl:call-template name="iso690.space"> |
- <xsl:with-param name="text" select="$substr"/> |
- </xsl:call-template> |
- <xsl:if test="$upd!=0"> |
- <xsl:choose> |
- <xsl:when test="name(.)='pubdate'"> |
- <xsl:apply-templates mode="iso690.mode" select="../date[@role='upd']"/> |
- <xsl:apply-templates mode="iso690.mode" select="../date[@role='cit']"/> |
- </xsl:when> |
- <xsl:otherwise> |
- <xsl:apply-templates mode="iso690.mode" select="../../date[@role='upd']"/> |
- <xsl:apply-templates mode="iso690.mode" select="../../date[@role='cit']"/> |
- </xsl:otherwise> |
- </xsl:choose> |
- </xsl:if> |
- <xsl:choose> |
- <xsl:when test="../date[@role='cit']|../../date[@role='cit'] and $upd!=0"> |
- <xsl:call-template name="iso690.endsep"> |
- <xsl:with-param name="text" select="$datecit2"/> |
- <xsl:with-param name="sep" select="$sep"/> |
- </xsl:call-template> |
- </xsl:when> |
- <xsl:when test="../date[@role='upd']|../../date[@role='upd'] and $upd!=0"> |
- <xsl:call-template name="iso690.endsep"> |
- <xsl:with-param name="text" select="string(../date[@role='upd'])"/> |
- <xsl:with-param name="sep" select="$sep"/> |
- </xsl:call-template> |
- </xsl:when> |
- <xsl:when test="$substr='-'"> |
- <xsl:call-template name="iso690.endsep"> |
- <xsl:with-param name="text" select="' '"/> |
- <xsl:with-param name="sep" select="$sep"/> |
- </xsl:call-template> |
- </xsl:when> |
- <xsl:otherwise> |
- <xsl:call-template name="iso690.endsep"> |
- <xsl:with-param name="text" select="string(.)"/> |
- <xsl:with-param name="sep" select="$sep"/> |
- </xsl:call-template> |
- </xsl:otherwise> |
- </xsl:choose> |
-</xsl:template> |
- |
-<xsl:template name="iso690.space"> |
- <xsl:param name="text" select="substring(string(.),string-length(string(.)))"/> |
- <xsl:if test="$text='-'"> |
- <xsl:value-of select="' '"/> |
- </xsl:if> |
-</xsl:template> |
- |
-<!-- Date of update/revision --> |
-<xsl:template match="date[@role='upd']" mode="iso690.mode"> |
- <xsl:param name="sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'upd.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:value-of select="$sep"/> |
- <xsl:apply-templates mode="iso690.mode"/> |
-</xsl:template> |
- |
-<!-- Date of citation --> |
-<xsl:template match="date[@role='cit']" mode="iso690.mode"> |
- <xsl:param name="datecit1"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'datecit1'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:param name="datecit2"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'datecit2'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:value-of select="$datecit1"/> |
- <xsl:apply-templates mode="iso690.mode"/> |
- <xsl:value-of select="$datecit2"/> |
-</xsl:template> |
- |
-<!-- Extent --> |
-<xsl:template name="iso690.extent"> |
- <xsl:param name="extent.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'extent.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:apply-templates mode="iso690.mode" select="./pagenums"> |
- <xsl:with-param name="sep" select="$extent.sep"/> |
- </xsl:apply-templates> |
-</xsl:template> |
- |
-<!-- Location within host --> |
-<xsl:template name="iso690.part.location"> |
- <xsl:param name="location.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'location.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:choose> |
- <xsl:when test="./pagenums"> |
- <xsl:apply-templates mode="iso690.mode" select="./bibliomisc[@role='secnum']"/> |
- <xsl:apply-templates mode="iso690.mode" select="./bibliomisc[@role='sectitle']"/> |
- <xsl:apply-templates mode="iso690.mode" select="./pagenums"/> |
- </xsl:when> |
- <xsl:when test="./bibliomisc[@role='sectitle']"> |
- <xsl:apply-templates mode="iso690.mode" select="./bibliomisc[@role='secnum']"/> |
- <xsl:apply-templates mode="iso690.mode" select="./bibliomisc[@role='sectitle']"> |
- <xsl:with-param name="sep" select="$location.sep"/> |
- </xsl:apply-templates> |
- </xsl:when> |
- <xsl:otherwise> |
- <xsl:apply-templates mode="iso690.mode" select="./bibliomisc[@role='secnum']"> |
- <xsl:with-param name="sep" select="$location.sep"/> |
- </xsl:apply-templates> |
- </xsl:otherwise> |
- </xsl:choose> |
-</xsl:template> |
- |
-<xsl:template name="iso690.article.location"> |
- <xsl:param name="location.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'location.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:param name="locs.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'locs.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:choose> |
- <xsl:when test="not(./date[@role='upd']|./date[@role='cit'])"> |
- <xsl:choose> |
- <xsl:when test="./volumenum|./issuenum|./pagenums"> |
- <xsl:apply-templates mode="iso690.mode" select="./pubdate[not(@role='issuing')]"> |
- <xsl:with-param name="upd" select="0"/> |
- <xsl:with-param name="sep" select="$locs.sep"/> |
- </xsl:apply-templates> |
- <xsl:call-template name="iso690.location"/> |
- </xsl:when> |
- <xsl:otherwise> |
- <xsl:apply-templates mode="iso690.mode" select="./pubdate[not(@role='issuing')]"> |
- <xsl:with-param name="sep" select="$location.sep"/> |
- </xsl:apply-templates> |
- </xsl:otherwise> |
- </xsl:choose> |
- </xsl:when> |
- <xsl:otherwise> |
- <xsl:choose> |
- <xsl:when test="./volumenum|./issuenum|./pagenums"> |
- <xsl:apply-templates mode="iso690.mode" select="./pubdate[not(@role='issuing')]"> |
- <xsl:with-param name="upd" select="0"/> |
- <xsl:with-param name="sep" select="$locs.sep"/> |
- </xsl:apply-templates> |
- </xsl:when> |
- <xsl:otherwise> |
- <xsl:apply-templates mode="iso690.mode" select="./pubdate[not(@role='issuing')]"> |
- <xsl:with-param name="upd" select="0"/> |
- <xsl:with-param name="sep" select="$location.sep"/> |
- </xsl:apply-templates> |
- </xsl:otherwise> |
- </xsl:choose> |
- <xsl:choose> |
- <xsl:when test="./issuenum"> |
- <xsl:apply-templates mode="iso690.mode" select="./volumenum"/> |
- <xsl:apply-templates mode="iso690.mode" select="./issuenum"> |
- <xsl:with-param name="sep"/> |
- </xsl:apply-templates> |
- </xsl:when> |
- <xsl:otherwise> |
- <xsl:apply-templates mode="iso690.mode" select="./volumenum"> |
- <xsl:with-param name="sep"/> |
- </xsl:apply-templates> |
- </xsl:otherwise> |
- </xsl:choose> |
- <xsl:choose> |
- <xsl:when test="./pagenums"> |
- <xsl:call-template name="iso690.data"> |
- <xsl:with-param name="sep" select="$locs.sep"/> |
- </xsl:call-template> |
- <xsl:apply-templates mode="iso690.mode" select="./pagenums"/> |
- </xsl:when> |
- <xsl:otherwise> |
- <xsl:call-template name="iso690.data"> |
- <xsl:with-param name="sep" select="$location.sep"/> |
- </xsl:call-template> |
- </xsl:otherwise> |
- </xsl:choose> |
- </xsl:otherwise> |
- </xsl:choose> |
-</xsl:template> |
- |
-<xsl:template name="iso690.location"> |
- <xsl:param name="location.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'location.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:choose> |
- <xsl:when test="./volumenum and not(./issuenum) and not(./pagenums)"> |
- <xsl:apply-templates mode="iso690.mode" select="./volumenum"> |
- <xsl:with-param name="sep" select="$location.sep"/> |
- </xsl:apply-templates> |
- </xsl:when> |
- <xsl:when test="./issuenum and not(./pagenums)"> |
- <xsl:apply-templates mode="iso690.mode" select="./volumenum"/> |
- <xsl:apply-templates mode="iso690.mode" select="./issuenum"> |
- <xsl:with-param name="sep" select="$location.sep"/> |
- </xsl:apply-templates> |
- </xsl:when> |
- <xsl:when test="./pagenums"> |
- <xsl:apply-templates mode="iso690.mode" select="./volumenum"/> |
- <xsl:apply-templates mode="iso690.mode" select="./issuenum"/> |
- <xsl:apply-templates mode="iso690.mode" select="./pagenums"/> |
- </xsl:when> |
- </xsl:choose> |
-</xsl:template> |
- |
-<xsl:template match="bibliomisc[@role='secnum']|bibliomisc[@role='sectitle']" mode="iso690.mode"> |
- <xsl:param name="sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'locs.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:apply-templates mode="iso690.mode"/> |
- <xsl:call-template name="iso690.endsep"> |
- <xsl:with-param name="text" select="string(.)"/> |
- <xsl:with-param name="sep" select="$sep"/> |
- </xsl:call-template> |
-</xsl:template> |
- |
-<xsl:template match="volumenum|issuenum" mode="iso690.mode"> |
- <xsl:param name="sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'locs.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:apply-templates mode="iso690.mode"/> |
- <xsl:call-template name="iso690.endsep"> |
- <xsl:with-param name="text" select="string(.)"/> |
- <xsl:with-param name="sep" select="$sep"/> |
- </xsl:call-template> |
-</xsl:template> |
- |
-<xsl:template match="pagenums" mode="iso690.mode"> |
- <xsl:param name="sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'location.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:apply-templates mode="iso690.mode"/> |
- <xsl:call-template name="iso690.endsep"> |
- <xsl:with-param name="text" select="string(.)"/> |
- <xsl:with-param name="sep" select="$sep"/> |
- </xsl:call-template> |
-</xsl:template> |
- |
-<!-- Series --> |
-<xsl:template name="iso690.serie"> |
- <xsl:apply-templates mode="iso690.mode" select=".//bibliomisc[@role='serie']"/> |
-</xsl:template> |
- |
-<!-- Notes --> |
-<xsl:template name="iso690.notice"> |
- <xsl:apply-templates mode="iso690.mode" select=".//bibliomisc[not(@role)]"/> |
-</xsl:template> |
- |
-<xsl:template match="bibliomisc[not(@role)]|bibliomisc[@role='serie']" mode="iso690.mode"> |
- <xsl:param name="notice.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'notice.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:apply-templates mode="iso690.mode"/> |
- <xsl:call-template name="iso690.endsep"> |
- <xsl:with-param name="text" select="string(.)"/> |
- <xsl:with-param name="sep" select="$notice.sep"/> |
- </xsl:call-template> |
-</xsl:template> |
- |
-<!-- Avaibility and access --> |
-<xsl:template name="iso690.access"> |
- <xsl:for-each select="./biblioid[@class='uri']|./bibliomisc[@role='access']"> |
- <xsl:choose> |
- <xsl:when test="position()=1"> |
- <xsl:apply-templates mode="iso690.mode" select="."/> |
- </xsl:when> |
- <xsl:otherwise> |
- <xsl:apply-templates mode="iso690.mode" select="."> |
- <xsl:with-param name="firstacc" select="0"/> |
- </xsl:apply-templates> |
- </xsl:otherwise> |
- </xsl:choose> |
- </xsl:for-each> |
-</xsl:template> |
- |
-<xsl:template match="biblioid[@class='uri']/ulink|bibliomisc[@role='access']/ulink" mode="iso690.mode"> |
- <xsl:param name="link1"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'link1'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:param name="link2"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'link2'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:value-of select="$link1"/> |
- <xsl:call-template name="ulink"/> |
- <xsl:value-of select="$link2"/> |
-</xsl:template> |
- |
-<xsl:template match="biblioid[@class='uri']|bibliomisc[@role='access']" mode="iso690.mode"> |
- <xsl:param name="firstacc" select="1"/> |
- <xsl:param name="access"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'access'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:param name="acctoo"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'acctoo'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:param name="onwww"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'onwww'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:param name="oninet"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'oninet'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:param name="access.end"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'access.end'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:param name="access.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'access.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:choose> |
- <xsl:when test="$firstacc=1"> |
- <xsl:value-of select="$access"/> |
- </xsl:when> |
- <xsl:otherwise> |
- <xsl:value-of select="$acctoo"/> |
- </xsl:otherwise> |
- </xsl:choose> |
- <xsl:choose> |
- <xsl:when test="(./ulink)and(string(./ulink)=string(.))"> |
- <xsl:choose> |
- <xsl:when test="(starts-with(./ulink/@url,'http://')or(starts-with(./ulink/@url,'https://')))"> |
- <xsl:value-of select="$onwww"/> |
- <xsl:value-of select="$access.end"/> |
- <xsl:apply-templates mode="iso690.mode" select="./ulink"/> |
- </xsl:when> |
- <xsl:otherwise> |
- <xsl:value-of select="$oninet"/> |
- <xsl:value-of select="$access.end"/> |
- <xsl:apply-templates mode="iso690.mode" select="./ulink"/> |
- </xsl:otherwise> |
- </xsl:choose> |
- </xsl:when> |
- <xsl:when test="(./ulink)and(string(./ulink)!=string(.))"> |
- <xsl:value-of select="text()[1]"/> |
- <xsl:call-template name="iso690.endsep"> |
- <xsl:with-param name="text" select="text()[1]"/> |
- <xsl:with-param name="sep" select="$access.end"/> |
- </xsl:call-template> |
- <xsl:apply-templates mode="iso690.mode" select="./ulink"/> |
- </xsl:when> |
- <xsl:otherwise> |
- <xsl:apply-templates mode="iso690.mode"/> |
- </xsl:otherwise> |
- </xsl:choose> |
- <xsl:value-of select="$access.sep"/> |
-</xsl:template> |
- |
-<!-- Standard number - ISBN --> |
-<xsl:template name="iso690.isbn"> |
- <xsl:choose> |
- <xsl:when test="./biblioid/@class='isbn'"> |
- <xsl:apply-templates mode="iso690.mode" select="./biblioid[@class='isbn']"/> |
- </xsl:when> |
- <xsl:when test="./isbn"> |
- <xsl:apply-templates mode="iso690.mode" select="./isbn"/> |
- </xsl:when> |
- </xsl:choose> |
-</xsl:template> |
- |
-<xsl:template match="isbn|biblioid[@class='isbn']" mode="iso690.mode"> |
- <xsl:param name="isbn"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'isbn'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:param name="stdnum.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'stdnum.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:value-of select="$isbn"/> |
- <xsl:apply-templates mode="iso690.mode"/> |
- <xsl:value-of select="$stdnum.sep"/> |
-</xsl:template> |
- |
-<!-- Standard number - ISSN --> |
-<xsl:template name="iso690.issn"> |
- <xsl:choose> |
- <xsl:when test="./biblioid/@class='issn'"> |
- <xsl:apply-templates mode="iso690.mode" select="./biblioid[@class='issn']"/> |
- </xsl:when> |
- <xsl:when test="./issn"> |
- <xsl:apply-templates mode="iso690.mode" select="./issn"/> |
- </xsl:when> |
- </xsl:choose> |
-</xsl:template> |
- |
-<xsl:template match="issn|biblioid[@class='issn']" mode="iso690.mode"> |
- <xsl:param name="issn"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'issn'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:param name="stdnum.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'stdnum.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:value-of select="$issn"/> |
- <xsl:apply-templates mode="iso690.mode"/> |
- <xsl:value-of select="$stdnum.sep"/> |
-</xsl:template> |
- |
-<!-- Identification of patent document --> |
-<xsl:template name="iso690.pat.ident"> |
- <xsl:param name="patdate.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'patdate.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:apply-templates mode="iso690.mode" select="./address/country"/> |
- <xsl:apply-templates mode="iso690.mode" select="./bibliomisc[@role='patenttype']"/> |
- <xsl:choose> |
- <xsl:when test="./biblioid[@class='other' and @otherclass='patentnum']"> |
- <xsl:apply-templates mode="iso690.mode" select="./biblioid[@class='other' and @otherclass='patentnum']"/> |
- </xsl:when> |
- <xsl:otherwise> |
- <xsl:apply-templates mode="iso690.mode" select="./bibliomisc[@role='patentnum']"/> |
- </xsl:otherwise> |
- </xsl:choose> |
- <xsl:apply-templates mode="iso690.mode" select="./pubdate[not(@role='issuing')]"> |
- <xsl:with-param name="sep" select="$patdate.sep"/> |
- </xsl:apply-templates> |
-</xsl:template> |
- |
-<!-- Country or issuing office --> |
-<xsl:template match="address/country" mode="iso690.mode"> |
- <xsl:param name="patcountry.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'patcountry.sep'"/></xsl:call-template> |
- </xsl:param> |
- <i> |
- <xsl:apply-templates mode="iso690.mode"/> |
- </i> |
- <xsl:value-of select="$patcountry.sep"/> |
-</xsl:template> |
- |
-<!-- Kind of patent document --> |
-<xsl:template match="bibliomisc[@role='patenttype']" mode="iso690.mode"> |
- <xsl:param name="pattype.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'pattype.sep'"/></xsl:call-template> |
- </xsl:param> |
- <i> |
- <xsl:apply-templates mode="iso690.mode"/> |
- </i> |
- <xsl:value-of select="$pattype.sep"/> |
-</xsl:template> |
- |
-<!-- Number --> |
-<xsl:template match="biblioid[@class='other' and @otherclass='patentnum']|bibliomisc[@role='patentnum']" mode="iso690.mode"> |
- <xsl:param name="patnum.sep"> |
- <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'patnum.sep'"/></xsl:call-template> |
- </xsl:param> |
- <xsl:apply-templates mode="iso690.mode"/> |
- <xsl:value-of select="$patnum.sep"/> |
-</xsl:template> |
- |
-<!-- ==================================================================== --> |
-<!-- Supplementary templates --> |
- |
-<xsl:template name="iso690.endsep"> |
- <xsl:param name="text"/> |
- <xsl:param name="sep" select=". "/> |
- <xsl:choose> |
- <xsl:when test="substring($text,string-length($text))!=substring($sep,1,1)"> |
- <xsl:value-of select="$sep"/> |
- </xsl:when> |
- <xsl:when test="substring($text,string-length($text))=' '"> |
- </xsl:when> |
- <xsl:otherwise> |
- <xsl:value-of select="' '"/> |
- </xsl:otherwise> |
- </xsl:choose> |
-</xsl:template> |
- |
-<!-- ==================================================================== --> |
- |
-<xsl:template match="*" mode="iso690.mode"> |
- <xsl:apply-templates select="."/><!-- try the default mode --> |
-</xsl:template> |
- |
-<!-- ==================================================================== --> |
- |
-</xsl:stylesheet> |