В общем случае, XSLT-шаблон представляет собой XML-документ, описывающий правила преобразования исходных XML-документов. При применении шаблона строится дерево узлов исходного XML-документа, затем к узлам дерева, начиная с корневого, применяются заданные в шаблоне правила и формируется результирующий документ. Более детально последовательность применения правил шаблонов можно посмотреть, например, здесь: ru.wikipedia.org/wiki/XSLT.
Важным следствием является то, что с помощью XSLT-шаблонов можно получать различные представления одного и того же XML-ресурса.
При использовании XSLT-шаблонизатора UMI.CMS таким исходным XML-документом, подлежащим преобразованию, является внутреннее представление страницы в формате UMI Data (см. далее «Формат UMI Data»). Правила преобразования, в свою очередь, задаются в XSL-файле, назначенном шаблоном в настройках модуля "Структура" для этой страницы.
Для того, чтобы посмотреть, как именно выглядит страница в формате UMI Data, можно добавить .xml
в адресной строке к адресу любой страницы. В этом случае произойдет следующее:
В применяемом шаблоне часто могут встречаться какие-либо вызовы дополнительных данных по внутренним протоколам UMI.CMS (полный список происходящих вызовов можно получить одним запросом — см. «Отладка и тестирование XSLT-шаблонов»). Все эти вызовы возвращают результаты в виде XML-данных и, соответственно, также могут быть обработаны и включены в результирующий документ:
Кроме того, поскольку универсальный XSLT-шаблонизатор, реализованный в UMI.CMS, базируется на архитектурных принципах REST, это позволяет применять его не только для создания оформления HTML-страниц, но и для создания Flash- и Ajax-приложений.