Re: [xsl] Selecting Parent Nodes with Empty Children

Subject: Re: [xsl] Selecting Parent Nodes with Empty Children
From: "J.Pietschmann" <j3322ptm@xxxxxxxx>
Date: Fri, 05 Apr 2002 22:39:12 +0200
Hellstern, Manny wrote:
I have XML that looks like:
<APP>
	<SECTION id="first">	
		<CONTROL type="button">
			<VALUE />
		</CONTROL>
		<CONTROL type="text">
			<VALUE>dummy text</VALUE>
		</CONTROL>
	</SECTION>
...
</APP>

What I want to select is a tree fragment that looks like:

<SECTION id="first>
	<CONTROL type="text">
		<VALUE>dummy text</VALUE>
	</CONTROL>
</SECTION>

I'm not sure how your subject line relates to your question. I *guess* you are asking for an XSLT transformation which transforms your "have" to "want". This can't be easily done by what's meant by "selecting" in the sense of the XSLT spec, but you can have a transformation which does this. Furthermore i guess you want to have elements deleted which dont have *any* non-whitespace text in them. The following is a suboptimal but almost working attempt: <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform";> <xsl:template match="*"> <xsl:if test="normalize-space(.)"> <xsl:copy> <xsl:copy-of select="@*"/> <xsl:apply-templates/> </xsl:copy> </xsl:if> </xsl:template> </xsl:stylesheet>

HTH
J.Pietschmann


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



Current Thread