🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: fr.comp.text.xml
Article #8746

Re: variables globales dans une XSLT

#8746
From: Alain Ketterlin
Date: Thu, 19 Jul 2001 14:48
41 lines
2475 bytes
Guillaume BERTHOMMIER <berthomg@igbmc.u-strasbg.fr> writes:

> j'ai une variable globale a mettre dans mon document XSL.
> cette variable est issue d'une operation (substring...) d'une donnee
> contenue dans un de mes elements.
> 
> je veux faire un truc du style:
> <xsl:template name="blabla">
>     <xsl:variable name="coucou"><xsl:value-of etc..><xsl:variable>
> </xsl:template>

Du coup, elle n'est pas globale la variable, mais locale (strictement)
au template qui la definit.

(Au passage, autant utiliser l'attribut select de <xsl:variable>
plutot que celui de <xsl:value-of>.)

> et dans un autre template:
> ...
> <xsl:call-template name="blabla"/>
> <xsl:value-of select="substring($coucou,3)/>
> 
> mais voila, ca veut pas marcher.
> Avez-vous une solution a me proposer?

Non. Deux :

- passer la valeur en parametre de template en template (avec
  <xsl:param> et <xsl:with-param>). C'est le plus propre sinon la plus
  complexe dans certains cas.

- avoir une vraie variable globale, declaree au debut de la feuille. On
  peut utiliser un attribut select pour aller pecher la valeur : la
  rec dit : "At the top-level, the expression or template specifying
  the variable value is evaluated with the same context as that used
  to process the root node of the source document: the current node is
  the root node of the source document and the current node list is a
  list containing just the root node of the source document" (cf.
  http://www.w3.org/TR/xslt#top-level-variables)

-- Alain.
Technical Details
Message-ID: <wyelrdynya.fsf@polya.u-strasbg.fr>
Path: arc1-ca.pugleaf.net!archiver1.google.com!newsfeed.google.com!newsfeed.stanford.edu!news.tele.dk!195.25.12.36!oleane.net!oleane!ciril.fr!news.u-strasbg.fr!not-for-mail
References: <3B56FE95.A305000F@igbmc.u-strasbg.fr>

Show Full Headers
Complete Article Headers
X-Google-Language: FRENCH,ASCII-7-bit
X-Google-Thread: 114f60,2f455eaa09700550
X-Google-Attributes: gid114f60,public
X-Google-ArrivalTime: 2001-07-19 08:37:24 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!newsfeed.google.com!newsfeed.stanford.edu!news.tele.dk!195.25.12.36!oleane.net!oleane!ciril.fr!news.u-strasbg.fr!not-for-mail
From: Alain Ketterlin <alain@dpt-info.u-strasbg.fr>
Newsgroups: fr.comp.text.xml
Subject: Re: variables globales dans une XSLT
Date: 19 Jul 2001 16:48:29 +0200
Organization: CRC - Universite Louis Pasteur Strasbourg France
Lines: 41
Message-ID: <wyelrdynya.fsf@polya.u-strasbg.fr>
References: <3B56FE95.A305000F@igbmc.u-strasbg.fr>
NNTP-Posting-Host: polya.u-strasbg.fr
X-Trace: news.u-strasbg.fr 995561680 22797 130.79.44.199 (19 Jul 2001 16:54:40 GMT)
X-Complaints-To: usenet@u-strasbg.fr
NNTP-Posting-Date: 19 Jul 2001 16:54:40 GMT
X-Newsreader: Gnus v5.6.45/XEmacs 21.1 - "Capitol Reef"