diff --git a/bt5/erp5_egov/WorkflowTemplateItem/portal_workflow/egov_interaction_workflow/scripts/PDFDocument_validateFormDataBeforeSubmission.xml b/bt5/erp5_egov/WorkflowTemplateItem/portal_workflow/egov_interaction_workflow/scripts/PDFDocument_validateFormDataBeforeSubmission.xml
index 91b8baeed0de48bc58192b950497bd2f4860c3b4..6d7d2683e4ea0b5873945545d16a526e526d70d8 100644
--- a/bt5/erp5_egov/WorkflowTemplateItem/portal_workflow/egov_interaction_workflow/scripts/PDFDocument_validateFormDataBeforeSubmission.xml
+++ b/bt5/erp5_egov/WorkflowTemplateItem/portal_workflow/egov_interaction_workflow/scripts/PDFDocument_validateFormDataBeforeSubmission.xml
@@ -74,19 +74,8 @@ N_ = portal.Base_translateString\n
 portal_type = document.getPortalType()\n
 \n
 # dict of required documents\n
-attachement_type_dict = { \'Declaration TVA\':\n
-                            {\n
-                             \'ID Card\':\'Required\',\n
-                             \'Expenditure Table\':\'Optional\',\n
-                             \'Exemptions Details\':\'Required\',\n
-                             \'Application Certificate\':\'Optional\',\n
-                            },\n
-                          \'Subscription Form\':\n
-                            {\n
-                             \'ID Card\':\'Required\',\n
-                             \'M0 Form\':\'Required\',\n
-                            }\n
-                        }\n
+attachement_method = getattr(context, \'%s_getApplicationIncomeDict\' % context.getPortalType().replace(\' \', \'\'))\n
+attachement_type_dict = attachement_method()\n
 \n
 # if the portal type is not mapped, no attached files are required\n
 if not attachement_type_dict.has_key(portal_type):\n
@@ -157,6 +146,9 @@ if len(missing_document_list):\n
                             <string>portal</string>
                             <string>N_</string>
                             <string>portal_type</string>
+                            <string>getattr</string>
+                            <string>context</string>
+                            <string>attachement_method</string>
                             <string>attachement_type_dict</string>
                             <string>append</string>
                             <string>$append0</string>
diff --git a/bt5/erp5_egov/bt/revision b/bt5/erp5_egov/bt/revision
index 8bc94cb760413754f1d334f731fb0318bd2cc365..c6876402f55fcc4178060d4f0b5d16a8e23a5c96 100644
--- a/bt5/erp5_egov/bt/revision
+++ b/bt5/erp5_egov/bt/revision
@@ -1 +1 @@
-276
\ No newline at end of file
+278
\ No newline at end of file