Here is the XML generated by ds.WriteXml:
<?xml version="1.0" standalone="yes"?>
<Menu>
<MenuItem>
<ItemText>Home</ItemText>
<ItemLink>index.html</ItemLink>
<ItemType>Item</ItemType>
</MenuItem>
<MenuItem>
<ItemText>-</ItemText>
<ItemLink>-</ItemLink>
<ItemType>Space</ItemType>
</MenuItem>
<MenuItem>
<ItemText>Bookstore</ItemText>
<ItemLink>-</ItemLink>
<ItemType>H2</ItemType>
</MenuItem>
<MenuItem>
<ItemText>C#</ItemText>
<ItemLink>csharp.html</ItemLink>
<ItemType>Item</ItemType>
</MenuItem>
<MenuItem>
<ItemText>.NET</ItemText>
<ItemLink>dotnet.html</ItemLink>
<ItemType>Item</ItemType>
</MenuItem>
<MenuItem>
<ItemText>Notebooks</ItemText>
<ItemLink>-</ItemLink>
<ItemType>H2</ItemType>
</MenuItem>
<MenuItem>
<ItemText>C#</ItemText>
<ItemLink>notebooks/csharp/index.html</ItemLink>
<ItemType>Item</ItemType>
</MenuItem>
<MenuItem>
<ItemText>ATL</ItemText>
<ItemLink>-</ItemLink>
<ItemType>H3</ItemType>
</MenuItem>
<MenuItem>
<ItemText>Hello World</ItemText>
<ItemLink>hello.html</ItemLink>
<ItemType>Item</ItemType>
</MenuItem>
<MenuItem>
<ItemText>Handling Errors</ItemText>
<ItemLink>errors.html</ItemLink>
<ItemType>Item</ItemType>
</MenuItem>
</Menu>
Here is the XSL used to transform the XML into HTML:
<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns="http://www.w3.org/TR/REC-html40">
<xsl:output method="html" indent="yes" />
<xsl:template match="/">
<html>
<body>
<table border="0" cellpadding="2" cellspacing="0"
id="menu">
<xsl:for-each select="Menu/MenuItem">
<tr>
<td height="20" nowrap="">
<xsl:choose>
<xsl:when test="ItemType='Item'">
<a>
<xsl:attribute
name="href">
<xsl:value-of
select="ItemLink"/>
</xsl:attribute>
<font size="3">
<xsl:value-of
select="ItemText"/>
</font>
</a>
</xsl:when>
<xsl:when test="ItemType='H2'">
<center>
<font size="4"
color="#800000">
<b>
<xsl:value-of
select="ItemText"/>
</b>
</font>
</center>
</xsl:when>
<xsl:when test="ItemType='H3'">
<center>
<font size="3">
<b>
<xsl:value-of
select="ItemText"/>
</b>
</font>
</center>
</xsl:when>
</xsl:choose>
</td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
Comments