ZCML File
configure.zcml

<configure
    xmlns="http://namespaces.zope.org/zope"
    >
<interface
    interface="zope.interface.Interface"
    />
<class
    class=".back35.RegistrationManager"
    >
<require
    permission="zope.ManageSite"
    attributes="addRegistration"
    interface="        "
    />
</class>
<view
    for=".back35.IRegisterableContainer"
    name="registrations"
    provides="zope.traversing.interfaces.ITraversable"
    type="*"
    factory=".back35.RegistrationManagerNamespace"
    />
<adapter
    factory=".back35.RegistrationManagerNamespace"
    provides="zope.traversing.interfaces.ITraversable"
    for=".back35.IRegisterableContainer"
    name="registrations"
    />
<module
    module=".interfaces"
    >
<allow
    attributes="ISite"
    />
</module>
<class
    class=".site.LocalSiteManager"
    >
<require
    permission="zope.ManageSite"
    interface="zope.app.container.interfaces.IReadContainer"
    />
<require
    permission="zope.ManageSite"
    interface="        "
    />
</class>
<class
    class="zope.component.registry.UtilityRegistration"
    >
<require
    permission="zope.ManageSite"
    interface="zope.component.interfaces.IUtilityRegistration"
    />
</class>
<class
    class=".site.SiteManagementFolder"
    >
<factory
    />
<require
    permission="zope.ManageSite"
    interface="zope.app.container.interfaces.IReadContainer"
    />
<require
    permission="zope.ManageSite"
    attributes="registrationManager"
    interface="zope.app.container.interfaces.IWriteContainer"
    />
</class>
<adapter
    factory=".site.SMFolderFactory"
    provides="zope.filerepresentation.interfaces.IDirectoryFactory"
    for="zope.component.interfaces.IComponentLookup"
    permission="zope.ManageContent"
    />
<adapter
    factory=".site.SiteManagerAdapter"
    />
<subscriber
    handler=".site.threadSiteSubscriber"
    for="
       .interfaces.ISite
       zope.app.publication.interfaces.IBeforeTraverseEvent
       "

    />
<subscriber
    handler=".site.clearThreadSiteSubscriber"
    for="zope.app.publication.interfaces.IEndRequestEvent"
    />
<subscriber
    handler=".site.changeSiteConfigurationAfterMove"
    for="
       .interfaces.ISite
       zope.app.container.interfaces.IObjectMovedEvent
       "

    />
<interface
    interface="zope.interface.interfaces.IInterface"
    />
<utility
    component=".vocabulary.InterfacesVocabulary"
    name="Interfaces"
    />
<utility
    component=".vocabulary.UtilityComponentInterfacesVocabulary"
    provides="zope.schema.interfaces.IVocabularyFactory"
    name="Utility Component Interfaces"
    />
</configure>