Вопрос новичка – есть ли в XSLT поддержка логического И и логического ИЛИ (Logical And – &&, Logical Or – II) ? (Не новички могут дальше не читать, они уже наступали на эти грабли в ранней юности)
Ответ – в выражениях XPath, a логическое И (Logical And) пишется как ‘and’, а логическое ИЛИ (Logical Or ) пишется как ‘or’.
Пример 1:
<xsl:if test="($foo = 'bar') and ($bar = 'foo')">
Пример 2:
<xsl:template match="node[@lang='ru' and @kind='good']>...
Вариант node[@lang='ru'] and node[@kind='good'] – неправильный, легко видно если немного порассуждать логически.