Subject: Re: [xsl] How to assign a sequence to a variable? From: andrew welch <andrew.j.welch@xxxxxxxxx> Date: Tue, 9 Aug 2005 14:45:16 +0100 |
> Hi list, > I would like to return a sequence from a named > template, but I'm only getting a single string. > In the test only tempa gets the sequence, but how > to get it work for tempb and tempc? > > <?xml version="1.0" encoding="UTF-8" ?> > <xsl:stylesheet version="2.0" > xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> > <xsl:template match="/"> > <xsl:variable name="tempa" select="'a1','a2','a3'"/> > <xsl:message select="$tempa[3]"/> > <xsl:variable name="tempb"> > <xsl:value-of select="'b1','b2','b3'"/> > </xsl:variable> > <xsl:message select="$tempb[1]"/> > <xsl:variable name="tempc"> > <xsl:call-template name="processName"> > </xsl:call-template> > </xsl:variable> > <xsl:message select="$tempc[1]"/> > </xsl:template> > <xsl:template name="processName"> > <xsl:value-of select="'c1','c2','c3'"/> > </xsl:template> > </xsl:stylesheet> You need as item()+ on the variable definition, eg: <xsl:variable name="tempb" as="item()+"> .... Otherwise you will get a tree with a single child text node with all the entries in the sequence concatenated together with a space between each. cheers andrew
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] How to assign a sequence to a, Manfred Staudinger | Thread | Re: [xsl] How to assign a sequence , Manfred Staudinger |
Re: [xsl] defining nodes to apply t, ADAM PATRICK | Date | [xsl] How to transform a huge XML-f, news |
Month |