[Zope3-dev] RFC: Use ConfigParser for High-Level Configuration
Jim Fulton
jim at zope.com
Sun Mar 12 15:54:30 EST 2006
Dieter Maurer wrote:
> Jim Fulton wrote at 2006-3-11 18:03 -0500:
>
>>...
>>Where is this documented?
>
>
> I do not know. I saw a feature description in the mailing list.
> Fred and Tres (the authors) should be able to tell you whether
> there is a formal documentation and where you can find it.
>
>
>>Let's pursue this a bit.
>>
>>Would it be possible to write a configuration file that loaded
>>it's own schemas?
>
>
> Yes -- with some restrictions: as I described in my previous mail.
>
> The feature essentially works as follows:
>
> You have an abstract section type in your primary
> schema, usually usable in a multisection.
>
> Examples: ZServer server, ZODB storage, the general extension
> abstract section type
>
> In your module/package, you define your own section type
> implementing the abstract section type in its "component.xml".
> You are completely free in its keys and subsections.
>
> In the configuration file, you import your module/package (which
> makes available the definitions in its "component.xml") and
> instantiate one or more of the section types defined there.
>
> Your application/module looks for the sections of "its" type
> and uses them.
>
> The restriction: you cannot have new keys on the top level -- all
> must be nested in a section type defined by your "component.xml".
> But, this, I consider an advantage (ZConfig here behave similar
> to a "ConfigParser" approach).
So the example I gave won't work. In a schema, I have to have an
abstract type for each thing I might want to add. But I don't know what
I want to add. This doesn't sound very extensible.
I can't fathom the ZConfig documentation so I don't really know what
an abstract type is. I don't know how restrictive it has to be.
Can I define an abstract type that matched anything?
Can I define a schema that just defines an abstract type that
matches anything?
Jim
--
Jim Fulton mailto:jim at zope.com Python Powered!
CTO (540) 361-1714 http://www.python.org
Zope Corporation http://www.zope.com http://www.zope.org
More information about the Zope3-dev
mailing list