Eric van der Vlist wrote:
> Oui, c'est apparu clairement lors de mes essais : lorsque j'utilise
> "cocoon:" l'exécution de ce pipe est faite dans un contexte "neuf"
> alors que lorsque j'exécute un pipe Presentation Server toutes les
> opérations se réalisent dans le même contexte.
> Comme le dit Erik, c'est une différence sémantique. Dans le cas que
> je cite, cela m'aide mais il y a d'autres cas où le fait d'exécuter
> un pipe dans un autre contexte pourrait être mieux adapté.
>
> Enfin, Erik précise bien que nous parlons "indépendamment de
> strategies de caching", mais il est évident que lorsqu'elles
> s'appliquent, elles réduise les différences de performances enter
> ces deux approches.
En plus de la performance, un probleme majeur avec l'execution
multiple de la premiere transformation est que sa sortie peut varier
entre les deux executions ! Cas facile a detecter et peut-etre meme
corriger (comment, je l'ignore) dans un pipeline aussi simple, mais si
le pipeline devient plus complexe, j'imagine que les deux problemes
peuvent devenir importants et rendre le pipeline d'autant plus
difficile a debugger. XPL garantit, dans un Tee, que le document XML
reste constant. C'est une semantique plus fonctionnelle (au sens
langage fonctionnel).
>>A mon sens, ces notions doivent être séparées. C'est le cas dans
>>Cocoon et c'est ce qui permet de prendre la sortie d'une URL
>>"cocoon:" pour en faire ce que bon nous semble.
Avec Presentation Server, on fait ce que bon nous semble avec la
sortie d'un pipeline. La difference est qu'une telle sortie n'est pas
accessible par un URL de type "cocoon:". A la place, on appelle ce
pipeline et on en connecte la sortie la ou il faut.
> C'est également visible dans mes derniers essais : le pipe "rss.xpl"
> utilisé pour renvoyer un résultat de test comme réponse HTTP ne peut
> pas être utilisé comme "sous-pipe" pour alimenter l'envoi de cette
> réponse en XHTML puisqu'il n'a pas de sortie. Il a donc fallu que je
> définisse un pipe avec sortie générant le résultat sous forme RSS et
> que j'utilise ce pipe avec sortie dans les pipes envoyant le
> résultat sous forme RSS et XHTML.
C'est la bonne approche : un pipeline qui genere le document RSS en
sortie. Avec Presentation Server, si je comprends bien, il faut une
page dans le Page Flow, un court pipeline qui serialise le RSS tel
quel, un pipeline qui serialise le XHTML (avec aussi une
transformation XSLT pour transformer le RSS en XHTML ?), et bien sur
le pipeline qui genere le RSS.
> Avec Cocoon, j'utilise le même pipe cocoon:rss en direct et pour
> conversion en XHTML.
Est-ce une different architecture ou un raccourci syntaxique ? Il me
semble que les memes etapes sont necessaires dans les deux cas.
-Erik
--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !
Liste de diffusion "dev@xmlfr.org" (http://xmlfr.org).
Cette liste est a votre disposition pour discuter en francais de
tout sujet technique lie au developpement du site XMLfr.
Pour resilier votre abonnement, envoyez un message contenant
la commande "unsubscribe" a dev-request@xmlfr.org
(mailto:dev-request@xmlfr.org?Subject=unsubscribe)
Received on Mon Sep 27 20:33:37 2004