I'm writing to this list to ask for the creation of a new module in commons scratchpad called "morphos".
The scope is to make a simple to use package for file format transformations. Currently we will concentrate on XML. Committers needing access would be: [EMAIL PROTECTED] (POI,Cocoon,Forrest) [EMAIL PROTECTED] (POI) [EMAIL PROTECTED] (POI) [EMAIL PROTECTED] (Cocoon) [EMAIL PROTECTED] (Commons et all) Here is a draft proposal of what we intend to do. --------------------------------------------- MORPHOS DRAFT PROPOSAL --------------------------------------------- This is a proposal on what can be done with the Cocoon POI XML classes, and expand the poject to have a highly focused but more wide-encompassing scope. Here are the needs. ------------------- Low overhead [ POI Dev Community ] ------------------- The XML POI code has already had an impact on the work on POI, Cocoon and Lucene and will undoubtably pull some impact on POI but this seems to me to be the lowest. POI needs to remain tightly focused in thismoment to thrive. ------------------- high visibility [ POI Dev Community , users ] ------------------- High visibility on the xml part will undoubtly increase visibility of the POI project. ------------------- minimal hassle [ users ] ------------------- Minimal hassle for configuring POI in other projects, as Cocoon.If its a pain to install and configure, I won't use it, let alone anyone else. ------------------- growth opportunity [ developers ] ------------------- We need to make a community round it, and it should be easy to get in, and interesting enough to get to know about it. ------------------- generic xml<->file [ users, other projects ] ------------------- The main concern is transformations of binary formats to/from XML (i.e. generators and serializers), but could also include XML to XML (i.e. transformers). This could be a great bonus for users the now are limited to JAXP stuff, and for projects like Cocoon that wouldn't need to keep so many other projects inside just for this step. --------------------------------------------------------------- PROPOSAL: MORPHOS --------------------------------------------------------------- For this I propose the creation of a project called Morphos with the scope of transforming file formats. These code units to transform from-to binary-xml format would be called XMorphers. The activities related to this main concern include : - developing and hosting code, preferably based on standard SAX/DOM interface. Some Avalon/Cocoon-aware components can also be accepted : this will promote Avalon & Cocoon as the framework of choice, but we must be careful about avoiding dependencies where it is possible so that XMorphers can be used in other environments. - developing and promoting general-purpose frameworks for writing XMorphers. This includes the ElementProcessor stuff, but also some other tools like the Chaperon parser. - manage a directory of available XMorphers, be they hosted by Morphos or not (something like a dedicated equivalent to www.xmlsoftware.com) - manage a directory of XMorpher-aware frameworks, i.e. tools where one can plug XMorphers. We should provide here a compatibility matrix. Not to say that Cocoon _must_ be the most compatible of all frameworks ;) -------------------------------- ROADMAP - Approved -------------------------------- Reviewed by: [X]Scott [X]Nicola Ken [X]Sylvain [X]Marc (lazy vote) [X]Andy This roadmap has been approved. Project: Morphos (akin to xerces, xalan, ...) 1. [Nicola KEn] Create a commons-sandbox repository named morphos Committers will be: Andy, Marc, Sylvain, Scott and I. 2. [Nicola Ken] Install there the project template using Centipede (http://www.krysalis.org/) 3. [Andy] Copy ElementProcessor in morphos, refactoring the code in package org.apache.commons.[todecide].components.elementprocessor This is the generic elementprocessor framework without any POI dependency. 4. [Nicola Ken] Add morphos to Gump. 5. [Sylvain&Scott All] Propose and discuss briefly about the XM (XMorph) interfaces that will be our contract as a project. Basically an extension to the JAXP ones. Remember Avalon's role in all this. 6. [Marc&Andy] Once the XMorph interfaces are there, move the poi elementprocessor implementation in morphos and implement the XMorph interfaces for it. In the future it is auspicable that the originating projects host implementations if it suits them, but for now we need the meat here. POI can move them to morphos for a bootstrap, and take control back after the 2.0 release, or when POI is ready/has time for it. 7. [All] Decide the packaging of each XMorph Component, and the "installation", so that the XM manager becomes aware of their presence automagically. Check that it works well with Cocoon too, and without compulsory static config. Use Avalon. 8. [Sylvain] Remove elementprocessor from Cocoon and use morphos jar instead; rewrite the Serializer to use XMorph stuff. In this way Cocoon can Serialize anything that XMorph has to give, by just specifying the XMorph to use as a parameter to the XMorphGenerator, XMorphTransformer, XMorphSerializer. Keep stupid people like Andy in mind ;-P 9. [Sylvain&Nicola Ken et all] Do the XMorph move for other projects Cocoon uses. Examples are FOP & Batik. 10. [All] Drink (virtual) Champagne and beer once all this is done ;) -- Nicola Ken Barozzi [EMAIL PROTECTED] - verba volant, scripta manent - (discussions get forgotten, just code remains) --------------------------------------------------------------------- -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>