On 20011030190147, Adam A R wrote: > I want to make my application internationalized. i.e. Be able to present > Strings in different languages depending on the useragent. What I'll do is: - for static text: use the 'xml:lang' attribute in elements to mark them as belonging to a particular language (- alternatively, you could make different XML files, of course, but since I write all my contents, I like to have everything together) - set up a XSLT to filter out all element whose language is not the one I want (passed as a parameter) (note: I use "no xml:lang" to mean "any language") - find a way to pass the 'Accept-Language' (?) HTTP request field to the stylesheet (you should use this field, and not the user agent, btw)
- for dynamic content (SQL/forms/whatever): Cocoon 2 i18n is to be used with care (it's too much like "gettext"), but it can resolve some problems. OK, I have no good idea about making something like this work under cocoon1... Right now I'm using X-Web, a small static HTML generation tool, but I'm going to move to Cocoon 2 (just to show off ;-) ). My sitemap looks like: <map:match type="regexp" pattern="thenautilus/([^.]+)\\.(..)\\.html"> <map:generate src="thenautilus/{1}.xml"/> <map:transform src="thenautilus/xsl/langfilter.xsl"> <map:parameter name="lang" value="{2}"/> </map:transform> <!-- other map:transform elements --> <map:serialize type="html" /> </map:match> and the stylesheet: <xsl:param name="lang"/> <xsl:template match="/html"> <html xml:lang="{$lang}"> <xsl:apply-templates/> </html> </xsl:template> <xsl:template match="@*|node()"> <xsl:choose> <xsl:when test="lang($lang) or not(ancestor-or-self::*[@xml:lang])"> <xsl:copy> <xsl:apply-templates select="@*|node()"/> </xsl:copy> </xsl:when> <xsl:otherwise/> </xsl:choose> </xsl:template> -- Dakkar - [EMAIL PROTECTED] [EMAIL PROTECTED] [EMAIL PROTECTED] [EMAIL PROTECTED] <Mobilis in mobile> It is your concern when your neighbor's wall is on fire. -- Quintus Horatius Flaccus (Horace) --------------------------------------------------------------------- Please check that your question has not already been answered in the FAQ before posting. <http://xml.apache.org/cocoon/faqs.html> To unsubscribe, e-mail: <[EMAIL PROTECTED]> For additional commands, e-mail: <[EMAIL PROTECTED]>