[Zope3-dev] Re: One namespace for ZCML
Philipp von Weitershausen
philipp at weitershausen.de
Mon Feb 13 10:30:01 EST 2006
Tres Seaver wrote:
> - The opposition to namespace declarations is whiny, as they are the
> standard way to make XML extensible. Unless we are going to quit
> using XML, outlawing namespaces would be equivalent to saying, "you
> may not extend ZCML"; I don't think we are smart enough to make that
> ukase. I think the Last Law of Python according to the Prophet
> Peters obtains here as well.
I'm neither trying to follow the whiny people who detest XML and
therefore ZCML nor am I trying to make ZCML not extensible. That said, I
think that ZCML's usage of namespace is quite arbitrary. Why is browser
and mail-related stuff on its own namespace but security-related stuff
not? Why is it then recommended that third-party packages use their own
namespaces, even though they might only have browser-related directives
to register...?
I don't really see the point in ZCML's using namespaces. What good do
they provide? Seriously, is it just the prefix? Well, we don't need the
namespaces for that.
> - Note that the non-XML language also used by Zope (ZConfig) has its
> own extensibility mechanism: in fact, Fred and I made it possible
> in November for Zope2 products to register their own schemas for
> those extensions, which was a blocker for moving some configuration
> out of software.
I'm not sure what to do with this info...
> - I don't want to encourage people to do configuration in Python:
Rest assured neither do I.
> we have moved away from that *on purpose* in Zope, and I don't see
> a reason to go back. Directives which make it possible to change
> policy decisions without touching software are a Good Thing. I think
> that letting people who spend their days up to the elbows in the
> software make choices here skews the picture: we *want* people to
> be able to change the behavior of the system in controlled ways
> without having to modify software; I would prefer to hear feedback
> from non-core-developers before going further with the "ZCML delenda
> est" thread.
I have heard such feedback, otherwise I wouldn't have taken the time to
write the proposal. I've also heard positive feedback on this particular
matter (reducing ZCML namespaces to one). Again, I wouldn't have brought
it up otherwise.
> - The "application vs plugin" discussion is probably germane to this
> issue, as well: a user who is deploying a single application is
> acutally *more* likely to define and use convenience directives
> which reduce the amount of effort required to change policy than
> the generic appserver-with-plugins configuraiton. Removing the
> ability to create such convenience declarations makes it harder
> for those developers.
This belongs in the other thread, really. But here it goes anyway:
I'm not convinced that people who deploy apps will actually go as deep
as editing package ZCML, or even overrides for that matter. I would
rather imagine they turn ZCML features on or off (which would then turn
on or off ZCML directives via zcml:condition)
> - Many of the objected-to directives exist precisely because people
> did not want to type the much more verbose equivalents which were
> the original, "cleaner" spellings.
Or perhaps people just thought that people wouldn't want to type in some
extra stuff. Because I think they do if it helps them remember and
understand better.
Philipp
More information about the Zope3-dev
mailing list