使用XSLT将XML转换为另一个XML(数字转换)

时间:2016-09-21 19:42:15

标签: xml xslt

我正在尝试使用XSLT将XML转换为另一个XML。 这是我输入的XML:

...
<size>21467</size>
....

我想将此输入XML转换为输出XML,如下所示:

...
<HAS>
<C SZ="21k"/>
</HAS>
...

我的XSLT代码:

...
<HAS>
<C>
<xsl:attribute name="SZ" select="xs:string(xs:anyURI(fn:string($var1_resultof_first/size)))" />
</C>
</HAS>
..

我不确定如何转换尺寸&#34; 21467&#34;完成到#21; 21k&#34;。任何帮助将不胜感激

1 个答案:

答案 0 :(得分:2)

以下模板:

<xsl:template match="size">
    <HAS>
        <C SZ="{format-number(. div 1000, '0k')}"/>
    </HAS>
</xsl:template>

应用于您的输入示例,将返回:

<HAS>
   <C SZ="21k"/>
</HAS>