This package allows you to modify an Archetypes schema, using simple adapters. This
can be used to add new fields, reorder fields and fieldsets or make other changes.
The most common use of schema extension is to allow add-on products to enhance
standard Plone content types, for example by adding an option that can be set to
toggle special behaviour.
schemaextender hooks into the Archetypes framework by registering an ISchema adapter
for BaseContent and BaseFolder, making it responsible for providing the schema for
all types derived from those classes. This includes all standard Plone content types.
Since only one ISchema adapter can be active schemaextender provides its own mechanism
to modify schemas using named adapters.
There are three types of adapters available:
- ISchemaExtender: using this adapter you can add new fields to a schema.
IOrderableSchemaExtender: this adapters makes it possible to both add new fields
and reorder fields. This is more costly than just adding new fields.
IBrowserLayerAwareExtender: this adpaters are making use of plone.browserlayer, so
that the extender is only available if a layer is registered.
* ISchemaModifier: this is a low-level hook that allows direct manipulation of the
schema. This can be very dangerous and should never be used.
The adapter types are documented in the ''interfaces.py'' file in archetypes.schemaextender.
|