The Beryl/Compiz Options Parser, known as BCOP, is a tool to autogenerate code for working with options in Compiz plugins. It allows the developer to describe a plugin's options using XML code, which is then used by BCOP to generate a gconf schema, as well as the necessary C code to be included by the plugin. The advantage of this is that the developer only needs to maintain this one XML file.
How to use BCOP
Writing the metadata file
Display options versus screen options
The tags <display> and <screen> enclose <option>s which are specific to the display or to the screen, respectively. (See [:Development/Multihead] for more information on the distinction between these two.) These options can also be inside <group>s and/or <subgroup>s.
There can only be one instance each of <display> and <screen> within the XML file. Therefore, if you have a mixture of display options and screen options within one group, the proper way to write the file is not to have a <group> containing <display> and <screen>; rather, you can create the same (identically named) <group> within both <display> and <screen>. They will appear as one merged group when displayed in CCSM.