Re: [xsl] Can XSLT remember the occurrence of an element?

Subject: Re: [xsl] Can XSLT remember the occurrence of an element?
From: "Joe Fawcett" <joefawcett@xxxxxxxxxxx>
Date: Wed, 27 Apr 2005 18:52:08 +0100
----- Original Message ----- From: "Thorsten Scherler" <thorsten@xxxxxxxxxx>
To: <xsl-list@xxxxxxxxxxxxxxxxxxxxxx>
Sent: Wednesday, April 27, 2005 6:43 PM
Subject: [xsl] Can XSLT remember the occurrence of an element?



Hello list,

can XSLT remember the occurrence of an element?

e.g. XML:
<forrest:view type="xhtml">
 <forrest:contract name="meta"/>
 <forrest:hook name="container">
   <forrest:contract name="grouplogo"/>
   <forrest:contract name="searchbox"/>
   <forrest:hook name="spacer" />
   <forrest:contract name="nav"/>
   <forrest:contract name="content"/>
 </forrest:hook>
 <forrest:contract name="searchbox"/>
 <forrest:contract name="feedback"/>
</forrest:view>

e.g. XSL:
<xsl:for-each select="forrest:view[@type=$format]//forrest:contract">
 <xi:include href="cocoon://get.contract.{$format}.{@name}"/>
</xsl:for-each>

The xsl would include now *two* times the searchbox contract, but it
*has to* be only one time.

Any ideas how I could change the xsl to only include *one* instance of a
contract despite it is *two or more* times called? Is there a way that
xsl remembers the occurrence of an element in the above given example?

TIA

salu2
--
thorsten

Basically you need to get a distinct list. See this link on grouping on how to do this:
http://www.jenitennison.com/xslt/grouping/muenchian.html


Joe

Current Thread