我正在使用xslt来解析XML并生成json结构作为输出。我的json输出中有一个设置需要是一个布尔值,但是无法设置此值并且排除了双引号。
选择内部 - >当 - >否则我想设置真或假。
我得到了输出:
"likeTheColor" : "true"
但我想:
"likeTheColor" : true
如何将json条目设置为boolean并且不包含双引号。
以下是我创建的xsl的片段:
<xsl:choose>
<xsl:when test="starts-with(snx:colorOK, 'none') = 'true'">
"likeTheColor" : "<xsl:value-of select="translate(false(),'"','')"/>",
</xsl:when>
<xsl:otherwise>
"likeTheColor" : "<xsl:value-of select="translate(true(),'"','')"/>",
</xsl:otherwise>
</xsl:choose>
由于
答案 0 :(得分:1)
你的真/假值有引号,因为你在它周围加上引号:
Here --->"<xsl:value-of select="translate(false(),'"','')"/>"<--- And here
你的方法比它需要的方法更复杂。您可以使用以下一行替换帖子中所有九行代码:
"likeTheColor" : <xsl:value-of select="not(starts-with(snx:colorOK, 'none'))" />,