2011-12-19 3 views
1

Я заменяю for-each в некоторых XSLT с несколькими дискретными вызовами, которые обрабатывают данные относительно «выбранного» узла в for-each.XSLT выбирает как VB 'с'

Я не хочу менять ссылки в for-each, только дублируйте код.

В настоящее время у меня есть

xsl:for-each select='FMGROUPRESULTS[GUID=$Guid] 

затем

<xsl:if test="./CFUND &gt; '0'"> 

бла

, что я хочу, чтобы быть в состоянии сделать, это создать своего рода «гнездо» и сказать select(somehow)='FMGROUPRESULTS[GUID=$Guid][0], а затем использовать относительный звонки внутри.

Я пробовал value-of, и он не работает.

Любые предложения?

+0

Что XSLT версии вы используете? Что именно вы собираетесь получить - отдельный доступ к каждому элементу, возвращаемому для каждого оператора select? любой читаемый пример? – Vitaliy

+0

В чем именно вопрос? Что вы подразумеваете под «как VB» с «»? Можете ли вы показать нам источник XML? Что такое «бла»? – mzjn

+0

Знаете ли вы о совпадении шаблонов и 'xsl: apply-templates' в XSLT? Звучит так, как будто вы можете найти эту функцию. Если это предложение само по себе не поможет, вы можете показать нам пример ввода и соответствующий вывод, который вы хотите создать с помощью XSLT, тогда мы можем предложить способ XSLT этого. –

ответ

0

, что я хочу, чтобы быть в состоянии сделать, это создать своего рода «гнездо» и сказать select(somehow)='FMGROUPRESULTS[GUID=$Guid][0], а затем использовать относительные звонки внутри.

Основываясь на неясном и запутанном вопросе, я предполагаю, что вам нужна концепция переменных в XSLT.

Использование:

<xsl:variable name="vSingleElem" select="'FMGROUPRESULTS[GUID=$Guid][1]"/> 

Тогда вы можете получить доступ к любому ребенку выбранного элемента по:

$vSingleElem/someChildName[someCondition]