Re: [xsl] match string

Subject: Re: [xsl] match string
From: JBryant@xxxxxxxxx
Date: Tue, 19 Oct 2004 17:35:14 -0500
<xsl:template match="para[position() > 1]">

Jay Bryant
Bryant Communication Services




Zsolt Szabs <zsolt.szabo@xxxxxxxxxx>
10/19/2004 05:21 PM
Please respond to
xsl-list@xxxxxxxxxxxxxxxxxxxxxx


To
xsl-list@xxxxxxxxxxxxxxxxxxxxxx
cc

Subject
Re: [xsl] match string






I have modified my template, because like you said I had lost the
markup in para[1]

1.
<xsl:template match="chapter/section[1]/para[1]/*[1]/text()[1]"
priority="1">

2.
<xsl:template match="para">

but now the output of the first paragraph looks like>
<p> <p> <b> Three words are </b> here </p> </p>

it is because I have a template for the first paragraphs first tag
text()
and a template for every paragraph, with matches para[1] too

how can I solve this problem?

On Oct 19, 2004, at 3:04 PM, David Carlisle wrote:

> Also, in this case you probably want to match on the first text node of
> the first para rather than the para itself as in
>
> <xsl:template match="chapter/section[1]/para[1]//text()[1]"
> priority="1">
>
> As you have it, you are doing string operations on the entire paragraph
> text which means that any element markup within the paragraph will be
> lost.

Current Thread