RE: [xsl] Joining children attributes with parent

Subject: RE: [xsl] Joining children attributes with parent
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Fri, 3 Dec 2004 23:00:36 -0000
No problem. In XSLT 2.0:

xsl:for-each select="//*"
  xsl:value-of select="string-join(ancestor-or-self::*/@att, ',')"

Michael Kay
http://www.saxonica.com/

> -----Original Message-----
> From: Ross Niemi [mailto:ross.niemi@xxxxxxxxx] 
> Sent: 03 December 2004 22:48
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] Joining children attributes with parent
> 
> I'm not too sure if this is even possible in XSLT or if it may be too
> slow when implemented (since a parent node may need to be revisited
> multiple times), but this is what I'm trying to do:  I'm trying to
> join a set of parent's attributes with its children's attributes and
> their children's attributes for an arbitrary number of descendants
> (this will be displayed in CSV format).  Would be nice if there is a
> way to do this bottom up.
> 
> input:
> 
> parent1
>   child1
>   child2
> parent2
>   child3
>   child4
>     grandchild1
>     grandchild2
> 
> output (assuming each element is a set of attributes for the 
> element above):
> 
> parent1,child1
> parent1,child2
> parent2,child3
> parent2,child4,grandchild1
> parent2,child4,grandchild2
> 
> Cheers!
> 
> -- Ross

Current Thread