cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Carsten Ziegeler" <>
Subject RE: AbstractSAXSource constructor
Date Fri, 26 Apr 2002 15:35:28 GMT
Michael Hartle wrote:
> Can you give some pointer on what the differences between "classical" 
> Sources and Avalon Excalibur Source objects are ?
Ok, first of course the package name :)

Seriously, the main difference is that the Cocoon Source object is
XMLizable, that means it can directly send SAX events.

The AE Source object is not XMLizable, which is more correct as a
protocol only describes the way of transport but not the format
of the data which is transfered. Therefore it provides a getMimeType()

Caching: The Cocoon Source object returns a last modified time
stamp which is very limiting. For example a source could have an
expires date or something like that.
The AE Source returns a validity object which is capable of all
these validity checkings. So the information used for validity
checking is provided by the source object and not maintained
by the client of the source as it is currently in Cocoon.

These are the main differences.

As we in Cocoonland are dealing a lot with XML, a Source implementation
can still implement the XMLizable Interface (from AE and not from Cocoon!)
to directly provide SAX events. The Cocoon SourceResolver (in the
environment package) has a new method toSAX() which gets a Source
object and tests it if it implements the XMLizable interface. 
If not the new AE XMLizer is used which is a component that can 
convert an input stream with a given mime-type to SAX events. This
component is configurable and extensible.


Open Source Group                        sunShine - b:Integrated
Carsten Ziegeler, S&N AG, Klingenderstrasse 5, D-33100 Paderborn                      mailto: 
Visit my new Weblog: 

To unsubscribe, e-mail:
For additional commands, email:

View raw message