cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Joerg Heinicke <>
Subject Re: Concat dynamically assigned xslt
Date Mon, 25 Nov 2002 21:45:21 GMT
I would not create a huge, dynamically created XSLT. Cocoon offers you 
aggregation or CInclude/XInclude. So I would transform the output of the 
transformer for example to the following:

   <xi:include href="cocoon:/abstract1-first"/>
   <xi:include href="cocoon:/abstract5-fifth"/>

The generator would then give only the information how to get the 
content of the abstract and the name of the xsl. The sitemap would match 
on this:

<map:match pattern="abstract*-*">
   <map:generate src="content-abstract{1}"/>
   <map:transform src="stylesheets/{2}.xsl"/>
   <map:serialize type="xml"/>

So every abstract is transformed separately and aggregated at the end to 
a "big thing".

Your original abstract pipeline I would change to:

<map:match pattern="abstractpage_*.html">
   <map:generate src="getEveryMetaInfoFromDBAsXML.xsp"/>
   <map:transform src="transformers/convertMetaInfo2XInclude.xsl"/>
   <map:transform type="xinclude"/>
   <map:transform src="stylesheets/maybeSomePostProcessing.xsl"/>
   <map:serialize type="html"/>

So the whole processing is not a XSLT problem, but a solvable Cocoon 
problem. Is the propagated way an option? Or is your way already fixed?



Robert Sösemann wrote:
> I am not sure if this is a cocoon specific problem or solveable with XSL
> only. I have this problem.
> I am working on a CMS where non-programmers can feed articles to a db.
> Cocoon output those articles in different ways. The problematic view is the
> multi-article page. There abstracts of many different article types are
> displayed. As I want the system to be extensible - that means without one
> big pre-.made xslt - the user can write there own stylesheet for EVERY
> article. All they should have to do is save the xsl and write its path to
> the db.
> As I have this multi-article view I would need to dynmically merge all
> assigned xslt to one sytlesheet that could be a cocoon transformer in my
> pipeline:
> ....
> <map:match pattern="abstractpage_*.html">
>     <map:generate src="getEverythingFromDBAsXML.xsp"/>
>     ...? MAGIC COMPONENT ?
>     <map:transform src="dynamicallyGenerated.xsl"/>
> <map:serialize type="html"/>
> </map:match>
> ....
> ...
> <PAGE>
>     <ABSTRACT nr="1" styleMeWith="first.xsl">
>     ...
>     </ABSTRACT>
> ...
>     <ABSTRACT nr="5 styleMeWith="fifth.xsl
>     ...
>     </ABSTRACT>
> ..
> </PAGE>
> Can you imagine a solution to this problem. Maybe with meta-stylesheets?
> Thanks in advance!
> Rob

Please check that your question  has not already been answered in the
FAQ before posting.     <>

To unsubscribe, e-mail:     <>
For additional commands, e-mail:   <>

View raw message