Re: [xsl] Keeping a map in my XSL

Subject: Re: [xsl] Keeping a map in my XSL
From: andrew welch <andrew.j.welch@xxxxxxxxx>
Date: Wed, 14 Sep 2005 10:30:39 +0100
> Note that you can even include the map in the XSLT transformation itself
> assuming that :
>       * You use a namespace (that isn"t the XSLT namespace)
>       * Your map is a top level element of the transformation.
>
> You can then access to your map through document(''):
>
> <xsl:for-each select="document('')/">
>   <!-- You are now at the root of your XSLT transformation
>        and if you use a key, that key will
>        be applied to your transformation -->
>   <xsl:value-of select="key('mappings', $lookup)/@value"/>
> </xsl:for-each>

No need for document(''), just access the variable directly:

<xsl:variable name="map">
  <map>
     <key name="blah" value="blah"/>
     ....
  </map>
</xsl:variable>

and

<xsl:for-each select="$map">
  <xsl:value-of select="key('mappings', $lookup)/@value"/>

The key will only be built for, and applied to the contents of $map

cheers
andrew

Current Thread