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

Re: [xsl] Using xsl:variable and replace() to remove specific characters.


Subject: Re: [xsl] Using xsl:variable and replace() to remove specific characters.
From: David Carlisle <davidc@xxxxxxxxx>
Date: Mon, 28 Apr 2008 13:07:56 +0100

           <xsl:value-of select="$nameStr"/>

value-of returns a text node with the string value  of its argument so
you lose all the markup, you could use copy-of instead, or more simply
get rid of the variable and just do
   <affil id="{label}">
        <xsl:apply-templates/>
        </affil>


You haven't shown enough code to be sure but you may still lose the
markup
if you have added the replace() function in a template matching aff
replace() is a string valued function and you don't want to convert the
entire content of aff, to a string, you just want to process it's text
nodes, so


<xsl:template match="aff/text()">
   <xsl:value-of select="replace(.,___,___)"/>
</xsl:template>


<xsl:for-each select="//aff">
are you sure you want // there (which means search the entire document
to arbitrary depth)

________________________________________________________________________
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