diff --git a/Utilities/otbossim/src/ossim/support_data/ossimSpotDimapSupportData.cpp b/Utilities/otbossim/src/ossim/support_data/ossimSpotDimapSupportData.cpp
index ff9a22bcca8c56f2cdd3de3ec1d2b2bfd2ef9dca..036c24d1f204cdf158418ba325f5a6cc358ffae0 100644
--- a/Utilities/otbossim/src/ossim/support_data/ossimSpotDimapSupportData.cpp
+++ b/Utilities/otbossim/src/ossim/support_data/ossimSpotDimapSupportData.cpp
@@ -371,6 +371,16 @@ bool ossimSpotDimapSupportData::loadXmlFile(const ossimFilename& file,
       return false;
    }
 
+   if (parsePart4(xmlDocument) == false)
+   {
+     ossimNotify(ossimNotifyLevel_FATAL)
+         << MODULE << " DEBUG:"
+         << "ossimSpotDimapSupportData::loadXmlFile:"
+         << "\nPart 4 initialization failed.  Returning false"
+         << std::endl;
+     return false;
+   }
+
    if (traceDebug())
    {
       printInfo(ossimNotify(ossimNotifyLevel_DEBUG));
@@ -2112,7 +2122,7 @@ bool ossimSpotDimapSupportData::parsePart4(
   {
     if (xml_nodes[0]->getText() == "4")
       theSensorID = "Spot 4";
-    if (xml_nodes[0]->getText() == "4")
+    if (xml_nodes[0]->getText() == "5")
       theSensorID = "Spot 5";
   }