Well, whilst Cocoon provides a URIResolver, that will only be invoked at runtime. And the whole point of caching is to prevent the runtime stage. Given the contents of a document() function can be dynamic, i.e. could change between requests, there is no way for Cocoon to know which documents are actually going to be referenced, and thus need to be cached.

Maybe a workaround might be to provide a list of documents to the TraxTransformer from the sitemap, purely for caching:
<map:transform type="xslt" src="stylesheet-using-document-function.xsl">
  <map:parameter name="referenced-documents"
                 value="xml/my-file{1}.xml xml/my-other-file{2}.xml"/>
</map:transform>

But then you get into hassles about where the filename is relative to, as here it is referenced as a string, not as a source.

So, it really isn't that straightforward :-(

Ah, that makes sense and nope, it isn't. I guess that is why include transformers are adviced over the document() function.

Would using a non-caching pipe 'help' in this case?

Cheers,
Geert

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

Reply via email to