diff --git a/scripts/update_schemas.py b/scripts/update_schemas.py
index 3e8529b..d576179 100755
--- a/scripts/update_schemas.py
+++ b/scripts/update_schemas.py
@@ -12,7 +12,7 @@
 
 import xml.etree.ElementTree as ET
 
-VERSION = "DSP8010_2019.3"
+VERSION = "DSP8010_2019.4"
 
 SCRIPT_DIR = os.path.dirname(os.path.realpath(__file__))
 
@@ -65,8 +65,12 @@
 
     for zip_filepath in zip_ref.namelist():
         if zip_filepath.startswith(VERSION +
+                                   '/' +
+                                   VERSION +
                                    '/csdl/') & (zip_filepath != VERSION +
                                                 "/csdl/") & (zip_filepath != VERSION +
+                                                             '/' +
+                                                             VERSION +
                                                              "/csdl/"):
             filename = os.path.basename(zip_filepath)
             with open(os.path.join(schema_path, filename), 'wb') as schema_file:
@@ -137,7 +141,7 @@
 
 schema_files = {}
 for zip_filepath in zip_ref.namelist():
-    if zip_filepath.startswith(os.path.join(VERSION, 'json-schema/')):
+    if zip_filepath.startswith(os.path.join(VERSION, VERSION, 'json-schema/')):
         filename = os.path.basename(zip_filepath)
         filenamesplit = filename.split(".")
         if len(filenamesplit) == 3:
@@ -153,7 +157,7 @@
 
 for schema, version in schema_files.items():
     basename = schema + "." + version + ".json"
-    zip_filepath = os.path.join(VERSION, "json-schema", basename)
+    zip_filepath = os.path.join(VERSION, VERSION, "json-schema", basename)
     schemadir = os.path.join(json_schema_path, schema)
     os.makedirs(schemadir)
     location_json = OrderedDict()
