What is the actual work of zcml and xml in plone 4?

i want to know the workflow of plone. how ZCML and XML calls in plone. what is the actual workflow of Browser, Content, Profiles, zcml,xml etc in a complete plone project.

Best you start with http://docs.plone.org/adapt-and-extend/index.html and come back if you have specific questions or problems to understand the docs (we love feedback).

hi jensens... thanks for your kind response. i have already reat that documentation. as i am new user to plone thats why im still not getting the workflow.
actually i want to know that from where to where our project control goes. Hope you will understand my Question.

In general you have:

  • python dependencies: used while buildout/install time, in order to use an addon or a own customization package
  • zcml-layer: configuration of components (most prominent: registering custom views or event subscribers), loaded at zope startup, is the same for whole zope2
  • genericsetup configuration (also with dependecies on this layer) of site or addon specific settings (/profiles/*): loaded via control-panel/ addons

Usally you create a package with bobtemplates.plone and start from there.

I forgot to mention the Plone Training which contains more step by step instructions and
tries to follow best practices (if you not already stumbled over it).

1 Like

zcml files are loaded during start up time.
Usually, a configure zcml file gets loaded as soon as it is a dependency of your plone instance or if it is referenced by another zcml file. This bit of information is only relevant when debugging.

Genericsetup files have the xml ending, zcml files are also xml files. GenericSetup files only get executed during installation or upgrade.

The state that you see in a zcml file is the same as in the Plone system. As @jensens said, these files are to configure components, a bit like Spring.

The GS profiles configure various persistent things that are stored in the database. You can change them after installation. This is important to understand if you do an upgrade. Since if you changed something in the controlpanel, an upgrade might override this.

1 Like

You should definitely go through training.plone.org; it shows you how this all works, in sequence.

1 Like

thanks to all for sharing their knowleges :slight_smile: