Это можно сделать, используя только шаблоны:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/catalog/cd[country='UK']" priority="1">
<xsl:value-of select="title"/>
<xsl:value-of select="artist"/>
</xsl:template>
<xsl:template match="/catalog/cd">
<!-- handle non-UK CDs here -->
</xsl:template>
</xsl:stylesheet>
Есть много других способов - конечно, в зависимости от ваших требований - организовать шаблоны для генерирования желаемого результата. Например, вы можете получить явные шаблоны для обработки элементов title
и artist
(или для явного сокрытия всех других дочерних элементов каждого cd
).
Все это зависит от ваших конкретных потребностей, но общая мысль, которую я хотел показать здесь, заключается в том, что вы получаете большую мощность (и в итоге получаете более чистый код), когда вы правильно ловите целевые элементы в совпадении шаблона (вместо ad-hoc условных выражений).