ZCML File
configure.zcml

<configure
    xmlns="http://namespaces.zope.org/zope"
    i18n_domain="zope"
    >
<interface
    interface=".interfaces.IFolder"
    type="zope.app.content.interfaces.IContentType"
    />
<class
    class=".folder.Folder"
    >
<factory
    id="zope.app.content.Folder"
    title="Folder"
    description="Minimal folder"
    />
<allow
    attributes="getSiteManager"
    />
<require
    permission="zope.ManageServices"
    attributes="setSiteManager"
    />
<require
    permission="zope.View"
    interface="zope.app.container.interfaces.IReadContainer"
    />
<require
    permission="zope.ManageContent"
    interface="zope.app.container.interfaces.IWriteContainer"
    />
</class>
<adapter
    factory="zope.app.container.directory.Cloner"
    provides="zope.filerepresentation.interfaces.IDirectoryFactory"
    for=".interfaces.IFolder"
    permission="zope.ManageContent"
    />
<adapter
    factory=".filerepresentation.ReadDirectory"
    provides="zope.filerepresentation.interfaces.IReadDirectory"
    for=".interfaces.IFolder"
    permission="zope.View"
    />
<adapter
    factory=".folder.FolderSublocations"
    provides="zope.location.interfaces.ISublocations"
    for=".interfaces.IFolder"
    />
<include
    package=".browser"
    />
</configure>