diff --git a/bt5/erp5_base/WorkflowTemplateItem/portal_workflow/document_conversion_interaction_workflow/scripts/OOoDocument_updateMetadata.xml b/bt5/erp5_base/WorkflowTemplateItem/portal_workflow/document_conversion_interaction_workflow/scripts/OOoDocument_updateMetadata.xml
index 685079067081a412d0710b07f26acd6d0ff259cf..954773313dbec8d5a88031de72648d5fed2d7121 100644
--- a/bt5/erp5_base/WorkflowTemplateItem/portal_workflow/document_conversion_interaction_workflow/scripts/OOoDocument_updateMetadata.xml
+++ b/bt5/erp5_base/WorkflowTemplateItem/portal_workflow/document_conversion_interaction_workflow/scripts/OOoDocument_updateMetadata.xml
@@ -50,9 +50,7 @@
         </item>
         <item>
             <key> <string>_body</string> </key>
-            <value> <string encoding="cdata"><![CDATA[
-
-"""\n
+            <value> <string>"""\n
 when OOoDocument is edited, we update metadata in the ODF file\n
 \n
 XXX - This script must be verified, written with clean syntax\n
@@ -70,12 +68,7 @@ if document.hasBaseData():\n
   for field in metadata_field_mapping_dict.keys():\n
     value = kw.get(field, None)\n
     if value is None:\n
-      value_list = kw.get(\'%s_list\' % field, None)\n
-      if value_list is not None:\n
-        if len(value_list)>0:\n
-          value = \' \'.join(map(str, value_list))\n
-        else:\n
-          value = \'\'\n
+      value = kw.get(\'%s_list\' % field, None)\n
     if value is not None:\n
       metadata_key = metadata_field_mapping_dict[field]\n
       new_metadata[metadata_key] = value\n
@@ -83,9 +76,7 @@ if document.hasBaseData():\n
     # edit metadata via server\n
     after_tag = \'document_%s_convert\' % document.getPath()\n
     document.activate(after_tag=after_tag).Document_tryToUpdateBaseMetadata(**new_metadata)\n
-
-
-]]></string> </value>
+</string> </value>
         </item>
         <item>
             <key> <string>_params</string> </key>
diff --git a/bt5/erp5_base/bt/revision b/bt5/erp5_base/bt/revision
index bb5b992331e711599a991669642d04fc1e2e82db..45bcd720f6d27f61bd6bdd71f03a54426e6afa44 100644
--- a/bt5/erp5_base/bt/revision
+++ b/bt5/erp5_base/bt/revision
@@ -1 +1 @@
-1060
+1061
\ No newline at end of file
diff --git a/product/ERP5OOo/tests/testIngestion.py b/product/ERP5OOo/tests/testIngestion.py
index b6af0c3f8e8480458f965e58e9a51af91616c582..30c296550c3cdcc15f6ef3c36d31f952844a3364 100644
--- a/product/ERP5OOo/tests/testIngestion.py
+++ b/product/ERP5OOo/tests/testIngestion.py
@@ -651,7 +651,7 @@ class TestIngestion(ERP5TypeTestCase):
     """
     document = self.portal.restrictedTraverse(sequence.get('document_path'))
     kw = dict(title='another title',
-              subject='another subject',
+              subject_list=['another', 'subject'],
               description='another description')
     document.edit(**kw)
     self.tic()
@@ -669,8 +669,8 @@ class TestIngestion(ERP5TypeTestCase):
     xml_tree = etree.fromstring(builder.extract('meta.xml'))
     title = xml_tree.find('*/{%s}title' % xml_tree.nsmap['dc']).text
     self.assertEqual(title, 'another title')
-    subject = xml_tree.find('*/{%s}keyword' % xml_tree.nsmap['meta']).text
-    self.assertEqual(subject, u'another subject')
+    subject = [x.text for x in xml_tree.findall('*/{%s}keyword' % xml_tree.nsmap['meta'])]
+    self.assertEqual(subject, [u'another', u'subject'])
     description = xml_tree.find('*/{%s}description' % xml_tree.nsmap['dc']).text
     self.assertEqual(description, u'another description')