[Zope3-dev] what is ZCML?

Shane Hathaway shane at hathawaymix.org
Wed Mar 15 16:24:21 EST 2006


Jim Fulton wrote:
> Shane Hathaway wrote:
> 
>> Jim Fulton wrote:
>>
>>> Finally, I'll note that I've used the term "high-level configuration" to
>>> refer to the things we have sysadmins edit when they install Zope
>>> systems.  We currently use ZConfig for this.  I don't think ZCML
>>> (or any other XML-based system) should be used for this.
>>
>>
>>
>> Ok.  The high-level configuration I'm thinking about is somewhere in 
>> between.  I don't know what to call it, so I won't call it anything.
>>
>> Here's what has happened to me several times: I'm a Python developer, 
>> writing simple code for Zope 3, and I follow Stephan's examples on how 
>> to develop content types for Zope 3.  I write simple schema-based 
>> classes and simple directives.  I've been conditioned to not repeat 
>> myself in code; in fact, breaking that rule gives me a sick feeling.  
>> So I proceed to follow Stephan's examples, which involves writing 
>> similar ZCML directives for multiple classes.  The repetitious classes 
>> don't bother me because I know how to refactor them.  But the ZCML 
>> I've written gives me a sick feeling, because I don't know how to 
>> refactor ZCML.  The sick feeling doesn't go away, so I get scared of 
>> Zope 3. Then I come here, hoping to find comfort.
> 
> 
> Could you give a more specific example?

My attempt to solve the PyWebOff challenge, which I posted here:

http://mail.zope.org/pipermail/zope3-users/2006-March/002608.html

The ZCML I wrote in that message is quite representative of the ZCML I 
wrote for a Zope 3-based system that's now in production.  (The system 
is a management interface for a Beowulf-style microfilm scanning 
cluster.)  The repetition isn't a showstopper, obviously, but it makes 
me feel bad, so Zope 3 ends up being no fun.

Shane


More information about the Zope3-dev mailing list