Professional Documents
Culture Documents
Iso 690 Nmerical
Iso 690 Nmerical
>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt"
xmlns:b="http://schemas.openxmlformats.org/officeDocument/2006/bibliography"
xmlns:t="http://www.microsoft.com/temp">
<xsl:output method="html" encoding="us-ascii"/>
<xsl:template name="StringFormatDot">
<xsl:param name="format" />
<xsl:param name="parameters" />
<xsl:variable name="prop_EndChars">
<xsl:call-template name="templ_prop_EndChars"/>
</xsl:variable>
<xsl:choose>
<xsl:when test="$format = ''"></xsl:when>
<xsl:when test="substring($format, 1, 2) = '%%'">
<xsl:text>%</xsl:text>
<xsl:call-template name="StringFormatDot">
<xsl:with-param name="format"
select="substring($format, 3)" />
<xsl:with-param name="parameters"
select="$parameters" />
</xsl:call-template>
<xsl:if test="string-length($format)=2">
<xsl:call-template name="templ_prop_Dot"/>
</xsl:if>
</xsl:when>
<xsl:when test="substring($format, 1, 1) = '%'">
<xsl:variable name="pos" select="substring($format, 2,
1)" />
<xsl:apply-templates select="msxsl:node-
set($parameters)/t:params/t:param[position() = $pos]" mode="outputHtml2"/>
<xsl:call-template name="StringFormatDot">
<xsl:with-param name="format"
select="substring($format, 3)" />
<xsl:with-param name="parameters"
select="$parameters" />
</xsl:call-template>
<xsl:if test="string-length($format)=2">
<xsl:variable name="temp2">
<xsl:call-template name="handleSpaces">
<xsl:with-param name="field"
select="msxsl:node-set($parameters)/t:params/t:param[position() = $pos]"/>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="lastChar">
<xsl:value-of select="substring($temp2, string-
length($temp2))"/>
</xsl:variable>
<xsl:if test="not(contains($prop_EndChars,
$lastChar))">
<xsl:call-template name="templ_prop_Dot"/>
</xsl:if>
</xsl:if>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="substring($format, 1, 1)" />
<xsl:call-template name="StringFormatDot">
<xsl:with-param name="format"
select="substring($format, 2)" />
<xsl:with-param name="parameters"
select="$parameters" />
</xsl:call-template>
<xsl:if test="string-length($format)=1">
<xsl:if test="not(contains($prop_EndChars,
$format))">
<xsl:call-template name="templ_prop_Dot"/>
</xsl:if>
</xsl:if>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="StringFormat">
<xsl:param name="format" />
<xsl:param name="parameters" />
<xsl:choose>
<xsl:when test="$format = ''"></xsl:when>
<xsl:when test="substring($format, 1, 2) = '%%'">
<xsl:text>%</xsl:text>
<xsl:call-template name="StringFormat">
<xsl:with-param name="format"
select="substring($format, 3)" />
<xsl:with-param name="parameters"
select="$parameters" />
</xsl:call-template>
</xsl:when>
<xsl:when test="substring($format, 1, 1) = '%'">
<xsl:variable name="pos" select="substring($format, 2,
1)" />
<xsl:apply-templates select="msxsl:node-
set($parameters)/t:params/t:param[position() = $pos]" mode="outputHtml2"/>
<xsl:call-template name="StringFormat">
<xsl:with-param name="format"
select="substring($format, 3)" />
<xsl:with-param name="parameters"
select="$parameters" />
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="substring($format, 1, 1)" />
<xsl:call-template name="StringFormat">
<xsl:with-param name="format"
select="substring($format, 2)" />
<xsl:with-param name="parameters"
select="$parameters" />
</xsl:call-template>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="localLCID">
<xsl:param name="LCID"/>
<xsl:variable name="_LCID1">
<xsl:choose>
<xsl:when test="$LCID!='0' and $LCID!=''">
<xsl:value-of select="$LCID"/>
</xsl:when>
<xsl:when test="/b:Citation">
<xsl:value-of select="/*/b:Locals/b:DefaultLCID"/>
</xsl:when>
<xsl:when test="b:LCID">
<xsl:value-of select="b:LCID"/>
</xsl:when>
<xsl:when test="../b:LCID">
<xsl:value-of select="../b:LCID"/>
</xsl:when>
<xsl:when test="../../b:LCID">
<xsl:value-of select="../../b:LCID"/>
</xsl:when>
<xsl:when test="../../../b:LCID">
<xsl:value-of select="../../../b:LCID"/>
</xsl:when>
<xsl:when test="../../../../b:LCID">
<xsl:value-of select="../../../../b:LCID"/>
</xsl:when>
<xsl:when test="../../../../b:LCID">
<xsl:value-of select="../../../../b:LCID"/>
</xsl:when>
<xsl:when test="../../../../../b:LCID">
<xsl:value-of select="../../../../../b:LCID"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="/*/b:Locals/b:DefaultLCID"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:choose>
<xsl:when test="$_LCID1!='0' and string-length($_LCID1)>0">
<xsl:value-of select="$_LCID1"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="/*/b:Locals/b:DefaultLCID"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:template>
<xsl:template match="/">
<xsl:choose>
<xsl:when test="b:Version">
<xsl:text>2006.5.07</xsl:text>
</xsl:when>
<xsl:when test="b:XslVersion">
<xsl:text>1987</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized">
<xsl:choose>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1033'">
<xsl:text>ISO 690 - Numerical Reference</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1025'">
<xsl:text>Iso 690 - <مرجع رقمي/xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1037'">
<xsl:text>ISO 690 - <הפניה מספרית/xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1041'">
<xsl:text>ISO 690: 参照番号</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='2052'">
<xsl:text>ISO 690 - 数字引用</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1028'">
<xsl:text>ISO 690 - 直接編碼法</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1042'">
<xsl:text>ISO 690 - 숫자 참조</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1036'">
<xsl:text>ISO 690 - Référence numérique</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1040'">
<xsl:text>ISO 690 - Riferimento numerico</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='3082'">
<xsl:text>ISO 690 - Referencia numérica</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1043'">
<xsl:text>ISO 690 - Numerieke verwijzing</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1031'">
<xsl:text>ISO 690 - Numerische Referenz</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1046'">
<xsl:text>ISO 690 - Referência Numérica</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1049'">
<xsl:text>ISO 690 — цифровая ссылка</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1035'">
<xsl:text>ISO 690 - numeerinen viittaus</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1032'">
<xsl:text>ISO 690 - Αριθμητική αναφορά</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1081'">
<xsl:text>ISO 690 - सांख्यिक संदर्भ</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1054'">
<xsl:text>ISO 690 - เรี ยงลำดับตามการอา้ งอิงขอ
้ มูล</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1057'">
<xsl:text>ISO 690 - Referensi Numerik</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1086'">
<xsl:text>ISO 690 - Rujukan Angka</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1066'">
<xsl:text>ISO 690 - Tham chiếu Số</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1053'">
<xsl:text>ISO 690 – Numerisk referens</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1069'">
<xsl:text>ISO 690 - Zenbakizko erreferentzia</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1027'">
<xsl:text>ISO 690 (referència numérica)</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1030'">
<xsl:text>ISO 690 - Numerisk reference</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1110'">
<xsl:text>ISO 690 - Referencia numérica</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1044'">
<xsl:text>ISO 690 - numerisk referanse</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1061'">
<xsl:text>ISO 690 – numbriline viide</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1062'">
<xsl:text>ISO 690 - numurētas atsauces</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1063'">
<xsl:text>ISO 690 – numerių nuorodos</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1045'">
<xsl:text>ISO 690 — odwołanie numeryczne</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='2070'">
<xsl:text>ISO 690 - Referência Numérica</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1029'">
<xsl:text>ISO 690 – číselná reference</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1055'">
<xsl:text>ISO 690 - Sayısal Başvuru</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1038'">
<xsl:text>ISO 690 — Sorszámozott idézések</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1048'">
<xsl:text>ISO 690 - Referință numerică</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1058'">
<xsl:text>ISO 690 – числове посиланння</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1026'">
<xsl:text>ISO 690 – цифрова препратка</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1050'">
<xsl:text>ISO 690 - brojevne reference </xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1087'">
<xsl:text>Стандарттау жөніндегі халықаралық ұйым</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='2074'">
<xsl:text>ISO 690 - Numerical Reference</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='3098'">
<xsl:text>ISO 690 - Numerical Reference</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1051'">
<xsl:text>ISO 690 – Číselný odkaz</xsl:text>
</xsl:when>
<xsl:when test="b:StyleNameLocalized/b:Lcid='1060'">
<xsl:text>Standard ISO 690 – številčni sklic</xsl:text>
</xsl:when>
</xsl:choose>
</xsl:when>
<xsl:when test="b:GetImportantFields">
<b:ImportantFields>
<xsl:choose>
<xsl:when
test="b:GetImportantFields/b:SourceType='Book'">
<b:ImportantField><xsl:text>b:Author/b:Author/b:NameList</xsl:text></b:ImportantFie
ld>
<b:ImportantField><xsl:text>b:Title</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Year</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:City</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Publisher</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:StandardNumber</xsl:text></b:ImportantField>
</xsl:when>
<xsl:when
test="b:GetImportantFields/b:SourceType='BookSection'">
<b:ImportantField><xsl:text>b:Author/b:Author/b:NameList</xsl:text></b:ImportantFie
ld>
<b:ImportantField><xsl:text>b:Title</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Author/b:BookAuthor/b:NameList</xsl:text></b:Importan
tField>
<b:ImportantField><xsl:text>b:BookTitle</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Year</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:City</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Publisher</xsl:text></b:ImportantField>
</xsl:when>
<xsl:when
test="b:GetImportantFields/b:SourceType='JournalArticle'">
<b:ImportantField><xsl:text>b:Author/b:Author/b:NameList</xsl:text></b:ImportantFie
ld>
<b:ImportantField><xsl:text>b:Title</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Year</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:City</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Publisher</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Volume</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Issue</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:StandardNumber</xsl:text></b:ImportantField>
</xsl:when>
<xsl:when
test="b:GetImportantFields/b:SourceType='ArticleInAPeriodical'">
<b:ImportantField><xsl:text>b:Author/b:Author/b:NameList</xsl:text></b:ImportantFie
ld>
<b:ImportantField><xsl:text>b:Title</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:PeriodicalTitle</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Year</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Edition</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Volume</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Issue</xsl:text></b:ImportantField>
</xsl:when>
<xsl:when
test="b:GetImportantFields/b:SourceType='ConferenceProceedings'">
<b:ImportantField><xsl:text>b:Author/b:Author/b:NameList</xsl:text></b:ImportantFie
ld>
<b:ImportantField><xsl:text>b:Title</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Year</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:City</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Publisher</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:StandardNumber</xsl:text></b:ImportantField>
</xsl:when>
<xsl:when
test="b:GetImportantFields/b:SourceType='Report'">
<b:ImportantField><xsl:text>b:Author/b:Author/b:NameList</xsl:text></b:ImportantFie
ld>
<b:ImportantField><xsl:text>b:Title</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Year</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:City</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Publisher</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:StandardNumber</xsl:text></b:ImportantField>
</xsl:when>
<xsl:when
test="b:GetImportantFields/b:SourceType='SoundRecording'">
<b:ImportantField><xsl:text>b:Author/b:Artist/b:NameList</xsl:text></b:ImportantFie
ld>
<b:ImportantField><xsl:text>b:Title</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:AlbumTitle</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:ProductionCompany</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Year</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Medium</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:City</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:StandardNumber</xsl:text></b:ImportantField>
</xsl:when>
<xsl:when
test="b:GetImportantFields/b:SourceType='Performance'">
<b:ImportantField><xsl:text>b:Author/b:Writer/b:NameList</xsl:text></b:ImportantFie
ld>
<b:ImportantField><xsl:text>b:Title</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:ProductionCompany</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Theater</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Year</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:City</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:StandardNumber</xsl:text></b:ImportantField>
</xsl:when>
<xsl:when
test="b:GetImportantFields/b:SourceType='Art'">
<b:ImportantField><xsl:text>b:Author/b:Artist/b:NameList</xsl:text></b:ImportantFie
ld>
<b:ImportantField><xsl:text>b:Title</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Institution</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Year</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:City</xsl:text></b:ImportantField>
</xsl:when>
<xsl:when
test="b:GetImportantFields/b:SourceType='DocumentFromInternetSite'">
<b:ImportantField><xsl:text>b:Author/b:Author/b:NameList</xsl:text></b:ImportantFie
ld>
<b:ImportantField><xsl:text>b:Title</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:InternetSiteTitle</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:ProductionCompany</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Year</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Month</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Day</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:YearAccessed</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:MonthAccessed</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:DayAccessed</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:URL</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:StandardNumber</xsl:text></b:ImportantField>
</xsl:when>
<xsl:when
test="b:GetImportantFields/b:SourceType='InternetSite'">
<b:ImportantField><xsl:text>b:Author/b:Author/b:NameList</xsl:text></b:ImportantFie
ld>
<b:ImportantField><xsl:text>b:Title</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:InternetSiteTitle</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:ProductionCompany</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Year</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Month</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Day</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:YearAccessed</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:MonthAccessed</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:DayAccessed</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:URL</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:StandardNumber</xsl:text></b:ImportantField>
</xsl:when>
<xsl:when
test="b:GetImportantFields/b:SourceType='Film'">
<b:ImportantField><xsl:text>b:Author/b:Director/b:NameList</xsl:text></b:ImportantF
ield>
<b:ImportantField><xsl:text>b:Title</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:ProductionCompany</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Year</xsl:text></b:ImportantField>
</xsl:when>
<xsl:when
test="b:GetImportantFields/b:SourceType='Interview'">
<b:ImportantField><xsl:text>b:Author/b:Interviewee/b:NameList</xsl:text></b:Importa
ntField>
<b:ImportantField><xsl:text>b:Title</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:BroadcastTitle</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Year</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Month</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Day</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Broadcaster</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Station</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:City</xsl:text></b:ImportantField>
</xsl:when>
<xsl:when
test="b:GetImportantFields/b:SourceType='Patent'">
<b:ImportantField><xsl:text>b:Author/b:Inventor/b:NameList</xsl:text></b:ImportantF
ield>
<b:ImportantField><xsl:text>b:Title</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Year</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Month</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Day</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:CountryRegion</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Type</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:PatentNumber</xsl:text></b:ImportantField>
</xsl:when>
<xsl:when
test="b:GetImportantFields/b:SourceType='ElectronicSource'">
<b:ImportantField><xsl:text>b:Author/b:Author/b:NameList</xsl:text></b:ImportantFie
ld>
<b:ImportantField><xsl:text>b:Title</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:City</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:ProductionCompany</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Medium</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Year</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:StandardNumber</xsl:text></b:ImportantField>
</xsl:when>
<xsl:when
test="b:GetImportantFields/b:SourceType='Case'">
<b:ImportantField><xsl:text>b:Author/b:Author/b:NameList</xsl:text></b:ImportantFie
ld>
<b:ImportantField><xsl:text>b:Title</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:CaseNumber</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:City</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Court</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Year</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:AbbreviatedCaseNumber</xsl:text></b:ImportantField>
</xsl:when>
<xsl:when
test="b:GetImportantFields/b:SourceType='Misc'">
<b:ImportantField><xsl:text>b:Author/b:Author/b:NameList</xsl:text></b:ImportantFie
ld>
<b:ImportantField><xsl:text>b:Title</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:PublicationTitle</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Year</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:City</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Publisher</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Volume</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:Issue</xsl:text></b:ImportantField>
<b:ImportantField><xsl:text>b:StandardNumber</xsl:text></b:ImportantField>
</xsl:when>
</xsl:choose>
</b:ImportantFields>
</xsl:when>
<xsl:when test="b:Citation">
<xsl:variable name="ListPopulatedWithMain">
<xsl:call-template name="populateMain">
<xsl:with-param
name="Type">b:Citation</xsl:with-param>
</xsl:call-template>
</xsl:variable>
<html xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-
html40">
<head>
</head>
<body>
<xsl:variable name="LCID">
<xsl:choose>
<xsl:when test="b:LCID='0' or b:LCID='' or
not(b:LCID)">
<xsl:value-of
select="/*/b:Locals/b:DefaultLCID"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="b:LCID"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:element name="p">
<xsl:attribute name="lang">
<xsl:value-of
select="/*/b:Locals/b:Local[@LCID=$LCID]/@Culture"/>
</xsl:attribute>
<xsl:attribute name="dir">
<xsl:value-of
select="/*/b:Locals/b:Local[@LCID=$LCID]/b:Properties/b:Direction"/>
</xsl:attribute>
<xsl:variable name="type">
<xsl:value-of select="msxsl:node-
set($ListPopulatedWithMain)/b:Citation/b:Source/b:SourceType"/>
</xsl:variable>
<xsl:variable name="title">
</xsl:variable>
<xsl:variable name="year">
</xsl:variable>
<xsl:variable name="authorMain">
<xsl:copy-of select="msxsl:node-
set($ListPopulatedWithMain)/b:Citation/b:Source/b:Author/b:Main"/>
</xsl:variable>
<xsl:variable name="author">
<xsl:value-of select="msxsl:node-
set($ListPopulatedWithMain)/b:Citation/b:Source/b:RefOrder"/>
</xsl:variable>
<xsl:variable name="prop_APA_Hyphens">
<xsl:call-template name="templ_prop_Hyphens"/>
</xsl:variable>
<xsl:variable name="volVolume">
<xsl:if test="string-length($volume) >
0">
<xsl:call-template
name="StringFormat">
<xsl:with-param
name="format">
<xsl:choose>
<xsl:when
test="not(string-length($volume)=string-length(translate($volume, ',', '')))">
<xsl:call-template
name="templ_str_VolumesShortUnCap"/>
</xsl:when>
<xsl:when test="string-
length($volume)=string-length(translate($volume, $prop_APA_Hyphens, ''))">
<xsl:call-template
name="templ_str_VolumeShortUnCap"/>
</xsl:when>
<xsl:otherwise>
<xsl:call-template
name="templ_str_VolumesShortUnCap"/>
</xsl:otherwise>
</xsl:choose>
</xsl:with-param>
<xsl:with-param
name="parameters">
<t:params>
<t:param>
<xsl:value-
of select="$volume"/>
</t:param>
</t:params>
</xsl:with-param>
</xsl:call-template>
</xsl:if>
</xsl:variable>
<xsl:variable name="ppPages">
<xsl:if test="string-length($pages)>0">
<xsl:choose>
<xsl:when test="not(string-length($pages)=string-
length(translate($pages, ',', '')))">
<xsl:call-template
name="templ_str_PagesCountinousShort"/>
</xsl:when>
<xsl:when test="string-length($pages)=string-
length(translate($pages, $prop_APA_Hyphens, ''))">
<xsl:call-template name="templ_str_PageShort"/>
</xsl:when>
<xsl:otherwise>
<xsl:call-template
name="templ_str_PagesCountinousShort"/>
</xsl:otherwise>
</xsl:choose>
<xsl:call-template name="templ_prop_Space"/>
<xsl:value-of select="$pages"/>
</xsl:if>
</xsl:variable>
<xsl:variable name="displayAuthor">
<xsl:value-of select="$author" />
</xsl:variable>
<xsl:variable name="displayTitle">
</xsl:variable>
<xsl:if test="msxsl:node-
set($ListPopulatedWithMain)/b:Citation/b:FirstAuthor">
<xsl:call-template
name="templ_prop_OpenBracket"/>
</xsl:if>
<xsl:if test="msxsl:node-
set($ListPopulatedWithMain)/b:Citation/b:PagePrefix">
<xsl:value-of
select="/b:Citation/b:PagePrefix"/>
</xsl:if>
<xsl:choose>
<xsl:when test="string-
length($volume) > 0 and string-length($pages) > 0">
<xsl:value-of
select="$volume"/>
<xsl:call-template
name="templ_prop_EnumSeparator"/>
<xsl:value-of select="$pages"/>
</xsl:when>
<xsl:when test="string-
length($volVolume) > 0">
<xsl:value-of
select="$volVolume"/>
</xsl:when>
<xsl:when test="string-
length($ppPages) > 0">
<xsl:value-of
select="$ppPages"/>
</xsl:when>
</xsl:choose>
</xsl:if>
<xsl:if test="/b:Citation/b:PageSuffix">
<xsl:value-of
select="/b:Citation/b:PageSuffix"/>
</xsl:if>
<xsl:if test="/b:Citation/b:LastAuthor">
<xsl:call-template
name="templ_prop_CloseBracket"/>
</xsl:if>
<xsl:if test="not(/b:Citation/b:LastAuthor)">
<xsl:call-template
name="templ_prop_GroupSeparator"/>
</xsl:if>
</xsl:element>
</body>
</html>
</xsl:when>
<xsl:when test="b:Bibliography">
<html xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns="http://www.w3.org/TR/REC-html40">
<head>
<style>
p.MsoBibliography, li.MsoBibliography,
div.MsoBibliography
</style>
</head>
<body>
<xsl:variable name="ListPopulatedWithMain">
<xsl:call-template name="populateMain">
<xsl:with-param
name="Type">b:Bibliography</xsl:with-param>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="SortedList">
<xsl:call-template name="sortedList">
<xsl:with-param name="sourceRoot">
<xsl:copy-of
select="$ListPopulatedWithMain"/>
</xsl:with-param>
</xsl:call-template>
</xsl:variable>
<xsl:for-each select="msxsl:node-
set($SortedList)/b:Bibliography/b:Source">
<xsl:element name="p">
<xsl:variable name="LCID">
<xsl:choose>
<xsl:when test="b:LCID='0' or b:LCID=''
or not(b:LCID)">
<xsl:value-of
select="/*/b:Locals/b:DefaultLCID"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="b:LCID"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:attribute name="lang">
<xsl:value-of
select="/*/b:Locals/b:Local[@LCID=$LCID]/@Culture"/>
</xsl:attribute>
<xsl:attribute name="dir">
<xsl:value-of
select="/*/b:Locals/b:Local[@LCID=$LCID]/b:Properties/b:Direction"/>
</xsl:attribute>
<xsl:attribute name="class">
<xsl:value-of
select="'MsoBibliography'"/>
</xsl:attribute>
<xsl:variable name="prevBook">
<xsl:value-of
select="position()-1"/>
</xsl:variable>
<xsl:variable name="cMaxAllow">
<xsl:call-template
name="maxAuthor"/>
</xsl:variable>
<xsl:variable name="Main">
<xsl:call-template
name="formatMain"/>
</xsl:variable>
<xsl:variable name="MainDot">
<xsl:call-template name="appendField_Dot">
<xsl:with-param name="field" select="$Main"/>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="Editors">
<xsl:if test="b:Author/b:Main
!= b:Author/b:Editor">
<xsl:call-template
name="formatEditor"/>
<xsl:call-template
name="templ_prop_Space"/>
</xsl:if>
</xsl:variable>
<xsl:variable name="Translators">
<xsl:if test="b:Author/b:Main
!= b:Author/b:Translator">
<xsl:call-template
name="formatTranslator"/>
<xsl:call-template
name="templ_prop_Space"/>
</xsl:if>
</xsl:variable>
<xsl:variable name="Authors">
<xsl:if test="b:Author/b:Main
!= b:Author/b:Author">
<xsl:call-template
name="formatAuthor"/>
<xsl:call-template
name="templ_prop_Space"/>
</xsl:if>
</xsl:variable>
<xsl:variable name="BookAuthors">
<xsl:if test="b:Author/b:Main
!= b:Author/b:BookAuthor">
<xsl:call-template
name="formatBookAuthor"/>
<xsl:call-template
name="templ_prop_Space"/>
</xsl:if>
</xsl:variable>
<xsl:variable name="Artists">
<xsl:if test="b:Author/b:Main
!= b:Author/b:Artist">
<xsl:call-template
name="formatArtist"/>
<xsl:call-template
name="templ_prop_Space"/>
</xsl:if>
</xsl:variable>
<xsl:variable name="Compilers">
<xsl:if test="b:Author/b:Main
!= b:Author/b:Compiler">
<xsl:call-template
name="formatCompiler"/>
<xsl:call-template
name="templ_prop_Space"/>
</xsl:if>
</xsl:variable>
<xsl:variable name="Composers">
<xsl:if test="b:Author/b:Main
!= b:Author/b:Composer">
<xsl:call-template
name="formatComposer"/>
<xsl:call-template
name="templ_prop_Space"/>
</xsl:if>
</xsl:variable>
<xsl:variable name="Conductors">
<xsl:if test="b:Author/b:Main
!= b:Author/b:Conductor">
<xsl:call-template
name="formatConductor"/>
<xsl:call-template
name="templ_prop_Space"/>
</xsl:if>
</xsl:variable>
<xsl:variable name="Counsels">
<xsl:if test="b:Author/b:Main
!= b:Author/b:Counsel">
<xsl:call-template
name="formatCounsel"/>
<xsl:call-template
name="templ_prop_Space"/>
</xsl:if>
</xsl:variable>
<xsl:variable name="Directors">
<xsl:if test="b:Author/b:Main
!= b:Author/b:Director">
<xsl:call-template
name="formatDirector"/>
<xsl:call-template
name="templ_prop_Space"/>
</xsl:if>
</xsl:variable>
<xsl:variable name="Interviewees">
<xsl:if test="b:Author/b:Main
!= b:Author/b:Interviewee">
<xsl:call-template
name="formatInterviewee"/>
<xsl:call-template
name="templ_prop_Space"/>
</xsl:if>
</xsl:variable>
<xsl:variable name="Interviewers">
<xsl:if test="b:Author/b:Main != b:Author/b:Interviewer">
<xsl:call-template name="formatInterviewer"/>
<xsl:call-template
name="templ_prop_Space"/>
</xsl:if>
</xsl:variable>
<xsl:variable name="Inventors">
<xsl:if test="b:Author/b:Main
!= b:Author/b:Inventor">
<xsl:call-template
name="formatInventor"/>
<xsl:call-template
name="templ_prop_Space"/>
</xsl:if>
</xsl:variable>
<xsl:variable name="Performers">
<xsl:if test="b:Author/b:Main
!= b:Author/b:Performer">
<xsl:call-template
name="formatPerformer"/>
<xsl:call-template
name="templ_prop_Space"/>
</xsl:if>
</xsl:variable>
<xsl:variable name="ProducerNames">
<xsl:if test="b:Author/b:Main
!= b:Author/b:ProducerName">
<xsl:call-template
name="formatProducerName"/>
<xsl:call-template
name="templ_prop_Space"/>
</xsl:if>
</xsl:variable>
<xsl:variable name="Reporters">
<xsl:if test="string-
length(b:Reporter)">
<xsl:call-template
name="templ_prop_Space"/>
<xsl:value-of select
="b:Reporter"/>
<xsl:call-template
name="templ_prop_Dot"/>
</xsl:if>
</xsl:variable>
<xsl:variable name="Writers">
<xsl:if test="b:Author/b:Main
!= b:Author/b:Writer">
<xsl:call-template
name="formatWriter"/>
<xsl:call-template name="templ_prop_Space"/>
</xsl:if>
</xsl:variable>
<xsl:variable
name="CityAndPublishers">
<xsl:call-template name
="formatLocation"/>
</xsl:variable>
<xsl:variable name
="DayMonthYearAccessed">
<xsl:call-template name
="formatDayMonthYearAccessed"/>
</xsl:variable>
<xsl:variable name="prop_APA_Hyphens">
<xsl:call-template name="templ_prop_Hyphens"/>
</xsl:variable>
<xsl:otherwise>
<xsl:call-
template name="templ_str_VolumesShortCap"/>
</xsl:otherwise>
</xsl:choose>
</xsl:with-param>
<xsl:with-param
name="parameters">
<t:params>
<t:param>
<xsl:value-of select="$volume"/>
</t:param>
</t:params>
</xsl:with-param>
</xsl:call-template>
</xsl:if>
</xsl:variable>
<xsl:variable name
="VolumeAndNumberOfVolumes">
<xsl:value-of
select="$Volume"/>
</xsl:variable>
<xsl:variable name="pages"
select="b:Pages"/>
<xsl:variable name
="SpacePagesDot">
<xsl:if test="string-
length($pages)>0">
<xsl:call-template
name="templ_prop_Space"/>
<xsl:call-template
name="appendField_Dot">
<xsl:with-param
name="field" select ="$pages"/>
</xsl:call-template>
</xsl:if>
</xsl:variable>
<xsl:variable name
="SpacePPagesDot">
<xsl:if test="string-
length($Pages)>0">
<xsl:call-template
name="templ_prop_Space"/>
<xsl:call-template
name="appendField_Dot">
<xsl:with-param
name="field" select ="$Pages"/>
</xsl:call-template>
</xsl:if>
</xsl:variable>
<xsl:variable name
="ChapterNumber">
<xsl:if test="string-
length(b:ChapterNumber)>0">
<xsl:value-of select
="b:ChapterNumber"/>
</xsl:if>
</xsl:variable>
</xsl:if>
</xsl:variable>
</xsl:with-param>
</xsl:call-template>
</xsl:if>
<xsl:call-template name="templ_prop_ISO690_GeneralOpen"/>
<xsl:call-template name="templ_str_OnlineCap"/>
<xsl:call-template name="templ_prop_ISO690_GeneralClose"/>
<xsl:call-template name="templ_prop_Space"/>
</xsl:variable>
<xsl:variable name
='PublicationTitle'>
<xsl:if test ='string-
length(b:PublicationTitle)>0'>
<xsl:call-template name =
"ApplyItalicTitleNS">
<xsl:with-param name =
"data">
<xsl:call-template
name="appendField_Dot">
<xsl:with-
param name="field" select="b:PublicationTitle"/>
</xsl:call-
template>
<xsl:call-template
name="templ_prop_Space"/>
</xsl:with-param>
</xsl:call-template>
</xsl:if>
</xsl:variable>
</xsl:with-param>
</xsl:call-template>
</xsl:if>
</xsl:variable>
</xsl:variable>
<xsl:variable name
='PeriodicalTitle'>
<xsl:if test="string-
length(b:PeriodicalTitle)>0">
<xsl:call-template name =
"ApplyItalicTitleNS">
<xsl:with-param name =
"data">
<xsl:call-template
name="appendField_Dot">
<xsl:with-
param name="field" select="b:PeriodicalTitle"/>
</xsl:call-
template>
<xsl:call-template
name="templ_prop_Space"/>
</xsl:with-param>
</xsl:call-template>
</xsl:if>
</xsl:variable>
</xsl:if>
</xsl:variable>
<xsl:variable name
='ConferenceName'>
<xsl:if test="string-
length(b:ConferenceName)>0">
<xsl:call-template
name="templ_prop_Space"/>
<xsl:call-template
name="appendField_Dot">
<xsl:with-
param name="field" select="b:ConferenceName"/>
</xsl:call-
template>
</xsl:if>
</xsl:variable>
</xsl:with-param>
</xsl:call-template>
</xsl:if>
</xsl:variable>
<xsl:value-of select
="b:Medium"/>
<xsl:call-template
name="templ_prop_ISO690_GeneralClose"/><xsl:call-template name="templ_prop_Space"/>
</xsl:if>
</xsl:variable>
</xsl:if>
</xsl:variable>
</xsl:if>
</xsl:variable>
</xsl:if>
</xsl:variable>
</xsl:if>
</xsl:variable>
</xsl:with-param>
</xsl:call-template>
</xsl:if>
</xsl:variable>
</xsl:if>
</xsl:variable>
<xsl:variable name
='AbbreviatedCaseNumber'>
<xsl:if test="string-
length(b:AbbreviatedCaseNumber)">
<xsl:value-of
select ="b:AbbreviatedCaseNumber"/>
<xsl:call-template
name="templ_prop_Dot"/>
<xsl:call-template
name="templ_prop_Space"/>
</xsl:if>
</xsl:variable>
<xsl:choose>
<xsl:when test="string-
length(b:Chapter) > 0">
<xsl:call-template
name = "ApplyItalicFieldNS">
<xsl:with-param name
= "data">
<xsl:call-
template name="appendField_Dot">
</xsl:when>
<xsl:otherwise>
<xsl:if
test="string-length(b:TitlePrefix) > 0">
<xsl:call-
template name = "ApplyItalicTitleNS">
<xsl:with-param
name = "data">
<xsl:value-of select="b:TitlePrefix"/>
<xsl:call-template name="templ_prop_Space"/>
</xsl:with-
param>
</xsl:call-
template>
</xsl:if>
<xsl:if
test="string-length(b:Title) >0">
<xsl:call-
template name = "ApplyItalicTitleNS">
<xsl:with-param
name = "data">
<xsl:call-template name="appendField_Dot">
</xsl:call-template>
<xsl:call-template name="templ_prop_Space"/>
</xsl:with-
param>
</xsl:call-
template>
</xsl:if>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:variable name
='TitleOfMonographParts'>
<xsl:choose>
<xsl:when test="string-
length(b:Chapter) > 0">
<xsl:call-template
name="appendField_Dot">
<xsl:with-
param name="field" select="b:Chapter"/>
</xsl:call-
template>
</xsl:when>
<xsl:otherwise>
<xsl:if
test="string-length(b:TitlePrefix) > 0">
<xsl:value-
of select="b:TitlePrefix"/>
<xsl:call-
template name="templ_prop_Space"/>
</xsl:if>
<xsl:if
test="string-length(b:Title) >0">
<xsl:call-
template name="appendField_Dot">
</xsl:if>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:when test="(/b:Bibliography/b:Source[position()=$prevBook]/b:SourceType
= 'JournalArticle' or /b:Bibliography/b:Source[position()=$prevBook]/b:SourceType =
'ConferenceProceedings') and /b:Bibliography/b:Source[position()=$prevBook]/b:Title
= b:Title">
<xsl:call-template name="templ_prop_ISO690_SameAuthor"/><xsl:call-template
name="templ_prop_Dot"/>
</xsl:when>
</xsl:when>
</xsl:choose>
</xsl:with-param>
</xsl:call-template>
</xsl:if>
<xsl:choose>
<xsl:when
test="/b:Bibliography/b:Source[position()=$prevBook]/b:SourceType =
'JournalArticle' or /b:Bibliography/b:Source[position()=$prevBook]/b:SourceType =
'ConferenceProceedings'">
<b>
<xsl:copy-of
select="$Main"/>
<xsl:call-
template name="need_Dot">
<xsl:choose>
<xsl:when
test="b:SourceType='Book'">
<xsl:copy-of
select ='$Title'/>
<xsl:value-of
select="$Editors"/>
<xsl:value-of
select="$Translators"/>
<xsl:value-of
select="$EditionItem"/>
<xsl:call-template
name='PrintList'>
<xsl:with-
param name="list">
<Items>
<TextItem>
</TextItem>
<TextItem>
<xsl:value-of select ="$Year"/>
</TextItem>
</Items>
</xsl:with-
param>
</xsl:call-
template>
<xsl:value-of
select ="$SpacePPagesDot"/>
<xsl:call-template
name='PrintSpaceAndList'>
<xsl:with-
param name="list">
<Items>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
</Items>
</xsl:with-
param>
</xsl:call-
template>
<xsl:value-of
select ="$StandardNumber"/>
</xsl:when>
<xsl:when
test="b:SourceType='BookSection'">
<xsl:copy-of
select ='$TitleOfMonographParts'/>
<xsl:value-of
select="$BookAuthors"/>
<xsl:value-of
select="$Editors"/>
<xsl:value-of
select="$Translators"/>
<xsl:copy-of
select="$BookTitle"/>
<xsl:value-of
select="$EditionItem"/>
<xsl:call-template
name='PrintList'>
<xsl:with-
param name="list">
<Items>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
</Items>
</xsl:with-
param>
</xsl:call-
template>
<xsl:value-of
select ="$Comments"/>
</xsl:when>
<xsl:when
test="b:SourceType='JournalArticle'">
<xsl:value-of
select ="$Editors"/>
<xsl:value-of
select ="$Issues2"/>
<xsl:call-template
name='PrintList'>
<xsl:with-
param name="list">
<Items>
<TextItem>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
</Items>
</xsl:with-
param>
</xsl:call-
template>
<xsl:value-of
select ="$Comments"/>
<xsl:value-of
select ="$StandardNumber"/>
</xsl:when>
<xsl:when
test="b:SourceType='ArticleInAPeriodical'">
<xsl:copy-of
select ='$TitleOfMonographParts'/>
<xsl:value-of
select ="$Editors"/>
<xsl:copy-of
select ='$PeriodicalTitle'/>
<xsl:call-template
name='PrintList'>
<xsl:with-
param name="list">
<Items>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
</Items>
</xsl:with-
param>
</xsl:call-
template>
<xsl:value-of
select ="$Comments"/>
</xsl:when>
<xsl:when
test="b:SourceType='ConferenceProceedings'">
<xsl:value-of
select ="$Editors"/>
<xsl:call-template
name='PrintList'>
<xsl:with-
param name="list">
<Items>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
</Items>
</xsl:with-
param>
</xsl:call-
template>
<xsl:copy-of
select ='$ConferenceName'/>
<xsl:call-template
name='PrintSpaceAndList'>
<xsl:with-
param name="list">
<Items>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
</Items>
</xsl:with-
param>
</xsl:call-
template>
<xsl:value-of
select ="$Comments"/>
<xsl:value-of
select ="$StandardNumber"/>
</xsl:when>
<xsl:when
test="b:SourceType='Report'">
<xsl:copy-of
select ='$Title'/>
<xsl:value-of
select ="$DepartmentAndInstitution"/>
<xsl:call-template
name='PrintList'>
<xsl:with-
param name="list">
<Items>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
</Items>
</xsl:with-
param>
</xsl:call-
template>
<xsl:call-template
name='PrintSpaceAndList'>
<xsl:with-
param name="list">
<Items>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
</Items>
</xsl:with-
param>
</xsl:call-
template>
<xsl:value-of
select ="$Comments"/>
<xsl:value-of
select ="$StandardNumber"/>
</xsl:when>
<xsl:when
test="b:SourceType='SoundRecording'">
<xsl:copy-of
select ='$TitleOfMonographParts'/>
<xsl:value-of
select ="$Performers"/>
<xsl:value-of
select ="$Composers"/>
<xsl:value-of
select ="$Conductors"/>
<xsl:value-of
select ='$ProducerNames'/>
<xsl:copy-of
select ='$AlbumTitle'/>
<xsl:copy-of
select ='$Medium'/>
<xsl:call-template
name='PrintList'>
<xsl:with-
param name="list">
<Items>
<TextItem>
<xsl:value-of select ="$CityAndPublishers"/>
</TextItem>
<TextItem>
</TextItem>
</Items>
</xsl:with-
param>
</xsl:call-
template>
<xsl:value-of
select ="$Comments"/>
<xsl:value-of
select ="$StandardNumber"/>
</xsl:when>
<xsl:when
test="b:SourceType='Performance'">
<xsl:copy-of
select ='$Title'/>
<xsl:value-of
select ="$Directors"/>
<xsl:value-of
select="$Performers"/>
<xsl:value-of
select ="$ProducerNames"/>
<xsl:call-template
name='PrintList'>
<xsl:with-
param name="list">
<Items>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
</Items>
</xsl:with-
param>
</xsl:call-
template>
<xsl:value-of
select ="$Comments"/>
<xsl:value-of
select ="$StandardNumber"/>
</xsl:when>
<xsl:when
test="b:SourceType='Art'">
<xsl:copy-of
select ='$Title'/>
<xsl:call-template
name='PrintList'>
<xsl:with-
param name="list">
<Items>
<TextItem>
</TextItem>
</Items>
</xsl:with-
param>
</xsl:call-
template>
<xsl:value-of
select ="$Comments"/>
</xsl:when>
<xsl:when
test="b:SourceType='DocumentFromInternetSite'">
<xsl:copy-of
select ='$TitleOfMonographParts'/>
<xsl:copy-of
select ="$InternetSiteTitle"/>
<xsl:value-of
select ="$VersionAndDayMonthYear"/>
<xsl:value-of
select ="$DayMonthYearAccessed"/>
<xsl:value-of
select ="$Comments"/>
<xsl:value-of
select ="$URL"/>
<xsl:value-of
select ="$StandardNumber"/>
</xsl:when>
<xsl:when
test="b:SourceType='InternetSite'">
<xsl:value-of
select ='$Title'/>
<xsl:copy-of
select ="$InternetSiteTitle"/>
<xsl:value-of
select ="$VersionAndDayMonthYear"/>
<xsl:value-of
select ="$DayMonthYearAccessed"/>
<xsl:value-of
select ="$Comments"/>
<xsl:value-of
select ="$URL"/>
<xsl:value-of
select ="$StandardNumber"/>
</xsl:when>
<xsl:when
test="b:SourceType='Film'">
<xsl:copy-of
select ='$Title'/>
<xsl:value-of
select ="$MediumDot"/>
<xsl:value-of
select ="$Writers"/>
<xsl:value-of
select ="$Performers"/>
<xsl:value-of
select ="$ProducerNames"/>
<xsl:call-template
name='PrintList'>
<xsl:with-
param name="list">
<Items>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
</Items>
</xsl:with-
param>
</xsl:call-
template>
<xsl:value-of
select ="$Comments"/>
<xsl:value-of
select ="$StandardNumber"/>
</xsl:when>
<xsl:when
test="b:SourceType='Interview'">
<xsl:choose>
<xsl:when
test = "string-length(b:Broadcaster) = 0 and string-length(b:BroadcastTitle) = 0">
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
</xsl:otherwise>
</xsl:choose>
<xsl:value-of
select ="$Interviewers"/>
<xsl:value-of
select ="$Editors"/>
<xsl:value-of
select ="$Translators"/>
<xsl:value-of
select ="$Compilers"/>
<xsl:if
test="string-length($BroadcastTitle) > 0">
<xsl:call-
template name = "ApplyItalicTitleNS">
</xsl:with-param>
</xsl:call-
template>
</xsl:if>
<xsl:call-template
name='PrintList'>
<xsl:with-
param name="list">
<Items>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
</Items>
</xsl:with-
param>
</xsl:call-
template>
<xsl:call-template
name='PrintSpaceAndList'>
<xsl:with-
param name="list">
<Items>
<TextItem>
</TextItem>
</Items>
</xsl:with-
param>
</xsl:call-
template>
<xsl:value-of
select ="$Comments"/>
<xsl:value-of
select ="$StandardNumber"/>
</xsl:when>
<xsl:when
test="b:SourceType='Patent'">
<xsl:copy-of
select ='$Title'/>
<xsl:copy-of
select ='$PatentNumber'/>
<xsl:value-of
select ="$Editors"/>
<xsl:value-of
select ="$Translators"/>
<xsl:call-template
name='PrintList'>
<xsl:with-
param name="list">
<Items>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
</Items>
</xsl:with-
param>
</xsl:call-
template>
<xsl:value-of
select ="$Type"/>
<xsl:value-of
select ="$Comments"/>
</xsl:when>
<xsl:when
test="b:SourceType='ElectronicSource'">
<xsl:copy-of
select ='$Title'/>
<xsl:copy-of
select ='$Medium'/>
<xsl:value-of
select ="$Editors"/>
<xsl:value-of
select ="$ProducerNames"/>
<xsl:value-of
select ="$Translators"/>
<xsl:call-template
name='PrintList'>
<xsl:with-
param name="list">
<Items>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
</Items>
</xsl:with-
param>
</xsl:call-
template>
<xsl:call-template
name='PrintSpaceAndList'>
<xsl:with-
param name="list">
<Items>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
</Items>
</xsl:with-
param>
</xsl:call-
template>
<xsl:value-of
select ="$Comments"/>
<xsl:value-of
select ="$StandardNumber"/>
</xsl:when>
<xsl:when
test="b:SourceType='Case'">
<xsl:copy-of
select ='$Title'/>
<xsl:copy-of
select ='$CaseNumber'/>
<xsl:copy-of
select ='$AbbreviatedCaseNumber'/>
<xsl:value-of
select ="$Counsels"/>
<xsl:call-template
name='PrintList'>
<xsl:with-
param name="list">
<Items>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
</Items>
</xsl:with-
param>
</xsl:call-
template>
<xsl:value-of
select ="$Reporters"/>
<xsl:value-of
select ="$Comments"/>
</xsl:when>
<xsl:when
test="b:SourceType='Misc'">
<xsl:copy-of
select ='$TitleOfMonographParts'/>
<xsl:value-of
select ="$Edition"/>
<xsl:call-template
name="templ_prop_Space"/>
<xsl:value-of
select ="$Editors"/>
<xsl:value-of
select ="$Compilers"/>
<xsl:value-of
select ="$Translators"/>
<xsl:call-template
name = "ApplyItalicTitleNS">
<xsl:with-
param name = "data">
<Items>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
</Items>
</xsl:with-
param>
</xsl:call-
template>
<xsl:call-template
name='PrintSpaceAndList'>
<xsl:with-
param name="list">
<Items>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
<TextItem>
</TextItem>
</Items>
</xsl:with-
param>
</xsl:call-
template>
<xsl:value-of
select ="$Comments"/>
<xsl:value-of
select ="$StandardNumber"/>
</xsl:when>
</xsl:choose>
</xsl:variable>
<xsl:if test="string-
length(normalize-space($BibReference)) > 0">
<xsl:value-of
select="b:RefOrder"/>
<xsl:call-template
name="templ_prop_Dot"/><xsl:call-template name="templ_prop_Space"/>
<xsl:copy-of
select="$BibReference"/>
</xsl:if>
</xsl:element>
</xsl:for-each>
</body>
</html>
</xsl:when>
</xsl:choose>
</xsl:template>
<xsl:template name="sortedList">
<xsl:param name="sourceRoot"/>
<xsl:apply-templates select="msxsl:node-set($sourceRoot)/*">
<xsl:sort select="b:Author/b:Main/b:NameList/b:Person[1]/b:First"
/>
<xsl:sort
select="b:Author/b:Main/b:NameList/b:Person[1]/b:Middle"/>
<xsl:sort select="b:Title"/>
</xsl:apply-templates>
</xsl:template>
<xsl:template match="*">
<xsl:element name="{name()}" namespace="{namespace-uri()}">
<xsl:for-each select="@*">
<xsl:attribute name="{name()}" namespace="{namespace-
uri()}">
<xsl:template match="text()">
<xsl:value-of select="." />
</xsl:template>
<xsl:template name="maxAuthor">
<xsl:choose>
<xsl:when test="count(b:NameList/b:Person) > _MaxAuthor">
<xsl:value-of select="_MaxAuthor"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="count(b:NameList/b:Person)"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="formatLastFirst">
<xsl:call-template name="formatNameCore">
<xsl:with-param name="FML"><xsl:call-template
name="templ_prop_ISO690_MainAuthors_FML"/></xsl:with-param>
<xsl:with-param name="FM"><xsl:call-template
name="templ_prop_ISO690_MainAuthors_FM"/></xsl:with-param>
<xsl:with-param name="ML"><xsl:call-template
name="templ_prop_ISO690_MainAuthors_ML"/></xsl:with-param>
<xsl:with-param name="FL"><xsl:call-template
name="templ_prop_ISO690_MainAuthors_FL"/></xsl:with-param>
<xsl:with-param name="upperLast">yes</xsl:with-param>
<xsl:with-param name="withDot">yes</xsl:with-param>
</xsl:call-template>
</xsl:template>
<xsl:template name="formatFirstLast">
<xsl:call-template name="formatNameCore">
<xsl:with-param name="FML"><xsl:call-template
name="templ_prop_ISO690_SecondaryAuthors_FML"/></xsl:with-param>
<xsl:with-param name="FM"><xsl:call-template
name="templ_prop_ISO690_SecondaryAuthors_FM"/></xsl:with-param>
<xsl:with-param name="ML"><xsl:call-template
name="templ_prop_ISO690_SecondaryAuthors_ML"/></xsl:with-param>
<xsl:with-param name="FL"><xsl:call-template
name="templ_prop_ISO690_SecondaryAuthors_FL"/></xsl:with-param>
</xsl:call-template>
</xsl:template>
<xsl:template name="formatPersonSeparator">
<xsl:variable name="cMaxAuthor">
<xsl:value-of select="count(../b:Person)"/>
</xsl:variable>
<xsl:variable name="cMaxAllow">
<xsl:choose>
<xsl:when test="$cMaxAuthor > ../b:_MaxAuthor and
../b:_MaxAuthor > 0">
<xsl:value-of select="../b:_MaxAuthor"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$cMaxAuthor"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:choose>
<xsl:when test="$cMaxAuthor > 3">
<xsl:variable name="noCommaBeforeAnd">
<xsl:call-template name="templ_prop_NoCommaBeforeAnd"
/>
</xsl:variable>
<xsl:choose>
<xsl:when test="$noCommaBeforeAnd != 'yes'">
<xsl:call-template
name="templ_prop_AuthorsSeparator"/>
</xsl:when>
<xsl:otherwise>
<xsl:call-template name="templ_prop_Space"/>
</xsl:otherwise>
</xsl:choose>
<xsl:call-template name="templ_str_AndOthersUnCap"/>
</xsl:when>
<xsl:when test="$cMaxAllow - 1 > position()">
<xsl:call-template name="templ_prop_AuthorsSeparator"/>
</xsl:when>
<xsl:when test="position() = $cMaxAuthor - 1">
<xsl:variable name="noAndBeforeLastAuthor">
<xsl:call-template
name="templ_prop_NoAndBeforeLastAuthor"/>
</xsl:variable>
</xsl:when>
</xsl:choose>
</xsl:template>
<xsl:template name="formatPersons">
<xsl:variable name="cMaxAllow">
<xsl:call-template name="maxAuthor"/>
</xsl:variable>
<xsl:if test="string-length(b:Corporate)=0">
<xsl:for-each select="b:NameList/b:Person">
<xsl:variable name="cMaxAuthor">
<xsl:value-of
select="count(../b:NameList/b:Person)"/>
</xsl:variable>
<xsl:for-each select="b:Author/b:Main">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
<xsl:variable name="temp">
<xsl:for-each select="b:Author/b:Main">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
</xsl:variable>
<xsl:variable name="type">
<xsl:call-template name="GetMainAuthorTitle">
<xsl:with-param name="sourceType">
<xsl:value-of select="b:SourceType"/>
</xsl:with-param>
<xsl:with-param name="authorType">
<xsl:value-of select="b:MainAuthorType"/>
</xsl:with-param>
<xsl:with-param name="cAuthors">
<xsl:value-of
select="count(b:Author/b:Main/b:NameList/b:Person)"/>
</xsl:with-param>
<xsl:with-param name="isOrganisation">
<xsl:value-of select="string-
length(b:Author/b:Main/b:Corporate) > 0"/>
</xsl:with-param>
</xsl:call-template>
</xsl:variable>
<xsl:if test="string-length($type) > 0">
<xsl:call-template name="templ_prop_ListSeparator"/>
<xsl:call-template name="templ_prop_ISO690_GeneralOpen"/>
<xsl:value-of select="$type"/>
<xsl:call-template name="templ_prop_ISO690_GeneralClose"/>
</xsl:if>
</xsl:if>
</xsl:template>
<xsl:template name="formatAuthor">
<xsl:if test="string-length(b:Author/b:Author)>0">
<xsl:for-each select="b:Author/b:Author">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
<xsl:variable name="temp">
<xsl:for-each select="b:Author/b:Author">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
</xsl:variable>
<xsl:call-template name="need_Dot">
<xsl:with-param name="field" select="$temp"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
<xsl:template name="formatEditor">
<xsl:if test="string-length(b:Author/b:Editor)>0">
<xsl:call-template
name="templ_prop_ISO690_GeneralOpen"/><xsl:call-template
name="templ_str_EditorShortUnCap"/><xsl:call-template
name="templ_prop_ISO690_GeneralClose"/><xsl:call-template name="templ_prop_Space"/>
<xsl:for-each select="b:Author/b:Editor">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
<xsl:variable name="temp">
<xsl:for-each select="b:Author/b:Editor">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
</xsl:variable>
<xsl:call-template name="need_Dot">
<xsl:with-param name="field" select="$temp"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
<xsl:template name="formatTranslator">
<xsl:if test="string-length(b:Author/b:Translator)>0">
<xsl:call-template
name="templ_prop_ISO690_GeneralOpen"/><xsl:call-template
name="templ_str_TranslatorShortUnCap"/><xsl:call-template
name="templ_prop_ISO690_GeneralClose"/><xsl:call-template name="templ_prop_Space"/>
<xsl:for-each select="b:Author/b:Translator">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
<xsl:variable name="temp">
<xsl:for-each select="b:Author/b:Translator">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
</xsl:variable>
<xsl:call-template name="need_Dot">
<xsl:with-param name="field" select="$temp"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
<xsl:template name="formatArtist">
<xsl:if test="string-length(b:Author/b:Artist)>0">
<xsl:call-template
name="templ_prop_ISO690_GeneralOpen"/><xsl:call-template
name="templ_str_ArtistShortUnCap"/><xsl:call-template
name="templ_prop_ISO690_GeneralClose"/><xsl:call-template name="templ_prop_Space"/>
<xsl:for-each select="b:Author/b:Artist">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
<xsl:variable name="temp">
<xsl:for-each select="b:Author/b:Artist">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
</xsl:variable>
<xsl:call-template name="need_Dot">
<xsl:with-param name="field" select="$temp"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
<xsl:template name="formatBookAuthor">
<xsl:if test="string-length(b:Author/b:BookAuthor)>0">
<xsl:call-template name="templ_prop_ISO690_GeneralOpen"/>
<xsl:call-template name="templ_str_BookAuthorShortUnCap"/>
<xsl:call-template name="templ_prop_ISO690_GeneralClose"/>
<xsl:call-template name="templ_prop_Space"/>
<xsl:for-each select="b:Author/b:BookAuthor">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
<xsl:variable name="temp">
<xsl:for-each select="b:Author/b:BookAuthor">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
</xsl:variable>
<xsl:call-template name="need_Dot">
<xsl:with-param name="field" select="$temp"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
<xsl:template name="formatCompiler">
<xsl:if test="string-length(b:Author/b:Compiler)>0">
<xsl:call-template
name="templ_prop_ISO690_GeneralOpen"/><xsl:call-template
name="templ_str_CompilerShortUnCapIso"/><xsl:call-template
name="templ_prop_ISO690_GeneralClose"/><xsl:call-template name="templ_prop_Space"/>
<xsl:for-each select="b:Author/b:Compiler">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
<xsl:variable name="temp">
<xsl:for-each select="b:Author/b:Compiler">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
</xsl:variable>
<xsl:call-template name="need_Dot">
<xsl:with-param name="field" select="$temp"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
<xsl:template name="formatComposer">
<xsl:if test="string-length(b:Author/b:Composer)>0">
<xsl:call-template
name="templ_prop_ISO690_GeneralOpen"/><xsl:call-template
name="templ_str_ComposerShortUnCapIso"/><xsl:call-template
name="templ_prop_ISO690_GeneralClose"/><xsl:call-template name="templ_prop_Space"/>
<xsl:for-each select="b:Author/b:Composer">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
<xsl:variable name="temp">
<xsl:for-each select="b:Author/b:Composer">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
</xsl:variable>
<xsl:call-template name="need_Dot">
<xsl:with-param name="field" select="$temp"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
<xsl:template name="formatConductor">
<xsl:if test="string-length(b:Author/b:Conductor)>0">
<xsl:call-template
name="templ_prop_ISO690_GeneralOpen"/><xsl:call-template
name="templ_str_ConductorShortUnCap"/><xsl:call-template
name="templ_prop_ISO690_GeneralClose"/><xsl:call-template name="templ_prop_Space"/>
<xsl:for-each select="b:Author/b:Conductor">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
<xsl:variable name="temp">
<xsl:for-each select="b:Author/b:Conductor">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
</xsl:variable>
<xsl:call-template name="need_Dot">
<xsl:with-param name="field" select="$temp"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
<xsl:template name="formatCounsel">
<xsl:if test="string-length(b:Author/b:Counsel)>0">
<xsl:call-template
name="templ_prop_ISO690_GeneralOpen"/><xsl:call-template
name="templ_str_CounselShortUnCap"/><xsl:call-template
name="templ_prop_ISO690_GeneralClose"/><xsl:call-template name="templ_prop_Space"/>
<xsl:for-each select="b:Author/b:Counsel">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
<xsl:variable name="temp">
<xsl:for-each select="b:Author/b:Counsel">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
</xsl:variable>
<xsl:call-template name="need_Dot">
<xsl:with-param name="field" select="$temp"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
<xsl:template name="formatDirector">
<xsl:if test="string-length(b:Author/b:Director)>0">
<xsl:call-template
name="templ_prop_ISO690_GeneralOpen"/><xsl:call-template
name="templ_str_DirectorShortUnCap"/><xsl:call-template
name="templ_prop_ISO690_GeneralClose"/><xsl:call-template name="templ_prop_Space"/>
<xsl:for-each select="b:Author/b:Director">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
<xsl:variable name="temp">
<xsl:for-each select="b:Author/b:Director">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
</xsl:variable>
<xsl:call-template name="need_Dot">
<xsl:with-param name="field" select="$temp"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
<xsl:template name="formatInterviewee">
<xsl:if test="string-length(b:Author/b:Interviewee)>0">
<xsl:call-template
name="templ_prop_ISO690_GeneralOpen"/><xsl:call-template
name="templ_str_IntervieweeShortUnCap"/><xsl:call-template
name="templ_prop_ISO690_GeneralClose"/><xsl:call-template name="templ_prop_Space"/>
<xsl:for-each select="b:Author/b:Interviewee">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
<xsl:variable name="temp">
<xsl:for-each select="b:Author/b:Interviewee">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
</xsl:variable>
<xsl:call-template name="need_Dot">
<xsl:with-param name="field" select="$temp"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
<xsl:template name="formatInterviewer">
<xsl:if test="string-length(b:Author/b:Interviewee)>0">
<xsl:call-template name="templ_prop_ISO690_GeneralOpen"/>
<xsl:call-template name="templ_str_IntervieweeShortUnCap"/>
<xsl:call-template name="templ_prop_ISO690_GeneralClose"/>
<xsl:call-template name="templ_prop_Space"/>
<xsl:for-each select="b:Author/b:Interviewer">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
<xsl:variable name="temp">
<xsl:for-each select="b:Author/b:Interviewer">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
</xsl:variable>
<xsl:call-template name="need_Dot">
<xsl:with-param name="field" select="$temp"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
<xsl:template name="formatInventor">
<xsl:if test="string-length(b:Author/b:Inventor)>0">
<xsl:call-template
name="templ_prop_ISO690_GeneralOpen"/><xsl:call-template
name="templ_str_InventorShortUnCap"/><xsl:call-template
name="templ_prop_ISO690_GeneralClose"/><xsl:call-template name="templ_prop_Space"/>
<xsl:for-each select="b:Author/b:Inventor">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
<xsl:variable name="temp">
<xsl:for-each select="b:Author/b:Inventor">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
</xsl:variable>
<xsl:call-template name="need_Dot">
<xsl:with-param name="field" select="$temp"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
<xsl:template name="formatPerformer">
<xsl:if test="string-length(b:Author/b:Performer)>0">
<xsl:call-template
name="templ_prop_ISO690_GeneralOpen"/><xsl:call-template
name="templ_str_PerformerShortUnCap"/><xsl:call-template
name="templ_prop_ISO690_GeneralClose"/><xsl:call-template name="templ_prop_Space"/>
<xsl:for-each select="b:Author/b:Performer">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
<xsl:variable name="temp">
<xsl:for-each select="b:Author/b:Performer">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
</xsl:variable>
<xsl:call-template name="need_Dot">
<xsl:with-param name="field" select="$temp"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
<xsl:template name="formatProducerName">
<xsl:if test="string-length(b:Author/b:ProducerName)>0">
<xsl:call-template
name="templ_prop_ISO690_GeneralOpen"/><xsl:call-template
name="templ_str_ProducerShortUnCap"/><xsl:call-template
name="templ_prop_ISO690_GeneralClose"/><xsl:call-template name="templ_prop_Space"/>
<xsl:for-each select="b:Author/b:ProducerName">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
<xsl:variable name="temp">
<xsl:for-each select="b:Author/b:ProducerName">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
</xsl:variable>
<xsl:call-template name="need_Dot">
<xsl:with-param name="field" select="$temp"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
<xsl:template name="formatWriter">
<xsl:if test="string-length(b:Author/b:Writer)>0">
<xsl:call-template
name="templ_prop_ISO690_GeneralOpen"/><xsl:call-template
name="templ_str_WriterShortUnCap"/><xsl:call-template
name="templ_prop_ISO690_GeneralClose"/><xsl:call-template name="templ_prop_Space"/>
<xsl:for-each select="b:Author/b:Writer">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
<xsl:variable name="temp">
<xsl:for-each select="b:Author/b:Writer">
<xsl:call-template name="formatPersons"/>
</xsl:for-each>
</xsl:variable>
<xsl:call-template name="need_Dot">
<xsl:with-param name="field" select="$temp"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
<xsl:template name="formatLocation">
b:SourceType='ArticleInAPeriodical' or
b:SourceType='ConferenceProceedings' or
b:SourceType='Report' or
b:SourceType='SoundRecording'
or
b:SourceType='Performance' or
b:SourceType='Art' or
b:SourceType='Interview' or
b:SourceType='ElectronicSource' or
b:SourceType='Case' or
b:SourceType='Report' or
b:SourceType='Misc'">
<xsl:choose>
<xsl:when test ="string-length(b:City)>0 or
(string-length(b:Theater)>0 and b:SourceType='Performance')">
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test ="(string-
length(b:Publisher)>0)and b:SourceType='Report'">
</xsl:when>
<xsl:when test ="string-
length(b:Institution)>0 and b:SourceType='Art'">
</xsl:when>
<xsl:when test ="string-
length(b:ProductionCompany)>0 and b:SourceType='SoundRecording'">
</xsl:when>
<xsl:when test ="string-
length(b:ProductionCompany)>0 and b:SourceType='Performance'">
</xsl:when>
<xsl:when test ="(string-
length(b:ProductionCompany)>0 or string-length(b:Publisher)>0) and
b:SourceType='ElectronicSource'">
</xsl:when>
<xsl:when test ="string-
length(b:Court)>0 and b:SourceType='Case'">
</xsl:when>
<xsl:when test ="(string-
length(b:Publisher)>0 or (string-length(b:Broadcaster)>0 and
b:SourceType='Interview')) and
(
b:SourceType='Book' or
b:SourceType='BookSection' or
b:SourceType='JournalArticle' or
b:SourceType='ArticleInAPeriodical' or
b:SourceType='ConferenceProceedings' or
b:SourceType='Interview' or
b:SourceType='Report' or
b:SourceType='Misc' or
b:SourceType='Art'
)">
</xsl:when>
<xsl:otherwise>
<xsl:text>1</xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
</xsl:choose>
</xsl:variable>
b:SourceType='ArticleInAPeriodical' or
b:SourceType='ConferenceProceedings' or
b:SourceType='Report' or
b:SourceType='SoundRecording'
or
b:SourceType='Performance' or
b:SourceType='Art' or
b:SourceType='Interview' or
b:SourceType='ElectronicSource' or
b:SourceType='Case' or
b:SourceType='Report' or
b:SourceType='Misc'">
<xsl:if test="b:SourceType='Art'">
<xsl:value-of select="b:Institution"/>
</xsl:if>
<xsl:choose>
<xsl:when test ="string-length(b:City)>0 or
(string-length(b:Theater)>0 and b:SourceType='Performance')">
<xsl:if
test="b:SourceType='Performance'">
<xsl:value-of select ='b:Theater'/>
<xsl:if test ='string-
length(b:Theater)>0 and string-length(b:City)>0'>
<xsl:call-template
name="templ_prop_ListSeparator"/>
<xsl:call-template
name="templ_prop_Space"/>
</xsl:if>
</xsl:if>
<xsl:if test="b:SourceType='ElectronicSource'">
<xsl:value-of select ='b:Edition'/>
<xsl:if test ='string-length(b:Edition)>0 and string-
length(b:City)>0'>
<xsl:call-template name="templ_prop_ListSeparator"/>
<xsl:call-template name="templ_prop_Space"/>
</xsl:if>
</xsl:if>
<xsl:if test="b:SourceType='Interview'">
<xsl:value-of select ='b:Station'/>
<xsl:if test ='string-length(b:Station)>0 and string-
length(b:City)>0'>
<xsl:call-template name="templ_prop_ListSeparator"/>
<xsl:call-template name="templ_prop_Space"/>
</xsl:if>
</xsl:if>
<xsl:if test="b:SourceType='Art' and string-length(b:Institution)>0
and string-length(b:City)>0">
<xsl:call-template name="templ_prop_ListSeparator"/>
</xsl:if>
<xsl:value-of select="b:City"/>
</xsl:when>
<xsl:otherwise>
<xsl:if test="b:SourceType='Art' and string-length(b:Institution)>0">
<xsl:call-template name="templ_prop_ListSeparator"/>
</xsl:if>
<xsl:call-template name="templ_str_SineLocoShort"/>
</xsl:otherwise>
</xsl:choose>
<xsl:variable name="tempSecond">
<xsl:call-template name="handleSpaces">
<xsl:with-param name="field" select="b:CountryRegion"/>
</xsl:call-template>
</xsl:variable>
<xsl:if test="string-length($tempFirst)>0">
<xsl:value-of select="$tempFirst"/>
</xsl:if>
<xsl:if test="string-length($tempSecond)>0">
<xsl:value-of select="$tempSecond"/>
</xsl:if>
</xsl:if>
<xsl:variable name="after">
<xsl:choose>
</xsl:if>
<xsl:value-of
select="b:ProductionCompany"/>
</xsl:when>
<xsl:when test ="string-length(b:Court)>0 and
b:SourceType='Case'">
<xsl:value-of select="b:Court"/>
</xsl:when>
<xsl:when test ="b:SourceType='Art' and (string-length(b:Publisher)>0
or string-length(b:Year)>0)">
</xsl:when>
<xsl:when test ="(string-length(b:Publisher)>0 or (string-
length(b:Broadcaster)>0 and b:SourceType='Interview')) and
(
b:SourceType='Book' or
b:SourceType='BookSection' or
b:SourceType='JournalArticle' or
b:SourceType='ArticleInAPeriodical' or
b:SourceType='ConferenceProceedings' or
b:SourceType='Interview' or
b:SourceType='Report' or
b:SourceType='Misc'
)">
<xsl:if test ="string-length(b:Broadcaster)>0 and
b:SourceType='Interview'">
<xsl:value-of select="b:Broadcaster"/>
</xsl:if>
<xsl:value-of select="b:Publisher"/>
</xsl:when>
<xsl:when test ="string-length(b:Broadcaster)=0 and
b:SourceType='Interview'">
</xsl:when>
<xsl:otherwise>
<xsl:call-template
name="templ_str_SineNomineShort"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:if test="string-length(normalize-space($after))>0">
<xsl:call-template
name="templ_prop_NonBreakingSpace"/><xsl:call-template
name="templ_prop_EnumSeparator"/><xsl:value-of select="$after"/>
</xsl:if>
</xsl:when>
</xsl:if>
<xsl:value-of select ="b:Distributor"/>
<xsl:if test ="string-length(b:ProductionCompany)>0 or
string-length(b:Distributor)>0">
</xsl:if>
</xsl:when>
</xsl:choose>
</xsl:if>
</xsl:template>
<xsl:template name="formatDayMonthYear">
<xsl:if test ='string-length(b:Day) >0 or string-length(b:Month) >0 or
string-length(b:Year) >0'>
<xsl:call-template name="formatDateCore">
<xsl:with-param name="day">
<xsl:call-template name="handleSpaces">
<xsl:with-param name="field" select="b:Day"/>
</xsl:call-template>
</xsl:with-param>
<xsl:with-param name="month">
<xsl:call-template name="handleSpaces">
<xsl:with-param name="field" select="b:Month"/>
</xsl:call-template>
</xsl:with-param>
<xsl:with-param name="year">
<xsl:call-template name="handleSpaces">
<xsl:with-param name="field" select="b:Year"/>
</xsl:call-template>
</xsl:with-param>
<xsl:with-param name="DMY"><xsl:call-template
name="templ_prop_ISO690_Date_DMY"/></xsl:with-param>
<xsl:with-param name="DM"><xsl:call-template
name="templ_prop_ISO690_Date_DM"/></xsl:with-param>
<xsl:with-param name="MY"><xsl:call-template
name="templ_prop_ISO690_Date_MY"/></xsl:with-param>
<xsl:with-param name="DY"><xsl:call-template
name="templ_prop_ISO690_Date_DY"/></xsl:with-param>
</xsl:call-template>
</xsl:if>
</xsl:template>
<xsl:with-param name="DMY"><xsl:call-template
name="templ_prop_ISO690_DateAccessed_DMY"/></xsl:with-param>
<xsl:with-param name="DM"><xsl:call-template
name="templ_prop_ISO690_DateAccessed_DM"/></xsl:with-param>
<xsl:with-param name="MY"><xsl:call-template
name="templ_prop_ISO690_DateAccessed_MY"/></xsl:with-param>
<xsl:with-param name="DY"><xsl:call-template
name="templ_prop_ISO690_DateAccessed_DY"/></xsl:with-param>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="cited">
<xsl:call-template name="templ_str_CitedCap"/>
</xsl:variable>
<xsl:call-template name="StringFormatDot">
<xsl:with-param name="format" select="$cited"/>
<xsl:with-param name="parameters">
<t:params>
<t:param>
<xsl:value-of select="$date"/>
</t:param>
</t:params>
</xsl:with-param>
</xsl:call-template>
<xsl:call-template name="templ_prop_ISO690_GeneralClose"/>
</xsl:if>
</xsl:template>
<xsl:template name="populateMain">
<xsl:param name="Type"/>
<xsl:element name="{$Type}">
<xsl:for-each select="/*[$Type]/b:Source">
<xsl:variable name="MostImportantAuthorLocalName">
<xsl:call-template name="MainContributors"/>
</xsl:variable>
<xsl:element name="{'b:Source'}">
<b:MainAuthorType>
<xsl:value-of
select="$MostImportantAuthorLocalName"/>
</b:MainAuthorType>
<xsl:if test="$Type='b:Citation'">
<b:Title>
<xsl:if test="string-length(b:Title)>0">
<xsl:value-of select="b:Title"/>
</xsl:if>
</b:Title>
</xsl:if>
<b:Author>
<b:Main>
<xsl:if test="string-
length(./b:Author/*[local-name()=$MostImportantAuthorLocalName]/b:Corporate)=0">
<b:NameList>
<xsl:for-each
select="./b:Author/*[local-
name()=$MostImportantAuthorLocalName]/b:NameList/b:Person">
<b:Person>
<b:Last>
<xsl:value-
of select="./b:Last"/>
</b:Last>
<b:First>
<xsl:value-
of select="./b:First"/>
</b:First>
<b:Middle>
<xsl:value-
of select="./b:Middle"/>
</b:Middle>
</b:Person>
</xsl:for-each>
</b:NameList>
</xsl:if>
<xsl:if test="string-
length(./b:Author/*[local-name()=$MostImportantAuthorLocalName]/b:Corporate)>0">
<b:Corporate>
<xsl:value-of
select="./b:Author/*[local-name()=$MostImportantAuthorLocalName]/b:Corporate"/>
</b:Corporate>
</xsl:if>
</b:Main>
<xsl:for-each select="./b:Author/*">
</xsl:element>
</xsl:if>
</xsl:for-each>
</b:Author>
<xsl:for-each select="*">
</xsl:element>
</xsl:if>
</xsl:for-each>
</xsl:element>
</xsl:for-each>
<xsl:for-each select="/*[$Type]/*">
<xsl:if test="local-name()!='Source'">
<xsl:call-template name="copyTrees"/>
</xsl:if>
</xsl:for-each>
</xsl:element>
</xsl:template>
<xsl:template name="copyNameNodes">
<xsl:if test="string-length(b:Corporate)=0">
<b:NameList>
<xsl:for-each select="b:NameList/b:Person">
<b:Person>
<xsl:if test="string-length(./b:Last)>0">
<b:Last>
<xsl:value-of select="./b:Last"/>
</b:Last>
</xsl:if>
<xsl:if test="string-length(./b:First)>0">
<b:First>
<xsl:value-of select="./b:First"/>
</b:First>
</xsl:if>
<xsl:if test="string-length(./b:Middle)>0">
<b:Middle>
<xsl:value-of select="./b:Middle"/>
</b:Middle>
</xsl:if>
</b:Person>
</xsl:for-each>
</b:NameList>
</xsl:if>
<xsl:if test="string-length(b:Corporate)>0">
<b:Corporate>
<xsl:value-of select="b:Corporate"/>
</b:Corporate>
</xsl:if>
</xsl:template>
<xsl:template name="copyNodes">
<xsl:value-of select="."/>
</xsl:template>
<xsl:template name="copyTrees">
<xsl:copy-of select ='.'/>
</xsl:template>
<xsl:template name="MainContributors">
<xsl:param name="SourceRoot"/>
<xsl:choose>
<xsl:when test="./b:SourceType='Book'">
<xsl:choose>
<xsl:when test="string-
length(./b:Author/b:Author)>0">Author</xsl:when>
<xsl:when test="string-
length(./b:Author/b:Editor)>0">Editor</xsl:when>
<xsl:when test="string-
length(./b:Author/b:Translator)>0">Translator</xsl:when>
</xsl:choose>
</xsl:when>
<xsl:when test="./b:SourceType='BookSection'">
<xsl:choose>
<xsl:when test="string-
length(./b:Author/b:Author)>0">Author</xsl:when>
</xsl:choose>
</xsl:when>
<xsl:when test="./b:SourceType='JournalArticle'">
<xsl:choose>
<xsl:when test="string-
length(./b:Author/b:Author)>0">Author</xsl:when>
<xsl:when test="string-
length(./b:Author/b:Editor)>0">Editor</xsl:when>
</xsl:choose>
</xsl:when>
<xsl:when test="./b:SourceType='ArticleInAPeriodical'">
<xsl:choose>
<xsl:when test="string-
length(./b:Author/b:Author)>0">Author</xsl:when>
</xsl:choose>
</xsl:when>
<xsl:when test="./b:SourceType='ConferenceProceedings'">
<xsl:choose>
<xsl:when test="string-
length(./b:Author/b:Author)>0">Author</xsl:when>
<xsl:when test="string-
length(./b:Author/b:Editor)>0">Editor</xsl:when>
</xsl:choose>
</xsl:when>
<xsl:when test="./b:SourceType='Report'">
<xsl:choose>
<xsl:when test="string-
length(./b:Author/b:Author)>0">Author</xsl:when>
</xsl:choose>
</xsl:when>
<xsl:when test="./b:SourceType='SoundRecording'">
<xsl:choose>
<xsl:when test="string-
length(./b:Author/b:Artist)>0">Artist</xsl:when>
<xsl:when test="string-
length(./b:Author/b:Performer)>0">Performer</xsl:when>
<xsl:when test="string-
length(./b:Author/b:Composer)>0">Composer</xsl:when>
<xsl:when test="string-
length(./b:Author/b:Conductor)>0">Conductor</xsl:when>
<xsl:when test="string-
length(./b:Author/b:ProducerName)>0">ProducerName</xsl:when>
</xsl:choose>
</xsl:when>
<xsl:when test="./b:SourceType='Performance'">
<xsl:choose>
<xsl:when test="string-
length(./b:Author/b:Writer)>0">Writer</xsl:when>
<xsl:when test="string-
length(./b:Author/b:Director)>0">Director</xsl:when>
<xsl:when test="string-
length(./b:Author/b:Performer)>0">Performer</xsl:when>
<xsl:when test="string-
length(./b:Author/b:ProducerName)>0">ProducerName</xsl:when>
</xsl:choose>
</xsl:when>
<xsl:when test="./b:SourceType='Art'">
<xsl:choose>
<xsl:when test="string-
length(./b:Author/b:Artist)>0">Artist</xsl:when>
</xsl:choose>
</xsl:when>
<xsl:when test="./b:SourceType='DocumentFromInternetSite'">
<xsl:choose>
<xsl:when test="string-
length(./b:Author/b:Author)>0">Author</xsl:when>
</xsl:choose>
</xsl:when>
<xsl:when test="./b:SourceType='InternetSite'">
<xsl:choose>
<xsl:when test="string-
length(./b:Author/b:Author)>0">Author</xsl:when>
</xsl:choose>
</xsl:when>
<xsl:when test="./b:SourceType='Film'">
<xsl:choose>
<xsl:when test="string-
length(./b:Author/b:Director)>0">Director</xsl:when>
<xsl:when test="string-
length(./b:Author/b:Writer)>0">Writer</xsl:when>
<xsl:when test="string-
length(./b:Author/b:Performer)>0">Performer</xsl:when>
<xsl:when test="string-
length(./b:Author/b:ProducerName)>0">ProducerName</xsl:when>
</xsl:choose>
</xsl:when>
<xsl:when test="./b:SourceType='Interview'">
<xsl:choose>
<xsl:when test="string-
length(./b:Author/b:Interviewee)>0">Interviewee</xsl:when>
</xsl:choose>
</xsl:when>
<xsl:when test="./b:SourceType='Patent'">
<xsl:choose>
<xsl:when test="string-
length(./b:Author/b:Inventor)>0">Inventor</xsl:when>
</xsl:choose>
</xsl:when>
<xsl:when test="./b:SourceType='ElectronicSource'">
<xsl:choose>
<xsl:when test="string-
length(./b:Author/b:Author)>0">Author</xsl:when>
<xsl:when test="string-
length(./b:Author/b:Editor)>0">Editor</xsl:when>
<xsl:when test="string-
length(./b:Author/b:ProducerName)>0">ProducerName</xsl:when>
<xsl:when test="string-
length(./b:Author/b:Translator)>0">Translator</xsl:when>
</xsl:choose>
</xsl:when>
<xsl:when test="./b:SourceType='Case'">
<xsl:choose>
<xsl:when test="string-
length(./b:Author/b:Author)>0">Author</xsl:when>
<xsl:when test="string-
length(./b:Author/b:Counsel)>0">Counsel</xsl:when>
</xsl:choose>
</xsl:when>
<xsl:when test="./b:SourceType='Misc'">
<xsl:choose>
<xsl:when test="string-
length(./b:Author/b:Author)>0">Author</xsl:when>
<xsl:when test="string-
length(./b:Author/b:Editor)>0">Editor</xsl:when>
<xsl:when test="string-
length(./b:Author/b:Compiler)>0">Compiler</xsl:when>
<xsl:when test="string-
length(./b:Author/b:Translator)>0">Translator</xsl:when>
</xsl:choose>
</xsl:when>
</xsl:choose>
</xsl:template>
<xsl:template name="handleSpaces">
<xsl:param name="field"/>
<xsl:variable name="prop_NormalizeSpace">
<xsl:call-template name="templ_prop_NormalizeSpace"/>
</xsl:variable>
<xsl:choose>
<xsl:when test="$prop_NormalizeSpace='yes'">
<xsl:value-of select="normalize-space($field)"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$field"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="handleHyphens">
<xsl:param name="name"/>
<xsl:variable name="prop_APA_Hyphens">
<xsl:call-template name="templ_prop_Hyphens"/>
</xsl:variable>
<xsl:if test="string-length($name)>=2">
<xsl:choose>
<xsl:when test="contains($prop_APA_Hyphens,
substring($name, 1, 1))">
<xsl:value-of select="substring($name, 1, 2)"/>
<xsl:call-template name="templ_prop_DotInitial"/>
<xsl:call-template name="handleHyphens">
<xsl:with-param name="name"
select="substring($name, 3)"/>
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:call-template name="handleHyphens">
<xsl:with-param name="name"
select="substring($name, 2)"/>
</xsl:call-template>
</xsl:otherwise>
</xsl:choose>
</xsl:if>
</xsl:template>
<xsl:template name="formatNameInitial">
<xsl:param name="name"/>
<xsl:variable name="temp">
<xsl:call-template name="handleSpaces">
<xsl:with-param name="field" select="$name"/>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="prop_APA_Hyphens">
<xsl:call-template name="templ_prop_Hyphens"/>
</xsl:variable>
<xsl:if test="string-length($temp)>0">
<xsl:variable name="tempWithoutSpaces">
<xsl:value-of select="translate($temp, '  ',
'')"/>
</xsl:variable>
<xsl:if test="not(contains($prop_APA_Hyphens,
substring($tempWithoutSpaces, 1, 1)))">
<xsl:value-of select="substring($tempWithoutSpaces, 1,
1)"/>
<xsl:call-template name="templ_prop_DotInitial"/>
</xsl:if>
<xsl:call-template name="handleHyphens">
<xsl:with-param name="name" select="$tempWithoutSpaces"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
<xsl:template name="formatNameOneItem">
<xsl:param name="format"/>
<xsl:choose>
<xsl:when test="$format = 'F'">
<xsl:value-of select="b:First"/>
</xsl:when>
<xsl:when test="$format = 'L'">
<xsl:value-of select="b:Last"/>
</xsl:when>
<xsl:when test="$format = 'M'">
<xsl:value-of select="b:Middle"/>
</xsl:when>
<xsl:when test="$format = 'f'">
<xsl:call-template name="formatNameInitial">
<xsl:with-param name="name" select="b:First"/>
</xsl:call-template>
</xsl:when>
<xsl:when test="$format = 'm'">
<xsl:call-template name="formatNameInitial">
<xsl:with-param name="name" select="b:Middle"/>
</xsl:call-template>
</xsl:when>
<xsl:when test="$format = 'l'">
<xsl:call-template name="formatNameInitial">
<xsl:with-param name="name" select="b:Last"/>
</xsl:call-template>
</xsl:when>
</xsl:choose>
</xsl:template>
<xsl:template name="StringFormatName">
<xsl:param name="format" />
<xsl:param name="withDot" />
<xsl:param name="upperLast"/>
<xsl:variable name="prop_EndChars">
<xsl:call-template name="templ_prop_EndChars"/>
</xsl:variable>
<xsl:choose>
<xsl:when test="$format = ''"></xsl:when>
<xsl:when test="substring($format, 1, 2) = '%%'">
<xsl:text>%</xsl:text>
<xsl:call-template name="StringFormatName">
<xsl:with-param name="format"
select="substring($format, 3)" />
<xsl:with-param name="withDot" select="$withDot" />
<xsl:with-param name="upperLast"
select="$upperLast" />
</xsl:call-template>
<xsl:if test="string-length($format)=2 and withDot = 'yes'
and not(contains($prop_EndChars, '%'))">
<xsl:call-template name="templ_prop_Dot"/>
</xsl:if>
</xsl:when>
<xsl:when test="substring($format, 1, 1) = '%'">
<xsl:variable name="what" select="substring($format, 2, 1)"
/>
<xsl:choose>
<xsl:when test="(what = 'l' or what = 'L') and
upperLast = 'yes'">
<span style='text-transform: uppercase;'>
<xsl:call-template
name="formatNameOneItem">
<xsl:with-param name="format"
select="$what"/>
</xsl:call-template>
</span>
</xsl:when>
<xsl:otherwise>
<xsl:call-template name="formatNameOneItem">
<xsl:with-param name="format"
select="$what"/>
</xsl:call-template>
</xsl:otherwise>
</xsl:choose>
<xsl:call-template name="StringFormatName">
<xsl:with-param name="format"
select="substring($format, 3)" />
<xsl:with-param name="withDot" select="$withDot" />
<xsl:with-param name="upperLast"
select="$upperLast" />
</xsl:call-template>
<xsl:if test="string-length($format)=2 and withDot='yes'">
<xsl:variable name="temp2">
<xsl:call-template name="handleSpaces">
<xsl:with-param name="field">
<xsl:call-template
name="formatNameOneItem">
<xsl:with-param name="format"
select="$what"/>
</xsl:call-template>
</xsl:with-param>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="lastChar">
<xsl:value-of select="substring($temp2, string-
length($temp2))"/>
</xsl:variable>
<xsl:if test="not(contains($prop_EndChars,
$lastChar))">
<xsl:call-template name="templ_prop_Dot"/>
</xsl:if>
</xsl:if>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="substring($format, 1, 1)" />
<xsl:call-template name="StringFormatName">
<xsl:with-param name="format"
select="substring($format, 2)" />
<xsl:with-param name="withDot" select="$withDot" />
<xsl:with-param name="upperLast"
select="$upperLast" />
</xsl:call-template>
<xsl:if test="string-length($format)=1">
<xsl:if test="withDot = 'yes' and
not(contains($prop_EndChars, $format))">
<xsl:call-template name="templ_prop_Dot"/>
</xsl:if>
</xsl:if>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="StringFormatDate">
<xsl:param name="format" />
<xsl:param name="day"/>
<xsl:param name="month"/>
<xsl:param name="year"/>
<xsl:variable name="prop_EndChars">
<xsl:call-template name="templ_prop_EndChars"/>
</xsl:variable>
<xsl:choose>
<xsl:when test="$format = ''"></xsl:when>
<xsl:when test="substring($format, 1, 2) = '%%'">
<xsl:text>%</xsl:text>
<xsl:call-template name="StringFormatDate">
<xsl:with-param name="format"
select="substring($format, 3)" />
<xsl:with-param name="day" select="$day"/>
<xsl:with-param name="month" select="$month"/>
<xsl:with-param name="year" select="$year"/>
<xsl:with-param name="withDot" select="$withDot" />
</xsl:call-template>
<xsl:if test="string-length($format)=2 and withDot = 'yes'
and not(contains($prop_EndChars, '%'))">
<xsl:call-template name="templ_prop_Dot"/>
</xsl:if>
</xsl:when>
<xsl:when test="substring($format, 1, 1) = '%'">
<xsl:variable name="what" select="substring($format, 2, 1)"
/>
<xsl:choose>
<xsl:when test="$what = 'D'">
<xsl:value-of select="$day"/>
</xsl:when>
<xsl:when test="$what = 'M'">
<xsl:value-of select="$month"/>
</xsl:when>
<xsl:when test="$what = 'Y'">
<xsl:value-of select="$year"/>
</xsl:when>
</xsl:choose>
<xsl:call-template name="StringFormatDate">
<xsl:with-param name="format"
select="substring($format, 3)" />
<xsl:with-param name="day" select="$day"/>
<xsl:with-param name="month" select="$month"/>
<xsl:with-param name="year" select="$year"/>
<xsl:with-param name="withDot" select="$withDot" />
</xsl:call-template>
<xsl:if test="string-length($format)=2 and withDot='yes'">
<xsl:variable name="temp2">
<xsl:call-template name="handleSpaces">
<xsl:with-param name="field">
<xsl:call-template
name="formatNameOneItem">
<xsl:with-param name="format"
select="$what"/>
</xsl:call-template>
</xsl:with-param>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="lastChar">
<xsl:value-of select="substring($temp2, string-
length($temp2))"/>
</xsl:variable>
<xsl:if test="not(contains($prop_EndChars,
$lastChar))">
<xsl:call-template name="templ_prop_Dot"/>
</xsl:if>
</xsl:if>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="substring($format, 1, 1)" />
<xsl:call-template name="StringFormatDate">
<xsl:with-param name="format"
select="substring($format, 2)" />
<xsl:with-param name="day" select="$day"/>
<xsl:with-param name="month" select="$month"/>
<xsl:with-param name="year" select="$year"/>
<xsl:with-param name="withDot" select="$withDot" />
</xsl:call-template>
<xsl:if test="string-length($format)=1">
<xsl:if test="withDot = 'yes' and
not(contains($prop_EndChars, $format))">
<xsl:call-template name="templ_prop_Dot"/>
</xsl:if>
</xsl:if>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="formatNameCore">
<xsl:param name="FML"/>
<xsl:param name="FM"/>
<xsl:param name="ML"/>
<xsl:param name="FL"/>
<xsl:param name="upperLast"/>
<xsl:param name="withDot"/>
<xsl:variable name="first">
<xsl:call-template name="handleSpaces">
<xsl:with-param name="field" select="b:First"/>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="middle">
<xsl:call-template name="handleSpaces">
<xsl:with-param name="field" select="b:Middle"/>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="last">
<xsl:call-template name="handleSpaces">
<xsl:with-param name="field" select="b:Last"/>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="format">
<xsl:choose>
<xsl:when test="string-length($first) = 0 and string-
length($middle) = 0 and string-length($last) = 0 ">
</xsl:when>
<xsl:when test="string-length($first) = 0 and string-
length($middle) = 0 and string-length($last) != 0 ">
<xsl:call-template
name="templ_prop_SimpleAuthor_L" />
</xsl:when>
<xsl:when test="string-length($first) = 0 and string-
length($middle) != 0 and string-length($last) = 0 ">
<xsl:call-template name="templ_prop_SimpleAuthor_M" />
</xsl:when>
<xsl:when test="string-length($first) = 0 and string-
length($middle) != 0 and string-length($last) != 0 ">
<xsl:value-of select="$ML"/>
</xsl:when>
<xsl:when test="string-length($first) != 0 and string-
length($middle) = 0 and string-length($last) = 0 ">
<xsl:call-template
name="templ_prop_SimpleAuthor_F" />
</xsl:when>
<xsl:when test="string-length($first) != 0 and string-
length($middle) = 0 and string-length($last) != 0 ">
<xsl:value-of select="$FL"/>
</xsl:when>
<xsl:when test="string-length($first) != 0 and string-
length($middle) != 0 and string-length($last) = 0 ">
<xsl:value-of select="$FM"/>
</xsl:when>
<xsl:when test="string-length($first) != 0 and string-
length($middle) != 0 and string-length($last) != 0 ">
<xsl:value-of select="$FML"/>
</xsl:when>
</xsl:choose>
</xsl:variable>
<xsl:call-template name="StringFormatName">
<xsl:with-param name="format" select="$format"/>
<xsl:with-param name="upperLast" select="$upperLast"/>
<xsl:with-param name="withDot" select="$withDot"/>
</xsl:call-template>
</xsl:template>
<xsl:template name="formatDateCore">
<xsl:param name="DMY"/>
<xsl:param name="DM"/>
<xsl:param name="MY"/>
<xsl:param name="DY"/>
<xsl:param name="day"/>
<xsl:param name="month"/>
<xsl:param name="year"/>
<xsl:param name="withDot"/>
<xsl:variable name="format">
<xsl:choose>
<xsl:when test="string-length($day) = 0 and string-
length($month) = 0 and string-length($year) = 0 ">
</xsl:when>
<xsl:when test="string-length($day) = 0 and string-
length($month) = 0 and string-length($year) != 0 ">
<xsl:call-template name="templ_prop_SimpleDate_Y" />
</xsl:when>
<xsl:when test="string-length($day) = 0 and string-
length($month) != 0 and string-length($year) = 0 ">
</xsl:when>
<xsl:when test="string-length($day) = 0 and string-
length($month) != 0 and string-length($year) != 0 ">
<xsl:value-of select="$MY"/>
</xsl:when>
<xsl:when test="string-length($day) != 0 and string-
length($month) = 0 and string-length($year) = 0 ">
</xsl:when>
<xsl:when test="string-length($day) != 0 and string-
length($month) = 0 and string-length($year) != 0 ">
<xsl:call-template name="templ_prop_SimpleDate_Y" />
</xsl:when>
<xsl:when test="string-length($day) != 0 and string-
length($month) != 0 and string-length($year) = 0 ">
</xsl:when>
<xsl:when test="string-length($day) != 0 and string-
length($month) != 0 and string-length($year) != 0 ">
<xsl:value-of select="$DMY"/>
</xsl:when>
</xsl:choose>
</xsl:variable>
<xsl:call-template name="StringFormatDate">
<xsl:with-param name="format" select="$format"/>
</xsl:template>
<xsl:template name="need_Dot">
<xsl:param name="field"/>
<xsl:variable name="temp">
<xsl:call-template name="handleSpaces">
<xsl:with-param name="field" select="$field"/>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="lastChar">
<xsl:value-of select="substring($temp, string-length($temp))"/>
</xsl:variable>
<xsl:variable name="prop_EndChars">
<xsl:call-template name="templ_prop_EndChars"/>
</xsl:variable>
<xsl:choose>
<xsl:when test="string-length($temp) = 0">
</xsl:when>
<xsl:when test="contains($prop_EndChars, $lastChar)">
</xsl:when>
<xsl:otherwise>
<xsl:call-template name="templ_prop_Dot"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="appendField_Dot">
<xsl:param name="field"/>
<xsl:variable name="temp">
<xsl:call-template name="handleSpaces">
<xsl:with-param name="field" select="$field"/>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="lastChar">
<xsl:value-of select="substring($temp, string-length($temp))"/>
</xsl:variable>
<xsl:variable name="prop_EndChars">
<xsl:call-template name="templ_prop_EndChars"/>
</xsl:variable>
<xsl:choose>
<xsl:when test="string-length($temp) = 0">
</xsl:when>
<xsl:when test="contains($prop_EndChars, $lastChar)">
<xsl:value-of select="$temp"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$temp"/>
<xsl:call-template name="templ_prop_Dot"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="templateJ">
<xsl:param name="first"/>
<xsl:param name="second"/>
<xsl:param name="third"/>
<xsl:variable name="tempFirst">
<xsl:call-template name="handleSpaces">
<xsl:with-param name="field" select="$first"/>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="tempSecond">
<xsl:call-template name="handleSpaces">
<xsl:with-param name="field" select="$second"/>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="tempThird">
<xsl:call-template name="handleSpaces">
<xsl:with-param name="field" select="$third"/>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="temp">
<xsl:if test="string-length($tempFirst)>0">
<xsl:value-of select="$tempFirst"/>
</xsl:if>
<xsl:if test="string-length($tempSecond)>0">
<xsl:value-of select="$tempSecond"/>
</xsl:if>
<xsl:if test="string-length($tempThird)>0">
<xsl:value-of select="$tempThird"/>
</xsl:if>
</xsl:variable>
<xsl:call-template name="appendFieldNoHandleSpaces_Dot">
<xsl:with-param name="field" select="$temp"/>
</xsl:call-template>
</xsl:template>
<xsl:template name="templateC">
<xsl:param name="first"/>
<xsl:param name="second"/>
<xsl:variable name="tempFirst">
<xsl:call-template name="handleSpaces">
<xsl:with-param name="field" select="$first"/>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="tempSecond">
<xsl:call-template name="handleSpaces">
<xsl:with-param name="field" select="$second"/>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="temp">
<xsl:if test="string-length($tempFirst)>0">
<xsl:value-of select="$tempFirst"/>
</xsl:if>
<xsl:if test="string-length($tempSecond)>0">
<xsl:value-of select="$tempSecond"/>
</xsl:if>
</xsl:variable>
<xsl:call-template name="appendFieldNoHandleSpaces_Dot">
<xsl:with-param name="field" select="$temp"/>
</xsl:call-template>
</xsl:template>
<xsl:template name="appendFieldNoHandleSpaces_Dot">
<xsl:param name="field"/>
<xsl:variable name="lastChar">
<xsl:value-of select="substring($field, string-length($field))"/>
</xsl:variable>
<xsl:variable name="prop_EndChars">
<xsl:call-template name="templ_prop_EndChars"/>
</xsl:variable>
<xsl:choose>
<xsl:when test="string-length($field) = 0">
</xsl:when>
<xsl:when test="contains($prop_EndChars, $lastChar)">
<xsl:value-of select="$field"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$field"/>
<xsl:call-template name="templ_prop_Dot"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="GetMainAuthorTitle">
<xsl:param name="sourceType"/>
<xsl:param name="authorType"/>
<xsl:param name="cAuthors" />
<xsl:param name="isOrganisation" />
<xsl:choose>
<xsl:when test="$authorType='Author'">
</xsl:when>
<xsl:when test="$authorType='Editor'">
<xsl:choose>
<xsl:when test="$isOrganisation=true()">
<xsl:call-template
name="templ_str_EditorShortUnCap"/>
</xsl:when>
<xsl:when test="$cAuthors=0">
</xsl:when>
<xsl:when test="$cAuthors=1">
<xsl:call-template
name="templ_str_EditorShortUnCap"/>
</xsl:when>
<xsl:otherwise>
<xsl:call-template
name="templ_str_EditorsShortUnCap"/>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:when test="$authorType='Translator'">
<xsl:choose>
<xsl:when test="$isOrganisation=true()">
<xsl:call-template
name="templ_str_TranslatorShortUnCap"/>
</xsl:when>
<xsl:when test="$cAuthors=0">
</xsl:when>
<xsl:when test="$cAuthors=1">
<xsl:call-template
name="templ_str_TranslatorShortUnCap"/>
</xsl:when>
<xsl:otherwise>
<xsl:call-template
name="templ_str_TranslatorsShortUnCap"/>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:when test="$authorType='Artist'">
</xsl:when>
<xsl:when test="$authorType='Performer'">
<xsl:choose>
<xsl:when test="$isOrganisation=true()">
<xsl:call-template
name="templ_str_PerformerShortUnCap"/>
</xsl:when>
<xsl:when test="$cAuthors=0">
</xsl:when>
<xsl:when test="$cAuthors=1">
<xsl:call-template
name="templ_str_PerformerShortUnCap"/>
</xsl:when>
<xsl:otherwise>
<xsl:call-template
name="templ_str_PerformersShortUnCap"/>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:when test="$authorType='Composer'">
<xsl:choose>
<xsl:when test="$isOrganisation=true()">
<xsl:call-template
name="templ_str_ComposerShortUnCapIso"/>
</xsl:when>
<xsl:when test="$cAuthors=0">
</xsl:when>
<xsl:when test="$cAuthors=1">
<xsl:call-template
name="templ_str_ComposerShortUnCapIso"/>
</xsl:when>
<xsl:otherwise>
<xsl:call-template
name="templ_str_ComposerShortUnCapIso"/>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:when test="$authorType='Conductor'">
<xsl:choose>
<xsl:when test="$isOrganisation=true()">
<xsl:call-template
name="templ_str_ConductorShortUnCap"/>
</xsl:when>
<xsl:when test="$cAuthors=0">
</xsl:when>
<xsl:when test="$cAuthors=1">
<xsl:call-template
name="templ_str_ConductorShortUnCap"/>
</xsl:when>
<xsl:otherwise>
<xsl:call-template
name="templ_str_ConductorsShortUnCap"/>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:when test="$authorType='ProducerName'">
<xsl:choose>
<xsl:when test="$isOrganisation=true()">
<xsl:call-template
name="templ_str_ProducerShortUnCap"/>
</xsl:when>
<xsl:when test="$cAuthors=0">
</xsl:when>
<xsl:when test="$cAuthors=1">
<xsl:call-template
name="templ_str_ProducerShortUnCap"/>
</xsl:when>
<xsl:otherwise>
<xsl:call-template
name="templ_str_ProducerShortUnCap"/>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:when test="$authorType='Writer'">
<xsl:choose>
<xsl:when test = "not($sourceType = 'Film')">
</xsl:when>
<xsl:when test="$isOrganisation=true()">
<xsl:call-template
name="templ_str_WriterShortUnCap"/>
</xsl:when>
<xsl:when test="$cAuthors=0">
</xsl:when>
<xsl:when test="$cAuthors=1">
<xsl:call-template
name="templ_str_WriterShortUnCap"/>
</xsl:when>
<xsl:otherwise>
<xsl:call-template
name="templ_str_WriterShortUnCap"/>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:when test="$authorType='Director'">
</xsl:when>
<xsl:when test="$authorType='Interviewee'">
</xsl:when>
<xsl:when test="$authorType='Inventor'">
</xsl:when>
<xsl:when test="$authorType='Counsel'">
<xsl:choose>
<xsl:when test="$isOrganisation=true()">
<xsl:call-template
name="templ_str_CounselShortUnCap"/>
</xsl:when>
<xsl:when test="$cAuthors=0">
</xsl:when>
<xsl:when test="$cAuthors=1">
<xsl:call-template
name="templ_str_CounselShortUnCap"/>
</xsl:when>
<xsl:otherwise>
<xsl:call-template
name="templ_str_CounselShortUnCap"/>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:when test="$authorType='Compiler'">
<xsl:choose>
<xsl:when test="$isOrganisation=true()">
<xsl:call-template
name="templ_str_CompilerShortUnCap"/>
</xsl:when>
<xsl:when test="$cAuthors=0">
</xsl:when>
<xsl:when test="$cAuthors=1">
<xsl:call-template
name="templ_str_CompilerShortUnCap"/>
</xsl:when>
<xsl:otherwise>
<xsl:call-template
name="templ_str_CompilersShortUnCap"/>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
</xsl:choose>
</xsl:template>
<xsl:template name="PrintSpaceAndList">
<xsl:param name="list"/>
<xsl:variable name="result">
<xsl:call-template name="PrintList">
<xsl:with-param name="list" select="$list" />
</xsl:call-template>
</xsl:variable>
<xsl:template name="PrintList">
<xsl:param name="list"/>
<xsl:call-template name="PrintList2">
<xsl:with-param name="list" select="$list" />
<xsl:with-param name="index" select="'1'" />
<xsl:with-param name="nextSeparator">
<xsl:call-template name="templ_prop_ListSeparator"/>
</xsl:with-param>
<xsl:with-param name="textDisplayed" select="''" />
</xsl:call-template>
</xsl:template>
<xsl:template name="PrintList2">
<xsl:param name="list"/>
<xsl:param name="index"/>
<xsl:param name="nextSeparator"/>
<xsl:param name="lastTextDisplayed"/>
<xsl:choose>
<xsl:when test="$index > count(msxsl:node-set($list)/*/*)">
<xsl:call-template name="need_Dot">
<xsl:with-param name="field" select
="$lastTextDisplayed"/>
</xsl:call-template>
</xsl:when>
<xsl:when test="local-name(msxsl:node-set($list)/*/*[$index]) =
'TextItem'">
<xsl:variable name="item">
<xsl:value-of select="msxsl:node-
set($list)/*/*[$index]" />
</xsl:variable>
<xsl:call-template name="PrintList2">
<xsl:with-param name="list" select="$list" />
<xsl:with-param name="index" select="$index + 1" />
<xsl:with-param name="nextSeparator">
<xsl:choose>
<xsl:when test="string-length($item) > 0
and string-length($lastTextDisplayed) > 0">
<xsl:call-template
name="templ_prop_ListSeparator"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of
select="$nextSeparator" />
</xsl:otherwise>
</xsl:choose>
</xsl:with-param>
<xsl:with-param name="lastTextDisplayed">
<xsl:choose>
<xsl:when test="string-length($item) >
0">
<xsl:value-of select="$item" />
</xsl:when>
<xsl:otherwise>
<xsl:value-of
select="$lastTextDisplayed" />
</xsl:otherwise>
</xsl:choose>
</xsl:with-param>
</xsl:call-template>
</xsl:when>
<xsl:when test="local-name(msxsl:node-set($list)/*/*[$index]) =
'GroupSeparator'">
<xsl:call-template name="PrintList2">
<xsl:with-param name="list" select="$list" />
<xsl:with-param name="index" select="$index + 1" />
<xsl:with-param name="nextSeparator">
<xsl:call-template
name="templ_prop_GroupSeparator"/>
</xsl:with-param>
<xsl:with-param name="lastTextDisplayed"
select="$lastTextDisplayed" />
</xsl:call-template>
</xsl:when>
<xsl:when test="local-name(msxsl:node-set($list)/*/*[$index]) =
'CopyItem'">
<xsl:variable name="item">
<xsl:copy-of select="msxsl:node-
set($list)/*/*[$index]" />
</xsl:variable>
<xsl:call-template name="PrintList2">
<xsl:with-param name="list" select="$list" />
<xsl:with-param name="index" select="$index + 1" />
<xsl:with-param name="nextSeparator">
<xsl:choose>
<xsl:when test="string-length($item) > 0
and string-length($lastTextDisplayed) > 0">
<xsl:call-template
name="templ_prop_ListSeparator"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of
select="$nextSeparator" />
</xsl:otherwise>
</xsl:choose>
</xsl:with-param>
<xsl:with-param name="lastTextDisplayed">
<xsl:choose>
<xsl:when test="string-length(msxsl:node-
set($item)/*[1]) > 0">
<xsl:value-of select="msxsl:node-
set($item)/*[1]" />
</xsl:when>
<xsl:otherwise>
<xsl:value-of
select="$lastTextDisplayed" />
</xsl:otherwise>
</xsl:choose>
</xsl:with-param>
</xsl:call-template>
</xsl:when>
</xsl:choose>
</xsl:template>
<xsl:template name="ApplyItalicTitleNS">
<xsl:param name="data" />
<xsl:variable name="prop_NoItalics">
<xsl:call-template name="templ_prop_NoItalics"/>
</xsl:variable>
<xsl:choose>
<xsl:when test = "$prop_NoItalics = 'yes'">
<xsl:variable name = "prop_TitleOpen">
<xsl:call-template name="templ_prop_TitleOpen"/>
</xsl:variable>
<xsl:variable name = "prop_TitleClose">
<xsl:call-template name="templ_prop_TitleClose"/>
</xsl:variable>
<xsl:variable name = "prop_OpenQuote">
<xsl:call-template name="templ_prop_OpenQuote"/>
</xsl:variable>
<xsl:variable name = "prop_CloseQuote">
<xsl:call-template name="templ_prop_CloseQuote"/>
</xsl:variable>
<xsl:choose>
<xsl:when test = "string-length($prop_TitleOpen) > 0
and string-length($prop_TitleClose) > 0 and string-length($prop_OpenQuote) > 0 and
string-length($prop_CloseQuote) > 0 and
not(starts-with($data, $prop_TitleOpen)
or (substring($data, string-length($data) - string-length($prop_TitleClose)) =
$prop_TitleClose) or starts-with($data, $prop_OpenQuote) or (substring($data,
string-length($data) - string-length($prop_CloseQuote)) = $prop_CloseQuote))">
<xsl:call-template
name="templ_prop_TitleOpen"/>
<xsl:copy-of select="msxsl:node-set($data)" />
<xsl:call-template
name="templ_prop_TitleClose"/>
</xsl:when>
<xsl:when test = "string-length($prop_TitleOpen) > 0
and string-length($prop_TitleClose) > 0 and
not(starts-with($data, $prop_TitleOpen)
or (substring($data, string-length($data) - string-length($prop_TitleClose)) =
$prop_TitleClose))">
<xsl:call-template
name="templ_prop_TitleOpen"/>
<xsl:copy-of select="msxsl:node-set($data)" />
<xsl:call-template
name="templ_prop_TitleClose"/>
</xsl:when>
<xsl:otherwise>
<xsl:copy-of select="msxsl:node-set($data)" />
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:otherwise>
<i xmlns="http://www.w3.org/TR/REC-html40">
<xsl:copy-of select="msxsl:node-set($data)" />
</i>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="ApplyItalicFieldNS">
<xsl:param name="data" />
<xsl:variable name="prop_NoItalics">
<xsl:call-template name="templ_prop_NoItalics"/>
</xsl:variable>
<xsl:choose>
<xsl:when test = "$prop_NoItalics = 'yes'">
<xsl:copy-of select="msxsl:node-set($data)" />
</xsl:when>
<xsl:otherwise>
<i xmlns="http://www.w3.org/TR/REC-html40">
<xsl:copy-of select="msxsl:node-set($data)" />
</i>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>