Generic XSLT stylesheet
<?xml version='1.0'?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:param name="doc-file"/>
<xsl:param name="currentLocale"/>
<xsl:template match="text()|@*"><xsl:value-of select="."/></xsl:template>
<xsl:template match="*|node()" priority="1">
<xsl:copy>
<xsl:copy-of select="@*"/><xsl:apply-templates/>
</xsl:copy>
</xsl:template>
<xsl:template match="/"><xsl:apply-templates/></xsl:template>
<xsl:template match="*[@nlsid]" priority="5">
<xsl:copy>
<xsl:copy-of select="@*"/>
<xsl:apply-templates select="./*"/>
<xsl:variable name="myKey" select="@nlsid"/>
<xsl:choose>
<xsl:when test="document($doc-file)/locale/*[name()=$myKey]">
<xsl:value-of select="document($doc-file)/locale/*[name()=$myKey]/*[name()=$currentLocale]"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="."/>
</xsl:otherwise>
</xsl:choose>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
|
