This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Breaking up is hard to do.


Michael, 

This is very cool! The best I've seen so far for
the case when number of columns is fixed.

The slight tweak of your idea below makes it work
for a parameterized number of columns, but looses
the benefit that it fills the last row with empty
cells. Maybe the idea will come later today to
have the proverbial cake and eat it, too 
(or likely, you'll post the solution before then!) :-)

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">

<xsl:param name="max" select="number(3)"/>

<xsl:template match="field[position() mod $max = 1]" priority="2">
  <tr>
    <td><xsl:value-of select="."/></td>
    <xsl:for-each select="following-sibling::field[$max > position()]">
      <td><xsl:apply-templates/></td>
    </xsl:for-each>
  </tr>
</xsl:template>

<xsl:template match="field" priority="1"/>

</xsl:stylesheet>

__________________________________________________________
Steve Muench, Lead XML Evangelist / Consulting Product Mgr
Oracle Corp, Business Components for Java Development Team
http://technet.oracle.com/tech/xml
----- Original Message ----- 
From: "Kay Michael" <Michael.Kay@icl.com>
To: <xsl-list@mulberrytech.com>
Sent: Monday, February 21, 2000 2:27 AM
Subject: RE: Breaking up is hard to do.


| >Attempting to break elements at context node into groups of three for
| tabular output.
| 
| There's another non-recursive approach which I don't think anyone has
| suggested:
| 
| <xsl:template match="field[position() mod 3 = 1]" priority="2">
|   <tr>
|     <td><xsl:value-of select="." mode=/></td>
|     <td><xsl:value-of select="following-sibling::field[1]"/></td>
|     <td><xsl:value-of select="following-sibling::field[2]"/></td>
|   </tr>
| </xsl:template>
| 
| <xsl:template match="field" priority="1"/>
| 
| this also generates empty <td> elements to fill up the last <tr> row.
| 
| Mike Kay
|  
| 
| 
|  XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
| 


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

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]