Subject: Re: [xsl] match string From: Anton Triest <anton@xxxxxxxx> Date: Wed, 20 Oct 2004 14:39:37 +0200 |
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
There's another problem. I thought "//text()[1]" would give "the first text node (inside that first paragraph) however deeply nested in any markup". But instead, it seems to return the first text node of *all* the nested markup. Example:
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.
your solution works, but it is to complicated for me. I need time to exactly understand it.
Best regards Anton
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] match string, David Carlisle | Thread | Re: [xsl] match string, Wendell Piez |
RE: [xsl] Totalliing, Andrew Welch | Date | RE: [xsl] parsing version number st, Michael Kay |
Month |