Циклы и XSL

#
Циклы и XSL
Подскажите пожалуйста, как можно вывести в цикле характеристики свойства. У меня имеется несколько объектов - файлов, имена которых имеют вид "picturex", где x - число (например 1).
Код XSL:

<xsl:template name="for" match="/document/item">
<xsl:param name="i" select="0"/>
<xsl:param name="n"/>
<xsl:if test="$i &lt; $n">
<xsl:if test="item_propertys/item_property[@xml_name='picture1']/value != ''">

<img src="{item_propertys/item_property[@xml_name='picture1']/small_image/property_file_path}" class="news_img" alt="" border="0"/>

</xsl:if>   

<xsl:call-template name="for">
<xsl:with-param name="i" select="$i + 1"/>
<xsl:with-param name="n" select="$n"/>
</xsl:call-template>
</xsl:if>
</xsl:template>


В данному случае XML-тэг имеет имя picture1, тогда выводится 9 изображений picture1. Если же вместо этого написать picture$i, то будет выведено 9 пустых изображений. Помогите решить проблму

Код вызова цикла:

<xsl:call-template name="for">
<xsl:with-param name="n" select="10"/>
</xsl:call-template>
#
Re: Циклы и XSL
Ну или просто как рекурсивно пройти по всем элементам типа "изображение".
Модератор
#
Re: Циклы и XSL
kindwizzad,
попробуйте
picture{$i}

kindwizzad писал(а):
Ну или просто как рекурсивно пройти по всем элементам типа «изображение».

Там, где применяете шаблон укажите ограничение на присутствие нужного узла:
item[item_propertys/item_property/small_image/node()]
#
Re: Циклы и XSL
picture{$i}
к сожалению не помог
#
Re: Циклы и XSL
Решение оказалось таким:
...
<xsl:variable name="name" select="concat('picture', $i)"/>
...
<xsl:variable name="link" select="item_propertys/item_property[@xml_name=$name]/property_file_path"/>
...
Авторизация