我從DCM4CHEE DICOM project有以下XSL文件,我試圖稍微調整它。我實際上正在努力工作的代碼已被註釋掉,但即使是變量賦值似乎實際上也會返回null。 DCM4CHEE日誌正在拋出帶有'null'的Java異常,它在編譯時似乎來自XSL模板。XSL變量似乎返回null
<xsl:call-template name="attr">
<xsl:with-param name="tag" select="'00100040'"/>
<xsl:with-param name="vr" select="'CS'"/>
<xsl:variable name="testing" select="string(field[8]/text())" />
<xsl:with-param name="val" select="$testing" />
<!--
<xsl:variable name="sexString" select="string(field[8]/text())" />
<xsl:variable name="sex">
<xsl:choose>
<xsl:when test="$sexString='1'">M</xsl:when>
<xsl:when test="$sexString='2'">F</xsl:when>
<xsl:when test="$sexString='9'">U</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$sexString"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:with-param name="val" select="$sex" /> -->
</xsl:call-template>
正常XSL只是一條簡單的直線:
<xsl:with-param name="val" select="string(field[8]/text())" />
我可能做一些非常錯誤的,但有人可以解釋爲什麼我不能夠分配給field[8]/text()
一個變量,然後將它傳遞給with-param?