Subject: Re: [xsl] EXSLT From: Jeni Tennison <jeni@xxxxxxxxxxxxxxxx> Date: Fri, 9 May 2003 10:30:06 +0100 |
Hi Johan, > I think the error message is clear. But according to > > http://www.exslt.org/str/index.html > > the concat(node-set) should work with EXSLT. > > Why Im trying with concat is that I need the string as a variable > and not in the output. You are trying to use the EXSLT extension function str:concat(), but because you aren't using the prefix "str:" on your function call, you are actually using the built-in function concat(). The built-in function concat() concatenates the two-or-more strings that it is passed as arguments. The extension function str:concat() from EXSLT concatenates the values of the nodes in the node set that it is passed as an argument. You must declare the prefix for the extension function in the <xsl:stylesheet> element: <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:str="http://exslt.org/strings" extension-element-prefixes="str"> ... </xsl:stylesheet> and then call the function including the "str:" prefix: <xsl:template match="*"> <xsl:variable name="allnodename" select="str:concat(ancestor-or-self::*)"/> ... </xsl:template> Note that this will only work with processors that support str:concat() (4XSLT and libxslt). Also note that the call "str:concat(ancestor-or-self::*)" will *not* give you a string consisting of the *names* of all the ancestors of the current node, but rather their values. To do get their names, you should use the code: <xsl:template match="*"> <xsl:variable name="allnodename"> <xsl:for-each select="ancestor-or-self::*"> <xsl:value-of select="name()" /> </xsl:for-each> </xsl:variable> ... </xsl:template> Cheers, Jeni --- Jeni Tennison http://www.jenitennison.com/ XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] EXSLT, Johan Thorèn (EAB) | Thread | RE: [xsl] EXSLT, Michael Kay |
Re: [xsl] external DTD w/ saxon 7.5, Nicolas Mazziotta | Date | Re: [xsl] how to display html data,, David Carlisle |
Month |