Rekursiv uden for-each
Skal lave en menu udskrevet som liste (<ul><li><a>)Den skal skrives ud rekursivt, men fejler.
Problemet er at yderste <ul> lukkes for tidligt og det efterfølgende items udskrives derfor enten i en ny <ul> eller uden for <ul>
nogen Ideer
.:: XML ::.
<?xml version="1.0" encoding="utf-8"?>
<item id="1" label="Forside" file="/content/test.xml">
<item id="100" label="About" file="/content/test.xml">
<item id="101" label="About" file="/content/test.xml" />
<item id="102" label="About" file="/content/test.xml" />
<item id="103" label="About" file="/content/test.xml" />
</item>
<item id="200" label="Other" file="/content/test.xml">
<item id="201" label="OtherA" File="/test.xml" />
</item>
<item id="300" label="Contact" File="/test.xml" />
</item>
.:: XSL ::.
<xsl:template match="item[parent::item]">
<ul>
<li>
<a href="/content.asp?id={@id}" id="menu_{@id}">
<xsl:value-of select="@label"/>
</a>
<ul class="sub">
<xsl:apply-templates/>
</ul>
</li>
</ul>
</xsl:template>
<xsl:template match="item[not(child::item)]">
<li>
<a href="content.asp?id={@id}">
<xsl:value-of select="@label"/>
</a>
<xsl:apply-templates/>
</li>
</xsl:template>