Subject: Re: [xsl] concatenation of sibling names From: Peter Davis <pdavis152@xxxxxxxxx> Date: Tue, 12 Feb 2002 10:13:14 -0800 |
You can use the previous-sibling and following-sibling axes in succession to access all of the element's siblings. Then use the name() function (or alternately the local-name() function if you want to strip off namespace prefixes) to get the element's name. You should play around with the <xsl:text> elements if they don't suit your desired output. <xsl:template match="db/*"> <xsl:for-each select="previous-sibling::*"> <xsl:value-of select="name()"/> <xsl:text> </xsl:text> </xsl:for-each> <xsl:for-each select="following-sibling::*"> <xsl:value-of select="name()"/> <xsl:text> </xsl:text> </xsl:for-each> </xsl:template> On Tuesday 12 February 2002 08:09, Saverio Perugini wrote: > Hello, > > Is it possible to concatenate the names of all siblings of a > node into a string for later use? > > e.g., in the following data, > > <db> > <coffee>...</coffee> > <tea>...</tea> > <milk>...</milk> > <sugar>...</sugar> > <salt>...</salt> > <pepper>...</pepper> > </db> > > if the processor was working on the node "coffee" -- construct > the following string: "tea milk sugar salt pepper" or likewise if the > processor was working on the node "sugar" -- construct > the following string: "coffee tea milk salt pepper". > > Specifically, can I use a foreach construct, loop through all siblings > to tally up/concat() the name() during each iteration and store the result > in a parameter for use later in the stylesheet? > > Thank You. > > Saverio Perugini > > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list -- Peter Davis Two percent of zero is almost nothing. XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] concatenation of sibling , Jeni Tennison | Thread | Re: [xsl] concatenation of sibling , Joerg Heinicke |
Re: [xsl] PDF security, Peter Davis | Date | Re: [xsl] concatenation of sibling , Thomas B. Passin |
Month |