RE: Selecting Parent Nodes with Empty Children
Sorry for the poor phrasing. What I'd like to do is use an XPath expression in some script to extract a nodeset of ONLY those nodes that meet the criteria. In otherwords, can an XPath expression look something like var objNodes = objXML.selectNodes("//VALUE[normalize-space(.)='']") -----Original Message----- From: J.Pietschmann [mailto:j3322ptm@xxxxxxxx] Sent: Friday, April 05, 2002 2:39 PM To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: Re: Selecting Parent Nodes with Empty Children 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 XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
PURCHASE STYLUS STUDIO ONLINE TODAY!
Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!
Download The World's Best XML IDE!
Accelerate XML development with our award-winning XML IDE - Download a free trial today!
Subscribe in XML format