diff --git a/stormattribute/stormattribute.install b/stormattribute/stormattribute.install
index 0f1e8cb..7abb127 100644
--- a/stormattribute/stormattribute.install
+++ b/stormattribute/stormattribute.install
@@ -400,15 +400,6 @@ function stormattribute_install() {
     'ZW' => 'Zimbabwe',
   );
 
-  $attributes['Knowledge base topic'] = array(
-    'OS' => 'Operating systems',
-    'Linux'=>'-- Linux',
-    'Ubuntu'=>'-- Ubuntu',
-    'DB' => 'Databases',
-    'MySQL'=>'-- MySQL',
-    'PostgreSQL'=>'-- PostgreSQL',
-  );
-
   $attributes['Duration unit'] = array(
     'hour' => 'Hour',
     'day' => 'Day',
@@ -776,32 +767,6 @@ function stormattribute_update_2() {
   return $ret;
 }
 
-function stormattribute_update_3() {
-  $attributes['Knowledge base topic'] = array(
-    'OS' => 'Operating systems',
-    'Linux'=>'-- Linux',
-    'Ubuntu'=>'-- Ubuntu',
-    'DB' => 'Databases',
-    'MySQL'=>'-- MySQL',
-    'PostgreSQL'=>'-- PostgreSQL',
-  );
-
-  $s = "INSERT INTO {stormattribute} (domain, akey, avalue, weight) VALUES ('%s', '%s', '%s', %d)";
-  $prevdomain = '';
-  $weight = 0;
-  foreach ($attributes as $domain => $attribute) {
-    if ($domain != $prevdomain) $weight=0;
-    foreach ($attribute as $key => $value) {
-      db_query($s, $domain, $key, $value, $weight);
-      $weight++;
-    }
-    $prevdomain = $domain;
-  }
-
-  $ret = array();
-  return $ret;
-}
-
 function stormattribute_update_4() {
   $attributes['Duration unit'] = array(
     'hour' => 'Hour',
diff --git a/stormknowledgebase/stormknowledgebase.install b/stormknowledgebase/stormknowledgebase.install
index 4b764b1..a639d89 100644
--- a/stormknowledgebase/stormknowledgebase.install
+++ b/stormknowledgebase/stormknowledgebase.install
@@ -7,6 +7,29 @@
 function stormknowledgebase_install() {
   drupal_install_schema('stormknowledgebase');
   variable_set('node_options_stormknowledgebase', array('status'));
+  
+  $attributes = array();
+  
+  $attributes['Knowledge base topic'] = array(
+    'OS' => 'Operating systems',
+    'Linux'=>'-- Linux',
+    'Ubuntu'=>'-- Ubuntu',
+    'DB' => 'Databases',
+    'MySQL'=>'-- MySQL',
+    'PostgreSQL'=>'-- PostgreSQL',
+  );
+  
+  $s = "INSERT INTO {stormattribute} (domain, akey, avalue, weight) VALUES ('%s', '%s', '%s', %d)";
+  $prevdomain = '';
+  $weight = 0;
+  foreach ($attributes as $domain => $attribute) {
+    if ($domain != $prevdomain) $weight=0;
+    foreach ($attribute as $key => $value) {
+      db_query($s, $domain, $key, $value, $weight);
+      $weight++;
+    }
+    $prevdomain = $domain;
+  }
 }
 
 function stormknowledgebase_disable() {
@@ -15,6 +38,8 @@ function stormknowledgebase_disable() {
 
 function stormknowledgebase_uninstall() {
   drupal_uninstall_schema('stormknowledgebase');
+  
+  db_query($s = "DELETE FROM {stormattribute} WHERE domain = 'Knowledge base topic'");
 }
 
 function stormknowledgebase_schema() {
@@ -49,3 +74,30 @@ function stormknowledgebase_update_6102() {
   return $ret;
 }
 
+function stormknowledgebase_update_6201() {
+  // Only run this update if was not previously run as part of the legacy stormattribute module
+  if(db_result(db_query("SELECT schema_version FROM {system} WHERE name = 'stormattribute'")) < 3) {
+    $attributes['Knowledge base topic'] = array(
+      'OS' => 'Operating systems',
+      'Linux'=>'-- Linux',
+      'Ubuntu'=>'-- Ubuntu',
+      'DB' => 'Databases',
+      'MySQL'=>'-- MySQL',
+      'PostgreSQL'=>'-- PostgreSQL',
+    );
+
+    $s = "INSERT INTO {stormattribute} (domain, akey, avalue, weight) VALUES ('%s', '%s', '%s', %d)";
+    $prevdomain = '';
+    $weight = 0;
+    foreach ($attributes as $domain => $attribute) {
+      if ($domain != $prevdomain) $weight=0;
+      foreach ($attribute as $key => $value) {
+        db_query($s, $domain, $key, $value, $weight);
+        $weight++;
+      }
+      $prevdomain = $domain;
+    }
+  }
+  $ret = array();
+  return $ret;
+}
