[Zope] CatalogAwareBase doesn't auto-reindex?

Bryan Field-Elliot bryan_lists@netmeme.org
01 Oct 2001 08:29:45 -0600


--=-jBcfZWJiPy38DnTFINS5
Content-Type: text/plain
Content-Transfer-Encoding: 7bit

Thank you Laurie,

I hadn't gotten a response yet, and yours is more informative. But
still,. what I was asking for (and hoping for) is a complete code
example of the entire method, not just a list of steps of what I need to
do inside of it. Can you pass on a complete code example?

Also -- am I overriding TWO methods, or just one? I can think of one
method needed to display the form (and populate the fields if this is
"edit" instead of "add"), and another method to accept the form and
populate the database.

I was just asking for a complete code example of the method, or both
methods as the case may be.

Thanks,

Bryan

On Mon, 2001-10-01 at 07:57, Laurie Nason wrote:


    Hi Bryan - sorry if you have this solved by now - but I didn't see any reply to the mail below.
    What Chris is trying to say (I think) is that within the ZClass that you created, you need to create a dtml method that allows you to edit the properties of your ZClass. 
    Here's what I usually do:
    ---I copy the add form I use to add a new instance and paste it inside the ZClass object (in Products folder). (I tend to call mine index_edit_html). 
    ---Inside this dtml method, I set the properties of the various text boxes, select lists etc to the values of the instance of the zclass.
    ---In the same place as where you copied the form you just created create another method (I call mine ZClassName_Update).
    ---Inside this method call the two functions that Chris mentioned 
    e.g. 
        <dtml-call expr="propertysheets.Basic.manage_changeProperties(REQUEST)">
        <dtml-call expr"reindex_object()">
    
    hth,
    Laurie
    
    -----Original Message-----
    From: zope-admin@zope.org [mailto:zope-admin@zope.org]On Behalf Of Bryan Field-Elliot
    Sent: Saturday, September 29, 2001 5:54 PM
    To: chrism@zope.com
    Cc: zope@zope.org
    Subject: Re: [Zope] CatalogAwareBase doesn't auto-reindex?
    
    
    OK Chris,
    
    I understand what you're saying. But my follow-on question is, where exactly can I find the code that is auto-generated from the properties interface? And if there is no such code, then is there a complete code sample, somewhere, of how I would code this myself? Your statement:
    
    You need to create a custom properties-editing form with a target that calls reindex_object as well as modifying the properties." 
    
    isn't really enough for a newbie like me to pick up and run with.
    
    I'm also unclear where this prebuilt form is being built -- is it when I define the property sheet, or instead is it when I create a view out of a property sheet?
    
    Having fun getting to know this system!
    
    Bryan
    
    
    
    On Sat, 2001-09-29 at 16:14, Chris McDonough wrote: 
    Hi Bryan,
    
    Please keep the mail on the maillist, thanks.
    
    This is a limitation when using prebuilt forms from the properties 
    interface.  The prebuilt propertysheet editing forms don't call 
    reindex_object.
    
    You need to create a custom properties-editing form with a target that 
    calls reindex_object as well as modifying the properties.
    
    You could make the target a Python Script or a DTML method, as long as 
    it calls the right stuff (manage_changeProperties and reindex_object) on 
    itself with the right values.
    
    HTH!
    
    - C
    
    
    Bryan Field-Elliot wrote:
    > Thanks,
    > 
    > Where do I place this call? There are no methods to modify, except the 
    > constructor. The constructor isn't the appropriate place, I think.
    > 
    > Thanks,
    > 
    > Bryan
    > 
    > On Sat, 2001-09-29 at 16:04, Chris McDonough wrote:
    > 
    > /I think you need to call "reindex_object" on your catalogaware object /
    > /manually... it indexes itself automatically but doesnt reindex itself /
    > /automatically./
    > //
    > /See http://www.zope.org/Members/AlexR/CatalogAware for more info.../
    > //
    > /Bryan Field-Elliot wrote:/
    > /> Hi,/
    > /> /
    > /> I'm new to Zope -- let me first say, I'm totally blown away! I come from /
    > /> a Java/JSP/Servlet world, and Zope is just blowing my mind!/
    > /> /
    > /> I am using the latest Zope release (downloaded and installed yesterday)./
    > /> /
    > /> I am trying to use ZCatalog, and CatalogAwareBase as a base class for my /
    > /> custom ZObject./
    > /> /
    > /> I have successfully managed to get things straight so that my catalog /
    > /> notices whenever I create new instances of my custom classess (I had to /
    > /> call my catalog "Catalog"). The new instances correctly show up in the /
    > /> "Catalog" tab of my Catalog./
    > /> /
    > /> However, I am having a terrible time trying to get the Catalog to /
    > /> automatically re-index objects when I modify them. I am using standard /
    > /> property sheet editor page generated in the Product config area for my /
    > /> object class. Is this the wrong thing to do?/
    > /> /
    > /> It's hard to imagine the usefulness of the ZCatalog without it being /
    > /> up-to-date when objects change. I guess I'm just used to the RDBMS world /
    > /> where this is completely expected behavior./
    > /> /
    > /> I can't tell if this is a bug in CatalogAwareBase, or else if the /
    > /> documentation is lacking./
    > /> /
    > /> Thanks,/
    > /> /
    > /> Bryan/
    > /> /
    > /> /
    > //
    > //
    > /-- /
    > /Chris McDonough                    Zope Corporation/
    > /http://www.zope.org             http://www.zope.com/
    > /"Killing hundreds of birds with thousands of stones"/
    > //
    > 
    
    
    -- 
    Chris McDonough                    Zope Corporation
    http://www.zope.org             http://www.zope.com
    "Killing hundreds of birds with thousands of stones"
    
    
    _______________________________________________
    Zope maillist  -  Zope@zope.org
    http://lists.zope.org/mailman/listinfo/zope
    **   No cross posts or HTML encoding!  **
    (Related lists - 
     http://lists.zope.org/mailman/listinfo/zope-announce
     http://lists.zope.org/mailman/listinfo/zope-dev )
    
    

--=-jBcfZWJiPy38DnTFINS5
Content-Type: text/html; charset=utf-8

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
  <META NAME="GENERATOR" CONTENT="GtkHTML/0.13.99">
</HEAD>
<BODY>Thank you Laurie,<br>
<br>
I hadn't gotten a response yet, and yours is more informative. But still,. what I was asking for (and hoping for) is a complete code example of the entire method, not just a list of steps of what I need to do inside of it. Can you pass on a complete code example?<br>
<br>
Also -- am I overriding TWO methods, or just one? I can think of one method needed to display the form (and populate the fields if this is &quot;edit&quot; instead of &quot;add&quot;), and another method to accept the form and populate the database.<br>
<br>
I was just asking for a complete code example of the method, or both methods as the case may be.<br>
<br>
Thanks,<br>
<br>
Bryan<br>
<br>
On Mon, 2001-10-01 at 07:57, Laurie Nason wrote:
<blockquote>
<pre><FONT COLOR="#737373"><FONT SIZE="3"><I>Hi Bryan - sorry if you have this solved by now - but I didn't see any reply to the mail below.</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>What Chris is trying to say (I think) is that within the ZClass that you created, you need to create a dtml method that allows you to edit the properties of your ZClass. </FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>Here's what I usually do:</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>---I copy the add form I use to add a new instance and paste it inside the ZClass object (in Products folder). (I tend to call mine index_edit_html). </FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>---Inside this dtml method, I set the properties of the various text boxes, select lists etc to the values of the instance of the zclass.</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>---In the same place as where you copied the form you just created create another method (I call mine ZClassName_Update).</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>---Inside this method call the two functions that Chris mentioned </FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>e.g. </FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>    &lt;dtml-call expr=&quot;propertysheets.Basic.manage_changeProperties(REQUEST)&quot;&gt;</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>    &lt;dtml-call expr&quot;reindex_object()&quot;&gt;</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>hth,</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>Laurie</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>-----Original Message-----</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>From: zope-admin@zope.org [mailto:zope-admin@zope.org]On Behalf Of Bryan Field-Elliot</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>Sent: Saturday, September 29, 2001 5:54 PM</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>To: chrism@zope.com</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>Cc: zope@zope.org</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>Subject: Re: [Zope] CatalogAwareBase doesn't auto-reindex?</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>OK Chris,</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>I understand what you're saying. But my follow-on question is, where exactly can I find the code that is auto-generated from the properties interface? And if there is no such code, then is there a complete code sample, somewhere, of how I would code this myself? Your statement:</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>You need to create a custom properties-editing form with a target that calls reindex_object as well as modifying the properties.&quot; </FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>isn't really enough for a newbie like me to pick up and run with.</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>I'm also unclear where this prebuilt form is being built -- is it when I define the property sheet, or instead is it when I create a view out of a property sheet?</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>Having fun getting to know this system!</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>Bryan</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>On Sat, 2001-09-29 at 16:14, Chris McDonough wrote: </FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>Hi Bryan,</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>Please keep the mail on the maillist, thanks.</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>This is a limitation when using prebuilt forms from the properties </FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>interface.  The prebuilt propertysheet editing forms don't call </FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>reindex_object.</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>You need to create a custom properties-editing form with a target that </FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>calls reindex_object as well as modifying the properties.</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>You could make the target a Python Script or a DTML method, as long as </FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>it calls the right stuff (manage_changeProperties and reindex_object) on </FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>itself with the right values.</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>HTH!</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>- C</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>Bryan Field-Elliot wrote:</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; Thanks,</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; </FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; Where do I place this call? There are no methods to modify, except the </FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; constructor. The constructor isn't the appropriate place, I think.</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; </FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; Thanks,</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; </FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; Bryan</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; </FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; On Sat, 2001-09-29 at 16:04, Chris McDonough wrote:</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; </FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /I think you need to call &quot;reindex_object&quot; on your catalogaware object /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /manually... it indexes itself automatically but doesnt reindex itself /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /automatically./</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; //</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /See http://www.zope.org/Members/AlexR/CatalogAware for more info.../</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; //</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /Bryan Field-Elliot wrote:/</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; Hi,/</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; I'm new to Zope -- let me first say, I'm totally blown away! I come from /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; a Java/JSP/Servlet world, and Zope is just blowing my mind!/</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; I am using the latest Zope release (downloaded and installed yesterday)./</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; I am trying to use ZCatalog, and CatalogAwareBase as a base class for my /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; custom ZObject./</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; I have successfully managed to get things straight so that my catalog /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; notices whenever I create new instances of my custom classess (I had to /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; call my catalog &quot;Catalog&quot;). The new instances correctly show up in the /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; &quot;Catalog&quot; tab of my Catalog./</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; However, I am having a terrible time trying to get the Catalog to /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; automatically re-index objects when I modify them. I am using standard /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; property sheet editor page generated in the Product config area for my /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; object class. Is this the wrong thing to do?/</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; It's hard to imagine the usefulness of the ZCatalog without it being /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; up-to-date when objects change. I guess I'm just used to the RDBMS world /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; where this is completely expected behavior./</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; I can't tell if this is a bug in CatalogAwareBase, or else if the /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; documentation is lacking./</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; Thanks,/</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; Bryan/</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&gt; /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; //</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; //</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /-- /</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /Chris McDonough                    Zope Corporation/</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /http://www.zope.org             http://www.zope.com/</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; /&quot;Killing hundreds of birds with thousands of stones&quot;/</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; //</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&gt; </FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>-- </FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>Chris McDonough                    Zope Corporation</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>http://www.zope.org             http://www.zope.com</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>&quot;Killing hundreds of birds with thousands of stones&quot;</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>_______________________________________________</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>Zope maillist  -  Zope@zope.org</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>http://lists.zope.org/mailman/listinfo/zope</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>**   No cross posts or HTML encoding!  **</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I>(Related lists - </FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I> http://lists.zope.org/mailman/listinfo/zope-announce</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I> http://lists.zope.org/mailman/listinfo/zope-dev )</FONT></I></FONT SIZE="3">
<FONT COLOR="#737373"><FONT SIZE="3"><I></FONT></I></FONT SIZE="3">
</pre>
</blockquote>
</BODY>
</HTML>

--=-jBcfZWJiPy38DnTFINS5--