Re: [XSL-FO] localization with separate language files
- We use a complete different solution after trying several others (including Eliot's suggestion):
We write the XSLT documents using JSP (and using the I18n tag library), for every locale a different document is generated and cached as javax.xml.transform.Templates objects. This works great, the only disadvantage might be that it is a Java based solution.
XIAM Solutions B.V.
Product Content Management and e-Business Solutions
----- Original Message -----
From: Eliot Kimber
Sent: Monday, February 16, 2004 11:55 PM
Subject: Re: [XSL-FO] localization with separate language files
> Currently I have one external variables file that stores all
> boilerplate text for 15 languages.
> I use the xsl:include statement as the first thing in my main
> stylesheet. <xsl:include href='fo-variables.xsl'/>
> I would like to change this to a separate file for every language to
> ease in translating new words.
> I would like to do this:
> <xsl:if test="@language='french'"><xsl:include
> <xsl:if test="@language='greek'"><xsl:include href='greek.xsl'/></xsl:if>
> My problem is it gives the following error: "Keyword xsl:stylesheet
> may not contain xsl:if"
> How do I do an if statement or choose statement to only include the
> corresponding language file?
A better way to approach this problem is probably to use a separate XML
document with the translations that you then get as needed, rather than
using statically-defined variables. For example, if you name your files
with the language code, then you can do something like this:
<xsl:variable name="langCode" select="/*/@xml:lang"/>
'.xml'),.)/boilerplate[@id = 'item-01']/>
This will select the <boilerplate> element with the ID "item-01" from
the file "./trans/boilerplate_zh-CN.xml" [relative to the current
document, leave out the ",." parameter of document() if you want the URL
to be relative to the stylesheet] if the value of the root element's
xml:lang= attribute is "zh-CN".
W. Eliot Kimber
9030 Research Blvd, #410
Austin, TX 78758
Yahoo! Groups Sponsor
Yahoo! Groups Links
a.. To visit your group on the web, go to:
b.. To unsubscribe from this group, send an email to:
c.. Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.
[Non-text portions of this message have been removed]