We do not have to implement any interface that *extends* from IContentType in order to make a class become a content.

class IMyContent(Interface): pass

In zcml we do declare:

<interface interface=".interface.IMyContent" type="zope.app.content.interfaces.IContentType">

I wonder what exactly does specifying "type" attribute do. Somehow, Zope will have to attach IContentType to IMyContent. In which case, I see no possibility to do that beside using "directyProvides". But the docstring says "implements" rather than
"provides" as I thought it should be.

What I missed here ?

Leeuw van der, Tim wrote:

In java-terms you'd say that one interface *extends* another interface, rather 
than implements. But I guess this wording is because Python doesn't have 
interfaces, and therefore in your class-definition you might not see the 

class IContentType(IInterface):
   """This interface represents a content type.

   If an **interface** implements this interface type, then all object
   implementing the interface are considered content objects.

How can an interface implements IContentType ? (or whatever interface)
Isn't the term "provides" should be used rather than "implements" ?

Zope3-users mailing list

Reply via email to