Subject: RE: [xsl] XPATH simple question From: "Michael Kay" <mhk@xxxxxxxxx> Date: Mon, 10 Mar 2003 20:13:57 -0000 |
> I want to select SYSTEMS but i dont want to repeat those > systems that have the same id > > i have make this and works: > > <xsl:template match="SYSTEMS"> > <xsl:apply-templates select="SYSTEM[(@ID != > (preceding::SYSTEM/@ID))]"/> </xsl:template> > > but this doesnt work: > > <xsl:template match="SYSTEMS"> > <xsl:apply-templates select="SYSTEM[(@ID != > (following::SYSTEM/@ID)) OR (@ID != > (preceding::SYSTEM/@ID))]"/> </xsl:template> > > can somebody helpme? You want [not(@ID = preceding-sibling::SYSTEM/@ID)] Note that "not(A=B)" here means "A is not equal to any node in B", while "A!=B" means "there is a node in B that A is not equal to". Also you only need to search the preceding-sibling axis, not the much more expensive preceding axis. Michael Kay Software AG home: Michael.H.Kay@xxxxxxxxxxxx work: Michael.Kay@xxxxxxxxxxxxxx XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] XPATH simple question, Oscar | Thread | RE: [xsl] XPATH simple question, Craig Kattner |
Re: [xsl] Conversions for PeopleSof, David N Bertoni/Camb | Date | [xsl] Which is more efficient?, Caron, Daniel |
Month |