|
Subject: [xsl] Help on node selection From: "Fabien Tillier" <f.tillier@xxxxxxxx> Date: Fri, 27 Aug 2010 13:42:53 +0200 |
Hi List.
I want to be able to rebuild an XML document with an XSL template. The idea is
o duplicate some parts of the source XML and insert a few more elements.
My question is pretty basic, so far.
Suppose I get an XML document
<data>
<row>
<N1>1</N1>
<N2>120</N2>
</row>
<row>
<N1>1</N1>
<N2>120</N2>
</row>
<row>
<N1>2</N1>
<N2>120</N2>
</row>
<row>
<N1>2</N1>
<N2>120</N2>
</row>
<row>
<N1>1</N1>
<N2>110</N2>
</row>
</data>
I want to first process nodes which have N1 = 1, then nodes with N1=2. But I
want to call the template only once with all matching nodes (so once with N1=1
nodes, and once with N1=2 nodes), because I am building a group from these
Thus, I have tried with
<xsl:apply-templates select="//row[N1=1]" mode="headers"/>
But my template
<xsl:template match="row" mode="headers">
Headers
</xsl:template>
Is called on each matching node...(thus 3 times here), rather than once, and
then gets some loop to individually treat each node from the list.
How can I proceed ?
Thanks in advance
Best regards,
Fabien
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] Catalog support in Saxon-, Evan Leibovitch | Thread | Re: [xsl] Help on node selection, Andrew Welch |
| Re: [xsl] Best way of testing Hexad, Michael Kay | Date | Re: [xsl] Help on node selection, Andrew Welch |
| Month |