Здравствуйте, mikkri, Вы писали:
M>MS XML Parser говорит, что фигурные скобки ему не понятны.
M>А что они должны значить? Первый раз их использование в XSLT вижу
Это attribute value template — конструкция, посредством которой в атрибутах пользовательских элементов и некоторых элементов XSL можно употреблять выражения.
Такая конструкция:
<xsl:variable name="k" select="......"/>
<xsl:apply-templates select="data" mode="$k"/>
не работает. Как это можно сделать что-то аналогичное? Чтобы вызывался темплейт с mode'ом, зависящим от значения переменной.
Здравствуйте, fox_2000, Вы писали:
F2>Такая конструкция:
F2>
F2>F2><xsl:variable name="k" select="......"/>
F2><xsl:apply-templates select="data" mode="$k"/>
F2>
F2>не работает. Как это можно сделать что-то аналогичное? Чтобы вызывался темплейт с mode'ом, зависящим от значения переменной.
Совет 1:
Используй Case по всем возможным значениям k и проблема отпадет.
Совет 2:
Или вместо apply-templates используй call-template с параметром k.
Здравствуйте, fox_2000, Вы писали:
F2>Такая конструкция:
F2>
F2>F2><xsl:variable name="k" select="......"/>
F2><xsl:apply-templates select="data" mode="$k"/>
F2>
F2>не работает. Как это можно сделать что-то аналогичное? Чтобы вызывался темплейт с mode'ом, зависящим от значения переменной.
Может с таким вариантом поэксперементировать?
<xsl:call-template name="check">
<xsl:with-param name="mode" select="$k"/>
</xsl:call-template>
<xsl:template name="check">
<xsl:param name="descr"/>
...
Не совсем полный эквивалент — придется иначе шаблоны написать, но...
Здравствуйте, fox_2000, Вы писали:
Попробуй:
F2>F2><xsl:variable name="k" select="......"/>
F2><xsl:apply-templates select="data" mode="{$k}"/>
F2>
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, fox_2000, Вы писали:
А>Попробуй:
F2>>F2>><xsl:variable name="k" select="......"/>
F2>><xsl:apply-templates select="data" mode="{$k}"/>
F2>>
MS XML Parser говорит, что фигурные скобки ему не понятны.
А что они должны значить? Первый раз их использование в XSLT вижу
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, mikkri, Вы писали:
M>>MS XML Parser говорит, что фигурные скобки ему не понятны.
M>>А что они должны значить? Первый раз их использование в XSLT вижу
А>Это attribute value template — конструкция, посредством которой в атрибутах пользовательских элементов и некоторых элементов XSL можно употреблять выражения.
NOTE: Not all attributes are interpreted as attribute value templates. Attributes whose value is an expression or pattern, attributes of top-level elements and attributes that refer to named XSLT objects are not interpreted as attribute value templates. In addition, xmlns attributes are not interpreted as attribute value templates; it would not be conformant with the XML Namespaces Recommendation to do this.
Видимо, работать не будет.
Спасибо за инфу.