RE: [xsl] Flagging for No records found?

Subject: RE: [xsl] Flagging for No records found?
From: "Michael Kay" <mhk@xxxxxxxxx>
Date: Wed, 11 Feb 2004 10:56:50 -0000
Firstly, put the xsl:when condition into the xsl:for-each select
expression:

<xsl:for-each select="xdql/object/content/content_chunk
    [(product = $product) or ($product = 'All')]">

Then move this to a variable:

<xsl:variable name="p" select="xdql/object/content/content_chunk
    [(product = $product) or ($product = 'All')]">
<xsl:for-each select="$p">

Then test if $p is non-empty:

<xsl:if test="$p">...

Michael Kay

> 
> I am trying to implement some logic to see if my XSL code 
> found, and then displayed, any records. Try as I may I cannot 
> find a clean way to do this. I cannot set a flag, nor can I 
> increment a count when I find a record so I don't know how 
> else to trap this. If no records meet the criteria then I'd 
> simply like to output a 'No Records Found' message.
> 
> The code below is an extract from the XSL, if I don't display 
> any results then at the end I want to print 'No records found'.
> 
> Any ideas? Thanks!
> 
>   <xsl:template match="/">
> 
>      <xsl:for-each select="xdql/object/content/content_chunk">
> 
>       <xsl:sort select="content_link"/>
> 
>       <xsl:choose>
> 
>        <xsl:when test="((product = $product) or ($product = 'All'))">
> 
>          <!-- I need to know if I ever got here .... -->
> 
>            <a>
>             <xsl:attribute name="href"><xsl:value-of 
> select="content_link/@ref"/></xsl:attribute>
>             <xsl:value-of select="content_link"/>
>            </a>
> 
>            <br/>
> 
> 
>        </xsl:when>
>       </xsl:choose>
> 
>      </xsl:for-each>
> 
>      <!-- Print 'no records found' if nothing passed the ;when
> 
> 
>   </xsl:template>
> 
> 
> 
> 
>  XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
> 


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


Current Thread