XSL — The Extensible Stylesheet Language
XSLT (XSL Transformations) — декларативный язык XML трансформаций из подмножества XML.
Прекрасно подходит для создания системы шаблонизации.
Не смотря на то, что в XSLT существуют условные выражения и циклы, язык позволяет создавать шаблоны не используя их вовсе.
<xsl:apply-templates>
Фактически для создания шаблона достаточно трёх основных конструкций: <xsl:apply-templates>, <xsl:template> и <xsl:value-of>
Если мы хотим обработать узлы параметрически, вовсе не требуется строить монструозные каскады условий, достаточно создать шаблоны с требуемыми параметрами и вызвать применение шаблонов для всего набора узлов
XML:
<list> <li type="url">http://ingeniarius.name</li> <li type="text">Text</li> </list>
XSL:
<xsl:template match="list">
<xsl:apply-templates select="li" />
</xsl:template>
<xsl:template match="li[@type='text']">
<xsl:value-of select="." />
</xsl:template>
<xsl:template match="li[@type='url']">
<a href="{.}"><xsl:value-of select="." /></a>
</xsl:template>
