🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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

Re: apply-templates et positionnement dans l'arborescence

#8744
From: Alain Ketterlin
Date: Thu, 19 Jul 2001 12:12
37 lines
2441 bytes
Guillaume BERTHOMMIER <berthomg@igbmc.u-strasbg.fr> writes:

[...]
> Pour cela , j'utilise des "xsl:apply-templates" et "xsl:call-template" ;
> mais le gros probleme est que je n'arrive pas a me positionner
> correctement dans l'arborescence:

Deux regles simples :

- <xsl:apply-templates> precise (avec select) les noeuds sur lesquels
  on agit (chacun d'eux devient le noeud contextuel pendant
  l'application du template correspondant)

- <xsl:call-template> ne change pas le noeud contextuel, c'est-a-dire
  qu'on ne se deplace pas dans l'arbre.

> les trucs du genre "<xsl:apply-templates select='//a//b//c'/> "

Tres classe. Mais un desastre de chez desastre en termes
d'efficacite. Il y a surement mieux a faire.

> j'aimerai bien savoir s'il vaut mieux utiliser "xsl:apply-templates" ou
> "xsl:call-template" dans mon cas, et si vous savez comment se
> positionner precisement dans l"arborescence a l"interieur meme d'un
> template (si c'est possible)

Impossible de repondre pour ton cas, les deux ont leur raisons d'etre.
En general, <xsl:apply-templates> va chercher d'autres noeuds, et
<xsl:call-template> sert a regrouper des fragments de resultats qu'on
retrouverait a l'identique dans plusieurs autres templates.

Quant a changer de noeud en cours de template, c'est impossible,
puisque le noeud contextuel doit exister pour que le template soit
invoque. Et il ne change pas. Pour cela, il faut passer par
<xsl:apply-templates>.

-- Alain.
Technical Details
Message-ID: <wyhew9yv5y.fsf@polya.u-strasbg.fr>
Path: arc1-ca.pugleaf.net!archiver1.google.com!newsfeed.google.com!newsfeed.stanford.edu!news.tele.dk!195.238.2.15!skynet.be!grolier!ciril.fr!news.u-strasbg.fr!not-for-mail
References: <3B56D66F.C7EC854D@igbmc.u-strasbg.fr>

Show Full Headers
Complete Article Headers
X-Google-Language: FRENCH,ASCII-7-bit
X-Google-Thread: 114f60,f93d3fd26b02e025
X-Google-Attributes: gid114f60,public
X-Google-ArrivalTime: 2001-07-19 06:01:36 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!newsfeed.google.com!newsfeed.stanford.edu!news.tele.dk!195.238.2.15!skynet.be!grolier!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: apply-templates et positionnement dans l'arborescence
Date: 19 Jul 2001 14:12:41 +0200
Organization: CRC - Universite Louis Pasteur Strasbourg France
Lines: 37
Message-ID: <wyhew9yv5y.fsf@polya.u-strasbg.fr>
References: <3B56D66F.C7EC854D@igbmc.u-strasbg.fr>
NNTP-Posting-Host: polya.u-strasbg.fr
X-Trace: news.u-strasbg.fr 995552331 22748 130.79.44.199 (19 Jul 2001 14:18:51 GMT)
X-Complaints-To: usenet@u-strasbg.fr
NNTP-Posting-Date: 19 Jul 2001 14:18:51 GMT
X-Newsreader: Gnus v5.6.45/XEmacs 21.1 - "Capitol Reef"