Subject: Re: [xsl] generate an element only if the result is not empty From: Manuel Souto Pico <manuel.souto@xxxxxxxxxxxxxx> Date: Tue, 25 Aug 2009 12:48:23 +0200 |
Thanks a lot! Manuel
The template (using select="node()" and not select=".")
<xsl:template match="seg"> <term> <xsl:value-of select="node()" />
That's a very strange construct to use, especially in xslt 1.
node() selects all the children and then value-of discards all but the first, which means that if there are child elements as in your example you get just the first indentation white space if there is any, however if the first child had not been indented you would get the string value of the first element.
<seg>
<it></Title></it>
<bpt i="1" type="struct"><Elt type='Groupbox' id='242' coor='0,0,412,112' style='50020007,0' class='#FF#0080'></bpt>
</seg>
produces
<term> </term>
but
<seg><it></Title></it>
<bpt i="1" type="struct"><Elt type='Groupbox' id='242' coor='0,0,412,112' style='50020007,0'
class='#FF#0080'></bpt></seg>
produces
<term>></Title></term>
If I understand your requirement it is to ignore any seg elements with element content, but to make a term element for those that have non white space text content.
so just
<xsl:apply-templates select="seg"/>
with
<xsl:template match="seg[*]"/>
<xsl:template match="seg[not(normalize-space(.))]"/>
<xsl:template match="seg"> <text><xsl:value-of select="."/></text> </xsl:template>
David
________________________________________________________________________ The Numerical Algorithms Group Ltd is a company registered in England and Wales with company number 1249803. The registered office is: Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.
This e-mail has been scanned for all viruses by Star. The service is
powered by MessageLabs. ________________________________________________________________________
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] generate an element only , David Carlisle | Thread | Re: [xsl] generate an element only , Manuel Souto Pico |
RE: [xsl] Zipping xsl:result-docume, Michael Kay | Date | [xsl] Re: flat list of contents and, stanislav pejsa |
Month |