diff --git a/src/icartt/dataset.py b/src/icartt/dataset.py
index 862adda62ecabd8ed50dd2f31778b0636c212107..cf625dcddd02f67692d122faae3a07594854c88c 100644
--- a/src/icartt/dataset.py
+++ b/src/icartt/dataset.py
@@ -318,6 +318,11 @@ class StandardNormalComments(collections.UserList):
         self.keywords["REVISION"].naAllowed = False
 
 
+    def __str__(self):
+        s = "\n".join(f"{str(v)}" for _, v in self.keywords.items())
+        return s
+
+
 class Variable:
     """An ICARTT variable description with name, units, scale and missing value."""
 
@@ -1028,6 +1033,11 @@ class Dataset:
 
             if not self.isValidFileName(pathlib.Path(f).name):
                 warnings.warn(f"{pathlib.Path(f).name} is not a valid ICARTT filename")
+            else: # try to obtain dataID and locationID from file name
+                parts = pathlib.Path(f).name.split("_")
+                if len(parts) > 2:
+                    self.dataID = parts[0]
+                    self.dataID = parts[1]
             # TODO: else -> split on "_", then the first part should be dataID, second part locationID
 
             self.readHeader(delimiter)