static function getInstance($a_id = 0)
 {
     global $ilias, $ilDB;
     $query = "SELECT * FROM skl_tree_node WHERE obj_id = " . $ilDB->quote($a_id, "integer");
     $obj_set = $ilDB->query($query);
     $obj_rec = $ilDB->fetchAssoc($obj_set);
     $obj = null;
     switch ($obj_rec["type"]) {
         case "skll":
             $obj = new ilBasicSkill();
             $obj->setId($obj_rec["obj_id"]);
             $obj->setDataRecord($obj_rec);
             $obj->read();
             break;
         case "scat":
             $obj = new ilSkillCategory();
             $obj->setId($obj_rec["obj_id"]);
             $obj->setDataRecord($obj_rec);
             $obj->read();
             break;
         case "sktp":
             $obj = new ilBasicSkillTemplate();
             $obj->setId($obj_rec["obj_id"]);
             $obj->setDataRecord($obj_rec);
             $obj->read();
             break;
         case "sctp":
             $obj = new ilSkillTemplateCategory();
             $obj->setId($obj_rec["obj_id"]);
             $obj->setDataRecord($obj_rec);
             $obj->read();
             break;
         case "skrt":
             $obj = new ilSkillRoot();
             $obj->setId($obj_rec["obj_id"]);
             $obj->setDataRecord($obj_rec);
             $obj->read();
             break;
         case "sktr":
             $obj = new ilSkillTemplateReference();
             $obj->setId($obj_rec["obj_id"]);
             $obj->setDataRecord($obj_rec);
             $obj->read();
             break;
     }
     return $obj;
 }