[Zope] fmt=structured-text seems wrongish

Dennis Nichols nichols@tradingconnections.com
Mon, 09 Oct 2000 15:36:48 -0500


Not to throw stones, just trying to understand.

WRT <dtml-var ... fmt=...>

It makes sense to me to use "fmt=something" when the something is an 
instruction on how to format a number or how to format the time. In those 
cases, I'm simply saying how I want the number or time to appear. But when 
I say "fmt=structured-text" then I'm saying how the item is stored.

Let's say that I've developed a Python product that contains description 
and now I've made an instance of it as myDoc. Within my site (application), 
I can ask that description be rendered this way...

<dtml-var "myDoc.description" fmt=structured-text>

By doing so, I'm telling Zope that whatever it finds in myDoc.description 
should be interpreted according to structured text rules from markup 
contained within myDoc.description itself. Now how does my application know 
that the myDoc object has structured text stored in description? Shouldn't 
the object itself know that? And shouldn't the fmt specification tell how 
myDoc.description is to be presented instead of how it is stored?

For example, let's say I can choose to store description as plain text, as 
structured text, or as html. Regardless of how it is stored, I might want 
to ask for it as:

fmt=raw       in case I want to edit it
fmt=html      in case I want to send it to a browser

and so on. Here, raw and html don't describe how to interpret the contents 
of myDoc.description, just how to give it back.

Pointers? I guess I can just fix this within my own product(s) by returning 
various fields in a manner something like this:

Stored as STX, return as HTML

     return str(StructuredText.HTML(self.description))

Stored as STX, return as raw, or stored as HTML, return as HTML

     return self.description

and so on...

--
Dennis Nichols
nichols@tradingconnections.com