/**
* Handles start elements within the <project> tag by creating and
* calling the required handlers for the detected element.
*
* @param string the tag that comes in
* @param array attributes the tag carries
* @throws ExpatParseException if a unxepected element occurs
* @access public
*/
function startElement($name, $attrs)
{
$project = $this->configurator->project;
$types = $project->getDataTypeDefinitions();
if ($name == "target") {
$tf = new TargetHandler($this->parser, $this, $this->configurator);
$tf->init($name, $attrs);
} elseif (isset($types[$name])) {
$tyf = new DataTypeHandler($this->parser, $this, $this->configurator);
$tyf->init($name, $attrs);
} else {
$tf = new TaskHandler($this->parser, $this, $this->configurator);
$tf->init($name, $attrs);
}
}