xsl-list
[Top] [All Lists]

[xsl] Complicated next for-each and need to display page not found if no data

2008-09-09 19:02:45
Hi all

Im trying to write a solution where if no data is found I write out a message 
saying so and if data is found I continue to process on the assumption that the 
innermost nested for-each will find some data.

The problem is that my check says there is data, but my inner most for each on 
"Race" finds no data.  Therefore I end up with header info and no detail....

The following is snippets of my code..

  <xsl:variable name="getdata" select="/ORCB082/ROWSET/ROW
    [Fixture/Race/RaceType &gt;= $racetypefrom]
    [Fixture/Race/RaceType &lt;= $racetypeto]
    [Fixture/Race/RaceAgeFrom &gt;= $agefrom]
    [Fixture/Race/RaceAgeTo &lt;= $ageto]
    [Fixture/Race/RaceDistance &gt;= $racedistancefrom]
    [Fixture/Race/RaceDistance &lt;= $racedistanceto]
    [Fixture/FixtureDate &gt;= $datefrom]
    [Fixture/FixtureDate &lt;= $dateto]" />

<!-- If no data has been found -->
  <xsl:if test="not($getdata)">
NOTHING FOUnd!!
  </xsl:if>

<!-- If data is found -->
  <xsl:if test="($getdata)">
I OUTPUT OVERALL HEADER
    <xsl:for-each select="$getdata">
I OUTPUT ROW HEADER
      <xsl:for-each select="Fixture[FixtureDate &gt;= $datefrom]
                                   [FixtureDate &lt;= $dateto]">
I OUTPUT FIXTURE HEADER
        <xsl:variable name="racedata">
          <xsl:for-each select="Race[RaceType &gt;= $racetypefrom]
                                    [RaceType &lt;= $racetypeto]
                                    [RaceAgeFrom &gt;= $agefrom]
                                    [RaceAgeTo &lt;= $ageto]
                                    [RaceDistance &gt;= $racedistancefrom]
                                    [RaceDistance &lt;= $racedistanceto]">
            <xsl:sort select="RaceCloseDate"/>
            <xsl:copy-of select="."/>
          </xsl:for-each>
        </xsl:variable>


        <xsl:for-each select="$racedata/*">
I WANT TO OUTPUT RACE DATA BUT I DON'T GET HERE????
.
.
.
.

This is an overview of my code  - I built this using ideas pinched from various 
forums i.e. put the for-each into a variable then do an if for the no data 
found.  None of the examples I saw used nested for-each's though.

I'm sure I'm missing something simple somewhere but its late so any help from 
the usual suspects would be much appreciated.

Thanks in advance.

Chris








--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>