From: Aurélie Sérieux (aserieux@ydris.com)
Date: 27/02/2001 - 16:42
Merci, c'était bien la portée des variables !!!
En effet, j'affichais mes valeurs dans un tableau et je calculais mes
variables au fur et à mesure... ce qui fait que mes variables n'étaient plus
valides... Et MSXML3 n'y a vu que du feu... et moi aussi ;-)
En résumé, pour tout le monde : "Avec Xalan, il faut respecter la portée des
variables, sinon il se fâche !!!".
Voila ! Merci encore,
Aurélie
-----Message d'origine-----
De : Jandia, Cyril [mailto:Cyril.Jandia@Restaupro.com]
Envoyé : mardi 27 février 2001 16:47
À : xml-tech@xmlfr.org
Objet : [xml-tech] Re: Formatage de nombres
Re-re- ... bonjour,
Je viens d'y repenser :
faire attention cependant aux regles de portee peut-etre plus STRICTEMENT
controlees par Xalan x.y que par MSXML3 ;
par exemple, un travers classique est :
<xsl:choose>
<xsl:when test="..."> ... <xsl:variable name="MaVariable" select="..." />
... </xsl:when>
<xsl:otherwise> ... reference(s) a $MaVariable ... </xsl:otherwise>
</xsl:choose>
Un processeur XSLT STRICT doit rejeter ce genre de situation car
<xsl:variable .../> est dans la portee du <xsl:when ...>
et non pas dans celle du <xsl:choose ...> tout entier !
Ne seriez-vous pas dans une configuration plus ou moins similaire ?
Note 1 : MSXML3 ne se trompe pas la-dessus AFAYK, mais se trompe peut etre
dans d'autres situations ... (?)
Note 2 : l'ecriture "correcte" etant donc :
<xsl:variable name="MaVariable" select="..." />
<xsl:choose>
<xsl:when test="..."> ... </xsl:when>
<xsl:otherwise> ... reference(s) a $MaVariable ... </xsl:otherwise>
</xsl:choose>
Note 3 :
Cela ressemble un peu (de loin, la nuit, dans le brouillard ;=) comme le
probleme de l'indentation trompeuse en C / Pascal / Java :
if test1 then
if test 2 then
instruction1
else
instruction2
(ou "else instruction2" se rapporte au 2eme "if" et non pas au 1er)
Hope it helps,
Cyril
--
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)
--
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)
Archive générée par hypermail 2.1.3 le 28/06/2004 - 11:05 UTC
webmaster@xmlfr.org
|