[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: How to assign a sequence to a variable?
> 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
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|