Re: Relationship between XSLT and ASP (was Re: asp problem)

Subject: Re: Relationship between XSLT and ASP (was Re: asp problem)
From: Paul Tchistopolskii <paul@xxxxxxx>
Date: Wed, 01 Mar 2000 18:26:22 -0800

> > 4. It lacks streaming, that means every incoming stream of XML events
> > should get accumulated into DOM-alike structure before starting
> > processing, that also forces memory accolactions / deallocations again
> > and that means "you'l better to filter / sort / group on the level of
> > SQL server, but not on the level of XSLT"
> Maybe I'm entirely mistaken, but isn't the premise behind Cocoon 2 (for
> example) that you can use streaming-ish things like SAX and not have to
> build document trees for your source?
> I understand that you would have to build trees for your result output,
> due to aggregating functions such as <xsl:for-each> and so forth, but you
> should just be able to accumulate the output result as the input "stream"
> comes in.

Actualy, it is not xsl:for-each that kills streaming (or better to say 
not every xsl:for-each kills streaming), because  'pull'  xsl:for-each 
could be transformed into appropriate 'push' apply-templates with 
modes. Because 'push' with modes is OK for streaming that 
means most of  xsl:for-each could be also OK. 'Similiar'  transformations 
were done behind some implementations of efficient joins 
( in SQL servers), I think.

The look-ahead pull transformation  - that's what kills streaming 
( ok - it could be masqueraded with blocking threads, but that's 
another story ).


1. Either Cocoon 2 does not support look-ahead pull  ( that means it is 
not  XSLT) or 

2. Cocoon is cool and works around look-ahead pulls with threads
( and also transforms pull constructions into push invariants on  the fly ).

Can't belive in (2) but if they realy did it - I apologize 10 times, will 
download Cocoon immediately, will be happy to contribute to their 
code e t.c. 
> The only thing I might really be confused by is whether there is an
> intended meaning to the word "stream" which I'm missing.

I thing we both understand the word 'streaming' in the same way.
'being able to process the document  without building the entire 
document tree'. 

 XSL-List info and archive:

Current Thread