Валиков Алексей Н.
Шрифт:
format-number(-123456.78, '$,00001$,0000-', 'format1')
→ '123456,7800-'
format-number(-123456.78, '000:000:000,00$$', 'format1')
→ 'N000:123:456,78'
format-number('zero', '000:000:000,00$$', 'format1') -> 'not-a-number'
format-number(1 div 0, '$,$', 'format1')
→ '∞'
format-number(-1 div 0, '$,$', 'format1')
→ 'N∞'
Определение десятичного формата:
<xsl:decimal-format name="format2" zero-digit="/"/>
Примеры функций
format-number
: format-number(123456789, '#', 'format2')
→ '012345678'
format-number(123456789, '#')
→ '123456780'
Определение десятичного формата:
<xsl:decimal-format name="format3" zero-digit="1"/>
Примеры функций
format-number
: format-number(123456789, '#', 'format3')
→ '23456789:'
format-number(12345.06789, '#.#####', 'format3')
→ '23456.1789:'
Десятичный формат, определяемый элементом
xsl:decimal-format
, в отличие от многих других элементов не может переопределяться в преобразованиях со старшим порядком импорта. Элементы xsl:decimal-format
должны определять десятичные форматы с различными именами (за исключением тех случаев, когда значения их атрибутов полностью совпадают). Контроль вывода документа
Несмотря на то, что XSLT-процессоры должны лишь только преобразовывать логические модели документов, организованные в виде деревьев, многие из них имеют также возможность выдавать результат преобразования в виде последовательности символов.
Элемент xsl:output
Синтаксис этого элемента приведен ниже:
<xsl:output
method = "xml" | "html" | "text" | "имя"
version = "токен"
encoding = "строка"
omit-xml-declaration = "yes" | "no"
standalone = "yes" | "no"
doctype-public = "строка"
doctype-system = "строка"
cdata-section-elements = "имена"
indent = "yes" | "no"
media-type = "строка"/>
Элемент верхнего уровня
xsl:output
позволяет указывать, каким образом должно быть выведено результирующее дерево. Главным атрибутом элемента
xsl:output
является атрибут method
, который определяет, какой метод должен использоваться для вывода документа. Значением этого атрибута может быть любое имя, но при этом техническая рекомендация XSLT определяет только три стандартных метода вывода — "xml"
, "html"
и "text"
. В том случае, если процессор поддерживает нестандартный метод вывода, его реализация полностью зависит от производителя. Если в преобразовании не определен элемент
xsl:output
или в нем не указан атрибут method
, метод преобразования выбирается по умолчанию исходя из следующих условий. □ Если корень выходящего документа имеет дочерний элемент с локальным именем "
html
" (в любом регистре символов), которому предшествуют только пробельные символы, методом вывода по умолчанию становится "html
". □ Во всех остальных случаях методом вывода по умолчанию является
"xml"
. Пример
Для документа
<HTML>
<HEAD>
<TITLE>XSL Transformations (XSLT)</TITLE>
</HEAD>
<BODY>
<H1>XSL Transformations (XSLT)<BR/>Version 1.0</H1>
</BODY>
</HTML>
Методом вывода по умолчанию будет
"html"
, а для документа