protected function marshall(QtiComponent $component)
    {
        $element = self::getDOMCradle()->createElement($component->getQtiClassName());

        foreach ($component->getOutcomeRules() as $outcomeRule) {
            $marshaller = $this->getMarshallerFactory()->createMarshaller($outcomeRule);
            $element->appendChild($marshaller->marshall($outcomeRule));
        }

        return $element;
    }