Re: [Zope] DTML reformulated as XML
It has been great following the discussion so far. I love Zope's architecture and I'm glad what I consider one of its weakest links is getting some attention. Since people seem to be open to considering some radical ideas, I thought I would throw my own into the mix. I have a basic problem with all of these in-line extensions. Be it PHP,ASP,JSP,Cold Fusion or DHTML, I think there is a fundamental problem with mixing layout with the generation of active/dynamic content. Most layout and graphic artist folks are simply not programmers. I believe that a user should be able to use any HTML editor to produce a basic mockup of the screen they want. The development environment (read Zope) should then provide a way to tie "active" behaviors to a pages elements. In this way you could tie a date validation procedure to a input box element. You could tie a table generation procuedure to table element and a SQL Method. You could tie multiple behaviors to the same element. This provides much greater separation of layout and coding. Using this technique you can have a few programmers developing "active" behaviors for users. Users can then use their favorite editor to layout their pages and then tie these behaviors to their elements separately. The assignment of behaviors to HTML elements would be outside of the HTML document. I realize that I'm doing a lot of handwaving here. I have a bit more detail I can provide, but I don't want to overwhelm people. If you have ever used Elemental Software's Drumbeat 2000 product you get a little of the flavor of what I'm looking for from a user perspective. If you have looked at the XMLC product that the Enhydra project has incorporated (www.enhydra.org) It provides some clues as to how it might be implemented. Basically the XMLC is a HTML compiler that compiles HTML/XML to Java Document Object Model classes that can then be manipulated dynamically to add active content. Does this resonate with anyone :-). Thanks for listening. If people would like more details, just ask. David Jacobs djacobs@mitre.org Pacific Operations ps. I get the daily digest of the zope mailing list. If you want a faster response please make sure to include my direct email address (djacobs@mitre.org)
On Tue, 15 Jun 1999, Jacobs,David B. wrote:
architecture and I'm glad what I consider one of its weakest links is getting some attention.
Agreed it is the weakest link
If you have looked at the XMLC product that the Enhydra project has incorporated (www.enhydra.org) It provides some clues as to how it might be implemented. Basically the XMLC is a HTML compiler that compiles HTML/XML to Java Document Object Model classes that can then be manipulated dynamically to add active content.
But Zope already does that and more but in reverse ... ie the object model of Zope can be considered/used as a Document Object Model. You build you hierarchy of objects and then you use DTML to produce the output, either in HTML, XML or whatever. The reverse is only possible if all the info is accessible in the document ie full blown XMl, but do we really want to write xml for web publishing right now? In any case what you are asking is not that difficult. I have already build an external method in the past that it would take an XML doc parse it and create a hierarchy of Folders/DTMl Documents with appropriate properties. Then you can manibulate the DOM through the Web using Zope and output it back in HTMl or XML. Regards Pavlos
-----Original Message----- From: Pavlos Christoforou [mailto:pavlos@gaaros.msrc.sunysb.edu] Sent: Tuesday, June 15, 1999 9:05 AM
If you have looked at the XMLC product that the Enhydra project has incorporated (www.enhydra.org) It provides some clues as to how it might be implemented. Basically the XMLC is a HTML compiler that compiles HTML/XML to Java Document Object Model classes that can then be manipulated dynamically to add active content.
But Zope already does that and more but in reverse ... ie the object model of Zope can be considered/used as a Document Object Model. You build you hierarchy of objects and then you use DTML to produce the output, either in HTML, XML or whatever. The reverse is only possible if all the info is accessible in the document ie full blown XMl, but do we really want to write xml for web publishing right now? In any case what you are asking is not that difficult. I have already build an external method in the past that it would take an XML doc parse it and create a hierarchy of Folders/DTMl Documents with appropriate properties. Then you can manibulate the DOM through the Web using Zope and output it back in HTMl or XML.
I agree, I see referring to compiling XML into an DOM was a little bit of a red herring. The main thrust I wanted to get across was the removal of coding from the DTML. The person writing an HTML page should not have to understand how to write loops and if/then statements. By forcing all dynamic behaviors to be coded separately we also would greatly encourage the reuse of those dynamic behaviors. The trick then becomes coming up with a user friendly interface for users to tie these behaviors to their respective object elements and then to have zope bring all the pieces together when it needs to generate the actual HTML page. Cheers, David
By forcing all dynamic behaviors to be coded separately we also would greatly encourage the reuse of those dynamic behaviors. The trick then becomes coming up with a user friendly interface for users to tie these behaviors to their respective object elements and then to have zope bring all the pieces together when it needs to generate the actual HTML page.
I'm new to this list and to Zope, but not new to these concepts. I suggest looking at http://www.w3.org/TR/NOTE-AS for Netscape's approach to seperating logic from content. Might an analogous approach could be made to work with Zope? Also, some people are beating around the syntax of how to embed python code (if embedding is what you want to do)... why not use XML processing instructions? i.e. <?zope ... ?> or <?python ... ?> Someday we'll all be using XML editors and this lets us have comments <!-- --> be formatted differently from python code. -- Andrew Andrew Bunner President, Mass Quantities, Inc. bunner@massquantities.com Professional Supplements for the Perfect Physique http://www.massquantities.com
participants (4)
-
Andrew Bunner -
David Jacobs -
Jacobs,David B. -
Pavlos Christoforou