| Subject: Re: [xsl] How to prevent copying non-existing elements? From: Martin Honnen <Martin.Honnen@xxxxxx> Date: Tue, 04 Aug 2009 15:03:34 +0200 | 
Lets start with the following simplified piece of XSLT code :
<xsl:template match="/"> .... <moxx:someelement> <xsl:value-of select="/moxx:aaa/moxx:bbb"/> </moxx:someelement> ....
So when bbb is an optional element and it does NOT exist in the source XML then the following chunk is still created in the target XML doc:
<moxx:someelement></moxx:someelement>
How can I prevent the creation of these frame element tags when there is no source element?
In pseudo code I need something like
<xsl:template match="/"> .... "if /moxx:aaa/moxx:bbb exists" then ( <moxx:someelement> <xsl:value-of select="/moxx:aaa/moxx:bbb"/> </moxx:someelement>) ....
How can I code this in XSLT ?
  <xsl:template match="moxx:aaa/moxx:bbb">
    <moxx:someelement>
      <xsl:value-of select="."/>
    </<moxx:someelement>>
  </xsl:template>Obviously the verbose way
  <xsl:if test="/moxx:aaa/moxx:bbb">
    <moxx:someelement>
      <xsl:value-of select="/moxx:aaa/moxx:bbb"/>
    </<moxx:someelement>
  </xsl:if>
is also possible.Martin Honnen http://msmvps.com/blogs/martin_honnen/
| Current Thread | 
|---|
| 
 | 
| <- Previous | Index | Next -> | 
|---|---|---|
| RE: [xsl] How to prevent copying no, Wendell Piez | Thread | Re: [xsl] How to prevent copying no, Michael Ludwig | 
| RE: [xsl] How to prevent copying no, Michael Kay | Date | Re: [xsl] How to prevent copying no, Michael Ludwig | 
| Month |