Steven Punte wrote:
> In the cocoon environment, XSP provides a great
> way of address problems that don't fit into 
> the paradigm of an existing generator.
> 
> However, XSP can only be used at the first
> step in a pipeline.
> 
> I find myself writing lots of custom transformers
> to address issues that don't fit into any 
> of the existing standard generators.
> 
> Would there be a way to write an XSP Transformer?
> How about we call this "XST" for now.  Some of
> it's characteristics would be:

I had started myself to write such a Transformer, but then I just didn't 
have enough energy and motivation to continue.
If you want, I can give you some sugestions:

> o  A conventional transformer class would exits.

XSTTransformer, from which all XSTTransformers extend.

> o  In a pipeline, one would specify the above 
>      transformer and a particular xst file.

Ok.

> o  The xst file would be compile automatically
>      when needed.

Ok. There is a system in Cocoon that can make you do this, look in the 
sourcecode.

> o  A basic internal design would simply allow
>      hooks to the various SAX events (i.e. start and
>      end of element and document).
 > o  Perhaps a more a more interesting internal
 >      model would come with a stack to facilitate
 >      more complex processing.

I wrote this thing but it was complicated to debug, since there were no 
tools at that time to make code easier.
If I would do it now, I would look at Jakarta Commons Digester, which 
has an XML descriptor that specifies what to do for certain conditions 
and can be used to do just that.

> o  Output events could be nicely written as in xsp
>      like "<yada><xst:expr>string</xst:expr></yada>"

Each output could simply be a call to am XSP Generator that does not 
close the Document.

-- 
Nicola Ken Barozzi                   [EMAIL PROTECTED]
             - verba volant, scripta manent -
    (discussions get forgotten, just code remains)
---------------------------------------------------------------------


---------------------------------------------------------------------
Please check that your question  has not already been answered in the
FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>

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

Reply via email to