You seem to be quite on track: 

Just remember the following simple guidelines:

1) If in a caching pipeline, cocoon tries to cache each pipeline match (thus 
the map:part in an aggregator or a src="cocoon:/..." it will try to cache the 
seperate pipeline matches, as well as the total)
2) Cocoon can ONLY cache a pipeline, if every single component is cacheable. 

So, in your case, 1) will be cached, and 2) wont be cached.

So the first match is on 2), cocoon cant find a cached response because not 
every part of the pipeline can be cached. It will re-generate the entire 
pipeline, beginning with the cocoon:/siteData. But for this cocoon:/siteData, 
it will find a cached pipeline result. 

Hope this is clear,

Regards Ard 


> Hello:
> 
> I am returning to cocoon after a long hiatus.  My, how it has 
> grown! :-)
> 
> I would like to generate a single HTML webpage from multiple 
> XML sources. 
> 
> No problem-- use an aggregator, right?  The issue with that 
> is some of 
> the sources change far less frequently than others.
> 
> I have data to construct the header and footer that won't 
> change at all 
> throughout the site. 
> 
> On the other end of the spectrum, I have data that is specific to a 
> particular page and that changes dynamically.
> 
> I would like to cache the "per-site" data separately from the 
> "per-major 
> division" data separately from the "per-page" data.
> 
> I believe the correct way to do this is via sub-pipelines, 
> and XInclude, 
> right?
> 
> I can use a separate transformer for each layer and they will 
> get cached 
> properly, I think.  Something like:
> 
> <!-- 1) produce an HTML fragment that does not change, and 
> can therefore 
> be cached -->
> <map:match pattern="siteData">
>    <map:generate src="content/headerAndFooterInfo.xml/>
>     <map:transform src="stylesheets/headerFooter2html.xsl"/>
>    <map:serialize type="xhtml"/>
> </map:match>
> 
> <!-- 2) fill in said HTML fragment with dynamic data that changes 
> per-page -->
> <map:match pattern="hello.html">
>    <map:generate src="cocoon:/siteData"/>
>    <map:transform src="stylesheets/helloPage.xsl">
>       <map:parameter name="dynamic-data" 
> value="some-uri-to-xinclude"/>
>     </map:transform>
>    <map:serialize type="xhtml"/>
> </map>
> 
> Does the above look right?  Can anyone point me to a document 
> or example 
> code that features multi-stage/multi-part caching?
> I fear I may be way off-base.  Thanks in advance!
> 
> --Craeg
> 

-- 

Hippo
Oosteinde 11
1017WT Amsterdam
The Netherlands
Tel  +31 (0)20 5224466
-------------------------------------------------------------
[EMAIL PROTECTED] / http://www.hippo.nl
-------------------------------------------------------------- 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to