Re: [xsl] constructing a "variable" select argument

Subject: Re: [xsl] constructing a "variable" select argument
From: Florent Georges <darkman_spam@xxxxxxxx>
Date: Mon, 27 Feb 2006 22:48:13 +0100 (CET)
Tracey Zellmann wrote:

> <xsl:copy-of select="/Report/TrackT1/Position[@position=
> 'Left Front']/MCHistogram[@id='1']/svg:svg"/>

> The position and id attributes can change, and I can
> handle that as in the earlier case.

> However, the TrackT1 part of the expression can also
> change - to TrackT2, TrackT3, Track5-18, etc, taking on
> various values.

  You have different alternatives:

    <!-- A "global" variable by different case -->
    <xsl:variable name="track.T1" select="/Report/TrackT1"/>
    <xsl:variable name="track.T2" select="/Report/TrackT2"/>
    ...
      <xsl:with-param name="track" select="$track.T1"/>

    <!-- A template by different case -->
    <xsl:template name="...T1">
      ...
    <xsl:template name="...T2">
      ...

    <!-- In last resort... -->
    <xsl:template name="...">
      <xsl:param name="track" as="xs:string"/>
      <xsl:copy-of select="/Report/*[local-name()=$track]/..."/>

  And maybe other...  The choice depends on your particular
needs and contraints.

  Regards,

--drkm




















	

	
		
___________________________________________________________________________ 
Nouveau : tiliphonez moins cher avec Yahoo! Messenger ! Dicouvez les tarifs exceptionnels pour appeler la France et l'international.
Tilichargez sur http://fr.messenger.yahoo.com

Current Thread