[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[Fwd: Re: [lepido-dev] Auto Generating forms from XSD]
|
Max, I forwarded your message to lepido-dev, where the discussion happens.
-------- Original Message --------
Subject: Re: [lepido-dev] Auto Generating forms from XSD
Date: Mon, 26 Sep 2005 15:02:04 +0200
From: Max Pfingsthorn <m.pfingsthorn@xxxxxxxx>
To: Sylvain Wallez <sylvain@xxxxxxxxxx>
CC: Arje Cahn <a.cahn@xxxxxxxx>
Hi!
Sorry to answer this late, but I overlooked the email in my mailbox. Could you use m.pfingsthorn@xxxxxxxx in the future? I check that one more often and more carefully. ;)
So, to the core... We have a thing which transforms XSD plus some extra information (everything you can't express in a schema without using xs:annotation, we call it "business logic") to a full form definition/binding. A template is written seperately with a few extra helpers (i.e. you don't have to write down repeaters and such, only layouts per element). Since we wanted a XML-centric xml editor in cforms, we reference the widgets with xpaths. I also wrote a flowscript function to navigate the widget tree in an xpath-like fashion (a bit hard since widget id's are autogenerated from xpaths), so event handlers are also within the xml context.
However, there are many things which can be improved (as always). Right now, its a bunch of big monster XSLs, but I would like it to become another way to define cforms, i.e. implement it in java as another builder heirarchy, or at least a proper transformer/generator to output cforms xml, which would make things much easier. And it doesn't cater at all to CRUD. CRUD is storage dependent, though... so it's not really in the scope of cforms.
It would be cool though to dynamically generate flowscript(crud) and forms from mysql tables, possibly even beans? (for JDO), and get a bit of the edge back from ruby on rails ;) should be rather easy with a custom "scaffold" generator, to put it into RoR terms.
Well.. thats how far we are. Not perfect, but it is already in use with at least one of our cms deployments, so it works, and it can generate forms fancy enough for end users (alternating row css classes, etc). Would be nice to make it "right" though... I'm such a perfectionist... ;)
Bye!
max
On 9/18/05, Sylvain Wallez <sylvain@xxxxxxxxxx> wrote:
Ross Gardler wrote:
> I don't like work and I find I'm doing an increasing amount of work in
> cocoon forms right now so...
>
> I'd like to build a system that will do the following:
>
> - create form models, templates and bindings from XSD definitions
> - create the necessary CRUD flow scripts
> - build the webapp
>
> There is more information about the kind of solution I want to build
> recently added to the Cocoon wiki [1]
>
> I'm pretty sure this is in the scope of the Lepido project. I'm failry
> new to forms, but think I've grapsed the basics and can move forward
> with this if folk here are willing to give me oversight. Shall I just
> get on with it and send in patches?
Please do. Wizards to quickly lay out the basics of an application are
definitely in the scope of Lepido, and we'll have several of them
targeting the repetitive tasks and frequent application patterns that
people encounter when writing applications.
> First stage would be to create a wizard to build a framework
> application to do the above. Again, there is one on the Cocoon wiki
> [2] - should I contact the author regarding donating it to Lepido.
E-Crud looks promising, although I don't know what format the initial
model uses (I only had a quick look though). Also, it's GPL'ed.
The schema2forms was written by people from Hippo. Arje Cahn and Max
Pfingsthorn told me at ApacheCon that they've been working on something
more advanced that they plan to donate to Cocoon.
It's time to ping them about this :-) Arje, Max, what about this stuff?
> [1]
> http://wiki.apache.org/cocoon/DesignPattern/ECrud?highlight=%28designpattern%29
>
>
> [2]http://wiki.apache.org/cocoon/Schema2CocoonForms
Sylvain
--
Sylvain Wallez Anyware Technologies
http://people.apache.org/~sylvain http://www.anyware-tech.com
Apache Software Foundation Member Research & Technology Director