--- /dev/null
+<SECTION>
+<FILE>commons</FILE>
+ZakFormCompareType
+zak_form_get_compare_type_from_string
+zak_form_get_compare_type_stringify
+zak_form_get_element_by_id
+</SECTION>
+
+<SECTION>
+<FILE>form</FILE>
+<TITLE>ZakFormForm</TITLE>
+ZAK_FORM_TYPE_FORM
+ZakFormFormClass
+ZakFormElementValidatorConstructorFunc
+zak_form_get_form_element_validator
+zak_form_form_load_from_xml
+zak_form_form_load_from_file
+zak_form_form_add_element
+zak_form_form_get_element_by_id
+zak_form_form_get_elements
+zak_form_form_get_elements_by_type
+zak_form_form_add_validator
+zak_form_form_get_validator_by_id
+zak_form_form_get_validators
+zak_form_form_get_validators_by_type
+zak_form_form_clear
+zak_form_form_set_as_original
+zak_form_form_is_valid
+zak_form_form_get_messages
+zak_form_form_is_changed
+zak_form_form_set_editable
+zak_form_form_load
+zak_form_form_insert
+zak_form_form_update
+zak_form_form_delete
+ZakFormForm
+</SECTION>
+
+<SECTION>
+<FILE>formelement</FILE>
+ZAK_FORM_TYPE_ELEMENT
+ZakFormElement
+ZakFormElementClass
+</SECTION>
+
+<SECTION>
+<FILE>formelementfilter</FILE>
+<TITLE>ZakFormElementFilter</TITLE>
+ZAK_FORM_TYPE_ELEMENT_FILTER
+ZakFormElementFilterClass
+zak_form_element_filter_xml_parsing
+zak_form_element_filter_filter
+zak_form_element_filter_set_id
+zak_form_element_filter_get_id
+zak_form_element_filter_get_enabled
+zak_form_element_filter_set_enabled
+ZakFormElementFilter
+</SECTION>
+
+<SECTION>
+<FILE>formelementfilterluc</FILE>
+ZAK_FORM_TYPE_ELEMENT_FILTER_LUC
+zak_form_element_filter_luc_new
+ZakFormElementFilterLuc
+</SECTION>
+
+<SECTION>
+<FILE>formelementfiltertrim</FILE>
+ZAK_FORM_TYPE_ELEMENT_FILTER_TRIM
+zak_form_element_filter_trim_new
+ZakFormElementFilterTrim
+</SECTION>
+
+<SECTION>
+<FILE>formelementvalidator</FILE>
+<TITLE>ZakFormElementValidator</TITLE>
+ZAK_FORM_TYPE_ELEMENT_VALIDATOR
+ZakFormElementValidatorClass
+zak_form_element_validator_xml_parsing
+zak_form_element_validator_validate
+zak_form_element_validator_set_id
+zak_form_element_validator_get_id
+zak_form_element_validator_set_message
+zak_form_element_validator_get_message
+zak_form_element_validator_get_enabled
+zak_form_element_validator_set_enabled
+ZakFormElementValidator
+</SECTION>
+
+<SECTION>
+<FILE>formelementvalidatordate</FILE>
+ZAK_FORM_TYPE_ELEMENT_VALIDATOR_DATE
+zak_form_element_validator_date_new
+zak_form_element_validator_date_set_compare_type
+zak_form_element_validator_date_get_compare_type
+zak_form_element_validator_date_set_compare_value
+zak_form_element_validator_date_get_compare_value
+zak_form_element_validator_date_set_format
+zak_form_element_validator_date_get_format
+ZakFormElementValidatorDate
+</SECTION>
+
+<SECTION>
+<FILE>formelementvalidatornotempty</FILE>
+ZAK_FORM_TYPE_ELEMENT_VALIDATOR_NOTEMPTY
+zak_form_element_validator_notempty_new
+zak_form_element_validator_notempty_set_as_empty_string
+zak_form_element_validator_notempty_get_as_empty_string
+ZakFormElementValidatorNotempty
+</SECTION>
+
+<SECTION>
+<FILE>formelementvalidatorregex</FILE>
+ZAK_FORM_TYPE_ELEMENT_VALIDATOR_REGEX
+zak_form_element_validator_regex_new
+zak_form_element_validator_regex_set_regex
+zak_form_element_validator_regex_get_regex
+ZakFormElementValidatorRegex
+</SECTION>
+
+<SECTION>
+<FILE>formiprovider</FILE>
+<TITLE>ZakFormIProvider</TITLE>
+ZAK_FORM_TYPE_IPROVIDER
+ZakFormIProviderInterface
+zak_form_iprovider_load
+zak_form_iprovider_insert
+zak_form_iprovider_update
+zak_form_iprovider_delete
+ZakFormIProvider
+</SECTION>
+
+<SECTION>
+<FILE>formvalidator</FILE>
+<TITLE>ZakFormValidator</TITLE>
+ZAK_FORM_TYPE_VALIDATOR
+ZakFormValidatorClass
+zak_form_validator_xml_parsing
+zak_form_validator_get_id
+zak_form_validator_set_id
+zak_form_validator_validate
+zak_form_validator_set_message
+zak_form_validator_get_message
+zak_form_validator_get_enabled
+zak_form_validator_set_enabled
+ZakFormValidator
+</SECTION>
+
+<SECTION>
+<FILE>formvalidatorcompare</FILE>
+ZAK_FORM_TYPE_VALIDATOR_COMPARE
+zak_form_validator_compare_new
+ZakFormValidatorCompare
+</SECTION>
+
+<SECTION>
+<FILE>formvalidatorcomparedate</FILE>
+ZAK_FORM_TYPE_VALIDATOR_COMPARE_DATE
+zak_form_validator_compare_date_new
+ZakFormValidatorCompareDate
+</SECTION>
+
+<SECTION>
+<FILE>formvalidatorcomposite</FILE>
+ZAK_FORM_TYPE_VALIDATOR_COMPOSITE
+zak_form_validator_composite_new
+ZakFormValidatorComposite
+</SECTION>
+
--- /dev/null
+<MACRO>
+<NAME>ZAK_FORM_TYPE_FORM</NAME>
+#define ZAK_FORM_TYPE_FORM zak_form_form_get_type ()
+</MACRO>
+<STRUCT>
+<NAME>ZakFormFormClass</NAME>
+struct _ZakFormFormClass
+{
+ GObjectClass parent_class;
+
+ GPtrArray *(*get_elements) (ZakFormForm *zakform);
+
+ void (*element_added) (ZakFormForm *zakform, ZakFormElement *element);
+};
+</STRUCT>
+<USER_FUNCTION>
+<NAME>ZakFormElementValidatorConstructorFunc</NAME>
+<RETURNS>ZakFormElementValidator *</RETURNS>
+void
+</USER_FUNCTION>
+<FUNCTION>
+<NAME>zak_form_get_form_element_validator</NAME>
+<RETURNS>ZakFormElementValidatorConstructorFunc </RETURNS>
+ZakFormForm *zakform, const gchar *namespace
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_form_load_from_xml</NAME>
+<RETURNS>gboolean </RETURNS>
+ZakFormForm *zakform, xmlDoc *xmldoc
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_form_load_from_file</NAME>
+<RETURNS>gboolean </RETURNS>
+ZakFormForm *zakform, const gchar *filename
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_form_add_element</NAME>
+<RETURNS>gboolean </RETURNS>
+ZakFormForm *zakform, ZakFormElement *element
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_form_get_element_by_id</NAME>
+<RETURNS>ZakFormElement *</RETURNS>
+ZakFormForm *zakform, const gchar *id
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_form_get_elements</NAME>
+<RETURNS>GPtrArray *</RETURNS>
+ZakFormForm *zakform
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_form_get_elements_by_type</NAME>
+<RETURNS>GPtrArray *</RETURNS>
+ZakFormForm *zakform, GType type
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_form_add_validator</NAME>
+<RETURNS>gboolean </RETURNS>
+ZakFormForm *zakform, ZakFormValidator *validator
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_form_get_validator_by_id</NAME>
+<RETURNS>ZakFormValidator *</RETURNS>
+ZakFormForm *zakform, const gchar *id
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_form_get_validators</NAME>
+<RETURNS>GPtrArray *</RETURNS>
+ZakFormForm *zakform
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_form_get_validators_by_type</NAME>
+<RETURNS>GPtrArray *</RETURNS>
+ZakFormForm *zakform, GType type
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_form_clear</NAME>
+<RETURNS>void </RETURNS>
+ZakFormForm *zakform
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_form_set_as_original</NAME>
+<RETURNS>void </RETURNS>
+ZakFormForm *zakform
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_form_is_valid</NAME>
+<RETURNS>gboolean </RETURNS>
+ZakFormForm *zakform
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_form_get_messages</NAME>
+<RETURNS>GPtrArray *</RETURNS>
+ZakFormForm *zakform
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_form_is_changed</NAME>
+<RETURNS>gboolean </RETURNS>
+ZakFormForm *zakform
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_form_set_editable</NAME>
+<RETURNS>void </RETURNS>
+ZakFormForm *zakform, gboolean editable
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_form_load</NAME>
+<RETURNS>gboolean </RETURNS>
+ZakFormForm *zakform, ZakFormIProvider *provider
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_form_insert</NAME>
+<RETURNS>gboolean </RETURNS>
+ZakFormForm *zakform, ZakFormIProvider *provider
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_form_update</NAME>
+<RETURNS>gboolean </RETURNS>
+ZakFormForm *zakform, ZakFormIProvider *provider
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_form_delete</NAME>
+<RETURNS>gboolean </RETURNS>
+ZakFormForm *zakform, ZakFormIProvider *provider
+</FUNCTION>
+<STRUCT>
+<NAME>ZakFormForm</NAME>
+</STRUCT>
+<MACRO>
+<NAME>ZAK_FORM_TYPE_ELEMENT</NAME>
+#define ZAK_FORM_TYPE_ELEMENT zak_form_element_get_type ()
+</MACRO>
+<STRUCT>
+<NAME>ZakFormElement</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>ZakFormElementClass</NAME>
+</STRUCT>
+<MACRO>
+<NAME>ZAK_FORM_TYPE_VALIDATOR</NAME>
+#define ZAK_FORM_TYPE_VALIDATOR zak_form_validator_get_type ()
+</MACRO>
+<STRUCT>
+<NAME>ZakFormValidatorClass</NAME>
+struct _ZakFormValidatorClass
+{
+ GObjectClass parent_class;
+
+ gboolean (*xml_parsing) (ZakFormValidator *self, xmlNode *xnode, gpointer zakform);
+ gboolean (*validate) (ZakFormValidator *self);
+};
+</STRUCT>
+<FUNCTION>
+<NAME>zak_form_validator_xml_parsing</NAME>
+<RETURNS>gboolean </RETURNS>
+ZakFormValidator *validator, xmlNode *xnode, gpointer zakform
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_validator_get_id</NAME>
+<RETURNS>gchar *</RETURNS>
+ZakFormValidator *validator
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_validator_set_id</NAME>
+<RETURNS>void </RETURNS>
+ZakFormValidator *validator, const gchar *id
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_validator_validate</NAME>
+<RETURNS>gboolean </RETURNS>
+ZakFormValidator *self
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_validator_set_message</NAME>
+<RETURNS>void </RETURNS>
+ZakFormValidator *validator, const gchar *message
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_validator_get_message</NAME>
+<RETURNS>gchar *</RETURNS>
+ZakFormValidator *validator
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_validator_get_enabled</NAME>
+<RETURNS>gboolean </RETURNS>
+ZakFormValidator *validator
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_validator_set_enabled</NAME>
+<RETURNS>void </RETURNS>
+ZakFormValidator *validator, gboolean enabled
+</FUNCTION>
+<STRUCT>
+<NAME>ZakFormValidator</NAME>
+</STRUCT>
+<ENUM>
+<NAME>ZakFormCompareType</NAME>
+typedef enum
+ {
+ ZAK_FORM_COMPARE_TYPE_NONE,
+ ZAK_FORM_COMPARE_TYPE_LESSER,
+ ZAK_FORM_COMPARE_TYPE_LESSER_EQUAL,
+ ZAK_FORM_COMPARE_TYPE_EQUAL,
+ ZAK_FORM_COMPARE_TYPE_NOT_EQUAL,
+ ZAK_FORM_COMPARE_TYPE_GREATER,
+ ZAK_FORM_COMPARE_TYPE_GREATER_EQUAL
+ } ZakFormCompareType;
+</ENUM>
+<FUNCTION>
+<NAME>zak_form_get_compare_type_from_string</NAME>
+<RETURNS>ZakFormCompareType </RETURNS>
+const gchar *str
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_get_compare_type_stringify</NAME>
+<RETURNS>const gchar *</RETURNS>
+ZakFormCompareType type
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_get_element_by_id</NAME>
+<RETURNS>ZakFormElement *</RETURNS>
+GPtrArray *ar_elements, const gchar *id
+</FUNCTION>
+<MACRO>
+<NAME>ZAK_FORM_TYPE_ELEMENT_FILTER</NAME>
+#define ZAK_FORM_TYPE_ELEMENT_FILTER zak_form_element_filter_get_type ()
+</MACRO>
+<STRUCT>
+<NAME>ZakFormElementFilterClass</NAME>
+struct _ZakFormElementFilterClass
+{
+ GObjectClass parent_cleass;
+
+ gboolean (*xml_parsing) (ZakFormElementFilter *filter, xmlNode *xnode);
+ gchar *(*filter) (ZakFormElementFilter *self, const gchar *value);
+};
+</STRUCT>
+<FUNCTION>
+<NAME>zak_form_element_filter_xml_parsing</NAME>
+<RETURNS>gboolean </RETURNS>
+ZakFormElementFilter *filter, xmlNode *xnode
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_element_filter_filter</NAME>
+<RETURNS>gchar *</RETURNS>
+ZakFormElementFilter *self, const gchar *value
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_element_filter_set_id</NAME>
+<RETURNS>void </RETURNS>
+ZakFormElementFilter *filter, const gchar *id
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_element_filter_get_id</NAME>
+<RETURNS>gchar *</RETURNS>
+ZakFormElementFilter *filter
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_element_filter_get_enabled</NAME>
+<RETURNS>gboolean </RETURNS>
+ZakFormElementFilter *filter
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_element_filter_set_enabled</NAME>
+<RETURNS>void </RETURNS>
+ZakFormElementFilter *filter, gboolean enabled
+</FUNCTION>
+<STRUCT>
+<NAME>ZakFormElementFilter</NAME>
+</STRUCT>
+<MACRO>
+<NAME>ZAK_FORM_TYPE_ELEMENT_VALIDATOR_REGEX</NAME>
+#define ZAK_FORM_TYPE_ELEMENT_VALIDATOR_REGEX zak_form_element_validator_regex_get_type ()
+</MACRO>
+<FUNCTION>
+<NAME>zak_form_element_validator_regex_new</NAME>
+<RETURNS>ZakFormElementValidatorRegex *</RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_element_validator_regex_set_regex</NAME>
+<RETURNS>void </RETURNS>
+ZakFormElementValidatorRegex *validator, const gchar *regex
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_element_validator_regex_get_regex</NAME>
+<RETURNS>gchar *</RETURNS>
+ZakFormElementValidatorRegex *validator
+</FUNCTION>
+<STRUCT>
+<NAME>ZakFormElementValidatorRegex</NAME>
+</STRUCT>
+<MACRO>
+<NAME>ZAK_FORM_TYPE_IPROVIDER</NAME>
+#define ZAK_FORM_TYPE_IPROVIDER zak_form_iprovider_get_type ()
+</MACRO>
+<STRUCT>
+<NAME>ZakFormIProviderInterface</NAME>
+struct _ZakFormIProviderInterface
+{
+ GTypeInterface parent_iface;
+
+ gboolean (*load) (ZakFormIProvider *self, GPtrArray *elements);
+ gboolean (*insert) (ZakFormIProvider *self, GPtrArray *elements);
+ gboolean (*update) (ZakFormIProvider *self, GPtrArray *elements);
+ gboolean (*delete) (ZakFormIProvider *self, GPtrArray *elements);
+};
+</STRUCT>
+<FUNCTION>
+<NAME>zak_form_iprovider_load</NAME>
+<RETURNS>gboolean </RETURNS>
+ZakFormIProvider *self, GPtrArray *elements
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_iprovider_insert</NAME>
+<RETURNS>gboolean </RETURNS>
+ZakFormIProvider *self, GPtrArray *elements
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_iprovider_update</NAME>
+<RETURNS>gboolean </RETURNS>
+ZakFormIProvider *self, GPtrArray *elements
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_iprovider_delete</NAME>
+<RETURNS>gboolean </RETURNS>
+ZakFormIProvider *self, GPtrArray *elements
+</FUNCTION>
+<STRUCT>
+<NAME>ZakFormIProvider</NAME>
+</STRUCT>
+<MACRO>
+<NAME>ZAK_FORM_TYPE_VALIDATOR_COMPARE_DATE</NAME>
+#define ZAK_FORM_TYPE_VALIDATOR_COMPARE_DATE zak_form_validator_compare_date_get_type ()
+</MACRO>
+<FUNCTION>
+<NAME>zak_form_validator_compare_date_new</NAME>
+<RETURNS>ZakFormValidatorCompareDate *</RETURNS>
+void
+</FUNCTION>
+<STRUCT>
+<NAME>ZakFormValidatorCompareDate</NAME>
+</STRUCT>
+<MACRO>
+<NAME>ZAK_FORM_TYPE_VALIDATOR_COMPOSITE</NAME>
+#define ZAK_FORM_TYPE_VALIDATOR_COMPOSITE zak_form_validator_composite_get_type ()
+</MACRO>
+<FUNCTION>
+<NAME>zak_form_validator_composite_new</NAME>
+<RETURNS>ZakFormValidatorComposite *</RETURNS>
+void
+</FUNCTION>
+<STRUCT>
+<NAME>ZakFormValidatorComposite</NAME>
+</STRUCT>
+<MACRO>
+<NAME>ZAK_FORM_TYPE_VALIDATOR_COMPARE</NAME>
+#define ZAK_FORM_TYPE_VALIDATOR_COMPARE zak_form_validator_compare_get_type ()
+</MACRO>
+<FUNCTION>
+<NAME>zak_form_validator_compare_new</NAME>
+<RETURNS>ZakFormValidatorCompare *</RETURNS>
+void
+</FUNCTION>
+<STRUCT>
+<NAME>ZakFormValidatorCompare</NAME>
+</STRUCT>
+<MACRO>
+<NAME>ZAK_FORM_TYPE_ELEMENT_VALIDATOR</NAME>
+#define ZAK_FORM_TYPE_ELEMENT_VALIDATOR zak_form_element_validator_get_type ()
+</MACRO>
+<STRUCT>
+<NAME>ZakFormElementValidatorClass</NAME>
+struct _ZakFormElementValidatorClass
+{
+ GObjectClass parent_class;
+
+ gboolean (*xml_parsing) (ZakFormElementValidator *self, xmlNode *xnode);
+ gboolean (*validate) (ZakFormElementValidator *self, const gchar *value);
+};
+</STRUCT>
+<FUNCTION>
+<NAME>zak_form_element_validator_xml_parsing</NAME>
+<RETURNS>gboolean </RETURNS>
+ZakFormElementValidator *self, xmlNode *xnode
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_element_validator_validate</NAME>
+<RETURNS>gboolean </RETURNS>
+ZakFormElementValidator *self, const gchar *value
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_element_validator_set_id</NAME>
+<RETURNS>void </RETURNS>
+ZakFormElementValidator *validator, const gchar *id
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_element_validator_get_id</NAME>
+<RETURNS>gchar *</RETURNS>
+ZakFormElementValidator *validator
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_element_validator_set_message</NAME>
+<RETURNS>void </RETURNS>
+ZakFormElementValidator *validator, const gchar *message
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_element_validator_get_message</NAME>
+<RETURNS>gchar *</RETURNS>
+ZakFormElementValidator *validator
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_element_validator_get_enabled</NAME>
+<RETURNS>gboolean </RETURNS>
+ZakFormElementValidator *validator
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_element_validator_set_enabled</NAME>
+<RETURNS>void </RETURNS>
+ZakFormElementValidator *validator, gboolean enabled
+</FUNCTION>
+<STRUCT>
+<NAME>ZakFormElementValidator</NAME>
+</STRUCT>
+<MACRO>
+<NAME>ZAK_FORM_TYPE_ELEMENT_VALIDATOR_NOTEMPTY</NAME>
+#define ZAK_FORM_TYPE_ELEMENT_VALIDATOR_NOTEMPTY zak_form_element_validator_notempty_get_type ()
+</MACRO>
+<FUNCTION>
+<NAME>zak_form_element_validator_notempty_new</NAME>
+<RETURNS>ZakFormElementValidatorNotempty *</RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_element_validator_notempty_set_as_empty_string</NAME>
+<RETURNS>void </RETURNS>
+ZakFormElementValidatorNotempty *validator, const gchar *as_empty_string
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_element_validator_notempty_get_as_empty_string</NAME>
+<RETURNS>gchar *</RETURNS>
+ZakFormElementValidatorNotempty *validator
+</FUNCTION>
+<STRUCT>
+<NAME>ZakFormElementValidatorNotempty</NAME>
+</STRUCT>
+<MACRO>
+<NAME>ZAK_FORM_TYPE_ELEMENT_VALIDATOR_DATE</NAME>
+#define ZAK_FORM_TYPE_ELEMENT_VALIDATOR_DATE zak_form_element_validator_date_get_type ()
+</MACRO>
+<FUNCTION>
+<NAME>zak_form_element_validator_date_new</NAME>
+<RETURNS>ZakFormElementValidatorDate *</RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_element_validator_date_set_compare_type</NAME>
+<RETURNS>void </RETURNS>
+ZakFormElementValidatorDate *validator, ZakFormCompareType type
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_element_validator_date_get_compare_type</NAME>
+<RETURNS>ZakFormCompareType </RETURNS>
+ZakFormElementValidatorDate *validator
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_element_validator_date_set_compare_value</NAME>
+<RETURNS>void </RETURNS>
+ZakFormElementValidatorDate *validator, const gchar *value
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_element_validator_date_get_compare_value</NAME>
+<RETURNS>gchar *</RETURNS>
+ZakFormElementValidatorDate *validator
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_element_validator_date_set_format</NAME>
+<RETURNS>void </RETURNS>
+ZakFormElementValidatorDate *validator, const gchar *format
+</FUNCTION>
+<FUNCTION>
+<NAME>zak_form_element_validator_date_get_format</NAME>
+<RETURNS>gchar *</RETURNS>
+ZakFormElementValidatorDate *validator
+</FUNCTION>
+<STRUCT>
+<NAME>ZakFormElementValidatorDate</NAME>
+</STRUCT>
+<MACRO>
+<NAME>ZAK_FORM_TYPE_ELEMENT_FILTER_TRIM</NAME>
+#define ZAK_FORM_TYPE_ELEMENT_FILTER_TRIM zak_form_element_filter_trim_get_type ()
+</MACRO>
+<FUNCTION>
+<NAME>zak_form_element_filter_trim_new</NAME>
+<RETURNS>ZakFormElementFilterTrim *</RETURNS>
+void
+</FUNCTION>
+<STRUCT>
+<NAME>ZakFormElementFilterTrim</NAME>
+</STRUCT>
+<MACRO>
+<NAME>ZAK_FORM_TYPE_ELEMENT_FILTER_LUC</NAME>
+#define ZAK_FORM_TYPE_ELEMENT_FILTER_LUC zak_form_element_filter_luc_get_type ()
+</MACRO>
+<FUNCTION>
+<NAME>zak_form_element_filter_luc_new</NAME>
+<RETURNS>ZakFormElementFilterLuc *</RETURNS>
+void
+</FUNCTION>
+<STRUCT>
+<NAME>ZakFormElementFilterLuc</NAME>
+</STRUCT>
--- /dev/null
+<SECTION>
+<FILE>commons</FILE>
+ZakFormCompareType
+zak_form_get_compare_type_from_string
+zak_form_get_compare_type_stringify
+zak_form_get_element_by_id
+</SECTION>
+
+<SECTION>
+<FILE>form</FILE>
+<TITLE>ZakFormForm</TITLE>
+ZAK_FORM_TYPE_FORM
+ZakFormFormClass
+ZakFormElementValidatorConstructorFunc
+zak_form_get_form_element_validator
+zak_form_form_load_from_xml
+zak_form_form_load_from_file
+zak_form_form_add_element
+zak_form_form_get_element_by_id
+zak_form_form_get_elements
+zak_form_form_get_elements_by_type
+zak_form_form_add_validator
+zak_form_form_get_validator_by_id
+zak_form_form_get_validators
+zak_form_form_get_validators_by_type
+zak_form_form_clear
+zak_form_form_set_as_original
+zak_form_form_is_valid
+zak_form_form_get_messages
+zak_form_form_is_changed
+zak_form_form_set_editable
+zak_form_form_load
+zak_form_form_insert
+zak_form_form_update
+zak_form_form_delete
+ZakFormForm
+</SECTION>
+
+<SECTION>
+<FILE>formelement</FILE>
+ZAK_FORM_TYPE_ELEMENT
+ZakFormElement
+ZakFormElementClass
+</SECTION>
+
+<SECTION>
+<FILE>formelementfilter</FILE>
+<TITLE>ZakFormElementFilter</TITLE>
+ZAK_FORM_TYPE_ELEMENT_FILTER
+ZakFormElementFilterClass
+zak_form_element_filter_xml_parsing
+zak_form_element_filter_filter
+zak_form_element_filter_set_id
+zak_form_element_filter_get_id
+zak_form_element_filter_get_enabled
+zak_form_element_filter_set_enabled
+ZakFormElementFilter
+</SECTION>
+
+<SECTION>
+<FILE>formelementfilterluc</FILE>
+ZAK_FORM_TYPE_ELEMENT_FILTER_LUC
+zak_form_element_filter_luc_new
+ZakFormElementFilterLuc
+</SECTION>
+
+<SECTION>
+<FILE>formelementfiltertrim</FILE>
+ZAK_FORM_TYPE_ELEMENT_FILTER_TRIM
+zak_form_element_filter_trim_new
+ZakFormElementFilterTrim
+</SECTION>
+
+<SECTION>
+<FILE>formelementvalidator</FILE>
+<TITLE>ZakFormElementValidator</TITLE>
+ZAK_FORM_TYPE_ELEMENT_VALIDATOR
+ZakFormElementValidatorClass
+zak_form_element_validator_xml_parsing
+zak_form_element_validator_validate
+zak_form_element_validator_set_id
+zak_form_element_validator_get_id
+zak_form_element_validator_set_message
+zak_form_element_validator_get_message
+zak_form_element_validator_get_enabled
+zak_form_element_validator_set_enabled
+ZakFormElementValidator
+</SECTION>
+
+<SECTION>
+<FILE>formelementvalidatordate</FILE>
+ZAK_FORM_TYPE_ELEMENT_VALIDATOR_DATE
+zak_form_element_validator_date_new
+zak_form_element_validator_date_set_compare_type
+zak_form_element_validator_date_get_compare_type
+zak_form_element_validator_date_set_compare_value
+zak_form_element_validator_date_get_compare_value
+zak_form_element_validator_date_set_format
+zak_form_element_validator_date_get_format
+ZakFormElementValidatorDate
+</SECTION>
+
+<SECTION>
+<FILE>formelementvalidatornotempty</FILE>
+ZAK_FORM_TYPE_ELEMENT_VALIDATOR_NOTEMPTY
+zak_form_element_validator_notempty_new
+zak_form_element_validator_notempty_set_as_empty_string
+zak_form_element_validator_notempty_get_as_empty_string
+ZakFormElementValidatorNotempty
+</SECTION>
+
+<SECTION>
+<FILE>formelementvalidatorregex</FILE>
+ZAK_FORM_TYPE_ELEMENT_VALIDATOR_REGEX
+zak_form_element_validator_regex_new
+zak_form_element_validator_regex_set_regex
+zak_form_element_validator_regex_get_regex
+ZakFormElementValidatorRegex
+</SECTION>
+
+<SECTION>
+<FILE>formiprovider</FILE>
+<TITLE>ZakFormIProvider</TITLE>
+ZAK_FORM_TYPE_IPROVIDER
+ZakFormIProviderInterface
+zak_form_iprovider_load
+zak_form_iprovider_insert
+zak_form_iprovider_update
+zak_form_iprovider_delete
+ZakFormIProvider
+</SECTION>
+
+<SECTION>
+<FILE>formvalidator</FILE>
+<TITLE>ZakFormValidator</TITLE>
+ZAK_FORM_TYPE_VALIDATOR
+ZakFormValidatorClass
+zak_form_validator_xml_parsing
+zak_form_validator_get_id
+zak_form_validator_set_id
+zak_form_validator_validate
+zak_form_validator_set_message
+zak_form_validator_get_message
+zak_form_validator_get_enabled
+zak_form_validator_set_enabled
+ZakFormValidator
+</SECTION>
+
+<SECTION>
+<FILE>formvalidatorcompare</FILE>
+ZAK_FORM_TYPE_VALIDATOR_COMPARE
+zak_form_validator_compare_new
+ZakFormValidatorCompare
+</SECTION>
+
+<SECTION>
+<FILE>formvalidatorcomparedate</FILE>
+ZAK_FORM_TYPE_VALIDATOR_COMPARE_DATE
+zak_form_validator_compare_date_new
+ZakFormValidatorCompareDate
+</SECTION>
+
+<SECTION>
+<FILE>formvalidatorcomposite</FILE>
+ZAK_FORM_TYPE_VALIDATOR_COMPOSITE
+zak_form_validator_composite_new
+ZakFormValidatorComposite
+</SECTION>
+