This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: unique elements from different sourcefile
- From: Jeni Tennison <jeni at jenitennison dot com>
- To: XSL-List at lists dot mulberrytech dot com
- Date: Thu, 3 Jan 2002 16:01:42 +0000
- Subject: Re: [xsl] unique elements from different sourcefile
- Organization: Jeni Tennison Consulting Ltd
- References: <1010064684.1483.20.camel@janus>
- Reply-to: xsl-list at lists dot mulberrytech dot com
Thomas Winkler asked:
> all i want is getting all possible children of a specific element.
> since the content model of some elements can be very complicated
> (such as "head"), most xpath axis don't work.
Ken's already produced an XSLT 1.0 answer. For interest, possible XSLT
2.0 solutions would be:
Using the distinct-values() function:
<xsl:value-of select="distinct-values(.//element-name/@name)"
separator=", " />
If you wanted to do something further with the element-name elements,
the xsl:for-each-group element would be more use:
<xsl:for-each-group select=".//element-name"
group-by="@name">
<xsl:value-of select="@name" />
<xsl:if test="position() != last()">, </xsl:if>
</xsl:for-each-group>
Although you could just use xsl:for-each with distinct-values() if you
wanted:
<xsl:for-each select="distinct-values(.//element-name/@name)">
<xsl:value-of select="." />
<xsl:if test="position() != last()">, </xsl:if>
</xsl:for-each>
Cheers,
Jeni
---
Jeni Tennison
http://www.jenitennison.com/
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list