[XSLT] Numérotation sur plusieurs branches
Bonjour,
Je possède un fichier xml de ce genre :
Code:
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
|
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="index.xsl"?>
<Root>
<A>
<C />
<C />
</A>
<B>
<D>
<C />
<C />
<C />
</D>
</B>
<B>
<D>
<C />
<C />
<C />
<C />
</D>
</B>
<B>
<D>
<C />
<C />
</D>
</B>
</Root> |
Mon but est de pouvoir numéroter de manière continue tous les noeuds C en commençant à partir de 1. De mon côté, je suis arrivé à récupérer les noeuds et à les numéroter de manière continue. En revanche, je ne n'arrive pas à forcer le démarrage de la numérotation à 1. Voilà ma feuille de style XSL :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output encoding="ISO-8859-1" indent="yes" method="html" omit-xml-declaration="yes" version="1.0"/>
<xsl:template match="/">
<html>
<head>
<title>Numérotation</title>
</head>
<body>
<xsl:apply-templates select="//B//C" />
</body>
</html>
</xsl:template>
<xsl:template match="C">
<xsl:number format="1" level="any"/><br />
</xsl:template>
</xsl:stylesheet> |
Et voilà ce que j'obtiens :
Code:
1 2
|
3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 - 11 |
Voilà, merci à ceux qui pourront me filer un coup de main, j'essayerai de me débrouiller pour la suite :P