Поддержка версий

Вообще работа с xslt во многом зависит от того процессора с которым вы работаете. Я например, для простоты использую тот, что встроен в браузер, но браузеры поддерживают как правило xslt1.0, и как в случае с html поддержка их тоже не одинакова. Можно трансформировать чем то более серьезным. В любом случае, какой бы процессор не использовался, можно заранее позаботиться о совместимости версий или просто проверить какой процессор у вас и что он поддерживает, тоже бывает полезным при отладке.

Для начала получим версию процессора

<xsl:value-of select="system-property('xsl:version')" />

затем проверим пооддерживает ли он элемент

<xsl:value-of select="element-available('xsl:for-each')" />

или нужную функцию

<xsl:value-of select="function-available('round-half-to-even')" />

в первом случае возвращается номер вверсии в остальных двух frue или false. Теперь попробуем этим воспользоватся

<xsl:if test="not(element-available('xsl:for-each-group'))">
	for-each-group is not supported
</xsl:if>

Leave a Reply