Возникли проблемы с $coun_prop.
Вызываю вот так:
<xsl:variable name="coun_prop" select="count(//compare/compare_items/item/property[@id = $property_id]/value = $etalon)"/>
или как вы писали вот так
<xsl:variable name="coun_prop" select="count(/compare/compare_items//item/property[@id = $property_id]/value = $etalon)"/>
Но выдаются ошибки
ПРЕДУПРЕЖЕДЕНИЕ: XSLTProcessor::transformToDoc() [function.XSLTProcessor-transformToDoc]: Invalid type в файле Z:\home\192.168.0.16\navnav\modules\Xsl\Xsl.class.php (строка 270)
ПРЕДУПРЕЖЕДЕНИЕ: XSLTProcessor::transformToDoc() [function.XSLTProcessor-transformToDoc]: runtime error: file file:///Z%3A/home/192.168.0.16/navnav/ line 44 element variable в файле Z:\home\192.168.0.16\navnav\modules\Xsl\Xsl.class.php (строка 270)
ПРЕДУПРЕЖЕДЕНИЕ: XSLTProcessor::transformToDoc() [function.XSLTProcessor-transformToDoc]: Evaluating variable count_prop failed в файле Z:\home\192.168.0.16\navnav\modules\Xsl\Xsl.class.php (строка 270)
Вызываю не сразу в корне, а вот тут
<xsl:template match="compare_properties/property">
т.е. там где вызываются непосредственно строки со свойствами. Остальные 2 переменные нормально определяются.