I am trying to have a template call another template that creates a simple XML node with a plain value. My real tasks is hard but I simplified to just get something working.
Note: I've seen some examples here but I don't get the same results, I can't see what I am doing wrong.
I want to end of with this:
<keyword>abc-company.com</keyword>
<keyword>test</keyword>
<keyword>ABC Company</keyword>
but I keep ending up with this:
<keyword>abc-company.com</keyword>
<keyword/>
<keyword>ABC Company</keyword>
I am purposely returning a plain string value, but eventually I want to pass in a value, change it and return a value for the elements but I simplified it for this example.
<xsl:template name="keywords">
<xsl:param name="metas_branding"/>
<xsl:param name="metas_keywords"/>
<xsl:param name="ad_branding"/>
<keyword><xsl:value-of select="$metas_branding"/></keyword>
<xsl:call-template name="csvToNodes">
<xsl:with-param name="csvString" select="$metas_keywords"/>
</xsl:call-template>
<keyword><xsl:value-of select="$ad_branding"/></keyword>
</xsl:template>
<xsl:template name="csvToNodes">
<xsl:param name="csvString"/>
<xsl:element name="'keyword'">
<xsl:value-of select="test"/>
</xsl:element>
</xsl:template>