Народ помогите начинающему:
От: Sergey_S-Pb  
Дата: 12.09.04 12:59
Оценка:
Народ помогите начинающему:

Ecть XML :
<root>
<item1 name="11111"/>
<item2 name="22222"/>
</root>

Eсть XSL:
..........
<xsl:param name="Item" select="'item1'"/>

<xsl:choose>
<xsl:when test="$Item = 'item2'">
<xsl:apply-templates select="document('../xml/xml.xml')/root/item2" mode="Item"/>
</xsl:when>
<xsl:otherwise>
<xsl:apply-templates select="document('../xml/xml.xml')/root/item1" mode="Item"/>
</xsl:otherwise>
</xsl:choose>
..........

Пока 2 вложения все хорошо, но их количества будет со временем увеличиватся, как зделать вызов формата:

..........
<xsl:apply-templates select="document('../xml/xml.xml')/root/$Item" mode="Item"/>
..........

Зарание Влогадарен
Re: Народ помогите начинающему:
От: mikkri Великобритания  
Дата: 13.09.04 01:53
Оценка:
Здравствуйте, Sergey_S-Pb, Вы писали:

Не совсем понял вопрос. Можешь ли ты не использовать функцию document?
Поможет ли использование двойного слеша? Например //item1 ?
Re[2]: Народ помогите начинающему:
От: Sergey_S-Pb  
Дата: 13.09.04 09:21
Оценка:
Здравствуйте, mikkri, Вы писали:

M>Здравствуйте, Sergey_S-Pb, Вы писали:


M>Не совсем понял вопрос. Можешь ли ты не использовать функцию document?

M>Поможет ли использование двойного слеша? Например //item1 ?

К сожелению выдает ошибку
Задача убрать:
<xsl:choose>
</xsl:choose>
И сделать вызов формата :
<xsl:apply-templates select="document('../xml/xml.xml')/root/$Item" mode="Item"/>
Я понимаю что $Item это строка а не объект
Re[3]: Народ помогите начинающему:
От: vorobeika Чехия  
Дата: 14.09.04 03:55
Оценка:
Здравствуйте, Sergey_S-Pb, Вы писали:

SP>Задача убрать:

SP> <xsl:choose>
SP> </xsl:choose>
SP>И сделать вызов формата :
SP> <xsl:apply-templates select="document('../xml/xml.xml')/root/$Item" mode="Item"/>
SP>Я понимаю что $Item это строка а не объект

Не пробовали что-нибудь вроде /root/*[name()=$Item] ?
Re[4]: Народ помогите начинающему:
От: Sergey_S-Pb  
Дата: 14.09.04 15:02
Оценка:
Здравствуйте, vorobeika, Вы писали:

V>Здравствуйте, Sergey_S-Pb, Вы писали:


SP>>Задача убрать:

SP>> <xsl:choose>
SP>> </xsl:choose>
SP>>И сделать вызов формата :
SP>> <xsl:apply-templates select="document('../xml/xml.xml')/root/$Item" mode="Item"/>
SP>>Я понимаю что $Item это строка а не объект

V>Не пробовали что-нибудь вроде /root/*[name()=$Item] ?


Cпасибо большое получилось
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.