我有一个要求,我只需要在xslt中选择条件时使用。
Input:`<input>baz</input>
<input>haz</input>
<input>nan</input>`
XSLT:
`<xsl:choose>
<xsl:for-each select="input">
<xsl:when test="input='haz'">
<output>true</output>
</xsl:when>
</xsl:for-each>
<xsl:otherwise>
<output>false</output>
</xsl:otherwise>`
非常感谢任何帮助。
答案 0 :(得分:1)
给出格式良好的输入,例如:
<强> XML 强>
<root>
<input>baz</input>
<input>haz</input>
<input>nan</input>
</root>
以下样式表:
XSLT 1.0
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="/root">
<output>
<xsl:choose>
<xsl:when test="input='haz'">true</xsl:when>
<xsl:otherwise>false</xsl:otherwise>
</xsl:choose>
</output>
</xsl:template>
</xsl:stylesheet>
将返回:
<?xml version="1.0" encoding="UTF-8"?>
<output>true</output>
P.S。
如果您愿意,可以将样式表缩短为:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="/root">
<output>
<xsl:value-of select="input='haz'"/>
</output>
</xsl:template>
</xsl:stylesheet>