From: Eric van der Vlist (vdv@dyomedea.com)
Date: 06/06/2001 - 09:04
Bonjour,
Nathalie Le Roy wrote:
>
> Bonjour,
>
> Je suis débutante en XML alors veuillez excuser ma question peut-être idiote
> ...
>
> Je cherche à afficher un menu avec une indentation selon la valeur d'un
> attribut "Indent". Est-il possible, dans ma feuille xsl, de faire une boucle
> (xsl:for-each?) allant de 0 jusqu'à la valeur de l'attribut "Indent" et
> d'insérer un nombre espace correspondant au nombre d'itération de la boucle
> avant d'écrire le nom de mon élément de menu?
Non... les variables XSLT sont des constantes [1] !
[1]http://xmlfr.org/documentations/faq/001213-0003
> Peut-être y a-t-il une autre solution?
Oui, utiliser des templates de manière récursive (de manière générale)
ou une autre astuce (en fonction des cas particuliers)...
>
> Ma feuille xml:
> <MENU>
> <LINK module="TRUC" name="ttttt" Indent="0" />
> <LINK module="TRUC" name="uuuu" Indent="1" />
> <LINK module="TRUC" name="vvvv" Indent="1" />
> <LINK module="TRUC" name="wwww" Indent="1" />
> <LINK module="TRUC" name="xxxx" Indent="0" />
> <LINK module="TRUC" name="yyyy" Indent="1" />
> <LINK module="TRUC" name="zzzz" Indent="1" />
> ......
> </MENU>
>
> Je cherche à obtenir:
> tttt
> uuuu
> vvvvv
> wwww
> xxxx
> yyyy
> zzzz
> ....
>
> En xsl ???
Ici, le plus simple est l'astuce suivante:
<xsl:value-of select="substring(' ', 1, 3 *
@Indent)"/>
(si vos tabulations font 3 caractères).
Cordialement,
Eric van der Vlist
> Merci d'avance de votre aide ...
>
> Nathalie
>
--
Pour y voir plus clair dans la nebuleuse XML...
http://dyomedea.com/formation/
------------------------------------------------------------------------
Eric van der Vlist http://xmlfr.org http://dyomedea.com
http://xsltunit.org http://4xt.org http://examplotron.org
------------------------------------------------------------------------
--
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:06 UTC
webmaster@xmlfr.org
|