ZCML File
configure.zcml

<configure
    xmlns="http://namespaces.zope.org/zope"
    >
<class
    class=".definition.StatefulProcessDefinition"
    >
</class>
<class
    class=".definition.StatesContainer"
    >
</class>
<class
    class=".definition.State"
    >
<require
    permission="zope.workflow.ManageProcessDefinitions"
    interface=".interfaces.IState"
    set_schema=".interfaces.IState"
    />
</class>
<utility
    component=".definition.StateNamesVocabulary"
    name="Workflow State Names"
    />
<class
    class=".definition.TransitionsContainer"
    >
</class>
<class
    class=".definition.Transition"
    >
<require
    permission="zope.workflow.ManageProcessDefinitions"
    interface=".interfaces.ITransition"
    set_schema=".interfaces.ITransition"
    />
</class>
<class
    class=".contentworkflow.ContentWorkflowsManager"
    >
<require
    permission="zope.ManageServices"
    attributes="cpRegistry"
    interface=".interfaces.IContentWorkflowsManager"
    />
</class>
<class
    class=".instance.StatefulProcessInstance"
    >
<require
    permission="zope.workflow.UseProcessInstances"
    interface=".interfaces.IStatefulProcessInstance"
    />
</class>
<adapter
    factory=".xmlimportexport.XMLExportHandler"
    provides="zope.app.workflow.interfaces.IProcessDefinitionExportHandler"
    for=".interfaces.IStatefulProcessDefinition"
    />
<adapter
    factory=".xmlimportexport.XMLImportHandler"
    provides="zope.app.workflow.interfaces.IProcessDefinitionImportHandler"
    for=".interfaces.IStatefulProcessDefinition"
    />
<subscriber
    handler=".contentworkflow.NewObjectProcessInstanceCreator"
    for="
       ..interfaces.IProcessInstanceContainerAdaptable
       zope.lifecycleevent.IObjectCreatedEvent
       "

    />
<include
    package=".browser"
    />
</configure>