Paul Everitt wrote on 6/11/99 5:54 pm:
Otto Hammersmith wrote:
I'll start by saying, this is *absolutely* the right thing to do. I've
Hmm, I don't get that reaction often these days. :^)
been mulling over this exact idea, but haven't had the time to post something to the list. (Not that I've been playing with Zope overly long.)
I'd like to make sure everyone agrees on the goals, though. Just like the idea of "Python Methods" aka script objects, I think everyone wants change, but perhaps for different reasons.
I do want to point one thing out, though: adding namespaces does break the DTD. Currently there is no way to validate a document that uses
Hmm, didn't realize that.
namespaces. This will be fixed, eventually. Until then, you just have to live with well-formed but not valid documents. (Well, you can define a special DTD that defines the namespace prefix as well, but then that defeats the ability to change the namespace prefix.)
Right.
Why?
1) Alledgely it is the future of HTML.
2) Becoming well-formed means the authors can be given hints before saving changes, and Zope can do smarter things with structured data on the server.
Why Not?
1) A number of differences with HTML might drive people off.
Purely syntactic: <br> becomes <br/> and you can't leave out end tags (</p>) it's not so bad. Well, okay, I imagine there will be a lot of griping over the decision of enforce lowercase element names. :)
The bit about:
<select name="foo"> <option selected>Splat </select>
...not working, as attributes (selected) can't be minimed is, erm, weird.
2) It isn't here yet.
Simple transformation makes XHTML into HTML, again for old clients. Probably so simple, it's not worth involving XSL.
Hopefully there wouldn't be much transformation, right? That is, people could just write stuff that was readable by clients.
3) Zope syntax might not be mappable into XML.
Close, but not quite. I'm sure it's possible to create an XML syntax that has all the functionality of DTML... however, it might very well end up being an ugly unwieldy syntax.
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.
At any rate, I'd love for someone in the Zope community to march off and take a look at this, then make a proposal for how things should be changed. As always, patches are accepted. :^)
I've been meaning to do something like this. I might just spend some time thinking about it this weekend. Any actual coding probably won't happen, though. :)
Understood. If you produced a clear definition of the goals, some samples for the syntax, and a list of things that are good and bad about it, then that would be a major win.
The simple stuff is easy:
<?xml version='1.0'?> <xdtml:xdtml xmlns:xdtml="http://www.z ope.org/xdtml" xmlns="http://www.w3.org/ TR/xhtml1">
<xdtml:var name='standard_html_head er'/> <h1><xdtml:var name='title'/></h1> <p>This is a paragraph.</p>
<xdtml:if expr='age > 18'> <p>Text not everyone should read.</p> </xdtml:if>
<xdtml:var name='standard_html_foote r'/>
</xtml:xdtml>
I'd love to do a straw vote from the "I hate SSI" crowd: is the above better?
The if gets really strange when you start adding 'elif' and 'else' clauses. I'll have to think about that one.
The containing xdtml element is just there as a place to hang the namespace declarations off of. Also, it's there to make the DTML object a full-fledged self-contained XML document, needed to make any kind of editor useful.
Precisely. It comes from the namespace declaration at the top.
One more thing to muse over is whether other things from XML land should surface.
For instance, I've long wondered if the ubiquitous var tag should be broken apart. People ask: why can't yo
******************* ****** This e-mail has been truncated. The entire e-mail is available in your E-Mail application.
-Otto.