<xsl: choose>
<xsl: when test ="булево выражение">
<xsl: when test ="булево выражение">
<xsl:otherwise>
</xsl: choose>
Каждый элемент <xsl: when> имеет тестовое условие. Этим тестовым условием является булево выражение, которое является выражением XPath, которое преобразуется в булево значение. Содержание первого элемента <xsl: when>, тестовое условие которого имеет значение true, выводится в дерево результатов.
Кроме того, элемент <xsl: choose> может иметь дополнительный элемент <xsl:otherwise>, содержание которого выводится в том случае, если тестовое условие ни одного элемента <xsl: when> не имеет значения true. Если нет ни одного элемента <xsl:otherwise> и ни одно тестовое условие никакого из дочерних элементов <xsl: when> не имеет значения true, то элемент <xsl: choose> не дает никакого результата.
Ниже приведен пример элемента <xsl: choose>:
<xsl: choose>
<xsl: when test = "number [ . > 2000]">Большое число</xsl:when>
<xsl:otherwise>Малое число</xsl:otherwise>
</xsl:choose>
Если численный элемент в целевом файле XML содержит численное значение, большее 2000, то строка "Большое число" вставляется в дерево результатов. В остальных случаях вставляется строка "Малое число".
Следующие инструкции написаны для проекции Ресурсы, но будут работать и в других проекциях.
Для создания элемента <xsl: choose> выполните следующие действия: