AW: [xsl] delete empty elements

Subject: AW: [xsl] delete empty elements
From: Michael Zehrer <zehrer@xxxxxxxxxxxxxxxxxx>
Date: Mon, 2 Jul 2001 13:11:56 +0200
Hi Oliver,

that was exactly the solution...

you did it again, thank you!

Michael

-----Ursprüngliche Nachricht-----
Von: Oliver Becker [mailto:obecker@xxxxxxxxxxxxxxxxxxxxxxx]
Gesendet: Montag, 2. Juli 2001 13:02
An: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Betreff: Re: [xsl] delete empty elements


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() &lt;= $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

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


Current Thread