diff --git a/CHANGELOG.md b/CHANGELOG.md
index ca4ae5ebe8966463659a54da5ef6c30ecd483321..64f76c4eaa4a0e0272b9a30e7fb4ec7e0f486d81 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,6 @@
 Upcoming version:
 -----------------
+  - allowing multiple target_srids now (Nikolaus Krismer)
   - added information about srid 82344 (Nikolaus Krismer)
   - updated geoserver and geoserver-shell (Nikolaus Krismer)
   - gradle version upgrade (Nikolaus Krismer)
diff --git a/bootstrap/config.sh b/bootstrap/config.sh
index de7ac8243f29b8b357e66f22a5f2596fda34fd5a..0ea1d2ee8bc40e6206dc5bd935786e7a8783e859 100755
--- a/bootstrap/config.sh
+++ b/bootstrap/config.sh
@@ -7,7 +7,11 @@ IMPORT_DATA_NEO4J_SPATIAL=true
 IMPORT_DATA_POSTGIS=true
 IMPORT_DATA_SPATIALITE=true
 
-TARGET_SRID=3857
+# Comma separated list of srids for which datasets will be generated
+# This is useful when creating multiple datasets (when creating/updating data from scratch)
+# Note that only the last SRID in the list will be kept in the database, all the others will be overwritten
+#TARGET_SRID="4326,3857"
+TARGET_SRID="3857"
 UPDATE_DATA=false
 
 CACHE_DIR_LOCAL="/tmp/vagrant-cache"
