Tony McDonald wrote:
Paul wrote: Here's one thing in DTML that would be awfully obscure in XML:
<a href="<!--#var BASE1-->">
That is, putting a tag inside an attribute. Chris Petrilli and Jim talked about this today, perhaps as as entity references.
That'd be ok for the Zope variables that take no arguments (BASEn, URLn etc.) ie map BASE1 to &BASE1; but what about Zope variables that take attributes, eg ZopeTime fmt=whatever (for example, you'd use this awful construct to create a URL that had subparts such as /990612/)
I think the option here is to allow "assignments" to entities earlier in the document. Or maybe not. Or maybe I'm in over my head -- at 5'4", that happens often. :^)
I'd love to do a straw vote from the "I hate SSI" crowd: is the above better?
No dis to Otto, but NIMHO. Too much typing. I'm from a PHP background where blocks of code exist in tandem with HTML. At first I had a real problem with DTML (still do, but that's another story :), but reading Paul and Chris' posts about separating code and data I realise that the DTML way is probably the best way to do it (as with so many other Zopey things). ps I don't hate SSI, and I don't have an alternative to the syntax Otto is describing - I should shut up now.
I wish everyone that gets turned off by DTML could be required to re-read this thread. It quickly becomes apparent that there are tough choices, and that if it was a simple change, we'd have done it. :^) At the end of the day, any change will have some drawbacks. Except for the one that Jim has already checked in: :^) http://www.zope.org/pipermail/zope-checkins/1999-June/000667.html
For instance, instead of saying <!--#var standard_html_header-->, which means insert a subdocument, why not use the XLink syntax from XML?
Would that not imply Zope parsing all elements in a page/object looking for attributes called xml:link? Isn't this a largeish overhead? It could also
Zope already does syntax parsing (i.e. compiling) when you add/edit a template (something the PHP folks are working on for PHP4). In this case, using a different tag than var means Zope could have a shot at helping you -- when you click Edit, it could tell you that standrd_html_header doesn't exist, and you could fix the typo.
mean people writing <a xml:link="simple" href="standard_html_header" show="embed"/> instead of the above. Of course, if you get XLink stuff working in Zope, then presumably you get other interesting possibilities out too.
Now that's a different can of worms :^) Mozilla has xlink working but only for references, not for embedding.
rambling-ly yours,
Yep, that's what the weekend is for! --Paul