1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| <?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="list">
<rangs>
<xsl:apply-templates select="rang" />
</rangs>
</xsl:template>
<xsl:template match="rang">
<rang>
<id value="{@rang_id}" />
<nom value="{@nom}" />
<users>
<xsl:call-template name="construc_user">
<xsl:with-param name="id" select="@rang_id" />
</xsl:call-template>
</users>
</rang>
</xsl:template>
<xsl:template match="user">
<user>
<id value="{@user_id}" />
<nom value="{@nom}" />
</user>
</xsl:template>
<xsl:template name="contruc_user">
<xsl:param name="id" select="0" />
<xsl:for-each select="user">
<xsl:if test="@rang == id">
<xsl:apply-templates select="." />
</xsl:if>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet> |