Как вставить дерево внутрь шаблона?

cryo

Guest
Как вставить дерево внутрь шаблона?

Есть шаблон примерно такого содержания
PHP:
<xsl:template name="frame"><table><tr>
<td>Something</td><td>Something2</td>
</tr></table></xsl:template>
Есть дерево элементов, например
PHP:
<news>
 <newstext>Трампампам</newstext>
 <posted>Today</posted>
</news>
<news>
 <newstext>Трампампам2</newstext>
 <posted>Tomorrow</posted>
</news>

Так вот хочется вставлять это дерево вместо something2, чего сделать через
PHP:
<xsl:call-template><xsl:with-param>
у меня пока не выходит. Т.е. на примере хочу чтобы получалось так:

PHP:
<xsl:template name="frame"><table><tr>
<td>Something</td>
<td>
 <news>
  <newstext>Трампампам</newstext>
  <posted>Today</posted>
 </news>
 <news> 
  <newstext>Трампампам2</newstext>
  <posted>Tomorrow</posted>
 </news>
 </td>
 </tr></table></xsl:template>
Выбирать дерово непосредственно в <td> не могу... ;( Подскажите как мне лучше поступить в такой ситуации...
 

jian

Guest
xml:

<?xml version="1.0" encoding="UTF-8"?>
<root>
<news>
<newstext>uhab</newstext>
<posted>Today</posted>
</news>
<news>
<newstext>toyama2</newstext>
<posted>Tomorrow</posted>
</news>
</root>



xsl:

<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:eek:utput method="html" indent="yes"/>

<xsl:template match="/root" >
<xsl:call-template name="frame">
<xsl:with-param name="tree" select="child::*"/>
</xsl:call-template>
</xsl:template>

<xsl:template name="frame">
<xsl:param name="tree"/>
<table>
<tr>
<td>Something</td>
<td>

<xsl:copy-of select="$tree"/>

</td>
</tr>
</table>
</xsl:template>

</xsl:stylesheet>

html:

<table><tr>
<td>Something</td>
<td>
<news>
<newstext>uhab</newstext>
<posted>Today</posted>
</news><news>
<newstext>toyama2</newstext>
<posted>Tomorrow</posted>
</news>
</td>
</tr></table>
 
Сверху