Re: [xsl] Need help with using lookup table and string translation

Subject: Re: [xsl] Need help with using lookup table and string translation
From: Wendell Piez <wapiez@xxxxxxxxxxxxxxxx>
Date: Tue, 12 May 2009 10:50:47 -0400
At 04:47 PM 5/11/2009, David wrote:
> The 'for in' looks like xslt2 function.
well an xpath2 expression, yes.

> for $x in key('tr_string-by-str', $key) return (x$/ru, $x/en, .)[1]

but you are in luck here as the for isn't actually doing anything in
that case you could write
key('tr_string-by-str', $key)/(ru,en, current())[1]
in xpath2
or in xslt1
<xsl:variable nae="x" select="key('tr_string-by-str', $key)"/>
<xsl:choose>
 <xsl:when test="$x/ru">
  <xsl:value-of select="$x/ru"/>
 </xsl:when>
 <xsl:when test="$x/en">
  <xsl:value-of select="$x/en"/>
 </xsl:when>

The tricky thing here is where the 'tr_string-by-str' key retrieves its nodes.


The matching elements ('tr_string'?) have to be somewhere. If they're not in the source document, the stylesheet needs access to where they are. This requires, in XSLT 1.0, either the document() function (to call them in) or a node-set() extension function (to make a variable declared in the stylesheet into a node set that can be queried).

At last report, the major browsers all supported document(), didn't they?

Cheers,
Wendell


====================================================================== Wendell Piez mailto:wapiez@xxxxxxxxxxxxxxxx Mulberry Technologies, Inc. http://www.mulberrytech.com 17 West Jefferson Street Direct Phone: 301/315-9635 Suite 207 Phone: 301/315-9631 Rockville, MD 20850 Fax: 301/315-8285 ---------------------------------------------------------------------- Mulberry Technologies: A Consultancy Specializing in SGML and XML ======================================================================

Current Thread