Hi guys, Not sure if we have a zip-archive generator already http://cocoon.apache.org/2.1/userdocs/ziparchive-serializer.html
but it would be very cool to have one. Let me explain the use case: <!-- {1}: a URI pointing to a zip containing XML documents --> <map:match pattern="processzip/**"> <map:generate src="{1}" type="zip"/> <map:transform src="processfiles.xslt"/> Now a lot of options - write results to disk - just serialize result - zip transformed files again ... </map:match> So what should this ziparchive generator do? It should let us peak into the ziparchive and return URI's for all entries <zip:archive xmlns:zip="http://apache.org/cocoon/zip-archive/1.0"> <zip:entry name="jar:file:/C:/data/productinformation.zip!/products/PH3330L.xml"/> ... <zip:entry name="jar:file:/C:/data/ productinformation.zip!/packages/SOT669.xml"/> ... </zip:archive> Or <zip:archive xmlns:zip="http://apache.org/cocoon/zip-archive/1.0"> <zip:entry name="jar:http://www.mydomain.com/data/productinformation.zip!/products/PH3330L.xml"/> ... <zip:entry name="jar:http://www.mydomain.com/data/productinformation.zip!/packages/SOT669.xml "/> ... </zip:archive> So if you add a transformer in that pipeline you can use the XSLT document function to fetch the documents and process them individually. I'm only not sure about how to implement this efficiently. I don't want to make requests in case of a HTTP URI: - 1 used by the ziparchive-generator to produce the XML above - 1 request per invocation of the document function So maybe caching can resolve this or are there better options? Robby