This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: 2 unique lists
Jenni,
Thanks so much for your help.
> <xsl:key name="thedate" match="date" use="."/>
>
> <xsl:template match="person">
> <xsl:value-of select="@name"/><xsl:text>: </xsl:text>
> <xsl:for-each select="date[generate-id(.) =
> generate-id(key('thedate',.)[../@name = current()/@name][1])]">
> <xsl:value-of select="."/>
> <xsl:if test="not(position()=last())">, </xsl:if>
> </xsl:for-each>
> </xsl:template>
This one didn't seem to work, It threw a SAXException with the message:
* XSL Error: pattern = 'date[generate-id(.) =
* generate-id(key('thedate',.)[../@name = current()/@name][1])]'
* The current() function is not allowed in a match pattern!,
* source tree node: date
( indentation and *'s added by me )
> <xsl:key name="thedate" match="date" use="concat(../@name, '::', .)"/>
>
> <xsl:template match="person">
> <xsl:value-of select="@name"/><xsl:text>: </xsl:text>
> <xsl:for-each select="date[generate-id(.) =
> generate-id(key('thedate',concat(../@name, '::', .))[1])]">
> <xsl:value-of select="."/>
> <xsl:if test="not(position()=last())">, </xsl:if>
> </xsl:for-each>
> </xsl:template>
This is working. Again thank you kindly.
-matt
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list