cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stuart Roebuck ...@adolos.com>
Subject Re: [C2] Merging pipelines into a new pipeline
Date Wed, 20 Sep 2000 09:18:56 GMT
On Wednesday, September 20, 2000, at 12:03 AM, Stefano Mazzocchi wrote:

> Stuart Roebuck wrote:
> >
> > Can anyone point me in the right direction with this little problem.  I 
> > suspect there is an elegant solution in Cocoon 2, but I haven't found it in 
> > my trawling of the documentation and draft sitemap documents.
> >
> > I basically want to merge the output (serialized) of two or more pipelines 
> > as the input (generator) of another.
> >
> > Currently I do it by creating a dummy.xml file as the generator for a
> > pipeline containing an XSLT translator which has code of the form:
> >
> > <xsl:template match="dummy">
> >     <new-group>
> >         <xsl:apply-templates
> > select="document('http://localhost:8080/context/pipe1.xml')/group/*" /> 
> >         <xsl:apply-templates
> > select="document('http://localhost:8080/context/pipe2.xml')/group/*" /> 
> >     </new-group>
> > </xsl:template>
> >
> > This works, but it's not exactly elegant / scaleable / etc.
> >
> > If I could do something like:
> >
> >    <xsl:apply-templates select="document('cocoon://pipe1.xml')/group/*" />

> >    <xsl:apply-templates select="document('cocoon://pipe2.xml')/group/*" />

>
> Hmmmm, just stroke me, what about simply
>
>   <xsl:apply-templates select="document('pipe1.xml')/group/*" />
>
> then
>
>   <xsl:apply-templates select="document('file:///pipe1.xml')/group/*" /> 
>
> if you wanted a file on the file system?
>
> That way we don't have to extend URL and makes perfect sense to consider 
> the cocoon pipeline the current context.
>
> What do you think?

I think this still clashes with the model/view separation.  My  
understanding is that the assumption in all XSLT and XSP is that the local  
file system is the current context (by default) there is no need to know  
what is in the sitemap to do processing.  To make the sitemap the current  
context would seem to imply that the view and model are not intended to be  
separate.

Purely from a users viewpoint (ie. completely ignoring the coding  
implications) I think I would currently favour something like:

<xsl:apply-templates select="document('resource:resourcename')/group/*" />

...to access a (probably non-serialised) stream directly from a 'resource'  
in the sitemap, and:

<xsl:apply-templates select="document('sitemap:externalfilename.xml')/group/*" />

...to access the (probably serialised) stream from a pipeline in the sitemap.


Stuart.

> --
> Stefano Mazzocchi      One must still have chaos in oneself to be
>                           able to give birth to a dancing star.
> <stefano@apache.org>                             Friedrich Nietzsche
> --------------------------------------------------------------------
>  Missed us in Orlando? Make it up with ApacheCON Europe in London!
> ------------------------- http://ApacheCon.Com ---------------------
>
>

Mime
View raw message