[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

RE: Why does this work?


Subject: RE: Why does this work?
From: "Spychalski, Frank" <frank.spychalski@xxxxxxx>
Date: Mon, 7 Aug 2000 19:50:59 +0200

Hi,

...
->I solved it with the following template (this assumes that the data is
->ordered by customer):
->
-><xsl:template match="row">
-> <xsl:choose>
->  <xsl:when test="customer = preceding::row[position()=1]/customer">
->   <td>&nbsp;</td>
->  </xsl:when>
->  <xsl:otherwise>
->   <td><xsl:value-of select="customer"/>
->  </xsl:otherwise>
-> </xsl:choose>
-> <td><xsl:value-of select="account"/></td>
-></xsl:template>
->
->Now I'm glad it works, but for some peace of mind I would 
->like to know why 
-><xsl:when test="customer = preceding::row[position()=1]/customer"> 
->behaves as it does?

You take the preceding axis gives you the elements before your element in
reverse order, the element directly before your current element is the one
you get first.  And because your input is sorted that's why your stylesheet
works...

->Thanks in advance,
->Christian Schmitt

bye
Frank
-
Frank Spychalski
Research Engineer
SAP Labs, Palo Alto           frank.spychalski@xxxxxxx 


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



Current Thread