Subject: Re: [xsl] First steps with high order functions From: "Martin Honnen martin.honnen@xxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Date: Tue, 19 Jun 2018 10:48:37 -0000 |
I'm trying to learn high order functions, and I have some difficulties. If someone could help...
I have a normal function :
B <xsl:function name="nu:camelCase" as="xs:string?"> B B B <xsl:param name="s" as="xs:string?"/> B B B ... B </xsl:function>
I want to apply it on each word of a sentence :
B <xsl:function name="nu:clearUsername" as="xs:string?">
B B B <xsl:param name="name" as="xs:string?"/>
B B B <xsl:choose>
B B B B B <xsl:when test="empty($name)"><xsl:sequence select="()"/></xsl:when>
B B B B B <xsl:when test="contains($name, ' ')">
B B B B B B B <xsl:variable name="temp" select="tokenize($name, ' ')"/>
B B B B B B B <xsl:sequence select="string-join(for-each($temp, nu:camelCase#1), ' ')"/>
B B B B B </xsl:when>
B B B B B <xsl:otherwise>
B B B B B B B <xsl:sequence select="$name"/>
B B B B B </xsl:otherwise>
B B B </xsl:choose>
B </xsl:function>
Does the for-each is correct ?
Is there another syntax to make this work with Saxon-HE ?
so you can use for $i in $temp return nu:camelCase($i)
Is there a better way to do this ?
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] First steps with high order f, Christophe Marchand | Thread | Re: [xsl] First steps with high ord, Christophe Marchand |
[xsl] First steps with high order f, Christophe Marchand | Date | Re: [xsl] First steps with high ord, Christophe Marchand |
Month |