On Thu, Oct 02, 2003 at 07:09:46PM +0100, Michael Chamberlain wrote: > > On Thursday, October 2, 2003, at 03:32 pm, Robin Berjon wrote: > > >J?rg Walter wrote: > >>My question: how can AxKit accomplish (something similar to) that? > >>My only idea so far would be to use a classic sandwich-template > >>system and integrate AxKit through Apache::Filter. Which would mostly > >>defy the reason to use AxKit. Send-Ahead is only useful for > >>noncacheable resources. > >>Please tell me your ideas, they may be a bit academic, hard to > >>implement, or not possible right now, still I'd like to hear them. > > > >Well the problem here would be that you can't know what headers to > >send before the last transformation (since it might affect at least > >the mime type), and since the last transform returns its content as a > >whole (as opposed to progressively outputting it) I'm not sure how > >much you'd gain by sending the headers a little bit earlier than we do > >now. Or have I misunderstood the issue? > > > > Thinking about it in relation to my pipeline stuff, it might be > possible if we insist it's the last > thing in the transformation list. Since it gets called in reverse it's > the first thing called.
This is one possibility I have thought about, but it feels a lot like ye olde sandwich templates would be resurrected for the last step. Feel free to (verbally) prove me wrong, however. One idea I had was to use a pure SAX pipeline. Online discussions have resulted in the idea to provide a get_sax method in addition to get_dom and get_strref. get_sax would be a little bit different, as it wouldn't really "get" anything, but pass the own SAX hander to theupstream SAX handler, so that both modules can connect as a plain old SAX pipeline. That pipeline is easily capable of send-ahead, since it processes one element at a time. If we get a decent language module which exploits this behaviour (in contrast to "collect all events, build a DOM, ..."), that would be a feasible way to do it. I don't recall it off the top of my head, but aren't there SAX transformation modules that are used much like a stripped-down XSLT? -- CU Joerg PGP Public Key at http://ich.bin.kein.hoschi.de/~trouble/public_key.asc PGP Key fingerprint = D34F 57C4 99D8 8F16 E16E 7779 CDDC 41A4 4C48 6F94