On Thu, Nov 6, 2008 at 8:27 AM, Dragos Petre <[EMAIL PROTECTED]> wrote:
> In this case, an instance of A11 will only accept A3 objects as
> children but not A2 ones as one would expect given the definition of
> the parent.
You've stated in I11 that only objects providing I3 should be
accepted; I'm not sure why you'd expect anything different.
The "contains" constraint doesn't mean "also allows", it means "only
allows"; if you want a union, you'll need to implement that
separately, using a new constraint. Adding that to the existing
constraint would cause a backward compatibility issue.
I've never had a use for the scenario you describe, and suspect that
most needs for something similar are trivially met by simply spelling
out the entire set of allowed types in each contains constraint.
Fred L. Drake, Jr. <fdrake at gmail.com>
"Chaos is the score upon which reality is written." --Henry Miller
Zope3-users mailing list