diff --git a/bootstrap/importData.sh b/bootstrap/importData.sh
index 927928f1226adca2b59831746ed92e32e283688d..81bbe5a75db8218ff0ea3cf74bcc8b231547e923 100755
--- a/bootstrap/importData.sh
+++ b/bootstrap/importData.sh
@@ -67,11 +67,12 @@ function fn_import_dataset() {
 	local OSM_FILE="$2"
 	local OSM_FILE_FILTERED="$3"
 	local BOUNDING="$4"
-	local SQL_EXPORT_FILE="${NAME,,}_export_${TARGET_SRID}.sql.gz"
+	local SRID="$5"
+	local SQL_EXPORT_FILE="${NAME,,}_export_${SRID}.sql.gz"
 
-	echo "Importing data for region of $NAME"
+	echo "Importing data for region of $NAME (EPSG:${SRID})"
 	echo "  - importing into postgis"
-	fn_import_dataset_postgis "$NAME" "$SQL_EXPORT_FILE"
+	fn_import_dataset_postgis "$NAME" "$SRID" "$SQL_EXPORT_FILE"
 
 	if $IMPORT_DATA_SPATIALITE; then
 		echo "  - importing into neo4j"
@@ -92,7 +93,8 @@ function fn_import_dataset_neo4j_spatial() {
 
 function fn_import_dataset_postgis() {
 	local NAME="$1"
-	local SQL_EXPORT_FILE="$2"
+	local SRID="$2"
+	local SQL_EXPORT_FILE="$3"
 
 	local CITY=${NAME// /}
 	CITY=${CITY,,}
@@ -122,7 +124,7 @@ function fn_import_dataset_postgis() {
 	if $AVAILABLE_ISOCHRONE_DATAMODEL && [ ! -f "$DATA_DIR/$SQL_EXPORT_FILE" ]; then
 		echo "  - creating datamodel using isochrone-datamodel"
 		# Create datamodel using isochrone-datamodel project
-		DB_USERNAME="$PG_DB_USER" DB_PASSWORD="$PG_DB_PASSWORD" "$DEPLOY_DIR/isochrone-datamodel/builder.sh" -d -s -b -l -t${TARGET_SRID} -c${CITY} >> "$WORKING_DIR/create_datamodel_$CITY.log" 2>&1
+		DB_USERNAME="$PG_DB_USER" DB_PASSWORD="$PG_DB_PASSWORD" "$DEPLOY_DIR/isochrone-datamodel/builder.sh" -d -s -b -l -t${SRID} -c${CITY} >> "$WORKING_DIR/create_datamodel_$CITY.log" 2>&1
 
 		echo "  - copying tables to isochrone database"
 		PGPASSWORD="spatial" pg_dump -U spatial -h localhost -p 5432 -x -O -d spatial -t "transformed.${CITY}_*"  | sed -e "s/transformed/public/g" | PGPASSWORD="$PG_DB_PASSWORD" psql -h localhost  -U "$PG_DB_USER" -p 5432 -d isochrone >> "$WORKING_DIR/create_datamodel_$CITY.log" 2>&1
@@ -180,7 +182,9 @@ function fn_init_geoserver() {
 }
 
 function fn_import_spatialite() {
-	SPATIALITE_FILENAME="isochrone_${TARGET_SRID}.spatialite"
+	local SRID="$1"
+
+	SPATIALITE_FILENAME="isochrone_${SRID}.spatialite"
 	if ! $UPDATE_DATA; then
 		echo "Importing spatialite database"
 		fn_download_newer $DOWNLOAD_DIR/$SPATIALITE_FILENAME $CACHE_DIR_REMOTE_DATA/$SPATIALITE_FILENAME
@@ -220,28 +224,32 @@ mkdir -p $DOWNLOAD_DIR
 mkdir -p $WORKING_DIR
 cd "$WORKING_DIR"
 
-# Import real world datasets
-fn_import_dataset "Bolzano" "$OSM_FILE_ITALY" "$OSM_FILE_BOLZANO_FILTERED" "$OSM_BOUNDING_BOLZANO"
-fn_import_dataset "Innsbruck" "$OSM_FILE_AUSTRIA" "$OSM_FILE_INNSBRUCK_FILTERED" "$OSM_BOUNDING_INNSBRUCK"
-fn_import_dataset "Salzburg" "$OSM_FILE_AUSTRIA" "$OSM_FILE_SALZBURG_FILTERED" "$OSM_BOUNDING_SALZBURG"
-fn_import_dataset "SanFrancisco" "$OSM_FILE_CALIFORNIA" "$OSM_FILE_SANFRANCISCO_FILTERED" "$OSM_BOUNDING_SANFRANCISCO"
-#if ! $IS_LOCAL_TEST_DEPLOY; then
-#	fn_import_dataset "Italy" "$OSM_FILE_ITALY" "$OSM_FILE_ITALY_FILTERED" "$OSM_BOUNDING_ITALY"
-#	fn_import_dataset "TrentoAltoAdige" "$OSM_FILE_ITALY" "$OSM_FILE_TRENTOALTOADIGE_FILTERED" "$OSM_BOUNDING_TRENTOALTOADIGE"
-#fi
-
 # Generate synthetic datasets (and densities for them) -> they are always created from scratch (never cached)
 if $AVAILABLE_POSTGIS && $AVAILABLE_ISOCHRONE_TOOLS; then
+	echo "Importing data for synthetic networks"
 	java -cp $DOWNLOAD_DIR/isochrone-tools.jar at.uibk.dbis.isochrone.generator.GridNetworkGenerator -d 100 -l 60 > "$WORKING_DIR/generate_gridNetwork.log" 2>&1
 	java -cp $DOWNLOAD_DIR/isochrone-tools.jar at.uibk.dbis.isochrone.generator.SpiderNetworkGenerator -d 6 -lvl 1000 -l 60 > "$WORKING_DIR/generate_spiderNetwork.log" 2>&1
 	java -cp $DOWNLOAD_DIR/isochrone-tools.jar at.uibk.dbis.isochrone.generator.density.DensityGenerator -t grid_s100 -d 60,120,180,240,300 >> "$WORKING_DIR/generate_gridNetwork.log" 2>&1
 	java -cp $DOWNLOAD_DIR/isochrone-tools.jar at.uibk.dbis.isochrone.generator.density.DensityGenerator -t spider_l1000 -d 60,120,180,240,300 >> "$WORKING_DIR/generate_spiderNetwork.log" 2>&1
 fi
 
-# Not importing datasets one-by-one into spatialite -> we copy data from postgis (after postgis data import)
-if $IMPORT_DATA_SPATIALITE; then
-	fn_import_spatialite
-fi
+SRID_ARR=(${TARGET_SRID//,/ })
+for CURRENT_SRID in "${SRID_ARR[@]}"; do
+	# Import real world datasets
+	fn_import_dataset "Bolzano" "$OSM_FILE_ITALY" "$OSM_FILE_BOLZANO_FILTERED" "$OSM_BOUNDING_BOLZANO" "$CURRENT_SRID"
+	fn_import_dataset "Innsbruck" "$OSM_FILE_AUSTRIA" "$OSM_FILE_INNSBRUCK_FILTERED" "$OSM_BOUNDING_INNSBRUCK" "$CURRENT_SRID"
+	fn_import_dataset "Salzburg" "$OSM_FILE_AUSTRIA" "$OSM_FILE_SALZBURG_FILTERED" "$OSM_BOUNDING_SALZBURG" "$CURRENT_SRID"
+	fn_import_dataset "SanFrancisco" "$OSM_FILE_CALIFORNIA" "$OSM_FILE_SANFRANCISCO_FILTERED" "$OSM_BOUNDING_SANFRANCISCO" "$CURRENT_SRID"
+#	if ! $IS_LOCAL_TEST_DEPLOY; then
+#		fn_import_dataset "Italy" "$OSM_FILE_ITALY" "$OSM_FILE_ITALY_FILTERED" "$OSM_BOUNDING_ITALY"
+#		fn_import_dataset "TrentoAltoAdige" "$OSM_FILE_ITALY" "$OSM_FILE_TRENTOALTOADIGE_FILTERED" "$OSM_BOUNDING_TRENTOALTOADIGE"
+#	fi
+	
+	# Not importing datasets one-by-one into spatialite -> we copy data from postgis (after postgis data import)
+	if $IMPORT_DATA_SPATIALITE; then
+		fn_import_spatialite "$CURRENT_SRID"
+	fi
+done
 
 # After data import we have to initialize geoserver layers (if geoserver is used)
 if $AVAILABLE_GEOSERVER; then
diff --git a/bootstrap/prepareEnvironment.sh b/bootstrap/prepareEnvironment.sh
index 1039bdf38f3a687ca7f2369f14ceceb46196d4db..6cb2ef56e8e91f4b5afd7eacafcb37a3bcc68f8b 100755
--- a/bootstrap/prepareEnvironment.sh
+++ b/bootstrap/prepareEnvironment.sh
@@ -620,7 +620,7 @@ if $INSTALL_NEO4J_SPATIAL; then
 	cd $DEPLOY_DIR/neo4j-spatial
 	git checkout -q $NEO4J_SPATIAL_VERSION >> /dev/null 2>&1
 
-	echo "  - compilinh neo4j-spatial (from source)"
+	echo "  - compiling neo4j-spatial (from source)"
 	mvn clean install -DskipTests >> $WORKING_DIR/install_neo4j_spatial.log 2>&1
 
 	if $INSTALL_NEO4J; then