Subject: Re: [xsl] Stripping empty elements while still conforming to DTD From: David Carlisle <davidc@xxxxxxxxx> Date: Wed, 28 Sep 2005 17:16:08 +0100 |
> Is there a simple way to strip empty elements from an XML while still > conforming to the requirements of the DTD? I know how to use the > string() function to copy only those elements that contain data, but > this often removes child elements required by the DTD. It depends what you mean by simple. XSLT has no access to the declarations in a DTD (or at least the XSLT programmer has no access via XSLT) so you have to put the information in "by hand" so it's simple but tedious if the dtd is big <xsl:template match="*[not(node())]"/> zaps all empty elements, except... <xsl:template match="wibble/[not(node())]"> <xsl:copy-of select="."/> </xsl:template> empty elements that are children of wibble, which are copied. David ________________________________________________________________________ This e-mail has been scanned for all viruses by Star. The service is powered by MessageLabs. For more information on a proactive anti-virus service working around the clock, around the globe, visit: http://www.star.net.uk ________________________________________________________________________
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Stripping empty elements , andrew welch | Thread | Re: [xsl] Stripping empty elements , David Carlisle |
Re: [xsl] Specifying the XHTML XMLN, knocte | Date | Re: [xsl] Stripping empty elements , David Carlisle |
Month |