Florent Guillaume wrote:
I'm having a hard time grasping the reasons why we have both ILocation and IContained.

Overdesign on my part.

class IContained(ILocation):
    """Objects contained in containers."""

But ILocation provides a __parent__ already, which seems to imply that it's contained in it. No?

What use case makes us differentiate between the two?

The desire to distinguish ebtween objects that are container items
and objects that are simply located.  A good example is a site's
site manager.

Fred was correct when he said:

Fred Drake wrote:
> My own understanding is this:
> - ILocation refers to the __parent__/__name__ API, which allows these
> attributes to have None as a value.
> - IContained indicates that the object is actually contained in an
> IReadContainer, not just that it can be contained.

And others are correct when they point out that this is inconsistent
with Contaner implementing IContainer.

I'd be happy to see IContainer go away.  I don't think the distinction
between ILocation and IContainer is worth the complexity they cause.


Jim Fulton           mailto:[EMAIL PROTECTED]       Python Powered!
CTO                  (540) 361-1714            http://www.python.org
Zope Corporation     http://www.zope.com       http://www.zope.org
Zope3-dev mailing list
Unsub: http://mail.zope.org/mailman/options/zope3-dev/archive%40mail-archive.com

Reply via email to