diff --git a/2-metadata-processor.py b/2-metadata-processor.py
index e53e95e5d21f3a5b5889875b7963894692303934..4c2fbec76e1f20106c20e5ce499c8b07dae83085 100644
--- a/2-metadata-processor.py
+++ b/2-metadata-processor.py
@@ -170,6 +170,18 @@ def process_records( in_records, geonetwork_root_url, working_directory, credent
             del out_record['metadata-fr']['legalConstraints']
             out_record['metadata-fr']['legalConstraints'] = [in_record['legalConstraints']]
 
+        if 'legalConstraints' in out_record['metadata-fr'].keys():
+            tmp = out_record['metadata-fr']['legalConstraints']
+
+            if len(tmp) == 2:
+                out_record['metadata-fr']['legalConstraints'] = tmp[0]
+                out_record['metadata-fr']['license'] = tmp[1]
+            elif len(tmp) == 1:
+                out_record['metadata-fr']['license'] = tmp[0]
+            else:
+                logging.err("This case is new!")
+                exit(1)
+
         if 'resourceConstraints' in out_record['metadata-fr'].keys() and type(out_record['metadata-fr']['resourceConstraints']) is str:
             del out_record['metadata-fr']['resourceConstraints']
             out_record['metadata-fr']['resourceConstraints'] = [in_record['resourceConstraints']]