[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] identity transform exclude pis and comments


Subject: Re: [xsl] identity transform exclude pis and comments
From: Mike Brown <mike@xxxxxxxx>
Date: Mon, 23 Jun 2003 07:35:22 -0600 (MDT)

I-Lin Kuo wrote:
> My identity transform below is picking up processing instructions and 
> comments,
> but I'd like to remove them
> 
> <xsl:template match="node()|@*">
>    <xsl:copy><xsl:apply-templates/></xsl:copy>
> </xsl:template>

It's not truly an identity transform, because it's not selecting
attribute nodes for processing; attributes are effectively being
ignored.
 
> I can do it with an xsl:if inside, but is there anything more elegant than 
> this:
> 
> <xsl:template match="node()|@*">
>    <xsl:if test="not(self::processing-instruction() or self::comment()">
>      <xsl:copy><xsl:apply-templates/></xsl:copy>
>    </xsl:if>
> </xsl:template>

<xsl:template match="*|@*|text()"/>
   <xsl:copy><xsl:apply-templates select="@*|node()"/></xsl:copy>
</xsl:template>

<xsl:template match="processing-instruction()|comment()"/>


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



Current Thread