diff --git a/misc/map_test_data.py b/misc/map_test_data.py
index addc0e8c7f52cc60d228e079e5b76f5893be74d4..3e47444600ab7b97df25335b6f5c0a3938fdd51f 100755
--- a/misc/map_test_data.py
+++ b/misc/map_test_data.py
@@ -1,45 +1,70 @@
 #!/usr/bin/env python3
 # -*- coding: utf-8 -*-
 """
-(C) Copyright IndiScale GmbH 2019
+Copyright (c) 2019-2021 IndiScale GmbH <info@indiscale.com>
+Copyright (c) 2021 Timm Fitschen <t.fitschen@indiscale.com>
 """
 
 import caosdb
 import random
 
-caosdb.get_connection()._login()
-
 # data model
 datamodel = caosdb.Container()
 datamodel.extend([
     caosdb.Property("longitude", datatype=caosdb.DOUBLE, unit="°"),
     caosdb.Property("latitude", datatype=caosdb.DOUBLE, unit="°"),
     caosdb.RecordType(
-        "MapObject"
+        "GeoPosition"
         ).add_property("longitude", importance=caosdb.OBLIGATORY
         ).add_property("latitude", importance=caosdb.OBLIGATORY),
+    caosdb.RecordType(
+        "MapObject"
+        ).add_property("GeoPosition", importance=caosdb.OBLIGATORY),
 ])
 
 datamodel.insert()
 
 
-# test data
-
-
-
-
+# test data (single position)
 testdata = caosdb.Container()
 
 for i in range(100):
+    pos = caosdb.Record(f"GeoPosition-{i}"
+        ).add_parent("GeoPosition"
+        ).add_property("longitude", random.gauss(-42.0, 5)
+        ).add_property("latitude", random.gauss(77.0, 5))
+    testdata.append(pos)
     testdata.append(
         caosdb.Record(
             "Object-{}".format(i)
             ).add_parent("MapObject"
-            ).add_property("longitude", random.gauss(-42.0, 5)
-            ).add_property("latitude", random.gauss(77.0, 5))
+            ).add_property(name="GeoPosition", value=pos)
     )
 
 testdata.insert();
 
+# test data (with paths of geo positions)
+testdata = caosdb.Container()
+
+for i in range(20):
+    val = []
+    nex = (random.gauss(43.0, 5), random.gauss(75.0, 5))
+    for j in range(5):
+        pos = caosdb.Record(f"GeoPosition-Path-{i}-pos-{j}"
+            ).add_parent("GeoPosition"
+            ).add_property("longitude", nex[0]
+            ).add_property("latitude", nex[1])
+        testdata.append(pos)
+        val.append(pos)
+        nex = (random.gauss(nex[0], 0.25), random.gauss(nex[1], 0.25))
 
+    testdata.append(
+        caosdb.Record(
+            "Path-Object-{}".format(i)
+            ).add_parent("MapObject"
+            ).add_property(name="GeoPosition",
+                           value=val,
+                           datatype=caosdb.LIST("GeoPosition"))
+    )
 
+testdata.insert()