This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]