private function _addInstanceDefinition(__InstanceDefinition &$instance_definition)
 {
     if ($instance_definition->validate()) {
         $instance_id = $instance_definition->getId();
         if (!key_exists($instance_id, $this->_instance_definitions)) {
             $this->_instance_definitions[__InstanceDefinition::SCOPE_ALL][$instance_id] =& $instance_definition;
             $this->_instance_definitions[$instance_definition->getScope()][$instance_id] =& $instance_definition;
         } else {
             throw new __ConfigurationException('Double definition of instance "' . $instance_id . '"');
         }
     }
 }