Subject: RE: [xsl] Parameters in localized messages From: "Jeroen Hellingman" <jeroen@xxxxxxxx> Date: Tue, 20 Apr 2004 10:44:58 -0400 |
Thanks for the hints! I think the solution to my problem will be something like: Having a messages.xml with: <messages> <message name="msgContact" lang="en">Please contact <param name="personalName"/> for details.</message> <message name="msgContact" lang="nl">Neem contact op met <param name="personalName"/> voor details.</message> </messages> A doc.xml with: <content/> and a xsl stylesheet with: <xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:variable name="lang" select="'en'"/> <xsl:variable name="messages" select="document ('messages.xml')"/> <!-- THIS REQUIRES XSLT 2.0 --> <xsl:template match="content"> <xsl:variable name="params"> <params> <param name="personalName">Jeroen</param> </params> </xsl:variable> <xsl:call-template name="formatMessage"/> <xls:with-param name="id" select="msgContact"/> <xls:with-param name="params" select="$params"/> </xsl:call-template> </xsl:template <xsl:template name="formatMessage"> <xsl:param name="name"/> <xsl:param name="params"/> <xsl:apply-templates select="$messages/messages/message [@lang=$lang && @name=$name]" mode="formatMessage"> <xls:with-param name="params" select="$params"/> </xsl:apply-templates> </xsl:template> </xls:template match="param" mode="formatMessage"> <xsl:param name="params"/> <xsl:value-of select="$params/params/param[@name=current ()/@name]"/> <xsl:template> <xsl:template match="*" mode="formatMessage"> <xsl:copy> <xsl:copy-of select="@*"/> <xsl:apply-templates mode="formatMessage"/> </xsl:copy> </xsl:template> </xsl:stylesheet> Jeroen.
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Parameters in localized m, Jeroen Hellingman | Thread | [xsl] typing of integer operations , David Carlisle |
RE: [xsl] feed reader problem, David . Pawson | Date | [xsl] Sorting in Ancient Greek, BODARD Gabriel |
Month |