У меня есть следующий XML-файл:
<?xml version="1.0"?>
<Table69>
</Table69>
И хочу прочитать тело элемента "Table69", я использовал следующий XSL-файл:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml"/>
<xsl:template match="/">
<xsl:variable name="table" >
<xsl:choose>
<xsl:when test="normalize-space(.) != ''" >
<xsl:value-of select="." />
</xsl:when>
<xsl:otherwise>
<Exception>
field was missing
</Exception>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<Table id="69">
<xsl:value-of select="$table" />
</Table>
</xsl:template>
</xsl:stylesheet>
Проблема заключается в следующем: если XML-файл содержит значение в таблице Table69, это значение печатается успешно, но;
если этот тег не содержит значения, xsl vairalbe «таблица» должна содержать следующее:
<Exception>
field was missing
</Exception>
но, это не включает tage, вот пример результата преобразования:
<?xml version="1.0"?>
<Table id="69">
field was missing <!-- where's the Exception tag surrounding the text field was missing ??? -->
</Table>