diff --git a/bt5/erp5_csv_style/SkinTemplateItem/portal_skins/erp5_csv_style.xml b/bt5/erp5_csv_style/SkinTemplateItem/portal_skins/erp5_csv_style.xml
new file mode 100755
index 0000000000000000000000000000000000000000..0084640098b1a8aae44856210113efe179c7f8cb
--- /dev/null
+++ b/bt5/erp5_csv_style/SkinTemplateItem/portal_skins/erp5_csv_style.xml
@@ -0,0 +1,69 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <tuple>
+          <string>OFS.Folder</string>
+          <string>Folder</string>
+        </tuple>
+        <none/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>__ac_local_roles__</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_local_properties</string> </key>
+            <value>
+              <tuple>
+                <dictionary>
+                  <item>
+                      <key> <string>id</string> </key>
+                      <value> <string>business_template_registered_skin_selections</string> </value>
+                  </item>
+                  <item>
+                      <key> <string>type</string> </key>
+                      <value> <string>tokens</string> </value>
+                  </item>
+                </dictionary>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>_objects</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_owner</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>business_template_registered_skin_selections</string> </key>
+            <value>
+              <tuple>
+                <string>CSV</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>erp5_csv_style</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_csv_style/SkinTemplateItem/portal_skins/erp5_csv_style/Listbox_exportCsv.xml b/bt5/erp5_csv_style/SkinTemplateItem/portal_skins/erp5_csv_style/Listbox_exportCsv.xml
new file mode 100755
index 0000000000000000000000000000000000000000..a761fdabdb3f28561603d9b8ba55f0f500eaf2c6
--- /dev/null
+++ b/bt5/erp5_csv_style/SkinTemplateItem/portal_skins/erp5_csv_style/Listbox_exportCsv.xml
@@ -0,0 +1,241 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <tuple>
+          <string>Products.PythonScripts.PythonScript</string>
+          <string>PythonScript</string>
+        </tuple>
+        <none/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>Python_magic</string> </key>
+            <value> <string encoding="base64">O/INCg==</string> </value>
+        </item>
+        <item>
+            <key> <string>Script_magic</string> </key>
+            <value> <int>3</int> </value>
+        </item>
+        <item>
+            <key> <string>__ac_local_roles__</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_container</string> </key>
+                                <value> <string>container</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_context</string> </key>
+                                <value> <string>context</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_m_self</string> </key>
+                                <value> <string>script</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_body</string> </key>
+            <value> <string encoding="cdata"><![CDATA[
+
+# export_only : allow to disable the uid column and the id of columns\n
+result = \'\'\n
+request = context.REQUEST\n
+\n
+translate = context.portal_url.getPortalObject().Localizer.erp5_ui.gettext\n
+\n
+listboxline_list = context.get_value(\'default\', render_format=\'list\', REQUEST=request)\n
+\n
+for listboxline in listboxline_list:\n
+  if listboxline.isTitleLine():\n
+    line_result = \'\'\n
+    line_result2 = \'\'\n
+\n
+    if not export_only:\n
+      listboxline.setListboxLineDisplayListMode([\'uid\'])  #XXX do not display uid column\n
+\n
+    for column_item in listboxline.getColumnItemList():\n
+\n
+      column_id = column_item[0]\n
+      column_property = column_item[1]\n
+\n
+      if column_id is not None:\n
+        if same_type(column_id,\'\'):\n
+          column_id = column_id.replace(\'"\',\'""\')\n
+          line_result += \'"%s"\' % column_id.decode(\'utf-8\')\n
+        else:\n
+          line_result += str(column_id)\n
+\n
+      line_result += str(\',\')\n
+\n
+      if column_property is not None:\n
+        if same_type(column_property,\'\'):\n
+          column_property = translate(column_property.decode(\'utf-8\'))\n
+          column_property = column_property.replace(\'"\',\'""\')\n
+          line_result2 += \'"%s"\' % column_property\n
+        else:\n
+          line_result2 += str(column_property)\n
+\n
+      line_result2 += str(\',\')\n
+\n
+    if len(line_result) > 1:\n
+      line_result = line_result[:-1]\n
+\n
+    if len(line_result2) > 1:\n
+      line_result2 = line_result2[:-1]\n
+\n
+    if not export_only:\n
+      result += line_result+\'\\n\' #XXX do not display id\n
+    result += line_result2+\'\\n\'\n
+\n
+\n
+\n
+\n
+  if listboxline.isDataLine():\n
+    line_result = \'\'\n
+\n
+    if not export_only:\n
+      listboxline.setListboxLineDisplayListMode([\'uid\'])  #XXX do not display uid column\n
+\n
+    for column_property in listboxline.getColumnPropertyList():\n
+\n
+      if column_property is not None:\n
+        if same_type(column_property,\'\'):\n
+          column_property = column_property.replace(\'"\',\'""\')\n
+          line_result += \'"%s"\' % column_property.decode(\'utf-8\')\n
+        elif same_type(column_property,1.0):\n
+          column_property = str(column_property).replace(\'.\',\',\')\n
+          line_result += \'"%s"\' % column_property\n
+        else:\n
+          line_result += str(column_property)\n
+\n
+      line_result += str(\',\')\n
+\n
+    if len(line_result) > 1:\n
+      line_result = line_result[:-1]\n
+\n
+    result += line_result+\'\\n\'\n
+\n
+return result\n
+
+
+]]></string> </value>
+        </item>
+        <item>
+            <key> <string>_code</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_filepath</string> </key>
+            <value> <string>Script (Python):/apparel5/portal_skins/erp5_csv_style/Listbox_exportCsv</string> </value>
+        </item>
+        <item>
+            <key> <string>_params</string> </key>
+            <value> <string>export_only=0,**kw</string> </value>
+        </item>
+        <item>
+            <key> <string>errors</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>func_code</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="FuncCode" module="Shared.DC.Scripts.Signature"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>co_argcount</string> </key>
+                        <value> <int>1</int> </value>
+                    </item>
+                    <item>
+                        <key> <string>co_varnames</string> </key>
+                        <value>
+                          <tuple>
+                            <string>export_only</string>
+                            <string>kw</string>
+                            <string>result</string>
+                            <string>_getattr_</string>
+                            <string>context</string>
+                            <string>request</string>
+                            <string>translate</string>
+                            <string>listboxline_list</string>
+                            <string>_getiter_</string>
+                            <string>listboxline</string>
+                            <string>line_result</string>
+                            <string>line_result2</string>
+                            <string>column_item</string>
+                            <string>_getitem_</string>
+                            <string>column_id</string>
+                            <string>column_property</string>
+                            <string>None</string>
+                            <string>same_type</string>
+                            <string>str</string>
+                            <string>len</string>
+                          </tuple>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>func_defaults</string> </key>
+            <value>
+              <tuple>
+                <int>0</int>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>Listbox_exportCsv</string> </value>
+        </item>
+        <item>
+            <key> <string>warnings</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_csv_style/SkinTemplateItem/portal_skins/erp5_csv_style/form_list.xml b/bt5/erp5_csv_style/SkinTemplateItem/portal_skins/erp5_csv_style/form_list.xml
new file mode 100755
index 0000000000000000000000000000000000000000..527d18131bb02fcd457724e4d544d38d2f7a931e
--- /dev/null
+++ b/bt5/erp5_csv_style/SkinTemplateItem/portal_skins/erp5_csv_style/form_list.xml
@@ -0,0 +1,82 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <tuple>
+          <string>Products.PageTemplates.ZopePageTemplate</string>
+          <string>ZopePageTemplate</string>
+        </tuple>
+        <none/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>__ac_local_roles__</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_text</string> </key>
+            <value> <string encoding="cdata"><![CDATA[
+
+<tal:block tal:define=\'amp python:"\\""\'> \n
+<tal:block tal:define="dummy python:request.RESPONSE.setHeader(\'Content-Type\', \'text/x-comma-separated-values;; charset=utf-8\');\n
+                       dummy2 python: request.RESPONSE.setHeader(\'Content-disposition\',\'attachment;; filename=%s%s.csv%s\' % (amp,form.title_or_id(),amp) ); ">\n
+\n
+<tal:block tal:define="groups python: form.get_groups(include_empty=1);\n
+                 field_errors python: request.get(\'field_errors\',{});\n
+                 dummy python: request.set(\'here\',here);\n
+                 listbox python:form[\'listbox\'];" ><tal:block tal:content="python: listbox.Listbox_exportCsv()" /></tal:block></tal:block>\n
+</tal:block> 
+
+]]></string> </value>
+        </item>
+        <item>
+            <key> <string>content_type</string> </key>
+            <value> <string>text/html</string> </value>
+        </item>
+        <item>
+            <key> <string>expand</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>form_list</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_csv_style/SkinTemplateItem/portal_skins/erp5_csv_style/form_view.xml b/bt5/erp5_csv_style/SkinTemplateItem/portal_skins/erp5_csv_style/form_view.xml
new file mode 100755
index 0000000000000000000000000000000000000000..e3b75be6d1aa4f33a2e016455f0c7dd664f0c785
--- /dev/null
+++ b/bt5/erp5_csv_style/SkinTemplateItem/portal_skins/erp5_csv_style/form_view.xml
@@ -0,0 +1,91 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <tuple>
+          <string>Products.PageTemplates.ZopePageTemplate</string>
+          <string>ZopePageTemplate</string>
+        </tuple>
+        <none/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>__ac_local_roles__</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_owner</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_text</string> </key>
+            <value> <string encoding="cdata"><![CDATA[
+
+<tal:block tal:replace="nothing" >\n
+  form_view is a quick hack to display only the listbox called "listbox"\n
+</tal:block>\n
+<tal:block tal:define=\'amp python:"\\""\'> \n
+<tal:block tal:define="dummy python:request.RESPONSE.setHeader(\'Content-Type\', \'text/x-comma-separated-values;; charset=utf-8\');\n
+                       dummy2 python: request.RESPONSE.setHeader(\'Content-disposition\',\'attachment;; filename=%s%s.csv%s\' % (amp,form.title_or_id(),amp) ); ">\n
+\n
+<tal:block tal:define="groups python: form.get_groups(include_empty=1);\n
+                 field_errors python: request.get(\'field_errors\',{});\n
+                 dummy python: request.set(\'here\',here);\n
+                 listbox python:form[\'listbox\'];" ><tal:block tal:content="python: listbox.Listbox_exportCsv()" /></tal:block></tal:block>\n
+</tal:block> 
+
+]]></string> </value>
+        </item>
+        <item>
+            <key> <string>content_type</string> </key>
+            <value> <string>text/html</string> </value>
+        </item>
+        <item>
+            <key> <string>expand</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>form_view</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_csv_style/bt/categories_list b/bt5/erp5_csv_style/bt/categories_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/change_log b/bt5/erp5_csv_style/bt/change_log
new file mode 100755
index 0000000000000000000000000000000000000000..c10b0a9f263c56630e887c35006d0d4b826f6571
--- /dev/null
+++ b/bt5/erp5_csv_style/bt/change_log
@@ -0,0 +1,2 @@
+2006-02-24 Seb
+* Created this business template in order to split erp5_core
\ No newline at end of file
diff --git a/bt5/erp5_csv_style/bt/copyright_list b/bt5/erp5_csv_style/bt/copyright_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/dependency_list b/bt5/erp5_csv_style/bt/dependency_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/description b/bt5/erp5_csv_style/bt/description
new file mode 100755
index 0000000000000000000000000000000000000000..9585176379c4457a92cfb93749aa40d873c52492
--- /dev/null
+++ b/bt5/erp5_csv_style/bt/description
@@ -0,0 +1 @@
+The ERP5 Html style used in order to export data into OpenOffice.org
\ No newline at end of file
diff --git a/bt5/erp5_csv_style/bt/license b/bt5/erp5_csv_style/bt/license
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/publication_url b/bt5/erp5_csv_style/bt/publication_url
new file mode 100755
index 0000000000000000000000000000000000000000..4af18322e32f3dd19579c80e26e4a306ad11e049
--- /dev/null
+++ b/bt5/erp5_csv_style/bt/publication_url
@@ -0,0 +1 @@
+None
\ No newline at end of file
diff --git a/bt5/erp5_csv_style/bt/revision b/bt5/erp5_csv_style/bt/revision
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_action_path_list b/bt5/erp5_csv_style/bt/template_action_path_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_base_category_list b/bt5/erp5_csv_style/bt/template_base_category_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_catalog_full_text_key_list b/bt5/erp5_csv_style/bt/template_catalog_full_text_key_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_catalog_keyword_key_list b/bt5/erp5_csv_style/bt/template_catalog_keyword_key_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_catalog_method_id_list b/bt5/erp5_csv_style/bt/template_catalog_method_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_catalog_multivalue_key_list b/bt5/erp5_csv_style/bt/template_catalog_multivalue_key_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_catalog_related_key_list b/bt5/erp5_csv_style/bt/template_catalog_related_key_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_catalog_request_key_list b/bt5/erp5_csv_style/bt/template_catalog_request_key_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_catalog_result_key_list b/bt5/erp5_csv_style/bt/template_catalog_result_key_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_catalog_result_table_list b/bt5/erp5_csv_style/bt/template_catalog_result_table_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_catalog_topic_key_list b/bt5/erp5_csv_style/bt/template_catalog_topic_key_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_constraint_id_list b/bt5/erp5_csv_style/bt/template_constraint_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_document_id_list b/bt5/erp5_csv_style/bt/template_document_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_extension_id_list b/bt5/erp5_csv_style/bt/template_extension_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_format_version b/bt5/erp5_csv_style/bt/template_format_version
new file mode 100755
index 0000000000000000000000000000000000000000..56a6051ca2b02b04ef92d5150c9ef600403cb1de
--- /dev/null
+++ b/bt5/erp5_csv_style/bt/template_format_version
@@ -0,0 +1 @@
+1
\ No newline at end of file
diff --git a/bt5/erp5_csv_style/bt/template_local_roles_list b/bt5/erp5_csv_style/bt/template_local_roles_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_message_translation_list b/bt5/erp5_csv_style/bt/template_message_translation_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_module_id_list b/bt5/erp5_csv_style/bt/template_module_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_path_list b/bt5/erp5_csv_style/bt/template_path_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_portal_type_allowed_content_type_list b/bt5/erp5_csv_style/bt/template_portal_type_allowed_content_type_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_portal_type_base_category_list b/bt5/erp5_csv_style/bt/template_portal_type_base_category_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_portal_type_hidden_content_type_list b/bt5/erp5_csv_style/bt/template_portal_type_hidden_content_type_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_portal_type_id_list b/bt5/erp5_csv_style/bt/template_portal_type_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_portal_type_property_sheet_list b/bt5/erp5_csv_style/bt/template_portal_type_property_sheet_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_portal_type_roles_list b/bt5/erp5_csv_style/bt/template_portal_type_roles_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_portal_type_workflow_chain_list b/bt5/erp5_csv_style/bt/template_portal_type_workflow_chain_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_product_id_list b/bt5/erp5_csv_style/bt/template_product_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_property_sheet_id_list b/bt5/erp5_csv_style/bt/template_property_sheet_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_role_list b/bt5/erp5_csv_style/bt/template_role_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_site_property_id_list b/bt5/erp5_csv_style/bt/template_site_property_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_skin_id_list b/bt5/erp5_csv_style/bt/template_skin_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..177918880c0f8571ca0210746697ae6cd91e81a4
--- /dev/null
+++ b/bt5/erp5_csv_style/bt/template_skin_id_list
@@ -0,0 +1 @@
+erp5_csv_style
\ No newline at end of file
diff --git a/bt5/erp5_csv_style/bt/template_test_id_list b/bt5/erp5_csv_style/bt/template_test_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/template_workflow_id_list b/bt5/erp5_csv_style/bt/template_workflow_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_csv_style/bt/title b/bt5/erp5_csv_style/bt/title
new file mode 100755
index 0000000000000000000000000000000000000000..177918880c0f8571ca0210746697ae6cd91e81a4
--- /dev/null
+++ b/bt5/erp5_csv_style/bt/title
@@ -0,0 +1 @@
+erp5_csv_style
\ No newline at end of file
diff --git a/bt5/erp5_csv_style/bt/version b/bt5/erp5_csv_style/bt/version
new file mode 100755
index 0000000000000000000000000000000000000000..ce609caf8506a9df51b7bde393fc1bc2a1e2072a
--- /dev/null
+++ b/bt5/erp5_csv_style/bt/version
@@ -0,0 +1 @@
+0.8
\ No newline at end of file
diff --git a/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style.xml b/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style.xml
new file mode 100755
index 0000000000000000000000000000000000000000..a6eeeade6190a40e4371ec02314a78f677ddc07b
--- /dev/null
+++ b/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style.xml
@@ -0,0 +1,69 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <tuple>
+          <string>OFS.Folder</string>
+          <string>Folder</string>
+        </tuple>
+        <none/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>__ac_local_roles__</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_local_properties</string> </key>
+            <value>
+              <tuple>
+                <dictionary>
+                  <item>
+                      <key> <string>id</string> </key>
+                      <value> <string>business_template_registered_skin_selections</string> </value>
+                  </item>
+                  <item>
+                      <key> <string>type</string> </key>
+                      <value> <string>tokens</string> </value>
+                  </item>
+                </dictionary>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>_objects</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_owner</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>business_template_registered_skin_selections</string> </key>
+            <value>
+              <tuple>
+                <string>Print</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>erp5_pdf_style</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/ListBox_getColumnWithDict.xml b/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/ListBox_getColumnWithDict.xml
new file mode 100755
index 0000000000000000000000000000000000000000..deb855d8168bd90b1bf895169e9aa8169e6e08ab
--- /dev/null
+++ b/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/ListBox_getColumnWithDict.xml
@@ -0,0 +1,267 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <tuple>
+          <string>Products.PythonScripts.PythonScript</string>
+          <string>PythonScript</string>
+        </tuple>
+        <none/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>Python_magic</string> </key>
+            <value> <string encoding="base64">O/INCg==</string> </value>
+        </item>
+        <item>
+            <key> <string>Script_magic</string> </key>
+            <value> <int>3</int> </value>
+        </item>
+        <item>
+            <key> <string>__ac_local_roles__</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_container</string> </key>
+                                <value> <string>container</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_context</string> </key>
+                                <value> <string>context</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_m_self</string> </key>
+                                <value> <string>script</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_body</string> </key>
+            <value> <string># XXX this is just a copy / paste of the old implementation\n
+# dirty code : if we are in domain or report tree, just use the old one, otherwise\n
+# use the new one that gives better results in list mode.\n
+if is_domain_tree_mode or is_report_tree_mode : \n
+  result = {}\n
+  \n
+  # 0.5 is too small and can crash pdf generation\n
+  min_column_width = 1\n
+  \n
+  for listboxline in listboxline_list:\n
+   if 1 : #not listboxline.isTitleLine():\n
+    line_width = 0\n
+    col_count = 0\n
+    if is_report_tree_mode:\n
+      col_count += 1\n
+      column_property = listboxline.getSectionName()\n
+      if column_property is None:    \n
+        string_property = \'\'\n
+      else:\n
+        string_property = str(column_property)\n
+      line_width += len(string_property) + section_width * (listboxline.getSectionDepth() - 1)\n
+    for column_id, column_property in listboxline.getColumnItemList():   \n
+      col_count += 1\n
+      if column_property is None:    \n
+        string_property = \'\'\n
+      else:\n
+        string_property = str(column_property)\n
+      line_width += len(string_property)\n
+    for column_id, column_property in listboxline.getColumnItemList():\n
+      if column_property is None:    \n
+        string_property = \'\'\n
+      else:\n
+        string_property = str(column_property)\n
+      result[column_id] = max(result.get(column_id, min_column_width),\n
+                                        min( frame_width * 2 / col_count, \n
+                                                frame_width * len(str(string_property)) / max(line_width, 1)))\n
+    if is_report_tree_mode:\n
+      column_property = listboxline.getSectionName()\n
+      if column_property is None:    \n
+        string_property = \'\'\n
+      else:\n
+        string_property = str(column_property)\n
+      column_id = \'section_name\'\n
+      result[column_id] = max(result.get(column_id,min_column_width), min(frame_width * 3 / col_count, frame_width * (len(str(string_property)) + section_width * (listboxline.getSectionDepth() - 1)) / max(line_width, 1)))\n
+  \n
+  total_col_width = 0.0\n
+  for column_id in result.keys():\n
+    if result[column_id] == 0.0:\n
+      result[column_id] = 1.0\n
+  for column_id in result.keys():\n
+    if column_id != \'section_name\' or is_report_tree_mode:\n
+      total_col_width += result[column_id]\n
+  for column_id in result.keys():\n
+    if column_id != \'section_name\' or is_report_tree_mode:\n
+      result[column_id] = result[column_id] * frame_width / total_col_width \n
+  \n
+  return result\n
+\n
+## End of dirty patch ###############################################\n
+  \n
+\n
+\n
+# 0.5 is too small and can crash pdf generation\n
+min_column_width = 1\n
+\n
+max_line_len = {}\n
+for listboxline in listboxline_list:\n
+  line_width = 0\n
+  col_count = 0\n
+  for column_id, column_property in listboxline.getColumnItemList():\n
+    if column_property is None:    \n
+      string_property = \'\'\n
+    else:\n
+      string_property = str(column_property)\n
+    line_width += len(string_property)\n
+    if listboxline.isStatLine():\n
+       string_property = "%s longer" % string_property\n
+    new_column_max_len = max(len(string_property), max_line_len.get(column_id, 0))\n
+    update_dict = {}\n
+    update_dict[column_id] = new_column_max_len\n
+    max_line_len.update(update_dict)\n
+  \n
+total_max_len = float(sum(max_line_len.values()))\n
+result = {}\n
+for column_id, max_len in max_line_len.items() :\n
+  result[column_id] = max( (max(max_len, 1) / total_max_len) * frame_width, min_column_width)\n
+\n
+return result\n
+</string> </value>
+        </item>
+        <item>
+            <key> <string>_code</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_filepath</string> </key>
+            <value> <string>Script (Python):/nexedi/portal_skins/erp5_pdf_style/ListBox_getColumnWithDict</string> </value>
+        </item>
+        <item>
+            <key> <string>_owner</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_params</string> </key>
+            <value> <string>listboxline_list, is_domain_tree_mode, is_report_tree_mode, frame_width = 19.0, section_width = 4.0</string> </value>
+        </item>
+        <item>
+            <key> <string>errors</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>func_code</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="FuncCode" module="Shared.DC.Scripts.Signature"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>co_argcount</string> </key>
+                        <value> <int>5</int> </value>
+                    </item>
+                    <item>
+                        <key> <string>co_varnames</string> </key>
+                        <value>
+                          <tuple>
+                            <string>listboxline_list</string>
+                            <string>is_domain_tree_mode</string>
+                            <string>is_report_tree_mode</string>
+                            <string>frame_width</string>
+                            <string>section_width</string>
+                            <string>result</string>
+                            <string>min_column_width</string>
+                            <string>_getiter_</string>
+                            <string>listboxline</string>
+                            <string>line_width</string>
+                            <string>col_count</string>
+                            <string>_getattr_</string>
+                            <string>column_property</string>
+                            <string>None</string>
+                            <string>string_property</string>
+                            <string>str</string>
+                            <string>len</string>
+                            <string>column_id</string>
+                            <string>max</string>
+                            <string>min</string>
+                            <string>_write_</string>
+                            <string>total_col_width</string>
+                            <string>_getitem_</string>
+                            <string>max_line_len</string>
+                            <string>new_column_max_len</string>
+                            <string>update_dict</string>
+                            <string>float</string>
+                            <string>sum</string>
+                            <string>total_max_len</string>
+                            <string>max_len</string>
+                          </tuple>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>func_defaults</string> </key>
+            <value>
+              <tuple>
+                <float>19.0</float>
+                <float>4.0</float>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>ListBox_getColumnWithDict</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>warnings</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/empty_pdf.xml b/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/empty_pdf.xml
new file mode 100755
index 0000000000000000000000000000000000000000..e387c163f852944b38cfb438ca7e6d997f30c3ed
--- /dev/null
+++ b/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/empty_pdf.xml
@@ -0,0 +1,188 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <tuple>
+          <string>Products.PageTemplates.ZopePageTemplate</string>
+          <string>ZopePageTemplate</string>
+        </tuple>
+        <none/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>__ac_local_roles__</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_owner</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_text</string> </key>
+            <value> <string encoding="cdata"><![CDATA[
+
+<?xml version="1.0" encoding="utf-8" ?>\n
+<template filename="default.pdf"\n
+          pagesize="A4"\n
+          landscape="1"\n
+          showboundary="1"\n
+          leftmargin="1cm"\n
+          rightmargin="1cm"\n
+          topmargin="1cm"\n
+          bottommargin="1cm"\n
+          allowsplitting="1">\n
+\n
+ <stylesheet>\n
+\n
+    <paragraphstyle name="Normal" fontname="Helvetica" fontsize="12" align="LEFT" firstLineIndent="0"/>\n
+    <paragraphstyle name="Bullet" fontname="Helvetica" fontsize="12" bulletFontName="Symbol" bulletFontSize="14" leftIndent="20"  firstLineIndent="0" parent="Normal"/>\n
+    <paragraphstyle name="Heading1" parent="Normal" fontname="Helvetica-Bold" fontsize="16"/>\n
+    <paragraphstyle name="Heading2" parent="Normal" fontname="Helvetica-Bold" fontsize="15"/>\n
+    <paragraphstyle name="Heading3" parent="Normal" fontname="Helvetica-Bold" fontsize="14"/>\n
+    <paragraphstyle name="Heading4" parent="Normal" fontname="Helvetica-Bold" fontsize="13"/>\n
+    <paragraphstyle name="Heading5" parent="Normal" fontname="Helvetica-Bold" fontsize="12"/>\n
+    <paragraphstyle name="Heading6" parent="Normal" fontname="Helvetica-Bold" fontsize="11"/>\n
+    <paragraphstyle name="Heading7" parent="Normal" fontname="Helvetica-Bold" fontsize="10"/>\n
+\n
+    <paragraphstyle name="Small" parent="Normal" fontname="Helvetica-Bold" fontsize="7"/>\n
+    <paragraphstyle name="Cell" parent="Normal" fontname="Helvetica-Bold" fontsize="12" alignment="center" />\n
+    <paragraphstyle name="CellHeading" parent="Normal" fontname="Helvetica-Bold" fontsize="13" alignment="center"/>\n
+\n
+    <paragraphstyle name="Example" fontname="Courier-Oblique" fontsize="10" parent="Normal"/>\n
+    <paragraphstyle name="ParaHeadLine" fontname="Helvetica" fontsize="8" parent="Normal"/>\n
+    <paragraphstyle name="ParaHeadLine2" fontname="Helvetica" fontsize="6" parent="Normal"/>\n
+    <paragraphstyle name="ParaHeadLine3" align="RIGHT" fontname="Helvetica" fontsize="6"/>\n
+ \n
+    <paragraphstyle name="TableStandard" parent="Normal" fontname="Helvetica" fontsize="8" alignment="left" />\n
+    <paragraphstyle name="TableStandardLeftAligned" parent="Normal" fontname="Helvetica" fontsize="7" alignment="left" />\n
+    <paragraphstyle name="TableStandardRightAligned" parent="Normal" fontname="Helvetica" fontsize="7" alignment="right" />\n
+    <paragraphstyle name="TableHeader" parent="Normal" fontname="Helvetica-Oblique" fontsize="9" alignment="left" />\n
+    <paragraphstyle name="TableLastLine" parent="Normal" fontname="Helvetica-Oblique" fontsize="11" alignment="left" />\n
+      \n
+    <paragraphstyle name="Section1" parent="Normal" fontname="Helvetica-Bold" fontsize="10"/>\n
+    <paragraphstyle name="Section2" leftindent="0.4cm" parent="Normal" fontname="Helvetica-Bold" fontsize="7"/>\n
+    <paragraphstyle name="Section3" leftindent="0.8cm" parent="Normal" fontname="Helvetica" fontsize="7"/>\n
+    <paragraphstyle name="Section4" leftindent="1.2cm" parent="Normal" fontname="Helvetica" fontsize="7"/>\n
+    <paragraphstyle name="Section5" leftindent="1.6cm" parent="Normal" fontname="Helvetica" fontsize="7"/>\n
+    <paragraphstyle name="Section6" leftindent="2.0cm" parent="Normal" fontname="Helvetica" fontsize="7"/>\n
+    <paragraphstyle name="Section7" leftindent="2.4cm" parent="Normal" fontname="Helvetica" fontsize="7"/>\n
+    <paragraphstyle name="Section8" leftindent="2.8cm" parent="Normal" fontname="Helvetica" fontsize="7"/>\n
+    <paragraphstyle name="Section9" leftindent="3.2cm" parent="Normal" fontname="Helvetica" fontsize="7"/>\n
+\n
+\n
+    <tablestyle name="StandardTable">\n
+      <stylecmd expr="(\'FONT\', (0,0), (-1,-1), \'Helvetica\', 8)"/>\n
+      <stylecmd expr="(\'BOX\', (0,0), (-1,0), 1, colors.black)"/>\n
+      <stylecmd expr="(\'BOX\', (0,1), (-1,-1), 1, colors.black)"/>\n
+      <stylecmd expr="(\'BACKGROUND\', (0,0), (-1,0), (0.9,0.9,0.9))"/>\n
+      <stylecmd expr="(\'ALIGN\', (0,0), (-1,-1), \'CENTER\')"/>\n
+      <stylecmd expr="(\'VALIGN\', (0,0), (-1,-1), \'TOP\')"/>\n
+    </tablestyle>\n
+    <tablestyle name="StandardTableWithGrid">\n
+      <stylecmd expr="(\'INNERGRID\', (0,1), (-1,-1), 1, (0.5,0.5,0.5))"/>\n
+      <stylecmd expr="(\'FONT\', (0,0), (-1,-1), \'Helvetica\', 8)"/>\n
+      <stylecmd expr="(\'BOX\', (0,0), (-1,0), 1, colors.black)"/>\n
+      <stylecmd expr="(\'BOX\', (0,1), (-1,-1), 1, colors.black)"/>\n
+      <stylecmd expr="(\'BACKGROUND\', (0,0), (-1,0), (0.9,0.9,0.9))"/>\n
+      <stylecmd expr="(\'ALIGN\', (0,0), (-1,-1), \'CENTER\')"/>\n
+      <stylecmd expr="(\'VALIGN\', (0,0), (-1,-1), \'TOP\')"/>\n
+    </tablestyle>\n
+    <tablestyle name="MatrixBoxWithGrid">\n
+      <stylecmd expr="(\'INNERGRID\', (0,0), (-1,-1), 1, (0.5,0.5,0.5))"/>\n
+      <stylecmd expr="(\'FONT\', (0,0), (-1,-1), \'Helvetica\', 8)"/>\n
+      <stylecmd expr="(\'BOX\', (0,0), (-1,0), 1, colors.black)"/>\n
+      <stylecmd expr="(\'BOX\', (0,1), (-1,-1), 1, colors.black)"/>\n
+      <stylecmd expr="(\'BOX\', (0,0), (0,-1), 1, colors.black)"/>\n
+      <stylecmd expr="(\'BACKGROUND\', (0,0), (-1,0), (0.9,0.9,0.9))"/>\n
+      <stylecmd expr="(\'BACKGROUND\', (0,0), (0,-1), (0.9,0.9,0.9))"/>\n
+      <stylecmd expr="(\'ALIGN\', (0,0), (-1,-1), \'CENTER\')"/>\n
+      <stylecmd expr="(\'VALIGN\', (0,0), (-1,-1), \'TOP\')"/>\n
+    </tablestyle>\n
+    <tablestyle name="AttributesTable">\n
+      <stylecmd expr="(\'INNERGRID\', (0,0), (-1,-1), 1, (0.5,0.5,0.5))"/>\n
+      <stylecmd expr="(\'FONT\', (0,0), (-1,-1), \'Helvetica\', 8)"/>\n
+      <stylecmd expr="(\'BOX\', (0,0), (-1,-1), 1, colors.black)"/>\n
+      <stylecmd expr="(\'BACKGROUND\', (0,0), (0,-1), (0.9,0.9,0.9))"/>\n
+      <stylecmd expr="(\'ALIGN\', (0,0), (-1,-1), \'CENTER\')"/>\n
+      <stylecmd expr="(\'VALIGN\', (0,0), (-1,-1), \'TOP\')"/>\n
+    </tablestyle>\n
+\n
+  </stylesheet>\n
+\n
+\n
+  <pagetemplate id="FirstPage" nextid="FirstPage" startframe="content">\n
+    <static>\n
+      <infostring align="left" x="28cm" y= "1cm" size="10" font="Helvetica" color="(0,0,0)" >Page %(page)s</infostring>\n
+    </static>\n
+\n
+    <frame id="content"\n
+           nextid="content"\n
+           x="1.8cm"\n
+           y="0.6cm"\n
+           width="26cm"\n
+           height="19.5cm"\n
+           leftpadding="0.1cm"\n
+           rightpadding="0.1cm"\n
+           toppadding="0.2cm"\n
+           bottompadding="0.5cm"\n
+           showBoundary="1"/>\n
+ \n
+  </pagetemplate>\n
+\n
+</template>
+
+]]></string> </value>
+        </item>
+        <item>
+            <key> <string>content_type</string> </key>
+            <value> <string>text/xml</string> </value>
+        </item>
+        <item>
+            <key> <string>expand</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>empty_pdf</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/form_list.xml b/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/form_list.xml
new file mode 100755
index 0000000000000000000000000000000000000000..04fd2fd373e5c66af955adfbe7cf5f0cfaaf18c5
--- /dev/null
+++ b/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/form_list.xml
@@ -0,0 +1,105 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <tuple>
+          <string>Products.ERP5Form.PDFTemplate</string>
+          <string>PDFTemplate</string>
+        </tuple>
+        <none/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>__ac_local_roles__</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_text</string> </key>
+            <value> <string encoding="cdata"><![CDATA[
+
+<?xml version="1.0" encoding="iso-8859-1" ?>\n
+<document filename="erp5_list.pdf"\n
+   xmlns:tal="http://xml.zope.org/namespaces/tal"\n
+   xmlns:metal="http://xml.zope.org/namespaces/metal"  \n
+   tal:define="global frame_width python:25.8"\n
+   metal:define-macro="master">\n
+  <title>List Print</title>\n
+  <author>Nexedi</author>\n
+  <subject>Print Example</subject>\n
+  <content>\n
+  <tal:block metal:define-macro="form_layout"\n
+     tal:define="groups python: form.get_groups(include_empty=1);\n
+                 field_errors python: request.get(\'field_errors\',{});\n
+                 dummy python: request.set(\'here\',here);\n
+                 listbox python:form.get_fields_in_group(groups[0])[0];">\n
+\n
+\n
+    <tal:block tal:condition="python: listbox.meta_type == \'ListBox\'">\n
+      <div metal:use-macro="here/listbox_pdf_macro/macros/listbox" />\n
+    </tal:block>\n
+\n
+\n
+  </tal:block>\n
+  </content>\n
+</document>\n
+\n
+\n
+
+
+]]></string> </value>
+        </item>
+        <item>
+            <key> <string>content_type</string> </key>
+            <value> <string>text/html</string> </value>
+        </item>
+        <item>
+            <key> <string>expand</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>form_list</string> </value>
+        </item>
+        <item>
+            <key> <string>pdf_stylesheet</string> </key>
+            <value> <string>empty_pdf</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/form_view.xml b/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/form_view.xml
new file mode 100755
index 0000000000000000000000000000000000000000..74f742776d2f2273999b6a3dfad41b065fdb2661
--- /dev/null
+++ b/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/form_view.xml
@@ -0,0 +1,167 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <tuple>
+          <string>Products.ERP5Form.PDFTemplate</string>
+          <string>PDFTemplate</string>
+        </tuple>
+        <none/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>__ac_local_roles__</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_owner</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_text</string> </key>
+            <value> <string encoding="cdata"><![CDATA[
+
+<?xml version="1.0" encoding="iso-8859-1" ?>\n
+<document filename="erp5_list.pdf"\n
+   xmlns:tal="http://xml.zope.org/namespaces/tal"\n
+   xmlns:metal="http://xml.zope.org/namespaces/metal"\n
+   tal:define="global frame_width python:25.8"\n
+   metal:define-macro="master">\n
+  <title>List Print</title>\n
+  <author>Nexedi</author>\n
+  <subject>Print Example</subject>\n
+  <content>\n
+  <tal:block metal:define-macro="form_layout"\n
+             tal:define="group_list python: form.get_groups(include_empty=1);\n
+                       field_errors python: request.get(\'field_errors\',{});\n
+                       dummy python: request.set(\'here\',here); ">\n
+\n
+\n
+    <tal:block tal:repeat="group python: group_list[:3]">\n
+      <tal:block tal:define="field_list python: form.get_fields_in_group(group)">\n
+        <tal:block tal:condition="python: field_list not in [None, []]">\n
+\n
+          <table splitbyrow="1" repeatrows="0" repeatcols="0"  style="AttributesTable" >\n
+            <tal:block tal:repeat="field field_list">\n
+              <tal:block tal:condition="python:field.meta_type != \'HiddenStringField\'">\n
+                <tr>\n
+                  <td tal:attributes="colwidth python: \'5cm\'" >\n
+                    <para  style="TableHeader" tal:content="python: here.Localizer.erp5_ui.gettext(field.get_value(\'title\')).encode(\'utf-8\')"/>\n
+                  </td>\n
+                  <td tal:attributes="colwidth python: None" tal:define="value python: field.get_value(\'default\')">\n
+                    <tal:block tal:condition="python: same_type(value,[]) or same_type(value,())">\n
+                      <tal:block tal:repeat="item value">\n
+                        <para  style="TableStandard" tal:content="python: str(item)" />\n
+                      </tal:block>\n
+                    </tal:block>\n
+                    <tal:block tal:condition="python: (not (same_type(value,[]) or same_type(value,()) )) and (value != None)">\n
+                      <para  style="TableStandard" tal:content="python: \'%s \' % value" />\n
+                    </tal:block>\n
+                    <tal:block tal:condition="python: value == None">\n
+                      <para  style="TableStandard" tal:content="python: \' \'" />\n
+                    </tal:block>\n
+                  </td>\n
+                </tr>\n
+              </tal:block>\n
+            </tal:block>\n
+          </table>\n
+\n
+          <table><tr><td tal:content="python: \' \'"></td></tr></table>\n
+\n
+        </tal:block>\n
+      </tal:block>\n
+\n
+\n
+    </tal:block>\n
+\n
+    <tal:block tal:condition="python: len(group_list) > 3">\n
+      <tal:block tal:define="field_list python: form.get_fields_in_group(group_list[3])">\n
+        <tal:block tal:condition="python: field_list not in [None, []]">\n
+          <tal:block tal:repeat="field field_list">\n
+\n
+            <tal:block tal:condition="python: field.meta_type == \'MatrixBox\'">\n
+              <tal:block  tal:define="matrixbox python:field;">\n
+                <div metal:use-macro="here/matrixbox_pdf_macro/macros/matrixbox" />\n
+              </tal:block>\n
+            </tal:block>\n
+\n
+\n
+\n
+            <tal:block tal:condition="python: field.meta_type == \'ListBox\'">\n
+\n
+              <tal:block  tal:define="listbox python:field;" >\n
+                <div metal:use-macro="here/listbox_pdf_macro/macros/listbox" />\n
+              </tal:block>\n
+\n
+              <table><tr><td tal:content="python: \' \'"></td></tr></table>\n
+\n
+            </tal:block>\n
+          </tal:block>\n
+        </tal:block>\n
+      </tal:block>\n
+    </tal:block>\n
+\n
+\n
+  </tal:block>\n
+  </content>\n
+</document>
+
+]]></string> </value>
+        </item>
+        <item>
+            <key> <string>content_type</string> </key>
+            <value> <string>text/html</string> </value>
+        </item>
+        <item>
+            <key> <string>expand</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>form_view</string> </value>
+        </item>
+        <item>
+            <key> <string>pdf_stylesheet</string> </key>
+            <value> <string>empty_pdf</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/listbox_pdf_macro.xml b/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/listbox_pdf_macro.xml
new file mode 100755
index 0000000000000000000000000000000000000000..c037d5f19e69063182b0611643675d2060dbb8aa
--- /dev/null
+++ b/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/listbox_pdf_macro.xml
@@ -0,0 +1,201 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <tuple>
+          <string>Products.PageTemplates.ZopePageTemplate</string>
+          <string>ZopePageTemplate</string>
+        </tuple>
+        <none/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>__ac_local_roles__</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_owner</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_text</string> </key>
+            <value> <string encoding="cdata"><![CDATA[
+
+<html>\n
+  <head>\n
+    <title tal:content="python: here.Localizer.erp5_ui.gettext(template.title).encode(\'utf8\')" >Listbox PDF Macro</title>\n
+  </head>\n
+<body>\n
+\n
+\n
+    ***** ########### listbox: must define the field listbox before calling this macro ! ########### *****\n
+  <tal:block metal:define-macro="listbox">\n
+\n
+  <tal:block tal:define="listboxline_list python:listbox.get_value(\'default\', render_format=\'list\', REQUEST=request);\n
+                 selection_name python:listbox.get_value(\'selection_name\', REQUEST=request);\n
+                 selection python:here.portal_selections.getSelectionFor(selection_name, REQUEST=request);\n
+                 is_domain_tree_mode python:selection.domain_tree_mode;\n
+                 is_report_tree_mode python:selection.report_tree_mode;" >\n
+\n
+\n
+    <tal:block tal:condition="python: len(listboxline_list) > 1" >\n
+\n
+      <tal:block tal:condition="python: is_domain_tree_mode == 1" tal:define="domain_list python: selection.getDomainList()">\n
+        <tal:block tal:condition="python: len(domain_list) > 0" >\n
+        <table style="StandardTableWithGrid">\n
+          <tr>\n
+            <td tal:attributes="colwidth python:\'%.2fcm\' % float(frame_width)">\n
+              <para  style="TableHeader" tal:content="python: domain_list[-1]" />\n
+            </td>\n
+          </tr>\n
+        </table>\n
+        </tal:block>\n
+      </tal:block>\n
+\n
+\n
+      <tal:block tal:define="global column_width python:here.ListBox_getColumnWithDict(listboxline_list, is_domain_tree_mode, is_report_tree_mode, frame_width=frame_width)"/>\n
+\n
+      <tal:block tal:content="python:str(column_width)"/>\n
+\n
+      <table  splitbyrow="1" repeatrows="1" repeatcols="0"  style="StandardTableWithGrid">\n
+\n
+        <tal:block tal:repeat="listboxline python: listboxline_list">\n
+          <tr>\n
+\n
+            <tal:block tal:condition="python: is_report_tree_mode">\n
+\n
+              <td tal:attributes="colwidth python:\'%.2fcm\' % float(column_width[\'section_name\'])">\n
+                <tal:block tal:condition="listboxline/getSectionName">\n
+                  <para style="TableHeader" tal:content="listboxline/getSectionName"\n
+                        tal:attributes="style python:\'Section%s\' % listboxline.getSectionDepth()" />\n
+                </tal:block>\n
+              </td>\n
+            </tal:block>\n
+\n
+            <tal:block tal:condition="python: listboxline.isTitleLine()">\n
+              <tal:block tal:repeat="column_item python: listboxline.getColumnItemList()">\n
+                <tal:block tal:define="column_property python: column_item[1];\n
+                                       column_id python: column_item[0]">\n
+                  <tal:block tal:condition="python: column_property is not None">\n
+                    <td tal:attributes="colwidth python:\'%.2fcm\' % float(column_width[column_id])">\n
+                      <para  style="TableHeader" tal:content="python: here.Localizer.erp5_ui.gettext(str(column_property)).encode(\'utf8\')"/>\n
+                    </td>\n
+                  </tal:block>\n
+                  <tal:block tal:condition="python: column_property is None">\n
+                    <td tal:attributes="colwidth python:\'%.2fcm\' % float(column_width[column_id])">\n
+                      <para  style="TableHeader" tal:content="python: \'\'" />\n
+                    </td>\n
+                  </tal:block>\n
+                </tal:block>\n
+              </tal:block>\n
+            </tal:block>\n
+\n
+\n
+            <tal:block tal:condition="python: listboxline.isDataLine() ">\n
+              <tal:block tal:repeat="column_item python: listboxline.getColumnItemList()">\n
+                <tal:block tal:define="column_property python: column_item[1];\n
+                                       column_id python: column_item[0]">\n
+                  <tal:block tal:condition="python: column_property is not None">\n
+                    <td tal:attributes="colwidth python:\'%.2fcm\' % float(column_width[column_id])">\n
+                      <para  style="TableStandard" tal:content="python: str(column_property)"\n
+                             tal:attributes="style python:column_id in (\'gap_id\', \'id\', \'title\', \'translated_portal_type\', \'third_party\', \'translated_simulation_state_title\') and \'TableStandardLeftAligned\' or \'TableStandardRightAligned\'" />\n
+                    </td>\n
+                  </tal:block>\n
+                  <tal:block tal:condition="python: column_property is None">\n
+                    <td>\n
+                      <para  style="TableStandard" tal:content="python: \'\' " />\n
+                    </td>\n
+                  </tal:block>\n
+                </tal:block>\n
+              </tal:block>\n
+            </tal:block>\n
+\n
+            <tal:block tal:condition="python: listboxline.isStatLine() or listboxline.isSummaryLine()">\n
+              <tal:block tal:repeat="column_item python: listboxline.getColumnItemList()">\n
+                <tal:block tal:define="column_property python: column_item[1];\n
+                                       column_id python: column_item[0]">\n
+                  <tal:block tal:condition="python: column_property is not None">\n
+                    <td tal:attributes="colwidth python:\'%.2fcm\' % float(column_width[column_id])">\n
+                      <para  style="TableLastLine" tal:content="python: str(column_property)" />\n
+                    </td>\n
+                  </tal:block>\n
+                  <tal:block tal:condition="python: column_property is None">\n
+                    <td tal:attributes="colwidth python:\'%.2fcm\' % float(column_width[column_id])">\n
+                      <para style="TableLastLine"> </para>\n
+                    </td>\n
+                  </tal:block>\n
+                </tal:block>\n
+              </tal:block>\n
+            </tal:block>\n
+\n
+          </tr>\n
+        </tal:block>\n
+\n
+\n
+      </table>\n
+    </tal:block>\n
+\n
+\n
+\n
+  </tal:block>\n
+  </tal:block>\n
+\n
+\n
+   </body>\n
+</html>
+
+]]></string> </value>
+        </item>
+        <item>
+            <key> <string>content_type</string> </key>
+            <value> <string>text/html</string> </value>
+        </item>
+        <item>
+            <key> <string>expand</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>listbox_pdf_macro</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/matrixbox_pdf_macro.xml b/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/matrixbox_pdf_macro.xml
new file mode 100755
index 0000000000000000000000000000000000000000..7a090e339de34c4d1bebf82418be3c4d4fd5246c
--- /dev/null
+++ b/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/matrixbox_pdf_macro.xml
@@ -0,0 +1,117 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <tuple>
+          <string>Products.PageTemplates.ZopePageTemplate</string>
+          <string>ZopePageTemplate</string>
+        </tuple>
+        <none/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>__ac_local_roles__</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_owner</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_text</string> </key>
+            <value> <string encoding="cdata"><![CDATA[
+
+<html>\n
+  <head>\n
+    <title tal:content="template/title">Matrixbox PDF Macro</title>\n
+  </head>\n
+<body> \n
+\n
+\n
+    ***** ########### matrixbox: must define the field matrixbox before calling this macro ! ########### *****\n
+  <tal:block metal:define-macro="matrixbox"> \n
+\n
+              <tal:block  tal:define="list python:matrixbox.get_value(\'default\', render_format=\'list\', REQUEST=request);" >\n
+\n
+                <tal:block tal:repeat="tab list">\n
+                  <table  splitbyrow="1" repeatrows="1" repeatcols="0"  style="MatrixBoxWithGrid">\n
+                    <tal:block tal:repeat="row tab">\n
+                      <tr>\n
+                        <tal:block tal:repeat="column row">\n
+                          <td>\n
+\n
+                              <para  style="TableStandard" tal:content="python: column" />\n
+\n
+                          </td>\n
+                        </tal:block>\n
+                      </tr>\n
+                    </tal:block>\n
+                  </table>\n
+                  <table><tr><td tal:content="python: \' \'"></td></tr></table>\n
+                </tal:block>\n
+\n
+              </tal:block>\n
+\n
+\n
+\n
+  </tal:block>  \n
+\n
+\n
+   </body>\n
+</html>
+
+]]></string> </value>
+        </item>
+        <item>
+            <key> <string>content_type</string> </key>
+            <value> <string>text/html</string> </value>
+        </item>
+        <item>
+            <key> <string>expand</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>matrixbox_pdf_macro</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/report_pdf.xml b/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/report_pdf.xml
new file mode 100755
index 0000000000000000000000000000000000000000..40f15abe4766764d700b949dc0e3b73a44c020c5
--- /dev/null
+++ b/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/report_pdf.xml
@@ -0,0 +1,208 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <tuple>
+          <string>Products.PageTemplates.ZopePageTemplate</string>
+          <string>ZopePageTemplate</string>
+        </tuple>
+        <none/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>__ac_local_roles__</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_owner</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_text</string> </key>
+            <value> <string encoding="cdata"><![CDATA[
+
+<?xml version="1.0" encoding="utf-8" ?>\n
+<template filename="default.pdf"\n
+          pagesize="A4"\n
+          landscape="0"\n
+          showboundary="1"\n
+          leftmargin="1cm"\n
+          rightmargin="1cm"\n
+          topmargin="1cm"\n
+          bottommargin="1cm"\n
+          allowsplitting="1">\n
+\n
+ <stylesheet>\n
+\n
+    <paragraphstyle name="Normal" fontname="Helvetica" fontsize="9" align="LEFT" firstLineIndent="0"/>\n
+    <paragraphstyle name="Bullet" fontname="Helvetica" fontsize="9" bulletFontName="Symbol" bulletFontSize="8" leftIndent="20"  firstLineIndent="0" parent="Normal"/>\n
+    <paragraphstyle name="Title" parent="Normal" fontname="Helvetica-Bold" fontsize="32" align="CENTER"/>\n
+    <paragraphstyle name="Heading1" parent="Normal" fontname="Helvetica-Bold" fontsize="16" spacebefore="20"/>\n
+    <paragraphstyle name="Heading2" parent="Normal" fontname="Helvetica-Bold" fontsize="15"/>\n
+    <paragraphstyle name="Heading3" parent="Normal" fontname="Helvetica-Bold" fontsize="14"/>\n
+    <paragraphstyle name="Heading4" parent="Normal" fontname="Helvetica-Bold" fontsize="13"/>\n
+    <paragraphstyle name="Heading5" parent="Normal" fontname="Helvetica-Bold" fontsize="12"/>\n
+    <paragraphstyle name="Heading6" parent="Normal" fontname="Helvetica-Bold" fontsize="11"/>\n
+    <paragraphstyle name="Heading7" parent="Normal" fontname="Helvetica-Bold" fontsize="10"/>\n
+    <paragraphstyle name="Heading8" parent="Normal" fontname="Helvetica-Bold" fontsize="10"/>\n
+    <paragraphstyle name="Heading9" parent="Normal" fontname="Helvetica-Bold" fontsize="10"/>\n
+\n
+    <paragraphstyle name="Small" parent="Normal" fontname="Helvetica-Bold" fontsize="6"/>\n
+    <paragraphstyle name="Cell" parent="Normal" fontname="Helvetica-Bold" fontsize="9" alignment="center" />\n
+    <paragraphstyle name="CellHeading" parent="Normal" fontname="Helvetica-Bold" fontsize="9" alignment="center"/>\n
+\n
+    <paragraphstyle name="Example" fontname="Courier-Oblique" fontsize="10" parent="Normal"/>\n
+    <paragraphstyle name="ParaHeadLine" fontname="Helvetica" fontsize="8" parent="Normal"/>\n
+    <paragraphstyle name="ParaHeadLine2" fontname="Helvetica" fontsize="6" parent="Normal"/>\n
+    <paragraphstyle name="ParaHeadLine3" align="RIGHT" fontname="Helvetica" fontsize="6"/>\n
+\n
+    <paragraphstyle name="TableStandard" parent="Normal" fontname="Helvetica" fontsize="7" alignment="right" />\n
+    <paragraphstyle name="TableStandardLeftAligned" parent="Normal" fontname="Helvetica" fontsize="7" alignment="left" />\n
+    <paragraphstyle name="TableStandardRightAligned" parent="Normal" fontname="Helvetica" fontsize="7" alignment="right" />\n
+    <paragraphstyle name="TableHeader" parent="Normal" fontname="Helvetica-Oblique" fontsize="7" alignment="left" />\n
+    <paragraphstyle name="TableLastLine" parent="Normal" fontname="Helvetica-Oblique" fontsize="7" alignment="right" />\n
+\n
+    <paragraphstyle name="Section1" parent="Normal" fontname="Helvetica-Bold" fontsize="10"/>\n
+    <paragraphstyle name="Section2" leftindent="0.4cm" parent="Normal" fontname="Helvetica-Bold" fontsize="7"/>\n
+    <paragraphstyle name="Section3" leftindent="0.8cm" parent="Normal" fontname="Helvetica" fontsize="7"/>\n
+    <paragraphstyle name="Section4" leftindent="1.2cm" parent="Normal" fontname="Helvetica" fontsize="7"/>\n
+    <paragraphstyle name="Section5" leftindent="1.6cm" parent="Normal" fontname="Helvetica" fontsize="7"/>\n
+    <paragraphstyle name="Section6" leftindent="2.0cm" parent="Normal" fontname="Helvetica" fontsize="7"/>\n
+    <paragraphstyle name="Section7" leftindent="2.4cm" parent="Normal" fontname="Helvetica" fontsize="7"/>\n
+    <paragraphstyle name="Section8" leftindent="2.8cm" parent="Normal" fontname="Helvetica" fontsize="7"/>\n
+    <paragraphstyle name="Section9" leftindent="3.2cm" parent="Normal" fontname="Helvetica" fontsize="7"/>\n
+\n
+    <tablestyle name="StandardTable">\n
+      <stylecmd expr="(\'FONT\', (0,0), (-1,-1), \'Helvetica\', 8)"/>\n
+      <stylecmd expr="(\'BOX\', (0,0), (-1,0), 1, colors.black)"/>\n
+      <stylecmd expr="(\'BOX\', (0,1), (-1,-1), 1, colors.black)"/>\n
+      <stylecmd expr="(\'BACKGROUND\', (0,0), (-1,0), (0.9,0.9,0.9))"/>\n
+      <stylecmd expr="(\'ALIGN\', (0,0), (-1,-1), \'CENTER\')"/>\n
+      <stylecmd expr="(\'VALIGN\', (0,0), (-1,-1), \'TOP\')"/>\n
+      <stylecmd expr="(\'LEFTPADDING\', (0,0), (-1,-1), 1)"/>\n
+      <stylecmd expr="(\'RIGHTPADDING\', (0,0), (-1,-1), 1)"/>\n
+      <stylecmd expr="(\'BOTTOMPADDING\', (0,0), (-1,-1), 0)"/>\n
+      <stylecmd expr="(\'TOPPADDING\', (0,0), (-1,-1), 1)"/>\n
+    </tablestyle>\n
+    <tablestyle name="StandardTableWithGrid">\n
+      <stylecmd expr="(\'INNERGRID\', (0,1), (-1,-1), 1, (0.5,0.5,0.5))"/>\n
+      <stylecmd expr="(\'FONT\', (0,0), (-1,-1), \'Helvetica\', 8)"/>\n
+      <stylecmd expr="(\'BOX\', (0,0), (-1,0), 1, colors.black)"/>\n
+      <stylecmd expr="(\'BOX\', (0,1), (-1,-1), 1, colors.black)"/>\n
+      <stylecmd expr="(\'BACKGROUND\', (0,0), (-1,0), (0.9,0.9,0.9))"/>\n
+      <stylecmd expr="(\'ALIGN\', (0,0), (-1,-1), \'CENTER\')"/>\n
+      <stylecmd expr="(\'VALIGN\', (0,0), (-1,-1), \'TOP\')"/>\n
+      <stylecmd expr="(\'LEFTPADDING\', (0,0), (-1,-1), 2)"/>\n
+      <stylecmd expr="(\'RIGHTPADDING\', (0,0), (-1,-1), 1)"/>\n
+      <stylecmd expr="(\'BOTTOMPADDING\', (0,0), (-1,-1), 0)"/>\n
+      <stylecmd expr="(\'TOPPADDING\', (0,0), (-1,-1), 1)"/>\n
+    </tablestyle>\n
+    <tablestyle name="MatrixBoxWithGrid">\n
+      <stylecmd expr="(\'INNERGRID\', (0,0), (-1,-1), 1, (0.5,0.5,0.5))"/>\n
+      <stylecmd expr="(\'FONT\', (0,0), (-1,-1), \'Helvetica\', 8)"/>\n
+      <stylecmd expr="(\'BOX\', (0,0), (-1,0), 1, colors.black)"/>\n
+      <stylecmd expr="(\'BOX\', (0,1), (-1,-1), 1, colors.black)"/>\n
+      <stylecmd expr="(\'BOX\', (0,0), (0,-1), 1, colors.black)"/>\n
+      <stylecmd expr="(\'BACKGROUND\', (0,0), (-1,0), (0.9,0.9,0.9))"/>\n
+      <stylecmd expr="(\'BACKGROUND\', (0,0), (0,-1), (0.9,0.9,0.9))"/>\n
+      <stylecmd expr="(\'ALIGN\', (0,0), (-1,-1), \'CENTER\')"/>\n
+      <stylecmd expr="(\'VALIGN\', (0,0), (-1,-1), \'TOP\')"/>\n
+      <stylecmd expr="(\'LEFTPADDING\', (0,0), (-1,-1), 2)"/>\n
+      <stylecmd expr="(\'RIGHTPADDING\', (0,0), (-1,-1), 1)"/>\n
+      <stylecmd expr="(\'BOTTOMPADDING\', (0,0), (-1,-1), 0)"/>\n
+      <stylecmd expr="(\'TOPPADDING\', (0,0), (-1,-1), 1)"/>\n
+    </tablestyle>\n
+    <tablestyle name="AttributesTable">\n
+      <stylecmd expr="(\'INNERGRID\', (0,0), (-1,-1), 1, (0.1,0.1,0.1))"/>\n
+      <stylecmd expr="(\'FONT\', (0,0), (-1,-1), \'Helvetica\', 8)"/>\n
+      <stylecmd expr="(\'BOX\', (0,0), (-1,-1), 1, colors.black)"/>\n
+      <stylecmd expr="(\'BACKGROUND\', (0,0), (0,-1), (0.9,0.9,0.9))"/>\n
+      <stylecmd expr="(\'ALIGN\', (0,0), (-1,-1), \'CENTER\')"/>\n
+      <stylecmd expr="(\'VALIGN\', (0,0), (-1,-1), \'TOP\')"/>\n
+      <stylecmd expr="(\'LEFTPADDING\', (0,0), (-1,-1), 2)"/>\n
+      <stylecmd expr="(\'RIGHTPADDING\', (0,0), (-1,-1), 1)"/>\n
+      <stylecmd expr="(\'BOTTOMPADDING\', (0,0), (-1,-1), 0)"/>\n
+      <stylecmd expr="(\'TOPPADDING\', (0,0), (-1,-1), 1)"/>\n
+    </tablestyle>\n
+\n
+  </stylesheet>\n
+\n
+\n
+  <pagetemplate id="FirstPage" nextid="FirstPage" startframe="content">\n
+    <static>\n
+      <infostring align="left" x="1cm" y= "29cm" size="8" font="Helvetica" color="(0,0,0)"\n
+                  tal:content="python: here.Localizer.erp5_ui.gettext(\'Printed by %(user)s at %(date)s\') % {\'user\':user.getUserName(), \'date\':DateTime()}" >Printed by</infostring>\n
+      <infostring align="left" x="18cm" y= "0.5cm" size="10" font="Helvetica" color="(0,0,0)" >Page %(page)s</infostring>\n
+    </static>\n
+\n
+    <frame id="content"\n
+           nextid="content"\n
+           x="1cm"\n
+           y="1cm"\n
+           width="19cm"\n
+           height="27.7cm"\n
+           leftpadding="0cm"\n
+           rightpadding="0cm"\n
+           toppadding="0cm"\n
+           bottompadding="0cm"\n
+           showBoundary="0"/>\n
+\n
+  </pagetemplate>\n
+\n
+</template>
+
+]]></string> </value>
+        </item>
+        <item>
+            <key> <string>content_type</string> </key>
+            <value> <string>text/html</string> </value>
+        </item>
+        <item>
+            <key> <string>expand</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>report_pdf</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/report_view.xml b/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/report_view.xml
new file mode 100755
index 0000000000000000000000000000000000000000..974886d643d7eea3f9773e0042b7909b741b5b8e
--- /dev/null
+++ b/bt5/erp5_pdf_style/SkinTemplateItem/portal_skins/erp5_pdf_style/report_view.xml
@@ -0,0 +1,213 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <tuple>
+          <string>Products.ERP5Form.PDFTemplate</string>
+          <string>PDFTemplate</string>
+        </tuple>
+        <none/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>__ac_local_roles__</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_owner</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_text</string> </key>
+            <value> <string encoding="cdata"><![CDATA[
+
+<?xml version="1.0" encoding="iso-8859-1" ?>\n
+<document filename="erp5_list.pdf"\n
+   xmlns:tal="http://xml.zope.org/namespaces/tal"\n
+   xmlns:metal="http://xml.zope.org/namespaces/metal"\n
+   tal:define="global frame_width python:19"\n
+   metal:define-macro="master">\n
+  <title>List Print</title>\n
+  <author>ERP5</author>\n
+  <subject>Print Example</subject>\n
+  <content tal:define="group_list python: form.get_groups(include_empty=1);\n
+                       field_errors python: request.get(\'field_errors\',{});\n
+                       dummy python: request.set(\'here\',here); ">\n
+\n
+   <action name="nextPageTemplate">\n
+      <parameter>FirstPage</parameter>\n
+   </action>\n
+\n
+   <para tal:content="form/title" style="Title" i18n:translate="" i18n:domain="ui">toto</para>\n
+   <spacer height="100"/>\n
+\n
+\n
+    <tal:block tal:repeat="group python: group_list[:3]">\n
+      <tal:block tal:define="field_list python: form.get_fields_in_group(group)">\n
+        <tal:block tal:condition="python: field_list not in [None, []]">\n
+\n
+          <table splitbyrow="1" repeatrows="0" repeatcols="0"  style="AttributesTable" >\n
+            <tal:block tal:repeat="field field_list">\n
+              <tal:block tal:condition="python:field.meta_type != \'HiddenStringField\'">\n
+                <tr>\n
+                  <td tal:attributes="colwidth python: \'5cm\'" >\n
+                    <para  style="TableHeader" tal:content="python: here.Localizer.erp5_ui.gettext(field.get_value(\'title\')).encode(\'utf-8\')" />\n
+                  </td>\n
+                  <td tal:attributes="colwidth python: None" tal:define="value python: field.get_value(\'default\')">\n
+                    <tal:block tal:condition="python: same_type(value,[]) or same_type(value,())">\n
+                      <tal:block tal:repeat="item value">\n
+                        <para  style="TableStandard" tal:content="python: str(item)" />\n
+                      </tal:block>\n
+                    </tal:block>\n
+                    <tal:block tal:condition="python: not (same_type(value, []) or same_type(value, ()) or same_type(value, DateTime()) or same_type(value, None))">\n
+                      <para  style="TableStandard" tal:content="python: \'%s \' % value" />\n
+                    </tal:block>\n
+                    <tal:block tal:condition="python: same_type(value, DateTime())">\n
+                      <para  style="TableStandard" tal:content="python: field.render_view(value)" />\n
+                    </tal:block>\n
+                    <tal:block tal:condition="python: value is None">\n
+                      <para  style="TableStandard" tal:content="python: \' \'" />\n
+                    </tal:block>\n
+                  </td>\n
+                </tr>\n
+              </tal:block>\n
+            </tal:block>\n
+          </table>\n
+\n
+          <table><tr><td tal:content="python: \' \'"></td></tr></table>\n
+\n
+        </tal:block>\n
+      </tal:block>\n
+\n
+\n
+    </tal:block>\n
+\n
+    <tal:block tal:condition="python: len(group_list) > 3">\n
+      <tal:block tal:define="field_list python: form.get_fields_in_group(group_list[3])">\n
+        <tal:block tal:condition="python: field_list not in [None, []]">\n
+          <tal:block tal:repeat="field field_list">\n
+\n
+            <tal:block tal:condition="python: field.meta_type == \'MatrixBox\'">\n
+              <tal:block  tal:define="matrixbox python:field;">\n
+                <div metal:use-macro="here/matrixbox_pdf_macro/macros/matrixbox" />\n
+              </tal:block>\n
+            </tal:block>\n
+\n
+\n
+\n
+            <tal:block tal:condition="python: field.meta_type == \'ListBox\'">\n
+\n
+              <tal:block  tal:define="listbox python:field;" >\n
+                <div metal:use-macro="here/listbox_pdf_macro/macros/listbox" />\n
+              </tal:block>\n
+\n
+              <table><tr><td tal:content="python: \' \'"></td></tr></table>\n
+\n
+            </tal:block>\n
+          </tal:block>\n
+        </tal:block>\n
+      </tal:block>\n
+    </tal:block>\n
+\n
+\n
+   <spacer height="100"/>\n
+\n
+\n
+<tal:block tal:define="portal_object here/portal_url/getPortalObject">\n
+<tal:block tal:repeat="report_item python:report_method()">\n
+  <tal:block tal:define="here python:report_item.getObject(portal_object);\n
+                         dummy python:report_item.pushReport(portal_object)">\n
+  <tal:block tal:condition="report_item/getTitle | report_item/getTranslatedTitle">\n
+    <tal:block tal:condition="report_item/getTitle">\n
+      <para style="Heading1" tal:content="report_item/getTitle"\n
+                             i18n:translate=""\n
+                             tal:attributes="style python:\'Heading%s\' % report_item.getLevel()">toto</para>\n
+\n
+      <para/>\n
+    </tal:block>\n
+    <tal:block tal:condition="report_item/getTranslatedTitle">\n
+      <para style="Heading1" tal:content="report_item/getTranslatedTitle"\n
+                             tal:attributes="style python:\'Heading%s\' % report_item.getLevel()">toto</para>\n
+\n
+      <para/>\n
+    </tal:block>\n
+  </tal:block>\n
+  <tal:block tal:condition="report_item/getFormId">\n
+    <tal:block tal:define="form python:getattr(here,report_item.getFormId())" >\n
+      <tal:block tal:condition="python:form.pt == \'form_view\'">\n
+        <tal:block metal:use-macro="form/form_view/macros/form_layout"/>\n
+      </tal:block>\n
+      <tal:block tal:condition="python:form.pt == \'form_list\'">\n
+        <tal:block metal:use-macro="form/form_list/macros/form_layout"/>\n
+      </tal:block>\n
+    </tal:block>\n
+  </tal:block>\n
+  </tal:block>\n
+  <tal:block tal:define="dummy python:report_item.popReport(portal_object)"/>\n
+</tal:block>\n
+</tal:block>\n
+\n
+\n
+  </content>\n
+\n
+</document>
+
+]]></string> </value>
+        </item>
+        <item>
+            <key> <string>content_type</string> </key>
+            <value> <string>text/html</string> </value>
+        </item>
+        <item>
+            <key> <string>expand</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>report_view</string> </value>
+        </item>
+        <item>
+            <key> <string>pdf_stylesheet</string> </key>
+            <value> <string>report_pdf</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_pdf_style/bt/categories_list b/bt5/erp5_pdf_style/bt/categories_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/change_log b/bt5/erp5_pdf_style/bt/change_log
new file mode 100755
index 0000000000000000000000000000000000000000..c10b0a9f263c56630e887c35006d0d4b826f6571
--- /dev/null
+++ b/bt5/erp5_pdf_style/bt/change_log
@@ -0,0 +1,2 @@
+2006-02-24 Seb
+* Created this business template in order to split erp5_core
\ No newline at end of file
diff --git a/bt5/erp5_pdf_style/bt/copyright_list b/bt5/erp5_pdf_style/bt/copyright_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/dependency_list b/bt5/erp5_pdf_style/bt/dependency_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/description b/bt5/erp5_pdf_style/bt/description
new file mode 100755
index 0000000000000000000000000000000000000000..0ae7e6c5e62d6322c77b83fc3c9e2b006e5000b6
--- /dev/null
+++ b/bt5/erp5_pdf_style/bt/description
@@ -0,0 +1 @@
+The ERP5 Pdf style used in order to display nice PDF reports.
\ No newline at end of file
diff --git a/bt5/erp5_pdf_style/bt/license b/bt5/erp5_pdf_style/bt/license
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/publication_url b/bt5/erp5_pdf_style/bt/publication_url
new file mode 100755
index 0000000000000000000000000000000000000000..4af18322e32f3dd19579c80e26e4a306ad11e049
--- /dev/null
+++ b/bt5/erp5_pdf_style/bt/publication_url
@@ -0,0 +1 @@
+None
\ No newline at end of file
diff --git a/bt5/erp5_pdf_style/bt/revision b/bt5/erp5_pdf_style/bt/revision
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_action_path_list b/bt5/erp5_pdf_style/bt/template_action_path_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_base_category_list b/bt5/erp5_pdf_style/bt/template_base_category_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_catalog_full_text_key_list b/bt5/erp5_pdf_style/bt/template_catalog_full_text_key_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_catalog_keyword_key_list b/bt5/erp5_pdf_style/bt/template_catalog_keyword_key_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_catalog_method_id_list b/bt5/erp5_pdf_style/bt/template_catalog_method_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_catalog_multivalue_key_list b/bt5/erp5_pdf_style/bt/template_catalog_multivalue_key_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_catalog_related_key_list b/bt5/erp5_pdf_style/bt/template_catalog_related_key_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_catalog_request_key_list b/bt5/erp5_pdf_style/bt/template_catalog_request_key_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_catalog_result_key_list b/bt5/erp5_pdf_style/bt/template_catalog_result_key_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_catalog_result_table_list b/bt5/erp5_pdf_style/bt/template_catalog_result_table_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_catalog_topic_key_list b/bt5/erp5_pdf_style/bt/template_catalog_topic_key_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_constraint_id_list b/bt5/erp5_pdf_style/bt/template_constraint_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_document_id_list b/bt5/erp5_pdf_style/bt/template_document_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_extension_id_list b/bt5/erp5_pdf_style/bt/template_extension_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_format_version b/bt5/erp5_pdf_style/bt/template_format_version
new file mode 100755
index 0000000000000000000000000000000000000000..56a6051ca2b02b04ef92d5150c9ef600403cb1de
--- /dev/null
+++ b/bt5/erp5_pdf_style/bt/template_format_version
@@ -0,0 +1 @@
+1
\ No newline at end of file
diff --git a/bt5/erp5_pdf_style/bt/template_local_roles_list b/bt5/erp5_pdf_style/bt/template_local_roles_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_message_translation_list b/bt5/erp5_pdf_style/bt/template_message_translation_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_module_id_list b/bt5/erp5_pdf_style/bt/template_module_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_path_list b/bt5/erp5_pdf_style/bt/template_path_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_portal_type_allowed_content_type_list b/bt5/erp5_pdf_style/bt/template_portal_type_allowed_content_type_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_portal_type_base_category_list b/bt5/erp5_pdf_style/bt/template_portal_type_base_category_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_portal_type_hidden_content_type_list b/bt5/erp5_pdf_style/bt/template_portal_type_hidden_content_type_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_portal_type_id_list b/bt5/erp5_pdf_style/bt/template_portal_type_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_portal_type_property_sheet_list b/bt5/erp5_pdf_style/bt/template_portal_type_property_sheet_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_portal_type_roles_list b/bt5/erp5_pdf_style/bt/template_portal_type_roles_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_portal_type_workflow_chain_list b/bt5/erp5_pdf_style/bt/template_portal_type_workflow_chain_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_product_id_list b/bt5/erp5_pdf_style/bt/template_product_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_property_sheet_id_list b/bt5/erp5_pdf_style/bt/template_property_sheet_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_role_list b/bt5/erp5_pdf_style/bt/template_role_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_site_property_id_list b/bt5/erp5_pdf_style/bt/template_site_property_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_skin_id_list b/bt5/erp5_pdf_style/bt/template_skin_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..436c010e3bb6f6bd99281c89452ad03b1b015cc7
--- /dev/null
+++ b/bt5/erp5_pdf_style/bt/template_skin_id_list
@@ -0,0 +1 @@
+erp5_pdf_style
\ No newline at end of file
diff --git a/bt5/erp5_pdf_style/bt/template_test_id_list b/bt5/erp5_pdf_style/bt/template_test_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/template_workflow_id_list b/bt5/erp5_pdf_style/bt/template_workflow_id_list
new file mode 100755
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/erp5_pdf_style/bt/title b/bt5/erp5_pdf_style/bt/title
new file mode 100755
index 0000000000000000000000000000000000000000..436c010e3bb6f6bd99281c89452ad03b1b015cc7
--- /dev/null
+++ b/bt5/erp5_pdf_style/bt/title
@@ -0,0 +1 @@
+erp5_pdf_style
\ No newline at end of file
diff --git a/bt5/erp5_pdf_style/bt/version b/bt5/erp5_pdf_style/bt/version
new file mode 100755
index 0000000000000000000000000000000000000000..ce609caf8506a9df51b7bde393fc1bc2a1e2072a
--- /dev/null
+++ b/bt5/erp5_pdf_style/bt/version
@@ -0,0 +1 @@
+0.8
\ No newline at end of file