Re: [xsl] How to Process when Row data could be either elements or attributes

Subject: Re: [xsl] How to Process when Row data could be either elements or attributes
From: Imrran Wahid <devguy2003@xxxxxxxxx>
Date: Thu, 20 Mar 2003 13:50:16 -0800 (PST)
I have found what I was doing wrong. However I cannot
explain why it was wrong. Maybe one of you can help.

I was modifying the follwing two templates:
> <xsl:template match="//Fruits/*[count(./*) &gt;
> 0]/*">
>   <tr>
>     <xsl:apply-templates select="*"/>
>   </tr>
> </xsl:template>
> 
> <xsl:template match="*">
>   <td>
>     <xsl:value-of select="normalize-space(text())"/>
>   </td>
> </xsl:template>
> 

to 

<xsl:template match="//Fruits/*[count(./*) &gt; 0]/*">
  <tr>
    <xsl:apply-templates select="*|@*"/>
  </tr>
</xsl:template>

<xsl:template match="*|@*">
  <td>
    <xsl:value-of select="normalize-space(text())"/>
  </td>
</xsl:template>

The problem seemed to have been the 'text' function.
It does not seem to return the value of an attribute
node. Is this correct? When I added the following line
to the second template, the attributes' data was
retrieved into the table:

<xsl:value-of select="."/>

I can have both statements in this template without
worry, because the row will never have both elements
and attributes at the same time.

Imrran



__________________________________________________
Do you Yahoo!?
Yahoo! Platinum - Watch CBS' NCAA March Madness, live on your desktop!
http://platinum.yahoo.com

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread