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

Re: [xsl] Replace multiple xsl:template with one


Subject: Re: [xsl] Replace multiple xsl:template with one
From: David Carlisle <davidc@xxxxxxxxx>
Date: Fri, 8 May 2009 12:09:52 +0100

as others have said, xsl:copy, unless the default template in the
stylesheet is non null, in which case

<xsl:template match="form"><form>

is not copying a form element, but generating an element in the (say
xhtml) namespace whenever the input had a form element in no-namespace.
so if your styleheet has xmlns="http://www.w3.org/1999/xhtml"
then you want

   <xsl:template match="form | fieldset | table | tr | td">
     <xsl:element name="{local-name()}">
       <xsl:copy-of select="@*"/>
       <xsl:apply-templates/>
     </xsl:element>
   </xsl:template>

as you are generating new elements rather than copying.

David

________________________________________________________________________
The Numerical Algorithms Group Ltd is a company registered in England
and Wales with company number 1249803. The registered office is:
Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.

This e-mail has been scanned for all viruses by Star. The service is
powered by MessageLabs. 
________________________________________________________________________


Current Thread