XSLT бинарные операции (AND)
Бинарная операция AND
Чтобы это сделать достаточно на числовых операндах следующую формулу
Пример:
XSLT - работа с переменными типа массив и древо
В XSL возможность работы с переменными типа массив и дерево обеспечивается при помощи расширения exsl.
Переменную можно задать в явном виде
<xsl:variable name="process_stages">
<stage name="unprocessed"/>
<stage name="inprocess"/>
<stage name="processed"/>
</xsl:variable>
Либо, что правильнее, взять из дополнительного файла
XSL Выбор аттрибута по значению переменной
Чтобы выбрать аттрибут с именем, которое задается в переменной подходит конструкция - взять все * атрибуты @ где name() равное = значению переменной $variable
Пример:
Выводим в переменную выбранное значение
<xsl:variable name="attribute_name" select="\'attribute_1\'">
<input id="{$attribute_name}" value="{/SelectedParameters/@*[name()=$attribute_name]}" type="text" />
XSLT - спецсимволы или как вставить пробел.
В XSLT можно вывести любой символ указывая его номер в Unicode следующим образом - &NNNN;.
Пример:
Чтобы поставить неубиваемый пробел в данных xml
или в шаблоне xslt надо написать  
XSLT - объявление переменной с условием.
В XSLT переменную нельзя переопределять поэтому если возникает необходимость задавать ее значение в зависимости от условий, то наиболее эффективной конструкцией будет использование choose.
Пример:
XSLT - Как отсортировать записи.
Сортировка
Чтобы это сделать следует в цикл for-each добавить xsl:sort с аттрибутом select указывающим поле (правило), по которому будет идти сортировка.
Отметим что по умолчанию параметры сравниваются как строки т.е. "1" > "2", но "10" < "2". Чтобы это изменить надо использовать аттрибут data-type со значением number.
Пример:
XSLT - форматирование чисел и строк.
Форматирование чисел
Если надо вывести числовой параметр и при этом важен формат (int/float), то полезно использовать элемент xsl:number
Пример:
Для вывода значения аттрибута length в килобайтах пишем
(целым округленным числом)
<xsl:number value="@length div 1024" format="1"/>
XSLT Использование и хранение словарей во внешних XML.
Часто бывает полезно хранить набор значений для перевода в отдельном словаре и при необходимости подставлять то или иное значение по параметру. В xslt это реализовано средствами функции document и елемента xsl:key
Пример:
XSLT - Выводим элементы в несколько колонок.
Очень часто возникает необходимость вывести информацию (картинки, ссылки на файлы, просто блоки текста) в несколько колонок. Если мы имеем однотипные записи
Пример:
<image title="One"/>
<image title="Wto"/>
<image title="Three"/>
И хотим вывести их в таблицу в две колонки. То в XSL шаблоне нам достаточно сделать двойной цикл.
