Index: src/sas/sascalc/dataloader/readers/cansas_reader.py
===================================================================
--- src/sas/sascalc/dataloader/readers/cansas_reader.py	(revision 1b7842d745f5be616e7460ffce6cbcc364304f89)
+++ src/sas/sascalc/dataloader/readers/cansas_reader.py	(revision c8780f11f4abb6c921b0da4ae068e65cb44bcf40)
@@ -282,29 +282,30 @@
                 for loopIter in range(1, len(sasNode)):
                     for dataNode in sasNode[loopIter]:
-                        # Iterating through the tags in the unit node, getting their tag name and respective unit
-                        dataTagName = dataNode.tag.replace(self.base_ns, "")
-                        # Creating our data array first
-                        dataArray = np.fromstring(dataNode.text, dtype=float, sep=",")
-
-                        if dataTagName == "I":
-                            self.current_dataset.y[loopIter] = dataArray
-                        elif dataTagName == "Q":
-                            self.current_dataset.x[loopIter] = dataArray
-                        elif dataTagName == "Idev":
-                            self.current_dataset.dy[loopIter] = dataArray
-                        elif dataTagName == "Qdev":
-                            self.current_dataset.dx[loopIter] = dataArray
-                        elif dataTagName == "Qx":
-                            self.current_dataset.qx_data[loopIter] = dataArray
-                        elif dataTagName == "Qy":
-                            self.current_dataset.qy_data[loopIter] = dataArray
-                        elif dataTagName == "Qxdev":
-                            self.current_dataset.dqx_data[loopIter] = dataArray
-                        elif dataTagName == "Qydev":
-                            self.current_dataset.dqy_data[loopIter] = dataArray
-                        elif dataTagName == "dQw":
-                            self.current_dataset.dxw[loopIter] = dataArray
-                        elif dataTagName == "dQl":
-                            self.current_dataset.dxl[loopIter] = dataArray
+                        if dataNode.text is not None:
+                            # Iterating through the tags in the unit node, getting their tag name and respective unit
+                            dataTagName = dataNode.tag.replace(self.base_ns, "")
+                            # Creating our data array first
+                            dataArray = np.fromstring(dataNode.text, dtype=float, sep=",")
+
+                            if dataTagName == "I":
+                                self.current_dataset.y[loopIter] = dataArray
+                            elif dataTagName == "Q":
+                                self.current_dataset.x[loopIter] = dataArray
+                            elif dataTagName == "Idev":
+                                self.current_dataset.dy[loopIter] = dataArray
+                            elif dataTagName == "Qdev":
+                                self.current_dataset.dx[loopIter] = dataArray
+                            elif dataTagName == "Qx":
+                                self.current_dataset.qx_data[loopIter] = dataArray
+                            elif dataTagName == "Qy":
+                                self.current_dataset.qy_data[loopIter] = dataArray
+                            elif dataTagName == "Qxdev":
+                                self.current_dataset.dqx_data[loopIter] = dataArray
+                            elif dataTagName == "Qydev":
+                                self.current_dataset.dqy_data[loopIter] = dataArray
+                            elif dataTagName == "dQw":
+                                self.current_dataset.dxw[loopIter] = dataArray
+                            elif dataTagName == "dQl":
+                                self.current_dataset.dxl[loopIter] = dataArray
 
                 self._check_for_empty_resolution()
@@ -587,5 +588,4 @@
                             self.process.date = processNode.text
                     elif processTagName == "term":
-                        unit = attr.get("unit", "")
                         dic = {}
                         dic["name"] = processNode.attrib.get("name", "")
@@ -644,13 +644,14 @@
                 for loopIter in range(1, len(sasNode)):
                     for dataNode in sasNode[loopIter]:
-                        dataTagName = dataNode.tag.replace(self.base_ns, "")
-                        dataArray = np.fromstring(dataNode.text, dtype=float, sep=",")
-
-                        if dataTagName == "T":
-                            self.transspectrum.transmission[loopIter] = dataArray
-                        elif dataTagName == "Tdev":
-                            self.transspectrum.transmission_deviation[loopIter] = dataArray
-                        elif dataTagName == "Lambda":
-                            self.transspectrum.wavelength[loopIter] = dataArray
+                        if dataNode.text is not None:
+                            dataTagName = dataNode.tag.replace(self.base_ns, "")
+                            dataArray = np.fromstring(dataNode.text, dtype=float, sep=",")
+
+                            if dataTagName == "T":
+                                self.transspectrum.transmission[loopIter] = dataArray
+                            elif dataTagName == "Tdev":
+                                self.transspectrum.transmission_deviation[loopIter] = dataArray
+                            elif dataTagName == "Lambda":
+                                self.transspectrum.wavelength[loopIter] = dataArray
 
                 self.current_datainfo.trans_spectrum.append(self.transspectrum)
