This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: unique elements from different sourcefile


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]