Eric van der Vlist wrote:
> Au passage, il faut noter que XPL a une vocation généraliste et
> cherche à pouvoir être utilisé en dehors du cadre des applications
> Web qui ne renvoient qu'un seul flux à leurs clients HTTP.
Correct.
Un peu sans rapport avec la question des sorties multiples, j'essaie
de trouver une exemple qui illustre les differences entre XPL et les
pipelines de Cocoon. Supposons que je veuille l'architecture suivante
(dites-moi si ca n'a aucun sens !) :
o une transformation XSLT
o puis deux transformations XSLT en "parallele" qui s'appliquent la
sortie de la premiere transformation
o une aggregation du resultat de ces deux transformaions pour generer
le document final
En XPL :
<p:config>
<p:processor name="oxf:xslt">
<p:input name="data" href="/my-input-file.xml"/>
<p:input name="config" href="/my-stylesheet1.xsl"/>
<p:output name="data" id="transform-output-1"/>
</p:processor>
<p:processor name="oxf:xslt">
<p:input name="data" href="#transform-output-1"/>
<p:input name="config" href="/my-stylesheet2.xsl"/>
<p:output name="data" id="transform-output-2"/>
</p:processor>
<p:processor name="oxf:xslt">
<!-- Note the second reference to transform-output-1 -->
<p:input name="data" href="#transform-output-1"/>
<p:input name="config" href="/my-stylesheet3.xsl"/>
<p:output name="data" id="transform-output-3"/>
</p:processor>
<p:processor name="oxf:file-serializer">
<!-- Note the built-in facility for aggregation -->
<p:input name="data" href="aggregate('root', #transform-output-2,
#transform-output-3)"/>
<p:input name="config">
<config>
<!-- Inline serializer configuration if needed -->
</config>
</p:input >
</p:processor>
</p:config>
C'est aussi simple que ceci avec XPL. Je pense que c'est beaucoup plus
difficile a faire avec Cocoon.
> Le tuyau n'est qu'une métaphore... il ne faut pas nécessairement s'y
> limiter, toute métaphore a ses limites.
D'autres systemes (comme le defunt XPipe) partent du principe de la
"chaine de montage" ou des pipes Unix : une entree, une sortie. C'est
une approche comme une autre, mais elle a ses limitations. Les
pipelines de Cocoon sont un peu entre deux.
-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 Sun Sep 26 04:30:18 2004