Re: [xsl] XSL: parsing

Subject: Re: [xsl] XSL: parsing
From: Florent Georges <lists@xxxxxxxxxxxx>
Date: Tue, 12 Aug 2008 11:51:48 +0200 (CEST)
"Sathasivam, Elayaraja" wrote:

> <xsl:template match="/" >  
>     <xsl:for-each
> select="document(/Envelope/Part/@File)/Document/CallDetails/Call">
>         <xsl:variable name="TZ" select="XCD/@TZ"/>
>         <xsl:variable name="TM" select="XCD/@TM"/>    
> 	<xsl:choose> 
> 		<xsl:when
>
test="$conf/Configuration/BreakdownList/BreakdownMatrix/BrkSection[@tm=$
> TM]/BrkCode[tz=$TZ]"> Debug
> 		   <xsl:value-of select="@brk"/>

  I don't understand, I thought that was answered in the last email. 
The expression @brk is relative to the current item, which is a Call
element.  xsl:when doesn't change the current item.  Only a few
instructions change the current item (out of the top of my head:
xsl:apply-template, xsl:for-each and xsl:for-each-group).  So you want
something like:

    <xsl:variable name="code" as="element(BrkCode)?" select="
        $conf/Configuration/BreakdownList/BreakdownMatrix
          / BrkSection[@tm=$TM]/BrkCode[tz=$TZ]"/>
    <xsl:choose> 
       <xsl:when test="exists($code)">
          <xsl:text>Debug </xsl:text>
          <xsl:value-of select="$code/@brk"/>

  Regards,

--drkm























      _____________________________________________________________________________ 
Envoyez avec Yahoo! Mail. Une boite mail plus intelligente http://mail.yahoo.fr

Current Thread