Re: [xsl] xsl:for-each question

Subject: Re: [xsl] xsl:for-each question
From: Michael Olszynski <m.olszynski@xxxxxxxxxxxxx>
Date: Fri, 31 Oct 2003 10:20:24 +0100
Hey, thanks a lot. Thats a great idea. I think that´ll work. I´ve one problem left. I try to call my templates like you wrote it. But then a lots of templates get called and there is a weird display. Is there a possibility to call it like:

....
<body>
       <xsl:call-template name="topic"/>
</body>

.....
<xsl:template name="topic">

	<whatever>
		<xsl:value-of select="@name"/>
		<xsl:if test="topic">
			<xsl:call-template name="topic"/>
		</xsl:if>
	</whatever>
</xsl:template>

I know that this code will not work, but it´d be great if it could work with call-template instead of apply-templates. Any ideas how to change it that it will recursively go through my topics?
That´s my xml-file:

<topic name="sdfsdsd">
	<topic name="ghhhhghghg">
		<topic name="fff">
		</topic>
	</topic>
</topic>
<topic name="sdfsdsd">
</topic>
... and so on

Thanks Michael



Cas Tuyn wrote:

Hi,

Building on Manos' idea, you can also do that using CSS, as layout with tables is soooo last century.

Cas

<xsl:template match="/">
<html><head><link rel="stylesheet" href="sitemap.css" type="text/css"></head><body>
<xsl:apply-templates/>
</body></html>
</xsl:template>


   <xsl:template match="topic">
   	<whatever>
		<xsl:value-of select="@name"/>
		<xsl:if test="topic">
				<xsl:apply-templates/>
		</xsl:if>
	</whatever>
   </xsl:template>

With in the CSS file sitemap.css the following:

whatever { margin-left: 20px; }
whatever whatever { margin-left: 40px; }
whatever whatever whatever { margin-left: 60px; }









XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list


Current Thread