Subject: Re: [xsl] delete empty elements From: Oliver Becker <obecker@xxxxxxxxxxxxxxxxxxxxxxx> Date: Mon, 2 Jul 2001 13:01:39 +0200 (MET DST) |
Hi Michael, > <page> > <element id="86">data</element> > <element id="23"></element> > <element id="56">moredata</element> > <element id="89">muchmoredata</element> > ... > </page> > > And, with help from the FAQ and the list :-), I'm able to sort this in a > balanced two column table. But how can I sort out these empty > <element></element> Tags in my xsl? I would build a variable like this <xsl:variable name="elements" select="//element[normalize-space()]" /> <!-- all elements whose normalized string value is not the empty string --> After that replace all //element and ../element in your code with $elements. Haven't tested this, but I think it should work. > <xsl:variable name="t-size" select="count(//element)"/> > <xsl:variable name="half" select="ceiling($t-size div 2)"/> > > <table> > <xsl:for-each select="//element[position() <= $half]"> > <xsl:variable name="here" select="position()"/> > <tr> > <td> > <xsl:value-of select="@id"/> > </td> > <td> > <xsl:value-of select="."/> > </td> > <td> > <xsl:value-of select="../element[$here+$half]/@id" > /> > </td> > <td> > <xsl:choose> > <xsl:when test="../element[$here+$half]"> > <xsl:value-of > select="../element[$here+$half]"/> > </xsl:when> > </xsl:choose> > </td> > </tr> > </xsl:for-each> > </table> Cheers, Oliver /-------------------------------------------------------------------\ | ob|do Dipl.Inf. Oliver Becker | | --+-- E-Mail: obecker@xxxxxxxxxxxxxxxxxxxxxxx | | op|qo WWW: http://www.informatik.hu-berlin.de/~obecker | \-------------------------------------------------------------------/ XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] delete empty elements, Michael Zehrer | Thread | AW: [xsl] delete empty elements, Michael Zehrer |
[xsl] delete empty elements, Michael Zehrer | Date | AW: [xsl] delete empty elements, Michael Zehrer |
Month |