XSL错误"其值必须为QName的属性的值为' 300x300'"

时间:2014-07-01 21:09:17

标签: xml xslt

尝试使用图像尺寸(300x300,420x420等)命名属性时出现此错误。

当我以字母开头生成相同的元素时,一切都很顺利。

这是我得到的:

<xsl:for-each select="additionalImages/image">
    <xsl:if test="additional_image_dimensions != ''">
        <xsl:element name="{additional_image_dimensions}">
            <xsl:value-of select="additionalUrl"/>
        </xsl:element>
    </xsl:if>
</xsl:for-each>

我已经尝试不与字符串{concat('', additional_image_dimensions)}

连接

这就是我想要的:

<300x300>url</300x300>

Ps。:当我尝试在开头写一封信时,它有效:

<x30x30>url</x30x30>
<x300x300>url</x300x300>

如何生成名为<300x300>url</300x300>的动态元素?

1 个答案:

答案 0 :(得分:3)

  

如何生成名为的动态元素   <300x300>url</300x300>

您不能:元素名称不能以数字开头: http://www.w3.org/TR/REC-xml/#NT-NameStartChar