Resalut arnaud;
g fait quelques autres modif pour que les R soient ordonnés, sachant que tu
peux ajouter meme d'autres c ca reste valable!
cordialement,
Mehdi.
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:template match="/">
<HTML>
<body>
<table>
<xsl:apply-templates select="Doc"/>
</table>
</body>
</HTML>
</xsl:template>
<xsl:template match="Doc">
<tr>
<th></th>
<xsl:for-each select="C">
<th>
<xsl:value-of select="@name"></xsl:value-of>
</th>
</xsl:for-each>
</tr>
<tr><td>
<xsl:apply-templates select="C/R">
<xsl:sort select="@name"></xsl:sort>
</xsl:apply-templates>
</td></tr>
</xsl:template>
<xsl:template match="R">
<xsl:variable name="name">
<xsl:value-of select="@name"></xsl:value-of>
</xsl:variable>
<td>
<xsl:if test="not(preceding::R/@name=$name)">
<tr>
<th>
<xsl:value-of select="@name"></xsl:value-of>
</th>
<xsl:for-each select="../../C">
<xsl:choose>
<xsl:when test="R/@name=$name">
<td><xsl:value-of select="R[@name=$name]/@value"></xsl:value-of></td>
</xsl:when>
<xsl:otherwise>
<td>0</td>
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
</tr>
</xsl:if>
</td>
</xsl:template>
</xsl:stylesheet>
--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !
Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
Cette liste est a votre disposition pour discuter en francais de
tout sujet technique lie a XML.
Pour resilier votre abonnement, envoyez un message contenant
la commande "unsubscribe" a xml-tech-request@xmlfr.org
(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
Received on Wed Apr 9 18:48:56 2003