xslt 1.0如何转换<不到言语

时间:2015-04-14 06:42:56

标签: xml xslt-1.0

我有以下XML

    <node>
    <operator>&lt;</operator>
<value>2</value>
    </node>
    <node>
    <operator>&gt;</operator>
<value>1.1</value>
    </node>.....

我需要将其转换如下 Lessthan 2 Greaterthan 1.1

我尝试使用下面的代码,但它没有按预期工作。

有什么建议吗?

<xsl:variable name="lt">
 <xsl:text disable-output-escaping="yes">&lt;</xsl:text>
</xsl:variable>
<xsl:variable name="ConditionalDoseOperator">
<xsl:choose>
    <xsl:when test="operator=$lt">
    <xsl:value-of select="Lessthan" />
    </xsl:when>
    </xsl:choose>

 </xsl:variable>                                      

<xsl:value-of select="$ConditionalDoseOperator" />

我期待在文字中看到莱斯坦,但这是空白的内容。

1 个答案:

答案 0 :(得分:0)

我建议这样做的方法很简单:

<xsl:for-each select="node">
    <xsl:choose>
        <xsl:when test="operator='&lt;'">less than</xsl:when>
        <xsl:when test="operator='&gt;'">greater than</xsl:when>
        <xsl:otherwise>
            <xsl:value-of select="operator"/>
        </xsl:otherwise>
    </xsl:choose>
    <xsl:text> </xsl:text>
    <xsl:value-of select="value"/>
    <xsl:text>&#10;</xsl:text>
</xsl:for-each>