Bonjour
Robin Berjon wrote on 22/04/2006 22:05:
> <xsl:template match='images'> <table> <xsl:apply-templates
> select='image'/> </table> </xsl:template>
>
> <xsl:template match='image[position() mod 3 == 1]'> <tr> <td><img
> src='{@href}'.../></td> <td><img
> src='{following-sibling::image[1]/@href}'.../></td> <td><img
> src='{following-sibling::image[2]/@href}'.../></td> </tr>
> </xsl:template>
>
> <xsl:template match='image[position() mod 3 != 1]'/>
>
> Le principe de base est toujours le même pour ce genre de groupage:
> sélectionner le premier élément de chaque groupe, puis depuis lui
> sélectionner les autres (et les ignorer activement pour le reste du
> code).
j'ai un problème pour ignorer les images dans cette optique.
je pensais utiliser le code suivant:
<xsl:template name="...">
[...]
<xsl:call-template name="affiche1photoEn3parPage">
<xsl:with-param name="image" select="image"/>
<xsl:with-param name="positionPage"
select="position() mod 3"/>
</xsl:call-template>
<xsl:call-template name="affiche1photoEn3parPage">
<xsl:with-param name="image[1]" select="image"/>
<xsl:with-param name="positionPage"
select="position() mod 3"/>
</xsl:call-template>
<xsl:variable name="skip_counter"
select="$skip_counter + 1" />
<xsl:call-template name="affiche1photoEn3parPage">
<xsl:with-param name="image[2]" select="image"/>
<xsl:with-param name="positionPage"
select="position() mod 3"/>
</xsl:call-template>
<xsl:variable name="skip_counter"
select="$skip_counter + 1" />
[...]
</xsl:template>
dans
<xsl:for-each select="image">
<xsl:choose>
<xsl:when test="skip_counter > 0">
<xsl:variable name="skip_counter" select="$skip_counter - 1" />
</xsl:when>
<xsl:otherwise>
<xsl:call-template name="p3parPage">
<xsl:with-param name="image" select="image"/>
<xsl:with-param name="positionPage" select="position() mod
3"/>
</xsl:call-template>
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
problème ...
a priori, en xsl, une variable n'est pas modifiable cf.
http://sourceware.org/ml/xsl-list/2000-02/msg00279.html
http://sourceware.org/ml/xsl-list/2001-04/msg00585.html
ce qui me fait dire ... comment gérer ce genre de situation: j'ai mon
listing de fichiers, chaque fichier avec une note, et je veux par
exemple, ceux avec la note 1 soit affiché 1 seul par page, les autres 3
par page.
je ne vois pas comment faire sans variable ou alors en dehors du xml/xsl
(mais bon ...)
merci
Cordialement
Julien Touche
--
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 Sun Apr 23 16:10:59 2006