xsl-list
[Top] [All Lists]

Re: [xsl] Passing xml nodes to a function

2006-08-09 08:19:41

I suspect that ypu don't want to use call-template and named templates
at all here, and just use apply-templates which would simplify your code
greatly.

It's not clear what output you want, you suggested code allways makes
table rows tr containing a single td but you showed an indented output

          teleNumbers 
              telList
                  numbers
                teleType        H
                teleNumber      0145454545


what html do you intend here?


It's not clear how your initial selection .//response/*/response/*" fits
with your input document (the sample you showed didn't have a response
element but I'm assuming that what you showed was teh content of a
typical <response> ?


call-template does not change the current node so  as you recurse along
your $children the current node always stays teh same so
<xsl:value-of select="name()"/> will produce the same text  at each
stage,

I think you want something like
   <table>
    <xsl:apply-templates" select=".//response/*/response/*" mode="table"/>
 </table> 

<xsl:template match="*" mode="table">
<tr>
<td><xsl:value-of select="name()"/></td>
<xsl:if test="not(*)"><td><xsl:value-of select="."/></td></xsl:if>
</tr>
</xsl:template>

David

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--