[Zope] DTML reformulated as XML (was RE: [Zope] <% ... %> ?)

Paul Everitt paul@digicool.com
Sat, 12 Jun 1999 23:43:05 -0400


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