2012-04-18 2 views
0

У меня есть файл XML, который выглядит следующим образом:XML, XSL, как для извлечения дочерних узлов из XML-файла в XSL файл

<TestRun> 
<FailedTests> 
    <FailedTest id="19"> 
    <Name>Test</Name> 
    <FailureType>Assertion</FailureType> 
    <Location> 
    <File>Sets.cpp</File> 
    </Location> 
    <Details> 
    <Detail id="1">Exception caught returning cmd response </Detail> 
    <Detail id="2">unresolvable error code</Detail> 
    </Details> 
    </FailedTest> 
</FailedTests> 
</TestRun> 

и я хочу, чтобы получить значение дочерних узлов TestRun/FailedTests/FailedTest/Детали, как я могу это сделать ?? я попытался это, но он не работает:

 <TD> 
      <xsl:for-each select="Details/Detail"> 
       <br></br><br></br> 
      <xsl:value-of select="(Detail)"/> 
      </xsl:for-each> 
     </TD> 
    </TR> 

ответ

1

Когда вы находитесь внутри Подробности/Детали для-каждого вы можете распечатать содержимое текущего элемента, выполнив:

<xsl:value-of select="."/> 
+0

Я пробовал, но не дал результата, самолет пустой – Manoj

+0

что-то не так в моем коде ?? или есть другой способ извлечь значения дочерних узлов без указания их имен? – Manoj

+0

ваш XSLT-фрагмент не является допустимым XML плюс я не могу сказать, вызывается ли ваш внешний адрес для каждого из них в правильном контексте. может быть, все? –

Смежные вопросы