<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
	<xsl:output method="html"/>
	<xsl:key name="E1" match="root/topic/element1" use="."/>
	<xsl:template match="/">
		<html>
			<body>
				<table border="1">
					<tbody>
						<xsl:for-each select="root/topic/*[generate-id(.) = generate-id( key('E1', .)[1])]">
							<xsl:variable name="keyvalue" select="."/>
							<tr>	
							<td><xsl:value-of select="."/></td>
							<xsl:for-each select="../*">
								<xsl:if test="position() > 1">
								<xsl:variable name="pos" select="position()"/>
								<td>
									<xsl:for-each select="key('E1', $keyvalue)/../*[$pos]">
										<xsl:value-of select="."/>
										<xsl:if test="position() &lt; last()">,</xsl:if> 		
									</xsl:for-each> 
								</td>
								</xsl:if>
							</xsl:for-each>
							
							</tr>
						</xsl:for-each>
					</tbody>
				</table>
			</body>
		</html>
	</xsl:template>
</xsl:stylesheet><!-- Stylus Studio meta-information - (c) 2004-2006. Progress Software Corporation. All rights reserved.
<metaInformation>
<scenarios ><scenario default="yes" name="topics.xml" userelativepaths="yes" externalpreview="no" url="topics.xml" htmlbaseurl="" outputurl="" processortype="msxml4" useresolver="no" profilemode="0" profiledepth="" profilelength="" urlprofilexml="" commandline="" additionalpath="" additionalclasspath="" postprocessortype="none" postprocesscommandline="" postprocessadditionalpath="" postprocessgeneratedext="" validateoutput="no" validator="internal" customvalidator=""/></scenarios><MapperMetaTag><MapperInfo srcSchemaPathIsRelative="yes" srcSchemaInterpretAsXML="no" destSchemaPath="" destSchemaRoot="" destSchemaPathIsRelative="yes" destSchemaInterpretAsXML="no"/><MapperBlockPosition></MapperBlockPosition><TemplateContext></TemplateContext><MapperFilter side="source"></MapperFilter></MapperMetaTag>
</metaInformation>
-->