|  | Stylesheet |
<xsl:stylesheet version="2.0">
<xsl:key name="keyword" match="//c:keyword" use="@id"/>
<xsl:template match="c:keyword" name="c-keyword">
<xsl:param name="kwdid">
<xsl:value-of select="."/>
</xsl:param>
<xsl:param name="kwdlang">cze</xsl:param>
<xsl:param name="kwdlang2"/>
<xsl:for-each select="$keywordlist">
<xsl:variable name="kwd" select="key('keyword', $kwdid)"/>
<xsl:choose>
<xsl:when test="$kwd">
<xsl:choose>
<xsl:when test="$kwd/child::element()[local-name()=$kwdlang]">
<xsl:apply-templates select="$kwd/child::element()[local-name()=$kwdlang]"/>
</xsl:when>
<xsl:when test="$kwd/child::element()[local-name()=$kwdlang2]">
<xsl:apply-templates select="$kwd/child::element()[local-name()=$kwdlang2]"/>
</xsl:when>
<xsl:when test="$kwd/c:cze">
<xsl:apply-templates select="$kwd/c:cze"/>
</xsl:when>
<xsl:otherwise>
<xsl:apply-templates select="$kwd/child::element()[1]"/>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:otherwise>
<font color="red"><u><xsl:value-of select="$kwdid"/></u></font>
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
</xsl:template>
<xsl:template match="c:keyword" name="c-keyword-html" mode="html">
<xsl:param name="kwdid">
<xsl:value-of select="."/>
</xsl:param>
<xsl:param name="kwdlang">cze</xsl:param>
<xsl:param name="kwdlang2"/>
<xsl:for-each select="$keywordlist">
<xsl:variable name="kwd" select="key('keyword', $kwdid)"/>
<xsl:choose>
<xsl:when test="$kwd">
<xsl:choose>
<xsl:when test="$kwd/child::element()[local-name()=$kwdlang]">
<xsl:apply-templates select="$kwd/child::element()[local-name()=$kwdlang]" mode="html"/>
</xsl:when>
<xsl:when test="$kwd/child::element()[local-name()=$kwdlang2]">
<xsl:apply-templates select="$kwd/child::element()[local-name()=$kwdlang2]" mode="html"/>
</xsl:when>
<xsl:when test="$kwd/c:cze">
<xsl:apply-templates select="$kwd/c:cze" mode="html"/>
</xsl:when>
<xsl:otherwise>
<xsl:apply-templates select="$kwd/child::element()[1]" mode="html"/>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:otherwise>
<font color="red"><u><xsl:value-of select="$kwdid"/></u></font>
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
</xsl:template>
<xsl:template match="c:keyword" name="c-keyword-TeX" mode="TeX">
<xsl:param name="kwdid">
<xsl:value-of select="."/>
</xsl:param>
<xsl:param name="kwdlang">cze</xsl:param>
<xsl:param name="kwdlang2"/>
<xsl:param name="prefix"/>
<xsl:param name="infix"/>
<xsl:param name="suffix"/>
<xsl:for-each select="$keywordlist">
<xsl:variable name="kwd" select="key('keyword', $kwdid)"/>
<xsl:value-of select="$prefix"/>
<xsl:choose>
<xsl:when test="$kwd">
<xsl:choose>
<xsl:when test="$kwd/child::element()[local-name()=$kwdlang]">
<xsl:if test="$infix != ''">
<xsl:value-of select="concat($kwdlang, $infix)"/>
</xsl:if>
<xsl:apply-templates select="$kwd/child::element()[local-name()=$kwdlang]" mode="TeX"/>
</xsl:when>
<xsl:when test="$kwd/child::element()[local-name()=$kwdlang2]">
<xsl:if test="$infix != ''">
<xsl:value-of select="concat($kwdlang2, $infix)"/>
</xsl:if>
<xsl:apply-templates select="$kwd/child::element()[local-name()=$kwdlang2]" mode="TeX"/>
</xsl:when>
<xsl:when test="$kwd/c:cze">
<xsl:if test="$infix != ''">
<xsl:value-of select="concat('cze', $infix)"/>
</xsl:if>
<xsl:apply-templates select="$kwd/c:cze" mode="TeX"/>
</xsl:when>
<xsl:otherwise>
<xsl:if test="$infix != ''">
<xsl:value-of select="concat(local-name($kwd/child::element()[1]), $infix)"/>
</xsl:if>
<xsl:apply-templates select="$kwd/child::element()[1]" mode="TeX"/>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$kwdid"/>
</xsl:otherwise>
</xsl:choose>
<xsl:value-of select="$suffix"/>
</xsl:for-each>
</xsl:template>
<xsl:template match="c:keyword" name="c-keyword-text" mode="text">
<xsl:param name="kwdid">
<xsl:value-of select="."/>
</xsl:param>
<xsl:param name="kwdlang">cze</xsl:param>
<xsl:param name="kwdlang2"/>
<xsl:for-each select="$keywordlist">
<xsl:variable name="kwd" select="key('keyword', $kwdid)"/>
<xsl:choose>
<xsl:when test="$kwd">
<xsl:choose>
<xsl:when test="$kwd/child::element()[local-name()=$kwdlang]">
<xsl:apply-templates select="$kwd/child::element()[local-name()=$kwdlang]" mode="text"/>
</xsl:when>
<xsl:when test="$kwd/child::element()[local-name()=$kwdlang2]">
<xsl:apply-templates select="$kwd/child::element()[local-name()=$kwdlang2]" mode="text"/>
</xsl:when>
<xsl:when test="$kwd/c:cze">
<xsl:apply-templates select="$kwd/c:cze" mode="text"/>
</xsl:when>
<xsl:otherwise>
<xsl:apply-templates select="$kwd/child::element()[1]" mode="text"/>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$kwdid"/>
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet> kwd2.xsl |