Thread View: fr.comp.text.xml
3 messages
3 total messages
Started by lionel
Thu, 23 Nov 2000 00:00
comment tester un attribut?
Author: lionel
Date: Thu, 23 Nov 2000 00:00
Date: Thu, 23 Nov 2000 00:00
22 lines
1175 bytes
1175 bytes
salut,
j'ai un probl�me que je ne sais r�soudre: comment faire pour tester un
attribut avec la formule xsl:if dans un document xsl?
exemple:
j'ai un xml qui comporte les �l�ments suivants:
<urba>
<enreg sel="0" etat="initial">
<cle>1</cle>
<nom>titi</nom>
......
</enreg>
.....
</urba>
j'aimerais tester maintenant avec <xsl:if ...> si l'attribut sel est �gale �
0 ou 1 et faire des choses en cons�quences ...
comment faut il faire pour que ceci marche?
merci
Re: comment tester un attribut?
Author: Echoes
Date: Thu, 23 Nov 2000 00:00
Date: Thu, 23 Nov 2000 00:00
40 lines
1657 bytes
1657 bytes
lionel wrote:
>
> salut,
>
> j'ai un probl�me que je ne sais r�soudre: comment faire pour tester un
> attribut avec la formule xsl:if dans un document xsl?
>
> exemple:
> j'ai un xml qui comporte les �l�ments suivants:
>
> <urba>
> <enreg sel="0" etat="initial">
> <cle>1</cle>
> <nom>titi</nom>
> ......
> </enreg>
> .....
> </urba>
>
> j'aimerais tester maintenant avec <xsl:if ...> si l'attribut sel est �gale �
> 0 ou 1 et faire des choses en cons�quences ...
Un bloc xsl:if pour la valeur 1, et un autre pour la valeur 0 :
<xsl:if test="/urba/enreg@sel = '1'">
...
</xsl:if>
Si tu es certain que sel ne prend que 2 valeurs, tu peux aussi
utilise xsl:choose :
<xsl:choose>
<xsl:when test="/urba/enreg@sel = '1'">
...
</xsl:when>
<xsl:otherwise> <!-- toutes les valeurs diff�rentes de 1 -->
...
</xsl:otherwise>
</xsl:choose>
Fabrice
Re: comment tester un attribut?
Author: Tom.
Date: Thu, 23 Nov 2000 00:00
Date: Thu, 23 Nov 2000 00:00
19 lines
1446 bytes
1446 bytes
In article <3A1CF19F.CA8BC766@free.fr>, "Echoes" <echoes@free.fr> wrote:
> Un bloc xsl:if pour la valeur 1, et un autre pour la valeur 0 :
> <xsl:if test="/urba/enreg@sel = '1'">
... test="/urba/enreg/@sel = '1'"
^^^
Pensez toujours � la forme "d�velopp�e" pour �viter les erreurs :
/child::urba/child::enreg/attribute::sel
Si on remplace '1' (chaine) par 1 (nombre), ca marche aussi : on prend
la valeur (chaine) de l'attribute puis on le convertit en nombre pour
le comparer � 1.
Tou d�pend de ce qu'est sens� repr�sent� la valeur de l'attribut pour
nous humain : le nombre 1 ou la cha�ne '1',l'essentiel dans le test
�tant d'�tre le plus proche de sa logique possible pour une
lecture/compr�hension/maintenance ais�e.
Tom.
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads