Return-Path: Delivered-To: apmail-xml-cocoon-dev-archive@xml.apache.org Received: (qmail 70680 invoked by uid 500); 23 Jul 2001 12:55:37 -0000 Mailing-List: contact cocoon-dev-help@xml.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: list-post: Reply-To: cocoon-dev@xml.apache.org Delivered-To: mailing list cocoon-dev@xml.apache.org Received: (qmail 70668 invoked from network); 23 Jul 2001 12:55:37 -0000 Mime-Version: 1.0 X-Sender: media@pop3.demon.co.uk Message-Id: In-Reply-To: References: Date: Mon, 23 Jul 2001 13:58:43 +0100 To: cocoon-dev@xml.apache.org From: Jeremy Quinn Subject: RE: [RT] forms [long] Content-Type: text/plain; charset="us-ascii" X-Spam-Rating: h31.sny.collab.net 1.6.2 0/1000/N At 2:39 PM +0200 20/7/01, Torsten Curdt wrote: > >Thanks, took a while to find a way - but I'm still not satisfied as you >might see ;) too much java programming required for the forms a good reason to reuse existing TagLibs in this realm ;) > >> The problem I see is that people have developed different languages for >> different storage mediums, hence we have esql -> SQL DB, fp -> XML File, >> crudlet -> JavaBeans/JavaSpace, and many others. >> >> How do we provide a way to make a generic form handling and verification >> system that can easily deal with different storage? I still think this is an important issue, that any generic form-handling mechanism for Cocoon2 should be savvy with, not everybody uses databases!!! >> I am convinced XSP Actions would help. > >I was always voting for makeing the XSPEngine a component that can be >used not just for the generation of cocoon serverpages. I would have >used this engine to create some classes for my application via XSP >as well!! And of course it could be used easily to create XSP based >Actions! Just a different stylesheet and a different class name >convention - maybe a different output dir. > >Undreamed-of possibilities! I cannot judge at the moment how much work it would be to implement this, I do not know the codebase well enough. >> BTW. The other big problem I am wrestling with is the thorny issue of >> content-logic; where the content that is displayed is intricately tied to >> the condition of runtime and static parameters, often in our case up to >> four or five levels of nested if-then-else 'statements'. We find this >> content-logic to be in a different realm to the underlying business-logic >> of the Beans, it needs to be accessible to the Content Authors as they are >> the ones who understand the logic and the content at the display level. >> This does not map nicely into the Cocoon "cleanroom" model. > >I can have a slight idea but could you give an example what type of >cascading logic this would be? I will give you an idea of this by showing what our StyleSheets looked like, then what we are replacing them with (sorry, but this is VERY verbose, and will be horribly wrapped!): This is a snippet from our old approach, where we had to have one stylesheet per page (to contain content-selection logic)

See below for the full details of the offer you have made. You are able to retract or complete this offer, if the circumstances of this offer have changed or if you are satisfied that your line has been sufficiently covered.

To view the exchanges on this offer go to You.

All negotiations that have been bound will be upheld. Please see our FAQ section if you have queries regarding outstanding exchanges on your offer that may be affected by retracting or completing this offer.

Your offer has been retracted/completed or has expired. To view the exchanges on your offer go to You.

All negotiations that have been bound will be upheld.

You made this offer on

The Reinsured for this offer is cloaked, therefore you are able to pre-accept or counter this offer. Please click on the appropriate button presented at the bottom of this page; this will take you through to the next step of the process.

If you would like to decline this offer, then you need not take any action and simply click here to return to the Main Offers Board.

This cloaked offer has been retracted/completed or has expired. To view the exchanges on this offer go to You.

All negotiations that have been bound will be upheld.

In order to accept or counter this offer, please click on the appropriate button presented at the bottom of this page, which will take you through to the next step of the process.

If you would like to decline this offer, then you need not take any action and simply click here to return to the Main Offers Board.

This offer has been retracted/completed or has expired. To view the exchanges on this offer go to You.

All negotiations that have been bound will be upheld.

This offer was made on
This is the equivalent sample from our new approach. We embed both content-logic and content in one XSP Page. We use a stylesheet pass (select.xsl) that selects the bits of content we actually want to see depending on run-time parameters. The select namespace works thus: Uses the select:choose and select:match attributes At any level, the select:choose attribute in an element, filters it's child elements according to the value of their selech:match attribute. The TagLib handles looking up values for {varName} from the crudlet:var variables (not included) declarations (so the author does not have to write all of those xsp:attribute tags) If the child of an element acting as a chooser, has a value in it's matcher that equals, it is output If a child has no matcher, it is always output If there are no matches, child elements with a select:match="*" are output Any element may be both a matcher and a chooser We use as a "throwaway"

See below for the full details of the offer you have made. You are able to retract or complete this offer, if the circumstances of this offer have changed or if you are satisfied that your line has been sufficiently covered.

To view the exchanges on this offer go to You.

All negotiations that have been bound will be upheld. Please see our FAQ section if you have queries regarding outstanding exchanges on your offer that may be affected by retracting or completing this offer.

Your offer has been retracted/completed or has expired. To view the exchanges on your offer go to You.

All negotiations that have been bound will be upheld.

You made this offer on

The Reinsured for this offer is cloaked, therefore you are able to pre-accept or counter this offer. Please click on the appropriate button presented at the bottom of this page; this will take you through to the next step of the process.

If you would like to decline this offer, then you need not take any action and simply click here to return to the Main Offers Board.

This cloaked offer has been retracted/completed or has expired. To view the exchanges on this offer go to You.

All negotiations that have been bound will be upheld.

In order to accept or counter this offer, please click on the appropriate button presented at the bottom of this page, which will take you through to the next step of the process.

If you would like to decline this offer, then you need not take any action and simply click here to return to the Main Offers Board.

This offer has been retracted/completed or has expired. To view the exchanges on this offer go to You.

All negotiations that have been bound will be upheld.

This offer was made on

-- ___________________________________________________________________ Jeremy Quinn Karma Divers webSpace Design HyperMedia Research Centre --------------------------------------------------------------------- To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org For additional commands, email: cocoon-dev-help@xml.apache.org