The schema module is accessible via the formencode module.
A schema validates a dictionary of values, applying different validators (be key) to the different values. If allow_extra_fields=True, keys without validators will be allowed; otherwise they will raise Invalid. If filter_extra_fields is set to true, then extra fields are not passed back in the results.
Validators are associated with keys either with a class syntax, or as keyword arguments (class syntax is usually easier). Something like:
class MySchema(Schema):
name = Validators.PlainText()
phone = Validators.PhoneNumber()
These will not be available as actual instance variables, but will be collected in a dictionary. To remove a validator in a subclass that is present in a superclass, set it to None, like:
class MySubSchema(MySchema):
name = None
Messages
This class contains 28 members.
See the source for more information.