Re: [xsl] Copy all attributes except except some

Subject: Re: [xsl] Copy all attributes except except some
From: "Graydon graydon@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Tue, 10 Jun 2014 23:27:55 -0000
On Tue, Jun 10, 2014 at 11:05:50PM -0000, Philipp Kursawe phil.kursawe@xxxxxxxxx scripsit:
> I am using:
> <xsl:copy-of select="@*[local-name() != 'signed']"/>
> 
> I assume I have to make a long list of "or local-name() != 'otherAtt'"
> to exclude all my attributes that should not be copied over. Or is
> there a smarter way to just define a list of attributes that are not
> copied?

Presuming XSLT 2.0, 

<xsl:copy-of select="@*[not(local-name() = ('signed','unwanted','unwelcome','no','neither'))]"/>

is the usual idiom.

The alternative is to use a template that matches everything you don't
want and does nothing, but then you're not using copy-of, you'd be using
apply-templates.

-- Graydon

Current Thread