XSLT <xsl:number>Элемент
Полный справочник по элементам XSLT
Определение и использование
Элемент <xsl:number> используется для определения целочисленной позиции текущего узла в источнике. Он также используется для форматирования чисел.
Синтаксис
<xsl:number
count="expression"
level="single|multiple|any"
from="expression"
value="expression"
format="formatstring"
lang="languagecode"
letter-value="alphabetic|traditional"
grouping-separator="character"
grouping-size="number"/>
count="expression"
level="single|multiple|any"
from="expression"
value="expression"
format="formatstring"
lang="languagecode"
letter-value="alphabetic|traditional"
grouping-separator="character"
grouping-size="number"/>
Атрибуты
| Attribute | Значение | Описание |
|---|---|---|
| count | выражение | Необязательный. Выражение XPath, задающее узлы для подсчета. |
| level | single multiple any |
Необязательный. Управляет тем, как присваиваются порядковые номера. Возможные значения:
|
| from | выражение | Необязательный. Выражение XPath, указывающее, с какого места начинать подсчет. |
| value | выражение | Необязательный. Задает предоставленное пользователем число, которое используется вместо сгенерированного порядкового номера. |
| format | formatstring | Необязательный. Определяет выходной формат чисел. Возможные значения:
|
| lang | languagecode | Необязательный. Задаёт алфавит языка, используемый для нумерации. (Не поддерживается в Netscape 6) |
| letter-value | alphabetic традиционный |
Необязательный. Указывает, является ли нумерация для выбранного языка алфавитной последовательностью ("alphabetic") или другой последовательностью ("traditional"). Значение "alphabetic" задаёт алфавитную последовательность; значение "traditional" задаёт другую последовательность. По умолчанию — "alphabetic". |
| grouping-separator | символ | Необязательный. Указывает, какой символ использовать для разделения групп или цифр. По умолчанию — запятая. |
| grouping-size | число | Необязательный. Указывает количество цифр в каждой группе, разделённой символом-разделителем, заданным атрибутом grouping-separator. По умолчанию — 3. |
Пример 1
<xsl:number value="250000" grouping-separator="."/>
Вывод:
250.000
Вывод:
250.000
Пример 2
<xsl:number value="250000" grouping-size="2"/>
Вывод:
25,00,00
Вывод:
25,00,00
Пример 3
<xsl:number value="12" grouping-size="1"
grouping-separator="#" format="I"/>
Вывод:
X#I#I
grouping-separator="#" format="I"/>
Вывод:
X#I#I
Пример 4
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<p>
<xsl:for-each select="catalog/cd">
<xsl:number value="position()" format="1" />
<xsl:value-of select="title" /><br />
</xsl:for-each>
</p>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<p>
<xsl:for-each select="catalog/cd">
<xsl:number value="position()" format="1" />
<xsl:value-of select="title" /><br />
</xsl:for-each>
</p>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
Полный справочник по элементам XSLT Другие расширения