diff --git a/src/caosadvancedtools/models/parser.py b/src/caosadvancedtools/models/parser.py
index 20cf6357dbbeccdd6010d45050cf449f7038fdb0..7ffcebbf1e7f71aa9c4886fb5d2c59669ec74c26 100644
--- a/src/caosadvancedtools/models/parser.py
+++ b/src/caosadvancedtools/models/parser.py
@@ -624,18 +624,9 @@ class JsonSchemaParser(Parser):
             return self.model[name]
         if "enum" in elt:
             ent = self._treat_enum(elt, name)
-        elif elt["type"] == "string":
-            if "format" in elt and elt["format"] == "date-time":
-                # Treat datetime strings separately
-                ent = db.Property(name=name, datatype=db.DATETIME)
-            else:
-                ent = db.Property(name=name, datatype=db.TEXT)
-        elif elt["type"] == "integer":
-            ent = db.Property(name=name, datatype=db.INTEGER)
-        elif elt["type"] == "number":
-            ent = db.Property(name=name, datatype=db.DOUBLE)
-        elif elt["type"] == "boolean":
-            ent = db.Property(name=name, datatype=db.BOOLEAN)
+        elif elt["type"] in JSON_SCHEMA_ATOMIC_TYPES:
+            ent = db.Property(
+                name=name, datatype=self._get_atomic_datatype(elt))
         elif elt["type"] == "object":
             ent = self._treat_record_type(elt, name)
         elif elt["type"] == "array":