diff --git a/src/newcrawler/converters.py b/src/newcrawler/converters.py
index 878122805a9520ce6be82b375a471bee445cf2b2..ab3bd4120ab03f3d67e2e1c70a20f0c4ba9026e7 100644
--- a/src/newcrawler/converters.py
+++ b/src/newcrawler/converters.py
@@ -218,40 +218,28 @@ class Converter(object):
                 # additionally add the new record to the general store:
                 values[name] = c_record
 
-                # the following rules apply:
-                # - all properties will be added (as they do not exist yet)
-                # if +$ a new list is created and an element is added
+            c_record = records[name]
 
-                for key, value in record.items():
-                    if key == "parents":
-                        continue
-                    propvalue, collection_mode = handle_value(value, values)
+            for key, value in record.items():
+                if key == "parents":
+                    continue
+                propvalue, collection_mode = handle_value(value, values)
 
+                if c_record.get_property(key) is None:
+                    
                     if collection_mode == "list":
                         c_record.add_property(name=key, value=[propvalue])
                     elif (collection_mode == "multiproperty" or
                           collection_mode == "single"):
                         c_record.add_property(name=key, value=propvalue)
-            else:
-                # the following rules apply:
-                # if +$ an element is added to the existing list
-                # if *$ the property is added (leading possibly to multiple properties)
-                # if just $ the property is set (and possibly overwritten)
-                c_record = records[name]
-
-                for key, value in record.items():
-                    if key == "parents":
-                        continue
-                    
-                    propvalue, collection_mode = handle_value(value, values)
-
+                else:
                     if collection_mode == "list":
                         c_record.get_property(key).value.append(propvalue)
                     elif collection_mode == "multiproperty":
                         c_record.add_property(name=key, value=propvalue)
                     elif collection_mode == "single":
                         c_record.get_property(key).value = propvalue
-                        
+            
                 
 
             # no matter whether the record existed in the record store or not,