diff --git a/common/python/nomadcore/local_meta_info.py b/common/python/nomadcore/local_meta_info.py
index 1cb3f54a3dc26aa1a4a5df14b3262d5d55b57445..c877522750744d94aa6f2caeab8f33d3c9665689 100644
--- a/common/python/nomadcore/local_meta_info.py
+++ b/common/python/nomadcore/local_meta_info.py
@@ -669,7 +669,10 @@ def load_metainfo(filename, dependencyLoader=None, extraArgsHandling=InfoKindEl.
         that were encountered in the loading.
     """
     import nomad_meta_info
-    path = os.path.normpath(os.path.join(os.path.dirname(os.path.abspath(nomad_meta_info.__file__)), "{}".format(filename)))
+    if os.path.isfile(filename):
+        path = filename
+    else:
+        path = os.path.normpath(os.path.join(os.path.dirname(os.path.abspath(nomad_meta_info.__file__)), "{}".format(filename)))
     return loadJsonFile(path, dependencyLoader, extraArgsHandling, uri)
 
 def loadJsonStream(fileStream, name = None, dependencyLoader = None, extraArgsHandling = InfoKindEl.ADD_EXTRA_ARGS, filePath = None, uri = None):