Элемент xsl:number
Элемент xsl:number
Синтаксис элемента описывается следующей конструкцией:
<xsl:number
level="single"
| "multiple"
| "any"
count="паттерн"
from="паттерн"
value="выражение"
format="{строка}"
lang="{токен}"
letter-value={ "alphabetic"
| "traditional" }
grouping-separator="{символ}"
grouping-size="{число}"/>
Элемент xsl:number вычисляет номер узла в соответствии с заданными критериями, форматирует его и затем вставляет в результирующее дерево в виде текстового узла. То, что все это выполняется в одном элементе преобразования, имеет существенные преимущества по сравнению с использованием XPath-выражений: программа становится более простой и понятной, причем далеко не в ущерб функциональности.
К сожалению, в этом случае, как и во многих других, универсальность использования повлекла за собой семантическую сложность. Несмотря на то, что xsl:number имеет всего девять атрибутов (причем ни один из них не является обязательным), мы посвятим их описанию значительное количество страниц. Пока же, чтобы сориентировать читателя, мы кратко перечислим назначения атрибутов xsl:number.
? Атрибут level указывает, на каких уровнях дерева следует искать нумеруемые узлы.
? Атрибут count указывает, какие именно узлы следует считать при вычислении номера.
? Атрибут from указывает, в какой части документа будет производиться нумерация.
? Атрибут value задает выражения, которые следует использовать для вычисления значения номера.
? Атрибут format определяет, как номер будет форматироваться в строку.
? Атрибут lang задает языковой контекст нумерации.
? Атрибут letter-value определяет параметры буквенных методов нумерации.
? Атрибут grouping-separator задает символ, разделяющий группы цифр в номере.
? Атрибут grouping-size определяет количество цифр в одной группе.
Выполнение элемента xsl:number можно условно разделить на два этапа — вычисление номера и его строковое форматирование. На этапе вычисления активными являются элементы level, count, from и value. Форматирование производится с учетом значений атрибутов format, lang, letter-value, grouping-separator и grouping-size. Результатом первого этапа является список номеров, который форматируется в текстовый узел на втором этапе.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Объект Number
Объект Number Объект Number обычно применяется для доступа к некоторым постоянным значениям, например к отрицательной бесконечности. Свойства и методы этого объекта указаны в табл. 11.16 и 11.17.Таблица 11.16. Свойства объекта Number Таблица 11.17. Методы объекта
Элемент <xsl:if>
Элемент <xsl:if> При помощи элемента <xsl:if> осуществляются проверки условия и принимаются действия на основе результата проверки. Он во многом похож на оператор if в языках программирования. У элемента <xsl:if> один атрибут:• test (обязательный). Устанавливается в
Элемент <xsl:for-each>
Элемент <xsl:for-each> Элемент <xsl:for-each> позволяет применять тело шаблона в цикле снова и снова для всех элементов набора узлов. С технической точки зрения, он работает с набором узлов, который возвращает выражение XPath и выполняет одно и то же действие с каждым узлом в
Элемент <xsl:number>
Элемент <xsl:number> При помощи элемента <xsl:number> узлу в результирующем документе присваивается очередной номер. Например, можно перенумеровать абзацы в контракте или строфы в поэме. Можно даже перенумеровать части документа несколькими уровнями, как, например, «Paragraph
number()
number() Функция number приводит свой аргумент к числу. Функция применяется следующим образом:number number(object?)В этом примере я передаю number строку:number("456.7")Это выражение возвращает число 456.7. Если вы попытаетесь преобразовать что-то, что number не сможет перевести в число, функция вернет
Создание номеров страниц: <fo:page-number>
Создание номеров страниц: <fo:page-number> Встроенный форматирующий объект <fo:page-number> создает встроенную область, отображающую номер текущей страницы. Например:<fo:block> You are now reading page <fo:page-number/>.</fo:block>С элементом <fo:page-number> можно применять следующие
Элемент <?job?>
Элемент <?job?> Элемент <?job?> задает режим отладки при выполнении WS-файла. Если значение атрибута debug равно true, то задание может быть выполнено во внешнем отладчике (см. приложение 3). Если же значение атрибута debug равно false, то отладчик для этого задания применен быть не
Элемент <job>
Элемент <job> Элементы <job> позволяют определять несколько заданий (независимо выполняющихся частей) в одном WS-файле. Иначе говоря, между тегами <job> и </job> будет находиться отдельный сценарий (который, в свою очередь, может состоять из нескольких частей,
Элемент <example>
Элемент <example> Внутри элемента <example> приводится текст из одной или нескольких строк, в котором можно описать примеры запуска сценария. Если сценарий был запущен с ключом /? в командной строке или в сценарии встретился вызов метода ShowUsage объекта WshArguments, то этот текст
Приоритет процесса (Nice Number)
Приоритет процесса (Nice Number) Относительный приоритет процесса, учитываемый планировщиком при определении очередности запуска. Фактическое же распределение процессорных ресурсов определяется приоритетом выполнения, зависящим от нескольких факторов, в частности от
Sequence number
Sequence number Порядковый номер файла базы данных. Для базы данных, состоящей из одного файла, он всегда равен нулю. Второй файл в базе данных будет иметь номер 1 и т д. В документации ошибочно написано, что это номер заголовочной страницы, однако анализ исходных кодов InterBase и