Re: [xsl] Why Are My Tunnel Parameters Not Working?

Subject: Re: [xsl] Why Are My Tunnel Parameters Not Working?
From: Eliot Kimber <ekimber@xxxxxxxxxxxx>
Date: Thu, 06 Mar 2008 09:33:56 -0600
Florent Georges wrote:
Eliot Kimber wrote:

   <xsl:template match="/">
     <xsl:apply-templates>
       <xsl:with-param name="baseOutDir"
             select="$outdirVar"
             tunnel="yes"
             as="xs:string"/>
     </xsl:apply-templates>
   </xsl:template>

     <xsl:variable name="targetDoc"
          select="document($targetUrl, .)"
          as="document-node()?"/>

       <xsl:apply-templates select="$targetDoc">
         <xsl:with-param name="baseOutDir"
              select="$newBase" tunnel="yes" as="xs:string"/>
       </xsl:apply-templates>

The way you set another value for the tunnel parameter is when you apply templates to $targetDoc, a document node. So the template rule matching "/" is applied. And it sets in its turn the tunnel parameter to the value of a global variable (so always the same value.)

  I am not sure what exactly you need in your exact transform, but the
following should work I guess:

<xsl:apply-templates select="$targetDoc/*">

Of course--I knew it was something stupid. I always forget that the "/" template will match explicitly processed docs.


Thanks!

Cheers,

Eliot

--
Eliot Kimber
Senior Solutions Architect
"Bringing Strategy, Content, and Technology Together"
Main: 610.631.6770
www.reallysi.com
www.rsuitecms.com

Current Thread