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

Re: [xsl] Troublshooting XSLT replace()

Subject: Re: [xsl] Troublshooting XSLT replace()
From: Nathan Tallman <ntallman@xxxxxxxxx>
Date: Tue, 3 Dec 2013 16:05:04 -0500

I spoke to early, o omniscient one. <unittitle> can contain child
nodes that are being stripped. I tried <xsl:copy-of> instead of
<xsl:value-of>, but they're still being stripped.

The desired result is to keep all child nodes, remove trailing
punctuation, replace Undated/undated, and replace Circa/circa.

Is there a way to do this with the identity template, without using *|node() ?


On Tue, Dec 3, 2013 at 1:15 PM, Nathan Tallman <ntallman@xxxxxxxxx> wrote:
> Thank you, David. Your omniscience is in working order as your
> suggestion does exactly what I was looking for and certainly in a much
> more elegant way.
> Nathan
> On Tue, Dec 3, 2013 at 12:19 PM, David Carlisle <davidc@xxxxxxxxx> wrote:
>> On 03/12/2013 16:52, Nathan Tallman wrote:
>>> Could you make a suggestion to change my master template match and
>>> mode template match?
>> well no as you haven't said what the code is supposed to do or what the
>> input is like, so as I'm not Jeni Tennison I can't answer much more than
>> point out the more obvious places that are wrong as in the last message.
>> It's almost always a bad idea to match on text() rather than the parent
>> element as comments or other things will bite you.
>> Having said that, I'll try anyway:-)
>> It's possible that you just want the identity template along with
>> <xsl:template match="unittitle">
>> <xsl:copy>
>> <xsl:copy-of select="@*"/>
>> <xsl:value-of select="replace(replace(replace(
>> ., '(^.*)\p{P}$', '$1'),
>> 'Undated','undated'),
>> 'Circa','circa')"/>
>> </xsl:copy>
>> </xsl:template>
>> but that is just a guess
>> 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