diff --git a/Code/IO/otbImageKeywordlist.h b/Code/IO/otbImageKeywordlist.h
index 21c1a2282ef337daa0d6aef588ef937333a80354..a5a916fed0ea4edbf2cac9e0bb3400100650dd2c 100644
--- a/Code/IO/otbImageKeywordlist.h
+++ b/Code/IO/otbImageKeywordlist.h
@@ -19,8 +19,9 @@
 #define __otbImageKeywordlist_h
 
 #include <iostream>
+#include <map>
 
-#include "itkLightObject.h"
+#include "itkObject.h"
 #include "itkObjectFactory.h"
 
 #include "base/ossimString.h"
@@ -40,22 +41,20 @@ namespace otb
  * \ingroup Projections
  *
  */
-class ITK_EXPORT ImageKeywordlist : public itk::LightObject
+class ITK_EXPORT ImageKeywordlist
 {
 public:
   /** Standard class typedefs. */
-  typedef ImageKeywordlist              Self;
-  typedef itk::LightObject              Superclass;
-  typedef itk::SmartPointer<Self>       Pointer;
-  typedef itk::SmartPointer<const Self> ConstPointer;
+  typedef ImageKeywordlist Self;
 
-  /** Creation through the object factory */
-  itkNewMacro(Self);
-  /** Standard type macros */
-  itkTypeMacro(ImageKeywordlist, itk::LightObject);
+  //virtual const char *GetNameOfClass() const
+  //{return "ImageKeywordlist";}
 
   typedef std::map<ossimString, ossimString> KeywordlistMap;
 
+  /** Run-time type information (and related methods). */
+  itkTypeMacro(ImageKeywordlist, ImageKeywordlist);
+
   /** Get the internal map container */
   const KeywordlistMap& GetKeywordlist() const
   {
diff --git a/Code/IO/otbVectorDataKeywordlist.h b/Code/IO/otbVectorDataKeywordlist.h
index d18463fe9f9eaf8e2d90da7a09a3bf0b45cf54be..060a186057d41272c0d4f02af7a0ce87f5d1782b 100644
--- a/Code/IO/otbVectorDataKeywordlist.h
+++ b/Code/IO/otbVectorDataKeywordlist.h
@@ -38,23 +38,18 @@ namespace otb
  *
  */
 
-class VectorDataKeywordlist : public itk::LightObject
+class VectorDataKeywordlist
 {
 public:
   /** Smart pointer typedef support. */
-  typedef VectorDataKeywordlist         Self;
-  typedef itk::LightObject              Superclass;
-  typedef itk::SmartPointer<Self>       Pointer;
-  typedef itk::SmartPointer<const Self> ConstPointer;
-
-  /** Creation through the object factory */
-  itkNewMacro(Self);
-  /** Standard type macros */
-  itkTypeMacro(VectorDataKeywordlist, itk::LightObject);
+  typedef VectorDataKeywordlist Self;
 
   typedef std::pair<OGRFieldDefn*, OGRField> FieldType;
   typedef std::vector<FieldType>             FieldListType;
 
+  virtual const char *GetNameOfClass() const
+  {return "VectorDataKeywordlist"; }
+
   void AddField(OGRFieldDefn* fieldDefn, OGRField* field);
 
   /**