[Zope3-dev] Voting on Schema design

Guido van Rossum guido@python.org
Mon, 15 Jul 2002 11:30:58 -0400


> Zope consists of a large number of independently reusable packages--so 
> many that installing directly to site-packages would cause a burden. 
> Zope 3 will have even more reusable packages.  Therefore Zope 3 uses a 
> top-level package called Zope, but the top-level package functions only 
> as a *namespace*.  This is very similar to Java's package naming 
> convention, but we're not using an "org" prefix.
> 
> Thus the presence of, say, Zope.ComponentArchitecture, does not imply 
> the presence of Zope.PageTemplate, even though both are distributed with 
> Zope.  Nor should Zope.PageTemplate expect to find 
> Zope.ComponentArchitecture.  Developers will be able to select only the 
>   parts they need from Zope.*, while at the same time, installing Zope 
> won't flood site-packages.

Then I just wish the toplevel name used was "ZopeCorp" rather than
"Zope" since the latter will always cause confusion as to a package's
status.

It's also unclear, given this rationale, why there are *some* Zope
packages at the top level (not inside the Zope package): Interface,
Persistence, Schema, Transaction, zLOG, and ZODB (at least the latter
two use a naming convention that can be used as an excuse :-).

--Guido van Rossum (home page: http://www.python.org/~guido/)