On Wednesday 02 April 2003 09:19 pm, S Woodside wrote:
> Is that because you want to do something like x-mixed-replace or
> "server push" ?
>
> I don't think XSLT is capable of doing that. XSLT requires the entire
> input tree to do it's magic, so that means that the data source must
> complete the feed to the XSLT program before it can start. There's
> other ways to transform XML (e.g. SAX) that maybe could do what you
> want but as far as I know they're not as easy to work with as XSLT (and
> I don't think supported by axkit either).
>
SAX is quite well supported by AxKit actually. check out XML::SAX::Machines 
and the AxAddSaxMachine directive. I suspect you can do what you want  via a 
SAX-only pipeline, but it might take a bit of brain-surgery to make sure 
things come out exactly right. Maybe the way to do it would be to have a 
provider that shoves chunks of XML into a SAX pipeline as data becomes 
available and use SAX just to tweak it to whatever format you want. Its not 
quite as nice as having XSLT, but you can do a fair amount with SAX and with 
some real cleverness you can even generate small bits of DOM tree, apply an 
XSLT to it with perl code, and spit that out as one 'block' of your output.

> If you can change the data source, that's probably a better way to
> approach the problem. At a minimum have it send the data in pieces,
> where each piece is valid XML, and maybe buffer the pieces for the next
> page view (like with a "next" button) and reapply the XSLT to the new
> piece.
>
> Does that help?
>
> simon
>
> On Wednesday, April 2, 2003, at 07:54  PM, Derek P Smith wrote:
> > Hi All,
> >
> > I have just started using AxKit, and have managed to port some of my
> > existing
> > CGI's to use XML/XSL, I'm still very much a beginner - but I think
> > that I'm
> > making progress!
> >
> > Unfortunately some of my data sources take considerable time to
> > present their
> > data, a situation which I had dealt with previously by using
> > non-parsed headers
> > in my CGI's.  This allowed me to present the data as it arrived, every
> > 3-4
> > seconds, rather than waiting 20-30 seconds and displaying the whole
> > page.
> >
> > I need to know whether it is possible to flush the output at the end
> > of a
> > <xsl:template ...> section, or whether there is another means whereby
> > I can get
> > this type of output.
> >
> > The following is a rough idea of the type of layout I'm using in my
> > .xsl file -
> > I would greatly appreciate any hints, or clues on this.
> >
> > Many thanks,
> >
> > Derek Smith
> >
> >
> > <?xml version="1.0"?>
> > <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
> > version="1.0">
> > <xsl:output method="html" />
> > <xsl:template match="/">
> >
> > <html>
> >   <head>
> >   </head>
> >
> >   <body bgcolor="#FFFFFF">
> >
> >     <xsl:apply-templates select="/Data/Desc" />
> >
> >     <xsl:apply-templates select="/Data/DLine" />
> >
> >   </body>
> > </html>
> >
> > </xsl:template>
> >
> > <xsl:template match="Desc">
> >    ...code
> > </xsl:template>
> >
> > <xsl:template match="DLine">
> >    ...code
> > </xsl:template>
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
>
> --
>       anti-spam: do not post this address publicly
> www.simonwoodside.com -- 99% Devil, 1% Angel
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]

-- 
Tod Harter
Giant Electronic Brain
http://www.giantelectronicbrain.com

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

Reply via email to