Spec-Zone.ru › XSLT & XPath

<xsl:number>

Справочник XSLT/XPath: Элементы XSLT, Функции EXSLT, Функции XPath, Оси XPath

Элемент <xsl:number> считает вещи последовательно. Он также может использоваться для быстрого форматирования числа.

Синтаксис

<xsl:number
  count=EXPRESSION
  level="single" | "multiple" | "any"
  from=EXPRESSION
  value=EXPRESSION
  format=FORMAT-STRING
  lang=XML:LANG-CODE
  letter-value="alphabetic" | "traditional"
  grouping-separator=CHARACTER
  grouping-size=NUMBER  />

Обязательные атрибуты

Нет.

Необязательные атрибуты

count

Указывает, что в дереве источника должно быть пронумеровано последовательно. Используется выражение XPath.

level

Определяет, как уровни дерева источника должны учитываться при генерации последовательных номеров. Имеет три допустимых значения: single, multiple, и any. Значение по умолчанию — single:

single

Последовательно нумерует дочерние узлы, как в пунктах списка. Процессор переходит к первому узлу в оси ancestor-or-self, который соответствует атрибуту count, а затем подсчитывает этот узел плюс все его предшествующие дочерние узлы (прекращая, когда достигает совпадения с атрибутом from, если таковой имеется), которые также соответствуют атрибуту count. Если совпадение не найдено, последовательность будет пустой.

multiple

Нумерует узлы как составную последовательность, которая отражает иерархическое положение узла, например, 1.2.2.5. (Вложенный формат может быть указан с помощью атрибута format, например, A.1.1). Процессор рассматривает всех ancestors текущего узла и сам текущий узел, останавливаясь, когда достигает совпадения с атрибутом from, если таковой имеется. Для каждого узла в этом списке, который соответствует атрибуту count, процессор подсчитывает, сколько у него предшествующих совпадающих дочерних узлов, и добавляет один для самого узла. Если совпадение не найдено, последовательность будет пустой.

any (В настоящее время не поддерживается.)

Нумерует все совпадающие узлы независимо от уровня последовательно. Рассматриваются оси ancestor, self и preceding. Процессор начинает с текущего узла и продвигается в обратном порядке документа, останавливаясь, если достигает совпадения с любым атрибутом from. Если совпадение с атрибутом count не найдено, последовательность будет пустой. Этот уровень в настоящее время не поддерживается.

from

Указывает, где должна начинаться нумерация или начинаться заново. Последовательность начинается с первого потомка узла, который соответствует атрибуту from.

value

Применяет заданный формат к числу. Это быстрый способ форматировать введённое пользователем число (в отличие от порядкового номера узла) в любом из стандартных форматов <xsl:number>.

format

Определяет формат сгенерированного числа:

format="1"

1 2 3 . . . (Этот формат в настоящее время является единственным поддерживаемым)

format="01"

01 02 03 . . . 09 10 11 . . .

format="a"

a b c . . .y z aa ab . . .

format="A"

A B C . . . Y Z AA AB . . .

format="i"

i ii iii iv v . . .

format="I"

I II III IV V . . .

lang (В настоящее время не поддерживается.)

Указывает, алфавит какого языка следует использовать в форматах нумерации буквами.

letter-value

Уточняет различие между последовательностями нумерации, использующими буквы. Некоторые языки имеют более одной системы нумерации, использующей буквы. Если обе системы начинаются с одного и того же токена, может возникнуть неоднозначность. Этот атрибут может принимать значение "alphabetic" или "traditional". Значение по умолчанию — "alphabetic".

grouping-separator

Указывает, какой символ следует использовать в качестве разделителя групп (например, тысяч). По умолчанию используется запятая (,).

grouping-size

Указывает число цифр, составляющих числовую группу. Значение по умолчанию — "3".

Тип

Инструкция, появляется в шаблоне.

Определено

XSLT, раздел 7.7

Поддержка Gecko

Частичная поддержка. См. комментарии выше.

© 2005–2022 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/XSLT/Element/number

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API