Пример <xsl:message>
Этот пример демонстрирует использование элемента <xsl:message>.
Таблица стилей проверяет, что элемент <name> внутри элемента <record> заполнен.Если элемент <name> пустой, выводится сообщение о недопустимом XML-коде.
В XML-файле имя для элемента <name> во втором элементе record не указывается.
XML-файл (records.xml)
<?xml version='1.0'?>
<?xml-stylesheet type="text/xsl" href="message.xsl" ?>
<records>
<record>
<name>David Perry</name>
<address>222 Cherry</address>
<phone>555-797-79797</phone>
</record>
<record>
<name></name>
<address>312 Elm</address>
<phone>555-797-79797</phone>
</record>
</records>
XSLT-файл (message.xsl)
<?xml version='1.0'?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >
<xsl:template match="/">
<xsl:apply-templates select="*"/>
<xsl:copy-of select="."/>
</xsl:template>
<xsl:template match="*">
<xsl:apply-templates select="//record"/>
</xsl:template>
<xsl:template match="record">
<xsl:if test="name=''">
<xsl:message terminate="yes">A name field is empty.
</xsl:message>
</xsl:if>
</xsl:template>
</xsl:stylesheet>
Вывод
Форматированный вывод представляет собой следующее сообщение об ошибке в Internet Explorer.
Поле имени пусто.
А это вывод обработчика:
<?xml version="1.0" encoding="UTF-16"?>